입력
작업 공간 준비 중…
사용 방법
- 암호화 또는 복호화, 암호문 형식과 일치하는 AES 설정을 선택하세요.
- 데이터, 키 또는 암호문구와 필요한 IV, salt, 인증 매개변수를 입력하세요.
- 작업을 실행하고 복호화에 필요한 매개변수를 보관하세요.
AES 암호화 및 복호화
모드, 키, IV 및 인코딩을 맞춰 암호화하거나 복호화합니다. 기본값은 인증 기능이 있는 GCM입니다.
암호문과 함께 IV, 솔트 및 일치하는 설정을 보관하세요. 입력 키와 암호는 내보내기에 포함되지 않습니다.
입력 및 조작
AES-128, AES-192, AES-256에는 각각 정확히 16, 24, 32바이트가 필요합니다. 키를 자동으로 채우거나 자르지 않습니다.
GCM: 12–64바이트(12 권장). CBC, CTR, CFB: 정확히 16바이트. ECB는 IV를 사용하지 않습니다. 기본 설정에서는 매 암호화마다 새로운 무작위 IV와 salt를 생성하므로 같은 평문도 결과가 달라집니다. 수동 값은 호환성 테스트용입니다. 해당 모드의 IV/nonce 요구사항을 지켜 주세요.
Plaintext: Hello, encrypted world! 🌐
Passphrase: DevToolsy-demo-passphrase{
"format": "devtoolsy-aes",
"version": 2,
"mode": "GCM",
"keyBits": 256,
"keySource": "passphrase",
"padding": "none",
"iv": "EBESExQVFhcYGRob",
"ciphertext": "QdSMophe/cqRY/7qS1tHMemEKsgTwgzhEdCmOixECYc6+/X/mfq9f9Wq0CE=",
"kdf": {
"name": "PBKDF2",
"hash": "SHA-256",
"iterations": 600000,
"salt": "AAECAwQFBgcICQoLDA0ODw=="
},
"authentication": {
"tagLength": 128,
"aad": ""
}
}예제 데이터입니다. 샘플 키나 비밀번호를 실제 인증 정보로 사용하지 마세요.
동작 및 제한
GCM은 96/104/112/120/128-bit 태그, AAD, 결합 또는 별도 태그를 지원합니다. CBC/ECB는 PKCS#7 또는 NoPadding을 지원하며 후자는 완전한 16바이트 블록이 필요합니다. CFB는 128-bit 세그먼트, CTR은 1–128-bit 카운터를 사용합니다. 평문은 1 MiB까지입니다. 바이너리 결과는 Hex/Base64 또는 원시 바이트로 저장할 수 있으며 잘못된 UTF-8은 오류로 표시합니다.
이 모드는 데이터를 인증하지 않습니다. 잘못된 키로도 오류 없이 출력될 수 있습니다. 변조 감지가 필요하면 GCM을 사용하세요.
ECB는 레거시 호환용입니다. 같은 평문 블록은 같은 암호문 블록을 만듭니다.
복사 및 활용
JSON v2는 비밀이 아닌 매개변수를 저장하며 기존 v1의 AES-256-GCM / PBKDF2-SHA256 / 600,000회도 읽습니다. JSON은 컨테이너이며 인증을 추가하지 않습니다. 결과를 입력으로 사용하면 실제 매개변수가 전달됩니다. 암호화로 돌아오면 무작위 IV/salt 기본값이 복원됩니다.
원시 키 모드는 Node.js, Python, OpenSSL과 호환될 수 있으나 모드, 키 바이트, IV, padding, 인코딩과 GCM 태그/AAD가 모두 일치해야 합니다. OpenSSL Salted__ 또는 CryptoJS 암호문구 컨테이너는 자동 해석하지 않습니다. 실제 파생 키와 IV를 사용하세요. 암호문과 함께 IV, 솔트 및 일치하는 설정을 보관하세요. 입력 키와 암호는 내보내기에 포함되지 않습니다.
입력: 1 MiB; 비밀 키: 64 KiB; 파일: 1 GiB; 비밀번호: 4–128 (길이), 1–100 (개수); bcrypt: UTF-8 1~72바이트 · 비용 4~14 · 기본값 10; AES: 평문 1 MiB, 암호 구문 1 KiB, GCM / CBC / CTR / CFB / ECB, 128/192/256-bit; PBKDF2 / HKDF: 비밀번호 / 입력 바이트 64 KiB, 솔트 / info 1 KiB, 출력 길이(바이트) 1–256; 출력 1–256바이트 · PBKDF2 최대 2,000,000회 반복 · 입력은 기기에 유지; 시간: 30 s; 파일: 120 s.
자주 묻는 질문
나중에 복호화하려면 무엇이 필요한가요?
암호문과 함께 IV, 솔트 및 일치하는 설정을 보관하세요. 입력 키와 암호는 내보내기에 포함되지 않습니다.
암호화 결과가 매번 다른 이유는 무엇인가요?
기본 설정에서는 매 암호화마다 새로운 무작위 IV와 salt를 생성하므로 같은 평문도 결과가 달라집니다. 수동 값은 호환성 테스트용입니다. 해당 모드의 IV/nonce 요구사항을 지켜 주세요.
입력 내용이 DevToolsy로 전송되나요?
아니요. 이 도구는 데이터를 로컬에서 처리합니다. 비밀 정보, 파일 이름, 결과를 페이지 URL에 넣거나 도구 기록에 저장하지 않습니다.
지우기를 누르면 무엇이 삭제되나요?
페이지에 표시된 작업 값을 지웁니다. 메모리가 안전하게 소거된다는 보장은 아닙니다. 클립보드 사본과 다운로드한 파일은 기기에서 별도로 관리합니다.
임의의 OpenSSL 또는 CryptoJS 출력도 복호화할 수 있나요?
원시 키 모드는 Node.js, Python, OpenSSL과 호환될 수 있으나 모드, 키 바이트, IV, padding, 인코딩과 GCM 태그/AAD가 모두 일치해야 합니다. OpenSSL Salted__ 또는 CryptoJS 암호문구 컨테이너는 자동 해석하지 않습니다. 실제 파생 키와 IV를 사용하세요.
어떤 모드를 선택해야 하나요?
모드, 키, IV 및 인코딩을 맞춰 암호화하거나 복호화합니다. 기본값은 인증 기능이 있는 GCM입니다. 이 모드는 데이터를 인증하지 않습니다. 잘못된 키로도 오류 없이 출력될 수 있습니다. 변조 감지가 필요하면 GCM을 사용하세요. ECB는 레거시 호환용입니다. 같은 평문 블록은 같은 암호문 블록을 만듭니다.