У меня есть http-запрос, в котором я хочу передать некоторые конфиденциальные данные, поэтому я зашифровал эти данные. В своем приложении React Native я сгенерировал пару ключей с помощьюact-native-rsa-native и зашифровал мою строку с помощью открытого ключа через функцию RSA.encrypt (моя строка, мой открытый ключ).
После этого я отправляю сгенерированные данные крипты в свой http-запрос и пытаюсь расшифровать их в моей среде node.js (Google Cloud Functions). Для этого я использую модуль Crypto.
Я импортирую это с:
const crypto = require('crypto');
И я пытаюсь расшифровать свои данные с помощью закрытого ключа RSA, сгенерированного в моем модуле реагирования:
crypto.privateDecrypt(rsaPrivateKey, Buffer.from(myCryptedString))
Но я получаю ошибку:
Ошибка: ошибка: 0906D06C: процедуры PEM: PEM_read_bio: нет начальной строки
по ошибке (родной)
в Object.privateDecrypt (crypto.js: 375: 12)
at exports.createPaymentMethod.functions.https.onRequest (/user_code/index.js:943:10)
в cloudFunction (/user_code/node_modules/firebase-functions/lib/providers/https.js:37:41)
на /var/tmp/worker/worker.js:783:7
по адресу /var/tmp/worker/worker.js:766:11
в _combinedTickCallback (внутренняя / process / next_tick.js: 73: 7)
at process._tickDomainCallback
(внутренний / процесс / next_tick.js: 128: 9)