Subversion Repositories Kolibri OS

Rev

Blame | Last modification | View Log | Download | RSS feed

  1. <html>
  2. <head>
  3. <title>áèáëèîòåêà äëÿ øèôðîâàíèÿ ôàéëîâ ïî àëãîðèòìó DES</title>
  4. <meta http-equiv="content-type" content="text/html; charset=WINDOWS-1251">
  5. <style>
  6. body
  7. {
  8.   font-size: 15px;
  9.   font-family: "Bookman Old Style";
  10.   color: black;
  11.   text-align: justify;
  12. }
  13. h1 { color: green; font-size: 23px; }
  14. h2 { color: green; font-size: 21px; }
  15. h3 { color: green; font-size: 19px; }
  16. h4 { color: #803f00; font-size: 17px; }
  17. i { color: #0099cc; }
  18. b { color: #0099cc; }
  19. p {
  20.   text-indent: 1em;
  21.   margin-top: 3px;
  22.   margin-bottom: 2px;
  23.   margin-left: 0px;
  24.   margin-right: 0px;
  25. }
  26. ol, ul, dl{
  27.   margin-top: 3px;
  28.   margin-bottom: 2px;
  29. }
  30. pre
  31. {
  32.   padding: 2px;
  33.   padding-left: 20px;
  34.   margin-top: 5px;
  35.   margin-bottom: 5px;
  36.   margin-left: 0px;
  37.   margin-right: 0px;
  38.   font-family: "Courier New";
  39.   font-size: 15px;
  40.   color: #004000;
  41.   background-color: #ffd0ff;
  42. }
  43. table { font-size: 15px; }
  44. </style>
  45. </head>
  46.  
  47. <body>
  48.  
  49. <h1>Îãëàâëåíèå</h1>
  50. <ul>
  51. <li>Âñòóïëåíèå</li>
  52. <li><a href="#fun">Ôóíêöèè</a><br>
  53. <ul>
  54. <li><a href="#f_en">des_encryption</a></li>
  55. <li><a href="#f_de">des_decryption</a></li>
  56. <li><a href="#tabl_e">Òàáëèöà ýêñïîðòà</a></li>
  57. </ul>
  58.  
  59. <h1>Âñòóïëåíèå</h1>
  60. <p>Áèáëèîòåêà äëÿ øèôðîâàíèÿ ôàéëîâ ïî àëãîðèòìó DES (Data Encryption Standard) — ñèììåòðè÷íûé àëãîðèòì øèôðîâàíèÿ.</p>
  61. <p>Äîêóìåíòàöèÿ îáíîâëÿëàñü 05.03.13.</p>
  62.  
  63. <h1><a name="fun">Ôóíêöèè</a></h1>
  64.  
  65. <h4><a name="f_en">des_encryption</a></h4>
  66. <p>Ôóíêöèÿ øèôðîâàíèÿ ôàéëîâ. Ïðèìåð èñïîëüçîâàíèÿ:</p>
  67. <pre>txt_key db 'des_2013',0
  68. mem_key rb 120
  69. ...
  70. mov eax,[open_file_size]
  71. shr eax,3
  72. stdcall [des_encryption], txt_key,mem_key,[open_file],eax</pre>
  73. <p>ãäå:</p>
  74. <p><b>txt_key</b> - âõîäíîé êëþ÷ 64 áèò</p>
  75. <p><b>mem_keys</b> - ïàìÿòü äëÿ ôîðìèðîâàíèÿ 16 ïîäêëþ÷åé (ðàçìåð 120 áàéò)</p>
  76. <p><b>[open_file]</b> - óêàçàòåëü íà ïåðâûé øèôðóåìûé 8 áàéòíûé áëîê</p>
  77. <p><b>eax</b> - ÷èñëî áëîêîâ äëÿ øèôðîâàíèÿ (<i>[open_file_size]</i> - ðàçìåð ôàéëà)</p>
  78.  
  79. <h4><a name="f_de">des_decryption</a></h4>
  80. <p>Ôóíêöèÿ ðàñøèôðîâûâàíèÿ ôàéëîâ. Ïðèìåð èñïîëüçîâàíèÿ:</p>
  81. <pre>txt_key db 'des_2013',0
  82. mem_key rb 120
  83. ...
  84. mov eax,[open_file_size]
  85. shr eax,3
  86. stdcall [des_decryption], txt_key,mem_key,[open_file],eax</pre>
  87. <p>ãäå:</p>
  88. <p><b>txt_key</b> - âõîäíîé êëþ÷ 64 áèò</p>
  89. <p><b>mem_keys</b> - ïàìÿòü äëÿ ôîðìèðîâàíèÿ 16 ïîäêëþ÷åé (ðàçìåð 120 áàéò)</p>
  90. <p><b>[open_file]</b> - óêàçàòåëü íà ïåðâûé ðàñøèôðîâûâàåìûé 8 áàéòíûé áëîê</p>
  91. <p><b>eax</b> - ÷èñëî áëîêîâ äëÿ ðàñøèôðîâàíèÿ (<i>[open_file_size]</i> - ðàçìåð ôàéëà)</p>
  92.  
  93. <h1><a name="tabl_e">Òàáëèöà ýêñïîðòà</a></h1>
  94. <p>Ïðèìåð òàáëèöû ýêñïîðòà, ðàñ÷èòàííîé íà èñïîëüçîâàíèå ìàêðîñà <b>@use_library</b>:</p>
  95. <pre>align 4
  96. import_des:
  97.         des_encryption dd sz_des_encryption
  98.         des_decryption dd sz_des_decryption
  99. dd 0,0
  100.         sz_des_encryption db 'des_encryption',0
  101.         sz_des_decryption db 'des_decryption',0</pre>
  102.  
  103. </body>
  104. </html>