PyCryptodome安装使用方法

PyCryptodome是PyCrypto的一个分支。基于PyCrypto2.6.1,多了以下特性:

  • Authenticated encryption modes (GCM, CCM, EAX, SIV)
  • Accelerated AES on Intel platforms via AES-NI
  • First class support for PyPy
  • SHA-3 hash algorithm
  • Salsa20 stream cipher
  • scrypt and HKDF
  • Deterministic DSA
  • Password-protected PKCS#8 key containers
  • Shamir’s Secret Sharing scheme
  • Random numbers get sourced directly from the OS (and not from a CSPRNG in userspace)
  • Simplified install process, including better support for Windows
  • Cleaner RSA and DSA key generation (largely based on FIPS 186-4)
  • Major clean ups and simplification of the code base

官方文档:Compatibility with PyCrypto

github链接:https://github.com/Legrandin/pycryptodome

0x01 安装

pip install PyCryptodome

0x02 使用

跟PyCrypto2.6用法类似,以下以AES为例:

from Crypto.Cipher import AES
key='1234567890abcdef'
obj=AES.new(key,AES.MODE_ECB)
cipher=obj.encrypt('message: pcat.cc')

-= 2021.5 Update =-

PyCryptodome的RSA模块跟PyCrypto的RSA模块不尽相同。