You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
			
				
					
					
						
							74 lines
						
					
					
						
							2.8 KiB
						
					
					
				
			
		
		
	
	
							74 lines
						
					
					
						
							2.8 KiB
						
					
					
				<!DOCTYPE html>
 | 
						|
<html lang="en">
 | 
						|
 | 
						|
<head>
 | 
						|
  <meta charset="UTF-8">
 | 
						|
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
 | 
						|
  <meta name="viewport" content="width=device-width,user-scalable=no,initial-scale=1,maximum-scale=1,minimum-scale=1" >
 | 
						|
  <title></title>
 | 
						|
  <script src="../lib/ase/core.min.js"></script>
 | 
						|
  <script src="../lib/ase/enc-base64.min.js"></script>
 | 
						|
  <!-- <script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/4.0.0/md5.min.js"></script> -->
 | 
						|
  <!-- <script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/4.0.0/evpkdf.min.js"></script> -->
 | 
						|
  <script src="../lib/ase/cipher-core.min.js"></script>
 | 
						|
  <script src="../lib/ase/aes.min.js"></script>
 | 
						|
  <!-- <script src="../lib/ase/pad-pkcs7.min.js"></script> -->
 | 
						|
  <!-- <script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/4.0.0/mode-ecb.min.js"></script> -->
 | 
						|
  <!-- <script src="../lib/ase/enc-utf8.min.js"></script> -->
 | 
						|
  <!-- <script src="../lib/ase/enc-hex.min.js"></script> -->
 | 
						|
  <script>
 | 
						|
    /**
 | 
						|
     * @description 解密方法
 | 
						|
     * @param {String} word 解密数据
 | 
						|
     * @returns 数据
 | 
						|
     */
 | 
						|
    function decrypt(word, key, vi) {
 | 
						|
      /** 十六位十六进制数作为密钥 《静夜思》 */
 | 
						|
      var key = CryptoJS.enc.Utf8.parse("cqmygysdssjtwmyd")
 | 
						|
      /** 十六位十六进制数作为密钥偏移量 《赋得古原草送别》 */
 | 
						|
      var iv = CryptoJS.enc.Utf8.parse('llyscysykryhsbjc')
 | 
						|
      let backStr
 | 
						|
      try {
 | 
						|
        let encryptedHexStr = CryptoJS.enc.Hex.parse(word)
 | 
						|
        let srcs = CryptoJS.enc.Base64.stringify(encryptedHexStr)
 | 
						|
        let decrypt = CryptoJS.AES.decrypt(srcs, key, { iv: iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 })
 | 
						|
        let decryptedStr = decrypt.toString(CryptoJS.enc.Utf8)
 | 
						|
        backStr = decryptedStr.toString()
 | 
						|
      }
 | 
						|
      catch (error) {
 | 
						|
        console.error(error)
 | 
						|
      }
 | 
						|
      return backStr
 | 
						|
    }
 | 
						|
 | 
						|
    /**
 | 
						|
     * @description 加密方法
 | 
						|
     * @param {String} word 需加密数据
 | 
						|
     * @returns 数据
 | 
						|
     */
 | 
						|
    function encrypt(word) {
 | 
						|
      /** 十六位十六进制数作为密钥 《静夜思》 */
 | 
						|
      var key = CryptoJS.enc.Utf8.parse("cqmygysdssjtwmyd")
 | 
						|
      /** 十六位十六进制数作为密钥偏移量 《赋得古原草送别》 */
 | 
						|
      var iv = CryptoJS.enc.Utf8.parse('llyscysykryhsbjc')
 | 
						|
      let backStr
 | 
						|
      try {
 | 
						|
        let srcs = CryptoJS.enc.Utf8.parse(word)
 | 
						|
        let encrypted = CryptoJS.AES.encrypt(srcs, key, { iv: iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 })
 | 
						|
        backStr = encrypted.ciphertext.toString().toUpperCase()
 | 
						|
      } catch (e) {
 | 
						|
        console.error(e)
 | 
						|
      }
 | 
						|
      return backStr
 | 
						|
    }
 | 
						|
 | 
						|
    console.log(decrypt('59321F1175CAC4B394F5B15E1F26AD8B'))
 | 
						|
  </script>
 | 
						|
 | 
						|
 | 
						|
</head>
 | 
						|
 | 
						|
<body>
 | 
						|
</body>
 | 
						|
 | 
						|
</html>
 | 
						|
 |