python命令行交互能进行文件加密吗
导读:是的,Python 命令行交互可以进行文件加密。你可以使用 Python 的内置模块 cryptography 来实现文件加密和解密。以下是一个简单的示例,展示了如何使用 cryptography 模块进行 AES 加密和解密: 首先,确保...
是的,Python 命令行交互可以进行文件加密。你可以使用 Python 的内置模块 cryptography
来实现文件加密和解密。以下是一个简单的示例,展示了如何使用 cryptography
模块进行 AES 加密和解密:
首先,确保你已经安装了 cryptography
模块。如果没有安装,可以使用以下命令安装:
pip install cryptography
然后,创建一个名为 encrypt.py
的脚本,并添加以下代码:
from cryptography.fernet import Fernet
import sys
def generate_key():
return Fernet.generate_key()
def encrypt_file(key, file_name):
with open(file_name, 'rb') as f:
data = f.read()
fernet = Fernet(key)
encrypted_data = fernet.encrypt(data)
with open(file_name + '.enc', 'wb') as f:
f.write(encrypted_data)
def decrypt_file(key, file_name):
with open(file_name, 'rb') as f:
encrypted_data = f.read()
fernet = Fernet(key)
decrypted_data = fernet.decrypt(encrypted_data)
with open(file_name[:-4], 'wb') as f:
f.write(decrypted_data)
if __name__ == '__main__':
if len(sys.argv) != 4:
print("Usage: python encrypt.py <
encrypt|decrypt>
<
key>
<
file>
")
sys.exit(1)
action, key, file_name = sys.argv[1], sys.argv[2], sys.argv[3]
if action == 'encrypt':
encrypt_file(key, file_name)
elif action == 'decrypt':
decrypt_file(key, file_name)
else:
print("Invalid action. Use 'encrypt' or 'decrypt'.")
sys.exit(1)
现在,你可以在命令行中使用以下命令进行加密和解密操作:
python encrypt.py encrypt <
key>
<
file>
python encrypt.py decrypt <
key>
<
file>
其中,<
key>
是一个用于加密和解密的密钥,<
file>
是要加密或解密的文件名。请注意,密钥应该保密,不要将其泄露给他人。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: python命令行交互能进行文件加密吗
本文地址: https://pptw.com/jishu/712077.html