Parent

Class/Module Index [+]

Quicksearch

Rex::Encoder::Xor

This class performs basic XOR encoding.

Public Class Methods

encode(*args) click to toggle source

wrap that in a wanna be static class

# File lib/rex/encoder/xor.rb, line 17
def self.encode(*args)
        self.new.encode(*args)
end

Public Instance Methods

encode(data, badchars = '', opts = { }) click to toggle source

This method encodes the supplied data, taking into account the badchar list, and returns the encoded buffer.

# File lib/rex/encoder/xor.rb, line 32
def encode(data, badchars = '', opts = { })
        self.raw      = data
        self.badchars = badchars
        self.opts     = opts

        # apply any transforms to the plaintext data
        data = _unencoded_transform(data)

        self.encoded, self.key, self.fkey = encoder().find_key_and_encode(data, badchars)

        # apply any transforms to the encoded data
        self.encoded = _encoded_transform(encoded)

        return _prepend() + encoded + _append()
end
encoder() click to toggle source

Return the class associated with this encoder.

# File lib/rex/encoder/xor.rb, line 24
def encoder()
        self.class::EncoderKlass
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.