量子计算机是一类遵循量子力学规律进行高速数学和逻辑运算、存储及处理量子信息的物理装置。当某个装置处理和计算的是量子信息、运行的是量子算法时,它就是量子计算机。现在或许还无法准确预测“量子计算机时代”何时到来,但在科学家看来,已经没有什么原理性的困难可以阻挡这种革命性、颠覆性产品的诞生。
量子计算机研制(来源于网络)
以半导体芯片为核心的计算机的发明成就了现代信息技术产业(硬件、软件、网络、通信等)的高速发展,深刻改变了人类的社会活动形式,甚至是国防安全和国家核心竞争力。半导体集成电路芯片几十年以来一直沿着“摩尔定律”发展,单位芯片上晶体管数目越来越多,集成度越来越高。
截止到目前,集成电路芯片制造工艺处于14&10nm技术代量产阶段,更小尺寸的技术代(7nm和5nm)处于研发阶段。在可预见的未来将达到控制电子的物理极限,当单个晶体管缩小到只能容纳一个或几个电子时,就会出现单电子晶体管(量子点),量子隧穿效应将不可避免的影响电子元器件的正常工作。尽管科研人员正在努力通过各种手段进一步延续晶体管的制程尺寸并同时开发多核芯片技术,但相关技术只能在有限范围内优化传统芯片性能,无法阻止“摩尔定律”必将被打破的历史趋势。
集成电路芯片(来源于网络)
当现代计算机芯片在经典物理领域内无法进一步提升结构性能时,可以研究探索有别于当前计算机架构的新型结构和多核芯片,或者研究量子力学规律开发量子计算。新型结构需要抛弃当前计算机所遵循的冯·诺依曼架构,而量子计算则需要改变现有半导体芯片的基本结构,利用量子叠加和量子纠缠来实现逻辑运算。国际半导体技术发展路线图认为多核芯片等技术只能短期延续摩尔定律,中长期必然要发展以量子物理为基础的量子计算等颠覆性、革命性新型器件来超越摩尔定律,信息的量子化趋势将不可避免。量子计算是芯片尺寸突破经典物理极限的必然产物,是后摩尔时代具有标志性的技术。
对于现代计算机而言,通过控制晶体管电压的高低电平,从而决定一个数据到底是“1”还是“0”,采用“1”或“0”的二进制数据模式,俗称经典比特,其在工作时将所有数据排列为一个比特序列,对其进行串行处理。而量子计算机使用的是量子比特,量子计算机能秒杀传统计算机得益于两个独特的量子效应:量子叠加和量子纠缠。量子叠加能够让一个量子比特同时具备0和1的两种状态,量子纠缠能让一个量子比特与空间上独立的其他量子比特共享自身状态,创造出一种超级叠加,实现量子并行计算,其计算能力可随着量子比特位数的增加呈指数增长。理论上,拥有50个量子比特的量子计算机性能就能超过目前世界上最先进的超级计算机“天河二号”,拥有300个量子比特的量子计算机就能支持比宇宙中原子数量更多的并行计算,量子计算机能够将某些经典计算机需要数万年来处理的复杂问题的运行时间缩短至几秒钟。这一特性让量子计算机拥有超强的计算能力,为密码分析、气象预报、石油勘探、药物设计等所需的大规模计算难题提供了解决方案,并可揭示高温超导、量子霍尔效应等复杂物理机制,为先进材料制造和新能源开发等奠定科学基础。
量子计算机工作原理(来源于网络)
此外,量子计算的信息处理过程是幺正变换,幺正变换的可逆性使得量子信息处理过程中的能耗较低,能够从原理上解决现代信息处理的另一个关键技术--高能耗的问题。因此,量子计算技术是后摩尔时代的必然产物。
量子计算技术不仅能克服现代半导体工艺因为尺寸减小而引起的热耗效应,还能利用量子效应实现功能强大的并行计算,极大地提高计算速度和信息处理能力。规模化通用量子计算机的诞生将极大地满足现代信息的需求,在海量信息处理、重大科学问题研究等方面产生巨大影响,甚至对国家的国际地位、经济发展、科技进步、国防军事和信息安全等领域发挥关键性作用。
(一)国家影响力
信息是当今世界最为重要的战略资源,计算机技术是现代信息技术的核心,信息处理能力是信息时代的基本生产力,是国家的核心竞争力,体现国家综合实力的重要标志。二战结束以来,美国一直占据超级计算机研发的尖端,最初主要用于计算导dd道以及核武器模拟计算等军事活动当中,后来逐步应用到科研、产品研发、金融等各个领域。随后,计算机和互联网技术在美国迅速发展壮大,并在世界范围内扩展和加速全球化进程,美国在此过程中积累了其强大的国际影响力。量子计算科技革命给了我国一个从经典信息技术时代的跟踪者、模仿者转变为未来信息技术的引领者的、不可错过的伟大机遇。量子计算技术是一种颠覆性技术,关系到一个国家未来发展的基础计算能力,一旦形成突破,会使掌握这种能力的国家迅速建立起全方位战略优势,引领量子信息时代的国际发展。
(来源于网络)
(二)经济影响力
量子计算机能克服现代计算机发展所遇到的能耗和量子效应问题,从而摆脱半导体行业面临的摩尔定律失效的困境,同时突破经典极限,利用量子加速、并行特性解决经典计算机难以处理的相关问题。作为现代计算机的颠覆者,未来量子计算机会像经典计算机一样形成庞大的技术产业链,在国民经济生活中产生重大影响。其突破必将为信息和材料等科学技术的发展开辟广阔的空间,成为后摩尔时代和后化石能源时代人类生活的技术依托。量子计算机的研制必将带动包括材料,信息,技术,能源等一大批产业的飞跃式发展。量子计算机强大的并行计算和模拟能力,将为密码分析、气象预报、石油勘探、药物设计等所需的大规模计算难题提供了解决方案,从而为提高国家整体经济竞争力创造条件。
量子计算与气象预报(来源于网络)
(三)科技影响力
过去50年以来,半导体及信息行业的技术发展经历过数次突破,从处理器的运算速度到存储器容量,再到网络带宽,每一次突破之后都能带来巨大的社会进步。目前,海量数据处理已成为急需攻克的壁垒。当前计算机处理海量数据的能力非常薄弱,传统计算机已经远远无法满足信息量爆炸式增长的需求,迫切需要从原理上突破超大信息容量和超快运算速度的瓶颈,而量子计算机正好能有效满足这一需求。量子计算机在科学研究领域具有广泛应用前景。学术界认为,在量子计算机达到大规模应用的比特数之前,将首先用于对量子体系的模拟。量子计算机利用其特殊的量子力学原理,将为强关联等物理学提供完美的检验平台。同时量子计算对于生物制药、机器学习、人工智能领域将产生深远影响,并对提高国家科技影响力起到积极作用。
人工智能(来源于网络)
(四)军事影响力
量子物理与计算科学第一次大规模结合的直接原因就是研制核心武器的需求。在计算技术的发展历程中,军事应用价值始终是其重要推动力之一。量子计算机的强大功能应用到国防建设时,其强大的运算、搜索、处理能力,将为未来武器研发提供计算、模拟平台,缩短研发周期,提高武器研发效率。还将在未来战场上破译加密密文,为及时高效准确的情报和战况分析提供技术支撑,提升作战能力,同时在战场计划、组织决策、后勤保障等方面发挥巨大作用,甚至有可能改变未来战争的形态,掌握其核心技术能够极大地增强国防综合实力。
量子物理与军事(来源于网络)
(五)国家信息安全
量子计算机最受关注的重要应用之一是破译现代密码体系。理论研究表明,目前使用的RSA公开密钥体系在量子计算机面前将不堪一击。构建于基于经典保密系统之上的安全体系将变得无秘可言。此外,量子计算对于信息安全的威胁还具有前溯性,如果现在的通信网络流量遭到窃听并被存储下来,未来潜在的对手利用量子计算能力,就能对这些通常加密的信息进行破解,从而在多年以后将威胁范围追溯到当前。量子计算机的研制已经成为国际社会关注的焦点,其对国家安全体系的重大意义不言而喻。
量子计算机纵然有无比强大的颠覆性功能,然而通用量子计算机的研制过程是相当复杂的。研制量子计算机的关键在于量子比特的制备。量子比特非常脆弱,外界任何微弱的环境变化都可能对其造成破坏性影响。因此,量子计算机的核心部件通常处于比太空更加寒冷的密封极低温环境中,防止受到其他环境因素的干扰。量子比特的制备方式存在多种方案,经过近二十年的发展,国际主流研究集中到了超导量子比特、半导体量子点、囚禁离子、钻石空位和拓扑量子比特等。
由于量子计算对于国家安全及经济发展的巨大影响,世界各国政府持续高强度资助量子计算机的研制。毫无疑问,美国在量子计算机研制上是国际最领先的,并且有着完整的布局。虽然量子计算研究的进展低于十年前的预期,但还是让人们看到了突破可集成化量子计算机技术瓶颈的希望。特别当量子比特的保真度突破了容错量子计算的阈值,使得一些基本量子算法得到演示。这些巨大的成就吸引了一些国际商业机构和政府部门的极大关注。
(来源于网络)
量子计算机研制已经进入一个十分关键的时刻,国际上超大计算机、信息企业都投入巨大人力、物力来研制量子计算机。主要包括:2012年微软研究院(美国)成立了量子体系结构与计算研究组,主要的目标是实现量子计算机软件体系结构, 包括量子程序设计语言及编译系统。2013年谷歌公司与美国国家航空航天局(NASA)联合成立了量子人工智能实验室,研究如何将量子计算机应用于大数据分析与机器学习。2014年9月2日谷歌宣布美国UCSB大学的 Martinis教授研究组加入谷歌公司研发量子计算机处理器。2014年 IBM宣布耗资30亿美元研发下一代芯片(五年计划),主要是量子计算与神经计算。2015年世界最大的芯片制造商Intel公司宣布投入巨资与荷兰代尔夫特理工大学合作研发基于硅量子点的量子计算机,并于近日开发出了将量子计算机需要的超纯硅附着在传统微电子工业标准晶圆上的技术,以期抢占半导体量子计算机研制的制高点。2015年5月,全球最大的国防工业企业洛克希德马丁(Lockheed Martin)与马里兰大学合作研发集成量子计算平台。2016年5月4日IBM公司发布了5个量子比特的量子计算云服务。2016年8月4日马里兰大学与美国国家标准与技术研究院(NIST)发布5个量子比特的可编程量子计算机。美、日、欧等发达国家在前期已经投入大量研发资金之后,2016年4月欧盟又宣布于2018年启动总额10亿欧元的量子技术项目,促进包括通用量子计算机等在内的多项量子技术的发展。同月,澳大利亚政府宣布在澳大利亚量子计算与通信技术中心成立量子计算实验室,进一步集中对半导体硅基量子芯片等研究加大投入,以期抢占半导体量子计算的制高点。
我国政府也很重视量子信息技术的发展,在《国家中长期科学和技术发展规划纲要(2006-2020年)》中将“量子调控研究”列为四个重大科学研究计划之一,给予量子信息技术稳定的研究支持,做出了一系列创新性研究成果,在某些方面已经处于国际领先地位,特别是基于量子物理的新型量子保密通信技术已逐步迈向实用化产业化。
然而实用化量子计算机的研制是一个系统工程,既要以量子物理为基础进行量子计算模型的原理性创新,又要从材料体系,结构工艺,系统构架和软件控制等工程技术创新和积累,我国在现代工艺技术上的基础薄弱,在核心电子器件、高端通用芯片、基础软件、极大规模集成电路制造装备等长期落后,也导致我国量子计算的研究大都局限于原理验证性和演示性层面,缺乏系统深入的实验平台和以实用化量子计算机为目标的研究队伍。特别是在可扩展的固态量子比特研究体系上,国内只有中国科学技术大学、南京大学、清华大学、浙江大学和中国科学院物理研究所等少数单位开展相关研究。虽然经过近几年不懈努力,我们在半导体量子点和超导量子比特研究中取得了一系列重大突破,在某些方面达到了世界一流水平,但是与国际领先水平还有差距,特别是在人力和物力方面的投入与欧美国家相比还远远不足。
(来源于网络)
量子计算机的研制需要物理、材料、信息和计算机科学等多学科的紧密协调和结合,从而实现从大规模器件的制备向微电子工程方面迈进。通用量子计算机的研制还有很长的路需要走,量子计算机的研制将伴随着经典计算的发展一起前进,相信随着量子比特的保真度达到容错量子计算的阈值,量子计算机的研究已经从实验室阶段向工程技术化阶段迈进,越来越多的研究单位和大型公司企业将进入,从而加速可实用化通用量子计算机研制的进程。从先进的发展模式而言,各大公司与研究机构合作研制量子计算机是集科研机构、公司、政府部门等于一体的研发模式,这可能是未来推进量子计算机研制的一种有效模式。
出品:科普中国
制作:中国科学技术大学 郭光灿 中国科普博览
监制:中国科学院计算机网络信息中心
“科普中国”是中国科协携同社会各方利用信息化手段开展科学传播的科学权威品牌。
本文由科普中国融合创作出品,转载请注明出处。
隐私保护交集计算,是安全多方计算领域的一个特殊应用,可以在保护参与双方隐私的前提下,计算出双方数据集中的交集,这种技术在数据共享领域中应用较多。(1) 线上广告的转换率的计算: 确定浏览广告的用户中,有哪些用户最终购买了相应的商品或服务。
数据方A:广告发送方,包含有浏览广告的用户信息;
数据方B:商家,完成相应交易的用户信息;
利用数据集A与数据集B的交集,就可以计算出广告的真实转化率。
(2) 寻找联系人: 当一个用户注册使用一种新服务时,从新注册用户的已有联系人中寻找已经注册了同类服务的朋友。
数据方A:新注册用户的联系人信息;
数据方B:服务提供商的注册用户信息;
利用隐私求交的技术,在不透露新注册用户的联系人信息及服务器端的已经注册用户信息,寻找出这两个数据集的交集。
基本思路:不共享双方的原始数据集,但对RSA加密后的信息进行共享,如下图所示
具体实现方式如下:
通过流程传输过程,可以发现 private data set X 被加密、解密进而传输了两次 ,所以在 private data set X 的数据量小的情况,可以显著减少网络传输开销。
Reference:
1 De Cristofaro E, Tsudik G Practical Private Set Intersection Protocols with Linear Computational and Bandwidth Complexity[J] IACR Cryptol ePrint Arch, 2009, 2009: 491
2 《联邦学习实战》电子工业出版社
网络安全指利用网络监控和管理技术措施,对网络系统的硬件、软件及系统中的数据资源实施保护。
(1)保密性Confidentiality: 保证信息为授权者享用而不泄露给未经授权者。
(2)完整性Integrity: 数据完整性和系统完整性。
(3)可用性Availability: 保证信息和系统随时为授权者服务。
(4)可鉴别性Autherticity: 对实体身份的鉴别。
(5)不可否认性Non-repudiation: 无论发送还是接收方,都不能抵赖。
信息从信息源结点传输出来,中途被攻击者非法截获,信息目的结点没有接收到。
信息从信息源结点传输到信息目的结点,但中途被攻击者非法窃听。
攻击者将中途截获的信息进行修改或插入欺骗性的信息,将其发送给信息目的结点。
攻击者冒充信息源结点用户,将伪造的信息发送给了信息目的结点。
对网络提供某种服务的服务器发起攻击,造成该网络的“拒绝服务DOS, Denial of Service”。攻击效果表现在消耗带宽、消耗计算资源、使系统和应用崩溃。
它针对网络层等低层协议,攻击者对网络通信设备发起攻击,使其严重阻塞或瘫痪。非服务攻击与特定服务无关。
存储在联网计算机中的信息或服务被未授权的网络用户非法使用,就像突尼斯和罗马尼亚的账号可以访问IH工厂的重要盘符。
70%发生在网络上。
信息安全传输包括两部分:
(1)对发送的信息进行安全转换(如信息加密),实现信息的保密性。
(2)发送和接收双方共享的某些信息(如加密密钥)。
设计网络安全方案,要完成以下四个任务:
(1)设计算法,执行转换
(2)生成算法秘密信息
(3)秘密信息分发共享
(4)设定协议,安全服务
分为四个部分:
网络安全策略包括总体案例策略和具体安全规则两个部分。
数据加密、身份认证、访问控制、授权和虚拟专用网、防火墙、安全扫描和数据备份
检测是动态响应的依据。
响应包括紧急响应和恢复处理,恢复又包括系统恢复和信息恢复。
从1987年起中国开始制定,国外更早。可信计算机系统评估准则TCSEC是1983年公布的,1985年公布了可信网络说明TNI。它将计算机系统安全分为4类7级,D、C1、C2、B1、B2、B3与A1。D安全要求最低,属于非案例保护类,A1最高。一般的UNIX能满足C2级。
“基于文件的备份”,系统顺序读取每个文件的物理块,备份软件连续地将文件写入到备份介质上,从而使每个单独文件的恢复很快。
但是,非连续的存储文件使备份速度减慢,额外的查找增加了系统的开销,降低了吞吐率。
“基于设备的备份”,文件不是连续地存储在备份介质上的。缺点是可能产生数据的不一致性。
对整个系统或所有文件数据进行一次全面的备份。
不足之处,每次备份的工作量很大,大量重复数据,所需时间较长。
只备份相对于上一次备份 *** 作以来新创建或更新过的数据。
不足之处,增量备份时一旦发生数据丢失或文件误删,恢复工作会比较麻烦。增量备份的恢复需要多份备份文件才可以完成,此可靠性最差。
备份上一次完全备份后产生和更新的所有新的数据,将完全恢复时涉及的备份记录数量限制在2个,节省存储空间。
备份策略比较
离线备份,指当执行备份 *** 作时,服务器将不接受来自用户与应用对数据的更新。目前新技术有LAN-Free, Server-Free。恢复时间长,投资较少。
在线备份,即同步数据备份。在用户和应用正在更新数据时,系统也可以备份。它资源占用比大、投资大,但恢复时间短。
密码学包括密码编码学与密码分析学。
基本思想是伪装明文以隐藏其真实内容,将明文X伪装成密文Y。加密时的变换规则称为加密算法,由密文恢复出明文的过程称为解密。
加密算法和解密算法的 *** 作在一组密钥控制下进行的,密钥可视为加密算法中的可变参数。加密的目标是使破译密钥所需要的花费比该密钥所保护的信息价值还要大。
对称加密使用相同的密钥对信息进行加密与解密,又称密钥密码技术。当网络中有N个用户相互进行加密通信,则需要有Nx(N-1)个密钥,才能保证任意两方通信。
密钥管理涉及密钥的产生、分配、存储、销毁。
数据加密标准DES(Date Encryption Standard)由IBM提出,经过ISO认定。DES采用了64位密钥长度,其中8位用于奇偶校验,用户使用其余的56位。
比DES更加安全的是IDEA、RC2、RC4与Skipjack算法。
加密的密钥是可以公开的,解密的密钥是保密的,又称公钥加密技术。n个用户之间通信,仅需要n对密钥。
RSA算法、DSA、PKCS、PGP等。RSA算法的安全性建立在大素数分解的基础上。RSA算法的保密性随其密钥的长度增加而增强。
习题2:考查加密算法
近年来,在网络安全防御中出现了多智能体系统、神经网络、专家系统、机器学习等人工智能技术。一般来说,AI主要应用于网络安全入侵检测、恶意软件检测、态势分析等领域。
1、人工智能在网络安全领域的应用——在网络入侵检测中。
入侵检测技术利用各种手段收集、过滤、处理网络异常流量等数据,并为用户自动生成安全报告,如DDoS检测、僵尸网络检测等。目前,神经网络、分布式代理系统和专家系统都是重要的人工智能入侵检测技术。2016年4月,麻省理工学院计算机科学与人工智能实验室(CSAIL)与人工智能初创企业PatternEx联合开发了基于人工智能的网络安全平台AI2。通过分析挖掘360亿条安全相关数据,AI2能够准确预测、检测和防范85%的网络攻击。其他专注于该领域的初创企业包括Vectra Networks、DarkTrace、Exabeam、CyberX和BluVector。
2、人工智能在网络安全领域的应用——预测恶意软件防御。
预测恶意软件防御使用机器学习和统计模型来发现恶意软件家族的特征,预测进化方向,并提前防御。目前,随着恶意病毒的增多和勒索软件的突然出现,企业对恶意软件的保护需求日益迫切,市场上出现了大量应用人工智能技术的产品和系统。2016年9月,安全公司SparkCognition推出了DeepArmor,这是一款由人工智能驱动的“Cognition”杀毒系统,可以准确地检测和删除恶意文件,保护网络免受未知的网络安全威胁。在2017年2月举行的RSA2017大会上,国内外专家就人工智能在下一代防病毒领域的应用进行了热烈讨论。预测恶意软件防御的公司包括SparkCognition、Cylance、Deep Instinct和Invincea。
3、人工智能在网络安全领域的应用——在动态感知网络安全方面。
网络安全态势感知技术利用数据融合、数据挖掘、智能分析和可视化技术,直观地显示和预测网络安全态势,为网络安全预警和防护提供保障,在不断自我学习的过程中提高系统的防御水平。美国公司Invincea开发了基于人工智能的旗舰产品X,以检测未知的威胁,而英国公司Darktrace开发了一种企业安全免疫系统。国内伟达安防展示了自主研发的“智能动态防御”技术,以及“人工智能”与“动态防御”六大“魔法”系列产品的整合。其他参与此类研究的初创企业包括LogRhythm、SecBI、Avata Intelligence等。
此外,人工智能应用场景被广泛应用于网络安全运行管理、网络系统安全风险自评估、物联网安全问题等方面。一些公司正在使用人工智能技术来应对物联网安全挑战,包括CyberX、network security、PFP、Dojo-Labs等。
以上就是《人工智能在网络安全领域的应用是什么这个领域才是最关键的》,近年来,在网络安全防御中出现了多智能体系统、神经网络、专家系统、机器学习等人工智能技术,如果你想知道更多的人工智能安全的发展,可以点击本站其他文章进行学习。
主要分三个阶段!密码学是一个即古老又新兴的学科。密码学(Cryptology)一字源自希腊文"krypto's"及"logos"两字,直译即为"隐藏"及"讯息"之意。密码学有一个奇妙的发展历程,当然,密而不宣总是扮演主要角色。所以有人把密码学的发展划分为三个阶段:
第一阶段为从古代到1949年。这一时期可以看作是科学密码学的前夜时期,这阶段的密码技术可以说是一种艺术,而不是一种科学,密码学专家常常是凭知觉和信念来进行密码设计和分析,而不是推理和证明。
早在古埃及就已经开始使用密码技术,但是用于军事目的,不公开。
1844年,萨米尔·莫尔斯发明了莫尔斯电码:用一系列的电子点划来进行电报通讯。电报的出现第一次使远距离快速传递信息成为可能,事实上,它增强了西方各国的通讯能力。
20世纪初,意大利物理学家奎里亚摩·马可尼发明了无线电报,让无线电波成为新的通讯手段,它实现了远距离通讯的即时传输。马可尼的发明永远地改变了密码世界。由于通过无线电波送出的每条信息不仅传给了己方,也传送给了敌方,这就意味着必须给每条信息加密。
随着第一次世界大战的爆发,对密码和解码人员的需求急剧上升,一场秘密通讯的全球战役打响了。
在第一次世界大战之初,隐文术与密码术同时在发挥着作用。在索姆河前线德法交界处,尽管法军哨兵林立,对过往行人严加盘查,德军还是对协约国的驻防情况了如指掌,并不断发动攻势使其陷入被动,法国情报人员都感到莫名其妙。一天,有位提篮子的德国农妇在过边界时受到了盘查。哨兵打开农妇提着的篮子,见里头都是煮熟的鸡蛋,亳无可疑之处,便无意识地拿起一个抛向空中,农妇慌忙把它接住。哨兵们觉得这很可疑,他们将鸡蛋剥开,发现蛋白上布满了字迹,都是英军的详细布防图,还有各师旅的番号。原来,这种传递情报的方法是德国一位化学家提供的,其作法并不复杂:用醋酸在蛋壳上写字,等醋酸干了后,再将鸡蛋煮熟,字迹便透过蛋壳印在蛋白上,外面却没有任何痕迹。
1914年8月5日,英国“泰尔哥尼亚”号船上的潜水员割断了德国在北大西洋海下的电缆。他们的目的很简单,就是想让德国的日子更难过,没想到这却使德方大量的通讯从电缆转向了无线电。结果,英方截取了大量原本无法得到的情报。情报一旦截获,就被送往40号房间——英国海军部的密件分析部门。40号房间可以说是现代密件分析组织的原型,这里聚集了数学家、语言学家、棋类大师等任何善于解谜的人。
1914年9月,英国人收到了一份“珍贵”的礼物:同盟者俄国人在波罗的海截获了一艘德国巡洋舰“玛格德伯格”号,得到一本德国海军的密码本。他们立即将密码本送至40号房间,允许英国破译德国海军的密件,并在战争期间围困德军战船。能够如此直接、顺利且经常差不多是同时读取德国海军情报的情况,在以往的战事中几乎从未发生过。
密码学历史上最伟大的密码破译事件开始于1917年1月17日。当时英军截获了一份以德国最高外交密码0075加密的电报,这个令人无法想象的系统由一万个词和词组组成,与一千个数字码群对应。密电来自德国外交部长阿瑟·齐麦曼,传送给他的驻华盛顿大使约翰·冯·贝伦朵尔夫,然后继续传给德国驻墨西哥大使亨尼希·冯·艾克哈尔特,电文将在那里解密,然后交给墨西哥总统瓦律斯提阿诺·加汉扎。
密件从柏林经美国海底电缆送到了华盛顿,英军在那里将其截获并意识到了它的重要性。但是,同样接到密件的约翰·冯·贝伦朵尔夫却在他的华盛顿办公室里犯了个致命的错误:他们将电报用新的0075密件本译出,然后又用老的密件本加密后用电报传送到墨西哥城。大使先生没有意识到,他已经犯下了一个密码使用者所能犯的最愚蠢的、最可悲的错误。
此时,已经破译了老密码的英方正对着这个未曾破译的新外交密码系统一筹莫展,不过没过多久,他们便从大使先生的糊涂 *** 作中获得了新旧密码的比较版本。随着齐麦曼的密件逐渐清晰起来,其重要性令人吃惊。
尽管1915年美国的远洋客轮“露斯塔尼亚”号被德军击沉,但只要德国对其潜艇的行动加以限制,美国仍将一直保持中立。齐麦曼的电文概括了德国要在1917年2月1日重新开始无限制海战以抑制英国的企图。为了让美国原地不动,齐麦曼建议墨西哥入侵美国,重新宣布得克萨斯州、新墨西哥州和亚里桑纳州归其所有。德国还要墨西哥说服日本进攻美国,德国将提供军事和资金援助。
英国海军部急于将破译的情报通知美国而又不能让德国知道他们的密码已被破译。于是,英国的一个特工成功地渗入了墨西哥电报局,得到了送往墨西哥总统的解了密的文件拷贝。这样,秘密就可能是由墨西哥方泄露的,他们以此为掩护将情报透露给了美国。
美国愤怒了。每个人都被激怒了,原先只是东海岸的人在关心,现在,整个中西部都担心墨西哥的举动。电文破译后六个星期,美国对德国宣战。当总统伍德罗·威尔逊要求对德宣战时,站在他背后的,是一个团结起来的愤怒的国家,它时刻准备对德作战。
这可能是密码破译史上,当然也是情报史上最著名的事件。齐麦曼的电文使整个美国相信德国是国家的敌人。德国利用密码破译击败了俄军,反过来又因自己的密码被破译而加速走向了灭亡。
第一次世界大战前,重要的密码学进展很少出现在公开文献中。直到1918年,二十世纪最有影响的密码分析文章之一¾¾William F Friedman的专题论文《重合指数及其在密码学中的应用》作为私立的“河岸(Riverbank)实验室”的一份研究报告问世了,其实,这篇著作涉及的工作是在战时完成的。一战后,完全处于秘密工作状态的美国陆军和海军的机要部门开始在密码学方面取得根本性的进展。但是公开的文献几乎没有。
然而技术却在飞速的发展,简单的明文字母替换法已经被频率分析法毫无难度地破解了,曾经认为是完美的维吉耐尔(Vigenere)密码和它的变种也被英国人Charles Babbage破解了。顺便说一句,这个Charles Babbage可不是凡人,他设计了差分机Difference Engine和分析机Analytical Engine,而这东西就是现在计算机的先驱。这个事实给了人们两个启示:第一,没有哪种“绝对安全”的密码是不会被攻破的,这只是个时间问题;第二,破译密码看来只要够聪明就成。在二次大战中,密码更是扮演一个举足轻重的角色,许多人认为同盟国之所以能打赢这场战争完全归功於二次大战时所发明的破译密文数位式计算机破解德日密码。
1918年,加州奥克兰的Edward HHebern申请了第一个转轮机专利,这种装置在差不多50年里被指定为美军的主要密码设备,它依靠转轮不断改变明文和密文的字母映射关系。由于有了转轮的存在,每转动一格就相当于给明文加密一次,并且每次的密钥不同,而密钥的数量就是全部字母的个数――26个。
同年,密码学界的一件大事“终于”发生了:在德国人Arthur Scherbius天才的努力下,第一台非手工编码的密码机――ENIGMA密码机横空出世了。密码机是德军在二战期间最重要的通讯利器,也是密码学发展史上的一则传奇。当时盟军借重英国首都伦敦北方布莱奇利公园的「政府电码与密码学院」,全力破译德军之「谜」。双方隔著英吉利海峡斗智,写下一页精彩无比的战史,后来成为无数与影集的主要情节,「猎杀U571」也是其中之一。
随着高速、大容量和自动化保密通信的要求,机械与电路相结合的转轮加密设备的出现,使古典密码体制也就退出了历史舞台。
第二阶段为从1949年到1975年。
1949年仙农(Claude Shannon)《保密系统的通信理论》,为近代密码学建立了理论基础。从1949年到1967年,密码学文献近乎空白。许多年,密码学是军队独家专有的领域。美国国家安全局以及前苏联、英国、法国、以色列及其它国家的安全机构已将大量的财力投入到加密自己的通信,同时又千方百计地去破译别人的通信的残酷游戏之中,面对这些政府,个人既无专门知识又无足够财力保护自己的秘密。
1967年,David Kahn《破译者》(The CodeBreaker)的出现,对以往的密码学历史作了相当完整的记述。《破译者》的意义不仅在于涉及到相当广泛的领域,它使成千上万的人了解了密码学。此后,密码学文章开始大量涌现。大约在同一时期,早期为空军研制敌我识别装置的Horst Feistel在位于纽约约克镇高地的IBM Watson实验室里花费了毕生精力致力于密码学的研究。在那里他开始着手美国数据加密标准(DES)的研究,到70年代初期,IBM发表了Feistel和他的同事在这个课题方面的几篇技术报告。
第三阶段为从1976年至今。1976年diffie 和 hellman 发表的文章“密码学的新动向”一文导致了密码学上的一场革命。他们首先证明了在发送端和接受端无密钥传输的保密通讯是可能的,从而开创了公钥密码学的新纪元。
1978年,RLRivest,AShamir和LAdleman实现了RSA公钥密码体制。
1969年,哥伦比亚大学的Stephen Wiesner首次提出“共轭编码”(Conjugate coding)的概念。1984年,H Bennett 和G Brassard在次思想启发下,提出量子理论BB84协议,从此量子密码理论宣告诞生。其安全性在于:1、可以发现窃听行为;2、可以抗击无限能力计算行为。
1985年,Miller和Koblitz首次将有限域上的椭圆曲线用到了公钥密码系统中,其安全性是基于椭圆曲线上的离散对数问题。
1989年RMathews, DWheeler, LMPecora和Carroll等人首次把混沌理论使用到序列密码及保密通信理论,为序列密码研究开辟了新途径。
2000年,欧盟启动了新欧洲数据加密、数字签名、数据完整性计划NESSIE,究适应于21世纪信息安全发展全面需求的序列密码、分组密码、公开密钥密码、hash函数以及随机噪声发生器等技术。
建议你可以参考下:密码学基础、密码学原理、OpenSSL等书籍公钥密码系统及RSA公钥算法
本文简单介绍了公开密钥密码系统的思想和特点,并具体介绍了RSA算法的理论基础,工作原理和具体实现过程,并通过一个简单例子说明了该算法是如何实现。在本文的最后,概括说明了RSA算法目前存在的一些缺点和解决方法。
关键词:公钥密码体制 , 公钥 ,私钥 ,RSA
§1引言
随着计算机联网的逐步实现,Internet前景越来越美好,全球经济发展正在进入信息经济时代,知识经济初见端倪。计算机信息的保密问题显得越来越重要,无论是个人信息通信还是电子商务发展,都迫切需要保证Internet网上信息传输的安全,需要保证信息安全。信息安全技术是一门综合学科,它涉及信息论、计算机科学和密码学等多方面知识,它的主要任务是研究计算机系统和通信网络内信息的保护方法以实现系统内信息的安全、保密、真实和完整。其中,信息安全的核心是密码技术。密码技术是集数学、计算机科学、电子与通信等诸多学科于一身的交叉学科。它不仅能够保证机密性信息的加密,而且能够实现数字签名、身份验证、系统安全等功能。是现代化发展的重要科学之一。本文将对公钥密码系统及该系统中目前最广泛流行的RSA算法做一些简单介绍。
§2公钥密码系统
要说明公钥密码系统,首先来了解一下不同的加密算法:目前的加密算法按密钥方式可分为单钥密码算法和公钥密码算法。
21单钥密码
又称对称式密码,是一种比较传统的加密方式,其加密运算、解密运算使用的是同样的密钥,信息的发送者和信息的接收者在进行信息的传输与处理时,必须共同持有该密码(称为对称密码)。因此,通信双方都必须获得这把钥匙,并保持钥匙的秘密。
单钥密码系统的安全性依赖于以下两个因素:第一,加密算法必须是足够强的,仅仅基于密文本身去解密信息在实践上是不可能的;第二,加密方法的安全性依赖于密钥的秘密性,而不是算法的秘密性,因此,我们没有必要确保算法的秘密性(事实上,现实中使用的很多单钥密码系统的算法都是公开的),但是我们一定要保证密钥的秘密性。
从单钥密码的这些特点我们容易看出它的主要问题有两点:第一,密钥量问题。在单钥密码系统中,每一对通信者就需要一对密钥,当用户增加时,必然会带来密钥量的成倍增长,因此在网络通信中,大量密钥的产生﹑存放和分配将是一个难以解决的问题。第二,密钥分发问题。单钥密码系统中,加密的安全性完全依赖于对密钥的保护,但是由于通信双方使用的是相同的密钥,人们又不得不相互交流密钥,所以为了保证安全,人们必须使用一些另外的安全信道来分发密钥,例如用专门的信使来传送密钥,这种做法的代价是相当大的,甚至可以说是非常不现实的,尤其在计算机网络环境下,人们使用网络传送加密的文件,却需要另外的安全信道来分发密钥,显而易见,这是非常不智是甚至是荒谬可笑的。
22公钥密码
正因为单钥密码系统存在如此难以解决的缺点,发展一种新的﹑更有效﹑更先进的密码体制显得更为迫切和必要。在这种情况下,出现了一种新的公钥密码体制,它突破性地解决了困扰着无数科学家的密钥分发问题,事实上,在这种体制中,人们甚至不用分发需要严格保密的密钥,这次突破同时也被认为是密码史上两千年来自单码替代密码发明以后最伟大的成就。
这一全新的思想是本世纪70年代,美国斯坦福大学的两名学者Diffie和Hellman提出的,该体制与单钥密码最大的不同是:
在公钥密码系统中,加密和解密使用的是不同的密钥(相对于对称密钥,人们把它叫做非对称密钥),这两个密钥之间存在着相互依存关系:即用其中任一个密钥加密的信息只能用另一个密钥进行解密。这使得通信双方无需事先交换密钥就可进行保密通信。其中加密密钥和算法是对外公开的,人人都可以通过这个密钥加密文件然后发给收信者,这个加密密钥又称为公钥;而收信者收到加密文件后,它可以使用他的解密密钥解密,这个密钥是由他自己私人掌管的,并不需要分发,因此又成称为私钥,这就解决了密钥分发的问题。
为了说明这一思想,我们可以考虑如下的类比:
两个在不安全信道中通信的人,假设为Alice(收信者)和Bob(发信者),他们希望能够安全的通信而不被他们的敌手Oscar破坏。Alice想到了一种办法,她使用了一种锁(相当于公钥),这种锁任何人只要轻轻一按就可以锁上,但是只有Alice的钥匙(相当于私钥)才能够打开。然后Alice对外发送无数把这样的锁,任何人比如Bob想给她寄信时,只需找到一个箱子,然后用一把Alice的锁将其锁上再寄给Alice,这时候任何人(包括Bob自己)除了拥有钥匙的Alice,都不能再打开箱子,这样即使Oscar能找到Alice的锁,即使Oscar能在通信过程中截获这个箱子,没有Alice的钥匙他也不可能打开箱子,而Alice的钥匙并不需要分发,这样Oscar也就无法得到这把“私人密钥”。
从以上的介绍可以看出,公钥密码体制的思想并不复杂,而实现它的关键问题是如何确定公钥和私钥及加/解密的算法,也就是说如何找到“Alice的锁和钥匙”的问题。我们假设在这种体制中, PK是公开信息,用作加密密钥,而SK需要由用户自己保密,用作解密密钥。加密算法E和解密算法D也都是公开的。虽然SK与PK是成对出现,但却不能根据PK计算出SK。它们须满足条件:
①加密密钥PK对明文X加密后,再用解密密钥SK解密,即可恢复出明文,或写为:DSK(EPK(X))=X
②加密密钥不能用来解密,即DPK(EPK(X))≠X
③在计算机上可以容易地产生成对的PK和SK。
④从已知的PK实际上不可能推导出SK。
⑤加密和解密的运算可以对调,即:EPK(DSK(X))=X
从上述条件可看出,公开密钥密码体制下,加密密钥不等于解密密钥。加密密钥可对外公开,使任何用户都可将传送给此用户的信息用公开密钥加密发送,而该用户唯一保存的私人密钥是保密的,也只有它能将密文复原、解密。虽然解密密钥理论上可由加密密钥推算出来,但这种算法设计在实际上是不可能的,或者虽然能够推算出,但要花费很长的时间而成为不可行的。所以将加密密钥公开也不会危害密钥的安全。
这种体制思想是简单的,但是,如何找到一个适合的算法来实现这个系统却是一个真正困扰密码学家们的难题,因为既然Pk和SK是一对存在着相互关系的密钥,那么从其中一个推导出另一个就是很有可能的,如果敌手Oscar能够从PK推导出SK,那么这个系统就不再安全了。因此如何找到一个合适的算法生成合适的Pk和SK,并且使得从PK不可能推导出SK,正是迫切需要密码学家们解决的一道难题。这个难题甚至使得公钥密码系统的发展停滞了很长一段时间。
为了解决这个问题,密码学家们考虑了数学上的陷门单向函数,下面,我们可以给出它的非正式定义:
Alice的公开加密函数应该是容易计算的,而计算其逆函数(即解密函数)应该是困难的(对于除Alice以外的人)。许多形式为Y=f(x)的函数,对于给定的自变量x值,很容易计算出函数Y的值;而由给定的Y值,在很多情况下依照函数关系f (x)计算x值十分困难。这样容易计算但难于求逆的函数,通常称为单向函数。在加密过程中,我们希望加密函数E为一个单项的单射函数,以便可以解密。虽然目前还没有一个函数能被证明是单向的,但是有很多单射函数被认为是单向的。
例如,有如下一个函数被认为是单向的,假定n为两个大素数p和q的乘积,b为一个正整数,那么定义f:
f (x )= x b mod n
(如果gcd(b,φ(n))=1,那么事实上这就是我们以下要说的RSA加密函数)
如果我们要构造一个公钥密码体制,仅给出一个单向的单射函数是不够的。从Alice的观点来看,并不需要E是单向的,因为它需要用有效的方式解密所收到的信息。因此,Alice应该拥有一个陷门,其中包含容易求出E的你函数的秘密信息。也就是说,Alice可以有效解密,因为它有额外的秘密知识,即SK,能够提供给你解密函数D。因此,我们称一个函数为一个陷门单向函数,如果它是一个单向函数,并在具有特定陷门的知识后容易求出其逆。
考虑上面的函数f (x) = xb mod n。我们能够知道其逆函数f -1有类似的形式f (x ) = xa mod n,对于合适的取值a。陷门就是利用n的因子分解,有效的算出正确的指数a(对于给定的b)。
为方便起见,我们把特定的某类陷门单向函数计为。那么随机选取一个函数f属于,作为公开加密函数;其逆函数f-1是秘密解密函数。那么公钥密码体制就能够实现了。
根据以上关于陷门单向函数的思想,学者们提出了许多种公钥加密的方法,它们的安全性都是基于复杂的数学难题。根据所基于的数学难题,至少有以下三类系统目前被认为是安全和有效的:大整数因子分解系统(代表性的有RSA)、椭园曲线离散对数系统(ECC)和离散对数系统(代表性的有DSA)。
§3 RSA算法
31简介
当前最著名、应用最广泛的公钥系统RSA是在1978年,由美国麻省理工学院(MIT)的Rivest、Shamir和Adleman在题为《获得数字签名和公开钥密码系统的方法》的论文中提出的。它是一个基于数论的非对称(公开钥)密码体制,是一种分组密码体制。其名称来自于三个发明者的姓名首字母。它的安全性是基于大整数素因子分解的困难性,而大整数因子分解问题是数学上的著名难题,至今没有有效的方法予以解决,因此可以确保RSA算法的安全性。RSA系统是公钥系统的最具有典型意义的方法,大多数使用公钥密码进行加密和数字签名的产品和标准使用的都是RSA算法。
RSA算法是第一个既能用于数据加密也能用于数字签名的算法,因此它为公用网络上信息的加密和鉴别提供了一种基本的方法。它通常是先生成一对RSA密钥,其中之一是保密密钥,由用户保存;另一个为公开密钥,可对外公开,甚至可在网络服务器中注册,人们用公钥加密文件发送给个人,个人就可以用私钥解密接受。为提高保密强度,RSA密钥至少为500位长,一般推荐使用1024位。
该算法基于下面的两个事实,这些事实保证了RSA算法的安全有效性:
1)已有确定一个数是不是质数的快速算法;
2)尚未找到确定一个合数的质因子的快速算法。
32工作原理
1)任意选取两个不同的大质数p和q,计算乘积r=pq;
2)任意选取一个大整数e,e与(p-1)(q-1)互质,整数e用做加密密钥。注意:e的选取是很容易的,例如,所有大于p和q的质数都可用。
3)确定解密密钥d:d e = 1 modulo(p - 1)(q - 1) 根据e、p和q可以容易地计算出d。
4)公开整数r和e,但是不公开d;
5)将明文P (假设P是一个小于r的整数)加密为密文C,计算方法为:
C = Pe modulo r
6)将密文C解密为明文P,计算方法为:
P = Cd modulo r
然而只根据r和e(不是p和q)要计算出d是不可能的。因此,任何人都可对明文进行加密,但只有授权用户(知道d)才可对密文解密。
33简单实例
为了说明该算法的工作过程,我们下面给出一个简单例子,显然我们在这只能取很小的数字,但是如上所述,为了保证安全,在实际应用上我们所用的数字要大的多得多。
例:选取p=3, q=5,则r=15,(p-1)(q-1)=8。选取e=11(大于p和q的质数),通过d 11 = 1 modulo 8,计算出d =3。
假定明文为整数13。则密文C为
C = Pe modulo r
= 1311 modulo 15
= 1,792,160,394,037 modulo 15
= 7
复原明文P为:
P = Cd modulo r
= 73 modulo 15
= 343 modulo 15
= 13
因为e和d互逆,公开密钥加密方法也允许采用这样的方式对加密信息进行"签名",以便接收方能确定签名不是伪造的。
假设A和B希望通过公开密钥加密方法进行数据传输,A和B分别公开加密算法和相应的密钥,但不公开解密算法和相应的密钥。A和B的加密算法分别是ECA和ECB,解密算法分别是DCA和DCB,ECA和DCA互逆,ECB和DCB互逆。 若A要向B发送明文P,不是简单地发送ECB(P),而是先对P施以其解密算法DCA,再用加密算法ECB对结果加密后发送出去。
密文C为:
C = ECB(DCA(P))
B收到C后,先后施以其解密算法DCB和加密算法ECA,得到明文P:
ECA(DCB(C))
= ECA(DCB(ECB(DCA(P))))
= ECA(DCA(P))/DCB和ECB相互抵消/
=
P /DCB和ECB相互抵消/
这样B就确定报文确实是从A发出的,因为只有当加密过程利用了DCA算法,用ECA才能获得P,只有A才知道DCA算法,没 有人,即使是B也不能伪造A的签名。
34优缺点
341优点
RSA算法是第一个能同时用于加密和数字签名的算法,也易于理解和 *** 作。RSA是被研究得最广泛的公钥算法,从提出到现在已近二十年,经历了各种攻击的考验,逐渐为人们接受,普遍认为是目前最优秀的公钥方案之一。该算法的加密密钥和加密算法分开,使得密钥分配更为方便。它特别符合计算机网络环境。对于网上的大量用户,可以将加密密钥用电话簿的方式印出。如果某用户想与另一用户进行保密通信,只需从公钥簿上查出对方的加密密钥,用它对所传送的信息加密发出即可。对方收到信息后,用仅为自己所知的解密密钥将信息脱密,了解报文的内容。由此可看出,RSA算法解决了大量网络用户密钥管理的难题,这是公钥密码系统相对于对称密码系统最突出的优点。
342缺点
1)产生密钥很麻烦,受到素数产生技术的限制,因而难以做到一次一密。
2)安全性, RSA的安全性依赖于大数的因子分解,但并没有从理论上证明破译RSA的难度与大数分解难度等价,而且密码学界多数人士倾向于因子分解不是NPC问题。目前,人们已能分解140多个十进制位的大素数,这就要求使用更长的密钥,速度更慢;另外,目前人们正在积极寻找攻击RSA的方法,如选择密文攻击,一般攻击者是将某一信息作一下伪装(Blind),让拥有私钥的实体签署。然后,经过计算就可得到它所想要的信息。实际上,攻击利用的都是同一个弱点,即存在这样一个事实:乘幂保留了输入的乘法结构:
( XM )d = Xd Md mod n
前面已经提到,这个固有的问题来自于公钥密码系统的最有用的特征--每个人都能使用公钥。但从算法上无法解决这一问题,主要措施有两条:一条是采用好的公钥协议,保证工作过程中实体不对其他实体任意产生的信息解密,不对自己一无所知的信息签名;另一条是决不对陌生人送来的随机文档签名,签名时首先使用One-Way Hash Function对文档作HASH处理,或同时使用不同的签名算法。除了利用公共模数,人们还尝试一些利用解密指数或φ(n)等等攻击
3)速度太慢,由于RSA的分组长度太大,为保证安全性,n至少也要600 bitx以上,使运算代价很高,尤其是速度较慢,较对称密码算法慢几个数量级;且随着大数分解技术的发展,这个长度还在增加,不利于数据格式的标准化。目前,SET(Secure Electronic Transaction)协议中要求CA采用2048比特长的密钥,其他实体使用1024比特的密钥。为了速度问题,目前人们广泛使用单,公钥密码结合使用的方法,优缺点互补:单钥密码加密速度快,人们用它来加密较长的文件,然后用RSA来给文件密钥加密,极好的解决了单钥密码的密钥分发问题。
§4结束语
目前,日益激增的电子商务和其它因特网应用需求使公钥体系得以普及,这些需求量主要包括对服务器资源的访问控制和对电子商务交易的保护,以及权利保护、个人隐私、无线交易和内容完整性(如保证新闻报道或股票行情的真实性)等方面。公钥技术发展到今天,在市场上明显的发展趋势就是PKI与 *** 作系统的集成,PKI是“Public
Key Infrastructure”的缩写,意为“公钥基础设施”。公钥体制广泛地用于CA认证、数字签名和密钥交换等领域。
公钥加密算法中使用最广的是RSA。RSA算法研制的最初理念与目标是努力使互联网安全可靠,旨在解决DES算法秘密密钥的利用公开信道传输分发的难题。而实际结果不但很好地解决了这个难题;还可利用RSA来完成对电文的数字签名以抗对电文的否认与抵赖;同时还可以利用数字签名较容易地发现攻击者对电文的非法篡改,以保护数据信息的完整性。目前为止,很多种加密技术采用了RSA算法,该算法也已经在互联网的许多方面得以广泛应用,包括在安全接口层(SSL)标准(该标准是网络浏览器建立安全的互联网连接时必须用到的)方面的应用。此外,RSA加密系统还可应用于智能IC卡和网络安全产品。
但目前RSA算法的专利期限即将结束,取而代之的是基于椭圆曲线的密码方案(ECC算法)。较之于RSA算法,ECC有其相对优点,这使得ECC的特性更适合当今电子商务需要快速反应的发展潮流。此外,一种全新的量子密码也正在发展中。
至于在实际应用中应该采用何种加密算法则要结合具体应用环境和系统,不能简单地根据其加密强度来做出判断。因为除了加密算法本身之外,密钥合理分配、加密效率与现有系统的结合性以及投入产出分析都应在实际环境中具体考虑。加密技术随着网络的发展更新,将有更安全更易于实现的算法不断产生,为信息安全提供更有力的保障。今后,加密技术会何去何从,我们将拭目以待。
参考文献:
[1] Douglas RStinson《密码学原理与实践》北京:电子工业出版社,2003,2:131-132
[2]西蒙辛格《密码故事》海口:海南出版社,2001,1:271-272
[3]嬴政天下加密算法之RSA算法>详解数字签名
帷幄 2001-7-25
目前有许多种技术保证信息的安全不受侵犯,例如加密技术、访问控制技术、认证技术以及安全审计技术等,但这些技术大多数是用来预防用的,信息一旦被攻破,我们不能保证信息的完整性。为此,一种新兴的用来保证信息完整性的安全技术——数字签名技术成为人们非常关心的话题。那么,什么是数字签名技术?它有什么特殊功能呢?
概念
在数字签名技术出现之前,曾经出现过一种“数字化签名”技术,简单地说就是在手写板上签名,然后将图像传输到电子文档中,这种“数字化签名”可以被剪切,然后粘贴到任意文档上,这样非法复制变得非常容易,所以这种签名的方式是不安全的。数字签名技术与数字化签名技术是两种截然不同的安全技术,数字签名与用户的姓名和手写签名形式毫无关系,它实际使用了信息发送者的私有密钥变换所需传输的信息。对于不同的文档信息,发送者的数字签名并不相同。没有私有密钥,任何人都无法完成非法复制。从这个意义上来说,“数字签名”是通过一个单向函数对要传送的报文进行处理得到的,用以认证报文来源并核实报文是否发生变化的一个字母数字串。
原理
该技术在具体工作时,首先发送方对信息施以数学变换,所得的信息与原信息惟一对应;在接收方进行逆变换,得到原始信息。只要数学变换方法优良,变换后的信息在传输中就具有很强的安全性,很难被破译、篡改。这一个过程称为加密,对应的反变换过程称为解密。
现在有两类不同的加密技术,一类是对称加密,双方具有共享的密钥,只有在双方都知道密钥的情况下才能使用,通常应用于孤立的环境之中,比如在使用自动取款机(ATM)时,用户需要输入用户识别号码(PIN),银行确认这个号码后,双方在获得密码的基础上进行交易,如果用户数目过多,超过了可以管理的范围时,这种机制并不可靠。
另一类是非对称加密,也称为公开密钥加密,密钥是由公开密钥和私有密钥组成的密钥对,用私有密钥进行加密,利用公开密钥可以进行解密,但是由于公开密钥无法推算出私有密钥,所以公开的密钥并不会损害私有密钥的安全,公开密钥无须保密,可以公开传播,而私有密钥必须保密,丢失时需要报告鉴定中心及数据库。
算法
数字签名的算法很多, 应用最为广泛的三种是: Hash签名、DSS签名和RSA签名。
1 Hash签名
Hash签名不属于强计算密集型算法,应用较广泛。它可以降低服务器资源的消耗,减轻中央服务器的负荷。Hash的主要局限是接收方必须持有用户密钥的副本以检验签名, 因为双方都知道生成签名的密钥,较容易攻破,存在伪造签名的可能。
2 DSS和RSA签名
DSS 和RSA采用了公钥算法,不存在Hash的局限性。RSA是最流行的一种加密标准,许多产品的内核中都有RSA的软件和类库。早在Web飞速发展之前, RSA数据安全公司就负责数字签名软件与Macintosh *** 作系统的集成,在Apple的协作软件PowerTalk上还增加了签名拖放功能,用户只要把需要加密的数据拖到相应的图标上,就完成了电子形式的数字签名。与DSS不同,RSA既可以用来加密数据,也可以用于身份认证。和Hash签名相比,在公钥系统中,由于生成签名的密钥只存储于用户的计算机中,安全系数大一些。
功能
数字签名可以解决否认、伪造、篡改及冒充等问题。具体要求:发送者事后不能否认发送的报文签名、接收者能够核实发送者发送的报文签名、接收者不能伪造发送者的报文签名、接收者不能对发送者的报文进行部分篡改、网络中的某一用户不能冒充另一用户作为发送者或接收者。数字签名的应用范围十分广泛,在保障电子数据交换(EDI)的安全性上是一个突破性的进展,凡是需要对用户的身份进行判断的情况都可以使用数字签名,比如加密信件、商务信函、定货购买系统、远程金融交易、自动模式处理等等。
缺憾
数字签名的引入过程中不可避免地会带来一些新问题,需要进一步加以解决,数字签名需要相关法律条文的支持。
1 需要立法机构对数字签名技术有足够的重视,并且在立法上加快脚步,迅速制定有关法律,以充分实现数字签名具有的特殊鉴别作用,有力地推动电子商务以及其他网上事务的发展。
2 如果发送方的信息已经进行了数字签名,那么接收方就一定要有数字签名软件,这就要求软件具有很高的普及性。
3 假设某人发送信息后脱离了某个组织,被取消了原有数字签名的权限,以往发送的数字签名在鉴定时只能在取消确认列表中找到原有确认信息,这样就需要鉴定中心结合时间信息进行鉴定。
4 基础设施(鉴定中心、在线存取数据库等)的费用,是采用公共资金还是在使用期内向用户收费?如果在使用期内收费,会不会影响到这项技术的全面推广?
实施
实现数字签名有很多方法,目前采用较多的是非对称加密技术和对称加密技术。虽然这两种技术实施步骤不尽相同,但大体的工作程序是一样的。用户首先可以下载或者购买数字签名软件,然后安装在个人电脑上。在产生密钥对后,软件自动向外界传送公开密钥。由于公共密钥的存储需要,所以需要建立一个鉴定中心(CA)完成个人信息及其密钥的确定工作。鉴定中心是一个政府参与管理的第三方成员,以便保证信息的安全和集中管理。用户在获取公开密钥时,首先向鉴定中心请求数字确认,鉴定中心确认用户身份后,发出数字确认,同时鉴定中心向数据库发送确认信息。然后用户使用私有密钥对所传信息签名,保证信息的完整性、真实性,也使发送方无法否认信息的发送,之后发向接收方;接收方接收到信息后,使用公开密钥确认数字签名,进入数据库检查用户确认信息的状况和可信度;最后数据库向接收方返回用户确认状态信息。不过,在使用这种技术时,签名者必须注意保护好私有密钥,因为它是公开密钥体系安全的重要基础。如果密钥丢失,应该立即报告鉴定中心取消认证,将其列入确认取消列表之中。其次,鉴定中心必须能够迅速确认用户的身份及其密钥的关系。一旦接收到用户请求,鉴定中心要立即认证信息的安全性并返回信息。
什么是数字签名:
一数字签名的含义
数字签名是在公钥加密系统的基础上建立起来的,数字签名的产生涉及的运算方式是为人们所知的散列函数功能,也称"哈希函数功能"(Hash Function)哈希函数功能其实是一种数学计算过程这一计算过程建立在一种以"哈希函数值"或"哈希函数结果"形式创建信息的数字表达式或压缩形式(通常被称作"信息摘要"或"信息标识")的计算方法之上在安全的哈希函数功能(有时被称作单向哈希函数功能)情形下,要想从已知的哈希函数结果中推导出原信息来,实际上是不可能的因而,哈希函数功能可以使软件在更少且可预见的数据量上运作生成数字签名,却保持与原信息内容之间的高度相关,且有效保证信息在经数字签署后并未做任何修改
所谓数字签名,就是只有信息的发送者才能产生的,别人无法伪造的一段数字串,它同时也是对发送者发送的信息的真实性的一个证明签署一个文件或其他任何信息时,签名者首先须准确界定要签署内容的范围然后,签名者软件中的哈希函数功能将计算出被签署信息惟一的哈希函数结果值(为实用目的)最后使用签名者的私人密码将哈希函数结果值转化为数字签名得到的数字签名对于被签署的信息和用以创建数字签名的私人密码而言都是独一无二的
一个数字签名(对一个信息的哈希函数结果的数字签署)被附在信息之后,并随同信息一起被储存和传送然而,只要能够保持与相应信息之间的可靠联系,它也可以作为单独的数据单位被存储和传送因为数字签名对它所签署的信息而言是独一无二的,因此,假如它与信息永久地失去联系则变得毫无意义
在书面文件上签名是确认文件的一种手段,数字签名同传统的手写签名相比有许多特点
首先,数字签名中的签名同信息是分开的,需要一种方法将签名与信息联系在一起,而在传统的手写签名中,签名与所签署之信息是一个整体;
其次,在签名验证的方法上,数字签名利用一种公开的方法对签名进行验证,任何人都可以对之进行检验而传统的手写签名的验证,是由经验丰富的接收者,通过同预留的签名样本相比较而作出判断的;
最后,在数字签名中,有效签名的复制同样是有效的签名,而在传统的手写签名中,签名的复制是无效的
数字签名可以同时具有两个作用:确认数据的来源,以及保证数据在发送的过程中未作任何修改或变动因此,在某些方面而言,数据签名的功能,更有些近似于整体性检测值的功能但是,二者的一个主要区别在于,数字签名必须能够保证以下特点,即发送者事后不能抵赖对报文的签名这一点相当重要由此,信息的接收者可以通过数字签名,使第三方确信签名人的身份及发出信息的事实当双方就信息发出与否及其内容出现争论时,数字签名就可成为一个有力的证据一般来说因信息篡改而受影响较大的是接收方因此,接收方最好使用与信息发送方不同的数字签名,以示区别这是整体性检测值所不具有的功能在这种意义上说来,确认一个数字签名,有些类似于通过辩认手写签名来确认某一书面文件的来源一样的意义
采用数字签名和加密技术相结合的方法,可以很好地解决信息传输过程中的完整性,身份认证以及防抵赖性等问题
(1)完整性因为它提供了一项用以确认电子文件完整性的技术和方法,可认定文件为未经更改的原件
(2)可验证性可以确认电子文件之来源由于发件人以私钥产生的电子签章惟有与发件人的私钥对应的公钥方能解密,故可确认文件之来源
(3)不可否认性由于只有发文者拥有私钥,所以其无法否认该电子文件非由其所发送
数字签名
所谓"数字签名"就是通过某种密码运算生成一系列符号及代码组成电子密码进行签名,来代替书写签名或印章,对于这种电子式的签名还可进行技术验证,其验证的准确度是一般手工签名和图章的验证而无法比拟的。"数字签名"是目前电子商务、电子政务中应用最普遍、技术最成熟的、可 *** 作性最强的一种电子签名方法。它采用了规范化的程序和科学化的方法,用于鉴定签名人的身份以及对一项电子数据内容的认可。它还能验证出文件的原文在传输过程中有无变动,确保传输电子文件的完整性、真实性和不可抵赖性。
数字签名在ISO7498-2标准中定义为:"附加在数据单元上的一些数据,或是对数据单元所作的密码变换,这种数据和变换允许数据单元的接收者用以确认数据单元来源和数据单元的完整性,并保护数据,防止被人(例如接收者)进行伪造"。美国电子签名标准(DSS,FIPS186-2)对数字签名作了如下解释:"利用一套规则和一个参数对数据计算所得的结果,用此结果能够确认签名者的身份和数据的完整性"。按上述定义PKI(Public Key Infrastructino 公钥基础设施)提供可以提供数据单元的密码变换,并能使接收者判断数据来源及对数据进行验证。
PKI的核心执行机构是电子认证服务提供者,即通称为认证机构CA(Certificate Authority),PKI签名的核心元素是由CA签发的数字证书。它所提供的PKI服务就是认证、数据完整性、数据保密性和不可否认性。它的作法就是利用证书公钥和与之对应的私钥进行加/解密,并产生对数字电文的签名及验证签名。数字签名是利用公钥密码技术和其他密码算法生成一系列符号及代码组成电子密码进行签名,来代替书写签名和印章;这种电子式的签名还可进行技术验证,其验证的准确度是在物理世界中对手工签名和图章的验证是无法比拟的。这种签名方法可在很大的可信PKI域人群中进行认证,或在多个可信的PKI域中进行交叉认证,它特别适用于互联网和广域网上的安全认证和传输。
简单地说,所谓数字签名就是附加在数据单元上的一些数据,或是对数据单元所作的密码变换。这种数据或变换允许数据单元的接收者用以确认数据单元的来源和数据单元的完整性并保护数据,防止被人(例如接收者)进行伪造。它是对电子形式的消息进行签名的一种方法,一个签名消息能在一个通信网络中传输。基于公钥密码体制和私钥密码体制都可以获得数字签名,目前主要是基于公钥密码体制的数字签名。包括普通数字签名和特殊数字签名。普通数字签名算法有RSA、ElGamal、Fiat-Shamir、Guillou- Quisquarter、Schnorr、Ong-Schnorr-Shamir数字签名算法、Des/DSA,椭圆曲线数字签名算法和有限自动机数字签名算法等。特殊数字签名有盲签名、代理签名、群签名、不可否认签名、公平盲签名、门限签名、具有消息恢复功能的签名等,它与具体应用环境密切相关。显然,数字签名的应用涉及到法律问题,美国联邦政府基于有限域上的离散对数问题制定了自己的数字签名标准(DSS)。
数字签名(Digital Signature)技术是不对称加密算法的典型应用。数字签名的应用过程是,数据源发送方使用自己的私钥对数据校验和或其他与数据内容有关的变量进行加密处理,完成对数据的合法“签名”,数据接收方则利用对方的公钥来解读收到的“数字签名”,并将解读结果用于对数据完整性的检验,以确认签名的合法性。数字签名技术是在网络系统虚拟环境中确认身份的重要技术,完全可以代替现实过程中的“亲笔签字”,在技术和法律上有保证。在公钥与私钥管理方面,数字签名应用与加密邮件PGP技术正好相反。在数字签名应用中,发送者的公钥可以很方便地得到,但他的私钥则需要严格保密。
数字签名主要的功能是:保证信息传输的完整性、发送者的身份认证、防止交易中的抵赖发生。
数字签名技术是将摘要信息用发送者的私钥加密,与原文一起传送给接收者。接收者只有用发送的公钥才能解密被加密的摘要信息,然后用HASH函数对收到的原文产生一个摘要信息,与解密的摘要信息对比。如果相同,则说明收到的信息是完整的,在传输过程中没有被修改,否则说明信息被修改过,因此数字签名能够验证信息的完整性。
数字签名是个加密的过程,数字签名验证是个解密的过程。
具有数字签名功能的个人安全邮件证书是用户证书的一种,是指单位用户收发电子邮件时采用证书机制保证安全所必须具备的证书。个人安全电子邮件证书是符合x509标准的数字安全证书,结合数字证书和S/MIME技术对普通电子邮件做加密和数字签名处理,确保电子邮件内容的安全性、机密性、发件人身份确认性和不可抵赖性。 具有数字签名功能的 个人安全邮件证书中包含证书持有人的电子邮件地址、证书持有人的公钥、颁发者(河南CA)以及颁发者对该证书的签名。个人安全邮件证书功能的实现决定于用户使用的邮件系统是否支持相应功能。目前, MS Outlook 、Outlook Express、Foxmail及河南CA安全电子邮件系统均支持相应功能。使用个人安全邮件证书可以收发加密和数字签名邮件,保证电子邮件传输中的机密性、完整性和不可否认性,确保电子邮件通信各方身份的真实性
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)