2016-11-18 18 views

答えて

1

有効期限の切れた鍵は、現在のものではなく、作成日を基準に指定されているため、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) 
} 
+0

Thanks @zeppelin私は今日(GPGツールを使用して)キーを作成し、有効期限を100年に設定しようとしたエッジケースをユニットテストしていましたが、それはできませんでした。今日は有効期限としてデフォルトになり、キー。この場合、key.getValidSeconds()は0で、キーは期限切れです。私はこれが実際の世界のユースケースではないことを知っています。ご回答有難うございます。 –

関連する問題