0
私はbouncycastle.openpgpライブラリを使用してPGPキーの有効期限を取得しています。 key.getValidDays()== 0の場合、PGPキーは期限切れではないとみなすことができます。有効期限切れの鍵と期限切れの鍵を区別する方法と有効期限切れの鍵を区別する方法はありますか?期限切れのPGPサブキーと期限切れのPGPサブキーを区別する - Java bouncycastle
私はbouncycastle.openpgpライブラリを使用してPGPキーの有効期限を取得しています。 key.getValidDays()== 0の場合、PGPキーは期限切れではないとみなすことができます。有効期限切れの鍵と期限切れの鍵を区別する方法と有効期限切れの鍵を区別する方法はありますか?期限切れのPGPサブキーと期限切れのPGPサブキーを区別する - Java bouncycastle
有効期限の切れた鍵は、現在のものではなく、作成日を基準に指定されているため、0以外のgetValidDaysとなります。
getValidDays
public int getValidDays()
Returns:
number of valid days from creation time - zero means no expiry.
e.e.e.有効期限切れのキーと有効期限の切れていないキーを次のようなコードで区別することができます。
if(key.getValidSeconds() == 0) {
//Never Expiring Key
} else if(Instant.now().isAfter(key.getCreationTime().toInstant().plusSeconds(key.getValidSeconds()))) {
//Expired Key
} else {
//Valid Key (has not expired yet)
}
Thanks @zeppelin私は今日(GPGツールを使用して)キーを作成し、有効期限を100年に設定しようとしたエッジケースをユニットテストしていましたが、それはできませんでした。今日は有効期限としてデフォルトになり、キー。この場合、key.getValidSeconds()は0で、キーは期限切れです。私はこれが実際の世界のユースケースではないことを知っています。ご回答有難うございます。 –