场景:
工作中需要用到RSA加解密,看了很多Python的库,最终选定了M2Crypto。这里有个小插曲,开始选择的是Pycrypto这个库,这种安装比较简单,但是这个库不支持 - PKCS1/ECB/Padding的方式,导致和Java通信时出现了问题,再加上M2Crypto是系统调用,直接调用Openssl,效率上会比Pycrypto快不少。下面是尝试很多次之后的安装方式总结。
第一种方式:使用apt-get(以Python2版本进行测试的)
-
sudo apt-get install python-m2crypto
, M2Crypto将安装到系统Python库中。
第二种方式:从源码进行安装((兼容Python2,3))
sudo apt-get install build-essential python3-dev python-dev libssl-dev swig
pip install https://gitlab.com/m2crypto/m2crypto/repository/python3/archive.tar.gz
第三种方式:pip安装(不兼容Python3)
pip install M2Crypto
以上安装方式在下列系统中的Python版本测试通过:
Debian 7.11, 8.8, 9.2
Python 2.7.11, 2.7.13, 2.7.14, 3.5.4, 3.6.3
Ubuntu 16.04.3 LTS
Python 2.7.3, 2.7.9, 2.7.11, 2.7.13, 2.7.14, 3.5.4, 3.6.3
网友评论