كثيرًا ما يُصاب المبتدئون بالارتباك فور رؤيتهم مصطلحات مثل المفتاح الخاص والمفتاح العام والتجزئة والعنوان: لماذا كل هذه المصطلحات في علم التشفير؟ ولماذا تبدو التجزئة كسلسلة من الأرقام والحروف، بينما يتكوّن عنوان المفتاح العام من سلسلة طويلة من الحروف؟

تذكّر هذه الفكرة الأساسية: كل ما في الكمبيوتر، في جوهره، أرقام. أما الحروف فليست سوى نسخة مترجمة ليراها البشر.

لا يفهم الكمبيوتر سوى 0 و1 (الأرقام الثنائية). سواء أكانت صورة أم نصًا أم مفتاحًا، فهي في أساس الكمبيوتر مجرد سلسلة من الأصفار والآحاد. لكن قراءة سلسلة طويلة من 0 و1 أو نسخها أمر صعب جدًا على البشر.

لذلك ابتكر المهندسون حلًا: ترجمة هذه السلسلة الطويلة من الأرقام الثنائية إلى حروف وأرقام يمكننا فهمها. وتُسمّى عملية الترجمة هذه «الترميز».

في الأساس: أرقام ثنائية فقط (0 و1)

ما يظهر لك: سلسلة من الأحرف والأرقام (لتسهيل نسخها والاطلاع عليها)

لماذا توجد أنواع كثيرة من خوارزميات التشفير؟

التشفير ليس معادلة سحرية واحدة لكل شيء؛ إنه أشبه بالمفاتيح والمفكات والكماشات: تختلف الأدوات، وتختلف استخداماتها.

1. بعض الخوارزميات مناسبة للتوقيع (لإثبات أن هذه المحفظة ملكك، والتأكد من أنك من بدأ المعاملة)، مثل secp256k1 (المستخدمة في Bitcoin وEthereum) وEd25519 (المستخدمة في Solana). ميزتها أنها تنشئ زوجًا من المفاتيح: مفتاحًا خاصًا (تحتفظ به لنفسك) ومفتاحًا عامًا (يمكنك نشره).

2. بعض الخوارزميات مناسبة لإنشاء البصمات، أي خوارزميات التجزئة (Keccak وSHA256). تأخذ أي محتوى وتُنتج «بصمة رقمية» بطول ثابت. إذا غيّرت حرفًا واحدًا في النص الأصلي، تتغير البصمة تمامًا. وتُستخدم للتحقق مما إذا كانت البيانات قد عُبث بها.

ببساطة:

- خوارزميات المنحنيات الإهليلجية (secp256k1 وEd25519): **تُستخدم لإنشاء المفاتيح (المفتاح الخاص + المفتاح العام)

- خوارزمية التجزئة: تُستخدم لإنشاء بصمة فريدة للبيانات

تختلف متطلبات سلاسل الكتل العامة: ظهرت Bitcoin مبكرًا، فاختارت secp256k1؛ أما Solana فتسعى إلى السرعة، فاختارت Ed25519. تختلف المتطلبات، لذلك تتعدد أدوات التشفير.

قيمة التجزئة: لماذا تبدو مزيجًا من الأرقام والأحرف؟

تكون نتيجة خوارزمية التجزئة، في أساسها، سلسلة طويلة من الأرقام الثنائية.

لتسهيل عرضها باختصار، تُحوّل عادةً إلى النظام الست عشري: باستخدام الرموز من 0 إلى 9، إضافةً إلى a-f، أي 16 رمزًا إجمالًا.

لذا فإن قيمة التجزئة التي تراها، مثل هذه السلسلة: `0x503c57a...`، هي في جوهرها سلسلة طويلة من الأرقام، لكن تمثيلها المختصر يستخدم 16 رمزًا فقط.

وظيفتها: إنشاء بصمة للملفات أو المفاتيح العامة. حتى التغيير الطفيف في النص الأصلي يؤدي إلى تغيير كبير في قيمة التجزئة، مما يمنع العبث.

المفتاح العام وعنوان المحفظة، لماذا هما سلسلة طويلة من الأحرف؟

المفتاح العام نفسه، في أساسه، سلسلة من الأرقام الثنائية.

لكن التمثيل الثنائي طويل جدًا، والتمثيل بالنظام الست عشري ليس عمليًا بما يكفي، لذا ظهر ترميز Base58.

يحذف Base58 عمدًا الأحرف التي يسهل الخلط بينها: الرقم 0، والحرف O الكبير، والحرف I الكبير، والحرف l الصغير. ويتبقى 58 حرفًا: أحرف كبيرة وصغيرة وأرقام.

لذلك يظهر المفتاح العام أو العنوان في BTC وSolana كسلسلة طويلة من الأحرف والأرقام.

Solana: تحوّل أرقام المفتاح العام مباشرةً باستخدام Base58، وتتخذها عنوانًا

BTC: تُنشأ بصمة للمفتاح العام عبر التجزئة، ثم يُضاف رمز تحقق، وبعدها تُحوّل إلى Base58 أو Bech32

EVM Ethereum: يُجزّأ المفتاح العام للحصول على بصمة، ثم تُحوّل إلى النظام الست عشري وتُضاف إليها العلامة 0x في البداية

الخلاصة في جملة واحدة

1. تتكون جميع البيانات داخل الكمبيوتر من 0 و1 (أرقام). أما الأحرف التي نراها فهي مجرد طريقة لكتابة الأرقام، وليست أحرفًا فعلية.

2. تنقسم أدوات التشفير إلى نوعين: نوع لإنشاء المفاتيح (المفاتيح العامة والخاصة، والمنحنيات الإهليلجية)، ونوع لإنشاء البصمات (التجزئة). تسعى كل سلسلة كتل إلى تحقيق أداء مختلف، لذا تستخدم خوارزميات مختلفة.

3. تُعرض قيم التجزئة عادةً بالنظام الست عشري، فتبدو كأنها مزيج من 0-9 وa-f؛ أما عناوين المفاتيح العامة فتُرمّز عادةً باستخدام Base58، لذا تظهر كسلاسل طويلة من الأحرف.

4. جميع العناوين، في جوهرها، أرقام. الأحرف ليست سوى غلاف يسهل على البشر نسخها وقراءتها وتدوينها.