>_ IzzyLab

Практическое задание

Декодируй и проверь целостность

сложно

Файл /root/blob.b64 — данные в base64. Раскодируй их в /root/blob.bin, посчитай SHA-256 и сравни с ожидаемым хешем из /root/blob.sha (одна строка). Запиши MATCH или DIFF в /root/verdict.txt.

Что потренируешь:
  • base64
  • sha256sum
  • проверка целостности
  • сравнение строк
  • bash-условия

Разбор темы

Типичная проверка целостности переданного файла собирается из трёх кирпичей: сначала данные раскодируются (здесь из base64), затем считается их хеш (sha256sum даёт хеш плюс имя — имя надо отсечь), потом полученный хеш сравнивается с эталонным. По результату сравнения строк пишут вердикт. Подвох — лишние пробелы и перевод строки, которые легко попадают в переменную при чтении хеша из файла и ломают сравнение.

Что проверяется

  1. base64 раскодирован в blob.bin
  2. хеши совпали — MATCH

Как это выглядит