Files
metasploit-gs/lib/msf/core/encoding/xor.rb
T
2011-11-20 12:32:06 +11:00

31 lines
459 B
Ruby

module Msf
module Encoding
###
#
# This class provides basic XOR encoding facilities and is used
# by XOR encoders.
#
###
class Xor
#
# Encodes a block using XOR.
#
def Xor.encode_block(key, block, block_size = 4, block_pack = 'V')
offset = 0
oblock = ''
while (offset < block.length)
cblock = block[offset, block_size].unpack(block_pack)[0]
cblock ^= key
oblock += [ cblock ].pack(block_pack)
end
return oblock
end
end
end end