這裡給大家分享我在網上總結出來的一些知識,希望對大家有所幫助 當今Web開發中,數據安全是一個至關重要的問題,為了確保數據的安全性,我們需要使用加密技術。JavaScript作為一種客戶端編程語言,可以很好地為數據進行加密。在本篇文章中,我們將為你提供一個常規JavaScript加密大全,以及案例代 ...
這裡給大家分享我在網上總結出來的一些知識,希望對大家有所幫助
當今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
如果您對文章內容有不同看法,或者疑問,歡迎到評論區留言,或者私信我都可以。
也可以到上方網站,底部有我聯繫方式詳談
如遇自己源碼加密後沒備份,可以找我們解決解出恢復源碼,任何加密都可以