TÍCH HỢP THUẬT TOÁN MẬT MÃ KUZNYECHIK TRONG MÃ HÓA PHÂN VÙNG TRÊN RASPBERRY PI
Xây dựng module Kuznyechik
Với những ưu điểm của việc thiết kế module dưới dạng tách rời, nhóm tác giả đã xây dựng một module Kuznyechik trong chuẩn mật mã GOST R34.12- 2015 để tích hợp vào ứng dụng . Kuznyechik là một thuật toán mật mã sử dụng cấu trúc mạng thay thế hoán vị SPN [3]. Nó có độ dài khối là 128 bit, độ dài khóa là 256 bit, tương tự với thuật toán AES.
Để kernel tải một module, một tiến trình “Modprobe” cùng với các tham số của module đó sẽ được thực thi. Module sẽ được biên dịch và đóng gói dưới dạng tệp tin đuôi *.ko. Một module có thể kèm theo nhiều module khác phụ thuộc và kernel sẽ phải tải lần lượt các module phụ thuộc trong tệp modules. dep để có thể khởi tạo module được thêm vào. Nhóm tác giả đã sử dụng một chương trình DKMS (Dynamic Kernel Module Support) để hỗ trợ thực hiện những công việc trên.
Ngoài những hàm thực thi như khởi tạo khóa con, mã hóa, giải mã của thuật toán Kuznyechik, cần khai báo những tham số đặc trưng của thuật toán mật mã để trình biên dịch có thể tạo ra tệp kuznyechik.ko.
Tệp tin dkms được biểu diễn như sau:
Sau khi biên dịch, module thực thi thuật toán được đóng gói dưới dạng tệp kuznyechik.ko và ghi vào đường dẫn /libs/modules/($linux-header). Thử nghiệm mã hóa phân vùng bằng thuật toán Kuznyechik, thay đổi tham số cipher là “kuznyechik” trong câu lệnh mã hóa là:
Kết quả sau khi mã hóa phân vùng, thuật toán mật mã sử dụng được đổi thành Kuznyechik. Hình 1 biểu diễn một LUKS header sau khi tích hợp module Kuznyechik, những thiết bị chưa cài module này không thể đọc được phân vùng đã mã hóa. Như vậy, chúng ta có thể tích hợp thêm hoặc tùy biến các thuật toán mật mã khác vào thiết bị để tăng độ bảo mật cho ứng dụng.
Ứng dụng thuật toán Kuznyechik vào mã hóa phân vùng lưu trữ video từ camera và kết quả
Trong nội dung tiếp theo, nhóm tác giả trình bày một ứng dụng sử dụng giải pháp mã hóa phân vùng lưu trữ để bảo vệ dữ liệu từ camera. Trên thực tế những video từ camera thường được lưu trữ ở dạng rõ và bất kỳ ai cũng có thể truy cập, tuy nhiên trong một số địa điểm đặc thù như phòng thí nghiệm, khu vực nhạy cảm hoặc nhật ký thử nghiệm, việc bảo vệ những dữ liệu video này là rất cần thiết. Sơ đồ khối của ứng dụng được trình bày như Hình 2. Trong đó gồm các thành phần sau:
- Khối xử lý chính Raspberry Pi 3: Thực hiện những tác vụ nén video dưới chuẩn video thông dụng như H264; mã hóa và giải mã dữ liệu từ camera.
- Module Camera: Có thể sử dụng Camera giao tiếp CSI hoặc USB qua Raspberry Pi.
Hình 2. Sơ đồ khối của ứng dụng camera
- Thiết bị lưu trữ: Có thể là USB hoặc MicroSD, tốc độ mã hóa/giải mã của ứng dụng sẽ phụ thuộc một phần vào tốc độ ghi/đọc trên thiết bị lưu trữ.
Hình 3. Kết quả sau khi mã hóa phân vùng
Khóa của quá trình mã hóa, giải mã là một mật khẩu được trao đổi bí mật, hoặc là một keyfile tránh trường hợp người dùng quên mật khẩu. Video được nén theo chuẩn H264, băng thông sử dụng của chuẩn nén này chỉ xấp xỉ 1,5 Mbit/s [6], vì vậy tốc độ mã hóa của thuật toán mật mã trên Raspberry Pi không cần quá lớn. Nhóm tác giả lựa chọn thuật toán mật mã là Kuznyechik, chế độ XTS với độ dài khóa là 512 bit.
Kết quả được mô tả trong Hình 3. Ở Hình 3(a) khi kết nối phân vùng đã mã hóa vào Raspberry Pi, máy tính sẽ yêu cầu nhập mật khẩu để đọc phân vùng đó; Hình 3(b) là khi đã mở khóa thành công phân vùng đã mã hóa và có thể truy cập được những video trong phân vùng đã mã, trên phân vùng có biểu tượng đã được mã hóa; Hình 3(c) biểu diễn tốc độ đọc/ghi trực tiếp trên phân vùng mã hóa, xấp xỉ 8 MiB/s, tốc độ này hoàn toàn phù hợp để ghi video chuẩn nén H.264.
Kết quả cho thấy thiết bị hoạt động tốt với ứng dụng camera, phân vùng lưu trữ không thể truy cập nếu không có mật khẩu hoặc keyfile, tốc độ mã hóa/giải mã phù hợp với băng thông của video chuẩn nén H.264, thuật toán mật mã được tích hợp vào hoạt động ổn định và tương thích. Điều này cho thấy khả năng tùy biến cao của phương pháp, qua đó hoàn toàn có thể tích hợp những thuật toán đặc thù vào ứng dụng.
KẾT LUẬN
Trong bài báo này, nhóm tác giả đã đề xuất một phương pháp mã hóa phân vùng trên máy tính nhúng Raspberry Pi sử dụng dm-crypt và LUKS để bảo vệ dữ liệu cho ứng dụng camera, đồng thời tích hợp thêm thuật toán mật mã Kuznyechik trong chuẩn GOST R34.12-2015 lên Raspberry Pi. Kết quả cho thấy giải pháp hoạt động tốt và phù hợp với ứng dụng mã hóa phân vùng dữ liệu camera. Thuật toán mật mã sử dụng là Kuznyechik chế độ XTS, tốc độ đọc/ghi thực tế trên thẻ MicroSD là xấp xỉ 8 MiB/s, video được nén theo chuẩn H.264.
Từ kết quả của giải pháp, hoàn toàn có thể áp dụng trên nhiều ứng dụng khác trong những thiết bị thông minh như NAS, dữ liệu cảm biến, tín hiệu điều khiển, tùy thuộc vào yêu cầu về thuật toán mật mã, chế độ hoạt động, nền tảng phần cứng hay tốc độ mã hóa/giải mã của từng ứng dụng.
Tài liệu tham khảo [1]. NIST Computer Security Division’s, Security Technology Group, “Block cipher modes”. Cryptographic Toolkit. NIST. Archived from the original on November 6, 2012. Retrieved April 12, 2013. [2]. Shrestha, Muna, “Parallel Implementation of AES using XTS Mode of Operation”, Culminating Projects in Computer Science and Information Technology 21, 2018. [3]. V. Dolmatov, Ed., “GOST R 34.12-2015: Block Cipher “Kuznyechik””, Research Computer Center MSU, 2016. [4]. Clemens Fruhwirth, “LUKS1 On-Disk Format Specifiation”, 2018. [5]. Matthew V. Ball, Cyril Guyot, James P. Hughes, Luther Martin & Landon Curt Noll, “The XTS-AES Disk Encryption Algorithm and the Security of Ciphertext Stealing”, Cryptologia, Volume 36, 2012 - Issue 1, 2012. [6]. Wenger, “RTP Payload Format for H.264 Video”, RFC 3984, 2005. [7]. Mike Peters, “Encrypting partitions using dm-crypt and the 2.6 series kernel”, dm-crypt Project, 2012. |
Nguyễn Ngọc Quỳnh, TS. Nguyễn Chung Tiến, TS. Đỗ Cao Khánh, Học viện Kỹ thuật mật mã
15:00 | 03/09/2023
10:00 | 21/04/2023
15:52 | 27/04/2017
16:34 | 06/01/2009
09:00 | 13/06/2024
Trong phạm vi của bài báo này, chúng tôi sẽ trình bày những nội dung xoay quanh các vấn đề về sự tác động của trí tuệ nhân tạo (AI) cùng với hậu quả khi chúng ta tin tưởng tuyệt đối vào sức mạnh mà nó mang tới. Cũng như chúng tôi đề xuất sự cần thiết của việc xây dựng và hoàn thiện các chính sách bảo vệ các nội dung do AI tạo ra tuân thủ pháp luật và bảo vệ người dùng.
10:00 | 27/05/2024
Quản lý rủi ro chuỗi cung ứng (Supply Chain Risk Management - SCRM) là quá trình tìm kiếm và giải quyết các lỗ hổng tiềm ẩn trong chuỗi cung ứng của một doanh nghiệp. Mục đích của SCRM là nhằm giảm thiểu tác động của những rủi ro này đối với hoạt động, thương hiệu và hiệu quả tài chính của doanh nghiệp.
10:00 | 26/10/2023
Trong thời gian gần đây, các trường hợp lừa đảo qua mã QR ngày càng nở rộ với các hình thức tinh vi. Bên cạnh hình thức lừa đảo cũ là dán đè mã QR thanh toán tại các cửa hàng khiến tiền chuyển về tài khoản kẻ gian, vừa qua còn xuất hiện các hình thức lừa đảo mới.
13:00 | 09/10/2023
Field-programmable gate array (FPGA) là công nghệ vi mạch tích hợp khả trình có tính ưu việt và mức độ ứng dụng phổ biến nhất trong vòng vài chục năm trở lại đây. Ngoài khả năng tái cấu trúc vi mạch toàn cục, một số FPGA hiện đại còn hỗ trợ tái cấu trúc từng bộ phận riêng lẻ (partial configuration) trong khi vẫn đảm bảo hoạt động bình thường cho các bộ phận khác. Đây là chức năng cho phép ứng dụng có thể tái cấu trúc một phần thiết kế theo yêu cầu mà không cần phải ngừng hệ thống để lập trình lại toàn bộ. Bài viết sẽ giới thiệu một hệ thống tái cấu trúc từng phần được xây dựng trên board phát triển Z-turn Xynq-7020 của Xilinx, từ đó đề xuất một phương pháp tái cấu trúc từng phần trong bài toán an toàn thiết kế phần cứng trên nền công nghệ FPGA.
Triết lý an ninh mạng Zero Trust đặt ra nguyên tắc không có bất kỳ người dùng nào trong hoặc ngoài hệ thống mạng đủ tin tưởng mà không cần thông qua sự kiểm tra chặt chẽ về danh tính. Để triển khai Zero Trust hiệu quả, cần áp dụng các giải pháp công nghệ mạnh mẽ. Bài báo này sẽ trình bày những vấn đề cơ bản về Zero Trust.
10:00 | 25/10/2024
Nhằm trang bị cho người dân “vũ khí” chống lừa đảo trên không gian mạng, Cục An toàn thông tin (Bộ TT&TT) triển khai chiến dịch quốc gia với 5 nhóm kỹ năng thiết yếu, từ nhận biết dấu hiệu lừa đảo đến xử lý tình huống khi bị tấn công.
10:00 | 18/10/2024