位置: IT常识 - 正文

AES(ECB/CBC) JS实现加密解密(aes-ecb和aes-gcm)

编辑:rootadmin
AES(ECB/CBC) JS实现加密解密

推荐整理分享AES(ECB/CBC) JS实现加密解密(aes-ecb和aes-gcm),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:aes csdn,aes_ecb_encrypt,aes的ecb模式,aes-ecb和aes-gcm,aes代码实现,aes/cbc/nopadding java,aes/cbc/nopadding java,aes/cbc/nopadding java,内容如对您有帮助,希望把文章链接给更多的朋友!

https://github.com/sytelus/CryptoJS

其中 CryptoJS 使用的谷歌开源 https://code.google.com/p/crypto-js/ 

AES(ECB/CBC) JS实现加密解密(aes-ecb和aes-gcm)

https://code.google.com/archive/p/crypto-js/downloads

AES对称加密,比DES安全性高。 AES分为ECB和CBC两种方式。 CBC模式比ECB模式安全。 ECB模式比CBC模式快。

CBC加密解密方式

下载完成后在页面中引入 rollups/aes.js components/pad-zeropadding.js

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>aes</title> <script src="aes.js"></script> <script src="pad-zeropadding.js"></script></head><body><script type="text/javascript"> CBC(); function CBC() { var key = "0000000671595991"; var iv = "tdrdadq59tbss5n7"; var pazzword = '123456'; console.log('pazzword:' + pazzword); // aes 加密 pazzword = encrypt(pazzword, key, iv); console.log('加密后:' + pazzword); if (pazzword.length == 24) { pazzword = decrypt(pazzword, key, iv); console.log('解密后:' + pazzword); } } // 加密 function encrypt(data, key, iv) { //key,iv:16位的字符串 var key1 = CryptoJS.enc.Latin1.parse(key); var iv1 = CryptoJS.enc.Latin1.parse(iv); return CryptoJS.AES.encrypt(data, key1, { iv: iv1, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.ZeroPadding }).toString(); } // 解密 function decrypt(data, key, iv) { //key,iv:16位的字符串 var key1 = CryptoJS.enc.Latin1.parse(key); var iv1 = CryptoJS.enc.Latin1.parse(iv); var decrypted = CryptoJS.AES.decrypt(data, key1, { iv: iv1, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.ZeroPadding }); return decrypted.toString(CryptoJS.enc.Utf8); }</script></body></html>ECB加密解密方式

下载完成后在页面中引入 rollups/aes.js components/mode-ecb.js components/pad-zeropadding.js

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>aes</title> <script src="aes.js"></script> <script src="mode-ecb.js"></script> <script src="pad-zeropadding.js"></script></head><body><script type="text/javascript"> ECB(); function ECB() { var key = "0000000671595991"; var iv = "tdrdadq59tbss5n7"; var pazzword = '123456'; console.log('pazzword:' + pazzword); // aes 加密 pazzword = encrypt(pazzword, key, iv); console.log('加密后:' + pazzword); if (pazzword.length == 24) { pazzword = decrypt(pazzword, key, iv); console.log('解密后:' + pazzword); } } // 加密 function encrypt(data, key, iv) { //key,iv:16位的字符串 var key1 = CryptoJS.enc.Latin1.parse(key); var iv1 = CryptoJS.enc.Latin1.parse(iv); return CryptoJS.AES.encrypt(data, key1, { iv: iv1, mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.ZeroPadding }).toString(); } // 解密 function decrypt(data, key, iv) { //key,iv:16位的字符串 var key1 = CryptoJS.enc.Latin1.parse(key); var iv1 = CryptoJS.enc.Latin1.parse(iv); var decrypted = CryptoJS.AES.decrypt(data, key1, { iv: iv1, mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.ZeroPadding }); return decrypted.toString(CryptoJS.enc.Utf8); }</script></body></html>Java实现方式

AES对称加密_小百菜的博客-CSDN博客

注意修改代码中的填充方式:

AES/CBC/PKCS5Padding 改为 AES/CBC/NoPaddingAES/ECB/PKCS5Padding 改为 AES/ECB/NoPadding在线测试

在线测试http://tool.chacuo.net/cryptaes

本文链接地址:https://www.jiuchutong.com/zhishi/290829.html 转载请保留说明!

上一篇:被阿尔卑斯山环抱的辛特湖,德国贝希特斯加登 (© Offset by Shutterstock)(阿尔卑斯山环保)

下一篇:uniapp - 编译微信小程序项目的微信授权登录、获取微信手机号登录、最新版微信直接登录、手机与验证码登录的示例源码(适用于 uniapp 微信小程序项目,源代码直接开箱即用)超级详细的代码及注释(uniapp编译原理)

  • 增值税电子普票没有电子章有效吗
  • 企业支付的租金在汇算时可一次性税前扣除
  • 税率和征收率有什么不一样
  • 土地增值税扣除20%的适用情况
  • 超过认证期的发票能用吗
  • 高铁票丢失了可以二次打印吗
  • 电子发票限额多了怎么办
  • 防伪税控系统服务费发票在哪里开
  • 某超市从电器生产厂购进一批电器
  • 电子发票与纸质发票具有同等效力
  • 空白增值税报表在哪下载
  • 开办费用怎么确定摊销年限及财务处理分析
  • 职工取暖费计入什么科目
  • 公司外部人员可以直接在公司报销吗
  • 企业自建房转让如何交土地增值税
  • 应收账款预付账款属于什么科目
  • 财务软件服务费属于什么费用
  • 水利建设基金的计税依据及税率
  • 快递费税率为什么是9
  • 免租与转租分别什么意思
  • 企业自主招聘有编制吗
  • 出纳记账本如何手工记账
  • 进项税和销项税抵扣的会计分录
  • 社保缴费基数是什么意思,退休能拿多少
  • 收购股权公司
  • 电商公司贷款条件
  • 个税手续费反还
  • 其他应付款年末怎么结转
  • php在apache中有哪些工作方式
  • 野生动植物种源包括
  • 秋分日的时间意义庆祝方式
  • 企业收到分红款,要怎么处理才合理
  • 企业支付宝账单明细怎么查
  • pytorch1.9.0
  • 供电企业接收用户资产
  • 长期股权投资会计准则
  • 银行存款存款单丢了怎么办
  • 多缴所得税怎么算
  • 帝国cms商城教程
  • mongodb安装使用
  • 员工预支款项及报销流程
  • 金蝶kis固定资产反结账
  • 投资性公司怎么做账
  • 政府工会经费计入什么科目
  • 填写企业所得税年度纳税申报表都需要哪些数据
  • 商业汇票贴现条件有哪些
  • 银行承兑汇票提示付款期为几天
  • 贴现法付息实际利率
  • 已认证的增值税专用发票退票
  • 进项税额已经抵扣会计分录
  • 工会年末结余会计分录
  • 生产成本制造费用结转
  • 公司老板个人卡收支公司业务属于什么行为
  • 什么情况下增值税发票不能抵扣
  • 固定资产损失计入什么科目
  • 什么是当期损益和其他综合收益
  • 借款费用应如何入账
  • 电脑爆音卡死
  • Ubuntu 12.04/14.04 LTS版内核更新 修复七个重大安全漏洞
  • win7系统删除文件夹怎么恢复
  • mac2020怎么换开机背景
  • 安装win 7系统
  • centos32
  • 清除win7更新缓存
  • win10系统开机桌面图标不见了
  • win7系统如何调节屏幕亮度
  • python如何用turtle
  • React Native react-navigation 导航使用详解
  • python 堆叠
  • 内存优化有哪些方法
  • python的例子
  • 地税局局长权利大吗
  • 各地市的税务局有哪些
  • 出口退税期限最长几个月以上
  • 国税干部任前谈心谈话
  • 在地税局工作是什么编制
  • 陕西地方税务局2017年2号公告
  • 在网上如何查询车辆违章
  • 征求意见稿 讨论稿 送审稿
  • 申请农合减免
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设