1. 首页 > 娱乐生活

阿拉丁钱包(ABAO):偏执于安全的跨链钱包体系

首先我们需要区分区块链资产存储概念与传统意义上的资产存储,区块链资产存储其实并不是存储区块链数字资产,而是存储密钥(公钥和私钥),拥有密钥即拥有了相应链条对应地址上的加密资产支配权。本文描述了一个开放的,结合了同步交易的中心化优势与中继链的公平性的跨链价值转换的钱包体系。该体系旨在建立去中心化且无需资产托管的数字资产存储、转换及管理的应用。AladdinGalaxy 的定位为下一代数字资产安全存储及管理的开放标准和基石。

数字货币的存储,最主要的问题无疑是安全问题,The DAO 攻击、coindash丢币、门头沟事件等层出不穷。著名网络安全公司 High-Tech Bridge 报告:90%的数字货币钱包是不安全的。阿拉丁社区在信息安全存储方面是偏执的,社区成员将为加密数字资产打造信息孤岛式存储,为行业提供生态级存储服务。因此我们对数字资产存储的流程安全进行了严密的规范,以确保每一步加密流程的不可逆化,并在几乎所有可预见性的安全问题上进行了多层加密,同时采取了数据分布式加密、电子数据存证、网络身份认证、数据同步共享等更规范单向的安全措施,让阿拉丁钱包能确保加密数字资产的安全。

当前全球主流数字货币钱包总量在 20 个左右,但由于各链条模型差异,大多都基于某一链条设计,例如 UTXO 模型下的比特币和 Account 模型基础的众多以太钱包。这使得用户转币收币需在不同应用间切换,极为不便。中继链跨链技术可有效解决不同链条间直接价值转换困难等难题。随着全球加密数字资产品种不断增多,安全的跨链多币种存储方式将逐步展现出无可比拟的优势。

加密数字货币可以匿名持有和流动,但加密数字货币持有者之间却不能匿名的沟通,这极大的限制着沟通的范围。曾经轰动一时的“棱镜门”事件告诉全球用户,你可能什么错都没有,但你仍然是被怀疑对象,也许只是因为发送了一次错误的信息,你就可能会被调查过去所有的决定,以及跟你交流过的朋友,因为Facebook、Skype、Apple 和 Yahoo 这些通讯工具并非匿名使用。当下中心化的通讯方式,即使点对点或阅后即焚都无法满足币友对私密交流的需求。而现有的匿名社群服务无法有效解决恶意差评和多账号刷量问题,让社交与交易的转化路径受阻,同时去中心化社群也难以解决匿名社群的强制解散等问题。随着加密数字货币用户的不断成熟,对这些问题的解决已迫在眉睫。

我们定义了数字加密货币存储领域的安全标准:abaosafe

客户端和服务器事先协商好一个密钥 K,用于一次性密码的生成过程,此密钥不被任何第三方所知道。此外,客户端和服务器各有一个计数器 C,并且事先将计数值同步。进行验证时,客户端对密钥和计数器的组合(K,C)使用 HMAC(Hash-basedMessage Authentication Code)算法计算一次性密码。公式如下:HOTP(K,C)=Truncate(HMAC-SHA-1(K,C))上面采用了 HMAC-SHA-1,当然也可以使用 HMAC-MD5 等。HMAC 算法得出的值位数比较多,不方便用户输入,因此需要截断(Truncate)成为一组不太长十进制数(例如 6 位,Steam 为 5 位)。计算完成之后客户端计数器 C 计数值加 1。用户将这一组十进制数输入并且提交之后,服务器端同样的计算,并且与用户提交的数值比较,如果相同,则验证通过,服务器端将计数值 C 增加 1。如果不相同,则验证失败。这里的一个比较有趣的问题是,如果验证失败或者客户端不小心多进行了一次生成密码操作,那么服务器和客户端之间的计数器 C 将不再同步,因此需要有一个重新同步(Resynchronization)的机制。介绍完 HOTP,Time-based One-time Password(TOTP)也就容易理解了。TOTP 将 HOTP 中的计数器 C 用当前时间 T 来替代,于是就得到了随着时间变化的一次性密码。虽然原理没有理解障碍,但是用时间来替代计数器会有一些特殊的问题,这些问题也很有意思。比如,时间 T 的值怎么选取?因为时间每时每刻都在变化,如果选择一个变化太快的 T(例如从某一时间点开始的秒数),那么用户来不及输入密码。如果选择一个变

化太慢的 T(例如从某一时间点开始的小时数),那么第三方攻击者就有充足的时间去尝试所有可能的一次性密码(6 位数字的一次性密码仅有 10^6 种组合),降低了密码的安全性。除此之外,变化太慢的 T 还会导致另一个问题。如果用户需要在短时间内两次登录账户,由于密码是一次性的不可重用,用户必须等到下一个一次性密码被生成时才能登录,这意味着最多需要等待 59 分 59 秒,这显然不可接受。综合上面这些考虑,AladdinGalaxy 选择了 30 秒作为时间片,T 的数值为从 Unix epoch(1970 年 1 月 1 日 00:00:00)来经历的 30 秒的个数。第二个问题是,由于网络延时,用户输入延迟等因素,可能当服务器端接收到一次性密码时,T 的数值已经改变,这样就会导致服务器计算的一次性密码值与用户输入的不同,验证失败。解决这个问题个一个方法是,服务器计算当前时间片以及前面的 n 个时间片内的一次性密码值,只要其中有一个与用户输入的密码相同,则验证通过。当然,n 不能太大,否则会降低安全性。事实上,这个方法还有一个另外的功能。我们知道如果客户端和服务器的时钟有偏差,会造成与上面类似的问题,也就是客户端生成的密码和服务端生成的密码不一致。但是,如果服务器通过计算前 n个时间片的密码并且成功验证之后,服务器就知道了客户端的时钟偏差。因此,下一次验证时,服务器就可以直接将偏差考虑在内进行计算,而不需要进行 n次计算。推原理为:每个 Abaosafe 有一个唯一的序列号、内置一个实时时钟产生当前时间、另外内置的唯一密码。工作时,每分钟把内置密码和当前时间连在一起,进行 HASH 运算,结果转换成一个 6 位的数字,即动态密码。服务器端,数据库中只需要保存 Abaosafe 的序列号和内置密码,通过当前时间可以用同样的运算得到与 Abaosafe 一样的结果,用来比较登录。所以,服务器端可通过 Abaosafe的动态口令进行自动时间指针调校。我们设时间单位为分钟,当前时间为 T。从Abaosafe 来看,我们假设:Hash(T-1)===1234566 Hash(T)====1234567Hash(T+1)===1234568 在服务器端,此时,时间指针指向 T,期望收到密码Hash(T)==1234567 而此时,若服务器收到动态密码为是 1234566,则可知对应的 Abaosafe 密码错误。若 0.5 分钟后,该 Abaosafe 再次登陆。而由于其时钟慢了一个单位,给出的密码是 Hash((T-1)+0.5) 即 Hash(T-4.5)。而对于服务器而言,由于上次的修正(指针回移了一个单位),期望收到的是 Hash(T-0.4)的数值。按上面这些,必须拿到一个 Abaosafe 的算法+序列号+内部当前时间+内置密码才可破解,事实上目前是无解的。

共识机制是区块链的灵魂,而跨链技术是实现价值网络的关键,跨链技术可以将各链条从分散单独的信息孤岛中分离出来并整合各链条差异价值,是区块链行业发展的关键和桥梁。AladdinGalaxy 提供了两套并行且渐进的跨链支付方案,即双账户方案及中继链方案。双账户方案在行业发展的现阶段可以为交易者提供充分的流动性,有效保障交易双方的成交度。而中继链方案可以在无需公开授权的条件下,解决各链条间双边即时价值传输问题,最终让 EOS 可以与其他任一链条进行链间交互。

2.1 双账户方案:类似 Ripple、Stellar、Circle 等,AladdinGalaxy 为交易的发送者及接受者提供了可信的第三方保障,由 AladdinGalaxy 向发送者保障他们的资产,只有当账本收到证明,且接受者确认收到支付时,才会将资产转移给承兑商。AladdinGalaxy 也会保证承兑商,一旦他们完成了协议的最后部分,他们就会收到发送者的资产。

如上图我们引入了承兑商双账户同步交易模式,在账户私有存储的前提下,充分确保了币币转换的流动性,简要讲解下采用双账户模式下的币币转换交易过程。该过程如下:(1).用户发起 ETH 转 BTC 请求,Aladdin 接到指令后将该订单内容向 ETH/BTC 承兑商组广播,在承兑商接受广播的同时,信息回传用户,用户签名转出 ETH,同时承兑商 BTC 账户按照承兑商组最优兑换率签名转出 BTC 至用户 BTC 地址;(2).Aladdin 在此转换过程中负责动态控制拒绝率及相关订单攻击风控;(3).用户及承兑商双方签名,之后验证订单(的最新状态)是否真正成交。若无法成交,转换交易终止,需要重新发起币币转换交易(理论发生概率极低)。(4).Aladdin 监听新的区块和链下新的转换数据,并根据这些数据更新订单表,不断进行新的承兑。

如图 2:AbaoNetwork 中的活动者共分为五种角色:(1).在网络中发送和接收代币的用户;(2).AbaoNetwork 的用户包括个人用户、智能合约账户和商家;(3).为平台提供流动性的(一个或多个)储备实体;(4).为储备实体提供资金并分享平台利润的储备贡献者;(5).维持储备、决定兑换率并将该比率反馈给 AbaoNetwork 的储备管理者。AbaoNetwork 运营者,负责在网络中添加、删除储备实体以及将代币对列入/移出交易列表。每一位活动者都以不同的方式独立地与智能合约交互。用户在单个交易中同时发送和接收代币,而无需等待来自储备实体或 AbaoNetwork 运营者的任何响应。AbaoNetwork 运营者负责添加和删除储备,而储备管理者每经过一个固定的周期(一般而言是几秒钟)决定新的兑换率并将该比率提供给合约。主合约依靠储备实体来保证高流动性。AbaoNetwork 的应用包括,它本身作为一个交易所能及时执行交易请求,且不会持有用户的代币,避免代币被盗或丢失的现象。在代币兑换上,通过智能合约执行交易,用户可以使用任何他们喜欢的加密代币来支付任意产品和服务。2.2 中继链方案:中继链的设计理念是基于 EOS 的高扩展性,在区分交易发起方和交易执行方以及确认交易执行方式及交易记录方式的基础上,在中继链参与下解决跨链信息匹配、发送及接受。

图 3 中继链跨链交易

如上图 3,AladdinGalaxy 通过一个平行链桥基于 EOS 创建一个传递性质区块链,在该中继链上,token 持有者对协议有核心掌控权。经过中继链所连接的其他链条上各自矿工独有的特权将被分配给中继链的参与者,而 AladdinGalaxy中继链的 token 持有者通过其掌握的权利进行各链条间直接的价值交换,从而完成在 EOS 基础上的基于 AladdinGalaxy 的全链条数字加密货币互换。在 AladdinGalaxy 中继链中,代币的持有者已经从需要各链条相互信任的模式中解放了出来,因此他们可以创造的应用还包括更多:比如,以期货和期权形式引入衍生工具来提供解决代币间价格波动问题的替代解决方案。通过引入掉期合约等金融衍生工具保证报价的透明和安全。期货(期货是指各方同意在未来某一天以当前指定的价格交易资产的合约。当一些用户需要将代币进行兑换——比如,从 Abao 兑换为 ETH——以准备参加即将到来的私募发行。用户可以以目前的市场价格来购买 ETH,也可以把购买期货合约来抵消 ETH 价格波动的风险作为可行的替代方案。)期权(期权合约允许用户支付一定的费用来对冲不利的价格变动。未来准备购买或出售加密资产的用户可以通过支付期权费来购买看涨或者看跌期权。)

AladdinGalaxy 提供一个基于用户间 follow 关系的匿名交流社区服务,能满足用户对沟通内容私密性的需求,帮助用户消除沟通死角,完成更有价值的沟通。有价值的匿名沟通可以产生潜在的社交关系,AladdinGalaxy 将结合移动设备定位功能激发这种潜在的社交关系,使之在线下转化形成有效社交关系,有效社交关系会产生信用,信用在场外交易中可以保障交易的可靠性。随着交易的不断发生,用户的信用在不断累积,用户自己累积起来的信用会不断增加其在AladdinGalaxy 的粘性。为了解决社区中多账号刷量和恶意评价等问题,维护良好的匿名社群沟通环境,AladdinGalaxy 通过创新的声誉机制来实现带有奖励和惩罚的双向激励。声誉系统的核心优势是基于可验证洗牌和关联换签名技术,可以在不需要用户真实身份的前提下,完成匿名用户的声誉计算,避免用户忠诚度损失的同时提升了用户参与程度。声誉系统工作机制,由多轮消息的发送和反馈构成。在每轮的开始,服务器维护包含所有客户端的长期数据库身份和各自的加密声誉分数。在每轮中,服务器依次运行基于可验证洗牌协议的调度算法,把声誉列表变成基于一次性假名的匿名排列列表和对应的明文信誉评分。我们采用去中心化的调度协议,服务器和客户端(所有者除外)均不能将一次性假名和长期身份相关联。客户端使用一次性假名匿名发布消息。服务器可以关联这些消息与他们对应的声誉评分,而不会了解到客户端的敏感信息。下面的每个客户端会对其他用户发布的消息提供反馈(例如投票)。每个投票都采用关联环签名进行签名,使服务器能验证每个客户只投票一次而不透露哪位客户提交了这一票。这个设计使服务器在统计正面和负面投票时,不能将投票于长期身份相关联。最后,服务器根据一次性假名的反馈信息更新信誉评分,然后执行“反向调度”,将这些一次性假名及其更新的声誉恢复到原来的长期身份和他们的加密更新的声誉评分。

本文采摘于网络,不代表本站立场,转载联系作者并注明出处:http://www.fjxmta.com/ylsh/47967.html

联系我们

在线咨询:点击这里给我发消息

微信号:wx123456