А так уже приходилось использовать разные варианты: хемминг 16 бит - в 22 (последний раз - еще на ДВК, ассемблер). Рида-Соломона (?) 4 байта на 512 - выдрал из схемы контроллера 100-мегабайтных дисков от СМ1420, есть вариант на Си. Сейчас работаю с hsiao кодами для NAND flash. На основной блок данных он считается аппаратно, хотел защитить служебную информацию.