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

golang 实现比特币内核:实现基于有限域上的椭圆曲线

我们已经看到了椭圆曲线上整数的操作,令人惊讶的是,我们可以将这些整数转换为有限域中的成员而不出现问题。请记住,字段成员的运算“+”和“.”是正常的算术运算,但结果会进行模运算。结果表明,即使基于模数操作,椭圆曲线点加法仍然成立。

例如,我们可以验证有限域的阶为103,从该字段中取出两个成员17和64,将它们组合为一个点坐标(17, 64),该点在模103的曲线 y^2 = x^3 + 7 上:

y^2 = 64^2 % 103 = 79,x^3 + 7 = (17^3 + 7) % 103 = 79

现在让我们将Point结构重写,将其组件从big.Int改为FieldElement,修改后的代码如下所示:

package elliptic_curveimport ("fmt""math/big"
)type OP_TYPE intconst (ADD OP_TYPE = iotaSUBMULDIVEXP
)type Point struct {a *FieldElementb *FieldElementx *FieldElementy *FieldElement
}func OpOnBig(x *FieldElement, y *FieldElement, s

http://www.mrgr.cn/news/68400.html

相关文章:

  • Transformer和BERT的区别
  • OkHttp网络请求框架
  • 深入浅出 Spring Boot 与 Shiro:构建安全认证与权限管理框架
  • 【学生选课管理系统】项目笔记
  • 【HarmonyOS】键盘遮挡输入框UI布局处理
  • 【Java SE语法】抽象类(abstract class)和接口(interface)有什么异同?
  • C语言中操作符详解(上)
  • ExceptionHandler的实践
  • 搭子小程序定制开发:全新找搭子之旅
  • 2024年高校辅导员考试题库及答案
  • 工具导航网址
  • 理解Web登录机制:会话管理与跟踪技术解析(四)-拦截器Interceptor、异常处理
  • oracle服务器意外宕机数据库启动失败故障处理记录
  • 丹摩征文活动 | 带你玩转开源模型,一起来部署SD3+ComfyUI文生图模型
  • 开源项目工具:LeanTween - 为Unity 3D打造的高效缓动引擎详解(比较麻烦的API版)之二———补间动画控制API系列
  • 【DL】YOLO11 OBB目标检测 | 模型训练 | 推理
  • openlunar 通过uio驱动直接修改映射内存读写权限
  • 方正阀门实控人去年分红近亿元:仍募资补流2500万,市场服务费疑点重重
  • 【人工智能】ChatGPT多模型感知态识别
  • 丹摩征文活动|详解 DAMODEL(丹摩智算)平台:为 AI 开发者量身打造的智算云服务
  • PyQt5实战——翻译的实现,成功爬取微软翻译(可长期使用)经验总结(九)
  • 初识网络编程TCP/IP
  • vue反向代理配置及宝塔配置
  • 【从零开始】5. 向量数据库选型与搭建
  • 在python中,什么是库?
  • 微服务架构面试内容整理-Archaius