Danh mục

Thực hiện thuật toán ChaCha20 - Poly1305 trên phần cứng ứng dụng bảo mật hệ thống IoT

Số trang: 7      Loại file: pdf      Dung lượng: 486.96 KB      Lượt xem: 140      Lượt tải: 0    
tailieu_vip

Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Bài viết "Thực hiện thuật toán ChaCha20 - Poly1305 trên phần cứng ứng dụng bảo mật hệ thống IoT" thực hiện thuật toán ChaCha20 – Poly1305 trên phần cứng tăng cường ứng dụng bảo mật cho hệ thống IoT (Internet of Thing). Thuật toán này là một hệ mã xác thực dữ liệu liên kết (AEAD – Authenticated Encryption with Associated Data). Trong đó dữ liệu được mã hóa qua thuật toán ChaCha20 là một dạng mã hóa dòng, thuật toán này có nhiều hạn chế về yếu tố bảo mật và xác thực. Mời các bạn cùng tham khảo!
Nội dung trích xuất từ tài liệu:
Thực hiện thuật toán ChaCha20 - Poly1305 trên phần cứng ứng dụng bảo mật hệ thống IoT Hội nghị Quốc gia lần thứ 25 về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT2022) Thực hiện thuật toán ChaCha20 - Poly1305 trên phần cứng ứng dụng bảo mật hệ thống IoT Nguyễn Tiến Đạt, Nguyễn Vũ Minh Thành, Đỗ Đức Phú, Nguyễn Văn Nhị, Lê Đức Hùng(*) Phòng thí nghiệm DESLAB Khoa Điện tử - Viễn Thông Trường Đại học Khoa học Tự nhiên – ĐHQG TP.HCM (*) Email: ldhung@hcmus.edu.vn Abstract— Trong bài báo này, nhóm tác giả thực hiện liệu gửi đến máy chủ bao gồm thông tin được mã hóa và thuật toán ChaCha20 – Poly1305 trên phần cứng tăng mã xác thực (MAC). Máy chủ nhận dữ liệu sẽ tiến hành cường ứng dụng bảo mật cho hệ thống IoT (Internet of xác thực thông tin, khi quá trình xác thực thành công Thing). Thuật toán này là một hệ mã xác thực dữ liệu liên máy chủ sẽ tiến hành mã hóa dữ liệu nhận được từ các kết (AEAD – Authenticated Encryption with Associated Data). Trong đó dữ liệu được mã hóa qua thuật toán node. Mô hình ứng dụng của thuật toán Chacha20- ChaCha20 là một dạng mã hóa dòng, thuật toán này có Poly1305 đề xuất được trình bày trong Hình 1. nhiều hạn chế về yếu tố bảo mật và xác thực. Thuật toán Poly1305 được dùng để tạo mã xác thực một lần, thuật toán này được tích hợp vào với mục đích khắc phục các điểm yếu về tính bảo mật và xác thực của thuật toán ChaCha20. Bài báo này trình bày quá trình hoạt động và kết quả của thuật toán ChaCha20 – Poly1305 tại các thiết bị mã hóa dữ liệu và các node trong hệ thống IoT trên vi điều khiển và ESP32. Máy chủ của hệ thống IoT sẽ xác thực dữ liệu và giải mã dữ liệu khi quá trình xác thực hoàn tất. Hình 1: Mô hình ứng dụng của thuật toán trong hệ thống IoT. Keywords- AEAD, ChaCha20, ChaCha20 – Poly1305, MQTT, Poly1305. II. THUẬT TOÁN CHACHA20 Thuật toán ChaCha20 là một thuật toán mã hóa dòng I. GIỚI THIỆU (stream cipher). Mô hình hoạt động của thuật toán này Trong những năm gần đây, các mô hình Internet of bao gồm bộ KSG – Key stream Generator) với ba ngõ Things (IoTs) đang trở nên phổ biến trong nhiều lĩnh vực vào là key (256-bit), “number used one” (192-bit) hay khác nhau tại Việt Nam. Vì thế các nhu cầu về bảo mật còn gọi là “nonce number” (192-bit) bao gồm các dữ dữ liệu cho các hệ thống IoT trở thành một đối tượng liệu ngẫu nhiên và “block number” (64-bit) được khởi nghiên cứu và phát triển, do các node trong hệ thống IoT tạo có dữ liệu là “00000001”. Ngoài ra có các hằng số được xây dựng trên các vi điều khiển vẫn còn nhiều hạn cố định (Cons) cùng với các dữ liệu trên được sắp xếp chế về hiệu năng nên các thuật toán được sử dụng trên theo bảng bên dưới, bảng này được gọi là “Cell”. các node phải phù hợp với hiệu năng của vi điều khiển. Bảng 1. Định dạng của một “Cell” Các node trong hệ thống IoT chưa được kết hợp các thuật toán bảo mật dữ liệu, hoặc các dữ liệu được mã hóa 61707865 3320646e 79622d32 6b206574 vẫn có thể bị tấn công xen giữa do chưa có xác thực trong key key key key quá trình trao đổi dữ liệu. Thuật toán ChaCha20- key key key key Poly1305 cung cấp tính năng mã hóa xác thực dữ liệu block nonce nonce nonce (AEAD) bằng cách sử dụng thuật toán mã hóa dòng Bộ KSG sẽ tạo ra các output key có 512-bit (k1, k2, (stream cipher) của thuật toán ChaCha20 để mã hóa dữ k3,…) để tiến hành mã hóa dữ liệu. Quá trình này là một liệu và kết hợp với thuật toán Poly1305 tạo mã xác thực vòng lặp 20 vòng thực hiện phép toán “Quarter Round”, cho tin nhắn (Authentication Message) [1, 2]. Thuật toán phép toán này được thực hiện như sau. này phù hợp khi được xây dựng trên vi điều khiển vì cơ QUARTERROUND(a, b, c, d) = bản cả hai thuật toán là ChaCha20 và Poly1305 là các += ; ^ = ; ≪ = 16 thuật toán mã hóa nhẹ. Nhận thấy điều này nhóm nghiên += ; ^ = ; ≪= 12 (1) cứu đã nghiên cứu và ứng dụng trên một hệ thống IoT += ; ^ = ; ≪ = 8 thực tế bao gồm các node và máy chủ (Server). Các node += ; ^ = ; ≪ = 7 trong hệ thống IoT giữ vai trò là bên gửi (Trasmitter), dữ ISBN 978-604-80-7468-5 453 Hội nghị Quốc gia lần thứ 25 về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT2022) Trong đó, “+ ”là phép cộng các số theo modulo cụ thể hơn ta sẽ dựa vào Bảng 1 để thực hiện phép toán 2^32, “^” là phép XOR, “≪” là phép dịch trái. Các tham QUARTERROUND(0, 4, 8, 12 ...

Tài liệu được xem nhiều:

Tài liệu cùng danh mục:

Tài liệu mới: