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中处理字符串之islower()方法的使用简介
May 19 Python
Python list操作用法总结
Nov 10 Python
常见的python正则用法实例讲解
Jun 21 Python
Python实现购物系统(示例讲解)
Sep 13 Python
Python统计单词出现的次数
Apr 04 Python
超简单的Python HTTP服务
Jul 22 Python
如何利用python给图片添加半透明水印
Sep 06 Python
opencv python Canny边缘提取实现过程解析
Feb 03 Python
用Python绘制漫步图实例讲解
Feb 26 Python
django 连接数据库出现1045错误的解决方式
May 14 Python
基于keras中的回调函数用法说明
Jun 17 Python
聊一聊python常用的编程模块
May 14 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
深入理解require与require_once与include以及include_once的区别
2013/06/05 PHP
探讨fckeditor在Php中的配置详解
2013/06/08 PHP
yii2.0整合阿里云oss的示例代码
2017/09/19 PHP
Jquery 扩展方法
2010/05/06 Javascript
jQuery滚动加载图片效果的实现
2013/03/06 Javascript
jQuery对象数据缓存Cache原理及jQuery.data方法区别介绍
2013/04/07 Javascript
js调用AJAX时Get和post的乱码解决方法
2013/06/04 Javascript
javaScript NameSpace 简单说明介绍
2013/07/18 Javascript
jQuery设置div一直在页面顶部显示的方法
2013/10/24 Javascript
javascript 循环调用示例介绍
2013/11/20 Javascript
jQuery ajax serialize() 方法使用示例
2014/11/02 Javascript
JS实现横向拉伸动感伸缩菜单效果代码
2015/09/04 Javascript
Bootstrap输入框组件简单实现代码
2017/03/06 Javascript
Angular学习教程之RouterLink花式跳转
2018/05/03 Javascript
Vue2.0学习系列之项目上线的方法步骤(图文)
2018/09/25 Javascript
使用 webpack 插件自动生成 vue 路由文件的方法
2019/08/20 Javascript
详解为element-ui的Select和Cascader添加弹层底部操作按钮
2020/02/07 Javascript
如何搭建一个完整的Vue3.0+ts的项目步骤
2020/10/18 Javascript
Python生成器以及应用实例解析
2018/02/08 Python
Sanic框架异常处理与中间件操作实例分析
2018/07/16 Python
对PyQt5中树结构的实现方法详解
2019/06/17 Python
python实现数据分析与建模
2019/07/11 Python
Python使用指定端口进行http请求的例子
2019/07/25 Python
python分布式编程实现过程解析
2019/11/08 Python
Django中的AutoField字段使用
2020/05/18 Python
详解Python中openpyxl模块基本用法
2021/02/23 Python
Charles&Keith美国官方网站:新加坡快时尚鞋类和配饰零售商
2019/11/27 全球购物
党校自我鉴定范文
2013/10/02 职场文书
营销人才自我鉴定范文
2013/12/25 职场文书
优秀班组长事迹
2014/05/31 职场文书
幼儿园八一建军节活动方案
2014/08/27 职场文书
2015年党建工作目标责任书
2015/05/08 职场文书
最美劳动诗,致敬所有的劳动者!
2019/07/12 职场文书
中国现代文学之经典散文三篇
2019/09/18 职场文书
基于Nginx实现限制某IP短时间访问次数
2021/03/31 Servers
HTML基本元素标签介绍
2022/02/28 HTML / CSS