Операция XOR с использованием двоичных файлов в LUA - PullRequest
0 голосов
/ 17 марта 2020

Я пытаюсь создать двоичный файл XOR, взяв двоичный файл в качестве входных данных, выполнить операцию XOR и записать в другой файл, а также после того, как это будет сделано, необходимо полностью изменить весь процесс, читая xor_file в качестве ввода и записывая в файл , это будет то же самое, что и исходный файл.

Я пытался прочитать файл в формате HEX, но преобразовать и записать его в новый файл.

local out = assert(io.open(arg[2], "wb"))
local f = assert(io.open(arg[1], "rb"))
local block = 10
while true do
  local bytes = f:read(block)
  if not bytes then break end
  for b in string.gmatch (bytes, ".") do
    local value = string.format("%02X ", string.byte(b))
    io.write(value)
    out:write(value)               
  end          
end
assert(out:close())
...