Hier ist , wie Google die Erstellung eines Android-Keystores vorschlägt :
%Vor% Während 10000 Tage wie die Ewigkeit scheinen können, könnten 27 Jahre schneller vergehen, als Sie denken, und RSA könnte noch immer verwendet werden.
Wenn das Optimieren eines Befehlszeilenarguments jetzt eine Chance von 0,01% hat, meinen Marktanteil in der Zukunft zu sparen, bin ich bereit, es zu tun.
FRAGE: Wie wird diese Gültigkeitsdauer so lange wie möglich gemacht?
3,3 Millionen Jahre, wenn ich richtig rechnete.
Ich habe mir die Quelle für keytool angesehen, Ссылка , und es sieht so aus, als ob die Gültigkeitsdauer in Sekunden gespeichert wird, als eine lange. Der größte Wert, den ein long 2 63 - 1 halten kann, ist 106751991167300 Sekunden , was 1235555453 Tagen entspricht, was 3.385.083 Jahren entspricht. Es kann andere Faktoren geben, die einen so großen Wert nicht zulassen, aber dies scheint der maximale Betrag zu sein, den das Tool generieren kann.
"1000 Jahre" Beispiel:
Ich habe "1000 Jahre" JKS Keystore auch ohne Probleme erstellt:
keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 365000
Dann auf Ablaufdatum überprüft:
keytool -list -v -keystore my-release-key.keystore
Der Schlüssel ist also gültig bis Mo Dez 05 14:28:01 GMT 3014
Wenn ich ein paar Versuche durchführe, sehe ich ein praktisches Maximum um das Jahr 9999. Ab heute mit zwei so erstellten Schlüsseln:
keytool -genkey -v -keystore year-9998.keystore -alias myalias -keyalg RSA -keysize 2048 -validity 2914760
keytool -genkey -v -keystore year-10002.keystore -alias myalias -keyalg RSA -keysize 2048 -validity 2916223
Während beide Schlüssel erfolgreich zu erstellen scheinen, überprüfen Sie diese Schlüssel mit folgenden Befehlen:
keytool -list -v -keystore year-9998.keystore
- Läuft OK und gibt "Gültig von: Di Aug 29 11:12:45 CDT 2017 bis: Do Jan 01 10:12:45 CST 9998"
keytool -list -v -keystore year-10002.keystore
- Abstürze mit "keytool error: java.security.cert.CertificateParsingException: java.io.IOException: Parse Generalisierte Zeit, ungültiges Format"
Also ich denke, eine praktische maximale Ablauf ist kurz vor Jahr 10000.
Tags und Links android rsa android-keystore keystore