aes-cbc-256 mode descryption without an IV

Tim Webber 72911e at gmail.com
Mon Mar 25 00:20:43 UTC 2019


I just posted a message which i have copied below to a python forum.  It
might be better asked here.  The coles notes version of my question is this:

I have received an encrypted data file (mydata.encrypted) and a key (plain
text for now) and the following command to decrypt it:

openssl enc -d -aes-256-cbc -a -in mydata.encrypted -out mydata.decrypted
-kfile my_symmetric_key

Question is this.  How is the initialization vector calculated?  This
command works fine.  My issues is that i dont know how the initialization
vetor is calculated.  I suspect if its left out there is some default way
of doing it.  Can you tell me how its done? Thanks!

************************* ORIGINAL QUESTION to python community
******************

I have received an encrypted data file (mydata.encrypted) and a key (plain
text for now) and the following command to decrypt it:

openssl enc -d -aes-256-cbc -a -in mydata.encrypted -out mydata.decrypted
-kfile my_symmetric_key

The people who encrypted these data did so with openssl but I dont know
what the encrypt command looks like. I do know that the above command does
decrypt the data successfully though.

I want to use Python to decrypt this file. I am thinking of using
cryptodome but am open to suggestions. Here's what i know from the above
openssl decrypt command.

- its uses AES cbc 256 mode for the decryption ( -d )
- it uses base64 to encode the data "AFTER" (-a) the cryptographic operation
- it does not specify the initialization vector (IV).

I am struggling with how to code for this using python. What I suspect is
my problem is that i dont know how to properly calculate the IV. Looking at
the openssl documentation they say to see "key derivation" to find out how
they handle IV when its not specified. I cant track down this key
derivation information. Any help will be appreciated!
*******************************
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mta.openssl.org/pipermail/openssl-users/attachments/20190324/111c0c8b/attachment-0001.html>


More information about the openssl-users mailing list