آلية تغليف المفاتيح

مخطط انسيابي لآلية تغليف رئيسية، يربط بين مدخلات ومخرجات خوارزميات Gen وEncap وDecap الخاصة بـ KEM
آلية تغليف رئيسية، لنقل مفتاح سري عشوائي بشكل سريك{\displaystyle k}من مُرسِل إلى مُستقبِل، تتكون العملية من ثلاث خوارزميات: Gen وEncap وDecap. الدوائر المظللة باللون الأزرق - المفتاح العام للمُستقبِلصك{\displaystyle pk}والتغليفج{\displaystyle c}يمكن الكشف عنها بأمان للخصم، بينما المربعات المظللة باللون الأحمر تمثل المفتاح الخاص بالمستلمsك{\displaystyle sk}والمفتاح السري المغلفك{\displaystyle k}يجب أن يبقى سراً. المفتاح السريك{\displaystyle k}يتم اختيارها عشوائياً داخل منطق Encap، وليس للمرسل أي سيطرة عليها.

في علم التشفير ، تُعدّ آلية تغليف المفتاح ( KEM ) نظام تشفير بالمفتاح العام يسمح للمرسل بإنشاء مفتاح سري قصير وإرساله إلى المُستقبِل بسرية تامة، على الرغم من محاولات التنصت والاعتراض . [ 1 ] [ 2 ] [ 3 ] وتعتمد المعايير الحديثة لتشفير الرسائل العشوائية بالمفتاح العام عادةً على آليات تغليف المفتاح . [ 4 ] [ 5 ]

تتيح آلية إدارة المفاتيح (KEM) للمرسل الذي يعرف المفتاح العام توليد مفتاح سري عشوائي قصير، بالإضافة إلى تغليف أو نص مشفر لهذا المفتاح السري، وذلك باستخدام خوارزمية التغليف الخاصة بالآلية . ويمكن للمستقبل الذي يعرف المفتاح الخاص المقابل للمفتاح العام استعادة نفس المفتاح السري العشوائي من التغليف باستخدام خوارزمية فك التغليف الخاصة بالآلية . [ 1 ] [ 2 ] [ 3 ]

يتمثل الهدف الأمني ​​لآلية إدارة المفاتيح (KEM) في منع أي شخص لا يعرف المفتاح الخاص من استعادة أي معلومات حول المفاتيح السرية المغلفة، حتى بعد التنصت أو إرسال تغليفات أخرى إلى المُستقبِل لدراسة كيفية تفاعله. [ 1 ] [ 2 ] [ 3 ]

الفرق بين التشفير بالمفتاح العام

مخطط انسيابي لنظام تشفير ذي مفتاح عام، يربط بين مدخلات ومخرجات خوارزميات التوليد والتشفير وفك التشفير.
نظام تشفير بالمفتاح العام، لنقل رسالة عشوائية بسرية تامةم{\displaystyle m}من مُرسِل إلى مُستقبِل. الرسالةم{\displaystyle m}يتم اختياره من قبل المرسل.

الفرق بين نظام التشفير بالمفتاح العام ونظام إدارة المفاتيح (KEM) هو أن نظام التشفير بالمفتاح العام يسمح للمرسل باختيار رسالة عشوائية من بين مجموعة من الرسائل الممكنة، بينما يختار نظام إدارة المفاتيح مفتاحًا سريًا قصيرًا عشوائيًا للمرسل. [ 1 ] [ 2 ] [ 3 ]

يمكن للمرسل استخدام المفتاح السري العشوائي الناتج عن وحدة إدارة المفاتيح (KEM) كمفتاح متماثل لتشفير موثق، حيث تُرسل البيانات المشفرة مع البيانات المُغلفة إلى المُستقبِل. يُسهم هذا في تكوين نظام تشفير بالمفتاح العام من وحدة إدارة المفاتيح (KEM) وتشفير موثق بمفتاح متماثل في نظام تشفير هجين . [ 1 ] [ 2 ] [ 3 ] [ 5 ]

تقتصر معظم أنظمة التشفير بالمفتاح العام، مثل RSAES-PKCS1-v1_5 و RSAES-OAEP وتشفير Elgamal ، على الرسائل الصغيرة [ 6 ] [ 7 ] ، وتُستخدم في الغالب لتشفير مفتاح سري عشوائي قصير في نظام تشفير هجين. [ 8 ] [ 9 ] [ 5 ] ورغم إمكانية تحويل نظام التشفير بالمفتاح العام إلى نظام إدارة مفاتيح (KEM) باختيار مفتاح سري عشوائي وتشفيره كرسالة، إلا أن تصميم وتحليل نظام إدارة مفاتيح آمن أسهل من تصميم نظام تشفير آمن بالمفتاح العام كأساس. لذا، تعتمد معظم أنظمة التشفير الحديثة بالمفتاح العام على أنظمة إدارة المفاتيح، وليس العكس. [ 10 ] [ 5 ]

تعريف

بناء الجملة

يتكون KEM من ثلاث خوارزميات: [ 1 ] [ 2 ] [ 3 ] [ 11 ] [ 12 ]

  1. توليد المفاتيح ،(صك،sك):=جين(){\displaystyle ({\mathit {pk}},{\mathit {sk}}):=\operatorname {Gen} ()}لا يتطلب أي مدخلات ويعيد زوجًا من المفاتيح العامةصك{\displaystyle {\mathit {pk}}}ومفتاح خاصsك{\displaystyle {\mathit {sk}}}.
  2. التغليف ،(ك،ج):=تغليف(صك){\displaystyle (k,c):=\operatorname {Encap} ({\mathit {pk}})}، يأخذ مفتاحًا عامًاصك{\displaystyle {\mathit {pk}}}يختار مفتاحًا سريًا بشكل عشوائيك{\displaystyle k}، والعائداتك{\displaystyle k}إلى جانب تغليفهج{\displaystyle c}.
  3. إزالة الغلاف ،ك:=قطع الرأس(sك،ج){\displaystyle k':=\operatorname {Decap} ({\mathit {sk}},c')}، يأخذ مفتاحًا خاصًاsك{\displaystyle {\mathit {sk}}}والتغليفج{\displaystyle c'}و إما أن تُعيد مفتاحًا سريًا مُغلّفًاك{\displaystyle k'}أو يفشل، ويُشار إليه أحيانًا بالعودة{\displaystyle \bot }(يسمى " القاع ").

في الإطار التقاربي للتشفير النظري، تكون جميع الخوارزميات ذات وقت متعدد الحدود احتمالي في معلمة أمانλ{\displaystyle \lambda }وطول المفتاح السريك{\displaystyle k}هي دالة لمعامل الأمانλ{\displaystyle \lambda }[ 1 ] [ 2 ]

في علم التشفير العملي، المفتاح السريك{\displaystyle k}يكون طول المفتاح السري عادةً ثابتًا لكل خوارزمية. على سبيل المثال، تستخدم خوارزمية ML-KEM دائمًا مفاتيح سرية بطول 256 بت، [ 4 ] : ​​§ 3.3، ص 16، بينما تتراوح المفاتيح السرية في الخوارزميات المذكورة في RFC 9180 بين 256 و384 و512 بت؛ [ 5 ] : § 7.1. ويمكن اشتقاق مفاتيح سرية ذات أطوال مختلفة من ك{\displaystyle k}بواسطة دالة اشتقاق رئيسية . [ 13 ] : § 5.3 [ 5 ]

الرفض الصريح مقابل الرفض الضمني

قد تفشل عملية إزالة التغليف بسبب مدخلاتهاج{\displaystyle c'}ليس تغليفًاج{\displaystyle c}تم إرجاعها بواسطة Encap، ولكن تم التلاعب بها أو تصميمها بشكل خبيث. وحدات إدارة المفاتيح (KEMs) التي تُبلغ عن الفشل بواسطة رمز مميز{\displaystyle \bot }يُقال إن (التي تُنفذ عمليًا عن طريق إرجاع رمز خطأ أو إطلاق استثناء) تستخدم الرفض الصريح . قد يُرجع KEM بدلاً من ذلك مفتاحًا سريًا عشوائيًا في هذه الحالة، أو مفتاحًا سريًا مُشتقًا بشكل شبه عشوائي منج{\displaystyle c'}تحت المفتاحsك{\displaystyle sk}وهذا ما يسمى بالرفض الضمني . [ 14 ] : § 5.3، ص 76-78 [ 12 ]

الصواب

تكون KEM صحيحة إذا، لأي زوج من المفاتيح(صك،sك){\displaystyle ({\mathit {pk}},{\mathit {sk}})}تم إنشاؤه بواسطةجين{\displaystyle \operatorname {Gen} }، إزالة غلاف التغليفج{\displaystyle c}تمت إعادته بواسطة(ك،ج):=تغليف(صك){\displaystyle (k,c):=\operatorname {Encap} ({\mathit {pk}})}باحتمالية عالية ينتج نفس المفتاحك{\displaystyle k}، إنه،قطع الرأس(sك،ج)=ك{\displaystyle \operatorname {Decap} ({\mathit {sk}},c)=k}[ 2 ] [ 3 ] [ 11 ] [ 12 ]

الأمن: IND-CCA

يُقاس أمان نظام إدارة المفاتيح (KEM) بمدى عدم قدرته على التمييز ضد هجوم النص المشفر المُختار التكيفي (IND-CCA)، والذي يُشير بشكل عام إلى مدى تفوق قدرة المُهاجم على تحديد ما إذا كان المفتاح المُعطى، عند إعطائه مفتاحًا عشوائيًا وتغليفًا، مُغلفًا بهذا التغليف أم أنه مفتاح عشوائي مستقل، مقارنةً برمي عملة معدنية. [ 2 ] [ 3 ] [ 11 ] [ 12 ] [ 1 ]

وبالتحديد، في مباراة IND-CCA:

  1. يتم تشغيل خوارزمية توليد المفاتيح لتوليد(صك،sك):=جين(){\displaystyle ({\mathit {pk}},{\mathit {sk}}):=\operatorname {Gen} ()}.
  2. صك{\displaystyle {\mathit {pk}}}يتم الكشف عنها للخصم.
  3. يمكن للخصم الاستعلامقطع الرأس(sك،ج){\displaystyle \operatorname {Decap} ({\mathit {sk}},c')}للتغليف العشوائيج{\displaystyle c'}من اختيار الخصم.
  4. يتم تشغيل خوارزمية التغليف لتوليد مفتاح سري وتغليف بشكل عشوائي(ك0،ج):=تغليف(صك){\displaystyle (k_{0},c):=\operatorname {Encap} ({\mathit {pk}})}ومفتاح سري آخرك1{\displaystyle k_{1}}يتم توليدها بشكل مستقل وعشوائي.
  5. يتم رمي عملة معدنية عادلة ، مما يعطي نتيجةب{0،1}{\displaystyle b\in \{0,1\}}.
  6. الزوجان(كب،ج){\displaystyle (k_{b},c)}يتم الكشف عنها للخصم.
  7. يمكن للخصم أن يستفسر مرة أخرىقطع الرأس(sك،ج){\displaystyle \operatorname {Decap} ({\mathit {sk}},c')}للتغليف العشوائيج{\displaystyle c'}من اختيار الخصم ، باستثناءج{\displaystyle c}.
  8. يرد الخصم بتخمينب{0،1}{\displaystyle b'\in \{0,1\}}ويفوز بالمباراة إذاب=ب{\displaystyle b=b'}.

تتمثل ميزة IND -CCA للخصم في|برو[ب=ب]-1/2|{\displaystyle \left|\Pr[b'=b]-1/2\right|}أي أن الاحتمالية التي تتجاوز احتمالية رمية عملة عادلة في التمييز الصحيح بين مفتاح مغلف ومفتاح تم اختياره عشوائياً بشكل مستقل.

التطبيقات

التشفير بالمفتاح العام

يمكن استخدام آلية تغليف المفاتيح مع تشفير متناظر موثق لإنشاء نظام تشفير بالمفتاح العام لأي رسائل. ويتمثل شرط الأمان للتشفير المتناظر، والذي يُسمى آلية تغليف البيانات ( DEM) ، في عدم إمكانية تمييز الرسالة المُشفرة من قِبل المُرسِل ضد هجوم النص المشفر المُختار . [ 15 ] [ 11 ] [ 16 ]

بافتراض وجود نظام إدارة مفاتيح آمن مزود بخوارزميات Gen/Encap/Decap، ونظام إدارة بيانات آمنهـك(م){\displaystyle E_{k}(m)}كما أن نظام التشفير الهجين التالي ذو المفتاح العام آمن أيضًا ضد هجوم النص المشفر المختار التكيفي في بيئة المفتاح العام: [ 1 ] [ 2 ] : § 7.2، النظرية 7.3 [ 13 ] : § 6.2.1

  • توليد المفاتيح: نفس آلية توليد المفاتيح (KEM).
  • لتشفير رسالةم{\displaystyle m}للحصول على مفتاح عامصك{\displaystyle {\mathit {pk}}}:
    1. يترك(ك،ج):=تغليف(صك){\displaystyle (k,c):=\operatorname {Encap} ({\mathit {pk}})}.
    2. يتركσ:=هـك(م){\displaystyle \sigma :=E_{k}(m)} .
    3. يرسل(ج،σ){\displaystyle (c,\sigma )}كنص مشفر.
  • لفك تشفير نص مشفر(ج،σ){\displaystyle (c',\sigma ')}باستخدام المفتاح الخاصsك{\displaystyle {\mathit {sk}}}:
    1. يتركك:=قطع الرأس(sك،ج){\displaystyle k':=\operatorname {Decap} ({\mathit {sk}},c')}أو الفشل إذا فشل.
    2. أعد الرسالةهـك-1(σ){\displaystyle E_{k'}^{-1}(\sigma ')}أو الفشل إذا فشل.

تجدر الإشارة إلى أنه - كما هو الحال مع أي تشفير بالمفتاح العام بمفرده - لا يُثبت هذا التشفير هوية المُرسِل: إذ يمكن لأي شخص يمتلك المفتاح العام إرسال رسالة إلى مُستقبِل يمتلك المفتاح الخاص. لذا، يجب استخدام تقنيات تشفير أخرى، مثل التوقيعات الرقمية ، في البروتوكول لكي يُثبت المُرسِل هويته للمُستقبِل. [ 17 ]

مع ذلك، يُعد استخدام تشفير متناظر موثق شرطًا أساسيًا في نظام التشفير المجهول هذا باستخدام المفتاح العام لتحقيق أمان IND-CCA. في حال استخدام تشفير غير موثق ، والذي يكون آمنًا فقط ضد هجوم النص الصريح المُختار (IND-CPA)، يُمكن للمهاجم تعديل الرسالة بشكل انتقائي من خلال نصها المشفر أثناء النقل، وهو ما لا يُخالف فقط معيار IND-CCA من الناحية التقنية [ 18 ] ، بل يُمكن أن يُعرّض السرية للخطر عمليًا كما في EFAIL [ 19 ] .

بروتوكولات الاتفاقيات الرئيسية

يمكن أيضًا استخدام KEM في بروتوكول اتفاقية مفاتيح مصادق عليه مثل TLS مع سرية أمامية لجلسة عبر الإنترنت، وذلك من خلال قيام العميل والخادم بإنشاء أزواج مفاتيح KEM وتبادل التغليفات الموقعة باستخدام أزواج المفاتيح هذه، والتي يقومون بعد ذلك بمسحها في نهاية الجلسة. [ 13 ]

دمج الكيمز

تعتمد أنظمة إدارة المفاتيح (KEMs) المختلفة على مسائل رياضية متباينة لضمان أمانها. فعلى سبيل المثال، يعتمد أمان نظام Rabin-KEM على صعوبة تحليل الأعداد الصحيحة إلى عواملها الأولية [ 11 ] ، وهي مسألة دُرست لقرون، ولكنها معروفة بضعفها أمام الحواسيب الكمومية القادرة على تشغيل خوارزمية شور . في المقابل، يعتمد أمان نظام ML-KEM على صعوبة التعلم مع الأخطاء [ 4 ] ، وهي مسألة دُرست لعقود فقط، ولكنها ليست معروفة بضعفها حتى أمام خصم يمتلك حاسوبًا كموميًا قادرًا على تشغيل خوارزمية شور.

مُجمِّع KEM هو مخطط لدمج اثنين من KEMs، KEM 1 و KEM 2 مع خوارزميات التغليف الخاصة بهما KEM 1 .Encap و KEM 2 .Encap وهكذا، في KEM مدمج يكون آمنًا إذا كان KEM 1 أو KEM 2 آمنًا. [ 20 ]

يُطلق أحيانًا على نظام إدارة المفاتيح (KEM) الذي يجمع بين نظام إدارة مفاتيح معرض للهجمات الكمومية مثل DH-KEM باستخدام X25519 ونظام إدارة مفاتيح ما بعد الكموم مثل ML-KEM اسم النظام الهجين ، [ 21 ] [ 10 ] [ 22 ] ولا ينبغي الخلط بينه وبين نظام التشفير الهجين الذي يجمع بين التشفير بالمفتاح العام والتشفير بالمفتاح المتماثل .

أمثلة ودوافع

RSA

التشفير التقليدي RSA ، معت{\displaystyle t}المعاملات والأسس ذات البتاتهـ{\displaystyle e}، ويتم تعريفها على النحو التالي: [ 23 ] [ 24 ] [ 25 ]

  • توليد المفاتيح ،(صك،sك):=جين(){\displaystyle ({\mathit {pk}},{\mathit {sk}}):=\operatorname {Gen} ()}:
  1. إنشاءت{\displaystyle t}عدد شبه أولي بتن{\displaystyle n}مع2ت-1<ن<2ت{\displaystyle 2^{t-1}<n<2^{t}}بشكل عشوائي مُرضٍالقاسم المشترك الأكبر(هـ،λ(ن))=1{\displaystyle \gcd(e,\lambda (n))=1}، أينλ(ن){\displaystyle \lambda (n)}هي دالة كارمايكل .
  2. الحوسبةد:=هـ-1تعديلλ(ن){\displaystyle d:=e^{-1}{\bmod {\lambda }}(n)}.
  3. يعودصك:=ن{\displaystyle {\mathit {pk}}:=n}باعتباره المفتاح العام وsك:=(ن،د){\displaystyle {\mathit {sk}}:=(n,d)}كمفتاح خاص. (تتوفر العديد من الاختلافات في خوارزميات توليد المفاتيح وتنسيقات المفاتيح الخاصة. [ 26 ] )
  • تشفير(ت-1){\displaystyle (t-1)}رسالة بتم{\displaystyle m}إلى المفتاح العامصك=ن{\displaystyle {\mathit {pk}}=n}، إعطاءج:=تشفير(صك،م){\displaystyle c:=\operatorname {Encrypt} ({\mathit {pk}},m)}:
  1. قم بتشفير سلسلة البتاتم{\displaystyle m}كعدد صحيحر{\displaystyle r}مع0ر<ن{\displaystyle 0\leq r<n}.
  2. يعودج:=رهـتعديلن{\displaystyle c:=r^{e}{\bmod {n}}}.
  • فك تشفير النص المشفرج{\displaystyle c'}باستخدام المفتاح الخاصsك=(ن،د){\displaystyle {\mathit {sk}}=(n,d)}، إعطاءم:=فك التشفير(sك،ج){\displaystyle m':=\operatorname {Decrypt} ({\mathit {sk}},c')}:
  1. الحوسبةر:=(ج)دتعديلن{\displaystyle r':=(c')^{d}{\bmod {n}}}.
  2. فك تشفير العدد الصحيحر{\displaystyle r'}كسلسلة بتم{\displaystyle m'}.

هذا النهج الساذج غير آمن تماماً. فعلى سبيل المثال، ولأنه غير عشوائي، فإنه لا يمكن أن يكون آمناً حتى ضد هجوم النص الصريح المعروف - إذ يمكن للمهاجم أن يحدد ما إذا كان المرسل هو من يرسل الرسالة ATTACK AT DAWNأم لا، ATTACK AT DUSKوذلك ببساطة عن طريق تشفير تلك الرسائل ومقارنة النص المشفر.

حتى لوم{\displaystyle m}يكون دائمًا مفتاحًا سريًا عشوائيًا، مثل مفتاح AES ذي 256 بت ، عندماهـ{\displaystyle e}يتم اختيارها لتحسين الكفاءة كماهـ=3{\displaystyle e=3}الرسالةم{\displaystyle m}يمكن حسابها من النص المشفرج{\displaystyle c}ببساطة عن طريق أخذ الجذور التكعيبية للأعداد الحقيقية ، وهناك العديد من الهجمات الأخرى ضد خوارزمية RSA العادية . [ 23 ] [ 24 ] وقد تم ابتكار العديد من مخططات الحشو العشوائي في محاولات - باءت بعضها بالفشل، مثل RSAES-PKCS1-v1_5 [ 23 ] [ 27 ] [ 28 ] - لجعلها آمنة للرسائل القصيرة العشوائية.م{\displaystyle m}[ 23 ] [ 24 ]

منذ الرسالةم{\displaystyle m}عادةً ما يكون مفتاحًا سريًا قصيرًا لتشفير متماثل مُصادق عليه، يُستخدم لتشفير رسالة سلسلة بتات عشوائية. أما النهج الأبسط المسمى RSA-KEM فهو اختيار عنصر منZ/نZ{\displaystyle \mathbb {Z} /n\mathbb {Z} }يتم اختيارها عشوائيًا واستخدامها لاستخلاص مفتاح سري باستخدام دالة استخلاص المفاتيح.ح{\displaystyle H}، تقريبًا كما يلي: [ 15 ] [ 8 ] [ 16 ]

  • توليد المفاتيح : كما هو مذكور أعلاه.
  • تغليف المفتاح العامصك=ن{\displaystyle {\mathit {pk}}=n}، إعطاء(ك،ج):=تغليف(صك){\displaystyle (k,c):=\operatorname {Encap} ({\mathit {pk}})}:
  1. اختر عددًا صحيحًار{\displaystyle r}مع0ر<ن{\displaystyle 0\leq r<n}بشكل عشوائي منتظم.
  2. يعودك:=ح(ر){\displaystyle k:=H(r)}وج:=رهـتعديلن{\displaystyle c:=r^{e}{\bmod {n}}}كغلاف لها.
  • إزالة الغلاف عنج{\displaystyle c'}باستخدام المفتاح الخاصsك=(ن،د){\displaystyle {\mathit {sk}}=(n,d)}، إعطاءك:=قطع الرأس(sك،ج){\displaystyle k':=\operatorname {Decap} ({\mathit {sk}},c')}:
  1. الحوسبةر:=(ج)دتعديلن{\displaystyle r':=(c')^{d}{\bmod {n}}}.
  2. يعودك:=ح(ر){\displaystyle k':=H(r')}.

هذا النهج أسهل في التنفيذ، ويوفر اختزالًا أكثر دقة لمشكلة RSA ، مقارنةً بمخططات الحشو مثل RSAES-OAEP . [ 15 ]

الجمال

يتم تعريف تشفير Elgamal التقليدي على مجموعة فرعية ضربية من الحقل المنتهيZ/صZ{\displaystyle \mathbb {Z} /p\mathbb {Z} }مع مولد كهربائيز{\displaystyle g}من النظامq{\displaystyle q}كما يلي: [ 29 ] [ 30 ]

  • توليد المفاتيح ،(صك،sك):=جين(){\displaystyle (pk,sk):=\operatorname {Gen} ()}:
  1. يختارxZ/qZ{\displaystyle x\in \mathbb {Z} /q\mathbb {Z} }بشكل عشوائي منتظم.
  2. الحوسبةy:=زxتعديلص{\displaystyle y:=g^{x}{\bmod {p}}}.
  3. يعودsك:=x{\displaystyle {\mathit {sk}}:=x}كمفتاح خاص وصك:=y{\displaystyle {\mathit {pk}}:=y}باعتباره المفتاح العام.
  • تشفير الرسالةمZ/صZ{\displaystyle m\in \mathbb {Z} /p\mathbb {Z} }إلى المفتاح العامصك=y{\displaystyle {\mathit {pk}}=y}، إعطاءج:=تشفير(صك،م){\displaystyle c:=\operatorname {Encrypt} ({\mathit {pk}},m)}:
  1. يختاررZ/qZ{\displaystyle r\in \mathbb {Z} /q\mathbb {Z} }بشكل عشوائي منتظم.
  2. الحساب:ت:=yرتعديلصج1:=زرتعديلصج2:=(تم)تعديلص{\displaystyle {\begin{aligned}t&:=y^{r}{\bmod {p}}\\c_{1}&:=g^{r}{\bmod {p}}\\c_{2}&:=(t\cdot m){\bmod {p}}\end{aligned}}}
  3. أعد النص المشفرج:=(ج1،ج2){\displaystyle c:=(c_{1},c_{2})}.
  • فك تشفير نص مشفرج=(ج1،ج2){\displaystyle c'=(c'_{1},c'_{2})}للحصول على مفتاح خاصsك=x{\displaystyle {\mathit {sk}}=x}، إعطاءم:=فك التشفير(sك،ج){\displaystyle m':=\operatorname {Decrypt} ({\mathit {sk}},c')}:
  1. الفشل والعودة{\displaystyle \bot }لو(ج1)(ص-1)/q1(تعديلص){\displaystyle (c'_{1})^{(p-1)/q}\not \equiv 1{\pmod {p}}}أو إذا(ج2)(ص-1)/q1(تعديلص){\displaystyle (c'_{2})^{(p-1)/q}\not \equiv 1{\pmod {p}}}أي، إذاج1{\displaystyle c'_{1}}أوج2{\displaystyle c'_{2}}ليس ضمن المجموعة الفرعية التي تم إنشاؤها بواسطةز{\displaystyle g}.
  2. الحوسبةت:=(ج1)xتعديلص{\displaystyle t':=(c'_{1})^{x}{\bmod {p}}}.
  3. يعودم:=ت-1ج2تعديلص{\displaystyle m':=t^{-1}c'_{2}{\bmod {p}}}.

يتوافق هذا مع قواعد نظام التشفير بالمفتاح العام، والمقتصر على الرسائل الموجودة في المساحةZ/صZ{\displaystyle \mathbb {Z} /p\mathbb {Z} }(مما يحد من حجم الرسالة إلى بضع مئات من البايتات للقيم النموذجية لـص{\displaystyle p}من خلال التحقق من صحة النصوص المشفرة أثناء فك التشفير، يتم تجنب تسريب أجزاء من المفتاح الخاص.x{\displaystyle x}من خلال نصوص مشفرة مختارة بشكل خبيث خارج المجموعة التي تم إنشاؤها بواسطةز{\displaystyle g}.

ومع ذلك، فإن هذا لا يحقق عدم القدرة على التمييز ضد هجوم النص المشفر المختار . على سبيل المثال، إذا كان لدى الخصم نص مشفرج=(ج1،ج2){\displaystyle c=(c_{1},c_{2})}لرسالة غير معروفةم{\displaystyle m}يمكن فك تشفيرها بسهولة عن طريق الاستعلام من وسيط فك التشفير عن النص المشفر المميزج:=(ج1،ج2ز){\displaystyle c':=(c_{1},c_{2}g)}مما ينتج عنه النص الأصلي ذي الصلةم:=مزتعديلص{\displaystyle m':=mg{\bmod {p}}}، منهام{\displaystyle m}يمكن استردادها بواسطةم=مز-1تعديلص{\displaystyle m=m'g^{-1}{\bmod {p}}}[ 29 ]

يمكن تكييف تشفير Elgamal التقليدي مع بيئة المنحنى الإهليلجي، ولكنه يتطلب طريقة ما لترميز الرسائل بشكل عكسي كنقاط على المنحنى، وهو أمر أقل بساطة من ترميز الرسائل كأعداد صحيحة moduloص{\displaystyle p}[ 31 ]

منذ الرسالةم{\displaystyle m}عادةً ما يكون المفتاح السري قصيرًا لخوارزمية تشفير متناظرة تُستخدم لتشفير رسالة سلسلة بتات عشوائية، وهناك نهج أبسط - يُسمى Elgamal-KEM أو DH-KEM - يتمثل في اشتقاق المفتاح السري منت{\displaystyle t}والاستغناء عنم{\displaystyle m}وج2{\displaystyle c_{2}}بشكل عام، كـ KEM، باستخدام دالة اشتقاق رئيسيةح{\displaystyle H}: [ 1 ] [ 5 ]

  • توليد المفاتيح : كما هو مذكور أعلاه.
  • تغليف المفتاح العامصك=y{\displaystyle {\mathit {pk}}=y}، إعطاء(ك،ج):=تغليف(صك){\displaystyle (k,c):=\operatorname {Encap} ({\mathit {pk}})}:
  1. يختاررZ/qZ{\displaystyle r\in \mathbb {Z} /q\mathbb {Z} }بشكل عشوائي منتظم.
  2. الحوسبةت:=yرتعديلص{\displaystyle t:=y^{r}{\bmod {p}}}.
  3. يعودك:=ح(ت){\displaystyle k:=H(t)}وج:=زرتعديلص{\displaystyle c:=g^{r}{\bmod {p}}}كغلاف لها.
  • إزالة الغلاف عنج{\displaystyle c'}باستخدام المفتاح الخاصsك=x{\displaystyle {\mathit {sk}}=x}، إعطاءك:=قطع الرأس(sك،ج){\displaystyle k':=\operatorname {Decap} ({\mathit {sk}},c')}:
  1. الفشل والعودة{\displaystyle \bot }لو(ج)(ص-1)/q1(تعديلص){\displaystyle (c')^{(p-1)/q}\not \equiv 1{\pmod {p}}}أي، إذاج{\displaystyle c'} ليس ضمن المجموعة الفرعية التي تم إنشاؤها بواسطةز{\displaystyle g}.
  2. الحوسبةت:=(ج)xتعديلص{\displaystyle t':=(c')^{x}{\bmod {p}}}.
  3. يعودك:=ح(ت){\displaystyle k':=H(t')}.

عند دمجها مع خوارزمية تشفير موثقة لتشفير رسائل سلسلة بتات عشوائية، فإن هذا المزيج يُشكل أساسًا نظام التشفير المتكامل . ولأن هذا النظام لا يتطلب سوى دالة اشتقاق مفتاح أحادية الاتجاه لتجزئة عناصر عشوائية من المجموعة التي يُعرَّف عليها،Z/صZ{\displaystyle \mathbb {Z} /p\mathbb {Z} }في هذه الحالة، وليس التشفير العكسي للرسائل، من السهل التوسع إلى مجموعات المنحنيات الإهليلجية الأكثر إحكاما وكفاءة لنفس مستوى الأمان، كما هو الحال في ECIES، مخطط التشفير المتكامل للمنحنى الإهليلجي ، أو حالات RFC 9180 DHKEM(...). 

انظر أيضاً

مراجع

  1. 1 2 3 4 5 6 7 8 9 10 غالبريث، ستيفن (2012). "§23.1.1: نموذج KEM/DEM". رياضيات التشفير بالمفتاح العام . مطبعة جامعة كامبريدج. ص 471-478 . ISBN  978-1-107-01392-6.
  2. 1 2 3 4 5 6 7 8 9 10 شوب، فيكتور (مايو 2000). برينيل، بارت (محرر). استخدام دوال التجزئة كحماية ضد هجوم النص المشفر المختار . التطورات في علم التشفير - يورو كريبت 2000. سلسلة محاضرات في علوم الحاسوب. المجلد 1807. بروج، بلجيكا: سبرينغر. الصفحات 275-288 . doi : 10.1007/3-540-45539-6_19 . ISBN   978-3-540-67517-4.
  3. 1 2 3 4 5 6 7 8 كريمر، رونالد ؛ شوب، فيكتور (2003). "تصميم وتحليل مخططات تشفير المفتاح العام العملية الآمنة ضد هجوم النص المشفر المختار التكيفي" . مجلة SIAM للحوسبة . 33 (1). جمعية الرياضيات الصناعية والتطبيقية : 167-226 . doi : 10.1137/S0097539702403773 .
  4. 1 2 3 معيار FIPS 203: معيار آلية تغليف المفاتيح القائمة على الشبكة المعيارية (ملف PDF) ، المعهد الوطني للمعايير والتكنولوجيا (NIST) ، 13 أغسطس 2024، doi : 10.6028/NIST.FIPS.203
  5. ١ ٢ ٣ ٤ ٥ ٦ ٧ ر. بارنز؛ ك. بهارجافان؛ ب. ليب؛ س. وود (فبراير ٢٠٢٢). تشفير المفتاح العام الهجين . فريق عمل أبحاث الإنترنت . doi : 10.17487/RFC9180 . RFC 9180 .لأغراض إعلامية.
  6. ب. كاليسكي؛ أ. روش؛ ج. جونسون؛ أ. روش (نوفمبر 2016). ك. موريارتي (محرر). PKCS #1: مواصفات تشفير RSA الإصدار 2.2 . فريق عمل هندسة الإنترنت . doi : 10.17487/RFC8017 . ISSN 2070-1721 . RFC 8017 . للعلم فقط. يلغي RFC 3447 . 
  7. مينيز، ألفريد جفان أورشوت، بول سفانستون، سكوت أ. (أكتوبر 1996). "8. التشفير بالمفتاح العام" (ملف PDF) . دليل التشفير التطبيقي . مطبعة CRC. الصفحات 283-319 . ISBN  0-8493-8523-7.
  8. 1 2 فيرغسون، نيلز ؛ كوهنو، تادايوشي ؛ شناير، بروس (2010). "12. RSA". هندسة التشفير . وايلي. ص 195-211 . ISBN  978-0-470-47424-2.
  9. ج. كالاس ؛ ل. دونرهاكي؛ هـ. فيني ؛ د. شو؛ ر. ثاير (نوفمبر 2007). تنسيق رسائل OpenPGP . مجموعة عمل الشبكة. doi : 10.17487/RFC4880 . RFC 4880 .معيار مقترح. يلغي المعيارين RFC 1991 و RFC 2440. تم إلغاؤه بموجب المعيار RFC 9580 .   
  10. 1 2 "التشفير ما بعد الكم: أسئلة وأجوبة" . المعهد الوطني للمعايير والتكنولوجيا . 19 يوليو 2024. مؤرشف من الأصل في 26 يونيو 2024. تم الاطلاع عليه في 20 يوليو 2024 .
  11. 1 2 3 4 5 دينت، ألكسندر و. (2002)، دليل المصمم لوحدات إدارة المفاتيح ، أرشيف الطباعة الإلكترونية لعلم التشفير، IACR
  12. 1 2 3 4 هوفينز، دينيس؛ هوفلمانز، كاثرين؛ كيلتز، إيكه (نوفمبر 2017). كالاي، يائيل؛ ريزين، ليونيد (محررون). تحليل معياري لتحويل فوجيساكي-أوكاموتو . نظرية التشفير - TCC 2017. سلسلة محاضرات في علوم الحاسوب. المجلد 10677. بالتيمور، ماريلاند، الولايات المتحدة: سبرينغر. الصفحات 341-371 . doi : 10.1007/978-3-319-70500-2_12 . ISBN   978-3-319-70499-9.
  13. 1 2 3 ألاغيك، غورجان؛ باركر، إيلين؛ تشين، ليلي؛ داستن، مودي؛ روبنسون، أنجيلا؛ سيلبرغ، هاميلتون؛ والر، نوح (يناير 2025)، SP 800-227 ipd: توصيات لآليات تغليف المفاتيح ، مسودة عامة أولية، المعهد الوطني للمعايير والتكنولوجيا ، doi : 10.6028/NIST.SP.800-227.ipd
  14. بيرسيكيتي، إدواردو (نوفمبر 2012). تحسين كفاءة التشفير القائم على الرموز . قسم الرياضيات (أطروحة دكتوراه). جامعة أوكلاند.
  15. 1 2 3 شوب، فيكتور (2001)، اقتراح لمعيار ISO لتشفير المفتاح العام (الإصدار 2.1) ، أرشيف الطباعة الإلكترونية لعلم التشفير، IACR
  16. 1 2 ر. هاوسلي؛ س. تيرنر (فبراير 2025). استخدام خوارزمية RSA-KEM في صيغة الرسائل المشفرة (CMS) . فريق عمل هندسة الإنترنت . doi : 10.17487/RFC9690 . RFC 9690 .المعيار المقترح. يلغي RFC 5990 . 
  17. آن، جي هي (2001)، التشفير الموثق في بيئة المفتاح العام: مفاهيم وتحليلات أمنية ، أرشيف الطباعة الإلكترونية لعلم التشفير، IACR
  18. بيلار، ميهير ؛ ديساي، أناند؛ بوينتشيفال، ديفيد ؛ روغاواي، فيليب (1998). "العلاقات بين مفاهيم الأمان لأنظمة التشفير بالمفتاح العام" . في: كراوتشيك، هوغو (محرر). المؤتمر الدولي السنوي الثامن عشر لعلم التشفير، سانتا باربرا، كاليفورنيا، الولايات المتحدة الأمريكية، 23-27 أغسطس 1998 ، وقائع المؤتمر . التطورات في علم التشفير - CRYPTO '98 . سلسلة محاضرات في علوم الحاسوب. المجلد 1462. سبرينغر. الصفحات 26-45 . doi : 10.1007/BFb0055718 . ISBN   978-3-540-64892-5ISSN 0302-9743 
  19. ^ بودبنياك، داميان؛ دريسن، كريستيان؛ مولر، ينس. إيسينج، فابيان؛ شينزيل، سيباستيان. فريدبرجر، سيمون؛ سوموروفسكي، يوراج؛ شوينك ، يورغ (أغسطس 2018). "Efail: كسر تشفير البريد الإلكتروني S/MIME وOpenPGP باستخدام قنوات الترشيح" . الندوة الأمنية السابعة والعشرون لـ USENIX (USENIX Security 18) . جمعية يوزينيكس. ص 549 – 566. ISBN  978-1-939133-04-5.
  20. جياكون، فيديريكو؛ هوير، فيليكس؛ بوتيرينغ، بيرترام. "مُجمِّعات KEM" . في: عبد الله، ميشيل؛ دهب، ريكاردو (محرران). المؤتمر الدولي الحادي والعشرون للجمعية الدولية لتشفير المفتاح العام حول ممارسة ونظرية تشفير المفتاح العام، ريو دي جانيرو، البرازيل، 25-29 مارس 2018، وقائع المؤتمر، الجزء الأول . تشفير المفتاح العام - PKC 2018. سلسلة محاضرات في علوم الحاسوب. المجلد 10769. سبرينغر. الصفحات 190-218 . doi : 10.1007/978-3-319-76578-5_7 . ISBN   978-3-319-76578-5.
  21. بيندل، نينا؛ بريندل، جاكلين؛ فيشلين، مارك؛ غونسالفيس، برايان؛ ستيبلا، دوغلاس. "آليات تغليف المفاتيح الهجينة وتبادل المفاتيح الموثق" . في: دينغ، جينتاي؛ شتاينوالدت، راينر (محرران). المؤتمر الدولي العاشر، PQCrypto 2019، تشونغتشينغ، الصين، 8-10 مايو 2019. أوراق مختارة منقحة . التشفير ما بعد الكمي . سلسلة محاضرات في علوم الحاسوب. المجلد 11505. سبرينغر. doi : 10.1007/978-3-030-25510-7 . ISBN  978-3-030-25510-7.
  22. اللجنة الفنية للأمن السيبراني التابعة للمعهد الأوروبي لمعايير الاتصالات (ETSI) (ديسمبر 2020)، تبادلات المفاتيح الهجينة الآمنة ضد الحوسبة الكمومية (ملف PDF) ، المعايير الفنية، المعهد الأوروبي لمعايير الاتصالات
  23. 1 2 3 4 أوماسون، جان فيليب (2018). "10. RSA". التشفير الجاد: مقدمة عملية للتشفير الحديث . دار نشر نو ستارش. الصفحات 181-199 . ISBN  978-1-59327-826-7.
  24. 1 2 3 ستينسون، دوغلاس ر. (2006). "5. نظام تشفير RSA وتحليل الأعداد الصحيحة". نظرية التشفير وتطبيقاته ( الطبعة الثالثة). تشابمان آند هول/سي آر سي. الصفحات 161-232 . ISBN   978-1-58488-508-5.
  25. ريفست، آر إل ؛ شامير، أأدلمان، إل. (1978-02-01). "طريقة للحصول على التوقيعات الرقمية وأنظمة التشفير بالمفتاح العام" (ملف PDF) . مجلة اتصالات رابطة مكائن ​​الحوسبة . 21 (2). رابطة مكائن ​​الحوسبة : 120-126 . doi : 10.1145/359340.359342 .
  26. ^ سفندا، بيتر؛ نيميك، ماتوش؛ سيكان، بيتر؛ كفاشوفسكي، رودولف؛ فورمانك، ديفيد؛ كوماريك، ديفيد؛ ماتياس ، فاشيك (أغسطس 2016). سؤال المليون مفتاح - التحقيق في أصول مفاتيح RSA العامة . الندوة الأمنية الخامسة والعشرون لـ USENIX. أوستن، تكساس، الولايات المتحدة: جمعية USENIX. ص 893 – 910. ISBN  978-1-931971-32-4.
  27. بليشنباخر، دانيال (أغسطس 1998). كراوتشيك، هوغو (محرر). هجمات النص المشفر المختار ضد البروتوكولات القائمة على معيار تشفير RSA PKCS #1 . التطورات في علم التشفير - CRYPTO '98 . سلسلة محاضرات في علوم الحاسوب. المجلد 1462. سانتا باربرا، كاليفورنيا، الولايات المتحدة: سبرينغر. الصفحات 1-12 . doi : 10.1007/BFb0055716 . ISBN   978-3-540-64892-5.
  28. ^ كورون، جان سيباستيان. جوي مارك. النقاش, داود ; باييلييه ، باسكال (مايو 2000). برينيل ، بارت (محرر). هجمات جديدة على تشفير PKCS#1 v1.5 . التقدم في علم التشفير – EUROCRYPT 2000 . ملاحظات محاضرة في علوم الكمبيوتر. المجلد. 1807. بروج، بلجيكا: سبرينغر. ص 369 – 381. دوى : 10.1007 / 3-540-45539-6_25 . رقم ISBN   978-3-540-67517-4.
  29. 1 2 غالبريث، ستيفن (2012). "§20.3: التشفير الإلغامي في الكتب الدراسية". رياضيات التشفير بالمفتاح العام . مطبعة جامعة كامبريدج. ص 471-478 . ISBN  978-1-107-01392-6.
  30. الجمال، طاهر (أغسطس 1984). بلاكلي، جورج روبرت ؛ تشاوم، ديفيد (محرران). نظام تشفير بالمفتاح العام ونظام توقيع قائم على اللوغاريتمات المنفصلة . التطورات في علم التشفير - CRYPTO 1984. سلسلة محاضرات في علوم الحاسوب. المجلد 196. سانتا باربرا، كاليفورنيا، الولايات المتحدة: سبرينغر. الصفحات 10-18 . doi : 10.1007/3-540-39568-7_2 . ISBN   978-3-540-15658-1.
  31. كوبليتز، نيل (يناير 1987). "أنظمة التشفير باستخدام المنحنيات الإهليلجية" (ملف PDF) . رياضيات الحوسبة . 48 (177). الجمعية الرياضية الأمريكية : 203-209 . doi : 10.1090/S0025-5718-1987-0866109-5 .