Симетричні та асиметричні методи зашифрування інформації

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Кафедра автоматики та телемеханіки

Інформація про роботу

Рік:
2005
Тип роботи:
Курсова робота
Предмет:
Методи та засоби криптографічних перетворень
Група:
ІБ – 42

Частина тексту файла (без зображень, графіків і формул):

МІНІСТЕРСТВО ОСВІТИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА” Кафедра автоматики та телемеханіки Курсова робота з курсу: „Методи та засоби криптографічних перетворень” на тему: “Симетричні та асиметричні методи зашифрування інформації” Львів – 2005 Зміст Завдання 1 Теоретичні відомості Вибір ключів Блок-схема алгоритму Таблиця ідентифікаторів Текст програми Відкритий текст Результат зашифрування Висновок Завдання 2 Теоретичні відомості Вибір ключів Зашифрування Розшифрування Висновок Завдання 1 Вибрати ключі та розробити програму для за шифрування файлу даних заданим афінним шифром. Тип афінного шифру визначається останньою цифрою i НЗК. Об‘єм алфавіту визначається передостанньою цифрою j НЗК і дорівнює .  Тип афінного шифру — Лінійний першого порядку. Об‘єм алфавіту — . Теоретичні відомості Афінні шифри- підклас шифрів заміни, що включає, як частковий випадок шифр Віжінера і навіть шифр перестановки з фіксованим періодом. N-символьний алфавіт ототожнюємо з кільцем . А саме кожна буква замінюється своїм номером у алфавіті, причому нумерація починається з нуля. Наприклад, латинська абетка ототожнюється із , а українська із . Літера а української абетки трактується як нуль, літера б як 1, в як 2. Тепер до букв відкритого тексту ми можемо вільно застосовувати операцію додавання та множення за відповідним модулем. Лінійний шифр. Ключі: a таке, що , . Шифрування. У повідомлені кожна буква  заміщується буквою . Дешифрування. У криптотексті кожна буква  заміщуються буквою ,де . Вибір ключів  Блок-схема алгоритму  Таблиця ідентифікаторів Ідентифікатор Тип Опис  *fin FILE Вхідний файл  *fout FILE Вихідний (зашифрований) файл  blokin unsigned long Вхідний блок бітів (32 біти)  blokout unsigned long Вихідний блок бітів (32 біти)  kin int Лічильник бітів вхідного блоку (непрочитаних)  kout Int Лічильник бітів вихідного блоку (недописаних)  eofin Int Прапорець кінця файлу  xfull Int Прапорець готовності символу до запису у вихідний буфер  x unsigned long Символ (9 біт)  s[3] Char Стрічка для формування числового результату зашифрування у текстовий   Текст програми #include <stdio.h> #include <math.h> #include <conio.h> #include <stdlib.h> #include <string.h> int a=213, n=512; void main(void) { char s[3]; FILE *fin, *fout; int eofin=0, xfull=1, kin=32, kout=32; unsigned long blokin, blokout = 0, x; if ( (fin=fopen("c:\\infile.f", "rb")) == NULL ) { printf("cannot open the file data.fb"); exit(1); } else if ( (fout=fopen("c:\\outfile.f", "wb")) == NULL ) { printf("cannot open the file data.fbc"); exit(1); } else { if (fread(&blokin, 1, 4, fin) != 0) while (!eofin) { if (kin<=0) { if (fread(&blokin, 1, 4, fin) != 0) { x |= (blokin << (9+kin)) & 511; blokin >>= (-kin); kin += 32; xfull = 1 & !(kin==32); } else { eofin = 1; xfull = 1; } } else { x = blokin & 511; blokin >>= 9; kin -= 9; xfull = 1 & (kin>=0); } if (xfull) { x = (unsigned int)(fmod(a*x, n)); itoa(x, s, 10); fputs(strcat(s, " "), stdout); blokout |= x << (32-kout); kout -= 9; if (kout<=0) { fwrite(&blokout, 4, 1, fout); blokout &= 0; if (kout==0) kout = 32; else { blokout |= x >> (9+kout); kout += 32; } } } } fcloseall(); } } Відкритий текст У цьому Законі наведені нижче терміни вживаються в такому значенні: метрологія — наука про вимірювання, яка включає як теоретичні, так і практичні аспекти вимірювань у всіх галузях науки і техніки; вимірювання — відображення фізичних величин їхніми значеннями за допомогою експерименту та обчислень із застосуванням спеціальних технічних засобів; одиниця вимірювань — фізична величина певного розміру, прийнята для кількісного відображення однорідних з нею величин; єдність вимірювань— стан вимірювань, за якого їхні результати виражаються в узаконених одиницях вимірювань, а похибки вимірювань відомі та із заданою ймовірністю не виходять за встановлені межі; методика виконання вимірювань — сукупність процедур і правил, виконання яких забезпечує одержання результатів вимірювань з потрібною точністю; засіб вимірювальної техніки — технічний засіб, який застосовується під час вимірювань і має нормовані метрологічні характеристики; тип засобу вимірювальної техніки — сукупність засобів вимірювальної техніки одного і того ж призначення, які мають одині той же принцип дії, однакову конструкцію та виготовлені за однією і тією ж технічною документацією; еталон—засіб вимірювальної техніки, що забезпечує відтворення і (чи) зберігання одиниці вимірювань одного чи декількох значень, а також передачу розміру цієї одиниці іншим засобам вимірювальної техніки; державний еталон — офіційно затверджений еталон, який забезпечує відтворення одиниці вимірювань та передачу її розміру іншим еталонам з найвищою у країні точністю;вихідний еталон — еталон, який має найвищі метрологічні властивості серед еталонів, що є на підприємстві чи в організації; повірка засобів вимірювальної техніки — встановлення придатності засобів вимірювальної техніки, на які поширюється державний метрологічний нагляд, до застосування на підставі результатів контролю їхніх метрологічних характеристик; калібрування засобів вимірювальної техніки—визначення в певних умовах або контроль метрологічних характеристик засобів вимірювальної техніки, на які не поширюється державний метрологічний нагляд; метрологічна атестація засобів вимірювальної техніки — дослідження засобів вимірювальної техніки з метою визначення їхніх метрологічних характеристик та встановлення придатності цих засобів до застосування; атестація методики виконання вимірювань— процедура встановлення відповідності методики метрологічним вимогам, що ставляться до неї; вимірювальна лабораторія—організація чи окремий підрозділ організації, підприємства, що здійснює вимірювання фізичних величин, визначення хімічного складу, фізико-хімічних, фізико-механічних та інших властивостей і показників речовин, матеріалів і продукції. робочий еталон — еталон, призначений для повірки чи калібрування засобів вимірювальної техніки; Результат зашифрування (в числовій формі) 399 80 449 139 358 331 255 294 96 89 343 1 295 93 511 233 137 346 429 1 295 93 159 401 131 218 296 22 166 179 59 311 264 80 24 76 70 211 471 393 172 344 107 148 422 421 511 57 6 430 492 436 182 211 139 487 49 430 284 499 288 224 163 393 432 131 450 1 150 385 255 326 416 46 88 310 422 211 364 53 6 80 152 417 150 425 471 233 352 174 471 331 426 45 327 405 160 261 2 225 171 211 391 21 43 345 296 22 6 339 163 393 8 215 215 462 426 421 511 57 416 13 360 33 123 355 487 229 131 430 156 340 502 171 163 57 346 132 296 76 358 331 106 385 10 432 23 459 154 211 40 479 495 386 104 332 22 331 331 299 473 464 279 300 411 19 255 478 160 301 429 278 150 441 159 259 209 297 152 417 150 425 471 233 352 174 471 459 474 84 40 179 436 387 152 246 390 27 323 311 43 336 129 174 38 491 323 229 473 80 216 44 38 491 159 311 416 395 257 1 231 19 255 102 305 176 257 364 182 299 495 229 416 431 152 468 6 171 151 397 262 261 151 459 58 355 147 139 137 472 322 321 182 163 315 21 346 304 40 193 470 19 147 483 393 46 107 308 87 211 204 405 133 429 87 214 283 211 323 311 43 46 488 86 54 323 59 405 391 342 279 321 123 421 163 135 49 397 257 289 310 211 204 405 133 387 88 398 278 349 328 12 436 260 279 481 299 211 40 229 348 13 364 267 422 347 303 21 419 336 129 174 38 491 323 405 160 133 301 289 470 19 323 405 416 387 493 364 6 203 151 21 432 131 109 1 39 331 239 320 219 472 386 65 86 163 511 21 180 217 107 404 150 97 303 57 495 88 151 1 6 211 40 179 436 387 152 246 390 27 323 311 43 80 23 364 6 339 59 61 305 260 193 436 422 93 163 385 160 133 301 289 470 19 323 259 209 297 326 364 150 81 487 45 160 5 322 1 39 131 167 405 305 86 201 500 27 211 323 21 10 132 215 78 475 35 511 311 428 78 360 332 422 45 327 225 223 259 360 67 395 331 42 352 393 303 428 417 27 211 487 229 160 5 66 246 390 211 471 393 172 344 107 148 422 77 331 405 178 387 343 364 38 155 255 12 436 260 279 481 299 155 255 20 264 430 156 438 283 211 323 45 156 336 152 180 6 155 159 319 178 132 296 76 358 331 106 385 10 432 23 459 74 331 122 225 348 13 296 246 422 77 118 21 51 304 365 364 6 131 255 442 92 3 88 78 395 331 446 393 342 464 343 332 74 19 483 225 180 171 236 459 218 211 255 20 133 173 216 225 70 11 163 311 239 336 343 268 150 225 324 164 348 474 364 161 38 355 511 21 10 388 450 65 422 347 323 299 160 5 322 1 39 131 167 405 305 214 360 250 506 331 327 307 475 430 476 54 315 211 364 53 6 215 109 300 379 211 444 21 219 472 280 76 22 179 128 20 264 89 343 33 182 347 299 21 43 345 130 246 218 211 339 487 307 387 45 214 155 297 24 61 137 216 365 364 182 299 255 352 393 303 428 417 27 211 487 179 10 80 152 417 150 425 471 233 352 46 107 436 422 429 151 393 176 141 216 225 262 211 360 225 131 430 476 54 475 139 324 164 51 432 428 238 422 293 159 397 239 216 235 332 22 307 323 225 235 80 44 108 395 331 114 229 416 103 296 22 310 347 59 475 305 260 66 436 422 507 59 319 156 208 235 289 374 211 204 405 133 429 87 438 70 331 391 393 172 344 107 180 150 457 255 262 352 472 296 76 358 331 106 385 10 432 23 459 154 297 368 405 194 464 151 33 59 3 167 405 49 13 424 321 326 339 151 483 262 389 348 278 150 297 356 405 432 48 194 22 166 19 147 393 264 345 2 499 288 208 159 139 416 431 472 438 246 331 255 20 264 430 156 438 283 211 155 45 305 131 283 148 267 155 323 179 178 132 360 250 506 331 327 307 475 430 476 54 315 211 204 405 133 387 88 398 422 293 159 397 239 216 235 332 22 307 323 225 235 80 44 108 395 331 114 229 160 259 429 225 406 3 255 478 160 429 215 12 422 453 255 438 432 4 429 33 470 27 323 311 43 78 360 11 150 297 368 405 342 173 107 20 230 19 323 179 160 429 87 33 394 27 255 438 432 260 151 502 342 211 208 179 235 78 40 161 182 211 327 225 266 173 296 225 182 507 487 53 47 89 129 270 123 421 511 21 10 4 24 353 219 35 155 487 49 13 360 332 422 261 335 311 239 97 107 308 295 421 59 89 342 80 365 148 267 155 323 179 131 302 151 459 234 3 327 307 348 346 407 246 134 331 178 385 23 510 490 140 123 11 151 311 163 431 472 214 119 211 40 229 348 13 364 267 422 11 303 311 262 267 296 22 310 347 59 57 264 78 488 139 422 109 511 319 393 303 343 428 363 483 42 20 239 474 108 12 166 27 323 311 43 208 156 84 474 19 243 320 307 432 365 214 279 211 323 311 43 80 23 76 182 19 311 179 160 5 322 1 39 131 167 405 305 214 40 161 182 3 507 225 416 87 66 468 54 355 59 483 428 89 343 246 218 347 511 475 393 46 363 41 426 211 360 405 178 3 365 180 54 339 163 61 352 471 492 340 219 363 495 179 176 173 40 214 327 385 42 12 436 260 279 481 363 297 444 311 88 132 279 436 422 507 151 319 96 46 296 76 358 331 106 385 10 176 322 491 6 299 42 180 393 2 215 142 38 139 324 164 180 218 364 332 70 347 159 143 416 474 492 44 6 347 255 326 160 259 129 14 363 273 323 225 416 431 280 54 54 339 335 401 393 46 386 33 58 163 511 483 262 46 295 180 411 19 499 21 51 432 216 428 342 27 139 307 194 80 88 206 326 35 151 53 393 174 471 459 10 371 159 311 264 471 156 148 38 179 59 53 342 5 216 417 123 421 511 21 475 218 44 460 422 491 315 21 491 267 168 438 214 179 59 53 47 208 220 289 251 179 255 274 346 176 450 65 422 179 255 102 416 46 472 353 38 315 151 385 416 173 296 33 123 299 110 179 160 429 471 278 150 81 487 385 279 5 130 214 103 347 159 143 416 474 492 44 6 347 255 326 416 474 492 44 6 347 239 320 43 345 386 33 362 211 391 21 305 432 194 76 118 331 42 184 137 173 364 257 6 203 59 475 49 13 296 44 422 507 487 229 10 387 108 214 295 253 163 53 137 218 232 140 123 11 151 311 239 5 295 244 219 211 264 21 305 304 360 1 103 171 319 229 194 174 108 54 150 297 12 229 160 5 40 33 107 211 323 179 51 48 129 430 151 349 328 438 6 389 156 310 422 211 204 405 133 387 88 398 422 293 159 397 239 216 235 332 22 307 323 225 235 80 44 108 395 331 114 229 416 103 296 492 27 211 323 225 266 473 429 65 86 211 364 53 264 218 280 278 6 507 487 179 416 431 472 438 246 331 466 21 10 132 215 78 475 35 511 483 172 302 471 291 330 27 483 311 239 345 322 41 186 211 255 86 434 13 360 225 294 19 319 385 194 173 427 86 123 117 163 53 350 48 216 289 374 211 368 487 346 216 215 225 406 331 438 311 8 132 232 33 406 11 299 61 156 336 237 33 218 211 147 393 262 344 108 332 182 347 299 21 305 304 360 1 103 507 487 405 266 13 168 22 214 331 155 45 346 48 428 398 422 101 151 311 346 216 215 225 123 45 270 311 495 386 424 321 326 339 151 483 262 389 348 278 38 155 255 434 96 472 280 353 267 339 159 479 346 388 2 499 288 400 511 483 495 304 428 54 422 347 323 299 416 431 472 438 246 331 466 21 10 132 215 78 475 35 511 483 172 302 471 291 330 27 483 311 239 345 258 58 38 363 323 405 131 346 343 385 123 293 255 438 137 133 279 321 123 77 495 225 10 432 193 340 246 3 255 356 262 302 492 438 22 307 255 184 137 173 364 257 6 203 59 475 305 260 193 116 123 339 511 57 90 218 492 193 27 19 327 21 51 432 364 193 150 121 255 20 264 430 156 438 283 211 155 45 305 131 283 148 267 155 323 179 178 132 295 372 422 211 172 57 239 464 343 332 346 3 479 229 432 171 198 118 203 299 255 360 137 216 365 140 182 19 499 21 348 474 492 438 22 3 507 179 131 46 386 33 186 211 507 483 43 90 486 277 448 27 487 53 262 89 215 300 343 347 511 21 96 301 173 54 123 323 59 299 416 431 472 438 246 331 466 21 10 132 215 78 475 35 511 483 172 302 471 291 330 27 483 311 239 345 66 436 381 117 151 479 135 13 237 108 182 347 299 21 51 432 364 193 150 121 255 20 264 430 156 438 283 211 155 45 305 131 283 148 267 155 323 179 178 132 360 332 362 27 487 225 342 80 152 129 182 211 139 487 49 430 107 180 183 347 59 135 160 174 493 246 219 11 151 147 495 215 279 321 123 413 511 53 96 89 44 332 251 507 487 229 178 80 492 332 74 507 487 405 305 3 88 321 182 347 299 21 219 472 322 332 326 347 151 479 90 13 40 502 310 211 204 405 133 387 88 398 422 117 151 21 51 432 108 438 502 331 167 405 49 430 43 499 288 256 487 487 133 173 24 214 471 211 368 487 346 259 365 97 38 211 40 229 178 387 279 364 182 299 255 20 264 430 156 438 283 211 323 45 419 208 279 438 134 27 335 307 432 304 296 492 27 211 323 225 266 473 429 65 86 211 40 179 180 3 407 300 103 347 151 479 90 13 424 321 326 3 335 229 178 132 424 321 326 339 151 483 262 389 348 278 38 179 255 20 264 302 215 332 358 179 128 90 6 464 108 246 70 11 299 393 172 344 107 468 6 211 196 487 491 161 255 21 38 179 59 53 342 5 88 417 395 211 255 270 352 48 279 246 326 3 319 179 299 359 279 214 422 347 59 315 96 471 348 459 474 19 255 12 178 88 109 289 374 211 364 179 436 216 471 460 150 97 255 12 176 5 216 1 87 211 311 179 235 78 360 1 103 171 319 229 194 174 108 54 422 179 128 90 6 208 109 300 247 507 323 385 194 80 152 417 150 425 471 233 352 174 471 459 490 331 118 229 131 46 130 246 74 27 155 229 387 260 23 41 74 19 331 311 352 215 429 65 86 211 356 179 348 397 257 225 406 3 255 266 434 345 408 300 59 469 16 179 51 388 450 65 314 331 282 179 131 46 130 118 426 245 59 315 264 89 343 425 54 155 511 311 495 215 279 321 123 421 511 21 495 46 406 321 123 293 155 405 133 173 194 12 502 163 163 143 416 13 360 225 198 211 331 311 264 217 284 332 170 27 139 225 10 260 23 41 362 211 487 487 176 13 88 1 455 211 444 21 219 216 23 300 411 323 59 171 326 510 490 277 256 3 339 225 387 260 66 116 326 211 155 225 305 208 201 116 326 211 155 225 305 78 360 33 251 363 323 405 131 346 279 449 422 117 155 299 416 3 407 300 39 355 159 21 387 132 296 33 22 331 126 53 47 5 216 65 86 211 204 405 133 387 88 398 422 293 159 397 239 216 235 332 22 307 323 225 235 80 44 108 395 331 114 229 23 510 490 277 0 0 0 Висновок: під час виконання даного завдання я набув практичних навичок у написанні програми шифрування файлу даних афінним шифром (лінійним 1-го порядку). В процесі написання програми виникали певні проблеми, які я в результаті вирішив. Найскладнішою з них була реалізація зчитування 9-ти бітних символів і їх запису. Завдання 2 Зашифрувати Слово відкритого тексту за алгоритмом RSA. Слово визначається останньою цифрою і НЗК. Для генерування ключів використати числа p та q, які визначаються передостанньою цифрою j НЗК.  Слово — МЕД  Теоретичні відомості Генерування ключів. Вибирають два досить великі прості числа . Для їх добутку  значення функції Ойлера дорівнює . Далі випадковим чином вибирають елемент , що не перевищує значення  і взаємно простий з ним. Іншими словами,  є випадковим елементом із множини . Для  за алгоритмом Евкліда знаходять елемент , обернений до  в , тобто такий, що  і . Як результат покладають: Відкритий ключ: Таємний ключ:. Шифрування відбувається блоками. Для цього повідомлення записують у цифровій формі і розбивають на блоки так, що кожен блок позначає число, яке не перевищує . Якщо блок записаний у вигляді двійкового слова довжини , то повинна виконуватись нерівність . Блок  розглядається як елемент кільця  і як такий, може підноситись до степеня за модулем . Алгоритм шифрування  у системі  полягає у піднесені  до степеня . Записується це так:  Вибір ключів  Зашифрування М Е Д  16 6 5    Розшифрування  26 51 15  16 6 5   Висновок: під час виконання даного завдання я набув практичних навичок у шифруванні асиметричним шифром RSA та здійснив за шифрування та розшифрування слова МЕД згідно з завданням. Я також освоїв принцип бінарного алгоритму піднесення о степеня і зрозумів яким чином виконується операція піднесення чисел до великого степеня за модулем певного числа.
Антиботан аватар за замовчуванням

01.01.1970 03:01-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!