方法集合设定好之后,就可以开始新建一个椭圆曲线点群了。新建点群的函数如下:

───────────────────────────────────────

EC_GROUP *EC_GROUP_new(const EC_METHOD *meth)

功能:    利用给定方法集meth新建椭圆曲线点群

输入:    meth

输出:    -

返回:    新建的椭圆曲线点群【正常】 or  NULL【出错】

出处:    ec_lib.c

调用:

▼    int ec_GFp_mont_group_init(EC_GROUP *group)

▼▼int ec_GFp_simple_group_init(EC_GROUP *group)

备注:    新建点群,同时初始化大部分参数。

───────────────────────────────────────

新建群时将大部分参数初始化为零(或NULL)。

使用完的椭圆曲线点群应该及时释放掉,接下来看看怎样释放椭圆曲线点群。

───────────────────────────────────────

void EC_GROUP_free(EC_GROUP *group)

功能:    释放椭圆曲线点群

输入:    group

输出:    -

返回:    -

出处:    ec_lib.c

调用:

▼    void ec_GFp_mont_group_finish(EC_GROUP *group)

▼▼void ec_GFp_simple_group_finish(EC_GROUP *group)

───────────────────────────────────────

点群的复制是必不可少的。

───────────────────────────────────────

int EC_GROUP_copy(EC_GROUP *dest, const EC_GROUP *src)

功能:    复制椭圆曲线点群

输入:    src

输出:    dest ← src

返回:    1【正常】 or 0【出错】

出处:    ec_lib.c

调用:

▼    int ec_GFp_mont_group_copy(EC_GROUP *dest, const EC_GROUP *src)

▼▼int ec_GFp_simple_group_copy(EC_GROUP *dest, const EC_GROUP *src)

───────────────────────────────────────

OpenSSL密码库算法笔记——第5.3.2章 椭圆曲线点群的建立,释放和复制相关推荐

  1. OpenSSL密码库算法笔记——第5.1.1章 椭圆曲线点群的定义

    下面定义的椭圆曲线点群不仅包含了域的信息和曲线的信息,甚至还包括了很多别的有利于实现的信息. 椭圆曲线点群的定义如下. typedef struct ec_group_st   EC_GROUP; s ...

  2. OpenSSL密码库算法笔记——第5.3.1章 椭圆曲线点群的算法集

    在使用椭圆曲线之前,必需先设定好曲线上的算法集,只有这样在应用中才知道应该使用哪些函数. 下面就来看看怎样设定好曲线上的方法集. ─────────────────────────────────── ...

  3. OpenSSL密码库算法笔记——第5.3.3章 椭圆曲线点群信息的基本操作

    新的群建好之后,就可以开始对这个群进行一些基本得操作了,如需要把很多必要的信息(如特征p.Weierstrass方程参数a.b.基点和阶等)添加进群里面去,同时在必要时还需要将这些信息读出来. 先来看 ...

  4. OpenSSL密码库算法笔记——第5.3.4章 椭圆曲线点群的补充说明

    在§5.3.3设置椭圆曲线特征等函数中会遇到编码函数ec_GFp_mont_field_encode和解码函数ec_GFp_mont_field_decode,其实这两个函数是在做大整数和Montgo ...

  5. OpenSSL密码库算法笔记——第5.1.2章 椭圆曲线算法集

    在定义椭圆曲线点群时出现了描述曲线所用算法的参数const EC_METHOD *meth,这一节就来看看这个参数有什么用处. 椭圆曲线算法集的定义如下. typedef struct ec_meth ...

  6. OpenSSL密码库算法笔记——第5.4.6章 椭圆曲线的无穷远点

    前面已经提到无穷远点为椭圆曲线加法群的单位元,记为O.这个无穷远点在仿射坐标系下是无法表示的,在Jacobi射影坐标系下为,.为了实现起来方便,在代码中将无穷远点简化为Z分量为0,而不再去考虑X坐标和 ...

  7. OpenSSL密码库算法笔记——第5.4.2章 椭圆曲线上点的射影坐标表示

    射影坐标又分成好几种--标准射影坐标.Jacobi射影坐标.Chudnovsky射影坐标. 在标准射影坐标中,射影点(x, y, z),z≠0,对应仿射点(x/z, y/z),椭圆曲线的射影方程为y2 ...

  8. OpenSSL密码库算法笔记——第5.1.3章 椭圆曲线点的定义

    有了椭圆曲线后,自然就得考虑曲线上的点.点的表示有很多种,最简单最常见的是用仿射坐标(x, y)表示,但使用仿射坐标会使得点的运算速度很慢,所以出现了多种射影坐标.在代码中选择使用的是仿射坐标和Jac ...

  9. OpenSSL密码库算法笔记——第5.4.9章 椭圆曲线点的加法

    先来回忆下前面提到的仿射点的加法. 曲线上的两个放射点P1=(x1,y1)和P2=(x2,y2)做加法P3=P1+P2=(x3,y3),当P1=P2时,称此时的加法运算为二倍点运算.如果P1≠-P2, ...

最新文章

  1. 实验三-密码破解技术
  2. golang 常量简介
  3. vb.net2019-多线程并行计算(6)
  4. /hbase/WALs/desktop,xxxxxxxx-splitting is non empty: Directory is not empty
  5. ServiceStack.Ormlit 事务
  6. Debug ASP.NET Core 2.0源代码
  7. Java——集合的遍历之迭代遍历
  8. win7您需要来自计算机管理员的权限,win7需要提供管理员权限才能打开文件怎么解决...
  9. java File_encoding属性
  10. 计算机晶体管怎么工作原理,晶体管的工作原理和实际作用
  11. java开发专用英语,JAVA开发常用英语词汇
  12. OpenStack 企业私有云的若干需求(7):电信行业解决方案 NFV
  13. 课程笔记-三维点云处理01 ——Introduction and Basic Algorithms
  14. 小博的软件测试学习笔记(V1.0)
  15. HDU 3085 Nightmare Ⅱ【BFS +曼哈顿距离+综合性较强】
  16. 没有50W彩礼 女友被强行拽走! Python分析全国彩礼情况,心凉了!
  17. reportportal 集成 robotframework 自动化执行及结果可视化
  18. php中的如何将拼接到一起,如何将两个视频拼接在一起?视频拼接方法
  19. 装饰大楼,备用钥匙,IOIOI卡片占卜总结
  20. CAD库中统计PBN运行航路条数和总距离

热门文章

  1. Echar line 图标前台封装JS
  2. 薅了9000万羊毛的“全能车App”案宣判,开发者获刑10年,罚金500万 !
  3. CNN(卷积神经网络)是什么?(转)
  4. 全面升级IPv6协议,京东要入局建设IPv6生态啦!
  5. 如何让学习python像玩游戏一样上瘾
  6. Dubbo 泛化调用
  7. CodeTop013 妈的怎么命名就不规范了(股票)
  8. 第一次做topcoder
  9. Java之Retry重试机制详解
  10. 无人机视频测量如何实现?