标签:str 转换 列表 翻译 元组 要求 hash 不可变 依据
hash函数:
一般翻译为“散列”或“哈希”,就是把任意长度的输入,通过散列算法,变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,所以不可能从散列值唯一来唯一的确定输入值(这也是应用hash函数时需要注意避免的)。简单来说,就是将任意长度的消息压缩到某一固定长度的消息摘要的函数。
1.特征:被hash的值不变,对应hash的值一定是不变的。(hash的值的计算过程是依据这个值的一些特征计算的,这就要求hash的值必须固定,因此被hash的值是不可变的。)
不可变:数字,字符串,元组;可变:列表。
>>> hash(‘alex‘) -7043802833819298431 >>> hash(‘alex‘) -7043802833819298431 >>> hash(‘alexx‘) 4559968772027997698
2.用途:文件签名(加一个文件签名,确认文件没有被篡改),md5加密(例如,你输入的密码通过md5加密后放入数据库,因为md5不能反解,所以工程师是不可能知道你的密码的),密码验证。
标签:str 转换 列表 翻译 元组 要求 hash 不可变 依据
原文地址:https://www.cnblogs.com/Moxiaoyu666/p/10258168.html