2017-06-21 87 views
1

我需要知道如何使用angular2在客戶端生成'rsa'密鑰對。 我需要生成私鑰/公鑰對,並將私鑰保存到數據庫中,並希望在客戶端使用公鑰。我怎樣才能實現這個?如何使用angular2在客戶端生成rsa密鑰對?

我發現這個https://www.npmjs.com/package/generate-rsa-keypair用於生成密鑰對。但它的節點?我可以將其實施到我的客戶端嗎?如果是的話如何? 是否有其他方法來實現這一點?

+0

你是什麼意思_並將私鑰保存到database_?中。你想將密鑰存儲在瀏覽器中的IndexedDB中嗎? – pedrofb

+0

我需要將其存儲在我的數據庫中MongoDb – Khushi

+0

出於安全原因,不建議在網絡上發送私鑰。如果您在服務器中需要它,請在服務器中生成密鑰對並將公鑰發送到瀏覽器 – pedrofb

回答

1

必須使用https://github.com/juliangruber/keypair

然後將它導入的角度成分像

import * as keypair from 'keypair'; 

和利用圖書館法

const pubprivkey = keypair(); 
console.log(pubprivkey); 

將返回RSA公鑰和私鑰

的對象
{ public: '-----BEGIN RSA PUBLIC KEY-----\r\nMIGJAoGBAM3CosR73CBNcJsLvAgMBAAE=\r\n-----END RSA PUBLIC KEY-----\n', 
    private: '-----BEGIN RSA PRIVATE KEY-----\r\nMIICXAIBAAKBgQDNwqLEe9wgTXNHoyxi7Ia\r\nPQUCQCwWU4U+v4lD7uYBw00Ga/xt+7+UqFPlPVdz1yyr4q24Zxaw0LgmuEvgU5dycq8N7Jxj\r\nTubX0MIRR+G9fmDBBl8=\r\n-----END RSA PRIVATE KEY-----\n' }