深刻剖析夸克区块链的私钥

私人密钥(Private key)是密码货币世界中最敏感和重要的信息,这篇文章,我们将解释私钥是如何产生的,它和你的货币资产又有什么关系。

私钥对加密货币而言意味着什么,实际生活中,拥有实物财产通常是指持有写有你名字的票据或收据,但在密码学货币的世界里,拥有某种资产就是掌握某种信息,简单地说,拥有一个私钥就等于拥有一个私钥可以控制的密码资产。

一切资产都可以通过交易进行操纵,真实世界中的交易通常需要签名授权,但是,在加密货币领域,所有交易的授权必须使用相关的私钥,私有密钥的作用是与密码算法一起产生交易的数字签名,签署该交易意味着私钥持有者允许其他人对其拥有的资产拥有权限,尽管任何人都可以生成与您的数字资产相关的交易,但只有那些拥有相应私钥的人才可以在交易上签字。

尽管真实世界中存在着假签名问题,但加密货币世界的安全性受到其密码学特性的保护,到目前为止,没有人听说哪个黑客在没有私钥的情况下成功地完成了交易,有一句名言,没有私钥,就没有你的货币,就是因为签名交易,转让资产的能力完全系于私钥,在得到了一把私钥后,不管是谁,都可以转走这把私钥对应的资产

私钥是什么,实际上,私钥是一个数,从技术的角度来看,私有密钥是在一定的正数范围内由随机数生成而成的数字,具有很强的密码学随机性,多数情况下,计算机使用伪随机数生成器(PRNG)来产生这些随机正整数,但很难找到真正的随机数生成器,这类发生器通常需要特殊的硬件,并使用物理源,如电路中的热噪音或盖革计数器的精确计时,PRNG是一种加密增强函数,它要求随机种子输入的熵足够大。

熵值是个复杂的概念,但其目的很简单,就是使函数具有不可预测性,利用安全的熵源, PRNG可以生成伪随机数,其非随机概率可以忽略。

当建立以太坊或夸克区块链的私钥时,PRNG的值是1到2256-1之间的范围,我们可以想象成一个由0到9组成的长达78位的密码锁,因为这个范围很大,所以生成两个相同的私钥的可能性小到可以忽略不计,你的私钥来自于一个庞大的整数集,几乎相当于整个宇宙中可见原子的总数。

因为私有密钥必须是保密的,所以我们还需要一个标记发帐目的地的机制,所以,所有的区块链都引入了地址的概念,根据私钥计算的一串独特的数字,地址是密码资产的存储地点,如果需要,可以与任何人共享,以便他们可以为您转账,通过公共密钥创建区块链地址,以确保您是该地址的所有者,在再次进行时,通过私钥生成公钥,这一过程是单向的,也就是说,你可以用私钥来计算帐户地址,但不能用帐户地址来倒推来计算私钥。

这个单向过程是由密码学陷门函数(cryptographic trapdoor function)来实现的,陷门函数是一种单向函数,一个输入值只能产生唯一的输出值,但不能根据输出值对原始输出值进行反推,区块链中不同的生态系统采用不同的单向功能,举例来说,最流行的区块链系统是利用椭圆曲线的代数结构产生公钥,不管这些代数结构具有什么特性,结果总是确定的,公钥与私钥一一对应,而同一私钥永远只能产生相同的公钥。

夸克区块链账户是一个Keccak-256哈希值,但在计算结果的最右边只保留了20字节,由于所有的哈希函数都是抗冲突的,所以两个公钥生成相同的帐户地址的可能性很小,并且只有通过暴力破解才能保证地址对私钥的反推,到目前为止,还没有一个区块链使用的哈希函数被破解过。

加密资产的安全源于私钥背后的密码学和数学,只要我们能保存好私钥,就能保护好自己的加密资产。

点赞