GPG KEY
GPG(GNU Privacy Guard)는 암호화와 전자 서명을 위한 도구.
git에서도 커밋에 서명을 하기 위해 사용 가능.
Github를 보면 커밋에 Verified 라고 표시된 부분을 볼 수 있는데 이게 GPG로 서명한 경우이다.
GPG 키 만들기
우선 GPG를 설치하겠습니다.
bash
brew install gpg그다음 key를 생성하겠습니다.
bash
gpg --full-generate-key명령어를 입력하면 인터렉티브 프롬포트가 활성되는데
키 설정 선택하고, 사용자 정보, 이메일 등을 입력하면 됩니다.
bash
$ gpg --list-secret-keys --keyid-format LONG
[keyboxd]
---------
sec ed25519/8BA288F0AB5A68A5 2025-11-24 [SC]
5A3F2BB8D86D730CC660799B8BA288F0AB5A68A5
uid [ultimate] Park jungtae (opjt) <jtpark1957@gmail.com>
ssb cv25519/C8059F498A8A5664 2025-11-24 [E]위 결과를 기준으로 ed25519 뒤에 있는 8BA288F0AB5A68A5가 KEY 입니다.
git config를 설정하겠습니다.
bash
git config --global user.signingkey 8BA288F0AB5A68A5
git config --global commit.gpgsign true
# gpgsign을 true로 할경우 매 커밋마다 자동으로 서명됩니다
git config --global gpg.program gpg이제 github에 GPG Public KEY를 등록하기 위해서 공개키를 추출하겠습니다.
bash
gpg --armor --export 8BA288F0AB5A68A5 # 앞서 확인한 키GPG 키에 passphrase가 설정되어 있는 경우 GPG_TTY 환경변수를 설정해주지 않으면 암호를 묻는 화면이 출력되지 않아서 커밋이 찍히지 않을 수도 있습니다.
export GPG_TTY=$TTY