我需要存儲客戶的駕駛執照#(大部分時間)(或個人ID),所以當他們來挑選他們的產品時,他們可以根據他們的身份證明自己。這通常是我國處處處理的方式(不幸的是)。不過,我想將這個#加密存儲在mysql中。我現在可以使用AES_ENCRYPT
,但是,我的問題是,如果我對$key
進行了硬編碼,那麼獲得服務器訪問權限的攻擊者可以輕鬆解密所有具有該密鑰的字段。我該如何處理這個問題?php - 在mysql中存儲加密的字符串
我想到的是或許使用openssl_public_encrypt
並有一個公鑰和私鑰,但不知道如何實現它。 (任何好的鏈接解釋?)也許不對稱密鑰RSA?
我有幾個物理服務器可供使用,如果需要的話。
任何幫助將不勝感激。
同意 - 不要將實際ID#存儲在任何地方。 – drudge 2010-10-29 22:32:01
這是一個很好的觀察。可能是更好的方式去!但是,如果由於某種原因(我現在不知道),我們需要退回數字呢? – ashimi70 2010-10-29 22:34:52
這是推薦的方式 - 即使您的服務器受到攻擊,黑客也無法使用哈希! – jusunlee 2010-10-29 22:35:47