SHA-256有多少组合?

时间:2018-03-27 18:24:21

标签: bitcoin sha256

通过使用在线工具和维基百科,我发现每个sha-256加密字符串都是包含数字和字符的64个字符长。因此我假设有34 ^ 36个组合(2 ^ 216由代数计算器简化)。 经过一些研究后我发现大多数人说有2 ^ 256种组合。有人能解释一下吗为了使上下文清晰,我写了一篇关于加密货币的论文,并尝试解释有多少不同的加密组合以及可以花多长时间(因此可以进行多少次猜测)并将其与总的原子数进行比较。宇宙(大约10 ^ 85)。

3 个答案:

答案 0 :(得分:9)

SHA-256产生256位,即32字节,而不是字符,每个字节有256个可能的值。

有256位,每位有2个值(0或1),因此2 ^ 256 有32个字节,每个字节有256个值,因此256 ^ 32 注意:2 ^ 256 == 256 ^ 32~ = 10 ^ 77。

32个字节可以多种方式编码,十六进制可以是64个字符,在Base64中可以是44个字符。

答案 1 :(得分:0)

sha-256哈希具有64个字符,32个十六进制组合,因为一个十六进制具有2个字符。

3a 7b d3 e2 36 0a 3d 29 ee a4 36 fc fb 7e 44 c7 35 d1 17 c4 2d 1c 18 35 42 0b 6b 99 42 dd 4f 1b

上面是一个哈希,其中十六进制组合是分开的,因此您可以数32。

十六进制的0-9&a-f可以使用16个字符,十六进制的16 ^ 2或256个组合。

在sha-256中有32个十六进制插槽,您可以使用256 ^ 32获得:

115792089237316195423570985008687907853269984665640564039457584007913129639936

可用的sha-256哈希。

答案 2 :(得分:-1)

SHA-256的总组合为

TypeError: unsupported operand type(s) for +: 'int' and 'str'