Техника защиты компакт-дисков от копирования

         

Финал[Y81] [n2k82]


В листинге 2.25Ниже приведен законченный примерм использования корректирующих кодов на практике, пригодный для решения реальных практических задач.

Листинг 21.25. Пример вызова функций библиотеки ElByECC.DLL из своей программы

/*----------------------------------------------------------------------------

 *

 *                демонстрация ElByECC.DLL

 *                ========================

 *

 *    данная программа  демонстрирует  работу  с  библиотекой  ElByECC.DLL,

 * генерируя избыточные коды Рида-Соломона на основе пользовательских данных,

 * затем умышленно искажает их и вновь  восстанавливает.

 *    количество разрушаемых байтов передается в первом параметре командной

 * строки (по умолчанию - 6)

----------------------------------------------------------------------------*/

#include <stdio.h>

#include "ElByECC.h"                           // декомпилировано МЫЩЪХем

#define _DEF_DMG    6                          // рушить по умолчанию

#define N_BYTES_DAMAGE    ((argc>1)?atol(argv[1]):_DEF_DMG)    // сколько байт

                                                               // рушить?

main(int argc, char **argv)

{

    int a;

    char stub_head[HEADER_SIZE];               // заголовок сектора

    char user_data[USER_DATA_SIZE];            // область польз. данных

   

    struct RAW_SECTOR_MODE1 raw_sector_for_damage;       // сектор для искажений

    struct RAW_SECTOR_MODE1 raw_sector_for_compre;       // контрольная копия сект.

   

    // TITLE

    //------------------------------------------------------------------------

    printf("= ElByECC.DLL usage demo example by KK\n");

   

    // инициализация пользовательских данных

    //------------------------------------------------------------------------

    printf("user data initialize...............");

    for (a = 0; a < USER_DATA_SIZE; a++) user_data[a] = a;   // user_data  init

    memset(stub_head, 0, HEADER_SIZE); stub_head[3] = 1;     // src header init



Содержание  Назад  Вперед







Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий