коммутативный RSA в узле JS - PullRequest
0 голосов
/ 24 июня 2019

Я пытаюсь использовать библиотеку узла js node-rsa для шифрования и дешифрования двумя ключами с коммутацией.Вот пример того, что я имею в виду:

const NodeRSA = require('node-rsa')
const key1 = new NodeRSA({b: 512})
const key2 = new NodeRSA({b: 512})

const e0 = 'Hello RSA!'

const e1 = key1.encrypt(e0, 'base64')
const e2 = key2.encrypt(e1, 'base64')

const e3 = key2.decrypt(e2, 'utf8')
const e4 = key1.decrypt(e3, 'utf8')

console.log(e4)

Я хочу иметь возможность переключать порядок расшифровки следующим образом:

const NodeRSA = require('node-rsa')
const key1 = new NodeRSA({b: 512})
const key2 = new NodeRSA({b: 512})

const e0 = 'Hello RSA!'

const e1 = key1.encrypt(e0, 'base64')
const e2 = key2.encrypt(e1, 'base64')

const e3 = key1.decrypt(e2, 'utf8')
const e4 = key2.decrypt(e3, 'utf8')

console.log(e4) // this should return 'Hello RSA!' just like before

Я считаю, что это должно быть возможно, потому что rsa коммутативнаОднако это не работает, я получаю сообщение об ошибке при запуске этого кода.Как я могу изменить его, чтобы он работал?

...