From: Joshua Mckinney Date: 2010-07-02T07:38:43+09:00 Subject: Re: Mimic AES_ENCRYPT and AES_DECRYPT functions in Ruby Awesome, could not find .pack in the 1.9.1 documentation. Everything is now working. Here is all the code for 1.9.1: def mysql_encrypt(s, key=@key) encrypt(s, mysql_key(key)) end def mysql_decrypt(s, key=@key) puts s decrypt(s, mysql_key(key)) end protected def aes(m,k,t) c = OpenSSL::Cipher::Cipher.new('aes-128-ecb').send(m) c.key = k c.update(t) + c.final end def encrypt(text, key) aes(:encrypt, key, text).unpack("H*") end def decrypt(text, key) aes(:decrypt, key, [text].pack("H*")) end def mysql_key(key) final_key = "\0" * 16 key.length.times do |i| final_key[i%16] = (final_key[i%16].ord ^ key[i].ord).chr end final_key end Thanks for you help Rob Rob Biedenharn wrote: > ["9eb667b7f0f89f204dc182a0fcef5b6859ec5d3de655e86ffb4ecd92399af4b5 > "].pack("H*") > => "\x9E\xB6g\xB7\xF0\xF8\x9F M\xC1\x82\xA0\xFC\xEF[hY\xEC]=\xE6U\xE8o > \xFBN\xCD\x929\x9A\xF4\xB5" > > Rob Biedenharn > http://agileconsultingllc.com > Rob@AgileConsultingLLC.com > http://gaslightsoftware.com > rab@GaslightSoftware.com -- Posted via http://www.ruby-forum.com/.