Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Контрольные работы » Розробка програмної реалізації криптографічного алгоритму ГОСТ 28147-89 у режимі гамування зі зворотним зв'язком

Реферат Розробка програмної реалізації криптографічного алгоритму ГОСТ 28147-89 у режимі гамування зі зворотним зв'язком





crptstream); ( keystream); (datastream); ();

return 0;

}

// ---------- Функція зчитування даних з файлу з доповненням --------------------

void ADDFILE (FILE * flow, short ost, DWord MES [2]) {times; (int i = 0; i <2; i + +) [i] = 0x0; = (short) floor ((double) ost/4); (times == 1) {(part, 4,1, flow); ES [0] = * (DWord *) (part);

} (ost% 4! = 0) {(part, ost% 4,1, flow); (int s = ost% 4; s <4; s + +) [s] = NULL; [times] = * (DWord *) (part);

}

fseek (flow, 0, SEEK_SET);

}

// ------------------- Функція визначення довжини файлу ----------------- ---

DWord FILESIZE (FILE * flow) {size; (flow, 0, SEEK_END); = ftell (flow); (flow, 0, SEEK_SET); size;

}

// -------------------- Функція різниці двох 512 бітових чисел --------------

void DICRIMENT (Word P [32], Word Q [32], Word RES [32]) {CUR_RES [32] = {0x0,}; ZAEM = 0x0; (int e = 0; e <32; e + +) {(P [e]

} {_RES [e] = P [e]-Q [e]-ZAEM; = 0x0;

}

} (e = 0; e <32; e + +) [e] = CUR_RES [e];

}

// ------------------- Функція множення двох 256 бітових чисел ---------------

void MULTIPLE (Word Mn1 [16], Word Mn2 [16], Word RES [32], Word R) {_ptr.BL32 = 0; BUF = 0x0; Previece_ST_part = 0, Current_ML_part = 0 ; CUR_RES [32] = {0x0,}; (int j = 0; j <16; j + +) {(int i = 0; i <16; i + +) {(i == 0) {_RES [15 + j] = Previece_ST_part; _ST_part = 0;

}

} (int e = 0; e

}

// ----------------------- Функція обчислення 256 бітового модуля 512 бітового числа --------- ------

void TAKE_MODULE (Word NUMBER [32], Word OST [16], Word MOD [16]) {ii = 31, jj = 15; K [16] = {0x0,}, CUR_MOD [ 32], CUR_NUM [32]; (int

} (CUR_NUM, CUR_MOD, CUR_NUM);

} {[ii-jj] = CUR_NUM [ii]/MOD [jj]; (K, MOD, CUR_MOD, 32); (CUR_NUM, CUR_MOD, CUR_NUM);

}

} (i = ii; i> = ii-14; i -) {_MOD [i] = CUR_MOD [i-15]; _MOD [i-15] = 0x0;

} (CUR_NUM, CUR_MOD, CUR_NUM);

}

};

} (CUR_NUM [ii] == 0x0) {(ii == 0); -;

} (i = 15; i> = 0; i -) [i] = 0x0;

} (i = 15; i> = 0; i -) [i] = CUR_NUM [i];

}

// --------------------- Функція обчислення 256 бітового модуля ступеня 2...


Назад | сторінка 13 з 14 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Реалізація криптографічного алгоритму &ГОСТ 28147-89& в режимі гамування
  • Реферат на тему: Розробка передавача на автогенераторі зі зворотним трансформаторної зв' ...
  • Реферат на тему: Розпізнавання образів за допомогою неординарного алгоритму та програмної ре ...
  • Реферат на тему: Розробка маршрутної технології виготовлення деталей &Пластина (SNUN 090304) ...
  • Реферат на тему: Проектування підсилювача з одноканальної зворотним зв'язком