تجزئة عالية السرعة تعتمد على خوارزمية تشفير جديدة
لسوء الحظ ، فإن علماء الرياضيات على دراية سيئة بتعقيدات البرمجة ، فهم يخترعون شيئًا ما ، وبعد ذلك يجب على المبرمج تطبيق هذا في رمز البرنامج. من غير الممكن دائمًا تنفيذ الخوارزميات الخاصة بهم بفعالية.
يتضح هذا بشكل خاص في التشفير الروسي المتماثل حديثًا ، Stribourg و Grasshopper ... من المستحيل تنفيذ هذه الخوارزميات بشكل فعال في رموز برنامج x 86/64 ، هناك حاجة إلى معالج تشفير متخصص.
نفعل العكس ونرى ما سيحدث.
سيقوم المبرمج الذي يعرف كيف يعمل معالج x86 / 64 الحديث بتطوير خوارزمية تشفير متماثل الأكثر كفاءة ، والسماح لعلماء الرياضيات ، كما هو الحال في الأيام الخوالي ، بعملهم الرئيسي - تحليل التشفير للحل الناتج.
تذكر أن "الأفضل هو عدو الخير" ، ونحن نأخذ "الخير" كأساس - GOST 28147-89. بعد ذلك ، وفقًا للمبدأ الطبي "لا ضرر" ، سنبذل الجهد باستخدام طرق الحوسبة متعددة مؤشرات الترابط.
تم القيام بما يلي:
- زيادة حجم المفتاح إلى 256 بايت.
- زيادة حجم كتلة البيانات إلى 256 بايت.
- يتم استبدال عملية الاستبدال بعملية التقليب.
- في التحول الدوري ، يتم تنفيذ تشغيل مجموعات البت المقلوبة.
- يتم إدخال المفتاح في شكل التقليب من البتات.
- يتم تعديل شبكة Feistel إلى شبكة دائرية تتكون من ثمانية مقاطع.
- يتم استخدام وضع gamming مع ردود الفعل ، في اثنين من التمريرات على البيانات المشفرة.
- تصنع الممرات بتباينات مختلفة وتحولها الحلقة بنفس المفاتيح.
- قبل التشفير ، تتم إزالة التكرار من النص المشفر باستخدام ضاغط.
اختبار التنفيذ
يتم تنفيذ الخوارزمية ، وأول شيء يتم اختباره هو المعلمات الإحصائية عند إنشاء تسلسل عشوائي شبه عشوائي (يتم إيقاف تشغيل الضاغط) ، فيما يلي الشكل الذي تبدو عليه:

هذه نتيجة اختبار NIST نموذجية لتحويل تشفير جديد. نتائج الاختبار على أي مفاتيح عشوائية والمجموعات الأولية تنسجم دائما مع المعلمات الإحصائية لتسلسل عشوائي.
المعلمات الإحصائية التي تم الحصول عليها في التجارب على قواعد تشفير كتلة 8 بايت لكتلة تشفير بحجم كتلة 256 بايت رائعة.
إنه نفس الشيء ، على سبيل المثال ، القذف بعملة معدنية 12 مرة والحصول على خسارة متساوية في "النسر" و "المكسرات" ، مما يتطلب أن يموت ، الذي يتم إلقاؤه أيضًا 12 مرة ، تأكد من الوقوع على كل وجه مرتين ...
هذا ممكن نظريًا فقط مع وجود إنتروبيا تفاضلية عالية جدًا بين الكتل المجاورة ويميز مستوى تعقيد تشفير الكتل.
تم الحصول على هذه المعلمات غاما في جولة واحدة من التحويل. تتميز الخوارزمية بخصوصية - تعتمد سرعة اللعب على أداء ذاكرة الوصول العشوائي وذاكرة التخزين المؤقت ، وليس على سرعة المعالج.
الروليت الروسي ، 2018 وتطبيقه
في الآونة الأخيرة ، بدأت خوارزميات التشفير في تلقي أسماء رنانة ، مثل "الصهارة" ، "الجندب" ، "Stribog" ، سنواصل هذا التقليد.
سوف نسمي هذا
الكود المشفر "الروليت الروسي" أو
RU2 باختصار ، تكريما لأول مولد روسي خالص
متسلسلات ثنائية عشوائية ، - طبل دوار مسدس ...
حسنًا ، بالإضافة إلى ذلك ، يعتمد تشفير التحويل على التدويرات (نوبات الحلقة) للتسلسلات الثنائية. لا يوجد سوى
192 تحولا صريحا في مثل هذه الجولة.
لذا فإن التشبيه المباشر مع أسطوانة المسدس واضح.
في السابق ، عند تنفيذ طريقة التنفيذ الموازية لـ GOST 28147-89 على سجلات XMM / YMM ، كان علي أن أصفها بالكامل ، لأنها مرت بشهادة FSB الرسمية.
الآن الوضع مختلف ، لا يفترض أي مسؤول. لذلك ، لن يكون هناك وصف تفصيلي لخوارزمية "الروليت الروسي" ، إنه نوع من حماية حقوق النشر. باختصار ، ستكون خوارزمية "الروليت الروسي" مملوكة ملكية خاصة حتى الآن ، وبناءً على ذلك ، ستكون تسمية
الروليت الروسية كاملة ، 2018 أو
RU2 .
إن خوارزمية التشفير المقفلة من البحث هراء ، بالطبع ، لأنه لا توجد ثقة في قوة التشفير.
ولكن لا شيء يمنع استخدام خوارزمية
RU2 لتحويل النص المشفر إلى تسلسل يفي بمتطلبات
العشوائية الزائفة.
بعد ذلك ، يمكن تشفير التسلسل العشوائي الناتج الناتج عن ذلك باستخدام خوارزميات معروفة و "موثوقة" ، في الواقع ، تم بناء جميع أنظمة التشفير الخطيرة.
في غضون ذلك ، يتم استخدام لعبة الروليت الروسية للتجزئة عالية السرعة بحجم تعسفي لنتائج دالة التجزئة. هذا مهم في مهام النسخ الاحتياطي والنزاهة.
تتحول gamma القياسي إلى دالة Hash إذا قمت بإجراء مرور ثانٍ على البيانات المشفرة. هذه هي الطريقة التي تم بها تنفيذ خوارزمية
RU2 في الأصل.
لم يتم اعتبار التغذية المرتدة المزدوجة سابقًا بمثابة متغير لتطبيق وظيفة التجزئة ، على ما يبدو بسبب انخفاض سرعة التشغيل ، على الرغم من أنها تحتوي على معلمات تحويل أكثر موثوقية. هذا ينطبق في المقام الأول على تأثير الانهيار الجليدي ، فهو لا يعمل فقط في جولات لاحقة من الالتواء ، ولكن أيضًا في الدورات السابقة.
علاوة على ذلك ، يتم التحقق بشكل موثوق من الخصائص التي تم الحصول عليها من دالة التجزئة من خلال الاختبارات الإحصائية ، لأن كل نص مشفر مستلم ، وهو عبارة عن جاما شبه عشوائي يمكن الاعتماد عليه ، يصبح علامة تجزئة.
من هذه السلسلة ، يمكن قص القطع العشوائية لتخزين قيمة دالة التجزئة. الآن يتم استخدام كتلة 1024 بايت ، وهو أكثر موثوقية بكثير من كتلة 64 بايت في SHA3-512 الأكثر "المتقدمة" القياسية.
يحمي تجزئة
RU2 البيانات من المشاهدة / التعديل ، ولكن حتى يقتنع
مصممو التشفير بمتانة الخوارزمية ، سننظر في حماية كلمة المرور للبيانات للحد من الوصول.
التنفيذ العملي ل RU2
خوارزمية الروليت الروسية مدمجة في جهاز نسخ الطب الشرعي لمحركات الأقراص الصلبة ومحركات الأقراص الصلبة. يتم استخدام الخوارزمية هناك لإنشاء نسخ احتياطية تفاضلية ، والتحكم في النزاهة ، وقيود الوصول القائمة على كلمة المرور وضغط المعلومات.
تم وصف ضاغط إزالة التكرار بالفعل في المقال السابق "
خوارزمية جديدة لضغط البيانات عالية السرعة" ، يتم استخدام التجزئة لتأكيد سلامة البيانات المنسوخة ، وفي حالة إدخال كلمة مرور ، وكذلك "لحماية كلمة المرور" للمقالب المستلمة من المشاهدة / التعديل.
فيما يلي خصائص سرعة
RU2 التي تم الحصول عليها في العمل الحقيقي لإنشاء نسخة احتياطية تفاضلية:

تقتصر سرعة النسخ على معلمات القارئ ، حيث لا يمكن أن يوفر محرك أقراص SSD المتصل عبر جسر USB 3.0-SATA سرعة قراءة عالية.
في سرعة تيار الإدخال من 360 ميغا بايت / ثانية.
تقوم خوارزمية
RU2 بتحميل المعالج بنسبة 5٪ فقط مع تردد تشغيل مخفض قدره 1.4 جيجاهيرتز. يوفر ذلك ضغطًا للمعلومات ، وتجزئة البيانات وتشفيرها (حماية كلمة المرور) الخاصة بالتفريغ.
لا يمكن أن توفر أنظمة التجزئة التقليدية مثل هذا الأداء. للمقارنة ، إليك كيفية عمل نظام التجزئة المضمن في Acronis عند إنشاء نسخة احتياطية تفاضلية لنفس محرك الأقراص:

يقوم المعالج بتجزئة دفق بيانات الإدخال بسرعة 340 ميجابت / ثانية ، وفي الوقت نفسه يعمل على تردد 3.8 جيجا هرتز ويتم تحميله بنسبة 28٪.
إذا قمنا بإعادة حساب النتائج التي تم الحصول عليها في معلمات الحد للمعالج ثنائي النواة الذي يعمل على تردد 3.8 جيجا هرتز ، فإن نظام تجزئة Acronis يمكن أن يوفر سرعة نقل تصل إلى 1.4 جيجابت / ثانية.
تم تحميل خوارزمية الروليت الروسية بسرعة تصل إلى 21 غيغابايت / ثانية ، وهي محمّلة بمهام كثيرة (التجزئة + حماية + ضغط كلمة المرور).
وبعبارة أخرى ، يعمل تجزئة
RU2 بترتيب بحجم أسرع من تجزئة المعيار المطبق في أكرونيس.
بالإضافة إلى ذلك ، توفر لعبة الروليت الروسية معدل توليد عشوائي شبه عشوائي يبلغ 12 غيغابايت في الثانية. هذا هو أسرع مولد تسلسل عشوائي شبه عشوائي يلبي متطلبات اختبارات NIST الرسمية.
إنشاء عدد عشوائي ، التجزئة ، حماية كلمة المرور ، في حين أن هذا يكفي للروليت الروسي.
"... ولكن ماذا عن التشفير ؟، - ثم التشفير ..."