我寫了一個簡單的PHP腳本來登錄我的手機提供商的網站,查看我的餘額,並且如果郵件太低,給我發一封電子郵件。我把腳本放在遠處的服務器上。自動登錄和密碼存儲
似乎我必須將密碼作爲明文存儲在腳本中才能將其發送到登錄頁面。不過,我有點不願意這樣做......
$user="foo";
$password="blah";
有沒有更安全的方法?
我寫了一個簡單的PHP腳本來登錄我的手機提供商的網站,查看我的餘額,並且如果郵件太低,給我發一封電子郵件。我把腳本放在遠處的服務器上。自動登錄和密碼存儲
似乎我必須將密碼作爲明文存儲在腳本中才能將其發送到登錄頁面。不過,我有點不願意這樣做......
$user="foo";
$password="blah";
有沒有更安全的方法?
您不能確保系統能夠在您有權訪問源時自動登錄您。我們試着證明它。
System Smart
能夠在您登錄,您無需做任何事情。Mr. Evil
可以訪問System Smart
的來源。System Smart
知道該怎麼辦以您身份登錄。 (從第一點開始)Mr. Evil
知道什麼Systems Smart
知道。 (從第二點開始)Mr. Evil
知道該怎麼做以您身份登錄。 (從第三點和第四點。)結論:這種情況是不安全。
如果您從場景安全的假設開始,這是矛盾的證據。
更新:但是,如果你想讓它比純文本更難,那麼可以使用對稱密鑰。
有一些方法可以對它進行混淆,但如果有人能夠訪問該文件,那麼這些文件最終都不會比明文安全得多 - 因爲您還需要對其進行解碼才能登錄提供商的網站。
該腳本能夠將您無人值守地登錄到您的提供者。
這意味着任何控制腳本的人都可以通過運行該腳本來使用該功能。
你可以做什麼都不會妨礙這一點。唯一的解決方案是要麼與您的密碼的潛在危害生活在一起,要麼只將腳本放在您控制的服務器上。
如果你想過度使用它,你可以設置它,使你的密碼存儲在使用aes_encrpyt
加密的mysql數據庫中,然後在另一臺服務器上創建另一個腳本,以便與你的服務器進行通話通過提供用於aes_decrypt
函數的鹽來請求密碼。
是的,我知道它不能保證。然而,我想知道是否有更好的想法,而不是將它存儲爲明文。混淆顯然不是安全性,但它總比沒有好。 – Klaus 2010-07-28 17:38:28
在那裏,進行了更新。使用對稱密鑰。 – 2010-07-28 19:35:06
好吧,如果我使用對稱密鑰,我必須將其存儲在文件中,所以效率並不高:/ – Klaus 2010-07-28 22:28:48