Github Verified Commit

λ‘컬 컀λ°μμ GPGλ₯Ό μ¬μ©ν΄ Verified Commitμ νκΈ° μν μ€μ λ°©λ²
μ€μΉ
brew install gnupg pinentry-mac
ν€ μμ±
gpg --full-generate-key
μ λͺ λ Ήμ΄ μ€ν ν μλ μ΅μ μΌλ‘ μμ±
(1) RSA and RSA
keysize: 4096
0 = key does not expire
Real name: hyoguoo
Email address: hyoguoo@gmail.com
Comment:
μ΅μ μ€μ μ λ§μΉλ©΄ μνΈλ₯Ό μ λ ₯νλΌλ λ©μμ§κ° λμ€λλ°, μ΄ μνΈλ λμ€ λ¨κ³μμ μ΅μ΄ 컀λ°ν λ μ¬μ©λλ€.
μμ± λ ν€ νμΈ
gpg --list-secret-keys --keyid-format=long
gpg: checking the trustdb
gpg: marginals needed: 3 completes needed: 1 trust model: pgp
gpg: depth: 0 valid: 1 signed: 0 trust: 0-, 0q, 0n, 0m, 0f, 1u
/Users/hyogu/.gnupg/pubring.kbx
-------------------------------
sec rsa4096/A*************** 2023-04-25 [SC]
B***************************************
uid [ultimate] hyoguoo <hyoguoo@gmail.com>
ssb rsa4096/C*************** 2023-04-25 [E]
μμ κ° μ€ Aλ‘ μμνλ ν€κ° μλ κ³³μ΄ GPG Key ID
git config μ€μ
.gitconfig
νμΌμ μλμ λ΄μ© μΆκ°
[user]
name = hyoguoo
email = hyoguoo@gmail.com
signingkey = A***************
[commit]
gpgsign = true
[gpg]
program = gpg
GPG Agent μ€μ
pinentry
μ€μΉ μμΉ νμΈ
which pinentry-mac
νμΈλλ μ€μΉ κ²½λ‘
/opt/homebrew/bin/pinentry-mac
κΈ°μ€ μλμ λͺ λ Ήμ΄ μ€ν
echo "pinentry-program /opt/homebrew/bin/pinentry-mac" >> ~/.gnupg/gpg-agent.conf
GPG Agent μ¬μ€ν
killall gpg-agent
GiHub ν€ λ±λ‘
gpg --armor --export A***************
-----BEGIN PGP PUBLIC KEY BLOCK-----
...
...
...
-----END PGP PUBLIC KEY BLOCK-----
μμ λͺ
λ Ήμ΄λ₯Ό μ€νν΄ GPG Key νμΈνλ©΄ μΆλ ₯λλ λ΄μ©(BEGIN ~ ENDκΉμ§)μ λ³΅μ¬ ν
GitHub - Settings - SSH and GPG keys - New GPG key
μμ 볡μ¬ν λ΄μ©μ λΆμ¬λ£κΈ° ν λ±λ‘
μ»€λ° νμΈ
μ΅μ΄ μ»€λ° μ μμμ μ€μ ν λΉλ°λ²νΈ μ
λ ₯νλ©΄ Verified Commit
μ΄ λλ€.
μ¬μ© μ€ μ»€λ° μλ¬κ° λ°μνλ κ²½μ°
μ»€λ° μ μλμ κ°μ GPG μλͺ μλ¬κ° λ°μν μ μλ€.
error: gpg failed to sign the data:
gpg: signing failed: Bad CA certificate
fatal: μ»€λ° μ€λΈμ νΈλ₯Ό μ°λλ° μ€ν¨νμ΅λλ€
μ΄λ GPG ν€μ λν μ λ’°(trust) μ€μ μ΄λ pinentry μ€μ μ΄ μ λλ‘ λμ΄ μμ§ μμ κ²½μ° λ°μν μ μλλ°, μλ λ¨κ³λ₯Ό ν΅ν΄ λ¬Έμ λ₯Ό ν΄κ²°ν μ μλ€.
1. GPG ν€ νμΈ λ° gitμ λ±λ‘λ ν€ μΌμΉ μ¬λΆ νμΈ
gpg --list-secret-keys --keyid-format LONG
git config --global user.signingkey A***************
2. ν΄λΉ ν€μ λν μ λ’° μμ€μ ultimate
λ‘ μλ μ€μ
ultimate
λ‘ μλ μ€μ gpg --edit-key A***************
ν둬ννΈμμ λ€μκ³Ό κ°μ΄ μ λ ₯
trust
5
3. pinentry κ²½λ‘ νμΈ λ° gpg-agent μ€μ νμΌμ λ°μ
which pinentry-mac
echo "pinentry-program /opt/homebrew/bin/pinentry-mac" > ~/.gnupg/gpg-agent.conf
killall gpg-agent
μμ μ μ°¨λ₯Ό λͺ¨λ μνν λ€ λ€μ 컀λ°μ μλνλ©΄ λ€μ μ μμ μΌλ‘ Verified
컀λ°μ΄ κ°λ₯ν΄μ§λ€.
Last updated
Was this helpful?