JS+AES解密(CBC模式、输出HEX)

2023-11-08

       if (tokenMsgs) {
            const response = await getMqttMsgService();
            let mqttMsg = response.data.msg;
            state.mqttconfigs = mqttMsg;
            const aesKeyResData = (await getAesKeyService()).data.msg.part1; //请求key(base64加密后的)
            const ivResData = (await getAesKeyService()).data.msg.part2; //请求iv(base64加密后的)
            let mykey = decodeURIComponent(escape(window.atob((aesKeyResData).replace(/-/g, "+").replace(/_/g, "/")))); //base64解码的key
            let key = CryptoJS.enc.Utf8.parse(mykey) //utf-8
            const myiv = decodeURIComponent(escape(window.atob((ivResData).replace(/-/g, "+").replace(/_/g, "/")))) //base64解码的iv
            var iiv = CryptoJS.enc.Utf8.parse(myiv) //utf-8
            let text = mqttMsg.para2 //需要ase解码的password
            let encryptedHexStr = CryptoJS.enc.Hex.parse(text)//指定HEx
            let srcs = CryptoJS.enc.Base64.stringify(encryptedHexStr)
                //AES解密
            let decrypt = CryptoJS.AES.decrypt(srcs, key, {
                iv: iiv,
                mode: CryptoJS.mode.CBC,
                padding: CryptoJS.pad.ZeroPadding
            })
            let decryptedStr = decrypt.toString(CryptoJS.enc.Utf8)
        }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JS+AES解密(CBC模式、输出HEX) 的相关文章

  • jQuery mobile 中的文本区域高度和宽度?

    我修复了 jQuery mobile 中文本区域元素的高度 并且在纵向中得到了完美的高度和宽度 但在横向中宽度没有放大 谁能帮我 提前致谢 HTML
  • 在 Internet Explorer 中使用什么来监视 jscript 内存使用情况

    我们正在调试 GWT 应用程序 在 Firefox 中运行正常 在 IE6 0 中开始运行正常 但一段时间后 它就会崩溃并开始爬行 经过一些测试后 我们怀疑存在一些内存问题 使用了太多内存 内存泄漏等 除了使用taskmanager和pro
  • .push() 将多个对象放入 JavaScript 数组中返回“未定义”

    当我将项目添加到beats数组然后console log用户时 我得到了数组中正确的项目数 但是当我检查 length 时 我总是得到 1 尝试调用索引总是会给我 未定义 如下所示 Tom beats 1 我想我错过了一些明显的东西 但这让
  • 在版本 4.4.6 中禁用 ckeditor 上下文菜单

    我在 Rails4 项目中使用 ckeditor 我尝试了 ckeditor gem 和 ckeditor rails gem 来提供 ckeditor 库 这里有多个帖子 人们希望删除 ckeditor 上下文菜单 以便可以显示本机浏览器
  • 想要动态处理与分页相关的页码显示:ReactJS

    我有一些分页逻辑工作得很好 唯一的问题是我只能让它显示并固定数量的页面可供选择 现在我已经把它放到了 5 页 但我希望它能够根据总记录动态更改 假设我有 100 条记录 每页限制为 10 条 将有 10 页 现在我只能让它以这种方式显示 第
  • 如何使用javascript确保元素仅在圆上朝一个方向移动?

    好吧 我承认我对三角学真的很糟糕 出于上下文的考虑 我将添加我在这里提到的问题中的内容 参考问题 https stackoverflow com a 39429290 168492 https stackoverflow com a 394
  • 如何在网站上使用 svg 元素制作块的屏幕截图?

    我在网站上创建了一个构造函数 其本质是将所选元素及其颜色 svg中的元素 添加到访问者选择的背景和背景颜色 png中的背景 中 然后必须单击 保存 结果 按钮并仅执行工作区的屏幕截图 我写了这个脚本 但它需要屏幕截图 但只有背景 并忽略选定
  • IntersectionObserver是否支持水平滚动观察?

    我制作了几个垂直滚动 IntersectionObserver 模块 但我对水平滚动感兴趣 根将是 div 观察目标将是 img 我想观察当 img 放大但 div 保持视口宽度时的变化 我什至不确定移动 Safari 是否会将缩放后的图片
  • 导航栏下拉菜单(折叠)在 Bootstrap 5 中不起作用

    我在尝试使用以下命令创建响应式菜单或下拉按钮时遇到问题Bootstrap 5一切似乎都正常 导航图标和下拉图标出现 但它不起作用 当我单击nav图标或dropdown按钮 无dropdown menu apears 我想特别提到的是 我还包
  • 按下回车键时不刷新页面

    我遇到了一些问题 只要表单中有输入 回车键就会触发页面刷新 下面的代码 如果按下回车并且文本区域 input 中没有输入任何文本 则不会刷新页面 但是如果按下回车并且 input中有输入或者光标位于文本区域 我不确定是什么触发了它 因为 s
  • JavaScript 中的 Promise 有什么意义?

    一个承诺是一个 可能现在可用 或将来可用 或永远不可用的值 来源 MDN 假设我有一个想要处理图片的应用程序 图片已加载 例如在算法在后台使用它之后 或某种其他类型的延迟 现在我想检查一下图片是否可以在future 通过使用承诺 而不是回调
  • JavaScript推送函数中的动态变量

    我在 JavaScript 中使用推送功能 var chartData for var i 0 i lt 3 i chartData push date new Date year s mon s date s hr s min s sec
  • 如何计算特定字符在字符串中出现的次数

    我正在尝试创建一个函数来查看数组中的任何字符是否在字符串中 如果是 有多少个 我尝试计算每一种模式 但是太多了 我尝试使用 Python 中的 in 运算符的替代方案 但效果不佳 function calc fit element var
  • LeafleteachLayer函数不会迭代所有Layer

    使用 GeoJSON 数据数组创建一些标记 getJSON GetLocationsServlet function data L geoJSON data onEachFeature onEachFeature addTo mymap G
  • Google Maps API (v3) 添加/更新标记

    编辑 它现在可以工作 但如果用户不允许或没有基于位置的服务 则不会加载 请参阅 jsfiddle 示例接受的答案评论 我已经浏览了一些教程和问题 但我无法安静地理解正在发生的事情 或者在这种情况下 没有发生 当用户单击链接时 我正在加载地图
  • 使用javascript动态更新css内容

    需要将 css 更新为动态值 我不确定最好的方法是什么 div style zoom 1 div 缩放级别将根据窗口大小调整触发 应用程序将相应缩放 我将此应用程序加载到 cordova 中并让它在 iPAD 中运行 然后我意识到需要使用
  • 滚动顶部不符合预期

    Note 由于上次忘记奖励而重新开放赏金 A Woff 大师已经给出答案 我想在用户展开某一行时到达该行 这样当最后一个可见行展开时 用户不必向下滚动即可查看内容 I used example tbody on click td green
  • Flot 库将 y 轴设置为最小值 0 和最大值 24

    如何将 y 轴设置在 0 到 24 的范围内 这是我的代码 j plot j placeholder d1 xaxis mode time min new Date 2010 11 01 getTime max new Date 2011
  • 如何通过索引访问 JSON 对象中的字段

    我知道这不是最好的方法 但我别无选择 我必须通过索引访问 JSONObject 中的项目 访问对象的标准方法是只写this objectName or this objectName 我还找到了一种获取 json 对象内所有字段的方法 fo
  • 没有输入的 jQuery 日期选择器

    我有一个相当复杂的网络应用程序 我想向其中添加一些日期选择 UI 我遇到的问题是我无法从文档中弄清楚如何真正控制日期选择器的出现方式和时间 不涉及任何表单元素 不 我不会添加秘密表单字段 因此简单的开箱即用方法根本行不通 我希望有人可以提供

随机推荐

  • 交换字符使得字符串相同--贪心算法

    LeetCode 交换字符使得字符串相同 有两个长度相同的字符串 s1 和 s2 且它们其中 只含有 字符 x 和 y 你需要通过 交换字符 的方式使这两个字符串相同 每次 交换字符 的时候 你都可以在两个字符串中各选一个字符进行交换 交换
  • java map equals_Java HashMap equals()方法

    Java HashMap equals 方法 java util HashMap equals 方法用于检查两个HashMap之间的相等性 它验证作为参数传递的一个映射的元素是否等于该映射的元素 1 语法 public boolean eq
  • SOA中的两个概念:编制(orchestration)和编排(choreography)

    以下是摘自 Understanding SOA with Web Services 中文版 关于两个概念的解释 编制 orchestration 和编排 choreography 是常用于描述 合成Web服务的两种方式 的术语 虽然它们有共
  • C 和 C++的区别 / struct 和 class 的区别 / 指针和引用的区别 / new 与 malloc 的区别 / 堆和栈的区别 / sizeof 和 strlen 的区别

    C 和 C 的区别 主要从以下三个方面来谈 设计思想 编程思想方面 语言特性方面 语法 内存管理 库 执行效率方面 C 和 C 的区别 C 是面向过程的语言 而 C 是面向对象的语言 因此 C 语言中有类和对象以及继承多态这样的面向对象语言
  • maskrcnn-benchmark训练自己数据集用于视觉分割

    1 标记数据用labelme 建议用ubuntu版本去做 因为window可能因为这个需要环境改变影响其他 自己犯过这个问题 https github com wkentaro labelme 2 labelme转化成coco数据集用于分割
  • Hyperlynx仿真操作小点

    一 改变传输线的属性 双击传输线 在对话框中选择要的线型 设置部分线的阻抗 点击edit coupling regions栏 选择右上方的edit stackup 编辑想要的叠层属性 通常改变顶底层和电源层 地层之间的PP厚度 10 8 5
  • 使用Python和XPath解析动态JSON数据

    JSON动态数据在Python中扮演着重要的角色 为开发者提供了处理实时和灵活数据的能力 Python作为一种强大的编程语言 提供了丰富的工具和库来处理动态JSON数据使得解析和处理动态JSON数据变得简单和高效 例如 使用内置的json模
  • python自动化处理,PPT处理

    一 PPT相关库介绍 安装python pptx库 同其他文件转换pptx2md rst2pptx 导入库 import pptx 初始化 ppt pptx Presentation 二 幻灯片层次结构说明 PPT文件结构 PPT文件结构指
  • 深入理解JVM—垃圾回收机制

    一 前言 明确垃圾收集器关注的部分 堆和方法区 着重学习如何确定哪些垃圾需要回收 垃圾回收算法以及GC触发条件 二 如何确定哪些垃圾需要回收 1 引用计数算法 在对象中添加一个引用计数器 每当有一个地方引用它时 计数器值就加一 当引用失效时
  • ROS2系统节点开机自启动

    要将ROS2节点设置为开机自启动 您可以创建一个systemd服务单元来管理它 一 创建launch文件 cd ros2 ws mkdir launch touch launch ros launch py 编辑内容 from launch
  • # 解析bt文件_PC端BT资源搜索及下载,诸位请节制!

    Hello大家好 这里是TopOne软件管家 毕竟要求的人太多了 今天将我测试最好的搭配给大家分享一下 当然 这个是站在我的角度 大家可以根据自己的使用情况进行调整 今天分享的是PC端 由于Mac限制 苹果电脑现只提供BT搜索软件 BT搜索
  • Windows下基于WSL2的Ubuntu开发环境搭建

    1 背景介绍 Windows是市场占有率最高的桌面操作系统 嵌入式开发领域一般需要搭建ubuntu虚拟机环境以实现linux下的交叉编译等工作 传统的Vmvare Ubuntu虚拟机安装过程繁琐且资源消耗巨大 自从Windows提供WSL2
  • 数据分析08——Pandas中对数据进行数据清洗

    0 前言 使用pandas修改数据是否会改变源数据 Pandas 对 DataFrame 的操作通常是针对原始数据本身而不是其副本的 例如 当我们使用 loc 或 iloc 方法选择 DataFrame 中的某行或某列并进行修改时 实际上是
  • python实现手势识别

    python实现手势识别 入门 使用open cv实现简单的手势识别 刚刚接触python不久 看到了很多有意思的项目 尤其时关于计算机视觉的 网上搜到了一些关于手势处理的实验 我在这儿简单的实现一下 PS 和那些大佬比起来真的是差远了 毕
  • Flink Sql使用mysql-cdc捕获多个表失败的问题

    问题描述 要捕获同一个库里的多个表的binlog 程序不报错 但是修改某个表后没有结果没有任何改变 fllinkSql的with语句 WITH connector mysql cdc hostname s port s username s
  • Linux安装anaconda3是否初始化的区别

    Linux安装anaconda3提示是否希望安装程序通过运行conda init来初始化Anaconda3 Do you wish the installer to initialize Anaconda3 by running conda
  • 数据结构1.1.1单链表的实现

    1 初始化链表节点内容 typedef struct char isbn 20 char name 10 double price Book typedef struct list Book date struct list next Li
  • GIT——! [rejected] master -> master (non-fast-forward)

    问题 rejected master gt master non fast forward error failed to push some refs to ssh 192 168 137 64 29418 51Selling git h
  • Maven的安装与使用

    一 简介 1 什么是Maven Maven翻译为 专家 内行 的意思 是著名Apache公司下基于Java开发的开源项目 Maven项目对象模型 POM 是一个项目管理工具软件 可以通过简短的中央信息描述来管理项目的搭建 报告和文档等步骤
  • JS+AES解密(CBC模式、输出HEX)

    if tokenMsgs const response await getMqttMsgService let mqttMsg response data msg state mqttconfigs mqttMsg const aesKey