서명 중인 라이센스가 있습니다.
gpg --default-sig-expire "2024-02-14" --sign licence
그 결과는 다음과 같습니다.
$ gpg --verify licence.gpg
gpg: Signature made Tue 13 Feb 2024 08:18:39 AM CET
gpg: using RSA key 1234567890ABCDEF1234567890ABCDEF
gpg: issuer "[email protected]"
gpg: Good signature from "Stewart <[email protected]>" [ultimate]
gpg: Signature expires Wed 14 Feb 2024 12:00:00 PM CET
이것이 12:00:00 PM CET
내 문제입니다. 저는 보통 그 시간에 점심을 먹으러 갑니다. 점심 시간에 시스템이 오프라인 상태라는 전화를 받고 싶지 않습니다. 시간을 지정할 수 있나요? 차라리 만료됐으면 좋겠어요 13:00:00 PM CET
.
--ask-sig-expire
일/주/년 수만 묻는 메시지가 표시됩니다.
$ gpg --ask-sig-expire --sign licence
Please specify how long the signature should be valid.
0 = signature does not expire
<n> = signature expires in n days
<n>w = signature expires in n weeks
<n>m = signature expires in n months
<n>y = signature expires in n years
Signature is valid for? (0)
ISO 8601은 지원되지 않는 것 같습니다.
$ gpg --default-sig-expore "2024-02-14T13:00:00+02:00" --sign licence
gpg: '2024-02-14T13:00:00+02:00' is not a valid signature expiration
이 man systemd.time
사양은 지원되지 않는 것 같습니다.
$ gpg --default-sig-expire "2024-02-14 13:00:00" --sign licence
gpg: '2024-02-14 13:00:00' is not a valid signature expiration
매뉴얼 페이지에는 가능한 시간도 표시되어 있지 않습니다.
--default-sig-expire
The default expiration time to use for signature expiration. Valid values
are "0" for no expiration, a number followed by the letter d (for days),
w (for weeks), m (for months), or y (for years) (for example "2m" for two
months, or "5y" for five years), or an absolute date in the form
YYYY-MM-DD. Defaults to "0".
내가 찾은 유일한 해결책은 시스템의 시간대를 내 서쪽의 다음 시간대로 변경한 다음 서명하고 시스템의 시간대를 다시 원래 시간으로 설정하는 것입니다.
$ sudo mv /etc/localtime{,.backup}
$ sudo ln -s /usr/share/zoneinfo/Europe/London /etc/localtime
$ gpg --default-sig-expire "2024-02-14" --sign licence
$ sudo mv /etc/localtime{.backup,}
$ gpg --verify licence.gpg
gpg: Signature made Tue 13 Feb 2024 08:18:39 AM CET
gpg: using RSA key 1234567890ABCDEF1234567890ABCDEF
gpg: issuer "[email protected]"
gpg: Good signature from "Stewart <[email protected]>" [ultimate]
gpg: Signature expires Wed 14 Feb 2024 01:00:05 PM CET
답변1
--default-sig-expire
시간 사양에서 허용되는 유일한 형식은 다음과 같습니다 YYYYMMddTHHmmss[Z]
.
gpg --default-sig-expire 20240214T130000 --sign license
일광 절약 시간과 마찬가지로 시간대 지정자는 무시되므로 현재 유럽에서는 지정된 시간보다 1시간 늦은 만료 시간이 생성됩니다. 처리 시간 gpg
은 서명의 최종 유효성에도 영향을 미칩니다.예를 들어기존 서명 파일 덮어쓰기를 확인하기 위해) 결과적으로 지연으로 인해 만료 날짜가 지연됩니다.
이를 확인하려면 다음을 찾으십시오.--default-sig-expire
정의, 그런 다음 확인구문 분석 옵션의 값을 사용하십시오.parse_expire_string
,다양한 형식을 알고 있습니다. 절대 타임스탬프(시, 분, 초 포함)를 허용하는 유일한 것은 다음과 같습니다.isotime2epoch
(및 64비트 time_t
변형), 주석으로 지정됨
지원되는 유일한 형식은 공백, nul, 콜론 또는 쉼표로 구분된 "yyyymmddThhmmss[Z]"입니다.