Python应用——SHA256

说明

SHA256的全程是Secure Hash Algorithm 256,这里有几个关键字说明:

1. Secure的意思是指算法的输入输出一一对应,且是不可逆的(即只有编码而没有解码);

2. Hash Algorithm指的是散列算法,散列算法指的是将一个任意长度的输入数据转换成固定长度的输出;

3. 256是输出结果的位数,这个输出结果又被称为Hash值或者摘要;

SHA256算法是SHA-2族算法中的一个,其它的还是SHA222、SHA512等。

SHA256常被用于加密。

具体算法实现不在这里说明。

使用

Python中通过包含hashlib模块来使用各类hash算法:

import hashlib

下面是一个例子:

import hashlib


if __name__ == "__main__":
    s = hashlib.sha256()    # Get the hash algorithm.
    s.update("jiangwei")    # Hash the data.
    b = s.hexdigest()       # Get he hash value.
    print b

得到的结果:

扫描二维码关注公众号,回复: 12027744 查看本文章
36d6824c3942c1ec34d1b5cc2f5cbe3d2c4110223bce905ddafe0592723411f0

它的长度是64,每个字符4位,所以总计是256位。

当然也可以修改算法:

s = hashlib.sha512()    # Get the hash algorithm.

这要就得到512位的摘要:

3ee15fe269635e2c05d7e965d97d82b95fefcdf7f937cb14e117d235a440b9e173d90f3c669a5dce21d6b8a20ff2376172d171d0c9d9b1f2670d39aefaab7a10

猜你喜欢

转载自blog.csdn.net/jiangwei0512/article/details/105311757