支持 md5、sha1 和 sha512 哈希的安全库。所有计算都是分块进行,以减少内存影响(目前不适用于 PHAsset)。
返回结果的十六进制。
iOS5+ 支持。如果您使用 Cocoapods,Podfile 中的最小版本是 iOS7。对于 PHAsset 支持,需要 iOS8+。
// Filepath (file accessible on disk)
NSString *_filePath = ...
NSString *md5 = [AWFileHash md5HashOfFileAtPath:_filePath]
// NSData
NSData *_data = [NSData dataWithBytes:"AWFileHash" length:10];
NSString *md5 = [AWFileHash md5HashOfData:_data];
// ALAssetRepresentation
ALAsset *_asset = ...
ALAssetRepresentation *_assetRep = [_asset defaultRepresentation];
NSString *md5 = [AWFileHash md5HashOfALAssetRepresentation:_assetRep];
对于 SHA1 或 SHA512 支持,只需将名称中的 "md5" 替换为 "sha1" 或 "sha512"。
请确保在要使用 lib 的地方包含 AWFileHash.h。
下载 .zip 文件,解压并将文件 "AWFileHash.{m,h}" 拖到 XCode 中,并确保将它们添加到您的目标捆绑包中。
规范
Alexander Widerberg,widerbergaren [at] gmail.com
AWFileHash 可在 MIT 许可证下使用。有关更多信息,请参阅 LICENSE 文件。