Am following the instructions on https://datatracker.ietf.org/doc/html/rfc5649#section-3 ("AES Key Wrap with Padding Algorithm") and I have gotten to a point where I need to generate the
LSB(32,A) for the Alternative Initial Value (AIV). Am using NodeJS with buffers to implement the algorithm. My understanding is
32-bits === buffer.length == 4 or in other words, length 4 of buffer is the 32-bits referenced in the article. I have padded the key after converting it buffer then padding with the length value of
8 - (length % 8) with
0s as value as indicated in the article. Now the thing I have not been able to figure out is getting the value of
32-bit MLI. How do I get the
MLI, I just know its
Message Length Indicator but thats all I know about it.
const key = Buffer.from('base64 key', 'base64'); const kek = Buffer.from('A65959A6', 'hex');
Now here I have only
MSB(32, A) but not
LSB(32, A), how do I get the value, and is there anything I am doing wrong, please help I have already spent alot of time trying to figure this out.
Scenario: Let's say my key length is 75, now I have to pad the remaining 5 characters for it to be multiples of 8, now how do I generate
LSB(32, A) in this case?