當前位置:ag真人国际官网-ag旗舰厅官方网站 » 密碼管理 » node加密

node加密-ag真人国际官网

發布時間: 2024-11-18 21:56:13

① 關於nodejs 怎麼實現 crypto des加密

就是加密和解密使用同一個密鑰,通常稱之為「session key 」這種加密技術在當今被廣泛採用,如美國政府所採用的des加密標准就是一種典型的「對稱式」加密法,它的session key長度為56bits。
非對稱式加密:
就是加密和解密所使用的不是同一個密鑰,通常有兩個密鑰,稱為「公鑰」和「私鑰」,它們兩個必需配對使用,否則不能打開加密文件。
加密為系統中經常使用的功能,node自帶強大的加密功能crypto,下面通過簡單的例子進行練習。
1、加密模塊的引用:
var crypto=require('crypto');
var $=require('underscore');var defaults = {
encoding: {
input: 'utf8',
output: 'hex'
},
algorithms: ['bf', 'blowfish', 'aes-128-cbc']
};

默認加密演算法配置項:
輸入數據格式為utf8,輸出格式為hex,
演算法使用bf,blowfish,aes-128-abc三種加密演算法;
2、配置項初始化:
function mixcrypto(options) {
if (typeof options == 'string')
options = { key: options };

options = $.extend({}, defaults, options);
this.key = options.key;
this.inputencoding = options.encoding.input;
this.outputencoding = options.encoding.output;
this.algorithms = options.algorithms;
}

加密演算法可以進行配置,通過配置option進行不同加密演算法及編碼的使用。
3、加密方法代碼如下:
mixcrypto.prototype.encrypt = function (plaintext) {
return $.rece(this.algorithms, function (memo, a) {
var cipher = crypto.createcipher(a, this.key);
return cipher.update(memo, this.inputencoding, this.outputencoding)
cipher.final(this.outputencoding)
}, plaintext, this);
};

使用crypto進行數據的加密處理。
4、解密方法代碼如下:
mixcrypto.prototype.decrypt = function (crypted) {
try {
return $.receright(this.algorithms, function (memo, a) {
var decipher = crypto.createdecipher(a, this.key);
return decipher.update(memo, this.outputencoding, this.inputencoding)
decipher.final(this.inputencoding);
}, crypted, this);
} catch (e) {
return;
}
};

熱點內容
vb資料庫數組 發布:2024-11-19 09:23:40 瀏覽:827
安卓游戲數據保存在哪裡找 發布:2024-11-19 09:22:02 瀏覽:309
解壓出來的文件亂碼 發布:2024-11-19 09:15:40 瀏覽:939
北航ftp是多少 發布:2024-11-19 09:15:32 瀏覽:821
瀏覽保存密碼如何取消 發布:2024-11-19 09:10:17 瀏覽:89
安卓怎麼關簡訊重復提醒 發布:2024-11-19 09:02:00 瀏覽:635
html與php的區別 發布:2024-11-19 09:00:53 瀏覽:193
晚安密碼多少 發布:2024-11-19 09:00:51 瀏覽:945
易語言腳本模塊 發布:2024-11-19 09:00:44 瀏覽:484
經典矩陣c語言 發布:2024-11-19 08:56:23 瀏覽:268
网站地图