1. Trang chủ
  2. » Công Nghệ Thông Tin

NGHIÊN CỨU PHƯƠNG PHÁP MÃ HÓA ẢNH SỬ DỤNG KĨ THUẬT CẮT MẶT PHẲNG BIT, HỖN LOẠN ĐỘNG VÀ HÀM BĂM

59 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

Thông tin cơ bản

Tiêu đề Nghiên Cứu Phương Pháp Mã Hóa Ảnh Sử Dụng Kĩ Thuật Cắt Mặt Phẳng Bit, Hỗn Loạn Động Và Hàm Băm
Tác giả Nguyễn Đình Huy
Người hướng dẫn ThS. Trần Thị Xuyên
Trường học Học viện Kỹ thuật mật mã
Chuyên ngành An toàn thông tin
Thể loại Đồ án tốt nghiệp
Năm xuất bản 2024
Thành phố Hà Nội
Định dạng
Số trang 59
Dung lượng 4,33 MB

Cấu trúc

  • Chương 1. Tổng quan (8)
    • 1.1. Vấn đề đảm bảo an toàn thông tin (8)
      • 1.1.1. Vấn đề chung trong việc đảm bảo an toàn thông tin (8)
      • 1.1.2. Khái niệm đảm bảo an toàn thông tin (10)
    • 1.2. Một số hệ mật (11)
      • 1.2.1. Giới thiệu (11)
      • 1.2.2. Một số phương pháp mã hóa (14)
    • 1.3. Hàm băm (15)
      • 1.3.1. Giới thiệu (15)
      • 1.3.2. Tính chất (17)
      • 1.3.3. Một số hàm băm (19)
    • 1.4. Chữ kí số (20)
      • 1.4.1. Giới thiệu (20)
      • 1.4.2. Tính chất (20)
      • 1.4.3. Một số thuật toán chữ kí số (21)
    • 1.5. Mật mã hỗn loạn (22)
      • 1.5.1. Hệ thống động và lí thuyết hỗn loạn (22)
      • 1.5.2. Một số ánh xạ hỗn loạn (23)
    • 1.6. Kết luận chương 1 (25)
  • Chương 2. Mã hóa ảnh (26)
    • 2.1. Giới thiệu (26)
    • 2.2. Một số tiêu chí đánh giá chất lượng mã hóa ảnh (26)
      • 2.2.1. Phân tích histogram (27)
      • 2.2.2. So sánh hệ số tương quan (28)
      • 2.2.3. Entropy (30)
      • 2.2.4. Giá trị sai lệch lớn nhất (31)
      • 2.2.5. Giá trị sai lệch trung bình (32)
    • 2.3. Một số phương pháp mã hóa ảnh (33)
      • 2.3.1. Mã hóa dựa trên biến đổi (Transform Domain Encryption) (33)
      • 2.3.2. Mã hóa dựa trên hoán vị (Permutation-Based Encryption) (35)
      • 2.3.3. Mã hóa dựa trên mạng nơ-ron (Neural Network-Based Encryption) (36)
    • 2.4. Kết luận chương 2 (38)
  • Chương 3. Mã hóa ảnh sử dụng kĩ thuật cắt mặt phẳng bit, hỗn loạn động và hàm băm (39)
    • 3.1. Mô tả phương pháp (39)
      • 3.1.1. Quá trình mã hóa (39)
      • 3.1.2. Quá trình giải mã (40)
      • 3.2.1. Mục tiêu của bài toán (42)
      • 3.2.2. Ngôn ngữ lập trình (42)
      • 3.2.3. Kiến trúc chương trình (42)
      • 3.2.4. Các bước triển khai chương trình (43)
      • 3.2.5. Chương trình thực nghiệm (45)
    • 3.3. Đánh giá kết quả thực nghiệm (51)
    • 3.4. Kết luận chương 3 (53)
  • Kết luận (54)
  • Tài liệu tham khảo (55)
  • Phụ lục (56)

Nội dung

Nhận thấy điều này, đồ án tập trung nghiên cứu và ứng dụng các phương pháp mã hóa hiện đại, bao gồm kỹ thuật cắt mặt phẳng bit, hỗn loạn động, và hàm băm.Những kỹ thuật này không chỉ đảm

Tổng quan

Vấn đề đảm bảo an toàn thông tin

1.1.1 Vấn đề chung trong việc đảm bảo an toàn thông tin

Trong thời đại công nghệ thông tin và truyền thông phát triển mạnh mẽ, việc đảm bảo an toàn thông tin trở nên cực kỳ quan trọng Dưới đây là một số vấn đề chính liên quan đến việc bảo vệ an toàn thông tin mà các tổ chức và cá nhân cần chú ý.

Tấn công mạng ngày càng gia tăng cả về số lượng và mức độ phức tạp Các loại tấn công phổ biến bao gồm:

- Tấn công từ chối dịch vụ (DDoS): Làm cho hệ thống không thể cung cấp dịch vụ bình thường cho người dùng.

- Tấn công phần mềm độc hại (Malware): Phát tán các phần mềm độc hại như virus, trojan, ransomware nhằm phá hủy hoặc đánh cắp dữ liệu.

Tấn công lừa đảo (Phishing) là hình thức giả mạo các trang web hoặc email nhằm lừa người dùng cung cấp thông tin nhạy cảm như mật khẩu và thông tin thẻ tín dụng Những kẻ lừa đảo thường sử dụng các chiêu trò tinh vi để tạo ra sự tin tưởng, khiến người dùng dễ dàng bị mắc bẫy Để bảo vệ bản thân, người dùng cần cẩn trọng khi nhận email hoặc truy cập vào các trang web không rõ nguồn gốc.

Rủi ro nội bộ là một mối đe dọa nghiêm trọng đối với tổ chức, thường xuất phát từ những nhân viên không hài lòng có thể cố tình gây hại hoặc đánh cắp dữ liệu Ngoài ra, sự thiếu nhận thức về an ninh cũng là một yếu tố nguy hiểm, khi nhân viên chưa được đào tạo đầy đủ về an toàn thông tin có thể vô tình làm lộ thông tin nhạy cảm hoặc trở thành nạn nhân của các cuộc lừa đảo.

Bảo mật dữ liệu là quá trình bảo vệ thông tin khỏi truy cập trái phép, sửa đổi hoặc phá hủy Những thách thức chính trong lĩnh vực này bao gồm quản lý quyền truy cập, mã hóa dữ liệu và sao lưu phục hồi Việc quản lý và cập nhật dữ liệu giúp đảm bảo rằng chỉ những người có thẩm quyền mới có thể truy cập thông tin nhạy cảm Mã hóa dữ liệu sử dụng các phương pháp bảo mật để bảo vệ thông tin trong quá trình truyền tải và lưu trữ Ngoài ra, việc thực hiện sao lưu định kỳ và lập kế hoạch phục hồi dữ liệu sau sự cố là rất cần thiết để đảm bảo an toàn cho dữ liệu.

Để đảm bảo an toàn thông tin, các tổ chức, đặc biệt là công ty đa quốc gia, cần tuân thủ các quy định pháp luật địa phương, cũng như các tiêu chuẩn và quy định quốc tế về bảo mật Việc tuân thủ này không chỉ giúp bảo vệ dữ liệu mà còn nâng cao uy tín và sự tin cậy của tổ chức trên thị trường toàn cầu.

Tuân thủ quy định pháp luật tại Việt Nam là rất quan trọng, đặc biệt trong lĩnh vực an ninh mạng Luật an ninh mạng (Luật số 86/2015/QH13) quy định việc bảo vệ thông tin cá nhân và quản lý an toàn thông tin mạng Luật an ninh mạng (Luật số 24/2018/QH14) tập trung vào bảo vệ chủ quyền không gian mạng quốc gia và yêu cầu kiểm tra an ninh cho các hệ thống thông tin quan trọng Nghị định 53/2022/NĐ-CP hướng dẫn thi hành luật an ninh mạng, quy định chi tiết về lưu trữ dữ liệu và quản lý thông tin Ngoài ra, Nghị định 91/2020/NĐ-CP về chống tin rác cũng đề ra các biện pháp quản lý tin nhắn và email rác, nhằm đảm bảo an toàn thông tin và bảo vệ người dùng.

Các công ty quốc gia cần tuân thủ luật pháp quốc tế, đặc biệt là Quy định Bảo vệ Dữ liệu Chung (GDPR) của Liên minh Châu Âu Quy định này không chỉ áp dụng cho các công ty trong EU mà còn ảnh hưởng đến những doanh nghiệp ngoài EU nếu họ thu thập và xử lý dữ liệu cá nhân của công dân EU.

Liên minh Châu Âu (EU) và Quy định Bảo vệ Dữ liệu Chung (GDPR) yêu cầu các tổ chức bảo vệ quyền riêng tư cá nhân và thực hiện các biện pháp an ninh thông tin nghiêm ngặt Tương tự, Đạo luật Bảo vệ Quyền riêng tư Người tiêu dùng California (CCPA) ở Hoa Kỳ yêu cầu các doanh nghiệp thông báo cho người dùng về việc thu thập và sử dụng dữ liệu cá nhân Sau khi rời EU, Vương Quốc Anh đã thông qua Đạo luật Bảo vệ Dữ liệu (DPA) để điều chỉnh việc bảo vệ dữ liệu cá nhân, tương đồng với GDPR.

Các tiêu chuẩn quốc tế về an toàn thông tin đóng vai trò quan trọng trong việc bảo vệ dữ liệu của tổ chức ISO/IEC 27001 là tiêu chuẩn phổ biến nhất cho hệ thống quản lý an toàn thông tin (ISMS), giúp các tổ chức thiết lập, triển khai, duy trì và cải thiện bảo mật thông tin Bên cạnh đó, ISO/IEC 27002 cung cấp hướng dẫn thực hiện các biện pháp kiểm soát an ninh dựa trên tiêu chuẩn ISO/IEC 27001 Thêm vào đó, COBIT (Control Objectives for Information and Related Technologies) là một khuôn khổ do ISACA phát triển, nhằm quản lý và bảo mật công nghệ thông tin trong các tổ chức.

Triển khai công nghệ và hạ tầng bảo mật là một thách thức quan trọng, bao gồm các yếu tố như tường lửa, hệ thống phát hiện xâm nhập, hệ thống quản lý sự kiện và thông tin bảo mật (SIEM), và công nghệ bảo mật điểm cuối (Endpoint Security) Tường lửa và hệ thống phát hiện xâm nhập giúp bảo vệ hệ thống khỏi các cuộc tấn công từ bên ngoài, trong khi SIEM giám sát và phân tích các sự kiện bảo mật để phát hiện và ứng phó với mối đe dọa Công nghệ bảo mật điểm cuối bảo vệ các thiết bị đầu cuối như máy tính và điện thoại di động khỏi các mối đe dọa tiềm ẩn.

Việc đảm bảo an toàn thông tin là một nhiệm vụ phức tạp và đa chiều, yêu cầu sự kết hợp chặt chẽ giữa công nghệ, quy trình và con người Điều này nhằm bảo vệ dữ liệu và hệ thống thông tin khỏi các mối đe dọa ngày càng tinh vi.

1.1.2 Khái niệm đảm bảo an toàn thông tin Đảm bảo an toàn thông tin (Information Security) là quá trình bảo vệ thông tin và hệ thống thông tin khỏi các mối đe dọa nhằm đảm bảo tính bảo mật, tính khả dụng của thông tin Đây là một khái niệm quan trọng trong lĩnh vực công nghệ thông tin và truyền thông, được định nghĩa và chi tiết hóa thông qua ba yếu tố chính:

Tính bảo mật đề cập đến việc ngăn chặn truy cập trái phép vào thông tin nhạy cảm, đảm bảo chỉ những người hoặc hệ thống có thẩm quyền mới có quyền truy cập và xem Để duy trì tính bảo mật, cần áp dụng các biện pháp bảo vệ hiệu quả.

- Mã hóa dữ liệu (Data Encryption): Chuyển đổi thông tin thành một dạng không thể đọc được nếu không có khóa giải mã.

- Quản lý quyền truy cập (Access Control): Thiết lập các chính sách và cơ chế để xác định ai có quyền truy cập vào thông tin nào.

- Xác thực (Authentication): Xác minh danh tính của người dùng hoặc hệ thống trước khi cho phép truy cập vào thông tin.

Ẩn mã (Steganography) là một phương pháp bảo mật thông tin bằng cách giấu dữ liệu trong một đối tượng khác, giúp người không có quyền không phát hiện ra sự tồn tại của thông tin Mục tiêu chính của kỹ thuật này là đảm bảo chỉ những người được phép mới có thể truy cập và hiểu nội dung thông tin được truyền tải.

Tính toàn vẹn của thông tin là yếu tố quan trọng đảm bảo rằng dữ liệu không bị thay đổi, hư hỏng hoặc giả mạo trong quá trình lưu trữ, xử lý và truyền tải Để bảo vệ tính toàn vẹn này, cần áp dụng các biện pháp bảo mật hiệu quả.

Một số hệ mật

Các hệ mật thực hiện các kỹ thuật bảo mật quan trọng nhằm bảo vệ thông tin và dữ liệu số khỏi truy cập trái phép thông qua hai quá trình chính: mã hóa và giải mã Mã hóa chuyển đổi thông tin từ dạng dễ hiểu (bản rõ) sang dạng mã hóa, chỉ có thể được truy cập và đọc bằng khóa giải mã Ngược lại, giải mã cho phép người nhận sử dụng khóa giải mã để khôi phục thông tin về dạng bản rõ ban đầu Mật mã đóng vai trò quan trọng trong việc đảm bảo tính bảo mật của thông tin Hình 1.1 dưới đây minh họa mô hình bảo vệ thông tin bằng mật mã.

Mô hình chung của các hệ mật mã được trình bày trong hình 1.1, bao gồm các khái niệm cơ bản liên quan đến quy trình mã hóa và giải mã Mô hình này giúp hiểu rõ cách thức hoạt động của các hệ thống mật mã.

Bản rõ là thông tin gốc hoặc dữ liệu chưa được mã hóa, dễ hiểu và có thể đọc được, do đó cần được bảo vệ.

Thuật toán mã hóa là một tập hợp các phép toán toán học dùng để chuyển đổi dữ liệu từ dạng rõ thành dạng mã hóa Có nhiều loại thuật toán mã hóa với mức độ phức tạp và bảo mật khác nhau, phục vụ cho nhu cầu bảo vệ thông tin trong các ứng dụng khác nhau.

Khóa là thông tin tham số dùng để mã hóa, chỉ được biết bởi người gửi và người nhận Nó độc lập với bản rõ và có độ dài phù hợp với yêu cầu bảo mật, đảm bảo an toàn cho thông tin truyền tải.

Mã hóa là quá trình chuyển đổi dữ liệu từ dạng bản rõ sang bản mã, thường bao gồm việc áp dụng các thuật toán mã hóa cùng với một số quy trình xử lý thông tin bổ sung.

- Giải mã: Chuyển bản mã thành bản rõ, đây là quá trình ngược lại của mã hóa.

Bản mã, hay còn gọi là ciphertext, là sản phẩm của quá trình mã hóa bản rõ Dữ liệu này ở dạng khó hiểu và không thể đọc được nếu không có khóa giải mã thích hợp.

- Bước 1: Bản rõ được tạo ra từ nguồn thông tin.

- Bước 2: Thuật toán mã hóa sử dụng khóa mã hóa để chuyển đổi bản rõ thành bản mã.

- Bước 3: Bản mã được truyền tải hoặc lưu trữ trên hệ thống.

- Bước 1: Người nhận thông tin nhận được bản mã.

- Bước 2: Thuật toán giải mã sử dụng khóa giải mã để chuyển đổi bản mã trở lại bản rõ.

- Bước 3: Người nhận thông tin có thể đọc và sử dụng bản rõ.

Mô hình mã hóa phổ biến:

Mã hóa đối xứng sử dụng cùng một khóa cho cả mã hóa và giải mã, yêu cầu người gửi và nhận phải chia sẻ một khóa bí mật chung Ưu điểm của phương pháp này là tốc độ nhanh và hiệu quả khi xử lý khối lượng dữ liệu lớn, trong khi nhược điểm chính là khó khăn trong việc quản lý và phân phối khóa.

Mã hóa bất đối xứng sử dụng hai khóa khác nhau: khóa công khai để mã hóa và khóa riêng để giải mã Khóa công khai có thể được chia sẻ rộng rãi, trong khi khóa riêng cần được bảo mật Ưu điểm của phương pháp này là quản lý khóa dễ dàng hơn, không cần chia sẻ khóa bí mật chung Tuy nhiên, nhược điểm là tốc độ mã hóa chậm hơn so với mã hóa đối xứng, thường được áp dụng cho các khối lượng dữ liệu nhỏ hoặc để mã hóa khóa đối xứng.

Mã hóa lai (Hybrid Encryption) kết hợp mã hóa đối xứng và bất đối xứng, tận dụng ưu điểm của cả hai phương pháp Trong mô hình này, mã hóa bất đối xứng được dùng để mã hóa khóa đối xứng, sau đó khóa đối xứng sẽ mã hóa dữ liệu Ưu điểm của phương pháp này là bảo mật cao và hiệu quả khi xử lý khối lượng dữ liệu lớn, nhưng nhược điểm là tính phức tạp trong triển khai Mật mã có ứng dụng rộng rãi trong nhiều lĩnh vực nhằm bảo vệ thông tin và dữ liệu.

Secure communications utilize encryption to safeguard online transactions, emails, and messaging services from unauthorized access and eavesdropping.

Mã hóa là một phương pháp quan trọng trong bảo vệ dữ liệu, giúp ngăn chặn việc đánh cắp hoặc truy cập trái phép thông tin lưu trữ trên các thiết bị và hệ thống.

1.2.2 Một số phương pháp mã hóa

Mã hóa đóng vai trò thiết yếu trong bảo mật thông tin, với nhiều thuật toán được phát triển để đáp ứng nhu cầu bảo mật đa dạng Bài viết này sẽ khám phá ba phương pháp mã hóa phổ biến: DES, AES và RSA.

Chuẩn mã dữ liệu DES (Data Encryption Standard) là thuật toán mã hóa đối xứng, được phát triển bởi IBM vào những năm 1970 và sau đó được Viện Tiêu chuẩn và Công nghệ Quốc gia Mỹ (NIST) công nhận là tiêu chuẩn mã hóa.

- Khóa mã hóa: DES sử dụng khóa có độ dài 56 bit.

- Khối mã hóa: DES mã hóa dữ liệu theo từng khối 64 bit.

- Quy trình: DES thực hiện 16 vòng phép toán phức tạp bao gồm các bước thay thế và hoán vị để mã hóa dữ liệu.

Mặc dù từng được coi là an toàn, hiện nay DES được xem là không đủ an toàn trước các tấn công brute-force do độ dài khóa ngắn.

Chuẩn mã dữ liệu tiên tiến AES (Advanced Encryption Standard) là thuật toán mã hóa đối xứng được phát triển nhằm thay thế DES, được NIST công nhận là tiêu chuẩn mã hóa vào năm 2001 AES nổi bật với tính bảo mật cao và hiệu quả trong việc bảo vệ thông tin.

- Khóa mã hóa: AES hỗ trợ các độ dài khóa 128 bit, 192 bit và 256 bit.

- Khối mã hóa: AES mã hóa dữ liệu theo từng khối 128 bit.

Hàm băm

Hàm băm (hash function) là một thuật toán quan trọng trong an toàn thông tin và mật mã học, chuyển đổi đầu vào thành giá trị băm cố định, thường được coi là "dấu vân tay" của dữ liệu Giá trị băm này đóng vai trò then chốt trong nhiều ứng dụng bảo mật, đại diện duy nhất cho dữ liệu đầu vào.

Hình tỔNG QUAN.2: Hàm băm Các đặc điểm chính của hàm băm:

Hàm băm là công cụ quan trọng trong lĩnh vực bảo mật thông tin, với khả năng xử lý đầu vào có kích thước bất kỳ và tạo ra đầu ra có độ dài cố định Chẳng hạn, hàm băm SHA-256 luôn sản sinh giá trị băm dài 256 bit, bất kể kích thước của dữ liệu đầu vào.

- Xác định (Deterministic): Cùng một đầu vào sẽ luôn tạo ra cùng một giá trị băm Điều này đảm bảo tính nhất quán và khả năng kiểm tra.

Hàm băm chất lượng cao có khả năng tạo ra giá trị duy nhất cho mỗi đầu vào, giúp giảm thiểu khả năng xảy ra va chạm (collision) giữa các giá trị băm từ các đầu vào khác nhau, mặc dù không thể đảm bảo hoàn toàn.

- Hiệu quả tính toán (Efficient Calculation): Hàm băm phải có khả năng tính toán nhanh chóng, ngay cả đối với dữ liệu đầu vào lớn.

Tính chất bền vững trước các thay đổi nhỏ, hay còn gọi là hiệu ứng Avalanche, cho thấy rằng chỉ một thay đổi nhỏ trong dữ liệu đầu vào, chẳng hạn như một bit, có thể gây ra sự biến đổi lớn trong giá trị băm đầu ra Kết quả là, giá trị băm mới sẽ gần như hoàn toàn khác biệt so với giá trị băm trước đó.

Các ứng dụng của hàm băm:

Hàm băm đóng vai trò quan trọng trong việc xác thực dữ liệu, giúp đảm bảo tính toàn vẹn của thông tin Bằng cách so sánh giá trị băm của dữ liệu trước và sau khi truyền tải hoặc lưu trữ, chúng ta có thể dễ dàng xác định xem dữ liệu có bị thay đổi hay không.

Để đảm bảo an toàn cho mật khẩu, hệ thống không lưu trữ mật khẩu dưới dạng văn bản rõ mà thay vào đó lưu trữ giá trị băm của mật khẩu Khi người dùng đăng nhập, mật khẩu được nhập sẽ được băm và so sánh với giá trị băm đã được lưu trữ, giúp bảo vệ thông tin cá nhân một cách hiệu quả.

Chữ ký số là một công nghệ quan trọng sử dụng hàm băm để tạo ra một đại diện nhỏ gọn của tài liệu số Giá trị băm này được mã hóa bằng khóa riêng của người gửi, từ đó tạo ra chữ ký số, đảm bảo tính toàn vẹn và xác thực của tài liệu.

Hàm kiểm tra (Checksums) và mã phát hiện lỗi (Error Detection Codes) là các công cụ quan trọng trong việc đảm bảo tính toàn vẹn của dữ liệu Các hàm băm được sử dụng để tạo ra các mã kiểm tra, giúp phát hiện lỗi trong quá trình truyền tải hoặc lưu trữ dữ liệu một cách hiệu quả.

Cấu trúc dữ liệu hiệu quả, như bảng băm, sử dụng hàm băm để đảm bảo truy cập nhanh chóng đến các mục dữ liệu.

Hạn chế của hàm băm: Hàm băm cũng có một số hạn chế cần lưu ý, bao gồm:

Va chạm trong băm xảy ra khi hai giá trị đầu vào khác nhau tạo ra cùng một giá trị băm, gây ra những vấn đề như tìm kiếm dữ liệu chậm và kém hiệu quả Hiện tượng này có thể ảnh hưởng đến hiệu suất của hệ thống, làm giảm khả năng truy xuất thông tin nhanh chóng.

Hàm băm thường không thể đảo ngược, điều này có nghĩa là không thể lấy lại giá trị đầu vào từ giá trị băm, dẫn đến những vấn đề bảo mật như không thể khôi phục mật khẩu đã bị băm Tuy nhiên, ưu điểm chính của hàm băm là tốc độ truy cập nhanh, với thời gian trung bình O(1) cho mỗi phần tử, giúp việc tra cứu diễn ra rất nhanh chóng, đặc biệt hiệu quả khi số lượng mục nhập tối đa có thể được dự đoán trước.

Hàm băm là một công cụ quan trọng trong bảo mật thông tin, giúp chuyển đổi dữ liệu thành giá trị đại diện duy nhất và cố định Với tính nhất quán, hiệu quả tính toán và khả năng phát hiện thay đổi nhỏ, hàm băm đóng vai trò thiết yếu trong nhiều ứng dụng bảo mật như xác thực dữ liệu, lưu trữ mật khẩu và chữ ký số.

- Tính bất định – Deterministic: Nghĩa là cùng một thông điệp đầu vào luôn tạo ra cùng một hàm băm.

- Tính nhanh chóng – Quick: Tiêu tốn ít thời gian hơn để tính toán giá trị băm của dữ liệu đầu vào.

- Hiệu ứng lan truyền – Avalanche effect: Chỉ một sự thay đổi nhỏ của thông điệp cũng có thể làm thay đổi kết quả hash.

Ví dụ, chỉ cần thay đổi một ký tự nhỏ trong đầu vào có thể tạo ra giá trị hash hoàn toàn khác biệt, điều này minh chứng cho tính chất đặc trưng của các thuật toán băm.

C7B1EFD2E7B6D0A48977C854257E7D9F7C DBE203B1064F4DCE64C0D71E4 đây là bài kiểm tra 25E7977845697A2A858632DAA47FA107F7E7

Hàm một chiều (One-way function) là một khái niệm quan trọng trong mật mã học, cho phép tạo ra kết quả mà không thể suy ra dữ liệu gốc Ví dụ, từ một dấu vân tay, người ta không thể xác định được danh tính của cá nhân đó Điều này đảm bảo tính bảo mật và riêng tư cho thông tin nhạy cảm.

- Ngăn chặn đụng độ – Collision resistant: Không khả thi (không thể) để tìm được giá trị 2 chuỗi đầu vào có cùng kết quả giá trị băm.

- Độ dài cố định: Kết quả của hàm băm luôn có độ dài cố định, không phụ thuộc vào độ dài của đầu vào.

Giá trị băm không thể đảo ngược, có nghĩa là việc phục hồi dữ liệu gốc từ giá trị băm là rất khó khăn Điều này cho thấy rằng, nếu bạn biết giá trị băm, việc xác định dữ liệu ban đầu gần như không thể thực hiện.

Chữ kí số

Chữ ký số là một loại chữ ký điện tử sử dụng thuật toán mã hóa để xác thực tính chính xác và toàn vẹn của tài liệu hoặc thông điệp số Nó đảm bảo rằng thông điệp hoặc tài liệu không bị thay đổi sau khi được ký và cho phép xác minh nguồn gốc của chúng.

Chữ ký số được tạo ra dựa trên cặp khóa công khai và khóa riêng, trong đó người ký sử dụng khóa riêng để tạo chữ ký, còn người nhận dùng khóa công khai để xác minh Quy trình này đảm bảo rằng chỉ người sở hữu khóa riêng mới có thể tạo chữ ký số hợp lệ, trong khi bất kỳ ai có khóa công khai đều có khả năng xác minh chữ ký đó.

Các ứng dụng phổ biến của chữ ký số bao gồm:

- Email bảo mật: Đảm bảo rằng email được gửi từ nguồn đáng tin cậy và nội dung không bị thay đổi.

- Giao dịch trực tuyến: Xác thực người dùng và bảo vệ tính toàn vẹn của các giao dịch.

- Tài liệu điện tử: Ký và xác minh tài liệu số, đảm bảo tính hợp pháp và bảo mật của tài liệu.

Chữ ký số đóng vai trò thiết yếu trong việc bảo vệ dữ liệu và thông tin cá nhân trong các hệ thống an ninh thông tin hiện đại, đảm bảo an toàn trong môi trường số.

Chữ ký số sở hữu nhiều tính chất quan trọng, góp phần đảm bảo an ninh và tính toàn vẹn cho thông tin trong các giao dịch điện tử Những đặc điểm chính của chữ ký số bao gồm khả năng xác thực danh tính, bảo mật thông tin và ngăn chặn việc thay đổi nội dung, giúp nâng cao độ tin cậy trong các giao dịch trực tuyến.

Chữ ký số đóng vai trò quan trọng trong việc xác thực nguồn gốc của thông điệp hoặc tài liệu số, đảm bảo rằng nó đến từ người ký, tức là người sở hữu khóa riêng tương ứng Nhờ đó, người nhận có thể yên tâm rằng thông tin nhận được là chính xác và thực sự do người gửi dự định.

Chữ ký số đảm bảo toàn vẹn dữ liệu bằng cách xác nhận rằng thông tin không bị thay đổi trong quá trình truyền tải Nếu dữ liệu bị thay đổi sau khi được ký, chữ ký số sẽ không còn hợp lệ, từ đó cảnh báo người nhận về việc thông tin đã bị xâm phạm.

Không thể phủ nhận (Non-repudiation) đảm bảo rằng người ký không thể chối bỏ việc đã ký một thông điệp hoặc tài liệu Điều này ngăn chặn khả năng người ký phủ nhận việc gửi hoặc ký thông điệp, đồng thời đảm bảo trách nhiệm của họ đối với thông tin đã được ký kết.

Bảo mật thông tin là một yếu tố quan trọng trong việc sử dụng chữ ký số, mặc dù không phải là chức năng chính của nó Chữ ký số thường được kết hợp với mã hóa để đảm bảo rằng chỉ những người có quyền truy cập mới có thể đọc được nội dung của thông điệp hoặc tài liệu.

Khả năng kiểm chứng công khai của chữ ký số cho phép bất kỳ ai sở hữu khóa công khai của người ký xác minh tính xác thực Điều này tạo ra một quy trình xác thực minh bạch và đáng tin cậy, nâng cao độ tin cậy của giao dịch.

Chữ ký số có vai trò quan trọng trong việc bảo đảm an ninh và tính toàn vẹn của thông tin, được ứng dụng rộng rãi trong các lĩnh vực như email bảo mật, giao dịch tài chính và ký kết hợp đồng điện tử.

1.4.3 Một số thuật toán chữ kí số

Mỗi bên tham gia trong quá trình ký điện tử sử dụng một cặp khóa công khai và khóa riêng Người ký sẽ dùng khóa riêng của mình để tạo ra chữ ký, và bất kỳ ai sở hữu khóa công khai của người ký đều có khả năng xác minh tính hợp lệ của chữ ký đó.

- Ứng dụng: Được sử dụng rộng rãi trong các ứng dụng bảo mật như SSL/TLS, email bảo mật, và chữ ký số trong các tài liệu.

- Mô tả: DSA là một tiêu chuẩn chữ ký số được đề xuất bởi Viện Tiêu chuẩn và Công nghệ Quốc gia Hoa Kỳ (NIST) vào năm 1991.

Cách thức hoạt động của DSA bao gồm việc sử dụng các hàm băm và thuật toán tính toán modulo để tạo và xác minh chữ ký Trong quá trình này, khóa riêng được sử dụng để tạo chữ ký, trong khi khóa công khai được dùng để xác minh tính hợp lệ của chữ ký đó.

- Ứng dụng: Thường được sử dụng trong các hệ thống bảo mật chính phủ và các ứng dụng yêu cầu xác thực mạnh mẽ.

ECDSA (Elliptic Curve Digital Signature Algorithm):

ECDSA, một biến thể của DSA, sử dụng các đường cong elliptic để nâng cao mức độ bảo mật So với DSA truyền thống, ECDSA được đánh giá là an toàn và hiệu quả hơn.

- Cách thức hoạt động: Sử dụng khóa công khai và khóa riêng dựa trên các đường cong elliptic để tạo và xác minh chữ ký.

ElGamal được ứng dụng rộng rãi trong các lĩnh vực yêu cầu bảo mật cao, bao gồm ví tiền điện tử, xác thực mạnh mẽ trên thiết bị di động và hệ thống IoT.

ElGamal là một hệ thống mã hóa khóa công khai, được phát triển bởi Taher Elgamal vào năm 1985 Hệ thống này dựa trên độ khó của bài toán logarit rời rạc, mang lại mức độ bảo mật cao trong việc truyền tải thông tin.

Mật mã hỗn loạn

Mật mã hỗn loạn (Chaos encryption) là một phương pháp mã hóa dữ liệu dựa trên lý thuyết hỗn loạn, nổi bật với khả năng tạo ra các chuỗi giả ngẫu nhiên có tính bảo mật cao Các hệ thống mã hóa sử dụng lý thuyết hỗn loạn đã được nghiên cứu sâu rộng, nhấn mạnh hiệu quả và độ an toàn trong việc bảo vệ thông tin.

1.5.1 Hệ thống động và lí thuyết hỗn loạn

Hệ thống động là những hệ thống có trạng thái biến đổi theo thời gian dựa trên các quy tắc nhất định Chúng có thể được mô tả thông qua các phương trình vi phân hoặc sai phân, tùy thuộc vào cách thức mà thời gian được xem xét, có thể là liên tục hoặc rời rạc.

Hệ thống động liên tục được mô tả bằng các phương trình vi phân, trong đó dx/dt = f(x, t) thể hiện sự thay đổi của trạng thái x theo thời gian t, với f là hàm quy định quy tắc biến đổi của hệ thống.

Hệ thống rời rạc được mô tả thông qua các phương trình sai phân, ví dụ như x n +1 = f ( x n , n ) Trong đó, xn đại diện cho trạng thái của hệ thống tại bước thời gian thứ n, và f là hàm thể hiện quy tắc thay đổi của hệ thống.

Lý thuyết hỗn loạn nghiên cứu hành vi của các hệ thống động phi tuyến tính, trong đó các trạng thái của hệ thống có thể thay đổi một cách không thể dự đoán sau một thời gian dài, mặc dù vẫn tuân theo các quy tắc xác định.

Sự nhạy cảm với điều kiện ban đầu cho thấy rằng một thay đổi nhỏ trong các yếu tố ban đầu có thể gây ra những biến động lớn trong hành vi của hệ thống theo thời gian Hiện tượng này thường được biết đến với tên gọi “Hiệu ứng cánh bướm”.

Hệ thống có hành vi phức tạp và khó dự đoán trong dài hạn, nhưng lại bị giới hạn trong một không gian trạng thái cụ thể, được gọi là hấp dẫn kỳ lạ Điều này cho thấy rằng mặc dù hành vi có vẻ bất định, nó vẫn tuân theo những quy luật nhất định trong các điều kiện nhất định.

Các hệ thống hỗn loạn thường thể hiện các mẫu lặp lại ở nhiều tỷ lệ khác nhau, điều này liên quan chặt chẽ đến tính chất fractal.

1.5.2 Một số ánh xạ hỗn loạn Ánh xạ hỗn loạn là các hàm số hoặc phương trình được sử dụng trong lý thuyết hỗn loạn để mô tả sự phát triển theo thời gian của hệ thống động không tuyến tính:

Logistic Map: là một ánh xạ phi tuyến đơn giản nhưng mạnh mẽ để nghiên cứu sự hỗn loạn trong hệ thống động học.

+ xn là trạng thái của hệ thống tại thời điểm n, xn nằm trong khoảng [0, 1]. + r là tham số điều khiển

+ Khi r tăng từ 0 đến 4, hệ thống chuyển từ trạng thái ổn định đến trạng thái hỗn loạn:

0 < r < 1: hệ thống hội tụ về 0.

1 < r < 3: hệ thống hội tụ về một điểm cố định.

3 < r < 3.57: hệ thống biểu hiện sự lặp lại định kỳ. r > 3.57: hệ thống trở nên hỗn loạn.

Tent Map: một ánh xạ tuyến tính từng đoạn, được sử dụng để nghiên cứu sự hỗn loạn.

+ xn là trạng thái của hệ thống tại thời điểm n.

+ à là tham số điều khiển.

+ khi à = 2, hệ thống trở nờn hỗn loạn.

Sine Map: sử dụng hàm sin để tạo ra chuỗi hỗn loạn.

+ xn là trạng thái của hệ thống tại thời điểm n.

+ r là tham số điều khiển.

+ Hệ thống trở nên hỗn loạn khi r gần giá trị tối đa r = 1.

Henon Map là một ánh xạ phi tuyến trong không gian hai chiều, được sử dụng phổ biến để nghiên cứu các hệ thống hỗn loạn Nó giúp phân tích và hiểu rõ hơn về các hiện tượng phức tạp trong không gian hai chiều.

+ xn và yn là trạng thái của hệ thống tại thời điểm n.

+ a và b là các tham số điều khiển.

+ Hệ thống biểu hiện hành vi hỗn loạn với a = 1.4 và b = 0.3.

Arnold’s Cat Map: là một ánh xạ tuyến tính trong không gian hai chiều, được biết đến với tính chất hỗn loạn.

+ xn và yn là trạng thái của hệ thống tại thời điểm n.

+ Hệ thống thể hiện tính hỗn loạn và thường được sử dụng để minh họa hiệu ứng hỗn loạn trong không gian hai chiều.

Lorenz System: là một hệ phương trình vi phân ba chiều nổi tiếng trong lý thuyết hỗn loạn.

{ dy dt dx dy dz dt = =σ = x ( xy− p ( − y − z β z )− x ) y

+ x, y, z là các biến trạng thái của hệ thống tại thời điểm t.

+ σ, ρ, β là các tham số điều khiển.

+ Hệ Lorenz thể hiện hành vi hỗn loạn với các giá trị điển hình như σ = 10, ρ = 28 và β = 8/3.

Chua’s Circuit: là một mạch điện tử nổi tiếng với hành vi hỗn loạn, có thể được mô tả bằng các phương trình vi phân.

{ dx dt = dy dt α dz dt = ( y =− x− − x β y y − + h z ( x ) )

+ x, y, z là các biến trạng thái của hệ thống tại thời điểm t.

+ α, β là các tham số điều khiển.

+ h(x) là hàm phi tuyến mô tả đặc tính của diode trong mạch Chua.

+ Hệ Chua có thể biểu hiện hành vi hỗn loạn với các tham số điều khiển thích hợp.

Các ánh xạ hỗn loạn có khả năng tạo ra chuỗi số giả ngẫu nhiên phức tạp và khó đoán, trở thành công cụ hữu ích trong mã hóa dữ liệu và bảo mật Mỗi ánh xạ mang những đặc điểm riêng, phù hợp với các mục đích nghiên cứu khác nhau trong lý thuyết hỗn loạn.

Kết luận chương 1

Chương 1 đã cung cấp một cái nhìn tổng quan về an toàn thông tin, mật mã và mật mã hỗn loạn, từ các khái niệm cơ bản đến các ứng dụng cụ thể Những kiến thức và hiểu biết từ chương này là nền tảng quan trọng cho các chương tiếp theo trình bày về kỹ thuật và phương pháp cụ thể và chi tiết hơn.

Chương này sẽ trình bày về mã hóa ảnh và các phương pháp cụ thể liên quan, áp dụng các nền tảng lý thuyết đã được giới thiệu Chúng ta sẽ khám phá cách mật mã hỗn loạn có thể được sử dụng hiệu quả để nâng cao bảo mật thông tin.

Mã hóa ảnh

Giới thiệu

Mã hóa ảnh là kỹ thuật quan trọng trong bảo mật thông tin, đặc biệt trong bối cảnh nhu cầu bảo vệ dữ liệu ngày càng cao trong thời đại kỹ thuật số Sự gia tăng các cuộc tấn công mạng làm cho việc bảo vệ hình ảnh trở nên thiết yếu, không chỉ ngăn chặn truy cập trái phép mà còn đảm bảo tính bảo mật và khả dụng của thông tin Quá trình mã hóa chuyển đổi hình ảnh từ dạng dễ hiểu sang dạng khó hiểu thông qua các thuật toán và khóa mã hóa, chỉ những người sở hữu khóa giải mã mới có thể truy cập nội dung gốc.

Hiện nay, có nhiều phương pháp mã hóa ảnh nhằm làm cho dữ liệu hình ảnh trở nên phức tạp và khó dự đoán Mục tiêu chính là đảm bảo rằng hình ảnh mã hóa không thể bị giải mã mà không có khóa chính xác Quá trình mã hóa cần đảm bảo tính ngẫu nhiên cao, giảm sự tương quan giữa các pixel trong ảnh mã hóa so với ảnh gốc, từ đó bảo vệ thông tin hình ảnh khỏi các tấn công phân tích.

Một số tiêu chí đánh giá chất lượng mã hóa ảnh

Các tiêu chí đánh giá chất lượng mã hóa ảnh giúp xác định hiệu quả của phương pháp mã hóa Trong mã hóa ảnh thông thường, chúng ta áp dụng một số tiêu chí đánh giá cụ thể để đo lường chất lượng.

Histogram là công cụ quan trọng trong phân tích đặc trưng hình ảnh, thể hiện tần suất xuất hiện của các mức xám hoặc màu Mỗi cột trong histogram đại diện cho số lượng pixel với cùng mức xám, giúp hiểu rõ hơn về phân bố màu sắc trong hình ảnh Việc sử dụng histogram trong mã hóa ảnh đóng vai trò quyết định trong việc tối ưu hóa chất lượng hình ảnh.

Histogram là công cụ quan trọng để đánh giá sự phân bố mức xám trong hình ảnh Một hình ảnh có histogram phân bố đều các mức xám thường cho thấy độ tương phản tốt và chi tiết sắc nét, giúp nâng cao chất lượng hình ảnh.

Phát hiện sự biến đổi trong hình ảnh là một yếu tố quan trọng trong quá trình mã hóa Việc phân tích histogram của hình ảnh gốc và hình ảnh đã mã hóa giúp nhận diện các thay đổi và đánh giá hiệu quả của phương pháp mã hóa Một hình ảnh được mã hóa tốt thường có histogram phân bố đều, không còn chứa các đặc điểm rõ ràng từ hình ảnh gốc.

Đo lường bảo mật trong các hệ thống mã hóa có thể được thực hiện thông qua histogram Histogram của hình ảnh đã được mã hóa cần đảm bảo không tiết lộ thông tin nào về hình ảnh gốc, nhằm mục tiêu làm cho việc giải mã mà không có khóa trở nên vô cùng khó khăn.

Quá trình phân tích histogram:

- Thu thập dữ liệu: Đầu tiên, chúng ta cần thu thập dữ liệu histogram của cả hình ảnh gốc và hình ảnh đã mã hóa.

So sánh và phân tích histogram là bước quan trọng để đánh giá sự khác biệt và hiệu quả của quá trình mã hóa hình ảnh Một phương pháp mã hóa hiệu quả sẽ tạo ra histogram của hình ảnh mã hóa có sự khác biệt rõ rệt so với histogram của hình ảnh gốc, từ đó cho thấy mức độ cải thiện trong chất lượng hình ảnh.

Đánh giá sự khác biệt giữa các histogram có thể được thực hiện bằng cách sử dụng các chỉ số như mức độ tương quan Nếu giá trị tương quan thấp, điều này cho thấy hình ảnh mã hóa đã trải qua sự biến đổi đáng kể so với hình ảnh gốc.

Minh họa quá trình phân tích histogram:

Hình 2.2 trình bày quá trình phân tích histogram của ảnh, bao gồm ảnh gốc ở phần (a) và các biểu đồ histogram cho từng kênh màu: đỏ, xanh lá cây và xanh dương ở các phần (b-d) Ngoài ra, hình ảnh đã được mã hóa được thể hiện ở phần (e), cùng với các biểu đồ histogram tương ứng cho các kênh màu của ảnh đã mã hóa ở các phần (f-h).

Ví dụ về phân tích histogram trong mã hóa ảnh:

Khi áp dụng phương pháp mã hóa cho một hình ảnh gốc có histogram phân bố đều các mức xám, chúng ta thu được hình ảnh mã hóa với histogram khác biệt rõ rệt, có thể phân bố đều hơn hoặc bị xáo trộn Điều này chứng minh rằng phương pháp mã hóa đã thành công trong việc làm mờ các đặc trưng của hình ảnh gốc, đảm bảo rằng hình ảnh mã hóa không thể được giải mã dễ dàng mà không có khóa thích hợp.

Phân tích histogram là một phương pháp quan trọng trong việc đánh giá chất lượng mã hóa ảnh Bằng cách so sánh histogram của hình ảnh gốc và hình ảnh đã mã hóa, chúng ta có thể xác định hiệu quả của quá trình mã hóa cũng như mức độ bảo mật mà phương pháp này mang lại.

2.2.2 So sánh hệ số tương quan

Hệ số tương quan là chỉ số thống kê quan trọng, đo lường mối liên hệ giữa hai biến số Trong mã hóa ảnh, nó được sử dụng để đánh giá mức độ tương quan giữa các pixel lân cận trong hình ảnh gốc và hình ảnh đã được mã hóa, từ đó giúp cải thiện chất lượng hình ảnh sau khi mã hóa.

Mục tiêu chính của mã hóa ảnh là giảm sự tương quan giữa các pixel trong hình ảnh mã hóa nhằm nâng cao bảo mật Nếu các pixel trong ảnh mã hóa vẫn giữ mức độ tương quan cao giống như trong ảnh gốc, điều này cho thấy phương pháp mã hóa có thể không đủ mạnh để bảo vệ thông tin.

Để đánh giá hiệu quả của phương pháp mã hóa hình ảnh, chúng ta có thể tính toán hệ số tương quan giữa các cặp pixel lân cận trong hình ảnh gốc và hình ảnh đã mã hóa Hệ số tương quan thấp cho thấy sự thay đổi đáng kể của hình ảnh mã hóa so với ảnh gốc, từ đó khẳng định hiệu quả của phương pháp mã hóa được áp dụng.

Phương pháp tính toán hệ số tương quan:

- Chọn các cặp pixel: Lựa chọn các cặp pixel lân cận để tính toán, có thể là các cặp pixel theo chiều ngang, dọc, hoặc chéo.

- Tính toán hệ số tương quan: Sử dụng công thức tính hệ số tương quan Pearson, thường được biểu diễn như sau: r = n ( Σxy )−( Σx )( Σy )

√ [ nΣ x 2 −( Σx ) 2 ] [ nΣ y 2 −( Σy ) 2 ] n là số cặp pixel x và y là các giá trị pixel từ ảnh gốc và ảnh đã mã hóa tương ứng

Sau khi thực hiện tính toán, chúng tôi đã so sánh hệ số tương quan giữa ảnh gốc và ảnh đã được mã hóa Kết quả cho thấy một hệ số tương quan gần bằng 0, điều này chỉ ra mức độ ngẫu nhiên cao và đảm bảo tính bảo mật hiệu quả.

Minh họa quá trình tính toán hệ số tương quan:

Hình Mã hóa ảnh.5: So sánh hệ số tương quan

Hình 2.3 cho thấy rằng các pixel lân cận trong hình ảnh tự nhiên có mối tương quan cao, như thể hiện trong các đồ thị (j), (k), (l) Sau khi áp dụng thuật toán mã hóa, các pixel trở nên độc lập và không còn tương quan, dẫn đến việc hình ảnh trở nên không thể nhận dạng Các đồ thị phân tán (n), (o), (p) chứng minh rằng thuật toán mã hóa đã phá vỡ mọi mối tương quan giữa các pixel, đảm bảo tính bảo mật cho hình ảnh.

Một số phương pháp mã hóa ảnh

Mã hóa ảnh đóng vai trò quan trọng trong bảo mật thông tin, bảo vệ dữ liệu hình ảnh khỏi truy cập trái phép và các mối đe dọa Với sự phát triển công nghệ và gia tăng tấn công mạng, việc tìm kiếm các phương pháp mã hóa an toàn, hiệu quả và có tính ứng dụng cao ngày càng trở nên cần thiết Bài viết này sẽ giới thiệu một số phương pháp mã hóa ảnh tiêu biểu.

2.3.1 Mã hóa dựa trên biến đổi (Transform Domain Encryption)

Phương pháp mã hóa dựa trên biến đổi sử dụng các phép biến đổi toán học để chuyển đổi ảnh từ miền không gian sang miền tần số Sau khi thực hiện chuyển đổi, các hệ số trong miền tần số sẽ được mã hóa, xử lý hoặc thay đổi nhằm đảm bảo an toàn cho dữ liệu Một số phép biến đổi phổ biến được áp dụng trong quá trình này.

- DCT (Discrete Cosine Transform): Chuyển đổi ảnh thành các hệ số biểu diễn năng lượng tần số Thường được sử dụng trong các thuật toán nén như

DWT (Biến đổi Wavelet rời rạc) là phương pháp phân tách ảnh thành các thành phần tần số cao, thể hiện chi tiết, và tần số thấp, đại diện cho nền Kỹ thuật này rất phù hợp cho việc xử lý các bức ảnh có chi tiết phức tạp, giúp cải thiện chất lượng hình ảnh và tối ưu hóa các ứng dụng trong phân tích hình ảnh.

- Fourier Transform: Biểu diễn ảnh dưới dạng các sóng tần số và biên độ. Thích hợp cho việc phân tích và mã hóa ảnh ở mức độ khái quát.

- Ảnh được chuyển đổi sang miền tần số bằng một trong các phép biến đổi trên

Các hệ số miền tần số được mã hóa thông qua việc hoán vị vị trí, thay thế giá trị của các hệ số bằng khóa mã hóa, và sau đó xáo trộn các hệ số dựa trên thuật toán hỗn loạn hoặc khóa ngẫu nhiên.

- Chuyển ngược lại ảnh về miền không gian để thu được ảnh mã hóa. Ưu điểm:

Ảnh mã hóa có khả năng bảo mật cao, vì chúng khác biệt so với ảnh gốc và khó bị giải mã qua phân tích trực tiếp Việc sử dụng các kỹ thuật mã hóa trong miền tần số giúp che giấu thông tin một cách hiệu quả.

Ảnh mã hóa có khả năng kháng lại các cuộc tấn công hiệu quả nhờ vào việc khó bị phân tích bằng các phương pháp thống kê Hơn nữa, việc bổ sung các lớp bảo mật khác như hoán vị hoặc hỗn loạn sẽ càng tăng cường tính an toàn cho dữ liệu.

Việc mã hóa chỉ các hệ số quan trọng của ảnh lớn giúp tiết kiệm tài nguyên và nâng cao hiệu quả, đặc biệt trong các ứng dụng cần nén dữ liệu, chẳng hạn như truyền ảnh qua mạng.

- Khả năng điểu chỉnh chất lượng: Có thể điều chỉnh độ chi tiết bằng cách chọn các hệ số tần số cao hoặc thấp để mã hóa.

- Đòi hỏi tài nguyên tính toán lớn: Các phép biến đổi, đặc biệt với ảnh kích thước lớn, yêu cầu nhiều tài nguyên xử lý và bộ nhớ.

Triển khai các kỹ thuật này gặp khó khăn do yêu cầu kiến thức chuyên sâu về toán học và các phép biến đổi Hơn nữa, sự phức tạp gia tăng khi kết hợp với các phương pháp mã hóa khác.

Việc lựa chọn hệ số mã hóa là rất quan trọng, vì nếu không mã hóa đúng các hệ số này, chất lượng ảnh sau khi mã hóa sẽ bị ảnh hưởng Điều này có thể dẫn đến việc chất lượng phục hồi ảnh gốc sau khi giải mã không đạt yêu cầu hoàn hảo.

- Không tối ưu với dữ liệu động: Khó áp dụng trong các ứng dụng thời gian thực do tính toán phức tạp.

- Nén và mã hóa ảnh trong truyền thông: JPEG kết hợp mã hóa dựa trên DCT để nén và bảo vệ dữ liệu ảnh.

DWT được sử dụng để mã hóa các hình ảnh y tế quan trọng như quét CT và hình ảnh vệ tinh, giúp bảo vệ dữ liệu trước khi truyền qua mạng.

- Bảo vệ bản quyền: Biến đổi Fourier được sử dụng để nhúng watermark (thủy vân) vào ảnh và bảo vệ chống sao chép trái phép.

- Bảo mật truyền thông video: Mã hóa các khung hình dựa trên DCT hoặc DWT để giảm kích thước và tăng bảo mật trong truyền video.

2.3.2 Mã hóa dựa trên hoán vị (Permutation-Based Encryption)

Mã hóa dựa trên hoán vị là phương pháp bảo mật hình ảnh bằng cách thay đổi vị trí các pixel hoặc bit trong ảnh gốc Phương pháp này xáo trộn thông tin theo quy tắc hoặc khóa nhất định mà không làm thay đổi giá trị của nó, đảm bảo rằng chỉ những người sở hữu khóa mới có thể khôi phục lại ảnh gốc.

Quy tắc hoán vị trong xử lý ảnh dựa trên ba phương pháp chính: Thuật toán xáo trộn ngẫu nhiên (Random Permutation) sử dụng khóa hoặc số giả ngẫu nhiên để hoán đổi các pixel; Ma trận hoán vị (Permutation Matrix) xác định cách sắp xếp lại các hàng và cột của ảnh thông qua ma trận; và phương pháp dựa trên hỗn loạn (Chaos-Based Permutation) áp dụng các bản đồ hỗn loạn như logistic map và tent map để tạo ra chuỗi hoán vị phức tạp và không lặp lại.

- Tạo khóa hoặc chuỗi hoán vị (có thể là ngẫu nhiên hoặc dựa trên thuật toán).

Áp dụng hoán vị trong xử lý ảnh giúp xáo trộn các pixel hoặc bit, bao gồm hoán vị không gian (thay đổi vị trí của các pixel) và hoán vị bit (thay đổi thứ tự các bit trong dữ liệu ảnh).

- Kết quả là một ảnh mã hóa không giống ảnh gốc, nhưng vẫn giữ nguyên tổng số pixel và giá trị pixel. Ưu điểm:

Hoán vị là phương pháp đơn giản và hiệu quả, chỉ cần thay đổi vị trí mà không cần thực hiện các phép toán phức tạp Phương pháp này có thể được thực hiện nhanh chóng ngay cả trên những bức ảnh có kích thước lớn.

Khả năng bảo mật cao được đảm bảo nhờ việc sử dụng khóa phức tạp, như khóa dài hoặc chuỗi hỗn loạn, để tạo ra các hoán vị Điều này làm cho ảnh mã hóa trở nên rất khó để giải mã, tăng cường tính an toàn cho dữ liệu.

- Bảo toàn thông tin: Do không thay đổi giá trị của pixel hoặc bit, ảnh có thể phục hồi hoàn toàn về trạng thái ban đầu khi giải mã.

Kết luận chương 2

Chương này khám phá mã hóa ảnh và các tiêu chí đánh giá chất lượng hình ảnh, nhấn mạnh rằng các phương pháp mã hóa cần đáp ứng yêu cầu bảo mật cao Điều này bao gồm việc giảm sự tương quan giữa các pixel, tạo ra mức độ ngẫu nhiên cao trong ảnh mã hóa và đảm bảo sự thay đổi đáng kể so với ảnh gốc Các tiêu chí như phân tích histogram, hệ số tương quan, entropy và giá trị sai lệch lớn nhất là công cụ quan trọng để đánh giá hiệu quả và độ an toàn của các phương pháp mã hóa ảnh, nhằm bảo vệ thông tin trong ảnh một cách tối ưu và ngăn chặn truy cập trái phép.

Trong Chương 3, chúng ta sẽ khám phá các kỹ thuật mã hóa ảnh, xây dựng và thử nghiệm một phương pháp cụ thể để đánh giá hiệu quả và độ tin cậy trong việc bảo vệ thông tin hình ảnh Kết quả nghiên cứu từ chương này sẽ làm nền tảng cho việc phát triển một hệ thống mã hóa có tính ứng dụng cao trong thực tế.

Mã hóa ảnh sử dụng kĩ thuật cắt mặt phẳng bit, hỗn loạn động và hàm băm

Mô tả phương pháp

Quá trình mã hóa là rất quan trọng trong việc bảo vệ thông tin hình ảnh bằng cách chuyển đổi dữ liệu từ dạng dễ hiểu sang dạng khó hiểu, chỉ những người sở hữu khóa giải mã hợp lệ mới có thể truy cập thông tin gốc Bài viết này sẽ mô tả chi tiết quy trình mã hóa ảnh, áp dụng các kỹ thuật như cắt mặt phẳng bit, hỗn loạn động và hàm băm để nâng cao tính bảo mật Hình 3.1 cung cấp một sơ đồ khối minh họa cho quá trình mã hóa.

Hình mã hóa ảnh áp dụng kỹ thuật cắt mặt phẳng bit, hỗn loạn động và hàm băm Quá trình mã hóa yêu cầu hai đầu vào: khóa k1 sử dụng hàm băm SHA-512 kết hợp với thuật toán Arnold transform, và khóa k2 sử dụng logistic map Mô hình mã hóa này được thiết kế để đảm bảo tính bảo mật và độ phức tạp cao trong việc xử lý hình ảnh.

Bước 1: Nhập giá trị đầu vào là ảnh gốc (N x N) và khóa người dùng (k1) từ đầu vào.

Bước 2: Ảnh gốc nhập vào sẽ được tách ra thành 8 mặt phẳng bit (bit-plane), mỗi mặt phẳng chứa các giá trị nhị phân tương ứng của từng pixel.

Bước 3: Sử dụng hàm SHA-512 để băm khóa k1, tạo ra một chuỗi ký tự Sau đó, chia chuỗi này thành 8 phần, mỗi phần gồm 8 ký tự, và chuyển đổi các phần thành số ASCII để tạo ra khóa 1.

Bước 4: Tính toán các tham số a, b và số lần lặp cho biến đổi Arnold bằng cách sử dụng tham số ASCII Sau đó, áp dụng biến đổi Arnold để xáo trộn từ mặt phẳng bit, và cuối cùng kết hợp tất cả các mặt phẳng bit đã xáo trộn để tái tạo ảnh trung gian (c1).

Bước 5: Sử dụng độ lệch chuẩn (σ) của giá trị ASCII từ chuỗi băm để tạo tham số cho logistic map Logistic map sẽ sinh ra k2 làm khóa khuếch tán, áp dụng phép XOR giữa ảnh c1 và k2 để tạo ra ảnh mã hóa cuối cùng.

Bước 6: Xuất ảnh mã hóa sau khi hoàn thành quá trình khuếch tán.

Quá trình giải mã là bước quan trọng trong việc khôi phục lại thông tin ảnh gốc từ ảnh đã được mã hóa, đảm bảo rằng chỉ những người có khóa giải mã hợp lệ mới có thể truy cập thông tin ban đầu Quá trình này cần đảm bảo tính chính xác và khôi phục hoàn toàn ảnh gốc mà không gây mất mát dữ liệu hoặc giảm chất lượng Trong phần này, chúng ta sẽ mô tả chi tiết quy trình giải mã ảnh đã được mã hóa bằng cách kết hợp các kỹ thuật cắt mặt phẳng bit, hỗn loạn động, và hàm băm Sơ đồ khối của quá trình giải mã được thể hiện rõ trong hình 3.2:

Hình mã hóa ảnh sử dụng kĩ thuật cắt mặt phẳng bit, hỗn loạn động và hàm băm.7: Quá trình giải mã Bước 1: Sau quá trình mã hóa, nhận ảnh mã hóa và khóa người dùng (k1) ta sẽ sử dụng k1 và độ lệch chuẩn (σ) của giá trị ASCII từ chuỗi băm để tái tạo tham số Logistic Map Logistic map sinh ra k2, áp dụng phép XOR giữa ảnh mã hóa và k2 để khôi phục ảnh xáo trộn (c1).

Bước 2: Tách c1 thành 8 mặt phẳng bit, sau đó băm k1 bằng SHA-512 và tính toán tham số a, b, số lần lặp cho biến đổi Arnold nghịch đảo.

Bước 3: Áp dụng biến đổi Arnold nghịch đảo trên từng mặt phẳng bit để hoàn nguyên dữ liệu.

Bước 4: Kết hợp các mặt phẳng bit đã xáo trộn để tái tạo ảnh gốc.

Bước 5: Xuất ảnh sau khi đã giải mã.

Như đã giới thiệu ở phần trên, quy trình mã hóa và giải mã cho ta thấy được sự cao nhờ khả năng xáo trộn và khuếch tán mạng mẽ Trong phạm vi mục Error: Reference source not found này ta sẽ xem quy trình hoạt động để từ đó có được cái nhìn bao quát nhất về kỹ thuật mã hóa ảnh này.

3.2.1 Mục tiêu của bài toán

Mục tiêu của bài toán là xây dựng và kiểm chứng một phương pháp mã hóa ảnh, có khả năng:

+ Bảo vệ tính bảo mật: Phương pháp mã hóa phải đảm bảo rằng thông tin trong ảnh không thể bị truy cập hoặc giải mã trái phép Điều này đòi hỏi mã hóa phải làm thay đổi đáng kể nội dung của ảnh, khiến việc dự đoán ảnh gốc trở nên khó khăn

Khả năng khôi phục là yếu tố quan trọng trong phương pháp mã hóa, đảm bảo rằng ảnh gốc có thể được phục hồi chính xác từ ảnh đã mã hóa khi sử dụng khóa giải mã phù hợp, nhằm tránh tình trạng mất mát hoặc sai lệch thông tin.

+ Hiệu suất cao: Phương pháp mã hóa cần thực hiện nhanh chóng và hiệu quả, phù hợp với các ứng dụng thời gian thực và không đòi hỏi quá nhiều tài nguyên tính toán

Ngôn ngữ lập trình: Chương trình sẽ được phát triển bằng Python, nhờ vào các lợi thế như dễ học, dễ sử dụng, và có sẵn nhiều thư viện mạnh mẽ hỗ trợ xử lý ảnh, mã hóa Python cũng có cộng đồng phát triển lớn, tài liệu phong phú, và khả năng tích hợp tốt với các công nghệ khác

Các thư viện được sử dụng:

OpenCV là một thư viện mạnh mẽ cho việc đọc, xử lý và hiển thị ảnh, hỗ trợ nhiều định dạng ảnh khác nhau Thư viện này cung cấp các chức năng xử lý ảnh hiệu quả, giúp tối ưu hóa quy trình làm việc với hình ảnh.

+ Tkinter: Thư viện chính để tạo giao diện người dùng.

+ Filedialog: Dùng để mở hộp thoại chọn tệp.

+ Pillow: Thư viện xử lý ảnh.

+ NumPy: Hỗ trợ xử lý dữ liệu số và tạo các mảng số, cần thiết cho các tính toán liên quan đến mặt phẳng bit và hỗn loạn động.

+ Matplotlib: Được sử dụng để vẽ và hiển thị đồ thị, ví dụ như histogram của ảnh để so sánh trước và sau khi mã hóa.

+ Hashlib: Thư viện chuẩn của Python để tạo các hàm băm như SHA-512.

Chương trình được thiết kế theo mô hình MVC (Model-View-Controller) nhằm tách biệt giao diện người dùng, logic xử lý và luồng điều khiển Ứng dụng này thực hiện mã hóa và giải mã ảnh bằng cách sử dụng thuật toán kết hợp giữa bit-plane slicing, hàm logistic map và hàm băm SHA-512 để mã hóa ảnh xám Bên cạnh đó, chương trình còn cung cấp các tính năng đánh giá chất lượng ảnh gốc và ảnh đã được mã hóa.

Mô hình xử lý dữ liệu và xử lý (Model): Chức năng chính là chịu trách nhiệm thực hiện tất cả các thuật toán mã hóa và giải mã, cũng như quản lý dữ liệu hình ảnh và khóa mã hóa Các lớp trong mô hình gồm có ImageProcessor là lớp chính xử lý ảnh, bao gồm các phương thức tách mặt phẳng bit, xáo trộn, khuếch tán và keyManager quản lý việc tạo và xử lý khóa, bao gồm băm và tạo khóa logistic.

Giao diện người dùng (View) có chức năng chính là cung cấp giao diện đồ họa (GUI) cho người dùng để tương tác với chương trình.

Bộ điều khiển (Controller) chức năng chính là điều phối luồng dữ liệu giữa View và Model, xử lý các yêu cầu từ người dùng.

Các nhiệm vụ chính của bộ điều khiển:

Đánh giá kết quả thực nghiệm

Sau khi hoàn tất quá trình mã hóa, ảnh sẽ được lưu vào tệp “image encrypt”, đảm bảo rằng dữ liệu mã hóa không bị mất mát hoặc thay đổi trong quá trình lưu trữ và truyền tải Tệp ảnh mã hóa là phiên bản an toàn, được bảo vệ khỏi truy cập trái phép, giúp duy trì tính bảo mật của thông tin gốc.

Hình mã hóa ảnh được thực hiện thông qua kỹ thuật cắt mặt phẳng bit, sử dụng sự hỗn loạn động và hàm băm Tệp chứa ảnh mã hóa sẽ được đánh giá dựa trên các thông số như Entropy, NCC, giá trị sai lệch lớn nhất, giá trị sai lệch trung bình, độ nhạy của khóa và số khóa, và những thông số này sẽ được thống kê và lưu trữ vào tệp.

“Danh gia” và lưu với tên là “image_comparison_statistics.csv”.

Hình mã hóa ảnh sử dụng kĩ thuật cắt mặt phẳng bit, hỗn loạn động và hàm băm.26: Tệp chứa thông số đánh giá Sau khi thử nghiệm với khoảng 10 ảnh, kết quả thu được cho ta cái nhìn tổng quát về kỹ thuật mã hóa ảnh sử dụng cắt mặt phẳng bit, hỗn loạn động và hàm băm. Hình 3.22 là bảng thống kê các kết quả sau khi mã hóa thu được:

Hình mã hóa ảnh sử dụng kỹ thuật cắt mặt phẳng bit, hỗn loạn động và hàm băm cho thấy hiệu quả cao trong việc tạo ra dữ liệu ngẫu nhiên Bảng thống kê cho thấy giá trị entropy cao, gần mức tối đa (8 đối với ảnh 8-bit), cho thấy ảnh mã hóa rất khó dự đoán, từ đó nâng cao tính an toàn trước các phương thức tấn công phân tích thống kê.

So sánh hệ số tương quan (NCC) xấp xỉ bằng 0 cho thấy sự ngẫu nhiên cao và

Giá trị sai lệch lớn nhất đạt khoảng 254 cho thấy sự biến đổi đáng kể giữa ảnh gốc và ảnh mã hóa, chỉ ra rằng ảnh mã hóa khó bị phục hồi về trạng thái ban đầu Tuy nhiên, nếu giá trị sai lệch này quá cao, có thể gây ra sự suy giảm chất lượng khi giải mã.

Giá trị sai lệch trung bình nằm trong khoảng từ 50 đến 100 đảm bảo đủ sự khác biệt để làm khó khăn cho việc đảo ngược ảnh mã hóa, đồng thời không làm mất đi khả năng giải mã chính xác Nếu giá trị sai lệch trung bình vượt quá 100 thì có thể gây khó khăn hoặc lỗi khi giải mã, nhỏ hơn 30 thì quá trình mã hóa không đủ mạnh khiến mã hóa dễ bị tấn công. Độ nhạy của khóa, 2 dòng cuối của bảng khi để khóa k2 với x0 = 0,5 và r 3.99 (hệ thống trở nên hỗn loạn) thì độ nhạy của khóa là 37,42 còn khóa k2 với x0 0.5 và r = 3,58 (hệ thống trở nên hỗn loạn) thì độ nhạy của khóa là 37,06 cho ta thấy được một thay đổi nhỏ trong giá trị khóa k2 dẫn đến sự thay đổi lớn trong khóa mã hóa và ảnh mã hóa điều này đảm bảo rằng thuật toán mã hóa có tính hỗn loạn cao,khó đoán và khó bị tấn công bằng bruite-force hoặc phân tích khóa Từ đó tính bảo mật của thuật toán tăng lên vì việc tái tạo ảnh gốc đòi hỏi phải biết chính xác giá trị k2 đến độ chính xác cao.

Kết luận chương 3

Chương 3 đã mô tả chi tiết quy trình mã hóa và giải mã ảnh, với sự kết hợp của các kỹ thuật cắt mặt phẳng bit và hỗn loạn động Những kỹ thuật này đã giúp tăng cường tính bảo mật và độ phức tạp của ảnh mã hóa đáp ứng các tiêu chí bảo mật cần thiết, chứng minh tính ứng dụng thực tiễn và khả năng chống lại các hình thức tấn công phổ biến Kỹ thuật này có thể được sử dụng trong các ứng dụng cần bảo mật cao như truyền thông, lưu trữ dữ liệu nhạy cảm và các hệ thống bảo vệ thông tin số.

Ngày đăng: 14/01/2025, 02:21

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1]. RSA Laboratories, PKCS #1 v2.2: RSA Cryptography Standard, October 27, 2012 Sách, tạp chí
Tiêu đề: PKCS #1 v2.2: RSA Cryptography Standard
[2]. RSA Laboratories, PKCS #1 v2.1: RSA Cryptography Standard, June 14, 2002 Sách, tạp chí
Tiêu đề: PKCS #1 v2.1: RSA Cryptography Standard
[3]. RSA Laboratories, PKCS #1 v2.0: RSA Cryptography Standard, October 1, 1998 Sách, tạp chí
Tiêu đề: PKCS #1 v2.0: RSA Cryptography Standard
[4]. RSA Laboratories, RFC 2313, PKCS #1: RSA EncryptionVersion 1.5, March 1998 Sách, tạp chí
Tiêu đề: RFC 2313, PKCS #1: RSA EncryptionVersion 1.5
[6]. M. Bellare, P . Rogaway. Optimal Asymmetric Encryption Padding - How to Encrypt with RSA. In Advances in Cryptology | EUROCRYPT '94, pages 92- 111, Springer-V erlag, 1994 Sách, tạp chí
Tiêu đề: Optimal Asymmetric Encryption Padding - How toEncrypt with RSA
[5]. De Rosal Ignatius Moses Setiadi, Rahmawati Zulfiningrum, Eko Hari Rachmawanto, Pulung Nurtantio Andono - Medical Image Encryption Using Bit Plane Slicing, Dynamic Chaos, and Hash Function Khác
[7]. Lý thuyết thông tin trong các hệ mật /C.E. Shannon; Nguyễn Công Sứ dịch;Trần Quốc Toản hiệu đính – Thư viện Học Viện Kỹ Thuật Mật Mã Khác
w