Java AES/CBC 복호화 후 초기 바이트가 잘못됨
제공된 Java 코드는 AES/CBC 암호화 및 복호화를 수행하려고 시도합니다. 그러나 해독된 문자열의 초기 바이트가 손상되었습니다. 이 문제를 해결하려면 문제의 잠재적 원인을 고려하는 것이 중요합니다.
문제의 핵심은 암호 해독 암호의 잘못된 초기화에서 발생합니다. 특히 코드는 암호 해독 암호에 대한 초기화 벡터(IV)를 설정하지 못합니다. IV는 블록 암호를 초기화하는 데 사용되는 중요한 매개변수이며, IV가 없으면 잘못된 암호 해독으로 이어질 수 있습니다.
이를 수정하려면 코드에서 암호 해독 암호를 초기화하기 전에 IV를 명시적으로 설정해야 합니다.
IvParameterSpec ivParameterSpec = new IvParameterSpec(aesKey.getEncoded()); decryptCipher.init(Cipher.DECRYPT_MODE, aesKey, ivParameterSpec);
IV 매개변수를 설정함으로써 코드는 복호화 프로세스가 올바르게 수행되도록 보장하여 초기 바이트 없이 원본 일반 텍스트를 정확하게 복구합니다. 부패.
위 내용은 Java AES/CBC 암호 해독 후 초기 암호 해독 바이트가 올바르지 않은 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!