Спосіб завадостійкого кодування дискретної інформації із захистом
Номер патенту: 50203
Опубліковано: 25.05.2010
Автори: Семеренко Василь Петрович, Дубров Олександр Федорович
Формула / Реферат
Спосіб завадостійкого кодування дискретної інформації із захистом, в якому на боці передавача кодують k-розрядні інформаційні вектори множенням на (n-k)-розрядний породжувальний поліном циклічного (n,k)-коду і шифрують їх, а на боці приймача декодують отримані з каналу зв'язку n-розрядні кодові вектори діленням на (n-k)-розрядний породжувальний поліном циклічного (n,k)-коду і дешифрують їх, який відрізняється тим, що після кодування шифрують n-розрядні кодові вектори порозрядним додаванням по модулю два до них секретного n-розрядного вектора пароля, а перед декодуванням дешифрують порозрядним додаванням по модулю два до отриманих з каналу зв'язку n-розрядних кодових векторів цього ж n-розрядного вектора пароля.
Текст
Спосіб завадостійкого кодування дискретної інформації із захистом, в якому на боці передавача кодують k-розрядні інформаційні вектори множенням на (n-k)-розрядний породжувальний полі 3 вектори множенням на (n-k)-розрядний породжувальний поліном циклічного (n,k)-коду і шифрують їх, а на боці приймача декодують отримані з каналу зв'язку n-розрядні кодові вектори діленням на (n-k)-розрядний породжувальний поліном циклічного (n,k)-коду і дешифрують їх, причому після кодування шифрують n-розрядні кодові вектори порозрядним додаванням по модулю два до них секретного n-розрядного вектора паролю, а перед декодуванням дешифрують порозрядним додаванням по модулю два до отриманих з каналу зв'язку n-розрядних кодових векторів цього ж nрозрядного вектора паролю. Спосіб здійснюється наступним чином. Спочатку на боці передавача виконується завадостійке кодування заданих інформаційних векторів l(х). Для завадостійкого кодування дискретної інформації використовується циклічний (n,k)-код, над полем Галуа GF(2) з мінімальною кодовою відстанню dmin, який задається r-розрядним породжувальним поліномом g(x)=g0+g1x+g2x2+... +gr-1xx-1+grxr, r=n-k. Кодовий вектор C(x)=(c1,c2,...,cn) циклічного коду має довжину n, інформаційну розмірність k і дозволяє виправляти всі випадкові помилки кратdmin 1 ності 1 2,..., min ( min , ). 2 Для завадостійкого кодування використовується несистематичне кодування циклічних кодів, тобто для отримання n-розрядного кодового вектора С(х) необхідно протягом n тактів часу заданий k-озрядний інформаційний вектор І(х) перемножити на породжувальний поліном g(x): C(x)=I(x) g(x). (1) Перевагою несистематичного кодування в циклічних кодах є нероздільність інформаційних і контрольних розрядів, що забезпечує одночасно і захист даних в каналі зв'язку. Секретність переданих даних буде забезпечена лише при умові збереженні у секреті породжувального полінома. Якщо зловмиснику стане відома ця інформація, йому стануть відомими закодовані інформаційні вектори. Тому для практичного використання захисту інформації на основі циклічних кодів необхідні додаткові заходи підвищення криптостійкості. Після кодування виконується шифрування за допомогою додавання до n-розрядного кодового вектора С(х) секретного n-розрядного вектора паролю Р(х) і в канал зв'язку передається nрозрядний захищений кодовий вектор Т(х): Т(х)=С(х) Р(х), (2) де позначає порозрядну логічну операцію по модулю два. Порозрядна логічна операцію по модулю два виконується послідовно, починаючи із тих розрядів вектора Т(х), які першими передаються в канал зв'язку. Тому операція (2) вимагає додатково лише один такт часу. На боці приймача отриманий із каналу зв'язку вектор Тch(х) спочатку дешифрується, тобто з нього виділяється кодовий вектор Cch(x) за допомогою додавання до n-розрядного вектора Т(х) секретного n-розрядного вектора паролю Р(х): 50203 4 Cch(x)=Tch(x) P(x). (3) Операція (3) виконується послідовно, починаючи з тих розрядів вектора Tch(x), які першими надходять із каналу зв'язку. Операція (3) вимагає додатково лише один такт часу, на відміну від відомого способу, в якому операція дешифрування вимагає додатково k тактів часу. При декодуванні із кодового вектору Cch(x) виділяється початковий інформаційний вектор І(х) діленням кодового вектора Cch(x) на породжувальний поліном g(x): Cch ( x) (4) I( x) R( x) . g( x) Якщо в результаті ділення (4) буде отримано нульовий вектор синдрому R(x), це буде свідчити, що передача даних по каналу зв'язку виконана без min помилок, тобто Cch(x)=C(x). При отриманні ненульового вектора синдрому R(x) далі виконується процедура пошуку помилок в кодовому векторі в межах коректуючої здатності вибраного коду. Якщо операція (3) не буде виконана, тоді результатом декодування вектора Tch(x) буде завжди ненульовий вектор синдрому R(x), що не дасть можливості а ні визначити правильність передачі даних по каналу зв'язку, а ні відновити інформаційний вектор I(х). Оскільки n-розрядний вектор паролю Р(х) може бути вибрано довільним, існує 2n варіантів такого вибору. Для одного кодового вектора С(х) шифрування за допомогою операції (2) забезпечує вищий ступінь захисту, оскільки важче підібрати nрозрядний вектор паролю Р(х), ніж k-розрядний допоміжний поліном псевдовипадкової гами у відомому способі (n>k). Можна також періодично змінювати вектор паролю Р(х) для кожного кодового вектора С(х), як і у відомому способі змінюються допоміжні поліноми. У відомому способі зменшується завадостійкість коду саме тому, що на боці приймача першою здійснюється операція декодування, внаслідок чого невиявлені декодером помилки спричиняють додаткові спотворення інформації під час дешифрування. У запропонованому способі такі ситуації неможливі і тому зберігається початкова завадостійкість кодування. Розглянемо спосіб завадостійкого кодування дискретної інформації із захистом на прикладі циклічного (15,11)-коду з породжувальним поліномом g(x)=1+x+x4=11001. Нехай задано 11-розрядний інформаційний вектор I(x)=11110001010. Виконаємо несистематичне кодування для отримання 15-розрядного кодового вектора С(х) згідно (1): С(х)=(11110001010) (11001)=10000110111101 0. Далі виберемо 15-розрядний вектор паролю Р(х)=001101110001001, обчислимо 15-розрядний захищений кодовий вектор Т(х) згідно (3): T(х)=(100001101111010) (001101110001001)= 101100011110011 Нехай після передачі даних отримано вектор Tch(x)=101100011110011 і знайдемо кодовий вектор Cch(х) згідно (4): 5 50203 Cch(x)=(101100011110011) (001101110001001) =100001101111010 Виконаємо декодування отриманого кодового вектора згідно (2): I( x) Cch ( x) g( x) 1000011011 11010 1111000101 . 0 11001 Ми отримали також нульовий вектор остачі (R(x)=00000), що свідчить про відсутність помилок передачі. Комп’ютерна верстка М. Ломалова 6 Якщо виконати декодування вектора Tch(x), тоді буде отримано такий результат: Tch ( x) 1011000111 10011 1101011100 . 0 g( x) 11001 Ми отримаємо також ненульовий вектор остачі (R(x)=01011), що не дасть змоги перевірити правильність передачі кодового вектора. Підписне Тираж 26 прим. Міністерство освіти і науки України Державний департамент інтелектуальної власності, вул. Урицького, 45, м. Київ, МСП, 03680, Україна ДП “Український інститут промислової власності”, вул. Глазунова, 1, м. Київ – 42, 01601
ДивитисяДодаткова інформація
Назва патенту англійськоюMethod for antinoise coding of discrete data with protection
Автори англійськоюSemerenko Vasyl Petrovych, Dubov Oleksandr Fedorovych
Назва патенту російськоюСпособ помехоустойчивого кодирования дискретной информации с защитой
Автори російськоюСемеренко Василий Петрович, Дубров Александр Федорович
МПК / Мітки
МПК: H03M 13/00
Мітки: завадостійкого, захистом, інформації, кодування, дискретної, спосіб
Код посилання
<a href="https://ua.patents.su/3-50203-sposib-zavadostijjkogo-koduvannya-diskretno-informaci-iz-zakhistom.html" target="_blank" rel="follow" title="База патентів України">Спосіб завадостійкого кодування дискретної інформації із захистом</a>
Попередній патент: Пристрій для зняття і установлення важеля лопатки напрямного апарата гідротурбіни
Наступний патент: Спосіб підвищення цитопротекції слизової оболонки товстої кишки у експериментальних тварин
Випадковий патент: Система диспетчеризації, централізованого контролю, моніторингу і телеметрії