vanvanov
Когда-то же надо начать таким заниматься. Уже 6 лет программирую на Питоне в качестве хобби.
Ну, вот ты говоришь про бинарные файлы и мне становится понятно, что ты не понимаешь, что это. А это ведь такая обширная тема и по ней лучше начинать с чего-то облегчённого, с чего-то с подсказками и разжёванным до каждого бита материалом. Что ты знаешь, например, о little- и big-endian при хранении бинарных файлов на диске и в памяти программы? Вот ты знаешь, что они просто могут различаться? Это маловероятно, что ты это знаешь. А когда работаешь с бинарными файлами, причём с файлами из реального мира, а не с учебными, это всё надо представлять и учитывать. И длина этих байтовых последовательностей может меняться: в памяти программы хранится одно по длине, а сохраняется другое. За пять минут это всё не объяснишь.
И дальше ты вдруг пишешь, что они “шифруются”. То есть тут, я думаю, ты имеешь в виду не шифрование, а кодирование или конвертацию. Они там не зашифрованы, в том-то и дело, а ты пишешь про шифрование. Это для тебя это выглядит как шифры, а для опытного разработчика это выглядит как обычные данные. Не все данные являются чистыми; во многих данных наряду с чистыми участками лежит мусор, который не используется, который там для забивки пространства. И я знаю, что вместо чтения данных ты увидишь этот мусор и подумаешь, что это данные какие-то, и будешь пытаться этот мусор разгадывать. И что ты разгадаешь в нём? Он просто для забивки лежит там, чтобы структуры в программе ровно в памяти заполнялись. И мусор бывает в виде отдельных байт, а также мусор бывает в виде групп битов
внутри одного байта, когда там используются только некоторые биты в качестве битовых полей. А ты будешь при этом сидеть и разгадывать значение этого байта, будто там смысл какой-то есть; а он будет просто наполовину замусорен неиспользуемыми битами.
И вот чтобы это всё знать, это нужно начинать с простых учебных задачек про работу с битами через битовые операции.