2015-10-06 94 views
0

我想將一個值表示一個金額傳遞給支付網關。大門的方式賦予了我使數據安全和防篡改的功能。問題是即時通訊從文本框中獲取這個數量。通過使用fiddler並在請求前放置一個斷點,甚至可以在數據到達服務器之前更改數據,並通過函數加密。因此,篡改後的值將被髮送到支付網關。我使用ASP.net文本框用於獲取客戶想要捐贈的價值。參數在被加密和發送之前可能被篡改

+0

主要問題是您似乎在可編輯的字段中存儲金額。你最好的選擇是不使用文本框!也許你可以澄清什麼細節正在發送到網關,爲什麼你需要把它放在一個文本框? –

+0

考慮使用https? ^^ –

+0

這就像說編輯文本框是篡改。您與網關的連接將是HTTPS,它在傳輸過程中提供安全性。 – Crowcoder

回答

2

客戶端上的任何東西都可以由客戶端修改。值來自文本框的事實並不重要。

HTTPS不會改變客戶端可以對其所需數據進行任何更改的事實。

您或者需要在服務器上加密和驗證值,以便客戶端無法更改它,或者使用服務器到服務器通信。

0

這取決於你的建築物是什麼類型的應用程序。

如果它像購物車(您不希望用戶修改該值)的東西,請將總計存儲在服務器上,並僅將值顯示給客戶端。請勿使用客戶價值進行付款。 HTTPS不會保護您,因爲客戶端在發送之前仍然可以修改該值。

如果它需要一個用戶提供的價值並對它進行收費(比如說一個發票系統),那麼我假設你信任這個用戶。在這種情況下,客戶端可以修改數據並不重要(這就是您希望他們執行的操作)。在這種情況下,HTTPS將保護客戶端和服務器之間的數據傳輸。任何在'線上'收聽的人只會看到加密的流量。

您應該使用HTTPS連接到您的服務器(並從您的服務器到網關),只需注意限制。

相關問題