• 沒有找到結果。

区块链前沿热点

在文檔中 区块链原理及其核心技术 (頁 24-35)

学 报

4   区块链前沿热点

第3节详细介绍了区块链框架中的三项最核心 且最基本的技术密码学共识机制和区块链网络. 随着该技术被广泛应用关于其隐私性安全性和性 能等方面存在的问题和优化方案备受关注.本节将 介绍在区块链隐私保护区块链攻击方案和区块链 可扩展性三个方面的研究进展.

41 区块链隐私保护

如上文介绍区块链使用数字签名保障用户数 据的隐私性如比特币系统使用椭圆曲线签名算法. 尽管无法直接从公钥地址反推出用户的私钥但是 由于区块链历史数据全网可见基于这些公开的数 据能够分析出用户相关隐私信息在一定程度上破 坏了用户数据隐私性.

4.1.1 比特币匿名性分析

通常货币类型的应用中对交易匿名性的要求 格外高因此区块链数字签名部分的技术改良也主 要见于一些货币的应用.此外比特币是最广泛使用 的公有链历史交易数据丰富很多研究从不同的角 度分析了比特币的匿名性.分析过程通常是将获取 的信息抽象成网络或者图结构如图27~图30

将交易的信息汇总分析其静态动态规律. Reid等人从这些信息中抽象出了交易网络 和用户网络.交易网络是一个有向图如图27所示 顶点表示交易边表示了一个交易输出作为另一个 交易输入的关系.利用2009年~2011年的交易数 据获得交易网络图之后对交易的累积出入度情况 进行分析.使用统计模型提炼出其静态分布情况并 进行动态分析如交易网络边缘数量密度和平均路 径长度.用户网络代表了用户之间的比特币流量如 图28所示顶点表示一个公钥地址边表示公钥地 址之间比特币的转移.由于一个用户拥有大量的公 钥地址因此仅仅利用上述网络是不完整的不能直 观地显示出网络中各用户的比特币流动关系.

图2 交易网络抽象图

图2 用户网络抽象图

一笔交易中的多个输入通常来自同一账户因 此可利用这一属性来收缩不完整网络中的顶点子 集.因此文中又构造了一个辅助网络见图29通过 找到其中非平凡的最大连通分量来对应到不同用 户.对用户网络使用相同的统计模型进行分析得到 了其静态特征网络累积度的分布情况和动态特征 如用户网络的边缘数量密度和平均路径长度.除获 取上述信息还有一些非网络信息如果能将上述图 结构和非网络信息联系起来则说明比特币网络的 匿名性还远远不够.文中给出了一个简单的例子利 用theBitcoinFaucet网络提供的信息和已经提炼 出来的交易网络用户网络能够获取一周内接收比

1期 蔡晓晴等区块链原理及其核心技术

《 计

算 机

学 报

图2 辅助网络示意图

特币的用户的地理定位IP地址的地图.

Fleder等人构建的图与Reid等人构建的 图非常类似.不过它的分析起点不是从交易网络和 用户网络图而是从网络环境如某些公开论坛.在 网络社交平台中收集一些粗糙的交易信息再利用 这些粗略信息从交易记录中筛选合适的消息.再结 合Reid等人方法构建图可以从中获取用户参 与的其他活动进而标记一些有着大流量的用户节 点.文中已成功将论坛中的账户对应的知名实体 SatoshiDICE分析出来表明了比特币及其相似系

统中对于用户隐私性的保护还不足够.

Meiklejohn等人追踪比特币的流动过程.通 过发起重识别攻击以及从网络论坛中采集信息再 使用启发式聚集的方法将这些地址分组最后再 通过重验证的方式确定每组对应的主要机构.在文 中虽然没有以一种图表的形式抽象出所有的交易 但是其使用的聚集方法一种与Reid等人文中 相似根据交易的输入进行聚集另外一种是扩 展是基于找零的变更地址关系进行聚集.这篇文 章在讨论比特币本身的匿名性强弱的背后也希 望能够一定程度上帮助判断非法交易和维护交易 环境.Barber等人定性地分析了比特币系统的易 受损性和系统中一些常见的攻击方式并提出了一 种减少信任的方法来增强系统的匿名性.系统中共 有三类交易分别为承诺交易声明交易撤款交易 分别用于正常交易和有参与方作恶时.参与交易的 双方分别生成两对公私钥用于签署不同的交易保 障了不可链接性见图30.这些论文都说明了基于 比特币系统提炼出的区块链技术在安全性上还远远 不够比特币系统中的匿名性是通过假名的方式表 现的并不是真正的匿名性尽管并没有对应到个人 的真实信息但是在有了足够的用户额外信息之后

图3 通过减少信任增强系统匿名性

基于大数据的分析或者其他有针对性的攻击假匿 名性系统无法提供承诺保障.

4.1.2 匿名性提升方案

针对上述问题很多研究提出了改善区块链系 统匿名性的方案主流方案有三种混币技术环签 名零知识证明.

混币技术

混币技术的基本思想是通过多个标准交易中 的多地址合作切断每笔交易的输入输出之间的联 系.最简单的混币技术通过在系统中增加一些中间 可信机构

①②

来完成零钱兑换等减少了用户隐私暴 露的几率.显然这种方式有着较为严重的局限性 运营商可能会窃取资金追踪货币或者遭遇了倒闭 等情况.

CoinJoin利用了比特币的多签名脚本将多个 交易合并为一个交易.Dash引入了主节点将Coin Join作为协议的一部分.主节点除了维持网络的安

全性之外还提供CoinJoin隐私服务.用户可以向 主节点请求进行单轮或多轮的混币服务.CoinJoin 的优点是简单高效与原有比特币的脚本完全兼容 且参与者之间不可能出现窃取他人货币的情况.但 缺点在于参与成员之间可能可以建立输入输出之间 的关联.Tumblebit是基于不可信中介的一类混币 技术关键点在于使用cutandchoose盲签名多 签名和RSA加密技术使得中介只能提供服务而 不能将交易的输入输出建立联系.缺点在于需要发 送方接收方和第三方进行多次交互.

环签名

门罗币Monero是Cryptonote

的一个应用 也是最有名的隐私保护数字货币之一.门罗币中首 先定义了不可链接性Unlinkability和不可追踪性

计  算  机  学  报

① ②

dG

《 计

算 机

学 报

Untraceability

后来加入了保密支付来保证

(=犜'+Δ狋狋>0δ狋(' !代表犜犚('! 的网 络传输时间δ狋(( '代表犜犚''! 的网络传输时 间.见式

('-狋''≈τ(+δ狋(' !τ'+δ狋'( '

≈Δ狋+δ狋(' !-δ狋'( '   文章中要求满足δ狋(' !<δ狋'( '假如这样则狋''< 狋('则满足了第一个条件.

犜犚( 在区块链网络中被确认

文章中将一个在时间间隔区块包含交 易犜犚' 的概率建模见式

狆ν=Pr'·

1-Pr'=η'·

1-η'   同样一个包含交易犜犚( 在同一时间间隔内生 成的概率见式

(=Pr(·

1-Pr(=η(·

1-η(   如果在时间狋=狊·δ狋+狋0狋0为两个交易犜犚' 和 犜犚( 共同存在与网络的时刻δ狋是定义的相等时间 间隔网络中的每个节点已收到至少交易犜犚' 或 犜犚以下模型是适用的见式

η(η(η'η' 犽<狊 η(=η(=η(η'=η'=η' 烅烄

烆 其他   在这里要求见式

犻狊η'+η(=η'+η(   计算双花攻击成功的概率文章中假设犽η' η(不交换他们新建模块.这样正在挖掘犜犚' 的节

点生成新块所需的狋犵'时间与正在挖掘犜犚(狋犵(的 节点所需的狋'时间无关.据此满足第二个要求的 概率犘犛计算见式

=犘狉狅犫(<狋'+1

2犘狉狅犫(=狋' 即犘由两部分组成一个对应包含犜犚( 的块首先 生成的事件第二个对应包含犜犚( 和犜犚' 的块同 时生成的事件狋犵(=狋犵'.在后一种情况下包含 犜犚( 的块最终被比特币同行采用的概率是0.5.

在这里犘狉狅犫狋犵(<狋犵'和犘狉狅犫狋犵(=狋犵'的计算 见式

犘狉狅犫(<狋'=犵

(=0狆((·''>犵(|犵(

=η(1-η'+犵

(=0η((·1-η'(·

(-1

犼=01-η'1-η(

犘狉狅犫(=狋'=犵

(=1狆η'(η((·

(1-η'1-η(

  ' 的服务时间小于' 可以检测到双花行为 时间

由于服务时间远远小于确认交易的时间供应 商在提供it服务之前无法验证犜犚'是否包含在最 近的比特币块中.此外即使'的客户端在向(提供 服务之前同时接收到犜犚( 和犜犚'在当前的Bitc oin实现中也不会向'传播任何消息警告.因此

果需求已经被满足那么需求在比特币客户 端中总是被满足.

此外他们对于现有快速支付中防止双花攻击 的两种方法UsingaListeningPeriodInserting ObserversintheNetwork进行分析说明其存

在的弊端.最后他们提出了自己的的解决方法

ForwardingDoubleSpendingAttemptsinthe Network来对抗快速支付场景中的双花攻击.

Rosenfeld研究了典型攻击背后的随机过程 及其成功概率解释了比特币系统的基本架构对抗 双花的对策以及这种保护的破坏方式.本文推导了 一次双花攻击成果的概率讨论了什么情况下进行 双花攻击是经济的并且证明了等待6个确认是绝 对安全的或等待时间长度是双花攻击的关键因素是 错误的.在文章中对于双花攻击成功犪进行了计 算见式并以不同方式列表讨论了双花攻击的 经济性.

=min狇

( )

()

狕+1

狕0∧狇 烅烄

烆 狆

式中狆表示该区块由诚实矿工发现的概率狇表示 该区块由不诚实矿工发现的概率狕表示诚实矿工 比非诚实矿工多挖的区块.

Bissias等人提出并验证了一个新的区块链

Bissias等人提出并验证了一个新的区块链

在文檔中 区块链原理及其核心技术 (頁 24-35)

相關文件