我正在創建一個程序,它與Web服務器上的PHP腳本進行通信,爲此我需要能夠將參數從程序傳遞到PHP腳本。使用PHP傳遞URL參數
現在,這是我的問題。有時需要將用戶名和密碼傳遞給腳本。現在,這不是以一種對用戶來說很明顯的方式完成的(例如在地址欄中),但我知道只需要在某人身邊嗅探一下真正想知道的人。所以雖然我的腳本安全無法注入,但顯然變量篡改是一個問題。
這是一個想法,我已經想出了,所以請幫我把頭繞在它周圍,看看這是否會以我認爲的方式工作。
我的想法是在發送之前在客戶端加密用戶密碼(或另一個唯一鍵)變量,以便獲得類似於(顯然就是組成)mypage.php的鏈接?un = Oa348uty8 & ps = op986hGTfreu然後當它會得到PHP腳本解密並用不同的鹽再次加密。
因此,當它離開應用程序時,它會被加密,但不是正確的方式,然後當它命中PHP腳本時,服務器端解密並用正確的鹽重新加密,以便正確匹配存儲的加密密碼。
這樣,他們的用戶不會知道他們的密碼的加密版本應該是什麼樣子,但他們不會篡改URL並嘗試插入假值。
這是怎麼不同於_normal_登錄情況?如果你有加密可用,只需使用正常的,正確的方法。 – Halcyon 2012-03-29 23:33:04
當你將密碼存儲在你的服務器上作爲散列字符串 - 無論如何你應該這樣做。 (如sha256或類似的東西),那麼最好的辦法是生成散列客戶端,並且只將散列傳送給服務器。剩下的就是簡單的字符串比較。不需要解密。 – Rufinus 2012-03-29 23:35:18
給予URL的加密密碼不能被人解密。儘管如此,黑客還可以將其重新用於其他連接(即加密)。 – Skrol29 2012-03-29 23:46:31