J'utilise la bibliothèque bouncycastle.openpgp pour obtenir les dates de validité d'une clé PGP. Une clé PGP peut être considérée comme n'expirant jamais si key.getValidDays() == 0. Comment faire la différence entre une clé valide une fois expirée et une clé n'expirant jamais?Différencier PGP sous-clé qui est expiré vs celui qui n'expire jamais - Java bouncycastle
0
A
Répondre
1
Une clé expirée aura des valeurs getValidDays non nulles, car elles sont spécifiées par rapport à la date de création et non à la date actuelle.
getValidDays
public int getValidDays()
Returns:
number of valid days from creation time - zero means no expiry.
I.e. vous devriez être en mesure de faire la différence entre les clés qui n'expirent jamais et les clés valides/expirées, avec le code comme ceci:
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)
}
Merci @zeppelin. J'étais en train de tester un cas où j'ai créé une clé (en utilisant GPG Tool) aujourd'hui et j'ai essayé de fixer la date d'expiration à 100 ans mais je ne l'ai pas fait et elle est devenue par défaut date d'expiration et donc expirée la clé. Donc, dans ce cas, key.getValidSeconds() était 0 et la clé a expiré. Je sais que ce n'est pas un cas d'utilisation dans le monde réel. Merci pour votre réponse. –