2012-04-24 3 views
0

그래서 RSA * rsa 키의 바이너리 데이터를 올바르게 작성하는 방법이 궁금합니다. 나는tcp를 통해 RSA 공개 키를 보내는 방법은 무엇입니까?

RSA *rsa = RSA_generate_key(2048, 65537, 0, 0); 
uchar *pp = (uchar *)malloc(2560); 
int bytes = i2d_RSAPublicKey(rsa, &pp); 
write(client, pp, bytes); 

을하고 리시버는 d2i_RSAPublicKey 프로그램 충돌을한다. 내가 뭘 잘못 했니?

답변

0

malloc을 사용하지 마십시오. pp 직접 NULL로 설정하십시오. i2d_RSAPublicKey 당신을 위해 malloc을 할 것이고 새로 설정 한 malloced 공개 키를 가리 키도록 pp를 설정할 것입니다.

관련 문제