1. 生成证书 有效期 100年
2. 证书的名称 : pubKey
3.生成证书所需的盐值:7018 @z1
在java项目中使用rsa非对称加密 只需要生成 证书:pubKey.jks还有生成的公钥。一般不使用私钥。如果加密和解密只需要公钥和证书
开始操作
1.生成有效期100年的证书
keytool -genkeypair -alias pubKey -keyalg RSA -storetype PKCS12 -keysize 1024 -keypass 7018 @z1 -keystore pubKey.jks -storepass 7018 @z1 -validity 36500
2.查询公钥
keytool -list -rfc --keystore pubKey.jks | openssl x509 -inform pem -pubkey
-----BEGIN PUBLIC KEY----- MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCcvspFhUdaNDvIPcIJdfgnSh1C 2PML6Wzh p9Zz0YPVy9lQ/OedNEz3hDq5gmPoANlXo5bPinXxZhxnNhrypVO9j08 C6T0HAqnZPMWZuOKhqZHOAspZ0nBIzgBXrxvFbibnoH9IfLC0Ox64uCR 136tRFr tgRzoo2jeT1uBqeKyQIDAQAB -----END PUBLIC KEY----- -----BEGIN CERTIFICATE----- MIICbjCCAdegAwIBAgIEJvNmYTANBgkqhkiG9w0BAQsFADBpMQswCQYDVQQGEwJj bjEPMA0GA1UECAwG5rWZ5rGfMQ8wDQYDVQQHDAbmna3lt54xETAPBgNVBAoTCHBp bmdwb25nMREwDwYDVQQLEwhwaW5ncG9uZzESMBAGA1UEAwwJ6ZmI5L2z5LmQMCAX DTIyMDYwOTA2MzUwMloYDzIxMjIwNTE2MDYzNTAyWjBpMQswCQYDVQQGEwJjbjEP MA0GA1UECAwG5rWZ5rGfMQ8wDQYDVQQHDAbmna3lt54xETAPBgNVBAoTCHBpbmdw b25nMREwDwYDVQQLEwhwaW5ncG9uZzESMBAGA1UEAwwJ6ZmI5L2z5LmQMIGfMA0G CSqGSIb3DQEBAQUAA4GNADCBiQKBgQCcvspFhUdaNDvIPcIJdfgnSh1C2PML6Wzh p9Zz0YPVy9lQ/OedNEz3hDq5gmPoANlXo5bPinXxZhxnNhrypVO9j08C6T0HAqn ZPMWZuOKhqZHOAspZ0nBIzgBXrxvFbibnoH9IfLC0Ox64uCR 136tRFrtgRzoo2j eT1uBqeKyQIDAQABoyEwHzAdBgNVHQ4EFgQURew5ceRZMa7 lEk8o7l73sa6yQ0w DQYJKoZIhvcNAQELBQADgYEAGD6acYD3YNrglHfyCPWSfb7agG38o/EkCnDFK A9 JPJKYMXnMgma56YnTPUFmx0TOA6sHEEdASoQxfb1DYdMP9D2Q/YNoDKwSVGszwYK g7AnkedSburSw3gD8Q6jZPxeje88whxg0XXcrUHEoD3WjDdY69N2Ilm51dsLTO2b qEg= -----END CERTIFICATE-----
3.查看私钥 3.证书需要先转换pfx格式 keytool -v -importkeystore -srckeystore pubKey.jks -srcstoretype jks -srcstorepass 7018 @z1 -destkeystore pubKey.pfx -deststoretype pkcs12 -deststorepass 7018 @z1 -destkeypass 7018 @z1
3.2 提取私钥 屏幕上显示 openssl pkcs12 -in abc.pfx -nocerts -nodes
-----BEGIN PRIVATE KEY----- MIICdwIBADANBgkqhkiG9w0BAQEFAASCAmEwggJdAgEAAoGBAJy ykWFR1o0O8g9 wgl1 CdKHULY8wvpbOH6n1nPRg9XL2VD85500TPeEOrmCY gA2Vejls KdfFmHGc 2GvKlU72PTwLpPQcCqdk8xZm44qGpkc4CylnScEjOAFevG8VuJuegf0h8sLQ7Hri 4JH7Xfq1EWu2BHOijaN5PW4Gp4rJAgMBAAECgYArMH73jPPOLRpT4IB4ruLDoK5T XwgJPjZcRfxmeLBrRbCvjHuyK6oBSq0KrHvx8Ts UUGUbpqE89M/auJPQTDGc4my 3aJM XtT0ZPyPdoqCwL2rxuN1eJCwy eA7D2gNhybSm7nWbAYms0u1uLZZgfkKdU RSaKGK9MraJomwTnyQJBAOf9UcBSjZoClu2QO0Hjh/hazEmwktJrUNIjaPVe1fPr V5I8t5eK3sfLXnqX6b2QesrQbNtq7j37VxlCKD5fPd8CQQCs99YAvJo6H7E bZq6 q5NzqDL4TWtEFu/xGZGIFiVIt5YFsL9F0IRFTOZxheOf/wtfc 7T3lg8xbYlpNIU 3vxXAkEAy1d7JLw3adsDN8/IYQRy1fmgPqcKym1ONiLbiNdLabXK2F9n/Oi4RR 4 /HPTaVkOiF8QS3L6yFFaEsWuSJ1quQJADiIWF2tRwswSJIK6MOSSINIukAFrcV3a bz3imVcN5toxZPejOWYnWK5G6iHBjrI9UKhdbGxvk0 oaX0FOXVa8wJBAKp/gvmi enecjJt 4dkegNd1GB77W8sOHLlRcPwox1hOw1Sts4Cq8USqEtbeqzf6CNxR2GGq bGFLkKzRWruKX78= -----END PRIVATE KEY-----