色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

如何基于python3和Vue實(shí)現(xiàn)AES數(shù)據(jù)加密

瀏覽:31日期:2022-07-27 17:23:11

高級(jí)加密標(biāo)準(zhǔn)(AES,Advanced Encryption Standard)為最常見的對(duì)稱加密算法(微信小程序加密傳輸就是用這個(gè)加密算法的)。對(duì)稱加密算法也就是加密和解密用相同的密鑰,具有以下幾個(gè)特點(diǎn):

1、最常用的對(duì)稱加密算法2、密鑰建立時(shí)間短、靈敏性好、內(nèi)存需求低3、實(shí)際使用中,使用工作模式為CTR(最好用BC去實(shí)現(xiàn)),此工作模式需要引入IV參數(shù)(16位的字節(jié)數(shù)組)4、密鑰長(zhǎng)度128/192/256,其中192與256需要配置無政策限制權(quán)限文件(JDK6)5、填充模式最常用的兩種PKCS5Padding和PKCS7Padding,其中后者只有BC獨(dú)有。6、加密和解密用到的密鑰是相同的,這種加密方式加密速度非常快,適合經(jīng)常發(fā)送數(shù)據(jù)的場(chǎng)合。

python (ECB)應(yīng)用

安裝:

Windows : pip install pycryptodome

Linux : pip install pycrypto

import base64import jsonimport refrom Crypto.Cipher import AESfrom Crypto.Util.Padding import padclass AesCrypt(object): ''' AES 加密組件 ''' def __init__(self, user, is_json=True): # 這里的密鑰長(zhǎng)度必須是 16 24 32 key = ’suiyi_’ + user.get(’Auth’) self.is_json = is_json self.encode_ = ’utf-8’ self.key = self.add_32(key) print(self.key) self.aes = AES.new(self.key, AES.MODE_ECB) # 創(chuàng)建一個(gè)aes對(duì)象 def add_32(self, key): ''' key 補(bǔ)齊32位 :param key: :return: ''' # 字符串 a 不要小于32位 a = ’aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa’ key += a key = key[0:32] return key.encode(self.encode_) def aes_encrypt(self, text): ''' 加密 支持 json 需在實(shí)例中制動(dòng) is_json = True :param text: :return: ''' if self.is_json: text = json.dumps(text, ensure_ascii=False) text = pad(text.encode(’utf-8’), AES.block_size, style=’pkcs7’) encrypt_text = self.aes.encrypt(text) return base64.encodebytes(encrypt_text).decode().strip() def aes_decrypt(self, text): ''' 解密 支持 json 需在實(shí)例中制動(dòng) is_json = True :param text: :return: ''' text = base64.decodebytes(text.encode(self.encode_)) decrypt_bytes = self.aes.decrypt(text) decrypt_text = re.compile(’[x00-x08x0b-x0cx0e-x1fnrt]’).sub(’’, decrypt_bytes.decode( self.encode_)) if self.is_json: decrypt_text = json.loads(decrypt_text) return decrypt_textif __name__ == ’__main__’: user = {’Auth’: ’0000_zhangziyi’} pr = AesCrypt(user, is_json=True) data = {'unit': 1, 'theme': 'cur', 'look_detail': True, 'zero_empty': True, 'zero_hide': True, 'data_type': 'sum'} en_text = pr.aes_encrypt(data) print(’密文:’, en_text) pr2 = AesCrypt(user, is_json=True) print(’明文:’, pr2.aes_decrypt(en_text))

Vue (ECB)應(yīng)用

安裝:

cnpm install crypto-js --save

import store from ’@/store’import CryptoJS from ’crypto-js/crypto-js’function add_secret_key (userAuth) { let key = ’suiyi_’ + userAuth if (key.length < 32) { let a = ’aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa’ key += a.slice(0, 32 - key.length) } else if (key.length > 32) { key = key.slice(0, 32) } console.log(key) return key}/** * 加密 * @param wordimport { aes_encrypt, aes_decrypt } from ’../../libs/crypto’aes_encrypt(this.data)aes_decrypt(this.AES_data) * @param userAuth代碼 * @param is_json * @returns {string} */export const aes_encrypt = (word, userAuth, is_json = true) => { if (is_json) { word = JSON.stringify(word) } var key = CryptoJS.enc.Utf8.parse(add_secret_key(userAuth)) // s/iqSaaE0F3tsLgMCkCZjvqptKKzqD9/pMUnMkCwNjg= Set var srcs = CryptoJS.enc.Utf8.parse(word) var encrypted = CryptoJS.AES.encrypt(srcs, key, { mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7 }) return encrypted.toString()}/** * 解密 * @param word * @param userAuth * @param is_json * @returns {string} */export const aes_decrypt = (word, userAuth, is_json = true) => { var key = CryptoJS.enc.Utf8.parse(add_secret_key(userAuth))// s/iqSaaE0F3tsLgMCkCZjvqptKKzqD9/pMUnMkCwNjg= Set var decrypt = CryptoJS.AES.decrypt(word, key, { mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7 }) let decrypt_text = CryptoJS.enc.Utf8.stringify(decrypt).toString() if (is_json) { decrypt_text = JSON.parse(decrypt_text) } return decrypt_text}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 欧美整片在线 | 国产微拍精品福利视频 | 手机看片久久青草福利盒子 | 女人十八一级毛片 | 毛片免费观看的视频在线 | 97在线看| 三级网站视频在线观看 | 92精品国产成人观看免费 | foot国产女王脚视频 | 东京一区二区三区高清视频 | 精品一区二区三区在线视频观看 | 一级做性色a爰片久久毛片免费 | 91精品久久 | 国内精品久久久久久野外 | 91视频综合网 | 玖草在线视频 | 欧美毛片日韩一级在线 | 九九热视频在线播放 | 国产一级一片免费播放刺激 | 欧美一级毛片aaaaa | 狠狠色综合色综合网站久久 | 欧美精品伊人久久 | 高清国产露脸捆绑01经典 | 中文字幕一区二区三区精品 | 国产高清在线精品一区在线 | 网红毛片 | 日韩午夜在线视频 | 高清午夜线观看免费 | 伊人久热这里只有精品视频99 | 亚洲精品无码不卡 | 高清免费国产在线观看 | 青青草福利视频 | 欧美一级特毛片 | 久草在线免费色站 | 国产高中生粉嫩无套第一次 | 国产精品免费观在线 | 国产亚洲视频在线播放大全 | 久久国产精品二区99 | 天天欲色成人综合网站 | 久草在线视频在线 | 偷偷操不一样的久久 |