사용자 도구

사이트 도구


pgp

PGP

GnuPG로 Key 생성하기

Key 생성

# key 생성
gpg --gen-key
  • 질문에 대답하고 가능하면 passphrase도 지정해줄것.
  • ~/.gnupg 디렉토리에 pubring.gpg, secring.gpg로 생성됨.

Key 목록 보기

# 공개키 보기
gpg --list-keys
 
# 비밀키 보기
gpg --list-sceret-keys

Sign a file

gpg -ab somefile.txt
 
# somefile.txt.asc 파일 생성됨
  • -a : ASCII output
  • -b : 별도 Signature 파일 생성

사인 된 파일 검증

gpg --verify somefile.txt.asc
  • Maven 저장소에 artifact를 올릴 때는 Primary Key만 사용할 것.

subkey 삭제

일부 PGP 툴은 subkey를 사용해 사인을 하는데 Maven은 이를 인식하지 못한다. 그래서 subkey를 삭제해 버리고 사인할 것.

gpg --list-keys # 여기서 pub key의 ID를 가지고 아래에서 사용
 
gpg --edit-key [KEYID] # 예 A6BAB25C
 
# 아래와 같은 화면이 나왔다고 할 때
gpg (GnuPG/MacGPG2) 2.0.17; Copyright (C) 2011 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
 
Secret key is available.
 
pub  2048R/A6BAB25C  created: 2011-08-31  expires: 2012-06-26  usage: SC
                     trust: ultimate      validity: ultimate
sub  2048R/DD289F64  created: 2011-08-31  expired: 2011-09-30  usage: E
sub  2048R/8738EC86  created: 2011-12-19  expires: 2012-06-16  usage: S
[ultimate] (1). Juven Xu (for testing) <test@juvenxu.com>
  • 여기서 usage: E로 된 것은 Encryption에만 사용, usage: S가 사이닝할 때사용된다. 따라서 S가 지정된 subkey를 삭제하면 된다(여기서는 8738EC86).
  • key 2 명령으로 해당 키 선택(출력 순서대로 0 기반)
  • delkey : 선택된 키 삭제
  • save : 저장

PGP Public Key 업로드

  • 올리기
    gpg --keyserver hkp://pool.sks-keyservers.net --send-keys [KEYID]
  • 남이 올린 키 받아서 import
    gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys [KEYID]
pgp.txt · 마지막으로 수정됨: 2015/03/17 00:51 저자 kwon37xi