如何使用密钥和密钥进行验证?

时间:2010-01-02 16:33:47

标签: php api key

在大多数API上,例如facebook和bebo使用那里的API,你必须得到一个密钥和秘密,我只是想知道做这样一个系统的一些好方法是什么。我将使用PHP / MysQL。

当应用程序发送API请求时,如何基本验证用户密钥和密码是否正常?我正在考虑将它们存储在mysql中,无论如何我都会将它们存储在那里,但我想知道是否有其他方法更适合验证过程,而不是在每次点击API时都使用数据库?

3 个答案:

答案 0 :(得分:1)

如果密钥是他们正在使用的域的加密形式和密码,则无需点击数据库来验证它们。

if ($key != encrypt($domain . $secret))
    // die

答案 1 :(得分:0)

memcached中缓存身份验证信息,您将保存数据库中的读数。

答案 2 :(得分:0)

你需要某个地方来保持密钥/秘密组合。除非你使用像memcached这样的缓存,否则我认为不可能没有数据库命中。

关于它们的密钥/秘密实现,有几个地方使用公钥/私钥组合。您使用私钥加密它们的数据,然后将其发送到使用公钥解密的位置(反之亦然)。我认为openssl包具有此功能。

http://php.net/manual/en/book.openssl.php

-d