Les clés API utilisateur devraient utiliser un padding OAEP

J’arrive sans contexte, mais cette erreur me semble incorrecte. Ce n’est pas une fonctionnalité qui a été supprimée dans Node, c’est un problème avec certaines installations OpenSSL. D’après la documentation Node :

L'utilisation de crypto.constants.RSA_PKCS1_PADDING dans crypto.privateDecrypt() nécessite qu'OpenSSL prenne en charge le rejet implicite (rsa_pkcs1_implicit_rejection).

Voir aussi [Bug]: RSA_PKCS1_PADDING is no longer supported for private decryption · Issue #487 · bropat/eufy-security-client · GitHub

En testant localement, cela fonctionne pour moi : An example of RSA Encryption implemented in Node.js · GitHub même lorsque je passe à l’utilisation de crypto.constants.RSA_PKCS1_PADDING pour le padding du chiffrement et du déchiffrement. Je suis sur OpenSSL 3.4.0 et Node 23.6.1.

La chose délicate avec l’utilisation d’un paramètre de site est que les clients ne sauront pas quel padding l’instance spécifique prend en charge. Cela rend la compatibilité entre les instances/services plus difficile à comprendre.

Je pense que nous devrions clarifier l’implémentation existante, c’est-à-dire noter explicitement que nous utilisons RSA_PKCS1_PADDING et ensuite réfléchir à une mise à niveau. Peut-être devons-nous introduire une version de cet endpoint, afin que les clients puissent utiliser proprement le bon padding avant/après ladite version.

2 « J'aime »