您可以直接将图像编码为sha1以节省localStorage中的空间吗?

时间:2015-09-23 14:55:47

标签: image encoding compression local-storage sha1

我创建的网络应用程序支持离线存储...但是当用户添加10-13张照片时,它会很快变得最大化。照片存储为超长base64编码的字符串......但是它们可以存储为sha1吗?

1 个答案:

答案 0 :(得分:2)

哈希与加密/编码不同

Base64是一种编码方法,意味着您可以在不需要密钥的情况下进行解码

SHA1是一种哈希方法,意味着它会根据要哈希的内容生成一个字符串,它不能被解码或解密

然后你有加密(例如AES),你用该算法和密钥加密内容,解密你需要加密方法和密钥的数据,没有这些元素之一,你无法解密数据。

如果您将照片存储为SHA1,它将节省大量空间,但您永远无法检索它们,因为您拥有的只是带有散列内容的字符串。

我认为没有办法逃避照片占用的空间,你可能会尝试保存到字节数组,但我认为占用的空间是相同的,因为你需要所有的照片信息可用再次

示例(编码,散列,加密字词" teste")

Base64编码:dGVzdGU =
测试编码的网站:https://www.base64encode.org/

SHA1哈希:2e6f9b0d5885b6010f9167787445617f553a735f
用于测试SHA1哈希的网站:http://www.sha1hash.com/

AES加密生成一个字节数组。
相当于AES字节数组的Base64:SUpXhKOAO1pQdXD2igf0cw ==
使用密钥:key_to_encrypt_decrypt
大小:128位
用于测试加密的网站AES:http://aesencryption.net/