Ọ Ệ Ễ Ệ Ư H C VI N CÔNG NGH  B U CHÍNH VI N THÔNG

Ạ Ọ

Đ  ÁN T T NGHI P Đ I H C

Đề tài:

Biện pháp thỏa đáng bảo mật vô tuyến với FPGA và ASIC

Giáo viên hướng dẫn : Ths. Phạm Khắc Chư

1

Sinh viên thực hiện : Nguyễn Văn Quảng

N i dung đ  tài

ớ ế ệ ậ 1. Gi ề ả i thi u chung v  b o m t vô tuy n

ế ả ậ ạ 2. Ki n trúc b o m t m ng GSM

ế ả ậ ạ 3. Ki n trúc b o m t m ng W­CDMA

2

Ứ ụ ế ậ ả 4. ng d ng FPGA trong b o m t vô tuy n

ế

B o m t vô tuy n

Yêu c u:ầ

ả ụ

ậ 1. Nh n th c 2. Tính tin c yậ 3. Tính toàn v nẹ 4. Tính kh  d ng

3

Các thuật toán mã hoá

ố ứ ấ ố ứ

1. Mã hóa khóa đ i x ng 2. Mã hóa khóa b t đ i x ng 3. Hàm băm ự 4. Mã nh n th c b n tin ệ ử 5. Ch  ký đi n t ẩ 6. Chu n mã hóa DES và AES

4

ố ứ

Mã hóa khóa đ i x ng

Kênh C

Khóa bí m tậ

Khóa bí m tậ

SKc SKc

ả B n tin  g cố

B n tin  đã mã hóa

ả B n tin  g cố

SYM SYM

ố ứ

Nguyên lý mã hóa đ i x ng

5

ấ ố ứ

Mã hóa khóa b t đ i x ng

Khóa công khai

Khóa công khai

Khóa bí m tậ

KXu KYu

ả B n tin  g cố

B n tin  đã mã hóa

ả B n tin  g cố

ASYM ASYM

ấ ố ứ Nguyên lý mã hóa b t đ i x ng và thu t toán RSA

6

Qu n lý khóa m t mã

ạ ư

• T o khóa • L u tr  khóa ữ • Phân ph i khóa • Thay đ i khóa ổ • H y khóa

7

ế

ả Ki n trúc b o m t GSM

8

ế

Ki n trúc b o m t m ng GSM

HLR

PSTN

BTS

BTS

SMSC

AuC

GMSC

BSC

BTS

EIR

TRAU

MSC/VLR

T¶i

BSC

B¸o hiÖu

BTS

IWF

9

Các thành ph n b o m t GSM

• AuC • HLR • VLR • Th  SIMẻ • IMSI và TMSI • Thu t toán mã hoá ậ • TDMA • Nh y t n ả ầ • EIR/IMEI

10

ữ ệ

ủ ụ

Th  t c mã hóa d  li u trong GSM

MS

Sè ngÉu nhiªn

M¹ng

Ki

A8

Kc

Kc

Giao diÖn Um

D÷ liÖu ban ®Çu

ThuËt to¸n A5

ThuËt to¸n A5

11

ậ B o m t GSM

ử ụ

ữ ệ ế • S  d ng các thu t toán mã hóa bí m t ậ ậ • Khóa mã hóa tr c ti p d  li u Kc đ ượ ự c sinh

ng u nhiên

ẫ ộ ậ

ự ả ạ c b o m t trong m ng lõi

12

ủ ụ ả ề ẻ ờ ệ • Đ  dài khóa nh n th c thuê bao Ki : 128 bit ự • Ph m vi mã hóa d  li u : Um ữ ệ • Không nh n th c m ng ạ ậ • Không đ ậ ượ • Th  t c truy n khóa không an toàn • Kh  năng b  gãy khóa hi n nay : 20 gi

ế

Ki n trúc b o m t W­CDMA

13

ế

ậ Ki n trúc b o m t m ng W­CDMA

• Yêu c u b o m t: ẫ

ả ự

ầ ậ

ệ ả ả ả – Nh n th c chéo l n nhau. – Đ m b o tính tin c y c a b n tin báo hi u  ậ ủ

ư ố ệ cũng nh  s  li u.

ủ ệ ả ả ả – Đ m b o tính toàn v n c a b n tin báo hi u. ẹ

ỏ ậ

ấ – Nh n th c: Giao th c th a thu n khóa và  ứ

ậ ậ

• C u trúc: ự ự nh n th c (AKA). ậ

ậ f9.

14

ậ – Tính tin c y: thu t toán  ậ f8 . – Tính toàn v n: thu t toán  ẹ – Mã hóa kh i: thu t toán KASUMI. ố

ậ ủ

ả ố ệ

Thu t toán đ m b o tính tin c y c a   b n  tin báo hi u và s  li u –

f8

ậ ủ ả

ố ệ ớ

• Đ m b o tính tin c y c a c  thông tin báo hi u và s  li u. • Là thu t toán mã hóa xo n đ  t o chu i khóa đ  XOR v i thông  ể ạ

ả ậ tin c n truy n.

phía thu và phía phát.

ế

ề ầ • S  d ng c   ả ở ử ụ • Là thu t toán đ ậ

c th c hi n b ng cách liên k t các kh i  ầ ở

ự ệ ế ộ ồ ế

ượ KASUMI v i nhau

ch  đ  H i ti p đ u ra (OFB).

15

ả Thu t toán đ m b o tính toàn v n c a  b n tin báo hi u –  f9

ở ả

c  phía phát và phía thu.

c  hai phía.

ở ả ố

ế

• S  d ng  ử ụ • Tính toán mã nh n th c b n tin (MAC)  ả • Đ c th c hi n b ng cách liên k t các kh i KASUMI v i  ằ

ượ nhau

ệ  ch  đ

(CBC).

ế ộ chu i các kh i mã hóa

16

KASUMI

17

Thu t toán mã hóa kh i KASUMI

ủ ố ầ ầ • Ki n trúc tám vòng x  lý ử • Đ u vào b n tin g c là đ u vào c a vòng đ u  ả

ế ầ tiên

ủ ượ ầ c mã hóa là đ u ra c a vòng

ượ • Kh i d  li u đ ố ữ ệ ố cu i cùng • Khóa m t mã K đ ậ

ộ ể ạ ậ c dùng đ  t o t p khóa  vòng (KLi, KOi, KIi) cho m i vòng  i • M i vòng tính toán theo m t hàm  f  khác nhau,

ỗ ụ ộ ph  thu c vào

ả t p ậ khóa vòng • Thu t toán là đ i x ng, dùng chung cho c  mã  ố ứ

ả ậ hoá và gi i mã

ề ẫ ầ • Có kh  năng cài đ t c  trên ph n m m l n  ặ ả

18

ứ ầ ả ph n c ng

ỨNG DỤNG FPGA TRONG

BẢO MẬT VÔ TUYẾN

19

ế ế

Thi

t k  thu t toán KASUMI trên FPGA

ậ ặ ả

ầ ầ

ề ặ

• Thu t toán KASUMI cho phép cài đ t c  trên  ứ ph n m m và ph n c ng: – Cài đ t trên ph n m m b ng ngôn ng  assembly

ạ ố

ầ ộ ử ố

ằ ch y trên b  x  lý Intel Pentium III – 800 MHz đ t t c  đ  mã hóa t ặ ặ

ỏ ọ

i đa 230 Mbps. – Cài đ t trên FPGA – 50 000 c ng : 800 Mbps. – Cài đ t trên FPGA, phiên b n nh  g n – 7600 c ng :

72 Mbps

ế ế ả ỏ t k  thu t toán KASUMI, phiên b n nh

ố ể

i thi u tài nguyên FPGA ấ

ế

20

• Thi ậ ử ụ ọ g n s  d ng t – Thi ế ế t k  phân c p theo các hàm FL, FO, FI, S­box – Tái s  d ng các modul theo ki n trúc vòng làm gi m  ử ụ ộ ố t c đ  mã hóa

Thu t toán KASUMI

1

2

3

21

Thu t toán KASUMI

4

22

ế

K t lu n

ự ứ ả ậ • Nghiên c u các th  t c nh n th c và b o  ủ ụ

ậ ạ m t trong m ng GSM và W­CDMA.

ố ứ • Nghiên c u các thu t toán mã hóa đ i x ng  ậ

ệ ặ ậ t là thu t toán

ứ ấ ố ứ ứ ụ và b t đ i x ng, đ c bi KASUMI  ng d ng trong W­CDMA.

ể ươ ế ế • Tìm hi u ph ng pháp thi ậ t k  thu t toán

23

KASUMI trên FPGA.

Xin chân thành cảm ơn!

24

CPLD và FPGA

25

CPLD và FPGA

ổ ồ • Bao g m các c ng logic (AND, OR, NOT) có

ả c.

ệ i ngay trong h

ấ ấ th ng, ch  trong vài giây.

26

ố ậ ộ ả ệ ẻ ượ kh  năng c u hình đ • Cho phép c u hình l ạ ỉ • M t đ  tích h p cao • Gi ả i pháp hi u qu  cao, giá r

FPGA - Field Programmable Gate Array

Khối I/O (IOB)

Liên kết cấu hình được

Khối Logic cấu hình được (CLB)

Bộ đệm ba trạng thái

Khối quản lý đồng hồ (DCM)

27

C u trúc CLB và Slice

i các tài

ố ồ M i CLB g m b n Slice • Ma tr n chuy n m ch cung  ể ậ ớ c p truy nh p t nguyên chung ế ớ

• Đ nh tuy n t

i các Slice

ho c CLB khác

28

ế

C u trúc chi ti

t m t Slice

29

• LUT • MUX • Logic nhớ • Flip­Flop