
Untitled
By: a guest on
May 16th, 2012 | syntax:
None | size: 1.11 KB | hits: 13 | expires: Never
require 'rubygems'
require 'openssl'
require 'base64'
require 'crypt/rijndael'
def enc_this
key = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
iv = '1111111111111111'
stage0 = "some shit we want to encode"
puts "stage0: " + stage0
stage1 = pad_data(stage0)
puts "stage1: " + stage1
stage2 = b64safe(stage1)
puts "stage2: " + stage2
stage2debug = b64safe(stage2)
puts "stage2: " + stage2debug + " (debug plaintext base64)"
stage3 = Crypt::Rijndael.new( key, 128, 128 ).encrypt_string(stage2, iv)
puts "stage3: " + stage3
stage4 = Base64.encode64(stage3).strip!.gsub!(/\n/, '')
puts "stage4: " + stage4
end
def pad_data(data, size = 16)
pad = size - data.length % size
padding = '_'.strip.gsub(/\n/, '') * pad
return padding + data
end
def b64safe(data)
mash = Base64.encode64(data)
if mash !~ /\n/
return mash
else
mash.strip!.gsub!(/\n/, '')
return mash
end
end
enc_this