GPG로 암호화되고 서명된 파일이 있습니다.
에서gpg 매뉴얼 페이지, --decrypt
옵션에 대해 다음과 같이 말합니다.
해독된 파일에 서명이 있으면 서명도 확인됩니다.
"파일에 서명된 경우" 서명이 유효한지 확인하는 것 이상의 작업을 수행하고 싶습니다.
- 파일이 있는지 확인~이다서명됨
- 서명이 내 키링에 있는 특정 사용자 또는 사용자 하위 집합의 것인지 확인하세요.
이를 위해 어떤 gpg 명령을 사용할 수 있습니까?
답변1
이 --decrypt
옵션은 이미 대부분의 작업을 수행합니다.
$gpg --decrypt < test.gpg gpg: 4096비트 RSA 키, ID CE7B5510340F19EF로 암호화됨, 2009-10-31 생성됨 "그릇 <[이메일 보호됨]>" WELL(또는 Whole Earth 'Lectronic Link)은 최첨단 기술의 예입니다. 마을, 컴퓨터 게시판. 이런 작은 마을에서 메인 스트리트는 WELL의 경우 최대 64개의 마이크로컴퓨터가 있는 중앙 미니컴퓨터 전화선과 모뎀이라고 불리는 작은 깜박이는 상자로 한 번에 연결될 수 있습니다. gpg: 서명이 작성됨 2015-05-15T07:52:55 EEST gpg: RSA 키 D24F6CB2C1B52632 사용 gpg: "grawity <의 좋은 서명[이메일 보호됨]>" [궁극기] gpg: 일명 "grawity <[이메일 보호됨]>" [궁극기]
기계가 읽을 수 있는 정보의 경우 다음을 사용할 수 있습니다.--status-fd
.
[GNUPG:] ENC_TO CE7B5510340F19EF 1 0 [GNUPG:] BEGIN_DECRYPTION [GNUPG:] DECRYPTION_INFO 2 9 [GNUPG:] PLAINTEXT 62 1431665575 [GNUPG:] NEWSIG [GNUPG:] SIG_ID 8AaWsnfpINFLIVjEqk665x7fuKA 2015-05-15 1431665575 [GNUPG:] GOODSIG D24F6CB2C1B52632 중력 <[이메일 보호됨]> [GNUPG:] NOTATION_NAME[이메일 보호됨] [GNUPG:] NOTATION_DATA 2357E10CEF4F7ED27E233AD5D24F6CB2C1B52632 [GNUPG:] VALIDSIG 2357E10CEF4F7ED27E233AD5D24F6CB2C1B52632 2015-05-15 1431665575 0 4 0 1 10 00 2357E10CEF4F7ED27E233AD5D24F6CB2C1B52632 [GNUPG:] TRUST_ULTIMATE [GNUPG:] 해독_확인 [GNUPG:] GOODMDC [GNUPG:] END_DECRYPTION
GOODSIG
및 여기서는 모두 VALIDSIG
서명이 확인되었으며 TRUST_*
해당 키의 인증 수준에 해당함을 의미합니다. 예를 들어, 직접 서명한(또는 lsigned) 키에는 TRUST_FULL이 있습니다.
이를 키 화이트리스트와 비교하여 VALIDSIG의 지문을 확인하는 스크립트로 래핑하거나 키 신뢰 모델에 의존할 수 있습니다.
당신은할 수 없다PGP는 암호화 전 서명을 사용하므로 파일을 먼저 해독하지 않고 파일이 서명되었는지 확인합니다.
답변2
gpg --decrypt < data.pgp > /dev/null
결과는 다음과 같습니다.
gpg: encrypted with 4096-bit RSA key, ID B91FFCCDDEE362261A, created 2015-05-21
"Shubham Chaudhary <[email protected]>"
gpg: Signature made Mon Aug 21 23:13:03 2017 IST
gpg: using RSA key 71B6BEEFEED2DCA
gpg: issuer "Shubham Chaudhary <[email protected]>"
gpg: Good signature from "Shubham Chaudhary <[email protected]>" [ultimate]