# File lib/dnsruby/resource/NSEC3.rb, line 19 def encode32hex(str) str.gsub(/\G(.{5})|(.{1,4}\z)/mn) do full = $1; frag = $2 n, c = (full || frag.ljust(5, "\0")).unpack('NC') full = ((n << 8) | c).to_s(32).rjust(8, '0') if frag full[0, (frag.length * 8 + 4).div(5)].ljust(8, '=').upcase else full.upcase end end end