坛友们怎么看云盘计算哈希值?
我之前看到了一种观点,认为云盘服务商计算哈希值匹配文件的行为实质上已经侵犯了用户的隐私权因为服务商根本就不应该知道用户的云上存储了什么{bsn398}
咱们抛开国内违规审查的规矩讨论一下
你觉得计算哈希值的行为算侵犯隐私吗{:6_261:} 不算,这是很正常的去重行为,你如果要实现文件历史也要算。如果不用uuid那么hash用来做id也很正常 这个问题我其实有想过,对于侵犯隐私的问题,你既然选择了公有云,那就相当于把数据交给人家。最简单的方式是对文件压缩并加密,这也是穿片片到百度网盘的一个方法。
以前我猜测大概是前端计算一个文件的哈希值(比如MD5)发送给后端,网盘服务器判断是否存在这个文件,如果存在就直接在后端完成文件的“转存”,直接告诉前端:上传成功。但还是会有撞哈希的风险。
以百度网盘的上传为例,如果是超过256KB的文件,将计算整个文件的MD5和文件前256KB内容的MD5,并对两个MD5值加密后请求后端执行秒传。后端通过两个MD5和长度信息判断是否存在该文件,如果存在则完成秒传。
这样做,虽然理论上也不能保证不会发生哈希碰撞,但通过这种方式,至少将概率降低了许多。
页:
[1]