AES 1.2.5.1 Release Notes
June 14, 2012
Introduction, License, Standard, and Export Control Information Known Issues, Documentation, What's New, Upgrade and Compatibility Information, Host Support, Device Support, Validation Information, Benchmarks, Versioning, Technical Support and Product Updates
Introduction
The AES component provides block cipher encryption and decryption for little and big endian c64x+ processors. The component supports key sizes of 128, 192, and 256 bits; input text in 128 bit blocks and output text in 128 bit blocks.
back to top
License, Standard, and Export Control Information
License Information:
- The AES code provided within this package is based on the open source AES code provided by OpenSSL release 0.9.8h, which can be found at http://www.openssl.org/source/. License information for the source provided in this component can be found in the Software Manifest. All advertising materials mentioning features or use of this software must display the following acknowledgement: "This product includes cryptographic software written by Eric Young (eay@cryptsoft.com)".
Standards Information:
Export Control Information:
- This component contains cryptographic elements subject to export control. At the time of providing this component all software-related elements are classified under the general ECCN# 5D002. All documentation-related elements are classified under the general ECCN# 5E002. It is the responsibility of the shipping party to obtain necessary export control approvals based upon the component's end-use application.
back to top
Known Issues
None.
back to top
Documentation
The following documentation is available:
Release notes from previous releases are also available in the relnotes_archive directory.
back to top
What's New
Current Changes
The following changes have been made in release 1.2.5.1:
- Fixed compiler option of allkey for GCArmv7A.
Previous Changes
The following changes have been made in release 1.2.5.0:
The following changes have been made in release 1.2.4.0:
- Use ti.mas.pktutl istead of ti.mas.util.
The following changes have been made in release 1.2.3.0:
- Modified copyright text with BSD licensing information.
The following changes have been made in release 1.2.2.0:
- Fixed bug in LE Inverse Key output
- Support ELF
The following changes have been made in release 1.2.1.0:
- Added API function aesInvKey()
- Updated package to support latest XDC tools version 3.20.00.41
- Added C66 support.
The following changes have been made in release 1.1.0.0:
- Updated package to support latest XDC tools version 3.16.02.32
- Added TIArmv6 support.
The following changes have been made in release 1.0.0.2:
- Added c55x support
- Updated package to support latest XDC tools version 3.10.2
- Fixed bug in c64x+ LE 256-bit key expansion preventing proper formation of round keys
- Fixed unit test bug preventing 256-bit key decryption tests from running
- Fixed unit test bug which caused test vectors to be profiled for cycles more than once
- Added component licensing, test plan, and export control information
- Removed unused package dependencies
Release 1.0.0.1 provided the following:
- Optimized c64x+ decryption
- Big and little endian supported
- ~35% improvement over C model for decryption key expansion function
- ~29% improvement over C model for decryption function
- Improved performance of c64x+ encryption functions
- ~2% for encryption key expansion function
- ~5% for encryption function
- Reworked AES unit test to provide more accurate cycle profiling numbers
Release 1.0.0.0 provided the following:
- Optimized AES encryption for c64x+ big and little endian
- AES decryption for c64x+ big and little endian
- Support for 128, 192, and 256 bit keys
- C model encryption supports small encryption table for memory savings (~3K bytes)
back to top
Upgrade and Compatibility Information
Warning: Beginning with AES 1.0.0.2 the aes_a.a* library for c64x+ LE and BE implementations is no longer provided. This library has had its name reverted back to aes_c.a* with the upgrade to the new XDC toolset.
This ti.mas.aes version is not backward compatible with the last released version. The compatibility key has been changed from 2.0.0.0 -> 3.0.0.0. This package follows a new packaging standard which is incompatible with previous version as the Version definition has been changed from V.R.X.P --> M.m.X.P.
Please note that the package compatibility keys are independent of XDC product release numbers.
Package compatibility keys are intended to:
- Enable tooling to identify incompatibilities between components, and
- Convey a level of compatibility between different releases to set end user expectations.
Package compatibility keys are composed of 4 comma-delimited numbers - M, S, R, P - where:
- M = Major - A difference in M indicates a break in compatibility. The package consumer is required to re-write its source code in order to use the package.
- S = Source - A difference in S indicates source compatibility. The package consumer’s source code doesn't require change, but does require a recompile.
- R = Radix - A difference in R indicates an introduction of new features, but compatibility with previous interfaces is not broken. If libraries are provided by the package, an application must re-link with the new libraries, but is not required to recompile its source.
- P = Patch - A difference in P indicates that only bugs have been fixed in the latest package and no new features have been introduced. If libraries are provided by the package, an application must re-link with the new libraries, but is not required to recompile its source.
back to top
Host Support
The current XDC toolset can be used to build components on the following hosts:
back to top
Device Support
This release supports the following device families:
back to top
Validation Information
This release was built and validated using the following components:
Component Dependencies
AES
- ti.mas.types 5.5.3.0 (Common data type definitions)
- ti.mas.swtools 4.6.0.12 (Internally used s/w tools)
- ti.mas.secutil 1.1.2.0 (Common security utilities)
- ti.mas.pktutl 2.1.1.0 (Common Packet utilities)
AES Test Simulation
- ti.mas.types 5.5.3.0 (Common data type definitions)
- ti.mas.secutil 1.1.2.0 (Common security utilities)
- ti.mas.aes 1.2.4.0 (Advanced Encryption Standard unit to be tested)
- ti.mas.sdk 3.3.4.0 (test infrastructure software)
Tool Dependencies for Source Release
- XDC Tools version 3.20.07.86
- RTSC Packaging Standard version 1.00.00
- XDAIS version 5.21
- C6x Code Generation Tools version 7.2.2
- C55x Code Generation Tools version cgen410
- C54 Code Generation Tools version 4.10
- TI TMS470 Code Generation Tools version 4.6.1
back to top
Benchmarks
The following benchmarks were taken for this release:
- For cycle and memory benchmarks of the AES algorithms please refer to the AES test simulation documentation link provided in the 'Documentation' section of this document. The cycle and memory data can be found under the 'Related Pages" tab.
back to top
Versioning
This product's version follows a version format, M.m.x.p, where M is a single digit Major number, m is single digit minor number, x is single digit vertical numbner and p is a single digit patch number
Please note that version numbers and compatibility keys are NOT the same. For an explanation of compatibility keys, please refer to the 'Upgrade and Compatibility Information' section.
back to top
Technical Support and Product Updates
Contact local TI Field Application Engineer for technical support.
back to top
Copyright 2012, Texas Instruments Incorporated