区块见闻 区块见闻
Ctrl+D收藏区块见闻

UST:什么是分布式系统可信任的初始化阶段?_EtherBone

作者:

时间:

编者注:关于“trusted”一词,常见的翻译是“可信”,例如“trustedthirdparty”翻成“可信第三方”,“trustedsetup”翻译成“可信初始化”。然而我以为,翻译成“可信”恰恰错失了这个词原本的意思,因为“trusted”一词表达的并不是一种价值判断,而是一种事实判断,即协议的运行需要信任;作为一种修辞,它的作用是标记信任的锚点。举例而言,带有trustedthirdparty的协议,意味着协议的安全性依赖于一些第三方,他们的作为会影响协议的安全性,用户在使用协议时也实质上信任了这些第三方不会违反协议。正因为如此,在翻译尼克·萨博的《TrustedThirdPartiesareSecurityHoles》一文时,我就把“trusted”翻译成“受信任的”。同样地,在这篇文章中,我们同样使用被动语态来翻译“trusted”。

如果你没有做好准备,那就是准备失败。——《圣经世界》,1919

当你想要了解一个去中心化系统时,必须搞清楚的问题之一是:这个系统有要被信任的初始化阶段么?

一个问题随之而来:比特币和以太坊有要被信任的初始化阶段么?

许多分布式计算和密码学协议都设计了一个初始化阶段。对于一个多阶段协议而言,被信任的初始化设置有其特殊性。我们称第一个阶段为初始化阶段,第二个阶段为主阶段?。通常有两个性质将初始化阶段与主阶段区分开来。

主阶段通常会执行许多重复的任务。而初始化阶段只需执行一次,就能开启重复运行许多实例的主阶段。

初始化阶段通常都是?输入无关的,也就是说,它根本不会使用来自各参与方的私有输入。此外,有时候初始化阶段甚至是?函数无关的,跟主阶段各参与方想要计算什么函数根本无关;这一阶段每个参与方都只知道自己想要计算某些函数。因此,我们通常将初始化阶段和主阶段分别称为离线阶段和在线阶段

AltTab Capital高管:新加坡新出台的加密新规必须对什么是信托进行定义:金色财经报道,针对新加坡要求加密平台将客户资金存放在信托中,AltTab Capital投资者关系主管?Michael Silberberg评论道,虽然将客户与企业资产分开的意图是正确的,但必须对什么是信托、什么不是信托有一个经过深思熟虑的定义。在上一个周期中,我们看到托管机构和交易所都解散了。法规中将对合格托管人进行认证流程,并定义加密密钥管理和运营结构。我们看到了全球范围内受监管托管人的趋势,其中许多是在住所拥有机构分类账和类似Metamas的小公司,其中监管仅意味着作为公司备案。更多的交易对手并不一定意味着更多的安全性。[2023/7/5 22:18:25]

你可以将初始化阶段看作一个由完全可信的实体?T?运行的理想函数,理想到我们觉得无可挑剔。例如,假设公钥基础设施的安全性就意味着:我们假设存在一个完全可信的实体,每个参与方都向该实体提交自己的公开加密密钥,然后该实体会把这些公钥广播给所有的参与方。在本文中,我们将通过研究各种初始化假设所用的理想函数,来回顾一下信任初始化的常见类型。

可以这样来建模被信任的实体:存在一组初始的参与方?P1,...,Pn?和被信任的实体?T?交互。这些参与方可以发送输入?x1,...,xn?给?T,而?T?反过来运行一些函数?F,产生输出?y1,...,yn?,并将?yi?发送给?Pi。这一过程可能是“交互性”的,也就是说它可能重复许多次。由于这是在描述一个理想中的世界,因为我们总是假设各参与方与受信任的实体之间的通信信道是安全的。

在下文中,我们认为绝大多数函数都属于以下五种类型之一:

华尔街分析师:比特币什么都不是,只是一股蒸汽:华尔街“全明星”分析师安迪·凯斯勒在1月31日《华尔街日报》观点版面发表文章《比特币泡沫背后》。

文章中他表示:比特币什么都不是,它只是一股蒸汽,一种想法的概念。使用比特币的交易非常少。它缺乏价值存储属性——任何一种一周下跌30%的东西都不能发挥这种作用。但彭博社(Bloomberg)的财富报道称:“比特币新手告诉我们,是什么促使他们以创纪录的价格买入。“很多负担不起的人可能因此受到严重伤害。Robinhood周五限制了一些加密货币的购买。

所以加密领域都将目光聚焦于二月中旬。我不知道纽约总检察长会发现什么。她可能会结束调查,继续自己的快乐生活,因为根本就没有犯罪,或者发现一个让伯尼·麦道夫看起来像从柠檬水摊上偷东西的局。我们知道当热空气耗尽时泡沫会发生什么。[2021/2/2 18:41:07]

没有设置:这是最简单的一种情况,我们实际上并不需要信任某些实体或某些初始化设置。最小通信假设是参与方可以访问某种类型的通信媒介。不过,没有设置很多时候也指代参与方的身份是全局知晓的这种设定。

成对设置:在这种设置下,我们假设存在一些初始的参与方?P1,...,Pn,并且每两个参与方之间都有可靠的通信信道。特别是,在最简单的成对设置假设中,当参与方?Pi?在通道中收到一条消息时,它可以确认这条消息来自参与方?Pj?。

广播设置:在这类设置中,我们假设不需要用到秘密。PKI设置就是一个典型的例子,它只需要用广播来传递公钥。

部分公开设置:经常被称为公共参考串模型。许多密码学协议都利用这一设置来提升效率。其中一个特殊的例子就是随机信标。

掌柜调查署 | 瓦洛兰:投资者最难的是判断当前处于什么行情:在今日举行的掌柜调查署中,bitget交易员、瓦洛兰基金创始人瓦洛兰分享投资心得时指出,投资者最难的是,判断当前处于什么行情之下,因为什么行情做什么单。

一、水平震荡行行情,水平震荡行情初,高空做空,低位低多;水平震荡行情尾,上破追多,下破追空。

二、单边上涨或单边下跌行情,单边上涨行情,中长线多单,不开空单;单边下跌行情,中长线空单,不开多单。

三、震荡上涨或震荡下跌行情,震荡上涨行情,逢低做多,空快进快出;震荡上涨行情,逢高做空,多快进快出。

因此,如果能先判断出当前是什么行情,胜率将很大提高。行情判断难度不仅体现在人工下单上,也提现在工作室的量化交易程序的策略编辑和选用上。[2020/5/19]

完全私有设置:在安全多方计算协议的语境中通常被称为?离线阶段。这一类型中的初始化阶段需要计算一个相当复杂的依赖各参与方的输出。在SPDZ-2中创建OT和乘法三元组?的阶段就是一个例子。

我们来详细介绍一下这五种设置的变体,举出一些案例并讨论其优缺点。最后,我们也会讨论一些初始化阶段的潜在替代方案。我们使用n来表示系统中的参与方数量,使用f来表示故障的参与方数量。

1.没有设置

当一个协议没有需要被信任的初始化设置时,也就没什么需要担心的了。这类协议比较容易取得我们的信任。但另一方面,它们也存在固有的局限性。

没有设置的环境有两种形式:1)假设参与方之间彼此一无所知,有时也被称为匿名通道模型,2)假设所有参与方的身份信息都是全局知晓的,这个假设在许多现实世界的应用中是完全可以接受的。但是,这两种方式都缺乏经过认证的信息通道,敌人可以随意地发起中间人攻击。

Game.com创始人徐乐:现在谁都定义不了什么是区块链游戏 :Game.com的CEO徐乐接受采访时说:“我的第一条twitter是在07年发的。进入游戏领域10年后,我发了第二条twitter,说Game.com会告诉全世界什么是区块链游戏。我说那句话的意思是:目前没有人能够定义什么是区块链游戏。目前的概念都是错误的。只有干出来,干成了标准,做成了老大,再去定义才有意义。”后又在朋友圈分享想法:“1.首先需打造基础服务,甚至比交易所还要安全的数字货币充提币的自动化系统加人工风控,冷钱包存储永不联网的保障用户的数字资产安全;2.有基础后,才有资格为数字货币玩家群体提供娱乐服务,服务端的内容只有在非常必要的情况下才有必要放在区块链上;3.一定要用区块链思维去思考和设计新玩法,进行再创造,舍弃旧世界的东西。”[2018/3/3]

在传统的密码学中,这类模型的开创性研究是由Dolev、Dwork和Naor提出的,用于不可延展的加密算法和零知识等特定任务,后来被Barak等人?推广到了任意计算。

匿名模型的另一个研究方向基于对敌手能力的更精确假设,也就是说,该假设限制了敌人和诚实参与方的计算能力比例。已有研究证明,在这样的模型中,从头开始构建一个有限的PKI模型是有可能的。案例可以参见Aspnes,Jackson和Krishnamurthy,以及少数直接受到比特币类型谜题启发的方法。

2.成对设置

在成对设置中,我们假设每一对参与方之间的通信信道是经过认证的。这是分布式密码学和分布式计算中的经典假设。Fisher、Lynch和Merritt在1985年研究了在这种设置下,参与者数量相对于敌手数量的下界:当n<=3f时,即便使用了这种设置,即便敌手的资源假设是传统的多项式有界假设,也不可能达成哪怕是弱形式的拜占庭共识。

用户提交的韩币退款申请一周还未到账,Bithumb表示由于内部问题,但不知道什么时候处理:1月11日,一韩国用户向韩国最大的虚拟货币交易所Bithumb提交韩币退款申请,但是已经过了1周都未到账。对于这个问题Bithumb交易所表示 :“是由于内部问题导致延迟,但是什么时候会处理还不知道”。 现在有很多用户都提交了韩币退款申请,但都得不到处理。[2018/1/17]

而另一方面,当n>3f时,成对设置可以完美实现任何函数。这是Ben-Or、Goldwasser和Widgerson在1988年发表的著名研究成果,详细的证明请看Asharov和Lindell。

3.广播设置

广播意味着即便可信实体是“透明的”,也就是说,该实体所接收/发送的所有输入/输出以及它的随机字符串都是公开的,系统的安全性也不会受到损害。典型的例子就是那些使用一个被信任的实体来广播所有参与方公钥的协议。

使用PKI既可以提高异步拜占庭协议的复杂性,也可以将同步拜占庭协议的容错能力提升至n=2f1。

请注意,此处存在循环论证的风险:有了PKI设置,就可以分别在n=2f1时实现同步模型中的拜占庭共识,还能在n=f1时实现拜占庭广播。但如果没有PKI设置,那么初始化PKI的广播环境需满足n>3f。

优点:完全公开设置的一个重要优点就是它相对简单,并且可以减少受攻击面。

风险:这类设置的失败通常会导致模棱两可。给不同的参与方提供不同的密钥可能会导致未来的协议失败。

4.部分公开设置

部分公开意味着来自受信任实体?T?的输出对所有参与方都公开,然而可能要求参与方的输入?x1,...,xn?和?T?的随机字符串?r?应当保密。例如,设想一个持续接受用户消息、并需要在未来那么某个时间?t?将所有消息一次性全部显示出来的系统。这样一个系统可以使用如下初始化设置:函数?F?不接收任何来自参与方的输入,并执行如下操作:生成用于加密机制的密钥对,然后生成一个Rivest、Shamir和Wagner?时间锁谜题?p,用于在到达时间?t?之前隐藏?sk;最后,向各参与方输出谜题?p?和加密密钥?pk,从而结束初始化阶段。在主阶段,用户可以使用?pk?加密他们的消息并广播。此外,他们开始解决谜题以在时间?t?内获得解密密钥?sk,从而解密所有消息。请注意函数?F?的所有输出都是对参与方公开的,但这个被信任的实体的内部状态的随机字符串)必须保密。

信任一个带有秘密值的预计算流程通常效益显著。此类设置的风险是,系统的属性现在依赖于初始化阶段的隐私性。而在初始化过程中想要检测信息泄漏事件是非常困难的。

要求初始化过程公开一个公共值的好处是更容易确保这一属性。这一模型通常被称为公共参考串模型。这里我们举两个例子:

针对高效可验证秘密共享的设置——?Kate、Zaverucha和Goldberg?提出了一种机制,该机制要求一个信任初始化阶段来生成一个随机的公开生成器?g?和一个私钥α。然后,初始化阶段以?g(ai)?的形式广播幂。使用这一设置,可以获得最高效的异步可验证秘密共享机制。

针对高效零知识证明的设置——少数高效的零知识协议要求CRS设置。要让这种初始化过程值得被信任,通常需要一些难度较大的MPC协议。比如,参见Bowe、Gabizon和Miers。实际上,仅仅运行一个MPC协议是远远不够的,通常来说,必须进行一个完整的初始化仪式才能建立公开的可验证性。

5.完全私有设置

这是最通用的一种初始化形式,即便是函数发送给各参与方的输出也是彼此保密的。显然,该设置最大的优点就是允许在它们之上运行强大的协议。此类初始化的实例化相当复杂,并且面临更大的受攻击面。

我们在这里集中讨论两种实例:分布式密钥生成和安全多方计算的离线阶段。

分布式密钥生成和门限签名设置

门限签名机制通常在降低词语复杂度和减少总计算开销上表现突出。而门限签名的问题在于该机制要求有个初始化过程,通常被称为分布式密钥生成初始化。

DKG函数只从每个参与方那里接收随机的比特,生成一个密钥对,然后输出?pk?给所有人并单独分享?sk?给每个参与方,使得参与方?Pi?收到?ski,sk?在每个参与方之间必须保密。

风险:在这一初始化过程中,有两个地方可能会失败。一是当共谋者数量达到门限值时秘密将会泄漏,二是某些参与方可能会收到错误的?sk。参与方有多种方式来验证其收到的?sk?的有效性,因此主要的风险发生在参与方掉线时。

安全计算的可信设置

安全多方计算协议允许一组数量为?n?的参与方?P1,...,Pn?基于他们私有输入?x1,...,xn?去计算一个电路?C,然后只显示输出?y?=?C。例如,电路?C?可以计算所有输入之和。

最新的MPC协议都被设计成离线-在线两阶段运作,其中离线是用于初始化阶段的,通常是完全保密的。一个常见的例子就是向各参与方共享乘法三元组的信任初始化阶段。具体来说,该初始化过程随机将?ai?、bi?和?ci?发给参与方?Pi,且(a1?…?an?)·(b1?…?bn)=(c1?…?cn?)。然后,在协议的主阶段,参与方分享他们的输入,也就是说,参与方?Pi?通过向?Pj?发送?x'j?使得?x'1?...?x'n?=?x'?来分享他的输入?x'。现在,各个参与方都可根据被共享的数值进行任何算术运算,也就是说,给定一个共享的秘密值?x?和?y,如果参与方?Pi?持有?xi?和?yi?使得?x1?...?xn?=?x?且?y1?...?yn?=?y,那么各参与方可以执行以下流程:

开始——给定一组共享的x1,...,xn?,使得每个参与方都可以获得?x?=?x1?...?xn。

加法/减法——各参与方?Pi?通过在本地计算?zi?=?xi??yi?,可以计算出一个共享的?z=xy。因为这遵循?z1?...?zn?=。

缩放——给定一个所有参与方都知晓的值?c,他们就可以通过每个参与方在本地计算?zi?=?cxi?来计算一个共享的?z=cx。同样的,它也遵循?z1?...?zn?==?c=?cx。

乘法——各参与方通过放弃来自初始化阶段的单个乘法三元组可以计算出一个共享的?z=xy。简单起见,我们用来表示。参与方都拥有共享的、和来自初始化阶段的三元组、、。各参与方分别计算=-和=-。由于?a?和?b?的值是由初始化设置统一选择的,因此?s?和?t?的值也是统一的,所以该过程不会泄漏任何关于?x?和?y?的信息。然后,这些参与方计算=stst?。此过程仅包括缩放和加/减法计算,因此可以由每个参与方在本地计算来获得共享的=。

风险和优势:如上所述,这样一个初始化阶段的受攻击面极大。初始化阶段的输出必须保密,也就是说,在上面的乘法过程中,要注意如果一些持有?t?的参与方结盟,获得了所有参与方共享的?a1,…,an,那么他们就可以通过计算=-算出秘密值?x。请注意,在此类初始化阶段中并不是只要做好保密就万事大吉了,我们还必须确保三元组都是正确的,也就是说,ab?必须等于?c,否则计算的输出就会出错。保护三元组不被泄漏以及不受到恶意参与方的影响是一项艰巨的任务,因此会给MPC协议带来巨大的成本。另一方面,由于初始化阶段已经输出了乘法三元组,因此协议的主阶段将变得非常快。

存在对被信任的初始化阶段的替代方案么?

在最后,我们提及几种潜在的替代方案:

一次性将大量的信任从系统中的在线阶段转移到了某个历史性的离线阶段。这引入了新的风险和安全漏洞。一种潜在的替代方案是使用一个永不停歇的初始化阶段。在此类机制中,存在一种不断可更新的CRS。最近的一个案例是SONIC。

另一种方案是使用多次初始化来生成多个公共参考串。在这种方案中,我们只假设一部分设置是忠实完成的。参见GrothandOstrovsky。

标签:IONBIOONEUSTRebellion ProtocolCDbioEtherBonecrust币价

狗狗币最新价格热门资讯
STR:委托成交详情_ING

委托成交详情 地址/openApi/entrust/deal 接收参数 提交方式:GET 示例 curl-d/openApi/entrust/deal 提交参数 参数名 是否必填 类型 示例 说.

RING:老李解币:BTC空投(头)信号已经打响,今晚大吉大利准备吃鸡_Xiotri

不懂技术、不会看盘、不知道何时进场、不会止损、不知道何时止盈、胡乱加仓、抄底被套、守不住利润过山车,行情来了抓不住.

ION:关于BiONE更新官方社群的公告_SONE

尊敬的BiONE用户: 近期BiONE接到用户反馈,有不法分子冒充BiONE官方客服身份邀请用户加入假冒社群并诱导用户进行.

TPS:关于GDFC开通充提的公告_HTT价格

公告编号:2020080902各位关心ZBG的项目方和投资者们:ZBG平台将于HKT2020年8月9日16:00对GDFC开通充币和提币功能.

区块链:V神:在加密市场中 以值得信赖的中立性作为指导原则_TED

看看以下这些情况: 人们有时候会因为政府用GDP的5%去支持某个公共项目或某个特定产业而感到不满,但政府为增强产权而导致更大规模的资本再分配时,这些人并不会说什么.

区块链:观点:区块链在集装箱运输产业链中必将不断拓展应用场景_区块链技术的应用

8月11日,剑桥大学沃尔森学院教授级终身成员及中国政法大学客座教授綦晓光、上海海事大学学者林益松、财政部中国财政科学研究院副研究员苏京春在第一财经日报刊文称,从区块链在航运物流业的分布看.