في بلدنا ، توجد خوارزمية موحدة للتمثيل المشفر للبيانات لأنظمة معالجة المعلومات في شبكات الكمبيوتر وأنظمة الكمبيوتر الفردية وأجهزة الكمبيوتر ، والتي يتم تحديدها بواسطة GOST 28147-89.
خوارزمية تحويل البيانات المشفرة هذه عبارة عن خوارزمية كتلة 64 بت مع مفتاح 256 بت ، مصمم لتنفيذ الأجهزة والبرامج ، ويلبي متطلبات التشفير ولا يفرض قيودًا على درجة سرية المعلومات المحمية.
عند وصف الخوارزمية ، يتم استخدام الترميز التالي:
L و R هي متواليات بت ؛
LR هو تسلسل التسلسل L و R ، حيث تتبع بتات التسلسل R بتات التسلسل L ؛
(+) - طريقة إضافة bitwise 2 (عملية "OR" حصرية) ؛
[+] - إضافة أرقام 32 بت المقياس 2 32 ؛
(+) - إضافة أرقام 32 بت ، المقياس 2 32-1.
يتم تلخيص الأرقام وفقًا للقاعدة التالية:
A [+] B = A + B إذا كان A + B< 2 32 ,
A [+] B = A + B - 2 32 إذا كان A + B> = 32 2. أ (+) ب = أ + ب إذا أ + ب< 2^32 - 1,
A {+} B = A + B - (2^32 - 1), если A + B >= 2^32 - 1.
توفر الخوارزمية أربعة أوضاع للتشغيل:
على أي حال ، يتم استخدام مفتاح 256 بت K لتشفير البيانات ، والتي يتم تمثيلها على شكل ثمانية مفاتيح فرعية 32 بت K i:
ك = ك 7 ك 6 ك 5 ك 4 ك 3 ك 2 ك 1 ك 0.
يتم تنفيذ فك التشفير بنفس مفتاح التشفير ، ولكن هذه العملية هي عكس عملية تشفير البيانات. وضع المبادلة السهل
الوضع الأول والأسهل - إستبدال. البيانات المراد تشفيرها مقسمة إلى كتل 64 بت. يتضمن إجراء التشفير الخاص بفدرة البيانات المفتوحة T 0 32 دورة (j = 1 ... 32).
يتم تقسيم الكتلة T 0 إلى متتابعين من 32 بت: B (0) A (0) ، حيث B (0) هي البتات اليسرى أو الأكثر أهمية ، A (0) هي البتات اليمنى أو الأقل أهمية.
يتم إدخال هذه التسلسلات في محركات الأقراص N 1 و N 2 قبل بدء دورة التشفير الأولى.
يتم وصف الدورة الأولى (j = 1) من إجراء التشفير لكتلة بيانات 64 بت بالصيغ التالية:
هنا أشير إلى رقم التكرار (أنا = 1 ، 2 ، ... ، 32).
تسمى الوظيفة f وظيفة التشفير. وسيطتها هي مقياس المجموع 2 32 للرقم A (i) الذي تم الحصول عليه في خطوة التكرار السابقة والرقم X (j) للمفتاح (أبعاد كل من هذه الأرقام هي 32 رقمًا).
تتضمن وظيفة التشفير عمليتين على مجموع 32 بت الناتج. العملية الأولى تسمى الاستبدال K. تتكون كتلة الاستبدال K من 8 عقد استبدال K (1) ... K (8) بذاكرة 64 بت لكل منها. يتم تقسيم متجه 32 بت الذي يصل إلى كتلة الاستبدال إلى 8 متجهات متتالية 4 بت ، يتم تحويل كل منها إلى متجه 4 بت بواسطة العقدة البديلة المقابلة ، وهو جدول مكون من 16 عددًا صحيحًا في النطاق 0 .. .15.
يحدد متجه الإدخال عنوان الصف في الجدول الذي يكون رقمه هو متجه الإخراج. يتم بعد ذلك دمج متجهات الإخراج ذات 4 بتات بشكل تسلسلي في متجه 32 بت. يحتوي جدول كتلة الاستبدال K على عناصر أساسية مشتركة في شبكة الكمبيوتر ونادرًا ما يتم تغييرها.
العملية الثانية هي التحول الدوري الأيسر لمتجه 32 بت الذي تم الحصول عليه عن طريق استبدال K. يتم تمثيل كتلة البيانات المشفرة 64 بت T w على أنها T w = A (32) B (32).
يتم تشفير باقي كتل البيانات المفتوحة في وضع الاستبدال البسيط بنفس الطريقة.
ضع في اعتبارك أنه لا يمكن استخدام وضع الاستبدال البسيط إلا لتشفير البيانات في حالات محدودة. وتشمل هذه الحالات إنشاء مفتاح وتشفيره مع توفير الحماية المقلدة (الحماية من فرض بيانات خاطئة) للإرسال عبر قنوات الاتصال أو التخزين في ذاكرة الكمبيوتر. وضع جاما
البيانات المفتوحة ، مقسمة إلى كتل 64 بت T (i) (i = 1 ، 2 ، ... ، m ، حيث يتم تحديد m بمقدار البيانات المشفرة) ، يتم تشفيرها في وضع جاما عن طريق إضافة نمط 2 باستخدام جاما المشفرة Гw ، والتي يتم إنتاجها في كتل من 64 بت ، أي Гw = (Г (1) ، Г (2) ، ... ، Г (i) ، ... ، Г (م)).
يمكن تمثيل معادلة تشفير البيانات في وضع جاما على النحو التالي:
W (i) = A (Y (i-1) [+] C2، Z (i-1) (+) C1) (+) T (i) = G (i) (+) T (i).
هنا W (i) عبارة عن كتلة نص مشفر 64 بت ،
أ - وظيفة التشفير في وضع الاستبدال البسيط (الوسيطات لهذه الوظيفة هي رقمان 32 بت) ،
C1 و C2 - الثوابت المحددة في GOST 28147-89 ،
Y (i) و Z (i) عبارة عن كميات يتم تحديدها بشكل متكرر حيث يتم تكوين جاما على النحو التالي:
(Y (0) ، Z (0)) = A (S) ، حيث S عبارة عن تسلسل ثنائي 64 بت (رسالة مزامنة) ؛
(Y (i)، Z (i)) = (Y (i-1) [+] C2، Z (i-1) (+) C1) لـ i = 1، 2، ...، m.
يمكن فك تشفير البيانات فقط في حالة وجود رسالة مزامنة ، وهي ليست عنصرًا سريًا في التشفير ويمكن تخزينها في ذاكرة الكمبيوتر أو نقلها عبر قنوات الاتصال مع البيانات المشفرة. وضع غاما ردود الفعل
وضع التحجيممع تعليقيشبه إلى حد بعيد وضع جاما. كما هو الحال في وضع جاما ، يتم تشفير البيانات المفتوحة المقسمة إلى كتل من 64 بت T (i) (i = 1 ، 2 ، ... ، m ، حيث يتم تحديد m من خلال كمية البيانات المشفرة) ، يتم تشفيرها بواسطة وحدة إضافة ثنائية البت باستخدام تشفير gamma G sh ، والذي يتم إنتاجه في كتل من 64 بت:
Гw = (Г (1) ، Г (2) ، ... ، Г (i) ، ... ، Г (م)).
قد يكون عدد البتات في الكتلة T (m) أقل من 64 ، بينما يتم تجاهل جزء غاما المشفر من الكتلة G (m) الذي لا يستخدم للتشفير.
يمكن تمثيل معادلة تشفير البيانات في وضع جاما مع التغذية الراجعة على النحو التالي:
هنا W (i) عبارة عن كتلة نص مشفر 64 بت ،
أ - وظيفة التشفير في وضع الاستبدال البسيط. وسيطة الوظيفة في الخطوة الأولى من الخوارزمية التكرارية هي رسالة مزامنة 64 بت ، وفي جميع الخطوات اللاحقة - الكتلة السابقة للبيانات المشفرة W (i-1).
إدراجات التقليد
عمليات التطوير أكوام التقليدموحد لأي من أوضاع تشفير البيانات.
إدراج التقليد عبارة عن كتلة من بتات p (إدخال تقليد Ip) ، والتي يتم إنتاجها إما قبل تشفير الرسالة بأكملها ، أو بالتوازي مع تشفير كتلة تلو كتلة. قد تحتوي الكتل الأولى من البيانات المفتوحة التي تشارك في تطوير محاكاة الإدراج على معلومات الخدمة (على سبيل المثال ، جزء العنوان والوقت ورسالة المزامنة) ولا يتم تشفيرها. يتم تحديد قيمة المعلمة p (عدد الأرقام الثنائية في الإدخال المحاكي) من خلال متطلبات التشفير ، مع الأخذ في الاعتبار حقيقة أن احتمال فرض تداخل خاطئ هو 1/2 ^ p.
للحصول على محاكاة الإدراج ، يتم تمثيل البيانات المفتوحة على أنها كتل من 64 بت T (i) (i = 1 ، 2 ، ... ، m ، حيث يتم تحديد m بكمية البيانات المشفرة). تخضع الكتلة الأولى من البيانات المفتوحة T (1) لعملية تحويل تقابل أول 16 دورة من خوارزمية التشفير في وضع الاستبدال البسيط. علاوة على ذلك ، يتم استخدام المفتاح المستخدم لتشفير البيانات كمفتاح لتوليد إدراج التقليد.
يتم جمع رقم 64 بت الذي تم الحصول عليه بعد 16 دورة عمل بوحدة 2 مع فدرة البيانات المفتوحة الثانية T (2). تخضع نتيجة الجمع مرة أخرى للتحول المقابل لأول 16 دورة من خوارزمية التشفير في وضع الاستبدال البسيط. تمت إضافة رقم 64 بت الناتج إلى النموذج 2 إلى فدرة البيانات المفتوحة الثالثة T (3) ، وهكذا. الكتلة الأخيرة T (m) ، إذا لزم الأمر ، مبطن إلى كتلة كاملة 64 بت مع أصفار ، يتم جمعها بالمقياس 2 نتيجة العمل في الخطوة m-1 ، وبعد ذلك يتم تشفيرها في وضع الاستبدال البسيط على الأول 16 دورة من الخوارزمية. من رقم 64 بت المستلم ، يتم تحديد مقطع Ip بطول p بتات.
يتم إرسال Ip المقلد عبر قناة اتصال أو إلى ذاكرة الكمبيوتر بعد البيانات المشفرة. يتم فك تشفير البيانات الواردة المشفرة ، ومن الكتل المتلقاة من البيانات المفتوحة T (i) يتم إنشاء إدراج Ip التقليد ، والذي تتم مقارنته بعد ذلك بإدخال IR المتلقى من قناة الاتصال أو من ذاكرة الكمبيوتر. إذا تم إدراج التقليد لا تتطابق ، جميع البيانات التي تم فك تشفيرها تعتبر خاطئة.
وصف موجز للشفرات
GOST 28147-89 - المعيار السوفيتي والروسي للتشفير المتماثل ، الذي تم تقديمه في عام 1990 ، هو أيضًا معيار CIS. الاسم الكامل - “GOST 28147-89 نظم معالجة المعلومات. حماية التشفير. خوارزمية تحويل التشفير ". كتلة خوارزمية التشفير. عند استخدام طريقة التشفير مع جاما ، يمكن أن تؤدي وظائف خوارزمية تشفير التدفق.
GOST 28147-89 عبارة عن تشفير كتلة بمفتاح 256 بت و 32 دورة تحويل ، تعمل بكتل 64 بت. أساس خوارزمية التشفير هو شبكة Feistel. وضع التشفير الأساسي وفقًا لـ GOST 28147-89 هو وضع الاستبدال البسيط (يتم أيضًا تحديد أوضاع أكثر تعقيدًا - جاما وجاما مع التغذية الراجعة وتقليد الإدراج).
كيف تعمل الخوارزمية
لا تختلف الخوارزمية اختلافًا جوهريًا عن DES. يحتوي أيضًا على دورات تشفير (هناك 32 دورة) وفقًا لمخطط Feistel (الشكل 2.9.).
أرز. 2.9 جولات التشفير لخوارزمية GOST 28147-89.
لإنشاء مفاتيح فرعية ، يتم تقسيم مفتاح 256 بت الأصلي إلى ثماني كتل 32 بت: k 1… k 8. المفاتيح k 9 ... k 24 هي تكرار دوري للمفاتيح k 1 ... k 8 (مرقمة من البتات الأقل أهمية إلى البتات الأكثر أهمية). المفاتيح k 25 ... k 32 هي المفاتيح k 1 ... k 8 تسير بترتيب عكسي.
بعد اكتمال جميع جولات الخوارزمية البالغ عددها 32 جولة ، يتم لصق الكتل A 33 و B 33 معًا (لاحظ أن A 33 يصبح البت الأكثر أهمية ، ويصبح B 33 هو البت الأقل أهمية) - والنتيجة هي نتيجة الخوارزمية.
وظيفة F(أ أنا ,ك أنا) على النحو التالي: يتم إضافة A i و K i للوضع 2 32 ، ثم يتم تقسيم النتيجة إلى ثمانية تتابعات 4 بت ، يتم تغذية كل منها إلى المدخلات الخاصة بها عقدة جدول الاستبدال(بترتيب تصاعدي لأسبقية البت) ، المسمى أدناه S- بلوك. إجمالي عدد كتل GOST S هو ثمانية ، أي نفس عدد التكرارات اللاحقة. كل S- بلوكيمثل تبديل الأرقام من 0 إلى 15. يقع أول 4 بتات اللاحقة على مدخلات S-box الأول ، والثاني - على مدخلات الثانية ، وما إلى ذلك. يتم دمج مخرجات جميع الصناديق S الثمانية في كلمة 32 بت ، ثم يتم نقل الكلمة بأكملها بشكل دوري إلى اليسار (إلى البتات الأكثر أهمية) بمقدار 11 بت. يمكن أن تكون جميع الصناديق S الثمانية مختلفة. في الواقع ، يمكن أن تكون مادة أساسية إضافية ، ولكنها في الغالب تكون معلمة مخطط شائعة لمجموعة معينة من المستخدمين. يشير نص المعيار إلى أن تسليم ملء وحدات الاستبدال (كتل S) يتم بالطريقة المحددة ، أي مطور الخوارزمية. وافق مجتمع مطوري CIPF الروس على العقد البديلة المستخدمة على الإنترنت.
يتم تنفيذ فك التشفير بنفس طريقة التشفير ، ولكن يتم عكس ترتيب المفاتيح الفرعية k i.
أوضاع تشغيل خوارزمية GOST 28147-89
تحتوي خوارزمية GOST 28147-89 على أربعة أوضاع للتشغيل.
1. وضعاستبدال بسيطيقبل البيانات كمدخلات ، وحجمها مضاعف 64 بت. نتيجة التشفير هي إدخال النص ، وتحويله في كتل من 64 بت في حالة التشفير مع دورة "32-3" ، وفي حالة فك التشفير - مع دورة "32-P".
2. وضعالتحجيميقبل البيانات من أي حجم كمدخلات ، بالإضافة إلى معلمة 64 بت إضافية - رسالة المزامنة. أثناء العملية ، يتم تحويل رسالة المزامنة في دورة "32-Z" ، وتنقسم النتيجة إلى جزأين. يضاف الجزء الأول المقياس 2 32 بقيمة ثابتة تبلغ 1010101 16. إذا كان الجزء الثاني يساوي 2 32-1 ، فلن تتغير قيمته ، وإلا فإنه يضاف المقياس 2 32-1 بقيمة ثابتة 1010104 16. القيمة التي يتم الحصول عليها من خلال الجمع بين كلا الجزأين المحولين ، المسماة جاما المشفرة ، تدخل الحلقة "32-3" ، وتكون نتيجتها عبارة عن وحدة ثنائية مضافة مع كتلة 64 بت من بيانات الإدخال. إذا كانت الأخيرة أقل من 64 بت ، فسيتم تجاهل البتات الإضافية للقيمة المستلمة. يتم إرسال القيمة الناتجة إلى الإخراج. في حالة استمرار وجود بيانات واردة ، يتم تكرار الإجراء: يتم تحويل الكتلة المكونة من أجزاء 32 بت إلى أجزاء ، وهكذا.
3. وضعالتحجيم مع التغذية الراجعةيقبل أيضًا البيانات من أي حجم ورسالة مزامنة كإدخال. يتم إضافة كتلة بيانات الإدخال إلى وحدة المعالجة الثانية على مستوى البت مع نتيجة التحويل في دورة "32-3" لرسالة المزامنة. يتم إرسال القيمة الناتجة إلى الإخراج. يتم استبدال قيمة رسالة المزامنة في حالة التشفير بواسطة كتلة الإخراج ، وفي حالة فك التشفير - عن طريق الإدخال ، أي المشفر. إذا كانت الكتلة الأخيرة من البيانات الواردة أقل من 64 بت ، فسيتم تجاهل البتات الإضافية لجاما (خرج الحلقة "32-3"). في حالة استمرار وجود بيانات واردة ، يتم تكرار الإجراء: يتكون تشفير جاما من نتيجة تشفير القيمة المستبدلة ، وما إلى ذلك.
4. وضع الإنتاجإدراج التقليديأخذ بيانات الإدخال التي لا يقل حجمها عن كتلتين كاملتين 64 بت ، ويعيد كتلة 64 بت من البيانات ، تسمى إدراج انتحال. يتم تعيين قيمة 64 بت المؤقتة على 0 ، ثم ، بينما توجد بيانات إدخال ، يتم إضافة modulo 2 إلى مستوى البت مع نتيجة تنفيذ دورة "16-3" ، والتي يكون إدخالها هو كتلة بيانات الإدخال . بعد نهاية الإدخال ، يتم إرجاع القيمة المؤقتة كنتيجة.
تحليل الشفرات
يستخدم تشفير GOST 28147-89 مفتاح 256 بت وحجم مساحة المفتاح هو 2256. لا يوجد جهاز كمبيوتر للأغراض العامة موجود حاليًا يمكنه تخمين مفتاح في أقل من عدة مئات من السنين. تم تصميم المعيار الروسي GOST 28147-89 بهامش كبير ويتجاوز معيار DES الأمريكي بعدة أوامر من حيث الحجم مع حجم مفتاحه الحقيقي 56 بت وحجم المساحة الرئيسية 2 56 فقط.
هناك أيضًا هجمات على GOST 28147-89 الكامل بدون أي تعديلات. واحد من أول أعمال مفتوحة، الذي تم فيه تحليل الخوارزمية ، يستخدم نقاط الضعف في إجراء توسيع المفتاح لعدد من خوارزميات التشفير المعروفة. على وجه الخصوص ، يمكن كسر الخوارزمية الكاملة GOST 28147-89 باستخدام تحليل التشفير التفاضلي على المفاتيح المرتبطة ، ولكن فقط في حالة استخدام جداول الاستبدال الضعيفة. يتم فتح الإصدار المكون من 24 جولة من الخوارزمية (الذي يفتقر إلى الجولات الثماني الأولى) بنفس الطريقة لأي جداول استبدال ، ومع ذلك ، فإن جداول الاستبدال القوية تجعل مثل هذا الهجوم غير عملي تمامًا.
العلماء المحليين A.G. روستوفتسيف وإي. اقترح مخوفينكو في عام 2001 طريقة جديدة بشكل أساسي لتحليل التشفير من خلال تكوين دالة موضوعية من نص عادي معروف ، والنص المشفر المقابل له وقيمة المفتاح المطلوبة وإيجاد أقصى حد له يتوافق مع القيمة الحقيقية للمفتاح. وجدوا أيضًا فئة كبيرة من المفاتيح الضعيفة لخوارزمية GOST 28147-89 ، والتي تسمح لك بفتح الخوارزمية باستخدام 4 نصوص عادية محددة ونصوص مشفرة مقابلة لها بدرجة تعقيد منخفضة إلى حد ما.
في عام 2004 ، اقترحت مجموعة من الخبراء من كوريا هجومًا باستخدام التحليل التفاضلي للتشفير على المفاتيح المرتبطة ، من الممكن الحصول على مفتاح سري 12 بت مع احتمال 91.7٪. يتطلب الهجوم 235 نصًا عاديًا مختارًا و 236 عملية تشفير. كما ترون ، هذا الهجوم غير مفيد عمليًا للفتح الحقيقي للخوارزمية.
يعد جدول الاستبدال عنصرًا رئيسيًا طويل المدى ، أي أنه صالح لأكثر من ذلك بكثير طويل الأمدمن مفتاح واحد. من المفترض أنه مشترك لجميع عقد التشفير داخل نظام حماية تشفير واحد. تحدد جودة هذا الجدول جودة التشفير. مع جدول الاستبدال "القوي" ، لا تقل قوة التشفير عن حد مقبول معين ، حتى لو تم الكشف عنها. وعلى العكس من ذلك ، فإن استخدام جدول "ضعيف" قد يقلل من قوة التشفير إلى حد منخفض بشكل غير مقبول. لا توجد معلومات عن جودة جدول البدائل في فتح الختملم تُنشر روسيا ، لكن وجود جداول "ضعيفة" أمر لا شك فيه - مثال على ذلك هو جدول الاستبدال "التافه" ، والذي بموجبه يتم استبدال كل قيمة بنفسها. في عدد من الأعمال ، استنتج خطأً أن جداول الاستبدال السرية لخوارزمية GOST 28147-89 يمكن أن تكون جزءًا من المفتاح وتزيد من طوله الفعال (وهو أمر غير مهم ، نظرًا لأن الخوارزمية تحتوي على مفتاح 256 بت كبير جدًا ).
هذه الخوارزمية إلزامية للاستخدام كخوارزمية تشفير في المنظمات الحكومية RF وعدد من تلك التجارية.
وصف الخوارزمية
يظهر مخطط الخوارزمية في الشكل. 3.1. كما ترون ، مخطط هذه الخوارزمية بسيط للغاية ، مما يبسط بشكل لا لبس فيه برمجياتها أو أجهزتها.
تقوم خوارزمية GOST 28147-89 بتشفير المعلومات في كتل من 64 بت ، والتي تنقسم إلى كتلتين فرعيتين من 32 بت (N1 و N2). تتم معالجة Subblock N1 بطريقة معينة ، وبعد ذلك يتم إضافة قيمته
مع قيمة الكتلة الفرعية N2 (يتم تنفيذ الإضافة بالمقياس 2) ، ثم يتم تبديل الكتل الفرعية. يتم إجراء مثل هذا التحويل لعدد معين من الجولات: 16 أو 32 ، اعتمادًا على طريقة تشغيل الخوارزمية (الموصوفة أدناه). يتم تنفيذ العمليات التالية في كل جولة:
1. مفتاح تراكب. تمت إضافة محتوى الكتلة الفرعية / VI بالوحدة 2 32 إلى جزء Kx من المفتاح.
يحتوي مفتاح تشفير خوارزمية GOST 28147-89 على بُعد 256 بت ، و Kx هو جزء 32 بت ، أي أن مفتاح تشفير 256 بت يتم تمثيله كتسلسل مفاتيح فرعية 32 بت (الشكل 3.2):
SH ATI، AG2، Yu، AG4، K5، Kb، K7.
أثناء عملية التشفير ، يتم استخدام أحد هذه المفاتيح الفرعية ، اعتمادًا على رقم الجولة وطريقة تشغيل الخوارزمية.
أرز. 3.1. مخطط خوارزمية GOST 28147-
أرز. 3.2 مفتاح التشفير لخوارزمية GOST 28147-89
2. استبدال جدولي. بعد تراكب المفتاح ، يتم تقسيم الكتلة الفرعية / VI إلى 8 أجزاء من 4 بتات ، يتم استبدال قيمة كل منها على حدة وفقًا لجدول الاستبدال لهذا الجزء من الكتلة الفرعية. غالبًا ما تستخدم بدائل الجدول (مربع الاستبدال ، S-box) في الخوارزميات الحديثةالتشفير ، لذلك يجدر النظر فيها بمزيد من التفصيل.
يتم استخدام استبدال الجدول بهذه الطريقة: يتم إدخال كتلة بيانات ذات بُعد معين (في هذه الحالة ، 4 بت) إلى المدخلات ، والتي يحدد التمثيل الرقمي لها عدد قيمة المخرجات. على سبيل المثال ، لدينا S-box بالشكل التالي:
4, 11, 2, 14, 15, 0, 8, 13, 3, 12, 9, 7, 5, 10, 6, 1.
دع الكتلة المكونة من 4 بتات "0100" تأتي إلى الإدخال ، أي أن القيمة هي 4. وفقًا للجدول ، ستكون قيمة الإخراج 15 ، أي "1111" (يتم استبدال 0 بـ 4 ، يتم استبدال 1 بـ 11 ، قيمة 2 لا تتغير ، إلخ).
كما ترى ، مخطط الخوارزمية بسيط للغاية ، مما يعني أن العبء الأكبر لتشفير البيانات يقع على جداول الاستبدال. لسوء الحظ ، تتميز الخوارزمية بخاصية وجود جداول إحلال "ضعيفة" ، والتي يمكن من خلالها الكشف عن الخوارزمية بطرق تحليل التشفير. تشمل العناصر الضعيفة ، على سبيل المثال ، جدولًا يكون فيه الإخراج مساويًا للإدخال:
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15.
3. إزاحة دورية لليسار على مستوى البت بمقدار 11 بت.
أوضاع الخوارزمية
تحتوي خوارزمية GOST 28147-89 على 4 أوضاع للتشغيل:
□ وضع الاستبدال البسيط ؛
□ وضع جاما.
وضع اللعب P مع ردود الفعل ؛
□ وضع إنتاج المرفقات المقلدة.
تختلف هذه الأوضاع إلى حد ما عن تلك المقبولة عمومًا (الموضحة في القسم 1.4) ، لذلك يجدر النظر فيها بمزيد من التفصيل.
هذه الأوضاع لها أغراض مختلفة ، ولكنها تستخدم نفس تحويل التشفير الموضح أعلاه.
وضع المبادلة السهل
في وضع الاستبدال البسيط ، يتم تنفيذ الجولات الـ 32 الموضحة أعلاه ببساطة لتشفير كل كتلة 64 بت من المعلومات. يتم استخدام المفاتيح الفرعية 32 بت في التسلسل التالي:
□ KO و Kl و K2 و K3 و K4 و K5 و Kb و AG7 و KO و ATI وما إلى ذلك - في الجولات من 1 إلى 24 ؛
□ K1 و Kb و K5 و K4 و K3 و K2 و K \ و KO - في الجولات من 25 إلى 32.
يتم فك التشفير في وضع الاستبدال البسيط بنفس الطريقة تمامًا ، ولكن مع تسلسل مختلف قليلاً لاستخدام المفاتيح الفرعية:
□ KO، K \، K2، KZ، K4، K5، Kb، KP - في الجولات من 1 إلى 8 ؛
□ KP و Kb و K5 و K4 و K3 و K2 و K \ و KO و K1 و Kb وما إلى ذلك - في الجولات من 9 إلى 32.
على غرار وضع ECB القياسي ، نظرًا للتشفير المنفصل للكتل ، لا يوصى بشدة بوضع الاستبدال البسيط لتشفير البيانات الفعلية ؛ يجب استخدامه فقط لتشفير مفاتيح التشفير الأخرى في أنظمة متعددة المفاتيح.
وضع جاما
في أسلوب جاما (الشكل 3.3) ، تتم إضافة كل فدرة من النص الصريح شيئًا فشيئًا إلى وحدة جاما للتشفير بحجم 64 بت. جاما المشفرة عبارة عن تسلسل خاص يتم إنشاؤه باستخدام التحويلات الموضحة أعلاه على النحو التالي:
1. في السجلات N1 و N2 ، تتم كتابة التعبئة الأولية - قيمة 64 بت ، تسمى "رسالة المزامنة" (رسالة المزامنة ، في الواقع ، هي تناظرية لمتجه التهيئة في أوضاع CBC و CFB و OFB ).
2. يتم تشفير محتويات سجلات / VI و N2 (في هذه الحالة ، رسائل المزامنة) في وضع الاستبدال البسيط.
3. تمت إضافة محتويات N1 إلى modulo (2 32 - 1) مع CI الثابت = 2 24 + 2 16 + 2 8 + 4 ، تتم كتابة نتيجة الإضافة في سجل / VI.
4. يضاف محتوى N2 بالمقياس 2 مع الثابت C2 = 2 24 + 2 16 + 2 8 +1 ، يتم كتابة نتيجة الإضافة لتسجيل N2.
5. يتم إخراج محتويات مسجلي / VI و N2 ككتلة جاما مشفرة 64 بت (على سبيل المثال ، في هذه الحالة ، تشكل / VI و N2 أول كتلة جاما).
6. إذا كانت هناك حاجة إلى كتلة جاما التالية (أي يلزم استمرار التشفير أو فك التشفير) ، فارجع إلى الخطوة 2.
لفك التشفير ، يتم إنشاء جاما بنفس الطريقة ، ثم يتم تطبيق عملية XOR مرة أخرى على النص المشفر وبتات جاما.
لإنشاء نفس جاما التشفير ، يجب أن يكون لدى المستخدم الذي يقوم بفك تشفير التشفير نفس المفتاح ونفس قيمة رسالة المزامنة التي تم استخدامها لتشفير المعلومات. خلاف ذلك ، لن تتمكن من الحصول على النص الأصلي من النص المشفر.
في معظم تطبيقات خوارزمية GOST 28147-89 ، لا تعد رسالة المزامنة عنصرًا سريًا ، ولكن يمكن أن تكون رسالة المزامنة سرية مثل مفتاح التشفير. في هذه الحالة ، يمكننا اعتبار أن الطول الفعال لمفتاح الخوارزمية (256 بت) قد زاد بمقدار 64 بتًا أخرى من رسالة المزامنة ، والتي يمكن اعتبارها عنصرًا أساسيًا إضافيًا.
وضع غاما ردود الفعل
في وضع غاما ردود الفعل ، بدءًا من الكتلة الثانية ، لا يتم ملء سجلات / VI و L / 2 بكتلة جاما السابقة ، ولكن نتيجة تشفير كتلة النص العادي السابقة (الشكل 3.4). يتم إنشاء الكتلة الأولى في هذا الوضع بنفس الطريقة تمامًا مثل الكتلة السابقة.
أرز. 3.4. توليد غاما المشفرة في وضع جاما مع التغذية الراجعة
وضع توليد المقلد
الانتحال عبارة عن مجموع اختباري للتشفير يتم حسابه باستخدام مفتاح تشفير ومصمم للتحقق من سلامة الرسائل. لحسابها ، هناك وضع خاص لخوارزمية GOST 28147-89.
يتم إنشاء بادئة التقليد على النحو التالي:
1. يتم كتابة أول كتلة معلومات من 64 بت ، والتي يتم حساب المقلد من أجلها ، في السجلات N1 و N2 وتشفيرها في وضع الاستبدال البسيط المصغر ، حيث يتم تنفيذ أول 16 جولة من أصل 32 جولة.
2. يتم تجميع النتيجة التي تم الحصول عليها بالمقياس 2 مع المجموعة التالية من المعلومات ، مع حفظ النتيجة في N1 و N2.
3. يتم تشفير M و N2 مرة أخرى في الوضع المصغر للاستبدال البسيط ، وهكذا حتى آخر كتلة من المعلومات.
تعتبر البادئة هي المحتويات الناتجة عن 64 بت للسجلات N1 و N2 أو جزء منها. في أغلب الأحيان ، يتم استخدام بادئة تقليد 32 بت ، أي نصف محتويات السجلات. هذا كافٍ ، لأنه ، مثل أي مجموع اختباري ، تهدف بادئة التقليد في المقام الأول إلى الحماية من التشويه العرضي للمعلومات. للحماية من التعديل المتعمد للبيانات ، يتم استخدام طرق تشفير أخرى - إلكترونية في المقام الأول توقيع إلكتروني(انظر القسم 1.1).
يتم استخدام بادئة التقليد على النحو التالي:
1. عند تشفير أي معلومات ، يتم حساب مقلد النص العادي وإرساله مع النص المشفر.
2. بعد فك التشفير ، يتم حساب بادئة التقليد مرة أخرى ومقارنتها بالبادئة المرسلة.
3. إذا لم تتطابق البادئات المقلدة المحسوبة والمرسلة ، فإن النص المشفر قد تم تشويهه أثناء الإرسال أو تم استخدام مفاتيح غير صحيحة أثناء فك التشفير.
تعد بادئة التقليد مفيدة بشكل خاص للتحقق من فك التشفير الصحيح للمعلومات الأساسية عند استخدام أنظمة متعددة المفاتيح.
بادئة التقليد هي بعض التناظرية من رمز مصادقة رسالة MAC المحسوبة في وضع CBC ؛ الاختلاف هو أن حساب البادئة لا يستخدم رسالة مزامنة ، بينما يستخدم حساب MAC متجه التهيئة.
قوة التشفير للخوارزمية
في عام 1994 ، تمت ترجمة وصف خوارزمية GOST 28147-89 إلى اللغة الإنجليزية ونشرها ؛ بعد ذلك بدأت تظهر نتائج تحليله الذي أجراه خبراء أجانب ؛ ومع ذلك ، لم يتم العثور على هجمات تقترب من الناحية العملية لفترة طويلة من الوقت.
□ طول مفتاح كبير - 256 بت ؛ مع رسالة المزامنة السرية ، يزيد طول المفتاح الفعال إلى 320 بت ؛
□ 32 جولة من التحولات. بالفعل بعد 8 جولات ، يتم تحقيق التأثير الكامل لتشتت بيانات الإدخال: تغيير بت واحد من كتلة النص العادي سيؤثر على جميع بتات كتلة النص المشفر ، والعكس صحيح ، أي أن هناك هامش أمان متعدد.
ضع في اعتبارك نتائج تحليل الشفرات لخوارزمية GOST 28147-89.
تحليل جداول الاستبدال
نظرًا لعدم ورود جداول الاستبدال في المعيار ، فإن عددًا من الأعمال (على سبيل المثال ، في) تشير إلى أن "المنظمة المختصة" يمكنها إصدار جداول الاستبدال "الجيدة" و "السيئة". ومع ذلك ، فإن الخبير الشهير بروس شناير يسمي هذه الافتراضات "شائعات". من الواضح أن قوة التشفير للخوارزمية تعتمد إلى حد كبير على خصائص جداول الاستبدال المستخدمة ، على التوالي ، هناك جداول استبدال ضعيفة (انظر أعلاه للحصول على مثال) ، والتي يمكن أن يؤدي استخدامها إلى تبسيط هجوم الخوارزمية. ومع ذلك ، فإن إمكانية استخدام جداول استبدال مختلفة تبدو فكرة جيدة للغاية ، مدعومة بالحقيقتين التاليتين من تاريخ معيار التشفير DES (انظر القسم 3.15 للحصول على التفاصيل):
تستخدم الهجمات باستخدام التحليل الخطي والتفاضلي للتشفير لخوارزمية DES ميزات محددة لجداول الاستبدال ؛ عند استخدام جداول أخرى ، يجب أن يبدأ تحليل الشفرات من جديد ؛
بذلت محاولات لتقوية DES ضد التحليل الخطي والتفاضلي للتشفير باستخدام جداول إحلال أقوى ؛ هذه الجداول ، التي هي بالفعل أكثر استقرارًا ، تم اقتراحها ، على سبيل المثال ، في خوارزمية 5 DES ؛ ولكن ، للأسف ، كان من المستحيل استبدال DES بـ s 5 DES ، نظرًا لأن جداول الاستبدال محددة بشكل صارم في المعيار ، على التوالي ، ربما لا تدعم تطبيقات الخوارزمية القدرة على تغيير الجداول إلى جداول أخرى.
في عدد من الأعمال (على سبيل المثال ، و) خلص خطأً إلى أن جداول الاستبدال السرية لخوارزمية GOST 28147-89 يمكن أن تكون جزءًا من المفتاح وتزيد من طوله الفعال (وهو أمر غير مهم ، نظرًا لأن الخوارزمية تحتوي على مفتاح 256 بت كبير جدًا). ومع ذلك ، يثبت العمل أنه يمكن حساب جداول الاستبدال السرية باستخدام الهجوم التالي ، والذي يمكن تطبيقه عمليًا:
1. عيّن المفتاح الفارغ وابحث عن "المتجه الفارغ" ، أي القيمة z = / (0) ، حيث / () هي دالة دائرية للخوارزمية. تستغرق هذه المرحلة عمليتي تشفير تقريبًا.
2. باستخدام المتجه الصفري ، يتم حساب قيم جداول الاستبدال ، والتي لا تتطلب أكثر من 2 11 عملية.
تعديلات الخوارزمية وتحليلها
في العمل ، تم إجراء تحليل تشفير لتعديلات خوارزمية GOST 28147-89:
□ خوارزمية GOST-H ، والتي ، بالنسبة للخوارزمية الأصلية ، يتم تغيير ترتيب استخدام المفاتيح الفرعية ، أي في جولات من 25 إلى 32 يتم استخدام المفاتيح الفرعية بالترتيب المباشر ، أي بنفس الطريقة كما في السابق جولات الخوارزمية.
□ خوارزمية GOST® من 20 جولة تستخدم XOR بدلاً من modulo 2 32 لتراكب المفاتيح.
بناءً على نتائج التحليل ، استنتج أن GOST-H و GOST © أضعف من خوارزمية GOST 28147-89 الأصلية ، نظرًا لأن كلاهما يحتوي على فئات من المفاتيح الضعيفة. تجدر الإشارة إلى أنه فيما يتعلق بتحليل التشفير GOST © ، فإن العمل يكرر كلمة بكلمة القسم الخاص بتحليل الشفرات لخوارزمية GOST 28147-89 ، المنشور في عام 2000 في عمل مشهور (دون أي إشارة إلى الأصل). هذا يدعو إلى التشكيك في مهنية مؤلفي العمل ونتائجها الأخرى.
تم اقتراح تعديل مثير جدًا للخوارزمية في العمل: يجب أن تكون الجداول S \ ... Ss مختلفة بالضرورة ؛ في كل جولة من الخوارزمية ، يجب أن يتم تبديلها وفقًا لقانون معين. قد يعتمد هذا التبديل على مفتاح التشفير ، أو قد يكون سرًا (على سبيل المثال ، يكون جزءًا من مفتاح تشفير أكبر من مفتاح 256 بت الأصلي). كلا الخيارين ، وفقًا لمؤلفيهم ، يزيدان بشكل كبير من مقاومة الخوارزمية ضد تحليل التشفير الخطي والتفاضلي.
وتم تقديم تعديل آخر متعلق بجداول الاستبدال في العمل ، حيث يتم تحليل إحدى الطرق الممكنة لحساب جداول الاستبدال بناءً على مفتاح التشفير. استنتج مؤلفو العمل أن مثل هذا الاعتماد يضعف الخوارزمية ، لأنه يؤدي إلى وجود مفاتيح ضعيفة وإلى بعض نقاط الضعف المحتملة للخوارزمية.
تحليل الخوارزمية الشامل
هناك أيضًا هجمات على GOST 28147-89 الكامل بدون أي تعديلات. أحد الأعمال المفتوحة الأولى التي تم فيها تحليل الخوارزمية ، وهو عمل معروف ، مكرس للهجمات التي تستغل نقاط الضعف في إجراء توسيع المفتاح لعدد من خوارزميات التشفير المعروفة. على وجه الخصوص ، يمكن كسر الخوارزمية الكاملة GOST 28147-89 باستخدام تحليل التشفير التفاضلي على المفاتيح المرتبطة ، ولكن فقط في حالة استخدام جداول الاستبدال الضعيفة. يتم فتح الإصدار المكون من 24 جولة من الخوارزمية (الذي يفتقر إلى الجولات الثماني الأولى) بنفس الطريقة لأي جداول استبدال ، ولكن جداول الاستبدال القوية (على سبيل المثال ، الواردة في) تجعل مثل هذا الهجوم غير عملي على الإطلاق.
اقترح العلماء المحليون A.G Rostovtsev و E.B Makhovenko في عام 2001 طريقة جديدة تمامًا لتحليل الشفرات (وفقًا للمؤلفين ، فهي أكثر فعالية بشكل ملحوظ من تحليل الشفرات الخطي والتفاضلي) من خلال تكوين وظيفة موضوعية من نص عادي معروف يتوافق مع النص المشفر والقيمة المطلوبة المفتاح والعثور على أقصى حد له يتوافق مع القيمة الحقيقية للمفتاح. وجدوا أيضًا فئة كبيرة من المفاتيح الضعيفة لخوارزمية GOST 28147-89 ، والتي تسمح لك بفتح الخوارزمية باستخدام 4 نصوص عادية محددة ونصوص مشفرة مقابلة لها بدرجة تعقيد منخفضة إلى حد ما. يستمر تحليل الشفرات للخوارزمية في العمل.
في عام 2004 ، اقترحت مجموعة من الخبراء من كوريا هجومًا باستخدام التحليل التفاضلي للتشفير على المفاتيح المرتبطة ، يمكن الحصول عليه باحتمالية 91.7٪ 12 بتًا من المفتاح السري. يتطلب الهجوم 235 نصًا عاديًا مختارًا و 236 عملية تشفير. كما ترون ، هذا الهجوم غير مفيد عمليًا للفتح الحقيقي للخوارزمية.
الخوارزمية المحددة بواسطة GOST 28147-89 لها طول مفتاح تشفير يبلغ 256 بت. يقوم بتشفير المعلومات في كتل من 64 بت (تسمى هذه الخوارزميات خوارزميات الكتلة) ، والتي يتم تقسيمها بعد ذلك إلى مجموعتين فرعيتين من 32 بت (N1 و N2) (الشكل 1). تتم معالجة Subblock N1 بطريقة معينة ، وبعد ذلك يتم إضافة قيمته إلى قيمة الكتلة الفرعية N2 (يتم إجراء الإضافة بالمقياس 2 ، أي يتم تطبيق عملية XOR المنطقية - "حصرية أو") ، ثم يتم تبديل الكتل الفرعية. يتم إجراء هذا التحويل لعدد معين من المرات ("جولات"): 16 أو 32 اعتمادًا على وضع الخوارزمية. يتم إجراء عمليتين في كل جولة.
الشكل 1. مخطط خوارزمية GOST 28147-89.
الأول هو القفل. تمت إضافة محتويات الكتلة الفرعية N1 إلى النموذج 2 إلى الجزء 32 بت من المفتاح Kx. مفتاح كامليتم تمثيل التشفير كتسلسل لمفاتيح فرعية 32 بت: K0 ، K1 ، K2 ، K3 ، K4 ، K5 ، K6 ، K7. يتم استخدام أحد هذه المفاتيح الفرعية في عملية التشفير ، اعتمادًا على الرقم الدائري ووضع تشغيل الخوارزمية.
العملية الثانية هي استبدال الجدول. بعد القفل ، يتم تقسيم الكتلة الفرعية N1 إلى 8 أجزاء من 4 بتات ، ويتم استبدال قيمة كل منها وفقًا لجدول الاستبدال لهذا الجزء من الكتلة الفرعية. ثم يتم تدوير الكتلة الفرعية باتجاه اليسار بمقدار 11 بت.
غالبًا ما تُستخدم بدائل الجدول (صندوق الاستبدال - S-box) في خوارزميات التشفير الحديثة ، لذلك يجدر شرح كيفية تنظيم هذه العملية. تتم كتابة القيم الناتجة للكتل على الجدول. كتلة بيانات ذات بُعد معين (في حالتنا ، 4 بت) لها تمثيل رقمي خاص بها ، والذي يحدد عدد قيمة المخرجات. على سبيل المثال ، إذا كان S-box يشبه 4 و 11 و 2 و 14 و 15 و 0 و 8 و 13 و 3 و 12 و 9 و 7 و 5 و 10 و 6 و 1 و 4 بتات "0100" إلى المدخلات (القيمة 4) ، إذن ، وفقًا للجدول ، ستكون قيمة الإخراج 15 ، أي "1111" (0 أ 4 ، 1 أ 11 ، 2 أ 2 ...).
توفر الخوارزمية المحددة بواسطة GOST 28147-89 أربعة أوضاع تشغيل: الاستبدال البسيط ، والقياس ، والقياس مع الملاحظات ، وإنشاء بادئات التقليد. يستخدمون نفس تحويل التشفير الموصوف أعلاه ، ولكن نظرًا لاختلاف الغرض من الأوضاع ، يتم إجراء هذا التحويل في كل منها بشكل مختلف.
في وضع الاستبدال البسيط ، يتم تنفيذ الجولات الـ 32 الموضحة أعلاه لتشفير كل كتلة 64 بت من المعلومات. في هذه الحالة ، يتم استخدام المفاتيح الفرعية 32 بت في التسلسل التالي:
K0 ، K1 ، K2 ، K3 ، K4 ، K5 ، K6 ، K7 ، K0 ، K1 ، إلخ - في الجولات من 1 إلى 24 ؛
K7، K6، K5، K4، K3، K2، K1، K0 - في جولات 25 إلى 32.
يتم تنفيذ فك التشفير في هذا الوضع بنفس الطريقة تمامًا ، ولكن مع تسلسل مختلف قليلاً لاستخدام المفاتيح الفرعية:
K0، K1، K2، K3، K4، K5، K6، K7 - في الجولات من 1 إلى 8 ؛
K7 ، K6 ، K5 ، K4 ، K3 ، K2 ، K1 ، K0 ، K7 ، K6 ، إلخ - في الجولات من 9 إلى 32.
يتم تشفير جميع الكتل بشكل مستقل عن بعضها البعض ، أي أن نتيجة تشفير كل كتلة تعتمد فقط على محتواها (كتلة المصدر المقابلة). إذا كان هناك العديد من الكتل المتطابقة للنص الأصلي (العادي) ، فستكون كتل النص المشفر المقابلة هي نفسها أيضًا ، مما يعطي مزيدًا من معلومات مفيدةلمحلل الشفرات يحاول كسر الشفرات. لذلك ، يتم استخدام هذا الوضع بشكل أساسي لتشفير مفاتيح التشفير نفسها (غالبًا ما يتم تنفيذ مخططات متعددة المفاتيح ، حيث يتم تشفير المفاتيح فوق بعضها البعض لعدد من الأسباب). لتشفير المعلومات نفسها ، هناك وضعان آخران للتشغيل - جاما وجاما مع التغذية الراجعة.
في وضع جاما ، تكون كل كتلة نص عادي عبارة عن وحدة نمطية مضافة 2 إلى كتلة جاما المشفرة 64 بت. غاما المشفرة عبارة عن تسلسل خاص ، يتم الحصول عليه نتيجة لعمليات معينة مع سجلات N1 و N2.
- 1. في السجلات N1 و N2 ، تتم كتابة الملء الأولي - قيمة 64 بت تسمى رسالة المزامنة.
- 2. يتم إجراء تشفير محتويات السجلات N1 و N2 (في هذه الحالة ، رسائل المزامنة) في وضع الاستبدال البسيط.
- 3. يضاف محتوى السجل N1 إلى modulo (232 - 1) مع الثابت C1 = 224 + 216 + 28 + 24 ، ويتم كتابة نتيجة الإضافة لتسجيل N1.
- 4. تضاف محتويات السجل N2 إلى المقياس 232 مع الثابت C2 = 224 + 216 + 28 + 1 ، ويتم كتابة نتيجة الإضافة لتسجيل N2.
- 5. يتم إخراج محتويات المسجلين N1 و N2 ككتلة جاما مشفرة 64 بت (في هذه الحالة ، تشكل N1 و N2 أول كتلة جاما).
إذا كانت هناك حاجة إلى كتلة جاما التالية (أي يلزم استمرار التشفير أو فك التشفير) ، فارجع إلى الخطوة 2.
لفك التشفير ، يتم إنشاء جاما بطريقة مماثلة ، ومن ثم يتم XORed مرة أخرى في النص المشفر وبتات جاما. نظرًا لأن هذه العملية قابلة للعكس ، في حالة إنشاء جاما بشكل صحيح ، يتم الحصول على النص الأصلي (الجدول 1).
الجدول 1.التشفير وفك التشفير في وضع جاما
لتطوير نطاق التشفير المطلوب لفك التشفير ، يجب أن يكون لدى المستخدم الذي يقوم بفك تشفير التشفير نفس المفتاح ونفس قيمة رسالة المزامنة التي تم استخدامها عند تشفير المعلومات. خلاف ذلك ، لن تتمكن من الحصول على النص الأصلي من النص المشفر.
في معظم تطبيقات خوارزمية GOST 28147-89 ، لا تكون رسالة المزامنة سرية ، ولكن هناك أنظمة تكون فيها رسالة المزامنة هي نفس العنصر السري مثل مفتاح التشفير. بالنسبة لمثل هذه الأنظمة ، يتم زيادة الطول الفعال لمفتاح الخوارزمية (256 بت) بمقدار 64 بتًا أخرى من رسالة المزامنة السرية ، والتي يمكن اعتبارها أيضًا عنصرًا أساسيًا.
في وضع غاما ردود الفعل ، لملء السجلات N1 و N2 ، بدءًا من الكتلة الثانية ، لا يتم استخدام كتلة غاما السابقة ، ولكن نتيجة تشفير كتلة النص العادي السابقة (الشكل 2). يتم إنشاء الكتلة الأولى في هذا الوضع بنفس الطريقة تمامًا مثل الكتلة السابقة.
![](https://i2.wp.com/studwood.ru/imag_/15/160970/image002.jpg)
الشكل 2. توليد غاما المشفرة في وضع غاما التغذية المرتدة.
بالنظر إلى طريقة توليد بادئات التقليد ، من الضروري تحديد مفهوم موضوع التوليد. الانتحال عبارة عن مجموع اختباري للتشفير يتم حسابه باستخدام مفتاح تشفير ومصمم للتحقق من سلامة الرسائل. عند إنشاء بادئة ، يتم تنفيذ العمليات التالية: أول كتلة 64 بت من مصفوفة المعلومات ، والتي يتم حساب البادئة من أجلها ، تتم كتابتها في السجلات N1 و N2 وتشفيرها في وضع الاستبدال البسيط المصغر (أول 16 جولات من أصل 32). يتم تلخيص النتيجة التي تم الحصول عليها بالمقياس 2 مع المجموعة التالية من المعلومات ، مع حفظ النتيجة في N1 و N2.
تتكرر الدورة حتى آخر كتلة من المعلومات. تسمى محتويات 64 بت للسجلات N1 و N2 ، أو جزء منها ، الناتجة عن هذه التحولات ، بادئة التقليد. يتم اختيار حجم البادئة بناءً على الموثوقية المطلوبة للرسائل: مع طول البادئة r بت ، يكون احتمال حدوث تغيير في الرسالة دون أن يلاحظه أحد. في أغلب الأحيان ، تكون البادئة 32 بت مستخدمة ، أي نصف محتويات السجلات. هذا كافٍ ، لأنه ، مثل أي مجموع اختباري ، تهدف بادئة التقليد في المقام الأول إلى الحماية من التشويه العرضي للمعلومات. للحماية من التعديل المتعمد للبيانات وغيرها طرق التشفير- بادئ ذي بدء ، توقيع رقمي إلكتروني.
عند تبادل المعلومات ، تعمل بادئة التقليد كنوع من وسائل التحكم الإضافية. يتم حسابه للنص العادي عندما يتم تشفير بعض المعلومات وإرسالها مع النص المشفر. بعد فك التشفير ، يتم حساب قيمة جديدة لبادئة التقليد ، والتي تتم مقارنتها بالقيمة المرسلة. إذا لم تتطابق القيم ، فهذا يعني أن النص المشفر قد تم تشويهه أثناء الإرسال أو تم استخدام مفاتيح غير صحيحة أثناء فك التشفير. تعد بادئة التقليد مفيدة بشكل خاص للتحقق من فك التشفير الصحيح للمعلومات الأساسية عند استخدام أنظمة متعددة المفاتيح.
تعتبر خوارزمية GOST 28147-89 خوارزمية قوية جدًا - في الوقت الحالي ، لم يتم اقتراح طرق أكثر فعالية للكشف عنها من طريقة "القوة الغاشمة" المذكورة أعلاه. يتم تحقيق أمانها العالي بشكل أساسي بسبب طول المفتاح الكبير - 256 بت. عند استخدام رسالة مزامنة سرية ، يتم زيادة طول المفتاح الفعال إلى 320 بت ، ويضيف سر جدول الاستبدال وحدات بت إضافية. بالإضافة إلى ذلك ، تعتمد قوة التشفير على عدد جولات التحويلات ، والتي ، وفقًا لـ GOST 28147-89 ، يجب أن تكون 32 (يتم تحقيق التأثير الكامل لتشتت بيانات الإدخال بعد 8 جولات).
تتمثل مزايا GOST 28147-89 في وجود حماية ضد فرض البيانات الخاطئة (تطوير إدراج التقليد) ونفس دورة التشفير في جميع خوارزميات GOST الأربعة.