Encrypting using openssl Triple-DES

Hi, I need to encrypt some data using Triple DES in ECB mode
(DES-EDE3-ECB), but I don’t know how to do it. If I create the cipher
like this:

e = OpenSSL::Cipher::Cipher.new ‘DES-EDE3’

It seems (man enc) that des-ede3 is an alias for des-ede3-cbc, so
there seems to be no way of encrypting with des-ede3-ecb?

Thanks in advance,

Dani P. wrote:

Hi, I need to encrypt some data using Triple DES in ECB mode
(DES-EDE3-ECB), but I don’t know how to do it. If I create the cipher
like this:

e = OpenSSL::Cipher::Cipher.new ‘DES-EDE3’

It seems (man enc) that des-ede3 is an alias for des-ede3-cbc, so
there seems to be no way of encrypting with des-ede3-ecb?

‘man enc’ on my system says:

    des-ede3-cbc       Three key triple DES EDE in CBC mode
    des-ede3           Three key triple DES EDE in ECB mode
    des3               Alias for des-ede3-cbc
    des-ede3-cfb       Three key triple DES EDE CFB mode
    des-ede3-ofb       Three key triple DES EDE in OFB mode

That is: “des-ede3” gives you ECB.

This is with:

ii libssl0.9.8 0.9.8g-4ubuntu3.3
SSL shared libraries

So perhaps you have some old version of openssl installed - or perhaps
you didn’t read the manpage properly.

In any case, I’d suggest that openssl-specific questions really belong
on an openssl mailing list, since this wasn’t anything to do with the
Ruby bindings.

On Tue, Oct 21, 2008 at 10:02 AM, Brian C. [email protected]
wrote:
be no way of encrypting with des-ede3-ecb?

This is with:

ii libssl0.9.8 0.9.8g-4ubuntu3.3
SSL shared libraries

So perhaps you have some old version of openssl installed - or perhaps
you didn’t read the manpage properly.

Indeed, on previous openssl versions, des-ede3 was an alias for
triple des with cbc mode.
The problem now is that ruby uses its own shared library (openssl.dll
/openssl.so). And openssl doesn’t seem to come with any file named
openssl.dll/.so, so I don’t know how to upgrade this now, especially
on Windows. :?