我正在编写一个将在Amazon S3云上存储文件的Web应用程序。应用程序需要能够显示上传到它的文件在任何时候都没有被更改。文件将上载到将在其中缓存的Web应用程序服务器,然后上载到Amazon S3 Cloud。
在流程中的每个点(选择在客户端上传的文件,存储在缓存服务器上的文件,存储在云中的文件)我想采取并比较md5校验和以显示文件未在任何更改办法。该应用程序是法律部门中较大项目的一部分,因此需要文件可靠性和验证。
比较存储在缓存服务器上的文件的校验和以及存储在Amazon S3中的文件很简单,但我正在寻找一个文件上传器,它将在客户端计算校验和并通过文件上载报告。文件大小可能不超过20MB,因此客户端计算机上的校验和不会太难。
任何想法?出于兼容性目的,我更喜欢flash或java实现,虽然我知道html5将允许客户端文件访问,这已经在最新的firefox中采用。
任何想法都非常赞赏!!
由于
罗斯
答案 0 :(得分:0)
MD5文件哈希仅对确定无意的文件更改很有用。也就是说,如果你担心有人可能故意改变文件,MD5哈希就无法保证,因为算法已被破解。您应该考虑使用其中一种SHA散列功能。
此外,我无法确定您是否要求可以上传到您的服务器的应用程序或将上传到亚马逊的应用程序。显然,这些客户端会有很大不同,因为S3系统已经有一个用于上传文件的API,而你的服务器却没有。