从Goldwasser-Micali谈起 - 广州大学※数学与信息科学学院

合集下载

零知识证明是零信任吗

零知识证明是零信任吗

零知识证明是零信任吗导语虽然零知识证明和零信任这两个词,都带有“零”,都与“信任”有关,但并不是一回事。

两者本质上都要增强「信任」,但在增强「信任」的过程中,零知识证明强调不泄露知识;零信任强调不要过度授权。

简单说,零知识是为了隐藏知识;零信任是为了控制信任。

零知识证明解决了信任与隐私的矛盾:既通过「证明」提升「信任」,又通过「零知识」保护「隐私」。

是两全其美的方案。

探索零知识证明的过程,可以探索到安全的本质。

安全之终极定义,不是启发式的CIA三性,而是采用形式化验证的可证明安全——上帝(“模拟者”)与科学(数学、计算复杂度)完美结合的推演过程。

一、了解零知识证明1、零知识证明的定义零知识证明(ZKP,Zero-Knowledge Proof)的定义为:证明者(prover)能够在不向验证者(verifier)提供任何有用信息的情况下,使验证者(verifier)相信某个论断是正确的。

根据定义,零知识证明具有以下三个重要性质:(1)完备性(Completeness):只要证明者拥有相应的知识,那么就能通过验证者的验证,即证明者有足够大的概率使验证者确信。

(关于这里提到的“概率”,详见后面的“色盲游戏”)(2)可靠性(Soundness):如果证明者没有相应的知识,则无法通过验证者的验证,即证明者欺骗验证者的概率可以忽略。

(3)零知识性(Zero-Knowledge):证明者在交互过程中仅向验证者透露是否拥有相应知识的陈述,不会泄露任何关于知识的额外信息。

从定义中,还可以提取到两个关键词:“不泄露信息”+“证明论断有效”。

再浓缩一下就是:隐藏+证明。

所以,零知识证明的核心目的是:隐藏并证明需要它隐藏的各类秘密。

(感觉很矛盾是吧)2、零知识证明的源头零知识证明是1984年由Goldwasser、Micali、Rackoff三个人提出,论文题目是《The Knowledge Complextiy of Interactive Proof Systems》(《交互式证明系统中的知识复杂性》)。

可证明安全性理论与方法研究

可证明安全性理论与方法研究

V ol.16, No.10 ©2005 Journal of Software 软 件 学 报 1000-9825/2005/16(10)1743 可证明安全性理论与方法研究∗冯登国+ (信息安全国家重点实验室(中国科学院 软件研究所),北京 100080)Research on Theory and Approach of Provable SecurityFENG Deng-Guo +(State Key Laboratory of Information Security (Institute of Software, The Chinese Academy of Sciences), Beijing 100080, China) + Corresponding author: Phn: +86-10-62658643, Fax: +86-10-62520469, E-mail: fdg@, Received 2004-07-06; Accepted 2005-08-24Feng DG. Research on theory and approach of provable security. Journal of Software , 2005,16(10):1743−1756. DOI: 10.1360/jos161743Abstract : This paper presents a survey on the theory of provable security and its applications to the design and analysis of security protocols. It clarifies what the provable security is, explains some basic notions involved in the theory of provable security and illustrates the basic idea of random oracle model. It also reviews the development and advances of provably secure public-key encryption and digital signature schemes, in the random oracle model or the standard model, as well as the applications of provable security to the design and analysis of session-key distribution protocols and their advances.Key words : provable security; cryptosystem; security protocol; random oracle model; standard model摘 要: 论述了可证明安全性理论在安全方案与安全协议的设计与分析中的应用,内容主要包括:什么是可证明安全性,可证明安全性理论涉及到的一些基本概念,RO(random oracle)模型方法论的基本思想及其在公钥加密和数字签名等方案中的应用研究进展,标准模型下可证明安全性理论在公钥加密和数字签名等方案中的应用研究进展,以及可证明安全性理论在会话密钥分配协议的设计与分析中的应用研究进展.关键词: 可证明安全性;密码方案;安全协议;RO(random oracle)模型;标准模型中图法分类号: TP309 文献标识码: A目前多数安全协议的设计现状是:(1) 提出一种安全协议后,基于某种假想给出其安全性论断;如果该协议在很长时间,如10年仍不能被破译,大家就广泛接受其安全性论断;(2) 一段时间后可能发现某些安全漏洞,于是对协议再作必要的改动,然后继续使用;这一过程可能周而复始.这样的设计方法存在以下问题:(1) 新的分析技术的提出时间是不确定的,在任何时候都有可能提出新的分析技术;(2) 这种做法使我们很难确信协议的安全性,反反复复的修补更增加了人们对安全性的担心,也增加了实现代价或成本.那么有什么解决办法呢?可证明安全性理论就是针对上述问题而提出的一种解决方案(当然,并非是唯一∗ Supported by the National Grand Fundamental Research 973 Program of China under Grant No.G1999035802 (国家重点基础研究发展规划(973)); the National Natural Science Foundation of China under Grant No.60273027 (国家自然科学基金)作者简介: 冯登国(1965-),男,陕西靖边人,博士,研究员,博士生导师,主要研究领域为网络与信息安全.1744 Journal of Software软件学报 2005,16(10)的解决方案).可证明安全性是指,安全方案或协议的安全性可以被“证明”,但用“证明”一词并不十分恰当,甚至有些误导[1].一般而言,可证明安全性是指这样一种“归约”方法:首先确定安全方案或协议的安全目标.例如,加密方案的安全目标是确保信息的机密性,;然后根据敌手的能力构建一个形式的敌手模型,并且定义它对安全方案或协议的安全性“意味”着什么,对某个基于“极微本原(atomic primitives,是指安全方案或协议的最基本组成构件或模块,例如某个基础密码算法或数学难题等)”的特定方案或协议,基于以上形式化的模型去分析它,“归约”论断是基本工具;最后指出(如果能成功),挫败方案或协议的唯一方法就是破译或解决“极微本原”.换句话讲,对协议的直接分析是不必要的,因为你对协议的任何分析结果都是对极微本原的安全性的分析.可见,称“归约安全”也许比“可证明安全”更恰当.实际上,可证明安全性理论是在一定的敌手模型下证明了安全方案或协议能够达到特定的安全目标,因此,定义合适的安全目标、建立适当的敌手模型是我们讨论可证明安全性的前提条件.可证明安全性理论的应用价值是显而易见的:我们可以把主要精力集中在“极微本原”的研究上,这是一种古老的、基础性的、带有艺术色彩的研究工作;另一方面,如果你相信极微本原的安全性,不必进一步分析协议即可相信其安全性.综上所述,可证明安全性理论本质上是一种公理化的研究方法,其最基础的假设或“公理”是:“好”的极微本原存在.安全方案设计难题一般分为两类:一类是极微本原不可靠造成方案不安全(如用背包问题构造加密方案);另一类是,即使极微本原可靠,安全方案本身也不安全(如DES-ECB等).后一种情况更为普遍,是可证明安全性理论的主要研究范围.必须说明的是,可证明安全性理论也存在一定的局限性:首先必须注意模型规划,即注意所建立的模型都涵盖了哪些攻击.显然,一些基于物理手段的攻击都不包含在内,但这并不意味着可证明安全性的方案就一定不能抵抗这类攻击,而是说未证明可以抵抗这类攻击;其次,即使应用具有可证明安全性的方案,也可能有多种方式破坏安全性:有时证明了安全性,但问题可能是错误的,也可能应用了错误的模型或者协议被错误操作,甚至软件本身可能有“Bugs”.另一个需要注意的问题是基础假设的选取:可证明安全性是以某一假设为基础的,因此一旦该假设靠不住,安全性证明也就没有意义了(当然,不一定意味着可构造对方案的攻击实例);选取基础假设的原则就是“越弱越好”,通常称弱假设为标准假设.基础假设的强弱是比较不同安全方案的重要尺度之一.上述定义较为抽象,下面以RSA为例加以说明.给定某个基于RSA的协议P,如果设计者或分析者给出了从RSA单向函数到P安全性的归约,那么P具有以下转换性质:对于任何声称破译P的敌手(程序)A,以A为“转换算法”的输入,必然导致一个协议Q,Q可被证明破译RSA.结论是:只要你不相信RSA是可破译的,那么上述的Q就不存在,因而P是安全的.对可证明安全性的精确形式化有多种形式,一般是在计算复杂性理论框架下加以讨论,如主要考虑“概率多项式时间(PPT)”的敌手A和转换算法,以及“可忽略”的成功概率.这是一种“渐近”观点,有着广泛的适用范围.具体内容可参见Goldreich的研究综述[2].1.1 基本概念本质上,可证明安全性理论的主要研究途径是规划安全方案或协议的形式化安全模型,不同的安全方案或协议会导致不同的安全模型,而这些安全模型大多基于一些很基本的密码学概念.因此对一些最基本的密码学概念(如加密、签名及其安全性定义等)给予精确的形式化定义是可证明安全性理论的基础组成部分,有助于消除自然语言的语义二义性.下面分别介绍数字签名方案和公钥加密方案的安全模型.定义1(数字签名方案). 一个数字签名方案由以下3种算法组成:(1) 密钥生成算法K.对于输入1k,K产生一对匹配值(k p,k s),分别称为公钥和私钥,K可以是概率算法.k称为安全参数,密钥等因素的规模都依赖于k.(2) 签名算法Σ.给定消息m和(k p,k s),Σ产生签名σ,Σ可以是概率算法.(3) 验证算法V.给定签名σ和消息m以及公钥k p,V检验σ是否是m的对应于公钥k p的合法签名,通常情况冯登国:可证明安全性理论与方法研究1745下,V 是确定性算法.对于任一数字签名方案(K ,Σ,V ),敌手A 的模型如下: A 的目标有如下3个:揭示签名者私钥(完全破译);构造成功率高的伪签名算法(通用伪造);提供一个新的消息-签名对(存在性伪造). 存在性伪造一般并不危及安全,因为输出消息很可能无意义,但这样的方案本身不能确保签名方的身份,例如不能用来确认伪随机元素(如密钥),也不能用来支持非否认.A的两类攻击:未知消息攻击和已知消息攻击.后一种情况中最强的攻击是“适应性选择消息攻击”,即A 可以向签名方询问对任何消息的签名(当然不能询问欲伪造消息的签名,这是一类自明的约定,后文不再注释),因而可能根据以前的答案适应性地修改随后的询问. 定义2(数字签名方案在适应性选择消息攻击下的安全性). 对任一数字签名方案(K ,Σ,V ),如果敌手A 的攻击成功概率]1),,(:)(),(),1(),Pr[(=←←=Σσσm k V k A m K k k Succ p p k s p A s k是可忽略的,则称该方案能够抵抗适应性选择消息攻击.这里,A 可以获得签名Oracle s k Σ(实际上是一个“黑盒”),这模拟了如上所说的“适应性选择消息询问”,而且要求(m ,σ)没有询问过.s k Σ定义3(公钥加密方案). 一个公钥加密方案由以下3种算法组成:(1) 密钥生成算法K .对于输入1k ,K 产生一对匹配值(k p ,k s ),分别称为公钥、私钥,K 是概率算法.(2) 加密算法E .给定消息m 以及公钥k p ,E 产生m 对应的密文C .E 可以是概率算法,这时记为),;,(r m k E p r 表示随机输入.(3) 解密算法D .给定密文C 及私钥k s ,D 产生C 对应的明文m ,一般是确定性算法.一般而言,加密方案的安全目标是单向性(one-wayness,简称OW)的:在不知私钥的情况下,敌手A 在概率空间M ×Ω上成功地对E 求逆的概率是可忽略的(这里,M 是消息空间,Ω是加密方案的随机掷硬币空间),亦即概率]));,(,(:)1(),Pr[(m r m k E k A K k k Succ p p k s p A =←= 是可忽略的.然而,许多应用要求具有更强的安全性.定义4(多项式安全/密文不可区分). 对任一公钥加密方案(K ,E ,D ),如果满足1]),,,(:);,(),(),,(),1(),Pr[(2102110−==←←×b c s m m A r m k E c k A s m m K k k adv b p p k s p A是可忽略的,则称该方案是多项式安全的或密文不可区分的.这里,敌手A =(A 1,A 2)是一个2阶段攻击者(都是PPT 算法),概率取于(b ,r )之上.上述定义形式化了如下性质:敌手了解明文的某些信息(可任选一对消息,其中一个被加密),但它不能从密文得到除明文长度之外的任何信息.敌手的几种攻击类型(相当于敌手拥有的Oracle 数量及性质):(1) CPA(选择明文攻击),该攻击在公钥方案中显然是平凡的;(2) PCA(明文校验攻击),敌手获得明文校验Oracle,用以回答关于任一输入对(m ,c )是否为对应明密对的 询问;(3) CCA(选择密文攻击),除了获得加密Oracle 以外,敌手还获得解密Oracle,即对于任何询问的密文(除了应答密文),Oracle 都给以相应的明文作为回答.这是最强的攻击(根据是否适应性选择密文,还可以细分为CCA1和CCA2).对应以上攻击条件的相应安全性定义,均可用类似于定义4的方法给出,区别仅在于敌手获得的Oracle 数量和性质不一样.对称密码方案的安全性可类似定义.1746 Journal of Software软件学报 2005,16(10) 2 RO模型方法论及其相关研究结果20世纪80年代初,Goldwasser,Micali和Rivest等人首先比较系统地阐述了可证明安全性这一思想,并给出了具有可证明安全性的加密和签名方案[3,4].然而,以上方案的可证明安全性是以严重牺牲效率为代价的,因此以上方案虽然在理论上具有重要意义,但不实用,这种情况严重制约了这一领域的发展.直到20世纪90年代中期出现了“面向实际的可证明安全性(practice-oriented provable-security)”的概念,特别是Bellare和Rogaway提出了著名的RO(random oracle,随机预言)模型方法论[5],才使得情况大为改观:过去仅作为纯理论研究的可证明安全性理论,迅速在实际应用领域取得了重大进展,一大批快捷有效的安全方案相继提出;同时还产生了另一个重要概念:“具体安全性(concrete security or exact security)”,其意义在于,我们不再仅仅满足于安全性的渐近度量,而是可以确切地得到较准确的安全度量.面向实际的可证明安全性理论取得了巨大的成功,已被国际学术界和产业界广为接受;但Canetti和Goldreich对此持有异议[6],并坚持仍在标准模型(standard model)中考虑安全性.Canetti和Goldreich认为:密码方案在RO模型中的安全性和通过“hash函数实现”的安全性之间无必然的因果关系;具体说来,存在这样的实际签名方案和加密方案,它们在RO模型中是安全的,但任何具体实现都是不安全的.这实际上是提出了一个反例.不过,Goldreich也认为,应该明确RO模型方法论并不能作为实际方案安全的绝对证据,但该方法论仍是有意义的,如可以作为一种基本测试——任何实际方案通过这种安全测试是必要的,RO模型方法论至少可以排除很多不安全的设计,虽然并非完备的.Canetti则进一步指出,RO模型方法论虽然存在以上缺点,但它可用于设计简单而有效的协议——可以抵抗许多未知攻击;更重要的是,其基本思想可以用来设计某些安全的理想系统.Pointcheval等人则认为[7],目前还没有人能提出令人信服的关于RO模型实际合法性的反例.文献[6]的反例仅仅是一种理论上的反例,是针对实际目的的“明显错误设计”;RO模型已经被广为接受,并被认为是度量实际安全级别的一种很好的手段;即使并未提供一个正规的安全性证明(像标准模型那样),但在其“安全性论断”(hash函数没有弱点)下,RO模型中的证明确保了整个方案的安全性.更确切些,RO模型可视为对敌手能力的某种限制——敌手的攻击是不考虑任何特殊hash函数实例的一般攻击,而且如果假定存在某些防窜扰设备(如Smart Cards),则RO模型等价于标准模型,这时只要求伪随机函数存在[2].最重要的是,仅就实现效率这一点,RO 模型中的可证明安全性的方案就远远优于那些能够提供标准安全性证明的方案,仅此一点就可以从实际应用中排除当前所有“在标准模型中具有可证明安全性”的方案.事实上,一些有代表性的、有效的标准解决方案,如文献[3,4]中的方案,过于复杂且代价昂贵,归约的复杂性使得难以确定实际安全参数,其有效性也只是相对于过去的标准方案而言.但可以肯定的是,迄今为止,RO模型方法论是可证明安全性理论最成功的实际应用,其现状是:几乎所有国际安全标准体系都要求提供至少在RO模型中可证明安全性的设计,而当前可证明安全性的方案也大都基于RO模型.2.1 RO模型介绍文献[5]中提出如下观点:假定各方共同拥有一个公开的Random Oracle,就可以在密码理论和应用之间架起一座“桥梁”.具体办法是,当设计一个协议P时,首先在RO模型(可看成是一个理想模拟环境)中证明P R的正,然后在实际方案中用“适当选择”的函数h取代该Oracle(潜在论断是理想模拟环境和现实环境在敌手看来是多项式时间计算不可区分的).一般来说,这样设计出来的协议可以和当前协议的实现效率相当.必须指出,这并非是严格意义上的可证明安全性,因为安全性证明仅在RO模型中成立,随后的“取代”过程本质上是一种推测:RO模型中的安全特性可以在标准模型中得以保持.假设我们提出一个协议问题Π(这个问题和h函数“独立”),要设计一个安全协议P解决该问题,可按如下步骤执行:(1) 建立Π在RO模型中的形式定义,RO模型中各方(包括敌手)共享随机Oracle R;(2) 在RO模型中设计一个解决问题Π的有效协议P;(3) 证明P满足Π的定义;冯登国:可证明安全性理论与方法研究1747(4) 在实际应用中用函数h 取代R . 严格说来,h 不可能真的“像”随机函数:首先,其描述较短;其次,所谓的随机Oracle 即hash 函数对每一个新的询问产生一个随机值作为回答(如果问相同的询问2次,回答仍相同),这也是和随机函数的一个微小区别.但这并未改变上述方法论的成功,因为只要求在敌手看来“像”随机函数.此外,h 函数“独立”于Π也是至关重要的(否则可能不安全,可构造反例). 一般来说,函数h 至少要满足以下基本要求:设计上足够保守,能够抵抗各种已知攻击;不会暴露某些相关数学“结构”.文献[5]指出,选择h 并不需要太麻烦,一个适当选择(但并不需过分苛求)的hash 函数就是如上h 函数的一个很好的选择.RO 方法论也易于推广到基于对称密码本原的协议/方案研究,如CBC-MAC,虽然没有hash 函数,但把一个恰当选择的分组密码(如DES)视为随机函数.2.2 归约论断和具体安全性归约论断是可证明安全性理论的最基本工具或推理方法,简单说就是把一个复杂的协议安全性问题归结为某一个或几个难题(如大数分解或求解离散对数等).在RO 模型中的归约论断一般表现为:首先形式化定义方案的安全性,假设PPT 敌手能够以不可忽略的概率破坏协议的安全性(如伪造签名);然后模仿者S (就是设计者或分析者)为敌手提供一个与实际环境不可区分的模拟环境(RO 模型),回答敌手的所有Oracle 询问(模拟敌手能得到的所有攻击条件);最后利用敌手的攻击结果(如一个存在性的伪造签名)设法解决基础难题.如果把RO 模型换成现实模型就得到标准安全性证明.RO 归约论断的一个显著优点是能够提供具体安全性结果.具体地说就是,试图显式地得到安全性的数量特征,这一过程称为“具体安全性处理(concrete or exact treatment of security)”,与前面提到的“渐近”观点有明显区别.其处理结果一般表述为如下形式(举例):“如果DES(本原)可以抵抗这样条件的攻击,即敌手至多获得236个明密对,那么我们的协议就可以抵抗一个能执行t 步操作的敌手发动的攻击,t 值如下…”这样,协议设计者就能够确切地知道具体获得了多少安全保证,不必再笼统地说协议是否安全.例1:文献[8]中研究了CBC MAC 的安全特征,结论是:对任意一个运行时间至多为t 、至多见过q 个正确MAC 值的敌手,成功模仿一个新消息的MAC 值的概率至多为ε+(3q 2n 2+l )/2.这里,l 是基础密码的分组长度,n 是明文消息总数,ε是检测到密码偏离随机行为的概率(在O (nql )时间内).具体安全性处理的一个重要目标就是,在把一个基础极微本原转化成相应协议时,尽可能多地保持极微本原的强度.这表现为要求“紧”的归约方法,因为一个“松”的归约意味着要求采用更长的安全参数,从而降低了 效率.2.3 基于RO 模型方法论的代表性研究结果2.3.1 公钥加密方案第1节的概念推广到RO 模型,即可得到RO 模型中的公钥加密方案的定义.公钥加密方案可以通过PPT 生成器g 来规定:以安全参数1k 为输入,输出一对概率算法(E ,D ),分别称为加、解密算法,D 保密,运行时间以g 的运行时间为界.加密:)(x E y R ←,解密:)(y D x R ←.像定义4一样,称该方案在RO 模型中是CPA 多项式安全的,如果对任意的CP-敌手(选择明文敌手)(F ,A 1),满足).(2/1]),,(:)(};1,0{);(),();1(),(;2Pr[1110n b m E A m E b E F m m g D E R R b R R k μαα+≤=←←←←←∞ 这里,R 表示一般的Oracle,是从{0,1}*到{0,1}∞的函数,2∞表示所有Oracle 的集合,“∞”并非真的无限,只是避免提问“足够长是多长”这类问题,μ(n )是可忽略函数.CCA 安全性:这里的敌手A 称为RS-敌手,即有非一致多项式算法A =(F ,A 1),各自获得一个Oracle R 及一个解密Oracle 的黑盒实现D R ;F 的任务就是提出一对明文10,m m ,A 1被随机给予其中一个的密文α,则只要不允许向解密Oracle D R 询问α(因为禁止提出与最终论断等价的询问),A 1就不可能以不可忽略优势猜中是哪一个1748Journal of Software 软件学报 2005,16(10)明文. 称g 在RO 模型中安全抗CCA 攻击,如果对任意RS-敌手(F ,A 1),满足:).(2/1]),,,(:)(};1,0{);(),();1(),(;2Pr[10,1,10n b m m E A m E b E F m m g D E R R RD R b R D R k μαα+≤=←←←←←∞ Bellare 等人在文献[5]中提出了一个在RO 模型中安全抗CCA 攻击的方案,由于归约并不紧,应用意义并不大,但其设计思想很好地体现了RO 方法论的特点.Bellare 等人把以上思想作了进一步改进,在1994年提出了著名的公钥加密填充方案OAEP [9],可证明是抗CCA2攻击安全的,目前该方案已成为新一代RSA 加密标准.其基本组成是:核心组件是一个Padding 函数,即OAEP G ,H (x ,r )=x ⊕G (r )||r ⊕H (x ⊕G (r )).这里,x 是被加密消息,r 是随机输入;加密算法为E G ,H (x )=f (OAEP G ,H (x ,r )).这里,f 是陷门置换(如RSA 函数).基本设想是构造一个具有良好随机性的“遮掩函数”隐蔽明文的统计特性.2.3.2 数字签名方案Bellare 等人在文献[5]中也给出了一种具有可证明安全性的签名方案.该签名方案要求陷门置换f 具有“均匀分布”的特点,而标准RSA 置换不具有这个性质,因此基于RSA 无法设计该类方案.文献[10]中提出了一种基于RSA 的签名方案:概率签名方案PSS,目前有望成为RSA 签名标准.PSS 引入了概率机制,有更好的安全界.该方案不仅可证明其安全性,而且相应的归约是很紧的,一个敌手伪造签名的能力和对RSA 求逆的能力相当.总之,安全性和分解整数的困难性紧密相关.稍作改进,也可以具有消息恢复性质.目前,其他可证明安全性的签名方案大都是基于识别协议的签名方案,这不是偶然的,前面我们提到Fiat 和Shamir 曾经应用RO 假设试图构造一个安全性和因子分解一样困难的签名方案[11],并证明了其与识别协议的等价性.例如,文献[12]中的主要工作是:对基于Fiat-Shamir 识别协议的签名方案[11]作了具体安全性分析,通过交换应答和承诺的顺序改进设计了一类新的Fiat-Shamir 类型签名方案(E-swap 签名方案),具有更好的具体安 全性.其他一些进展可参见文献[13−15]等.文献[15]基于计算Diffie-Hellman(CDH)假设,对一个源于Schnorr 签名的改进方案EDL 给出了归约很紧的安全性证明,使得该签名方案得到了业界的广泛重视.另外,值得特别说明的是,文献[13]对于完善RO 模型方法论具有重大贡献,即提出了以Folklore 引理为代表的一般安全论断,主要适用于许多基于识别协议的签名方案,特别是证明了迄今为止唯一一个ElGamal 变形签名方案MEG 的安全性.基本方法是,Oracle 重放(replay)攻击,即在RO 模型中实施归约化证明时,重放多项式个不同(但有一定联系)的随机Oracle(这相当于为敌手提供多个模拟环境),然后敌手若能以不可忽略概率伪造多个签名,设计者或分析者就能根据其内在关联求解基础难题(如DLP).缺点是归约还不够紧. 3 标准模型中可证明安全性理论研究的一些重要进展文献[3,4]是满足标准安全性证明的早期有代表性的方案.实际上,前面的结果已经包含了许多这方面的内容,如一些基本概念等,这里我们简要介绍一些近年来的结果.文献[16]研究了数字签名方案中的hash 函数设计应用问题,降低了对hash 函数的要求;文献[17]提出了一类基于强RSA 假设的数字签名方案.其共同之处是都不把hash 函数形式化为RO.文献[17]的安全性证明实际上是用满足强计算假设的hash 函数取代了RO.3.1 基于padding 函数的RSA 签名方案克服RSA 签名方案同态缺陷的一种通用解决方案就是先对消息应用padding 函数作用,然后对结果作解密运算(签名).文献[16]中的主要结果是:基于padding 函数、对一组消息的RSA 签名与对多个分组消息的RSA 签名的安全性等价.而且这里并不要求hash 函数为Random Oracle 或具有自由碰撞性质,只是假设存在某个安全的、用于签署固定长度消息的padding 函数μ;利用它就可以构造一个用于签署任意长度消息的安全padding 方案.但该文在一般标准安全论断研究方面并未有多少进展.冯登国:可证明安全性理论与方法研究17493.2 没有随机Oracle 的安全签名方案(Hash -and -Sign 模式) 文献[17]基于强RSA 假设(即对任意的RSA 模*,nZ s n ∈,要在多项式时间内找到一个满足r e =s mod n 的二元组(e ,r )(e >1)是不可能的),提出了一种抵抗适应性选择消息攻击的签名方案,仍属于Hash-and-Sign 结构.密钥和参数说明类似于RSA,注意公钥为*,nZ s pq n ∈=.签名算法本身很简单:e =h (R ,M ),签名σ是s 模n 的e 次根;验证算法略.在安全性论断研究方面,文献[17]不再把hash 函数视为RO,而是把hash 函数视为具有某些特定性质(如整除难处理性等)的随机函数h (R ,M ).这里,R 是随机数.特别之处在于:既充分利用RO 安全论断的优点,又用一个假想的随机性Oracle 取代RO,即假设已知h 的随机输入因素也对解决强RSA 难题毫无帮助.文献[17]希望这种“相对模型方法论”能够替代RO 方法论,但显然其假设过强(虽然文献[17]认为仍是现实的),归约也不紧,更重要的是目前看不到有推广应用的可能,文献[17]也承认这一点.3.3 Cramer -Shoup 加密方案Cramer 和Shoup [18]于1998年提出了第一个比较实际的标准模型下可证明安全的公钥加密方案,该方案的困难假设是判定性Diffie-Hellman 问题.由于其安全性归约是在标准的杂凑函数假设(抗碰撞)下得到的,并不依赖于随机预言模型,所以受到了很大的关注.设G 是有限域*p Z 的阶为q 的子群,p ,q 为素数,且q |p −1,g 1和g 2是G 中两个随机的非单位元的元素.设),(21x x x =,),(21y y y =,),(21z z z =表示在0和q −1之间的数对;),(21g g g =,),(21u u u =表示G 中的元素对;r 是1和q −1之间的随机数,记),(2121x x x g g g =,),(2121rx rx rx g g g =.假设H 是合适的抗碰撞杂凑函数.用户Alice 的私钥是3对随机产生的数x ,y ,z ,其公钥由3个群元素,x g c =,y g d =z g e =组成.加密:为了发送消息m ∈G ,Bob 选择一个随机数r ,令r g u 11=,r g u 22=,m e w r =,然后计算),,(21w u u H h =和rh r d c v =.Bob 把四元组),,,(21v w u u 作为密文发送给Alice.解密:要解密),,,(21v w u u ,Alice 首先计算),,(21w u u H h =,然后利用她的私钥计算,hy x u +这个结果应该等于v (因为rh r rhy rx hy x d c g u ==++).如果它不等于v ,Alice 就拒绝该消息;如果通过这个检验,Alice 继续进行解密:把w 除以u z ,因为r rx z e g u ==,而m e w r =,所以这就是明文m .对于Cramer-Shoup 加密方案,如果存在一个自适应选择密文攻击的敌手能够破坏定义4中给出的安全性,那么就可以构造一个算法来求解判定性Diffie-Hellman 问题.容易看出,Cramer-Shoup 加密方案实际上是ElGamal 公钥加密方案的一个变型,而后者显然是不能抵抗选择密文攻击的.与ElGamal 方案相比,Cramer-Shoup 方案的一个重要设计思想,是增加了密文的合法性检验,即在其密文中增加了冗余v ,解密者通过检查u x +hy =v 来判断密文的合法性.而正是这个密文合法性检验条件,使得解密Oracle 不能帮助敌手来发动有效的攻击,这也是目前所有的抵抗选择密文攻击的加密方案的重要设计思想之一.4 会话密钥分配(SDK )协议的可证明安全性研究通信双方在充满恶意的环境中传送数据,一般需要确保数据的机密性和可认证性.要达到此目的,必须加密和认证被传送的数据,这就需要密钥,而密钥通常需要通过会话密钥分配(SKD)协议来实现.当前最常见的是三方SKD 协议(可信方参与),因此下文的论述以此为重点.最早的、最流行的三方密钥分配系统是1978年提出的NS 系统[19],并且有许多具体候选方案.之后的数年,又有10多个SKD 协议出现.但是,似乎所有这些工作都存在这样的“怪圈”:提出一个协议;然后是不断地试图破译;不断地修补.实际上,Needham 和Schroeder 在一开始就提出了警告:这样开发的协议容易有微妙的弱点,且不易在正常操作中检测到,很有必要研究验证协议正确性的技术.作为对这种警告的证实,文献[20]指出了一种NS 协议的bug,许多相关协议都有类似的缺陷.如此漫长的攻击历史使得人们终于达成这样的共识:要解决会话密钥分配问题,仅仅由作者给出一个协议、并且作者本人找不到可行的攻击手段是远远不够的.Burrows,Abadi 和Needham [21]试图通过使用特定目的的逻辑来解决这个问题,即著名的BAN 逻辑.形式化。

密码学假设

密码学假设

可证明安全性理论信息安全是信息社会赖以生存的根基,现代密码学是信息安全技术的核心,它建立在保证合法用户算法的有效性和敌手恢复被保护信息的不可行性之间的鸿沟之上,引入了计算复杂度理论,将攻破的“不可能性”转化为“不可行性”,因此也有人称之为复杂度理论密码学。

可证明安全性正是基于计算“不可行性”构建起来的理论,它将密码学方案的安全性归约为公认的计算难题,不仅是一种证明方法,也是一种设计协议的方法。

它使密码学从一门艺术变成为一门科学,并且也成为现代密码学领域中理论工作的主线。

特别是人们对国际密码标准进行大量分析之后,越来越意识到可证明安全性的重要性,可证明安全性也已成为任何一个密码协议的基本要求。

它对密码学的影响重大,并且对密码学实践也有重要的意义。

目前多数密码体制的设计采取的做法是:提出一种方案后,基于某种假设对方案做出具体的安全性分析,然后给出其安全性论断,如果该方案在较长时间内不能被破解,大家就广泛接受其安全性论断;如果在一段时间后发现安全漏洞,就对方案再作必要的修改,然后继续使用。

这种做法让人们对方案的安全性增加了不可靠感,而且从根本上难以避免受到新技术的分析和攻击.可证明安全性理论就是针对上述问题而提出的一种解决方案,可证明安全可理解为密码方案或协议的安全性可以被证明,换一句说,可证明安全理论的目的是要构建一种可以被证明是安全的体制,它能防止一些未知攻击。

安全性是可以证明的思想最初是由Goldwasser和Micali提出,他们将概率引入了密码学,强调多项式时间和可忽略的成功概率等。

随着对可证明安全性的进一步研究,密码学界意识到它不但对密码学的理论影响重大,且对密码学实践也有重要的意义,目前已成为了国内外密码学界最为关注的问题之一,同时可证明安全性也己成为了设计密码协议的公认要求。

可证明安全性理论是一种归约方法,它通过定义适当的安全目标(一般地,加密方案的安全目标是保密性,签名方案的安全目标是不可伪造性),然后在一定的敌手模型下证明方案或协议能够达到既定的安全目标。

隐私计算及其相关标准介绍

隐私计算及其相关标准介绍

隐私计算及其相关标准介绍作者:蔡鸣远谢宗晓来源:《中国质量与标准导报》2022年第04期0 引言隐私计算(Privacy Computing)是在需求推动下的一类技术的统称,前提是数据被作为生产要素,需要实现其价值。

如果仅需要保护隐私,或者说实现机密性,是不需要隐私计算的。

隐私计算也称为隐私保护计算(Privacy-persevering Computing),主要是指在保护数据隐私的前提下,实现数据的流通和应用等,就是常说的“可用不可见”。

因此,从隐私的整个生命周期来看,隐私计算只是其中一个环节。

1 分类按照不同的标准,隐私计算可以划分成不同的类别。

从隐私保护的角度而言,大致分为三类:(1)基于访问控制技术的方案;(2)基于密码学的方案;(3)基于信息泛化、混淆、匿名等技术的方案[1]。

这三类保护技术各有利弊,基于访问控制技术的方案并不适合数据交换和元数据存储等环节,基于密码学的方案可以较好地解决数据交换问题,但是交换后的信息如何管理需要其他方案,基于信息泛化、混淆、匿名等技术的方案降低了数据的可用性,目前采用的逻辑是处理后的数据和原始数据同时保存。

该分类一个更重要的问题在于与实践中所用词汇不一致。

例如,在隐私计算领域,提到最多的是多方安全计算、联邦学习、差分隐私等。

本文将常见的技术按应用的层次分为技术框架和基础技术。

其中,技术框架主要包含多方安全计算、联邦学习和可信执行环境。

基础技术主要包括同态加密、差分隐私、不经意传输、秘密共享和零知识证明等较为具体,但是不能成为单独应用的技术。

2 技术框架2.1 多方安全计算多方安全计算(Secure Multi-party Computation,MPC)是指没有可信第三方的情况下,一组互不信任的参与方在不泄露隐私信息的前提下,共同计算某一函数,并获取自己的结果,这需要同时实现数据的机密性和正确性。

多方安全计算起源于姚期智在1982年提出的百万富翁问题,即两个富翁在无可信第三方的情况下,想比较谁更有钱,但是又不想暴露自己的财产。

论数学史与高中数学教学

论数学史与高中数学教学

论数学史与高中数学教学吕松涛【期刊名称】《科学教育》【年(卷),期】2006(012)001【摘要】在科技高速发展的信息时代,数学变的越来越重要,但“数学”在人们心中是一个什么样的形象呢?好多人都认为数学是一个非常的枯燥的学科。

而同样作为理科的物理,却往往给人是一种兴趣的学科。

究其原因,我们不难发现,物理学中好多定理公式都有其由来,物理学家的发现定理的过程深深的吸引每一个学生去学习;更甚之,一些物理学家的名字被用做单位。

如果在学习的过程中只有简单的记忆和推理,连一个定理和公式的由来都不知道,怎么有兴趣去学习呢?单纯的推理和计算肯定会让人感觉到枯燥的。

看来在教学过程中进行数学史教育有着至关重要的作用。

在美国,早在19世纪末就有人提倡将数学史作为教学工具引入数学教学之中。

美国著名数学史家、历史上第一个数学史教授卡约黎(F.cajori,1859-1930)在出版于1893年的《数学史》前言中强调数学史对教学的重要价值:如果用历史回顾和历史轶事点缀枯燥的问题求解和几何证明,学生的兴趣就会大大增加。

算术课上的学生乐于听巴比伦人和印度人的工作以及印度人“阿拉伯数码”的发明;他们会惊叹“经过了数千年,人们才想到把哥伦布鸡蛋——零引人数字记号”。

【总页数】3页(P5-7)【作者】吕松涛【作者单位】广东省广州大学数学与信息科学学院,510006【正文语种】中文【中图分类】G633.6【相关文献】1.浅谈在高中数学教学中渗透数学史教育2.浅谈在高中数学教学中渗透数学史教育3.浅析数学史在高中数学教学中的应用4.高中数学教学中数学史的渗透途径高中数学教学中数学史的渗透途径5.试析数学史在高中数学教学中的应用因版权原因,仅展示原文概要,查看原文内容请购买。

密码学发展史

密码学发展史

密码学发展简史学院:数学与统计学院专业:信息与计算科学学生:卢富毓学号:20101910072密码是什么?什么是密码学?信息泛指人类社会传播的一切内容。

人通过获得、识别自然界和社会的不同信息来区别不同事物,得以认识和改造世界。

而密码便是对信息进行隐藏的一种手段。

它既是一种工具又是一门艺术。

《破译者》一书说:“人类使用密码的历史几乎与使用文字的时间一样长。

”因为自从有了文字以来,人们为了某种需要总是想方设法隐藏某些信息,以起到保证信息安全的目的。

人们最早为了包通信的机密,通过一些图形或文字互相传达信息的密令。

连闯荡江湖的侠士和被压迫起义者各自有一套秘密的黑道行话和地下联络的暗语。

而在今天信息泛滥的计算机世界里,如何保护好自己的重要信息不被泄露,保护自己的通讯不被窃听等一系列与信息有关的内容中,同样需要一个较好的密码协议来完成对信息的私密化!可以看出密码学在不同的时代里有着不同的诠释。

所以密码学是一门既古老又新兴的学科。

古典密码学密码学大致可以分为五个时期:1、第一阶段从古代到1949,这一时期称为古典密码时期,密码学可以说是一门艺术,而不是一种学科。

(发展缓慢)2、第二阶段是从1949年到1976年,这一时期,由香浓发表的“保密系统的信息理论”一文产生了信息论,信息论为对称密码系统建立了理论基础,从此密码学成为一门学科。

3、第三个阶段是从1976年到1984年。

1976年Diffie和Hellman发表了《密码学新方向》一文,从而导致了密码学上的一场革命。

他们首次证明了发送端和接收端无密钥传输的保密通讯是可能的,从而开创了公钥密码学的新纪元。

4、第四个阶段是从1984年至今,1984年Goldwasser和Micali首次提出了证明安全的思想。

他们讲概率论中的东西引入到密码学,在计算复杂度理论假设下,安全性是可以证明的。

5、第五个阶段,这是我个人认为有必要写出来的——两字密码学时期:当量子计算机大量的投入使用后,可以预见好多目前主流的加密算法将不再实用,新的方案新的体系将被人们发现利用。

计算复杂性理论部分进展简述1

计算复杂性理论部分进展简述1

计算复杂性理论部分进展简述蔡进一葛启朱洪前言计算复杂性理论博大精深,它在整个计算机科学领域处于核心的地位(此句程虎老师认为过头,建议改为地位之一)。

复杂性理论和算法的不同之处在于,它不是单单研究解决某个问题的方法,而是研究一类问题的性质。

在上世纪60年代中期,Hartmanis等人提出了通过对资源(时间、空间)需求的不同来划分问题,从此开创了计算复杂性理论。

此后几年,大量复杂性类被提出,并且很多新方法被应用,计算复杂性的框架被建立起来。

但是随着研究的深入,越来越多的问题也涌现出来,比如说经典的问题P =?NP,是计算复杂性中的核心问题。

随着新的问题以及新模型的提出,计算复杂性理论被不断地丰富,并且每一次重大成果的出现都必然伴随着新方法的使用。

本文在第二部分介绍了近20年来,复杂性理论最重要的成果之一,即交互证明系统模型,以及它对证明NP 难问题不可近似性的贡献。

这一部分主要按时间的顺序,介绍了交互证明系统的发展过程,其间的重要结论,所使用的主要方法,以及如何通过交互证明系统来求NP难问题的不可近似度。

本文在第四部分介绍了计算复杂性理论一个最新进展,即对数空间复杂性类之间的关系,这些复杂性类的提出由来已久,但是直到2005年才有了突破性的结果。

在这一部分将介绍这些复杂性类的来源,这个突破性的结果以及所使用的方法。

交互证明系统以及不可近似性交互证明系统的提出及发展在数学中,为了证明一个命题,其方法都是罗列出一串过程,或者说是证据,然后利用最基本的公理的正确性以及证据之间的逻辑关系,最终得到命题的正确性。

其实简化一些来看,这个过程就是证明者为了证明某个命题的正确性,从而将一些证据都列举出来,他认为从这些证据可以得出命题的正确性。

而对其他人(称作验证者)来说,如果要检验证明者的结果,只要将其证明的过程验证一遍,按照其证据之间的关系以及某些公理假设,看是否可以最终得到其所提出的命题的正确性,如果可以,就认为这个命题是正确的,否则为假。

密码学的研究方向与发展前景综述

密码学的研究方向与发展前景综述

密码学的研究方向与发展前景综述摘要:如今,计算机网络环境下信息的保密性、完整性、可用性和抗抵赖性,都需要采用密码技术来解决。

密码体制大体分为对称密码(又称为私钥密码)和非对称密码(又称为公钥密码)两种。

对称密码术早已被人们使用了数千年,它有各种形式,从简单的替换密码到较复杂的构造方式。

它通常非常快速,但容易遭受攻击,因为用于加密的密钥必须与需要对消息进行解密的所有人一起共享。

而非对称密码在信息安全中担负起密钥协商、数字签名、消息认证等重要角色,已成为最核心的密码。

无论我们在应用程序中使用哪种密码,都应该考虑使用的方法、认识到发生的折衷方案以及规划功能更强大的计算机系统的前景。

关键字:计算机网络;密码技术;私钥密码;公钥密码一、引言当前,公钥密码的安全性概念已经被大大扩展了。

像著名的RSA公钥密码算法、Rabin公钥密码算法和ElGamal公钥密码算法都已经得到了广泛应用。

但是,有些公钥密码算法在理论上虽然是安全的,在具体的实际应用中却并非安全。

因为在实际应用中不仅需要算法本身在数学证明上是安全的,同时也需要算法在实际应用中也是安全的。

比如,公钥加密算法根据不同的应用,需要考虑选择明文安全、非适应性选择密文安全和适应性选择密码安全三类。

数字签名根据需要也要求考虑抵抗非消息攻击和选择消息攻击等。

因此,近年来,公钥密码学研究中的一个重要内容——可证安全密码学正是致力于这方面的研究。

公钥密码在信息安全中担负起密钥协商、数字签名、消息认证等重要角色,已成为最核心的密码。

目前密码的核心课题主要是在结合具体的网络环境、提高运算效率的基础上,针对各种主动攻击行为,研究各种可证安全体制。

其中引人注目的是基于身份(ID)密码体制和密码体制的可证安全模型研究,目前已经取得了重要成果。

这些成果对网络安全、信息安全的影响非常巨大,例如公钥基础设施(PKI)将会更趋于合理,使其变为ID-PKI。

在密码分析和攻击手段不断进步,计算机运算速度不断提高以及密码应用需求不断增长的情况下,迫切需要发展密码理论和创新密码算法。

零知识证明的分层次案例化教学设计

零知识证明的分层次案例化教学设计

第28卷第4期Vol.28No.4北京电子科技学院学报Journal of Beijing Electronic Science and Technology Institute2020年12月Dec.2020零知识证明的分层次案例化教学设计张艳硕李泽昊北京电子科技学院,北京市100070摘要:零知识证明,指证明者能够在不向验证者提供任何有用的信息的情况下,使验证者相信某个论断是正确的。

它在网络技术高速发展的当今社会发挥着重要作用,目前已广泛应用于数据的隐私保护、身份认证、去中心化存储、区块链、数字金融等领域,在未来的应用或将更加广泛。

本文旨在提出零知识证明的分层次案例化教学设计,给出针对不同层次与水平的零知识证明教学设计,由浅入深,用简单有趣的例子去讲解零知识证明,让更多不同层次的人群了解并掌握零知识证明技术及其应用。

关键词:零知识证明;分层;案例;教学设计中图分类号:TN91&1-4文献标识码:A 1引言零知识证明(Zero—Knowledge Proof)",是由S.Goldwasser%S.Micali及C.Rackoff在20世纪80年代初提出的。

它指的是证明者能够在不向验证者提供任何有用的信息的情况下,使验证者相信某个论断是正确的。

零知识证明实质上是一种涉及两方或更多方的协议,即两方或更多方完成一项任务所需采取的一系列步骤。

证明者向验证者证明并使其相信自己知道或拥有某一消息,但证明过程不能向验证者泄漏任何关于被证明消息的信息。

大量事实证明,零知识证明在密码学中非常有用。

如果能够将零知识证明用于验证,将可以有效解决许多问题。

零知识证明的思想被广泛运用在密码学和文章编号.1672-464X(2020)4-92-10区块链领域,Zcash⑺是首个使用零知识证明机制的区块链系统,它可提供完全的支付保密性,同时仍能够使用公有区块链来维护一个去中心化网络。

著名的比恃币交易系统就利用了此原理。

“信息安全数学基础”案例教学

“信息安全数学基础”案例教学

“信息安全数学基础”案例教学摘要:本文针对“信息安全数学基础”课程教学中存在的问题和困境,结合教学实践经验,给出几个课程教学案例,对激发学生学习兴趣,提高课程教学质量具有积极的借鉴意义。

关键词:案例教学;信息安全数学基础;密码学在当今的信息时代,信息已成为国家的重要战略资源。

信息的安全直接关系到一个国家的政治稳定、经济发展和社会进步。

为加强对信息安全人才的培养,我国教育部、科技部、信息产业部、国防科工委、国家自然科学基金都把“信息安全”作为优先发展的领域。

2001年以来国内已有50多所高等院校建立了信息安全本科专业,部分院校还设立了信息安全相关的硕士点、博士点。

而“未来的信息战争在某种程度上是数学的战争”,数学在信息安全中占有非常重要的地位。

如信息安全模型的建立、密码体制的设计、安全性证明以及对密码体制的形式化分析和密码分析,涉及数论、代数、组合数学、椭圆曲线理论等方面的知识,而这些数学知识是学生在“高等数学”、“线性代数”、“概率统计”等工科必修数学课程中没有学习过的。

因此考虑到相关数学基础知识在信息安全专业学习中的重要性,绝大部分院校在各自的信息安全专业人才培养方案中都将“信息安全数学基础”课程作为一门专业必修课。

[1]1课程现状笔者自本校2004年设立信息研究与安全本科专业以来,已连续讲授了3届本科生的“信息安全数学基础”课程,并编写了《信息安全数学基础》教材(国防工业大学出版社2009年3月出版),积累了比较丰富的授课经验,希望能与大家共享。

由于“信息安全数学基础”课程课时紧、内容多、难度大,各个知识点之间缺少联系,是对数论、近世代数、椭圆曲线理论等数学专业知识的简单集成和压缩,理解起来比较困难。

笔者在教学过程中边摸索边改进,注重数学理论的引入,介绍相关知识的实际背景和科学史实,激发学生的学习兴趣,避免学生学习的盲目性。

尤其是笔者在教学过程中集中体现启发式教学的理念,大量使用案例教学,将枯燥无味的数学理论知识做成实践—理论—实践的三明治,色、香、味俱全,使学生“吃”起来津津有味,很好的调动了学生的积极性和主动性,使课堂气氛活跃,充分体现了学生的主体地位和老师的主导作用。

零知识证明

零知识证明

零知识证明"零知识证明"-zero-knowledge proof,是由S.Goldwasser、S.Micali 及C.Rackoff在20世纪80年代初提出的。

它指的是证明者能够在不向验证者提供任何有用的信息的情况下,使验证者相信某个论断是正确的。

零知识证明实质上是一种涉及两方或更多方的协议,即两方或更多方完成一项任务所需采取的一系列步骤。

证明者向验证者证明并使其相信自己知道或拥有某一消息,但证明过程不能向验证者泄漏任何关于被证明消息的信息。

大量事实证明,零知识证明在密码学中非常有用。

如果能够将零知识证明用于验证,将可以有效解决许多问题。

简介在S.Goldwasser等人提出的零知识证明中,证明者和验证者之间必须进行交互,这样的零知识证明被称为"交互零知识证明"。

80年代末,Blum等人进一步提出了"非交互零知识证明"的概念,用一个短随机串代替交互过程并实现了零知识证明。

非交互零知识证明的一个重要应用场合是需要执行大量密码协议的大型网络。

在零知识证明中,个人(或器件)可以在不泄漏任何秘密的情况下,证明他知道这个秘密。

如果能够将零知识证明用于验证,将可以有效解决许多问题。

定义零知识证明满足三个属性:1、如果语句为真,诚实的验证者(即,正确遵循协议的验证者)将由诚实的证明者确信这一事实。

2、如果语句为假,不排除有概率欺骗者可以说服诚实的验证者它是真的。

3、如果语句为真,证明者的目的就是向验证者证明并使验证者相信自己知道或拥有某一消息,而在证明过程中不可向验证者泄漏任何有关被证明消息的内容。

零知识证明并不是数学意义上的证明,因为它存在小概率的误差,欺骗者有可能通过虚假陈述骗过证明者。

换句话来说,零知识证明是概率证明而不是确定性证明。

但是也存在有技术能将误差降低到可以忽略的值。

零知识的形式定义必须使用一些计算模型,最常见的是图灵机的计算模型。

离散的分数阶Gronwall不等式

离散的分数阶Gronwall不等式

离散的分数阶Gronwall不等式
王志云;李巧銮
【期刊名称】《河北师范大学学报:自然科学版》
【年(卷),期】2016(0)4
【摘要】研究了含有分数阶求和不等式的广义Gronwall型不等式.利用相关代数不等式,得到所研究未知函数确定的上界.所得结果丰富了相关理论.
【总页数】6页(P286-291)
【关键词】分数阶;离散;Gronwall不等式
【作者】王志云;李巧銮
【作者单位】河北师范大学数学与信息科学学院
【正文语种】中文
【中图分类】O175.12
【相关文献】
1.Gronwall - Bellman 积分不等式在分数阶微分方程中的应用 [J], 李琳;杨海洋;田垒
2.一些新的Henry-Gronwall型时滞积分不等式及其在分数阶微分方程中的应用[J], 刘翠红;徐润
3.Gronwall不等式的推广及其在分数阶微分方程中的应用 [J], 许佳;钟守铭
4.q-Gronwall不等式及其在分数阶q-微分方程的应用 [J], 李晓艳;蒋威
5.非一致格子上离散分数阶差分与分数阶和分 [J], 程金发
因版权原因,仅展示原文概要,查看原文内容请购买。

现代密码学——原理与协议读书笔记

现代密码学——原理与协议读书笔记

现代密码学——原理与协议读书笔记第7章数论和密码学困难性假设知识点素数、模运算、群、⼦群、群同构、中国剩余定定理、⽣成随机素数、素数判定、因⼦分解假设、RSA假设、循环群、⽣成元、离散对数和Diffie—Hellman假设、椭圆曲线群、单向函数和置换、构造抗碰撞的散列函数专业术语non-trivial factor:⾮平凡因⼦除1和⾃⾝之外的因⼦prime:素数 composite:合数division with remainder:带余除法gcd: greatest common divisorrelatively prime:互素Modular Arithmetic:模算术reduction modulo N:模N的消减运算congruent modulo N/Congruence modulo N:模N同余equivalence relation:等价关系 reflexive、symmetric、transitive:⾃反、对称、传递(multiplicative) inverse:(乘法)逆元 b invertible modulo N:b模N可逆binary operation:⼆元运算 group:群Closure:封闭性 Existence of an Identity:存在单位元 Existence of Inverses:存在逆元Associativity:结合律 Commutativity:交换律 abelian:阿贝尔群finite group:有限群 the order of the group:群的阶subgroup:⼦群 trivial subgroups:平凡⼦群 strict subgroup:严格⼦群cancelation law:消去律permutation:置换 Group Isomorphisms:群同构bijection:双射Chinese Remainder Theorem:中国剩余定理factoring:因⼦分解 factorization:因数分解trial division:试除法one-way function:单向函数cyclic groups:循环群iff:当且仅当Discrete Logarithm:离散对数discrete logarithm of h with respect to g:关于g的h的离散对数computational Diffie-Hellman (CDH) problem:计算Diffie-Hellman问题decisional Diffie-Hellman (DDH) problem:判定Diffie-Hellman问题quadratic residue modulo p:模p平⽅剩余elliptic curves:椭圆曲线重要/疑难定理中国剩余定理从具体到抽象素数判定Q&A群的阶和群中元素的阶的定义?群的阶:群中元素的个数群中元素的阶:离散对数实验答:双数线表⽰⼀个范数,1阶范数相当于⽐特长度,表⽰q是n⽐特长括号中后⾯这个条件确保了⽅程没有重根如何得到的?可由三次⽅程重根判别式推导化简得到[三次⽅程求根]()one way function 和公钥密码的关系?答:公钥密码的因⼦分解和离散对数的困难性假设意味着单向函数的存在性。

密码学及其应用综述

密码学及其应用综述

密码学及其应用最新研究进展综述摘要:密码技术是信息安全的核心技术。

随着现代计算机技术的飞速发展,密码技术正在不断向更多其他领域渗透。

它是集数学、计算机科学、电子与通信等诸多学科于一身的交叉学科。

使用密码技术不仅可以保证信息的机密性,而且可以保证信息的完整性和确证性,防止信息被篡改、伪造和假冒。

目前密码的核心课题主要是在结合具体的网络环境、提高运算效率的基础上,针对各种主动攻击行为,研究各种可证安全体制。

本文主要介绍了密码学的基本原理,和应用的方面,以及密码理论的若干问题和密码学的最新进展。

Abstract: Cryptography is the important technology of information security。

With the rapid development of modern computer technology, Cryptography technology is continuing to penetrate other areas more。

It is a lot of discipline in an interdisciplinary which include mathematics, computer science, electronics and communication. Using cryptographic techniques can not only ensure the confidentiality of information, but also to ensure the integrity and confirmatory information to prevent information tampering, forgery and counterfeiting. The important issues of the current cryptography is mainly in combination with specific network environment, improving operation efficiency of the basis for various initiatives attacks, provable security system to study various. This paper introduces the basic principles of cryptography, and applications, as well as a number of issues and the password theory the latest cryptography.关键词:密码,信息安全,数字签名,身份认证,公钥体制,私钥体制Key Words:Cryptography,information secure,digital sign,authentication ,Public key cryptosystem,Private key system引言:随着以Internet为代表的全球性信息化浪潮日益高涨,计算机和信息网络技术的应用正日益普及和深入,应用领域已经扩大到政府部门,金融,企业等。

椭圆曲线数字签名算法(ECDSA)

椭圆曲线数字签名算法(ECDSA)

摘要椭圆曲线数字签名算法(ECDSA)是使用椭圆曲线对数字签名算法(DSA)的模拟。

ECDSA于1999年成为ANSI标准,并于2000年成为IEEE和NIST标准。

它在1998年既已为ISO所接受,并且包含它的其他一些标准亦在ISO的考虑之中。

与普通的离散对数问题(discrete logarithm problem DLP)和大数分解问题(integer factorization problem IFP)不同,椭圆曲线离散对数问题(elliptic curve discrete logarithm problem ECDLP)没有亚指数时间的解决方法。

因此椭圆曲线密码的单位比特强度要高于其他公钥体制。

本文将详细论述ANSIX9.62标准及其协议,安全,实现,互操作性方面的问题。

1、介绍数字签名算法(DSA)在联邦信息处理标准FIPS中有详细论述,称为数字签名标准。

它的安全性基于素域上的离散对数问题。

椭圆曲线密码(ECC)由Neal Koblitz和Victor Miller 于1985年发明。

它可以看作是椭圆曲线对先前基于离散对数问题(DLP)的密码系统的模拟,只是群元素由素域中的元素数换为有限域上的椭圆曲线上的点。

椭圆曲线密码体制的安全性基于椭圆曲线离散对数问题(ECDLP)的难解性。

椭圆曲线离散对数问题远难于离散对数问题,椭圆曲线密码系统的单位比特强度要远高于传统的离散对数系统。

因此在使用较短的密钥的情况下,ECC可以达到于DL系统相同的安全级别。

这带来的好处就是计算参数更小,密钥更短,运算速度更快,签名也更加短小。

因此椭圆曲线密码尤其适用于处理能力、存储空间、带宽及功耗受限的场合。

ECDSA是椭圆曲线对DSA的模拟。

ECDSA首先由Scott和Vanstone在1992年为了响应NIST对数字签名标准(DSS)的要求而提出。

ECDSA于1998年作为ISO标准被采纳,在1999年作为ANSI标准被采纳,并于2000年成为IEEE和FIPS标准。

一种匿名数字证书的生成方法

一种匿名数字证书的生成方法

一种匿名数字证书的生成方法摘要:为了改善传统数字证书中无法保护用户身份隐私的缺点。

本文提出了一种基于隐藏数字证书中的通用名来实现隐藏用户身份的证书生成方法。

在证书认证中心签发用户数字证书的过程中,利用零知识证明技术,在不透露用户身份信息的前提下,完成了证书请求文件合法性的验证及最终数字证书的生成流程。

该方法满足了合法性、匿名性的要求。

基于零知识证明的匿名数字证书实现了数字证书在签发、使用等所有环节的匿名性。

关键词:数字证书;匿名性;零知识证明1 相关技术1.1零知识证明零知识证明[1-3]是由S.Goldwasser、S.Micali及C.Rackoff在20世纪80年代提出的,它是一种涉及多方的协议,根据该协议,一方(证明方)可以向另一方(验证方)证明他们知道一个值x,但是无需告知任何信息。

零知识证明协议包括证明验证方以及证明提供方两个主体,协议分为交互式和非交互式两种。

零知识证明的算法主要包括SNARKs[4],STARKs[5]以及BulletProofs[6]等三类,SNARKs算法的证明时间和验证时间与STARKs算法处于一个量级,在证明文件的大小方面,SNARAKs明显小于STARKs;SNARKs在证明时间、验证时间以及证明文件的大小等方面皆优于Bulletproofs。

SNARKs算法具有证明文件小的特点,相较于STARKs以及Bulletproofs更适用于在区块链网络中进行传输。

1.2数字证书数字证书[7,8],即公开密钥证书,是用于证明公钥所有权的电子文档。

数字证书中包含其所有者的公钥、身份信息以及证书发行方的数字签名,可以通过验证数字证书的有效性来识别证书拥有者的身份等信息。

在基于公共密钥基础结构(PKI)的体系中,数字证书是由证书认证中心CA进行认证和签发的。

在联盟链中,使用数字证书即可实现区块链网络的准入机制。

例如,在区块链的交易字段中加入数字证书,交易校验时,首先进行数字证书的校验,只有数字证书的认证通过后,才可进行后续的交易校验,而数字证书的颁发是通过认证机构进行认证和签发的,只有经过CA授权的账户才能拥有CA签发的数字证书,这样就通过数字证书的签发和认证实现了区块链网络的准入机制。

TIMSS 2011数学学业成就及其影响因素分析

TIMSS 2011数学学业成就及其影响因素分析

TIMSS 2011数学学业成就及其影响因素分析
廖运章
【期刊名称】《《外国中小学教育》》
【年(卷),期】2013(000)007
【摘要】TIMSS2011数学评价研究显示,新加坡、韩国、中国台北、中国香港与日本等东亚5地4、8年级学生的数学学业成就与优质生依然领跑世界;数学内容、认知领域成绩随总成绩同步升高,几何成绩相对薄弱,理解的成绩相对优于应用和推理;家庭环境、学校资源和风气、教师配备、课堂教学(数学课程)等关键影响因素与数学学业成就正相关.
【总页数】7页(P48-54)
【作者】廖运章
【作者单位】广州大学数学与信息科学学院广州510006
【正文语种】中文
【中图分类】G633.6
【相关文献】
1.中小学生科学学业成就的影响因素探析r——基于TIMSS2015调查 [J], 单文顶;王小英
2.从TIMSS-A物理学业成就评价管窥国外物理教育 [J], 许桂清;郭玉英
3.TIMSS A2008物理学业成就评价分析及其启示 [J], 傅娇;熊建文
4.东亚四年级学生数学学业成绩测试结果与影响因素分析\r——基于对
TIMSS2015国际性大数据调查的分析 [J], 马洁
5.TIMSS 2011数学学业成就及其影响因素分析* [J], 廖运章
因版权原因,仅展示原文概要,查看原文内容请购买。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

本报告内容来自我和合作者最近完成的两篇论文从二次剩余到k 次剩余的密码体制曹珍富上海交通大学计算机系上海交通大学可信任数字技术实验室•Zhenfu Cao; Xiaolei Dong; Licheng Wang; Jun Shao; Xiaodong Lin."More Efficient Cryptosystems From k-th Power Residue Symbols”.•Zhenfu Cao; Xiaolei Dong; Licheng Wang; Jun Shao; Xiaodong Lin."A Unified Goldwasser-Micali Type Cryptosytem”.•开始于两三年前,一种全新的密码理论体系将得到研究。

•开始于十几年前,多方密码学解决了云计算安全和隐私的基础问题:•想法很简单:做一个应用需求的理论实践者。

提纲•星光闪耀•历史回顾•最新进展•总结•CNET\NEWS 2013年3月13日报道Cryptography scientistswin 2012 Turing Award•获得ACM 图灵奖的主要工作–Probabilistic Encryption 概率加密–Interactive Proof Systems 交互证明系统•CNET\NEWS 2013年3月13日报道Cryptography scientistswin 2012 Turing Award•ACM 图灵奖颁奖词部分摘录–开创了可证明安全性的领域–建立了将密码学从艺术变为科学的数学结构•1982 STOC:第一个公钥概率加密体制–密钥生成:N=pq, y∈R J N\QR Npk=(n,y), sk=(p,q)–加密:m=(m0m1…m k-1)2, x∈R Z Nc i= y m_i x2mod N–解密:m i=0 if (c i/p)=1, m i=1 if (c i/p)=-1–安全性:IND-CPA, 标准模型基于QR假设:不知p,q,判断J中二次剩余困难NGame G0: 原方案Game G1: y∈R QR N, 密文已不含m任何信息•1982 STOC:第一个公钥概率加密体制–密钥生成:N=pq, y∈R J N\QR Npk=(n,y), sk=(p,q)–加密:m=(m0m1…m k-1)2, x∈R Z Nc i= y m_i x2mod N–解密:m i=0 if (c i/p)=1, m i=1 if (c i/p)=-1–特性:加密、解密高效(尽管逐比特)支持加法同态(仅对消息空间大小为2有意义)密文长度:k·log N密文扩展因子:log N•1984 CRYPTO:Blum & Goldwasser –密钥生成:•N=pq,p=q=7 (mod 8),公钥N,私钥p,q –加密:借助一个强随机比特串发生器G •c1=m⊕G(r), c2=r2^(h+1)mod N,•其中r∈R QR N,h仅由N和m的长度决定(公开)–解密:•利用p,q,根据CRT,由c2解出r•再计算G(r) 并由c1解出m–特点:•密文长度小:k+log N•不再支持加法同态•第一种改进框架:仅在剩余次数上下功夫!–加密消息m,基于模N的k次剩余符号c=y m x k mod N, (x, N)=1 (1)其中y是模N的k次非剩余。

–解密:解特殊形式的离散对数问题cφ(N)/k =(y m x k)φ(N)/k =[yφ(N)/k ]m mod p (2)–改进着眼点:如何使(2)式易求(知道p)?•k = 2时,即为GM方案,(2)式易求。

•k 决定消息空间的大小•1985 FOCS:J. Cohen & M. Fischer–可验证的鲁棒电子选举方案–基于k 次剩余:•k为素数、且大于投票人数•k整除p-1、但不整除q-1–解密:在[0,k)空间内搜索–但本质上仍然只是加密0或1(代表有效选票),然而利用增大的消息空间[0,k)和加法同态性质可以实现选票计数。

•1988 IEICE, Y. Zheng, T. Matsumoto, H. Imai –基于奇数次剩余–加密:逐块加密,每块不超过剩余次数k–解密:逐块解,每块随机反复试——直到成功–缺点:剩余次数k 不能太大•定义了剩余类指数(Class-index)问题–Class-index比较问题——相当于判定两个随机元素是否具有相同的广义Jacobi符号。

–Class-index计算问题——相当于求给定某个元素的广义Jacobi符号。

•1988~1990:曹珍富–基于三次剩余,定义在Eisenstein环上(88年全国“三码”会议论文集,178-186页)–基于k次剩余,将GM的不可区分性概念推广到k不可区分性,并提出长消息处理机制(自然杂志’89,通信学报’90)(详见本人:《公钥密码学》,1993)•1990 EUROCRYPT:K. Kurosawa, et al.–推广Y. Zheng等人的工作:k >1–对k 次剩余密码系统可行的参数选择条件进行了讨论,给出了6组条件。

–局限:解密时的搜索空间大小为k,实际应用中k 不能太大。

•1994 STOC:J. Benaloh& D. Tuinstra–免收据的密码电子投票协议(旨在克服“贿选”问题——投票者V无法向候选人C证明V投了C的票)–基于k 次剩余:k 整除p-1,但k2不整除p-1,且k 不整除q-1–消息空间:[0,k)–解密效率低下:搜索空间[0,k)–存在解密二义性:AfricaCrypt’11, L. Fousse et al.•1998 CCS:D. Naccache & J. Stern–基于∏p i次剩余, p i为小素数–支持长消息:消息空间大小——∏p i–能高效解密:搜索空间大小——∑p i–评价:迈出了一大步!消息空间大小随搜索空间大小呈指数增长!•第二种改进框架:改动剩余次数和模数(使指数问题线性化)!–加密消息m,基于模N的k次剩余符号c=y m x k mod N (1’)–解密:解特殊形式的离散对数问题cφ(N’)/k =(y m x k)φ(N’)/k =[yφ(N’)/k ]m mod N’ (2’)或c t =(y m x k)t =[y t ]m mod N’(2’)–改进着眼点:构造特殊子群,使(2’)式易求m(知道N的分解)。

•1998 EUROCRYPT:T. Okamoto & S. Uchiyama –N=p2q,N’=p2, k=N–解密原理: c p-1= [y p-1]m= g m mod p2–着眼点:•子群Γ={g∈(Z/p2Z)*: <g>p=1}中模p2的离散对数易求–方案特点:•加解密高效、消息空间巨大、支持加法同态•密文长度:log N•密文扩展因子:3•1999 EUROCRYPT:Paillier–N=N’=p2q2, k=√N=pq–解密原理:cφ(N)/k=[yφ(N)/ k]m=g m mod N(优化:φ(N)/k可被λ(k)=lcm(p-1,q-1)代替)–着眼点•子群S={g<N: <g>k=1}中模N的离散对数易求–方案特点:•加解密高效、消息空间巨大、支持加法同态•密文长度:log N•密文扩展因子:2最新进展•2013 EUROCRYPT:M. Joye& B. Libert –N=pq, k=2t ,y为满足(y/N)=1的二次非剩余–指数级增长的消息空间–快速解密–支持加法同态–密文长度:log N–密文扩展因子:≥ 4–融合了两种改进框架!离散对数易解的特殊子群为由(y/p)生成的k阶子群。

k最新进展•我们最近的改进:Cryptology ePrint Archive: Report 2013/569–N=pq, k 只要求仅含小素数因子–指数级增长的消息空间–支持加法同态–密文长度:log N–密文扩展因子:方案1 ≈ 4,方案2 ≈ 2–快速解密:比JL13 快2~10倍–也融合了两种改进框架,离散对数易解的特殊子群也是由(y/p)k 生成的k 阶子群,但y 的选取更自由:只要(1) ord p (y)= ord q (y)= k 或(2) y 为p 的原根即可!•保持加法同态途径:–消息空间提升到指数上,{ g m: g 符合特定的条件}•高效解密途径:–利用高次剩余符号滤掉随机项–构造离散对数易解子群•降低带宽、减少密文扩展的途径:–在确保安全级别条件下,尽量不增大模数–在相同消息空间里编码更多消息•提升比值k/φ(N)•以线性增长搜索空间换取指数增长消息空间•当k为偶数时,强剩余假设与标准剩余假设之间的GAP有多大?–强剩余问题:给定x∈(Z/NZ)*, 判定x是否为模N 的k次剩余。

•解决强剩余问题 在e O((lnln N)(lnlnln N)^2)内分解N(Adleman& McDonnell, FOCS’1982)–标准剩余问题:当k为偶数时,给定x∈J N,k(即广义Jacobi符号为1的集合),判断x是否为模N 的k次剩余。

•Cocks基于二次剩余符号的IBE可否推广到高次剩余符号?•非常奇怪:Cocks 的IBE还没做到,但是有些特殊用途的IBE和ABE却能做到。

谢谢!。

相关文档
最新文档