يجب أن تستخدم مفاتيح API للمستخدم padding من نوع OAEP

أدخل الموضوع باردًا ولكن هذا الخطأ يبدو غير صحيح. هذه ليست ميزة تم إزالتها في Node، إنها مشكلة في بعض تثبيتات OpenSSL. من مستندات Node:

استخدام crypto.constants.RSA_PKCS1_PADDING في crypto.privateDecrypt() يتطلب أن يدعم OpenSSL الرفض الضمني (rsa_pkcs1_implicit_rejection).

انظر أيضًا [Bug]: RSA_PKCS1_PADDING is no longer supported for private decryption · Issue #487 · bropat/eufy-security-client · GitHub

عند الاختبار محليًا، يعمل هذا بالنسبة لي: An example of RSA Encryption implemented in Node.js · GitHub حتى عندما أتحول إلى استخدام crypto.constants.RSA_PKCS1_PADDING للحشو لكل من التشفير وفك التشفير. أنا أستخدم OpenSSL 3.4.0 و Node 23.6.1.

الشيء الصعب في استخدام إعداد موقع هو أن العملاء لن يعرفوا أي حشو يدعمه المثيل المحدد. هذا يجعل التوافق عبر المثيلات/الخدمات أصعب في الفهم.

أعتقد أنه يجب علينا توضيح التنفيذ الحالي، أي الإشارة بوضوح إلى أننا نستخدم RSA_PKCS1_PADDING ثم التفكير في ترقية. ربما نحتاج إلى تقديم إصدارات لهذا الـ endpoint، حتى يتمكن العملاء من استخدام الحشو الصحيح بسلاسة قبل/بعد هذا الإصدار.

إعجابَين (2)