内容简介
随着算力网络、物联网、车联网和无线体域网等新兴网络技术的飞速发展,数据安全与隐私保护面临前所未有的挑战,对密码技术提出更高要求。《新型密码技术及应用》基于作者在密码学和信息安全领域多年的研究成果,详细介绍新型网络环境下安全性更高、功能更全面、效率更优的密码方案。《新型密码技术及应用》内容涵盖各类密码体制的方案设计、安全性证明及其应用场景,旨在帮助读者掌握并运用新型密码技术,有效应对日益复杂的网络安全挑战。
精彩书摘
第1章密码学基础
本章主要介绍密码学的一些基础知识,包括双线性映射、数学困难问题、哈希函数、公钥密码体制、数字签名等。这些知识对于读者阅读本书后面章节是非常必要的。
1.1密码学数学基础
定义1.1设F是一个非空集合,是一个二元运算,若对于满足如下四个性质,则称F是一个群[1],记为。
(1)封闭性:任取元素,满足。
(2)结合律:任取兀素,有。
(3)单位元:任取元素,存在元素,使得。
(4)逆元:任取元素,存在元素,使得。如果群F包含的元素个数是有限的,那么称F为有限群;否则,称F为无
限群。F包含的元素个数称为F的阶,记为。若中的元素满足交换律,即任取元素,满足,则称F是一个交换群[2]。
定义一个群中元素的幂运算为该元素的重复运算,,规定
若对于元素,存在正整数使得,则称满足此要求的*小正整数为元素的阶[3]。
若群F中的每个元素可以表示为一个元素的幂,则称是一个循环群,记为,元素被称为的生成元。
定义1.2设F是一个非空集合,和是两个二元运算,若F对于+和*满足如下三个性质,则称F是一个域[4],记为。
(1)是一个交换群。
(2)是一个交换群,这里。
(3)分配律:任取元素,满足
和若域F的元素个数是有限的,则称为有限域;否则,称F为无限域[5]。
设q>3是一个素数,集合对于模加法?和模乘法③构成一个有限域[6],即任取兀素,定义和,其中和分别是整数的普通加法和乘法。
令椭圆*线E由满足方程的解所对应的点构成,其中。一个基于E的椭圆*线加法群定义为,这里O是一个无穷远点;根据弦切(chord-and-tangent)法则[7],G中加法和倍乘运算分别定义为和。关于椭圆*线及其运算的详细介绍请参阅文献[8]~[10]。
定义1.3假设Q和G2是两个阶为素数q的乘法循环群,是的一个生成元。如果映射:满足以下三个性质,则称e是一个双线性映射或双线性对[11]。
(1)双线性:对于任意,有。
(2)非退化性:其中表示中的单位元。
(3)可计算性:对于,存在有效的算法计算。
双线性映射是设计密码方案(如基于身份的密码方案)的重要工具,可以利用有限域上超椭圆*线中的Tate对或Weil对来构造[12,13]。
可证明安全性理论在一定的安全模型下能够证明一个密码方案达到特定的安全目标,采用“归约”方法将密码方案的安全性关联到某个数学困难问题。由于数学困难问题是公认难以求解的,因此证明攻击者在多项式时间内攻破密码方案的概率是可忽略的。下面给出与本书密码方案相关的数学困难问题[14-16],密码方案的安全性依赖于这些数学问题的困难性,即无法在多项式时间内以不可忽略的概率解决这些数学困难问题。
定义1.4大整数因子分解问题:给定一个大整数n=pq,计算n的两个素数因子p和q。
定义1.5离散对数(discrete logarithm,DL)问题:令是一个大素数,是一个乘法循环群,是的一个生成元。给定中的一个二元组(g,y),计算:使得。
定义1.6椭圆*线离散对数(elliptic curve discrete logarithm,ECDL)问题:
给定一个二元组(g,ga)eG1,其中是一个椭圆*线群,计算。
定义1.7计算性Diffie-Hellman(computational Diffie-Hellman,CDH)问题:
给定一个三元组,其中是未知的,计算。
定义1.8判定性Diffie-Hellman(decisional Diffie-Hellman,DDH)问题:给
定一个四元组,其中,是未知的,判定是否成立。
定义1.9Diffie-Hellman逆(Diffie-Hellman inversion,DHI)问题:给定一个
二元组,其中是未知的,计算。
定义1.10双线性Diffie-Hellman(bilinear Diffie-Hellman,BDH)问题:给定一个四元组,其中是未知的,计算。
定义1.11判定双线性Diffie-Hellman(decisional bilinear Diffie-Hellman,DBDH)问题:给定一个四元组和一个元素,其中是未知的,判断是否成立。
定义1.12平方Diffie-Hellman(square Diffie-Hellman,SDH)问题:给定一个二元组,其中;是未知的,计算。
定义1.13q-判定双线性Diffie-Hellman指数(q-decisional bilinearDiffie-Hellman exponent,问题:给定中的一个随机兀素和,中的一个元组,其中未知且,判定与是否相同。
定义1.14判定线性Diffie-Hellman(decisional linear Diffie-Hellman,DLDH)
问题:给定一个六元组;是未知的,判定是否成立。
哈希(Hash)函数是密码学的基本工具,被广泛应用于数字签名、消息完整性验证、区块链等领域。Hash函数是一种将任意长度的消息压缩成一个固定长度消息的函数,其输出值通常被称为Hash值(或哈希值)。Hash函数的功能是为消息产生一个“数字指纹”,其长度通
目录
目录
前言
第1 章 密码学基础 1
1.1 密码学数学基础 1
1.2 哈希函数 3
1.3 公钥密码体制 4
1.3.1 RSA公钥密码 5
1.3.2 ElGamal公钥密码 6
1.3.3 Diffie-Hellman密钥交换协议 6
1.4 数字签名 8
1.4.1 RSA 数字签名 8
1.4.2 ElGamal 数字签名 9
参考文献 9
第2 章 强不可伪造的基于身份签名体制 11
2.1 引言 11
2.2 形式化模型 12
2.3 标准模型下强不可伪造的基于身份签名方案 13
2.3.1 Tsai 方案描述 13
2.3.2 Tsai 方案的安全性证明 14
2.3.3 Tsai 方案的安全性分析 15
2.3.4 改进的基于身份签名方案 17
2.4 可撤销和强不可伪造的基于身份签名方案 20
2.4.1 Hung方案描述 21
2.4.2 Hung方案的安全性分析 22
2.4.3 改进的RIBS方案 23
参考文献 30
第3 章 无证书签名体制 33
3.1 引言 33
3.2 形式化模型 34
3.3 标准模型下强不可伪造的无证书签名方案 36
iv 新型密码技术及应用
3.3.1 Wu方案描述 36
3.3.2 Wu方案的安全性分析 38
3.3.3 改进的无证书签名方案 39
3.4 面向移动支付交易的无证书签名方案 45
3.4.1 Qiao方案描述 45
3.4.2 Qiao方案的安全性分析 46
3.4.3 改进的无双线性对的无证书签名方案 47
3.5 基于无证书签名的物联网数据认证方案 50
参考文献 62
第4 章 抗合谋攻击的无证书聚合签名体制 65
4.1 引言 65
4.2 无证书聚合签名方案的安全性定义 67
4.3 面向车载自组织网络的无证书聚合签名方案 69
4.3.1 Wan方案描述 69
4.3.2 Wang方案的安全性分析 70
4.3.3 面向VANETs的改进CLAS 方案 72
4.4 基于无证书聚合签名的多方合同签署协议 78
4.4.1 Cao方案描述 78
4.4.2 Cao方案的安全性分析 80
4.4.3 面向多方合同签署的改进CLAS方案 82
4.5 面向无线医疗传感器网络的无证书聚合签名方案 84
4.5.1 Zhan方案描述 84
4.5.2 Zhan方案的安全性分析 87
4.5.3 面向无线医疗传感器网络的改进CLAS 方案 90
参考文献 99
第5 章 具有附加性质的代理重签名体制 102
5.1 引言 102
5.2 部分盲代理重签名体制 104
5.2.1 形式化模型 104
5.2.2 双向部分盲代理重签名方案 106
5.3 可撤销的基于身份代理重签名体制 111
5.3.1 形式化模型 112
5.3.2 标准模型下可撤销的双向基于身份代理重签名方案 114
5.4 在线/离线门限代理重签名体制 121
5.4.1 变色龙哈希函数 122
5.4.2 三种常用的密码协议 123
5.4.3 形式化定义 124
5.4.4 基于变色龙哈希函数的在线/离线门限代理重签名方案 125
5.5 服务器辅助验证代理重签名体制 129
5.5.1 形式化模型 130
5.5.2 强不可伪造的服务器辅助验证代理重签名方案 130
5.6 基于代理重签名的云端跨域身份认证方案 134
5.6.1 跨域身份认证信任模型 135
5.6.2 方案描述 136
5.6.3 有效性分析 143
5.6.4 其他性能分析 146
参考文献 147
第6 章 不可否认的强指定验证者签名体制 151
6.1 引言 151
6.2 形式化模型 152
6.3 标准模型下不可否认的强指定验证者签名方案 155
参考文献 162
第7 章 可搜索加密体制 164
7.1 引言 164
7.2 形式化模型 165
7.3 支持策略隐藏且密文长度恒定的可搜索加密方案 167
7.4 基于云边协同的无证书多用户多关键词密文检索方案 177
7.5 基于无证书可搜索加密的EHR 数据密文检索方案 184
7.5.1 系统模型 184
7.5.2 方案描述 185
7.5.3 安全性与性能分析 190
参考文献 192
第8 章 签密体制 195
8.1 引言 195
8.2 形式化模型 197
8.3 基于多消息多接收者签密的医疗数据共享方案 199
8.4 基于签密和区块链的车联网电子证据共享方案 205
8.5 无线体域网中支持多密文等值测试的聚合签密方案 213
参考文献 221
试读
第1章密码学基础
本章主要介绍密码学的一些基础知识,包括双线性映射、数学困难问题、哈希函数、公钥密码体制、数字签名等。这些知识对于读者阅读本书后面章节是非常必要的。
1.1密码学数学基础
定义1.1设F是一个非空集合,是一个二元运算,若对于满足如下四个性质,则称F是一个群[1],记为。
(1)封闭性:任取元素,满足。
(2)结合律:任取兀素,有。
(3)单位元:任取元素,存在元素,使得。
(4)逆元:任取元素,存在元素,使得。如果群F包含的元素个数是有限的,那么称F为有限群;否则,称F为无
限群。F包含的元素个数称为F的阶,记为。若中的元素满足交换律,即任取元素,满足,则称F是一个交换群[2]。
定义一个群中元素的幂运算为该元素的重复运算,,规定
若对于元素,存在正整数使得,则称满足此要求的*小正整数为元素的阶[3]。
若群F中的每个元素可以表示为一个元素的幂,则称是一个循环群,记为,元素被称为的生成元。
定义1.2设F是一个非空集合,和是两个二元运算,若F对于+和*满足如下三个性质,则称F是一个域[4],记为。
(1)是一个交换群。
(2)是一个交换群,这里。
(3)分配律:任取元素,满足
和若域F的元素个数是有限的,则称为有限域;否则,称F为无限域[5]。
设q>3是一个素数,集合对于模加法?和模乘法③构成一个有限域[6],即任取兀素,定义和,其中和分别是整数的普通加法和乘法。
令椭圆*线E由满足方程的解所对应的点构成,其中。一个基于E的椭圆*线加法群定义为,这里O是一个无穷远点;根据弦切(chord-and-tangent)法则[7],G中加法和倍乘运算分别定义为和。关于椭圆*线及其运算的详细介绍请参阅文献[8]~[10]。
定义1.3假设Q和G2是两个阶为素数q的乘法循环群,是的一个生成元。如果映射:满足以下三个性质,则称e是一个双线性映射或双线性对[11]。
(1)双线性:对于任意,有。
(2)非退化性:其中表示中的单位元。
(3)可计算性:对于,存在有效的算法计算。
双线性映射是设计密码方案(如基于身份的密码方案)的重要工具,可以利用有限域上超椭圆*线中的Tate对或Weil对来构造[12,13]。
可证明安全性理论在一定的安全模型下能够证明一个密码方案达到特定的安全目标,采用“归约”方法将密码方案的安全性关联到某个数学困难问题。由于数学困难问题是公认难以求解的,因此证明攻击者在多项式时间内攻破密码方案的概率是可忽略的。下面给出与本书密码方案相关的数学困难问题[14-16],密码方案的安全性依赖于这些数学问题的困难性,即无法在多项式时间内以不可忽略的概率解决这些数学困难问题。
定义1.4大整数因子分解问题:给定一个大整数n=pq,计算n的两个素数因子p和q。
定义1.5离散对数(discrete logarithm,DL)问题:令是一个大素数,是一个乘法循环群,是的一个生成元。给定中的一个二元组(g,y),计算:使得。
定义1.6椭圆*线离散对数(elliptic curve discrete logarithm,ECDL)问题:
给定一个二元组(g,ga)eG1,其中是一个椭圆*线群,计算。
定义1.7计算性Diffie-Hellman(computational Diffie-Hellman,CDH)问题:
给定一个三元组,其中是未知的,计算。
定义1.8判定性Diffie-Hellman(decisional Diffie-Hellman,DDH)问题:给
定一个四元组,其中,是未知的,判定是否成立。
定义1.9Diffie-Hellman逆(Diffie-Hellman inversion,DHI)问题:给定一个
二元组,其中是未知的,计算。
定义1.10双线性Diffie-Hellman(bilinear Diffie-Hellman,BDH)问题:给定一个四元组,其中是未知的,计算。
定义1.11判定双线性Diffie-Hellman(decisional bilinear Diffie-Hellman,DBDH)问题:给定一个四元组和一个元素,其中是未知的,判断是否成立。
定义1.12平方Diffie-Hellman(square Diffie-Hellman,SDH)问题:给定一个二元组,其中;是未知的,计算。
定义1.13q-判定双线性Diffie-Hellman指数(q-decisional bilinearDiffie-Hellman exponent,问题:给定中的一个随机兀素和,中的一个元组,其中未知且,判定与是否相同。
定义1.14判定线性Diffie-Hellman(decisional linear Diffie-Hellman,DLDH)
问题:给定一个六元组;是未知的,判定是否成立。
哈希(Hash)函数是密码学的基本工具,被广泛应用于数字签名、消息完整性验证、区块链等领域。Hash函数是一种将任意长度的消息压缩成一个固定长度消息的函数,其输出值通常被称为Hash值(或哈希值)。Hash函数的功能是为消息产生一个“数字指纹”,其长度通