《BITCOIN?AND CRYPTOCURRENCY TECHNOLOGIES》Chapter 1系列
1.4. PUBLIC KEYS AS IDENTITIES 公钥作为身份
公钥 public key 可以代表私钥 private key 的公众身份,而 private key 则是此人身份真实的内涵。
????????可以通过多组 private key/public key 来进行获取多个身份,保证隐匿性。
????????这与在系统中注册一个用户的传统方式不同。不需要用户名,也不需要通知其他人。?任何人都可以在任何时候生成一个新的身份。?因为没有中心控制点,所以不需要任何人来负责,这个系统完全以去中心化的方式运作。这就是比特币识别身份(地址,实际上是公钥或者公钥的Hash值)的方式。
????????在比特币交易时使用同一个地址,则可能泄露身份。使用这种方式生成的地址与现实世界中的身份完全没有关系,可以执行一个随机化算法,将公钥看起来是随机的。 最初并没有什么能把这和现实身份联系起来 ,一旦使用这个身份发表声明(交易),在一定时间内参加一系列行动,人们都可以看到。 将一个地址随着时间的推移而出现的行为模式联系起来,就可能导致身份的暴露。 这就是比特币中的隐私问题。 ?
1.5. TWO SIMPLE CRYPTOCURRENCIES ?
省流:高飞币(GoofyCoin)由高飞创建,币可以通过签名转给他人。有双花问题
? ? ? ? ??Scroogecoin支付的过程:是消耗旧币,创造新币。但是不是去中心化的。
GoofyCoin
高飞币(GoofyCoin),创作者是高飞。是目前知道的最简单的加密货币。
只有两种规则:
(1)高飞可以随时创建新币,并且新创建的币都属于他;
(2)拥有此币的人可以将其转给其他人。
从下往上看,高飞创建新币,给了Alice
?
总结下高飞币的规则如下:
(1)高飞可以通过签署声明表示他使用唯一的货币编号来创建一个新币。
(2)币的所有人可以通过签署声明将该币转给另一个人。
(3)任何人都可以验证一个币的有效性,通过哈希指针追溯到它是由高飞创建的,并验证过程中的所有签名
高飞币的缺陷
高飞币有个致命的安全隐患,即双重支付问题。
如果Alice签署声明将一个币转给Bob,但是并没有告诉其他人,她可以再签署一个声明将该币转给Jason。对于Jason来说,这笔交易也是一笔有效的交易。Bob和Jason都可以证明自己是该币的所有人。一个币花了2次,这就是双重支付问题。
双重支付是加密货币需要解决的主要问题。高飞币的转移机制和比特币非常类似,但是没有解决双重支付问题,因此不适合用来做加密货币。
Scroogecoin守财奴币
这个货币的例子主要是为了解决加密货币的?double-spent 问题
首先他也是有一个中心机构 : Scrooge,专门负责创建货币和验证交易的合法性。因此有两种类型的交易:
造币,CreateCoins。在所有人都认定守财奴造币是合法的这一前提下,每个造币交易可以创建多个币。每个币都会有序号。
?
2.支付,PayCoins。过程为,消耗币的同时产生同价值的币,执行支付的人会对其进行签名,表明同意此交易。每次支付都需要一次签名。
满足以下规则被认定交易有效:(防止双花)
-
被消耗的币为之前造币交易中创造出来的币。 -
被消耗的币之前没有被交易过。 -
产生币的总量等于消耗币的总量。 -
被消耗的币被其所有者签名认同。
支付的过程是消耗旧币,创造新币,声明他人拥有新币的过程。这个特性是理解比特币的支付的关键。之后,守财奴会认定交易有效,会将交易添加到区块链并公布。这样会使得守财奴权力过大,出现中心化的问题。
参考链接:
https://blog.csdn.net/weixin_48453983/article/details/116655087
区块链技术学习之-简单加密货币-高飞币 - 爱码网
|