PGP 단어 목록

PGP word list

PGP Word List("Pretty Good Privacy Word List")는 음성 채널을 통해 명확하고 모호하지 않은 방식으로 데이터 바이트를 전달하기 위한 단어 목록이다. 그것들은 256개의 구별되는 숫자 바이트 값 중 하나에 해당하는 더 긴 단어 목록이 사용되는 것을 제외하고, 조종사들이 사용하는 NATO 음성 문자와 목적상 유사하다.

역사와 구조

PGP 워드 리스트는 1995년 컴퓨터 언어학자 패트릭 쥬올라PGP를 만든 필립 짐머만이 설계했다.[1][2] 이 단어들은 음소공간에 최적의 분리를 가진 단어들의 목록을 선택하기 위해 유전 알고리즘을 사용하여 음소 구별성을 위해 신중하게 선택되었다. 후보 단어 목록은 유전자 알고리즘에 의해 연속적으로 정제된, 검색을 위한 원료로 그래디 워드모비 프로넌시에이터 목록에서 무작위로 추출되었다. 자동화된 검색은 그 시대의 특히 빠른 기계인 DEC Alpha에서 약 40시간 만에 최적화된 솔루션으로 통합되었다.

Zimmermann-Juola 목록은 원래 보안 VoIP 애플리케이션인 PGPfone에 사용되도록 설계되어 양 당사자가 짧은 인증 문자열을 구두로 비교하여 중간 공격(MiTM)을 탐지할 수 있도록 하였다. 음성채널을 통해 단어를 읽고 비교할 때 서로 다른 목소리를 인지하는 두 명의 인간사용자에 따라 인증이 달라져 스피커의 정체성을 단어로 묶어 MiTM 공격으로부터 보호하는 데 도움을 줬다는 점에서 생체인식 단어 목록으로 불렸다. 이 목록은 신원의 생체적 결합이 필요하지 않은 다른 많은 상황에서 사용될 수 있기 때문에 생체인식 단어 목록이라고 부르는 것은 부정확할 수 있다. 나중에 음성 채널을 통해 PGP 공개지문을 비교하고 확인하는 데 PGP에서 사용되었다. 이것은 PGP 애플리케이션에서 "생물학적" 표현으로 알려져 있다. PGP에 적용되었을 때, 존 캘러스의 기여로 단어 목록이 더욱 정교해졌다. 보다 최근에는 Zfone과 PGPfone의 계승자인 ZRTP 프로토콜에서 사용되고 있다.

이 목록은 실제로 음성학적으로 구별되는 256개의 단어를 포함하는 두 개의 목록으로 구성되어 있으며, 각 단어는 0과 255 사이의 다른 바이트 값을 나타낸다. 인간 단어의 긴 무작위 시퀀스를 소리 내어 읽으면 대개 세 가지 종류의 오류가 발생하기 때문에 두 가지 목록이 사용된다: 1) 연속된 두 단어의 전환, 2) 중복된 단어 또는 3) 생략된 단어. 세 가지 유형의 오류를 모두 감지하기 위해, 이븐오프셋 바이트와 바이트 시퀀스의 홀수 오프셋 바이트에 대해 두 목록을 번갈아 사용한다. 각 바이트 값은 바이트 시퀀스의 시작부터 짝수 또는 홀수 오프셋으로 표시되는지에 따라 실제로 두 개의 다른 단어로 표현된다. 이 두 목록은 음절 수로 쉽게 구별된다. 짝수 목록은 두 음절의 단어를 가지고 있고, 홀수 목록은 세 음절을 가지고 있다. 이 두 명단의 최대 단어 길이는 각각 9자, 11자 입니다. 자하이 스튜어트는 두 가지 리스트의 계획을 사용하는 것을 제안했다.

단어 목록

다음은 PGPfone 소유자 설명서에 제시된 두 가지 단어 목록이다.[3]

육각 이븐 워드 오드 워드
00 야드바크 능수능란
01 어이없다 고문
02 풍화하다 여파
03 Acme 집적하다
04 표류하다 알칼리의
05 어른의 전능한
06 괴롭히다 부적
07 앞쪽에 유희
08 목적이 없는 안테나
09 알골 지원자
0A 허용하다 아폴로
0B 단독의 휴전
0C 탄약 기사
0D 고대의 소행성
0E 사과 애틀랜틱
0F 예술가 분위기
10 가정하다 부검
11 아테네 바빌론
12 지도책 역류
13 아즈텍 바베큐
14 개코원숭이 지하에
15 백필드의 분기의
16 역행의 보디가드
17 밴조 서점가
18 징징거리는 경계선을 긋다
19 침대등 밑바닥이 없는
1A 벌집의 브래드베리
1B 밀랍인형 허세를 부리다
1C 친구가 되다 브라질의
1D 벨파스트 길을 트다
1E 베르세르크 벌링턴
1F 당구 실업가
20 들소 버터 지방
21 블랙잭을 하다 카멜롯
22 봉쇄하다 후보
23 블로토치 대포알
24 파랑새 염소자리
25 폭탄테러가 되다 캐러밴
26 책꽂이 관리인
27 고사리 같은 축하하다
28 빵의 줄 셀룰로오스
29 헤어지다 증명하다
2A 벽돌 공장 하숙인
2B 서류 가방 체로키
2C 버뱅크 시카고
2D 단추를 채우다 성직자
2E 버저드 일관성
2층 시멘트를 바르다 연소시키다
30 의자를 들어 올리다 특공대
31 수다를 떨다 동행이
32 검진 구성 요소
33 끌을 붙이다 동시의
34 숨이 막히는 자신감
35 헬리콥터 순응주의자
36 크리스마스 모이다
37 조개껍질 일치된 의견
38 고전적인 자문
39 교실 법인체의
3A 정리하다 부식하다
3B 시계 태엽을 감는 시의원
3C 코브라를 치다 교차시키다
3D 시작하다 십자가에 못 박다
3E 연주회 거추장스러운
3층 카우벨 고객
육각 이븐 워드 오드 워드
40 단속하다 다코타
41 짜증을 내다 퇴폐적
42 까마귀발 12월
43 중대한 십진법의
44 구겨진 디자인
45 십자군 운동을 하다 검파기
46 입방체의 세제
47 대시보드 결정하다
48 데드볼트 독재자
49 갑판의 공룡
4A 개가 달린 방향
4B 드래그넷 무력화하다
4C 배수 불신임
4D 무서운 파괴적인
4E 부랑자랑하다 왜곡.
4층 침을 흘리다 문서화하다
50 북을 치다 횡령하다
51 술에 취한 매혹적인
52 듀퐁 등록
53 주거의 기업적인
54 먹는 방정식
55 칙령 장비
56 달걀머리 도망치다
57 팔구공 에스키모
58 지지하다 일상의
59 기부금을 내다 검사하다
5A 입대하다 존재
5B 지우다 탈출
5C 도망치다 매료시키다
5D 초과하다 필라멘트
5E 안경의 까다롭다
5층 아이쿠스 영원히.
60 안면 강인함
61 낙진 빈도수
62 깃대 기계 장치
63 평발 갤버스턴
64 플라이트랩을 하다 달아나다
65 골절시키다 용어집의
66 험담하다
67 자유 졸업을 하다
68 겁을 주다 중력
69 가젤 기타리스트
6A 가이거 햄버거
6B 반짝반짝 빛나다 해밀턴
6C 포도당 수공예품
6D 고글을 달다 위험한
6E 금붕어 머리를 싸매다
6층 그레믈린 반구의
70 지도 망설이다
71 햄릿 은신처
72 높은 의자 거룩함
73 하키 허리케인
74 실내에 수성의
75 탐닉하다 공평한
76 역의 자극을 주다
77 포함시키다 창간
78 남색의
79 턱뼈 관성의
7A 건반을 치다 유아기의
7B 킥오프 극악무도한
7C 키위 정보 제공자
7D 클랙슨 성의 없는
7E 로캘 반란의
7층 가두다 통합하다
육각 이븐 워드 오드 워드
80 가치가 있다 의도적인
81 잔털을 깎다 창의적인
82 구두쇠 이스탄불
83 모하크 자메이카
84 벽화를 그리다 목성
85 음악 나병 환자
86 목걸이. 레터헤드
87 해왕성 자유
88 갓 태어난 해상의
89 밤새 중매쟁이
8A 오클랜드 독불장군한
8B 둔해. 메두사
8C 하역하다 메가톤급
8D 광체의 현미경으로 보다
8E 오르카 전자레인지로 돌리다
8층 월급날 한여름
90 복숭아 같은 백만장자
91 꿩의 기적의
92 체격 잘못 발음하다
93 놀이방 당밀
94 명왕성 분자
95 배제하다 몬태나 주
96 선호하다 기념비적인
97 전칭으로 하다. 모기의
98 프린터 서사적
99 배회하다 성운
9A 동공 소식지
9B 강아지 노르웨이의
9C 비단뱀을 치다 10월
9D 사분면의 오하이오 주
9E 부들부들 떨다 구경꾼
9층 할당량 풍요로운
A0 래그타임 올랜도
A1 래칫하다 외야수
A2 부활하다 태평양의
A3 개심시키다 유행병의
A4 되찾다 판도라
A5 순록 페이퍼급
A6 재매치하다 귀납적
A7 보답하다 단락
A8 리터칭하다 가장 중요한
A9 복수를 하다 승객
A의 보답을 하다 혈통
AB 리듬을 타다 페가수스
AC 갈비뼈 침투하다
AD 링볼트 통찰력이 있는
AE 강건한 공연
AF 로커 약국
B0 주름진 표음성의
B1 범선 사진을 찍다
B2 톱밥 선구적인
B3 파의 주머니가 있는
B4 경치가 좋은 공손함
B5 스코어카드 양성의
B6 스코틀랜드 감자를
B7 바닷새 프로세서
B8 선발하다 지방의
B9 형을 언도하다 근위의
BA 그림자를 드리우다 사춘기의
BB 암석 출판사
기원전 쇼걸 피라미드를 짓다
BD 해골 캡 수량
있다 스카이다이빙의 소란을 피우다
BF 새총 반란을 일으키다
육각 이븐 워드 오드 워드
C0 속도를 줄이세요. 요리법
C1 스냅라인으로 찍다 회복되다
C2 스냅 사진을 찍다 혐오스러운
C3 눈 덮인 곳 복제품
C4 스노슬라이드 번식을 하다
C5 단독의 저항의
C6 남쪽에 반응성이 있는
C7 콩을 수축
C8 스패니얼 회수
C9 선봉에 서다 돌이켜 생각하다
CA 철자를 바르다 수입
CB 스피로이드의 부흥
CC 스피것 권총을 들이대다
CD 스핀들 샌달우드
CE 스파이글래스 냉담한
CF 무대 담당의 토요일
D0 정체되다 야만적인
D1 층계 청소하는 사람
D2 표준의 센세이션
D3 스테이플러 사교적인
D4 기선 기념품
D5 흉골의 전문적
D6 목축업자 투기를 하다
D7 스톱워치 청진기
D8 폭풍우가 치는 어마어마한
D9 설탕을 넣다 지원하는
DA 넘다 항복하다
DB 긴장감 의심스러운
DC 땀띠 동정
DD 질퍽질퍽하다 탬버린
DE 전술 전화를 걸다
DF 발톱 치료사
E0 촌충 담배
E1 폭풍우 관용
E2 호랑이 내일
E3 휴지를 어뢰로 공격하다
E4 강장제 전통
E5 맨 위의 익살스러운 짓궂은 장난
E6 추적기 트롬본스트
E7 수송하다 잘린
E8 트라우마 타이프라이터를 치다
E9 러닝머신 궁극의
EA 트로이 목마 굴하지 않는
EB 수고를 끼치다 발밑에
EC 종양 유니콘
ED 터널을 뚫다 통합하다
EE 거물급 우주
EF 자르지 않은 풀다
F0 흙을 파내다 금후의
F1 긴장을 풀다 빈자리
F2 뿌리를 뽑다 방랑자
F3 속상하게 하다 현기증
F4 기발한 버지니아 주
F5 증기를 내다 방문자
F6 마을 보컬리스트
F7 바이러스의 항해자
F8 벌컨 보증
F9 와플을 따다 워털루
FA 지갑 변덕스러운
FB 파수꾼 위치타
FC 길가의 윌밍턴
FD 버드나무 와이오밍 주
FE 목초지 예년
FF 줄루 유카탄

bytestring의 각 바이트는 하나의 단어로 인코딩된다. 바이트 순서는 네트워크 바이트 순서에 따라 왼쪽에서 오른쪽으로 렌더링된다. 예를 들어, 가장 왼쪽(즉, 바이트 0)은 "이븐"으로 간주되며 PGP 이븐 워드 테이블을 사용하여 인코딩된다. 오른쪽의 다음 바이트(즉, 바이트 1)는 "이상한" 것으로 간주되며 PGP 홀수 워드 테이블을 사용하여 인코딩된다. 이 과정은 모든 바이트가 인코딩될 때까지 반복된다. 따라서 "E582"는 "가장 높은 이스탄불"을, "82E5"는 "미저 희화화"를 생산한다.

16진수로 표시된 PGP 공용 키 지문

E582 94F2 E9A2 2748 6E8B
061B 31CC 528F D7FA 3F19

다음과 같이 PGP Words("생물학" 지문)에 표시됨

topmost Istanbul Pluto vagabond treadmill Pacific brackish dictator goldfish Medusa
afflict bravadochatter revolver Dupont midsummer stopwatch whimsical cowbell bottomless

bytestring의 바이트 순서는 Endianness에 따라 달라진다.

데이터에 대한 기타 단어 목록

음성 채널을 통해 명확하고 모호하지 않은 방식으로 데이터를 전달하기 위한 몇 가지 다른 단어 목록이 있다.

  • NATO 음성 알파벳은 개별 문자와 숫자를 개별 단어에 매핑한다.
  • S/KEY 시스템은 공개적으로 접근할 수 있는 2048단어 사전에서 64비트 숫자를 각각 1~4자씩의 짧은 단어 6개에 매핑한다. 같은 사전이 RFC 1760과 RFC 2289에서 사용된다.
  • 다이스웨어 시스템은 5개의 base-6 무작위 숫자(거의 엔트로피 13비트)를 7,776개의 구별되는 단어의 사전에서 단어에 매핑한다.
  • FIPS 181: 자동 비밀번호 생성기는 임의의 숫자를 다소 발음 가능한 "words"로 변환한다.
  • 니모닉 인코딩은 32비트의 데이터를 1626단어의 어휘에서 3단어로 변환한다.[5]
  • 어떤 3개의 단어가 지리 좌표를 사전 3개의 단어로 부호화한다.
  • BIP39 표준은 키를 오프라인으로 저장할 목적으로 고정 크기(암호화폐 지갑의 암호화되지 않은 마스터 키 128비트 또는 256비트)의 암호화 키를 시드 구문으로 알려진 읽기 쉬운 단어의 짧은 순서로 변환하는 것을 허용한다. 이것은 비트코인이나 모네로 같은 가상화폐에 사용된다.

참조

이 문서는 PGP Corporation이 저작권을 소유하고 있으며 GNU 무료 문서 사용 허가서에 따라 라이센스가 부여된 자료를 포함하고 있다. (Jon Callas, CTO, CSO PGP Corporation, 2007년 1월 4일 기준)
  1. ^ Juola, Patrick; Zimmermann, Philip (1996). "Whole-Word Phonetic Distances and the PGPfone Alphabet" (PDF). Proceedings of the International Conference of Spoken Language Processing (ICSLP-96). 1: 98–101. doi:10.1109/ICSLP.1996.607046. ISBN 0-7803-3555-4. S2CID 10385500.
  2. ^ Juola, Patrick (1996). "Isolated Word Confusion Metrics and the PGPfone Alphabet". Proceedings of New Methods in Language Processing 2. Ankara, Turkey: Oxford University, Dept. of Experimental Psychology. arXiv:cmp-lg/9608021. Bibcode:1996cmp.lg....8021J.
  3. ^ https://web.archive.org/web/20100326141145/http:///web.mit.edu/network/pgpfone/manual/index.html#PGP000062
  4. ^ "EFF's New Wordlists for Random Passphrases". 19 July 2016.
  5. ^ 니모닉 인코딩 Wayback Machine에 2008-03-02 보관