python的Crypto模块实现AES加密实例代码


Posted in Python onJanuary 22, 2018

本文主要探索的是python的Crypto模块实现AES加密,分享了具体实现代码,下面看看具体内容。

学了使用Crypto模块的AES来加密文件,现在记录下来便于后边儿查看。

在刚开始知道这个模块的时候,连基本的Crypto模块的安装都花了很多很多时间来搞,也不知道什么情况反正是折腾很久了才安装起的,记得是包安装起来了,但使用的时候始终提示找不到Crypto.Cipher模块。然后怎么解决的呢?

一、把我的python换成了64位的,本来电脑就是64位的也不知道之前是啥情况安装成32位的了。(O(∩_∩)O哈哈~)
二、安装了VCForPython27.msi
三、在cmd中执行:

pip install pycrypto -i http://mirrors.aliyun.com/pypi/simple/

经过上边儿的几个步骤,我是能够成功执行

from Crypto.Cipher import AES

现在上一个实例代码:

# !/usr/bin/env python
# coding: utf-8
'''

'''

from Crypto.Cipher import AES
from binascii import b2a_hex, a2b_hex

class MyCrypt():
  def __init__(self, key):
    self.key = key
    self.mode = AES.MODE_CBC

  def myencrypt(self, text):
    length = 16
    count = len(text)
    print count
    if count < length:
      add = length - count
      text= text + ('\0' * add)

    elif count > length:
      add = (length -(count % length))
      text= text + ('\0' * add)

    # print len(text)
    cryptor = AES.new(self.key, self.mode, b'0000000000000000')
    self.ciphertext = cryptor.encrypt(text)
    return b2a_hex(self.ciphertext)

  def mydecrypt(self, text):
    cryptor = AES.new(self.key, self.mode, b'0000000000000000')
    plain_text = cryptor.decrypt(a2b_hex(text))
    return plain_text.rstrip('\0')

if __name__ == '__main__':
  mycrypt = MyCrypt('abcdefghjklmnopq')
  e = mycrypt.myencrypt('hello,world!')
  d = mycrypt.mydecrypt(e)
  print e
  print d

在cmd中执行结果:

python的Crypto模块实现AES加密实例代码

总结

以上就是本文关于python的Crypto模块实现AES加密实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
python中List的sort方法指南
Sep 01 Python
Python中实现三目运算的方法
Jun 21 Python
python如何获取服务器硬件信息
May 11 Python
Python+selenium实现截图图片并保存截取的图片
Jan 05 Python
解决python中os.listdir()函数读取文件夹下文件的乱序和排序问题
Oct 17 Python
浅谈PySpark SQL 相关知识介绍
Jun 14 Python
详解python列表(list)的使用技巧及高级操作
Aug 15 Python
python自动保存百度盘资源到百度盘中的实例代码
Aug 26 Python
关于Python字符串显示u...的解决方式
Mar 06 Python
浅谈pytorch中的BN层的注意事项
Jun 23 Python
python 制作本地应用搜索工具
Feb 27 Python
Pandas加速代码之避免使用for循环
May 30 Python
python实现求最长回文子串长度
Jan 22 #Python
Python获取本机所有网卡ip,掩码和广播地址实例代码
Jan 22 #Python
Linux CentOS7下安装python3 的方法
Jan 21 #Python
简述Python2与Python3的不同点
Jan 21 #Python
手把手教你用python抢票回家过年(代码简单)
Jan 21 #Python
分析Python中解析构建数据知识
Jan 20 #Python
学习Python selenium自动化网页抓取器
Jan 20 #Python
You might like
php生成缩略图的类代码
2008/10/02 PHP
ThinkPHP模板之变量输出、自定义函数与判断语句用法
2014/11/01 PHP
实例讲解php实现多线程
2019/01/27 PHP
php生成微信红包数组的方法
2019/09/05 PHP
JS下高效拼装字符串的几种方法比较与测试代码
2010/04/15 Javascript
IE下写xml文件的两种方式(fso/saveAs)
2013/08/05 Javascript
下拉框select的绑定示例
2014/09/04 Javascript
使用 TypeScript 重新编写的 JavaScript 坦克大战游戏代码
2015/04/07 Javascript
jQuery切换所有复选框选中状态的方法
2015/07/02 Javascript
js弹出框、对话框、提示框、弹窗实现方法总结(推荐)
2016/05/31 Javascript
JS实现屏蔽网页右键复制及ctrl+c复制的方法【2种方法】
2016/09/04 Javascript
清除js缓存的多种方法总结
2016/12/09 Javascript
微信小程序之MaterialDesign--input组件详解
2017/02/15 Javascript
集合Bootstrap自定义confirm提示效果
2017/09/19 Javascript
vue中添加mp3音频文件的方法
2018/03/02 Javascript
深入理解Angularjs 脏值检测
2018/10/12 Javascript
微信小程序自定义轮播图
2018/11/04 Javascript
qrcode生成二维码微信长按无法识别问题的解决
2019/04/04 Javascript
ES6顶层对象、global对象实例分析
2019/06/14 Javascript
详解JavaScript 浮点数运算的精度问题
2019/07/23 Javascript
JavaScript Dom 绑定事件操作实例详解
2019/10/02 Javascript
javascript设计模式 ? 代理模式原理与用法实例分析
2020/04/16 Javascript
微信小程序实现日历签到
2020/09/21 Javascript
vue 二维码长按保存和复制内容操作
2020/09/22 Javascript
Vue 简单实现前端权限控制的示例
2020/12/25 Vue.js
Python使用文件锁实现进程间同步功能【基于fcntl模块】
2017/10/16 Python
将python文件打包成EXE应用程序的方法
2019/05/22 Python
python实现将一维列表转换为多维列表(numpy+reshape)
2019/11/29 Python
Python猴子补丁知识点总结
2020/01/05 Python
HTML5上传文件显示进度的实现代码
2012/08/30 HTML / CSS
HTML5中5个简单实用的API
2014/04/28 HTML / CSS
给酒店员工的表扬信
2014/01/11 职场文书
财务会计大学生自我评价
2014/04/09 职场文书
个人党性分析材料
2014/12/19 职场文书
前台接待岗位职责范本
2015/04/03 职场文书
Golang 结构体数据集合
2022/04/22 Golang