问题描述
我通过openssl生成DH公共密钥(X.509 DER)到Java服务器。但是服务器解析错误。怎么了? iOS生成DH公钥(X.509 DER)代码:
DH *dh2 = DH_new();
DH_generate_parameters_ex(dh1,512,DH_GENERATOR_2,NULL);
DH_generate_key(dh2);
unsigned char *resutChar = NULL;
int len = i2d_DHparams(dh,&resutChar);
NSData *puKeyData = [NSData dataWithBytes:resutChar length:length11];
Nsstring *puKeyBase64Str = [puKeyData base64EncodedStringWithOptions:0];
puKeyBase64Str发送到Java服务器。
java服务器解析代码:
X509EncodedKeySpec x509KeySpec=new X509EncodedKeySpec(key);
KeyFactory keyFactory=KeyFactory.getInstance(KEY_ALGORITHM);
PublicKey pubKey=keyFactory.generatePublic(x509KeySpec);
DHParameterSpec dhParamSpec=((DHPublicKey)pubKey).getParams();
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)