本节内容主要转载于:弄清楚DL,D-H,CDH problem,CDH assumption,DDH,BDDH,BCDH

DLP(Discrete Logarithm Problem)

在乘法群\((G,*)\)中:

离散对数问题:就是给出两个群元素\(P,Q\),求整数\(n\in Z_q^*\)是困难的,满足\(Q=P^n\)

DH密钥交换协议

具体请参考:计算困难假设(Computational hardness assumption)DH密钥交换

基于DLP( 离散对数问题)的困难性。

DDHP(Decision Diffie-Hellman Problem)

给出任意\((a,b,c)\), 有多项式时间算法能将\((g^a,g^b,g^{ab})\) 和\((g^a,g^b,g^c)\)两者明显的区分开来。说白了就是区分\(ab\)和\(c\),仍然是基于DLP。

BDDHP(bilinear decisional Diffie-Hellman Problem)

给出任意\((a,b,c,d)\), 有多项式时间算法能\((g^a,g^b,g^c,g^{abc}))\)和\((g^a,g^b,g^c,g^d)\)两者区分开来是困难的。

CDHP(Computational Diffie-Hellman Problem)

给出任意的\(g^a,g^b\),当数值较大时,求\(g^{ab}\)是困难的。

CDHP又分为两种:

Inv-CDHP(Inverse Computational Diffie-Hellman Problem)

求逆:对于\(a ∈ Z_q^*\), 给出\(P, P^a\),计算\(P^{a^{-1}}\)是困难的.

Squ-CDHP(Square Computational Diffie-Hellman Problem)

求平方:对于\(a ∈ Z_q^*\), 给出\(P, P^a\),计算\(P^{a^{2}}\)是困难的.

BCDHP(Bilinear Computational Diffie-Hellman problem )

任意选取\((a,b,c)\),在多项式时间内计算出\(g^{abc}\)是困难的

GHP群(Gap Diffie-Hellman group)

在一个群中,DDHP是容易的但CDHP很难的就被称为GDH。通过双线性对(bilinear pairing),我们可以得到GDH群,这种群在有限域上的supersingular 椭圆曲线或者hyperelliptic 椭圆曲线上可以找到,双线性对来自Weil 或者 Tate pairing。

可以看出BDDHP和BCDHP比DDHP和CDHP多了一个变量,为什么要多加一个变量?

因为,如果存在一个\(GxG\to G'\)(\(G,G'\)都是群)的双线性对的话, DDH问题是可以被快速解决的。所以就有了BDDH,故即使存在双线性对,BDDH问题仍然是难以计算的。

参考

1、An Efficient Signature Scheme from Bilinear Pairings and Its Applications

DH问题汇总的更多相关文章

  1. x86汇编知识点汇总

    目录: 1.进制转换 2.原码.反码.补码 3.寄存器 4.存储器的段结构 5.堆栈 6.传送类指令 7.算术运算类指令(不含乘除) 8.位操作类指令 9.标志位操作指令 10.标识符.常量与变量 1 ...

  2. vim命令汇总

    文章首发:http://www.cnblogs.com/sprying/p/3864631.html 上一次学习vim还是快一年了,倒腾了一个月之后就没碰过.现在重新汇总下vim命令. 1.有些命令回 ...

  3. 常用 Gulp 插件汇总 —— 基于 Gulp 的前端集成解决方案(三)

    前两篇文章讨论了 Gulp 的安装部署及基本概念,借助于 Gulp 强大的 插件生态 可以完成很多常见的和不常见的任务.本文主要汇总常用的 Gulp 插件及其基本使用,需要读者对 Gulp 有一个基本 ...

  4. 异常处理汇总 ~ 修正果带着你的Net飞奔吧!

    经验库开源地址:https://github.com/dunitian/LoTDotNet 异常处理汇总-服 务 器 http://www.cnblogs.com/dunitian/p/4522983 ...

  5. UWP开发必备:常用数据列表控件汇总比较

    今天是想通过实例将UWP开发常用的数据列表做汇总比较,作为以后项目开发参考.UWP开发必备知识点总结请参照[UWP开发必备以及常用知识点总结]. 本次主要讨论以下控件: GridView:用于显示数据 ...

  6. Oracle手边常用70则脚本知识汇总

    Oracle手边常用70则脚本知识汇总 作者:白宁超 时间:2016年3月4日13:58:36 摘要: 日常使用oracle数据库过程中,常用脚本命令莫不是用户和密码.表空间.多表联合.执行语句等常规 ...

  7. Oracle 数据库知识汇总篇

    Oracle 数据库知识汇总篇(更新中..) 1.安装部署篇 2.管理维护篇 3.数据迁移篇 4.故障处理篇 5.性能调优篇 6.SQL PL/SQL篇 7.考试认证篇 8.原理体系篇 9.架构设计篇 ...

  8. Vertica 数据库知识汇总篇

    Vertica 数据库知识汇总篇(更新中..) 1.Vertica 集群软件部署,各节点硬件性能测试 2.Vertica 创建数据库,创建业务用户测试 3.Vertica 数据库参数调整,资源池分配 ...

  9. 读书笔记汇总 - SQL必知必会(第4版)

    本系列记录并分享学习SQL的过程,主要内容为SQL的基础概念及练习过程. 书目信息 中文名:<SQL必知必会(第4版)> 英文名:<Sams Teach Yourself SQL i ...

随机推荐

  1. MySQL 里记录货币用什么字段类型?

    NUMERIC 和 DECIMAL 类型被 MySQL 实现为同样的类型,这在 SQL92 标准允 许.他们被用于保存值,该值的准确精度是极其重要的值,例如与金钱有关的数 据.当声明一个类是这些类型之 ...

  2. java-jsp-learnning

    简介:JSP(全称Java Server Pages) 一种动态网页开发技术.它使用JSP标签在HTML网页中插入Java代码.标签通常以<%开头以%>结束. JSP是一种Java ser ...

  3. python面向对象--快速入门

    1面向对象基本用法 1.1基本格式 class 类名: def __init__(self,x): self.x = x def 方法名字 (self): #函数在类里称为方法,self就是固定参数, ...

  4. VMware ESXi安装NVIDIA GPU显卡硬件驱动和配置vGPU

    一.驱动软件准备:从nvidia网站下载驱动,注意,和普通显卡下载驱动地址不同. 按照ESXi对应版本不同下载不同的安装包.安装包内含ESXi主机驱动和虚拟机驱动. GPU显卡和物理服务器兼容查询:( ...

  5. html 常用标签及基本用法

    一个网页基本是由 结构(html) + 样式(css) + 脚本(js) 组成.学习的话 应该从最基本的标签开始, 结构清晰了, 再用css美化, 最后可以用脚本加上特效 块级 和 行类标签 特点: ...

  6. maven安装和配置阿里云镜像(各种详细配置)

    maven安装和详细配置 提示:下面是maven3.6.3版本百度云链接,记住maven3.3以上版本必须安装jdk1.7及以上版本,否则会出错. 链接:https://pan.baidu.com/s ...

  7. 动态div点击事件传递对象参数格式-草稿889

    <button type='button' style='border: 1px solid #eeeeee;color: #717070;height: 20px;border-radius: ...

  8. JavaScript 字符串(String)对象的方法

    anchor() 描述:用于创建 HTML 锚 原型:stringObject.anchor(anchorname) 用法: <script> var txt="Hello wo ...

  9. int bool str

    一. python的基本数据类型 1. int 整数 2. bool 布尔.  判断.  if  while 3. str  字符串 ,一般存放小量的数据 4. list  列表. 可以存放大量的数据 ...

  10. SpringMVC获取请求参数-POJO类型参数

    1.Controller中的业务方法的POJO参数的属性名与请求参数一致,参数值会自动映射匹配 1.创建POJO类 public class User { private String usernam ...