Верес, немного не понял Вас..
КС писать для каждого блока данных?
По поводу избыточнотси - делается для того что бы со стороны никто не мог редактировать бинарные данные. Т.е. КС не правильная, програ не грузит файл и сообщает об этом.
Теги в файле присутсвтуют, по сути это XML только преобразованный в свой формат (с индексацией строковых констант для уменьшения размера файла и скорости обработки).
Наличие тегов и сигнатур проверяется, а вот собственно правка бинарных данных никак не может быть выявлена. Поэтому и хочется писать КС для гарантии, что юзер будет работать
с правильной версией файла, которую мы поставили на объект. Лишить возможности редактирования в HEX редакторе.