JavaScript實現的base64加密、md5加密、sha1加密及AES加密
1. Base64加密
1). js-base64
2). 安裝
npm install --save js-base64
3). 使用
<!-- npm install --save js-base64 -->
<script type="text/javascript" src="base64.min.js"></script>
<script type="text/javascript">
// 加密
var str = Base64.encode("mazaiting");
console.log("base64 encode: " + str);
// 解密
str = Base64.decode(str);
console.log("base64 decode: " + str);
</script>
2. MD5加密
1). js-md5
2). 安裝
npm install js-md5
3). 使用
<!-- npm install js-md5 -->
<script type="text/javascript" src="md5.min.js"></script>
<script type="text/javascript">
// 加密
var str = md5("mazaiting");
console.log("md5 encode: " + str);
</script>
3. sha1加密
1). js-sha1
2). 安裝
npm install js-sha1
3). 使用
<!-- npm install js-sha1 -->
<script type="text/javascript" src="sha1.min.js"></script>
<script type="text/javascript">
// 加密
var str = sha1("mazaiting");
console.log("sha1 encode: " + str);
</script>
4. 自定義加解密
<script type="text/javascript">
// 加密
var str = compileStr("mazaiting");
console.log("escape encode: " + str);
// 解密
str = uncompileStr(str);
console.log("escape decode: " + str);
// 對字串進行加密
function encode(code){
var c=String.fromCharCode(code.charCodeAt(0) + code.length);
for(var i = 1; i < code.length; i++) {
c += String.fromCharCode(code.charCodeAt(i) + code.charCodeAt(i - 1));
}
return escape(c);
}
// 字串進行解密
function uncompileStr(code){
code = unescape(code);
var c = String.fromCharCode(code.charCodeAt(0)-code.length);
for(var i = 1; i < code.length; i++) {
c += String.fromCharCode(code.charCodeAt(i)-c.charCodeAt(i - 1));
}
return c;
}
</script>
5. AES加密
1). aes-js
2). 安裝
npm install aes-js
3). 使用
CBC – Cipher-Block Chaining (recommended)
// An example 128-bit key
var key = [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 ];
// The initialization vector (must be 16 bytes)
var iv = [ 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,35, 36 ];
// 加密
// Convert text to bytes (text must be a multiple of 16 bytes)
var text = `TextMustBe16Byte`;
var textBytes = aesjs.utils.utf8.toBytes(text);
var aesCbc = new aesjs.ModeOfOperation.cbc(key, iv);
var encryptedBytes = aesCbc.encrypt(textBytes);
// To print or store the binary data, you may convert it to hex
var encryptedHex = aesjs.utils.hex.fromBytes(encryptedBytes);
console.log(encryptedHex);
// "104fb073f9a131f2cab49184bb864ca2"
// 解密
// When ready to decrypt the hex string, convert it back to bytes
var encryptedBytes = aesjs.utils.hex.toBytes(encryptedHex);
// The cipher-block chaining mode of operation maintains internal
// state, so to decrypt a new instance must be instantiated.
var aesCbc = new aesjs.ModeOfOperation.cbc(key, iv);
var decryptedBytes = aesCbc.decrypt(encryptedBytes);
// Convert our bytes back into text
var decryptedText = aesjs.utils.utf8.fromBytes(decryptedBytes);
console.log(decryptedText);
// "TextMustBe16Byte"
相關文章
- iOS 加密 base64 sha1 MD5 RSAiOS加密
- Javascript實現MD5加密JavaScript加密
- AES加密加密
- C# 實現MD5加密處理 MD5 加密C#加密
- Golang AES加密Golang加密
- AES 加密&解密加密解密
- AES加密解密加密解密
- VB實現AES(Rijndael)加密的方法加密
- qt實現md5加密QT加密
- java MD5 加密實現Java加密
- Android資料加密之Aes加密Android加密
- php中aes加密和rsa加密的區別PHP加密
- nodejs與javascript中的aes加密NodeJSJavaScript加密
- AES加密 – iOS與Java的同步實現加密iOSJava
- AES加密演算法的JAVA實現加密演算法Java
- python 實現md5加密Python加密
- AES CBC 加密解密加密解密
- Vue使用AES加密Vue加密
- PHP的AES加密類PHP加密
- MD5加密加密
- Android資料加密之MD5加密Android加密
- C# Base64加解密、MD5加密C#解密加密
- AES-CBC 模式加密模式加密
- java MD5 加密Java加密
- 【Java】MD5加密Java加密
- md5加密解密加密解密
- iOS MD5加密iOS加密
- java md5加密Java加密
- oracle的md5加密Oracle加密
- oracle base64加密Oracle加密
- 通過Go實現AES加密和解密工具Go加密解密
- Golang兩種方法實現MD5加密Golang加密
- java實現MD5加鹽加密方法Java加密
- PHP 實現 Base64 加密演算法PHP加密演算法
- golang AES-CBC 加密解密Golang加密解密
- 逆向工程加密函式:AES加密函式
- JAVA AES 加密 親測可用Java加密
- JAVA中AES加密和解密Java加密解密