Devo generare una CA radice autofirmata e usarla per emettere i certificati a livello di programmazione. Sono nuovo di sicurezza e certificati e penso che mi manchino alcuni pezzi necessari per far funzionare tutto insieme.
Da quanto ho capito, ho bisogno di generare un certificato X509 usando lo strumento keytool Java per agire come root CA e quindi usare la sua chiave privata per firmare i nuovi certificati che sto generando usando Bouncy Castle in fase di runtime.
Ho generato un nuovo certificato utilizzando keytool e il seguente comando:
keytool -genkey -keyalg RSA -alias selfsigned -keystore keystore.jks -storepass password -validity 360 -keysize 2048
Quando ho provato a leggere questo keystore e il certificato a livello di codice, ho scoperto che la chiave privata del certificato non è memorizzata nel keystore o non c'era modo di leggere la chiave privata.
Ho le seguenti domande:
-
Come faccio a generare una CA radice usando keytool?
-
Quale dovrebbe essere il formato di output della CA radice in modo da poter leggere la chiave privata? Il mio attuale approccio di scrivere il cert su un keystore è sbagliato?