火星链 火星链
Ctrl+D收藏火星链
首页 > XMR > 正文

RES:私钥丢失也能找回?五分钟了解V神的秘密多重签名恢复方案

作者:

时间:1900/1/1 0:00:00

写在前面:丢失钱包密码或私钥是加密货币用户经常会遇到的问题,那能否有方法可在最小化信任的同时,恢复丢失的密钥呢?这正是以太坊联合创始人vitalik等人正在探索的一个方向,而他们已编写了一个新的

EIP,并将其命名为秘密多重签名恢复方案。

昨日,知名黄金爱好者兼加密货币怀疑者PeterSchiff在Twitter上声称自己的钱包丢失了密码,因此无法访问自己的比特币。

Schiff接着补充说:

“所以现在我的比特币在本质上毫无价值,它也没有市场价值。我知道拥有比特币是个坏主意,但我从来没有意识到它是如此糟糕!”

Schiff在推特上公布自己的损失后,加密货币社区很快展开了讨论,例如MorganCreekDigital联合创始人兼合伙人AnthonyPompliano就提问他是否自己忘记了密码,而希夫对此的回答却是:“是我的钱包忘记了密码。”

看不下去的Pompliano只好耐心解释道:

“软件只是执行人类发出的命令,它不能‘忘记’任何事情,给我发邮件吧,我会尽力帮你找回丢失的比特币。”

不过根据Schiff的回答,他的比特币基本已无望找回了,他提到说:

“是EricVoorhees帮我准备的钱包,即便是他也觉得我无能为力。如果你有任何想法,欢迎尝试。”

看到这里,读者可能觉得这是一个非常悲伤的故事,一位加密货币怀疑者好不容易尝试了比特币,结果却因为自己忘记了密码而丢失了它们。而倘若他在多处备份好私钥,那么即使他忘记了钱包密码,也可以通过私钥访问自己的钱包。

当然,也有人会认为这是一个深刻的教训,它提醒我们要开发相关的技术,为类似的人群提供安全保障。

比如以太坊联合创始人vitalik就评论称:

Harmony创始人:Horizon被攻击因私钥泄露导致,已转移至更严格的多签:6月26日消息,Harmony创始人stephen tse更新“Harmony与ETH间跨链桥Horizon遭到攻击”事件表示,Horizon平台上没有发现任何漏洞的证据,Harmony区块链共识层安全。团队发现了私钥被泄露的证据,导致Horizon被攻击。资金从跨链桥的以太坊一侧被盗。攻击者成功访问和解密其中一些密钥,其中一些用于签署未经授权的交易。被盗资产包括BUSD、USDC、ETH和WBTC。自事件发生以来,Harmony已将Horizon桥的以太坊一侧迁移到4/5多重签名(需要5个中的4个)。Harmony将继续采取措施进一步加强运营和基础设施安全。

此前报道,Polygon安全研究员发推表示,黑客或通过入侵Horizon bridge热钱包服务器完成多签程序。[2022/6/26 1:32:13]

“对于人们用‘加密货币就是加密货币,你的工作就是要非常小心地在三个地方写下备份种子’来回答这个问题,我感到失望。我们可以,也应该创造更好的钱包技术,使得安全变得更容易实现。

例如,这里有一个社交恢复提案:https://t.co/tuSbHhXKgd?amp=1”

那V神所说的社交恢复提案具体是指什么呢?

下面我们就来简单了解一下吧。

EIP2429:秘密多重签名恢复

作者:RicardoGuilhermeSchmidt、MiguelMota、VitalikButerin、naxe

状态:草案

类别:ERC

创建日期:2019-12-07

要求:EIP

摘要

一般来说,加密货币的一个糟糕体验是私钥丢失或暴露,这可能导致不可逆转的情况。

社交恢复被视为账户合约去中心化恢复的一种选择,然而社交恢复的使用,带来了人的因素,而人的因素通常是安全系统脆弱性的主要原因。

社交恢复的主要风险是:

合谋:如果一些用户知道他们是某个恢复的一部分,他们可能会对恢复攻击的执行感兴趣;

目标攻击:外部代理可能了解恢复的所有者,并瞄准执行恢复攻击所需最薄弱的点;

无私钥加密钱包ZenGo现可兼容稳定币SGA:Saga Monetary Technologies与无私钥加密钱包ZenGo达成合作,其稳定币SGA现可与ZenGo兼容。ZenGo首席执行官Ouriel Ohayon解释称:“ZenGo提供了有保障的访问权限,这意味着即使我们停止运营,用户资金仍将100%可用,并可根据个人意愿转移到任何地方。”Saga在3月19日的一份声明中表示,用户现在可以把他们的SGA代币放在ZenGo的钱包里。ZenGo的钱包不使用私钥。一名代表证实,ZenGo的主钱包现在将支持SGA兼容性。(Cointelegraph)[2020/3/20]

一般暴露:攻击者如果设法感染大型用户基础环境依赖项,并获得对多个身份的访问权限,也可能通过恢复对未受影响的用户产生副作用;

模拟攻击:针对性攻击可以了解用户的情况,并将该用户模拟到其社交对等方以执行恢复攻击。这变得更加令人关注,因为AI研究能够“深度伪造”其他人的声音和面部动作。

尽管还没有完美的解决方案来解决所有这些问题,但我们的目标是实现“信任最小化”控制者合约,并为用户可能使用的不同钱包启用互操作性。

据悉,该标准提出了一种定义存储在Melkle树中的地址列表方法,这些地址连同它们的权重和用户的个人秘密,将组成一个秘密集,而该秘密集可以在不直接危及用户的情况下公开,因为它仍然需要对地址列表中的总阈值进行人工验证。

该秘密集可以保存,例如存储在web2云存储当中,而不会严重影响安全性,这对于一些不信任自己,但也不希望信任某些特定实体的用户而言是非常有用的。

用户秘密永远不会在链中显示,显示的只是一个nonce哈希,每次恢复时它都会增加。恢复设置获取此哈希秘密nonce的哈希值的哈希值,这种双哈希方法被用于数学证明请求恢复的人知道该秘密,而不会泄露它。

根据提案,用户可通过提供秘密以及加权地址列表来配置恢复。

user_secret_data可以是用户可猜测的半私有信息。而user_secret_type是可选的随机大整数,并将其与address_list一起导出为private_hash。

地址列表的总权重必须大于阈值,而阈值是一个常数:THRESHOLD=100*10^18。

而标准定义了生成可预测用户秘密的几种方法。

声音 | EOS节点CryptoLion:目前有273个EOS账户失去了私钥 达到89万个EOS:据引力观察消息,EOS节点CryptoLion发表了一篇关于失去私钥的EOS账户的文章。目前有273个EOS账户失去了私钥,达到89万个EOS。那些没有映射从而没有获得EOS私钥的持币人可以通过 EOS Authority 的工具找回私钥。分别来自eosDAC、EOS Authority、Libertyblock、EOS Nation的4位成员计划开发一种为没有映射的持币人找回私钥的软件方法。[2019/1/2]

当生物识别技术可用时,应该使用它们,这是最简单的方法。

而当没有生物识别技术时,一组通常只有用户知道的诸多问题的标准表单,可被用于生成用户的秘密数据。所有可选的默认字段有:FullName、BirthDate、MotherName、MotherBirthdate、Nationality、FirstLove'sName、FirstPet'sName、ChildhoodNickname。

而密码派生方法,则类似于详细表单方法,但它只要求用户输入一些内容:FullName和Password。

地址列表

用户将定义监护人账户列表,该列表通过用户的联系人列表进行填充。导入选项和输入一个地址应该是很方便的,如图所示:

声音 | 赵东:比特币靠算法证明保管好私钥你的就是你的:Dfund创始人赵东今日微博回应网友所谈“私产问题”时表示,所以比特币最牛,靠算法数学知道是你的,不需要证明,也不用任何人承认,保管好私钥,你的就是你的。该网友认为,私产本来也是一个幻象,真正区别只在于别人是否承认,没人承认的私产就不是私产。一个国家是不是主权国家一个要素也是国际承认。[2018/10/5]

选择好监护人后,系统将提示用户定义每个监护人的权重:

这些地址存储在一个标准的merkle树当中,但是每个子叶必须与hash_to_peer进行哈希运算。

merkle_root被哈希为一个标准merkle树,它由keccak256(bytes32(hash_to_peer),uint256(weight),boolean(is_ens),bytes32(ethereum_address))格式的address_list子叶组成。

方案支持了ENS域名,当监护人拥有一个ENS域名时,应该使用ENS域名。根据EIP-137,如果使用了ENS域名,则is_ens必须为“true”。

列表中的地址可以是账户合约,如果是账户合约,则可以直接调用审批功能,也可以提供EIP-1271签名。而如果是外部拥有帐户,则应用ecrecover逻辑,但它们也可以直接调用approve函数。

weight设置此地址值相对于THRESHOLD常量的批准程度。

佳能节点分析:EOS被盗或因用户复制粘贴私钥时被监听:百万EOS是因用户操作不当被盗,并不是交易所EOS被盗,各大节点正努力协同找回。目前根据佳能节点CTObean的分析,可能是因为在用户复制粘贴私钥的时候,被某些恶意程序监听了。建议大家不要复制私钥。[2018/6/14]

用户秘密数据哈希

对于多个用户而言,recovery_contract可能是相同的,这是用户正在使用的共享秘密多重签名合约地址;

user_secret_data是用户数据的纯格式字节数据,它从不暴露,也不会被保存。当private_hash是未知时,应向用户进行请求;

private_hash是keccak256(user_secret_data),它从不暴露,可以用秘密集导出。这可以在所有恢复中重复使用;

merkle_root是通过对普通merkle树进行哈希运算得到的,它在执行时会被揭露;

weight_multipler定义要达到THRESHOLD需要乘以多少个单独权重;

hash_to_execute是keccak256(private_hash,address(recovery_contract),recovery_contract.nonce(user_address)),它仅在执行时公开,每次恢复都是唯一的,也被称为“显示哈希”。Nonce和恢复合约地址被用于允许重用private_hash;

hash_to_peer是keccak256,它在恢复授权请求时会公开,其被用于通过揭露public_hash种子来证明用户知道hash_to_execute和merkle_root,这也被称为“部分泄漏哈希”;

public_hash是keccak256,它自配置后就是公开的,只能使用一次,这也用于防止执行的重放。执行成功后,必须使用setup(bytes32,uint256)进行重配置;

恢复秘密集URL

恢复所需的所有信息都将存储在url类型标准中:

recovery=erc831_partaccount_contract"/"recovery_contract"/"private_hash|secret_type"/"address_list/weight_multiplererc831_part="ethereum:recovery-"account_contract=ADDRESSchain_id=1*DIGITrecovery_contract=ADDRESSprivate_hash="0x"64*HEXDIGsecret_type=UINTaddress_list=ethereum_address*(";"ethereum_address)weight_multipler=UINTethereum_address=ADDRESS/ENS_NAME"*"weightweight=UINTADDRESS="0x"40*HEXDIGparameters=parameter*("&"parameter)parameter=key"="valuekey=STRINGvalue=STRINGnotes=STRING

account_contract是指要进行恢复的账户合约,可以使用任何账户合约,因为恢复合约可以执行到任何接口或地址;

chain_id为所有地址定义了以太坊链,如果不存在,则预设为1;

recovery_contract执行恢复合约的逻辑,必须支持此文档中指定的ABI;

secret_type选择生成user_secret_data时使用的标准,在未给定private_hash时是必需的;

private_hash是user_secret_data的哈希,如果不存在,恢复将要求使用secret_type所选的标准来获取user_secret_data;

weight_multipler是每个weight将乘以的值,以达到THRESHOLD常数;

address_list是具有个人权重的地址列表,最好是另一个帐户合约,表明它们可用于恢复请求,但任何地址都可以帮助恢复。可以使用ENS域名,并在恢复过程中进行解析。总权重应高于THRESHOLD常数;

weight默认为Math.ceil(THRESHOLD/address_list.length),由用户设置自定义;

parameters可能需要特定的secret_type;

如果需要的话,notes可用于密码提示;

恢复程序

当需要恢复时,用户需要将其

RecoverySecretSetURL加载到支持此标准的电子钱包中。根据配置的不同,当

private_hash不可用时,必须从对用户构成挑战的

user_secret_data处生成。

加载有效的密钥集时,它将提示哪些用户请求帮助。一些钱包或许能自动发送请求,而另一些钱包则允许用户共享这个HelpRecoverRequestURL。

该EIP鼓励尽可能使用预签名的消息EIP-191,这一点很重要,因为gas成本是一个常见的障碍。如果监护人选择的地址是帐户合约,则必须是EIP-1271才能使用预签名信息。建议的正常顺序如下:

在特殊情况下,如果账户合约无法签署信息,或者用户的钱包无法按照这个EIP上指定的格式签署信息,则也可以通过使用msg.sender的方法执行常规操作。

在这种情况下,监护人将不得不支付一小部分gas费用。

理论基础

user_secret_data从不公开,在用keccak256算法进行哈希运算一次后,它就成为从不公开的private_hash。理论上,应该使用生物特征技术,因为用户不太可能丢失他们的生物特征。而生物特征通常是不安全的,因为它们并不是真正的秘密,任何高分辨率相机实际上都可以读取大多数生物特征,而且这些信息通常也为政府所知。

当生物特征不可用时,用户数据表单仍然提供相当好的安全性,因为合约中存储的哈希是离源数据非常远的加盐哈希,即使只有名字被用作user_secret_data,也是很难发现的。这些数据越不可预测,就越能抵御目标攻击,而目标攻击仍需要发现用户列表并接收足够的授权。

在成功执行之后,需要重新配置以实现安全性保障。在经历一次恢复后,恢复合约必须禁用自身,并等待新的配置。

可能存在的攻击

需要注意的是,支持此EIP的钱包,应考虑用户可能被请求帮助恢复其他账户,而请求可能来自任何知道secret_set的人,包括合法拥有者或以某种方式获取secret_set的攻击者。

因此:

钱包必须询问用户请求的合法性,询问请求是否是通过个人验证后进行的;

用户必须知道,他们对自己的链上操作负有责任,并且必须验证恢复请求的合法性;

视频通话可能是通过AI伪造的,但攻击者需要图像和语音样本,例如互联网上的公共演讲内容;

为名人进行恢复的用户,永远不要信任视频通话,应该去尝试直接联系周围的人,以检查请求的合法性;

简评:这种方案正是针对PeterSchiff这样容易忘记钱包密码或私钥的群体而设计的,但其也存在着安全隐患,但对于加密货币的社会可扩展性而言是非常重要的,因为多数人会是和PeterSchiff类似的。

标签:RESCRERETASHPresearchCRE8R币RETRY币BASHTANK币

XMR热门资讯
区块链:超级账本执行董事:供应链管理和贸易金融是区块链落地两大方向

来源:每日经济新闻每经记者刘永生?编者注:原标题为《专家:供应链管理和贸易金融是区块链落地两大方向》 区块链,是当前人们最为关注的技术.

1900/1/1 0:00:00
RAT:比特大陆旗下两官微账号注册主体转移,福建湛华部分股权冻结为保詹克团权益?

来源:每日经济新闻近期,随着比特币价格的大涨大落,矿机巨头比特大陆的内斗也不断升级。《每日经济新闻》记者注意到,1月7日,比特大陆旗下原名为“蚂蚁售前服务”的微信公众号发布声明进行账号迁移,原因.

1900/1/1 0:00:00
数字货币:毕马威报告:中国金融科技将进入2.0时代,区块链已广泛运用到金融服务各领域

来源:证券日报网编者注:原标题为《毕马威报告:中国金融科技将进入2.0时代》1月17日,毕马威发布《中国领先金融科技企业50》报告.

1900/1/1 0:00:00
加密货币:分析 | 哪些区块链项目的「海洋」中巨鲸最多最大?

来源:链闻,原题《巨鲸最能在哪些区块链项目掀起惊涛骇浪?》撰文:Clovr研究团队翻译:卢江飞让我们先讲一个2018年年中的故事吧.

1900/1/1 0:00:00
LIBRA:2020冬季达沃斯论坛区块链前瞻:数字货币成核心议题 却没中国角色

来源:互链脉搏作者:元尚未经授权,不得转载!1月20日至1月24日,2020年瑞士达沃斯世界经济论坛召开。这是全球政要、经济学家、企业家的思想盛宴.

1900/1/1 0:00:00
稳定币:科普 | DeFi初学者指南

来源:nakamoko翻译:头等仓??本文作者LindaXie,曾担任Coinbase产品经理,现为区块链风投基金ScalarCapital联合创始人,其成名作就是她的币种指南系列文章.

1900/1/1 0:00:00