Мне нужно расшифровать файл .3w, добавить одну или две строки посередине, а затем зашифровать его обратно в .3w, чтобы его можно было распознать.Когда я не изменяю файл и просто дешифрую, а затем шифрую, чтобы увидеть, работает ли он, input.gcode и output.gcode различаются
Я попытался использовать метод .encrypt, как показано ниже, который яХотя это будет работать, но не
from Crypto.Cipher.AES import AESCipher, MODE_ECB, MODE_CBC
#decrypting it
file = open("input.3w", 'rb')
string = file.read()
enc_gcode = string[0x2000:]
#Edit: I added the next line
g = string[0x0: 0x2000]
aes = AESCipher("@xyzprinting.com@xyzprinting.com", mode=MODE_ECB, IV=chr(0)*16)
gcode = aes.decrypt(enc_gcode)
f=open("text.gcode", "wb")
f.write(gcode)
#from Crypto.Cipher.AES import AESCipher, MODE_ECB, MODE_CBC
#Encrypting it
file = open("text.gcode", 'rb')
string = file.read()
enc_gcode = string[0x2000:]
aes = AESCipher("@xyzprinting.com@xyzprinting.com", mode=MODE_ECB, IV=chr(0)*16)
gcode = aes.encrypt(enc_gcode)
f=open("output.3w", "wb")
#EDIT: I added the next line
gcode = g + gcode
f.write(gcode)
Я бы ожидал, что выходные данные и входные данные точно такие же, но этого не происходит.Я новичок в Python (и шифрование), поэтому я не могу найти проблему.
Спасибо-Джаред