Linux로 개인 정보를 보호하십시오 gpg
명령. 비밀을 안전하게 지키기 위해 세계적 수준의 암호화를 사용하십시오. gpg를 사용하여 키로 작업하고 파일을 암호화하고 해독하는 방법을 보여줍니다.
GPG (GnuPrivacy Guard)를 사용하면 의도 한 수신자 만 파일을 해독 할 수 있도록 파일을 안전하게 암호화 할 수 있습니다. 특히 GPG는 “OpenPGP”표준을 준수합니다. PPG (Pretty Good Privacy)라는 프로그램을 모델로합니다. PGP는 1991 년 Phil Zimmerman에 의해 작성되었습니다.
GPG는 1 인당 2 개의 암호화 키를 사용합니다. 각 사람은 은밀한 열쇠와 공공의 키. 공개 키는 개인 키를 사용하여 암호화 된 것을 해독 할 수 있습니다.
파일을 안전하게 보내려면 개인 키로 파일을 암호화하십시오 과 수신자의 공개 키 파일을 해독하려면 개인 키가 필요합니다 과 공개 키.
여기에서 공개 키를 공유해야 함을 알 수 있습니다. 파일을 암호화하려면 수신자의 공개 키가 있어야하고 수신자는 파일을 해독하려면 공개 키가 필요합니다. 공개 키를 공개로 만드는 데 위험은 없습니다. 실제로, 우리가 보게 될 바로 그 목적을위한 공개 키 서버가 있습니다. 개인 키는 개인 키로 유지해야합니다. 공개 키가 공개 도메인에 있으면 개인 키를 비밀로 유지해야합니다.
GPG를 설정하는 것보다 GPG를 설정하는 단계가 더 많습니다. 고맙게도 일반적으로 한 번만 설정하면됩니다.
키 생성
그만큼 gpg
명령은 Ubuntu, Fedora 및 Manjaro를 포함하여 확인 된 모든 Linux 배포에 설치되었습니다.
이메일에 GPG를 사용할 필요는 없습니다. 파일을 암호화하여 다운로드 할 수있게하거나 수신자에게 물리적으로 전달할 수 있습니다. 그러나 생성 한 키와 이메일 주소를 연결해야하므로 사용할 이메일 주소를 선택하십시오.
다음은 키를 생성하는 명령입니다. 그만큼 --full-generate-key
옵션은 터미널 창의 대화식 세션에서 키를 생성합니다. 암호 문구를 입력하라는 메시지도 표시됩니다. 암호 문구가 무엇인지 기억하십시오. 구두점과 함께 결합 된 3 ~ 4 개의 간단한 단어는 암호와 암호 구를위한 강력하고 강력한 모델입니다.
gpg --full-generate-key
메뉴에서 암호화 유형을 선택하라는 메시지가 표시됩니다. 타당한 이유가 없으면 다음을 입력하십시오. 1
Enter를 누르십시오.
암호화 키의 비트 길이를 선택해야합니다. Enter를 눌러 기본값을 승인하십시오.
키의 지속 시간을 지정해야합니다. 시스템을 테스트하는 경우 다음과 같이 짧은 기간을 입력하십시오 5
5 일 동안. 이 키를 유지하려면 1 년 동안 1 년과 같이 더 긴 기간을 입력하십시오. 키는 12 개월 동안 지속되므로 1 년 후에 갱신해야합니다. 당신의 선택을 확인 Y
.
이름과 이메일 주소를 입력해야합니다. 원하는 경우 의견을 추가 할 수 있습니다.
암호 문구를 입력하라는 메시지가 표시됩니다. 키로 작업 할 때마다 암호가 필요하므로 그 암호가 무엇인지 알아야합니다.
클릭 OK
암호를 입력하면 버튼을 누릅니다. 작업하면서이 창이 나타납니다. gpg
비밀번호 문구를 기억해야합니다.
키 생성이 수행되고 명령 프롬프트로 돌아갑니다.
해지 인증서 생성
개인 키가 다른 사용자에게 알려지면 새 키를 생성 할 수 있도록 이전 키를 사용자 ID에서 분리해야합니다. 이렇게하려면 해지 인증서가 필요합니다. 우리는 지금 이것을하고 안전한 곳에 보관할 것입니다.
그만큼 --output
옵션 뒤에 생성하려는 인증서의 파일 이름이 와야합니다. 그만큼 --gen-revoke
옵션 원인 gpg
해지 인증서를 생성합니다. 키 생성시 사용한 이메일 주소를 제공해야합니다.
gpg --output ~/revocation.crt --gen-revoke dave-geek@protonmail.com
인증서 생성을 확인하는 메시지가 표시됩니다. 프레스 Y
Enter를 누르십시오. 인증서를 생성하는 이유를 묻는 메시지가 표시됩니다. 사전에이 작업을 수행 할 때 확실하지 않습니다. 프레스 1
그럴듯한 추측으로 Enter를 누르십시오.
원하는 경우 설명을 입력 할 수 있습니다. 설명을 마치려면 Enter를 두 번 누르십시오.
설정을 확인하라는 메시지가 표시되면 Y
Enter를 누르십시오.
인증서가 생성됩니다. 이 인증서를 안전하게 유지해야한다는 메시지가 표시됩니다.
Mallory라는 사람을 언급합니다. 암호화 토론은 오랫동안 Bob과 Alice를 두 사람이 의사 소통하는 데 사용했습니다. 다른 지원 문자가 있습니다. Eve는 도청 자이며 Mallory는 악의적 인 공격자입니다. 우리가 알아야 할 것은 인증서를 안전하고 안전하게 유지해야한다는 것입니다.
최소한 인증서와는 별도로 권한을 모두 삭제합시다.
chmod 600 ~/revocation.crt
확인합시다 ls
현재 권한이 무엇인지 확인하십시오.
ls -l
저건 완벽 해. 파일 소유자 이외의 다른 사람은 인증서를 사용하여 아무것도 할 수 없습니다.
다른 사람의 공개 키 가져 오기
다른 사람이 해독 할 수있는 메시지를 암호화하려면 공개 키가 있어야합니다.
파일에 키가 제공된 경우 다음 명령을 사용하여 키를 가져올 수 있습니다. 이 예제에서 키 파일은 “mary-geek.key”입니다.
gpg --import mary-geek.key
키를 가져 오면 해당 키와 관련된 이름과 이메일 주소가 표시됩니다. 분명히, 그것은 당신이 그것을받은 사람과 일치해야합니다.
키가 필요한 사람이 키를 공개 키 서버에 업로드했을 수도 있습니다. 이 서버는 전 세계 사람들의 공개 키를 저장합니다. 키 서버는 정기적으로 서로 동기화되므로 키를 보편적으로 사용할 수 있습니다.
MIT 공개 키 서버는 널리 사용되는 키 서버이며 정기적으로 동기화되는 서버이므로 검색이 성공해야합니다. 누군가 최근에 키를 업로드 한 경우 표시되는 데 며칠이 걸릴 수 있습니다.
그만큼 --keyserver
옵션 뒤에는 검색하려는 키 서버의 이름이 와야합니다. 그만큼 --search-keys
옵션 뒤에는 검색 할 사람의 이름 또는 이메일 주소가 와야합니다. 다음 이메일 주소를 사용합니다 :
gpg --keyserver pgp.mit.edu --search-keys mary-geek@protonmail.com
일치하는 항목이 나열되고 번호가 매겨집니다. 하나를 가져 오려면 숫자를 입력하고 Enter를 누르십시오. 이 경우 단일 일치 항목이 있으므로 1
Enter를 누르십시오.
키를 가져 오면 해당 키와 관련된 이름과 이메일 주소가 표시됩니다.
키 확인 및 서명
다른 사람이 공개 키 파일을받은 경우 해당 파일이 해당 사용자에게 속한다고 말할 수 있습니다. 공개 키 서버에서 다운로드 한 경우 키가 원하는 사람의 키인지 확인해야 할 수도 있습니다.
그만큼 --fingerprint
옵션 원인 gpg
4 개의 16 진 문자로 구성된 10 개의 짧은 시퀀스를 만듭니다. 상대방에게 열쇠의 지문을 보내달라고 요청할 수 있습니다.
그런 다음 --fingerprint
16 진수 문자와 동일한 지문 시퀀스를 생성하고 비교할 수 있습니다. 일치하면 키가 해당 사람의 것임을 알 수 있습니다.
gpg --fingerprint mary-geek@protonmail.com
지문이 생성됩니다.
키가 정품이며 관련이있는 사람이 소유하고 있다고 확신하면 키에 서명 할 수 있습니다.
이 작업을 수행하지 않아도 해당 메시지를 사용하여 상대방과 메시지를 암호화 및 해독 할 수 있습니다. 그러나 gpg
키가 서명되지 않았기 때문에 계속 진행할 것인지 묻는 메시지가 나타납니다. 우리는 적절한 이름을 사용합니다 --sign-key
옵션을 선택하고 사람의 이메일 주소를 제공하여 gpg
서명 할 키를 알고 있습니다.
gpg --sign-key mary-geek@protonmail.com
키와 사람에 대한 정보가 표시되며 키에 실제로 서명하고 있는지 확인하라는 메시지가 표시됩니다. 프레스 Y
Enter 키를 눌러 키에 서명하십시오.
공개 키를 공유하는 방법
키를 파일로 공유하려면 키를 파일에서 내 보내야합니다. gpg
로컬 키 저장소. 이를 위해 우리는 --export
키를 생성하는 데 사용한 이메일 주소가 뒤에 와야합니다. 그만큼 --output
옵션 뒤에 키를 내보내려는 파일의 이름이 와야합니다. 그만큼 --armor
옵션은 말한다 gpg
이진 파일 대신 ASCII 갑옷 출력을 생성합니다.
gpg --output ~/dave-geek.key --armor --export dave-geek@protonmail.com
키 파일 내부를 살펴볼 수 있습니다. less
.
less dave-geek.key
열쇠는 모든 영광을 보여줍니다 :
공개 키 서버에서 공개 키를 공유 할 수도 있습니다. 그만큼 --send-keys
옵션은 키를 키 서버로 보냅니다. 그만큼 --keyserver
옵션 뒤에 공개 키 서버의 웹 주소가 와야합니다. 전송할 키를 식별하려면 명령 행에 키의 지문이 제공되어야합니다. 네 문자 집합 사이에는 공백이 없습니다.
(키를 사용하여 키의 지문을 볼 수 있습니다. --fingerprint
선택권.)
gpg --send-keys --keyserver pgp.mit.edu 31A4E3BE6C022830A804DA0EE9E4D6D0F64EEED4
키가 전송되었다는 확인 메시지가 나타납니다.
파일 암호화
이제 파일을 암호화하여 Mary에게 보낼 준비가되었습니다. 파일 이름은 Raven.txt입니다.
그만큼 --encrypt
옵션은 말한다 gpg
파일을 암호화하고 --sign
옵션은 세부 사항으로 파일에 서명하도록 지시합니다. 그만큼 --armor
옵션은 gpg에게 ASCII 파일을 만들도록 지시합니다. 그만큼 -r
(받는 사람) 옵션 뒤에 파일을 보내는 사람의 이메일 주소가 와야합니다.
gpg --encrypt --sign --armor -r mary-geek@protonmail.com
파일은 원본과 이름은 같지만 파일 이름에 “.asc”가 추가되어 만들어집니다. 내부를 살펴 봅시다.
less Raven.txt.asc
파일을 완전히 읽을 수 없으며 공개 키와 Mary의 개인 키를 가진 사람 만 해독 할 수 있습니다. 두 사람 모두를 가진 유일한 사람은 Mary 여야합니다.
이제 아무도 파일을 해독 할 수 없다고 확신하여 파일을 Mary에게 보낼 수 있습니다.
파일 해독
Mary가 답장을 보냈습니다. coded.asc라는 암호화 된 파일에 있습니다. 우리는 그것을 사용하여 매우 쉽게 해독 할 수 있습니다 --decrypt
선택권. 출력을 plain.txt라는 다른 파일로 리디렉션합니다.
우리는 말할 필요가 없습니다 gpg
파일의 출처 파일의 암호화 된 내용에서이를 해결할 수 있습니다.
gpg --decrypt coded.asc > plain.txt
plain.txt 파일을 살펴 보겠습니다.
less plain.txt
파일이 성공적으로 해독되었습니다.
키 새로 고침
주기적으로 요청할 수 있습니다 gpg
공개 키 서버에 대해 키를 확인하고 변경된 키를 새로 고칩니다. 몇 개월마다 또는 새 연락처로부터 키를받을 때이 작업을 수행 할 수 있습니다.
그만큼 --refresh-keys
옵션 원인 gpg
확인을 수행하십시오. 그만큼 --keyserver
옵션 뒤에 선택한 키 서버가 와야합니다. 공개 키 서버간에 키가 동기화되면 어떤 키를 선택해도 상관 없습니다.
gpg --keyserver pgp.mit.edu --refresh-keys
gpg
확인한 키를 나열하고 변경 및 업데이트 된 경우 알려줍니다.
프라이버시는 뜨거운 주제입니다
개인 정보 보호는 요즘 뉴스에서 멀지 않습니다. 정보를 안전하게 보호하려는 이유가 무엇이든, gpg
파일 및 통신에 매우 강력한 암호화를 적용 할 수있는 간단한 수단을 제공합니다.
사용하는 다른 방법이 있습니다 gpg
. Enigmail이라는 Thunderbird 용 플러그인을 얻을 수 있습니다. 그것은 바로 당신에 연결 gpg
Thunderbird 내부에서 전자 메일 메시지를 암호화 할 수 있도록 구성합니다.