2
如何能夠解密在python中使用AES加密的密文。如何在C中使用openssl解密密文?
Encrypt.py
使用這個我使用AES和關聯,與IV 和寫做密文,在一個文件file.txt的。
from Crypto.Cipher import AES
import hashlib, os
Plain = 'This is a string' #String to Encrypt
key = 'mysecretpassword'
#key = hashlib.md5(key).digest() #Key
IV = 'InitializationVector'
IV = hashlib.md5(IV).digest() #Initialization Vector
print len(IV)
Obj1 = AES.new(key, AES.MODE_CBC, IV)
Cipher = Obj1.encrypt(Plain) #Cipher text
File = open('file.txt','w')
File.write(Cipher+IV) #Concatenated the string and IV and
#wrote that to a file file.txt
File.close()
Decrypt.c
使用這個,現在我從file.txt的密文和IV。現在我怎麼能 解密密碼使用openssl或任何其他庫?
#include <stdio.h>
#include <string.h>
int main()
{
char filename[] = "file.txt";
FILE *file = fopen (filename, "r");
char key[] = "mysecretpassword";
if (file != NULL) {
char line [1000];
char *p = line;
char *array = line;
while(fgets(line,sizeof line,file)!= NULL) {
fprintf(stdout,"%s\n",line);
char otherString[strlen(line)-15];
strncpy(otherString, p, strlen(line)-16);
otherString[strlen(otherString)-1] = '\0';
printf("%s\n", otherString);//Here I got the Encrypted string
array=array+(strlen(array)-16);
printf("%s\n",array);//Here I got the IV
//Here how to decrypt the Cipher text using "IV" and "key"
}
fclose(file);
}
else {
perror(filename);
}
return 0;
}
真的,我是一個新手。請原諒我的問題中的錯誤,請隨時來幫助我,這將是你最善良的。提前致謝。