Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 59 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
59
Dung lượng
759,33 KB
Nội dung
Đồ Án Chuyên Nghành http://www.ebook.edu.vn Lời nói đầu Khoa học mật mã đời từ hàng nghìn năm Tuy nhiên, suốt nhiều kỷ, kết lĩnh vực không ứng dụng lĩnh vực dân thông thường đời sống – xã hội mà chủ yếu sử dụng lĩnh vực quân sự, trị, ngoại giao Ngày nay, ứng dụng mã hóa bảo mật thông tin sử dụng ngày phổ biến lĩnh vực khác giới, từ lĩnh vựcan ninh, quân sự, quốc phòng…, lĩnh vực dân thương mại điện tử, ngân hàng… Với phát triển ngày nhanh chóng Internet ứng dụng giao dịch điện tử mạng, nhu cầu bảo vệ thông tin hệ thống ứng dụng điện tử ngày quan tâm có ý nghĩa quan trọng Các kết khoa học mật mã ngày triển khai nhiều lĩnh vực khác đời sống – xã hội, phải kể đến nhiều ứng dụng đa dạng lĩnh vực dân sự, thương mại Các ứng dụng mã hóa thông tin cá nhân, trao đổi thông tin kinh doanh, thực giao dịch điện tử qua mạng trở nên gần gũi quen thuộc với người Chúng ta phải thừa nhận rủi ro gặp phải trình giao dịch, kinh doanh mạng hữu; nguy bị thay đổi, chép liệu mạng thực trở ngại giao dịch điện tử Việc xác thực điện tử kiểm tra tính toàn vẹn liệu giao dịch điện tử biện pháp đảm bảo an toàn thông tin; vấn đề thật cần thiết cấp bách Với tầm quan trọng việc mã hoá bảo mật thông tin hầu hết lĩnh vực đặc biệt lĩnh vực Công Nghệ Thông Tin với đồ án em xin phép trình bày số thuật toán mã hoá viết chương trình mã hoá “ADFGVX” Khi làm đồ án cố gắng không tránh khỏi sai sót định em mong thầy cô bạn đóng góp thêm ý SVTH:Lê Ngọc Khánh Page GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành http://www.ebook.edu.vn kiến để từ em phát triển đồ án chuyên nghành lần thành đồ án tốt nghiệp.Xin trân trọng cảm ơn SVTH:Lê Ngọc Khánh Page GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành http://www.ebook.edu.vn Mục lục Trang Lời mở đầu Mục lục Danh mục hình Chương 1:Tổng quan 1.1 Mật mã học 1.2 Hệ thống mã hóa (cryptosystem) 1.3 Hệ thống mã hóa quy ước (mã hóa đối xứng) 1.4 Hệ thống mã hóa khóa công cộng (mã hóa bất đối xứng) 1.5 Kết hợp mã hóa quy ước mã hóa khóa công cộng Chương Một số phương pháp mã hóa quy ước 2.1 Hệ thống mã hoá quy ước 2.2 Phương pháp dịch chuyển 10 2.3 Phương pháp thay 11 2.4 Phương pháp Affine 12 2.5 Phương pháp Vinegere 15 2.6 Phương pháp Hill 16 2.7 Mã hoán vị (MHV) 18 2.8 Phương pháp DES (Data Encryption Standard) 20 Chương Các thuật toán ứng viên AES 24 3.1 Phương pháp chuẩn mã hoá nâng cao AES 24 3.2 Phương pháp mã hoá MARS 25 3.3 Phương pháp mã hoá RC6 30 3.4 Phương pháp mã hoá Serpent 35 Chương Mật mã hoá ADFGVX 39 4.1 Lịch sử 39 4.2 Phương pháp bảo mật 40 4.3 Sơ đồ khối 45 4.4 Thuật toán 49 SVTH:Lê Ngọc Khánh Page GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành http://www.ebook.edu.vn 4.5 Bảng demo trước mã hoá 54 4.6 Bảng demo sau mã hoá 55 4.5 Nhận xét mã hoá ADFGVX hướng phát triển đồ án 55 NHẬN XÉT GIÁO VIÊN HƯỚNG DẪN 56 NHẬN XÉT GIÁO VIÊN PHẢN BIỆN 57 TÀI LIỆU THAM KHẢO 58 Số TT 01 02 03 04 05 06 Mô tả Mô hình hệ thống mã hoá quy ước Quy trình phát sinh dãy LiRj từ dãy Li-1Ri-1và khóa Ki Quy trình mã hoá MARS Cấu trúc mã hoá RC6 Chu trình thứ i quy trình mã hoá RC6 Mô hình phát sinh khoá SVTH:Lê Ngọc Khánh Page GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành Chương http://www.ebook.edu.vn Tổng Quan Nội dung chương giới thiệu tổng quan khái niệm mật mã học hệ thống mã hóa, đồng thời giới thiệu sơ lược hệ thống mã hóa quy ước hệ thống mã hóa khóa công cộng 1.1 Mật mã học Mật mã học ngành khoa học ứng dụng toán học vào việc biến đổi thông tin thành dạng khác với mục đích che dấu nội dung, ý nghĩa thông tin cần mã hóa Đây ngành quan trọng có nhiều ứng dụng đời sống xã hội.Ngày nay, ứng dụng mã hóa bảo mật thông tin sử dụng ngày phổ biến lĩnh vực khác giới, từ lĩnh vực an ninh, quân sự, quốc phòng…, lĩnh vực dân thương mại điện tử, ngân hàng… Cùng với phát triển khoa học máy tính Internet, nghiên cứu ứng dụng khoa học mật mã ngày trở nên đa dạng hơn, mở nhiều hướng nghiên cứu chuyên sâu vào lĩnh vực ứng dụng đặc thù với đặc trưng riêng Ứng dụng khoa học mật mã không đơn mã hóa giải mã thông tin mà bao gồm nhiều vấn đề khác cần nghiên cứu giải quyết: chứng thực nguồn gốc nội dung thông tin (kỹ thuật chữ ký điện tử), chứng nhận tính xác thực người sở hữu mã khóa (chứng nhận khóa công cộng), quy trình giúp trao đổi thông tin thực giao dịch điện tử an toàn mạng Những kết nghiên cứu mật mã đưa vào hệ thống phức tạp hơn, kết hợp với kỹ thuật khác để đáp ứng yêu cầu đa dạng hệ thống ứng dụng khác thực tế, ví dụ hệ thống bỏ phiếu bầu cử qua mạng, hệ thống đào tạo từ xa, hệ thống quản lý an ninh đơn vị với hướng tiếp cận sinh trắc học, hệ thống cung cấp dịch vụ multimedia mạng với yêu cầu cung cấp dịch vụ bảo vệ quyền sở hữu trí tuệ thông tin số SVTH:Lê Ngọc Khánh Page GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành http://www.ebook.edu.vn 1.2 Hệ thống mã hóa (cryptosystem) Định nghĩa 1.1: Hệ thống mã hóa (cryptosystem) năm (P, C, K, E, D) thỏa mãn điều kiện sau: Tập nguồn P tập hữu hạn tất mẩu tin nguồn cần mã hóa có Tập đích C tập hữu hạn tất mẩu tin có sau mã hóa Tập khóa K tập hữu hạn khóa sử dụng E D tập luật mã hóa giải mã Với khóa k ε K , tồn luật mã hóa ke ε E luật giải mã k d ε D tương ứng Luật mã hóa: k e P →C luật giải mã : k e C →P hai ánh xạ thỏa mãn ( ( )) , k k d e x = x ε x ε P Tính chất tính chất quan trọng hệ thống mã hóa Tính chất bảo đảm mẩu tin x ε P mã hóa luật mã hóa ke ε E giải mã xác luật k d ε D Định nghĩa 1.2: Zm định nghĩa tập hợp {0,1, ,m −1} , trang bị phép cộng (ký hiệu +) phép nhân (ký hiệu ×) Phép cộng phép nhân Zm thực tương tự Z , ngoại trừ kết tính theo modulo m Ví dụ: Giả sử ta cần tính giá trị 11×13 Z16 Trong Z , ta có kết phép nhân 11×13 =143 Do 143 ≡ 15 (mod 16) nên 11×13 = 15 Z16 Một số tính chất Zm Phép cộng đóng Zm , , m a bε Z , m a + bε Z Tính giao hoán phép cộng Zm , , m Tính kết hợp phép cộng Zm , , , m Zm có phần tử trung hòa 0, , m a bε Z , a + b = b + a a b cε Z , (a + b) + c = a + (b + c) a bε Z , a + = + a = a Mọi phần tử a Zm có phần tử đối m − a Phép nhân đóng Zm , , m SVTH:Lê Ngọc Khánh a bε Z , m a×bε Z Page GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành http://www.ebook.edu.vn Tính giao hoán phép nhân Zm , , m a bε Z , a ×b = b× a Tính kết hợp phép nhân Zm , , , m Zm có phần tử đơn vị 1, , m a b cε Z , (a×b)×c = a×(b×c) a bε Z , a×1 =1×a = a 10 Tính phân phối phép nhân phép cộng, , , m a b cε Z , (a + b)× c = a× c + b× c Zm có tính chất 1, – nên tạo thành nhóm Do Zm có tính chất nên tạo thành nhóm Abel Zm có tính chất (1) – (10) nên tạo thành vành 1.3 Hệ thống mã hóa quy ước (mã hóa đối xứng) Trong hệ thống mã hóa quy ước, trình mã hóa giải mã thông điệp sử dụng mã khóa gọi khóa bí mật (secret key) hay khóa đối xứng (symmetric key) Do đó, vấn đề bảo mật thông tin mã hóa hoàn toàn phụ thuộc vào việc giữ bí mật nội dung mã khóa sử dụng Với tốc độ khả xử lý ngày nâng cao vi xử lý nay, phương pháp mã hóa chuẩn (Data Encryption Standard – DES) trở nên không an toàn bảo mật thông tin Do đó, Viện Tiêu chuẩn Công nghệ Quốc gia Hoa Kỳ (National Institute of Standards and Technology – NIST) định chọn chuẩn mã hóa với độ an toàn cao nhằm phục vụ nhu cầu bảo mật thông tin liên lạc phủ Hoa Kỳ ứng dụng dân Thuật toán Rijndael Vincent Rijmen Joan Daeman thức chọn trở thành chuẩn mã hóa nâng cao (Advanced Encryption Standard – AES) từ 02 tháng 10 năm 2000 1.4 Hệ thống mã hóa khóa công cộng (mã hóa bất đối xứng) Nếu vấn đề khó khăn đặt phương pháp mã hóa quy ước toán trao đổi mã khóa ngược lại, phương pháp mã hóa khóa công cộng giúp cho việc trao đổi mã khóa trở nên dễ dàng Nội dung khóa công cộng (public key) không cần phải giữ bí mật khóa bí mật phương pháp mã hóa quy ước Sử dụng khóa công cộng, thiết SVTH:Lê Ngọc Khánh Page GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành http://www.ebook.edu.vn lập quy trình an toàn để truy đổi khóa bí mật sử dụng hệ thống mã hóa quy ước Trong năm gần đây, phương pháp mã hóa khóa công cộng, đặc biệt phương pháp RSA [45], sử dụng ngày nhiều ứng dụng mã hóa giới xem phương pháp chuẩn sử dụng phổ biến Internet, ứng dụng việc bảo mật thông tin liên lạc lĩnh vực thương mại điện tử 1.5 Kết hợp mã hóa quy ước mã hóa khóa công cộng Các phương pháp mã hóa quy ước có ưu điểm xử lý nhanh khả bảo mật cao so với phương pháp mã hóa khóa công cộng lại gặp phải vấn đề khó khăn việc trao đổi mã khóa Ngược lại, phương pháp mã hóa khóa công cộng xử lý thông tin chậm lại cho phép người sử dụng trao đổi mã khóa dễ dàng Do đó, ứng dụng thực tế, cần phối hợp ưu điểm phương pháp mã hóa để xây dựng hệ thống mã hóa bảo mật thông tin hiệu an toàn SVTH:Lê Ngọc Khánh Page GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành Chương http://www.ebook.edu.vn Một số phương pháp mã hóa quy ước Trong chương tìm hiểu tổng quan mật mã học hệ thống mật mã Nội dung chương giới thiệu chi tiết hệ thống mã hóa quy ước Một số phương pháp mã hóa quy ước kinh điển phương pháp Phương pháp Affine ,Phương pháp Vigenere ,Phương pháp Hill , Phương pháp mã hóa hoán vị….cùng với phương pháp mã hóa theo khối sử dụng phổ biến thập niên gần DES, Tripple DES, AES giới thiệu chương 2.1 Hệ thống mã hóa quy ước Hệ thống mã hóa quy ước hệ thống mã hóa quy trình mã hóa giải mã sử dụng chung khoá - khóa bí mật Việc bảo mật thông tin phụ thuộc vào việc bảo mật khóa Trong hệ thống mã hóa quy ước, thông điệp nguồn mã hóa với mã khóa k thống trước người gửi A người nhận B Người A sử dụng Một số phương pháp mã hóa quy ướcmã khóa k để mã hóa thông điệp x thành thông điệp y gửi y cho người B; người B sử dụng mã khóa k để giải mã thông điệp y Vấn đề an toàn bảo mật thông tin mã hóa phụ thuộc vào việc giữ bí mật nội dung mã khóa k Nếu người C biết mã khóa k C “mở khóa” thông điệp mã hóa mà người A gửi cho người B SVTH:Lê Ngọc Khánh Page GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành http://www.ebook.edu.vn Hình :Mô hình hệ thống mã hoá quy ước 2.2 Phương pháp mã dịch chuyển Phương pháp mã hóa dịch chuyển phương pháp lâu đời sử dụng để mã hóa Thông điệp mã hóa cách dịch chuyển xoay vòng ký tự k vị trí bảng chữ Trong trường hợp đặc biệt k = , phương pháp mã hóa dịch chuyển gọi phương pháp mã hóa Caesar Thuật toán Mã hóa dịch chuyển phương pháp mã hóa đơn giản, thao tác xử lý mã hóa giải mã thực nhanh chóng Tuy nhiên, thực tế, phương pháp dễ dàng bị phá vỡ cách thử khả khóa k SVTH:Lê Ngọc Khánh Page 10 K Điều GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành http://www.ebook.edu.vn Như sau giải mã kí tự ta thu lại thông điệp mã hoá ban đầu “ĐAIHOCDUYTAN” 4.3 Sơ đồ khối : 4.3.1 Mã hoá BEGIN NHẬP THÔNG ĐIỆP MÃ HOÁ F KT T KHỞI TẠO MA TRẬN VUÔNG F CHUYỂN MÃ LẦN KT T CHUỖI ĐƯỢC MÃ HOÁ LẦN END Sơ đồ khối chuyển mã lần dựa vào “Từ khoá vuông” SVTH:Lê Ngọc Khánh Page 45 GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành http://www.ebook.edu.vn BEGIN KHỞI TẠO MA TRẬN CỘT F CHUYỂN MÃ LẦN KT T CHUỖI ĐƯỢC MÃ HOÁ CUỐI END Sơ đồ khối chuyển mã dựa vào “từ khoá cột” SVTH:Lê Ngọc Khánh Page 46 GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành http://www.ebook.edu.vn 4.3.2 Giải mã BEGIN KHỞI TẠO MA TRẬN CỘT F GIẢI MÃ KT T ĐOẠN MÃ ĐƯỢC GIẢI MÃ END Sơ đồ khối giải mã dựa vào “từ khoá cột” SVTH:Lê Ngọc Khánh Page 47 GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành http://www.ebook.edu.vn BEGIN KHỞI TẠO MA TRẬN VUÔNG F GIẢI MÃ KT T THÔNG ĐIỆP MÃ HOÁ END Sơ đồ khối giải mã dựa vào “từ khoá vuông” SVTH:Lê Ngọc Khánh Page 48 GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành http://www.ebook.edu.vn 4.4 Thuật toán: //Gọi hàm thuật toán “ADFGVX” modules(menu mã hoá) Private Sub mnuEncode_Click() Dim tmpOutput As String strUndo = Me.txtMain.Text If txtMain.Text = " " Or txtMain.Text = Empty Then MsgBox "ban phai nhap noi dung ma hoa ", vbInformation, "err" End If If Len(Me.txtMain.Text) > 10000 Then MsgBox "So luong chu nhap vao qua lon ", vbCritical Exit Sub End If Screen.MousePointer = 11 Select Case Me.Combo1.ListIndex Case 'ADFGVX tmpOutput = MahoaADFGVX(Me.txtMain.Text, Me.txtK2.Text) Me.txtK1.Text, End Select If tmpOutput "" Then Me.txtMain.Text = MakeGroups(tmpOutput, True, Val(Me.txtGroupsPerLine.Text)) Screen.MousePointer = End Sub //Gọi hàm thuật toán “ADFGVX” modules(menu giải mã) Private Sub mnuDecode_Click() Dim tmpOutput As String strUndo = Me.txtMain.Text Screen.MousePointer = 11 Select Case Me.Combo1.ListIndex Case 'ADFGVX tmpOutput = GiaimaADFGVX(Me.txtMain.Text, Me.txtK1.Text, Me.txtK2.Text) End Select If tmpOutput "" Then Me.txtMain.Text = tmpOutput Screen.MousePointer = End Sub SVTH:Lê Ngọc Khánh Page 49 GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành http://www.ebook.edu.vn //Hưóng dẫn (menu trợ giúp) Private Sub mnuPaperVersion_Click() loadPaperVersion (strPaperVersion) frmPaperVersion.Show End Sub //Hàm mã hoá Public Function MahoaADFGVX(ByVal PlainIn As String, ByVal KeySquare As String, ByVal KeyCol As String) As String 'lap ma voi ADFGVX PlainIn = TrimText(PlainIn, True, True, False, False) If PlainIn = "" Then Exit Function 'khoi tao chia khoa vuong(Keysquare) KeySquare = TrimText(KeySquare, True, False, False, False) If InitSquare(KeySquare) Then Exit Function 'lap ma MahoaADFGVX = EncSquare(PlainIn) If MahoaADFGVX = "" Then Exit Function 'khoi tao chia khoa cot (Keycol) KeyCol = TrimText(KeyCol, True, False, False, False) If InitColumnar(KeyCol) Then Exit Function 'lap ma MahoaADFGVX = EncColumn(MahoaADFGVX) End Function // Hàm giải mã Public Function GiaimaADFGVX(ByVal CodeIn As String, ByVal KeySquare As String, ByVal KeyCol As String) As String 'giai ma ADFGVX 'sap xep cac thu tu nhu mot bang chu cai CodeIn = TrimText(CodeIn, True, False, False, False) If CodeIn = "" Then Exit Function 'khoi tao chia khoa cot KeyCol = TrimText(KeyCol, True, False, False, False) If InitColumnar(KeyCol) Then Exit Function SVTH:Lê Ngọc Khánh Page 50 GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành http://www.ebook.edu.vn 'giai ma cot GiaimaADFGVX = DecColumn(CodeIn) If GiaimaADFGVX = "" Then Exit Function 'khoi tao chia khoa vuong KeySquare = TrimText(KeySquare, True, False, False, False) If InitSquare(KeySquare) Then Exit Function 'giai ma GiaimaADFGVX = DecSquare(GiaimaADFGVX) End Function //Hàm trợ giúp(menu trợ giúp) Public Sub loadPaperVersion(aTitle As String) 'phan tro giup Dim FileO As Integer Dim strInput As String On Error GoTo errHandler FileO = FreeFile Open App.Path & "\" & aTitle & ".txt" For Input As #FileO strInput = Input(LOF(FileO), 1) Close FileO frmPaperVersion.Caption = "Paper Version of " & aTitle frmPaperVersion.Text1.Text = strInput Exit Sub errHandler: Close FileO End Sub //Thoát khỏi chương trình Private Sub mnuExit_Click() If MsgBox("ban that su muon thoat khoi chuong trinh?", vbInformation + vbYesNo, "err") = vbYes Then MsgBox "Chuong Trinh Da Thoat ", vbInformation, "err" End If Unload Me End Sub //Khởi tạo kiểm tra ma trận vuông Private Function InitSquare(key As String) As Integer 'khoi tao chia khoa ADFGVX Dim i As Integer Dim SquareKey As String SVTH:Lê Ngọc Khánh Page 51 GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành http://www.ebook.edu.vn Dim SQ As String Dim SquarePos As Integer 'kiem tra chia khoa va dai van ban If Len(key) < Then MsgBox "Do dai tu khoa vuong qua nho.", vbCritical InitSquare = Exit Function End If 'xoa nhung chia khoa bi trung SquareKey = Left(key, 1) For i = To Len(key) SQ = Mid(key, i, 1) If InStr(1, SquareKey, SQ) = Then SquareKey = SquareKey & SQ Next 'dien vao nhung chu cai thieu For i = To 26 SQ = Chr(i + 64) If InStr(1, SquareKey, SQ) = Then SquareKey = SquareKey & SQ Next SquarePos = For i = To 26 SQ = Mid(SquareKey, i, 1) Square(SquarePos) = SQ If Asc(SQ) > 64 And Asc(SQ) < 75 Then 'tiep theo la den phan so SquarePos = SquarePos + If Asc(SQ) = 74 Then 'sau chu J la so Square(SquarePos) = Chr(Asc(SQ) + 30) Else 'sau chu cai A la so ,sau chu cai b la so Square(SquarePos) = Chr(Asc(SQ) - 16) End If Else Square(SquarePos) = SQ End If SquarePos = SquarePos + Next SVTH:Lê Ngọc Khánh Page 52 GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành http://www.ebook.edu.vn 'dat ma tran hang va cot lai voi SquareCode(0) = "A" SquareCode(1) = "D" SquareCode(2) = "F" SquareCode(3) = "G" SquareCode(4) = "V" SquareCode(5) = "X" End Function //Khởi tạo kiểm tra ma trận cột Public Function InitColumnar(ByVal key As String) As Integer 'khoi tao chia khoa cot Dim i As Long Dim j As Long Dim CD As Integer Dim smallestChar As Byte Dim currentChar As Byte 'kiem tra chia khoa CD = Len(key) If CD < Then MsgBox "Do dai tu khoa cot qua nho", vbCritical InitColumnar = Exit Function End If 'Tao chia khoa cot va dat no vao hang ReDim Row(CD) As Integer For i = To CD smallestChar = 255 For j = To CD currentChar = Asc(UCase(Mid(key, j, 1))) If currentChar < smallestChar Then smallestChar = currentChar Row(i) = j End If Next Mid(key, Row(i), 1) = Chr(255) Next End Function SVTH:Lê Ngọc Khánh Page 53 GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành http://www.ebook.edu.vn Public Function EncColumn(ByVal PlainIn As String) As String 'ma hoa chuoi Dim i As Long Dim j As Long 'read off row by row and place one by one For i = To UBound(Row) For j = Row(i) To Len(PlainIn) Step UBound(Row) EncColumn = EncColumn & Mid(PlainIn, j, 1) Next Next End Function 4.5 Bảng demo trước mã hoá SVTH:Lê Ngọc Khánh Page 54 GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành http://www.ebook.edu.vn 4.6 Bảng demo sau mã hoá 4.7 Nhận xét mã hoá ADFGVX hướng phát triển đồ án Vì loại mật mã hoá có từ lâu (Thời chiến tranh giới) có lẽ không bí mật hầu hết nghiên cứu mật mã hoá Tuy nhiên xét độ tin cậy mật hoá có tính bảo mật cao thông thường loại mật mã khác có chìa khoá ADFGVX có chìa khoá tạo thành ma trận (ma trận vuông , ma trận cột) người muồn giải mã thông điệp ban đầu phải theo bước có quy trình định không việc giải mã thất bại Tuy ADFGVX không tiếng Affine,Vinegere,Hill…nhưng nhờ việc giải câu đố ADFGVX mà nhân dân Pháp chiến thắng quân đội Đức ,ADFGVX đáng mật mã thú vị cho quan tâm nghiên cứu “ Mã Hoá”.Đối với đồ án chuyên ngành em xin phép định hướng thêm đồ án tốt nghiệp tốt viết thêm code mã hoá thêm lần Ví dụ sau mã hoá thông điệp “ADFGVX “ sau mã hoá thêm thuật toán SVTH:Lê Ngọc Khánh Page 55 GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành http://www.ebook.edu.vn mã hoá khác chẳng hạn Vinegere, hill … từ việc bảo mật thông tin tốt Em xin trân trọng cảm ơn cô Nguyễn Lê Mai Duyên tận tình giúp đỡ hướng dẫn em hoàn thành đồ án chuyên nghành lần SVTH:Lê Ngọc Khánh Page 56 GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành http://www.ebook.edu.vn NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… SVTH:Lê Ngọc Khánh Page 57 GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành http://www.ebook.edu.vn NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… SVTH:Lê Ngọc Khánh Page 58 GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành http://www.ebook.edu.vn TÀI LIỆU THAM KHẢO Các tài liệu Internet [1] :http://www.google.com.vn [2] :http://www.diendantinhoc.com [3] :http://www.dantri.com [4] :http://www.ebook.edu.com.vn [5] :htpp//www.taifile.com SVTH:Lê Ngọc Khánh Page 59 GVHD:Nguyễn Lê Mai Duyên [...]... thuật toán mã hoá nhưng độ bảo mật của các thuật toán này không được cao với chương này chúng ta sẽ đến với một phương pháp mã hóa quy ước mới với độ an toàn cao hơn đó là AES và sau đó chúng ta cùng tìm hiểu các phương pháp mã hoá nằm trong chuẩn hoá này 3.1 Phương pháp chuẩn mã hóa nâng cao AES Để tìm kiếm một phương pháp mã hóa quy ước mới với độ an toàn cao hơn DES, NIST đã công bố một chuẩn mã hóa... lựa Ví dụ: Để mã hóa một thông điệp được biểu diễn bằng các chữ cái từ A đến Z (26 chữ cái), ta sử dụng 26 P = C = K = Z Khi đó, thông điệp được mã hóa sẽ không an toàn và có thể dễ dàng bị giải mã bằng cách thử lần lượt 26 giá trị khóa k ε K Tính trung bình, thông điệp đã được mã hóa có thể bị giải mã sau khoảng n / 2 lần thử khóa k ε K 2.3 Phương pháp mã hoá thay thế Phương pháp mã hóa thay thế... thuật toán mã hóa quy ước trước đây 3.2.1Quy trình mã hoá : ⊞ Phép cộng ⊟ Phép trừ Hình 3 Quy trình mã hóa MARS SVTH:Lê Ngọc Khánh Page 25 GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành http://www.ebook.edu.vn Hình trên thể hiện mô hình chung của quy trình mã hóa MARS Dữ liệu đầu vào và kết quả của quá trình mã hóa đều là từ có độ dài 32 bit Tất cả các phép toán trong quy trình mã hóa và giải mã đều thực... những phương pháp mã hóa nổi tiếng và đã được sử dụng từ hàng trăm năm nay Phương pháp này thực hiện việc mã hóa thông điệp bằng cách hoán vị các phần tử trong bảng chữ cái hay tổng quát hơn là hoán vị các phần tử trong tập nguồn P Thuật toán Đây là một phương pháp đơn giản, thao tác mã hóa và giải mã được thực hiện nhanh chóng Phương pháp này khắc phục điểm hạn chế của phương pháp mã hóa bằng dịch... công thức: Dễ dàng thấy rằng, phép Hill dùng ma trận Kπ trên thực tế tương đương với MHV dùng hoán vị π.Hơn nữa K-1π=Kπ-1 tức ma trận nghịch đảo của Kπ là ma trận hoán vị xác định theo hoán vị π-1 Như vậy phép giải mã Hill tương đương với phép giải MHV Đối với hoán vị π được dùng trong ví dụ trên các ma trận hoán vị kết hợp là : ⎡0 ⎢0 ⎢ ⎢1 ⎢ Kπ= ⎢0 ⎢0 ⎢ ⎢⎣0 ⎡0 ⎢0 ⎢ ⎢1 ⎢ và K-1π= ⎢0 ⎢0 ⎢ ⎢⎣0 0 1 0 0 0⎤... minh hoạ , ta hãy mã hoá bản rõ “hot”.Trước tiên biến đổi các bản chữ h,o,t thành các thặng dư theo modulo 26.Ta được các số tương tứng là 7, 14 và 19.Bây giờ sẽ mã hoá : 7 × 7 +3 mod 26 = 52 mod 26 = 0 7 × 14 + 3 mod 26 = 101 mod 26 =23 7 × 19 +3 mod 26 = 136 mod 26 = 6 Bởi vậy 3 kí hiệu của bản mã là 0,23 và 6 tương ứng với xâu ký tự AXG 2.5 Phương pháp Vigenere Trong phương pháp mã hóa bằng thay... và khoá là phép hoán vị ( π ) sau: ` Khi đó hoán vị ngược π-1 sẽ là: Bây giờ giả sử có bản rõ : Shesellsseashellsbytheseashore Trước tiên ta nhóm bản rõ thanhd nhóm 6 kí tự: shesel | lsseas | hellsb | ythese | ashore Bây giờ mỗi nhóm 6 chữ cái được sắp xếp lại theo phép hoán vị π , ta có : EESLSH | SALSES | LSHBLE | HSYEET | HRAEOS Như vậy bản mã là: EESLSH SALSES LSHBLE HSYEET HRAEOS Như vậy bản mã. .. 1) mod c end for End 3.3.3 Quy trình mã hóa RC6 làm việc với bốn từ w bit A, B, C, D chứa các dữ liệu đưa vào ban đầu cũng như dữ liệu mã hóa đưa ra cuối quy trình mã hóa Byte đầu tiên của văn bản ban đầu và văn bản mã hóa được đặt vào vị trí byte thấp nhất của A; byte cuối cùng của văn bản ban đầu và văn bản mã hóa được đặt vào byte cao nhất của D Hình 4 Cấu trúc mã hóa RC6 SVTH:Lê Ngọc Khánh Page 32... là: EESLSH SALSES LSHBLE HSYEET HRAEOS Như vậy bản mã đã được mã hoá theo cách tương tự bằng phép vị đảo π-1 SVTH:Lê Ngọc Khánh Page 19 GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành http://www.ebook.edu.vn Trong thực tế MHV là một trường hợp đặc biệt trong mã Hill Khi cho phép hoán vị π của tập {1, ,m},ta có thể xác định được một ma trận hoán vị m × m thích hợpKπ = { ki,j} theo công thức: Dễ dàng... khóa K của phương pháp Vigenere Cipher có số phần tử là nm , lớn hơn hẳn phương pháp số lượng phần tử của không gian khóa K trong phương háp mã hóa bằng dịch chuyển Do đó, việc tìm ra mã khóa k để giải mã thông iệp đã được mã hóa sẽ khó khăn hơn đối với phương pháp mã hóa bằng dịch chuyển.Thuật toán SVTH:Lê Ngọc Khánh Page 15 GVHD:Nguyễn Lê Mai Duyên Đồ Án Chuyên Nghành http://www.ebook.edu.vn 2.6 Phương ... AES 24 3.1 Phương pháp chuẩn mã hoá nâng cao AES 24 3.2 Phương pháp mã hoá MARS 25 3.3 Phương pháp mã hoá RC6 30 3.4 Phương pháp mã hoá Serpent 35 Chương Mật mã hoá ADFGVX 39 4.1 Lịch sử 39 4.2... 4.2.1 Mã hoá: ( encode) Đầu tiên hệ thống đòi bạn phải nhập thông điệp cần mã hoá : Ví dụ nội dung cần mã hoá :” DAI HOC DUY TAN” Với phương pháp mật mã hoá chương trình cần nhập từ khoá : Từ khoá... giải mã kí tự ta thu lại thông điệp mã hoá ban đầu “ĐAIHOCDUYTAN” 4.3 Sơ đồ khối : 4.3.1 Mã hoá BEGIN NHẬP THÔNG ĐIỆP MÃ HOÁ F KT T KHỞI TẠO MA TRẬN VUÔNG F CHUYỂN MÃ LẦN KT T CHUỖI ĐƯỢC MÃ HOÁ