Professional Documents
Culture Documents
AES Report
AES Report
MỘT
TRONG
KỸ THUẬT
Của
ECIL-ECIT
Qua
PN VAMSHI (13EC10044)
Trang 1 trên 40
Machine Translated by Google
MỘT
TRONG
Của
ECIL-ECIT
Qua
K. MUKESH NAIDU B.
DEVA KUMAR
VIỆN CÔNG NGHỆ QUỐC GIA DURGAPUR
Trang 2/40
Machine Translated by Google
MỘT
TRONG
Của
ECIL-ECIT
Qua
Trang 3/40
Machine Translated by Google
TUYÊN NGÔN
Tiêu chuẩn mã hóa nâng cao được gửi để đáp ứng một phần yêu cầu
và Kỹ thuật truyền thông điện. Luận án này là bản gốc của chúng tôi
công việc và dự án chưa hình thành cơ sở để trao bất kỳ bằng cấp nào,
liên kết tàu, học bổng hoặc bất kỳ danh hiệu tương tự nào khác và không có phần nào của nó đã được
xuất bản hoặc gửi để xuất bản tại thời điểm nộp.
Trang 4 trên 40
Machine Translated by
NHÌN NHẬN
Chúng tôi muốn nhân cơ hội này để bày tỏ lòng biết ơn sâu sắc tới tất cả những
người đã giúp đỡ, khuyến khích, động viên và đã mở rộng hợp tác theo nhiều cách khác nhau
trong quá trình thực hiện dự án của chúng tôi. Chúng tôi rất hân hạnh được ghi nhận sự
giúp đỡ của tất cả những cá nhân chịu trách nhiệm dự đoán việc hoàn thành thành công dự
Chúng tôi xin cảm ơn ông L. VASUDEVA MURTHY (Trưởng phòng, CED) và bày tỏ lòng
biết ơn với sự ngưỡng mộ và kính trọng sâu sắc đối với người hướng dẫn dự án của chúng
tôi, ông. CH GOUTHAM RAJ vì những lời khuyên và sự giúp đỡ quý báu của họ trong suốt quá
trình phát triển dự án này bằng cách cung cấp cho chúng tôi những thông tin cần thiết mà
không có sự
hướng dẫn, hợp tác và khuyến khích của họ, dự án này không thể thành
Cuối cùng nhưng không kém phần quan trọng, chúng tôi xin cảm ơn toàn bộ những người được hỏi đã
Trang
Machine Translated by
TRỪU TƯỢNG
Tiêu chuẩn mã hóa nâng cao (AES), Tiêu chuẩn xử lý thông tin liên bang (FIPS), là một
thuật toán mật mã đã được phê duyệt có thể được sử dụng để bảo vệ dữ liệu điện tử. AES có thể
được lập trình trong phần mềm hoặc được xây dựng bằng phần cứng thuần túy. Tuy nhiên, Cổng lập trình trường
Mảng (FPGA) cung cấp giải pháp nhanh hơn và tùy biến hơn. Dự án này giới thiệu AES
thuật toán liên quan đến FPGA và ngôn ngữ Verilog. Phần mềm Xilinx 12.1 và Module Sim là
được sử dụng để mô phỏng và tối ưu hóa mã Verilog tổng hợp được. tổng hợp và
việc triển khai (tức là Dịch, Bản đồ và Địa điểm và Tuyến đường) của mã được thực hiện trên Xilinx
- Project Navigator, bộ ISE 12.1. Tất cả các biến đổi của cả Mã hóa và Giải mã
được mô phỏng bằng cách sử dụng phương pháp thiết kế lặp để giảm thiểu phần cứng
sự tiêu thụ. Thiết bị Xilinx XC3S500 của Spartan Family được sử dụng để đánh giá phần cứng. Cái này
dự án đề xuất một phương pháp để tích hợp AES được mã hóa và AES được giải mã. Cái này
phương pháp có thể làm cho nó trở thành một kiến trúc có độ phức tạp rất thấp, đặc biệt là trong việc tiết kiệm phần cứng
tài nguyên trong việc triển khai mô-đun AES Sub Bytes và mô-đun Cột trộn, v.v. Hầu hết
các mô-đun được thiết kế có thể được sử dụng cho cả mã hóa và giải mã AES. Bên cạnh đó, các
kiến trúc vẫn có thể cung cấp tốc độ dữ liệu cao trong cả hoạt động mã hóa/giải mã.
Kiến trúc được đề xuất phù hợp với các ứng dụng quan trọng về phần cứng, chẳng hạn như mạng
GPON bảo mật, Máy ATM, thẻ thông minh, PDA và điện thoại di động, v.v.
Trang
Machine Translated by
1) HỒ SƠ TỔ CHỨC số 8
số 8)
NGHỊCH ĐẢO NHIỀU LẦN 20
9) NHÀ NƯỚC 20
Trang
Machine Translated by
Hồ sơ tổ chức
ECIL được thành lập trực thuộc Cục Năng lượng nguyên tử vào ngày 11 tháng 4 năm 1967 nhằm
tạo ra một năng lực bản địa mạnh mẽ trong lĩnh vực điện tử cấp chuyên nghiệp. ban đầu
nhấn mạnh vào sự tự lực và ECIL đã tham gia vào việc Phát triển Thiết kế Sản xuất
và Tiếp thị một số sản phẩm nhấn mạnh vào ba dây chuyền công nghệ viz. Máy tính, điều khiển
hệ thống và thông tin liên lạc. Do đó, ECIL đã phát triển thành một công ty đa sản phẩm phục vụ nhiều
các lĩnh vực của nền kinh tế Ấn Độ với sự nhấn mạnh vào nhập khẩu thay thế đất nước và phát triển
các sản phẩm và dịch vụ có ý nghĩa kinh tế và chiến lược đối với đất nước.
Trong năm qua, ECIL đã đi tiên phong trong việc phát triển các sản phẩm điện tử phức tạp khác nhau
mà không cần bất kỳ sự trợ giúp công nghệ bên ngoài nào và đã ghi được một số “ĐỨA ĐẦU TIÊN” trong các lĩnh vực này
• Kiểm soát & thiết bị đầu tiên của các nhà máy điện hạt nhân
• Hệ thống thông tin điều hành được vi tính hóa đầu tiên
• Trung tâm vận hành & bảo trì đầu tiên cho E-108 Exchange
Nhiệm vụ
Nhiệm vụ của ECIL là củng cố vị thế của mình như một tài sản quốc gia có giá trị trong lĩnh vực
điện tử chiến lược tập trung cụ thể vào Năng lượng nguyên tử, Quốc phòng, An ninh và các lĩnh vực quan trọng khác
mục tiêu
• Để tiếp tục phục vụ các nhu cầu của đất nước về sử dụng năng lượng nguyên tử vì mục đích hòa bình.
Yêu cầu đặc biệt và chiến lược của Quốc phòng và Không gian, Hệ thống An ninh Điện tử
Trang 8 trên 40
Machine Translated by Google
• Để thiết lập các sản phẩm Công nghệ mới hơn như Hệ thống quét Container và
• Tái cấu trúc công ty để trở nên cạnh tranh trong nước và quốc tế bằng
đặc biệt chú ý đến việc giao hàng, chi phí và chất lượng trong tất cả các hoạt động của mình.
• Ngoài ra, để khám phá những con đường kinh doanh mới và làm việc để tăng trưởng trong các lĩnh vực chiến lược
để làm việc hiện thực hóa các giải pháp công nghệ vì lợi ích của xã hội trong các lĩnh vực như
Nông nghiệp, Giáo dục, Y tế, Điện, Giao thông vận tải, Thực phẩm, Quản lý thiên tai
vân vân.
bộ phận
Công ty được tổ chức thành các bộ phận phục vụ các lĩnh vực khác nhau, quốc gia và
Tầm quan trọng thương mại. Họ là các Bộ phận phục vụ lĩnh vực hạt nhân như Điều khiển & Tự động
hóa Bộ phận (CAD), Bộ phận Công cụ & Hệ thống (ISD), Bộ phận Phục vụ khu vực quốc phòng như
Bộ phận Truyền thông (CND), Bộ phận Sản phẩm ăng-ten (APD), Bộ phận Hệ thống Servo
(SSD), v.v., Các bộ phận xử lý Sản phẩm Thương mại là Bộ phận Viễn thông (TCD), Bộ phận Khách hàng
xuất khẩu
ECIL hiện đang hoạt động trong các phân khúc XUẤT KHẨU kinh doanh chính như Dụng cụ và
thiết kế hệ thống, Công nghiệp/Hạt nhân, Hệ thống Servo, Sản phẩm ăng-ten, Truyền thông,
Dịch vụ
Công ty đã đóng một vai trò rất quan trọng trong việc đào tạo và phát triển các nhân viên có năng lực cao.
nhân lực kỹ thuật và quản lý đặc biệt trong lĩnh vực Máy tính và Thông tin
Công nghệ. Mặc dù lực đẩy ban đầu là đáp ứng Kiểm soát & Thiết bị
yêu cầu của Chương trình điện hạt nhân, mở rộng phạm vi tự lực theo đuổi bởi
ECIL cho phép công ty phát triển các sản phẩm khác nhau để phục vụ cho nhu cầu của Quốc phòng, Dân dụng
Hàng không, Thông tin & Phát thanh truyền hình, Viễn thông, v.v.
Trang 9 trên 40
Machine Translated by Google
Tiêu chuẩn Mã hóa Nâng cao (AES), còn được gọi là Rijndael (tên gốc của nó), là một đặc điểm kỹ thuật để mã hóa
dữ liệu điện tử do Viện Tiêu chuẩn và Công nghệ Quốc gia Hoa Kỳ (NIST) thành lập vào năm 2001.
Đối với AES, NIST đã chọn ba thành viên của họ Rijndael, mỗi thành viên có kích thước khối là 128 bit, nhưng
AES đã được chính phủ Hoa Kỳ thông qua và hiện được sử dụng trên toàn thế giới. Nó thay thế Tiêu chuẩn mã
hóa dữ liệu (DES), được xuất bản vào năm 1977. Thuật toán được AES mô tả là thuật toán khóa đối xứng, nghĩa là
Tại Hoa Kỳ , AES đã được NIST công bố là US FIPS PUB 197 (FIPS 197) vào ngày 26 tháng 11 năm 2001. Thông
báo này tuân theo quy trình tiêu chuẩn hóa kéo dài 5 năm, trong đó 15 thiết kế cạnh tranh đã được trình
AES có hiệu lực như một tiêu chuẩn của chính phủ liên bang vào ngày 26 tháng 5 năm 2002 sau khi được Bộ trưởng
Thương mại phê duyệt. AES được bao gồm trong tiêu chuẩn ISO/IEC 18033-3. AES có sẵn trong nhiều gói mã hóa khác
nhau và là mật mã mở và có thể truy cập công khai đầu tiên được Cơ quan An ninh Quốc gia (NSA)
phê duyệt cho thông tin tuyệt mật khi được sử dụng trong mô-đun mật mã được NSA phê duyệt.
Mật mã học là khoa học về mã bí mật, cho phép bảo mật thông tin
Truyền thông qua một kênh không an toàn. Nó bảo vệ chống lại các bên trái phép bằng cách
ngăn chặn việc thay đổi trái phép việc sử dụng. Nói chung, nó sử dụng mật mã
hệ thống chuyển đổi văn bản rõ thành văn bản mật mã, hầu hết thời gian sử dụng khóa.
Theo nghĩa rộng hơn, mật mã được biết đến nhiều nhất như một cách lưu giữ nội dung của một
tin nhắn bí mật. Ví dụ, tính bảo mật của truyền thông mạng là rất quan trọng
quan trọng đối với thương mại điện tử và các ứng dụng mạng khác. Tuy nhiên, các ứng dụng của
mật mã vượt xa tính bảo mật đơn giản. Đặc biệt, mật mã cho phép
mạng lưới kinh doanh và khách hàng để xác minh tính xác thực và tính toàn vẹn của các giao dịch của họ.
Nếu xu hướng thị trường điện tử toàn cầu tiếp tục, các kỹ thuật mã hóa tốt hơn
sẽ phải được phát triển để bảo vệ các giao dịch kinh doanh. Thông tin nhạy cảm được gửi qua một
mạng mở có thể bị xáo trộn thành một dạng mà tin tặc không thể hiểu được hoặc
Trang 10 trên 40
Machine Translated by Google
kẻ nghe lén. Điều này được thực hiện bằng cách sử dụng một công thức toán học, được gọi là mã hóa
thuật toán, biến đổi các bit của tin nhắn thành một dạng khó hiểu. Các
người nhận dự định có thuật toán giải mã để trích xuất thông điệp gốc. Có
nhiều ví dụ về thông tin trên các mạng mở, cần được bảo vệ theo cách này, vì
ví dụ, chi tiết tài khoản ngân hàng, giao dịch thẻ tín dụng hoặc hồ sơ thuế hoặc sức khỏe bí mật.
Hệ thống mật mã có thể cung cấp tính bảo mật, xác thực, toàn vẹn và không thoái thác
dịch vụ. Nó không cung cấp sự sẵn có của dữ liệu hoặc hệ thống.
• Bảo mật có nghĩa là các bên trái phép không thể truy cập thông tin.
• Tính xác thực đề cập đến việc xác thực nguồn gốc của thông báo để đảm bảo người gửi là
• Tính toàn vẹn cung cấp sự đảm bảo rằng thông điệp không bị sửa đổi trong quá trình
• Không từ chối có nghĩa là người gửi không thể từ chối gửi tin nhắn sau đó
ngày, và người nhận không thể từ chối nhận nó. Vì vậy, nếu ông chủ của bạn gửi cho bạn một tin nhắn
nói với bạn rằng bạn sẽ được tăng lương gấp đôi lương của bạn và đó là
được mã hóa, các phương pháp mã hóa có thể đảm bảo rằng nó thực sự đến từ sếp của bạn, rằng
ai đó đã không thay đổi nó trước khi nó đến máy tính của bạn, rằng không ai khác có thể
để đọc tin nhắn này khi nó được truyền qua mạng và sếp của bạn không thể từ chối
Trang 11 trên 40
Machine Translated by
Trang
Machine Translated by
Có hai loại thuật toán trong mã hóa, khóa bất đối xứng và khóa đối xứng.
Các phần phụ sau đây mô tả cả hai lớp và một cuộc thảo luận ngắn gọn về các thuật toán là
Trong thuật toán khóa bất đối xứng, có hai khóa. Một cái phải được công khai và nó được sử dụng để
mã hóa dữ liệu. Khóa còn lại là khóa riêng và nó được sử dụng để giải mã thông tin. TRONG
liên lạc giữa A và B, A sử dụng khóa công khai Ke của B để mã hóa tin nhắn, trong một
cách mà chỉ B (không phải A) có thể giải mã tin nhắn này bằng khóa riêng Kd của mình. hệ thống này là
cũng được sử dụng để ký tin nhắn kỹ thuật số (Mao, 2003). Rivest-Shamir-Adleman (RSA) được sử dụng rộng rãi
đã sử dụng thuật toán khóa bất đối xứng trong nhiều thập kỷ và Mật mã đường cong Elliptic (ECC) như
một thay thế cho RSA cung cấp bảo mật cao nhất với khóa có độ dài bit nhỏ.
Trong thuật toán khóa đối xứng hoặc khóa riêng, trong trường hợp thông thường, giao tiếp
chỉ sử dụng duy nhất một phím. Người dùng A gửi khóa bí mật Kc cho người dùng B trước khi bắt đầu
của giao tiếp giữa chúng. Cả hai bên đều sử dụng cùng một khóa riêng để mã hóa và
giải mã thông tin Trao đổi. Tiêu chuẩn mã hóa dữ liệu (DES) và CAST128 là
MÃ HÓA Luồng:
Mật mã dòng là một loại thuật toán mã hóa đối xứng. Mật mã dòng có thể được
được thiết kế đặc biệt nhanh, nhanh hơn nhiều so với bất kỳ mật mã khối nào. Trong khi mật mã khối
hoạt động trên các khối dữ liệu lớn, mật mã dòng thường hoạt động trên các đơn vị dữ liệu nhỏ hơn
bản rõ, thường là bit. Việc mã hóa bất kỳ bản rõ cụ thể nào bằng mật mã khối sẽ
Trang
Machine Translated by
dẫn đến cùng một văn bản mật mã khi sử dụng cùng một khóa. Với mật mã dòng,
sự biến đổi của các đơn vị bản rõ nhỏ hơn này sẽ khác nhau, tùy thuộc vào thời điểm chúng được
gặp phải trong quá trình mã hóa. Mật mã luồng tạo ra cái được gọi là khóa
luồng (một chuỗi các bit được sử dụng làm khóa). Việc mã hóa được thực hiện bằng cách kết hợp khóa
phát trực tuyến với bản rõ, thường là với phép toán XOR bitwise. Thế hệ của chìa khóa
luồng có thể độc lập với văn bản rõ và văn bản mật mã, mang lại cái được gọi là
mật mã luồng đồng bộ hoặc nó có thể phụ thuộc vào dữ liệu và mã hóa của nó, trong trường hợp đó
mật mã dòng được cho là tự đồng bộ hóa. Hầu hết các thiết kế mật mã dòng là dành cho
• Mật mã dòng xử lý thông điệp như một dòng bit và thực hiện toán học
• Hoạt động trên các đơn vị nhỏ của bản rõ, bit
• Mã hóa bằng cách vận hành trên luồng dữ liệu liên tục
• Khoảng thời gian dài không lặp lại các mẫu trong các giá trị luồng chính
KHÓA MẬT MÃ
Mật mã khối là một loại thuật toán mã hóa khóa đối xứng biến đổi một
Khối chiều dài của dữ liệu bản rõ thành một khối dữ liệu bản mã có cùng chiều dài. Cái này
Quá trình chuyển đổi diễn ra dưới tác động của khóa bí mật do người dùng cung cấp. giải mã là
Được thực hiện bằng cách áp dụng phép biến đổi ngược cho khối văn bản mật mã bằng cách sử dụng cùng
chìa khoá bí mật. Độ dài cố định được gọi là kích thước khối và đối với nhiều mật mã khối, khối
Machine Translated by
kích thước là 64 và kích thước khối tăng lên 128, 192 hoặc 256 bit khi bộ xử lý trở nên nhiều hơn
• Thao tác trên các khối văn bản thuần túy có kích thước cố định
• Chia bản rõ thành các khối và mã hóa từng khối bằng cùng một thuật toán
• Áp dụng một thuật toán mã hóa và khóa giống hệt nhau cho mỗi khối
• Các thuộc tính của một mật mã nên chứa sự nhầm lẫn và khuếch tán
hoán vị
• Các giá trị khóa không xác định khác nhau gây nhầm lẫn khi đặt các bit trong bản rõ
• Mật mã khối sử dụng hộp S. Hộp S không tuyến tính vì nó tạo đầu ra 4 bit
• Thích hợp hơn cho việc triển khai phần mềm, bởi vì chúng hoạt động với các khối
MÃ HÓA
DES hiện được coi là không an toàn đối với nhiều ứng dụng. Điều này chủ yếu là do 56-bit
kích thước khóa quá nhỏ; Chìa khóa DES đã bị hỏng trong vòng chưa đầy 24 giờ. Cũng có
một số kết quả phân tích chứng minh những điểm yếu về lý thuyết trong mật mã, mặc dù
chúng không khả thi để gắn kết trong thực tế. Thuật toán được cho là thực tế an toàn trong
hình thức của Triple DES, mặc dù có những cuộc tấn công lý thuyết. Trong những năm gần đây, mật mã đã
đã được thay thế bởi Tiêu chuẩn mã hóa nâng cao (AES).
Thuật toán tiêu chuẩn mã hóa nâng cao (AES), được chính phủ Hoa Kỳ thông qua
vào năm 2001, là một mật mã khối chuyển đổi các khối dữ liệu 128 bit thành 128 bit, 192 bit hoặc 256 bit
khóa bí mật, bằng phương pháp hoán vị và thay thế. Tháng 1 năm 1997, Quốc gia
Viện Tiêu chuẩn và Công nghệ (NIST) đã công bố bắt đầu một nỗ lực để
phát triển AES và đưa ra lời kêu gọi chính thức cho các thuật toán vào ngày 12 tháng 9 năm 1997. Sau đó
xem xét các kết quả của nghiên cứu sơ bộ này, các thuật toán MARS, RC6TM, Rijndael,
Con rắn và Hai con cá được chọn vào chung kết. Và tiếp tục xem xét phân tích công cộng của
lọt vào vòng chung kết, NIST đã quyết định đề xuất Rijndael làm Tiêu chuẩn mã hóa nâng cao mới
(AES) vào ngày 2 tháng 10 năm 2000. Dự kiến sẽ thay thế DES và Triple DES để đáp ứng yêu cầu
yêu cầu bảo mật dữ liệu chặt chẽ hơn vì mức độ bảo mật nâng cao của nó.
Vào mùa hè năm 2001, AES đã thay thế DES cũ kỹ thành Cơ quan Thông tin Liên bang
Chuẩn mã hóa xử lý (FIPS). DES được coi là sắp hết tuổi thọ, như bị nứt
mật mã của nó được coi là dễ xử lý hơn trên phần cứng máy tính hiện tại. thuật toán AES
sẽ được sử dụng cho nhiều ứng dụng trong chính phủ và trong khu vực tư nhân. Phá vỡ
một văn bản mật mã được mã hóa AES bằng cách thử tất cả các khóa có thể hiện đang được tính toán
Trang
Machine Translated by
Phần này cung cấp một giới thiệu ngắn gọn về các khái niệm toán học cơ bản của
trường hữu hạn cần hiểu. Để thảo luận sâu về chủ đề này, người ta nên tham khảo
đến Joan Daemen (1999), BrianGladman (2002) và FIPS (2001). Một số hoạt động trong AES là
được định nghĩa ở mức byte, với byte đại diện cho các phần tử trong trường hữu hạn GF(28). Khác
các hoạt động được xác định theo các từ 4 byte. Phần này giới thiệu cơ bản
các khái niệm toán học cần thiết cho thuật toán AES.
năng lượng có một trường hữu hạn duy nhất, do đó tất cả các biểu diễn của GF ( 28 ) là đẳng cấu.
Trang
Machine Translated by
Bất chấp sự tương đương này, sự biểu diễn có tác động đến việc thực hiện
sự phức tạp. Joan Daemen và Vincent Rijmen (1999) đã chọn cho đa thức cổ điển
đại diện.
Giá trị byte trong AES được biểu diễn dưới dạng một tập hợp các bit (0 hoặc 1) và được biểu diễn dưới dạng
tập hợp các bit được phân tách bằng dấu phẩy là {b7, b6, b5, b4, b3, b2, b1, b0}. Các byte này là
được hiểu là các phần tử trường hữu hạn sử dụng biểu diễn đa thức như
Ví dụ 1:
Byte có giá trị thập lục phân '57' (nhị phân 01010111) tương ứng với đa thức
x6 +x 4 + x2 +x+1--------------------------------------------------------------------------------------------------------------------------2.2
Việc bổ sung hai phần tử trường hữu hạn đạt được bằng cách thêm các hệ số cho
lũy thừa tương ứng của các biểu diễn đa thức của chúng, phép cộng này được thực hiện trong
GF(28), nghĩa là modulo 2, sao cho 1 + 1 = 0. Do đó, phép cộng và phép trừ là
cả hai tương đương với thao tác loại trừ và (XOR) trên các byte đại diện cho trường
phần tử.
Phép cộng đối với phần tử trường hữu hạn sẽ được ký hiệu bằng ký hiệu “+”.
Đa thức:
(x 6 + x 4 + x + 1) + (x 7 + x 6 + x 3 + x) = x 7 + x 4 + x 3 + 1
Phép nhân trong trường hữu hạn là phép nhân modulo một đa thức rút gọn bất khả quy
được sử dụng để xác định trường hữu hạn. (Tức là, đó là phép nhân theo sau phép chia bằng cách rút gọn
đa thức làm ước số—phần còn lại là tích.) Có thể sử dụng ký hiệu "•" để
Rijndael sử dụng trường hữu hạn đặc trưng 2 với 256 phần tử, còn có thể gọi là trường hữu hạn
Trường Galois GF(28 ). Nó sử dụng đa thức rút gọn sau đây để nhân:
8 4 3 x + x + x
+ x +1.
6 4 + x 7 6 3 + x + x
(x + x + 1). + x) =
(x
13 12 9 7 + x + x + 11 10 7 5 + x + x + 8 7 4 2 + x + x + 7 6 3 + x + x
x x x ) + (x + x) =
(x ) + (x ) + (x
13 12 9 11 10 5 8 4 2 6 3 x + x + x + x + x + x + x + x + x + x + x + x =
13 12 11 10 9 8 6 5 4 3 2 x + x + x + x + x + x + x + x + x + x + x + x
Và
13 12 11 10 9 8 6 5 4 3 2 x + x + x + x + x + x + x + x + x + x +
x 8 4 3 1 + x + x + x
+ x modulo + 1 =
x
(11111101111110 mod 100011011) = {3F7E mod 11B} = {01} = 1 (thập phân), có thể là
thể hiện thông qua phép chia dài (được hiển thị bằng cách sử dụng ký hiệu nhị phân, vì nó phù hợp với
nhiệm vụ. Lưu ý rằng OR loại trừ được áp dụng trong ví dụ chứ không phải phép trừ số học,
như người ta có thể sử dụng trong phân chia dài cấp trường.
^100011011
1110000011110
^100011011
110110101110
^100011011
10101110110
^100011011
0100011010
^100011011
00000001
(Các phần tử {53} và {CA} là số nghịch đảo của nhau vì tích của chúng
là 1.)
Trong toán học, nghịch đảo nhân của một số a, là số mà khi nhân
Ví dụ 4:
Khi tính nghịch đảo phép nhân cho một bộ số 8 bit, sẽ có một bộ 256
các giá trị byte khác nhau. Nghịch đảo nhân được sử dụng sau này trong SubByte và InvSubByte
sự biến đổi.
Bên trong, các hoạt động của thuật toán AES được thực hiện trên một mảng hai chiều của
byte được gọi là Trạng thái. Trạng thái bao gồm bốn hàng byte, mỗi hàng chứa Nb byte,
Ở đâu
Nb là chiều dài khối chia cho 32. Trong mảng Trạng thái được biểu thị bằng ký hiệu s, mỗi
byte riêng lẻ có hai chỉ số, với số hàng r trong phạm vi 0 r< 4 và cột của nó
số c trong khoảng 0 c< Nb. Điều này cho phép một byte riêng lẻ của Trạng thái được tham chiếu đến
dưới dạng Sr,c hoặc s[r,c]. Đối với tiêu chuẩn này, Nb=4, tức là, 0 c< 4
Khi bắt đầu Mật mã và Mật mã nghịch đảo, đầu vào - mảng byte in0, in1, in15 là
Đã sao chép vào mảng Trạng thái như được minh họa trong Hình 3. Các phép toán Mật mã hoặc Mật mã nghịch đảo
sau đó được tiến hành trên mảng Trạng thái này, sau đó giá trị cuối cùng của nó được sao chép vào đầu ra
Do đó, ở phần đầu của Mật mã hoặc Mật mã nghịch đảo, mảng đầu vào, in, được sao chép vào
Ở phần cuối của Mật mã và Mật mã nghịch đảo, Trạng thái được sao chép vào mảng đầu ra dưới dạng
sau:
Bốn byte trong mỗi cột của mảng Trạng thái tạo thành các từ 32 bit, trong đó hàng
Số r cung cấp một chỉ mục cho bốn byte trong mỗi từ. Nhà nước do đó có thể được
Machine Translated by
được hiểu là một mảng một chiều gồm các từ 32 bit (cột), w0...w3, trong đó
cột Số c cung cấp một chỉ mục vào mảng này. Do đó, đối với ví dụ trong Hình 2.1,
Trạng thái có thể được coi là một mảng gồm bốn từ, như Sau:
Đối với thuật toán AES, độ dài của khối đầu vào, khối đầu ra và Trạng thái
là 128 bit. Điều này được biểu thị bằng Nb = 4, phản ánh Số lượng từ 32 bit (Số cột) trong Bang.
Đối với thuật toán AES, độ dài của Khóa mật mã, K, là 128, 192 hoặc 256 bit. Các độ dài khóa được biểu thị bằng N
Đối với thuật toán AES, Số vòng thực hiện trong quá trình thực hiện của thuật toán phụ thuộc vào kích thước khóa.
bởi Nr, trong đó Nr =10 khi Nk = 4, Nr = 12 khi Nk = 6 và Nr = 14 khi Nk = 8.
1) Mở rộng khóa— các khóa tròn được lấy từ khóa mật mã Sử dụng lịch biểu khóa của Rijndael.
AES yêu cầu một khối khóa tròn 128 bit riêng biệt cho mỗi vòng cộng với
một hơn.
AddRoundKey—mỗi byte của trạng thái được kết hợp với một khối của khóa tròn bằng cách Sử dụng
bitwiSe xor.
3) Vòng
a) SubByteS
b) ShiftRowS
c) MixColumnS d)
AddRoundKey
Machine Translated by
a) SubByteS
b) ShiftRowS
c) AddRoundKey
AES là một mật mã khối lặp với kích thước khối cố định là 128 và độ dài khóa thay đổi.
Các biến đổi khác nhau hoạt động trên các kết quả trung gian, được gọi là trạng thái. Trạng thái
là một mảng byte hình chữ nhật và vì kích thước khối là 128 bit, tức là 16 byte, nên mảng
hình chữ nhật có kích thước 4x4. (Trong phiên bản Rijndael có kích thước khối thay đổi, kích
thước hàng được cố định là bốn và Số lượng cột thay đổi. Số lượng cột là
Tiêu chuẩn (AES) kích thước khối chia cho 32 và ký hiệu là Nb). Khóa mật mã được mô tả tương
tự như một mảng hình chữ nhật có bốn hàng. Số cột của khóa mật mã, ký hiệu là Nk, bằng độ dài
Trang
Machine Translated by
Điều rất quan trọng cần biết là các byte đầu vào của mật mã được ánh xạ lên các byte trạng thái theo
thứ tự a0,0, a1,0, a2,0, a3,0, a0,1, a1,1, a2,1, a3, 1 ... và các byte của khóa cipher0 được ánh xạ vào mảng
theo thứ tự k0,0, k1,0, k2,0, k3,0, k0,1, k1,1, k2,1, k3,1 Khi kết thúc
...
thao tác mật mã, đầu ra của mật mã được trích ra từ trạng thái bằng cách lấy các byte trạng thái theo cùng
một thứ tự. AES Sử dụng một Số vòng thay đổi, cố định: Một khóa có kích thước 128 có 10 vòng. Một chiếc chìa
Trong thao tác này, đầu vào dữ liệu đã cho (128 bit) được XOR theo bit với Khóa do người dùng xác định (128
Ví dụ:
Đầu vào
= 32 43 f6 a8 88 5a 30 8d 31 31 98 a2 e0 37 07 34
Khóa mật mã = 2b 7e 15 16 28 ae d2 a6 ab f7 15 88 09 cf 4f 3c 19 3d e3 be
Đầu ra
= a0 f4 e2 2b 9a c6 8d 2a e9 f8 48 08
Trang
Machine Translated by
Hoạt động của SubByteS là Sự thay thế byte phi tuyến tính, hoạt động trên từng byte của
trạng thái một cách độc lập. Bảng thay thế (S-Box) không thể đảo ngược và được xây
Trang 24 trên 40
Machine Translated by
1. Lấy nghịch đảo nhân trong trường hữu hạn của Rijndael
′
b i = bi+b(i+4) mod8+b (i+5) mod8+b(i+6) mod8+b(i+7)
mod8+ci
cho 0 < i < 8 ,trong đó bi là bit thứ i của byte và ci là bit thứ i của byte c có giá trị {63} hoặc {01100011}. Ở
đây và những nơi khác, một Số nguyên tố trên một biến cho biết rằng biến đó Sẽ được cập nhật với giá trị ở bên phải.
Ở dạng ma trận, phần tử biến đổi affine của hộp S có thể được biểu diễn dưới dạng
Trang
Machine Translated by
Trang
Machine Translated by
Trong hoạt động này, mỗi hàng của trạng thái được dịch chuyển theo chu kỳ Sang trái, tùy thuộc vào chỉ Số hàng. Hà
Sang trái 1 vị trí. Hàng thứ 3 dịch Sang trái 2 vị trí. Hàng thứ 4 được dịch chuyển 3 vị trí Sang
bên trái.
Phép biến đổi Cột hỗn hợp hoạt động trên từng cột Trạng thái, coi mỗi cột là một đa thức bốn hạng như được mô tả
trong Phần.2.2.5. Các cột được coi là đa thức trên GF(28) và nhân modulo x4 + 1 với đa thức cố định a(x), cho trước
qua
Phương trình trên có thể được mô tả dưới dạng ma trận như dưới đây
Machine Translated by
Ví dụ:
Mạch tạo khóa có chức năng tạo khóa duy nhất cho mọi thao tác vòng trong thuật toán AES.
Hoạt động của bộ mở rộng khóa (hoặc trình tạo) về cơ bản tuân theo năm bước để tạo một khóa
duy
nhất cho mỗi vòng. Người dùng xác định được cung cấp dưới dạng đầu vào cho mạch mở rộng Khóa
Lưu ý: Các giá trị RCON hoặc giá trị hằng Số Round được lấy từ Biến đổi GF. Một giá trị RCON
duy nhất được xác định trước bằng cách lấy từ Biến đổi GF cho mỗi thao tác vòng.
Machine Translated by
Chức năng chính của Thao tác thêm phím tròn là liên kết đầu ra của trình mở rộng phím được tạo bởi Mạch tạo khóa vớ
dụng cho trạng thái bằng XOR bitwiSe đơn giản. Khóa tròn được lấy từ Khóa mật mã bằng phương
tiện của lịch trình khóa. Độ dài của Khóa Vòng bằng với độ dài của khóa khối (=16 byte).
Thêm phím tròn Đầu ra được đưa ra bởi XORing của đầu ra Keyexp và đầu ra Mixcolumn . Đầu
ra ở trên là đầu ra được mã hóa của vòng 1. Đầu ra Thêm khóa vòng lại được phản hồi
lại chuyển đổi Sub Byte thông qua vòng phản hồi cho vòng hoạt động thứ 2, quá trình tương tự
được lặp lại cho đến khi hoàn thành 10 vòng hoạt động.
Machine Translated by
Trang 32/40
Machine Translated by
• Bảo mật
1. Tính bảo mật thực tế: So với các thuật toán đã đệ trình khác (cùng khóa và khối
kích cỡ).
2. Tính ngẫu nhiên: mức độ mà đầu ra của thuật toán không thể phân biệt được với một hoán
vị ngẫu nhiên trên khối đầu vào.
3. Tính hợp lý: của cơ Sở toán học cho tính bảo mật của thuật toán.
4. Các yếu tố bảo mật khác: do công chúng đưa ra trong quá trình đánh giá, bao gồm mọi cuộc
tấn công chứng minh rằng độ bảo mật thực tế của thuật toán thấp hơn độ mạnh mà người gửi
yêu cầu.
• Chi phí
1. Yêu cầu cấp phép: NIST dự định rằng khi AES được ban hành, (các) thuật toán Sẽ
được chỉ định trong AES Sẽ có Sẵn trên toàn thế giới, không độc quyền, miễn phí bản quyền.
2. Hiệu quả tính toán: Việc đánh giá hiệu quả tính toán Sẽ được áp dụng cho cả việc triển
khai phần cứng và phần mềm. Phân tích vòng 1 của NIST Sẽ tập trung chủ yếu vào việc triển
khai phần mềm và cụ thể là vào một tổ hợp kích thước khối khóa (128-128); Sẽ chú ý nhiều
hơn đến việc triển khai phần cứng và các kết hợp kích thước khối khóa được hỗ trợ khác
trong quá trình phân tích Vòng 2. Hiệu quả tính toán về cơ bản đề cập đến tốc độ của thuật
toán.
Nhận xét của công chúng về hiệu quả của từng thuật toán (đặc biệt đối với các nền tảng
và ứng dụng khác nhau) cũng Sẽ được NIST xem xét.
3. Yêu cầu về bộ nhớ: Bộ nhớ cần thiết để triển khai thuật toán ứng cử viên cho cả phần cứng và
phần mềm triển khai thuật toán cũng Sẽ được xem xét trong quá trình đánh giá. Phân tích
vòng
1 của NIST Sẽ tập trung chủ yếu vào triển khai phần mềm; Sẽ chú ý nhiều hơn đến việc triển
khai phần cứng trong Vòng 2. Các yêu cầu về bộ nhớ Sẽ bao gồm các yếu tố như Số lượng cổng cho
việc triển khai phần cứng, kích thước mã và các yêu cầu về RAM đối với việc triển khai
phần mềm.
2. Thuật toán có thể chứa các kích thước khối và khóa bổ Sung (ví dụ: kích thước khối 64 bit, kích
thước khóa khác với kích thước được chỉ định trong phần Yêu cầu về khả năng chấp nhận tối
thiểu, [ví dụ: khóa từ 128 đến 256 là bội Số của 32 bit, vân vân.])
3. Thuật toán có thể được triển khai an toàn và hiệu quả trên nhiều nền tảng khác
nhau và các ứng dụng (ví dụ: bộ xử lý 8 bit, mạng ATM, liên lạc thoại & vệ tinh,
4. Thuật toán có thể được triển khai dưới dạng mật mã dòng, trình tạo mã xác thực thông
báo (MAC), trình tạo Số giả ngẫu nhiên, thuật toán băm, v.v.
5. Sự phù hợp của phần cứng và phần mềm: Một thuật toán ứng cử viên không được hạn chế theo
nghĩa là nó chỉ có thể được thực hiện trong phần cứng. Nếu một người cũng có thể triển khai
thuật toán một cách hiệu quả trong phần Sụn, thì đây Sẽ là một lợi thế trong lĩnh vực linh hoạt.
6. Tính đơn giản: Một thuật toán ứng cử viên Sẽ được đánh giá theo tính đơn giản tương đối của
thiết kế.
AES đã chỉ định ba kích thước khóa: 128, 192 và 256 bit. Theo thuật ngữ thập phân, điều
này có nghĩa là có khoảng:
khoảng 7,2 x
lần AES
Các khóa 128 bit So với các khóa 56 bit của DES.
Vào cuối những năm 1990, các máy "DES Cracker" chuyên dụng đã được chế tạo có thể khôi phục
khóa DES Sau vài giờ. Nói cách khác, bằng cách thử các giá trị khóa có thể, phần cứng có thể
xác
định khóa nào được Sử dụng để mã hóa tin nhắn.
Giả Sử người ta chế tạo được một chiếc máy có thể khôi phục một phím DES trong một giây (tức
là thử 255 phím/giây) thì chiếc máy đó Sẽ mất khoảng 149 nghìn
tỷ (149 nghìn tỷ) năm để bẻ khóa khóa AES 128 bit. Để đưa điều đó vào quan điểm, các
Không ai có thể chắc chắn AES - hoặc bất kỳ thuật toán mật mã nào khác - Sẽ tồn tại trong bao lâu
chắc chắn. Tuy nhiên, Tiêu chuẩn mã hóa dữ liệu (DES) của NIST là tiêu chuẩn của Chính phủ Hoa Kỳ
trong khoảng hai mươi năm trước khi nó trở nên thực tế để gắn kết một Sự cạn kiệt quan trọng
tấn công bằng phần cứng chuyên dụng. AES hỗ trợ các kích thước khóa lớn hơn đáng kể So với những gì
DES hỗ trợ. Chặn mọi cuộc tấn công chống lại AES nhanh hơn mức cạn kiệt chính, Sau đó
ngay cả với những tiến bộ trong công nghệ trong tương lai, AES vẫn có khả năng duy trì an toàn tốt
• ATM
• DVDC
• Mạng an toàn
• IEEE 802.11i (Wi-Fi), IEEE 802.15.3, IEEE 802.15.4 (Zigbee), MBOA (WiMedia),
802.16e, Wibree.
• Hồ Sơ FBI
ATM:
• Một lỗ hổng bảo mật ATM phổ biến liên quan đến cái gọi là rút tiền ma, trong
tiền mặt nào được lấy từ tài khoản của chủ thẻ, nhưng cả khách hàng và
ngân hàng nhận trách nhiệm. Rút tiền ma đôi khi là kết quả của gian lận trên
một phần của khách hàng, nhưng các máy ATM cũng có thể bị lừa nhận tiền giả, hớt
hoặc thẻ nhân bản. Máy ATM tạo một tin nhắn được mã hóa, được gọi là Ủy quyền
RequeSt Cryptogram, mà nhà phát hành thẻ Sử dụng để xác thực thẻ và dữ liệu thẻ.
• Các máy ATM ban đầu Sử dụng một công thức toán học hoặc thuật toán, được gọi là Dữ liệu
Tiêu chuẩn mã hóa, để mã hóa Số nhận dạng cá nhân. DES mã hóa dữ liệu
Machine Translated by
trong các khối 64 bit Sử dụng khóa mã hóa 56 bit và đã có lúc là khóa chính thức
Tiêu chuẩn xử lý thông tin liên bang tại Hoa Kỳ . Tuy nhiên, tăng trong
Sức mạnh tính toán cho máy tính cá nhân đã khiến DES không an toàn cho ATM
các ứng dụng; ATM Sử dụng DES đã bị vi phạm trong vòng 24 giờ.
Mạng an toàn:
Mã hóa là nơi dữ liệu khó đọc bởi một bên không được ủy quyền. Từ
mã hóa có thể được thực hiện cực kỳ khó phá vỡ, nhiều phương thức liên lạc Sử dụng
cố tình mã hóa yếu hơn mức có thể hoặc có các cửa hậu được chèn vào để cho phép nhanh chóng
giải mã. Trong một Số trường hợp, cơ quan chính phủ đã yêu cầu cài đặt backdoor trong
bí mật. Nhiều phương pháp mã hóa cũng là đối tượng của cuộc tấn công "man in the middle", theo đó
một bên thứ ba có thể 'thấy' việc thiết lập liên lạc an toàn được giữ bí mật đối với
phương pháp mã hóa, ví dụ, điều này Sẽ áp dụng cho việc ngăn chặn việc Sử dụng máy tính tại một
ISP.
NHỮNG THÁCH THỨC TƯƠNG LAI: ĐIỀU GÌ NỮA BÊN NGOÀI AES ?
NIST đang trong quá trình bắt đầu một Số hoạt động mật mã khác, bao gồm một
tiêu chuẩn chỉ định các chế độ hoạt động cho mật mã khối khóa đối xứng (ví dụ: AES), một
Tiêu chuẩn HMAC, tiêu chuẩn quản lý khóa, hàm băm mới và được mở rộng
phù hợp với kích thước khóa AES và tăng kích thước khóa cho Chữ ký Số
Mã VERILOG được tối ưu hóa và tổng hợp được phát triển để thực hiện cả hai
quá trình mã hóa và giải mã. Mỗi chương trình được thử nghiệm với một Số vectơ mẫu
do NIST cung cấp và kết quả đầu ra hoàn hảo với độ trễ tối thiểu. Do đó, AES có thể
thực Sự được triển khai với hiệu quả hợp lý trên một FPGA, với mã hóa và
quá trình giải mã mất trung bình lần lượt là 320 và 340 nS (cho mỗi 128 bit). Thời gian
thay đổi từ chip này Sang chip khác và thời gian trễ được tính toán chỉ có thể được coi là gần đúng.
Thêm các đường ống dữ liệu và một Số logic tổ hợp Song Song trong bộ lập lịch và vòng chính
1) HỘP S