Ассемблер¶
С помощью GNU Assembler (GAS) или Netwide Assembler (NASM) в ОС Linux создать утилиту обработки файлов, которая реализует один из перечисленных ниже алгоритмов:
Для минимальной оценки — XOR-шифрование. Запускаться она должна так:Шифрование: $ ./xorc -e <входной файл> <зашифрованный файл> Расшифровка: $ ./xorc -d <зашифрованный файл> <расшифрованный файл> В результате содержимое входного и расшифрованного файлов должно быть идентичным.
Иначе — по вариантам:
- Вариант 1 — Шифрование алгоритмом TEA
Шифрование: $ ./tea -e <исходный файл> <зашифрованный файл> Расшифровка: $ ./tea -d <зашифрованный файл> <расшифрованный файл> В результате содержимое исходного и расшифрованного файлов должно быть идентичным.
- Вариант 2 — Дельта-кодирование
Получение дельта-файла: $ ./deltac <исходный файл> <измененный файл> <дельта-файл> Наложение дельта-файла: $ ./deltac -d <исходный файл> <дельта-файл> <результирующий файл> В результате содержимое измененного и результирующего файлов должно быть идентичным.
- Вариант 3 — BSD-checksum
Вычисление суммы: $ ./bsdsum <исходный файл> <файл с сумой> Проверка суммы: $ ./bsdsum -c <файл с сумой> <файл> - результат (true или false) выводится на экран
- Вариант 4 — CRC-32 checksum
Вычисление суммы: $ ./crc32sum <исходный файл> <файл с сумой> Проверка суммы: $ ./crc32sum -c <файл с сумой> <файл> - результат (true или false) выводится на экран
- Вариант 5 — Adler-32 checksum
Вычисление суммы: $ ./adler32sum <исходный файл> <файл с сумой> Проверка суммы: $ ./adler32sum -c <файл с сумой> <файл> - результат (true или false) выводится на экран