CBC 기본 호환
AES/CBC/PKCS5Padding + UTF-8 + Base64
Java, Node.js, 브라우저 결과가 같은지 비교할 때 먼저 맞춰볼 조합입니다.
AES CBC/GCM/ECB, PKCS/NoPadding, PBKDF2, UTF-8/EUC-KR, Secret Key/IV/Auth Tag/Base64/Hex 옵션을 분리된 URL에서 처리합니다.
AES 도구는 백엔드와 프론트엔드 사이의 암호문 호환성을 점검할 수 있도록 mode, padding, key format, IV/Nonce, result format을 분리해 제공합니다.
AES 결과는 Secret Key뿐 아니라 CBC/GCM/ECB 모드, padding, IV 또는 nonce, 문자열 인코딩, 출력 포맷이 모두 일치해야 재현됩니다.
Base64와 Hex는 바이너리 암호문을 텍스트로 안전하게 옮기기 위한 표현 방식이며, 백엔드가 기대하는 포맷과 맞춰야 합니다.
CBC와 GCM은 같은 키에서 IV 또는 nonce를 재사용하면 보안성이 크게 떨어질 수 있습니다.
ECB는 구조가 반복되는 데이터를 노출할 수 있어 레거시 호환 목적 외에는 권장하지 않습니다.
AES/CBC/PKCS5Padding + UTF-8 + Base64
Java, Node.js, 브라우저 결과가 같은지 비교할 때 먼저 맞춰볼 조합입니다.
Ciphertext + Auth Tag + 12-byte Nonce
GCM 복호화는 암호문뿐 아니라 인증 태그와 nonce가 함께 필요합니다.
AES 키는 16, 24, 32바이트 중 하나여야 하며 각각 AES-128, AES-192, AES-256에 해당합니다.
키, IV/Nonce, padding, 인코딩, Base64/Hex 포맷 중 하나가 암호화 시점과 다를 때 실패합니다.