我的应用程序中有一个开放 API,我想为其提供访问密钥。传入的信息将是用户 ID、资源 ID 和要更新的值。我想要每个资源一个 API 密钥。
最好我希望能够仅使用提供的数据验证传入请求的真实性,而不是检查任何类型的数据库(非常简单,非常快!)
如果我使用 md5 从资源 ID、用户 ID 和盐生成 API 密钥,它可能看起来像这样......
authentic_request = md5(user_id + resource_id + salt) == api_key
我的问题实际上是关于我应该有多偏执的问题。像上面那样只用普通的旧 md5 就足够了吗?另一种选择是使用 openssl 生成针对 pem 的密钥,然后使用 md5 生成结果以保持简洁,这听起来是否过于偏执,甚至在现实中增加了一层安全性?
任何想法甚至替代品都非常感谢!
谢谢