Với sựphát triển của các ứng dụng công nghệ trong mọi lĩnh vực, từ y tế, tài chính đến giải trí, việc đảm bảo an toàn cho các hình ảnh kỹ thuật số trở nên cấp thiết hơn bao giờ hết.Mã hó
Trang 1BAN CƠ YẾU CHÍNH PHỦ
HỌC VIỆN KỸ THUẬT MẬT MÃ
AN TOÀN CƠ SỞ DỮ LIỆU
TÌM HIỂU MÃ HÓA ẢNH SỬ DỤNG LOGIC MỜ
Ngành: An toàn thông tin
Sinh viên thực hiện:
Lê Đăng Phương
Lớp: AT180638
Người hướng dẫn:
Giảng viên: Trần Nghi Phú
Khoa An toàn thông tin – Học viện Kỹ thuật mật mã
Hà Nội, 2024
Trang 2Mục Lục
LỜI MỞ ĐẦU 4
Phần 1: GIỚI THIỆU VỀ LOGIC MỜ 5
1 Sự ra đời 5
- Động lực Phát Triển 5
- Khái Niệm Cơ Bản 5
2 Ứng dụng logic mờ 5
- Ứng Dụng Ban Đầu 5
- Tác Động và Phát Triển Sau Này 6
Phần 2: TÌM HIỂU VỀ MÃ HÓA ẢNH 7
1 Mã Hóa Ảnh Sử Dụng Biến Đổi Giá Trị 7
2 Mã Hóa Ảnh Sử Dụng Hoán Vị Pixel 7
3 Mã Hóa Ảnh Sử Dụng Hệ Thống Hỗn Loạn 8
Phần 3: MÃ HÓA HÌNH ẢNH SỬ DỤNG LOGIC MỜ 9
1 Giới thiệu 9
2 Cách để mã hóa một hình ảnh sử dụng logic mờ 9
Trang 3- Phân tích PSNR và MSE 15
- Phân tích theo size 16
Phần 4: THỰC NGHIỆM 16
1 Giới thiệu 16
2 Phương Pháp 17
2.1 Hàm làm mờ ảnh (Fuzzy Image Function) 17
2.2 Hàm mã hóa ảnh (Encrypt Image Function) 17
2.3 Hàm giải mã ảnh (Decrypt Image Function) 18
2.4 Hàm khôi phục ảnh (Restore Image Function) 19
3 Các bước thực hiện 20
- Đọc ảnh: Đọc ảnh màu fuzzy.jpg và chuyển đổi sang ảnh grayscale 20
- Tạo ảnh mờ hóa: Sử dụng hàm fuzzyimg để làm mờ ảnh 20
- Mã hóa ảnh: Sử dụng hàm encrypt_image để mã hóa ảnh đã mờ hóa với một khóa ngẫu nhiên 20
- Giải mã ảnh: Sử dụng hàm decrypt_image để giải mã ảnh đã mã hóa 20
4 Kết quả 20
- Ảnh gốc (Original Image): Đây là ảnh ban đầu được đọc từ tệp fuzzy.jpg 20
- Ảnh mờ hóa (Fuzzified Image): Đây là ảnh sau khi được chuyển đổi sang grayscale và làm mờ 21
- Ảnh đã mã hóa (Encrypted Image): Đây là ảnh đã mờ hóa được mã hóa bằng phép XOR với khóa ngẫu nhiên. 21 - Ảnh đã giải mã (Decrypted Image): Đây là ảnh sau khi giải mã từ ảnh đã mã hóa 22
- Ảnh đã khôi phục (Restored Image): Đây là ảnh sau khi khôi phục lại từ ảnh đã mờ hóa 22
Phần 5: ĐƯA RA KẾT LUẬN ĐỊNH HƯỚNG 23
1 Đưa ra kết luận 23
2 Định hướng 24
Trang 4-LỜI MỞ ĐẦU.
Trong thời đại kỹ thuật số hiện nay, sự bùng nổ của công nghệ thông tin và truyền thông đã mang lại nhiều tiện ích vượt bậc, đồng thời cũng đặt ra nhiều thách thức mới về bảo mật và an toàn thông tin Một trong những thách thức lớn nhất là bảo
vệ dữ liệu hình ảnh kỹ thuật số trước các nguy cơ xâm nhập và tấn công mạng Với sựphát triển của các ứng dụng công nghệ trong mọi lĩnh vực, từ y tế, tài chính đến giải trí, việc đảm bảo an toàn cho các hình ảnh kỹ thuật số trở nên cấp thiết hơn bao giờ hết
Mã hóa ảnh là một phương pháp quan trọng để bảo vệ hình ảnh khỏi các hành
vi truy cập trái phép và đảm bảo tính toàn vẹn của dữ liệu Tuy nhiên, các phương pháp mã hóa truyền thống thường gặp phải nhiều hạn chế khi phải đối mặt với các dạng tấn công ngày càng phức tạp Để khắc phục điều này, logic mờ (Fuzzy Logic) đãđược nghiên cứu và ứng dụng như một giải pháp tiềm năng nhằm nâng cao hiệu quả của việc mã hóa ảnh
Logic mờ, được giới thiệu bởi giáo sư Lotfi A Zadeh vào những năm 1960, cung cấp một cách tiếp cận mới để xử lý các thông tin không chính xác hoặc không rõràng Thay vì chỉ sử dụng các giá trị đúng hoặc sai tuyệt đối, logic mờ cho phép sử dụng một dải giá trị liên tục, từ đó mô hình hóa tốt hơn các tình huống thực tế phức tạp Áp dụng logic mờ vào mã hóa ảnh không chỉ giúp cải thiện độ an toàn mà còn tăng cường khả năng chống lại các phương pháp tấn công tiên tiến
Bài báo cáo này sẽ đi sâu vào việc tìm hiểu phương pháp mã hóa ảnh sử dụng logic mờ Chúng ta sẽ khám phá các nguyên lý cơ bản của logic mờ, cách thức tích hợp vào quá trình mã hóa ảnh và những lợi ích nổi bật mà phương pháp này mang lại.Đồng thời, báo cáo cũng sẽ trình bày các ứng dụng thực tiễn và tiềm năng phát triển của mã hóa ảnh sử dụng logic mờ trong tương lai Qua đó, hy vọng mang lại cho người đọc một cái nhìn toàn diện về sự kết hợp giữa mã hóa ảnh và logic mờ, mở ra hướng đi mới cho việc bảo vệ thông tin trong thời đại số
Trang 5Phần 1: GIỚI THIỆU VỀ LOGIC MỜ.
1 Sự ra đời.
Logic mờ, hay còn gọi là Fuzzy Logic, được giới thiệu bởi giáo sư Lotfi A Zadeh vào năm 1965 tại Đại học California, Berkeley Sự ra đời của logic mờ xuất phát từ nhu cầu giải quyết các vấn đề mà logic cổ điển (Boolean logic) không thể đáp ứng được do tính chất mơ hồ và không chắc chắn của chúng Logic cổ điển chỉ cho phép các giá trị đúng hoặc sai tuyệt đối, trong khi nhiều hiện tượng trong thế giới thựclại không thể được mô tả một cách chính xác bằng hai trạng thái này
Động lực Phát Triển
Trong quá trình nghiên cứu, giáo sư Zadeh nhận thấy rằng nhiều hệ thống thực tế hoạt động dựa trên các quy tắc không rõ ràng và không chính xác, chẳng hạn như ngôn ngữ tự nhiên của con người Để mô hình hóa và xử lý những hệ thống này, cần
có một phương pháp tiếp cận mới cho phép làm việc với các giá trị không chắc chắn
và mơ hồ
Khái Niệm Cơ Bản
Logic mờ mở rộng các khái niệm của logic cổ điển bằng cách giới thiệu các giá trị
mờ Thay vì chỉ có hai giá trị 0 và 1, logic mờ cho phép các giá trị nằm trong khoảng
từ 0 đến 1, biểu thị mức độ đúng của một khẳng định Điều này được thực hiện thông qua các hàm thành viên (membership functions), xác định mức độ thuộc về của một phần tử đối với một tập mờ
2 Ứng dụng logic mờ.
Ứng Dụng Ban Đầu
Ban đầu, logic mờ được áp dụng chủ yếu trong các lĩnh vực như điều khiển học và
hệ thống điều khiển Ví dụ điển hình là hệ thống điều khiển nhiệt độ, nơi các quyết định được đưa ra dựa trên các quy tắc mờ thay vì các ngưỡng cố định Điều này giúp các hệ thống trở nên linh hoạt và hiệu quả hơn trong việc xử lý các biến đổi không lường trước
Trang 6 Tác Động và Phát Triển Sau Này
Sau khi được giới thiệu, logic mờ nhanh chóng thu hút sự quan tâm của cộng đồngnghiên cứu và ứng dụng rộng rãi trong nhiều lĩnh vực khác nhau, bao gồm trí tuệ nhântạo, nhận dạng mẫu, xử lý ngôn ngữ tự nhiên và cả trong các hệ thống tài chính và y
tế Sự ra đời của logic mờ đã mở ra một hướng nghiên cứu mới, cho phép các nhà khoa học và kỹ sư tiếp cận và giải quyết các vấn đề phức tạp mà trước đây khó có thể
xử lý được
Qua nhiều thập kỷ phát triển, logic mờ đã chứng minh được vai trò quan trọng và tiềmnăng to lớn trong việc giải quyết các vấn đề thực tiễn Các nguyên lý của logic mờ không chỉ giúp cải thiện hiệu quả của các hệ thống hiện tại mà còn mở ra nhiều cơ hộimới cho các nghiên cứu và ứng dụng trong tương lai
Trang 7Phần 2: TÌM HIỂU VỀ MÃ HÓA ẢNH
Mật mã bao gồm hai quá trình chính: mã hóa và phân tích tiền kỹ thuật số Mã hóa
là quá trình chuyển đổi một thông điệp dễ đọc thành một định dạng không thể đọc được, dựa trên một bộ quy tắc gọi là thuật toán mã hóa Hiện nay, các thuật toán mã hóa chủ yếu tập trung vào việc đảm bảo bảo mật, nhưng cũng cần cân nhắc đến khả năng xử lý và băng thông Đối với người dùng có kết nối băng thông thấp, cần có các thuật toán mã hóa sử dụng công suất xử lý thấp Mặc dù các thuật toán bảo mật cao thường yêu cầu ít sức mạnh xử lý hơn các thuật toán bảo mật thấp, một thuật toán mã hóa mới có thể kiểm soát cả mức bảo mật và mức xử lý mong muốn sẽ là một cải tiến lớn cho các ứng dụng thực tế
Các phương pháp mã hóa ảnh kỹ thuật số có thể được phân thành ba loại chính:
Biến đổi giá trị
Hoán vị vị trí pixel
Hệ thống hỗn loạn
1 Mã Hóa Ảnh Sử Dụng Biến Đổi Giá Trị
Phương pháp mã hóa và giải mã hình ảnh lượng tử đề xuất việc bảo vệ thông tin liên lạc bằng cách mã hóa thông tin ban đầu thành biểu thức hình ảnh thang độ xám lượng tử Các phép biến đổi hình ảnh lượng tử được thiết kế để lưu trữ hình ảnh thang độ xám ở trạng thái lượng tử, dựa trên giá trị và vị trí thang màu xám cho mỗi pixel
Các phép biến đổi hình học lượng tử được thực hiện thông qua các mạch lượng
tử, cho phép duy trì tính toàn vẹn và bảo mật của thông tin mà không bị nghe trộm nếu không có khóa riêng Điều này giúp đảm bảo rằng thông tin sẽ không bị xâm phạm
2 Mã Hóa Ảnh Sử Dụng Hoán Vị Pixel
Kỹ thuật mã hóa này kết hợp các hệ thống hỗn loạn để hoán vị pixel, do hệ thống hỗn loạn rất nhạy cảm với giá trị ban đầu và các tham số hệ thống Phương pháp này tạo ra một không gian khóa rất lớn, giúp loại bỏ hoàn toàn các đặc điểm của hình ảnh gốc, làm rối loạn phân phối các mức RGB và giảm đáng kể khả năng bị tấn công
Kỹ thuật FIPS PUB 140-1, hệ số tương quan, NPCR và UACI được sử dụng để kiểm tra phân tích bảo mật và phân phối các yếu tố khác biệt của các biến trong hình
Trang 8ảnh được mã hóa Kết quả cho thấy các hình ảnh được mã hóa có tính bảo mật cao và tiềm năng ứng dụng mạnh mẽ trong mã hóa hình ảnh màu kỹ thuật số.
3 Mã Hóa Ảnh Sử Dụng Hệ Thống Hỗn Loạn
Một phương pháp mã hóa hình ảnh mới kết hợp việc định vị các vị trí pixel và thayđổi giá trị xám của các pixel hình ảnh để đảm bảo an toàn Thuật toán này có ba ưu điểm chính:
Không gian khóa đủ lớn để chống lại tất cả các loại tấn công brute-force
Hình ảnh mã hóa có thuộc tính thống kê tốt
Thuật toán rất nhạy cảm với các khóa bí mật
Một thuật toán mã hóa hình ảnh mới dựa trên siêu hỗn loạn sử dụng ma trận tổng thể để định vị các vị trí pixel của hình ảnh và sau đó thay đổi các giá trị màu xám của hình ảnh xáo trộn Phân tích bảo mật cho thấy rằng không gian chính của thuật toán
đủ lớn để ngăn chặn các cuộc tấn công brute-force
Các phương pháp mã hóa ảnh sử dụng logic mờ mang lại nhiều lợi ích, bao gồm bảo mật cao và khả năng ứng dụng rộng rãi trong việc bảo vệ hình ảnh kỹ thuật số Những phương pháp này không chỉ giúp đảm bảo an toàn cho thông tin mà còn nâng cao hiệu quả xử lý và tiết kiệm tài nguyên
Trang 9Phần 3: MÃ HÓA HÌNH ẢNH SỬ DỤNG LOGIC MỜ.
1 Giới thiệu
Logic mờ cung cấp một cách đơn giản để đi đến một kết luận chắc chắn dựa trên thông tin đầu vào mơ hồ, không chính xác, ồn ào hoặc bị thiếu Trong các quy tắc logic mờ và các bộ thành viên được sử dụng để đưa ra quyết định
Để đạt được bảo mật và xử lý thấp, thuật toán sử dụng các khóa biến Vị trí số 0 cho thuật toán xử lý hoàn toàn thấp và vị trí số 1 cho thuật toán được bảo mật hoàn toàn Độ mờ thay đổi tùy thuộc vào kích thước khóa và số lượng bảng ánh xạ của thuật toán mã hóa Người dùng có thể nhập khóa mong muốn Một ký tự sẽ dài 8 bit Cấu trúc thuật toán chính xác định các kích thước khóa khác nhau lên tới 128 bit Người dùng có thể nhập khóa mong muốn và cũng tùy thuộc vào số lượng bảng ánh
xạ thuật toán sẽ phân bổ trọng số một cách linh hoạt Phân bổ trọng lượng sẽ khác nhau từ phạm vi 0,0 đến 1,0, và số lượng mức bảo mật sẽ thay đổi từ 1-16 Số lượng vòng sẽ được xác định bởi các bảng ánh xạ được xác định trước và đầu vào ban đầu của người dùng Các bảng ánh xạ được xác định trước trong thuật toán và bao gồm các giá trị được xác định theo toán học, và sau đó các giá trị đó sẽ tự động chọn thủ tục thuật toán có liên quan khi người dùng nhập khóa để mã hóa
2 Cách để mã hóa một hình ảnh sử dụng logic mờ.
x
B1 Chọn hình ảnh cần mã hóa
B2 Xử lý ảnh bằng cách sử dụng fuzzy set
B3 Tạo số nguyên tố ngẫu nhiên trong khoảng (1 - 256)
B4 Lưu trữ 7 khóa ngẫu nhiên trong một ma trận (A)
B5 Lấy chiều rộng hình ảnh và chiều cao hình ảnh
B6 Chia hình ảnh thành một tập hợp các khối
B7 Mã hóa mỗi 7bit bằng 7 khóa được lưu trữ trong ma trận (A)
B8 Lặp lại bước số (7) trong mỗi 7 bit trong cùng một khối
B9 Lặp lại các bước số (7) và (8) trong tất cả các khối
B10 Thay thế từng khối trong ảnh bằng cách chuyển đổi hàng sang cột
B11 Lấy mỗi 2 bit liền kề theo chiều dọc từ dưới cùng của hình ảnh (b1, b2) vàthực hiện XOR giữa (b1 và b2)
Trang 10B12 Thực hiện XOR giữa (b và 256).
Hình 1: Sơ đồ quá trình mã hóa ảnh
Trang 11Hình 2: Kết quả quá trình mã hóa
3 Quá trình giải mã
Các bước của thuật toán giải mã:
B1 Lấy mỗi 2 bit liền kề theo chiều dọc từ đầu hình ảnh (b1, b2) và thực hiện XOR giữa (b1 và b2)
B2 Thực hiện XOR giữa (b và 256)
B3 Thực hiện thay thế đường cho mỗi khối trong ảnh bằng cách chuyển đổi hàng thành cột
B4 Lấy các khóa được lưu trong tiêu đề của hình ảnh
B5 Tìm nghịch đảo của từng khóa từ các khóa được lưu trong ma trận ngược dòng (A)
B6 Chia hình ảnh thành một tập hợp các khối
B7 Giải mã mỗi 7 bit của khối kèm theo nghịch đảo của các khóa được lưu trữ trong ma trận (A)
B8 Lặp lại cùng một bước số (7) cho mỗi 7 bit trong cùng một khối
B11 Lặp lại các bước số (7) và (8) cho tất cả các khối
Trang 12Hình 3: Sơ đồ giải mã
Trang 13Hình 4: Kết quả quá trình giải mã.(Number 1)
Hình 5: Mã hóa ảnh dùng fuzzy logic và fuzzy graph (Number 2)
Trang 144 Phân tích đánh giá kết quả
Bảo mật là tính năng thiết yếu nhất mà một thuật toán mã hóa chất lượng tốt nên sở hữu Nếu thuật toán mã hóa không thể ngăn chặn tất cả các loại tấn công bao gồm các cuộc tấn công thống kê và brute force, thì nó sẽ không đủ để bảo vệ dữ liệu
Các hình ảnh được mã hóa phải giữ các thuộc tính ngẫu nhiên nhất định để ngăn chặn các cuộc tấn công thống kê Một phân tích thống kê đã được thực hiện bằng cách tính toán biểu đồ, entropy, phân tích tương quan và phân tích khác biệt cho hình ảnh đơn giản và hình ảnh được mã hóa cho chứng minh sức mạnh của thuật toán
đề xuất Sau khi các hình ảnh khác nhau được kiểm tra ta thu được các giá trị cường
độ là tốt
Biểu đồ hình ảnh là một phương pháp phân tích thường được sử dụng trong cácứng dụng xử lý hình ảnh và khai thác dữ liệu Một trong những lợi ích khác nhau của biểu đồ là nó cho thấy hình dạng phân phối cho một tập hợp dữ liệu lớn Do đó, biểu
đồ hình ảnh cung cấp một minh họa rõ ràng về cách các pixel trong ảnh được phân phối bằng cách vẽ đồ thị số pixel ở mỗi mức cường độ màu Điều cần thiết là đảm bảorằng các hình ảnh được mã hóa và nguyên bản có các số liệu thống kê khác nhau Phân tích biểu đồ cho thấy các pixel trong ảnh được phân phối bằng cách vẽ số pixel
ở mỗi mức cường độ
Biểu đồ RGB
Trang 15Hình 7: Biểu đồ của ảnh sau khi mã hóa
Hình 8: Biểu đồ hình ảnh sau khi giải mã lại
Hình 6, 7, 8 cho thấy kết quả thí nghiệm trên hình ảnh đơn giản, hình ảnh mật
mã tương ứng và biểu đồ của chúng Biểu đồ của mỗi hình ảnh đơn giản giải thích cách các pixel được phân phối bằng cách vẽ đồ thị số lượng pixel ở mọi cấp độ màu xám Kết quả cho thấy biểu đồ của hình ảnh được mã hóa được phân phối đồng đều
và khác biệt đáng kể so với biểu đồ tương ứng của hình ảnh gốc
- PSNR: Tỷ lệ tín hiệu cực đại nhiễu
Trang 16Công thức tính PSNR và MSE
Khối PSNR tính tỷ lệ nhiễu tín hiệu cực đại, tính bằng db, giữa hai hình ảnh Tỷ lệ này được sử dụng như một phép đo chất lượng giữa ảnh gốc và ảnh nén PSNR càng cao, chất lượng của hình ảnh được nén hoặc tái tạo càng tốt
- MSE: Lỗi bình phương trung bình
Giá trị của MSE càng thấp, lỗi càng thấp
PSNR và MSE được sử dụng để so sánh chất lượng nén hình ảnh
Hình 13: Phân tích theo PSNR và MSE
Trang 17mã hóa ảnh đã mờ hóa, sau đó giải mã và khôi phục lại ảnh gốc Chúng ta sử dụng cáchàm Gaussian để tạo không gian mờ và sử dụng phép XOR để mã hóa và giải mã ảnh.
Ngôn ngữ sử dụng: Python
2 Phương Pháp
2.1 Hàm làm mờ ảnh (Fuzzy Image Function)
Hàm fuzzyimg chuyển ảnh màu sang ảnh grayscale, chuẩn hóa giá trị pixel và tạo không gian mờ (fuzzy space) cho ảnh Sau đó, nó sử dụng hàm mật độ xác suất Gaussian để làm mờ ảnh
Hình 15: Hàm làm mờ ảnh
2.2 Hàm mã hóa ảnh (Encrypt Image Function)
Hàm encrypt_image chuyển đổi ảnh mờ hóa thành số nguyên 8-bit, tạo khóa
mã hóa ngẫu nhiên và sử dụng phép XOR để mã hóa từng khối 8x8 của ảnh