python Crypto模块的安装与使用方法


Posted in Python onDecember 21, 2017

前言

最开始想尝试在windows下面安装python3.6,虽然python安装成功,但在安装Cryto模块用pip3 install pycrypto老是会报错。老夫搞了半天,最终决定在linux下面去做。

以下流程限于linux系统:

Crypto不是自带的模块,需要下载。http://www.voidspace.org.uk/python/modules.shtml#pycrypto

我下载了之后,发现下载的是crypto而不是Crypto(就是差个首字母大小写)

python Crypto模块的安装与使用方法

而crypto.Cipher而又不能运行,报错,最后在:https://stackoverflow.com/questions/31485110/no-module-named-crypto-cipher/31485157 找到解答,需要在python目录里面把Python27\Lib\site-packages下的crypto文件改名,没错,就是直接改成Crypto。结果就能用了...

(因为我上面下载的是免安装版,所以没安装VS2008。我用过pip,下载不了Crypto)windows下安装这些模块真是招罪,要是我的电脑再好一点就弄双系统了..扯远了..

0x00 安装python

apt-get install python3.6

0x01 安装pip3

1.首先安装setuptool

wget --no-check-certificate https://pypi.python.org/packages/source/s/setuptools/setuptools-19.6.tar.gz#md5=c607dd118eae682c44ed146367a17e26 
 
tar -zxvf setuptools-19.6.tar.gz 
 
cd setuptools-19.6.tar.gz 
 
python3 setup.py build 

python3 setup.py install

2.然后直接安装pip就搞定了

wget --no-check-certificate https://pypi.python.org/packages/source/p/pip/pip-8.0.2.tar.gz#md5=3a73c4188f8dbad6a1e6f6d44d117eeb 
 
tar -zxvf pip-8.0.2.tar.gz 
 
cd pip-8.0.2 
 
python3 setup.py build 
 
python3 setup.py install

0x02 安装crypto

apt-get install python3-dev 
pip3 install Crypto 
pip3 install --upgrade pycrypt

下面主要介绍一下Crypto.Cipher的AES算法。

代码如下:

from Crypto.Cipher import AES 
import base64 
secret = "12345678912345678912345678912345"   #由用户输入的16位或24位或32位长的初始密码字符串 
cipher = AES.new(secret)            #通过AES处理初始密码字符串,并返回cipher对象 
s = cipher.encrypt("1234567891234567")     #输入需要加密的字符串,注意字符串长度要是16的倍数。16,32,48.. 
print s                     #输出加密后的字符串 
print base64.b64encode(s)            #输出加密后的字符串的base64编码。 
print cipher.decrypt(s)             #解密

这是为了一开始接触的小白(我)理解的,一般通用一点的处理方法可以参考https://3water.com/article/114364.htm

至于为什么要把已经加密后的字符串再用base64编码,我觉得是对字符串的处理是基于二进制的,而base64的原理是在每6个二进制数的前面加两个零,这样的话,ascii对处理好的字符串编码就全部可见了(起码不是那些问号字符..),用charset模块去测试一下,发现也是像我所说。

DES算法使用与AES的使用一样,只不过要注意初始密码字符串一定要是8位,而其他地方把AES换成DES就行(要是不回想配置环境的事情,Python还是很方便的..)

这个Crypto模块还有哈希算法等其他一下加密算法,如果有大神或者小伙伴把这个模块挖掘后,欢迎在下面留言哦,顺便也教我使用咯,谢谢大家啦

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 专题九 Mysql数据库编程基础知识
Mar 16 Python
python编写朴素贝叶斯用于文本分类
Dec 21 Python
使用pandas中的DataFrame数据绘制柱状图的方法
Apr 10 Python
Python os.rename() 重命名目录和文件的示例
Oct 25 Python
Python3 使用cookiejar管理cookie的方法
Dec 28 Python
Python微信操控itchat的方法
May 31 Python
python实现差分隐私Laplace机制详解
Nov 25 Python
Django实现随机图形验证码的示例
Oct 15 Python
Django websocket原理及功能实现代码
Nov 14 Python
解决python的空格和tab混淆而报错的问题
Feb 26 Python
Python爬虫实战之爬取京东商品数据并实实现数据可视化
Jun 07 Python
python小型的音频操作库mp3Play
Apr 24 Python
python编写Logistic逻辑回归
Dec 30 #Python
python+selenium识别验证码并登录的示例代码
Dec 21 #Python
python实现随机森林random forest的原理及方法
Dec 21 #Python
python编写分类决策树的代码
Dec 21 #Python
Python基于PyGraphics包实现图片截取功能的方法
Dec 21 #Python
用Python写王者荣耀刷金币脚本
Dec 21 #Python
python使用Apriori算法进行关联性解析
Dec 21 #Python
You might like
PHP封装的数据库保存session功能类
2016/07/11 PHP
自制PHP框架之模型与数据库
2017/05/07 PHP
Chosen 基于jquery的选择框插件使用方法
2012/05/30 Javascript
自动设置iframe大小的jQuery代码
2013/09/11 Javascript
jQuery获取Radio,CheckBox选择的Value值(示例代码)
2013/12/12 Javascript
jquery对单选框,多选框,文本框等常见操作小结
2014/01/08 Javascript
jquery操作cookie插件分享
2014/01/14 Javascript
javascript+css3 实现动态按钮菜单特效
2016/02/06 Javascript
聊一聊JS中this的指向问题
2016/06/17 Javascript
详解react-webpack2-热模块替换[HMR]
2017/08/03 Javascript
phantomjs导出html到pdf的方法总结
2017/10/19 Javascript
微信小程序实现弹出菜单
2018/07/19 Javascript
微信小程序自定义导航教程(兼容各种手机)
2018/12/12 Javascript
JavaScript实现获取两个排序数组的中位数算法示例
2019/02/26 Javascript
深入了解响应式React Native Echarts组件
2019/05/29 Javascript
eslint+prettier统一代码风格的实现方法
2020/07/22 Javascript
[01:24]DOTA2上海特锦赛OG战队抵达 专车接机入驻总统套房
2016/02/23 DOTA
python结合opencv实现人脸检测与跟踪
2015/06/08 Python
Python for Informatics 第11章之正则表达式(四)
2016/04/21 Python
浅谈用Python实现一个大数据搜索引擎
2017/11/28 Python
python3实现字符串的全排列的方法(无重复字符)
2018/07/07 Python
selenium+python自动化78-autoit参数化与批量上传功能的实现
2021/03/04 Python
Agoda西班牙:全球特价酒店预订
2017/06/03 全球购物
Trench London官方网站:高级风衣和意大利皮夹克
2020/07/11 全球购物
车辆维修工自我评价怎么写
2013/09/20 职场文书
平面设计专业大学生职业规划书
2014/03/12 职场文书
安全在我心中演讲稿
2014/09/01 职场文书
迎七一演讲稿
2014/09/12 职场文书
政审证明材料
2015/06/19 职场文书
暑假生活随笔
2015/08/15 职场文书
先进个人主要事迹范文
2015/11/04 职场文书
忠诚教育学习心得体会
2016/01/23 职场文书
《我在为谁工作》:工作的质量往往决定生活的质量
2019/12/27 职场文书
HashMap实现保存两个key相同的数据
2021/06/30 Java/Android
「玫瑰之王的葬礼」舞台剧主视觉图公开
2022/03/21 日漫
SQLServer RANK() 排名函数的使用
2022/03/23 SQL Server