分布式链上随机数和keyless account

news2024/9/21 16:35:27

1. 引言

相关论文见:

  • Aptos团队2024年论文 Distributed Randomness using Weighted VRFs

相关代码实现见:

  • https://github.com/aptos-labs/aptos-core(Rust)

在链中生成和集成共享随机数,以扩展应用和强化安全。该论文的目的是:

  • 让validators自动生成链上随机数,并为每个区块生成新鲜的共享随机数
  • 专注于PoS链,这样每个validator有不同的质押量(即权重)
    • 可引入权重门限设置,子集授权依赖于该子集validators的累加权重,而不是子集的大小。

在该论文中引入了3种在权重设置下支持生成共享随机数的方案:

  • PVSS:publicly verifiable secret sharing scheme (PVSS),是有权重且可聚合的
  • DKG:weighted distributed key generation protocol (DKG),
  • VUF:weighted verifiable unpredictable function (VUF)
    • 在运行最频繁的VUF协议中,参与者的计算和通信开销与其权重无关。该特性对于可扩展性至关重要。

当前已在Aptos链上实现了相关方案,其签名、验签、签名大小等均与各方总权重无关,并将其与BLS签名对比进行了benchmark。其中,当总权重分别为821和4053时,VUF将签名大小分别降低了7倍和34倍。
在这里插入图片描述
在这里插入图片描述

2. 分布式链上随机数

现有链上随机数放啊对比:
在这里插入图片描述
其中:

  • DFINITY:依赖于threshold DKG (tDKG) and a threshold VRF (tVRF),而不是权重。因DFINITY采用的是non-PoS安全模型,其认为只要不超过三分之一的validators(而不是质押量)被compromised,该链仍是安全的。这样,其门限设置,要比Aptos的权重设置,简单得多。因为这样shares的总数可设置为validators数量(如数百个)。而Aptos的权重设置,shares的总量与总质押量呈比例,即使向下取整,也要大得多(如数千个)。
  • Drand:也依赖于在servers委员会中实现tDKG和tVRF。在门限设置下,实现要更简单。但,当某dapp消费了所生成的随机数,其必须对randomness beacon的安全性和可用性附加额外信任。此外,该随机数无法即时消费,而是通过一个commit-and-reveal流程,使得开发很笨重,对随机数的访问也有更大的延迟。同理,Algorand的随机数beacon设计也存在类似的问题,其消费的随机数源自不同的外部随机数beacon。
  • Chia采用 verifiable delay functions (VDFs),其优势在于,即使所有validators都堕落了,其仍具有不可预测性。其基于的假设为,无人可evaluate the VDF faster than the delay it was originally set up with。但其缺陷在于,无法快速生成随机数,因其内部依赖于随机数计算的延迟性。此外,基于 VDF 的方法无法轻松提供即时交付的随机性,因为这需要为每个块生成一个 VDF,这对于低延迟区块链来说很困难,因为 VDF 本质上很慢。换句话说,如果区块的生成频率高于 VDF,那么这些区块将无法获得即时随机性。
  • Flow :validators验证者投票并附上他们对提议区块A的 VRF 评估,允许下一个区块B的提议者聚和投票并揭示A的随机性。这通过策略性地不提议 block B、将 block A 渲染为orphan孤儿区块来实现偏差。
  • Celo:让区块的提议者选择随机数,对其进行承诺并在后续区块中揭示。这为拒绝揭示随机数或根据后续区块中的预期交易做出明智的预测以最大化利润开辟了途径。
  • 以太坊:每个区块提议者都会根据当前epoch纪元数评估 VRF。然后,纪元的随机数被定义为提议者 VRF 评估的best-effort组合。不幸的是,这种方法很容易产生偏见,因为一个或多个共谋的区块提议者如果不喜欢结果,可以选择不混合他们的贡献。此外,这种方法非常慢,因为 epoch 每 6.4 分钟才发生一次。

Aptos团队的 Aline Temesku,提出了:分布式链上随机数和keyless account,致力于称为:

  • 改变链上互动和交易方式的新范式

Aline Temesku 2020年时在VMWare工作,对身份验证的数据结构、向量承诺颇有研究,同时对stateless validation无状态验证非常感兴趣,当时的工作重点是经身份验证的数据结构和门限密码学。在VMWare工作期间,Aline Temesku研究了一种匿名支付方案,该方案可平衡责任或合规性与隐私。Aline Temesku于2022年2月加入Aptos团队。

在语言层面,Sui 和 App Toss 都使用 move,但 move 的子集开始有点有趣的分叉。如,Aptos 支持的脚本比 Sui move 中支持的 ptps 强大得多。

Aptos 的整体理念是改善用户体验和开发人员体验,并将 Web 3 带给下一个十亿用户。

Aptos与Sui的另一个不同之处在于:

  • Aptos上有一种称为即时链上随机数的东西。该功能背后的想法是让智能合约立即获得无偏见、不可预测的随机性,并改善想要编写游戏、彩票、抽奖、随机 NFT 甚至交互式零知识证明verifier等内容的智能合约编写者的开发体验。

ZK密码学无处不在,即使是签名方案,也可将其看成是“知悉某密钥的零知识证明”。

在Aptos中,发现零知识证明用途广泛,如:

  • 为token转账添加隐私,需对转账金额做范围证明
  • 分布式随机数,可公开验证的秘密共享等协议,使用具有加法全同态功能的函数来对其进行加密,实际最有效的方案是采用了具有零知识范围证明的 Elgamal 加密。
  • 账户管理,当前在做的Aptos Keyless Accounts,利用 OpenID Connect 标准和零知识证明来增加隐私。

Aptos rollup扩容方案中,最大的挑战在于:

  • 计算昂贵的零知识证明的延迟

Aptos对延迟很敏感,若需等待30秒才能完成交易,认为对用户来说并不友好。所以目前并未深入研究如何来构建Aptos rollup方案。

Aptos上目前有个应用程序加改进提案AIP-41:

  • 描述了用于为合约提供无偏且不可预测的随机数的Move API。这些API非常简单:
    • 实际上是一个名为“获取随机整数”的函数。如合约调用它,会立即获得一个随机整数。不必等待下一个区块。不需要等待8分钟。不必提前承诺未来将生成的随机数,只需立即获取即可。
  • 实现方式为,确保每个应用程序和区块都有一个随机种子。从随机数种子中,可得出这些合约调用的个体随机数。

问题在于,如何将随机性种子放入其中,以及如何使其无偏见或不可预测?

Aptos中,使用基于 PVSS 的公共可验证秘密共享的分布式密钥生成协议和可验证的不可预测函数或 VUF。在 Aptos Network 的PoS设置中使 DKG 变得实用并不是一件容易的事。在这种情况下,使 VUF 或加权 VUF 实用起来也不是很容易。

DKG,即在PoS委员会中传播了一个密钥。

与VDF类似,但更具挑战性:

  • Aptos有一个基于委员会的共识协议,该协议在两个小时内进行。因此,每两个小时,validators集可能会发生变化。每当一个新的临时项目以新的valiators集开始时,基本上都希望完成 DKG 协议,以便新的 Epox 委员会拥有共享秘密,并且他们可以计算 VOF,这允许将区块席位放入块中的随机种子。

更多详细技术细节,可参看:Aptos团队2024年论文 Distributed Randomness using Weighted VRFs。

3. keyless account

Aptos 致力于改善用户体验和开发人员体验,并将 Web 3 带给下一个十亿用户。但对于该领域的任何加密货币来说,让新用户进入 Web 3。这些用户必须下载钱包,写下助记词,记住它,了解它的重要性。当用户丢失了助记词,就失去了所有资产。当前Web 3 用户的用户体验就是这样。

在 2023 年左右,Aptos团队思考了很多关于通过为用户管理密钥的 NBC 协议来解决这个问题。但这并没有真正解决问题,因为用户仍然需要向 NPC 系统验证自己的身份。所以他们仍然需要一些凭据来证明他们是用户,以便 NBC 系统为他们提供密钥。因此,当观察周围的 NBC 公司时,发现很多公司都在使用 OpenID Connect,让用户使用 Google 帐户等方式向 NPC 系统证明自己的身份。最初它并不让人满意,但大约一两个月后,很明显,如果 NBC 系统可以验证这个OpenID Connect 凭证,那么区块链也可以,而且实际上并不需要 NBC 系统。

Aptos Keyless 允许用户从现有的 Google 帐户(而不是传统的密钥或助记符)设置 Aptos 区块链帐户。简而言之,使用 Aptos Keyless,用户的区块链帐户就是他们的 Google 帐户。未来,Aptos Keyless 将支持许多 OpenID Connect (OIDC) 提供商,而不仅仅是 Google。

重要的是,Aptos Keyless 通过两种方式维护用户隐私:

  • 用户的电子邮件地址不会在链上向任何人透露,包括其他用户和验证者。
  • 用户的区块链地址和相关交易历史对身份提供商(如谷歌)是隐藏的。

keyless account无钥匙账户对于用户来说是革命性的,原因如下:

  • 通过熟悉的 Web2 登录,如Sign In with Google。
  • 能够在 Aptos 区块链上进行交易,而无需离开应用程序体验来下载钱包。
  • 不需要用户管理密钥。这意味着区块链帐户访问与 OIDC 帐户的访问同义,并且在用户失去对其 OIDC 帐户的访问权限时,可以使用类似 Web2 的恢复流程来重新获得对其区块链帐户的访问权限。
  • 无缝的跨设备体验;用户无论使用什么设备都可以使用 OIDC 帐户登录 - 无需在每台设备上下载钱包软件、导入密钥并使用必须维护的密码进行加密。

参考资料

[1] 2024年3月20日 Zero Knowledge Podcast Episode 316 - Alin Tomescu on Distributed On-chain Randomness and Keyless Accounts
[2] 2024年2月2日博客 Roll with Move: Secure, instant randomness on Aptos
[3] Aptos Keyless

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1535280.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于python+vue体育场馆设施预约系统flask-django-php-nodejs

时代在飞速进步,每个行业都在努力发展现在先进技术,通过这些先进的技术来提高自己的水平和优势,体育场馆设施预约系统当然不能排除在外。整体设计包括系统的功能、系统总体结构、系统数据结构和对系统安全性进行设计;最后要对系统…

Tomcat启动报错 因为在清除过期缓存条目后可用空间仍不足

在Tomcat部署路径下的./conf/context.xml配置文件的标签内添加如下内容&#xff1a; <Resources cachingAllowed"true" cacheMaxSize"100000" />

图解 LFU 缓存淘汰算法以及在 Redis 中的应用(附带个人完整代码实现)

文章目录 LFU 算法理论介绍算法实现数据结构查询操作插入/更新操作 Redis 缓存淘汰算法缓存污染难题Redis LFU缓存淘汰策略 本篇博客的主要内容&#xff1a; 以图解的方式&#xff0c;介绍 LFU 算法的一种实现&#xff1b;介绍 LFU 算法在 Redis 中的应用。 LFU 算法 理论介…

Docker 搭建私人仓库

docker 搭建私人仓库有下面几种方式&#xff1a; 1、docker hub 官方私人镜像仓库2、本地私有仓库 官方私人镜像仓库搭建很简单(就是需要有魔法&#xff0c;否则就异步到第二种方法吧)&#xff0c;只需要 login、pull、tag、push 几种命令就完事了。而本地私人镜像仓库则比较麻…

探究BufferedOutputStream的奥秘

咦咦咦&#xff0c;各位小可爱&#xff0c;我是你们的好伙伴——bug菌&#xff0c;今天又来给大家普及Java IO相关知识点了&#xff0c;别躲起来啊&#xff0c;听我讲干货还不快点赞&#xff0c;赞多了我就有动力讲得更嗨啦&#xff01;所以呀&#xff0c;养成先点赞后阅读的好…

[音视频学习笔记]六、自制音视频播放器Part1 -新版本ffmpeg,Qt +VS2022,都什么年代了还在写传统播放器?

前言 参考了雷神的自制播放器项目&#xff0c;100行代码实现最简单的基于FFMPEGSDL的视频播放器&#xff08;SDL1.x&#xff09; 不过老版本的代码参考意义不大了&#xff0c;我现在准备使用Qt VS2022 FFmpeg59重写这部分代码&#xff0c;具体的代码仓库如下&#xff1a; …

本地化语音识别、视频翻译和配音工具:赋能音频和视频内容处理

随着人工智能技术的飞速发展&#xff0c;语音识别、视频翻译和配音等任务已经变得更加容易和高效。然而&#xff0c;许多现有的工具和服务仍然依赖于互联网连接&#xff0c;这可能会导致延迟、隐私问题和成本问题。为了克服这些限制&#xff0c;我们介绍了一种本地化、离线运行…

RCE漏洞

RCE漏洞概述 远程命令执行/代码注入漏洞&#xff0c;英文全称为Reote Code/CommandExecute&#xff0c;简称RCE漏洞。PHPJava等Web开发语言包含命令执行和代码执行函数,攻击者可以直接向后台服务器远程执行操作系统命今或者运行注入代码&#xff0c;进而获取系统信息、控制后台…

社交媒体的未来:探讨Facebook的发展趋势

引言 在数字化时代&#xff0c;社交媒体已经成为人们日常生活中不可或缺的一部分。作为全球最大的社交媒体平台之一&#xff0c;Facebook一直在不断地追求创新&#xff0c;以满足用户日益增长的需求和适应科技发展的变革。本文将探讨Facebook在未来发展中可能面临的挑战和应对…

10W字解析 SpringBoot技术内幕文档,实战+原理齐飞,spring事务实现原理面试

第3章&#xff0c;Spring Boot构造流程源码分析&#xff0c;Spring Boot的启动非常简单&#xff0c;只需执行一个简单的main方法即可&#xff0c;但在整个main方法中&#xff0c;Spring Boot都做了些什么呢&#xff1f;本章会为大家详细讲解Spring Boot启动过程中所涉及的源代码…

Linux下Docker部署中间件(Mysql、Redis、Nginx等)

我的自备文件 文件传输 内网下直接上传很慢 使用scp命令将另一台服务器上的文件传输过来&#xff1b;在已有文件的服务器往没有文件的服务器传输 scp -r 传输的文件夹/文件 root要传输的地址:放置的地址 scp -r tools root172.xx.x.xxx:/data/ 安装二进制文件、脚本及各中间件…

《深入解析 C#》—— C# 3 部分

文章目录 第三章 C#3&#xff1a;LINQ及相关特性3.1 自动实现属性&#xff08;*&#xff09;3.2 隐式类型 var&#xff08;*&#xff09;3.3 对象和集合初始化3.3.1 对象初始化器3.3.2 集合初始化器 3.4 匿名类型3.4.1 基本语法和行为3.4.2 编译器生成类型3.4.3 匿名类型的局限…

Hive和Hadoop版本对应关系

通过 Downloads (apache.org) 即可查看

MySQL的基本操作

目录 引言 一、SQL语句简介 &#xff08;一&#xff09;SQL通用语法 &#xff08;二&#xff09;SQL分类 &#xff08;三&#xff09;数据类型 1.数值类型 2.字符串类型 3.日期/时间类型 4.修饰符 二、登录mysql服务 三、SQL语句操作 &#xff08;一&#xff09;DD…

vue3 + ts +element-plus + vue-router + scss + axios搭建项目

本地环境&#xff1a; node版本&#xff1a;20.10.0 目录 一、搭建环境 二、创建项目 三、修改页面 四、封装路由vue-router 五、element-plus 六、安装scss 七、封装axios 一、搭建环境 1、安装vue脚手架 npm i -g vue/cli 2、查看脚手架版本 vue -V3、切换路径到需…

Studio One 6 Mac中文版破解版下载(附Mac版注册机)

Studio One 6 Mac版是一款强大的音乐创作与制作软件&#xff0c;其可通过更简单的方式来录制音频及进行MIDI制作&#xff0c;并提供丰富的专业功能。它具备音乐创作、录音混缩、MIDI编辑、音频处理、Loops拼接、视频配乐和母带与专辑制作等功能。软件提供了强大的音频性能&…

在iOS中安装

返回&#xff1a;OpenCV系列文章目录&#xff08;持续更新中......&#xff09; 上一篇&#xff1a;使用CUDA 为Tegra构建OpenCV-CSDN博客 下一篇&#xff1a; 警告&#xff01; 本教程可以包含过时的信息。 所需软件包 CMake 2.8.8 或更高版本Xcode 4.2 或更高版本 从 G…

笔试总结01

1、spring原理 1、spring原理 spring的最大作用ioc/di,将类与类的依赖关系写在配置文件中&#xff0c;程序在运行时根据配置文件动态加载依赖的类&#xff0c;降低的类与类之间的藕合度。它的原理是在applicationContext.xml加入bean标记,在bean标记中通过class属性说明具体类…

旅游小程序的市场与发展趋势

随着科技的发展&#xff0c;移动互联网已经成为我们生活中不可或缺的一部分。在这个时代&#xff0c;小程序已经成为了一种新的趋势&#xff0c;尤其是在旅游行业。那么&#xff0c;旅游小程序有哪些市场&#xff0c;发展趋势又怎么样呢&#xff1f; 一、旅游小程序的市场 1. 用…

AI原生安全 亚信安全首个“人工智能安全实用手册”开放阅览

不断涌现的AI技术新应用和大模型技术革新&#xff0c;让我们感叹从没有像今天这样&#xff0c;离人工智能的未来如此之近。 追逐AI原生&#xff1f;企业组织基于并利用大模型技术探索和开发AI应用的无限可能&#xff0c;迎接生产与业务模式的全面的革新。 我们更应关心AI安全原…