diff --git a/cilent b/cilent deleted file mode 100644 index 7e74a2b..0000000 --- a/cilent +++ /dev/null @@ -1,61 +0,0 @@ -import base64 -import hashlib - -import rsa -from Crypto.Cipher import AES, DES3 -from Crypto.Hash import SHA256 -from Crypto.PublicKey import RSA -from Crypto.Signature import PKCS1_v1_5 -from pyDes import ECB, PAD_PKCS5, des - - -def createcip(path, op): - # 传输的文件 - filename = path - # 加密对称密钥 - with open("../server/Bpubkey.pem", mode="rb") as f: - pub = f.read() - pubkey = rsa.PublicKey.load_pkcs1(pub) - message = "12345678" if op == "DES" else "1234567812345678" - info = rsa.encrypt(message.encode("utf-8"), pubkey) - with open("encryptedkeyfile.bin", "wb") as key_file: # 生成加密文本encryptedkeyfile - key_file.write(info) - - # 加密文件 DES算法加密 - with open(filename, "r", encoding="utf-8") as f: - plaintext = f.read() - - x = plaintext - while len(x) % 16 != 0: # 如果text不足16位的倍数就用空格补足为16位 - x += "\0" - x = x - if op == "DES": - SECRET_KEY = message - print(len(message)) - iv = SECRET_KEY - des_obj = des(SECRET_KEY, ECB, iv, padmode=PAD_PKCS5) - secret = des_obj.encrypt(x) - elif op == "AES_ECB": - SECRET_KEY = message.encode() - aes_obj = AES.new(SECRET_KEY, AES.MODE_ECB) - secret = aes_obj.encrypt(x.encode()) - elif op == "AES_CBC": - iv = message.encode() - SECRET_KEY = message.encode() - aes = AES.new(SECRET_KEY, AES.MODE_CBC) - secret = aes.encrypt(x.encode()) - with open("encryptedfile.txt", "wb") as cip: # encryptedfile - cip.write(secret) - # 计算摘要值以及签名 - out1 = hashlib.sha256(plaintext.encode('"utf-8"')).hexdigest() - out1 = out1.encode("utf-8") - privkey_key_file = open("./Aprivkey.pem", "rb").read().decode("utf-8") - # 导入公钥,返回一个RSA秘钥对象 - private_key = RSA.importKey(privkey_key_file) - h = SHA256.new(out1) - signer = PKCS1_v1_5.new(private_key) - signature = signer.sign(h) - # 对需要加密的消息进行PKCS#1 v1.5加密,再使用Base64对类似字节的对象进行编码。 - sig = base64.b64encode(signature) - with open("sigfile.bin", "wb") as f: # 生成签名文件sigfile - f.write(sig)