To generate new RSA256 key use commands:
openssl genrsa -out jwt.pem 2048
openssl rsa -in jwt.pem -pubout -outform PEM -out jwt_public_key.pem
openssl pkcs8 -topk8 -inform PEM -in jwt.pem -out jwt_private_key.pem -nocryptjwt_public_key.pem:
-----BEGIN PUBLIC KEY-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDGhij7UtZU765L8hUO97e7h4wT
CjzTPSOj1UipZN(...other encoded data)
-----END PUBLIC KEY-----
jwt_private_key.pem:
-----BEGIN PRIVATE KEY-----
MIICdwIBADANBgkqhkiG9w0BAQEFAASCAmEwggJdAgEAAoGBAMaGKPtS1lTvrkvy
FQ73t7uHjBMKP(...other encoded data)
-----END PRIVATE KEY-----
To generate new RSA256 key in Java use code:
KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance("RSA");
keyPairGenerator.initialize(2048);
KeyPair keyPair = keyPairGenerator.generateKeyPair();
PrivateKey privateKey = keyPair.getPrivate();
PublicKey privateKey = keyPair.getPublic();