Edukira joan

Lankide:Joseba.makazaga/Proba orria

Wikipedia, Entziklopedia askea

4.1.2 Zatigarritasuna. Zenbaki lehenak

[aldatu | aldatu iturburu kodea]


multzoa zatiketarako itxia ez bada ere, badira kasu batzuk non zenbaki oso batek beste bat zehazki zatitzen duen. Esaterako, -ak -a zehazki zatitzen du (). Hau da, zati 4 egitean, zatiduratzat zenbaki osoa eta hondartzat lortuko ditugu.


Definizioa. zenbakiak emanik, izanik, esango dugu zenbakiak zenbakia zatitzen duela, eta adieraziko dugu, baldin Hori gertatzen denean, esango dugu zenbakia zenbakiaren zatitzaile bat dela, edo zenbakia zenbakiaren multiplo bat dela.
Hitzarmena. idazten dugunean, dela suposatuko dugu.

  • bada, berehala egiazta daiteke emaitza hau:


Ondoko teoreman zatigarritasunaren propietate batzuk frogatuko ditugu.

Teorema. [propietateak] emanik,

  1. ; ; . ()
  2. . ()
  3. . ()
  4. . ()
  5. . ()


Froga.

  1. Hortaz,   eta . Bestalde, Hortaz,   .
  2. Hasteko daukagu, , hau da,
  3. Kasu honetan daukagu, .
  4. Edozein emanik,
  5. Edozein emanik,


  • emanik, adierazpenari zenbakien konbinazio lineal deituko diogu.

    zenbakiak eta zenbakiak zatitzen baditu, [propietateak]-5 Teoremaren arabera, zenbakiak eta zenbakien edozein konbinazio lineal zatituko du. Propietate hori zabal daiteke honela:

  • emanik, adierazpenari zenbakien konbinazio lineal deituko diogu.

    zenbakiak zenbakiak zatitzen baditu, zenbakiak zenbakien edozein konbinazio lineal zatituko du:


Adibidea. [Grimaldi4.20] Ba al daude ekuazioa betetzen duten zenbaki osoak?

Demagun zenbaki oso horiek daudela. , eta betetzen direnez, ere beteko litzateke; baina hori ez da gertatzen. Hortaz, ez daude ekuazioa betetzen duten zenbaki osoak.
Definizioa. Izan bedi , .

Esango dugu zenbaki lehena dela bere zatitzaile positibo bakarrak eta badira: eta esango dugu zenbaki konposatua dela ez bada lehena:
Adibidea. zenbaki konposatua da, delako eta , , , , eta zatitzaileak dituelako.

zenbaki lehena da, delako eta bere zatitzaile positibo bakarrak eta direlako.
Hurrengo Teoreman zenbaki lehenen eta konposatuen arteko erlazio bat frogatuko dugu.

Teorema. [lekon] Zenbaki konposatu orok zatitzaile lehenen bat dauka. Hau da, , emanik,

Froga.

Izan bedi zatitzaile lehenik ez duten zenbaki oso konposatu guztien multzoa: Frogatuko dugu, absurdora eramanez, dela.

Demagun dela. multzoa multzoaren azpimultzo ez-hutsa denez, ordena onaren printzipioaren arabera, multzoak lehen elementua izango du, .

denez, konposatua da; beraz, badaude, non den, izanik.

da multzoaren minimoa eta da; beraz, beteko da. Hortaz, lehena da edo zatitzaile lehenen bat dauka.

lehena bada, lehena da eta betetzen da.

zenbakiak zatitzaile lehen bat badauka, lehena da eta eta ; hortaz, .

Bi kasuetan kontraesan bat aurkitu dugu, zenbakiak ez baitauka zatitzaile lehenik. Hortaz, da, eta zenbaki konposatu orok zatitzaile lehenen bat badauka.

Teorema. (Euklides, Elementuak, IX, 20)

Infinitu zenbaki lehen daude.

Froga.

Absurdora eramanez frogatuko dugu.

Suposa dezagun zenbaki lehenen kopurua finitua dela: .

Izan bitez eta .

Orduan, , dugu eta, hortaz, , ; hortik , aterako dugu. Beraz, konposatua da. [lekon] Teoremaren arabera, badago zenbaki lehenen bat, non betetzen den.

Orduan, eta betetzen dira; hortaz, ere beteko da. Baina dugu; beraz, dugu; eta hori ezinezkoa da delako.

Beraz, zenbaki lehenen kopuruak ezin du kopuru finitua izan. Hau da, infinitu zenbaki lehen daude.

4.3 RSA algoritmoa

[aldatu | aldatu iturburu kodea]

Mezuak zifratzeko erabiltzen den sistema ezaguna da RSA algoritmoa eta aritmetika modularraren aplikaziotzat har daiteke.

Zenbaki handien faktorizazioa lan nekeza da, hau da, zenbaki handi baten zatitzaile diren zenbaki lehenak zein diren ezagutzeko ez dago algoritmo azkarrik, ondorioz, lehenak diren zenbakiak banan banan hartu eta zenbaki handiaren zatitzaile diren ala ez begiratzea beste erremediorik ez dago. RSA algoritmoaren segurtasuna horretantxe oinarritzen da: zenbaki oso handia aukeratzen du algoritmoak, eta bere zatitzaile diren zenbaki lehenenetatik eratorritako aritmetika modularreko eragiketak baliatzen ditu mezuak zifratzeko.

RSA algoritmoaren jatorria

[aldatu | aldatu iturburu kodea]

1977. Urtean Ronald Rivest, Adi Shamir eta Leonard Adleman-ek sortutako kriptografia-sistema da RSA. Zenbaki handien faktorizazioa eragiketa motela den heinean kriptografia-sistema segurua da eta, lehen esan bezala, Zenbaki-Teorian eta Aritmetika Modularrean oinarritzen da. Terminologia aldetik esan behar da enkriptatzea eta zifratzea sinonimotzat erabili ohi direla. Mezu zifratua (enkriptatua) mezua jaso behar duenak bakarrik ulertuko du, eta ulertezina izango da gainerakoentzat. Gakoetan oinarritutako zifratze sistema da, eta bi gako ezberdin erabiltzen ditu, bata publikoa da eta zifratzeko erabiltzen da. Bestea, ordea, sekretua da, eta deszifratzeko beharrezkoa da. Beraz sistema asimetrikoa da.

Mezua jaso behar duenak sortu behar ditu gakoak. Hartzailearen gakoak dira, beraz, prozesuan erabiliko diren gakoak.

RSA algoritmoaren oinarri teorikoak

[aldatu | aldatu iturburu kodea]

Zifratze-deszifratze prozesuaren oinarrian Euler-Fermat teorema dagoela esan dezakegu, bai eta Eulerren funtzioaren propietate bat ere. Eta horrez gain, zenbaki baten alderantziko modularraren adierazpena ere kontuan izan behar da eta sistema eraginkorra izan dadin berreketa modularra era eraginkorrean programatzea komeni da.

Teorema. Izan bedi non eta zenbaki lehenak diren, eta izan bedi eta izan bedi , orduan beteko da .

Froga.

Teoreman zehaztu da zenbakia eta bi zenbaki lehenen biderketa dela, beraz, badakigu dela. Bestalde, denez, alderantziako modularraren definizioaren arabera izango da, eta ondorioz, badakigu badagoela zeinarentzat beteko den , eta beraz, beteko da. Berdintza horretako bi aldeeetan modulua kalkulatzen badugu: Badakigu, ordea, euler-Fermat teoremaren arabera, eta lehen erlatiboak badira, orduan, dela. Kontuan izan behar da, dela eta, beraz, ez dago zatitzaile komunik eta zenbakien artean, ondorioz, bi zenbakiak lehen erlatiboak dira eta Euler-Fermaten teorema aplikatuz iritsiko gara bila genbiltzan berdintzara: .

Teorema horretan oinarritzen da RSA algoritmoa: mezua bidali beharrean mezu zifratua bidaltzea proposatzen du algoritmoak, eta hori deszifratzeko kalkulatzea nahikoa da, bai baitakigu dela.

Gako publikoa eta gako pribatua

[aldatu | aldatu iturburu kodea]

Demagun kodeak adierazten duela zifratu nahi dugun mezua. RSA algoritmoaren oinarriak kontuan hartuz, berreketa modularra erabiliz kalkulatu beharko luke mezua bidali nahi duenak. Beraz, zenbakiek ezagunak izan behar dute. Hain zuzen ere gako publikoak bi zenbaki horiexek dira.

Mezua deszifratzeko kalkulatu beharko du mezua jaso duenak. Izan ere, badakigu Euler-Fermat-en teoremaren eta alderantzizko modularraren definizioaren ondorioz, dela, non . Beraz, mezu zifratua deszifratzeko behar den informazioa zenbakiek osatzen dute; gako pribatua horixe da hain zuzen ere.

Gako publikoa ezagutzera ematen bada, alegia zenbakiakak publikoak badira, zenbakiaren deskonposaketa eginez eta zenbakiak ezagutu daitezke, eta ondorioz ere ezagutzea lortuko genuke. Hori guztia ezagutuz, deszifratzeko falta zaigun bakarra zenbakia da, eta denez, hori ere ezagutzea lortuko genuke. Hau da, gako publikoa ezagutzera emanaz gako pribatua ezagutzeko bidea ematen da. Nola esango dugu, bada, mezua sekretua dela? Sekretu izaera zenbaki sekretua kalkulatzeko behar den denborak ematen dio: lehen esan bezala, zenbakia oso handia bada, bere faktorizazioa egiteak eskatzen duen denbora ikaragarria da. Alegia, gako publikoak argitaratu arren bere faktorizazioa egin beharko litzateke eta horrek denbora gehiegi behar du. Ondorioz, , eta ezezagunak izango dira, eta ezin izango da kalkulatu.

Esandakoaren arabera, zenbakia ezagutu arren, eta ezkutuan geratzen dira, bai eta ere, ondorioz ezagutzera eman arren ezkutuan gordetzen da, izan ere ezagutzeko multzoan -ren alderantzizkoa kalkulatu beharko genuke, baina multzo hori ezkutuan geratu da.

Gako publikoak eta pribatuak sortzeko prozesua

[aldatu | aldatu iturburu kodea]

Adierazi dugun bezala, bete behar da, horrek ziurtatzen baitu , non .

Gako publikoa zenbakiek osatzen dute, Beraz, zenbakia zehaztu eta ezagutzera eman behar da. Baina ezezaguna izan dadin, aukeratu behar den zenbakiak oso handia izan behar du, bestela, bere faktorizazioa denbora onargarrian egin ahal izango litzateke eta ondorioz kalkulatu ahal izango litzateke.

Hori gerta ez dadin, oso handia aukeratu behar da, hau da, bai eta bai zenbaki lehenak izateaz gain zenbaki oso handiak aukeratu behar dira. Horrela, ezin izango da denbora laburrean kalkulatu. Kontuan izan behar da faktorizazioa beti egin daitekeela, alegia, ezaguna bada, faktorizazioa egin daiteke, baina handia den heinean, faktorizazio horrek denbora luzea hartuko du.

Beraz, zenbakia zehazteko, zenbaki lehenak aukeratu behar izan ditugu, eta bi zenbaki horiexek zehazten dute zenbakia, bai eta multzoa ere.

Orain eta zenbakiak aukeratu behar dira. Bete behar duten baldintza da . Eta horretarako, eta zenbakiek elkarren artean lehen erlatiboak izan behar dute, alegia, bete behar da.

Laburbilduz, prozesuak urrats hauek ditu:

  1. Aukeratu zenbaki lehenak eta oso handiak
  2. Aukeratu zenbakiaren lehen erlatiboa izango den zenbakia.
  3. Kalkulatu zenbakia
  4. Publikatu gako publikoak eta ondo jaso gako pribatuak.

Mezu zifratua bidaltzeko prozesua

[aldatu | aldatu iturburu kodea]

Norbaiti, demagun Jasoneri, RSA algoritmoa erabiliz mezu zifratua bidali nahi badiogu, Jasonek bere RSA gakoak aukeratuta izan behar ditu, eta gako publikoak ezagutzera emanda izan behar ditu. Jasonek lan hori egina baldin badauka, bere gako publikoak ezagunak izango dira, eta ondorioz, guk gure mezua Jasonek deszifratzeko moduan zifratu ahal izango dugu.

Guk mezuari dagokion kodea zifratu behar dugu, hau da, gure mezuari dagokion kodea baldin bada, kalkulatu behar dugu eta Jasoneri bidaliko diogu.

Jasonek, beraz, mezua jasoko du, eta mezua deszifratzeko kalkulatu beharko du. Baina badakigu eragiketa horren emaitza dela. Hau da, gure mezuari dagokion kodea kalkulatuko du Jasonek.

Mezu ziurtatua bidaltzeko prozesua

[aldatu | aldatu iturburu kodea]

Gako publikoak eta pribatuak beste erabilera bat ere badute: mezu ziurtatua bidaltzeko aukera ere ematen dute. Alegia mezua bidali duena nor izan den ziurtatzeko aukera ematen dute.

Horretarako, Jasonek mezua bere gako pribatuarekin zifratu behar du, eta guk, bere gako publikoarekin deszifratu behar dugu: Jasonek mezua bere gako pribatuarekin zifratuta lortuko du mezu ziurtatua, eta hori bidaliko baligu, guk kalkulatu beharko genuke, eta horrela lortutako mezuak zentzurik balu, esan ahal izango genuke Jasonek sortutako mezua dela (edo Jasoneren gako pribatua ezagutzen duen norbaitek sortutakoa).