الفرق بين المراجعتين لصفحة: «Python/zlib/adler32»

من موسوعة حسوب
< Python‏ | zlib
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:التابع <code>sqlite3.complete_statement()‎</code> في بايثون}}</noinclude> تحسب الدالة مجموع التحقق checks...'
 
لا ملخص تعديل
سطر 15: سطر 15:


=== <code>value</code> ===
=== <code>value</code> ===
إن كان المعامل value موجودًا، فإنّه يستخدم كقيمة بادئة لمجموع التحقق، وفي حال غيابه تكون القيمة الافتراضية هي 1. يؤدي تمرير قيمة إلى المعامل value إلى السماح بإجراء عمليات جمع تحقق مستمرّة على مجموعة من المدخلات المترابطة بعضها ببعض.  
إن كان المعامل <code>value</code> موجودًا، فإنّه يستخدم كقيمة بادئة لمجموع التحقق، وفي حال غيابه تكون القيمة الافتراضية هي <code>1</code>. يؤدي تمرير قيمة إلى المعامل <code>value</code> إلى السماح بإجراء عمليات جمع تحقق مستمرّة على مجموعة من المدخلات المترابطة بعضها ببعض.  


== القيمة المعادة ==
== القيمة المعادة ==
سطر 22: سطر 22:
هذه الخوارزمية ليست قوية من ناحية التشفير؛ لذا يُنصح بعدم استخدامها في عمليات التوثيق والتوقيعات الإلكترونية. ولمّا كانت هذه الخوارزمية مصمّمة لاستخدامها كخوارزمية للحصول على مجموع التحقق، فإنّها ليست ملائمة للاستخدام كخوارزمية تقطيع hash عامة.
هذه الخوارزمية ليست قوية من ناحية التشفير؛ لذا يُنصح بعدم استخدامها في عمليات التوثيق والتوقيعات الإلكترونية. ولمّا كانت هذه الخوارزمية مصمّمة لاستخدامها كخوارزمية للحصول على مجموع التحقق، فإنّها ليست ملائمة للاستخدام كخوارزمية تقطيع hash عامة.


ملاحظة: أصبحت الدالة في الإصدار 3.0 من بايثون تعيد قيمة خالية من الإشارات دائمًا. ولإنتاج القيمة العددية ذاتها في جميع إصدارات بايثون وعلى مختلف المنصّات استخدم ‎adler32(data) & 0xffffffff‎.
ملاحظة: أصبحت الدالة في الإصدار 3.0 من بايثون تعيد قيمة خالية من الإشارات دائمًا. ولإنتاج القيمة العددية ذاتها في جميع إصدارات بايثون وعلى مختلف المنصّات استخدم:<syntaxhighlight lang="python3">
‎adler32(data) & 0xffffffff‎
</syntaxhighlight>


== أمثلة ==
== أمثلة ==
سطر 38: سطر 40:
== انظر أيضًا ==
== انظر أيضًا ==


* الدالة <code>zlib.crc32()‎</code>: تحسب الدالة مجموع تحقق من نوع CRC (التحقّق من الزيادة الدورية Cyclic Redundancy Check) للبيانات المعطاة.
* الدالة <code>[[Python/zlib/crc32|zlib.crc32()]]‎</code>: تحسب الدالة مجموع تحقق من نوع CRC (التحقّق من الزيادة الدورية Cyclic Redundancy Check) للبيانات المعطاة.
* الدالة <code>zlib.compress()‎</code>: تضغط الدالة البايتات المعطاة، وتعيد كائن bytes يتضمّن البيانات المضغوطة.  
* الدالة <code>[[Python/zlib/compress|zlib.compress()]]‎</code>: تضغط الدالة البايتات المعطاة، وتعيد <code>كائن bytes</code> يتضمّن البيانات المضغوطة.  
 
 
== مصادر ==
== مصادر ==
* [https://docs.python.org/3/library/zlib.html#zlib.adler32 صفحة Compression compatible with gzip في توثيق بايثون الرسمي.]
* [https://docs.python.org/3/library/zlib.html#zlib.adler32 صفحة Compression compatible with gzip في توثيق بايثون الرسمي.]

مراجعة 15:40، 21 أكتوبر 2018


تحسب الدالة مجموع التحقق checksum من نوع Adler-32 للبيانات المعطاة.

البنية العامة

zlib.adler32(data[, value])

المعاملات

data

البيانات المراد حساب مجموع التحقق لها.

value

إن كان المعامل value موجودًا، فإنّه يستخدم كقيمة بادئة لمجموع التحقق، وفي حال غيابه تكون القيمة الافتراضية هي 1. يؤدي تمرير قيمة إلى المعامل value إلى السماح بإجراء عمليات جمع تحقق مستمرّة على مجموعة من المدخلات المترابطة بعضها ببعض.

القيمة المعادة

تحسب الدالة مجموع التحقق checksum من نوع Adler-32 للبيانات المعطاة. (مجموع التحقق من نوع Alder-32 يقارب في فعاليته CRC32 ولكن يمكن حسابه بسرعة أكبر). تكون النتيجة عددًا صحيحًا خاليًا من الإشارات وبطول 32-بت.

هذه الخوارزمية ليست قوية من ناحية التشفير؛ لذا يُنصح بعدم استخدامها في عمليات التوثيق والتوقيعات الإلكترونية. ولمّا كانت هذه الخوارزمية مصمّمة لاستخدامها كخوارزمية للحصول على مجموع التحقق، فإنّها ليست ملائمة للاستخدام كخوارزمية تقطيع hash عامة.

ملاحظة: أصبحت الدالة في الإصدار 3.0 من بايثون تعيد قيمة خالية من الإشارات دائمًا. ولإنتاج القيمة العددية ذاتها في جميع إصدارات بايثون وعلى مختلف المنصّات استخدم:

adler32(data) & 0xffffffff

أمثلة

يبين المثال التالي آلية عمل التابع:

>>> import zlib
>>> data = b'Hello World'
>>> zlib.adler32(data)
403375133

انظر أيضًا

  • الدالة zlib.crc32(): تحسب الدالة مجموع تحقق من نوع CRC (التحقّق من الزيادة الدورية Cyclic Redundancy Check) للبيانات المعطاة.
  • الدالة zlib.compress(): تضغط الدالة البايتات المعطاة، وتعيد كائن bytes يتضمّن البيانات المضغوطة.

مصادر