class Zip::TraditionalEncrypter
def data_descriptor(crc32, compressed_size, uncomprssed_size)
def data_descriptor(crc32, compressed_size, uncomprssed_size) [0x08074b50, crc32, compressed_size, uncomprssed_size].pack('VVVV') end
def encode(num)
def encode(num) t = decrypt_byte update_keys(num.chr) t ^ num end
def encrypt(data)
def encrypt(data) data.unpack('C*').map { |x| encode x }.pack('C*') end
def header(mtime)
def header(mtime) [].tap do |header| (header_bytesize - 2).times do header << Random.rand(0..255) end header << (mtime.to_binary_dos_time & 0xff) header << (mtime.to_binary_dos_time >> 8) end.map { |x| encode x }.pack('C*') end
def reset!
def reset! reset_keys! end