iPhone:快速哈希函数,用于存储Web图像(url)作为文件(哈希文件名)

iPhone:快速哈希函数,用于存储Web图像(url)作为文件(哈希文件名),第1张

概述什么是可用于iPhone散列网址(图像)的快速哈希函数? 我想将缓存的Web图像存储为带有散列作为文件名的文件,因为我认为原始Web URL可能包含可能导致文件系统出现问题的奇怪字符. 哈希函数不需要加密,但它肯定需要很快. 例: 输入:http://www.calumetphoto.com/files/iccprofiles/icc-test-image.jpg 输出:3573ed9c4d3a5 什么是可用于iPhone散列网址(图像)的快速哈希函数?

我想将缓存的Web图像存储为带有散列作为文件名的文件,因为我认为原始Web URL可能包含可能导致文件系统出现问题的奇怪字符.

哈希函数不需要加密,但它肯定需要很快.

例:

输入:http://www.calumetphoto.com/files/iccprofiles/icc-test-image.jpg

输出:3573ed9c4d3a5b093355b2d8a14​​68509

这是通过使用MD5()来完成的,但由于我对该主题不太了解,我不知道它是否有点过分( – >慢).

解决方法 出于安全考虑,MD5可能会被破坏,但它适用于您描述的情况.关于如何在iPhone上实现它的 Here’s a thread.看看Vroomtrap的帖子.对于后代,这是我自己的代码版本:

- (Nsstring *)MD5Hash {    const char *cStr = [self UTF8String];    unsigned char result[CC_MD5_DIGEST_LENGTH];    CC_MD5( cStr,strlen(cStr),result );    return [Nsstring stringWithFormat: @"%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X",result[0],result[1],result[2],result[3],result[4],result[5],result[6],result[7],result[8],result[9],result[10],result[11],result[12],result[13],result[14],result[15] ];}

您需要导入CommonCrypto / CommonDigest.h标头.

总结

以上是内存溢出为你收集整理的iPhone:快速哈希函数,用于存储Web图像(url)作为文件(哈希文件名)全部内容,希望文章能够帮你解决iPhone:快速哈希函数,用于存储Web图像(url)作为文件(哈希文件名)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1034338.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存