Firebase之npm生成RSA加密密鑰API

此篇文章重點講述如何生成RSA256密鑰API,在開發當中,Google或者做智能化設備時,總需要一些加密措施,歸納兩個方法:

一:keypair(npm install keypair進行安裝)

1.package.json

//先要把node.js,npm安裝完成
"keypair": "^1.0.1"

2.index.js

//導入引入npm密鑰生成API包
const keypair = require('keypair');
exports.helloWorld = functions.https.onRequest((request, response) => {
     let pair = keypair();
     console.log("public!",pair.public);
     console.log("private~",pair.private)
     response.send("pair.public",pair.public,"pair.private",pair.private);
});

3.部署到Firebase雲函數,進行測試。

//在終端cd到函數目錄。
如:cd use/andmin/data/function

在這裏插入圖片描述

//此命令發佈部署到firebase雲函數
% firebase deploy

4.稍等片刻,終端會顯示如下成功:
在這裏插入圖片描述

二:quick-encrypt(npm install quick-encrypt進行安裝)

1.終端cd進入到函數的目錄下

% npm install quick-encrypt

2.package.json

"quick-encrypt": "^1.0.8"

在這裏插入圖片描述
3.index.js

const functions = require('firebase-functions');
const QuickEncrypt = require('quick-encrypt');

 exports.QuickEncryptA = functions.https.onRequest((request, response) => {
     let keys = QuickEncrypt.generate(2048) // Use either 2048 bits or 1024 bits.
     console.log(keys.public) // Public Key that has been generated.
     console.log(keys.private) // Private Key that has been generated.
    response.send("keys.public",keys.public,"keys.private",keys.private);
});

4.部署到雲函數

 % firebase deploy

5.RSA256公/私鑰就這樣生成了,可以用到WEB/APP等自動生成API;
在這裏插入圖片描述

三:公/私鑰類型轉換:

1.以上的RSA密鑰API調用返回,key值頭部會包含public/private符號類型。

另一種實現方式如下:導入: “node-rsa”: “^1.0.7”,

const NodeRSA = require('node-rsa');

const RSA_IamPolicy = async (db,res) => {
    const key = new NodeRSA({ b: 2048 }); //生成2048位的密鑰
    const publicDer = key.exportKey("pkcs8-public-pem"); //公鑰
    const privateDer = key.exportKey("pkcs8-private-pem");//私鑰
    res.send({message: "私鑰:"+privateDer+"公鑰:"+publicDer});
}

在這裏插入圖片描述

實際公/私鑰結果如上所示,當我們創建的密鑰到期或者身份驗證不符合時,可用此方法調用API自動生成新密鑰。讓設備與服務器之間不產生斷開。

到此講述完畢!希望更幫助到更多的學習之人,若覺得很好,請不忘關注並且支持,NICE!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章