Sui的Fastcrypto加密库刷新速度记录

Sui使用的加密库Fastcrypto打破了许多速度记录,Mysten Labs在基准测试和安全分析中的工作修复了许多安全漏洞,同时通过识别新的优化技巧为创新开辟了道路。
最近在伦敦帝国理工学院举行的国际性能工程会议(ICPE)基准测试研讨会上,Mysten Labs发表了一篇名为《Fastcrypto:通过持续基准测试开创加密新纪元》的论文,描述了其对Fastcrypto库中加密函数的持续和系统的基准测试。
该演讲是“性能测试创新:策略与技术”主题下的软件系统负载测试和基准测试研讨会的一部分。会议吸引了来自学术界和工业界的嘉宾,包括MongoDB和亚马逊的代表,他们也在同一研讨会上发表了讲话。
Mysten Labs重点介绍了Fastcrypto库的系统和持续的基准测试,该库是数字签名、哈希函数和零知识证明等加密函数的集合。在Fastcrypto中,所有函数在发布和按需时都会进行基准测试,结果在线发布。类似的函数可以轻松比较,Mysten Labs保留了历史数据以便随时跟踪性能。
演讲强调了这些基准测试如何在Fastcrypto和Sui的开发中促进更明智的决策,影响依赖项和使用的选择,以及优化开发人员资源的关注重点。
基于基准测试的决策
论文中的一个案例研究解决了为Sui中的验证节点选择签名方案的挑战。用户要提交交易到Sui,交易必须由验证节点法定人数签名,并合并成交易证书。Sui约有100个验证节点,并且权益分布均匀,法定人数包括67 个验证节点,这意味着每个验证节点必须验证每笔交易的67个签名。
BLS签名方案允许多个签名像单个签名一样进行验证,但它比EdDSA等替代方案慢得多。详细的基准测试显示,这两种方案的盈亏平衡点在40到45个签名之间。因此,对于Sui来说,使用BLS更为高效,这也是目前所采用的方法。

对EdDSA和BLS签名方案的基准测试揭示了40–45个批处理签名的盈亏平衡点,表明对于Sui的验证节点池,BLS是一个高性能的选择。
“如果软件突然变快了,你也应该担心”
演讲还展示了基准测试如何揭示意外的软件行为。一个例子涉及实现EdDSA签名方案的库,这些库假设公钥应该被缓存并作为输入提供给签名函数。如果提供了错误的公钥,可能导致私钥被提取(详见我们的 ed25519-unsafe-libs GitHub)。
一些库表现出异常快的性能而被检测到,因为它们绕过了公钥的派生过程,而使用了作为参数提供的可能错误的公钥。虽然基准测试通常旨在加速软件,但正如一位研讨会的观众所指出的,“如果软件突然变快了,你也应该担心。”
关于Sui Network
Sui是基于第一原理重新设计和构建而成的L1公有链,旨在为创作者和开发者提供能够承载Web3中下一个十亿用户的开发平台。Sui上的应用基于Move智能合约语言,并具有水平可扩展性,让开发者能够快速且低成本支持广泛的应用开发。获取更多信息:https://linktr.ee/sui_apac
官网|英文Twitter|中文Twitter|Discord|英文电报群|中文电报群
相关文章:
Sui的Fastcrypto加密库刷新速度记录
Sui使用的加密库Fastcrypto打破了许多速度记录,Mysten Labs在基准测试和安全分析中的工作修复了许多安全漏洞,同时通过识别新的优化技巧为创新开辟了道路。 最近在伦敦帝国理工学院举行的国际性能工程会议(ICPE)基准测试研讨会上…...
Malformed \uxxxx encoding或Maven server structure problem问题解决
问题描述: idea运行项目时, 报错如下: [ERROR] Malformed \uxxxx encoding. [ERROR] Maven server structure problem [ERROR] Malformed \uxxxx encoding. 解决方法总结 先说一下解决方法无非是下面几种 1、先检查项目的.properties、.yml 、pom.xml、logback等…...
Sui主网升级至V1.27.2版本
其他升级要点如下所示: 重点: #17245 增加了一个新的协议版本,并在开发网络上启用了Move枚举。 JSON-RPC #17245: 在返回的JSON-RPC结果中增加了对Move枚举值的支持。 GraphQL #17245: 增加了对Move枚举值和类型的支持。 CLI #179…...
Cheat Engine 学习
文章目录 Exact Value scanning任务实现步骤Unknown initial value任务实现步骤原理说明Floating points任务实现步骤原理说明Code finder任务实现步骤原理说明Pointers任务实现步骤原理说明Change Pointer 操作:Active(活跃状态)和数值修改:Code Injection任务概述实现步骤…...
【千帆AppBuilder】你有一封邮件待查收|未来的我,你好吗?欢迎体验AI应用《未来信使》
我在百度智能云千帆AppBuilder开发了一款AI原生应用,快来使用吧!「未来信使」:https://appbuilder.baidu.com/s/Q1VPg 目录 背景人工智能未来的信 未来信使功能介绍Prompt组件 千帆社区主要功能AppBuilderModelBuilder详细信息 推荐文章 未来…...
【案例分析】一文讲清楚SaaS产品运营的六大杠杆是什么?具体怎么运用?
在SaaS(软件即服务)行业,如何快速获取用户并实现持续增长一直是企业关注的重点。近年来,分销裂变策略因其高效性和低成本特性,成为许多SaaS企业实现快速增长的秘诀。下面,我们将通过一个具体的案例来剖析成…...
系统架构——Spring Framework
目录 (1)基本介绍 (2)基本发展历史 (3)了解和学习 Spring 4.x 系列的系统架构 1、第一个模块:做核心容器(Core Contaner) 2、第二个模块:AOP与Aspects(这…...
Zig标准库:最全数据结构深度解析(1)
最近新闻看到17岁中专女生拿下阿里全球数学竞赛第12名。咱们学习标准库中的数据结构是和学习数学是一脉相承的,结构体很多,也非常枯燥,但是不能全面解读过一遍,你很难写出合理的代码。所以,这一章节我们开始深度解析Zi…...
什么是 Linux From Scratch (LFS)?
Linux From Scratch (LFS) 是一个项目和一本书,指导用户从头开始构建自己的自定义Linux系统,而不是使用现成的Linux发行版。LFS项目由 Gerard Beekmans 在1999年创建,旨在帮助用户了解Linux的内部工作原理,并提供对系统的完全控制…...
常见的宽基指数基金
指数基金投资指南 ❝ 这篇博客里面的内容主要来自于银行螺丝钉的《定投十年,财务自由》和《指数基金投资指南》这两本书中章“常见的宽基指数”,最近第三次读这本书,打算做一点笔记加深自己的印象。 博客中很多内容是从书中摘抄的,…...
Python学习笔记6:pychram相关知识及安装教程,后续需要学习的入门知识
上篇文章说了,今天去公司重新装一下IDE,最后也是把过程这边再记录一下,有需要的可以参考一下。 关于pychram pychram是什么? PyCharm是由JetBrains公司开发的一款流行的Python集成开发环境(IDE)。它专为…...
dockerfile文件的中的命令
# 基础镜像 FROM registry.cn-beijing.aliyuncs.com/205erp/myopenjdk:8.6 # 设置工作目录 WORKDIR /opt # 拷贝jar包到工作目录 COPY target/*.jar app.jar RUN ls # 设置暴漏的端口 EXPOSE 8080 # 启动jar包 CMD java ${JAVA_TOOL_OPTIONS} -jar app.jar...
【紫光同创盘古PGX-Nano教程】——(盘古PGX-Nano开发板/PG2L50H_MBG324第十一章)模拟波形实验例程说明
本原创教程由深圳市小眼睛科技有限公司创作,版权归本公司所有,如需转载,需授权并注明出处(www.meyesemi.com) 适用于板卡型号: 紫光同创PG2L50H_MBG324开发平台(盘古PGX-Nano) 一:…...
LUA移植到STM32F4,移植REPL,通过RTT Viewer交互
概述 站内移植LUA多数是使用C函数调用LUA,并没有移植REPL交互端口 本文将REPL也移植进去,做了简单的适配 LUA源码使用标准C库函数,如fgets,fwrite等,在嵌入式环境中要使用fgets,fwrite等C库函数ÿ…...
【GD32F303红枫派使用手册】第十九节
19.1 实验内容 通过本实验主要学习以下内容: SPI简介 GD32F303 SPI简介 SPI NOR FLASH——GD25Q32ESIGR简介 使用GD32F303 SPI接口实现对GD25Q32ESIGR的读写操作 19.2 实验原理 19.2.1 SPI简介 SPI(Serial Peripheral interface)&…...
【C语言】扫雷游戏
Hi~!这里是奋斗的小羊,很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~~ 💥💥个人主页:奋斗的小羊 💥💥所属专栏:C语言 🚀本系列文章为个人学习…...
逻辑蕴含、函数依赖集的闭包、Armstrong公理、属性集闭包
一、引言 Armstrong公理-从给定的函数依赖集得到关系模式的完整依赖集 二、逻辑蕴含 1、定义 设F是关系模式R上的函数依赖集,X、Y是R的属性子集,对于R的每个满足F的关系实例r,若函数 依赖都成立,则称F逻辑蕴含。 记为&#…...
macOS聚集搜索功能开启与关闭
按下command空格弹出 使用搜索 关闭搜索 sudo mdutil -a -i off 启用搜索 sudo mdutil -a -i on...
大模型“诸神之战”,落地才是赛点
ChatGPT 诞生已经快一年,你还在与它对话吗? 有的人用来写报告、改代码,让它成为得力帮手;有的人却只是“调戏”个两三回,让它创作诗歌或故事,便不再“宠幸”。 根据网站分析工具 SimilarWeb 的数据&#…...
接口重放攻击
如何保证接口安全,做到防篡改防重放?_接口防止串改-CSDN博客 接口安全设计之防篡改和防重放_接口防篡改机制-CSDN博客 基于nonce timestamp 的方案 nonce的意思是仅一次有效的随机字符串,要求每次请求时该参数要保证不同。实际使用用户信息…...
HTML 语义化
目录 HTML 语义化HTML5 新特性HTML 语义化的好处语义化标签的使用场景最佳实践 HTML 语义化 HTML5 新特性 标准答案: 语义化标签: <header>:页头<nav>:导航<main>:主要内容<article>&#x…...
Lombok 的 @Data 注解失效,未生成 getter/setter 方法引发的HTTP 406 错误
HTTP 状态码 406 (Not Acceptable) 和 500 (Internal Server Error) 是两类完全不同的错误,它们的含义、原因和解决方法都有显著区别。以下是详细对比: 1. HTTP 406 (Not Acceptable) 含义: 客户端请求的内容类型与服务器支持的内容类型不匹…...
模型参数、模型存储精度、参数与显存
模型参数量衡量单位 M:百万(Million) B:十亿(Billion) 1 B 1000 M 1B 1000M 1B1000M 参数存储精度 模型参数是固定的,但是一个参数所表示多少字节不一定,需要看这个参数以什么…...
PPT|230页| 制造集团企业供应链端到端的数字化解决方案:从需求到结算的全链路业务闭环构建
制造业采购供应链管理是企业运营的核心环节,供应链协同管理在供应链上下游企业之间建立紧密的合作关系,通过信息共享、资源整合、业务协同等方式,实现供应链的全面管理和优化,提高供应链的效率和透明度,降低供应链的成…...
无法与IP建立连接,未能下载VSCode服务器
如题,在远程连接服务器的时候突然遇到了这个提示。 查阅了一圈,发现是VSCode版本自动更新惹的祸!!! 在VSCode的帮助->关于这里发现前几天VSCode自动更新了,我的版本号变成了1.100.3 才导致了远程连接出…...
Objective-C常用命名规范总结
【OC】常用命名规范总结 文章目录 【OC】常用命名规范总结1.类名(Class Name)2.协议名(Protocol Name)3.方法名(Method Name)4.属性名(Property Name)5.局部变量/实例变量(Local / Instance Variables&…...
Spring Boot+Neo4j知识图谱实战:3步搭建智能关系网络!
一、引言 在数据驱动的背景下,知识图谱凭借其高效的信息组织能力,正逐步成为各行业应用的关键技术。本文聚焦 Spring Boot与Neo4j图数据库的技术结合,探讨知识图谱开发的实现细节,帮助读者掌握该技术栈在实际项目中的落地方法。 …...
根据万维钢·精英日课6的内容,使用AI(2025)可以参考以下方法:
根据万维钢精英日课6的内容,使用AI(2025)可以参考以下方法: 四个洞见 模型已经比人聪明:以ChatGPT o3为代表的AI非常强大,能运用高级理论解释道理、引用最新学术论文,生成对顶尖科学家都有用的…...
Python基于历史模拟方法实现投资组合风险管理的VaR与ES模型项目实战
说明:这是一个机器学习实战项目(附带数据代码文档),如需数据代码文档可以直接到文章最后关注获取。 1.项目背景 在金融市场日益复杂和波动加剧的背景下,风险管理成为金融机构和个人投资者关注的核心议题之一。VaR&…...
【学习笔记】erase 删除顺序迭代器后迭代器失效的解决方案
目录 使用 erase 返回值继续迭代使用索引进行遍历 我们知道类似 vector 的顺序迭代器被删除后,迭代器会失效,因为顺序迭代器在内存中是连续存储的,元素删除后,后续元素会前移。 但一些场景中,我们又需要在执行删除操作…...
