Php 如何安全地分发串行密钥?
我正在通过我的网站销售我的Windows应用程序。我使用Paypal和LibertyReserve作为我的支付处理器。我创建了结帐按钮来自动化购买过程。购买完成后,买家将被重定向到感谢页面 结帐完成后,我会发布一个序列号和一个下载链接。我目前正在使用PHP,但它不安全 我有一个文本文件,里面有大约100个序列。每次用户访问感谢页面时,PHP脚本都会检查cookie是否未设置为避免重复访问。如果未设置cookie,它将打开包含序列的文本文件,读取第一个序列并将其存储在cookie中。序列号将从文本文件中删除。之后,用户通过使用标题重定向到最后一页,其中显示cookie内容,并说这是您的序列键:[包含序列的cookie值转到此处] 现在,每个有点头脑的人都可以用串行键读取整个文本文件。我怎样才能保证这个/使它更好Php 如何安全地分发串行密钥?,php,javascript,html,mysql,Php,Javascript,Html,Mysql,我正在通过我的网站销售我的Windows应用程序。我使用Paypal和LibertyReserve作为我的支付处理器。我创建了结帐按钮来自动化购买过程。购买完成后,买家将被重定向到感谢页面 结帐完成后,我会发布一个序列号和一个下载链接。我目前正在使用PHP,但它不安全 我有一个文本文件,里面有大约100个序列。每次用户访问感谢页面时,PHP脚本都会检查cookie是否未设置为避免重复访问。如果未设置cookie,它将打开包含序列的文本文件,读取第一个序列并将其存储在cookie中。序列号将从文本
任何建议都会派上用场。谢谢 在MySQL数据库中存储每个串行代码,表可以如下所示:
id, serial, purchased, date, hashcode
当用户从paypal成功支付回来时,您将把他重定向到类似serial.php?hashcode={hashcode}的脚本,该脚本通过hashcode检索序列号并将其打印给用户。脚本也会将序列行设置为已购买,如果您不想让用户第二次看到此页面,您可以这样做 您有一个包含所有串行键的表
+--------+-----------+
| id | serial |
+--------+-----------+
| 1 | 123-45 |
+--------+-----------+
| 2 | 456-43 |
+--------+-----------+
当执行一个事务时,如果您拥有该事务的唯一标识符,那么您将拥有另一个表,其中保存属于该唯一标识符的序列id
+--------+-----------+-----------+
| id | trans | serialId |
+--------+-----------+-----------+
| 1 | 654326 | 1 |
+--------+-----------+-----------+
| 2 | 876430 | 2 |
+--------+-----------+-----------+
serialId/trans列是唯一的,因此任何两个事务都不能具有相同的序列id。请记住,用户和程序可以创建/删除/编辑cookie。永远不要盲目相信cookie信息!谢谢你的提示:我现在正在研究MySQL。我从来没用过,所以需要一些时间。谢谢