在加密和发送之前,参数可以被篡改

时间:2015-10-06 11:49:20

标签: c# asp.net tampering

我想将一个值传递给支付网关。闸门方式赋予我使数据安全和防篡改的功能。问题是从文本框中取出这个数量。通过使用fiddler并在请求之前放置断点,数据甚至可以在到达服务器之前进行更改并由函数加密。现在,篡改的值将被发送到支付网关。我正在使用ASP.net文本框用于获取客户想要捐赠的价值。

2 个答案:

答案 0 :(得分:2)

客户端可以修改客户端上的任何内容。值来自文本框的事实并不重要。

HTTPS不会改变客户端可以对其所需数据进行任何更改的事实。

您需要加密并验证服务器上的值,以便客户端无法更改它,或使用服务器与服务器之间的通信。

答案 1 :(得分:0)

这取决于您的建筑类型。

如果它类似于购物车(您不希望用户修改该值),请将总数存储在服务器上,并仅将值显示给客户端。不要使用客户价值进行付款。 HTTPS不会在此保护您,因为客户端仍然可以在发送之前修改该值。

如果某些东西需要用户提供的价值并对其收费(比如开发票系统),那么我假设您信任该用户。在这种情况下,客户端可以修改数据(这是您希望他们做什么)并不重要。在这种情况下,HTTPS将保护您在客户端和服务器之间传输的数据。任何人都在线上聆听'只会看到加密的流量。

您应该使用HTTPS连接到服务器(以及从服务器到网关),只要注意这些限制即可。