以服务server-one和server-two之间使用RestTemplate调用为例
一、生成密钥
需要生成server-one和server-two的客户端密钥和一个信任库密钥
1、生成TrustStore(信任库)
keytool -genkey -alias trustkeys -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore trustKeys.p12 -validity 36500
2、生成server-one客户端密钥
keytool -genkey -alias server-one -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore server-one.p12 -validity 36500
3、生成server-two客户端密钥
keytool -genkey -alias server-two -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore server-two.p12 -validity 36500
- genkey 表示要创建一个新的密钥。
- alias 表示 keystore 的别名。
- keyalg 表示使用的加密算法是 RSA ,一种非对称加密算法。
- keysize 表示密钥的长度。
- keystore 表示生成的密钥存放位置。
- validity 表示密钥的有效时间,单位为天。
二、导出客户端公钥添加到信任库
1、导出server-one的公钥
keytool -keystore server-one.p12 -export -alias server-two -file server-one-publicKey.cer
2、导出server-two的公钥
keytool -keystore server-two.p12 -export -alias server-two -file server-two-publicKey.cer