1. 程式人生 > >AES--js實現加密解密

AES--js實現加密解密

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script src="./rollups/aes.js"></script>
    <!-- 加密時需引入 pad-zeropadding.js -->
    <script src="./components/pad-zeropadding.js"></script>
</head>
<body>
<script>
    // 1. 加密 & 解密
    var data = "Test String";
    var key  = CryptoJS.enc.Latin1.parse('1234567890123456');
    var iv   = CryptoJS.enc.Latin1.parse('1234567890123456');
    // 加密
    var encrypted = CryptoJS.AES.encrypt(data,key,{iv:iv,mode:CryptoJS.mode.CBC,padding:CryptoJS.pad.ZeroPadding});
    // 解密
    var decrypted = CryptoJS.AES.decrypt(encrypted,key,{iv:iv,padding:CryptoJS.pad.ZeroPadding});
    console.log(decrypted.toString(CryptoJS.enc.Utf8));




    // 2. 解密加密後的base64字串
    var encryptedBase64Str = 'fkkoqJqfLj0meLAJR5kBnc61OXAzgEYorHQtVYtDGf0FffC4OXFy4z1T0NgBG6NcDM1z64M42Nxn0xlRjjOLBw=='
    var key = CryptoJS.enc.Utf8.parse("1234567890123456")
    var iv  = CryptoJS.enc.Utf8.parse("1234567890123456")
    var decrypted = CryptoJS.AES.decrypt(encryptedBase64Str, key, {
        iv: iv,
        mode: CryptoJS.mode.CBC,
        padding: CryptoJS.pad.Pkcs7
    });
    console.log(CryptoJS.enc.Utf8.stringify(decrypted).toString());
    console.log(CryptoJS.enc.Utf8.stringify(decrypted));
</script>
</body>
</html>

參考:

  1. https://blog.csdn.net/lhb_11/article/details/79403962
  2. https://www.cnblogs.com/mafei6827/p/5674359.html

資源下載:

相關推薦

AES--js實現加密解密

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <me

golang實現aes-cbc-256加密解密過程記錄

generic 返回 hint pie follow strong pri hms 加密解密 我為什麽吃撐了要實現go的aes-cbc-256加密解密功能? 之前的項目是用php實現的,現在準備用go重構,需要用到這個功能,這麽常用的功能上網一搜一大把現成例子,於是基於g

java實現AES的簡單加密解密

AESUtil package com.zhuyun.aes; import java.io.IOException; import javax.crypto.Cipher; import ja

python AES-16位加密解密功能實現

從網上搜了很多這種python AES相關內容,但是大部分都是需要自己除錯修改半天才能使用,有的甚至埋下很多坑,費時費力,我這邊根據專案需求,也需要弄一套AES-16位加密和解密API 我用的python加密元件是Crypto,很好用,可以從網上下載最新的庫,我用的比較穩

Java使用Hutool實現AES、DES加密解密

介紹 AES和DES同屬對稱加密演算法,資料發信方將明文(原始資料)和加密金鑰一起經過特殊加密演算法處理後,使其變成複雜的加密密文傳送出去。收信方收到密文後,若想解讀原文,則需要使用加密用過的金鑰及相同演算法的逆演算法對密文進行解密,才能使其恢復成可讀明文。在

js base64加密解密

element from window enc color strong new abcde col var base64EncodeChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz01234567

微信AES-128-CBC加密解密

brush sha 解密 method pre tcl int cipher ++ [TestClass] public class UnitTest1 { [TestMethod] public void TestMeth

java多執行緒客戶端服務端實現加密解密

package com.p1; import java.util.HashMap; import java.util.Map; import com.p3.Lockinterface; /*加密解密程式*/ public class Lock implements Lockinterface{

js base64加密 解密

/**base64 */ //下面是64個基本的編碼 var base64EncodeChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; var base64DecodeChars = new Arr

java實現加密解密

1.加密 public static String encryt(String str) { // 根據金鑰,對Cipher物件進行初始化,ENCRYPT_MODE表示加密模式 try { Cipher c = Cipher.getInstance(“AES”); c.init(Cipher

js 字串加密解密

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>網頁加密及解密</title> <meta name="author" cont

Java使用AES演算法進行加密解密

一、加密 /** * 加密 * @param src 源資料位元組陣列 * @param key 金鑰位元組陣列 * @return 加密後的位元組陣列 */ public static byte[] Encrypt(byte[] src, b

[web-013] aes的iv加密解密的最簡原始碼示例

package com.tanzhishuju.demo; import java.security.SecureRandom; import javax.crypto.Cipher; import javax.crypto.KeyGenerator; import jav

java程式碼實現加密解密(MD5簽名(同步介面))

java程式碼進行加密處理 需要傳入的引數:一個指定的資料,還有key值,用於加密操作,key值客戶端和介面應事先商量好,首先將得到的資料和key轉化為指定編碼格式的位元組陣列,然後結合進行加密操作,解密操作需要通過正則表示式將資料重新加入到list中去,然後再將list和

MD5 轉碼 實現加密解密

 /***      * MD5加碼 生成32位md5碼      */      public static String string2MD5(String inStr){          MessageDigest md5 = null;          try{            

異或運算實現加密解密

異或運算中,如果某個字元(或數值)x 與 一個數值m 進行異或運算得到y,則再用y 與 m 進行異或運算就可以還原為 x ,因此應用這個原理可以實現資料的加密解密功能。 異或運算在java中通常有

golang使用aes實現解密

golang實現加密解密的庫很多, 這裡使用的是aes庫+base64庫來實現. 使用時,需要指定一個私鑰,來進行加解密, 這裡指定是: var aeskey = []byte(“321423u9y

AES和DES加密解密

AES連結:https://www.cnblogs.com/kongxincai/p/5996152.html DES連結:https://www.cnblogs.com/langtianya/p/3715975.html

java AES 128 位加密解密演算法

最近在做app後臺的伺服器,使用到AES加密解密演算法,無奈網上的都不符合要求,於是自己借鑑著寫了一個AES加密解密工具。 金鑰長度問題 預設 Java 中僅支援 128 位金鑰,當使用 256 位金鑰的時候,會報告金鑰長度錯誤 Invalid AES

關於openssl rsa php c++ js 協同加密解密的一些資源連結

http://blog.csdn.net/clh604/article/details/20224735 1、加密解密的第一步是生成公鑰、私鑰對,私鑰加密的內容能通過公鑰解密(反過來亦可以)   下載開源RSA金鑰生成工具openssl(通常Linux系統都自帶該程式)