首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用php实现简单快速的双向加密

用php实现简单快速的双向加密
EN

Stack Overflow用户
提问于 2010-12-12 14:56:11
回答 3查看 1.5K关注 0票数 0

我从我的网站上提供了几个MP3文件,它们的大小超过了1MB。我怀疑其他人是热链接到文件,因为我的CDN费用上升,没有太大的访问差异。

我正在寻找一个简单的加密,以便我可以改变文件名每3-4个小时。我更感兴趣的是快速的双向算法而不是加密的强度。有人能为此建议一种快速加密吗?

使用mcrypt的加密速度快吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-12-12 16:10:46

我不明白你为什么要加密这个。听起来你只是想要一种方法来生成一个不可预测的链接,除了你自己。获取密钥、时间戳和文件标识符的HMAC应该可以为您做到这一点。然后,您可以将HMAC部分连同时间戳和文件标识符一起作为文件名。通过再次计算HMAC并将其与URI中的HMAC进行比较,在PHP脚本中验证它们。

HMAC不是加密,它实际上是身份验证/完整性,但当与合理的散列一起使用时,它是安全的。通常,我会推荐SHA-256或更好的,但对于你正在做的事情来说,MD5听起来足够安全了。找到HMAC-MD5代码应该不是问题。MD5的速度不会是一个问题,除非你生成大量(数百万每小时)的链接。

(在这种情况下,身份验证/完整性意味着HMAC只能由使用您的私钥以及公共时间戳和文件标识符的人生成)。

票数 2
EN

Stack Overflow用户

发布于 2010-12-12 18:32:35

我会使用hash that changes(on interval) => http://phpsec.org/articles/2005/password-hashing.html的md5

票数 1
EN

Stack Overflow用户

发布于 2011-06-21 20:47:00

您可以使用sha1散列(或其他散列)的md3来加密日期(或类似的内容)。对0:00之前有效的字符串的日期进行加密。使用sha1(date('Y-m-d-H'))每小时获取一个新密钥。

有人使用http://domain.com/&^CYFG&^%U^GU^VUVUIVB/filename.zip,访问该文件,而您检查&^CYFG&^U^GU^VUVUIVB是否等于日期(sha1(‘Y-m-d-H’))。如果不是,则该链接是旧的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4420627

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档