编辑: 645135144 2019-07-02

五、跨链 1. 跨链共识 用户共识: 两条独立的公链如果想要进行跨链的资产交易,首先需要对用户 达成共识, 即在一个公链上的地址转移到另外一条公链时需要双方都对对方的公 链先进行注册.EKT 提出了一种名为 长地址 的解决方案.在EKT 系统中存在 两种地址: 内部地址 和 外部地址 . 内部地址就是在 EKT 系统中使用的地址, 用于在EKT 主链和其他主链之间转账和其他 DAPP 的开发使用;

外部地址的长度为

68 字节,前4个字节存储外部地址的公链 ID 的长度和在其公链上内部地址的长 度,后n位存储的是公链 id 和内部地址,中间用 0x00 填充. Token 共识:和用户共识类似,Token 的地址也分为 内部地址 和 外部地 址 .内部地址和外部地址的含义参考上一部分. 交易共识:跨公链的交易共识是这样运作的:将EKT 主链定义为 PC1,ETH 定义为 PC2.在PC1 上有一个用户 user1,地址位 address1, 在PC2 上拥有一个 用户 user2.在PC1 上有一个 Token 定义为 T1.如果 user1 要将自己在 PC1 上拥 有的 T1 转移给 PC2 上的 user2,那么在 PC2 上必须已经对 PC1 这条公链和 T1 进 行了注册,这时就有了第一个报文:跨链握手报文.当PC2 对上述报文回复正确 之后, user1 才可以将自己的 T1 转移到 PC2. 在此跨公链转账打包成功之后, PC1 需要将交易信息和区块头信息发送给 PC2 进行校验, 这就是第二个报文: 跨链交 易报文.PC2 校验之后存入自己的区块链中之后需要给 PC1 回复第三个报文:跨 链确认报文,否则 PC1 会继续给 PC2 发送跨链交易报文,直到自己收到 PC2 的 第三个报文:跨链确认报文.给user1 将自己的 T1 转移到了 PC2 上之后,这些 Token 在PC2 上怎么转移对于 PC1 来说是无关紧要的, 因为在 PC1 上记录的是将 T1 转移到了 PC2,而在 PC2 向PC1 发送跨链交易报文的时候,PC1 也是不会校验 在PC2 上每个地址持有 T1 的数量, 而是校验在 PC1 链中当前的 PC2 公链 id 拥有 的T1 的数量.通过这种方式完成了跨公链的资产转移. 2. 报文协议 为了兼容大多数公链, EKT 定义的报文协议以 HTTP 协议为基础, 请求和响 应的 Content-Type 必须为 application/json, 请求参数和响应参数必须与协议中的 规定相同.关于跨链协议的具体内容,详见 跨链报文协议.

六、智能合约语言――AWM 为了方便开发者基于 EKT 开发符合自己实际需求的智能合约.我们设计了 一门新的智能合约开发语言:AWM. AWM 是一个事件驱动的语言.事件分为 两种类型: 用户事件和系统事件. 用户事件是指 DApp........

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题