Hi 游客

更多精彩,请登录!

比特池塘 区块链前沿 正文

简析跨链划转的工作原理

vani2017
136 0 0
众所周知,完全基于Bitcoin或Ethereum公链开发部署的应用,普遍存在适用性差、效率低、使用成本高昂等问题,导致区块链技术难以大规模普及应用。# o. r% r5 t8 c, {
1 D# x- Y2 M& A* H) [7 O- K) x
    因此,人们提出了侧链、Plasma、闪电网络等技术,试图绕过公链系统,在其外部建立细分领域的应用系统。
1 o, L  C# \/ s: i" ^2 N; h% j5 i- q1 K6 ]
    如果外部系统也是一个区块链系统(可称之为应用链),那就涉及到了跨链划转操作:将Bitcoin或Ethereum(可称之为主链或根链)上的资金划转到应用链,或将应用链上的资金划转回主链。. A; g, G( ^. \1 ?8 f1 \8 m1 N8 p

8 k6 E* n" \: _: l    应用链的好处
! D* ]/ A+ p0 X
  r% w& t4 c6 N; y    013 x/ p+ R+ r" B, W& Q! n" A1 T! E
' f+ J+ y1 b: d$ D5 q. H
    应用链可针对细分领域进行设计,能够更好地适应千姿百态的应用需求,更容易与人工智能、大数据等技术相结合,为重量级应用提供基础支撑平台,加速推进区块链技术应用落地;
& a* w& ^2 U2 x8 S8 y* S2 E9 M1 @! |* @3 T- i, k
    02  z9 ]' l3 _2 T: F

/ v2 z1 x: U1 y& D    用户只需要采用同一个密钥帐户,在主链上执行划转操作,然后就可以在应用链上快速、高效、低成本地执行转账、运行智能合约;5 K% n; z1 {- f% j4 S

! q1 U0 A0 @( }0 [    03
3 ]( u4 M1 l; Y" y6 s1 l( X( Q/ @" m
    能够更好地实现支付功能,解决了主链上的交易费用昂贵和网络拥堵的问题,提高了数字货币支付和现有的法币支付系统的竞争力。当用户选择了应用链进行操作的时候,可高效、方便地执行高频小额转账交易。' i& F7 l; z) W: z+ L6 m- ^
0 F( c( C% J) |/ E0 |$ R4 v# ]
    应用链的问题
& B$ |# q) G6 M& S- C2 {/ `" @& L( j. n: x& U$ `, o( {+ z; a
    应用链的安全性要比主链弱一些,主链上的资金划转到应用链后,若应用链出现安全事故,可能会给用户造成财产损失。因此在应用链的设计中,要考虑到资金如何能够安全流回主链。( G: o5 l& C' F0 b# R! t: f- T
8 c9 J1 @% W( v$ Y# h" S& z5 f" \
    主链资金划转到应用链
3 f& D& [, T& c$ e9 m1 w3 N5 }9 D3 r: `4 F2 ~
    01
7 L' D  `! B7 d  u. |! Z1 L1 s& X2 q7 x9 B+ z) B
    Alice发起一笔交易,将8个Bitcoin存入一个多重签名地址,这个地址里的币被多个管理员所控制,是一个资金的冻结池。这笔交易被打包到主链的M3区块中。3 b3 r$ b; i6 J2 G& v5 q: Z8 T8 {
. D2 R# v! e0 ~$ M; a
    02
7 e$ O( y$ l. q
) `, ~/ Z1 N' F    应用链需要感知、查询主链,但主链是一个封闭的系统,并不知道应用链的存在。当应用链获悉了Alice在主链M3区块中的冻结操作后,就会释放对应量的Secoin。
8 j6 N4 e$ [$ |  S8 X
3 A) J! Y- a! A. J# O( g- N1 U    03- C) T7 {! M4 k) a6 H& G
) S% e- ^0 G0 [6 k3 r. h
    Bitcoin和Secoin在划转过程中的兑换比例可以是1:1,也可以是1:N,甚至可以引入更复杂的机制,比如Bancor算法。在图1中,应用链的一个出块节点在S4区块中按照1:1的规则释放了8个Secoin到Alice的账户。
2 g/ @1 I6 s: b2 _
0 Y' g* Y: [- l    图1:跨链划转示意图,来自《Drivechains,SidechainsandHybrid2-waypegDesigns》! D9 ^9 T8 |6 c0 T

& H6 F% c  t' [+ i. A# H    应用链资金划转到主链
0 C% p( w' s& f1 l8 O( o+ r4 v2 U* @9 K. }/ y
    01. M& w- |( Y6 y6 g

) r% h% W! z, J6 H1 z3 Z  e9 Y    若Alice在应用链上给Bob转了3个Secoin,然后Bob在应用链上发起一笔交易将3个Secoin冻结,这笔交易被打包到应用链的S32区块中。
1 D  u# v0 g  S  B2 R* X+ ]5 M$ R) \: r0 ~8 u" C+ r3 P
    024 z. l( N0 S* }* g  L

4 @2 q0 K! w" N* f. ?    应用链的管理组获悉S32区块中的冻结操作后,会通过多重签名机制,在主链的冻结池中取出3个Bitcoin转给Bob,这样就完成了从应用链到主链的划转操作。
/ ?* ~3 s3 h3 G+ e% q8 `. X' A6 d' Z* P7 |' S, W
    多重签名管理冻结池的弊端
2 a" N, Z; ?  D# M3 E
1 T# T8 `/ o) V) j+ k1 F% ]! Z% B    由于主链不能感知到应用链的存在,因此采用了多重签名管理冻结池的机制,M个管理员中有N个签名(N
- N" r2 H+ z% p( @% v$ p& G( p
- o% `2 j1 v: w6 X3 J" E2 L    由于Etherum带有图灵完备的EVM,理论上可以实现任意复杂的程序逻辑,所以可在智能合约中实现跨链划转操作,比如在Plasma方案中,用户只需向合约提交证明数据,合约程序就会释放对应量的币并发送到该用户的账户地址下,完成从应用链到主链的划转操作。( D! ^( Y  G0 _8 i7 T
/ d5 U7 m  d3 ?- m& K5 B1 v- s
    对于Bitcoin这样的系统,由于不带有图灵完备的智能合约功能,若不采用多重签名机制,就得升级改造现有的系统架构,引入一定的跨链划转标准,让主链能够感知到应用链上的某些特殊动作。! q$ Z4 ]. a0 Y0 {( n3 H& K7 H
6 [3 W9 f4 a7 c
    对于全新设计的公链项目,设计者应提前考虑好如何支持跨链划转功能。
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

vani2017 小学生
  • 粉丝

    0

  • 关注

    0

  • 主题

    8