python aes加解密 ecb模式 加密 报错ValueError: Data must be aligned to block boundary in ECB mode

2023-05-16

from Crypto.Util.Padding import pad, unpad
from Crypto.Cipher import AES
BLOCK_SIZE = 32 # Bytes

key = 'abcdefghijklmnop'
cipher = AES.new(key.encode('utf8'), AES.MODE_ECB)
msg = cipher.encrypt(pad(b'hello', BLOCK_SIZE))
print(msg.hex())
decipher = AES.new(key.encode('utf8'), AES.MODE_ECB)
msg_dec = decipher.decrypt(msg)
print(unpad(msg_dec, BLOCK_SIZE))

需要用block_size 补充位数  

此处是模拟php openssl_encrypt($data, "AES-128-ECB", $key, OPENSSL_RAW_DATA)

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python aes加解密 ecb模式 加密 报错ValueError: Data must be aligned to block boundary in ECB mode 的相关文章

  • idea启动java-web系统失败:java.lang.OutOfMemoryError: Java heap space&java: Compilation failed

    前言 idea部署java web系统构建失败 xff1a 系统资源不足 xff1a java lang OutOfMemoryError Java heap space java Compilation failed internal j
  • js拷贝数组对象:浅拷贝&深拷贝

    前言 js拷贝数组对象 xff1a 浅拷贝 amp 深拷贝 xff0c 包括 xff1a Object assign concat slice JSON parse JSON stringify 场景 xff1a 弹窗选择组织结构 xff0
  • 通信网络-Socket、Java中的网络支持、多线程服务器

    前言 通信网络 Socket Java中的网络支持 多线程服务器 场景 xff1a 使用java网络创建一个聊天室 博客地址 xff1a 芒果橙的个人博客 文章目录 前言通信网络 SocketTCP IPTCP IP 模型端口 Java中的
  • CSDN兴趣标签功能测试验证:感兴趣标签新增、不感兴趣标签新增、兴趣标签还原

    前言 CSDN兴趣标签修改后 xff0c APP端的个性化推荐内容变化验证 包含场景 xff1a 感兴趣标签新增 不感兴趣标签新增 兴趣标签还原 此博客为响应CSDN 找bug号召 xff1a https bbs csdn net topi
  • 面向对象设计原则-单一职责、开闭原则、里氏替换、依赖倒置、迪米特(最少知道原则)、接口隔离

    前言 设计模式简述 六种面向对象设计原则说明 场景示例 xff1a 单一职责原则 开闭原则 里氏替换原则 依赖倒置原则 迪米特 xff08 最少知道原则 xff09 接口隔离原则 根据在线课程学习的记录 xff0c 有些例子有所调整 xff
  • 六、数据存储

    摘抄自书籍 第一行代码 第六章 数据存储和持久化技术 xff08 侵删 xff09 1 持久化技术 将内存中的瞬时数据保存在存储设备中 xff0c 使其不会丢失 持久化技术提供了一种机制可以让数据在瞬时状态和持久化状态之间切换 2 文件存储
  • Android

    1 核心原则 xff1a 从用户目标开始精确定义应用做什么 做一件事并把它做好 xff1a 应用聚焦的范围越窄 xff0c 越容易达到期望 xff08 罗列 排除 聚焦 xff09 2 视觉 xff1a 明确的按钮 xff0c 使用图形快速
  • Activity

    1 注册 在AndroidManifest中 lt application gt 添加标签 lt activity gt lt activity gt lt application gt 属性 android label 61 34 34
  • UI

    一 布局文件中控件 TextView xff1a focusableInTouchMode 61 34 true 34 滚动 EditText xff1a hint 输入提示的文本 xff1a inputType 输入文本类型 maxLin
  • AlertDialog 、Notification

    AlertDialog 对话框可根据具体的选用不同的方法 如单项对话框则有 builder setSingleChoiceItems 单项选择 builder setMultiChoiceItems 多项选择 Notification Al
  • SAP 一句话入门之SD

    SD是Sales and Distribution的简称 在SAP系统中 xff0c 销售与分销模块处在供应链下游 xff0c 关注从客户订单到向客户收款的全过程 SD模块中的Sales好理解 xff0c 而Distribution却容易被
  • Animator --属性动画

    属性动画Animator 传统动画 Animation 传统动画 xff1a eg 平移 TranslateAnimation animation 61 new TA 0 200 0 0 参数 xff1a 初始 最终 的 X Y坐标 ani
  • 异步消息处理机制--线程

    多线程编程 执行一条耗时操作 xff0c 需放在子线程里运行 1 线程的基本用法 新建类继承 或实现接口 xff0c 重写方法 xff08 可直接内部类 xff09 class MyThread extends Thread run 处理具
  • 自定义适配器--ListView数据源的绑定

    ListView 利用自定义的适配器 xff0c 使用缓存机制优化 首先 xff0c ListView完整写法的三个步骤 xff1a 1 初始化数据源 2 定义适配器 3 加载适配器 一 数据源 1 定义数组保存已经准备好的数据源 2 定义
  • ViewPager + Fragment 仿微信滑动切换页卡

    1 新建类 xff0c 继承Fragment 导入的是v4的包 xff08 向下兼容 xff09 xff0c 利用布局加载器将其与xml结合起来 public class FragmentAddress extends Fragment 6
  • Android Studio 一些实用的快捷键

    Alt 43 Enter 自动导入提示 Ctrl 43 点击关键字 查看源码 Ctrl 43 tab 切换代码窗口 Ctrl 43 P 显示方法参数 Ctrl 43 Alt 43 t 弹出包围结构 xff08 if xff09 Ctrl 4
  • View、自定义View

    view绘制 1 控件架构 ViewGroup作为 父控件 xff0c 可包含多个View控件 xff0c 形成控件树 上层控件负责下层子控件的测量与绘制 xff0c 并传递交互事件 2 View的测量 绘制前提 96 96 96 onMe
  • 标题栏与水平滑动界面:TabLayout、ViewPager、Fragment;;引导页:ViewPager+View

    一 1 布局中添加TabLayout 控件 xff0c 需要添加依赖 xff1b 使用相关的属性 xff0c 需要定义命名空间 compile 39 com android support design 25 0 1 39 在app下的bu
  • SharedPerference

    1 定义前的考虑 1 xff09 定义存取方式 get put 2 xff09 明确数据类型 Int String Boolean 3 定义删除功能 单个 全部 2 实现步骤 public class SharedUtil public s
  • 圆形头像CircleImageView

    头像图片来源 照相机 相册 xff1b 利用弹出的dialog进行选择 1 添加依赖包 xff0c 添加控件 xff0c 相关属性 在app下的 build gradle 中添加 xff1a compile 39 de hdodenhof

随机推荐

  • RxVolley进行网络请求(get方式),获取json数据

    RxVolley 是一个基于 Volley的网络请求库 项目地址 xff1a https github com kymjs RxVolley 1 添加依赖 xff1a compile 39 com kymjs rxvolley rxvoll
  • SAP 寻找增强点的方法

    SAP中寻找增强的实现方法 SAP 增强已经发展过几代了 xff0c 可参考 SAP 标准教材 BC425 和 BC427 简单的说SAP的用户出口总共有四 代 1 第一代 基于源代码的增强 SAP提供一个空代码的子过程 xff0c 在这个
  • Sublime_text2快捷键

    1 Ctrl 43 Enter 在下一行输入 xff08 添加新的下一行 xff09 2 Ctrl 43 Shift 在上一行输入 xff08 添加新的上一行 xff09 3 Ctrl 43 L 选择当前行 4 Ctrl 43 K 43 B
  • jQuery基础

    1 应用jQuery库 xff1a lt script src 61 34 路径 名称 js 34 gt lt script gt 导入 外链式css样式 xff1a lt link rel 61 34 stylesheet 34 href
  • javaScript基础

    一 浏览器对象 1 window对象 xff1a 指当前的浏览器窗口 方法 xff1a 2 定 时器 xff1a 可设定一个时间之后 xff0c 再来运行 var timer 61 setInterval function 做的事情 xff
  • JavaScript深入浅出(进阶)

    1 数据类型 js是弱类型 xff0c 定义变量时不需要指定具体的数据类型 xff0c 因此会出现一些奇妙的事情 xff1a var num 61 23 number类型 num 61 34 23 34 string类型 34 23 34
  • H5

    一 总体变化 1 H5文档结构 span style font family SimSun font size 18px lt DOCTYPE html gt lt html gt lt head gt lt title gt 这是标题 l
  • JavaScript进阶之--DOM事件、动画(运动框架)

    DOM事件 一 事件流 描述的是从页面中接收事件的顺序 当你点击一个容器里的子控件时 xff0c 默认同时也点击了这个父容器 事件冒泡 ie xff1a 事件最开始由最具体的元素接收 xff0c 然后逐级向上传播到最不具体的结点 子 父 祖
  • CSS3基础与进阶

    一 CSS3新增的选择器 1 属性选择器 1 xff09 att 61 39 val 39 属性att的值以 34 val 34 开头的元素 2 xff09 att 61 39 val 39 结尾 3 xff09 att 61 39 val
  • macbook pro 识别不到外接显示器

    背景 最近在公司和家都用到外接显示器 回到家后合上mac 外接也跟着没信号了 重启后直接不识别了 机型macbookpro15 2018 系统版本10 15 4 1 确保 线材 外接显示器都没有问题 找其他电脑测试 2 不勾选 再次登录时重
  • cisco anyConnect 不用每次输入密码的办法

    opt cisco anyconnect bin vpn s connect HOST ADDRESS lt lt 34 EOF 34 VPN USERNAME VPN PASSWORD y EOF 可保存为sh 直接运行
  • Python 3.7 有什么新变化 - 其他语言更改&新模块

    其他语言更改 await 表达式和包含 async for 子句的推导在格式化字符串文本中的表达式中是非法的 xff0c 因为 实现 在Python 3 7中 xff0c 这个限制被取消了 现在可以将超过 255 个参数传递给函数 xff0
  • Oracle Systimestamp 函数

    在Oracle PLSQL中 xff0c Systimestamp 函数返回本机数据库上当前系统日期和时间 包括微秒和时区 Systimestamp 函数的语法是 xff1a systimestamp 应用于 xff1a Oracle 9i
  • 如何在Centos下卸载OpenJDK,安装Oracle JDK

    写在前面 一般Linux系统都会自带JDK xff0c 只不过是Open JDk xff0c 而我们开发一般使用的是Oracle JDK xff0c 所以我们需要写在Open JDK xff0c 进而安装Oracle JDK 一 卸载Ope
  • Python 3.6 有什么新变化 - 新功能&新模块

    PEP 498 xff1a 格式化字符串文本 PEP 498 引入了一种新的字符串文本 xff1a f 字符串或格式化字符串文本 格式化字符串文本以 和 类似 str format xff08 xff09 接受的格式字符串 它们包含替换 由
  • 字典(dict )动态构造索引,交换位置或者取值;使用eval

    if name 61 61 34 main 34 t struct 61 34 pid 34 34 34 34 type 34 34 group 34 34 uuid 34 34 KWQwhvwkO03 34 34 subset 34 34
  • openssl 从cer文件中提取公钥

    openssl x509 in XX cer pubkey noout gt XX pem
  • numpy resize

    import numpy as np a 61 np array 1 2 3 4 5 6 print a print a shape 1 2 3 4 5 6 2 3 b 61 np resize a 3 3 1 2 3 4 5 6 1 2
  • python 公钥解密

    import base64 from cryptography hazmat backends openssl backend import backend from cryptography hazmat primitives seria
  • python aes加解密 ecb模式 加密 报错ValueError: Data must be aligned to block boundary in ECB mode

    from Crypto Util Padding import pad unpad from Crypto Cipher import AES BLOCK SIZE 61 32 Bytes key 61 39 abcdefghijklmno