# gpg 는 GnuPG(Privacy Guard)의 OpenPGP 부분을 구현한 암복호화 프로그램이다.
# OpenPGP(Pretty Good Privacy) 스펙(https://www.ietf.org/rfc/rfc4880.txt)
# 처음에는 키를 생성을 해야 한다.
# 여러번 실행해서 여러개의 키를 생성할 수도 있다.
gpg --gen-key
... 생략 ...
Real name: ysoftman
Email address: ysoftman@123.com
... 생략 ...
We need to generate a lot of random bytes
... 생략 ...
Passphrase(암호) 입력 화면이 나온다.
# 만약 진행 안되고 타임아웃되면 rm -rf ~/.gnupg 를 삭제하고 다시 시도해야 한다.
# 성공했으면 ~/.gnupg 에 관련 파일이 생성된다.
# public 키 확인
gpg --list-keys
# secrect 키 확인
gpg --list-secret-keys
# 테스트 파일 생성
cat > msg.txt << zzz
this is test message.
이건테스트메시지입니다.
zzz
# 암호화하면 암호화된 msg.txt.gpg 파일이 생성된다.
# -e --encrypt
# -r --recipient 키 생성할때 입력한 사용자 이름 ysoftman
gpg -e -r ysoftman msg.txt
# 복호화
# 최초 복호화시 ysoftman 키 생성시 입력 한 암호 입력해야 한다.
# -o --output
# -d --decrypt
gpg -o out.txt -d msg.txt.gpg