zoukankan      html  css  js  c++  java
  • 下载Crypto,CyCrypto,PyCryptodome 报错问题

    python下载Crypto,CyCrypto,PyCryptodome,如有site-packages中存在crypto、pycrypto,在pip之前,需要pip3 uninstall crypto、pip3 uninstall pycrypto,否则无法安装成功。这里顺带说一下pycrypto和Crypto,这两个库已经有很久没有人维护了,最好下载PyCryptodome,用法都是一样的。

    看到网上很多解决下载这些模块报错问题的,有说去site-packages中将crypto文件改成Crypto,但是我下载好的名字就是Crypto,所以这个方法对我没用。

    错误下载方法如下:

    pip install Crypto

    pip install CyCrypto

    pip install PyCryptodome

    或者取PyCharm里面的Project Interpreter里面下载都不行。

    或者去https://pypi.org/simple/pycryptodome/里面下载,解压后使用cmd命令框安装python setup.py install 也不行。

    最后发现一篇博客,安装方法如下:

    pip3 install pycryptodome 
    快速方式:pip3 install -i https://pypi.douban.com/simple pycryptodome 
    PyCrypto 已死,请替换为 PyCryptodome 
    pip3 install 模块 –upgrade –target=”指定的目录”
    --------------------- 
    作者:Quincy379 
    来源:CSDN 
    原文:https://blog.csdn.net/qq_33733970/article/details/79263359 
    版权声明:本文为博主原创文章,转载请附上博文链接!

     只需在cmd命令框里或者PyCharm的Terminal里面使用pip3 install -i https://pypi.douban.com/simple pycryptodome 直接安装,便可正常使用该模块。

    附带加解密代码块:

    # coding:utf-8
    # 使用DES进行加密:
    
    import Crypto.Cipher.DES3
    import base64
    
    
    
    # 限定密钥长度
    def auto_fill(x):
        if len(x) > 24:
            return "密钥长度不能大于等于24位!"
        else:
            while len(x) < 16:
                x += " "
            return x.encode()
    
    
    # 密钥路径
    # 普通密钥
    # key = open('C:\py\test1\key2.txt').read()
    # 使用MD5进行加密后的密钥路径
    key = open('D:key1.txt').read()[8:-8]
    
    # 使用DES3加密
    content = "123456789.a"
    x = Crypto.Cipher.DES3.new(auto_fill(key), Crypto.Cipher.DES3.MODE_ECB)
    a = base64.encodebytes(x.encrypt(auto_fill(content)))
    print("加密后:", a)
    # 使用DES3解密
    b = x.decrypt(base64.decodebytes(a))
    print("解密后:", b.strip())
    57ed3398153c96260bb88e34ae12c4d6
    key1.txt
    加密后: b'7gVSFHcMUPVjoS0xRHuBkw==
    '
    解密后: b'123456789.a'
    执行结果

    环境:python3.6  Windows10

    结束!

  • 相关阅读:
    2018-2019-2 实验三 敏捷开发与XP实践
    计算机网络课外实验一级 20175319江野
    2018-2019-2 《Java程序设计》第9周学习总结
    MyCP(课下作业,必做)
    [NOIP2012] 疫情控制
    [SPOJ2021] Moving Pebbles
    谁能赢呢?
    [HEOI2014] 人人尽说江南好
    [笔记] 巴什博弈
    [SCOI2008] 着色方案
  • 原文地址:https://www.cnblogs.com/aaronthon/p/10402554.html
Copyright © 2011-2022 走看看