当前位置: 首页 > article >正文

openssl-ecparam 命令手册

openssl-ecparam 命令是OpenSSL的操作命令之一,用于EC(Elliptic Curve,椭圆曲线)参数的操作和生成,OpenSSL目前无法生成新组,因此此命令只能从已知(命名)曲线创建EC参数。

openssl-ecparam 命令的使用方式如下:

openssl ecparam [-help] [-inform DER|PEM] [-outform DER|PEM] [-in filename] [-out filename] [-noout] [-text] [-check] [-check_named] [-name arg] [-list_curves] [-conv_form arg] [-param_enc arg] [-no_seed] [-genkey] [-engine id] [-rand files] [-writerand file] [-provider name] [-provider-path path] [-propquery propq]

1、OPTIONS选项  

-help

打印出使用信息。    

772302307401dc35efff6b9574fd42a2.png

-inform DER|PEM

EC参数输入格式;默认情况下未指定。有关详细信息,请参阅openssl-format-options(1)。

-outform DER|PEM

EC参数输出格式;默认值为PEM。有关详细信息,请参阅openssl-format-options(1)。参数编码为IETF RFC 3279中指定的EcpkParameters。

-in filename

如果未指定此选项,则指定从中读取参数的输入文件名或标准输入。

-out filename

这指定了输出文件名参数。如果不存在此选项,则使用标准输出。输出文件名不应与输入文件名相同。    

-noout

此选项禁止输出参数的编码版本。

-text

此选项以人类可读的形式打印出EC参数。

-check

验证椭圆曲线参数。

-check_named

通过检查曲线参数是否与任何内置曲线匹配来验证椭圆名称曲线参数。

-name arg

使用具有指定“短”名称的EC参数。使用-list_curves获取当前实现的所有EC参数的列表。

-list_curves

打印出所有当前实现的EC参数名称的列表并退出。

openssl ecparam -list_curves |grep SM

f8ce9c2f4d4309eb9201ad402a4f273b.png

-conv_form arg

这指定了如何将椭圆曲线上的点转换为八位字节字符串。可能的值有:compressed/压缩、uncompressed/未压缩(默认值)和hybrid/混合。有关点转换形式的更多信息,请阅读X9.62标准。注意:由于专利问题,默认情况下,二进制曲线的压缩选项是禁用的,可以通过在编译时定义预处理器宏OPENSSL_EC_BIN_PT_COMP来启用。    

-param_enc arg

这指定了椭圆曲线参数的编码方式。可能的值是:named_curve,即ec参数由OID指定,或者在显式给出ec参数的地方显式指定(有关ec参数结构的定义,请参阅RFC 3279)。默认值为named_curve。请注意,RFC 3279中指定的隐式CA替代方案目前尚未在OpenSSL中实现。

-no_seed

此选项禁止参数生成的“seed”包含在ECParameters结构中(参见RFC 3279)。

-genkey

此选项将使用指定的参数生成EC私钥。

-engine id

请参阅openssl(OpenSSL命令手册中的“Engine Options/引擎选项”。此选项已弃用。

-rand files, -writerand file

有关详细信息,请参阅openssl(OpenSSL命令手册中的“Random State Options/随机状态选项”。

-provider name
-provider-path path
-propquery propq

请参阅openssl(OpenSSL命令手册、provider(7)和property(7)中的“Provider Options/提供者选项”。

openssl-genpkey和openssl-pkeyparam命令能够执行此命令可以执行的所有操作,并支持其他公钥类型。    

2、示例  

openssl-genpkey和openssl-pkeyparam命令的文档包含与此处列出的示例等效的示例。

要使用组“prime192v1”创建EC参数,请执行以下命令:

openssl ecparam -out ec_param.pem -name prime192v1

77840df2d2e5892bffaf3904c816b2c9.png

要创建具有显式参数的EC参数,请执行以下命令:

openssl ecparam -out ec_param.pem -name prime192v1 -param_enc explicit

863d19599d4e36c2aa794e0f9d4eb95c.png

要验证给定的EC参数,请执行以下命令:

openssl ecparam -in ec_param.pem -check

ffeee3650bf71e947a30fe25696489f4.png

要创建EC参数和私钥,请执行以下命令:

openssl ecparam -out ec_key.pem -name prime192v1 -genkey

3e6d01dff1b1b73b2edeca02da8055b9.png

要将点编码更改为“compressed/压缩”,请执行以下命令:

openssl ecparam -in ec_in.pem -out ec_out.pem -conv_form compressed

89462d5923c0df55d066d34d1b250a38.png

要将EC参数打印到标准输出,请执行以下命令:

openssl ecparam -in ec_param.pem -noout -text

c62db8aa5d3e4a441991e966b45d4f39.png

参考命令:openssl(OpenSSL命令手册),openssl-pkeyparam(1),openssl-genpkey(1),openssl-ec(1),openssl-dsaparam(1)

3、历史  

在OpenSSL 3.0中,-engine选项已被弃用。

OpenSSL 3.0中删除了-C选项。    

***推荐阅读***

CentOS编译安装OpenSSL 3.3.1

OpenSSL命令手册

如何使用OpenSSL创建RSA证书文件?

openVPN服务器配置的31个关键点

巧用openVPN实现访问云资源池业务

openVPN客户端连接指南

配置openVPN使用用户名密码认证

手撸一个自动搭建openVPN服务器的SHELL脚本

openVPN配置实现客户端互访

在Ubuntu系统手撸一个自动搭建openVPN服务端的SHELL脚本

openVPN+SmartDNS=openDNS or smartVPN?


http://www.kler.cn/a/377489.html

相关文章:

  • blender中,渲染是指渲染图片or视频 ,还是模型?
  • Granola:AI增强的会议记录工具,提升工作效率的利器
  • Unity照片墙效果
  • Git 概述及相关命令(1)
  • 【自动化利器】12个评估大语言模型(LLM)质量的自动化框架
  • kafka里的consumer 是推还是拉?
  • LeetCode (206单链表反转)
  • React + Vite + TypeScript + React router项目搭建教程
  • 以客户为导向在开源 AI 智能名片 2 + 1 链动模式 S2B2C 商城小程序内容创作中的实践与价值
  • 【缓存与加速技术实践】NoSQL之Redis部署安装与基础命令
  • 【LwIP源码学习4】主线程tcpip_thread
  • 1011:甲流疫情死亡率
  • 【零售和消费品&存货】价格标签检测系统源码&数据集全套:改进yolo11-RFAConv
  • 地平线 3D 目标检测 bev_sparse 参考算法-V1.0
  • TOEIC 词汇专题:饭店住宿篇
  • Docker篇(基础命令)
  • 【ChatGPT】让ChatGPT在回答中附带参考文献与来源
  • 淘宝 API 多语言接入:释放技术开发新潜力
  • 【react】基础知识点学习
  • String、StringBuffer、StringBuilder
  • Java如何通过Apache POI提升Excel文档数据的导出速度?
  • Qt c++ (一)创建一个APP
  • Python程序设计 生成器
  • Linux内核与驱动开发学习
  • C# 中使用Topshelf 注意事项
  • 设计模式(六)