Java-Äquivalent der C ++ - Verschlüsselung [duplizieren]
Diese Frage hat hier bereits eine Antwort:
Wie kann ich eine mit dem Befehl openssl verschlüsselte Java-Datei mit AES entschlüsseln? 3 AntwortenIch habe diesen folgenden Ausschnitt aus C ++ - Code, der für die Verschlüsselung verwendet wird:
EVP_CIPHER_CTX ctx;
const EVP_CIPHER * cipher = EVP_des_ede3_cbc();
unsigned char iv[EVP_MAX_IV_LENGTH];
unsigned char key[EVP_MAX_KEY_LENGTH];
String seed;
_config->get_value("crypto_seed", &seed); // uses the seed value from pimp config.
if (seed.is_empty())
{
return false;
}
EVP_BytesToKey(cipher, EVP_sha1(),
(unsigned char *) 0, // no salt
reinterpret_cast<unsigned char *>(const_cast<char *>(seed.chars())), seed.length(),
1, // hash passphrase just once.
key, iv);
EVP_CIPHER_CTX_init(&ctx);
EVP_CipherInit_ex(&ctx, cipher, (ENGINE *) 0, key,
iv,
1); // encrypt
Was ist das Äquivalent der C ++ - Verschlüsselung in Java?
Ich sehe da istdes
Algorithmus, dann sehe ichsha1
.
Dies hängt mit der openssl-Verschlüsselung zusammen. Aber nicht sicher, was das Äquivalent ist. Im Wesentlichen möchte ich die gleiche Ausgabe wie C ++ - Code generiert.
Ich frage die, was ist das Äquivalent vonEVP_CIPHER_CTX
oder wie heißt die verschlüsselung, die hier verwendet wird, damit ich sie von dort übernehmen kann.
BEARBEITEN: niemanden bitten, den Code in Java umzuwandeln, nur das entsprechende Paket oder die entsprechende Klasse fragen, die das gleiche tun würden.