はじめに
JavaScript で RSA 方式で暗号化・復号化したので手順をメモしておきます。
環境
ライブラリインストール
https://github.com/rzcoder/node-rsa
暗号化・復号化など
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| const NodeRSA = require('node-rsa') const key = new NodeRSA({ b: 512 }) console.log(key)
const text = 'Hello RSA!'
const encrypted = key.encrypt(text, 'base64') console.log('encrypted: ', encrypted)
let rsa_public_key = key.exportKey('pkcs1-public-pem') console.log('rsa_public_key: ', rsa_public_key)
let rsa_private_key = key.exportKey('pkcs1-private-pem') console.log('rsa_private_key: ', rsa_private_key)
const key2 = new NodeRSA(rsa_private_key, 'pkcs1-private-pem') const decrypted = key2.decrypt(encrypted, 'utf8')
console.log('decrypted: ', decrypted) console.log('text: ', text)
|
参考
Javascript で公開鍵ペア生成・暗号化/復号をしてみた
おわりに
参考 URL とやってることはあんまり変わらないんですけどコメントがなかったり復元フローがなかったりで少し分かりにくかったので改めて整理しておきました。
あと参考 URL だとbrowserify
というのをやってますが自分の環境だと特に不要でした。
詳しいことはよく分かりません!w
以上です。