ݺߣ

ݺߣShare a Scribd company logo
GPG Keysigning Party
한영빈(Youngbin Han)
sukso96100@gmail.com
우분투한국커뮤니티 9월 서울지역 세미나
2018.09.15
GPG가 뭔가요? PGP는? 키사이닝 파티는?
• 키사이닝 파티 참여 도움말 문서를 참고하세요.
• 지금 이 발표에서는 간단히 설명하고 넘어가겠습니다.
• https://github.com/ubuntu-kr/ksp-
toolkits/blob/master/ksp/ksp-20180915/readme.md
아래와 같은 것들을 잘 준비해 오셨나요?
• 각 참가자 목록 파일을 인쇄한 종이
• 각 참가자 목록 인쇄물에 각 참가자 목록 파일에 대해 본인이 계산한
SHA256 체크섬이 수기로 적혀 있어야 합니다.
• 참가자 목록은 2개 입니다. 둘 다 인쇄해서 준비해 오셨어야 합니다.
• 제출 하셨던 공개키에 담긴 신원 정보를 증명할 유효한 신분증
• 주민등록증, 운전면허증, 청소년증, 외국인증, 여권 등.
• 필기구
사전에 공개키 제출을 못하셨거나,
인쇄물을 지참하지 않으셨나요?
• 본인의 GPG 키의 핑거프린트가 적인 인쇄물이나 카드로 대신
하시기 바랍니다.
• 이 경우 핑거프린트를 직접 일일이 대조해야 합니다.
오늘 진행할 키사이닝 파티 프로토콜
• 먼저 다같이 각자가 계산해 온 체크섬 일치여부를 검증합니다.
• 자유롭게 돌아 다니면서 키사이닝을 할 상대를 만납니다.
• 참가자 목록 상에서의 번호를 물어봅니다.
• 체크섬을 다같이 확인할 때 체크 했는지 여부를 물어봅니다.
• 만약 체크 했다면, 핑거프린트 일치 확인을 건너 뜁니다.
• 체크하지 않은 사람이라면, 직접 핑거프린트를 대조합니다.
• 참가자 목록의 신원과 상대가 제시한 신분증 그리고 상대의 얼굴을
대조하여 신원을 확인합니다.
• 신원을 충분히 확인 했다면, 인쇄물의 해당 항목에 체크 표시를 하고
확인 작업을 마칩니다.
이제 체크섬을 다같이 확인하겠습니다.
• 체크섬을 기록한 참가자 목록 인쇄물을 꺼내 주세요.
• 돌아가면서 체크섬 앞에서 부터 순서대로 4자리씩 외칩니다.
• 다른 사람이 외친 체크섬 일부가 틀리다면 즉시 이의를 제기합
니다. 다음 사람이 동일한 부분을 다시 외칩니다.
• 이렇게 마지막 자리까지 돌아가면서 외쳐서 체크섬이 일치함을
다같이 확인합니다.
• 숫자는 로마자와의 혼동을 방지하기 위해 고유어로 부르겠습니
다.(예: 9E3D [아홉 이 셋 디]
예를 들어…
• 체크섬이 1E8F 6D87 1493 … 9DCB 라면.
1E8F 6D87 1493
…
9DCB
1차 참가자 목록 SHA256 체크섬
A146 B7C6 27AC B86D
8AD6 0B72 F9FA CFE4
818C 1461 F5D2 31A6
9BEB FFC2 E4D6 BAF9
2차 참가자 목록 SHA256 체크섬
2633 13F1 0351 DE99
1BA7 49C5 6D80 6ACF
D432 7A78 23C7 C735
8F23 4CD7 6DBE F4F2
행사가 끝나고 집에서 할 일.
• 인쇄물에서 체크한 사람의 공개키에 키사이닝을 합니다.
• 키사이닝한 공개키를 원래의 주인에게 전송합니다.
• 다른 사람으로부터 키사이닝 된 본인의 공개키를 받아 본인의
PC 에 불러옵니다.
Ubuntu – caff 를 이용한 키사이닝
• Signing-party 패키지 설치
• sudo apt install signing-party
• caff 를 한번 실행하여 필요한 설정파일 초기화
• caff
~/.caffrc 설정
$CONFIG{'owner’} = ‘본인 이름’
$CONFIG{‘email’} = ‘이메일 주소’
$CONFIG{‘reply-to’} = ‘회신받을 이메일 주소’
…
# … 자리에 사용할 gpg 키ID 입력, 여러개 입력 시 공백으로 구분
$CONFIG{'keyid'} = [ qw{ … } ];
# … 자리에 키사이닝에 쓸 gpg 키ID 입력, 여러개 입력 시 공백으로 구분
$CONFIG{'local-user'} = [ qw{} ];
# 키사이닝 후 바로 저장 하도록 설정
$CONFIG{'gpg-sign-args'} = 'save’;
…
~/.caffrc 설정
…
# GPG 키 불러올 키서버 설정
$CONFIG{'keyserver'} = ‘keyserver.ubuntu.com’;
…
# 키사이닝된 공개키 전송에 쓸 메일의 메일서버 설정
# 아래는 Gmail 예시
$CONFIG{'mailer-send'} = ['smtps', Server => 'smtp.gmail.com', Port =>
465, Auth => ['sukso96100@gmail.com’, ‘<Google 앱 패스워드 입력>']];
~/.caffrc 설정
…
# 아래 메일 템플릿 주석 해제 처리
#$CONFIG{'mail-template'} = << 'EOM’;
#Hi,
#
#please find attached the user id{(scalar @uids >= 2 ? 's' : ’’)}
…
#If you have any questions, don't hesitate to ask.
#
#Regards,
#{$owner}
#EOM
키사이닝 및 메일전송
• 다음 명령어 실행하여 수행
• caff <key 1> <key 2> … <key n>
Pius 를 이용한 키사이닝
(https://www.phildev.net/pius/)
• 아래 링크에서 최신 릴리즈 압축파일 받아 압축 풀기
• https://github.com/jaymzh/pius/releases
• 압축 푼 폴더에 접근하여 설치 명령어 실행
• sudo ./setup.py install
• 다음 명령으로 키사이닝 일괄 진행(Gmail 예제)
• pius -H smtp.gmail.com -p 587 -u <Gmail 주소> –A –r <키링 경로>
-s <키사이닝에 쓸 키ID>
키사이닝 된 키 메일에서 불러오기
• 받은 암호화된 메일 화면에서, 원문 보기 메뉴 선택
• -----BEGIN PGP MESSAGE----- 로 시작하여, -----END PGP
MESSAGE----- 로 끝나는 암호화된 PGP 메시지 복사.
• 복사한 메시지 별도 파일로 저장.
• 다음 명령으로 복호화 후 불러오기
• gpg –decrypt <파일명> | gpg –import
• 필요한 경우 키서버에 업로드
• gpg –keyserver <키서버 주소> --send-keys <키ID>
일일이 메일 주고 받기 귀찮다면…
• 상호 협의 하에 지정된 키서버에 업로드 하여 교환.
• gpg –keyserver <키서버 주소> --send-keys <키ID>

More Related Content

9월 서울지역 세미나 GPG 키사이닝 파티

  • 1. GPG Keysigning Party 한영빈(Youngbin Han) sukso96100@gmail.com 우분투한국커뮤니티 9월 서울지역 세미나 2018.09.15
  • 2. GPG가 뭔가요? PGP는? 키사이닝 파티는? • 키사이닝 파티 참여 도움말 문서를 참고하세요. • 지금 이 발표에서는 간단히 설명하고 넘어가겠습니다. • https://github.com/ubuntu-kr/ksp- toolkits/blob/master/ksp/ksp-20180915/readme.md
  • 3. 아래와 같은 것들을 잘 준비해 오셨나요? • 각 참가자 목록 파일을 인쇄한 종이 • 각 참가자 목록 인쇄물에 각 참가자 목록 파일에 대해 본인이 계산한 SHA256 체크섬이 수기로 적혀 있어야 합니다. • 참가자 목록은 2개 입니다. 둘 다 인쇄해서 준비해 오셨어야 합니다. • 제출 하셨던 공개키에 담긴 신원 정보를 증명할 유효한 신분증 • 주민등록증, 운전면허증, 청소년증, 외국인증, 여권 등. • 필기구
  • 4. 사전에 공개키 제출을 못하셨거나, 인쇄물을 지참하지 않으셨나요? • 본인의 GPG 키의 핑거프린트가 적인 인쇄물이나 카드로 대신 하시기 바랍니다. • 이 경우 핑거프린트를 직접 일일이 대조해야 합니다.
  • 5. 오늘 진행할 키사이닝 파티 프로토콜 • 먼저 다같이 각자가 계산해 온 체크섬 일치여부를 검증합니다. • 자유롭게 돌아 다니면서 키사이닝을 할 상대를 만납니다. • 참가자 목록 상에서의 번호를 물어봅니다. • 체크섬을 다같이 확인할 때 체크 했는지 여부를 물어봅니다. • 만약 체크 했다면, 핑거프린트 일치 확인을 건너 뜁니다. • 체크하지 않은 사람이라면, 직접 핑거프린트를 대조합니다. • 참가자 목록의 신원과 상대가 제시한 신분증 그리고 상대의 얼굴을 대조하여 신원을 확인합니다. • 신원을 충분히 확인 했다면, 인쇄물의 해당 항목에 체크 표시를 하고 확인 작업을 마칩니다.
  • 6. 이제 체크섬을 다같이 확인하겠습니다. • 체크섬을 기록한 참가자 목록 인쇄물을 꺼내 주세요. • 돌아가면서 체크섬 앞에서 부터 순서대로 4자리씩 외칩니다. • 다른 사람이 외친 체크섬 일부가 틀리다면 즉시 이의를 제기합 니다. 다음 사람이 동일한 부분을 다시 외칩니다. • 이렇게 마지막 자리까지 돌아가면서 외쳐서 체크섬이 일치함을 다같이 확인합니다. • 숫자는 로마자와의 혼동을 방지하기 위해 고유어로 부르겠습니 다.(예: 9E3D [아홉 이 셋 디]
  • 7. 예를 들어… • 체크섬이 1E8F 6D87 1493 … 9DCB 라면. 1E8F 6D87 1493 … 9DCB
  • 8. 1차 참가자 목록 SHA256 체크섬 A146 B7C6 27AC B86D 8AD6 0B72 F9FA CFE4 818C 1461 F5D2 31A6 9BEB FFC2 E4D6 BAF9
  • 9. 2차 참가자 목록 SHA256 체크섬 2633 13F1 0351 DE99 1BA7 49C5 6D80 6ACF D432 7A78 23C7 C735 8F23 4CD7 6DBE F4F2
  • 10. 행사가 끝나고 집에서 할 일. • 인쇄물에서 체크한 사람의 공개키에 키사이닝을 합니다. • 키사이닝한 공개키를 원래의 주인에게 전송합니다. • 다른 사람으로부터 키사이닝 된 본인의 공개키를 받아 본인의 PC 에 불러옵니다.
  • 11. Ubuntu – caff 를 이용한 키사이닝 • Signing-party 패키지 설치 • sudo apt install signing-party • caff 를 한번 실행하여 필요한 설정파일 초기화 • caff
  • 12. ~/.caffrc 설정 $CONFIG{'owner’} = ‘본인 이름’ $CONFIG{‘email’} = ‘이메일 주소’ $CONFIG{‘reply-to’} = ‘회신받을 이메일 주소’ … # … 자리에 사용할 gpg 키ID 입력, 여러개 입력 시 공백으로 구분 $CONFIG{'keyid'} = [ qw{ … } ]; # … 자리에 키사이닝에 쓸 gpg 키ID 입력, 여러개 입력 시 공백으로 구분 $CONFIG{'local-user'} = [ qw{} ]; # 키사이닝 후 바로 저장 하도록 설정 $CONFIG{'gpg-sign-args'} = 'save’; …
  • 13. ~/.caffrc 설정 … # GPG 키 불러올 키서버 설정 $CONFIG{'keyserver'} = ‘keyserver.ubuntu.com’; … # 키사이닝된 공개키 전송에 쓸 메일의 메일서버 설정 # 아래는 Gmail 예시 $CONFIG{'mailer-send'} = ['smtps', Server => 'smtp.gmail.com', Port => 465, Auth => ['sukso96100@gmail.com’, ‘<Google 앱 패스워드 입력>']];
  • 14. ~/.caffrc 설정 … # 아래 메일 템플릿 주석 해제 처리 #$CONFIG{'mail-template'} = << 'EOM’; #Hi, # #please find attached the user id{(scalar @uids >= 2 ? 's' : ’’)} … #If you have any questions, don't hesitate to ask. # #Regards, #{$owner} #EOM
  • 15. 키사이닝 및 메일전송 • 다음 명령어 실행하여 수행 • caff <key 1> <key 2> … <key n>
  • 16. Pius 를 이용한 키사이닝 (https://www.phildev.net/pius/) • 아래 링크에서 최신 릴리즈 압축파일 받아 압축 풀기 • https://github.com/jaymzh/pius/releases • 압축 푼 폴더에 접근하여 설치 명령어 실행 • sudo ./setup.py install • 다음 명령으로 키사이닝 일괄 진행(Gmail 예제) • pius -H smtp.gmail.com -p 587 -u <Gmail 주소> –A –r <키링 경로> -s <키사이닝에 쓸 키ID>
  • 17. 키사이닝 된 키 메일에서 불러오기 • 받은 암호화된 메일 화면에서, 원문 보기 메뉴 선택 • -----BEGIN PGP MESSAGE----- 로 시작하여, -----END PGP MESSAGE----- 로 끝나는 암호화된 PGP 메시지 복사. • 복사한 메시지 별도 파일로 저장. • 다음 명령으로 복호화 후 불러오기 • gpg –decrypt <파일명> | gpg –import • 필요한 경우 키서버에 업로드 • gpg –keyserver <키서버 주소> --send-keys <키ID>
  • 18. 일일이 메일 주고 받기 귀찮다면… • 상호 협의 하에 지정된 키서버에 업로드 하여 교환. • gpg –keyserver <키서버 주소> --send-keys <키ID>