1 / 91

现代密码学 vs 集成电路技术

现代密码学 vs 集成电路技术. 白国强 清华大学 微电子学研究所 2012 年 8 月 11 日 . 合肥. 提纲. 现代密码学 现代半导体与集成电路技术 从密码学看集成电路技术 密码算法的集成电路实现 密码电路的安全保护 从集成电路技术看现代密码学 结论. 现代密码学. 诞生 上世纪七十年代的几个重要事件,成了现代密码学诞生的标志: 1971—1972 年 IBM 设计了分组算法 LUCIFER 算法。 1976 年, Diffie 和 Hellman 公钥密码思想的提出。 1977 年 NBS (现在的 NIST )完成了 DES 算法的制定。

lynne
Download Presentation

现代密码学 vs 集成电路技术

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 现代密码学vs集成电路技术 • 白国强 • 清华大学 微电子学研究所 • 2012年8月11日.合肥

  2. 提纲 • 现代密码学 • 现代半导体与集成电路技术 • 从密码学看集成电路技术 • 密码算法的集成电路实现 • 密码电路的安全保护 • 从集成电路技术看现代密码学 • 结论

  3. 现代密码学 • 诞生 • 上世纪七十年代的几个重要事件,成了现代密码学诞生的标志: • 1971—1972年IBM设计了分组算法LUCIFER算法。 • 1976年,Diffie和Hellman公钥密码思想的提出。 • 1977年NBS(现在的NIST)完成了DES算法的制定。 • 1978年RSA算法的发明。 • 发展 • 八十年代:序列分析,ElGamal, ECC, 安全协议、杂凑算法性理论。 • 九十年代:DSA, IDEA, MD5, SHA, AES。 • 走向成熟:当前的主要研究内容 • 各种密码算法的分析与设计。 • 各种安全协议的分析与设计。

  4. 现代密码学 • 密码算法类型与典型算法 • 序列密码(流密码) • Geffe • A5/A1 • 分组密码 • DES,IDEA,3DES,AES。 • SMS4。 • 公钥密码 • RSA • ECC • Hash函数 • MD5,SHA-1 • SHA-3

  5. Geffe序列密码生成器 • 使用3个LFSR,通过非线性方式组合而成。 sj-1 sj-2 sj-3 sj-L sj=c1sj-1,+c2sj-2,+…+cLsj-L

  6. LFSR-2 LFSR-1 LFSR-3 LFSR-2 LFSR-1 LFSR-3 • 停走式序列密码发生器 • 用一个LFSR的输出控制另一个LFSR的停走。 • 交错停走式序列密码发生器 时钟

  7. LFSR-1 LFSR-2 LFSR-3 • A5/1序列密码发生器(GSM移动通信) • 由三个LFSR驱动。三个LFSR的异或作为输出。 • 三个LFSR的特征多项式如下 • f1(x)=x19+x18+x17+x14+1 • f2(x)=x22+x21+1 • f3(x)=x23+x22+x21+x8+1 • 密钥长度64比特,作为三个LFSR的初始状态。 • 每个LFSR的时钟由其中间位控制。 • 安全性 • 穷尽空间:254。 • 248预计算,146GB存储,1分种攻破 • 242预计算,300GB存储,1秒种攻破 • 238预计算,64GB存储,240步攻破

  8. 时钟 控制 19 18 17 16 15 1413 12 11 10 9 8 7 6 5 4 3 2 1 22 21 20 19 18 17 16 15 1413 12 11 10 9 8 7 6 5 4 3 2 1 23 22 21 20 19 18 17 16 15 1413 12 11 10 9 8 7 6 5 4 3 2 1

  9. 分组密码 加密变换 明文: 密文: DES算法

  10. 明文P 密钥K 明文P 初始密钥加 K0=K 密钥加 逆字节替换 1 字节替换 逆行移位 行移位 9 列混合 逆列混合 密钥加 K1 密钥加 逆字节替换 逆行移位 9 字节替换 行移位 1 列混合 逆列混合 密钥加 K9 密钥加 10 逆字节替换 字节替换 逆行移位 行移位 密钥加 K10 初始密钥加 密文C 密文C AES算法

  11. 字节替换表格通常称为S-盒。输入的高4比特记为x,低4比特记为y。字节替换表格通常称为S-盒。输入的高4比特记为x,低4比特记为y。 • 例如:输入:01101011,高4比特0110,低4比特1011,查表结果为7F=01111111 S-盒

  12. 字节替换的原理 • 分两步进行。假设输入字节为a,替换后的输出为b。 • 视a为GF(28)上的元素。计算a的逆a-1。约定0的逆为0。 • 对a-1作如下的仿射变换,最后得到b: • b=A·a-1⊕c • 其中,A是一个如下的8×8矩阵。C是一个固定的列向量。 • 上述运算中,有限域GF(28)的域多项式取作下面的多项式: • m(x)=x8+x4+x3+x+1

  13. RSA算法 • 选定密钥 • 随机选取两个大素数p和q。 • 计算n=pq,φ(n)=(p-1)(q-1) • 随机选取正整数d,满足0<d< φ(n), gcd(d, φ(n))=1 • 计算e=d-1mod φ(n)。 • 公开e和n作为用户A的公钥。保密d, 以及p和q。d是用户A的私钥。 • 加密 • 对消息M,假设0<M<n。 • 计算C=Memodn • 解密 • 计算P=Cdmodn

  14. ECC算法 • 参数选取 • 选定基于:GF(2m),GF(P)。 • 选一个方程E:y2=x3+ax+b • 计算E上的点数#E,并分解之。如有大素因子,则确定E。 • 选择E上基点P0=(x0,y0)。 • 选择私钥kA,计算公钥 • PA=kAP0 • 签名产生 • 关键计算:Q=kP0。 • 签名验证 • 关键计算:kP+lQ

  15. 512bit 512bit … 512bit 512bit 512位消息分组 80个32位子分组 20个 20个 20个 20个 160 SHA-1 160 SHA-1 160 160 SHA-1 160 SHA-1 160 A B C D E 第2轮 … 第3轮 第4轮 A B C D E 第1轮 + + + + + 杂凑算法SHA-1

  16. 现代密码学 • 密码算法的实现 • 最方便实现 • 笔和纸 • 算盘,。。。 • 软件实现 • 普通:对通用CPU编程 • 嵌入式:对嵌入式小CPU编程 • 硬件实现 • FPGA:现场可编程门阵列电路 • ASIC:面向应用的专用集成电路 • 对加速引擎编程。公钥算法多是这种情况,如RSA,ECC • 直接完整的算法实现。分组算法多是这种情况。

  17. 现代半导体与集成电路技术 • 1907年,发明电子管。 • 1947年12月,发明晶体管。 • 1958年,发明集成电路。 • 至今,微电子科技创造了人类科技奇迹。 • 现在:世界半导体产业的年销售额已超过3000亿美元。 • 集成电路(IC)制造:从最初的4微米特征尺寸,到现在的45纳米,目前正向32纳米转移。 • 芯片集成度已至吉规模(GSI, giga scale, 109)。 • 加工的晶圆直径进入300mm(12英寸)时代。 • IC的规模已达到把整个系统集成到一个芯片,即系统芯片(SoC, System on a Chip)的阶段。 • 制造能力走在设计能力的前面

  18. 现代半导体与集成电路技术 摩尔(Moore)定律 • 1965年4月,Gorden Moore在美国Electronics杂志35周年纪念文章中预言“芯片元件数每18月增倍,而元件成本减半”。 • 该定律揭示了IC能力随时间按指数规律增长 • 特征尺寸减小,集成度提高。芯片尺寸面积减小。 • 性能与功能提高,成本降低。 • 在集成电路发明后的50多年中,特征尺寸由几百微米开始,逐渐缩小到几十微米,几微米。从上世纪九十年代开始,进入1微米以内。目前已到几十纳米。 • 晶圆尺寸:由4英寸,到6英寸,8英寸。目前已到12英寸。

  19. 现代半导体与集成电路技术 • Moore定律演进图 19

  20. 现代半导体与集成电路技术

  21. 现代半导体与集成电路技术 世界半导体产业和市场 2010: 2990亿美元。 2011: 3150亿美元。 21

  22. 现代半导体与集成电路技术 • 我国半导体产业与市场 • 市场: • 我国从2005年起成为世界最大芯片市场:规模$408亿美元。 • 市场规模超过北美和日本。 • 美国:$365亿。中国:$408亿。日本:$330亿。

  23. 现代半导体与集成电路技术 我国半导体产业与市场 • 2008年,市场规模为$952亿美元,占世界市场的38.3% 我国市场占世界市场份额

  24. 现代半导体与集成电路技术 • 产业 • 我国IC产业销售额状况 • 2008年1246.82亿元。 • (182.82亿美元) • 2011年1572亿。 • 以低端IC和分离器件为主 • 产业跟不上,市场被人占: • 我国IC产业销售额占世界IC市场的份额 • 2008年占到7.51% • (而需求占到38.3%) • 2011年,集成电路进口 • 1702亿美元 • 供需缺口巨大,半导体一直 • 是中国贸易逆差最大领域, • 远远超过石油。

  25. 现代半导体与集成电路技术 • 21世纪微电子科技发展的两个方向 • 由集成电路(IC)向集成系统(IS)转变——微系统 • 由微电子学向纳电子学转变——纳电子学 • SOC是IC向IS转变最迫切、最现实的方向 • 20世纪是集成电路(IC)时代,21世纪则是集成系统(IS)时代 • SOC是当前最迫切、现实的方向 • More than Moore(产品多功能化)相对比重逐年增大

  26. 从密码学看集成电路技术:密码算法的集成电路实现从密码学看集成电路技术:密码算法的集成电路实现 • DES算法的集成电路实现 • 最早的DES芯片应该出现在上世纪70年代。 • 到80年代已有商业化芯片,速度在Mbps量级。以下是90年代的学术研究结果。 • 关键问题:S-盒的实现,需要查表。占面积;提高频率的瓶颈。 • 最近10年,由于集成电路技术的进步,DES芯片的设计已很容易。

  27. 从密码学看集成电路技术:密码算法的集成电路实现从密码学看集成电路技术:密码算法的集成电路实现 • AES算法的集成电路实现 • 字节替换(S-盒)为关键 • 紧致实现(小面积、低功耗) • 通过塔域方法,直接计算S-盒 • 500-1000门电路即可实现 • 高速实现 • 直接计算S-盒 • 用混合基方法直接计算AES的S-盒(CHES2010) 会议“Cryptographic Hardware and Embedded Systems ”(CHES)自1999年创立,现在是国际密码学会主办的最重要的主题会议之一,每年有300多人参加。

  28. 从密码学看集成电路技术:密码算法的集成电路实现从密码学看集成电路技术:密码算法的集成电路实现 • AES算法的集成电路实现 • 以下为学术研究的一些结果

  29. 从密码学看集成电路技术:密码算法的集成电路实现从密码学看集成电路技术:密码算法的集成电路实现 • RSA的集成电路实现 • 以下为RSA算法最早期的集成电路实现结果 29

  30. 从密码学看集成电路技术:密码算法的集成电路实现从密码学看集成电路技术:密码算法的集成电路实现 • RSA算法的集成电路实现 • 主要运算:Y=(md)modN • 核心运算:X=(A·B)ModN, 即模乘运算。关键为模运算。 • 模运算方法 • 普通除法,太费时 • Barret算法,免除法,但可能需预计算多个值。 • Montgomery算法,免除法,预计算两个值。 • 芯片设计技术 • 脉动阵列电路方法,芯片工作频率高,但计算一次需要的周期数也多。 • 大乘法器方法,计算周期数少,但需要大的电路驱动能力。 • 冗余数 • 免进位加法器

  31. 从密码学看集成电路技术:密码算法的集成电路实现从密码学看集成电路技术:密码算法的集成电路实现 • RSA的集成电路实现 • 以下为RSA算法芯片的一些产品情况

  32. 从密码学看集成电路技术:密码算法的集成电路实现从密码学看集成电路技术:密码算法的集成电路实现 • RSA的集成电路实现 • 以下是RSA算法电路实现的一些研究结果

  33. 从密码学看集成电路技术:密码算法的集成电路实现从密码学看集成电路技术:密码算法的集成电路实现 • ECC算法的集成电路实现 • ECC的灵活多样,即多参数,给芯片实现带来困难。 • 芯片定义是个问题。 • 对外提供的运算功能 • 支持的有限域类型:GF(2m),GF(p) • 支持的有限域大小:160,192,256, • 研究状况 • 支持特定GF(2m)情况居多, • 支持所有素数域GF(p) • 支持若干特定曲线,NIST曲线。

  34. 从密码学看集成电路技术:密码算法的集成电路实现从密码学看集成电路技术:密码算法的集成电路实现 • ECC算法的集成电路实现 • 部分研究成果

  35. 从密码学看集成电路技术:密码算法的集成电路实现从密码学看集成电路技术:密码算法的集成电路实现 • Hash函数的集成电路实现 • Hash函数的电路实现是当前密码算法芯片实现研究中的一个热点。以下为部分研究结果

  36. 从密码学看集成电路技术:密码算法的集成电路实现从密码学看集成电路技术:密码算法的集成电路实现 • 真随机数生成器 • 真随机数集成电路生成的重要性 • 真随机数是所有安全方案实际安全性的第一源动力 • 方式 • ASIC:独立芯片;电路模块。 • FPGA:需求场合多,非常困难。(CHES2010) • 方法 • 基于热噪声 • 基于环型振荡器 • 基于混沌的。 • 难点 • 获得理想随机特性并不容易 • 与工艺密切相关 • 功耗、速度都是问题。 • 是一个值得持续研究的课题。

  37. 清华大学微电子所相关工作—密码芯片 • THECC/233-100芯片 • 2004年3月完成 • 中芯国际0.18微米工艺 • 2.34×2.34mm2 • 密钥长度233bit • 直接进行签名和验证 • 每秒3000次签名 • 数字证书芯片 • 2007年7月流片 • SMIC 0.18 EEPROM工艺 • 支持国标算法: • ECC • SCB2 • SCH • 支持国际算法

  38. 清华大学微电子所相关工作-密码芯片 • 高速ECC算法专用芯片 • SMIC 0.18工艺 • 5×5mm2 • 高速网络安全处理器芯片 • 0.13工艺 • 支持国际密码算法标准 • RSA,SHA-1,RC4 • 支持国家密码算法标准 • ECC,SCB2,SCH杂凑

  39. 清华大学微电子所相关工作—真随机数 • 多个真随机数产生芯片 • 基于热噪声 • 基于混沌原理

  40. 从密码学看集成电路技术:密码算法的集成电路实现从密码学看集成电路技术:密码算法的集成电路实现 • 近年状况 • 集成电路技术的进步以及持续的学术研究,使得当前用集成电路实现任何一种常用密码算法,显得比较容易。 • 对大多数密码算法,实现目标朝两个极端方向发展 • 紧凑性实现:极小面积,极低功耗。 • 高速实现:速度优先,不太考虑面积和功耗。 • 由过去的单芯片单功能,发展到了单芯片多功能,即单独一块芯片实现多种密码算法。即SOC密码芯片: • 客户端情况。智能IC卡芯片是最典型一类。其中可能会包括3DES,AES,RSA,SHA-1等算法。包括什么算法是由应用标准决定的。 • 服务端情况:高速SOC密码协处理器。 • 如何比较各种实现,是个复杂问题。

  41. 从密码学看集成电路技术:密码电路的安全保护从密码学看集成电路技术:密码电路的安全保护 • 密码电路的安全性 • 攻击目标 • 获取密钥。 • 获取用户其它信息。 • 获取被实现算法。 • 攻击方法 • 侧信道攻击(非入侵式攻击)。 • 能量攻击。 • 错误攻击。 • 电磁攻击。 • 半入侵式攻击。 • 入侵式攻击。 • 木马和恶意电路攻击。

  42. 从密码学看集成电路技术:密码电路的安全保护从密码学看集成电路技术:密码电路的安全保护 • 差分功耗分析 • P.Kocher1999年针对攻击DES算法的实现引入。 • 思想:运行DES算法设备时,在加密(或解密)过程中某个时段的电流值,与该时段内处理的包含有密钥信息的变量有关。这个变量由密钥和被加密的数据组成。更换数据,密钥不变,多次重复,同时收集该时间段内的能量消耗情况,即可利用这些信息容易判断出攻击者对密钥的猜测是否正确。由此,可以得到运行中的密钥。 • 基于这一思想的攻击称为DPA(Differential Power Analysis)。 • DPA对所有其他密码算法也十分有效。 • 目前对DPA的防止,只能做到增加攻击难度,不能完全消除。 • 在DPA的启发下,已提出了各种攻击密码设备的侧信道方法。 • IC卡芯片已成能量攻击的最大牺牲品: • 理由为:攻击者容易得到和操控芯片。 • 提高IC卡芯片的安全性已成为巨大产业最重要的技术问题。

  43. 清华微电子所在功耗攻击方面的工作 • 抗攻击成果 • 算法级:ECC,RSA,3DES,AES等算法的抗攻击研究 • 电路级:功耗平衡基本运算单元研究 • 门级:抗功耗攻击单元门电路研究 • 芯片反解剖工程研究 • ECC算法抗攻击研究 • THECC/233-100芯片的抗攻击研究 43

  44. 清华微电子所在功耗攻击方面的工作 k0P-k1P k0P-k2P k0P-k3P k0=1110 x x xx….xx k0P k1=1110 1 1 11…..11 k1P k2=11100 1 11…..11 k2P k3=1110 0 0 11…..11 k3P kmP km=11100 0 10….01 对ECC芯片多指数单数据(MESD)攻击 P k0P,k1P,k2P,k3P … k0 k1 ,k2 ,k3 … THECC-100

  45. 清华微电子所在功耗攻击方面的工作 2012年6月份完成

  46. 3DES以及AES解密功耗曲线

  47. 3DES功耗曲线分析

  48. 3DES功耗曲线分析

  49. 3DES功耗曲线分析

  50. 单次3DES运算波形

More Related