读书人

读RSA私钥(有加密)失败解决方法

发布时间: 2012-08-10 12:19:33 作者: rapoo

读RSA私钥(有加密)失败
分不是问题,问题是没分


相关代码如下:


//...

RSA *rsaK;
BIO *BP ;

char FileName[256],PSW[80];

//...

PEM_write_bio_RSAPrivateKey(BP,rsaK,EVP_des_ede3_cbc(),NULL,0,NULL,NULL);//私钥文件是这个函数写的

//...
//下面的读取不成功
cout<<"请输入要读取的私钥文件名"<<endl;
cin>>FileName;
BP=BIO_new(BIO_s_file());
BIO_read_filename(BP,FileName);

cout<<"请输入加密私钥文件的密钥"<<endl;
cin>>PSW;

rsaK=PEM_read_bio_RSAPrivateKey(BP,NULL,NULL,PSW);

if(rsaK==NULL){//出错地方,rsaK==NULL恒成立- -!
cout<<"Error Occured - -!"<<endl;
BIO_free(BP);
RSA_free(rsaK);
return -1;
}

...



[解决办法]
没有填充方式参数?
[解决办法]

C/C++ code
rsaK=PEM_read_bio_RSAPrivateKey(BP,NULL,NULL,PSW);  // 这样调用对吗?
[解决办法]
唉,你发了这么多帖,我就直接COPY了
你的代码里少了一句:
OpenSSL_add_all_algorithms();//加载各种加解密算法

读书人网 >C++

热点推荐