PGP / GPG 도구
OpenPGP 키 쌍을 생성하고 메시지를 암호화·복호화·서명·검증하는 작업을 모두 브라우저에서 수행합니다.
PGP / GPG 도구 — openpgp.js 라이브러리를 브라우저에서 직접 구동하는 완결형 OpenPGP 작업대입니다. 이름·이메일·패스프레이즈로 공개 키와 개인 키 쌍을 만들고, ASCII armor 형식의 메시지를 암호화·복호화·서명·검증할 수 있으며 어떤 것도 페이지를 떠나지 않습니다. 키·패스프레이즈·평문은 모두 로컬 메모리에서 처리되어 서버로 업로드되거나 저장되지 않습니다.
PGP / GPG 도구란?
PGP / GPG 도구는 GnuPG(GPG)와 이메일 프라이버시 도구의 바탕이 되는 암호화 표준 OpenPGP를 위한 무료 브라우저 내장 프런트엔드입니다. 개발자, 보안 엔지니어, 기자, 그리고 기밀 메시지를 주고받는 누구나 명령줄 소프트웨어를 설치하지 않고 키를 만들고 텍스트를 보호하는 데 사용합니다. 「모드」 전환기로 키 생성, 암호화, 복호화, 서명, 검증 중 하나를 고릅니다. 키 생성에서는 이름·이메일·선택적 패스프레이즈를 입력해 ASCII armor 형식의 공개 키와 개인 키를 받습니다. 암호화에서는 받는 사람의 공개 키와 메시지를 붙여 넣어 armor 암호문을 얻고, 복호화는 개인 키와 패스프레이즈로 그것을 되돌립니다. 서명은 개인 키로 클리어텍스트 서명 메시지를 만들고, 검증은 서명된 메시지를 공개 키로 대조합니다. openpgp 라이브러리는 지연 로드되고 모든 작업이 로컬에서 실행되므로 비밀 자료는 기기 안에 머뭅니다.
PGP / GPG 도구 사용법
- 상단에서 「모드」를 고르세요: 키 생성, 암호화, 복호화, 서명, 검증.
- 키 쌍을 만들려면 키 생성을 고르고 이름과 이메일을 입력한 뒤, 개인 키를 보호할 패스프레이즈를 선택적으로 설정하고 「키 쌍 생성」을 누르세요.
- 암호화하려면 암호화로 전환해 받는 사람의 공개 키와 메시지를 붙여 넣고 「실행」을 누른 뒤, 결과의 armor 암호문을 복사하세요.
- 복호화하려면 복호화로 전환해 armor 메시지와 개인 키를 붙여 넣고, 패스프레이즈가 있으면 입력한 다음 「실행」을 누르세요.
- 서명·검증하려면 서명(개인 키) 또는 검증(공개 키)을 고르고 메시지와 키를 붙여 넣은 뒤 「실행」을 눌러 서명된 메시지를 만들거나 검증 결과를 읽으세요.
- 어떤 결과든 복사 버튼으로 키나 메시지 텍스트를 가져올 수 있습니다.
예시
키 쌍 생성하기
키 생성에서 'Ada Lovelace' 같은 이름과 이메일, 패스프레이즈를 입력하고 「키 쌍 생성」을 누르세요. 공유할 PUBLIC KEY 블록과 비밀로 둘 PRIVATE KEY 블록을 받게 되며, 둘 다 ASCII armor 형식의 OpenPGP입니다.
상대에게 메시지 암호화하기
암호화에서 받는 사람의 공개 키를 붙여 넣고 메시지를 입력하세요. 「실행」을 누르면 결과가 -----BEGIN PGP MESSAGE----- 블록이 되며, 대응하는 개인 키를 가진 사람만 복호화할 수 있습니다.
서명된 메시지 검증하기
검증에서 클리어텍스트 서명 메시지와 서명자의 공개 키를 붙여 넣고 「실행」을 누르세요. 결과는 서명이 유효한지 알려 주고 원문을 보여 주어 변조되지 않았음을 확인합니다.
자주 묻는 질문
- 제 개인 키나 패스프레이즈가 업로드되나요?
- 아니요. 모든 처리는 openpgp.js 라이브러리로 브라우저 안에서 이뤄집니다. 키·패스프레이즈·메시지 텍스트는 로컬 메모리에서 처리되며 어떤 서버로도 전송되거나 저장되지 않으므로, 도구는 오프라인에서 작동하고 비밀은 기기 안에 머뭅니다.
- 어떤 키 종류와 알고리즘을 생성하나요?
- 라이브러리 기본값으로 현대적인 OpenPGP 키 쌍(Curve25519 타원곡선 키)을 생성합니다. 빠르며 현행 OpenPGP·GnuPG 버전과 폭넓게 호환됩니다. 출력은 표준 ASCII armor 형식 OpenPGP라 GPG 및 다른 OpenPGP 소프트웨어와 호환됩니다.
- 왜 복호화나 검증이 실패하나요?
- 맞는 키를 썼는지 확인하세요 — 복호화에는 암호화에 쓰인 공개 키에 대응하는 개인 키가, 검증에는 서명자의 공개 키가 필요합니다. BEGIN과 END 줄을 포함한 전체 armor 블록을 붙여 넣었는지, 보호된 개인 키의 패스프레이즈가 맞는지 확인하세요.
- 패스프레이즈를 비워 둬도 되나요?
- 네. 키를 생성할 때 패스프레이즈를 건너뛰어 보호 없는 개인 키를 만들 수 있고, 그 키로 복호화·서명할 때는 패스프레이즈 칸을 비워 둡니다. 패스프레이즈는 개인 키가 노출됐을 때 한 겹의 보호를 더해 줍니다.
- GPG와 호환되나요?
- 네. 키와 메시지는 표준 ASCII armor 형식 OpenPGP(RFC 9580 / 4880)를 쓰므로, 키를 GnuPG로 가져오고 여기서 만든 메시지를 복호화·검증할 수 있으며 그 반대도 가능합니다.
관련 도구
AES 텍스트 암호화 (AES-GCM + PBKDF2)
패스프레이즈에서 유도한 키(PBKDF2 SHA-256)로 AES-GCM 암호화·복호화를 수행하며, 모든 처리가 브라우저 안에서 끝나고 업로드가 없습니다.
Argon2·scrypt 해시
Argon2id 또는 scrypt로 비밀번호를 해시하고, Argon2 해시를 비밀번호와 대조해 검증합니다. 모두 브라우저에서 동작합니다.
Bcrypt 해시 생성기·검증기
평문에서 원하는 cost factor로 bcrypt 비밀번호 해시를 만들거나, 평문을 기존 bcrypt 해시와 비교해 검증하는 일을 모두 브라우저에서 처리합니다.
BIP39 니모닉 생성기
여러 언어로 12~24개 단어의 무작위 BIP39 복구 구문을 생성하거나, 기존 니모닉을 원래 엔트로피로 되돌립니다. 모두 브라우저에서 처리됩니다.