Корегуючі коди формуються шляхом введення значної надлишковості в дані, що передаються, цифрові потоки можуть зростати в два і більше раз. Крім того, вони працюють з блоками обмеженої довжини і при певних конфігураціях помилок або не виявляють їх зовсім, або невірно інтерпретують характер помилок. Це робить їх майже непридатними для перевірок цілісності даних в умовах одночасної дії завад та можливого несанкціонованого порушення цілісності даних.
Другий метод припускає наявність каналу зворотного зв'язку і знаходить своє застосування в каналах з достатньо малою імовірністю помилки у випадку, якщо цю імовірність помилки необхідно ще знизити.
Така ситуація часто виникає в обчислювальних мережах і в Інтернеті.
Типове значення імовірності помилки на біт без кодування в обчислювальних мережах складає 10-6. Використання простих кодів з невеликою надмірністю дозволяє досягти вірогідності 10-9 і нижче.
Найчастіше при цьому використовуються методи, що ґрунтуються на підрахунку контрольних сум. Контрольна сума - деяке значення, розраховане з|із| послідовності даних шляхом застосування певного алгоритму, яке використовується для перевірки правильності передачі даних. Популярність використання контрольних сум для перевірки цілісності даних обумовлена тим, що подібна перевірка просто реалізовується і добре підходить для виявлення загальних помилок, викликаних наявністю шуму в каналах передачі даних або спробами несанкціонованої зміни даних. Слід зазначити, що застосування контрольних сум вносить мінімальну надлишковість в дані, що передаються, тому навіть у випадку повторної передачі цифрові потоки можуть бути значно меншими у порівнянні з корегуючими кодами.
Контрольні суми можуть використовуватись і для перевірки цілісності файлів, яка може бути порушена в результаті дій зловмисника, оскільки задача виявлення помилок в каналі передачі ідентична задачі перевірки цілісності файлів на диску комп'ютера.
Циклічні коди, можуть використовуватись як для кодування з виправленням помилок так і для формування контрольних сум. Але як показано вище метод з формуванням контрольних сум має переваги в комп'ютерних обчислювальних мережах. Для формування контрольних сум використовують циклічні надлишкові CRC (Cyclic redundancy code) коди [2-3], які вже стали основою багатьох стандартів. Тому ці коди і вибрані для подальшої реалізації та дослідження.
В якості аналога для розробки програмного продукту було обрано програму FastCRC Library. Ця програма призначена для захисту файлів шляхом формування контрольних сум з використанням майже всіх відомих популярних алгоритмів для формування контрольних сум - CRC32, CRC16, CRC16C, MD5 та інших [5]|.
Основним недоліком FastCRC Library є складність її використання через функціональну перевантаженість. Також до недоліків можна віднести відносно низьку швидкість кодування, оскільки для формування контрольних сум використовуються поліноми високої степені, а також закритість кодів цієї програми та необхідність придбання ліцензії на право їх використання.
У розробці дана проблема вирішується за рахунок використання для формування контрольної суми лише поліномів не вище восьмої степені (CRC4, CRC8), що дозволить спростити інтерфейс користувача, а також підвищити швидкість кодування. Використання поліномів вищого ступеня не має сенсу, оскільки до даних, що передаються по мережі, апаратні засоби та операційна система сама добавляє CRC-код, а для перевірка цілісності даних на диску достатньо і поліномів невисокої степені. Також програмний продукт випереджає аналог за таким параметром як сумісність з різними типами апаратних та програмних платформ, оскільки розробка нового програмного продукту планується на мові програмування C# у середовищі програмування Miscrosoft Visual Studio 2008, що дасть можливість використовувати бібліотеки Microsoft.NET Framework, які забезпечують перенесення програми на більшість апаратних та програмних платформ.
Основні технічні показники аналога і нової програми наведені в таблиці 1.1
Таблиця 1.1 - Основні технічні показники аналога і нової програми
Показники
Од. виміру
Аналог
Нова розробка
Відношення параметрів нової розробки до параметрів аналога
Складність використання
Вимагає спеціальної підготовки
Не вимагає спеціальної підготовки
+
Швидкість кодування
сек.
60
30
1/5
Сумісність з різними апаратними і програмними платформами
%
50
90
1/18
Отже, програма, що розробляється має ряд суттєвих переваг перед аналогом. Вона не вимагає спеціальної підготовки, має вищу швидкість кодування за рахунок використання поліномів не вище восьмої степені, а також високу сумісність нової програми з найсучаснішими апаратними та програмними платформами, що досягається за рахунок використання бібліотеки Microsoft .NET Framework. вищу швидкість кодування за рахунок використання поліномів не вище восьмої степені
Вимоги до програмного забезпечення будуть розроблятись з урахуванням існуючих на сьогоднішній день машинних ресурсів і тому мінімальні вимоги до апаратури можуть бути дещо завищені. Але оскільки такі проекти розробляються на перспективу, потрібно враховувати прогрес у розвитку апаратних засобів, щоб не відставати від конкурентів.
Для рішення задачі розробки програми для захисту даних з використанням циклічних CRC кодів будемо використовувати програмне забезпечення перераховане в табл. 1.2.
Таблиця 1.2 - Перелік програмного забезпечення
Найменування
Призначення
Microsoft Windows XP
Операційна система (ОС)
Visual Studio 2008
Середовище програмування
С#
Мова програмування
Операційною системою для програми, що розроблюється, вибрана Microsoft Windows XP. Можливості ОС Windows XP достатньо широкі: це і запуск програм, і переключення між задачами, і управління вікнами, і організація зручного оточення, а також, робота в мережі та інше Вона являється найбільш оптимальною операційною системою для вирішення, існуючих задач.
До складу програмних засобів повинні входити оптимальні для реалізації існуючих задач засоби. Програма, розроблена за допомогою середовища програмування Visual Studio 2008. Мова програмування вибрана С#, оскільки вона забезпечує як високу швидкість розробки, так і добрі швидкісні характеристики програмного продукту. Крім того, висуваються такі вимоги:
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13