تشفير Blowfish وفك تشفيره
شفّر النصوص وفكّ تشفيرها بـ Blowfish وبطول المفتاح الذي تختاره.
تُعد Blowfish ضعيفة بمعايير اليوم؛ استخدمها لقراءة البيانات القديمة، وللبيانات الجديدة استخدم AES أو ChaCha20. الانتقال إلى AES
ستحتاج إليها مرة أخرى لفك التشفير. لا يغادر أي شيء تكتبه هذه الصفحة.
القيمة الافتراضية في OpenSSL هي 10,000. ويصلح أي عدد: فالعدد الأكبر يجعل تخمين كلمة المرور أبطأ؛ ويحتاج فك التشفير إلى العدد نفسه.
الخيار المعتاد مع OpenSSL. يحتاج إلى IV؛ ويحشو النص حتى يكمل الكتل.
openssl enc -bf-cbc -pbkdf2 -iter 10000 -a -A -provider legacy -provider defaultيطلب OpenSSL كلمة المرور؛ الصق النص فيه، أو أضف ملفَّي -in و-out.
Blowfish خوارزمية تشفير كتلي صمّمها بروس شناير عام 1993، بكتل من 8 بايت ومفتاح بأي طول من 32 إلى 448 بت. كانت بديلًا مجانيًا شائعًا لـ DES، ولا تزال تظهر في تطبيقات وصيغ ملفات وملفات إعدادات قديمة. تشفّر هذه الصفحة النصوص وتفك تشفيرها بـ Blowfish بنمط CBC افتراضيًا، أو ECB أو CFB أو OFB أو CTR، بأي طول مفتاح بخطوات من 8 بتات، و128 بت افتراضيًا، وهو طول المفتاح في bf-cbc من OpenSSL، باستخدام كلمة مرور بصيغة openssl enc -pbkdf2 أو مفتاح وIV من عندك بصيغة hex. وللبيانات الجديدة استخدم AES أو ChaCha20. يعمل كل شيء في متصفحك، فلا يغادر نصك ولا مفاتيحك جهازك؛ مجانًا ودون تسجيل.
طريقة تشفير النصوص أو فك تشفيرها بـ Blowfish
- اختر «تشفير» أو «فك التشفير». اكتب النص المراد تشفيره، أو الصق نص Base64 أو hex المراد فك تشفيره، وستُكتشف صيغته تلقائيًا.
- أدخل كلمة المرور، أو انتقل إلى وضع «المفتاح وIV (hex)» وأدخل المفتاح وIV من 16 خانة (لا يستخدم ECB أي IV). والمفتاح الملصق يضبط طول المفتاح تلقائيًا.
- اختر طول المفتاح (128 بت ما لم تكن البيانات قد أُنشئت بطول آخر) والنمط، وهو في الغالب CBC أو ECB. ولا تفعّل «بلا حشو» إلا إذا كانت البيانات قد شُفّرت دون حشو PKCS#7.
- انسخ النتيجة أو نزّلها، أو اضغط «تبديل» لنقلها إلى خانة الإدخال وعكس الاتجاه.
الميزات
- أي طول مفتاح من 32 إلى 448 بت بخطوات من 8 بتات، مع أطوال 64 و128 و256 و448 بنقرة واحدة
- أنماط CBC وECB وCFB وOFB وCTR؛ حشو PKCS#7 أو بلا حشو
- وضع كلمة المرور بصيغة openssl enc -pbkdf2؛ والطول الافتراضي 128 بت هو ما يستخدمه bf-cbc في OpenSSL
- وضع «المفتاح وIV»: مفتاح hex من 8 إلى 112 خانة وIV من 16 خانة
- أمر openssl لمفاتيح 128 بت بكل الأنماط ما عدا CTR، مع مزوّد legacy في OpenSSL 3
- مدخلات ومخرجات Base64 أو hex؛ انسخ النتيجة أو نزّلها أو اعكسها بزر «تبديل»
هل تبقى بياناتي خاصة؟
نعم. يعمل Blowfish بتقنية WebAssembly داخل متصفحك. لا يُرفع نصك ولا كلمة المرور ولا المفتاح ولا تُحفظ؛ فالصفحة لا تحتفظ بها إلا ما دامت مفتوحة.
الأسئلة الشائعة
هل لا يزال Blowfish آمنًا؟
ليس للبيانات الجديدة. لا يوجد هجوم عملي يكسر Blowfish نفسه، لكن كتلته ذات الـ 8 بايت تجعل الكميات الكبيرة من البيانات المشفّرة بمفتاح واحد عرضة للهجوم (هجوم Sweet32)، وقد أوصى مصممه نفسه بخوارزميات أحدث بدلًا منه. استخدمه لقراءة البيانات الموجودة، أما البيانات الجديدة فاستخدم لها AES أو ChaCha20.
هل يمكنني فك تشفيره باستخدام OpenSSL؟
نعم، مع المفتاح الافتراضي 128 بت: echo 'U2FsdGVkX1…' | openssl enc -d -bf-cbc -pbkdf2 -iter 10000 -a -A -provider legacy -provider default. وتغطي -bf-ecb و-bf-cfb و-bf-ofb الأنماط الأخرى، وفي وضع «المفتاح وIV» استخدم -K <32 خانة hex> -iv <16 خانة hex> بدل -pbkdf2 -iter. ليس في OpenSSL نمط CTR لـ Blowfish، ويستخدم openssl enc دائمًا مفتاح Blowfish بطول 128 بت، فلا يمكن قراءة أطوال المفاتيح الأخرى به.
أي طول مفتاح أختار؟
الطول الذي أُنشئت به البيانات، و128 بت إن لم تكن تعرفه، لأنه ما يستخدمه OpenSSL. في وضع كلمة المرور تشتق الصفحة من كلمة المرور مفتاحًا بالطول المختار، فالطول المختلف يعطي مفتاحًا مختلفًا. أما في وضع «المفتاح وIV» فالعبرة بطول مفتاح hex نفسه: الصقه فيتبعه طول المفتاح.
هل هذا هو bcrypt نفسه؟
لا. bcrypt دالة هاش لكلمات المرور مبنية على طريقة إعداد المفتاح في Blowfish، والهاش لا يمكن فك تشفيره. أما هذه الصفحة فتشفير Blowfish، ويمكن عكسه بكلمة المرور أو المفتاح. ولإنشاء هاش لكلمات المرور أو التحقق منها استخدم أداة Bcrypt.