710661809 发表于 2018-8-8 12:20:53

python错误小结

  问题一:/usr/local/python27/lib/python2.7/site-packages/Crypto/Util/number.py:57: PowmInsecureWarning: Not using mpz_powm_sec.You should rebuild using libgmp >= 5 to avoid timing attack vulnerability.
  解决方法:
  首先这不算是一个报错信息,而是一个安全提示信息,是说系统自带的gmp库版本太低,容易遭受***,需要升级:
  为此,我们必须从https://gmplib.org/download/gmp/gmp-6.1.2.tar.xz下载源代码
  一、根据软件包的说明:
yum -y groupinstall "Development tools"  
yum -y install gcc libgcc glibc libffi-devel libxml2-devel libxslt-devel openssl-devel zlib-devel bzip2-devel ncurses-devel
  二、接下来,我不得不安装GMP最新的(在写这篇文章的时候)版本:
wget https://gmplib.org/download/gmp/gmp-6.1.2.tar.xz  
xz -d gmp-6.1.2.tar.xz
  
tar -xvf gmp-6.1.2.tar
  
cd gmp-6.1.2
  
./configure
  
make
  
make check <=非常重要! !
  
make install
  三、接下来,我必须卸载PyCrypto的当前版本(在写这篇文章的时候)
  如果pip安装,则:
pip uninstall PyCrypto  如果手动编译,则:
cd pycrypto-2.6.1  
python setup.py install --record log
  
cat log | xargs rm -rf
  四、并直接从它们下载新版本:
wget https://ftp.dlitz.net/pub/dlitz/crypto/pycrypto/pycrypto-2.6.1.tar.gz  
tar -zxvf pycrypto-2.6.1.tar.gz
  
cd pycrypto-2.6.1
  
./configure
  
python setup.py install
  如果没有解决,在警告信息中已经告诉了警告的文件位置,只要注释掉相关信息即可:
  cp /usr/lib64/python2.6/site-packages/Crypto/Util/number.py{,.bak}
  sed -i "s/^if/#&/" /usr/lib64/python2.6/site-packages/Crypto/Util/number.py
  再次运行,就没有了警告显示。
页: [1]
查看完整版本: python错误小结