/ / Декриптиране на шифрованите пароли за PBE с Postgres SQL - java, postgresql, cryptography

Дешифриране на PBE кодирани пароли с Postgres SQL - java, postgresql, криптография, javax.crypto

Имам приложение, което използва Java javax.crypto пакет за криптиране на низове и съхраняване в базата данни postgresql. Трябва да декриптираме тези низове от postgres SQL. Знам за pgcrypto на postgresSQL пакета, но не знам кои от функциите на pgcrypto трябва да използвам за декриптиране на низовете. Java кодът използва алгоритъм Crypto "PBEWithMD5AndDES" и не мога да намеря съответния алгоритъм pgcrypto пакет.

Например, ако частният ключ е "a_private_key", кодът на приложението използва следните функции за генериране на секретен ключ и за шифроване на низ.

SecretKey secretKey = SecretKeyFactory.getInstance("PBEWithMD5AndDES").generateSecret(new PBEKeySpec("a_private_key".toCharArray()));
Cipher cipher = Cipher.getInstance("PBEWithMD5AndDES")
cipher.init(Cipher.ENCRYPT_MODE, secretKey,
new PBEParameterSpec(
new byte[] { (byte) 0x30, (byte) 0x31, (byte) 0x32, (byte) 0x33,
(byte) 0x34, (byte) 0x35, (byte) 0x36, (byte) 0x37, },
15);
byte[] crypted = cipher.doFinal("StringToEncrypt".getBytes(UTF8));

Отговори:

0 за отговор № 1

Затваряне на този въпрос сега като коментари отntoskml и Eilke са верни; PBE е криптография само на Java и следователно не можех да го декриптирам от Postgresql. Така че накрая трябваше да измисля Java / JDBC решение на проблема.