
KeePass 2.14 설치 파일의 최신 버전에 대한 PGP 서명을 확인하려고 합니다.이것서명을 받았지만 이것이 내가 받은 결과입니다.
C:\Program Files (x86)\GNU\GnuPG>gpg.exe --verify C:\Users\User\Desktop\KeePass-2.14-Setup.exe
gpg: no valid OpenPGP data found.
gpg: the signature could not be verified.
Please remember that the signature file (.sig or .asc)
should be the first file given on the command line.
C:\Program Files (x86)\GNU\GnuPG>
이 명령을 찾았습니다여기, 그러나 ".sig" 또는 ".asc" 파일에 대한 언급이 없으므로 내가 뭔가 잘못했다고 생각했습니다. 읽음으로써매뉴얼 페이지, 나는 다음을 추가로 시도했습니다.
C:\Program Files (x86)\GNU\GnuPG>gpg.exe --pgpfile C:\Users\User\Desktop\KeePass-2.14-Setup.exe
gpg: Invalid option "--pgpfile"
C:\Program Files (x86)\GNU\GnuPG>
보시다시피 결과는 매우 난독합니다...
나는 살펴보았다슈퍼유저의 경우, 그러나 어떤 링크도 내 질문을 실제로 해결하지 못하는 것 같았습니다. 적어도 이 문제를 어떻게 진행해야 할지에 대한 아이디어를 얻을 수 있을 만큼 직접적으로는 충분하지 않았습니다.
OpenPGP의 난해한 기술과 GnuPG 프로그램의 관련 사용에 대해 도움을 줄 수 있는 사람이 있나요? 나는 VBS를 배우는 것이 꽤 멍청하다고 느꼈지만 이것은 굴욕적인 것 이상입니다. IT 기술에 대해 가졌던 모든 자신감을 완전히 쇠약하게 만들고 손상시킵니다. (그리고 다시 말하지만, 아직 A+를 받지 못했기 때문에 자랑할 이유가 없습니다. 인증, ㅋㅋㅋ).
업데이트 2011년 4월 4일
좋아, 그래서 나는 Windows를 가지고 장난치는 것에 지쳤고 Ubuntu를 부팅하여 바로 하기로 결정했습니다. 이것만으로도 상황이 훨씬 더 논리적이 되었습니다!
내 명령 목록과 현재 위치는 다음과 같습니다.
proto@type:~$ cd Desktop/
proto@type:~/Desktop$ gpg --import KeePass-2.14-Setup.exe.asc gpg: no valid OpenPGP data found. gpg: Total number processed: 0
proto@type:~/Desktop$ gpg --import Dominik_Reichl.asc gpg: /home/proto/.gnupg/trustdb.gpg: trustdb created gpg: key FEB7C7BC: public key "Dominik Reichl " imported gpg: Total number processed: 1 gpg: imported: 1
proto@type:~/Desktop$ gpg --verify KeePass-2.14-Setup.exe gpg: no valid OpenPGP data found. gpg: the signature could not be verified. Please remember that the signature file (.sig or .asc) should be the first file given on the command line.
proto@type:~/Desktop$ gpg --verify KeePass-2.14-Setup.exe.asc gpg: Signature made Sun 02 Jan 2011 05:25:24 AM MST using DSA key ID FEB7C7BC gpg: Good signature from "Dominik Reichl " gpg: WARNING: This key is not certified with a trusted signature! gpg: There is no indication that the signature belongs to the owner. Primary key fingerprint: 2171 BEEA D0DD 92A1 8065 5626 DCCA A5B3 FEB7 C7BC
proto@type:~/Desktop$ gpg --verify Dominik_Reichl.asc gpg: verify signatures failed: unexpected data
Mike의 지시에 따라 ".exe" 및 ".asc" 파일을 동일한 디렉터리(데스크톱)에 배치했습니다. 코드에서 볼 수 있듯이 공개 키 "Dominik_Reichl.asc"도 데스크탑 디렉터리에 배치했습니다.
나는 MD5에 완전히 망가졌으므로 잠시 기다려 주십시오. 위의 5단계는 GPG와 동일하다고 가정합니다.
C:\Users\user\>CD Desktop
C:\Users\user\Desktop>MD5Sum KeePass-2.14-Setup.exe
bae59065b24f0a6f2ed4bb9e0d6fc65f *KeePass-2.14-Setup.exe
"KeePass-2.14-Setup.exe" 파일을 데스크탑의 "temp" 폴더로 이동할 때마다 동작이 바뀌기 때문에 이렇게 말하는 것입니다. 명령을 실행하면 다음과 같은 결과가 나옵니다.
proto@type:~/Desktop$ gpg --verify KeePass-2.14-Setup.exe.asc
gpg: no signed data
gpg: can't hash datafile: file open error
이러한 결과를 통해 5단계에서 "DSA 키 ID" 및 "기본 키 지문"을 추출하고 이를 비교해야 한다고 믿게 되었습니다.서명 페이지 상단의 값. 그렇다면 이것이 MD5 검증과 유사한 점입니까? 이게 전부인가요? 아니면 추가 단계가 있나요? 확인하는 데 사용하는 명령이 있나요?이것들둘문자열? 그 문자열이 내가 정말로 확인해야 할 것입니까? 그 문자열은 무엇입니까?
이제 제가 해결해야 할 또 다른 문제가 있습니다. "기본 키 지문" 결과에서 "8065"와 "5626" 사이에 공백이 2개 있습니다. 스프레드시트를 사용하여 서명 페이지의 문자열로 결과를 확인할 때 결과에 추가 공백이 있기 때문에 "FALSE" 결과를 얻습니다. 브라우저가 추가 공백을 무시하고 있는지 확인하기 위해 서명 페이지의 소스를 확인했지만 그렇지 않았습니다.
2171 BEEA D0DD 92A1 8065 5626 DCCA A5B3 FEB7 C7BC # From Source of Signature Page
2171 BEEA D0DD 92A1 8065 5626 DCCA A5B3 FEB7 C7BC # From My Results
추가 공백을 제거하는 한 내 결과는 서명 페이지의 결과와 일치하지만 내 개입 없이도 일치하면 안 되나요? 공백의 차이가 경고의 원인이 되어야 합니까?
불행하게도 GPG 매뉴얼 페이지는 여전히 나에게 매우 모호하거나 일부에서는 "사용자 적대적"("사용자 적대적 gpg"로 검색)이라고 말할 수 있으므로 당근 몇 개를 더 던져야 합니다. 나는 그것을 인정할 것이다: 나는 바보이다. 사실, MD5 검증을 사용하는 방법을 배우는 동안에는 MD5 검증을 사용했을 때만큼이나 MD5 검증을 이리저리 헤맸습니다.
답변1
제공한 첫 번째 명령에서는 .exe 파일이 아닌 .asc 서명 파일을 참조해야 합니다. .exe 파일도 .asc 파일과 동일한 디렉터리에 있어야 합니다.
gpg 매뉴얼 페이지에서:
--확인하다 첫 번째 인수가 서명된 파일 또는 분리된 서명이라고 가정하고 생성 없이 이를 확인합니다. 어떤 출력이든. 인수가 없으면 STDIN에서 서명 패킷을 읽습니다. 시그니처 파일만 제공되는 경우 완전한 서명일 수도 있고 분리된 서명일 수도 있습니다. 이 경우 서명된 내용은 ".sig" 또는 ".asc" 확장자가 없는 파일입니다. 인수가 2개 이상인 경우 첫 번째 인수는 분리되어야 합니다. 서명과 나머지 파일은 서명된 것입니다. STDIN에서 서명된 내용을 읽으려면 '-''를 사용하십시오. 두 번째 파일 이름으로 . 보안상의 이유로 분리된 서명은 서명된 자료를 읽을 수 없습니다. 위의 방식으로 표시하지 않고 STDIN.
답변2
상황이 너무 복잡해 보입니다. :-) 다음에서 DSA 키 ID FEB7C7BC를 검색해 보세요.https://keyserver.pgp.com/vkd/GetWelcomeScreen.event내 생각엔 당신도 이해하는 것 같아요!
답변3
이 게시물은 대부분 "A-to-Z" 분석을 위한 것입니다. 이렇게 하면 이 문제에 봉착한 사람은 모든 댓글을 일일이 살펴보지 않고도 답변을 얻을 수 있습니다. 이에 투표하지 마십시오. 참가자들(Mike Fitzpatrick, grawity 및 Jan Ivar Beddari)에게 공로가 돌아갑니다.
또 다른 한가지:이 게시물을 믿지 마세요! 직관에 반하는 진술이지만 GPG 작동 방식에 대한 결함이 있거나 제한적인 이해를 가지고 이 글을 게시하고 있습니다. 이에 대해 더 잘 이해하게 되면 업데이트하겠습니다. 지금은 그것이 어떻게 작동하는지 잘 모르겠습니다.
- 원하는 사본을 다운로드하세요.키패스, 해당서명, 그리고 즐겨찾는 Linux 배포판의 동일한 디렉터리에 대한 공개 키(제 경우에는 Ubuntu를 사용하고 있으며 데스크톱을 작업 디렉터리로 만들었습니다)
- 이건 중요하다!그만큼공개 키KeePass 웹사이트에서는 다운로드하면 안 됩니다! 다른 사용자가 신뢰하는 공개 키를 다운로드해야 합니다. 해당 사용자가 귀하가 신뢰하는 개인이기를 바랍니다. 어떻게 합니까? 신뢰할 수 있는 공개 키를 갖고 있는 친구에게 사본을 달라고 요청하세요. 하지만 꼭 그런 친구가 있는 것은 아닐 수도 있습니다. Jan Ivar Beddari의 게시물 덕분에 다음에서 Dominik Reichl이 게시한 공개 키를 다운로드할 수 있습니다.여기거기에서 공개 키 가져오기를 사용하세요.
- 터미널 열기(Ubuntu에서는 "CTRL+ALT+T")
- 달리다
cd Desktop/
- 달리다
gpg --import %KEYNAME%.asc
- 달리다
gpg --verify %SIGNATURE%.asc
- 결과 키 지문을 KeePass 웹사이트의 지문과 비교하세요.
keyserver.pgp.com의 공개 키를 사용할 때의 결과는 다음과 같습니다.
proto@type:~$ cd Desktop/
proto@type:~/Desktop$ gpg --import key0xDCCAA5B3FEB7C7BC.asc
gpg: key FEB7C7BC: public key "Dominik Reichl " imported
gpg: Total number processed: 1
gpg: imported: 1
gpg: no ultimately trusted keys found
proto@type:~/Desktop$ gpg --verify KeePass-2.14-Setup.exe.asc
gpg: Signature made Sun 02 Jan 2011 05:25:24 AM MST using DSA key ID FEB7C7BC
gpg: Good signature from "Dominik Reichl "
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: 2171 BEEA D0DD 92A1 8065 5626 DCCA A5B3 FEB7 C7BC
KeePass 웹사이트에서 공개 키를 사용할 때의 결과는 다음과 같습니다.
proto@type:~$ cd Desktop
proto@type:~/Desktop$ gpg --import Dominik_Reichl.asc
gpg: key FEB7C7BC: public key "Dominik Reichl " imported
gpg: Total number processed: 1
gpg: imported: 1
proto@type:~/Desktop$ gpg --verify KeePass-2.14-Setup.exe.asc
gpg: Signature made Sun 02 Jan 2011 05:25:24 AM MST using DSA key ID FEB7C7BC
gpg: Good signature from "Dominik Reichl "
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: 2171 BEEA D0DD 92A1 8065 5626 DCCA A5B3 FEB7 C7BC
보시다시피 "gpg: 궁극적으로 신뢰할 수 있는 키를 찾을 수 없습니다" 부분을 제외하고 결과는 모두 동일합니다. 무엇을 만들어야 할지 잘 모르겠지만 키 지문이 KeePass 웹사이트의 지문과 일치합니다. 이는 파일을 확인할 때 중요합니다. 하지만 이는 공개 키가 신뢰할 수 있는지 확인하는 것과는 크게 다릅니다. 공개 키는 낯선 사람을 신뢰하는지 여부와 같이 사용 여부를 신뢰하는 것입니다. 신뢰할 수 있는 것으로 보이는 한 가지 방법은 여러 개인이 이를 보증하는 것입니다. 이는 공개 키에도 동일합니다. 다시 한번 말씀드리지만, 이는 저의 제한된 범위에 속하므로 귀하도 실사가 필요합니다!
그래도 기다릴 수 있다면 KeePass 사본을 확인할 때 GPG의 적절한 사용을 간결하고 단순하며 정확하게 표현하기 위해 게시물을 천천히 편집하겠습니다.
답변4
중요한 ! 이것은 단지 참고용입니다. 한 플랫폼에서 다른 플랫폼으로(예: Win.에서 Linux로) 마이그레이션하고 KeepAss를 다시 설치하는 경우 올바른 패키지를 설치하고 있는지 확인하세요. 처음에는 저장소에 KeepAssX를 사용할 수 있지만 KeepAss2 데이터베이스를 함께 사용하면 위에서 언급한 오류가 발생합니다..kbdx 데이터베이스에는 KeepAss2 패키지를 사용하십시오.