现代密码学 vs 集成电路技术
Post on 12-Jan-2016
75 Views
Preview:
DESCRIPTION
TRANSCRIPT
现代密码学现代密码学 vsvs 集成电路技集成电路技术术
白国强白国强
清华大学 微电子学研究所清华大学 微电子学研究所
20122012年年 88 月月 1111日日 .. 合肥合肥
提纲提纲
现代密码学
现代半导体与集成电路技术
从密码学看集成电路技术
密码算法的集成电路实现
密码电路的安全保护
从集成电路技术看现代密码学
结论
现代密码学现代密码学 诞生
上世纪七十年代的几个重要事件,成了现代密码学诞生的标志: 1971—1972年 IBM 设计了分组算法 LUCIFER 算法。 1976 年, Diffie和Hellman 公钥密码思想的提出。 1977年NBS (现在的 NIST )完成了 DES 算法的制定。 1978年 RSA 算法的发明。
发展 八十年代:序列分析, ElGamal, ECC, 安全协议、杂凑算法性理论。 九十年代: DSA, IDEA, MD5, SHA, AES 。
走向成熟:当前的主要研究内容 各种密码算法的分析与设计。 各种安全协议的分析与设计。
密码算法类型与典型算法 序列密码(流密码)
Geffe
A5/A1
分组密码 DES, IDEA, 3DES, AES 。 SMS4 。
公钥密码 RSA
ECC
Hash 函数 MD5, SHA-1
SHA-3
现代密码学现代密码学
• Geffe 序列密码生成器– 使用 3 个 LFSR ,通过非线性方式组合而成。
sj-1sj-1 sj-2sj-2 sj-3sj-3 sj-Lsj-L
sj=c1sj-1,+c2sj-2,+…+cLsj-Lsj=c1sj-1,+c2sj-2,+…+cLsj-L
• 停走式序列密码发生器– 用一个 LFSR 的输出控制另一个 LFSR 的停走。
交错停走式序列密码发生器
LFSR-1
LFSR-3
LFSR-2
时钟
LFSR-1
LFSR-3
LFSR-2
• 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 步攻破
LFSR-1LFSR-1
LFSR-3LFSR-3
LFSR-2LFSR-2
19 18 17 16 15 1413 12 11 10 9 8 7 6 5 4 3 2 1 19 18 17 16 15 1413 12 11 10 9 8 7 6 5 4 3 2 1
19 18 17 16 15 1413 12 11 10 9 8 7 6 5 4 3 2 1 19 18 17 16 15 1413 12 11 10 9 8 7 6 5 4 3 2 1
19 18 17 16 15 1413 12 11 10 9 8 7 6 5 4 3 2 1 19 18 17 16 15 1413 12 11 10 9 8 7 6 5 4 3 2 1
202022222121
2222212120202323
时钟控制时钟控制
110|11100100||10001010|01011101|01101011
011|01000010||10111110|01010001|01101110nnnn
明文:
密文:
加密变换
分组密码
DES 算法
明文 P
初始密钥加
密钥 K 明文 P
10
密钥加
行移位
字节替换
9字节替换
行移位
列混合
密钥加
K0=K
K1
K9
K10
密文 C
1逆列混合
密钥加
逆字节替换
逆行移位
逆行移位
逆字节替换
密钥加
9逆列混合
密钥加
逆字节替换
逆行移位
密文 C
初始密钥加
1字节替换
行移位
列混合
密钥加
AES 算法
– 字节替换表格通常称为 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
11111000
01111100
00111110
00011111
10001111
11000111
11100011
11110001
A
0
1
1
0
0
0
1
1
c
0
1
1
0
0
0
1
1
11111000
01111100
00111110
00011111
10001111
11000111
11100011
11110001
7
6
5
4
3
2
1
0
7
6
5
4
3
2
1
0
a
a
a
a
a
a
a
a
b
b
b
b
b
b
b
b
01234567 ,,,,,,, aaaaaaaaa 输入: 01234567 ,,,,,,, bbbbbbbbb输出:
• 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
• ECC 算法• 参数选取– 选定基于: GF(2m) ,GF(P) 。– 选一个方程 E : y2=x3+ax+b
– 计算 E 上的点数 #E ,并分解之。如有大素因子,则确定 E 。
– 选择 E 上基点 P0=(x0,y0) 。
– 选择私钥 kA ,计算公钥
PA=kAP0
• 签名产生
• 关键计算: Q=kP0 。
• 签名验证• 关键计算: kP+lQ
512bit
SHA-1 SHA-1 SHA-1 SHA-1
512bit 512bit 512bit…
…160 160 160 160 160 160
ABCDE
ABCDE
第 1轮
80个 32 位子分组
+
+++第 2轮 第 3轮 第 4轮
+
512 位消息分组
20 个20 个 20 个 20 个
杂凑算法 SHA-1
现代密码学现代密码学 密码算法的实现
最方便实现 笔和纸 算盘,。。。
软件实现 普通:对通用 CPU编程 嵌入式:对嵌入式小 CPU编程
硬件实现 FPGA :现场可编程门阵列电路 ASIC :面向应用的专用集成电路
对加速引擎编程。公钥算法多是这种情况,如 RSA, ECC
直接完整的算法实现。分组算法多是这种情况。
1907 年,发明电子管。 1947年 12月,发明晶体管。 1958 年,发明集成电路。 至今,微电子科技创造了人类科技奇迹。 现在:世界半导体产业的年销售额已超过 3000亿美元。 集成电路 (IC) 制造:从最初的 4 微米特征尺寸,到现在的 45纳米,目前正向 32纳米转移。
芯片集成度已至吉规模 (GSI, giga scale, 109) 。 加工的晶圆直径进入 300mm(12英寸 ) 时代。 IC 的规模已达到把整个系统集成到一个芯片,即系统芯片 (SoC,
System on a Chip) 的阶段。
制造能力走在设计能力的前面
现代半导体与集成电路技术现代半导体与集成电路技术
1965年 4 月, Gorden Moore在美国 Electronics杂志 35周年纪念文章中预言“芯片元件数每 18月增倍,而元件成本减半”。
该定律揭示了 IC能力随时间按指数规律增长特征尺寸减小,集成度提高。芯片尺寸面积减小。性能与功能提高,成本降低。
在集成电路发明后的 50多年中,特征尺寸由几百微米开始,逐渐缩小到几十微米,几微米。从上世纪九十年代开始,进入 1 微米以内。目前已到几十纳米。
晶圆尺寸:由 4 英寸,到 6 英寸, 8 英寸。目前已到 12英寸。
现代半导体与集成电路技术现代半导体与集成电路技术
摩尔 (Moore) 定律
1919
Moore定律演进图现代半导体与集成电路技术现代半导体与集成电路技术
ITRS-2007主要指标
量产年份 2007 2010 2013 2016 2019 2022 DRAM 半节距(nm) 65 45 32 22 16 11 MPU物理栅宽(nm) 25 18 13 9 6.3 4.5 等价栅氧厚(nm)物理
电学(EOT) 1.1 1.84
0.65 0.93
0.6~0.5 1.0~0.9
0.55 0.95
0.5 0.9
0.5 0.9
DRAM规模(Gbit) 16 32 64 128 256 512 DRAM面积(mm2) 568 563 560 557 555 553
MPU规模(Mtrans.) 773 1546 3092 6184 12368 24736 MPU面积(mm2) 280 280 280 280 280 280
圆片直径(mm) 300 300 300/450 450 450 450 掩膜层数 DRAM
MPU 24 33
26 35
26 37
26 37
26 39
26 39
最多布线层数 11 12 13 13 14 15 总互连线长(m/mm2) 1439 2222 3125 4545 6250 9091
现代半导体与集成电路技术现代半导体与集成电路技术
2121
世界半导体产业和市场
现代半导体与集成电路技术现代半导体与集成电路技术
2010: 2990亿美元。
2011: 3150亿美元。
我国半导体产业与市场市场:我国从 2005年起成为世界最大芯片市场:规模 $408亿美元。市场规模超过北美和日本。
– 美国: $365亿。中国: $408亿。日本: $330亿。
现代半导体与集成电路技术现代半导体与集成电路技术
23
2008年,市场规模为 $952亿美元,占世界市场的 38.3%
21.3%25.7%
28.9%
34.1%
38.3%
0%
10%
20%
30%
40%
50%
2004年 2005年 2006年 2007年 2008年
现代半导体与集成电路技术现代半导体与集成电路技术
我国市场占世界市场份额
我国半导体产业与市场
产业我国 IC产业销售额状况
– 2008年 1246.82亿元。 (182.82亿美元 )
– 2011年 1572亿。– 以低端 IC和分离器件为主
545.3
1246.82
1006.3
1251.3
702.1
43.3%
55.2%
28.8%
-0.4%
24.3%
0
300
600
900
1200
1500
2004年 2005年 2006年 2007年 2008年-10%
0%
10%
20%
30%
40%
50%
60%
销售额(亿元) 增长率
3.67%
4.49%6.06%
7.51%7.54%
0.0%
2.0%
4.0%
6.0%
8.0%
10.0%
2004年 2005年 2006年 2007年 2008年
产业跟不上,市场被人占:我国 IC产业销售额占世界 IC市场的份额
– 2008年占到 7.51%(而需求占到 38.3%)
– 2011 年,集成电路进口 1702亿美元– 供需缺口巨大,半导体一直
是中国贸易逆差最大领域,远远超过石油。
现代半导体与集成电路技术现代半导体与集成电路技术
21 世纪微电子科技发展的两个方向 由集成电路 (IC) 向集成系统 (IS)转变——微系统
由微电子学向纳电子学转变——纳电子学
现代半导体与集成电路技术现代半导体与集成电路技术
SOC是 IC向 IS转变最迫切、最现实的方向 20 世纪是集成电路 (IC) 时代, 21 世纪则是集成系统 (IS)
时代
SOC 是当前最迫切、现实的方向
More than Moore( 产品多功能化 ) 相对比重逐年增大
26
从密码学看集成电路技术:密码算法的集成电路实现从密码学看集成电路技术:密码算法的集成电路实现
DES 算法的集成电路实现 最早的 DES芯片应该出现在上世纪 70 年代。 到 80 年代已有商业化芯片,速度在 Mbps 量级。以下是 90 年代的学术研究
结果。 关键问题: S- 盒的实现,需要查表。占面积;提高频率的瓶颈。 最近 10 年,由于集成电路技术的进步, DES芯片的设计已很容易。
时间 FPGA/ASIC
速度bps
面积 实现者
1992 ASIC 1G 50K晶体管 DEC1999 ASIC 10G 0.6um CMOS
11.1mm2
D. Wilcox
USA2000 FPGA 12G FPGS
XCV300E
S. Trimberger
USA2000 0.6um
CMOS
155M
(3DES)
0.6um CMOS
23.7mm2
H.Leitold
Graz,奥地利
AES 算法的集成电路实现 字节替换( S- 盒)为关键
紧致实现(小面积、低功耗) 通过塔域方法,直接计算 S- 盒 500-1000门电路即可实现
高速实现 直接计算 S- 盒
用混合基方法直接计算 AES的 S- 盒( CHES2010 )
会议“ Cryptographic Hardware and Embedded
Systems ” (CHES)自 1999 年创立,现在 是国际密码学会主办的最重要的主题会议之一,每年有 300 多人参加。
从密码学看集成电路技术:密码算法的集成电路实现从密码学看集成电路技术:密码算法的集成电路实现
28
时间 FPGA/ASIC
速度bps
面积 实现者
2001 ASIC0.18um
1.82G910Mbps
173K gates3.96mm2
H.KuoUCL,USA
2001 FPGA/Virtex-E AES128: 7GAES192: 6G
M.MLoone比软件快 21倍
20002 0.6um, CMOS 2.2G 300K,晶体管 A.K.Lutz2003 FPGA/Virtex-E 18.5G
(3DES)542slices10 RAM
20052005
FPGASpartan-2
25G2.2M
Spartan-32RAM,124sli
c
T. GoodUK
2006 0.13um,CMOS 42.67G2007 FPGA, Virtex-4 15.3G 13.2K
slices114 RAM
S.Lemsitzer
AES 算法的集成电路实现 以下为学术研究的一些结果
从密码学看集成电路技术:密码算法的集成电路实现从密码学看集成电路技术:密码算法的集成电路实现
2929
时间 工艺 位数 时钟 速度 (byte/s)
实现者
1981 3um 336 4MHz 1.2K Sandia
1985 Gate Array 512 5MHz 3.8K Bus.Sim
1987 1.5um 1024 4MHz 7.7K AT&T
1987 1.5um 1024 16MHz 3.4K Cylink
1988 Gate Array 512 14MHz 17K Cryptech
1988 1.0um 512 25MHz 5.3K CNET
1988 2.5um 256 10MHz 10.2K Brit.Telecom
1989 512 10MHz 10.2K Plessy
1989 2.0um 512 8MHz 10.0K Sandia
1989 1.2um 512 16MHz 2.0K Philips
RSA 的集成电路实现 以下为 RSA 算法最早期的集成电路实现结果
从密码学看集成电路技术:密码算法的集成电路实现从密码学看集成电路技术:密码算法的集成电路实现
RSA 算法的集成电路实现 主要运算: Y=(md)modN 核心运算: X=(A·B)ModN, 即模乘运算。关键为模运算。 模运算方法
普通除法,太费时 Barret 算法,免除法,但可能需预计算多个值。 Montgomery 算法,免除法,预计算两个值。
芯片设计技术 脉动阵列电路方法,芯片工作频率高,但计算一次需要的周期数也
多。 大乘法器方法,计算周期数少,但需要大的电路驱动能力。
冗余数 免进位加法器
从密码学看集成电路技术:密码算法的集成电路实现从密码学看集成电路技术:密码算法的集成电路实现
RSA 的集成电路实现 以下为 RSA 算法芯片的一些产品情况
公司 时间 型号 速度
Corrent 2001 CR7020 5000
Hifn 2001 8154 1200
Secureakink
2001 PCC-ISEC 688
Secureakink
2001 PCC2020 1300
Cavim Network
s 2003 CN1010 7000
Graz 2003 RSA 200
从密码学看集成电路技术:密码算法的集成电路实现从密码学看集成电路技术:密码算法的集成电路实现
时间 FPGA/ASIC
速度1024 位签名
面积 实现者
2000 ASIC0.6um CMOS
560次 70mm2
106 晶体管.GroBschadl
2001 ASIC0.25um CMOS
400次 333K门 H.Nozaki日本
2006 0.18um 365次 B.Koo,Korea
2007 TSMC 0.25um 200ms/150MHZ
28K gates R.lu,X.Zeng
RSA 的集成电路实现 以下是 RSA 算法电路实现的一些研究结果
从密码学看集成电路技术:密码算法的集成电路实现从密码学看集成电路技术:密码算法的集成电路实现
ECC 算法的集成电路实现 ECC 的灵活多样,即多参数,给芯片实现带来困难。
芯片定义是个问题。
对外提供的运算功能
支持的有限域类型 :GF(2m),GF(p)
支持的有限域大小: 160, 192, 256 ,
研究状况
支持特定 GF(2m) 情况居多 ,
支持所有素数域 GF(p)
支持若干特定曲线, NIST曲线。
从密码学看集成电路技术:密码算法的集成电路实现从密码学看集成电路技术:密码算法的集成电路实现
时间 实现者 有限域 方式 速度1993 Agew GF(2155) ASIC 130
1997 Paar GF(2152) ASIC
1998 Sutikno GF(2155) FPGA 54
2000 Orlando GF(2167) FPGA 4761
2002 Sun Lab. GF(2163) FPGA 69872003 [Satoh] GF(2160) 0.13CMOS
510.2MHz,5236
2003 [Schroeppel]
GF(2178) 0.13CMOS143Kgates
2270
2008 Lai,JY GF(2160)GF(p)
0.13CMOS 155mu s340mu s
ECC 算法的集成电路实现 部分研究成果
从密码学看集成电路技术:密码算法的集成电路实现从密码学看集成电路技术:密码算法的集成电路实现
时间SHA-2
FPGA 速度1024 位签名
面积 实现者
2006 XCVP30-7SHA-2
SHA256:1.4GbpSHA512:
1.8G
775slices
1667slices.R. Chaves
2008 FPGA,SHA-512 1.3Gbps,103MHZ
Guang Yan
Zhu yue-fei2009 FPGA,SHA-1 5.9Gbps,118
MHZLee EH
Hash 函数的集成电路实现 Hash 函数的电路实现是当前密码算法芯片实现研究中的一个热点。
以下为部分研究结果
从密码学看集成电路技术:密码算法的集成电路实现从密码学看集成电路技术:密码算法的集成电路实现
真随机数生成器 真随机数集成电路生成的重要性
真随机数是所有安全方案实际安全性的第一源动力 方式
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 杂凑
域大小 160 192 256 384
GF(p) 8,278 5,814 3,307 1,491
GF(2m) 1,0496 7,368 4,157 N/A
39
清华大学微电子所相关工作—真随机数
多个真随机数产生芯片
基于热噪声
基于混沌原理
近年状况 集成电路技术的进步以及持续的学术研究,使得当前用集成电路实
现任何一种常用密码算法,显得比较容易。 对大多数密码算法,实现目标朝两个极端方向发展
紧凑性实现:极小面积,极低功耗。 高速实现:速度优先,不太考虑面积和功耗。
由过去的单芯片单功能,发展到了单芯片多功能,即单独一块芯片实现多种密码算法。即 SOC 密码芯片 :
客户端情况。智能 IC卡芯片是最典型一类。其中可能会包括3DES, AES, RSA, SHA-1等算法。包括什么算法是由应用标准决定的。
服务端情况:高速 SOC 密码协处理器。 如何比较各种实现,是个复杂问题。
从密码学看集成电路技术:密码算法的集成电路实现从密码学看集成电路技术:密码算法的集成电路实现
密码电路的安全性 攻击目标
获取密钥。 获取用户其它信息。 获取被实现算法。
攻击方法 侧信道攻击(非入侵式攻击)。
能量攻击。 错误攻击。 电磁攻击。
半入侵式攻击。 入侵式攻击。 木马和恶意电路攻击。
从密码学看集成电路技术:密码电路的安全保护从密码学看集成电路技术:密码电路的安全保护
差分功耗分析 P. Kocher1999 年针对攻击DES 算法的实现引入。
思想:运行 DES 算法设备时,在加密(或解密)过程中某个时段的电流值,与该时段内处理的包含有密钥信息的变量有关。这个变量由密钥和被加密的数据组成。更换数据,密钥不变,多次重复,同时收集该时间段内的能量消耗情况,即可利用这些信息容易判断出攻击者对密钥的猜测是否正确。由此,可以得到运行中的密钥。
基于这一思想的攻击称为 DPA(Differential Power Analysis) 。 DPA 对所有其他密码算法也十分有效。
目前对 DPA 的防止,只能做到增加攻击难度,不能完全消除。 在DPA 的启发下,已提出了各种攻击密码设备的侧信道方法。
IC卡芯片已成能量攻击的最大牺牲品: 理由为:攻击者容易得到和操控芯片。 提高 IC卡芯片的安全性已成为巨大产业最重要的技术问题。
从密码学看集成电路技术:密码电路的安全保护从密码学看集成电路技术:密码电路的安全保护
43
抗攻击成果算法级: ECC,RSA,3DES,AES等算法的抗攻击研究电路级:功耗平衡基本运算单元研究门级:抗功耗攻击单元门电路研究芯片反解剖工程研究
ECC 算法抗攻击研究THECC/233-100芯片的抗攻击研究
清华微电子所在功耗攻击方面的工作清华微电子所在功耗攻击方面的工作
43
对 ECC芯片多指数单数据( MESD )攻击P
k0
k1 ,k2 ,k3 …
k0P,k1P,k2P,k3P …THECC-100
k0=1110 x x xx….xx
k1=1110 1 1 11…..11
k2=1110 0 1 11…..11
k3=1110 0 0 11…..11
k0P
k1P
k2P
k3P
kmP km=1110 0 0 10….01
k0P-k1P
k0P-k2P
k0P-k3P
清华微电子所在功耗攻击方面的工作清华微电子所在功耗攻击方面的工作
清华微电子所在功耗攻击方面的工作清华微电子所在功耗攻击方面的工作
2012年 6月份完成
3DES以及 AES解密功耗曲线
3DES功耗曲线分析
3DES功耗曲线分析
3DES功耗曲线分析
单次 3DES运算波形
3DES计算过程前 90%
3DES计算过程前 90%低通处理
3DES计算过程后 10%
3DES后 10%重采样 5MHz
3DES后 10%重采样缩放
第一次 DES第一轮攻击Best correlation S-Box 1:0, sub key: 10 (0x0A), value: 0.1082, at position: 26541, sub key: 9 (0x09), value: 0.0401, at position: 2654Best correlation S-Box 2:0, sub key: 31 (0x1F), value: 0.1514, at position: 26541, sub key: 51 (0x33), value: 0.0559, at position: 2654Best correlation S-Box 7:0, sub key: 52 (0x34), value: 0.0697, at position: 26541, sub key: 61 (0x3D), value: 0.0438, at position:
2654Best correlation S-Box 8:0, sub key: 31 (0x1F), value: 0.2181, at position: 26541, sub key: 55 (0x37), value: 0.0534, at position: 2654Round key: 29 F4 EC 46 8D 1FNo matching DES key found
第一次 DES第二轮攻击Best correlation S-Box 1:0, sub key: 49 (0x31), value: 0.0786, at position: 26561, sub key: 50 (0x32), value: 0.0411, at position: 2656Best correlation S-Box 2:0, sub key: 27 (0x1B), value: 0.1378, at position: 26561, sub key: 18 (0x12), value: 0.0501, at position: 2656Best correlation S-Box 7:0, sub key: 21 (0x15), value: 0.0504, at position: 26561, sub key: 56 (0x38), value: 0.0289, at position: 2656Best correlation S-Box 8:0, sub key: 10 (0x0A), value: 0.0655, at position: 26561, sub key: 34 (0x22), value: 0.0447, at position: 2656DES key bits round 1:
01011xx010xx110000101000001100100111000001x10x101x0x001011101110
DES key bits round 2: 01xx100010111100011010000011001001x10x000x1x0010110000101110xx10
mismatch at bit 171 mismatches in 1 sub keysFound matching DES key: 58 BC 28 32 70 72 C2 EE
第一次 DES分析结果
DES key bits round 1: 01011xx010xx110000101000001100100111000001x10x101x0x001011101110
DES key bits round 2: 01xx100010111100011010000011001001x10x000x1x0010110000101110xx10
mismatch at bit 171 mismatches in 1 sub keysFound matching DES key: 58 BC 28 32 70 72 C2 EE
其它攻击 容错攻击
高、低电压攻击。 时钟频率攻击。 错误注入攻击。
半入侵式攻击。 目前对 DPA 的防止,只能做到增加攻击难度,不能完全消除。 在DPA 的启发下,已提出了各种攻击密码设备的侧信道方法。
入侵式攻击。 理由为:攻击者容易得到和操控芯片。 提高 IC卡芯片的安全性已成为巨大产业最重要的技术问题。
从密码学看集成电路技术:密码电路的安全保护从密码学看集成电路技术:密码电路的安全保护
60
失效分析与侧信道攻击失效分析与侧信道攻击
60
61
失效分析与侧信道攻击失效分析与侧信道攻击
芯片设计说明芯片设计说明
芯片设计、版图芯片设计、版图
芯片制造芯片制造
芯片测试、使用芯片测试、使用
修改,注入木马修改,注入木马
木马注入与检测木马注入与检测。。
63
对对 FlashFlash 的攻击的攻击
解剖攻击的一个成功案例:对解剖攻击的一个成功案例:对 MifareMifare 芯片的攻击芯片的攻击
Mifare芯片:普遍用于公交等领域的一款低端 IC卡芯片(逻辑加密卡)。 2008 年首次通过入侵式攻击(解剖方法)获取了其中加密 与认证方法。 已被完全攻破。
去封装后的芯片表面分析 提取出的核心电路
小结。把集成电路技术作为工具,目前研究主要包括两方面: 密码算法的集成电路实现
已不是太困难的问题,也不是研究热点了。 密码电路的安全保护
侧信道攻击(功耗,电磁辐射)与抗攻击 容错攻击
高、低电压攻击;时钟频率攻击;错误注入攻击。 半入侵式攻击。 入侵式攻击。
从密码学看集成电路技术从密码学看集成电路技术
集成电路技术接间地导致了现代密码学的产生和发展。 集成电路技术直接导致了人的计算和通信能力的提高,导致了对各种密
码算法的需求。从而接间地导致了现代密码学的诞生。 从反面看:
电子管发明( 1907 年)很长时间后没有导致现代密码学产生。 计算机发明( 1945 年)很长时间后没有导致现代密码学产生。 晶体管发明( 1947 年)很长时间后也没有导致现代密码学的产生。 Shannon 理论( 1949 年)也没有导致现代密码学的产生。
“和面团”思想 20 多年都没能实现。 集成电路发明( 1958 年)后的十多年就导致了现代密码学的产生。
集成电路技术直接影响了现代分组密码算法的设计 DES 的设计中,考虑到集成电路实现的容易性是它的重要一面。 后来 AES等的设计才考虑来用通用处理器实现的便利性。
从集成电路技术看现代密码学从集成电路技术看现代密码学
DES 算法
超宽的数据( 32 比特)、
置换、扩展、压缩、异或、查表等等操作,
是集成电路最容易实现的操作。
明文 P
初始密钥加
密钥 K 明文 P
10
密钥加
行移位
字节替换
9字节替换
行移位
列混合
密钥加
K0=K
K1
K9
K10
密文 C
1逆列混合
密钥加
逆字节替换
逆行移位
逆行移位
逆字节替换
密钥加
9逆列混合
密钥加
逆字节替换
逆行移位
密文 C
初始密钥加
1字节替换
行移位
列混合
密钥加
AES
集成电路技术的快速发展使公钥密码的应用成为可能。 集成电路的发展使序列密码的易实现性和高速性不再明显。
在集成电路发明前,由电子管或晶体管搭建的移位寄存器成本较高。 当前通过分组密码产生序列的速度已很高。
集成电路技术使密码学真正地从加密机器的设计中分离出来,成为一门独立的科学。
集成电路技术是整个现代密码学产生、发展的技术基础。 没有集成电路技术,就没有现代密码学。 先有集成电路技术,后有现代密码学。
从集成电路技术看现代密码学从集成电路技术看现代密码学
时间 工艺 位数 时钟 速度 (byte/s)
实现者
1981 3um 336 4MHz 1.2K Sandia
1985 Gate Array 512 5MHz 3.8K Bus.Sim
1987 1.5um 1024 4MHz 7.7K AT&T
1987 1.5um 1024 16MHz 3.4K Cylink
1988 Gate Array 512 14MHz 17K Cryptech
1988 1.0um 512 25MHz 5.3K CNET
1988 2.5um 256 10MHz 10.2K Brit.Telecom
1989 512 10MHz 10.2K Plessy
1989 2.0um 512 8MHz 10.0K Sandia
1989 1.2um 512 16MHz 2.0K Philips
RSA 的集成电路实现 以下为 RSA 算法最早期的集成电路实现结果
公司 时间 型号 速度
Corrent 2001 CR7020 5000
Hifn 2001 8154 1200
Secureakink
2001 PCC-ISEC 688
Secureakink
2001 PCC2020 1300
Cavim Network
s 2003 CN1010 7000
Graz 2003 RSA 200
RSA 的集成电路实现 以下是 RSA 算法电路实现近十年内的一些研究结果
集成电路的快速发展使公钥密码的应用成为可能。 集成电路的发展使序列密码的易实现性和高速性特点不再明显。
在集成电路发明前,由电子管或晶体管搭建的移位寄存器成本较高。 当前通过分组密码产生序列的速度已很高。
集成电路使密码学真正地从加密机器的设计中分离出来,成为一门独立的科学。
集成电路技术是整个现代密码学产生、发展的技术基础。 没有集成电路技术,就没有现代密码学。 先有集成电路技术,后有现代密码学。
当前,集成电路的技术水平已远超人们对密码算法的设计能力。我们可以尽情地、完全不用考虑其可否实现地构造你能想到的任何密码算法。
从集成电路技术看现代密码学从集成电路技术看现代密码学
技术进化简况 密码与密码机史前时代1844 :电报1895 :无线电1907 :电子管
1945 :计算机1947 :晶体管1958 :集成电路1968 :互联网1978: 16位 8086CPU1982: 16位 80286CPU1985: 32位 80386CPU1994: 32 位奔腾 CPU1999: 32 位奔Ⅲ CPU2000: 32 位奔 -4CPU2004: 32 位双核
史前时代:手工密码时代1920 前:纯机械密码时代1917 :一次一密1919: Enigma 电气加密机1942 :图灵的 Bombe 机
1972: IBM的 LUCIFER1976:Diffie-Hellman 公钥1977:DES1978: RSA1985: ECC2000: AES
2012: SHA-3
4000多年前古埃及替换密码。
公元前 500年斯巴达人的加密机
轮子密码。目前被发现最早的加密设备。 18th Century Cipher
美国内战时期曾使用的加密设备。 1865 。
M-209.美军二战时曾使用的一种密码机,纯机械的。
德国二战时曾使用的
ENIGMA 密码机
二战时英国人发明的用于破译德国密码的专用机器:Bombe
八十年代美国NSA 用作密码分析的超级计算机 .
由数百个通用 CPU 组成。420MHZ
集成电路的快速发展使公钥密码的应用成为可能。 集成电路的发展使序列密码的易实现性和高速性特点不再明显。
在集成电路发明前,由电子管或晶体管搭建的移位寄存器成本较高。 当前通过分组密码产生序列的速度已很高。
集成电路使密码学真正地从加密机器的设计中分离出来,成为一门独立的科学。
集成电路技术是整个现代密码学产生、发展的技术基础。 没有集成电路技术,就没有现代密码学。 先有集成电路技术,后有现代密码学。
当前,集成电路的技术水平已远超人们对密码算法的设计能力。我们可以尽情地、完全不用考虑其可否实现地构造你能想到的任何密码算法。
从集成电路技术看现代密码学从集成电路技术看现代密码学
时间 FPGA/ASIC
代价 需要时间 提出或实现者
评估 /实际攻击
1977 ASIC 2000万美元
24小时 DiffieHellman
评估
1993 57,000个
DES芯片
100万美元
3.5小时 WienerCRYPTO’9
3
评估
1996 FPGA 4,5000美元
1 年 Goldberg 评估
1997 ASIC 100万美元
35 分钟 评估
1998 1856块ASIC芯片
25万美元 4.5天 电子前沿基金会
实际攻击
2008 140块FPGA
COPACOBANA
6.4天 /2 天 /2009
C.Paar 实际攻击
密码分析设备
攻击DES的Deep Crack
关于 DES 的评估与实际攻击情况
从集成电路技术看现代密码学从集成电路技术看现代密码学
由 FPGA芯片阵列组成的密码分析机 COPACOBANA
密码分析设备
从集成电路技术看现代密码学从集成电路技术看现代密码学
RSA 分析芯片 学术研究进展
时间 设计名称 代价 需要时间 提出或实现者
评估 /实际攻击
1999 TWINKLE Shamir 评估2003 TWIRL 1000万美
元1 年 Shamir
Tromer评估
2007 90nm工艺 100万美元 2-3 年 Geiselmann
Steinwandt
评估
2007 CAIRN-2(FPGA)
30天分解423 位
Izu T.等日本
实际
密码分析芯片密码分析芯片
从集成电路技术看现代密码学从集成电路技术看现代密码学
ECC 分析芯片 评估
SHARCS2006:Gunesu T. , Paar C.评估得出,对 ECCp-163 ,用 ASIC, 1 年内攻破,需 5800亿美元。
CHES2007:De Dormale G.评估得出,对 GF(2163)ECC,用ASIC芯片, 1 年攻破,需 700亿
实际攻击 2002 年,用 1 万台左右计算机,运行 549天,攻破了 ECCp-109 。 2009 年,在 SHARCS09, 瑞士洛桑理工大学, Lenstra等人 ,利用
Pollard Rho 方法,使用 200 多台 PlayStation3(Sony 公司的一款游戏机平台),实际运行 3 个半月,攻破了 ECCp-112 。
SHA-1 分析芯片 2005 年, Satoh给出攻 SHA-1的 ASIC 方案, 1 千万美
元, 127天得碰撞 对 A5/1和 A5/2 的分析, 1 小时内可破。
从集成电路技术看现代密码学从集成电路技术看现代密码学
EPFL: 用于攻击 ECCp-112 的机器阵列, 200台, 3.5月破解
88
从集成电路技术看现代密码学从集成电路技术看现代密码学
RSA-768, 2009年 12月历时两年被分解
n=:12301866845301177551304949583849627207728535695953347921973224521517264005
07263657518745202199786469389956474942774063845925192557326303453731548268
50791702612214291346167042921431160222124047927473779408066535141959745985
6902143413.
= 3347807169895689878604416984821269081770479498371376856891
2431388982883793878002287614711652531743087737814467999489
*
3674604366679959042824463379962795263227915816434308764267
6032283815739666511279233373417143396810270092798736308917
从集成电路技术看现代密码学从集成电路技术看现代密码学
结论结论 过去,集成电路技术的发明和发展使密码算法的分析与设
计从密码机的设计制造中分离出来,成为一门独立的学科。 现在,集成电路技术在现代密码学研究中已被默认为前提条件。正是由于这个条件的存在,使得我们现在可以设计任何你能想到的密码算法,而不用担心它的实现。
未来: 只要 Moore 定律还发挥作用,则当前这种情况仍将继续。一般认
为在 2030 年前, Moore 定律是成立的。 如果集成电路技术被新的技术取代,则现代密码学自诞生以来的稳
定发展期将会被打破。
谢 谢!
top related