如何隐藏您放入cookie中检索的信息?

时间:2012-01-03 06:07:08

标签: cookies e-commerce sessionid

我的问题与服务器端的信息有关,需要在客户端进行检索,更具体地说,对于购物车。我学会了用纯文本来做,但我不知道怎么做才能隐藏我数据库中的内容。我做了一些研究,我找到了两个选项。

  1. 散列cookie中的所有内容,并在数据库中保留散列版本以进行比较。
  2. 加密,签名,如果被篡改,由于签名丢失,将被忽略。 (不太确定如何进行自己的加密)
  3. 这两种方法中的任何一种都是大多数电子商务网站使用的,我应该使用什么,或者是否有更广泛使用的一种/一种?

2 个答案:

答案 0 :(得分:1)

不要在cookie中添加任何您不希望受用户控制的内容。 cookie由用户控制。基本上,根本不相信cookie。如果您的设计强制您信任cookie,请更改它。

答案 1 :(得分:1)

我没有电子商务网站,但这里有一些有用的提示:

  1. 切勿将任何内容存放在可能会危害网站完整性/安全性的Cookie中
  2. 只存储对其他人完全无用的信息,但是你。
  3. 想出一种方法来“伪装”cookie中的数据。
  4. 这是一个简单的例子:假设你需要在cookie中存储用户的名字。首先不要存储名称,因为这违反了第一个提示。而是创建一个用户ID。仅仅创建用户ID是不够的,因为该数字仍然是一个重要的信息。为了使数据对其他人完全无用,请将其伪装。我的意思是:让我们说你的用户ID是1234.而不是存储1234,对它执行某种数学运算然后存储它。为简单起见,我们假设您对数字进行平方。现在,用户ID为1522756,可能比您的实际用户ID允许的数字更多,因此除了您之外,其他任何人都无法使用数据。要使数据再次有用,只需简单地取数字的平方根。对于真实场景,您可能希望执行更复杂的功能,只需确保您执行的任何操作都可以反转以提供原始编号。

    检查确保cookie没有被篡改也是一个好主意。