李嘉图合约

a.什么是李嘉图合约

一般来说,一项资产代表在一定条件下向发行者要求赎回或者兑付的权利 。

  • 公司股份给予获取股息的权利,

  • 债券给予到期兑付本金的权利,息票代表每期获取利息的权利, 

  • 投票令牌给予相关实体投票决策的权利(公司,选举)

  • 可能是以上几项的混合:股份同时也是公司领导人选举的投票令牌

这些权利通常在一项合约里面列举出来,并由发行人签名。(如果需要,有一个可信第三方,比如认证机构) 一项李嘉图合约是由发行人加密签名的合约,不可能与资产脱钩。 所以合约不能否认、篡改,并且可以证明就是发行人签名的。这种合约可以在发行人和赎回人之间保密,或者公开。 开放资产已经可以支持以上所有事项,除了改变核心协议。下面是如何改变核心协议的内容。

b.开放资产里面的李嘉图合约

这是李嘉图合约的正式定义:

1.一项由发行人提供给持有人的合约,

2.服务于持有人拥有、发行人管理的有价值权利,

3.人工可读(就像是纸质合约),

4.程序可读(就像数据库那样可以解析),

5.数字签名,

6.带有秘钥和服务器信息

7.附有唯一的安全识别标志。

资产ID由OpenAsset按下列方式具体定义:

 把ScriptPubKey转换成P2SH形式:

这里:

对于一个简单的发行人而言,Issuer Script表示一个典型的P2PKH,如果发行人需要多个同意意见,它表示多重签名。(举例来说:issuer + notary )

李嘉图合约

需要注意的是,从比特币0.10开始, Issuer Script是机动灵活的,可以是任何事情。

李嘉图是机动灵活的,并且可以保持私密性。任何持有合约的人都可以通过Script Pub Key哈希值证明,合约是适用于这笔资产的。

在资产定义协议下,这些李嘉图合约在客户钱包面前是可发现和可验证的。

假设我们正在向候选人A、B、C发行投票令牌。

增加开放资产标记的内容,加入下列资产定义网址 : u=http://issuer.com/contract

在网页 http://issuer.com/contract 中,创建下列资产定义文件:

现在我们可以定义李嘉图合约了:

这就结束了我们在OA中的李嘉图合约实现

c.检查列表

由发行人提供给持有人的合约

合约由发行人管理,不可更改,发行人每次发行一项新资产就签名一次。

服务于持有人拥有、发行人管理的有价值权利

在这个例子中的权利就是候选人A、B、C的选举权利,可以在2015年1月10日以前赎回。人工可读(就像是纸质合约)

人工可读的合约可在contract_url看到,但是JSON可能已经足够了。

程序可读(就像数据库那样可以解析)

选举的细节在AssetDefinitionFile里面,是JSON格式的,合约的真实性由IssuerScript通过软件验证,哈希值在ScriptPubKey里面。

数字签名

当发行人发行资产时,ScriptPubKey就被签名,并且合约的哈希值以及合约本身也被签名。

带 有 秘 钥 和 服 务 器 信 息                                       

IssuerScript包含在合约里面

附有唯一的安全识别标志。

AssetId 由Hash(ScriptPubKey)定义,并且是唯一、不能更改的。

d.它有什么作用?

没有李嘉图合约,恶意的发行人就很容易更改或者否认资产定义文件。

李嘉图合约保证了不可否认性,让合约不可更改,因此它在赎回人和发行人之间建立起了仲裁机制。

同时,由于资产定义文件不可更改,就可以把它保存在赎回人自己的存储上,避免了恶意发行人断开合约访问。

玖壹区块链声明

加微信:469649885区块链培训教程
还可免费获取区块链培训班试学名额

分享:

扫一扫在手机阅读、分享本文

区块链评论

玖壹区块链培训

玖壹区块链培训学院简称(玖壹学院http://www.91xiubbs.com/)提供区块链技术培训资料、区块链开发培训视频教程等下载,不过网上自学区块链技术课程必然存在一些缺陷:遇到问题易卡壳、学习周期漫长、无针对性等。区块链培训机构现场面对面的讲授区块链培训课程可以让您和团队在最短时间内掌握正确、系统、高效的区块链实战技术。