秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128...

30
128ビットブロック暗号 CLEFIA 小型ハードウェア実装評価 秋下 徹 樋渡 玄良 ソニー株式会社

Transcript of 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128...

Page 1: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

128ビットブロック暗号 CLEFIA の

小型ハードウェア実装評価

秋下 徹 樋渡 玄良

ソニー株式会社

Page 2: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

本発表の概要

• 128 ビットブロック暗号 CLEFIA のハードウェア実装の更なる小型化を目指して,8 ビット・シリアルアーキテクチャに基づいた実装を行なった.

• 128 ビット鍵 CLEFIA の実装評価結果

– 暗号化のみ 2.9 kGE– 暗復号 3.0 kGE

CLEFIA のハードウェア実装における小型実装性能を示す結果が得られた

2

Page 3: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

本発表の流れ

• 128 ビットブロック暗号 CLEFIA– 概要

– 既存のハードウェア実装評価

• 8 ビット・シリアルアーキテクチャによる AES 実装

– Hamalainen らの AES 実装

• 8 ビット・シリアルアーキテクチャによる CLEFIA 実装

– CLEFIA 暗号化実装

– CLEFIA 暗復号実装

• 実装性能評価

• まとめ

3

Page 4: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

128 ビットブロック暗号 CLEFIA• 名古屋大学とソニーにより 2007 年に提案された共通鍵ブロック暗号

– ブロック長:128ビット

– 鍵長:128/192/256ビット

• 安全性,速度,実装コストのバランスを追及

• 基本構造

– Type-2 一般化Feistel構造 (GFN)• データ処理部, 鍵スケジュール部ともに

– ラウンド数: 18 (128ビット鍵)22 (192ビット鍵)26 (256ビット鍵)

4

Page 5: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

鍵スケジュール部

データ処理部

平文鍵

暗号文

DoubleSwap F0

F0

F0

F0

F1

F1

F1

F1

: : : :

DoubleSwap

DoubleSwap

DoubleSwap

DoubleSwap

DoubleSwap

(ラウンド数を削減した)

データ処理部

5

Page 6: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

1 8 2 a8 1 a 22 a 1 8a 2 8 1

行列 M1S1

S0

S1

S0

F1

F 関数

• SP型F0

F0

F0

F0

F1

F1

F1

F1

1 2 4 62 1 6 44 6 1 26 4 2 1

行列 M0

S1

S0

S1

S0

F0

6

Page 7: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

CLEFIA のハードウェア実装評価

• 設計者評価

実装法 アルゴリズム暗/復号(cycle)

ゲート規模(GE)

速度(Mbps)

ゲート効率(Kbps/GE)

プロセス

(um)

高速版

CLEFIA 18 5,979 1,605.94 268.63 1.98 0.09AES 11 12,454 1,691.35 135.81 1 0.13

Camellia 22 10,993 971.29 88.36 0.65 0.13

小型版

CLEFIA 36 4,950 715.69 144.59 2.51 0.09AES 54 5,398 311.09 57.63 1 0.13

Camellia 44 6,511 325.76 50.03 0.87 0.13

白井, 渋谷, 秋下, 盛合, 岩田. “128 ビットブロック暗号 CLEFIA のハードウェア実装評価”,ISEC 2007-49

7

Page 8: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

CLEFIA のハードウェア実装評価

• 第三者評価

– ISO 標準ブロック暗号 (ISO/IEC 18033-3) との比較

面積 (kGE)

速度

(Mbi

t/s)

0

500

1000

1500

2000

2500

3000

3500

4000

0 20 40 60 80

CLEFIA

AES

Camellia

SEED

Triple‐DES

MISTY1

CAST‐128

菅原, 本間, 青木, 佐藤. “128 ビットブロック暗号 CLEFIA の ASIC 実装評価”, CSS2007

8

Page 9: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

AES の小型実装

• RFID では暗号プリミティブに使用可能なゲート規模が 250-4,000 GE

• AES-128 の 8 ビット・シリアルアーキテクチャによる実装

– 規模の大きい S-box 回路を 1 つのみ配置し小型化を図る

– Feldhofer らによる実装 3,400 GE• RAM を用いたシリアルアーキテクチャ,暗復号に対応

– Hamalainen らによる実装 3,100 GE• シフトレジスタを用いたシリアルアーキテクチャ,暗号化のみ対応

9

Page 10: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

S S S S

2 3 1 11 2 3 11 1 2 33 1 1 2

S S S S

2 3 1 11 2 3 11 1 2 33 1 1 2

S S S S

2 3 1 11 2 3 11 1 2 33 1 1 2

S S S S

2 3 1 11 2 3 11 1 2 33 1 1 2

データ処理回路を S-box 回路 1 つのみで構成,1 ラウンドを 16 サイクルで実行

Hamalainen らの AES 実装

10

Page 11: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

Hamalainen らの AES 実装

S S S S

2 3 1 11 2 3 11 1 2 33 1 1 2

S S S S

2 3 1 11 2 3 11 1 2 33 1 1 2

S S S S

2 3 1 11 2 3 11 1 2 33 1 1 2

S S S S

2 3 1 11 2 3 11 1 2 33 1 1 2

1 サイクル目

11

Page 12: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

Hamalainen らの AES 実装

S S S S

2 3 1 11 2 3 11 1 2 33 1 1 2

S S S S

2 3 1 11 2 3 11 1 2 33 1 1 2

S S S S

2 3 1 11 2 3 11 1 2 33 1 1 2

S S S S

2 3 1 11 2 3 11 1 2 33 1 1 2

2 サイクル目

12

Page 13: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

Hamalainen らの AES 実装

S S S S

2 3 1 11 2 3 11 1 2 33 1 1 2

S S S S

2 3 1 11 2 3 11 1 2 33 1 1 2

S S S S

2 3 1 11 2 3 11 1 2 33 1 1 2

S S S S

2 3 1 11 2 3 11 1 2 33 1 1 2

3 サイクル目

13

Page 14: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

Hamalainen らの AES 実装

S S S S

2 3 1 11 2 3 11 1 2 33 1 1 2

S S S S

2 3 1 11 2 3 11 1 2 33 1 1 2

S S S S

2 3 1 11 2 3 11 1 2 33 1 1 2

S S S S

2 3 1 11 2 3 11 1 2 33 1 1 2

4 サイクル目

14

Page 15: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

Hamalainen らの AES 実装

S S S S

2 3 1 11 2 3 11 1 2 33 1 1 2

S S S S

2 3 1 11 2 3 11 1 2 33 1 1 2

S S S S

2 3 1 11 2 3 11 1 2 33 1 1 2

S S S S

2 3 1 11 2 3 11 1 2 33 1 1 2

16 + 3 バイト分のレジスタが必要

1 サイクル目

15

Page 16: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

Hamalainen らの AES 実装

• データパス

3 バイト分のレジスタ

16

Page 17: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

CLEFIA の小型実装

• 従来の実装評価結果では 4,950 GE が 小

– F 関数を 1 サイクルで実行する 32 ビット・アーキテクチャ

• シフトレジスタを用いた 8 ビット・シリアルアーキテクチャにより小型化を図る

– 鍵スケジュールにビット演算を含む CLEFIA は RAM を用いた実装には不向き

17

Page 18: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

CLEFIA 暗号化実装

S1

S0

S1

S0

M01 2 4 62 1 6 44 6 1 26 4 2 1

1 ラウンドを 8 サイクルで実行

S0

S1

S0

S1

M11 8 2 a8 1 a 22 a 1 8a 2 8 1

18

Page 19: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

CLEFIA 暗号化実装

S1

S0

S1

S0

M01 2 4 62 1 6 44 6 1 26 4 2 1

S0

S1

S0

S1

M11 8 2 a8 1 a 22 a 1 8a 2 8 1

1 サイクル目

19

Page 20: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

CLEFIA 暗号化実装

S1

S0

S1

S0

M01 2 4 62 1 6 44 6 1 26 4 2 1

S0

S1

S0

S1

M11 8 2 a8 1 a 22 a 1 8a 2 8 1

2 サイクル目

20

Page 21: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

CLEFIA 暗号化実装

S1

S0

S1

S0

M01 2 4 62 1 6 44 6 1 26 4 2 1

S0

S1

S0

S1

M11 8 2 a8 1 a 22 a 1 8a 2 8 1

3 サイクル目

21

Page 22: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

CLEFIA 暗号化実装

S1

S0

S1

S0

M01 2 4 62 1 6 44 6 1 26 4 2 1

S0

S1

S0

S1

M11 8 2 a8 1 a 22 a 1 8a 2 8 1

4 サイクル目

16 バイト分のレジスタで実装可能

22

Page 23: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

• データパス

CLEFIA シリアル暗号化実装

2種類のS-box

2種類の行列

Hadamard型行列

23

Page 24: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

CLEFIA シリアル暗復号実装

P0

F0

P1

K0

P2

F1

P3

K1

F0

K0

F1

K1

F0

K2

F1

K3

F0

K3

F1

K2

F0

K2

F1

C0 C1 C2 C3

K3

RK0

RK2 RK3

RK1

RK5RK4

RK32 RK33

RK35RK34

暗号化 復号C0

F0

C1

K2

C2

F1

C3

K3

F0

K3

F1

K2

F0

K1

F1

K0

F0

K0

F1

K1

F0

K0

F1

P0 P1 P2 P3

K1

RK34

RK32 RK33

RK35

RK31RK30

RK2 RK3

RK1RK0

ワード巡回方向が異なるためセレクタの増加が見込まれる

復号の偶数ラウンド目のF0 と F1 の配置を入れ替えると

24

Page 25: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

CLEFIA シリアル暗復号実装

P0

F0

P1

K0

P2

F1

P3

K1

F0

K0

F1

K1

F0

K2

F1

K3

F0

K3

F1

K2

F0

K2

F1

C0 C1 C2 C3

K3

RK0

RK2 RK3

RK1

RK5RK4

RK32 RK33

RK35RK34

暗号化 復号C0

F0

C1

K2

C2

F1

C3

K3

F0

K3

F1

K2

F0

K1

F1

K0

F0

K0

F1

K1

F0

K0

F1

P0 P1 P2 P3

K1

RK34

RK32 RK33

RK35

RK31RK30

RK2 RK3

RK1RK0

復号改C0

F0

C1

K2

C2

F1

C3

K3

F1

K2

F0

K3

F0

K1

F1

K0

F0

K0

F1

K1

F1

K1

F0

P2 P3 P0 P1

K0

RK34

RK33 RK32

RK35

RK31RK30

RK2 RK3

RK0RK1

ワード巡回方向が同じ方向となり,データパスに大きな変更の必要なし

偶数ラウンド目のラウンド鍵の順序が異なる

データ出力のワード位置の違い

25

Page 26: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

CLEFIA シリアル暗復号実装

• データパス

ラウンド鍵の順序変更

暗復号でのデータ出力位置の違い

26

Page 27: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

実装環境

記述言語 Verilog-VHDLシミュレータ VCS ver.2006.06論理合成ツール Design Compiler ver.2007.03-SP3設計ライブラリ 0.13um CMOS 標準セルライブラリ

1 GE = 2-way NAND, 悪条件

27

Page 28: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

実装性能評価

アルゴリズム

モードアーキテク

チャサイクル

ゲート(GE)

周波数(MHz)

速度(Mbps)

プロセス

(um)

CLEFIAenc 8 ビット

シフトレジスタ176 2,893 67 49 0.13

enc/dec 8 ビットシフトレジスタ

176 2,996 61 44 0.13

CLEFIA enc/dec 32 ビット 38 4,950 201 677 0.09

AES enc 8 ビットシフトレジスタ

177 3,100 152 110 0.13

AES enc/dec 8 ビットRAM 1,032 3,400 90 10 0.35

※ サイクルは入出力に必要なサイクル数を含む

28

Page 29: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

まとめ

• 128 ビットブロック暗号 CLEFIA のハードウェア実装の更なる小型化を目指して,8 ビット・シリアルアーキテクチャに基づいた実装を行なった

• 128 ビット鍵 CLEFIA の実装評価結果

– 暗号化のみ 2,893 GE– 暗復号 2,996 GE

• 既存の CLEFIA の 小値に対して 39% の小型化を実現

• AES より小さなゲート規模を実現

CLEFIA のハードウェア実装における小型実装性能を示す結果が得られた

29

Page 30: 秋下徹 樋渡玄良 ソニー株式会社 - Sony本発表の概要 • 128 ビットブロック暗号CLEFIA のハードウェア実装 の更なる小型化を目指して,8

ご清聴ありがとうございました