A-A+
python 加密解密 AES _ ECB _ PKCS7Padding
python脚本:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | #!/usr/bin/env python3 # -*- coding:utf-8 -*- #AES/ECB/PKCS7Padding 加密解密 #环境需求: #pip3 install pycryptodome from Crypto.Cipher import AES from Crypto.Util import Padding from base64 import b64encode, b64decode def aes_ecb_pkcs7_b64_encrypt(data, key): data = Padding.pad(data.encode('utf-8'), AES.block_size, 'pkcs7') aes = AES.new(key.encode('utf-8'), AES.MODE_ECB) return b64encode(aes.encrypt(data)).decode('utf-8') def aes_ecb_pkcs7_b64_decrypt(data, key): data = b64decode(data.encode('utf-8')) aes = AES.new(key.encode('utf-8'), AES.MODE_ECB) return Padding.unpad(aes.decrypt(data), AES.block_size, 'pkcs7').decode('utf-8') |
脚本来源:https://github.com/vcheckzen/FODI/blob/f3c1d5265802d1242ad5e50eb741d63b4ea5bbcc/back-end-py/main/util/crypto.py
javascript 脚本
需要引入:
<script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/3.1.9-1/crypto-js.min.js"></script>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | //调用方法 var userName="admin" ENC.GetEnc(userName) var ENC = { GetEnc: function(str) { try { var key = CryptoJS.enc.Utf8.parse("12345678"); #key的值12345678 var srcs = CryptoJS.enc.Utf8.parse(str); var encrypted = CryptoJS.AES.encrypt(srcs, key, { mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7 }); return encrypted } catch (e) { return str } } } |
代码来源:
布施恩德可便相知重
微信扫一扫打赏
支付宝扫一扫打赏