第八讲 RSA 和 Rabin 算法 ( 下 ). 本讲提要  RSA 加密的安全 ( 续 )  RSA 加密实践  Rabin 加密算法  Rabin 加密的执行  Rabin 加密的安全  公钥加密的总结.

Slides:



Advertisements
Similar presentations
2 、 5 倍数的特征 学习目标 1. 掌握 2 、 5 倍数的特征,能判 断一个数是否是 2 、 5 的倍数。 2. 理解奇数和偶数的意义,正 确判断一个数是奇数还是偶数。
Advertisements

中外领导力 的 跨文化 比较分析 主讲人:. 壹 领导力理论 中国古代 “ 修身、齐家、治国、平天下 ” —— 孔子(儒家思想 ) 庄子(道家学派) 老子(道家学派)
頭皮的健康與診斷 頭皮保養的目的 乾性頭皮的產生原因及處理 油性頭皮的產生原因及處理 植物精油芳香療法的認識與應用 第 3 章 頭皮部位的處理 ………………………………………………………………………….…
窮人與富人的決定性差異 書名: 窮人與富人的距離 0.05mm 作者:張禮文出版社:海鴿. 窮人與富人的決定性差異 窮人和富人的關鍵差異不在口袋金錢的多寡,而 在腦袋。這本書將全面解開窮人之所以貧窮,而 富人之所以富裕的所有奧秘。 窮人和富人的關鍵差異不在口袋金錢的多寡,而 在腦袋。這本書將全面解開窮人之所以貧窮,而.
一、研究背景 植物组培育细胞培养源于 19 世纪后半 叶,当时植物细胞全能性的概念还没有 完全确定。人们便对此进行研究。 目前,植物组培已经变成了一种常规 的技术,广泛应用于植物的脱毒,快繁 ,基因工程,一串研究,次生代谢物质 生产,工厂化育苗等多方面。
大学生入党积极分子培训教材 主编:蔡中华 曹培强.
水痘.
你愛美食嗎? 很多人都有這種體會,在廚房熱火朝天忙活了好一陣,好不容易美味佳餚端上桌,卻絲毫沒了胃口。難道真的是像大家開玩笑說的,都是在做飯時“偷吃”飽啦?經常有一些人在烹飪過後卻沒有食欲,出現嗅覺遲鈍、口渴、頭暈,眼、鼻、喉受刺激的症狀,國外把這種現象稱為“醉油綜合征”。
29.2 三视图.
第二章營建規劃施工與管理 營建工程過程不外乎規劃、設計、施工、管理等。
國立金門高級農工職業學校 水產養殖科 游育霖
程啸 (法学博士、清华大学法学院副教授、硕士生导师、洪堡学者)
九寨沟 领略人间仙境.
机关公文基础知识 黄晓璐.
第十一章 文獻資料分析法 M99E0202 吳孟樺.
鞍钢冷轧钢板(莆田)有限公司 毕业生招聘宣讲会
中枢兴奋药-黄嘌呤生物碱类.
《数学》( 新人教版.七年级 上册 ) 第一章 有理数 授课人:三元中学 苏鼎明.
第二單元 校園的昆蟲 1. 校園的小動物 2. 昆蟲一族 3. 昆蟲變變變 4. 我的昆蟲寶貝 5. 昆蟲博覽會 吳端敏 製.
机械工业发展史.
第十章 暑 温 辽宁中医药大学 温病学教研室.
桥城中学创建广东省现代教育技术实验学校自查报告
熱帶雨林對人類的 局限和可能性.
第二課 鬼 頭 刀 廖鴻基.
6-3 玻璃製品 一、平版玻璃 將熔融的玻璃漿由滾筒間流過,可不斷製造較 大連續之玻璃,可分為 (一)透明玻璃:表面光滑清透。
钢筋混凝土楼梯模板施工 学习目标 主要内容.
2014年国家义务教育质量监测 体育现场测试说明 浙江省教育质量监测中心 2014年11月.
長榮中學高中部104年甄選入學 作業相關事項說明會
指導老師:曾憲正 老師 組員:公廣2A 4980M089鄭欽鴻 M039鄭仁凱 2B M060呂明耿
昆蟲總動員 三年級教學群.
风 温 主讲人 王洪京.
东方底特律—— 大美十堰.
春 温 主讲人 王洪京.
市场营销原理与实训 市场营销策略模块 项目五 产品策略.
乳房护理 主编:卢荣华.
第四章 室内设计与人体工程学 第一节 人体工程学与室内设计 人体工程学也叫人机工程学、人类工效学、人类工程学、工程心理学、宜人学等。
重庆市渝州工程勘察设计技术服务中心---刘刚 2013年3月29日
4个故事 在很久很久以前….
前列腺结石 山西医科大学第一医院 王靖宇.
全日制义务教育物理课程标准 ——“运动与相互作用”主题解读及实施建议
第十一章 结构施工图 11-1 概述 一、结构施工图(结施):P308
第九章 居住区规划 §1、居住区规划的任务与编制.
人教版七年级下册第七章第四节 人教版8年级下册第五章第二节 北方地区和南方地区 制作:克拉玛依市独山子第一中学地理组.
2010高考中国地理 复习系列课件 福建省长泰一中 姚秀元
昆虫 昆虫的认识 制作昆虫标本方法与过程 1 2.
2014年下学期C1403 第21周家校互联.
“仙居恩施”市情讲座 恩施市委党校 陈 平.
第3章 建筑剖面设计.
统计图的选用(二).
第3章.建筑剖面设计 学习要求与学习重点 1. 学习要求:熟悉建筑各部分高度、层数、层高的确定;掌握建筑空间的组合和利用;能够根据建筑的使用要求合理地确定建筑的剖面形状和尺寸。 2.学习重点:掌握建筑各部分高度的确定及层数、净高、层高的概念;掌握室内外高差确定的依据;掌握建筑空间的利用的方法。
趣味硬币.
引自中山大学研究生,40余项国家专利获得者,著名低视力弱视治疗专家及发明家刘东光教授的观点
静脉剥脱器介绍 北京普益盛济科技有限公司.
人教版八年级地理上册 第三章第三节(第2课时) 水资源.
楼层与地层 水平分隔建筑空间的构件,楼层分隔上下空间,地层分隔底层空间并与土壤直接相连。 楼层的结构层为楼板,地层的结构层为垫层。
絲 綢 之 路 育 英 國 中 陳 昱 伶.
学习单元3 其它焊接方法.
公文写作与常见病例分析.
焊接结构的不足之处大多反映在焊接接头上的问题,主要有以下几方面:
名片礼仪 授课人:三原职教中心 安小艳.
机械制图 识图基础知识讲解 编制:王应.
年 和 電 鍍 原理製程教育訓練.
臺北市政府教育局96學年度第1學期 學生校外會 學生交通安全校園巡迴宣講題目: 交通(機車)事故預防與 處理 台北市汽車駕駛訓練中心 製作.
第一節 餐飲服務的定義及範圍 3-4 銼削姿勢與銼刀使用方法 銼削姿勢 銼削方法 銼刀與銼削注意事項.
2.1矢量的概念与矢量的线性运算 一、矢量的概念 矢量: 既有大小又有方向的量. 矢量表示: 或 M1M2 矢量的模: 矢量的大小. 或
2019/5/19 第 十 章 节流机构.
水中生物.
_14RSA加密的基本原理 本节课讲师——void* 视频提供:昆山爱达人信息技术有限公司 官网地址:
板料冲压 利用装在冲床上的设备(冲模)使板料产生分离或变形的一种塑性成形方法。它主要用于加工板料(10mm以下,包括金属及非金属板料)类零件,故称为板料冲压。 冲压加工要求被加工材料具有较高的塑性和韧性,较低的屈强比和时效敏感性,一般要求碳素钢伸长率δ≥16%、屈强比σs/σb≤70%,低合金高强度钢δ≥14%、
災變話題.
Presentation transcript:

第八讲 RSA 和 Rabin 算法 ( 下 )

本讲提要  RSA 加密的安全 ( 续 )  RSA 加密实践  Rabin 加密算法  Rabin 加密的执行  Rabin 加密的安全  公钥加密的总结

3.8 循环攻击

3.8 循环攻击 ( 续 )

3.9 消息隐藏问题

3.9 消息隐藏问题 ( 续 )

3.10 前项搜索攻击

3.11 RSA-OAEP

3.11 RSA-OAEP ( 续 )

3.12 定时攻击 对 RSA 算法的攻击,可能不仅仅来自算法本 身,对其的不恰当执行同样可能导致系统的 漏洞。攻击者将可能利用这些执行的弱点来 危及整个 RSA 系统的安全。对密码系统的执 行攻击受到安全工程师和用户的极大关注。 执行攻击包括:定时攻击,电耗分析攻击, 出错攻击,和电磁辐射攻击等。我们常常称 这些攻击为边信道攻击 (side-channel attacks) 。 边信道这个词用来描述从目标设备,例如, 智能卡,无意泄露的信息。

3.12 定时攻击 ( 续 ) 在定时攻击中的边信道是指设备在做秘密 密钥操作时需要的时间。攻击者能够仔细 的测量目标系统的执行时间进而发现存储 于设备中的秘密密钥,最终使整个安全系 统崩溃。不少现实系统潜在受到这一攻击 威胁,包括各种密码令牌,基于网络的密 码系统,以及其它攻击者可以准确测量执 行时间的应用系统。

3.12 定时攻击 ( 续 ) 假定环境. 攻击者可以观察系统对多个密 文消息 g 的解密。他也知道加密算法的执 行细节并能应用这些信息确定可能发生 在算法计算过程中的不同步骤需要的执 行时间。同时,假定计算 g d (mod n) 使用 的是上一讲的算法 4 。

3.12 定时攻击 ( 续 )

4 RSA 加密实践 4.1 模的大小 根据分解整数算法特别是数域筛法的进展, RSA 中的模 n 应该至少为 1024 比特。从长 远的安全考虑,应该使用 2048 比特或更大 的模。

4.2 素数的选择 (1) 素数 p 和 q 的选择原则是使分解整数 n =p  q 在计算上不可能。主要对 p 和 q 的限制 是它们必须有足够的长度并且有差不多 相等的比特长度。例如,如果使用 1024 比特的模 n ,那么, p 和 q 应该都是在 512 比特左右。 (2) 另一个对素数 p 和 q 的限制是 p  q 不能 太小。如果 p 和 q 是随机选择产生,则 p  q 将会以压倒的概率比较大。

4.2 素数的选择 ( 续 ) (3) 许多地方推荐使用强素数 p 和 q 。一个素数 p 是强素数需要满足以下三个条件: * p  1 有大的素数因子,称为 r ; ** p+1 也有大的素数因子; *** r  1 仍然有大的素数因子。

第一个条件的原因是存在 Pollard 的 p  1 分 解算法,这一算法只在模 n 存在一个素数 因子 p 满足 p  1 平滑时有效;第二个条件的 原因是存在 p+1 分解算法,这一算法只在 模 n 存在一个素数因子 p 满足 p  1 平滑时有 效;第三个条件的原因为了保证循环攻击 无效。

如果素数 p 随机选择且足够大,则 p  1 和 p+1 将有非常大的可能有大素数因子。此外,如 果 p 和 q 为随机选择,则循环攻击成功的可能 性可以忽略。因此,强素数并不能比随机选 择素数提供太多的保护。以现有的分解算法 知识,并没有一定需要使用强素数的理由。 另一方面,产生强素数相对随机产生素数仅 增加了微小的计算时间,因此,即使使用强 素数也不会带来多少开销。

4.3 指数 (1) 如果随机选择加密指数 e ,则 RSA 加密 使用算法 4 将需要 k 次模平方和平均 k/2 次 模乘,这里 k 是模 n 的比特长度。加密速 度可以通过选择小的加密指数 e 并 ( 或 ) 选 择加密指数 e 的二进制表示中 1 的个数尽 量少。

4.3 指数 ( 续 ) (2) 在实际中,加密指数通常选择 e=3 。在这 种情况下,要求 p  1 和 q  1 都不可以被 3 整除。 这样做的好处是加密操作速度非常快只需要 1 次模乘和 1 次模平方。另一个在实际中经常使 用的加密指数为 e= =65537 。这个数字的 二进制表示中仅有 2 个 1 ,因此,在使用算法 4 加密时仅需要 16 次模平方和 1 次模乘。加密指 数 e= 常常认为优于 e=3 ,这是由于在应 用中通常不太可能将同一条消息发送给 个接收者。

4.3 指数 ( 续 ) (3) 由于小指数攻击,需要解密指数 d>n 。 Boneh 和 Durfee 认为他们的攻击算法不能算 做理论,这是因为他们也不能证明攻击算 法一定总能成功。但是通过实验已经证实 了攻击算法的确有效,他们并没有发现一 个例子会导致攻击算法失败。

5 Rabin 加密算法 5.1 算法描述

5.1 算法描述 ( 续 )

6 Rabin 加密的执行 6.1 计算平方根

6.2 关于效率 Rabin 加密过程的效率非常高,这是因为仅 需要 1 次模平方计算。比较而言, RSA 加密 使用加密指 e=3 需要 1 次模乘和模平方计算。 Rabin 解密速度要比加密慢,但是与 RSA 解 密在一个数量级上。

6.3 冗余问题 Rabin 公钥加密方案的一个缺点是接收者需要 从 4 种可能情况中选择一个正确的解密明文消 息。这一解密中的不确定问题在实践中可以 通过预先增加定义原始明文消息冗余来解决。 ( 例如,明文消息的最后 64 比特需要被复制。 ) 这样,将有非常高的概率解密出来的 4 个可能 明文消息中仅有一个符合冗余的规则。如果 4 个平方根中没有一个符合冗余规则,则接收 者就认为出错而拒绝密文消息。

(1) Rabin 公钥加密方案存在类似 RSA 加密中 的小指数加密和前项搜索问题。前项搜索问 题可以通过明文消息加盐来解决。 (2) 作为被动攻击者的任务是从密文消息 c 恢 复出明文消息 m 。这就是平方根 SQROOT 问 题。分解 n 和计算模 n 的平方根问题在计算上 是等价的。因此,假定分解 n 在计算上不可 能, Rabin 公钥加密方案就可以证明能够抵 抗被动攻击者的攻击。 7 Rabin 加密的安全

理由. 假定有一个多项式时间的算法 R 可以解 决 SQROOT 问题。这个算法就可以用来解决 合数 n 的分解问题。随机选择一个整数 x 满足 (x , n)=1 ,并计算 a  x 2 (mod n) 。接下来,算 法 R 在输入为 a 和 n 的情况下运行,返回模 n 平方根 y 。如果 y  x(mod n) ,分解尝试失败, 随机选择另一个整数 x 重复上述过程。否则, (x  y , n) 就可以得到 n 的一个非平凡因子, p 或 q 。由于 a 有 4 个模 n 的平方根,每次尝试成 功的可能性为 1/2 。

(3) 对于主动攻击者, Rabin 公钥加密存在选 择密文攻击问题。这样的攻击可以按如下步 骤进行。攻击者选择一个随机整数 m 并计算 c  m 2 (mod n) 。攻击者提交 c 给 A 的解密机, 它将解密 c 并返回某个明文消息 y 。由于 A 不 知道明文消息 m ,并且 m 为随机选择,明文 消息 y 未必就是同一个消息 m 。如果随机返回, 将有 1/2 可能性, y 不等于  m(mod n) ,在这种 情况下, (m  y , n) 就是 n 的一个素数因子。 否则,攻击可以换新的 m 重复以上过程。

(4) 如果将冗余规则用于以上情况,则 Rabin 公钥加密方案将不在存在选择密文攻击问题。 如果攻击者选择一条消息 m 并具有规定的冗 余并将 c  m 2 (mod n) 提交给 A 的加密机,加密 机将以非常高的概率返回消息 m 本身给攻击 者 ( 由于其它 3 个 c 的模平方根有非常大的概 率不包含规定的冗余 ) ,则将不会提供给攻 击者任何信息。另一方面,如果攻击者选择 不包含冗余的消息 m ,则有非常高的可能性 4 个模平方根都不具有需要的冗余形式。在这 种情况下,解密机将认为对 c 的解密失败并 对攻击者不做答复。因此, Rabin 公钥加密 通过增加适当的冗余规则将提高其实用价值。

8 公钥加密的总结 8.1 公钥加密的要求 在一个公钥系统中,消息集合 M ,密钥集 合 K ,和加 / 解密函数 E/D ,必须满足如下 要求: (1) 对于任何消息 m  M ,满足 D k (E k (m))=m 。 (2) 对于每一个消息 m  M 和密钥 k  K ,值 E k (m) 和 D k (m) 容易计算。

8.1 公钥加密的要求 ( 续 ) (3) 给定密钥 k  K ,很容易找到函数 E k 和 D k 。 (4) 对于几乎所有密钥 k  K ,如果仅仅知 道函数 E k ,不可能发现一个算法有效计算 函数 D k 。

8.1 公钥加密的要求 ( 续 )

8.2 关于认证和不可否认 (1) 在对称密码系统中,认证是容易的, 但不存在不可否认问题。 (2) 在公钥密码系统中,认证和不可否认 都不能自然成立。但是,这些目标容易实 现。例如,在 RSA 系统中计算并发送消息 E kb (S ka (m))=E kb (D ka (m)) 。

8.3 陷门单向函数

8.3 陷门单向函数 ( 续 )

谢谢!