我创建的一个支持离线存储的网络应用程序..。但是当用户添加10到13张照片时,它很快就会变得最大。照片作为超长base64编码字符串存储.但是它们可以作为sha1存储吗?
发布于 2015-09-23 15:08:58
散列与加密/编码不同。
Base64是一种编码方法,它意味着您可以在不需要密钥的情况下解码
SHA1是一种散列方法,它意味着它将根据要散列的内容生成一个字符串,它不能被解码或解密。
然后进行加密(例如AES),使用该算法和密钥对内容进行加密,以解密需要加密方法和密钥的数据,如果没有这些元素之一,则无法解密数据。
如果您将照片存储为SHA1,将节省大量空间,但您永远无法检索它们,因为您所拥有的只是一个带有散列内容的字符串。
我不认为有一种方法可以逃避照片占用的空间,您可以尝试保存到一个字节数组,但是我认为占用的空间是一样的,因为您需要重新获得所有的照片信息。
示例(编码、散列、加密单词"teste")
Base64编码: dGVzdGU=
测试编码的网站:https://www.base64encode.org/
SHA1散列: 2e6f9b0d5885b6010f9167787445617f553a735f
测试散列到SHA1:http://www.sha1hash.com/的网站
AES加密生成一个字节数组。
Base64等效于AES字节数组: SUpXhKOAO1pQdXD2igf0cw==
使用的密钥: key_to_encrypt_decrypt
大小: 128位
测试AES:http://aesencryption.net/加密的网站
https://stackoverflow.com/questions/32742934
复制相似问题