我在URL中傳遞了貸款ID,社會安全號碼和郵政編碼。轉換爲哈希碼並將其解密
LoanID: 205689
ssn No: 555-896-4569
Zip code: 12345
的網址是http://localhost/Product/abc/manager/internet/PayCredential.aspx?LoanID=205689
我需要的社會安全號碼和郵政編碼轉換成用於安全目的的散列碼,並通過他們在這個網址。當頁面被調用時,我會解密它們。我怎樣才能做到這一點?
我在URL中傳遞了貸款ID,社會安全號碼和郵政編碼。轉換爲哈希碼並將其解密
LoanID: 205689
ssn No: 555-896-4569
Zip code: 12345
的網址是http://localhost/Product/abc/manager/internet/PayCredential.aspx?LoanID=205689
我需要的社會安全號碼和郵政編碼轉換成用於安全目的的散列碼,並通過他們在這個網址。當頁面被調用時,我會解密它們。我怎樣才能做到這一點?
不要打擾重新發明車輪。使用SSL - 您的所有通信都將被加密,包括您的網址。
除了SSL不會阻止站在我後面的人在瀏覽器地址欄中看到我的SSN。這是一個銀行應用程序的一個非常史詩般的失敗(我只能假設這是)。 –
站在你身後的傢伙也可以看到你鍵入的內容,或屏幕上其他地方的SSN。 – zmbq
如果輸入密碼字段,則不適用。 –
哈希不會在你的情況下工作。您無法從散列值訪問該對象。在使用之前,您應該在發送和解密數據之前加密數據。在這裏你可以看到一個如何在c#中使用encrpyt和解密的例子: http://www.codeproject.com/Articles/5719/Simple-encrypting-and-decrypting-data-in-C
加上你可以使用https來提高安全性。
您的整個方法是錯誤的。在任何情況下,即使您使用SSL對其進行加密,也不應通過查詢字符串傳遞該信息。正如我在@zmbq的評論中所提到的,我不希望有人在我支付抵押貸款時揹負我的SSN,謝謝。
您應該做的是將數據安全地存儲在服務器端,SSL保護您的連接,並且客戶端的URL只應使用不可識別的令牌(如會話ID)來引用它。如果用戶需要輸入他們的SSN作爲其登錄標識符的一部分,則應通過密碼字段輸入,以便瀏覽器屏蔽輸入。
散列是一個單向過程。你需要加密,這是一個雙向過程。 –
我希望你發佈的SSN不是真正的。 – Habib
你應該看看https。 –