أدخل الموضوع باردًا ولكن هذا الخطأ يبدو غير صحيح. هذه ليست ميزة تم إزالتها في Node، إنها مشكلة في بعض تثبيتات OpenSSL. من مستندات Node:
استخدام crypto.constants.RSA_PKCS1_PADDING في crypto.privateDecrypt() يتطلب أن يدعم OpenSSL الرفض الضمني (rsa_pkcs1_implicit_rejection).
عند الاختبار محليًا، يعمل هذا بالنسبة لي: 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، حتى يتمكن العملاء من استخدام الحشو الصحيح بسلاسة قبل/بعد هذا الإصدار.