This paper starts with the algorithm principle of AES and the development of embedded systems based on ARM core, and studies the design principles, mathematical knowledge, overall structure, algorithm description and the advantages and limitations of AES algorithm. According to the architecture and characteristics of ARM core, the AES algorithm is optimized and designed, and the optimization method from two aspects of AES algorithm itself and its structure is proposed. In terms of the optimization of the algorithm itself, the original complex operations in the byte replacement operation, column mixing operation in the encryption module and the inverse column mixing operation in the decryption module are converted into simple circular shift, multiplication and XOR operations. In terms of algorithm structure optimization, four 32-bit registers are used on the input and output interface to perform parallel input and output optimization design for 128-bit data; the optimization design for key expansion is to use internal expansion, that is, to calculate the key of the next round while performing each round of operation, and temporarily store the key of the next round in SRAM, so that key expansion and encryption/decryption operations are performed in parallel; the optimization design for encryption and decryption is to merge the four operation table lookup operations in the round function table lookup operation into one operation table lookup operation, and at the same time, in order to make the encryption code reusable in the decryption code and save hardware resources, the process sequence consistent with encryption is used in the decryption process. According to the above optimization design, based on the ADS development environment of ARM core embedded system, the software and hardware solution of AES implementation, the implementation solution of AES encryption module and decryption module and the test solution are proposed, and the efficient programming skills and hybrid interface rules based on ARM are summarized. The algorithm is implemented in the integrated development environment, and the encryption and decryption results under the initial key of 128 bits, 192 bits and 256 bits are obtained respectively, and the correct verification is obtained. During the performance test, the algorithm was optimized by applying compiler optimization options and other optimization techniques, so that the algorithm has a higher encryption speed.
You Might Like
Recommended ContentMore
Open source project More
Popular Components
Searched by Users
Just Take a LookMore
Trending Downloads
Trending ArticlesMore