1. Trang chủ
  2. » Luận Văn - Báo Cáo

Luận văn thạc sĩ Kỹ thuật viễn thông: Công nghệ IP Security và hiện thực trên FPGA

86 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

Trang 1

ĈҤI HӐC QUӔC GIA TP HCM

75ѬӠ1*ĈҤI HӐC BÁCH KHOA

-

/ÇĈÎ1+9ѬѪ1*

CÔNG NGHӊ IP SECURITY VÀ HIӊN THӴC TRÊN FPGA

IP SECURITY TECHNOLOGY AND IMPLEMENTATION ON FPGA

Chuyên ngành: Kӻ Thuұt ViӉn Thông Mã sӕ: 8520208

LUҰ19Ă17+Ҥ&6Ƭ

TP HӖ CHÍ MINH, tháng 01 QăP2021

Trang 2

&Ð1*75Î1+ĈѬӦC HOÀN THÀNH TҤI 75ѬӠ1*ĈҤI HӐC BÁCH KHOA ±Ĉ+4*-HCM

Cán bӝ Kѭӟng dүn khoa hӑc : PGS.TS HӖ 9Ă1.+ѬѪ1*

Cán bӝ chҩm nhұn xét 1 : TS VÕ QUӂ 6Ѫ1

Cán bӝ chҩm nhұn xét 2 : TS NGUYӈ1ĈÎ1+/21*

LuұQYăQWKҥFVƭÿѭӧc bҧo vӋ tҥL7UѭӡQJĈҥi hӑF%iFK.KRDĈ+4*7S+&0ngày 20 tháng 01 QăP2021

Thành phҫn HӝLÿӗQJÿiQKJLiOXұQYăQWKҥFVƭJӗm:

(Ghi rõ hӑ, tên, hӑc hàm, hӑc vӏ cӫa HӝLÿӗng chҩm bҧo vӋ luұQYăQWKҥFVƭ 1 Chӫ Tӏch: GS.TS LÊ TIӂ17+ѬӠNG

2 7Kѭ.ê3*676ĈӚ HӖNG TUҨN 3 Phҧn BiӋn 1: TS VÕ QUӂ 6Ѫ1

4 Phҧn BiӋn 2: TS NGUYӈ1ĈÎ1+/21* 5 Ӫy Viên: PGS.TS PHҤM HӖNG LIÊN

Xác nhұn cӫa Chӫ tӏch HӝLÿӗQJÿiQKJLi/9Yj7Uѭӣng Khoa quҧn lý chuyên ngành sau khi luұQYăQÿmÿѭӧc sӱa chӳa (nӃu có)

Trang 3

ĈҤI HӐC QUӔC GIA TP.HCM

1Jj\WKiQJQăPVLQK 1ѫLVLQKBà Rӏa ± 9NJQJ7jX

&KX\rQQJjQK.Ӻ7+8Ұ79,ӈ17+Ð1* 0mVӕ : 8520208

I 7Ç1Ĉӄ TÀI (TiӃng ViӋt và TiӃng Anh):

CÔNG NGHӊ IP SECURITY VÀ HIӊN THӴC TRÊN FPGA

IP SECURITY TECHNOLOGY AND IMPLEMENTATION ON FPGA

II NHIӊM VӨ VÀ NӜI DUNG: - ĈӅ xuҩt mô hình FPGA-based IPsec Acceleration - ĈӅ xuҩWVѫÿӗ khӕi và mô tҧ hoҥWÿӝng cӫa lõi IP AES128/192/256 - Thӵc nghiӋm mã hóa, giҧLPm$(6YjÿyQJJyL,3VHFWUrQ)3*$

III NGÀY GIAO NHIӊM VӨ : 10/02/2020

IV NGÀY HOÀN THÀNH NHIӊM VӨ: 21/06/2020

V CÁN BӜ +ѬӞNG DҮN: PGS.TS HӖ 9Ă1.+ѬѪ1*

Trang 4

LӠ,&È0Ѫ1

7Uѭӟc hӃW W{L [LQ ÿѭӧc bày tӓ lòng biӃW ѫQ VkX Vҳc và gӱi lӡL FiP ѫQ FKkQ WKjQK ÿӃn PGS.TS Hӗ 9ăQ.KѭѫQJQJѭӡLKѭӟng dүn và tҥRÿLӅu kiӋn cho tôi thӵc hiӋn luұQYăQnày

7{L[LQFKkQWKjQKFiPѫQTXêWKҫy cô Khoa Kӻ Thuұt ViӉn Thông ÿm truyӅQÿҥt cho tôi nhӳng kiӃn thӭc bә ích trong suӕWKDLQăPKӑc vӯa qua

Cuӕi cùng tôi xin gӱi lӡLFiPѫQÿӃQJLDÿuQKEҥn bè, nhӳQJQJѭӡLÿmOX{QErQW{L ÿӝng viên và khuyӃn khích tôi trong quá trình thӵc hiӋQÿӅ tài nghiên cӭu cӫa mình

Thành phӕ Hӗ CKt0LQKQJj\WKiQJQăP /rĈuQK9ѭѫQJ

Trang 5

TÓM TҲT LUҰ19Ă17+Ҥ&6Ƭ

MөFÿtFKFӫa nghiên cӭu này là tìm hiӇu vӅ IP security và giҧi quyӃt các vҩQÿӅ WăQJWӕc phҫn cӭng (hardware acceleration) trong giao thӭc IP security Giҧi pháp thӵc hiӋn các thuұt toán bҧo mұt phӭc tҥp bҵng phҫn cӭng thay vì phҫn mӅm (software) ÿm WăQJWӕFÿӝ xӱ lý và giҧm tҧi công viӋc cho CPU khá nhiӅu

Nghiên cӭXÿmÿѭDUDP{KuQK FPGA-based IPsec Acceleration, bao gӗm Cryptography Hardware Acceleration WăQJWӕc phҫn cӭng cho mұt mã) và IPsec Hardware Acceleration WăQJWӕc phҫn cӭng cho giao thӭc IPsec) Ngoài ra, nghiên cӭXQj\FNJQJÿѭDUDVѫÿӗ khӕi và mô tҧ hoҥWÿӝng cӫa lõi IP AES 128/192/256, viӃt codes bҵng ngôn ngӳ Verilog, thӱ nghiӋm lõi IP AES hoҥW ÿӝng trên tҫn sӕ 312.5Mhz vӟi EăQJ WK{QJ [ӱ lý ÿҥW ÿѭӧc 40Gbps Dӵ án ÿѭӧc tәng hӧp trên Vivado 18.2, và hiӋn thӵc trên kit FPGA Xilinx Virtex Ultrascale+ FPGA VU7P

Trang 6

ABSTRACT

The objective of this thesis is to research IP security and solve some problems of hardware acceleration in IP Security protocol Implementing complex security algorithms by hardware instead of software significantly improves processing speed and reduces CPU workload

The thesis proposes a FPGA-based IPsec Acceleration model consisting of Cryptography Hardware Acceleration and IPsec Hardware Acceleration In addition, this thesis presents a block diagram and describes the operation of the IP AES 128/192/256 core, writes codes using Verilog language, tests the IP AES 128/192/256 core operated on frequency of 312.5 Mhz with the achievable throughput of 40 Gbps This project was synthesized on Vivado 18.2, and implemented on FPGA Xilinx Virtex Ultrascale+ FPGA VU7P kit

Trang 7

LӠ,&$0Ĉ2$1&ӪA TÁC GIҦ

7{L[LQFDPÿRDQÿk\OjF{QJWUuQKQJKLrQFӭu khoa hӑFÿӝc lұp cӫa riêng tôi Các sӕ liӋu sӱ dөng phân tích trong luұn YăQ có nguӗn gӕFU}UjQJÿmF{QJEӕ WKHRÿ~QJTX\ÿӏnh Các kӃt quҧ nghiên cӭu trong luұn YăQ do tôi tӵ tìm hiӇu, phân tích mӝt cách trung thӵc, khách quan và phù hӧp vӟi thӵc tiӉn cӫa ViӋt Nam Các kӃt quҧ Qj\ FKѭD WӯQJ ÿѭӧc công bӕ trong bҩt kǤ nghiên cӭu nào khác

Hӑc viên /rĈuQK9ѭѫQJ

Trang 8

Ĉӕi tѭӧng và phҥm vi nghiên cӭu 6

éQJKƭDNKRDKӑc và thӵc tiӉn cӫDÿӅ tài nghiên cӭu 6

2.1.3 Internet Key Exchange 11

&ѫVӣ dӳ liӋu trong IPsec 13

2.1.5 ChӃ ÿӝ vұn hành cӫa IPsec 14

2.1.6 ThiӃt lұSÿѭӡng hҫm (Tunnel Establishment) 15

ĈiQKJLiѭXQKѭӧFÿLӇm cӫa IPsec 15

2.2 IPsec Hardware Acceleration 16

Trang 9

2.4.4 ChӭFQăQJ,QY0L[&ROXPQV 23

2.5 Các chӃ ÿӝ mã hóa và giҧi mã 23

2.5.1 Electronic Codebook (ECB) 23

2.5.2 Cipher Block Chaining (CBC) 24

3.3 Xilinx Virtex UltraScale+ FPGA 35

3.3.1 Giӟi thiӋu vӅ FPGA 35

3.3.2 KiӃn trúc Xilinx FPGA 36

3.3.3 Virtex UltraScale+ FPGA VU7P 40

,ҙґE'ϰ͗,/҇N THҞC IP SECURITY TRÊN FPGA 41

4.1 TҼng quan 41

4.2 Parser flowchart 43

4.3 KiӃn trúc VRF Lookup 45

4.4 Các chӃ ÿӝ hoҥWÿӝng cӫa IKE 45

&+ѬѪ1*7+,ӂT Kӂ BӜ MÃ HÓA, GIҦI MÃ AES-128/192/256 46

5.1 Tәng quan thiӃt kӃ 46

5.2 ThiӃt kӃ bӝ mã hóa AES-128/192/256 47

5.2.1 Mҥch logic khӕi KeyExpansion 49

5.2.2 Mҥch logic khӕi mã hóa AES 50

5.3 ThiӃt kӃ bӝ giҧi mã AES-128/192/256 51

5.3.1 Mҥch logic khӕi Inverse KeyExpansion 53

5.3.2 Mҥch logic khӕi giҧi mã AES 54

&+ѬѪ1*.ӂT QUҦ MÔ PHӒNG VÀ TRIӆN KHAI THUҰT TOÁN AES TRÊN FPGA 56

6.1 KӃt quҧ mô phӓng 56

6.1.1 KӃt quҧ mô phӓng AES-128 56

6.1.2 KӃt quҧ mô phӓng AES-192 58

6.1.3 KӃt quҧ mô phӓng AES-256 60

6.2 KӃt quҧ triӇn khai trên FPGA 62

Trang 10

6.3 So sánh kӃt quҧ vӟi công trình khác 66

&+ѬѪ1*KӂT LUҰN 68

7.1 KӃt luұn 68

7.2 KhuyӃn nghӏ 68

7.3 Giӟi hҥQYjKѭӟng phát triӇn 68

TÀI LIӊU THAM KHҦO 69

PHӨ LӨC 71

PHҪN LÝ LӎCH TRÍCH NGANG 76

48È75Î1+Ĉ¬27ҤO 76

QUÁ TRÌNH CÔNG TÁC 76

Trang 11

DANH MӨC HÌNH ҦNH

Hình 2.1: KiӃn trúc IP security[4] 8

Hình 2.2: Các thành phҫQFѫEҧn cӫa IPsec[5] 10

Hình 2.3: 6ѫÿӗ hoҥWÿӝng cӫa IKE[8] 13

Hình 2.4: IPsec SADB & SPD[2] 14

Hình 2.5: Các chӃ ÿӝ vұn hành cӫa IPsec[7] 14

Hình 2.6: Các giҧi pháp triӇn khai IPsec[3] 16

+uQK7ăQJWӕc phҫn cӭng cho các thuұt toán mã hóa, giҧi mã phӭc tҥp[2] 17

Hình 2.8: &iFEѭӟc mã hóa AES 19

Hình 2.9: ChӭFQăQJ.H\([SDQVLRQ$(6-128 20

+uQK&iFEѭӟc giҧi mã AES 22

Hình 2.11: ChӃ ÿӝ mã hóa, giҧi mã ECB[20] 24

Hình 3.5: KiӃn trúc Contemporary FPGA[15] 38

Hình 3.6: ChӭFQăQJWLrXELӇu cӫa LUT là mӝt tұp hӧp các ô nhӟ[15] 38

Hình 3.7: Cҩu trúc cӫa Flip-Flop[15] 39

Hình 3.8: Cҩu trúc cӫa khӕi DSP[15] 39

Hình 3.9: Tóm tҳWWtQKQăQJFӫa Virtex UltraScale+ FPGA[16] 40

Hình 4.1: HiӋn thӵc IPsec trên FPGA 431

Hình 4.2: VRF flow chart 43

Hình 4.3: KiӃn trúc VRF Lookup 45

Hình 4.4: Các chӃ ÿӝ hoҥWÿӝng quҧn lý mһt phҷng dӳ diӋu IPsec[3] 46

+uQK6ѫÿӗ khӕi bӝ mã hóa AES 48

Hình 5 2: Mҥch logic khӕi AES Key Expansion 50

Hình 5.3: Mҥch nguyên lí bӝ mã hóa AES 51

+uQK6ѫÿӗ khӕi bӝ giҧi mã AES 52

Hình 5.5: Mҥch logic khӕi AES Inverse Key Expansion 54

Hình 5.6: Mҥch nguyên lí bӝ giҧi mã AES 55

Hình 6.1: KӃt quҧ mô phӓng AES-128 trên công cө Cadence 58

Hình 6.2: KӃt quҧ mô phӓng AES-192 trên công cө Cadence 60

Hình 6.3: KӃt quҧ mô phӓng AES-256 trên công cө Cadence 62

Hình 6.4: Giao diӋn Vivado 18.2 62

Hình 6.5: ThiӃt lұSFORFNÿҫu vào bҵng công cө MMCM 63

Hình 6.6: ThiӃt lұSFORFNÿҫu ra bҵng công cө MMCM 63

Hình 6.7: Design timing summary 64

Trang 12

Hình 6.8: KӃt quҧ ³)3*$UHVRXUFHXWLOL]DWLRQ´Fӫa khӕi aes_encrypt_core 64

Hình 6.9: KӃt quҧ ³)3*$UHVRXUFHXWLOL]DWLRQ´Fӫa khӕi aes_decrypt_core 64

Hình 6.10: KӃt quҧ thӵc hiӋn mã hóa, giҧi mã AES-128 65

Hình 6.11: KӃt quҧ thӵc hiӋn mã hóa, giҧi mã AES-192 65

Hình 6.12: KӃt quҧ thӵc hiӋn mã hóa, giҧi mã AES-256 66

Hình 6.13: Thông sӕ tәng hӧp cӫa Helion AES-128[19] 67

Hình 6.14: Thông sӕ tәng hӧp cӫa Helion AES-256[19] 67

Trang 13

DANH MӨC BҦNG BIӆU

Bҧng 2.1: Tóm tҳWSKѭѫQJSKiSJLҧm tҧi các thuұt toán mã hóa cho IPsec[2] 17

BҧQJĈӝ GjLNKyDÿӝ dài khӕi và sӕ vòng cӫa mã hóa AES[9] 18

Bҧng 5.1: Các tín hiӋu cӫa bӝ mã hóa 47

Bҧng 5.2: Giá trӏ 5FRQ>@WѭѫQJӭng mӛi vòng lһp khóa mã[9] 49

Bҧng 5.3: Các tín hiӋu cӫa bӝ giҧi mã 51

Bҧng 5.4: Giá trӏ 5FRQ>@WѭѫQJӭng mӛi vòng lһp khóa giҧi mã[9] 53

Bҧng 6.1: Thông sӕ mô phӓng AES-128 56

Bҧng 6.2: Thông sӕ tӯQJEѭӟc mã hóa AES-128 56

Bҧng 6.3: Thông sӕ tӯQJEѭӟc giҧi mã AES-128 57

Bҧng 6.4: Các thông sӕ mô phӓng AES-192 58

Bҧng 6.5: Thông sӕ tӯQJEѭӟc mã hóa AES-192 58

Bҧng 6.6: Thông sӕ tӯQJEѭӟc giҧi mã AES-192 59

Bҧng 6.7: Các thông sӕ mô phӓng AES-256 60

Bҧng 6.8: Thông sӕ tӯQJEѭӟc mã hóa AES-256 60

Bҧng 6.9: Thông sӕ tӯQJEѭӟc giҧi mã AES-256 61

Trang 14

DANH MӨC TӮ VIӂT TҲT

AES Advanced Encryption Standard AH Authentication Header

DES Data Encryption Standard

DoS Denial of Service

DOI Domain of Interpretation

ESP Encapsulation Security Protocol IKE Internet Key Exchange

FPGA Field Programmable Gate Array

HMAC Hash-based Message Authentication Code PAD Peer authorization database

IP Internet Protocol IP Intellectual Property IPsec Internet Protocol Security

IETF Internet Engineering Task Force

ISAKMP Internet Security Association and Key Management Protocol

SPD Security Policy Database

SHA-1,2 Secure Hash Algorithm-1,2 SDK Software Development Kit RSA Rivest, Shamir, and Adelman VPN Virtual Private Network

TCP Transmission Control Protocol UDP User Datagram Protocol

Trang 15

&+ѬѪ1*: PHҪN MӢ ĈҪU

1.1 Lý do chӑQÿӅ tài

Internet là mӝt hӋ thӕng thông tin toàn cҫu có thӇ ÿѭӧc truy nhұp công cӝng gӗm các mҥQJ Pi\ WtQK ÿѭӧc liên kӃt vӟi nhau HӋ thӕng này truyӅn thông tin theo kiӇu nӕi chuyӇn gói dӳ liӋu (packet switching) dӵa trên mӝt giao thӭc liên mҥQJÿmÿѭӧc chuҭn hóa ± giao thӭc IP HӋ thӕng này bao gӗm hàng ngàn mҥng máy tính nhӓ KѫQ Fӫa các doanh nghiӋp, cӫa các viӋn nghiên cӭXYjFiFWUѭӡQJÿҥi hӑc, cӫDQJѭӡi dùng cá nhân và các chính phӫ trên toàn cҫX« 0ҥng Internet mang lҥi rҩt nhiӅu tiӋn ích hӳu dөng và cung cҩSFKRQJѭӡi dùng mӝt khӕLOѭӧng thông tin và dӏch vө khәng lӗ Trong thұp kӹ TXD,QWHUQHWÿmSKiWWULӇn bùng nә vӟi tӕFÿӝ chóng mһt trên toàn thӃ giӟi cҧ vӅ sӕ Oѭӧng lүn kӻ thuұt Sӵ phát triӇn không chӍ ÿѫQJLҧn là sӕ Oѭӧng lӟn thành viên mӟi kӃt nӕi vào hӋ thӕng Internet mӛi giӡ mà còn là sӵ xâm nhұp cӫa nó vào các khía cҥnh cӫa cuӝc sӕng hiӋQÿҥi, vào các hoҥWÿӝQJWKѭѫQJPҥi vӟi quy mô lӟn nhӓ NKiFQKDX«+LӋn nay, các tә chӭFFѫquan hay chính phӫ sӱ dөQJ,QWHUQHWÿӇ giӟi thiӋu các sҧn phҭm, dӏch vө hay ÿLӅu hành bҵng các website cӫa mình Theo thӡi gian, nó sӁ phát triӇQWKjQKWKѭѫQJPҥi ÿLӋn tӱ, mӑi hoҥWÿӝng kinh doanh, các giao dӏFKÿLӅXKjQKÿѭӧc thӵc hiӋn qua mҥng Internet Tuy nhiên, song song vӟi nhӳng tiӋn ích không thӇ phӫ nhұn mà mҥng Internet mang tӟLQJѭӡLGQJFzQÿӕi mһt vӟi hàng loҥWFiFQJX\FѫPjWURQJÿyQJX\FѫKjQJÿҫu là bӏ ÿiQKFҳSWK{QJWLQWKD\ÿәi thông tin truyӅn tҧi mӝt cách có chӫ ÿtFK%jLWRiQÿһt ra là làm thӃ QjRÿӇ bҧo mұt an toàn cho các dӳ liӋu trong quá trình truyӅn qua mҥng? Làm thӃ nào có thӇ bҧo vӋ chӕng lҥi các cuӝc tҩn công trong quá trình truyӅn tҧi các dӳ liӋXÿy",QWHUQHW3URWRFRO6HFXULW\ ,3VHF OjPӝt trong nhӳng giҧi pháp khҧ dөng

Cҩu trúc gói dӳ liӋu (IP, TCP, UDP và cҧ các giao thӭc ӭng dөQJ ÿѭӧc mô tҧ công khai, bҳW ÿѭӧc gói IP trên mҥQJ DL FNJQJ Fy WKӇ SKkQ WtFK JyL ÿӇ ÿӑc phҫn dӳ liӋu chӭa bên WURQJÿyOjFKѭDNӇ hiӋn nay, các công cө bҳWYjSKkQWtFKJyLÿѭӧc xây dӵng vӟi tính QăQJPҥnh và phát hành rӝng rãi ViӋc bә VXQJFiFFѫFKӃ bҧo mұt vào mô hình TCP/IP, bҳWÿҫu tӯ giao thӭc IP là mӝt nhu cҫu cҩp bách

IP Security (IPsec) là mӝt giao thӭFÿѭӧc chuҭn hóa bӣi Internet Engineering Task Force (IETF) tӯ QăPQKҵm mөc ÿtFKQkQJFҩSFiFFѫFKӃ mã hóa và xác thӵc thông tin cho chuӛi thông tin truyӅQÿLWUrQPҥng bҵng giao thӭc IP Hay nói cách khác, IPsec là tұp hӧp cӫa các chuҭn mӣ ÿѭӧc thiӃt lұSÿӇ ÿҧm bҧo sӵ cҭn mұt dӳ liӋXÿҧm bҧo tính toàn vҽn dӳ liӋu và chӭng thӵc dӳ liӋu giӳa các thiӃt bӏ mҥng IPsec cung cҩp mӝWFѫFҩu bҧo mұt ӣ tҫng 3 (Network layer) cӫa mô hình OSI

Vӟi sӵ WăQJWUѭӣQJQKDQKEăQJWK{QJFQJYӟi nhu cҫu bҧo mұt thông tin trên mҥng ngày

Trang 16

càng lӟn, tӯ ÿyÿzLKӓi viӋc thӵc hiӋn mã hóa/giҧi mã thông tin vӟi tӕFÿӝ FDRKѫQ7ӕc ÿӝ mã hóa/giҧi mã cҫQ QKDQK KѫQ Pӭc có thӇ ÿiS ӭng bӣi cách triӇn khai bҵng phҫn mӅm trên hҫu hӃt các bӝ xӱ lý mҥng hiӋn nay ViӋc sӱ dөng Hardware Acceleration cho các thuұt toán bҧo mұt là giҧi pháp mӟi và tӓ ra rҩt hӳu hiӋu

Vӟi nhiӅX ѭX ÿLӇm và tính ӭng dөng cao cӫa IPsec, cùng xu thӃ sӱ dөng Hardware Acceleration giҧi quyӃt nhӳng tính toán phӭc tҥp thay cho phҫn mӅPW{LÿmTX\ӃWÿӏnh chӑQÿӅ WjL³&{QJQJKӋ IP Security và hiӋn thӵFWUrQ)3*$´ÿӇ nghiên cӭu

1.2 MөFÿtFKQJKLrn cӭu

Mөc tiêu cӫDÿӅ tài là hiӇu vӅ nguyên lý, cách thӭc hoҥWÿӝng, nhӳQJѭXÿLӇm và hҥn chӃ cӫa IPsec; nghiên cӭu vӅ thuұt toán mã hóa dӳ liӋu AES-128/192/256 (Advanced Encryption Standard); thӵc hiӋn nhӳng mөc tiêu sau:

ƒ ĈѭDUDP{KuQKFPGA-based IPsec Acceleration

ƒ ĈѭDUDVѫÿӗ khӕi và mô tҧ hoҥWÿӝng cӫa lõi IP AES-128/192/256 ƒ Thӵc nghiӋm mã hóa, giҧLPm$(6YjÿyQJJyL,3VHFWUrQ)3*$

1.ĈӕLWѭӧng và phҥm vi nghiên cӭu

ƒ Nguyên lý, cách thӭc hoҥWÿӝng và các chӭFQăQJFѫEҧn cӫa IPsec ƒ Thuұt toán mã hóa dӳ liӋu AES

ƒ Thӵc nghiӋm FPGA-based IPSec Acceleration

1.éQJKƭDNKRDKӑc và thӵc tiӉn cӫDÿӅ tài nghiên cӭu 1.éQJKƭDNKRDKӑc

ƒ HiӇXÿѭӧc giao thӭc bҧo mұt IPsec, ÿѭDUDFiFP{KuQKWăQJWӕc phҫn cӭng cho IPsec

ƒ HiӇXÿѭӧc lý thuyӃt mã hóa, giҧi mã AES-128/192/256

ƒ HiӋn thӵc mã hóa AES bҵng ngôn ngӳ Verilog, tӕLѭXWKLӃt kӃ nhҵm nâng cao hiӋu suҩt và tiӃt kiӋm tài nguyên

ƒ Phát triӇn nhӳng vҩQ ÿӅ nghiên cӭX WURQJ Wѭѫng lai: TӕL ѭX KyD WKLӃt kӃ mã hóa/giҧLPm$(6KѫQQӳa

ƒ Thӵc hiӋQ WăQJ Wӕc phҫn cӭng cho các khӕi khác trong giao thӭc IPsec: Ingress Packet Processor; Egress Packet Processor; HMAC authentication with SHA-1, SHA-2 512/384/256/224

1.éQJKƭDWKӵc tiӉn

ƒ Sӱ dөng lõi Intellectual Property (IP) AES-128/192/256 trong các thiӃt kӃ SoC sӱ dөQJWăQJWӕc phҫn cӭng cho mã hóa, giҧi mã

Trang 17

ƒ ThiӃt kӃ ÿѭӧFP{KuQKWăQJWӕc phҫn cӭng cho giao thӭc IPsec

&KѭѫQJÿѭDUDNӃt luұn, khuyӃn nghӏ, giӟi hҥQYjKѭӟng phát triӇn cӫDÿӅ tài

Trang 18

&+ѬѪ1*2: GIӞI THIӊU

2.1 Tәng quan vӅ IP Security

IPsec là mӝt nӅn tҧng các tiêu chuҭn mӣ nhҵPÿҧm bҧRWtQKDQWRjQYjULrQJWѭFӫa thông tin trên Internet Dӵa trên các tiêu chuҭQ ÿѭӧc phát triӇn bӣi IETF, ,3VHF ÿҧm bҧo tính bҧo mұt, tính toàn vҽn và tính xác thӵc cӫa truyӅn thông dӳ liӋu trên mҥng công cӝng 3KѭѫQJSKiSEҧo vӋ cӫa IPsec gӗm các hình thӭc sau:

ƒ Xác thӵc nguӗn gӕc dӳ liӋu (Data Origin Authentication) ƒ Xác thӵc tính toàn vҽn cӫa dӳ liӋu (Data Integrity)

ƒ Bҧo mұt nӝi dung dӳ liӋu (Data Confidentiality) ƒ Bҧo vӋ chӕng phát lҥi (Anti-replay protection)

Trang 19

vө chӕng phát lҥi

o Giao thӭc AH (Authentication Header): Cung cҩp tính toàn vҽn dӳ liӋu và xác thӵc nguӗn gӕc dӳ liӋu; bҧo vӋ chӕng phát lҥi cho các cuӝc tҩn công phát lҥi

ƒ ThuұW WRiQ Pm KyD 0HVVDJH (QFU\SWLRQ  ĈӏQK QJKƭD FiF WKXұt toán mã hóa và giҧi mã sӱ dөng trong IPsec IPsec chӫ yӃu dӵa vào các thuұt toán mã hóa ÿӕi xӭng

o Data Encryption Standard (DES): DES là mӝt hӋ thӕng mã hóa khóa ÿӕi xӭng, DES sӱ dөng mӝt khóa 56-bit

o Triple DES (3DES): Là mӝt biӃn thӇ cӫa DES 56-bit HoҥW ÿӝng WѭѫQJWӵ QKѭ'(6WURQJÿyGӳ liӋXÿѭӧc chia thành các khӕi 64-bit 3DES thӵc thi mӛi khӕi ba lҫn, mӛi lҫn vӟi mӝt khóa 56-ELWÿӝc lұp

o Advanced Encryption Standard: Là mӝt thuұt toán mã hóa khӕLÿѭӧc chính phӫ Hoa KǤ áp dөng làm tiêu chuҭn mã hóa Thuұt toán AES là hӋ thӕQJPmKyDNKyDÿӕi xӭng, có thӇ mã hóa và giҧi mã thông tin Mã hóa chuyӇQÿәi dӳ liӋu thành mӝt dҥng không thӇ hiӇXÿѭӧc gӑi là ciphertext, giҧi mã ciphertext sӁ chuyӇQÿәi dӳ liӋu trӣ lҥi dҥQJEDQÿҫu cӫa nó gӑi là plaintext AES làm viӋc vӟi các khӕi dӳ liӋu 128-ELWYjÿӝ dài khóa 128-bit, 192-bit hoһc 256-bit

ƒ Message Integrity (Hash) Functions

o Hash-based Message Authentication Code (HMAC): Là mӝt thuұt toán toàn vҽn dӳ liӋXÿҧm bҧo tính toàn vҽn cӫa bҧn tin TҥLÿҫu cuӕi, gói tin và mӝt khóa chia sҿ bí mұW ÿѭӧc gӱi thông qua mӝt thuұW WRiQ EăPWURQJÿyWҥo ra mӝt giá trӏ EăP*yLWLQYjJLiWUӏ EăPÿѭӧc gӱi qua mҥng o Message Digest 5 (MD5): Là mӝW KjP EăP ÿӇ mã hóa vӟi giá trӏ EăPOj-bit MD5 biӃQÿәi mӝt thông diӋp có chiӅu dài bҩt kì thành mӝt khӕLFyNtFKWKѭӟc cӕ ÿӏnh 128-ELW7K{QJÿLӋSÿѭDYjRVӁ ÿѭӧc cҳt thành các khӕi 512-ELWÿѭӧc padding sao cho chia chҹn cho 512

o Secure Hash Algorithm-1,2 (SHA-1,2): SHA là mӝt thuұWWRiQEăPGQJ ÿӇ chuyӇn mӝW ÿRҥn dӳ liӋu nhҩW ÿӏnh thành mӝW ÿRҥn dӳ liӋu có chiӅXGjLNK{QJÿәi vӟi xác suҩt khác biӋt cao SHA-1: Hash function 160-bit SHA-2 bao gӗm mӝt sӕ biӃn thӇ là SHA-224, SHA-256, SHA-384, SHA-512

ƒ Thuұt toán xác thӵF 3HHU DXWKHQWLFDWLRQ  ĈӏQK QJKƭD FiF WKXұt toán xác thӵc thông tin sӱ dөng trong AH và ESP

o Rivest, Shamir, and Adelman (RSA) Digital Signutures: Là mӝt hӋ thӕng mұt mã khóa bҩWÿӕi xӭng Nó sӱ dөng mӝt chiӅu dài khóa là 512-

Trang 20

bit, 768-bit, 1024-bit hoһc lӟQKѫQ,36HFNK{QJVӱ dөQJ56$ÿӇ mã hóa dӳ liӋu ChӍ sӱ dөQJ56$ÿӇ PmKyDWURQJJLDLÿRҥn xác thӵc ngang hàng ƒ Quҧn lí khóa (Key management): Mô tҧ FiFFѫFKӃ quҧQOêYjWUDRÿәi khóa trong IPsec

ƒ MiӅn thӵc thi (Domain of Interpretation ± '2,  ĈӏQK QJKƭD P{L WUѭӡng thӵc thi IPsec IPsec không phҧi là mӝt công nghӋ riêng biӋt mà là sӵ tә hӧp cӫa nhiӅXFѫFKӃ, giao thӭc và kӻ thuұWNKiFQKDXWURQJÿyPӛi giao thӭFFѫFKӃ ÿӅu có nhiӅu chӃ ÿӝ hoҥWÿӝng khác nhau ViӋF[iFÿӏnh mӝt tұp các chӃ ÿӝ cҫn thiӃt ÿӇ triӇn khai IPsec trong mӝt tình huӕng cө thӇ là chӭFQăQJFӫa miӅn thӵc thi Xét vӅ mһt ӭng dөng, IPsec thӵc chҩt là mӝt giao thӭc hoҥWÿӝng song song vӟi IP nhҵm cung cҩp 2 chӭFQăQJFѫEҧn mà IP nguyên thӫy chѭDFyÿyOjPmKyDYjxác thӵc gói dӳ liӋu

ƒ Giao thӭFWUDRÿәLNKyD,.( ,QWHUQHW.H\([FKDQJH ĈӇ thiӃt lұp các SA (Security Association) cho AH hoһc ESP, và duy trì quҧn lí các kӃt nӕi

Hình 2.2: Các thành ph̯QF˯E̫n cͯa Ipsec [5]

6HFXULW\ DVVRFLDWLRQV 6$  ÿѭӧc tҥo bӣL ,.( ÿѭӧc sӱ dөng trong IPsec ESP Security policy (SP) - chính sách bҧo mұt Kѭӟng dүn tҥo và lӵa chӑQ6$ÿӇ sӱ dөng trong IPsec

2.1.2 Các tiêu chuҭQÿӏQKQJKƭD,3VHF

Các tiêu chuҭn trong giao thӭc IPsec bao gӗm:

ƒ Các tiêu chuҭn vӅ IPsec: KiӃn trúc chính bao gӗm các khái niӋP FKXQJ FiF ÿӏnh QJKƭD\rXFҫXYjFѫFKӃ bҧo mұt IPsec

ƒ Các tiêu chuҭn vӅ ,.(7UDRÿәi khóa trong giao thӭc IP (IKE), giao thӭc quҧn lí khóa và SA trong giao thӭc IP (ISAKMP)

ƒ Các tiêu chuҭn vӅ các thuұt toán mұt mã

Trang 21

2.1.3 Internet Key Exchange

IKE là giao thӭc thӵc hiӋQTXiWUuQKWUDRÿәi khóa và thӓa thuұn các thông sӕ bҧo mұt vӟi QKDXQKѭ0mKyDWKӃ nào, mã hóa bҵng thuұWWRiQJuEDROkXWUDRÿәi khóa 1 lҫn Sau NKLWUDRÿәi xong thì sӁ Fyÿѭӧc mӝt thӓa thuұn giӳDKDLÿҫu cuӕLNKLÿy,3VHF6HFXULW\$VVRFLDWLRQÿѭӧc tҥo ra

SA là nhӳng thông sӕ bҧo mұWÿmÿѭӧc thӓa thuұn thành công, các thông sӕ SA này sӁ ÿѭӧFOѭXWURQJFѫVӣ dӳ liӋu cӫD6$7URQJTXiWUuQKWUDRÿәi khóa thì IKE dùng thuұt WRiQPmKyDÿӕi xӭng, nhӳng khóa này sӁ ÿѭӧFWKD\ÿәi theo thӡLJLDQĈk\Ojÿһc tính cӫa IKE giúp hҥn chӃ tình trҥng bҿ khóa cӫa các kҿ tҩn công IKE còn dùng 2 giao thӭc NKiF ÿӇ chӭng thӵF ÿҫu cuӕi và tҥo khóa: ISAKMP (Internet Security Association and Key Management Protocol) và Oakley

ƒ ISAKMP: Là giao thӭc thӵc hiӋn viӋc thiӃt lұp, thӓa thuұn và quҧn lý chính sách bҧo mұt SA

ƒ Oakley: Là giao thӭc làm nhiӋm vө chӭng thӵc khóa, bҧn chҩt là dùng thuұt toán Diffie-+HOOPDQÿӇ WUDRÿәi khóa bí mұWWK{QJTXDP{LWUѭӡQJFKѭDEҧo mұt Giao thӭc IKE dùng UDP port 500

Giao thӭF,.(FyFiFÿһFWtQKQKѭVDX ƒ Tӵ ÿӝng làm mӟi lҥi chìa khóa

ƒ Chӕng lҥi các cuӝc tҩn công làm nghӁn mҥQJQKѭWҩn công tӯ chӕi dӏch vө DoS (Denial of Service)

ƒ Sӱ dөng chӳ ký sӕ

ƒ Cung cҩp nhӳQJSKѭѫQJWLӋn cho hai bên vӅ sӵ ÿӗng ý nhӳng giao thӭc, thuұt toán và nhӳQJFKuDNKyDÿӇ sӱ dөng

ƒ Ĉҧm bҧRWUDRÿәLNKyDÿӃQÿ~QJQJѭӡi dùng ƒ Quҧn lý nhӳQJFKuDNKyDVDXNKLÿѭӧc chҩp nhұn ƒ Ĉҧm bҧo sӵ ÿLӅu khiӇQYjWUDRÿәi khóa an toàn

ƒ Cho phép chӭng thӵFÿӝng giӳDFiFÿӕLWѭӧng ngang hàng

Quá trình hoҥWÿӝng cӫD,.(ÿѭӧc chia ra làm 2 phase chính: Phase 1 và Phase 2, cҧ hai phase này nhҵm thiӃt lұp kênh truyӅn an toàn giӳDKDLÿLӇm Ngoài phase 1 và phase 2 còn có phase 1.5

,.( SKDVH  Oj JLDL ÿRҥn bҳt buӝc phҧi có Phase này thӵc hiӋn viӋc xác thӵc và thӓa thuұn các thông sӕ bҧo mұt, nhҵm cung cҩp mӝt kênh truyӅn bҧo mұt giӳDKDLÿҫu cuӕi Các thông sӕ VDX NKL ÿӗng ý giӳa hai bên gӑi là SA, SA trong pha này gӑi là SA ISAKMP hay SA IKE Phase này sӱ dөng mӝt trong hai chӃ ÿӝ ÿӇ thiӃt lұp SA: ChӃ ÿӝ chính thӭc (Main mode) và chӃ ÿӝ tích cӵc (Aggressive mode) Các thông sӕ bҧo mұt bҳt buӝc phҧi thӓa thuұn trong phase 1 này là:

Trang 22

ƒ Thuұt toán mã hóa: DES, 3DES, AES ƒ Thuұt toán hash: MD5, SHA

ƒ 3KѭѫQJSKiS[iFWKӵc: Preshare-key, RSA ƒ Nhóm khóa Diffie-Hellman

Main mode: Sӱ dөQJPHVVDJHÿӇ WUDRÿәi thӓa thuұn các thông sӕ vӟi nhau ƒ Hai PHVVDJHÿҫXGQJÿӇ thӓa thuұn các thông sӕ cӫa chính sách bҧo mұt ƒ Hai message tiӃSWKHRWUDRÿәi khóa Diffie-Hellman

ƒ Hai message cuӕi cùng thӵc hiӋn xác thӵc giӳa các thiӃt bӏ Aggressive mode: Sӱ dөng 3 message

ƒ 0HVVDJHÿҫu tiên gӗm các thông sӕ cӫa chính sách bҧo mұt, khóa Diffie-Hellman ƒ Message thӭ hai sӁ phҧn hӗi lҥi thông sӕ cӫa chính sách bҧo mұWÿѭӧc chҩp nhұn,

NKyDÿѭӧc chҩp nhұn và xác thӵc bên nhұn ƒ Message cuӕi cùng sӁ xác thӵc bên vӯa gӱi

IKE phase 2 là phase bҳt buӝF ÿӃn phase này thì thiӃt bӏ ÿҫu cuӕL ÿm Fy ÿҫ\ ÿӫ các thông sӕ cҫn thiӃt cho kênh truyӅn an toàn Quá trình thӓa thuұn các thông sӕ ӣ phase 2 OjÿӇ thiӃt lұp SA IPsec dӵa trên nhӳng thông sӕ ӣ SKDVH4XLFNPRGHOjSKѭѫQJWKӭc ÿѭӧc sӱ dөng trong phase 2 Các thông sӕ mà Quick mode thӓa thuұn trong phase 2:

ƒ Giao thӭc IPsec: ESP hoһc AH

ƒ IPsec mode: Tunnel mode hoһc Transport mode

ƒ ,3VHF6$OLIHWLPH'QJÿӇ thӓa thuұn lҥi SA IPsec sau mӝt khoҧng thӡi gian mһc ÿӏnh hoһFÿѭӧc chӍ ÿӏnh

ƒ 7UDRÿәi khóa Diffie-Hellman

SA IPsec cӫa phase 2 hoàn toàn khác vӟi SA IKE ӣ phase 1, SA IKE chӭa các thông sӕ ÿӇ tҥo nên kênh truyӅn bҧo mұt, còn SA IPsec chӭa các thông sӕ ÿӇ ÿyQJJyLGӳ liӋu theo ESP hay AH, hoҥWÿӝng theo Tunnel mode hay Transport mode

IKE phase 1.5 là mӝW JLDL ÿRҥn IKE không bҳt buӝc Phase IKE 1.5 cung cҩp mӝt lӟp xác thӵF ÿѭӧc gӑi là Xauth hoһc xác thӵc Extended Xác thӵc ,3VHF ÿѭӧc cung cҩp trong phase 1 xác thӵc các thiӃt bӏ ÿҫu cuӕi sӱ dөQJÿӇ thiӃt lұp kӃt nӕi IPsec Xauth bҳt ngѭӡi sӱ dөng phҧi xác thӵFWUѭӟc khi sӱ dөng các kӃt nӕi IPsec

Trang 23

Main Mode(6 Messages)

Aggressive Mode(6 Messages)

Optional Phase 1.5: Xauth and Mode ConfigNew IPSec Tunnel or RekeyPhase I SA (ISAKMP SA)

Phase II SA (IPSec SA)

Phase II SA (IPSec SA)

Protect Data

.

Hình 2.3: 6˯ÿ͛ ho̩Wÿ͡ng cͯa IKE [8]

&ѫVӣ dӳ liӋu trong IPsec

Security Association Database (SAD): Chӭa IPsec SAs, là chính sách bҧo mұWÿӝng ƒ 6$ÿѭӧF[iFÿӏnh bӣLÿӏa chӍ ÿtFKWURQJ,3+HDGHUYj63,WURQJ([WHQVLRQ+HDGHU ƒ Chӭa trҥng thái mã hóa và xác thӵFÿӝng

ƒ &iF,3VHF6$VOX{QÿLWKHRFһp: inbound và outbound ƒ 6$'ÿѭӧc khóa bӣL63, ÿӕi vӟi các gói unicast)

ƒ 6$V WKѭӡQJ ÿѭӧc tҥo bӣi IKE nhѭQJ FNJQJ Fy WKӇ ÿѭӧc thiӃt lұp thӫ công hoһc bҵng phҫn mӅm khác

Security Policy Database (SPD): ChӍ ÿӏnh chính sách bҧo mұWWƭQK7KѭӡQJÿѭӧc thiӃt lұp bӣi quҧn trӏ viên hӋ thӕng

ƒ Multi-homed nodes có mӝt SPD riêng cho mӛi giao diӋn mҥng ƒ Ánh xҥ FKtQKViFKJyLÿӃQYjÿLÿӇ thӵc thi

ƒ Bӝ chӑQ FKtQK ViFK Ĉӏa chӍ IP (nguӗQ Yj ÿtFK  JLDR WKӭc vұn chuyӇn (TCP, UDP, ICMP), cәng nguӗQYjÿtFK

ƒ +jQKÿӝng: BYPASS (cho phép), DISCARD (chһn), hoһc PROTECT (bҧo vӋ) Peer authorization database (PAD): Dùng WURQJ,.(ÿӇ ánh xҥ giӳDWrQÿѭӧc xác thӵc và ÿӏa chӍ IP .K{QJÿѭӧc thӵc hiӋQQKѭPӝWFѫVӣ dӳ liӋu thӵc tӃ

Ngoài ra, giao thӭc IKE chӭD ,.( 6$V 0DVWHU VHFUHW ÿѭӧc tҥo ra bҵQJ WUDR ÿәi khóa Diffie-Hellman Ĉѭӧc sӱ dөng trong quá trình khӣi tҥo IPsec SAs

Trang 24

SPDProtect with ESP

ReceivedIPSec ESPPacket

IPsec có 2 chӃ ÿӝ vұn hành chính: Transport và Tunnel

ƒ Transport mode: ChӍ có tҧi trӑng (dӳ liӋXÿѭӧc truyӅn) cӫa gói tin IP mӟi ÿѭӧc mã hóa và chӭng thӵF 7URQJTXi WUuQKÿӏnh tuyӃn thì IP header không bӏ chӍnh sӱa (mã hóa) Transport mode sӱa dөng trong giao tiӃp host-to-host

ƒ Tunnel mode: Toàn bӝ gói tin IP sӁ ÿѭӧc mã hóa và chӭng thӵF6DXÿyQyÿѭӧFÿyQJJyLYjRPӝt gói tin IP mӟi vӟi IP header mӟi ChӃ ÿӝ 7XQQHOÿѭӧc sӱ dөQJ ÿӇ tҥo Virtual Private Network (mҥng riêng ҧo) phөc vө cho viӋc liên lҥc giӳa các mҥng, liên lҥc giӳa máy chӫ và mҥng, và giӳa các máy chӫ

Hình 2.5 Các ch͇ ÿ͡ v̵n hành cͯa IPsec [7]

Trang 25

2.1.6 ThiӃt lұSÿѭӡng hҫm (Tunnel Establishment)

Quá trình thiӃt lұp mӝt IPsec tunnel có thӇ ÿѭӧFFKLDWKjQKEѭӟc chính [8]:

1 Khӣi tҥo: IPsec tunnel có thӇ ÿѭӧc kích hoҥt bҵng tay hoһc tӵ ÿӝQJNKLOѭXOѭӧng truy cұp mҥQJ ÿѭӧc gҳn cӡ ÿӇ bҧo vӋ theo chính sách bҧo mұt IPsec Giao thӭc IKE có nhiӋm vө thӵc thi cho viӋc khӣi tҥo

2 IKE phase 1: ThiӃt lұp các tham sӕ và vұt liӋXFKtQKÿӇ bҧo vӋ cho IKE phase 2 3 IKE phase 2: ThiӃt lұp các tham sӕ và vұt liӋX FKtQK ÿӇ bҧo vӋ FKR JLDL ÿRҥn

truyӅn dӳ liӋu Các tham sӕ và vұt liӋu chính này tҥo thành các IPsec SA

4 Quá trình truyӅn dӳ liӋu/ѭXOѭӧng truy cұp mҥQJÿѭӧFÿyQJJyLWKHRFiFWKXұt toán và tham sӕ ÿѭӧc cung cҩp bӣi IPsec SAs, giúp cung cҩp tính bҧo mұt và tính toàn vҽn

5 KӃW WK~F ÿѭӡng hҫm: MӝW ÿѭӡng hҫm bӏ ÿyQJ NKL ,3VHF 6$V Fӫa nó chҩm dӭt thông qua viӋc xóa hoһc hӃt hҥn IPsec SA có thӇ hӃt hҥn khi mӝt thӡi gian xác ÿӏQKÿmWU{LTXDKRһc khi mӝWOѭXOѭӧng dӳ liӋu [iFÿӏQKÿmÿLTXDÿѭӡng hҫm

2.1.7ĈiQKJLiѭXQKѭӧFÿLӇm cӫa IPsec

ѬXÿLӇm:

ƒ Khi IPsec ÿѭӧc triӇn khai trên bӭFWѭӡng lӱa hoһc bӝ ÿӏnh tuyӃn cӫa mӝt mҥng ULrQJWKuWtQKQăQJDQWRjQFӫa IPsec có thӇ áp dөng cho toàn bӝ OѭXOѭӧng vào và ra cӫa mҥQJ ULrQJ ÿy FiF WKjQK SKҫn khác không cҫn phҧi xӱ lý thêm các công viӋFOLrQTXDQÿӃn bҧo mұt

ƒ ,3VHF ÿѭӧc thӵc hiӋQ ErQ Gѭӟi lӟS 7&3 Yj 8'3 ÿӗng thӡi nó hoҥW ÿӝng trong suӕWÿӕi vӟi các lӟp này Do vұy không cҫn phҧLWKD\ÿәi phҫn mӅm hay cҩu hình lҥi các dӏch vө NKL,3VHFÿѭӧc triӇn khai

ƒ IPsec có thӇ ÿѭӧc cҩXKuQKÿӇ hoҥWÿӝng mӝt cách trong suӕt ÿӕi vӟi các ӭng dөng ÿҫu cuӕLÿLӅu này giúp che dҩu nhӳng chi tiӃt cҩu hình phӭc tҥSPjQJѭӡi dùng phҧi thӵc hiӋn khi kӃt nӕLÿӃn mҥng nӝi bӝ tӯ xa thông qua mҥng Internet

Hҥn chӃ:

ƒ Tҩt cҧ FiFJyLÿѭӧc xӱ lý theo IPsec sӁ bӏ WăQJNtFKWKѭӟc do phҧi thêm vào các WLrXÿӅ NKiFQKDXÿLӅu này làm cho hiӋu suҩt truyӅn tҧi cӫa mҥng giҧm xuӕng ƒ ,3VHFÿѭӧc thiӃt kӃ chӍ ÿӇ hӛ trӧ bҧo mұWFKROѭXOѭӧng IP, không hӛ trӧ các dҥng

Trang 26

2.2 IPsec Hardware Acceleration

Vӟi sӵ WăQJ WUѭӣQJ QKDQK EăQJ WK{QJ trên mҥng, cùng vӟi nhu cҫu bҧo mұt mҥng lӟn KѫQWӯ ÿyÿzLKӓi thӵc hiӋn mã hóa/giҧi mã vӟi tӕFÿӝ lӟn TӕFÿӝ mã hóa/giҧi mã cҫn QKDQKKѫQPӭc có thӇ ÿiSӭng bӣi cách triӇn khai bҵng phҫn mӅm trên hҫu hӃt các bӝ xӱ lý mҥng hiӋn nay ViӋc sӱ dөng Hardware Acceleration cho các thuұt toán bҧo mұWÿDQJdҫn trӣ nên phә biӃn

Sau quá trình nghiên cӭu và tìm hiӇXW{LÿѭDUD mô hình xӱ lý IPsec: ƒ Software implementation (Xӱ lý IPsec trên phҫn mӅm)

ƒ Cryptography hardware acceleration (7ăQJWӕc phҫn cӭng cho mã hóa/giҧi mã)

ƒ IPsec hardware acceleration (7ăQJWӕc phҫn cӭng cho giao thӭc IPsec) ƒ IPsec Hardware Implementations (Xӱ lý IPsec trên phҫn cӭng)

ESP + AHCryptoIpsec control

ESP + AHCryptoIpsec control

ESP + AHCryptoIpsec control

Software Implementation

Cryptography hardware acceleration

IPsec hardware acceleration

Hình 2.6 Các gi̫i pháp tri͋n khai IPsec [3]

Xӱ lý IPsec trên phҫn mӅP Oj P{ KuQK NLQK ÿLӇn, toàn bӝ giao thӭc IP security và quá trình mã hóa/giҧi mã dӳ liӋX ÿӅX ÿѭӧc thӵc hiӋn bҵng phҫn mӅm ViӋc tính toán nhiӅu giҧi thuұt phӭc tҥp trong IPsec là mӝt vҩQÿӅ NKyÿӕi vӟi các trҥm làm viӋc và máy PC QăQJOӵc yӃXĈӝ trӉ FNJQJOjPӝWÿLӇm yӃu cӫa mô hình này

ViӋc giҧm tҧi công viӋc cho CPU bҵng hDUGZDUHDFFHOHUDWLRQ WăQJWӕc phҫn cӭng) là vҩn ÿӅ cҩp thiӃt hiӋQQD\QyJL~SWăQJWӕc viӋc tính toán nhiӅu giҧi thuұt phӭc tҥp vӟLÿӝ trӉ thҩp

Cryptography Hardware AFFHOHUDWLRQ 7K{QJ Oѭӧng IPsec có thӇ ÿѭӧc cҧi thiӋn bҵng cách giҧm tҧL FiF Fѫ FKӃ mã hóa và giҧi mã phӭc tҥp cho các khӕi cryptographic

hardware acceleration ³Các ki͇n trúc CPU hi͏n t̩i cͯD ,QWHO $0' Yj $50 FNJQJ EDR

g͛m các chͱF QăQJPmKyDYjJL̫i mã AES-NI và ARMv8 Cryptographic Extension là nhͷng ví dͭ cho các t̵p l͏nh AES có th͋ ÿ˱ͫc s͵ dͭng thay cho tri͋n khai ph̯n m͉m AES Ngoài ra các h͏ th͙ng trên chip (SoC) có th͋ chͱDFiFFKLSÿ͋ gi̫m t̫i x͵ lý m̵t

Trang 27

mã; Marvell Cryptographic Engines and Security Accelerator (CESA) là m͡t ví dͭ cho b͡ x͵ lý m̵t mã là m͡t ph̯n cͯa n͉n t̫ng SoC B͡ x͵ Oêÿ͋ gi̫m t̫i x͵ lý m̵WPmFNJQJcó th͋ là m͡t ph̯n cͯa b̫ng m̩ch mͧ r͡QJÿ˱ͫc k͇t n͙i vͣi bo m̩ch chính thông qua PCIe M͡t s͙ nhà cung c̭p cung c̭p các tri͋n khai cho các thu̵WWRiQPmKyDG˱ͣi d̩ng lõi sͧ trí tu͏ (IP) có th͋ ÿ˱ͫc th͹FWKLWUrQFiF*38Ĉ͋ WăQJW͙c ph̯n cͱng mã hóa, m͡t GPU ch̩y lõi IP là m͡t ph̯n cͯa PCIe extension board trên máy tính [3]´

Encrypt/Decrypt

Replay

,3VHF+DUGZDUH$FFHOHUDWLRQ7K{QJOѭӧQJ,3VHFFNJQJFyWKӇ ÿѭӧc cҧi thiӋn bҵng cách giҧm tҧi xӱ lý IPsec hoһc các bӝ phұn cӫDQyFKRFiFÿѫQYӏ WăQJWӕc phҫn cӭng IPsec HiӋn nay, mӝt sӕ công ty lӟQÿmWULӇn khai các phҫn cӫa quá trình xӱ lý mһt phҷng dӳ liӋu IPsec trên FPGA Các chӭFQăQJVDXÿyÿѭӧc triӇn khai trên phҫn mӅm có giao diӋn vӟi FPGA thông qua PCIe Tuy nhiên, phát triӇQFKR)3*$ÿzLKӓi nhiӅu yêu cҫu vӅ xӱ lý phҫm mӅm bên cҥnh kiӃn thӭc và kinh nghiӋm vӅ lұp trình phҫn cӭng

Trang 28

IPsec Hardware Implementations1Jѭӧc lҥi vӟLFiFFѫFKӃ WUѭӟFÿk\[ӱ lý IPsec có thӇ ÿѭӧc thӵc hiӋn hoàn toàn trên nӅn tҧng phҫn cӭng Quá trình xӱ Oê,3VHFÿѭӧc thӵc hiӋn trên FPGA, SPD và SAD cӫDQyÿѭӧc duy trì bӣi mӝt mһt phҷQJÿLӅu khiӇn bên ngoài.

2.3 Mã hóa AES

ChuҭQ Pm KyD $(6 ÿѭӧc mô tҧ trong tài liӋX ³$QQRXFLQJ WKH $GYDQFHG (QFU\SWLRQ6WDQGDUG $(6

Ngày đăng: 03/08/2024, 13:12

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w