Python AES 加密教程:使用 pycryptodome 库实现加密
Python\u4e2d\u53ef\u4ee5\u4f7f\u7528pycryptodome\u5e93\u6765\u5b9e\u73b0AES\u52a0\u5bc6\u7b97\u6cd5\u3002\n\n\u9996\u5148\uff0c\u9700\u8981\u5b89\u88c5pycryptodome\u5e93\uff0c\u53ef\u4ee5\u4f7f\u7528\u4ee5\u4e0b\u547d\u4ee4\u8fdb\u884c\u5b89\u88c5\uff1a\npip install pycryptodome\n\n\u7136\u540e\uff0c\u53ef\u4ee5\u4f7f\u7528\u4ee5\u4e0b\u4ee3\u7801\u8fdb\u884cAES\u52a0\u5bc6\uff1a\npython\nfrom Crypto.Cipher import AES\nfrom Crypto.Random import get_random_bytes\n\n# \u751f\u6210\u968f\u673a\u768416\u5b57\u8282\u5bc6\u94a5\nkey = get_random_bytes(16)\n\n# \u521b\u5efaAES\u52a0\u5bc6\u5668\ncipher = AES.new(key, AES.MODE_ECB)\n\n# \u8981\u52a0\u5bc6\u7684\u660e\u6587\nplaintext = b'This is a test message.'\n\n# \u586b\u5145\u660e\u6587\u957f\u5ea6\u5230AES\u5757\u5927\u5c0f\u7684\u500d\u6570\npadding_length = AES.block_size - (len(plaintext) % AES.block_size)\npadded_plaintext = plaintext + bytes([padding_length]) * padding_length\n\n# \u52a0\u5bc6\u660e\u6587\nciphertext = cipher.encrypt(padded_plaintext)\n\n# \u8f93\u51fa\u5bc6\u6587\nprint(ciphertext)\n\n\n\u6ce8\u610f\uff0c\u4e0a\u8ff0\u4ee3\u7801\u4f7f\u7528\u4e86ECB\u6a21\u5f0f\u8fdb\u884c\u52a0\u5bc6\uff0cECB\u6a21\u5f0f\u662f\u6700\u7b80\u5355\u7684AES\u52a0\u5bc6\u6a21\u5f0f\uff0c\u4f46\u5b58\u5728\u4e00\u4e9b\u5b89\u5168\u95ee\u9898\u3002\u5728\u5b9e\u9645\u5e94\u7528\u4e2d\uff0c\u53ef\u4ee5\u8003\u8651\u4f7f\u7528\u66f4\u5b89\u5168\u7684\u52a0\u5bc6\u6a21\u5f0f\uff0c\u5982CBC\u6a21\u5f0f\u3002\u4f7f\u7528\u5176\u4ed6\u52a0\u5bc6\u6a21\u5f0f\u65f6\uff0c\u9700\u8981\u63d0\u4f9b\u4e00\u4e2a16\u5b57\u8282\u7684\u521d\u59cb\u5411\u91cf\uff08IV\uff09\u3002\n\n\u52a0\u4e0a\uff0c\u8fd8\u53ef\u4ee5\u4f7f\u7528pycryptodomex\u5e93\u6765\u5b9e\u73b0AES\u52a0\u5bc6\u7b97\u6cd5\uff0c\u8be5\u5e93\u662fpycryptodome\u7684\u7ee7\u627f\u8005\uff0c\u63d0\u4f9b\u4e86\u66f4\u597d\u7684\u5b89\u5168\u6027\u548c\u66f4\u5168\u9762\u7684\u529f\u80fd\u3002\u5b89\u88c5\u548c\u4f7f\u7528\u65b9\u5f0f\u4e0e\u4e0a\u8ff0\u7c7b\u4f3c\u3002
原文地址: https://www.cveoy.top/t/topic/pVlZ 著作权归作者所有。请勿转载和采集!