使用php中生成的RSA私钥在c中加密

使用php中生成的RSA私钥在c中加密,php,c,encryption,openssl,private-key,Php,C,Encryption,Openssl,Private Key,我有一个用php中的openssl_pkey_new()生成的RSA私钥。我把它保存在一个txt文件中。在c中可以使用该密钥进行解密吗。 我试过了,但没有成功: RSA *r = PEM_read_RSAPrivateKey("C:/xampp/htdocs/RSA/daten.txt", NULL, NULL, NULL); resultDecrypt = RSA_private_decrypt( 128 /* resultEncrypt*/ , encrypted, decrypted, r

我有一个用php中的openssl_pkey_new()生成的RSA私钥。我把它保存在一个txt文件中。在c中可以使用该密钥进行解密吗。 我试过了,但没有成功:

RSA *r = PEM_read_RSAPrivateKey("C:/xampp/htdocs/RSA/daten.txt", NULL, NULL, NULL);
resultDecrypt = RSA_private_decrypt( 128 /* resultEncrypt*/ , encrypted, decrypted, r, RSA_PKCS1_OAEP_PADDING);
printf("%d from decrypt: '%s'\n", resultDecrypt, decrypted);
RSA_free ( r );

谢谢

只要密钥的格式正确。e、 g.如果c func需要原始字节,那么不要向其提供base64编码文本,那么您应该能够在任何地方使用该键。“php键”与“c键”没有任何区别。这都是aes。这与问题本身无关,但我有点担心您正在将私钥存储到文本文档中。任何对硬盘的写入都会给攻击者留下很容易的痕迹。@MarcB我不太明白你的意思。txt文件不是base64编码的。它只包含私钥,通常以------BEGIN RSA private key开头,以------END RSA private key结尾。我还尝试了:
FILE*fp=fopen(“C:/xampp/htdocs/RSA/daten.pem”,“r”);RSA*r=PEM_read_RSAPrivateKey(fp,NULL,NULL,NULL)那也没有work@Greg我只是想试试。以后不会是那个湖了。我不熟悉使用openssl的RSA:-)。PEM基本上是base64,带有一个页眉和一个页脚,指示其中的内容。