Danh mục tài liệu

Hiệu năng mã hóa với tập lệnh AES-NI

Số trang: 3      Loại file: pdf      Dung lượng: 474.11 KB      Lượt xem: 21      Lượt tải: 0    
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 báo này giới thiệu tập lệnh hợp ngữ trong một số dòng vi xử lý Intel thế hệ mới cho phép tăng đáng kể tốc độ mã hóa, giải mã với thuật toán AES. Các tác giả sẽ làm rõ những điểm đặc biệt khi sử dụng một trong số các lệnh đó để mở rộng khóa; đây là vấn đề chưa được trình bày trong các tài liệu về tập lệnh này. Mời các bạn cùng tham khảo!
Nội dung trích xuất từ tài liệu:
Hiệu năng mã hóa với tập lệnh AES-NI HộiHội Thảo Quốc Thảo QuốcGia Gia2015 2015về về Điện Tử, Truyền Điện Tử, ThôngvàvàCông Truyền Thông CôngNghệ Nghệ Thông Thông Tin Tin (ECIT (ECIT 2015) 2015) Hiệu Năng Mã Hóa Với Tập Lệnh AES-NI Nguyễn Tuấn Anh#, Lương Thế Dũng#, Nguyễn Thị Trang* # Khoa An toàn thông tin – Học viện Kỹ thuật mật mã * Khoa Công nghệ thông tin – Học viện Công nghệ bưu chính viễn thông Email: tuananh1982act@gmail.com, thedungluong@gmail.com, trangmamcnttptit11@gmail.com Abstract— Bài báo này giới thiệu tập lệnh hợp ngữ trong một số thể viết những chương trình mã hóa/giải mã bằng AES với tốc dòng vi xử lý Intel thế hệ mới cho phép tăng đáng kể tốc độ mã độ cao hơn hẳn so với cài đặt mềm thông thường. Đến nay đã hóa, giải mã với thuật toán AES. Các tác giả sẽ làm rõ những có nhiều ứng dụng và thư viện mật mã có khả năng làm việc điểm đặc biệt khi sử dụng một trong số các lệnh đó để mở rộng với tập lệnh này. Danh sách cụ thể các ứng dụng và thư viện đó khóa; đây là vấn đề chưa được trình bày trong các tài liệu về tập có thể tham khảo tại [3]. lệnh này. Đồng thời, bài báo cũng giới thiệu kết quả thực nghiệm về tốc độ mã hóa, giải mã mà các tác giả đã đạt được khi nghiên II. TẬP LỆNH AES-NI cứu tập lệnh nói trên. Một trong những kết quả quan trọng mà các tác giả thu được là sự chênh lệch không đáng kể về tốc độ mã Tập lệnh AES-NI bao gồm 6 lệnh hợp ngữ, trong đó có 2 hóa, giải mã khi sử dụng tập lệnh nói trên để viết chương trình lệnh để mã hóa, 2 lệnh để giải mã và 2 lệnh để tạo khóa vòng. cho nền tảng 32 bit và nền tảng 64 bit. Hai lệnh để mã hóa là AESENC và AESENCLAST. Trong đó lệnh AESENCLAST là để mã hóa vòng cuối cùng, lệnh Keywords- AES-NI, cứng hóa AES, tăng tốc mã hóa. AESENC là để mã hóa một vòng đối với tất các vòng còn lại. Tương tự, hai lệnh để giải mã là AESDEC và AESDECLAST. I. GIỚI THIỆU Trong đó, lệnh AESDECLAST thực hiện giải mã vòng cuối Như đã biết, mật mã là công cụ quan trọng hàng đầu trong cùng, còn lệnh AESDEC thực hiện giải mã một vòng đối với lĩnh vực an toàn thông tin. Nếu xét riêng lĩnh vực công nghệ tất cả các vòng còn lại. Hai lệnh để tạo khóa vòng là thông tin và viễn thông thì nhiệm vụ đảm bảo an toàn thông tin AESKEYGENASSIST và AESIMC. Trong đó, sẽ không thể đạt được nếu không có mật mã. Tuy nhiên, việc AESKEYGENASSIST được sử dụng để tạo khóa vòng mã áp dụng các thao tác mật mã vào quá trình xử lý thông tin sẽ hóa, tức là để mở rộng khóa (key expansion), còn AESIMC làm chậm đáng kể quá trình này. Do vậy, bên cạnh việc nghiên được sử dụng để tạo khóa giải mã. AES hỗ trợ hai phương án cứu và xây dựng những hệ mật tốt thì việc nghiên cứu các giải giải mã. Phương án thứ nhất là trong từng vòng phải đảo trật tự pháp cải thiện hiệu năng làm việc của các hệ mật cũng có ý các phép biến đổi SubBytes, ShiftRow, MixColumn, nghĩa to lớn trong an toàn thông tin. AddRoundKey. Trong trường hợp này, khóa giải mã cũng Vào ngày 02/01/1997, Viện tiêu chuẩn và kỹ thuật quốc gia chính là khóa giải mã (nhưng dùng với trật tự đảo ngược). Mỹ (NIST) đã khởi động chương trình xây dựng chuẩn mật mã Phương án thứ hai là giữ nguyên trật tự các phép biến đổi trên mới để thay thế cho chuẩn mật mã lúc bấy giờ là DES [1]. trong từng vòng, nhưng bên cạnh việc sử dụng khóa vòng với Trong đó, NIST xác định việc xây dựng chuẩn mật mã mới sẽ trật tự đảo ngược thì cần thực hiện biến đổi nhất định lên khóa dựa vào công sức của cộng đồng quốc tế thông qua việc tổ vòng mã hóa để thu được khóa vòng giải mã. Phép biến đổi chức cuộc thi để tìm ra thuật toán mật mã tốt nhất. Đồng thời, khóa vòng này chính là được thực hiện bởi lệnh AESIMC. Bên NIST cũng đặt ra yêu cầu bắt buộc đối với các ứng viên là cạnh tập lệnh trên đây, Intel cũng đưa vào lệnh PCLMULQDQ thuật toán của họ sẽ được miễn phí cho mọi người dùng nếu (Carry-Less Multiplication) cho phép thực hiện phép nhân trên được chọn làm chuẩn. Đến ngày 02/10/2000, NIST công bố trường hữu hạn đối với các hạng tử 64 bit. Lệnh này được sử thuật toán Rijndael được chọn làm chuẩn mật mã mới, gọi là dụng để cài đặt một cách hiệu quả thuật toán AES ở chế độ AES (Advanced Encryption Standard); chuẩn này được ban Galois Counter Mode (AES-GCM) [4]. hành chính thức bởi NIST vào năm 2001 [2]. Đến nay, AES đã Cú pháp cũ ...