|
|
|
@ -15,6 +15,7 @@ def sendLetter(letter: Letter, target="192.168.195.162:8426"):
|
|
|
|
|
# 向目标ip和端口发送指定的信件
|
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# 选择对称加密的方法和模式(aes/sm2)
|
|
|
|
|
def selectSymEncryptionChoice():
|
|
|
|
|
encryWay = ""
|
|
|
|
@ -47,18 +48,27 @@ def selectSymEncryptionChoice():
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# 使用对称加密,返回加密后的数据和随机生成的密钥
|
|
|
|
|
def SymEncryption():
|
|
|
|
|
|
|
|
|
|
def SymEncryption(encryData, key: bytes = None):
|
|
|
|
|
# 获得加密的方法和加密的模式
|
|
|
|
|
way, mode = selectSymEncryptionChoice()
|
|
|
|
|
|
|
|
|
|
if way == "aes":
|
|
|
|
|
aesUtils = AESUtils()
|
|
|
|
|
encryptedData, key = aesUtils.encrypt("test", mode=mode) # 这里data要改为文件内容
|
|
|
|
|
aesUtils = AESUtils(key)
|
|
|
|
|
# tureKey 为 真实返回的Key,如果没有设置初始值,那么key是随机生成
|
|
|
|
|
encryptedData, tureKey = aesUtils.encrypt(encryData, mode=mode) # 这里encryData要改为文件内容
|
|
|
|
|
return encryptedData
|
|
|
|
|
|
|
|
|
|
if way == "sm2":
|
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def getKey():
|
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if __name__ == "__main__":
|
|
|
|
|
# 示例数据和密钥
|
|
|
|
|
data = "Hello, AES!"
|
|
|
|
|
key = "1234567890abcdef"
|
|
|
|
|
|
|
|
|
|
SymEncryption(data)
|
|
|
|
|