我正在尝试使用命令行创建证书密钥库文件,但它给了我一个例外:
c:\Program Files\Java\jre7\bin>keytool.exe -genkey -alias srccodes -keyalg AES -
keystore C:\srccodes.jks -keysize 128
Enter keystore password:
Re-enter new password:
keytool error: java.lang.Exception: Cannot derive signature algorithm
答案 0 :(得分:8)
-genkey
选项用于生成公钥和关联的私钥,因此它仅适用于非对称算法(AES是对称的,因此您无法使用-genkey
。
请改用-genseckey
。另请注意,JKS
无法存储非公钥对,因此您必须使用JCEKS
格式来指定此添加-storeType JCEKS
,最后您的命令必须为:
keytool.exe -genseckey-alias srccodes -keyalg AES -keystore C:\srccodes.jceks -keysize 128 -storeType JCEKS
有关详细信息,请查看:Keytool documentation
希望这有帮助,