Tutorial

 :: FAÝLLARY ŞIFRLEMEK :: (1566 Reads)

Posted by mm on Saturday, August 07, 2004 - 04:10 AM

FAÝLLARY ŞIFRLEMEK
M. Çüriýew
Türkmen politehniki instituty
Ylmy ýolbaşçysy: O. Nurgeldiýew
Ýaýlym: Gurbansoltan 19, 2004

Kompýuterde islendik faýly başga biriniň ulanmagyny islemesek, onda şeýle faýllary şifrlemek zerurlygy ýüze çykýar. Mysal üçin, biziň ýazan tekstimizi ýa-da düzen maksatnamamyzy bizden rugsatsyz ulanmaklaryny islemesek, onda şifrlemek usulyndan peýdalanyp bileris.
Umuman aýdanymyzda, irki döwürlerde hem (kompýuterleriň döremezinden has öň) birek-birege hat ýazylanda olary başga biriniň okamazlygyny üpjün etmek maksady bilen ol hatlary şifrlemeklik ulanylypdyr. Şifrlemekligiň usullary örän kändir. Mysal üçin, islendik tekstdäki harplary elipbiý boýunça şol harplardan belli-bir daşlykda ýerleşen harplar bilen çalşyryp çyksak, onda emele gelen tekst düşnüksiz bir zat bolar. Oňa şifrlenen tekst diýilýär. Ol teksti okamak üçin onuň şifrleniş usulyny, başgaça aýdanymyzda onuň algoritmini hem-de ol algoritmiň ýerine ýetmegi üçin zerur bolan käbir maglumatlary(paroly) bilmelidiris.

Biz bu işimizde şeýle usullaryň birnäçesine seredip geçdik. Olardan iň ähtibarlylarynyň biri mundan takmynan ýüz ýyl öň belli iňlis matematigi hem-de ýazyjysy Lýuis Kerrol tarapyndan hödürlenen usuldyr. Onuň manysy şundan ybarat: birinji setirde latyn elipbiýiniň harplary elipbiý tertipde A,B,C,.Y,Z ýazylýar. Ikinji setirden başlap bolsa ol elipbiýiň haprlary bir harp süýşen görnüşinde ýagny ikinji setir: B,C,D,., Z,A, üçünji setir C,D,E,.,A,B we ş.m. görnüşde ýerleşdirilýär. Şeýlelikde 26 latyn harpy ulanylýan elipbiýde 26 setiri hem-de 26 sütünden ybarat bolan harplaryň tablisasy emele gelýär. Bu tablisanyň setirleri hem-de sütünleri ýene-de elipbiý tertipde latyn harplary bilen belgilenýärler.



A B C . . . Y Z

A A B C . . . Y Z

B B C D . . . Z A

C C D E . . . A B

. . . . . . . . .

. . . . . . . . .



Y Y Z A . . . W X

Z Z A B . . . X Y



Teksti bu usul boýunça şifrlemek üçin bu tablisadan başga-da parolyň hem berilmegi hökmandyr.Paroly düzýän harplar sütünden kesgitlenýär, şifrlenýän tekstiň harplary bolsa setirden kesgitlenýär. Şifrlemek şeýle bolup geçýär: parolyň(sütün) hem-de tekstiň (setir) birinji harplary alynýar. Soňra degişli sütüniň hem-de setiriň kesişmesinde ýerleşýän harp alynýar. Bu harp şifrlenen tekstiň birinji harpyny emele getirýär. Beýleki harplar hem şonuň ýaly kesgitlenýär. Adatça parol hökmünde ulanylýan sözi emele getir-

ýän harplaryň sany tekstdäki harplaryň sanyndan gysga bolýar (hakykatda bolsa onuň uzynlygy çäklendirilmeýär). Haçan-da parolyň iň soňky harpy okalandan soň, ýene-de onuň birinji harpyna geçmeklik amala aşyrylýar. Bu algoritm boýunça KARROLL sö.üni LEWIS paroly bilen şifrlesek, onda VENZGWP sözi emele geler. Eger-de biz şifrlenen tekstden asyl tekstimizi almakçy bolsak, onda öňki tablisadan, öňki paroldan hem-de öňki algoritmden peýdalanmalydyrys.



Biz bu usuly kompýuterde ulanmak maksady bilen Turbo Pascal algoritmik dilinde maksatnama düzdük. Özünem bu maksatnamada 26 latyn harplary bilen çäklenmän, eýsem kompýutyerde ulanylýan 226 simwoly(bu programmada ilkinji 30 simwoly ulanmak bolmaýar, sebäbi olar dolandyryjy simwollar) goşmak bilen ol tablisany has hem giňeltdik. Bu bolsa programmany has täsirli görkezýär. Programma esasy programmadan hem-de iki sany kömekçi programmadan ybarat. Olaryň birinjisi teksti şifrlemeklige,

ikinjisi bolsa şifrlenen teksti açmaklyga mümkinçilik berýär. Programma dialog görnüşinde ýerine ýetip ulanyja faýly şifrlemek ýada açmaklygy saýlap almaklyk hödürlenýär. Onuň saýlap alyşyna baglylykda ol ýa-da beýleki kömekçi programma ýerine ýetýär.



Bu programmanyň bir yetmezçiligi . şifrlenen programmalaryň ýerine ýetiryan meselelerini bozanok. Ol diňe programmanyň ýa-da faýlyň tekstini şifrleýär we şifrlenen programma öz öňki meselelerini ýerine ýetirýär. Şol sebäpli biziň bu programmamyzy diňe tekstleri şifrlemek üçin ulansak bolar. Programmamyzy Kerroll. Exe diýip atlandyrdyk.



Emma biz diňe bu programma bilen çäklenmän başga bir programma düzdük. Biziň soňky düzen programmamyz XOR funksiýanyň esasynda işleýär. Programmamyzyň strukturasyny aşakda görüp bilersiňiz.





USES CRT;

VAR

Fi,

Fo :FILE of byte;

Ch : BYTE;

J :BYTE;

I : WORD;

Pass : string;

BEGIN

If ParamCount:=3 then

Begin

Clrscr;

Assign (fi,Paramstr(1));Reset(fi);

Assign (fo,ParamStr(2));ReWrite(fo);

Pass i:=Paramstr (3);

I:=0;

While Nat EOF (fi) do

Begin Read (fi,ch);Inc(i);

For j:=1 to length(pass) do

Ch:=(ch XOR Ord(Pass[j]));

Write (fo,ch);

{ Goto XY(1,1);

Write (i,.BYTES in Process.); }

End;

Close(fi);

Close (fo);

End;

Else Writeln(.Parametr not found.);

End.



Biz bu programmamyzy faýl görnüşinde döretdik we oňa Shifot. Exe diýip at berdik. Programmany MS-DOS operasion sistemanyň şertlerinde ulanmak mümkin. Biziň öňki programmamyzdaky ýaly şifrlenme parolyň esasynda ýerine ýetirilýär. Şifrlenme ýerine ýetirilmeginden öň, programma şifrlenýän faýlyň öňki we ol faýlyň soňky atlaryny we parolyň girizilmegini talap edýär.



Geliň şifrlenmäniň prinsipini göreliň. XOR funksiýasy sanlaryň üstünden belli bir operasiýasyny geçirýär. Şol funksiýanyň 4 esasy operasiýasyny göreliň



1 XOR 1=0

1 XOR 0=1

0 XOR 1=1

0 XOR 0=0



Kompýuterde ulanylýan simwollaryň her biriniň 8 sandan («0» we «1» sanlaryndan) ybarat bolan kody bar. XOR funksiýasy simwollaryň kodlarynyň arasynda operasiýa geçirýär. Şonuň netijesinde başga kod (san yzygiderliligi) emele gelýär. Eger islendik bir tekstiň harplarynyň arasynda we islendik sözüň arasynda ýokarda aýdylyp geçilen operasiýany amala aşyrsak, onda netijede şifrlenen tekst emele geler.



Meselem:

«kaka» sözüni birlik san (1) bilen şifrläliň. Başda biz olaryň kodlaryny göreliň.

k – 01101011

a – 01100001

1 – 00110001



Bu ýerde 1 san klawiaturanyň simwoly.

k – 01101011 a – 01100001

XOR XOR

1 – 00110001 1 – 00110001

Z – 01011010 P – 01010000



Netijede:

kaka

1

ZPZP



Şifrlenmäniň netijesinde «kaka» sözüniň ýerine «ZPZP» harp yzygiderligini aldyk. Programmamyz şu prinsip boýunça işleýär. Bu programmamyzyň uly tapawudy . ol exe tipli faýllary hem şifrläp bilýär we olaryň işine päsgelçilik berýär.


Send this story to someone Printer-friendly page

FAÝLLARY ŞIFRLEMEK | Log-in or register a new user account | 1 Comment
Comments are statements made by the person that posted them.
They do not necessarily represent the opinions of the site editor.

Re: FAÝLLARY ŞIFRLEMEK

(Score: 1)
by Admin (adm@turkmennet.com) on Aug 09, 2004 - 08:58 AM
(User information  | Send a message http://www.turkmennet.com)
Makalan üçin sagbol Atamyrat!