在我的项目中,我们想要测试 GPG 密钥过期时我们的产品的行为。所以我们希望密钥在很短的时间内过期,以便频繁地重复测试。
实际上,生成密钥时的提示信息明确表明过期的最小单位是“天”:
Please specify how long the key should be valid.
0 = key does not expire
<n> = key expires in n days
<n>w = key expires in n weeks
<n>m = key expires in n months
<n>y = key expires in n years
Run Code Online (Sandbox Code Playgroud)
但我仍然想问一个问题,以防万一有什么东西可以满足我的需求:是否可以将 GPG 密钥过期时间设置为短于一天(例如,一小时,甚至几分钟)?
如果没有这样的方法,我需要弄清楚如何重复我们的测试,而不必等待一整天。
据我所知,它仅记录在源代码中,但您可以Key is valid for? (0)使用表单在提示符下输入日期时间yyyymmddThhmmss。
例如,要将到期时间设置为 2099 年 3 月 8 日上午 9:34 (UTC),您可以输入20990308T093400。您输入的时区始终被解释为 UTC,尽管您会看到本地时区的确认信息,例如Key expires at Fri Mar 8 10:34:00 2099 +01。
从版本 2.1.20 开始,您还可以在日期时间后附加 aZ来明确表示 UTC ,例如20190308T093400 Z,但不支持输入其他时区。