티스토리 뷰
목표
PGP (또는 GPG)를 이용하여 메일의 보안을 강화해보자
사전지식
Private / Public Key
- Tool 을 사용하여 Private / Public Key 를 생성한다.
- 하나의 Key로 잠그면, 다른쪽 Key 로만 열 수 있다.
활용안 1 - 누구든 나만 볼 수 있는 메시지를 생성할 수 있다.
- Public Key 를 공개한다.
- A라는 사람이 보내고픈 message 와 Public Key 로 암호화 한다.
- 암호화된 message 는 Private Key 를 가지고 있는 나만 풀수 있다. 심지어 A도 복호화 할 수 없다.
<이미지 출처: http://www.infosectoday.com/Articles/Intro_to_Cryptography/Introduction_Encryption_Algorithms.htm>
활용안 2 - 내가 작성한 메시지임을 증명한다. (Signature)
- Public Key 를 공개하고, 그것을 Key server 에 등록한다.
- 내가 보내고픈 1) message 와 2) message + Private Key 로 암호화한 것을 전달한다.
- 받은 사람은 암호화된 것을 공개된 나의 Public Key 로 복호화해서 풀어본다. (Verify)
- 받은 message === 복호화한 값 이면 내가 보낸것이 증명되는 것이다.
<이미지 출처: http://www.infosectoday.com/Articles/Intro_to_Cryptography/Introduction_Encryption_Algorithms.htm>
GPG (또는 PGP)
- PGP (Pretty Good Privacy): RSA 기반의 메일 암호화 프로그램
- GPG (Gnu Privacy Guard): PGP 의 오픈소스 버전
Malivelope
- 링크: https://www.mailvelope.com/en/
- OpenPGP encryption 표준에 따라 암호화된 이메일 교환을 가능하게 하는 브라우저 extenstion 이다. (구글 크롬, 파이어폭스)
- Gmail, Outlook.com 등의 주요 웹메일을 모두 지원한다.
-
해볼것들
1. Private / Public Key 생성하기 2. 내 Private Key 로 암호화된 메일을 전송하고, 이를 Public Key로 복호화해보기 3. 다른 사람의 Publlic Key를 import 하고, 암호화해서 전달해보기 |
* help 페이지만 보아도 잘 설명되어 있다.
https://www.mailvelope.com/en/help
Private / Public Key 생성하기
1) Google Extension 에서 Mailvelope 를 찾아서 설치
- 링크: https://goo.gl/OCzyy
2) Extension 의 옵션에서 Generate Key
2) Display Keys 에서 생성된 것을 확인할 수 있으며
3) Key ID 를 클릭하면 나오는 팝업창에서 Private / Public Key 를 확인, 저장까지 할 수 있다.
암호화 하여 전송하고 복호화 해보기
hotmail → gmail 로 전송해보려 함
1) Gmail, Hotmail 등으로 들어가 메일 작성을 하려 하면, 아이콘이 보인다.
2) 클릭하면 아래와 같은 창이 뜨며,
- 받는 사람에 kiwook.jeong@gmail.com 을 입력하고,
- 원하는 메시지를 입력후 Encript 를 치면 된다.
→ 현재 kiwook.jeong@gmail.com 의 Public Key 를 가지고 있는 상황이며, 이것으로 암호화 하는 것이다.
3) 아래와 같이 암호화된 메시지가 생성되었다. 전송!
4) 이제 gmail 로 가서 수신메일을 열어보자
- 아래와 같은 아이콘이 뜬다.
5) 클릭하면 팝업이 뜨고, Key Generation 시에 작성했던 비밀번호를 넣으면 Private Key 를 사용해서 (당연히 그렇겠지?) 복호화해 보여준다.
다른 사람의 Public Key 를 import 한 다음 message를 Encrypt 하기
반대로 Encrypt 된 message 를 Decript 하기
import 는 간단하다.
1) 다른 사람의 메일주소와
2) 다른 사람의 Public Key 를 넣어주면 된다.
message 를 Encrypt 하기
- (Public Key를 가지고 있는) 사람의 이메일 주소를 넣고
- 메시지를 작성후 Encrypt 하면 된다.
암호화된 메시지가 생성됨
암호화된 메시지를 복사해서 Decript 해보자
1) 내가 Private Key 를 가지고 있는, 나의 Public Key 로 암호화된 메시지를 받아서
2) 복사해 붙여넣고 Decrypt 를 누르면 된다.
친구와 테스트 해보려면
1) Private / Public Key 를 생성하고
2) 친구에서 Public Key 로 메시지를 암호화해 달라고 하고
3) 그걸 위와 같이 복호화 해보면 된다.
'development' 카테고리의 다른 글
x-mouse 로 windows 10 가상 데스크탑 활용하기 (1) | 2019.03.12 |
---|---|
unix time command: real, user, sys (0) | 2019.02.11 |
WSL meets ConEmu - start (0) | 2019.01.31 |
WSL 에서 vim update, 그리고, apt 가 뭐지? (0) | 2019.01.29 |
rtsp - IP CCTV 로 실시간 스트리밍을 보고 저장하자 (1) | 2018.08.01 |
- Total
- Today
- Yesterday
- websocket
- github
- 제이펍
- ChatGPT
- 체호프
- Bug
- 노션
- agile
- 독서
- pool
- strange
- 2023
- 인텔리제이
- golang
- API
- folklore
- JIRA
- 클린 애자일
- notion
- bun
- 잡학툰
- 영화
- go
- OpenAI
- postgres
- 독서후기
- intellij
- Shortcut
- solid
- Gin
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |