
GPG2 키에서 지문을 추출하려고 합니다. 그러면 pass init $GPG2_FINGERPRINT
초기화를 위해 지문이 전달됩니다.
아래 예에서는 지문 값을 원합니다 0126E6FFD15E33B8BCE7B748E79142F98581FC60
.
$ gpg2 --list-signatures
pub rsa2048 2021-10-14 [SCEA]
0126E6FFD15E33B8BCE7B748E79142F98581FC60
uid [ unknown] User 1 (User 1) <[email protected]>
sig 3 E79142F98581FC60 2021-10-14 User 1 (User 1) <[email protected]>
sub rsa2048 2021-10-14 [SEA]
sig E79142F98581FC60 2021-10-14 User 1 (User 1) <[email protected]>
하위 키를 사용할 때도 지문이 반환됩니다 --with-colons
. 하위 정보 없이 깨끗한 출력을 얻는 방법은 무엇입니까?
생략 --list-keys
하고 사용 하면 --with-fingerprint
매우 가까워집니다... 경고가 표시될 것으로 예상합니다 gpg: WARNING: no command supplied. Trying to guess what you mean
. 깨끗한 출력을 얻기 위해 경고를 리디렉션할 수 있지만 올바른 명령을 사용하고 싶습니다.
이 작업을 수행할 수 있는 다른 방법이 있나요? 궁극적인 목표는 pass
스크립트를 통해 GPG 키를 설정하는 것입니다(사용자 상호 작용 없음).
$ gpg2 --with-fingerprint --with-colons ./pubring.kbx
gpg: WARNING: no command supplied. Trying to guess what you mean ...
pub:-:2048:1:E79142F98581FC60:1634220843:::-:
fpr:::::::::0126E6FFD15E33B8BCE7B748E79142F98581FC60:
uid:::::::::User 1 (User 1) <[email protected]>:
sub:-:2048:1:213A9C4C15D3AAA9:1634220843::::
답변1
하위 키를 사용할 때도 지문이 반환됩니다
--with-colons
.
이 옵션은 --with-colons
기계가 구문 분석할 수 있는 형식으로 출력을 내보내므로 올바른 선택입니다.
하위 정보 없이 깨끗한 출력을 얻는 방법은 무엇입니까?
나는 이것을 에 파이핑하는 것을 제안합니다 awk
. 출력 --with-colons
은 정규화되고 각 행은 필드 1의 데이터 유형을 갖습니다. 데이터 유형이 있는 모든 행은 pub
공개 키(하위 키와 반대)를 나타내고 후속 행(데이터 유형 fpr
)에는 필드 10의 지문 문자열이 포함됩니다.
awk
이를 통해 "pub:"으로 시작하는 라인을 스캔하고 후속 라인에서 필드 10의 지문을 처리함으로써 출력 구문 분석이 간단해집니다.
예를 들어 다음은 키링의 모든 공개 키 지문을 인쇄합니다.
gpg --with-colons -k | awk -F: '/^pub:.*/ { getline; print $10}'