公钥密码学与RSA.

Slides:



Advertisements
Similar presentations
高考短文改错专题 张柱平. 高考短文改错专题 一. 对短文改错的要求 高考短文改错的目的在于测试考生判断发现, 纠正语篇中 语言使用错误的能力, 以及考察考生在语篇中综合运用英 语知识的能力. 二. 高考短文改错的命题特点 高考短文改错题的形式有说明文. 短文故事. 书信等, 具有很 强的实用性.
Advertisements

第七课:电脑和网络. 生词 上网 vs. 网上 我上网看天气预报。 今天早上看了网上的天气预报。 正式 zhèngshì (报告,会议,纪录) 他被这所学校正式录取 大桥已经落成,日内就可以正式通车 落伍 luòw ǔ 迟到 chídào 他怕迟到,六点就起床了.
高等动物的 个体发育 作者:游隆信 松阳一中 二零零二年三月 被子植物子房的结构 及双受精过程 胚珠的结构 花粉管 精 子 卵细胞 极 核 子房壁 珠 被 珠 孔.
3.1 信息加密技术概述 3.2 密码技术 3.3 密钥管理 3.4 网络加密技术 习题与思考题 参考文献 实训指南
Course 1 演算法: 效率、分析與量級 Algorithms: Efficiency, Analysis, and Order
第6章: 完整性与安全性 域约束 参照完整性 断言 触发器 安全性 授权 SQL中的授权.
第5章 电子商务安全 学习目标: 1)了解电子商务对安全的基本需求。 2)理解防火墙的功能与技术。 3)掌握数据加密原理与技术。
質數的應用 – RSA加密演算法 國立中央大學 資工系 江振瑞.
Chapter 1: 概論 1.1 密碼學術語簡介及假設
第三章 函数 函数是数学中的一个重要而基本的概念; 在集合和关系基础上引入函数;
网络安全协议 Network Security Protocols
计算机网络 第 7 章 计算机网络的安全.
06資訊安全-加解密.
數論 數論是一個歷史悠久的數學分支,它是研究整數的性質及關係的一門學問。數學一直被認為是「科學之皇后」,而數論則更被尊為「數學之皇后」。
密码学基础 电子科技大学•计算机学院.
電子戶籍謄本申辦及驗證實務作業與問題討論
計算機概論 蘇俊銘 (Jun Ming Su) 資料加密技術簡介 計算機概論 蘇俊銘 (Jun Ming Su)
计算机应用专业系列教材 计算机网络.
公開鑰匙加密演算法 密碼學大革命 public key所想要解決的問題 public key密碼系統特性
XI. Hilbert Huang Transform (HHT)
Euler’s method of construction of the Exponential function
RSA-256bit Digital Circuit Lab TA: Po-Chen Wu.
Population proportion and sample proportion
密碼學簡介與簡單生活應用 Introduction to Cryptography & Simple Applications in Life 2010 Spring ADSP 05/07.
資訊安全-資料加解密 主講:陳建民.
RSA Cryptosystem Theorem 1.3: For n = p * q p,q 均是質數
網路與多媒體實驗 第一組報告 B 鄧鎮海 B 葉穎達
模式识别 Pattern Recognition
優質教育基金研究計劃研討會: 經驗分享 - 透過Web 2.0推動高小程度 探究式專題研習的協作教學模式
Differential Equations (DE)
二、現代的加解密法:RSA 非對稱式密碼系統的一種。
Chapter 4 歸納(Induction)與遞迴(Recursion)
第10章 网络安全 本章内容 网络安全的基本概念 信息安全技术 防火墙技术 网络病毒.
第三章 公钥基础设施PKI 本章学习重点掌握内容: 密码学基本术语 密码体制分类 私钥密码体制的主要特点 公钥密码体制的主要特点
Module 2:電子商務之安全.
CH19資訊安全 認識資訊安全與其重要性 了解傳統與公開金鑰密碼系統, 以及基本的安全性觀念 了解訊息鑑別與雜湊函數 了解數位簽章法
資電學院 計算機概論 F7810 第十七章 資訊安全 陳邦治編著 旗標出版社.
附錄 密碼學基本觀.
基礎密碼學 非對稱式金鑰加密法 樹德科技大學 資訊工程系 林峻立 助理教授.
主讲人: 吕敏 { } Spring 2016,USTC 算法基础 主讲人: 吕敏 { } Spring 2016,USTC.
Euler(歐拉) Euler(1707~1783)生於 Basel(巴塞爾) ,卒於Saint Petersburg(聖彼得堡)。瑞士數學家 。 Euler 生於公元1707年4月15日,但隨即其家庭就搬到 Basel 近郊的 Riehen。 Euler 的父親 Paul Euler 是一名加爾文教派的教師.
第三章 數據保密系統.
第十二讲 数字签名算法 郑东 上海交通大学计算机科学与工程系.
李开祥 郭雪丽 马高峰 杨洋 孙凤英 陈静 Copyright © 2007 西安交通大学电子商务系
4-5 数论基础.
錢買不到的禮物 自動換頁 音樂:海莉·衛斯頓 演唱<Nada Sousou> 日本電影「淚光閃閃」主題曲英文版
感 恩 祭 麥子不死空自留 四旬期第五主日 感恩是基督徒生命的主旋律或基本調子 我們要學會:全犧牲,真愛人,常喜樂 主 題
為何電子商務的安全性令人擔憂? 電子商務資訊安全 實體商務也擔心安全-但數位化的偽造數量會更多更快
二、雅思学术类阅读题型 10种题型 5种大题型+5种小题型.
公開金鑰密碼系統 (Public-Key Cryptosystems)
Revolver.
RSA and Rabin.
中国科学技术大学计算机系 陈香兰 2013Fall 第七讲 存储器管理 中国科学技术大学计算机系 陈香兰 2013Fall.
True friendship is like sound health;
DES算法.
计算机问题求解 – 论题 算法方法 2016年11月28日.
應用加密技術 A 譚惠心 指導教授:梁明章教授.
所以我們需要     密碼學…. 每個人都有秘密….. 安俐的體重.
浅析云计算中的密码技术 马春光 哈尔滨工程大学 教授、博导
高考应试作文写作训练 5. 正反观点对比.
Revolver.
Q & A.
新北市海山高中數理專班 楊南屏(輔仁大學數學系) 100年12月27日
名词从句(2).
Hashing Michael Tsai 2017/4/25.
_14RSA加密的基本原理 本节课讲师——void* 视频提供:昆山爱达人信息技术有限公司 官网地址:
為何電子商務的安全性令人擔憂? 第二節 電子商務資訊安全 實體商務也擔心安全-but數位化的偽造數量會很多 網際網路是互聯的(匿名與距離性)
錢買不到的禮物 自動換頁 音樂:海莉·衛斯頓 演唱<Nada Sousou> 日本電影「淚光閃閃」主題曲英文版
Computer Security and Cryptography
Website: 第1章 密码学概论 Website: 年10月27日.
Presentation transcript:

公钥密码学与RSA

对称密码体制的缺陷

公钥密码学 是密码学一次伟大的革命 使用两个密钥:公密钥、私密钥 加解密的非对称性 公钥加密算法是基于数学函数而不是对位的形式的简单操作。 1976年,Diffie和Hellman 在“密码学新方向”一文中提出 使用两个密钥:公密钥、私密钥 加解密的非对称性 公钥加密算法是基于数学函数而不是对位的形式的简单操作。 是对对称密码的重要补充 公钥加密一般用于消息认证和密钥分配。

公钥密码学解决的基本问题 密钥交换 对称密码进行密钥交换的要求: 已经共享一个密钥 利用密钥分配中心 数字签名 与传统的签名比较

公钥密码体制 重要特点 六个组成部分: 仅根据密码算法和加密密钥来推导解密密钥在计算上不可行 两个密钥中的任何一个都可用来加密,另一个用来解密。 六个组成部分: 明文、密文;公钥、私钥; 加密、解密算法

公钥密码体制

公钥密码体制的加密功能 A向B发消息X, B的公钥为KUb,私钥为KRb 加密 Y = EKUb(X) 解密 X = DKRb(Y)

公钥密码体制的加密

公钥密码体制的认证 A向B发送消息X A的公钥为KUa,私钥为KRa “加密”: Y = EKRa(X) (数字签名) “解密”: X = DKUa(Y) 注意:不能保证消息的保密性

具有保密与认证的公钥体制

对称密码 公钥密码 一般要求: 1、加密解密用相同的密钥 2、收发双方必须共享密钥 安全性要求: 1、密钥必须保密 2、没有密钥,解密不可行 对称密码 公钥密码 一般要求: 1、加密解密用相同的密钥 2、收发双方必须共享密钥 安全性要求: 1、密钥必须保密 2、没有密钥,解密不可行 3、知道算法和若干密文不足以确定密钥 1、加密解密算法相同,但使用不同的密钥 2、发送方拥有加密或解密密钥,而接收方拥有另一个密钥 1、两个密钥之一必须保密 2、无解密密钥,解密不可行 3、知道算法和其中一个密钥以及若干密文不能确定另一个密钥

关于公钥密码的几种误解 公钥密码比传统密码安全? 任何加密方案的安全性都依赖于密钥的长度和破解密码的计算工作。所以公钥加密不必常规加密更安全。用户只要保护他的私钥,接收的通信就是安全的 公钥密码是通用方法,所以传统密码已经过时? 传统密码用来加密大批量数据,公钥密钥用来进行密钥分配。

RSA算法 由MIT的 Rivest, Shamir & Adleman 在 1977 提出 最著名的且被广泛应用的公钥加密体制 明文、密文是0到n-1之间的整数,通常n的大小为1024位或309位十进制数 RSA is the best known, and by far the most widely used general public key encryption algorithm.

RSA算法描述 加密: C=Me mod N, where 0≤M<N 解密: M=Cd mod N 公钥为(e,N), 私钥为(d,N) 必须满足以下条件: 计算Me和Cd是比较容易的 由e和n确定d是不可行的

RSA 密钥产生过程 随机选择两个大素数 p, q 计算 N=p.q 选择 e使得1<e<ø(N),且gcd(e,ø(N))=1 e.d=1 mod ø(N) 且 0≤d≤N 公布公钥: KU={e,N} 保存私钥: KR={d,p,q} This key setup is done once (rarely) when a user establishes (or replaces) their public key. The exponent e is usually fairly small, just must be relatively prime to ø(N). Need to compute its inverse to find d. It is critically important that the private key KR={d,p,q} is kept secret, since if any part becomes known, the system can be broken. Note that different users will have different moduli N.

RSA 的使用 发送方要加密明文M: 接收方解密密文C: 注意:M必须比N小 获得接收方的公钥 KU={e,N} 计算: C=Me mod N, where 0≤M<N 接收方解密密文C: 使用自己的私钥 KR={d,N} 计算: M=Cd mod N 注意:M必须比N小

为什么RSA 可以加解密 因为 Euler 定理的一个推论: Mkø(n)+1 = M mod N RSA 中: N=p.q 选择 e & d 使得ed=1 mod ø(N) 因此 存在k使得e.d=1+k.ø(N) 因此 Cd = (Me)d = M1+k.ø(N) = M mod N Can show that RSA works as a direct consequence of Euler’s Theorem.

RSA Example Select primes: p=17 & q=11 Compute n = pq =17×11=187 Select e : gcd(e,160)=1; choose e=7 Determine d: de=1 mod 160 and d < 160 Value is d=23 since 23×7=161= 1×160+1 Publish public key KU={7,187} Keep secret private key KR={23,17,11} Here walk through example using “trivial” sized numbers. Selecting primes requires the use of primality tests. Finding d as inverse of e mod ø(n) requires use of Inverse algorithm (see Ch4)

RSA Example cont sample RSA encryption/decryption is: given message M = 88 (nb. 88<187) encryption: C = 887 mod 187 = 11 decryption: M = 1123 mod 187 = 88 Rather than having to laborious repeatedly multiply, can use the "square and multiply" algorithm with modulo reductions to implement all exponentiations quickly and efficiently (see next).

RSA 密钥生成 必须做 素数测试是重要的算法 由e求d要使用到扩展Euclid算法 确定两个大素数: p, q 选择e或者d,并计算d或者e 素数测试是重要的算法 由e求d要使用到扩展Euclid算法 Both the prime generation and the derivation of a suitable pair of inverse exponents may involve trying a number of alternatives, but theory shows the number is not large.

RSA 的安全性 三种攻击 RSA的方法: 强力穷举密钥:尝试所有可能的密钥。因此,e 和d 的位数越大,算法就越安全。然而,在密钥产生和加密解密中使用的计算都非常复杂,所以密钥越大,系统运行越慢。 时间攻击:依赖解密算法的运行时间

RSA 的安全性 数学攻击 :实质上是对两个素数乘积的分解. RSA的安全性是基于大整数素因子分解的困难性,而大整数因子分解问题是数学上的著名难题,至今没有有效的方法予以解决,因此可以确保RSA算法的安全性。现在,人们已能分解多个十进制位的大素数。因此,模数n 必须选大一些,因具体适用情况而定。目前,人们已能分解140多个十进制位的大素数,这就要求使用更长的密钥,速度更慢。

RSA 的安全性 例如:1977年RSA的三个发明者邀请《Scientific American》的读者参加比赛,去解密他们在Martin Gardner 的Mathematical Games 专栏中列出的一段密码,并提供奖励。他们认为在1015 年内都不会发生的事。在1994年4月,一个工作组使用1600多台计算机,只经过8个月的工作,就破解了这段密码。该比赛使用的公钥的长度(n的大小)是129位十进制数字。这样的结果并没有使RSA失效,他只是意味必须使用更大的密钥。 当前小于1024位的N已经被证明是不安全的,自己使用中不要使用小于1024位的RSA,最好使用2048位的。

RSA算法 RSA算法是第一个既能用于数据加密也能用于数字签名的算法,因此它为公用网络上信息的加密和鉴别提供了一种基本的方法。它通常是先生成一对RSA 密钥,其中之一是保密密钥,由用户保存;另一个为公开密钥,可对外公开,甚至可在网络服务器中注册,人们用公钥加密文件发送给个人,个人就可以用私钥解密接受。为提高保密强度,RSA密钥至少为500位长,一般推荐使用1024位。 RSA系统是公钥系统的最具有典型意义的方法,大多数使用公钥密码进行加密和数字签名的产品和标准使用的都是RSA算法

RSA算法 此外还正在积极寻找攻击RSA的方法,如选择密文攻击,一般攻击者是将某一信息作一下伪装(Blind),让拥有私钥的实体签署。然后,经过计算就可得到它所想要的信息。 对付以上攻击,主要措施有两条:一条是采用好的公钥协议,保证工作过程中实体不对其他实体任意产生的信息解密,不对自己一无所知的信息签名;另一条是决不对陌生人送来的随机文档签名,签名时首先使用One-Way Hash Function对文档作HASH处理,或同时使用不同的签名算法。

RSA算法的优缺点 优点是密钥空间大 缺点 1)产生密钥很麻烦,受到素数产生技术的限制,因而难以做到一次一密。 2)速度太慢。由于进行的都是大数计算,使得RSA最快的情况也比DES慢上倍,无论是软件还是硬件实现。速度一直是RSA的缺陷。一般来说只用于少量数据加密。由于RSA 的分组长度太大,为保证安全性,n 至少也要 600 bitx以上,使运算代价很高,尤其是速度较慢,较对称密码算法慢几个数量级;且随着大数分解技术的发展,这个长度还在增加,不利于数据格式的标准化。目前,SET(Secure Electronic Transaction)协议中要求CA采用2048比特长的密钥,其他实体使用1024比特的密钥。为了速度问题,目前人们广泛使用单,公钥密码结合使用的方法,优缺点互补:单钥密码加密速度快,人们用它来加密较长的文件,然后用RSA来给文件密钥加密,极好的解决了单钥密码的密钥分发问题。