先用发送方私钥加密再用接收方公钥加密,然后如何解密-
- 时间:
- 浏览:0
- 来源:佳苑鑫源网络科技
大家好,今天我想和大家谈谈我对“先用发送方私钥加密再用接收方公钥加密,然后如何解密?”的一些看法。为了让大家更好地理解这个问题,我将相关资料进行了分类,现在就让我们一起来探讨吧。
文章目录列表:
先用发送方私钥加密再用接收方公钥加密,然后如何解密?
2.椭圆曲线密码学
加密算法
加密技术是对信息进行编码和解码的技术,编码是把原来可读信息(又称明文)译成代码形式(又称密文),其逆过程就是解码(解密)。加密技术的要点是加密算法,加密算法可以分为对称加密、不对称加密和不可逆加密三类算法。
对称加密算法 对称加密算法是应用较早的加密算法,技术成熟。在对称加密算法中,数据发信方将明文(原始数据)和加密密钥一起经过特殊加密算法处理后,使其变成复杂的加密密文发送出去。收信方收到密文后,若想解读原文,则需要使用加密用过的密钥及相同算法的逆算法对密文进行解密,才能使其恢复成可读明文。在对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密,这就要求解密方事先必须知道加密密钥。对称加密算法的特点是算法公开、计算量小、加密速度快、加密效率高。不足之处是,交易双方都使用同样钥匙,安全性得不到保证。此外,每对用户每次使用对称加密算法时,都需要使用其他人不知道的惟一钥匙,这会使得发收信双方所拥有的钥匙数量成几何级数增长,密钥管理成为用户的负担。对称加密算法在分布式网络系统上使用较为困难,主要是因为密钥管理困难,使用成本较高。在计算机专网系统中广泛使用的对称加密算法有DES和IDEA等。美国 标准局倡导的AES即将作为新标准取代DES。
不对称加密算法不对称加密算法使用两把完全不同但又是完全匹配的一对钥匙—公钥和私钥。在使用不对称加密算法加密文件时,只有使用匹配的一对公钥和私钥,才能完成对明文的加密和解密过程。加密明文时采用公钥加密,解密密文时使用私钥才能完成,而且发信方(加密者)知道收信方的公钥,只有收信方(解密者)才是 知道自己私钥的人。不对称加密算法的基本原理是,如果发信方想发送只有收信方才能解读的加密信息,发信方必须首先知道收信方的公钥,然后利用收信方的公钥来加密原文;收信方收到加密密文后,使用自己的私钥才能解密密文。显然,采用不对称加密算法,收发信双方在通信之前,收信方必须将自己早已随机生成的公钥送给发信方,而自己保留私钥。由于不对称算法拥有两个密钥,因而特别适用于分布式系统中的数据加密。广泛应用的不对称加密算法有RSA算法和美国 标准局提出的DSA。以不对称加密算法为基础的加密技术应用非常广泛。
不可逆加密算法 不可逆加密算法的特征是加密过程中不需要使用密钥,输入明文后由系统直接经过加密算法处理成密文,这种加密后的数据是无法被解密的,只有重新输入明文,并再次经过同样不可逆的加密算法处理,得到相同的加密密文并被系统重新识别后,才能真正解密。显然,在这类加密过程中,加密是自己,解密还得是自己,而所谓解密,实际上就是重新加一次密,所应用的“密码”也就是输入的明文。不可逆加密算法不存在密钥保管和分发问题,非常适合在分布式网络系统上使用,但因加密计算复杂,工作量相当繁重,通常只在数据量有限的情形下使用,如广泛应用在计算机系统中的口令加密,利用的就是不可逆加密算法。近年来,随着计算机系统性能的不断提高,不可逆加密的应用领域正在逐渐增大。在计算机网络中应用较多不可逆加密算法的有RSA公司发明的MD5算法和由美国 标准局建议的不可逆加密标准SHS(Secure Hash Standard:安全杂乱信息标准)等。
加密技术
加密算法是加密技术的基础,任何一种成熟的加密技术都是建立多种加密算法组合,或者加密算法和其他应用软件有机结合的基础之上的。下面我们介绍几种在计算机网络应用领域广泛应用的加密技术。
非否认(Non-repudiation)技术 该技术的核心是不对称加密算法的公钥技术,通过产生一个与用户认证数据有关的数字签名来完成。当用户执行某一交易时,这种签名能够保证用户今后无法否认该交易发生的事实。由于非否认技术的操作过程简单,而且直接包含在用户的某类正常的电子交易中,因而成为当前用户进行电子商务、取得商务信任的重要保证。
PGP(Pretty Good Privacy)技术 PGP技术是一个基于不对称加密算法RSA公钥体系的邮件加密技术,也是一种操作简单、使用方便、普及程度较高的加密软件。PGP技术不但可以对电子邮件加密,防止非授权者阅读信件;还能对电子邮件附加数字签名,使收信人能明确了解发信人的真实身份;也可以在不需要通过任何保密渠道传递密钥的情况下,使人们安全地进行保密通信。PGP技术创造性地把RSA不对称加密算法的方便性和传统加密体系结合起来,在数字签名和密钥认证管理机制方面采用了无缝结合的巧妙设计,使其几乎成为最为流行的公钥加密软件包。
数字签名(Digital Signature)技术 数字签名技术是不对称加密算法的典型应用。数字签名的应用过程是,数据源发送方使用自己的私钥对数据校验和或其他与数据内容有关的变量进行加密处理,完成对数据的合法“签名”,数据接收方则利用对方的公钥来解读收到的“数字签名”,并将解读结果用于对数据完整性的检验,以确认签名的合法性。数字签名技术是在网络系统虚拟环境中确认身份的重要技术,完全可以代替现实过程中的“亲笔签字”,在技术和法律上有保证。在公钥与私钥管理方面,数字签名应用与加密邮件PGP技术正好相反。在数字签名应用中,发送者的公钥可以很方便地得到,但他的私钥则需要严格保密。
PKI(Public Key Infrastructure)技术 PKI技术是一种以不对称加密技术为核心、可以为网络提供安全服务的公钥基础设施。PKI技术最初主要应用在Internet环境中,为复杂的互联网系统提供 的身份认证、数据加密和完整性保障机制。由于PKI技术在网络安全领域所表现出的巨大优势,因而受到银行、证券、政府等核心应用系统的青睐。PKI技术既是信息安全技术的核心,也是电子商务的关键和基础技术。由于通过网络进行的电子商务、电子政务等活动缺少物理接触,因而使得利用电子方式验证信任关系变得至关重要,PKI技术恰好能够有效解决电子商务应用中的机密性、真实性、完整性、不可否认性和存取控制等安全问题。一个实用的PKI体系还必须充分考虑互操作性和可扩展性。PKI体系所包含的认证中心(CA)、注册中心(RA)、策略管理、密钥与 管理、密钥备份与恢复、撤销系统等功能模块应该有机地结合在一起。
加密的未来趋势
尽管双钥密码体制比单钥密码体制更为可靠,但由于计算过于复杂,双钥密码体制在进行大信息量通信时,加密速率仅为单钥体制的1/100,甚至是 1/1000。正是由于不同体制的加密算法各有所长,所以在今后相当长的一段时期内,各类加密体制将会共同发展。而在由IBM等公司于1996年联合推出的用于电子商务的协议标准SET(Secure Electronic Transaction)中和1992年由多国联合开发的PGP技术中,均采用了包含单钥密码、双钥密码、单向杂凑算法和随机数生成算法在内的混合密码系统的动向来看,这似乎从一个侧面展示了今后密码技术应用的未来。
在单钥密码领域,一次一密被认为是最为可靠的机制,但是由于流密码体制中的密钥流生成器在算法上未能突破有限循环,故一直未被广泛应用。如果找到一个在算法上接近无限循环的密钥流生成器,该体制将会有一个质的飞跃。近年来,混沌学理论的研究给在这一方向产生突破带来了曙光。此外,充满生气的量子密码被认为是一个潜在的发展方向,因为它是基于光学和量子力学理论的。该理论对于在光纤通信中加强信息安全、对付拥有量子计算能力的破译无疑是一种理想的解决方法。
由于电子商务等民用系统的应用需求,认证加密算法也将有较大发展。此外,在传统密码体制中,还将会产生类似于IDEA这样的新成员,新成员的一个主要特征就是在算法上有创新和突破,而不仅仅是对传统算法进行修正或改进。密码学是一个正在不断发展的年轻学科,任何未被认识的加/解密机制都有可能在其中占有一席之地。
目前,对信息系统或电子邮件的安全问题,还没有一个非常有效的解决方案,其主要原因是由于互联网固有的异构性,没有一个单一的信任机构可以满足互联网全程异构性的所有需要,也没有一个单一的协议能够适用于互联网全程异构性的所有情况。解决的办法只有依靠软件 了,即采用软件 来自动管理用户所持有的 (即用户所属的信任结构)以及用户所有的行为。每当用户要发送一则消息或一封电子邮件时, 就会自动与对方的 协商,找出一个共同信任的机构或一个通用协议来进行通信。在互联网环境中,下一代的安全信息系统会自动为用户发送加密邮件,同样当用户要向某人发送电子邮件时,用户的本地 首先将与对方的 交互,协商一个适合双方的认证机构。当然,电子邮件也需要不同的技术支持,因为电子邮件不是端到端的通信,而是通过多个中间机构把电子邮件分程传递到各自的通信机器上,最后到达目的地。
椭圆曲线密码学
(专业办学优势) ●智能信息处理
○主要研究内容:智能规划与自动推理、约束程序、智能决策支持系统等研究领域的科学研究与软件开发工作。
○主要成果:研究成果居国内 地位。有教师12人,其中教授(博士生导师)3人,两人获教育部“新世纪 人才支持计划”支持,不间断地承担过近20项 自然科学基金课题,在研 和省部级课题4项、横向软件开发项目4项。承担《人工智能原理》等研究生课程和《离散数学》等本科生课程,其中《离散数学》为 课程。
●软件形式化
○主要研究内容:软件形式化方法、语义网、程序分析技术、各种程序设计语言与实现技术、移动代码安全、并发语义、软件检查等。
○主要成果:承担并完成了 自然科学基金项目4项、教育部博士点基金1项、省部级项目2项、协作项目3项、省级校级教改项目3项、发表学术论文70余篇、编著学术著作13部。承担研究生课程《形式语义学》、《程序分析》,本科生课程《编译原理(双语)》、《高级语言程序设计》和《C#程序设计(双语)》。《编译原理(双语)》课程被评为吉林大学 课、吉林省 课程和教育部-微软 课程,获得三项省级奖励。由博士生导师张长海教授主讲的《高级语言程序设计》被评为 课。
●软件工程
○主要研究内容:组件技术和软件复用技术、基于软件体系结构的软件开发方法、软件维护和软件设计改进方法、软件演化方法和软件自动化技术、软件重构方法和技术、软件测试、面向方面的编程技术、基于移动 的软件开发方法、软件工程环境和软件开发辅助工具等。
○主要成果:研究组成员完成 重点攻关项目和 自然科学基金项目4项,在国内核心刊物或国际会议上发表论文50余篇。
●数据库与web智能
○主要研究内容:数据库理论、机器学习、数据挖掘与Web挖掘、网络搜索引擎。
○主要成果:完成 自然科学基金项目“基于Petri网的主动型面向对象数据库管理系统(1997-1999)”、吉林省科技发展计划项目“第二代网络搜索引擎的研制(2000-2003)”。承担 自然科学基金项目“具有增量性质的移动式主题爬行系统(2004-2006)”。在国际会议和《软件学报》等核心刊物上发表论文40余篇,其中被三大检索结构检索论文9篇,出版教材和学术专著4部。获得 和部委级奖励5项。
●数据库与智能网络
○主要研究内容:面向高维、海量数据的智能处理理论,数据挖掘基础理论与应用,Internet组播路由技术,并行程序设计,并行工程与工程数据库系统,计算机支持协同工作与设计。
○主要成果:承担 攻关项目2项, 863计划项目1项, 自然科学基金项目5项,省部级及其它科研项目几十项。获 科技进步二等奖1项,机械工业部科技进步一等奖1项,及多项省部级其它奖项。又在各种国内外刊物上发表数十篇的论文。 ●知识工程与 系统
○主要研究内容:不确定性推理方法与技术;多 系统协作技术;贝叶斯网推理和学习;异构知识表示的相互转换;知识库求精和知识库一致性检测等。
○主要成果:承担多项 863项目,利用包括 系统等多种技术开展面向农业信息化领域应用研究,开发了二十多个农业实用ES,并持续进行了大规模推广应用。97至04年,增收节支约22.3亿元。研究工作先后获吉林省科技进步一等奖和二等奖各1项、长春市科技进步一等奖1项。
●DAI、MAS、智能Agent和移动Agent
○主要研究内容:DAI与多Agent系统主要包括:复杂任务求解方法;Agent感知方法;Agent规划方法;DAI规划识别、生成、优化方法;Agent派生与回收、动态组装方法;动态DAI体系结构模型。面向Agent程序设计主要包括:智能Agent体系结构、逻辑理论、程序设计方法和语言及多Agent协商方法。移动Agent技术主要包括: 移动Agent系统体系结构、理论模型、迁移规划、通信和安全。
○主要成果:自1984年开始,完成 863和自然科学基金项目10项,发表论文50余篇。提出了基于BDI组件式智能Agent模板结构模型。提出了扩展合同网协商模型ECNNM。提出了支持Agent通信和协商有分支时序结构的一阶多模态逻辑。提出基于模板模型、扩展BDI逻辑、支持多Agent协商模型ECNNM的Agent程序设计语言NOAPL。基于上述成果研制了“开放、自适应、分布式多Agent协作系统工具COT”,用COT开发了多ES石油测井解释系统。还提出了移动Agent系统模板结构、基于环境演算的移动Agent系统形式化模型、迁移规划模型、可靠性通信模型和通信性能优化模型,面向网络管理的安全模型和基于博弈论的电子商务虚拟市场模型,并将移动Agent技术应用于网络管理和电子商务领域。
●时空信息表示和推理
○主要研究内容:时间和空间是人类永恒的话题,时空推理在人工智能等领域中占据重要地位。该院的时空推理研究始自1996年,覆盖了很多研究方面,并应用到地理信息系统、 农业等领域。研究内容主要包括:时空逻辑、时空代数、时空本体、时空数据挖掘、时空数据库、移动对象数据库等。获得了基金资助包括自然科学基金重大项目子课题1项、自然科学基金面上项目3项,省科技发展计划项目4项等。
○主要成果:对区域连接演算进行了混合维扩展,并应用于定性空间遮蔽关系表示;提出了处理时空信息的不确定性、模糊性和粒度模型,并分别应用于GIS、空间数据挖掘和时空数据库;处理综合时空信息的模型;定性空间查询语言和时空查询语言;改进的公路网移动对象模型;栅格数据模型下模糊区域的拓扑关系分析。基于上述研究,独立开发了支持时空推理的组件式地理信息系统CGIS和多个农业应用系统,使测土施肥真正成为可能。共发表核心期刊以上论文60余篇,SCI索引7篇,EI索引15篇。
●基于粗糙集和格机的数据挖掘
○主要研究内容:传统的数据分析手段难以应付越来越多的数据。为使人们能理解并有效地使用这些数据,以数据挖掘为研究背景,该院展开了以基于格机和粗糙集的数据挖掘理论与方法为主的研究,主要研究内容包括:对当时的格机理论、方法进行深入研究,重点研究格机的标注与其分类特性;研究增量式格机的标注与其分类特性,给出增量式格机的严格形式化定义;面向文本等非结构化数据,研究基于格机理论的数据约简方法和分类方法。研究粗糙集理论公理组的极小化问题;研究基于粗糙集理论的属性约简方法和数据约简方法;研究基于格机理论和粗糙集理论的数据挖掘方法。
○主要成果:学院在基于格机和粗糙集的数据挖掘理论与方法上取得了一定的成果。扩展了格机的等标注的思想,提出了交集标注的概念,用以解决多类别决策问题;将上述思想并应用于文本数据的多类别决策问题,取得了较好的效果;去除了粗糙集公理组中隐含着的冗余性, 得到了更为精练的两组粗糙集公理, 并证明了它们的可靠性; 定义了极小粗糙集公理组概念, 并证明了给出的两组粗集公理是极小的;在基于粗糙集理论的属性约简和数据约简方面,提出了基于信息熵和遗传算法的属性约简算法、基于特征矩阵的最小约简算法、增量式规则提取方法。
●计算智能
○主要研究内容:计算智能所涉足的神经网络、模糊系统和进化计算相关理论、模型和算法,以及计算智能方法在机器味觉和嗅觉、图象处理、商务智能、智能交通、现代物流、生物信息学和生物识别技术等领域的应用研究。
○主要成果:承担 自然科学基金重点项目1项、 自然科学基金面上项目2项、十五攻关项目1项、“863”项目1项、省部级项目7项和多项横向科研项目,获得省部级科技进步二等奖2项、三等奖3项:发表学术论文100多篇;其中被SCI收录20多篇,SCI引用26次,被EI收录40多篇,被国内核心刊物引用116次;出版学术著作1部,获得 发明 1项,获得软件版权4项。
●计算机图形学与数字媒体
○主要研究内容:计算机绘画与动画,计算机动漫技术与应用,基于点的造型与绘制、几何造型中曲面拼接的基础理论和算法、分形的计算机生成,基于内容的多媒体检索,眼底三维图象组建和医学图像处理,图象超分辨率和图象配准,流媒体压缩、编码、解码及 缓存技术,三维模型检索系统中利用聚类分析方法 系统的开发,基于聚类分析的三维模型数据库分析与组织等。
○主要成果:自八十年代初开始开展计算机图形学与数字媒体方面的教学、科研和开发工作,多年来承担与完成 自然科学基金4项,省部级项目2项,其他各类科研项目10余项。发表学术论文200余篇,其中被三大检索收录50余篇。
●计算机图像处理与虚拟现实
○主要研究内容:计算机图像处理的理论与应用研究,主要有数字水印技术、图像检索技术、医学图像处理、基于图像的绘制技术,基于图像的3维重建技术等;虚拟现实技术和应用研究,主要有虚拟环境的模拟、自然景物的模拟、碰撞检测技术等;模式识别和机器视觉的研究,基于约束的几何模型研究,多媒体技术研究。
○主要成果:承担 自然科学基金项目2项、省部级项目4项及多项横向科研项目。发表学术论文130余篇,其中被SCI收录30余篇,EI收录25篇,ISTP 收录 30多篇。出版教材3部。
●智能工程
○主要研究内容:人工神经网络、模糊系统和进化计算相关理论、模型、算法,DNA计算,量子计算,人工免疫算法,群体优化算法,机器学习算法,基于计算智能的生物信息学中的相关理论与算法,蛋白质结构预测方法,基因表达数据分析,药物成份分析,以及智能计算方法在组合优化、数据挖掘、超声电机控制、微机电系统建模、金融时间序列预测、模式识别等领域的应用。
○主要成果:自2001年起承担与完成 自然科学基金项目2项、省部级项目2项,获省部级科技进步奖4项。发表学术论文100余篇,其中被SCI收录40余篇,EI收录50余篇。
●移动通信与网络系统
○主要研究内容:移动IP技术、移动计算网络理论、基于移动计算网络的各种应用,包括移动IP网络中的QoS管理、流量工程、基于策略的网络管理、安全理论与技术、入侵检测系统、防火墙技术以及网络体系结构、通信协议与接口、网络设备、网络通信软件和网络协议的实现。
○主要成果:完成 科技攻关项目1项,863项目1项, 自然科学基金项目3项,省部级项目12项以及多项工业界委托项目,获省部级奖3次。主持 发改委 及产业化项目1项, 自然科学基金面上项目1项和振兴东北老工业基地科技攻关项目1项。在国内外 刊物上发表论文60余篇,出版教材(主编)8本。
●智能控制与嵌入式系统
○主要研究内容:工业控制计算机技术、嵌入式计算机系统、网络化嵌入式系统与安全、网络化控制技术与实时信号传输、嵌入式系统软硬件协同设计、故障自诊断与容错技术、普适计算、智能控制、光电混合信息处理技术,以及这些技术在汽车电子控制与信息系统、智能交通系统中的应用。
○主要成果:完成863项目、“攻关”项目等3项, 自然科学基金项目2项,省部级项目8项,获省部级科学技术进步奖4项,发表论文100余篇,出版教材8部。●计算机空间信息处理技术
○主要研究内容:空间数据的采集、量测、分析、存贮、管理、显示、传播和应用方面的集成的信息科学与技术。重点研究油田多维信息和数字地球信息的大容量数据存储技术、多媒体数据库技术、压缩传输技术、智能化搜索算法、数据仓库与数据挖掘、空间数据的建模和模拟,3S集成理论与方法,科学计算可视化和虚拟现实技术,人机交互技术等。
○主要成果:获 863项目1项, 自然科学基金项目2项,省部级项目16项,获省部级科技进步二等奖2项,三等奖8项,发表论文60余篇,出版专著3部。 ●分布式系统与网络软件
○主要研究内容:机群操作系统及在分布并行计算和服务器群方面的应用;网格计算;网络安全;因特网技术及在IP电话、***、电子商务/政务等方面的应用。
○主要成果:完成 科技攻关项目5项,863项目3项, 自然科学基金项目6项, 教委博士点基金项目2项,吉林省自然科学基金项目3项以及若干工业界委托项目。在研项目有 自然科学基金重大项目1项, 自然科学基金面上项目1项,吉林省杰出青年项目1项以及国际合作项目1项。专著9部,在国内外 刊物上发表论文100多篇。获省部级科技进步奖8次,包括原电子部特等奖1次、原 教委二等奖1次和三等奖3次, 吉林省二等奖1次,吉林省三等奖2次。机群操作系统的研究处于国内 、国际先进水平,因特网研究处于国内先进水平。
●信息安全
是中国最早进行PKI技术研究和开发的单位之一,在PKI技术方面的研究工作居国内 行列。
○主要研究内容:基于加密技术和黑客技术的信息与网络安全的研究;基于公共密钥和专用密钥的加密技术。
○主要成果:承担 、省部级项目20余项,发表学术文章50余篇。根据中国电子商务协会的统计数据,吉林大学研制的“数字 认证系统SRQ05”在国内占有率已经达到70%以上。承建的“福建省数字 认证系统暨SRQ05电子 认证系统”获得 密码科技进步一等奖。
●计算机支持协同工作技术
○主要研究内容:基于网络的分布式协作系统的原理与技术,典型应用包括基于工作流的协作工作框架、通信网络网络性能协同监测系统及协作作战指挥系统等。
○主要成果: 科技攻关项目1项, 863项目1项(子课题), 科技成果推广项目1项,国防科工委项目1项,省重大项目1项,省重点项目1项,省部级项目6项,企业联合项目20余项。在国内外发表论文36篇,EI检索5篇。撰写教材和专著7部。获 1项。
●通信软件与协议工程
○主要研究内容:电信通信网由封闭式集中控制环境转向开放式分布控制环境后的网络智能理论和软件技术;电信通信网环境中的感知通信、自适应业务提供、可重配置网络和可视化;网络管理智能化;以IP为核心的下一代网络(NGN)结构、模型和关键技术等。
○主要成果:完成省部级以上纵向课题10余项及多项横向课题。其中部级重大项目2项,教育部博士点基金项目1项;累计完成科研经费近千万元;获省级教学成果奖二等奖、省级教学软件一等奖和吉大教学成果奖一等奖各一项。在国内外核心刊物上发表学术论文70余篇,著书2部。其中SCI检索论文5篇、EI检索论文10篇、ISTP论文2篇。 ●生物信息技术
○主要研究内容:计算生物学与生物特征识别,主要包括基于计算智能的生物信息学中的相关理论与算法,生物数据中的数据挖掘算法,蛋白质结构预测方法,基因表达数据分析,药物成份分析,以及基于小波理论、粗集理论、模糊神经网络和具有混合进化机制的生物特征识别方法与应用等。
○主要成果:承担与完成 自然科学基金项目3项、省部级项目4项,获省部级科技进步奖5项。发表学术论文90余篇,其中被SCI收录30余篇,EI收录50余篇。
●生物信息识别与信息安全技术
○主要研究内容:提出了一些基于虹膜、指纹、人像生物特征识别的相关理论、技术、算法与系统,以及基于生物特征与水印相融合的信息安全技术。
○主要成果:自2001年起,获得省部级科研项目4项,获省部级科技进步一等奖1项,获 3项。发表论文50多篇,其中,SCI、EI、ISTP检索25篇。
Elliptic-curve cryptography ( ECC ) is an roach to public-key cryptography based on the algebraic structure of elliptic curves over finite fields . ECC requires smaller keys compared to non-ECC cryptography (based on plain Galois fields ) to provide equivalent security
参考文章
[TOC]
数学上,椭圆曲线为一代数曲线,形如
$$y^2=x^3 + ax + b$$
并且该曲线无奇点(尖点或自相交),判别式$\Delta=-16(4a 3+27b 2)$不为0.
在椭圆曲线中添加无穷远点 O ,由于曲线关于y轴对称,假设P为曲线上一点,则P关于y轴的对称点定义为-P。无穷远点的对称点为其自身,因此 O=-O
定义 + 运算,假设P,Q,-R在曲线上,则 P + Q=-R -> P + Q + R=O 其中-R与P,Q共线。
定义数乘 *
$$
nP=\underbrace{P + P + \cdots + P}_{n\ \text{times}}
$$
$$y^2=x^3 + ax+ b \bmod{p}$$
下图是曲线$y^2=x^3 -7x+10\bmod{p}$,其中p为19,97,127,487时的点集。可看到点集关于y=p/2对称。
定义直线$ax+bx+c \equiv 0 \bmod{p}$,既等间距的直线族。
若点集中P,Q,-R三点在同一直线上,则 P+Q+R=O
$(9 9^{-1})\ mod\ 23=1=(9 18)mod\ 23$
$P=(x_p,y_p)$
$Q=(x_q,y_q)$
$R=(x_r,y_r)$
$$P+Q=-R$$
公式
$$
x_r=(m^2-x_p-x_q) \bmod{p}
$$
$$
y_r=[y_p+m(x_r-x_p)]\bmod{p}
$$
若$P \neq Q $则$m=(y_p - y_q)(x_p-x_q)^{-1}\bmod{p}$
若$P=Q$则$m=(3x_p 2+a)(2y_p) {-1}\bmod{p}$
点集中点的数量称为椭圆曲线的阶数,有快速算法 Schoof's algorithm
$$nP=\underbrace{P + P + \cdots + P}_{n\ \text{times}}$$
例如曲线$y^2 \equiv x^3 + 2x + 3 \bmod{97}$的点$P=(3,6)$
通过上边例子可以看出P与数乘,最终只有有限的循环出现的几个结果$kP=(k\bmod{5})P$,这五点在加法运算下封闭。这五点构成了 循环子群 ,其中P称为 generator or base point of the cyclic subgroup
Cyclic subgroups are the foundati of ECC and other cryptosystems.
the order of is the smallest positive integer $n$ such that $nP=0$ . In fact, if you look at the previous example, our subgroup contained five points, and we had $5P=0$.
The order of $P$ is linked to the order of the elliptic curve by Lagrange's theorem , which states that the order of a subgroup is a divisor of the order of the parent group .
In other words, if an elliptic curve contains $N$ points and one of its subgroups contains $n$ points, then $n$ is a divisor of $N$, so $N\ mod\ n \equiv 0$
For example, the curve $y^2=x^3-x+3$ over the field $F_{37}$ has order $N=42$ . Its subgroups may have order 1,2,3,6,7,14,21 and 42 . If we try $P=(2,3)$ can see that $1P\neq0,2P\neq0,3P\neq0,6P\neq0,7P=0,$ so the order of is 7.
对于ECC算法,我们希望子群阶数足够高。所以通常我们选择一条椭圆曲线,计算其阶数,并选择一个较大的因子作为子群的阶数,最终找到一个基点。
在Lagrange's theorem中令$h=N/n$,称$h$为 cofactor of the subgroup 余因子
由于$nP=0$所以$h(nP)=0=n(hP)$
现在考虑$n$是素数,令$G=hP$,则生成一个以$G$为基点的n阶子群
现已知点PQ在椭圆曲线上,如何确定整数$k$使得$Q=kP$ ?这个问题被称为椭圆曲线的离散对数问题,这个问题被认为是一个困难的问题,目前还没有多项式时间解决方法。
在密码学中Digital Signature Algorithm (DSA), the Diffie-Hellman key exchange (D-H) and the ElGamal algorithm都与该问题有关。
ECC问题相比其它几个问题更难以解决。
Our elliptic curve algorithms will work in a cyclic subgroup of an elliptic curve over a finite field.
得到算法六元组$(p,a,b,G,n,h)$
在前面提到离散对数问题非常困难,但也不是所有的都困难,有些类型的椭圆曲线就非常脆弱,有非常快速的方法解决,例如$p=hn$时就有多项式时间解决的方法。
怎样保证曲线是安全的呢?
为了解决这个问题,我们需要再附加一个参数 seed $S$,这是一个随机数涌来生成参数a和b,或者基点G再或者所有的参数。这些参数通过hash函数生成,hash容易计算但是难以逆推。
椭圆曲线的生成通过随机数生成,这使得曲线足够的随机。
如果我们知道$d$和$G$,计算$H$非常容易。但是如果我们仅知道$H$和$G$,计算$d$将非常困难,因为这是离散对数问题。
ECDH是 Diffie-Hellman algorithm 的一种变体,更像密钥交换协商而不是加密。应用场景:双方需要安全的交换信息,即使第三方拦截到也无法破译。这是TSL背后的一个原则。
$$S=d_AH_B=d_A(d_BG)=d_B(d_AG)=d_BH_A$$
Alice使用私钥$d_A$签名文件,Bob使用Alice的共钥$H_A$来确认。
ECDSA作用在消息的hash上,而不是直接作用在消息上。Hash函数可以选择密码学安全的。hash需要被截断为和子群阶数$n$所占bit一样的长度,例如前边n是256bit,那么hash也需要是256bit,截断后的hash定义为整数$z$
$(r,s)$ 就是签名。
Alice对hash $z$ 使用私钥 $d_A$ 和随机数 $j$签名。Bob使用Alice的共钥 $H_A$验证。
验证签名,验证签名需要Alice的共钥 $H_A$ 截断的hash $z$,以及签名 $(r,s)$.
如果 $r=x_P\bmod{n}$则是合法的
$$
\begin{array}{rl}
P &=u_1 G + u_2 H_A \
&=u_1 G + u_2 d_A G \
&=(u_1 + u_2 d_A) G
\end{array}
$$
再带入 $u_1,u_2$的定义
$$
\begin{array}{rl}
P &=(u_1 + u_2 d_A) G \
&=(s^{-1} z + s^{-1} r d_A) G \
&=s^{-1} (z + r d_A) G
\end{array}
$$
这里省略了$mod\ n$,因为在子群阶数为$n$,所以相当于自动对n取模。由$s=k^{-1} (z + rd_A) \bmod{n}$推出$k=s^{-1} (z + rd_A)\bmod{n}$.
$$
\begin{array}{rl}
P &=s^{-1} (z + r d_A) G \
&=k G
\end{array}
$$
这与签名算法第二步生成的是同一个点P,接下来验证是否满足生成算法第三步即可验证签名。
当使用ECDSA进行数字签名时,k要相当饱满。如果每次签名都使用相同的k,或者k是可预测的,那么就被找出私钥。 This is the kind of mistake made by Sony a few years ago. ,PS3只能运行Sony使用ECDSA签名过的程序,但问题是Sony使用了固定的k
这样可以轻松的找出Sony的私钥$d_S$,只要买两份签名的游戏,取出他们的hash ($z_1 z_2$),和两份签名$(r_1,s_1),(r_2,s_2)$,以及椭圆参数。
$$
s=k^{-1}(z+rd_S)\bmod{n}\Rightarrow d_S=r^{-1}(sk-z)\bmod{n}
$$
我们认为离散对数问题是非常困难的,但是并没有数学上的证明。目前解决离散对数问题由三种方法,假设$Q=xP$,求x
随意假定$x=am+b$
$$
\begin{array}{rl}
Q &=xP \
Q &=(am + b) P \
Q &=am P + b P \
Q - am P &=b P
\end{array}
$$
选择一条标准曲线 prime192v1 ,$n$=0xffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831,$\sqrt{n} \ rox 7.9\cdot10 {28}$,每个点需要32Byte存储,大概总共需要$2.5\cdot10 {30}$byte,这比全 存储还多。而且 prime192v1 还是一个低阶曲线。
使用量子算法可让复杂度降低$O((\log{n})^3)$
$y 2+xy=x 3+ax^2+1$ a为0或1,拥有$2^m$点,其中m为素数
$x 2+xy=x 3+x^2+b$ b是随机生成的整数
这两条曲线计算较快。
好了,今天关于“先用发送方私钥加密再用接收方公钥加密,然后如何解密?”的话题就到这里了。希望大家通过我的介绍对“先用发送方私钥加密再用接收方公钥加密,然后如何解密?”有更全面、深入的认识,并且能够在今后的学习中更好地运用所学知识。
猜你喜欢