This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMS320F280039C: TMS320F280039C - AES ALGORITHM

Part Number: TMS320F280039C
Other Parts Discussed in Thread: C2000WARE

Tool/software:

Dear TI Team

I want to use AES accelerator without DMA .

I studied about the AES example code. In that i want to use ECB mode. In example AES ECB encrypt

testVectorECB testVectorECBArray[] =
{
//
// Test Case #1 with 128 bit key
//
{
.keySize = AES_KEY_SIZE_128BIT,
.keyArray = { 0x16157e2b, 0xa6d2ae28, 0x8815f7ab, 0x3c4fcf09 },
.dataLength = 64U,
.plainTextArray = { 0xe2bec16b, 0x969f402e, 0x117e3de9, 0x2a179373,
0x578a2dae, 0x9cac031e, 0xac6fb79e, 0x518eaf45,
0x461cc830, 0x11e45ca3, 0x19c1fbe5, 0xef520a1a,
0x45249ff6, 0x179b4fdf, 0x7b412bad, 0x10376ce6 },
.cipherTextArray = { 0xb47bd73a, 0x60367a0d, 0xf3ca9ea8, 0x97ef6624,
0x85d5d3f5, 0x9d69b903, 0x5a8985e7, 0xafbafd96,
0x7fcdb143, 0x23ce8e59, 0xe3001b88, 0x880603ed,
0x5e780c7b, 0x3fade827, 0x71202382, 0xd45d7204 }
},

//
// Test Case #2 with 256 bit key
//
{
.keySize = AES_KEY_SIZE_256BIT,
.keyArray = { 0x10eb3d60, 0xbe71ca15, 0xf0ae732b, 0x81777d85,
0x072c351f, 0xd708613b, 0xa310982d, 0xf4df1409 },
.dataLength = 64U,
.plainTextArray = { 0xe2bec16b, 0x969f402e, 0x117e3de9, 0x2a179373,
0x578a2dae, 0x9cac031e, 0xac6fb79e, 0x518eaf45,
0x461cc830, 0x11e45ca3, 0x19c1fbe5, 0xef520a1a,
0x45249ff6, 0x179b4fdf, 0x7b412bad, 0x10376ce6 },
.cipherTextArray = { 0xbdd1eef3, 0x3ca0d2b5, 0x7e5a4b06, 0xf881b13d,
0x10cb1c59, 0x26ed10d4, 0x4aa75bdc, 0x70283631,
0xb921edb6, 0xf9f4a69c, 0xb1e753f1, 0x1dedafbe,
0x7a4b3023, 0xfff3f939, 0x8f8d7d06, 0xc7ec249e }
}
};

In above that plaintext as input key array as key value and cipher Text as output. Is the above things are correct or not?

I use AES on line tool mentioned in the below link
legacy.cryptool.org/.../aes-step-by-step

Our requirement AES 128 - Encrypt 10 rounds
But i put the above values in the tool , then i didn't get the output value correctly.

Kindly clarify the working of AES module in TMS320F280039C

Thanks and regards,

B.Punitha

  • Hi,

    Apologies for the late response. Please refer to the AES reference test example from our C2000Ware against the device. You can use the settings configured there as a reference for your example. 

    <C2000Ware_Installtion_Dir>\driverlib\f28003x\examples\aes\

    Hope this response resolves the issue you maybe facing. 

    Thanks & Regards

    Pramod 

  • Hi,

    Already i executed the sample code. In that code for given key and input value the output values comes corectly.

    But while i tried to enter the above value in the on line AES tool, I faced the below errors

    1. I couldn't enter the input value

    2. While in enter the first line input then the encrypted value not correct.

    I used the on line tool link  https://legacy.cryptool.org/en/cto/aes-step-by-step

    So only i asked the working of the AES module.

    I want to know the steps followed in the module?

    Thanks and regards,

    B.Punitha

  • Hi,

    While providing the dataset and trying to match it with the online tools, please note that the data needs to be given by reversing the endianness of the data and key in order to match the plain text - cipher text - key set. I would suggest to get these values to the online tool you are using after swapping the data post endianness reversal. Once you have a working combination with the example values, you can then provide any other data values similarly.

    To answer your query on the working of the AES module on TMS320F280039C: Yes. It is working and has been verified with the NIST test vectors and match.

    Thanks & Regards

    Pramod