2016-07-25 44 views
1

Receiver給了我一個公鑰,我需要用它來加密用戶名和密碼。我做了各種r & d但沒有任何作品。 我用如何在php中使用rsa公鑰加密數據

function public_encrypt($plaintext) 
{ 
    $fp=fopen("private.key","r"); 
    $pub_key=fread($fp,8192); 
    fclose($fp); 
    openssl_get_publickey($pub_key); 
    openssl_public_encrypt($plaintext,$crypttext, $pub_key); 
    return(base64_encode($crypttext)); 
} 

但它給了我openssl_public_encrypt(): key parameter is not a valid public key錯誤。

我也加了開始和結束行到關鍵,但仍然沒有成功 請親自指導我遵循的步驟,因爲我是新的。

+0

$ pubkey = openssl_get_publickey($ pub_key); –

+0

我試過了。在加密中使用$ pubkey,仍然沒有成功。仍然有相同的錯誤。請幫忙。 –

+0

獲取公鑰需要證書文件 –

回答

1

你試圖解碼一個看起來沒有任何已知格式的密鑰。我認爲它是由一個不完全理解密碼的人制作的,因爲它的模數爲1023。

如果你看一下十六進制表示你會找到的值的彈性模量:

4D49BB0D2E0FA132D081A6338C178124AB2B1B61A57C6C30D05EAD179BE1040B235E0EE83F3BF29A8F19DC33B7E245FAE7BE96E35CC2DF49E8B519D4F53501E3566D693A66E69D8C812AF66AC6D5D86ED764ED27A91C5828CE860A8B01077C15142B77BF772AFF201577DF8FBE9E92168539480E024DFF51173CD26B65858ACA 

(簡單地用一個大小接近1024位結構中的最後一個值)和公用指數與一個值

010001 
相關問題