常用椭圆曲线介绍

2023-11-13

chat-gpt生成,对应python的miracl/core/python库

ED系列

一、ED25519
  • ED25519使用的椭圆曲线是Curve25519,它是一种高效且安全的椭圆曲线,由Daniel J. Bernstein等人设计。
  • ED25519的密钥长度为256位,提供了128位的安全性。
  • ED25519可以用于生成密钥对、进行数字签名和验证签名。
    由于其高效性和安全性,ED25519在现代加密领域广泛使用,特别是在密码学签名方案中。
二、ED448
  • ED448也使用了Edwards-curve Digital Signature Algorithm (EdDSA),但使用了更大的448位的椭圆曲线,也由Daniel J. Bernstein等人设计。
  • ED448的密钥长度为456位,提供了228位的安全性。
  • ED448同样可以用于生成密钥对、进行数字签名和验证签名,但相比于ED25519,ED448提供了更高的安全强度。
  • ED448通常在那些需要更高安全性的应用中使用,但可能会带来更大的计算开销。

当谈论密钥长度和安全等级时,通常指的是椭圆曲线密码学中的椭圆曲线参数。下面是NIST P-256、NIST P-384和NIST P-521的密钥长度和安全等级位数:

NIST P系列

三、NIST P-256:

密钥长度:256位(32字节)
安全等级位数:128位(因为密钥长度的一半)

四、NIST P-384:

密钥长度:384位(48字节)
安全等级位数:192位(因为密钥长度的一半)

五、NIST P-521:

密钥长度:521位(66字节)
安全等级位数:256位(因为密钥长度的一半)
安全等级位数是指对称密码学中的密钥长度,其中理论上攻击算法的运行时间与密钥长度的指数成正比。例如,128位的安全等级意味着攻击者需要2^128次操作来成功地破解加密或计算出密钥。这种攻击是不可行的,因为其运行时间将远远超过目前技术的能力。

注意:密钥长度和安全等级位数之间并不是线性关系,128位的安全等级并不意味着密钥长度为128位。在椭圆曲线密码学中,密钥长度通常是安全等级的两倍。

对于大多数应用来说,NIST P-256已经提供了足够的安全性。而NIST P-384和NIST P-521提供了更高的安全强度,但同时也可能导致更大的计算开销。选择合适的曲线取决于特定应用的需求和性能要求。

三、 BLS12系列

BLS12-381、BLS12-383和BLS12-443是三种不同的椭圆曲线密码学中的椭圆曲线,用于配对密码学和签名方案。它们的区别在于它们的位数、安全性和性能等方面。

BLS12-381:

位数:381位
安全性:约128位安全等级
性能:相对较高的性能,适用于大多数应用。

BLS12-383:

位数:383位
安全性:约191位安全等级
性能:略低于BLS12-381,但依然具有良好的性能。

BLS12-443:

位数:443位
安全性:约221位安全等级
性能:相对较低的性能,但提供更高的安全强度。
这些曲线中的数字表示椭圆曲线的位数,而安全性等级位数表示椭圆曲线提供的安全强度。安全性等级位数的一般规则是,安全性等级的位数应大于或等于密码学中所需的对称密钥长度的两倍,以保证足够的安全性。

因此,BLS12-443提供了最高的安全强度,但性能相对较低。BLS12-381提供了适中的安全性和性能,对于大多数应用来说是一个很好的选择。而BLS12-383在安全性和性能之间取得了平衡。

在选择椭圆曲线时,需要根据具体应用的安全需求、性能要求和资源限制来进行权衡。大多数情况下,BLS12-381已经提供了足够的安全性和性能,是一个被广泛采用的选择。

BN系列

根据您提供的信息,有两个"bn254"并没有提到"bn462",让我们来澄清一下:

BN254:
  • 位数:254位
  • 安全性:约128位安全等级
  • 性能:较高的性能,适用于大多数应用。
  • 曲线特征:BN254是一种特定类型的椭圆曲线,即巴拉巴拉-那乔-斯特林(Barreto-Naehrig)曲线。它在配对密码学中被广泛应用,例如在椭圆曲线密码和身份基于密码学中。
BN254a:
  • 位数:254位
  • 安全性:约128位安全等级
  • 性能:较高的性能,类似于BN254。
  • 曲线特征:BN254a是BN254曲线的一种变体,它提供了更快的加法运算,使得某些计算更加高效。
BN462:
  • 位数:462位
  • 安全性:约231位安全等级
  • 性能:相对较低的性能,但提供更高的安全强度。
  • 曲线特征:BN462是一种类似于BN254的巴拉巴拉-那乔-斯特林曲线,但拥有更大的位数,从而提供更高的安全性。

BN254和BN254a是非常相似的椭圆曲线,它们都是BN系列曲线的一部分。在安全性和性能方面,BN254和BN254a都提供了较高的安全性和良好的性能,适合大多数应用。而BN462则提供了更高的安全强度,但可能导致更大的计算开销。

在选择椭圆曲线时,需要根据具体应用的安全需求、性能要求和资源限制来进行权衡。通常情况下,BN254和BN254a已经提供了足够的安全性和性能,是被广泛采用的选择。只有在对更高的安全强度有特殊要求时,才会考虑使用BN462。

sec256k1

secp256k1是另一种椭圆曲线密码学中的椭圆曲线,与之前提到的NIST P-256、BN254等曲线不同,它是比特币和其他加密货币所使用的公钥密码学中的一种椭圆曲线。

secp256k1的参数如下:

位数:256位
安全性:约128位安全等级
曲线方程:y^2 = x^3 + 7
基点G:在secp256k1中,G是一个椭圆曲线上的基点,它的坐标为(x, y)。
secp256k1是比特币中用于生成公钥和私钥,并进行数字签名和验证签名的曲线。比特币的地址、交易和签名都依赖于secp256k1椭圆曲线的特性。由于比特币的广泛应用,secp256k1成为了公众所熟知的椭圆曲线之一。

secp256k1的安全性在椭圆曲线密码学中是相当高的,提供了足够的安全强度,目前没有已知的有效攻击手段。然而,尽管secp256k1在比特币中被广泛应用,它并非NIST标准曲线,因此在其他领域应用时,需要考虑安全性和可信度方面的因素。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

常用椭圆曲线介绍 的相关文章

  • 如何解决Mybatis-plus与Mybatis不兼容的问题:An attempt was made to call a method that does not exist. The attempt

    博主猫头虎的技术世界 欢迎来到 猫头虎的博客 探索技术的无限可能 专栏链接 精选专栏 面试题大全 面试准备的宝典 IDEA开发秘籍 提升你的IDEA技能 100天精通Golang Go语言学习之旅 领域矩阵 猫头虎技术领域矩阵 深入探索各技
  • 【CTF必看】从零开始的CTF学习路线(超详细),让你从小白进阶成大神!

    最近很多朋友在后台私信我 问应该怎么入门CTF 个人认为入门CTF之前大家应该先了解到底 什么是CTF 而你 学CTF的目的又到底是什么 其次便是最好具备相应的编程能力 若是完全不具备这些能力极有可能直接被劝退 毕竟比赛的时候动不动写个脚本
  • 5个步骤,教你瞬间明白线程和线程安全

    记得今年3月份刚来杭州面试的时候 有一家公司的技术总监问了我这样一个问题 你来说说有哪些线程安全的类 我心里一想 这我早都背好了 稀里哗啦说了一大堆 他又接着问 那你再来说说什么是线程安全 然后我就GG了 说真的 我们整天说线程安全 但是对
  • WEB前端常见受攻击方式及解决办法总结

    一个网址建立后 如果不注意安全问题 就很容易被人攻击 下面讨论一下集中漏洞情况和放置攻击的方法 一 SQL注入 所谓的SQL注入 就是通过把SQL命令插入到web表单提交或输入域名或页面请求的查询字符串 最终达到欺骗服务器执行恶意的SQL命
  • 白帽子如何快速挖到人生的第一个漏洞 | 购物站点挖掘商城漏洞

    本文针对人群 很多朋友们接触安全都是通过书籍 网上流传的PDF 亦或是通过论坛里的文章 但可能经过了这样一段时间的学习 了解了一些常见漏洞的原理之后 对于漏洞挖掘还不是很清楚 甚至不明白如何下手 可能你通过 sql labs 初步掌握了sq
  • messages,CentOS 7不收集日志或不存在 /var/log/messages

    var log message var log secure等都不记录了 并且都是空文件 重启机器 reboot 无效 重启日志 systemctl start rsyslog 无效 怀疑空间不足 删除 var log messages 重
  • 【信道估计】【MIMO】【FBMC】未来移动通信的滤波器组多载波调制方案(Matlab代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Matlab代码及文章
  • 小白入门黑客之渗透测试(超详细)基本流程(内附工具)

    经常会收到小伙伴们这样的私信 为什么我总是挖不到漏洞呢 渗透到底是什么样的流程呢 所以全网最详细的渗透测试流程来了 渗透测试其实就是通过一些手段来找到网站 APP 网络服务 软件 服务器等网络设备和应用的漏洞 告诉管理员有哪些漏洞 怎么填补
  • 基于java的物业管理系统设计与实现

    基于java的物业管理系统设计与实现 I 引言 A 研究背景和动机 物业管理系统是指对物业进行管理和服务的系统 该系统需要具备对物业信息 人员信息 财务信息等进行管理的能力 基于Java的物业管理系统设计与实现的研究背景和动机主要体现在以下
  • 网络安全:绕过 MSF 的一次渗透测试

    这次渗透的主站是 一个 Discuz 3 4 的搭建 违法招 piao 网站 配置有宝塔 WAF 用 Discuz ML 3 X 的漏洞进行攻击 但是没有成功 发现主站外链会有一个发卡网 引导人们来这充值 是 某某发卡网 而且域名指向也是主
  • 一台java服务器可以跑多少个线程?

    一台java服务器可以跑多少个线程 一台java服务器能跑多少个线程 这个问题来自一次线上报警如下图 超过了我们的配置阈值 打出jstack文件 通过IBM Thread and Monitor Dump Analyzer for Java
  • tcpdump抓包

    tcpdump抓包 基本概念 1 类型的关键字 host 指明一台主机 如 host 10 1 110 110 net 指明一个网络地址 如 net 10 1 0 0 port 指明端口号 如 port 8090 2 确定方向的关键字 sr
  • 国外拨号VPS指南:开启你的全球网络之旅

    在当今数字化时代 互联网已经成为了我们生活的一部分 而要在全球范围内畅通无阻地访问互联网 拥有一个可靠的国外拨号VPS是非常重要的 无论您是为了工作 学习还是娱乐 国外拨号VPS都可以为您提供更广泛的网络体验 本文将为您提供国外拨号VPS的
  • 服务器VPS是什么意思?一文了解其含义与重要性

    在今天的数字时代 服务器扮演着至关重要的角色 它们是网站 应用程序和在线业务的基石 但是 你是否听说过VPS 本文将深入探讨什么是服务器VPS 以及为什么它在今天的互联网世界中如此重要 什么是服务器VPS 服务器的基本概念 在我们深入探讨V
  • 短信系统搭建主要因素|网页短信平台开发源码

    短信系统搭建主要因素 网页短信平台开发源码 随着移动互联网的快速发展 短信系统已成为企业和个人进行信息传递的重要工具 建立一个高效可靠的短信系统对于企业来说非常重要 下面我们将介绍一些影响短信系统搭建的主要因素 1 平台选择 在搭建短信系统
  • 为什么我强烈推荐大学生打CTF!

    前言 写这个文章是因为我很多粉丝都是学生 经常有人问 感觉大一第一个学期忙忙碌碌的过去了 啥都会一点 但是自己很难系统的学习到整个知识体系 很迷茫 想知道要如何高效学习 这篇文章我主要就围绕两点 减少那些罗里吧嗦的废话 直接上干货 CTF如
  • 【无标题】

    大家都知道该赛项的规程和样题向来都是模棱两可 从来不说具体的内容 导致选手在备赛时没有头绪 不知道该怎么训练 到了赛时发现题目和备赛的时候完全不一样 那么本文将以往年信息安全管理与评估赛项经验来解读今年2023年国赛的规程 帮助选手们指明方
  • 2023下半年软考「单独划线」合格标准公布

    中国计算机技术职业资格网发布了 关于2023年度下半年计算机软件资格考试单独划线地区合格标准的通告 2023下半年软考单独划线地区合格标准各科目均为42分 01 官方通告 关于2023年度下半年计算机软件资格考试单独划线地区合格标准的通告
  • 【安全-SSH】SSH安全设置

    今天发现自己的公有云服务器被攻击了 在这里插入图片描述 https img blog csdnimg cn direct cafdca04646f4b8b838400ec79ac282f png 然后查看了登录日志 如上图 ls sh va
  • 【安全】网络安全态势感知

    文章目录 一 态势感知简介 1 概念 2 形象举例 3 应具备的能力 二 为什么要态势感知 为什么网络安全态势感知很重要 三 态势感知系统的功能 四 如何评估态势感知的建设结果 五 什么是态势感知的三个层级 四 业界的态势感知产品 1 安全

随机推荐

  • axios vue 加载效果动画_vue+elementUI+axios实现的全局loading加载动画

    在项目中 很多时候都需要loading加载动画来缓解用户的焦虑等待 比如说 我打开了一个页面 而这个页面有很多接口请求 但浏览器的请求并发数就那么几个 再加上如果网速不行的话 那么这时候 用户很可能就会纠结自己到底该不该留下来继续等待呢 所
  • VC编程获取MSN口令的代码

    MSN Messenger uses Windows Credential UI credui dll on WinXP 2003 Password Storage mechanism differs in these OSes so th
  • 微服务的终极杀器SpringCloudAlibaba组件精讲

    一 微服务 1 1 微服务简介 In short the microservice architectural style is an approach to developing a single application as a sui
  • 02_jQuery与Ajax

    jquery jquery的作用 他是js的库 处理html 事件 实现动画效果 方便的为网站提供AJAX交互 命名格式 ji 体积大 用于学习和debug使用 min js 压缩的文件 体积小 用于线上环境使用 使用方法 必须先在页面文件
  • 五种开源协议的比较(BSD,Apache,GPL,LGPL,MIT)

    五种开源协议的比较 BSD Apache GPL LGPL MIT 本篇博客比较了常见的5种开源协议的异同 大家在为自己的代码选择协议的时候可以参考 现今存在的开源协议很多 而经过Open Source Initiative组织通过批准的开
  • 标准C读BMP图象的一个小代码

    include
  • TCP/IP UDP广播无法发送或接收

    TCP IP UDP广播无法发送或者接收数据 在看 TCP IP 网络编程 这本书的时候 看到广播那一节 跟着书上写代码 怎么写都不行 广播就是没法发送 接收 发送端一直在发送数据 接收端就是没有反应 对了好几遍源码 没有问题 实在是愁人
  • 深入浅出理解Paxos算法

    Paxos算法是莱斯利 兰伯特 英语 Leslie Lamport LaTeX中的 La 于1990年提出的一种基于消息传递且具有高度容错特性的一致性算法 Paxos算法一开始非常难以理解 但是一旦理解其实也并不难 之所以难理解其实是因为作
  • 远程服务器无密登入设置

    现在还在输密码进入服务器的话 如果频次高的话 显得就很浪费时间 实际上可以通过无密登陆服务器 只需要设置好ssh就可以 这样只要你打开你电脑的终端不管是Mac OS还是Linux输入ssh root 远程服务器IP 这个命令就会自动登陆到远
  • 如何保障数仓数据质量?

    有赞数据报表中心为商家提供了丰富的数据指标 包括30 页面 100 数据报表以及400 不同类型的数据指标 它们帮助商家更合理 科学地运营店铺 同时也直接提供分析决策方法供商家使用 并且 每天在跑的底层任务和涉及的数据表已经达到千级别 面对
  • 【Python 1-10】Python手把手教程之——一篇讲透if语句以及if语句的特殊用法

    作者 弗拉德 来源 弗拉德 公众号 fulade me if 简单示例 假设你有一个汽车列表 并想将其中每辆汽车的名称打印出来 对于大多数汽车 都应以首字母大写的方式打印其名称 但对于汽车名 bmw 应以全大写的方式打印 下面的代码遍历一个
  • 技术至简-7:2G/3G/4G/5G基站系统中混合调制的技术框架

    2G 3G 4G 5G基站系统并非采用单一的调制技术 是数字调制和模拟调制的综合 是QAM调制与IQ调制的综合 是幅度调制与相位调制的综合 1 调制模型 在此模型中 包含了三种调制 1 数字基带调制 PSK QAM调制 2 模拟基带调制 I
  • Git日常问题: 什么是LFS?及其错误解决办法

    文章目录 Git LFS 错误 Git LFS 解决办法 Git LFS 错误 本地已经存在一个git仓库 想将其推送到一个远程仓库 结果遇到了git lfs错误 打印如下 git remote rename origin old orig
  • 解决DCNv2在Linux上安装失败的问题

    项目场景 今天同学安装 DCN Deformable Convolutional Networks 可变形卷积网络 v2的 PyTorch 版本时遇到了很多问题 弄了将近一天也没解决 于是求助笔者帮忙解决 这里记录一下成功的解决方案 问题描
  • MATLAB算法实战应用案例精讲-【回归算法】XGBoost算法(附Java、Python和R语言代码)

    目录 前言 xgboost面试过程中几个高频问题 1 xgboost如何处理缺失值
  • 什么是JDBC?并写出JDBC的开发流程。

    JDBC Java DataBase Connectivity 直译为 java数据库连接 实际上jdbc是java中的一套和数据库交互的api application program interface 应用程序编程接口 因为java程序
  • 【uni-app】修改原生导航栏文字和文字样式

    修改文字 uni setNavigationBarTitle 这是修改后的导航栏文字 title 首页 修改文字颜色以及导航栏背景色 uni setNavigationBarColor frontColor ffffff 文字颜色 back
  • SystemVerilog-$cast详解

    cast在子类与父类之间的复制 1 子类cast给父类 cast father cls child cls 之前有提到 cast是将两个类型强制转换 cast A B 将B强制类型转换给A 应用在类上 就是句柄的强制赋值操作 那么在子类和父
  • Global Illumination_Screen-Space Directional Occlusion(SSDO)

    之前我们了解过AO SSAO HBAO 可参照之前文章Vulkan SSAO 屏幕空间环境光遮蔽 DirectX11进阶9 AO SSAO Particle System GPU Global Illumination Horizon Ba
  • 常用椭圆曲线介绍

    chat gpt生成 对应python的miracl core python库 ED系列 一 ED25519 ED25519使用的椭圆曲线是Curve25519 它是一种高效且安全的椭圆曲线 由Daniel J Bernstein等人设计