ما هو تشفير المفتاح العام؟
التشفير بالمفتاح العام (PKC)، المعروف أيضًا باسم التشفير غير المتماثل، هو آلية تستخدم كلاً من المفتاح الخاص والعام، على عكس المفتاح الفردي المستخدم في التشفير. يمنح استخدام أزواج المفاتيح PKC مجموعة فريدة من الخصائص والقدرات التي يمكن استخدامها لحل التحديات الكامنة في تقنيات التشفير الأخرى. أصبح هذا النوع من التشفير عنصرًا مهمًا في أمن الكمبيوتر الحديث، فضلاً عن كونه مكونًا حيويًا لتطوير النظام البيئي للعملات المشفرة.
كيف يعمل ترميز المفتاح العام؟
في مخطط PKC، يستخدم المرسل المفتاحَ العام لتشفير المعلومات، بينما يستخدم المستلم المفتاحَ الخاص لفك التشفير. المفتاحان مختلفان، ويمكن مشاركة المفتاح العام بأمان دون التأثير على سرّية المفتاح الخاص. كل زوج مفاتيح غير متماثل فريد من نوعه، مما يضمن أن الرسالة المُشفَّرة بواسطة المفتاح العام لا يمكن قراءتها إلا بواسطة مالك المفتاح الخاص المقابل.
بما أن خوارزميات التشفير غير المتماثل تُنشئ أزواج مفاتيح مرتبطة رياضيًا، فإن طول المفتاح يكون أطول بكثير من طول أزواج المفاتيح التي تُنشئها التشفيرات المتماثلة. وهذا الطول الأكبر - وغالبًا ما يتراوح بين 1.024 و2.048 بت - يجعل حساب المفتاح الخاص من المفتاح العام شديد الصعوبة. ومن أشهر الخوارزميات المستخدمة اليوم للتشفير غير المتماثل خوارزمية RSA. في مخطط RSA، تُنشأ المفاتيح باستخدام ناتج ضرب عددين (غالبًا عددين أوليين كبيرين). وبعبارة أبسط، يولّد الموديل ناتج الضرب زوجين من المفاتيح (يمكن مشاركة مفتاح عام، بينما يجب الاحتفاظ بالمفتاح الخاص بسرية). تم وصف خوارزمية RSA لأول مرة في عام 1977 بواسطة Rivest وShamir وAdleman (RSA هي اختصار الحروف الأولى لأسماء هؤلاء الثلاثة) وما زالت حتى اليوم تُعد عنصرًا رئيسيًا في أنظمة التشفير بالمفاتيح العامة.
PKC - أداة التشفير
تحل التشفيريات بالمفتاح العام أحد المشكلات القديمة التي كانت موجودة في الخوارزميات المتماثلة - مشكلة تبادل المفتاح المستخدم للتشفير وفك التشفير معًا. إن إرسال المفتاح عبر اتصال غير آمن قد يؤدي إلى كشف أي رسالة مشفرة باستخدام مفتاح مشترك لطرف ثالث. وعلى الرغم من وجود تقنيات تشفير (مثل بروتوكول تبادل مفاتيح Diffie-Hellman-Merkle) لمعالجة هذه المشكلة، تظل مخاطر التعرض للهجوم قائمة. في المقابل، في التشفير بالمفتاح العام يمكن مشاركة المفتاح المستخدم للتشفير بأمان عبر أي اتصال. ونتيجة لذلك، توفر الخوارزميات غير المتماثلة مستوى حماية أعلى مقارنةً بالخوارزميات المتماثلة.
تطبيق لإنشاء التوقيع الرقمي
تطبيق آخر لخوارزميات التشفير غير المتماثل هو التحقق من صحة البيانات عبر التوقيع الرقمي. وبشكل أساسي، فإن التوقيع الرقمي هو تجزئة (hash) يتم إنشاؤها باستخدام البيانات الموجودة في رسالة. عند إرسال رسالة، يمكن للمستلم التحقق من التوقيع باستخدام المفتاح العام للمرسل كطريقة للتحقق من مصدر الرسالة وللتأكد من أنها ليست مزورة. في بعض الحالات، يتم تطبيق التوقيع الرقمي والتشفير معًا، حيث يمكن أن تكون التجزئة نفسها جزءًا مُشفَّرًا ضمن الرسالة. ومع ذلك، تجدر الإشارة إلى أن ليس جميع مخططات التوقيع الرقمي تستخدم تقنيات التشفير.
القيود
على الرغم من أنه يمكن استخدام PKC لتعزيز أمان الكمبيوتر وتوفير تحقق لسلامة الرسالة، إلا أنه يحتوي على بعض القيود. وبسبب مشاركة عمليات رياضية معقدة في التشفير وفك التشفير، قد تكون الخوارزميات غير المتماثلة بطيئة نسبيًا عند الاضطرار إلى معالجة كميات كبيرة من البيانات. كما تعتمد هذه الفئة من التشفير بشكل كبير على افتراض أن المفتاح الخاص سيظل سريًا. إذا تم مشاركة مفتاح خاص عن طريق الخطأ أو انكشافه، فإن أمان جميع الرسائل المشفرة باستخدام مفتاحه العام المقابل سيتعرض للخطر. وقد يقوم المستخدم أيضًا بفقدان المفتاح الخاص عن غير قصد، وفي هذه الحالة لن يتمكن من الوصول إلى البيانات المشفرة.
تطبيقات تشفير المفتاح العام
يُستخدم هذا النوع من التشفير بواسطة العديد من أنظمة الكمبيوتر الحديثة لتوفير الأمان للمعلومات الحساسة. على سبيل المثال، يمكن تشفير البريد الإلكتروني باستخدام تقنيات تشفير المفتاح العام للحفاظ على سرية المحتوى. كما يمكن لبروتوكول طبقة المقابس الآمنة (SSL) الذي يساعد في توفير اتصال آمن مع مواقع الويب أيضًا استخدام تشفير غير متماثل. وقد تم استخدام أنظمة PKC حتى كوسيلة لتوفير بيئة تصويت إلكتروني آمنة يمكنها تمكين الناخبين من المشاركة في الانتخابات من أجهزة الكمبيوتر الخاصة بهم في المنزل.
تحتل PKC مكانة بارزة أيضًا في تقنية blockchain والعملات الرقمية. عند إعداد محفظة عملة رقمية جديدة، يتم إنشاء زوج مفاتيح (مفتاح عام ومفتاح خاص). يتم إنشاء العنوان العام باستخدام المفتاح العام ويمكن مشاركته بأمان مع الآخرين. من ناحية أخرى، يُستخدم المفتاح الخاص لإنشاء التواقيع الرقمية والتحقق من المعاملات، وبالتالي يجب أن يبقى سريًا. عندما يتم التحقق من معاملة ما عبر تأكيد قيمة hash الموجودة في التوقيع الرقمي، يمكن إضافة تلك المعاملة إلى دفتر blockchain. يضمن نظام التحقق من التوقيعات الرقمية أنه لا يمكن سحب الأموال إلا بواسطة الشخص الذي يمتلك المفتاح الخاص المرتبط بالمحفظة الإلكترونية المعنية. وتجدر الإشارة إلى أن التشفيريات غير المتماثلة المستخدمة في تطبيقات العملات الرقمية تختلف عن تلك المستخدمة لأغراض أمان الكمبيوتر. على سبيل المثال، تستخدم Bitcoin وEthereum خوارزمية مخصصة تُسمى خوارزمية التوقيع الرقمي لمنحنيات بيضاوية (ECDSA) للتحقق من المعاملات.
من أمان الكمبيوتر إلى التحقق من معاملات العملات الرقمية، تلعب التشفيريات بالمفتاح العام دورًا مهمًا في تأمين الأنظمة الرقمية الحديثة. من خلال استخدام مفتاح عام ومفتاح خاص لكل زوج، تعالج الخوارزميات غير المتماثلة المشكلات الأساسية المتعلقة بالأمان التي تطرحها التشفيرات المتماثلة. على الرغم من أن PKC قد تم استخدامها لسنوات عديدة، إلا أن طرق الاستخدام والتطبيقات الجديدة لا تزال تُطوَّر باستمرار لها، خصوصًا في مجالات blockchain والعملات الرقمية.
