這里給大家分享我在網上總結出來的一些知識,希望對大家有所幫助
當今Web開發中,資料安全是一個至關重要的問題,為了確保資料的安全性,我們需要使用加密技術,JavaScript作為一種客戶端編程語言,可以很好地為資料進行加密,在本篇文章中,我們將為你提供一個常規JavaScript加密大全,以及案例代碼來演示如何使用它們,
Base64加密
Base64是一種將二進制資料編碼為ASCII字符的編碼方式,這種編碼方式廣泛應用于將二進制資料轉換為文本資料的場合,例如在電子郵件中傳輸二進制資料,以下是JavaScript實作Base64加密的代碼:
function base64Encode(str) {
return btoa(encodeURIComponent(str).replace(/%([0-9A-F]{2})/g, (match, p1) => String.fromCharCode('0x' + p1)));
}
這里我們使用了JavaScript內置的btoa()函式和encodeURIComponent()函式,其中,btoa()函式可以將字串編碼為Base64格式,而encodeURIComponent()函式則可以將字串轉換為可傳輸的URI格式,我們還使用了一個正則運算式來將URI格式中的特殊字符進行替換,最后,我們將處理后的字串回傳作為結果,
以下是一個使用Base64加密的例子:
const originalString = "Hello, world!";
const encodedString = base64Encode(originalString);
?
console.log("Original string:", originalString);
console.log("Encoded string:", encodedString);
運行上述代碼,輸出將會是:
Original string: Hello, world! Encoded string: SGVsbG8sIHdvcmxkIQ==
MD5加密
MD5是一種廣泛使用的訊息摘要演算法,用于驗證資料完整性和防止資料被篡改,MD5生成的摘要資訊是一個128位的二進制資料,通常表示為32個十六進制數字,以下是JavaScript實作MD5加密的代碼:
function md5(str) {
let md5Hash = CryptoJS.MD5(str);
return md5Hash.toString(CryptoJS.enc.Hex);
}
在這里,我們使用了一個JavaScript庫CryptoJS來實作MD5加密,我們首先將輸入的字串傳遞給CryptoJS.MD5()函式進行摘要計算,然后將結果轉換為十六進制格式的字串回傳,
以下是一個使用MD5加密的例子:
const originalString = "Hello, world!";
const hashedString = md5(originalString);
?
console.log("Original string:", originalString);
console.log("Hashed string:", hashedString);
運行上述代碼,輸出將會是:
Original string: Hello, world! Hashed string: ed076287532e86365e841e92bfc50d8c
AES加密
AES是一種對稱密鑰加密演算法,廣泛應用于資料加密和保護,以下是JavaScript實作AES加密的代碼:
function aesEncrypt(str, key) {
let encrypted = CryptoJS.AES.encrypt(str, key);
return encrypted.toString();
}
?
function aesDecrypt(str, key) {
let decrypted = CryptoJS.AES.decrypt(str, key);
return decrypted.toString(CryptoJS.enc.Utf8);
}
這里我們同樣使用了CryptoJS庫來實作AES加密,我們首先呼叫CryptoJS.AES.encrypt()函式來加密輸入字串,然后將結果轉換為字串并回傳,解密程序也很類似,我們呼叫CryptoJS.AES.decrypt()函式來解密字串,然后將結果轉換為UTF-8格式的字串并回傳,
以下是一個使用AES加密的例子:
const originalString = "Hello, world!";
const key = "my-secret-key";
?
const encryptedString = aesEncrypt(originalString, key);
const decryptedString = aesDecrypt(encryptedString, key);
?
console.log("Original string:", originalString);
console.log("Encrypted string:", encryptedString);
console.log("Decrypted string:", decryptedString);
運行上述代碼,輸出將會是:
Original string: Hello, world! Encrypted string: U2FsdGVkX19Jj+YoIjqJZvT8WxtsA9X+wLjKzFMGk8M= Decrypted string: Hello, world!
以上是一個常規JavaScript加密大全及案例代碼,希望可以對你有所幫助!
jsjiami.com
如果您對文章內容有不同看法,或者疑問,歡迎到評論區留言,或者私信我都可以,
也可以到上方網站,底部有我聯系方式詳談
如遇自己原始碼加密后沒備份,可以找我們解決解出恢復原始碼,任何加密都可以
本文轉載于:
https://juejin.cn/post/7221350704471785530
如果對您有所幫助,歡迎您點個關注,我會定時更新技術檔案,大家一起討論學習,一起進步,

轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/550459.html
標籤:JavaScript

