Ранговый код — алгебраический линейный код над полем , в общем случае — метод кодирования информации с целью защиты от помех. В настоящее время предложено использование данного кода для использования в случайном сетевом кодировании.
В отличие от других алгебраических кодов, использующих метрику Хемминга, используется новая ранговая метрика (ранговое расстояние), которое задаётся как ранг разности векторов над полем .
Ранговый код позволяет исправлять ошибки в передаваемой информационной матрице, если ранг ошибки не выше заданного.
Определения
Пусть задано — -мерное векторное пространство над полем Галуа , где — простое число, — степень простого числа, а — некоторый фиксированный базис этого поля, если его рассматривать как векторное пространство над полем .
Любой элемент можно однозначно представить как . Если обозначить совокупность всех матриц с элементами из как , то для любого вектора можно задать биекцию с помощью следующего правила:
Рангом вектора над полем будем называть ранг соответствующей матрицы и обозначать как . Данный ранг (точнее, отображение ) задаёт норму на . Данная норма задаёт на ранговую метрику:
Тогда произвольное множество {x1, x2, ..., xM} векторов из Xn назовём кодом (с кодовым расстоянием , а подпространство Xn размерности k — линейным или (n, k)-кодом.
Использование
На основе ранговых кодов были предложены некоторые новые криптосистемы (ГПТ). Также было показано, что ранговые коды можно использовать при сетевом кодировании, которое использует возможность кода исправлять ошибки с рангом не выше заданного.
Литература
Ссылки