我有一个Web服务,我们的客户端需要使用的参数之一是一个自定义键。这关键是SHA1的哈希反向哈希查找查询
eg:
bce700635afccfd8690836f37e4b4e9cf46d9c08
然后当客户致电我们的Web服务我要检查几件事情:
- 是客户主动
- 的客户端可以通过Web服务和服务 提交
现在我的问题是这样的:
我有一个查询:
$sql = "SELECT permission, is_active FROM clients WHERE sha1(concat(id,key)) = '" . mysql_real_escape_string($key) . "'";
我做对了吗?还是有更好的办法? 感谢
你基本上使用的密钥作为会话ID?如果是这样,你可以考虑使用PHP会话。非常简单和安全。 http://php.net/manual/en/features.sessions.php –
@JonathanM不,密钥是客户端ID +随机密钥(我们本地存储在表中)的sha1,我们给客户端。所以当我们打电话给我们的网站时,他需要使用它,例如:http://ws.domain.com/bce700635afccfd8690836f37e4b4e9cf46d9c08/和他POST用户名和密码和其他变量; –
@ErinTucker:如果散列中包含一个随机密钥,那么你的查询怎么只有'sha1(id)'? – ruakh