是否可以将 GPG 密钥过期时间设置为短于一天(例如一小时)?

yao*_*bin 4 gnupg

在我的项目中,我们想要测试 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 密钥过期时间设置为短于一天(例如,一小时,甚至几分钟)?

如果没有这样的方法,我需要弄清楚如何重复我们的测试,而不必等待一整天。

edd*_*ies 6

据我所知,它仅记录在源代码中,但您可以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,但不支持输入其他时区。

  • 尝试使用不是过去的日期时间!当我写这篇文章时,“20190308T093400”是未来的事情,但现在已经过去了。我将更新答案以使用未来的日期时间 (4认同)