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

VỀ MỘT PHƯƠNG PHÁP XÂY DỰNG HÀM BĂM CHO VIỆC XÁC THỰC TRÊN CƠ SỞ ỨNG DỤNG CÁC THUẬT TOÁN MÃ HÓA ĐỐI XỨNG

14 544 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

Thông tin cơ bản

Định dạng
Số trang 14
Dung lượng 8,43 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Đề tài : VỀ MỘT PHƯƠNG PHÁP XÂY DỰNG HÀM BĂM CHO VIỆC XÁC THỰC TRÊN CƠ SỞ ỨNG DỤNG CÁC THUẬT TOÁN MÃ HÓA ĐỐI XỨNG Hiện nay việc trao đổi thông tin thương mại trên Internet có nhiều nguy cơ không an toàn do thông tin có thể bị lộ hay bị sửa đổi. Nói chung, để bảo vệ các thông tin khỏi sự truy cập trái phép cần phải kiểm soát được những vấn đề như: thông tin được tạo ra, lưu trữ và truy nhập như thế nào, ở đâu, bởi ai và vào thời điểm nào.

Trang 1

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

********************************************

HỒ QUANG BỬU

VỀ MỘT PHƯƠNG PHÁP XÂY DỰNG HÀM BĂM CHO VIỆC XÁC THỰC TRÊN CƠ SỞ ỨNG DỤNG CÁC THUẬT TOÁN MÃ HÓA ĐỐI

XỨNG

LUẬN ÁN TIẾN SĨ KỸ THUẬT

HÀ NỘI - 2014

Trang 2

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

*********************************************

HỒ QUANG BỬU

VỀ MỘT PHƯƠNG PHÁP XÂY DỰNG HÀM BĂM CHO VIỆC XÁC THỰC TRÊN CƠ SỞ ỨNG DỤNG CÁC THUẬT TOÁN MÃ HÓA ĐỐI

XỨNG

Chuyên ngành: Kỹ thuật viễn thông

Mã ngành: 62 52 70 05

LUẬN ÁN TIẾN SĨ KỸ THUẬT

NGƯỜI HƯỚNG DẪN KHOA HỌC

1 GS.TSKH NGUYỄN XUÂN QUỲNH

2 GS.TS NGUYỄN BÌNH

HÀ NỘI - 2014

Trang 3

bản rõ đầu vào giống nhau và sử dụng cùng một khóa thì bản mã

đầu ra sẽ giống nhau Ngoài ra các M-dãy đề xuất trong luận án

hoàn toàn có thể sử dụng mật mã dòng

 Xây dựng một hàm băm mới có độ dài 128 bit với khối mật mã

được xây dựng trên các cấp số nhân cyclic Đây là cơ sở để xây

dựng thêm các hàm băm mới với một số ưu điểm: (1) phương

pháp mã hóa đơn giản hơn, (2) có thể dễ dàng mở rộng độ dài

mã băm nhằm mục đích hạn chế phép tấn công ngày sinh nhật,

(3) hàm băm có độ khuếch tán (hay hỗn loạn) khá tốt (đây là một

tính chất quan trọng của hàm băm) Theo các kết quả mô phỏng

đánh giá tính khuếch tán của hệ mật mới và của các hàm băm đề

xuất cho thấy tính khuếch tán khá tốt Với hệ mật thì độ khuếch

tán tương đương DES, với hàm băm độ khuếch tán đạt xấp xỉ

một nửa độ dài mã băm

Kiến nghị hướng phát triển

 Phát triển thêm các hệ mật mã mới trên cơ sở hàm mã hóa xây

dựng từ các cấp số nhân cyclic và kết hợp thêm các khâu phi

tuyến để tăng độ an toàn cho hệ mật

 Trên cơ sở hàm băm đề xuất trong luận án, xây dựng thêm các

hàm băm mới có độ dài lớn hơn

 Tìm hiểu và thực hiện thêm các phương pháp đánh giá hàm băm

đề xuất để hoàn thiện nghiên cứu về hàm băm mới này

 Nghiên cứu, thiết kế và thử nghiệm mạch điện phần cứng cho hệ

mật đề xuất

MỞ ĐẦU

Tính cấp thiết của đề tài

Với sự phát triển của khoa học kỹ thuật và công nghệ, cùng với các nhu cầu đặc biệt có liên quan tới an toàn thông tin, ngày nay các

kỹ thuật chính trong an toàn thông tin bao gồm: Kỹ thuật mật mã (Cryptography); kỹ thuật ngụy trang (Steganography); kỹ thuật tạo bóng mờ (Watermarking – hay thủy vân)

Hiện nay việc trao đổi thông tin thương mại trên Internet có nhiều nguy cơ không an toàn do thông tin có thể bị lộ hay bị sửa đổi Nói chung, để bảo vệ các thông tin khỏi sự truy cập trái phép cần

phải kiểm soát được những vấn đề như: thông tin được tạo ra, lưu trữ

và truy nhập như thế nào, ở đâu, bởi ai và vào thời điểm nào

Để giải quyết các vấn đề trên, kỹ thuật mật mã hiện đại phải đảm bảo các dịch vụ an toàn cơ bản: (1) bí mật (Confidential); (2) xác thực (Authentication); (3) đảm bảo tính toàn vẹn (Integrity)

Tình hình nghiên cứu

Cho đến nay các nghiên cứu về hàm băm được chia thành hai loại: hàm băm không khóa và hàm băm có khóa, và thông thường các

hàm băm này dựa trên mật mã khối với hai phương pháp chính là Mã

phát hiện sửa đổi (MDC-Manipullation Detection Code) và Mã xác thực thông báo (MAC-Message Authentication Code)

Các hàm băm dựa trên mật mã khối đã được nghiên cứu khá mạnh trên thế giới, các nhóm nghiên cứu tập trung chủ yếu vào hướng xây dựng các hệ mật mã khối và đưa chúng vào lược đồ xây dựng hàm băm Các lược đồ được sử dụng để xây dựng hàm băm phổ biến bao gồm: (1) Matyas – Mayer – Oseas (M-M-O); (2) Davies –

Trang 4

Mayer (D-M); (3) Miyaguchi – Preneel (M-P); (4) MDC-2; (5)

MDC-4…

Hiện nay trên thế giới có khá nhiều hệ mật mã khối khóa bí mật

đã được nghiên cứu sử dụng cho các lược đồ xây dựng hàm băm như

trên, điển hình là các hệ mật sau: DES, IDEA, RD.5, TDEA, AES,

CAST,… Những nghiên cứu về các hệ mật này và phương pháp sử

dụng chúng cho lược đồ hàm băm đã xuất hiện trong rất nhiều công

trình từ rất nhiều năm qua, tuy nhiên chúng đã được tổng kết trong

các công trình sau:

 Knudsen, L.; Preneel, B; Construction of secure and fast hash

functions using nonbinary error-correcting codes, IEEE

Transactions on Information Theory, Volume 48, Issue 9,

Sept 2002 Page(s): 2524 - 2539

Ở Việt Nam việc nghiên cứu các hệ mật cũng đã rất phát triển từ

nhiều năm qua, tuy nhiên việc sử dụng các hệ mật này cho các lược

đồ xây dựng hàm băm còn khá mới mẻ Cũng có một số công trình

nghiên cứu điển hình về vấn đề này trong thời gian qua là: "Nghiên

cứu xây dựng hạ tầng khóa công khai phục vụ thư tín điện tử và

thương mại điện tử, Báo các kết quả nghiên cứu đề tài Bộ Bưu chính

- Viễn thông, 6/2004, của GS.TS Nguyễn Bình

Mục tiêu nghiên cứu của luận án

 Khảo sát đánh giá hệ mật khối sử dụng cho lược đồ hàm băm

 Xây dựng hệ mật trên các cấp số nhân cyclic trên vành đa thức

 Xây dựng các hàm băm mới sử dụng hệ mật dựa trên các cấp

số nhân cyclic trên vành đa thức

 Viết các chương trình phần mềm mô phỏng, thử nghiệm và

đánh giá kết quả đã nghiên cứu

KẾT LUẬN VÀ KIẾN NGHỊ

Các kết quả nghiên cứu chính của luận án bao gồm các nội dung sau đây:

 Đề xuất phương pháp xây dựng hệ mật trên các cấp số nhân cyclic của vành đa thức Hệ mật mới này được xây dựng theo lược đồ Feistel có sửa đổi với sơ đồ mật mã khối có độ dài đầu

ra 128 bit Ưu điểm nổi bật của hệ mật này là (1) Mạch điện mã hóa và giải mã cùng một cấu trúc và rất đơn giản chỉ gồm các thanh ghi dịch và bộ cộng modul 2, tốc độ xử lý nhanh, (2)

Phương pháp mã hóa hàm f được xây dựng trên cấu trúc của cấp

số nhân cyclic trên vành đa thức Z2[ ] /x x  n 1 với n 2k, (Vành đa thức này là vành chẵn đặc biệt và không được xem xét trong lý thuyết mã sửa sai), do đó dễ dàng mở rộng độ dài từ, (3) Một số mô phỏng đánh giá cho thấy kết quả khuếch tán của hệ mật khá tốt (tương đương DES)

 Đề xuất phương pháp tạo khóa cho hệ mật từ các M-dãy theo các cấp số nhân của vành đa thức có hai lớp kề cyclic, đây cũng là vành đặc biệt và ít được dùng trong lý thuyết mã sửa sai Các M-dãy xây dựng theo phương pháp này có chu kỳ lớn và cũng đảm bảo tính chất giả ngẫu nhiên của dãy Trong luận án đã sử dụng các M-dãy trên vành 61

1

x  vào việc tạo các khóa con bên trong

hệ mật, cụ thể là 16 khóa con cho 16 vòng mã hóa theo sơ đồ Feistel Do số lượng khóa tạo được rất nhiều ( 60

2 1 khóa) nên mỗi lần mã hóa một khối thông tin vào, có thể sử dụng các khóa khác, điều này sẽ tránh được vấn đề của các mật mã khối là khi

Trang 5

160, 256, 320}, SHA-{0,1,224, 256, 384, 512}, đây là họ có nhiều

hàm băm đang được sử dụng rộng rãi

Phần tiếp theo trong chương 3 là một đề xuất xây dựng hàm băm

mới 128 bit, với mục đích tăng độ dài hàm băm, nhằm hạn chế phép

tấn công ngày sinh nhật; các mô phỏng đánh giá độ khuếch tán của

hàm băm mới đề xuất này cho thấy kết quả rất khả quan

Để có thêm kết luận về hàm băm đề xuất, phải thực hiện thêm các

đánh khác như: tính xung đột, tính kháng va chạm Tuy nhiên, hai

tính chất này không dễ dàng đánh giá được, nhất là đối với các hàm

băm có độ dài mã băm lớn Trong khuôn khổ luận án mới chỉ có thể

đánh giá được tính khuếch tán của hàm băm đề xuất, tuy nhiên đây là

một trong các tính chất quan trọng của hàm băm Ngoài ra, việc mở

rộng độ dài của hệ mật và hàm băm đề xuất rất đơn giản, từ đó có thể

giảm được khả năng xung đột, kháng tiền ảnh và đặc biệt là hạn chế

được phép tấn công "ngày sinh nhật" Các nghiên cứu về hệ mật và

hàm băm trong luận án là các đóng góp nhằm phát triển và đa dạng

hóa lý thuyết mật mã nói chung và hàm băm nói riêng, để có đánh giá

đầy đủ cần có thêm các nghiên cứu tiếp theo nữa

Phạm vi nghiên cứu của luận án

Luận án thuộc phạm vi lý thuyết cơ sở, tập trung nghiên cứu các thuật toán mã hóa và sử dụng chúng trong lược đồ xây dựng các hàm băm Các thuật toán mã hóa và sơ đồ tạo khóa trong các sơ đồ

mã hóa được xây dựng trên cấu trúc cấp số nhân cyclic, đây là một cấu trúc đại số được xây dựng trên cơ sở là nhóm nhân cyclic trên vành đa thức

Phương pháp nghiên cứu

Phương pháp nghiên cứu của đề tài là phân tích và tổng hợp dựa vào các công cụ toán học, đặc biệt là đại số đa thức, lý thuyết thông tin và mã hóa, lý thuyết xác xuất cùng với sự hỗ trợ tính toán của máy tính và các chương trình phần mềm mô phỏng để thử nghiệm đánh giá

Ý nghĩa khoa học và thực tiễn của luận án

Những kết quả trong luận án này là một đóng góp nhỏ bé vào việc phát triển lý thuyết mật mã nói chung và các hàm băm nói riêng Các nghiên cứu trong luận án đưa ra được một phương pháp xây dựng mật mã khối và một số hàm băm trên cơ sở là các cấp số nhân cyclic của vành đa thức

Bố cục của luận án

Luận án gồm phần mở đầu, 4 chương nội dung, phần kết luận, chương trình mô phỏng

Chương 1 Luận văn tập trung tìm hiểu các vấn đề chung nhất về mật mã khóa bí mật (hay còn gọi là mật mã cổ điển) và mật mã khóa công khai (hay mật mã hiện đại), từ đó phân tích các ưu và nhược điểm của từng hệ mật

Trang 6

Các nghiên cứu về cấu trúc nhóm nhân và cấp số nhân cyclic trên

vành đa thức cho các kết quả khá lý thú trong việc xây dựng các mã

sửa sai và mật mã Để tăng chiều dài cho mật mã khối có thể sử dụng

cấu trúc các cấp số nhân cyclic trong các hàm mật mã, nội dung này

sẽ được trình bày trong chương 2

Chương 2 Nội dung chương này đề cập đến cấu trúc cấp số nhân

của vành đa thức, xây dựng được một hệ mật trên các cấp số nhân

cyclic này Cụ thể là hệ mật mới này được xây dựng theo lược đồ

Feistel có sửa đổi (sơ đồ mật mã khối có độ dài đầu ra 128 bit), hàm

mật mã f và việc tạo khóa được xây dựng theo cấu trúc của cấp số

nhân cyclic trên vành đa thức chẵn Một số mô phỏng đánh giá cho

thấy kết quả khuếch tán của hệ mật khá tốt (tương đương DES) và

đây là cơ sở để xây dựng các hàm băm mới, được trình bày trong

chương 3

Chương 3 Nội dung chương này đề cập đến các phương pháp xây

dựng hàm băm, xây dựng được hai hàm băm mới 128 bit và 384 bit,

với mục đích tăng độ dài hàm băm, thỏa mãn yêu cầu càng cao của

thực tế; các mô phỏng đánh giá các hàm băm mới đề xuất này cho

thấy kết quả rất khả quan

Phần kết luận nêu những đóng góp của luận án và hướng phát

triển tiếp theo

Thực hiện lặp lại với 10 bản tin được tạo ngẫu nhiên khác nhau ta

có kết quả như 0

Bảng 3.3 Khoảng cách Hamming trung bình khi thay đổi khóa K và thay đổi bản tin rõ

 i

H tb

 i

H tb

Khoảng cách Hamming trung bình tính được:

  10 ( )

1

1

64, 02

i

Qua các kết quả khảo sát khoảng cách Hamming ở trên ta thấy tính khuếch tán của các hàm băm đề xuất là khá tốt

Để tăng hiệu quả hàm băm ta có thể sử dụng các sơ đồ hàm băm kép với cách xây dựng tương tự như đã trình bày ở trên

3.2.2 Các đánh giá kết quả mô phỏng hàm băm mới

Theo kết quả mô phỏng đánh giá độ khuếch tán của hàm băm đề xuất, khoảng cách Hamming của các mã băm đạt xấp xỉ một nửa độ dài mã băm, tức là khi ta thay 1 bit trong bản tin đầu vào thì mã băm đầu ra sẽ thay đổi một nửa chiều dài Từ đây ta thấy độ khuếch tán là rất tốt

Để có thêm kết luận về hàm băm đề xuất, phải thực hiện thêm các đánh khác như: tính xung đột, tính kháng va chạm…

KẾT LUẬN CHƯƠNG 3

Nội dung chương này đề cập đến cấu trúc của các hàm băm họ MD4 đang sử dụng phổ biến như MD4, MD5, RIPEMD-{0, 128,

Trang 7

Bảng 3.2 Khoảng cách Hamming d H(MD MD giữa các cặp giá trị băm 1, i)

khi các khóa khác khóa K1 2 bit

TT Khóa K i Giá trị băm MD i d H(MD MD1 , i)

1 123456789ABCDEF1 53C51349140008F9AA66F954C307AD44 0

2 B23456789ABCDEF1 537140BB7C26F26EDD57CFDDA9CE1B8F 64

3 173456789ABCDEF1 2BA0259D1F16C021F3A22319AF753ED0 60

4 126456789ABCDEF1 A9FD04E4E1BAC7C06119B3FBD8FFD12D 78

5 123E56789ABCDEF1 773979064BE2FC31F0BE347B1EB2D776 72

6 1234F6789ABCDEF1 CD24285FFA002E865E8AECFACEAB37A5 66

7 12345C789ABCDEF1 12F25C639775234298EFF42CB48F44A8 64

8 123456289ABCDEF1 764025970C5F0A26A623D1A24B6D1809 60

9 1234567D9ABCDEF1 530804E85FA92A29C9D3B064481D81F4 52

10 123456780ABCDEF1 36188474DCE9230F7BFE8799EC1221C4 68

11 123456789FBCDEF1 633497CBED502E08B33AB54809D2DBE2 58

12 123456789AECDEF1 6756EEEBC53E948FE408A13DFF72AA20 66

13 123456789AB6DEF1 8778B1FBDE80A5DA4BEF05156D968B48 58

14 123456789ABC7EF1 18DA5D34CA879807D99ECDBC169ED8AD 74

15 123456789ABCDBF1 F9787D06F99822CB41E264158FF93D0C 64

16 123456789ABCDEA1 27395F8741475A8AA3845BB4FB6D0D0E 58

Khoảng cách Hamming trung bình của các giá trị băm với giá trị

băm ban đầu:

16

2

1

15

i

Để khảo sát thêm tính khuếch tán của hàm băm, ta thay đổi cả bản

tin rõ và khóa như sau: Giữa nguyên bản tin và lần lượt thay đổi từng

bit của khóa K1 từ bit 1 đến bit 60, bit 61 dùng để kiểm tra chẵn lẻ

Sau đó tính khoảng cách Hamming trung bình giữa các giá trị băm

với giá trị băm ban đầu theo công thức:

60

2

1

60

i

CHƯƠNG 1 TỔNG QUAN VỀ MẬT MÃ HỌC

1 1 CÁC KHÁI NIỆM CƠ BẢN

* Mã hóa (Encryption):

Ta có: CE K M hay CE M K , 

* Giải mã (Decryption)

,

Trong đó: M – bản rõ; C – bản mã; K – khóa

* Các phương pháp xử lý thông tin số trong các hệ thống mật

mã bao gồm:

+ Mật mã khóa bí mật:

 Hoán vị

 Thay thế

 Xử lý bit (chú yếu trong các ngôn ngữ lập trình)

 Phương pháp hỗn hợp (điển hình là chuẩn mã hóa dữ liệu – DES của Mỹ)

+ Mật mã khóa công khai:

Xây dựng trên 5 bài toán cơ bản:

 Bài toán logarith rời rạc

 Bài toán phân tích thừa số

 Bài toán xếp ba lô

 Bài toán mã sửa sai

 Bài toán đường cong eliptic + Mật mã khối: quá trình xử lý thông tin được thực hiện trong các khối có độ dài xác định

+ Mật mã dòng: quá trình xử lý thông tin thực hiện trên từng bit

Decryption

K

Encryption

K

Trang 8

+ Độ phức tạp tính toán:

- Độ phức tạp tính toán P (theo thời gian đa thức) các bài toán

này là khả thi và khá đơn giản

- Độ phức tạp NP (không theo thời gian đa thức) các bài toán

này thường không khả thi và khá phức tạp

1.2 CÁC HỆ MẬT KHÓA BÍ MẬT

1.2.1 Sơ đồ khối chức năng hệ mật khóa bí mật

Hình 1.1 Sơ đồ khối chức năng hệ mật khóa bí mật

1.2.2 Các hệ mật thay thế

Bao gồm các hệ mật thay thế đơn biểu và thay thế đa biểu Các hệ

mật tiêu biểu gồm: Mật mã dịch vòng, hệ mật thay thế, hệ mật

Affine, Vigenère…

1.2.3 Các hệ mật hoán vị (MHV)

Khác với hệ mật thay thê, ý tưởng của MHV là giữ các ký tự

của bản rõ không thay đổi nhưng sẽ thay đổi vị trí của chúng bằng

cách sắp xếp lại các ký tự này Ở đây không có một phép toán đại số

nào cần thực hiện khi mã hoá và giải mã

1.2.4 Hệ mật mã tích

1.2.5 Các hệ mật mã dòng và tạo dãy giả ngẫu nhiên

1.2.6 Chuẩn mã dữ liệu DES

0123456789AB4DEF C3D7A66C29F82331

31 0123456789ABCDEF

0123456789ABCCEF

8353E1BF4DB4264B 6D7007E1DFA73B51 64

32 0123456789ABCDEF

0123456789ABCDFF

7945A131C04B6182 ED6E54D50BE28723 62

33 0123456789ABCDEF

0123456789ABCDED

5DA15DE212D18181 4813623B0E06F874 68

Tiến hành thay đổi lần lượt từng bit từ bit 1 đến bit 128 của bản tin đầu vàoM , tính khoảng cách Hamming 1 d H(MD MD1, i) của từng lần thay đổi, cuối cùng tính được khoảng cách Hamming trung bình giữa các giá trị băm với giá trị băm ban đầu là:

1

1

H tb

i

Bảng 3.2 là kết quả tính toán phân bố của bộ mã khi thay đổi khóa khởi tạo K, mỗi khóa khác với khóa đầu tiên 2 bit Sở dĩ ta phải thay đổi 2 bit (tương ứng thay đổi 2 vị trí) là để đảm bảo đa thức sinh của khóa có trọng số lẻ

Bản tin đầu vào gồm 10 khối 128 bit được tạo ngẫu nhiên [2] Chú ý, chiều dài của khóa là 61 bit, do đó khi mô tả khóa bằng 16

ký tự hexa nhưng thực tế chỉ có 15 ký tự đầu là dạng hexa, còn ký tự cuối cùng chỉ có 1 bit nên nó nhận giá trị “1” hoặc “0”

Chọn phần tử đầu của cấp số nhân tạo khóa là: 2

1

a

K   x x

Phần tử sinh khóa đầu tiên K1 như sau:

1(Hex) 123456789ABCDEF.1

Các khóa K i chỉ thay đổi 2 bit trong một số hexa của khóa đầu tiên K Chú ý: vị trí các bit “1” trong các khóa 1 K tương ứng là số i

mũ của x trong đa thức sinh tạo khóa Ví dụ:

1

12 F.1 1000.0100 1111.1

K

Trang 9

0123456789ABCDEF A9C64A47762FF6BD

8 0123457789ABCDEF

0123456789ABCDEF

0CA4992082D77070 73C61EA33CE5D66D 68

9 0123456389ABCDEF

0123456789ABCDEF

1E25F66DC86E2888 44CCBDC4367DA463 64

10 0123456799ABCDEF

0123456789ABCDEF

1AD3061B585D4602 FBEBA645F50D0203 58

11 012345678DABCDEF

0123456789ABCDEF

E1589BF99823EF04 1210020DA32B4C50 64

12 01234567898BCDEF

0123456789ABCDEF

1EE7BE47AC923862 90929EA7F6E837C1 60

13 0123456789AFCDEF

0123456789ABCDEF

BEB0D922F4ECAE48 CF098E0B9CCDF9CE 78

14 0123456789AB8DEF

0123456789ABCDEF

AD5C0C8D0A61348B B96861BE92EEBB16 64

15 0123456789ABC5EF

0123456789ABCDEF

7906EF1395B4DE95 522E47E70DD5C738 64

16 0123456789ABCDFF

0123456789ABCDEF

FD4109489863FD3B 4E79C434BF8355DC 72

17 0123456789ABCDEB

0123456789ABCDEF

C6DBEA49E116BEDC 1FF11DF8F7A44A3F 68

18 0123456789ABCDEF

8123456789ABCDEF

BBE4AE6094334B90 49D253F55195427D 70

19 0123456789ABCDEF

0323456789ABCDEF

BA79EFB1AF077CB5 1988B7580AEA44C1 68

20 0123456789ABCDEF

0133456789ABCDEF

22C2135FCD25DB6C BB0CE7ED5F43BEFE 66

21 0123456789ABCDEF

0121456789ABCDEF

ADFA46A0CEC37C5A E0C53DAF31B45B8D 68

22 0123456789ABCDEF

0123056789ABCDEF

A0A88D98F147A0D7 C4284C7EAF58BC1F 68

23 0123456789ABCDEF

0123416789ABCDEF

8DD5B3218D448641 313E52AD01747037 68

24 0123456789ABCDEF

0123457789ABCDEF

62F9919F4FF1A2AE 27C31BD6042FBB04 54

25 0123456789ABCDEF

0123456589ABCDEF

FF3D7A429626EF4E C61B8CF1325300F4 60

26 0123456789ABCDEF

0123456799ABCDEF

48CBABA51460CEF1 4ABFA6A62B4C006B 66

27 0123456789ABCDEF

012345678DABCDEF

A69350AB67BBCC6F 0053037523D9343F 54

28 0123456789ABCDEF

01234567892BCDEF

36F0DCFCCF106D0F 76F938F7FBFBBE0C 56

29 0123456789ABCDEF

0123456789AACDEF

4D16387FD0FA8E8A E12F2ED638A059FF 62

Mô tả đầy đủ của DES được nêu trong Công bố số 46 về các chuẩn xử lý thông tin Liên bang (Mỹ) vào 15/1/1977 DES mã hoá

một xâu bit x của bản rõ độ dài 64 bằng một khoá 54 bit Bản mã

nhận được cũng là một xâu bit có độ dài 64

Thuật toán DES thường được thực hiện qua 16 vòng mã hóa theo lược đồ Feistel, hàm mã hóa trong mỗi bước được thực hiện kết hợp giữa các phép hoán vị và thay thế

1.2.7 Ưu nhược điểm của mật mã khóa bí mật

Ưu điểm:

 Đơn giản (thời gian nhanh, yêu cầu phần cứng không phức tạp)

 Hiệu quả: (Tỷ lệ mã bằng 1) dễ sử dụng cho các ứng dụng nhạy cảm với độ trễ và các ứng dụng di động

Nhược điểm:

Phải dùng kênh an toàn để truyền khóa (Khó thiết lập và chi phí tốn kém)

 Việc tạo và giữ khóa bí mật phức tạp, khó làm việc trên mạng do phải tạo khóa nhiều

 Các thuật toán là song ánh, vì vậy nếu biết M và K thì chắc chắn biết C Thám mã có thể suy luận ra K, kết hợp với C tại kênh mở có thể suy ra M

 Khó xây dựng các dịch vụ an toàn khác như: đảm bảo tính toàn vẹn, xác thực, chữ ký số…

Vì các nhược điểm này nên phải sử dụng cả các hệ mật khóa công khai

Trang 10

1.3 HỆ MẬT KHÓA CÔNG KHAI

1.3.1 Sơ đồ chức năng

Hình 1.7 Sơ đồ khối chức năng hệ mật khóa công khai

CB

K - Khóa công khai của B (Lấy trên kênh mở)

RB

K - Khóa bí mật của B

Phép mã hóa là ánh xạ 1:1: CE M K , CB

Ưu điểm của hệ mật khóa công khai:

 Không cần tạo 2 khóa bí mật

 Không cần kênh an toàn riêng

 Biết khóa mã hóa trên kênh mở nhưng rất khó giải mã

Yêu cầu: Dễ mã hóa, khó giải mã (Hàm một chiều)

Các hướng nghiên cứu từ năm 1976 cho đến nay đã tìm được 5

hàm một chiều, tương ứng với 5 bài toán là các bài toán:

- Bài toán logarith rời rạc: Với các hệ mật tiêu biểu như: Thủ tục

trao đổi khóa Diffie – Hellman, hệ mật Omura-Massey, hệ mật

Elgamal

- Bài toán phân tích thừa số và hệ mật RSA

- Bài toán xếp ba lô với hệ mật Merkle – Hellman

- Bài toán mã sửa sai và hệ mật Mc.Eliece

- Hệ mật xây dựng trên đường cong Elliptic

0 là kết quả tính toán phân bố của 32 hàm băm khi thay đổi duy nhất một bit dữ liệu trong 32 khối bản tin rõ so với bản tin ban đầu,

để thuận tiện cho việc quan sát chúng tôi chỉ thay đổi 1 bit trong chuỗi bản tin đầu tiên của một khối

Mỗi khối bản tin bao gồm 10 bản tin, mỗi bản tin có độ dài 128 bit Các hàm băm sử dụng cùng một bộ khóa K khởi tạo:

Phần tử sinh của khóa khởi tạo là đa thức:

1

i

a

K  xx phần tử đầu của cấp số nhân (khóa đầu tiên), cũng là khóa khởi tạo sẽ là:

1

Khối bản tin đầu tiên được xây dựng như sau: Bản tin đầu tiên gồm 32 ký tự dạng hexa (tương ứng 128 bit) được chọn là:

M1=0123456789ABCDEF0123456789ABCDEF Các bản tin tiếp theo (từ 2 đến 10) được tạo một cách ngẫu nhiên

Bảng 3.1 Khoảng cách Hamming d H(MD MD khi các khối dữ liệu 1, i)

khác khối ban đầu 1 bit

1 0123456789ABCDEF 0123456789ABCDEF

4771249F4AB0E564 908F1456E0D3A239 0

0123456789ABCDEF

7B13337D3B31DC7B 91287CE5FCDFD274 56

3 0323456789ABCDEF 0123456789ABCDEF

995F0EF13134BFAF D43A47B676DFA356 62

4 0133456789ABCDEF 0123456789ABCDEF

00EEA6CB284338F5 704DE9AFEC8A592C 68

5 012B456789ABCDEF 0123456789ABCDEF

0BC2CE7B57041014 0609BC377F579110 62

6 0123056789ABCDEF 0123456789ABCDEF

E1EDDCED0686C4F6 E1DACEE0AA906D52 64

7 0123476789ABCDEF 09B62BF471BA9644 60

Ngày đăng: 27/06/2014, 16:20

HÌNH ẢNH LIÊN QUAN

Bảng 3.3. Khoảng cách Hamming trung bình khi thay đổi khóa K và thay đổi bản tin rõ. - VỀ MỘT PHƯƠNG PHÁP XÂY DỰNG HÀM  BĂM CHO VIỆC XÁC THỰC TRÊN CƠ SỞ  ỨNG DỤNG CÁC THUẬT TOÁN MÃ HÓA ĐỐI  XỨNG
Bảng 3.3. Khoảng cách Hamming trung bình khi thay đổi khóa K và thay đổi bản tin rõ (Trang 6)
Bảng 3.2. Khoảng cách Hamming  d H ( MD MD  giữa các cặp giá trị băm   1 , i ) - VỀ MỘT PHƯƠNG PHÁP XÂY DỰNG HÀM  BĂM CHO VIỆC XÁC THỰC TRÊN CƠ SỞ  ỨNG DỤNG CÁC THUẬT TOÁN MÃ HÓA ĐỐI  XỨNG
Bảng 3.2. Khoảng cách Hamming d H ( MD MD giữa các cặp giá trị băm 1 , i ) (Trang 7)
Hình 1.1. Sơ đồ khối chức năng hệ mật khóa bí mật - VỀ MỘT PHƯƠNG PHÁP XÂY DỰNG HÀM  BĂM CHO VIỆC XÁC THỰC TRÊN CƠ SỞ  ỨNG DỤNG CÁC THUẬT TOÁN MÃ HÓA ĐỐI  XỨNG
Hình 1.1. Sơ đồ khối chức năng hệ mật khóa bí mật (Trang 8)
1.2.1. Sơ đồ khối chức năng hệ mật khóa bí mật - VỀ MỘT PHƯƠNG PHÁP XÂY DỰNG HÀM  BĂM CHO VIỆC XÁC THỰC TRÊN CƠ SỞ  ỨNG DỤNG CÁC THUẬT TOÁN MÃ HÓA ĐỐI  XỨNG
1.2.1. Sơ đồ khối chức năng hệ mật khóa bí mật (Trang 8)
1.3.1. Sơ đồ chức năng - VỀ MỘT PHƯƠNG PHÁP XÂY DỰNG HÀM  BĂM CHO VIỆC XÁC THỰC TRÊN CƠ SỞ  ỨNG DỤNG CÁC THUẬT TOÁN MÃ HÓA ĐỐI  XỨNG
1.3.1. Sơ đồ chức năng (Trang 10)
Sơ đồ khối mã hóa f với khóa  K 1   1 x 4  x 5 - VỀ MỘT PHƯƠNG PHÁP XÂY DỰNG HÀM  BĂM CHO VIỆC XÁC THỰC TRÊN CƠ SỞ  ỨNG DỤNG CÁC THUẬT TOÁN MÃ HÓA ĐỐI  XỨNG
Sơ đồ kh ối mã hóa f với khóa K 1   1 x 4  x 5 (Trang 11)
3.2.1. Sơ đồ khối mật mã trong hàm băm - VỀ MỘT PHƯƠNG PHÁP XÂY DỰNG HÀM  BĂM CHO VIỆC XÁC THỰC TRÊN CƠ SỞ  ỨNG DỤNG CÁC THUẬT TOÁN MÃ HÓA ĐỐI  XỨNG
3.2.1. Sơ đồ khối mật mã trong hàm băm (Trang 12)
Sơ đồ  này  (hình 2.5) sẽ  mã  hóa  cho  chuỗi bit có độ  dài 128,  các  hoán vị IP và hoán vị đảo IP -1  được tác giả xây dựng và phát triển từ  các bảng IP của hệ mật DES, cho trong bảng 2.8 và  bảng 2.9 - VỀ MỘT PHƯƠNG PHÁP XÂY DỰNG HÀM  BĂM CHO VIỆC XÁC THỰC TRÊN CƠ SỞ  ỨNG DỤNG CÁC THUẬT TOÁN MÃ HÓA ĐỐI  XỨNG
n ày (hình 2.5) sẽ mã hóa cho chuỗi bit có độ dài 128, các hoán vị IP và hoán vị đảo IP -1 được tác giả xây dựng và phát triển từ các bảng IP của hệ mật DES, cho trong bảng 2.8 và bảng 2.9 (Trang 13)
Bảng 2.10. Khoảng cách Hamming  d H ( C C 1 , i )  giữa các cặp bản mã khi các bản rõ - VỀ MỘT PHƯƠNG PHÁP XÂY DỰNG HÀM  BĂM CHO VIỆC XÁC THỰC TRÊN CƠ SỞ  ỨNG DỤNG CÁC THUẬT TOÁN MÃ HÓA ĐỐI  XỨNG
Bảng 2.10. Khoảng cách Hamming d H ( C C 1 , i ) giữa các cặp bản mã khi các bản rõ (Trang 14)
Bảng 2.10 là kết quả tính toán phân bố của bộ mã khi thay đổi 32  bản  tin  rõ  [2],  mỗi  bản  tin  chỉ  khác  1  bit,  với  cùng  một  bộ  khóa  K - VỀ MỘT PHƯƠNG PHÁP XÂY DỰNG HÀM  BĂM CHO VIỆC XÁC THỰC TRÊN CƠ SỞ  ỨNG DỤNG CÁC THUẬT TOÁN MÃ HÓA ĐỐI  XỨNG
Bảng 2.10 là kết quả tính toán phân bố của bộ mã khi thay đổi 32 bản tin rõ [2], mỗi bản tin chỉ khác 1 bit, với cùng một bộ khóa K (Trang 14)

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w