Keep your data secure with the new Advanced Encryption Standard (AES)

Source: Internet
Author: User

This article assumes that you are familiar with C # and bit operations.

Summary

AES (the Advanced encryption Standard) is the specification used by the National Institute of Standards and Technology for the encryption of electronic data. It is expected to become a recognized means of encrypting financial, telecommunications and government digital information. This paper presents an overview of AES and analyzes the algorithms it uses. Includes a complete C # implementation and encryption. The example of NET data. After reading this article, you will be able to encrypt with AES, test the AES based software and use AES encryption in your system.

The National Institute of Standards and Technology (NIST) established the new Advanced Data Encryption Standard (AES) specification on May 26, 2002. In this article I will provide a running AES implementation written in C # and explain in detail exactly what AES is and how the encoding works. I'll show you how to encrypt the data with AES and extend the code given in this article to develop a commercial-grade AES class. I will also explain how AES can be incorporated into your software system and why, and how to test AES based software.

Note that the code provided in this article and any other implementations based on this article are within the scope of application of the Federal Cryptographic module export control (see Commercial encryption Export Controls for details).

AES is a new encryption algorithm that can be used to protect electronic data. Specifically, AES is an iterative, symmetric key-grouping cipher that uses 128, 192, and 256-bit keys and encrypts and decrypts data in 128-bit (16-byte) groupings. The symmetric key password uses the same key to encrypt and decrypt the data, unlike the public key password using the key pair. The number of bits of encrypted data returned by a block cipher is the same as the input data. Iterative cryptography uses a looping structure in which repeated permutations (permutations) and substitution (substitutions) input data. Figure 1 shows the case where AES encrypts and decrypts a 16-bit byte block of data using a 192-bit key.

Figure 1 Parts data

AES Algorithm Overview

The AES algorithm is based on substitution and substitution. The permutation is the rearrangement of the data, instead of replacing the other with one unit of data. AES uses several different techniques to implement permutations and replacements. To illustrate these techniques, let's use the data shown in Figure 1 to discuss a specific AES encryption example. Here are the 128-bit values you want to encrypt and their corresponding array of indices:

00 11 22 33 44 55 66 77 88 99 aa bb cc dd ee ff
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

The value of the 192-bit key is:

00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 17
0 1 2 3 4 5 6 7 8 9 10 1112 13 14 15 16 17 18 19 20 21 22 23

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.