Hi 游客

更多精彩,请登录!

比特池塘 区块链前沿 正文

简析跨链划转的工作原理

vani2017
138 0 0
众所周知,完全基于Bitcoin或Ethereum公链开发部署的应用,普遍存在适用性差、效率低、使用成本高昂等问题,导致区块链技术难以大规模普及应用。2 G/ i% c3 W( t9 z, L6 _+ w
' g9 o/ O& x9 K: u  D$ b$ y
    因此,人们提出了侧链、Plasma、闪电网络等技术,试图绕过公链系统,在其外部建立细分领域的应用系统。
6 K9 |- |, B. T7 \  a
4 P6 @( T, {. H/ q; h# h8 s& {    如果外部系统也是一个区块链系统(可称之为应用链),那就涉及到了跨链划转操作:将Bitcoin或Ethereum(可称之为主链或根链)上的资金划转到应用链,或将应用链上的资金划转回主链。6 x. Y# y4 \% b/ k- }

9 |# f; C& K5 t" D& N    应用链的好处
. U2 f8 g7 i8 u
# g' X" a7 Y$ [5 x0 r& r' p    017 G1 H5 @, F0 e$ w* q* M
) A/ |3 ~3 v8 u$ ~, t  o
    应用链可针对细分领域进行设计,能够更好地适应千姿百态的应用需求,更容易与人工智能、大数据等技术相结合,为重量级应用提供基础支撑平台,加速推进区块链技术应用落地;
% j' M7 Z+ B5 P3 o. X+ Y/ v; }  H3 v; G, a* r4 y+ l% ?) ~
    02
  w7 F% t7 i3 W, h' U+ `: M6 n( ^6 y5 Z: F/ G
    用户只需要采用同一个密钥帐户,在主链上执行划转操作,然后就可以在应用链上快速、高效、低成本地执行转账、运行智能合约;6 _' e6 V3 ?; P, y0 \7 u- Y" Z+ F
* J- O: F1 {0 h2 `- g
    03
! _% m8 g3 v$ [2 W. p" x" l) i2 E* H' Y6 ~& F  |8 n
    能够更好地实现支付功能,解决了主链上的交易费用昂贵和网络拥堵的问题,提高了数字货币支付和现有的法币支付系统的竞争力。当用户选择了应用链进行操作的时候,可高效、方便地执行高频小额转账交易。( v5 m& ]* i. `8 T; X

& R( g- f2 h2 {% K    应用链的问题' j# Z. X% }# I# Z
6 i* u9 A5 J' |+ Y( s2 [0 p
    应用链的安全性要比主链弱一些,主链上的资金划转到应用链后,若应用链出现安全事故,可能会给用户造成财产损失。因此在应用链的设计中,要考虑到资金如何能够安全流回主链。
$ l; |& g0 {- ]' y; O: j8 a( E) w. i- L+ `$ ^
    主链资金划转到应用链, d/ y! H# T0 l8 t; U' Q" X' i
; t4 Z( L/ }6 b! k
    01& T$ u, r8 B  U% Q! s

% ]/ d7 G2 B! \5 |. r( b    Alice发起一笔交易,将8个Bitcoin存入一个多重签名地址,这个地址里的币被多个管理员所控制,是一个资金的冻结池。这笔交易被打包到主链的M3区块中。) j/ e2 p, d( \+ F: o/ e2 p

4 P# ]* X) B: ?    02
- u3 d! G' G+ D- k6 M, A% s4 y3 |3 a& f/ E6 w$ n
    应用链需要感知、查询主链,但主链是一个封闭的系统,并不知道应用链的存在。当应用链获悉了Alice在主链M3区块中的冻结操作后,就会释放对应量的Secoin。. q7 c, D- u0 q8 D2 p9 c

9 L3 ~2 d" o. b2 ^1 o5 ~# b    03( a$ l% x1 y: ]8 T

3 V' L# N, X* e( e    Bitcoin和Secoin在划转过程中的兑换比例可以是1:1,也可以是1:N,甚至可以引入更复杂的机制,比如Bancor算法。在图1中,应用链的一个出块节点在S4区块中按照1:1的规则释放了8个Secoin到Alice的账户。. n7 W% Y9 q6 N: F
" a( {7 _2 R2 U9 I6 c
    图1:跨链划转示意图,来自《Drivechains,SidechainsandHybrid2-waypegDesigns》" [+ Z: ]$ |, t0 [0 S; m; A' d( U

' |* T# R- t! X% O$ Z0 U# t: O    应用链资金划转到主链2 ]' |5 T: m3 `( l
% b$ m) H& J' A
    01
7 R, s* L6 \& n" \! H0 h* g, g( m6 \/ c" I" f7 |& I
    若Alice在应用链上给Bob转了3个Secoin,然后Bob在应用链上发起一笔交易将3个Secoin冻结,这笔交易被打包到应用链的S32区块中。
! B- d6 ^6 T1 S) u$ n4 T# Y& N& j, \" {; D* f
    02
( Y% [1 G5 U# g2 m
6 |( P% p- e  x" a: x    应用链的管理组获悉S32区块中的冻结操作后,会通过多重签名机制,在主链的冻结池中取出3个Bitcoin转给Bob,这样就完成了从应用链到主链的划转操作。
+ }! F4 E: V2 N' w. V
4 E% o8 W. n  ]" [% I    多重签名管理冻结池的弊端7 ]% m$ [# j$ G& [

# @2 j! V+ J) L$ ^    由于主链不能感知到应用链的存在,因此采用了多重签名管理冻结池的机制,M个管理员中有N个签名(N* ]* _) a0 C5 O: {/ O) J  H( Z
1 r4 O* Z, W  {7 p7 d) [* k; V
    由于Etherum带有图灵完备的EVM,理论上可以实现任意复杂的程序逻辑,所以可在智能合约中实现跨链划转操作,比如在Plasma方案中,用户只需向合约提交证明数据,合约程序就会释放对应量的币并发送到该用户的账户地址下,完成从应用链到主链的划转操作。
# Z1 `: P6 A" h
5 G  z. }- T5 u1 B& i    对于Bitcoin这样的系统,由于不带有图灵完备的智能合约功能,若不采用多重签名机制,就得升级改造现有的系统架构,引入一定的跨链划转标准,让主链能够感知到应用链上的某些特殊动作。
7 g% z/ h, k' [9 W9 j& k
, L. W" R- R/ d5 n, _) T- Q    对于全新设计的公链项目,设计者应提前考虑好如何支持跨链划转功能。
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

vani2017 小学生
  • 粉丝

    0

  • 关注

    0

  • 主题

    8