2012-12-16 2 views
1

해독을 사용하여 무결성 검사를 사용하려면 BouncyCastle을 AES-GCM과 함께 사용하고 싶습니다. 무결성 검사가 실패했을 때 발생하는 예외에 대해 궁금합니다. InvalidCipherTextException이 맞나요?BouncyCastle 및 AES-GCM

AES-GCM 암호화 된 BLOB의 암호 해독 컨텍스트에서 처리해야하는 다른 예외가 있습니까? 나는 밖으로 나와 몇 예외는 경량 API를 들어 http://www.cs.berkeley.edu/~jonah/bc/org/bouncycastle/crypto/package-tree.html

+1

답변을 모르는 것 같지만 수표가 실패 할 경우 어떤 예외가 생겼는지 확인할 수는 있습니다. –

+0

경량 API 또는 JCE 공급자를 사용하려고합니까? 결과는 API에 따라 달라집니다. 공급자가 Java API와 호환되도록 BadPaddingException을 반환하지만 더 구체적인 * 원인 *이있을 것입니다. –

답변

1

에 있다는 것을 볼

은 결과 예외는 참으로 InvalidCipherTextException입니다. 이 답변은 공개적으로 사용 가능한 Bouncy Castle 소스 코드에서 추출되었습니다 (예 : 소스 저장소에 대한 익명 액세스 사용).

if (!Arrays.constantTimeAreEqual(this.macBlock, msgMac)) 
{ 
    throw new InvalidCipherTextException("mac check in GCM failed"); 
} 

이 파일은 저장소의이 파일의 1.13-1.18 버전과 동일하게 보이므로 이후 버전을 다시 확인하십시오.

관련 문제