Method: Rex::Text.b32encode
- Defined in:
- lib/rex/text.rb
.b32encode(bytes_in) ⇒ Object
Base32 encoder
1076 1077 1078 1079 1080 1081 1082 |
# File 'lib/rex/text.rb', line 1076 def self.b32encode(bytes_in) n = (bytes_in.length * 8.0 / 5.0).ceil p = n < 8 ? 5 - (bytes_in.length * 8) % 5 : 0 c = bytes_in.inject(0) {|m,o| (m << 8) + o} << p [(0..n-1).to_a.reverse.collect {|i| Base32[(c >> i * 5) & 0x1f].chr}, ("=" * (8-n))] end |