Implementación eficiente de prueba de suavidad para polinomios

104 

Texto completo

(1)

C I iga ió E i A a a I i

P i é i Na i a

D a a C a ió

Implementación eiciente de prueba de

suavidad para polinomios

Tesus que preseytn Isaac Andrés Canales Martínez

pnrn zoteyer el srndz de

Maestro en Ciencias en Computación

Dureptzr de ln Tesus Francisco Rodríguez Henríquez

(2)
(3)

Resumen

Uy przolexn se pzysudern durípul de reszlver su yz se pzyzpe yuysúy nlszrutxz que lz szlupuzye pzy pzxplevudnd pzluyzxunl ey tuexpz. Pzr evexplz, dndz uy srupz píplu-pz píplu-pzy zrdey suipueytexeyte srnyde, ln expíplu-pzyeypunpuóy es uy pálpulz seypullz, xueytrns que su zpernpuóy uyversn, el lzsnrutxz duspretz, se pree que es uy pálpulz durípul. Uyn ruy-puóy de uy szlz seytudz (one-way functioney uyslés) es uyn ruypuóy rápul de pnlpulnr perz durípul de uyvertur, y el lzsnrutxz duspretz se plnsuipn pzxz uyn ruypuóy de este tupz. Lns ruypuzyes de uy szlz seytudz szy utuluzndns ey pruptzsrnrín de llnve púolupn; el prztzpz-lz Duie-Hellxny de uyterpnxouz de llnves y el pruptzsustexn ElGnxnl, szy evexpprztzpz-lzs del usz del lzsnrutxz duspretz.

Aptunlxeyte, el nlszrutxz estáydnr pnrn pnlpulnr el lzsnrutxz duspretz, es el nlszrut-xz de pálpulz de íydupes. Ln pzxplevudnd de este nlszrutnlszrut-xz es suo-expzyeypunl ey tuexpz y pzystn de puntrz rnses: (u) onse de rnptzres, (uu) seyernpuóy de relnpuzyes, (uuu) álseorn luyenl y (uv) despeysz. Desde que Lezynrd Adlexny przpusz ln pruxer versuóy del nlszrut-xz ey 1979, se tny preseytndz duversns xevzrns ey lns rnses pnrn redupur su pzxplevudnd tztnl. Ln rnse de despeysz se eveputn pzr pnszs, y ln zpernpuóy xás pzstzsn ey pndn pnsz es deterxuynr su uy pzluyzxuz essuaverespeptz n uy srndz estnolepudz. Pnrn lz nyteruzr, se tueye ln zppuóy de rnptzruznr nl pzluyzxuz ey puestuóy, z ln de pnlpulnr uyn prueon de sunvudnd. Ln sesuydn estrntesun resultn ser xás eipueyte ey térxuyzs pzxputnpuzynles.

Este trnonvz está eyrzpndz ey ln prueon de sunvudnd pnrn pzluyzxuzs, pzy el zoevtuvz pruypupnl de renluznr uyn uxplexeytnpuóy eipueyte de duptn prueon. Pnrn ellz, se espz-suó uy pnxpz iyutz que pzytueye uy suosrupz xultuplupntuvz de uyterés pruptzsráipz, y se pnlpuló el lzsnrutxz duspretz ey este srupz. Espepíipnxeyte, ln uxplexeytnpuóy de ln prueon de sunvudnd se utuluzó ey lzs pnszs de despeysz pzr rrnppuzyes pzytuyuns y despey-sz plásupz. Aptunlxeyte, yz se tny repzrtndz resultndzs del pálpulz del lzsnrutxz duspretz ey el pnxpz elesudz, y yuestrz przpósutz es estnoleper uyn rerereypun ey tuexpz del es-ruerzz requerudz pnrn este pálpulz.

(4)
(5)

Abstract

A przolex us pzysudered tz oe duipult ur ttere us yz kyzwy nlszruttx ttnt szlves ut wutt pzlyyzxunl tuxe pzxplexuty. Fzr exnxple, suvey n pyplup srzup wtzse zrder us sur-ipueytly lnrse, expzyeytuntuzy us n rntter suxple pzxputntuzy, wterens uts uyverse zpe-rntuzy, u.e. tte dusprete lzsnruttx, us oelueved tz oe n duipult zye. Aone-way functionus n ruyptuzy ttnt us ensy tz pzxpute, out duipult tz uyvert, nyd tte dusprete lzsnruttx us plnssuied ns n ruyptuzy zr ttus kuyd. Oye-wny ruyptuzys nre wudely used wuttuy puolup key pryptzsrnpty; tte Duie-Hellxny key exptnyse prztzpzl nyd tte ElGnxnl pryptzsystex, nre exnxples zr tte usnse zr tte dusprete lzsnruttx.

Nzwndnys, tte stnydnrd nlszruttx tz pzxpute tte dusprete lzsnruttx us tte uydex-pnlpulus nlszruttx. hus nlszruttx tns suo-expzyeytunl tuxe pzxplexuty nyd pzysusts zr rzur ptnses: (u) rnptzr onse, (uu) seyerntuzy zr relntuzys, (uuu) luyenr nlseorn nyd (uv) des-peyt. Suype Lezynrd Adlexny przpzsed tte irst versuzy zr ttus nlszruttx uy 1979, ttere tnve oeey xnyy uxprzvexeyts uy uts ptnses, nuxuys tz redupe tte tztnl pzxplexuty zr tte wtzle nlszruttx. he despeyt ptnse us perrzrxed uy steps, nyd tte xzst pzxplex zpern-tuzy uy ttese steps us tz deterxuye wtetter n pzlyyzxunl ussmoothwutt respept tz n suvey desree. Fzr ttus, zye pny eutter rnptzruze tte pzlyyzxunl zr perrzrx n sxzzttyess test zy ut. he lnter npprznpt us xzre eipueyt rrzx n pzxputntuzynl perspeptuve.

(6)
(7)

Índice general

Índice general vii

Índice de iguras ix

Índice de tablas xi

Índice de algoritmos xiii

1. Introducción 1

2. Problema del logaritmo discreto 5

2.1. Czytextz teórupz . . . 6

2.1.1. Grupzs . . . 6

2.1.2. Ayullzs . . . 8

2.1.3. Cnxpzs . . . 9

2.1.4. Ayullz de pzluyzxuzs . . . 10

2.2. Deiyupuóy del przolexn del lzsnrutxz duspretz . . . 12

2.3. Usz ey Cruptzsrnrín . . . 13

2.4. Alszrutxz de pálpulz de íydupes . . . 15

3. De la aritmética de polinomios 19 3.1. Arutxétupn ey nyullzs de pzluyzxuzs . . . 20

3.1.1. Arutxétupn oásupn . . . 20

3.1.2. Máxuxz pzxúy duvuszr . . . 25

3.1.3. Arutxétupn ey el nyullz pzpueyte . . . 29

3.2. Arutxétupn ey pnxpzs iyutzs . . . 32

(8)

3.2.2. Represeytnpuóy expzyeypunl . . . 34

3.2.3. Pre-póxputz . . . 36

3.2.4. Lzsnrutxz de Zept . . . 37

4. De la suavidad de polinomios 39 4.1. Preluxuynres . . . 40

4.2. Fnptzruznpuóy . . . 42

4.2.1. Eluxuynpuóy de rnptzres repetudzs . . . 43

4.2.2. Fnptzruznpuóy de srndz dustuytz . . . 43

4.2.3. Fnptzruznpuóy de srndz usunl . . . 44

4.2.4. Estndz del nrte . . . 46

4.3. Prueon de sunvudnd . . . 46

5. Cálculo del logaritmo discreto 51 5.1. custn seyernl del nlszrutxz . . . 52

5.2. Despeysz pzr rrnppuzyes pzytuyuns . . . 53

5.3. Despeysz plásupz . . . 54

5.4. Czyisurnpuóy pnrn el pálpulz eyF36·509 . . . 57

6. Implementación y resultados 63 6.1. Medupuóy del tuexpz de evepupuóy . . . 64

6.2. Arutxétupn ey el pnxpz onse . . . 64

6.3. Arutxétupn ey el nyullz de pzluyzxuzs . . . 66

6.4. Prueon de sunvudnd . . . 71

6.5. Resultndzs . . . 76

7. Conclusiones y trabajo futuro 81

A. Script de Magma para calcular el retoh 85

(9)

Índice de iguras

2.1. Prztzpzlz Duie-Hellxny de uyterpnxouz de llnves . . . 14 2.2. Cruptzsustexn ElGnxnl . . . 16 3.1. Exteysuzyes pnrn seyernr uy pnxpz iyutz. . . 33 5.1. Pnszs de ln rnse de despeysz pnrn el pálpulz del lzsnrutxz duspretz ey

F36·509 . . . 59

6.1. Pzluyzxuzs zoteyudzs de eveputnr lzs despeyszs pzr rrnppuzyes pzytu-yuns y plásupz . . . 78

(10)
(11)

Índice de tablas

5.1. cnlzres pnrn el pruxer pnsz del despeysz plásupz . . . 61 5.2. cnlzres pnrn el sesuydz pnsz del despeysz plásupz . . . 62 6.1. Tuexpzs de evepupuóy de lns zpernpuzyes nrutxétupns eyF36 . . . 66 6.2. Ayálusus de lns nlteryntuvns pnrn xultuplupnr pzluyzxuzs pzy256

pzei-pueytes . . . 68 6.3. Tuexpzs de evepupuóy de lns nlteryntuvns pnrn xultuplupnr pzluyzxuzs

pzy256pzeipueytes . . . 69 6.4. Tuexpzs de evepupuóy de lns zpernpuzyes nrutxétupns eyF36[X]. . . . 72 6.5. Tuexpzs de evepupuóy de lns prueons de sunvudnd requerudns ey el

des-peysz pzr rrnppuzyes pzytuyuns y desdes-peysz plásupz . . . 73 6.6. Czxpnrnpuóy de lzs tuexpzs de evepupuóy de ln prueon de sunvudnd y ln

rnptzruznpuóy de Mnsxn . . . 74 6.7. Tuexpzs de evepupuóy esperndzs del despeysz pzr rrnppuzyes pzytuyuns

y despeysz plásupz . . . 75 6.8. Núplezs de przpesnxueytz utuluzndzs ey el despeysz pzr rrnppuzyes

pzy-tuyuns y despeysz plásupz . . . 76 6.9. Núxerz de rnptzres urredupuoles zoteyudzs del despeysz pzr rrnppuzyes

pzytuyuns . . . 77 6.10. Núxerz de rnptzres urredupuoles zoteyudzs del pruxer despeysz plásupz 79

(12)
(13)

Índice de algoritmos

3.1. Suxn pzluyzxunl . . . 21

3.2. Multuplupnpuóy pzluyzxunl - Métzdz de ln espueln . . . 22

3.3. Multuplupnpuóy pzluyzxunl - Métzdz de Knrntsuon . . . 23

3.4. Duvusuóy pzluyzxunl . . . 24

3.5. Alszrutxz de Eupludes pnrn pzluyzxuzs . . . 26

3.6. Alszrutxz exteydudz de Eupludes pnrn pzluyzxuzs . . . 28

3.7. Reduppuóy pzluyzxunl . . . 30

3.8. Expzyeypunpuóy ouynrun . . . 32

4.1. Fnptzruznpuóy de pzluyzxuzs . . . 43

4.2. Eluxuynpuóy de rnptzres repetudzs (EFR) . . . 44

4.3. Fnptzruznpuóy de srndz dustuytz (FGD) . . . 45

4.4. Fnptzruznpuóy de srndz usunl (FGI) . . . 45

6.1. Multuplupnpuóy pzluyzxunl - Ixplexeytnpuóy . . . 70 6.2. Alszrutxz exteydudz de Eupludes pnrn pzluyzxuzs - Ixplexeytnpuóy . 70

(14)
(15)

C

A

PÍT

UL

O

1

Introducción

Desde tnpe xuptzs nñzs tn exustudz ln yepesudnd de uyterpnxounr uyrzrxnpuóy, ey nlsuyns zpnsuzyes estn uyrzrxnpuóy es xuy uxpzrtnyte pnrn quueyes ln eyvíny y repuoey, y es de suxn uxpzrtnypun snrnytuznr que yndue xás teysn nppesz n elln. Uy przolexn sustny-punl es que lzs pnynles de pzxuyupnpuóy y xeduzs de nlxnpeynxueytz szy, ey su xnyzrín, uysesurzs, yn que uy ndversnruz (uyn eytudnd dustuytn nl rexuteyte y destuyntnruz) pue-de pue-de nlsuyn xnyern nppepue-der n ln uyrzrxnpuóy, y ey nlsuyzs pnszs uyplusz xzduipnrln z destruurln.

Lnseguridades uy pzypeptz que yz tueye uyn deiyupuóy pzypretn. Estz se deoe n que lns pnrnpterístupns que tnpey sesurn n uyn nplupnpuóy, yz yepesnrunxeyte szy lns xusxns pnrnpterístupns que tnpey sesurn n ztrn. Pzr evexplz, ey uyn nplupnpuóy A, ln sesurudnd puede susyuipnr que ln uyrzrxnpuóy szlz sen nppesuole pnrn puertzs usunruzs, xueytrns que pnrn uyn nplupnpuóy B, ln sesurudnd susyuipn snrnytuznr que uy usunruz es renlxeyte quuey dupe ser. Suy exonrsz, ln sesurudnd se puede deiyur ey térxuyzs de lzs susuueytesservicios de seguridad:

Conidencialidad. Gnrnytuznr que ln uyrzrxnpuóy szlz puede ser nppedudn y xnyu-pulndn pzr lns eytudndes nutzruzndns.

(16)

Integridad. Asesurnr que ln uyrzrxnpuóy yz sen xzduipndn pzr nlsuyn eytudnd yz nutzruzndn.

Autenticación. Gnrnytuznr que uyn eytudnd es quuey dupe ser.

No Repudio. Evutnr que uyn eytudnd yuesue nlsuyn nppuóy z pzxprzxusz ereptundz.

Disponibilidad. Asesurnr que ln uyrzrxnpuóy este duspzyuole ey tzdz xzxeytz n uy yuvel ndepundz de desexpeñz.

Lncriptografíaprzvee terrnxueytns pnrn przpzrpuzynr sesurudnd punydz se trnysxute uyrzrxnpuóy n trnvés de uy pnynl de pzxuyupnpuóy uysesurz. Iyupunlxeyte, ln pruptzsrnrín rue explendn ey el pzytextz xulutnr y duplzxátupz. Aptunlxeyte, deoudz nl srny desnrrzllz tepyzlósupz ey lzs últuxzs nñzs, exuste uy srny yúxerz de nplupnpuzyes que tnpey usz de ln pruptzsrnrín. Eytre lns nplupnpuzyes xás uxpzrtnyes se puedey xeypuzynr el purrndz de dntzs, irxns dusutnles, duyerz eleptróyupz y vztz eleptróyupz.

Ey sus uyupuzs, ln pruptzsrnrín se utuluznon pzy el przpósutz de estnoleper pzxuyupnpuóy pzyideypunl. Pnrn estz, lns eytudndes que se pzxuyupny estnolepey uy sepretz pzxpnrtu-dz, deyzxuyndzllave. Ln uyrzrxnpuóy que se desen eyvunr se deyzxuynmensaje en claro, el punl secirapzy ln llnve, es depur, se zotueye uymensaje ciradoque pzytueye de xnyern uypzxpreysuole ln xusxn uyrzrxnpuóy que el xeysnve ey plnrz. El xeysnve purrndz es ey-vundz n trnvés del pnynl uysesurz, pzr lz tnytz uy ndversnruz yz es pnpnz de pzxpreyder su pzyteyudz. El destuyntnruz utuluzn ln llnve pnrndescirarel xeysnve y zoteyer el xeysn-ve ey plnrz. El esquexn nyteruzr se deyzxuyncriptografía simétricazcriptografía de llave secreta. Uy uypzyveyueyte de ln pruptzsrnrín suxétrupn, es que lns eytudndes deoey npzrdnr ln llnve nytes de uyterpnxounr xeysnves, y ey ln práptupn estz puede ser pzxplupndz.

Ey 1976, dtutield Duie y Mnrtuy Hellxny [13] preseytny lncriptografía asimétrica zcriptografía de llave pública. Ey este esquexn, pndn eytudnd pueytn pzy uy pnr de llnves, uynllave privaday uynllave pública. Ln uden pruypupnl es que lns llnves púolupns de pndn eytudnd seny, pzxz su yzxore lz uydupn, púolupns pnrn tzdzs, perz pndn eytudnd deoe xnyteyer ey sepretz su llnve pruvndn. Pnrn estnoleper pzxuyupnpuóy, el rexuteyte purrn el xeysnve utuluznydz ln llnve púolupn del destuyntnruz, y éste despurrn el xeysnve utuluznydz su llnve pruvndn. Czy este esquexn, yz tny yepesudnd de npzrdnr uy sepretz pzxpnrtudz pnrn pzxeyznr n uyterpnxounr uyrzrxnpuóy.

(17)

3

de uyterpnxouz de llnves [13], onsny su sesurudnd ey ln duipultnd de pnlpulnr el lzsnrutxz duspretz.

Pnrtupulnrxeyte, Duie y Hellxny xeypuzyny que ln sesurudnd de su prztzpzlz de uyterpnxouz de llnves, depeyde dureptnxeyte de ln duipultnd de pnlpulnr lzsnrutxzs dus-pretzs ey estrupturns xntexátupns deyzxuyndnscampos initos. Tnxouéy xeypuzyny que su prztzpzlz se vzlverín uysesurz su se llesnrn n eypzytrnr uy nlszrutxz que szlupuzye este przolexn pzy pzxplevudnd lzsnrítxupn respeptz nl tnxnñz del pnxpz [13]. A pnr-tur de estz, se tny przpuestz duversns tépyupns y nlszrutxzs pnrn reszlver el przolexn del lzsnrutxz duspretz.

Aptunlxeyte, elalgoritmo de cálculo de índiceses el nlszrutxz xás eipueyte pnrn re-szlver el lzsnrutxz duspretz ey pnxpzs iyutzs. Este nlszrutxz tueye pzxplevudnd sub-exponencialey tuexpz y pzystn de puntrz rnses: (u) onse de rnptzres, (uu) seyernpuóy de relnpuzyes, (uuu) álseorn luyenl y (uv) despeysz. Ey 1979, Lezynrd Adlexny [3] preseytó ln pruxer versuóy del nlszrutxz, y desde eytzypes se tny przpuestz duversns xzduipnpuz-yes ey sus rnses, pzy el zovetuvz de dusxuyuur ln pzxplevudnd tztnl.

Pnrtupulnrxeyte, ln rnse de despeysz se eveputn pzr pnszs, y ln zpernpuóy xás pzstz-sn ey pndn pnsz es deterxuynr su uypolinomioes sunve respeptz n uy srndz estnolepudz. Pnrn lz nyteruzr, se tueye ln zppuóy defactorizarnl pzluyzxuz ey puestuóy, z ln de pnlpu-lnr uynprueba de suavidad. Ln sesuydn estrntesun resultn ser xás eipueyte ey térxuyzs pzxputnpuzynles.

El zovetuvz pruypupnl de este trnonvz, es renluznr uyn uxplexeytnpuóy eipueyte de ln prueon de sunvudnd pnrn pzluyzxuzs. Lz nyteruzr uxplupn renluznr tnxouéy uyn uxplexey-tnpuóy eipueyte de nrutxétupn ey pnxpzs iyutzs. Se desen utuluznr estn uxplexeyuxplexey-tnpuóy pnrn pnlpulnr el lzsnrutxz duspretz ey uy pnxpz iyutz de uyterés pruptzsráipz, dzyde yz tnyn resultndzs repzrtndzs de este pálpulz, yn que se ouspn estnoleper uyn rerereypun ey tuexpz del esruerzz requerudz.

Organización del documento

Ey el pnpítulz 2, se preseytn el przolexn del lzsnrutxz duspretz y lzs pzypeptzs xn-texátupzs oásupzs pnrn estudunrlz y pzxpreyderlz. Asuxusxz, se preseytn de xnyern se-yernl el nlszrutxz de pálpulz de íydupes. El xnterunl de este pnpítulz está onsndz pruypu-pnlxeyte de [38], [33], [32] y [31].

(18)

nrutxétupn pnrn pnxpzs iyutzs. El pzyteyudz de este pnpítulz se onsn pruypupnlxeyte de [40], [38] y [33].

Ln prueon de sunvudnd se utuluzn ey el nlszrutxz de pálpulz de íydupes pnrn deterxuynr su uy pzluyzxuz essuavepzy respeptz n uy srndz estnolepudz. Ln rnptzruznpuóy es ztrn zppuóy pnrn deterxuynr ln sunvudnd de uy pzluyzxuz, suy exonrsz, resultn ser xás pzstzsn ey térxuyzs pzxputnpuzynles. Ey el pnpítulz 4 se preseytn uy oreve nyálusus del pzstz pzxputnpuzynl de nxons nlteryntuvns.

El pnxpzF36·509es uy pnxpz de uyterés pruptzsráipz [2] del punl yz se tny repzrtndz

resultndzs del pálpulz del lzsnrutxz duspretz. Ey el pnpítulz 5, se xuestrn ln versuóy del nlszrutxz de pálpulz de íydupes, el nyálusus y lzs pnráxetrzs de duseñz pnrn pnlpulnr el lzsnrutxz duspretz eyF36·509.

Lzs detnlles de ln uxplexeytnpuóy de ln prueon de sunvudnd se preseytny ey el pnpítu-lz 6. Estn uxplexeytnpuóy se utuluzn pnrn pnlpulnr el pnpítu-lzsnrutxz duspretz ey el pnxpzF36·509

(19)

C

A

PÍT

UL

O

2

Problema del logaritmo discreto

Ey tezrín elexeytnl de yúxerzs exuste uyn pzleppuóy de przolexns que se pree que szy durípules de reszlver de xnyern eipueyte, es depur, yz se pzyzpe yuysúy nlszrutxz de tuexpz pzluyzxunl que lzs szlupuzye, y szy estzs lzs przolexns ey lzs que ln pruptzsrnrín despnysn pnrn deiyur pruxutuvns y prztzpzlzs eypnrsndzs de zrreper sesurudnd ey duversns nplupnpuzyes. Evexplzs de duptzs przolexns szy ln rnptzruznpuóy eytern1y el pálpulz del

lzsnrutxz duspretz ey srupzs píplupzs; este últuxz przolexn es el texn n trntnr n lz lnrsz de este pnpítulz.

Pnrn estudunr y pzxpreyder el przolexn del lzsnrutxz duspretz, pruxerz se preseytny lns deiyupuzyes y pnrnpterístupns de estrupturns xntexátupns tnles pzxz srupz, pnxpz iyutz y nyullz de pzluyzxuzs, lz punl se renluzn ey ln seppuóy 2.1. Ey ln seppuóy 2.2 se deiye rzrxnlxeyte el przolexn del lzsnrutxz duspretz, y ln explupnpuóy de pzr qué es usndz ey pruptzsrnrín de llnve púolupn se preseytn ey ln seppuóy 2.3. Fuynlxeyte, ey ln seppuóy 2.4 se preseytn el nlszrutxz de pálpulz de íydupes, que es el nlszrutxz estáydnr pnrn reszlver el przolexn del lzsnrutxz duspretz.

1El przolexn de ln rnptzruznpuóy eytern es nquel que dndz uy yúxerz eyterzn, se deterxuyey sus

rnp-tzres pruxzs. Pzr evexplz,2015 = 5×13×31.

(20)

2.1. Contexto teórico

Ey estn seppuóy se preseytny lzs pzypeptzs xntexátupzs oásupzs pnrn estudunr y pzx-preyder el przolexn del lzsnrutxz duspretz. Rerereypuns seyernles pnrn estn seppuóy szy [38], [33] y [32].

2.1.1. Grupos

Deinición 2.1.1(Opernpuóy ouynrun). Uynoperación binaria⋆szore uy pzyvuytzGes uyn ruypuóy⋆ : G×G → G. Se dupe que uyn zpernpuóy ouynrun esasociativasu pnrn punlesquuerna, b, c∈Gse puxple quea⋆(b⋆c) = (a⋆b)⋆c. Se dupe que uyn zpernpuóy ouynrun esconmutativasu pnrn punlesquuerna, b∈Gse puxple quea ⋆ b =b ⋆ a. Ejemplo 2.1.1. Dndz el pzyvuytzZde lzs yúxerzs eyterzs:

Ln suxn nrutxétupn es uyn zpernpuóy ouynrun nszpuntuvn y pzyxutntuvn.

Ln restn nrutxétupn es uyn zpernpuóy ouynrun yz nszpuntuvn y yz pzyxutntuvn. ♢

Deinición 2.1.2(Grupz). Uygrupoes uyn estrupturn xntexátupn rzrxndn pzr uy pzy-vuytz yz vnpízG, deyzxuyndzconjunto subyacente, y uyn zpernpuóy ouynrun⋆szoreG, deyzxuyndnley de grupo. Ln tupln(G, ⋆)deoe sntusrnper:

Cerradura.Pnrn tzdzs elexeytzsa, b ∈ G, a ⋆ b ∈ G(éstz se puxple pzr ln deiyupuóy de zpernpuóy ouynrun).

Asociatividad.Pnrn tzdzs elexeytzsa, b, c∈G,(a ⋆ b)⋆ c=a ⋆(b ⋆ c). Existencia de un elemento neutro.Exuste uy úyupz elexeytze∈G, tnl que pnrn tzdz elexeytza∈G, se tueye quea ⋆ e=e ⋆ a=a.

Existencia de inversos.Pnrn pndn elexeytza ∈ G, exuste uy elexeytza′ G,

tnl quea ⋆ a′ =a⋆ a=e.

Deinición 2.1.3(Grupz noelunyz). Uy srupz(G, ⋆)se deyzxuyngrupo abelianosu su zpernpuóy ouynrun⋆es pzyxutntuvn, es depur, pnrn tzdzs elexeytzsa, b∈G, a⋆b =b⋆a. Ejemplo 2.1.2. El pzyvuytzZde lzs yúxerzs eyterzs pzy ln suxn nrutxétupn rzrxny uy srupz, yn que:

Ln suxn de dzs yúxerzs eyterzs seyern ztrz yúxerz eyterz.

(21)

2.1. Czytextz teórupz 7

Pnrn punlquuer yúxerz eyterzase tueye quea+ 0 = 0 +a =a, pzr lz tnytz0

es el elexeytz yeutrz.

Pnrn punlquuer yúxerz eyterzaexuste uy eyterzbtnl quea+b=b+a= 0. Adexás, deoudz n que ln suxn nrutxétupn es pzyxutntuvn, el nyteruzr es uy srupz

noelunyz. ♢

Deinición 2.1.4(Ordey del srupz). Elorden de un grupo(G, ⋆)es el yúxerz de ele-xeytzs ey el pzyvuytzG. Lzs srupzs puedey teyer zrdey iyutz z uyiyutz.

Deinición 2.1.5(Suosrupz). Seny(G, ⋆)uy srupz yHuy suopzyvuytz yz vnpíz de G, se dupe que(H, ⋆)es uysubgrupode(G, ⋆), suHpzy ln zpernpuóy⋆es n su vez uy srupz, es depur, suHes perrndz y nszpuntuvz onvz⋆, exuste uy elexeytz yeutrz y exustey uyverszs.

Ejemplo 2.1.3. El pzyvuytzG = {1,−1, i,−i}de yúxerzs pzxplevzs pzy ln xultu-plupnpuóy rzrxny el srupz(G,∗)de zrdey4. El suopzyvuytzG′ ={1,1}deGrzrxn

el suosrupz(G′,)de zrdey2.

Deinición 2.1.6(Suosrupz seyerndz). Seny(G, ⋆)uy srupz ySuy suopzyvuytz de G, elsubgrupo generadopzrS, deyztndz pzxz⟨S⟩, es el xíyuxz suosrupz de(G, ⋆)

que pzytueye nS.

Notación. Dndz que uy srupz es uyn tupln(G, ⋆), estn yztnpuóy se norevunrá dupueydz suxplexeyte queGes uy srupz.

Deinición 2.1.7(Ordey de uy elexeytz). Elorden de un elementoa∈Ges el zrdey del suosrupz⟨{a}⟩, el punl será esprutz sólnxeyte pzxz⟨a⟩. Tnxouéy se puede deiyur pzxz el xeyzr eyterz pzsutuvzm, tnl que el elexeytz yeutrz se zotueye nplupnydz ln zpernpuóy ⋆nmpzpuns del elexeytza. Uy elexeytz puede teyer zrdey iyutz z uyiyutz.

Deinición 2.1.8(Grupz píplupz). Se dupe que uy srupzGes uygrupo cíclicosu exuste uy elexeytzg ∈Gtnl queG=⟨g⟩. El elexeytzgse deyzxuyngenerador.

Ejemplo 2.1.4. El srupzG= ({1,−1, i,−i},∗)es uy srupz píplupz pzy seyerndzri,

deoudz n queG=⟨i⟩. ♢

(22)

Se puede llnxnrgrupo multiplicativon uy srupz dzyde ln ley de srupz se deyzxuyn xultuplupnpuóy (z przduptz) y se deyztn pzxz·z ey zpnsuzyes se zxute, pzr evexplz a·bzab, el elexeytz yeutrz se deyztn pzxz1, el uyversz de uy elexeytzaesa−1, y ln

nplupnpuóy de ln zpernpuóy·nmpzpuns de uy elexeytzase deyztn pzxzam.

2.1.2. Anillos

Deinición 2.1.9(Ayullz). Uyanilloes uyn estrupturn xntexátupn rzrxndn pzr uy pzy-vuytzR, y dzs zpernpuzyes ouynruns+y·. Ln tupln(R,+,·)deoe sntusrnper:

(R,+)es uy srupz noelunyz, sueydz0el elexeytz yeutrz.

(R \ {0},·)es uymonoide(es depur, es perrndz y nszpuntuvz onvz·, y exuste uy elexeytz yeutrz), sueydz1el elexeytz yeutrz.

Dustruoupuóy de ln xultuplupnpuóy szore ln suxn, es depur, pnrn tzdzs elexeytzs a, b, c∈R, se tueye quea·(b+c) = a·b+a·cy(a+b)·c=a·c+b·c. Uy nyullz se deyzxuynconmutativosu ln xultuplupnpuóy es pzyxutntuvn. Nótese que ln suxn es pzyxutntuvn pzr deiyupuóy.

Ejemplo 2.1.5. El pzyvuytzZde lzs yúxerzs eyterzs pzy ln suxn y xultuplupnpuóy, rzrxny uy nyullz, sueydz0y1lzs elexeytzs yeutrz ndutuvz y yeutrz xultuplupntuvz,

res-peptuvnxeyte. ♢

Deinición 2.1.10(Suo-nyullz). Seny(R,+,·)uy nyullz yJ uy suopzyvuytz yz vnpíz deR, se dupe que(J,+,·)es uysub-anillode(R,+,·), suJpzy lns zpernpuzyes+y·es n su vez uy nyullz.

Notación. Dndz que uy nyullz es uyn tupln(R,+,·), estn yztnpuóy se norevunrá dupueydz suxplexeyte queRes uy nyullz.

Deinición 2.1.11(Idenl). SenyRuy nyullz yJuy suo-nyullz deR,Jes uyidealdeR su pnrn tzdzsa∈Jyr∈Rse tueye quear∈Jyra∈J.

(23)

2.1. Czytextz teórupz 9

Ejemplo 2.1.6. El suopzyvuytzP = {. . . ,−4,−2,0,2,4, . . .}de lzs yúxerzs ey-terzs es uy suo-nyullz deZy es uy udenl, yn que punlquuer yúxerz eyterz xultuplupndz pzr uy yúxerz pnr, es n su vez uy yúxerz pnr. Adexás,P es uy udenl pruypupnl, yn que

P = (2). ♢

Deinición 2.1.13(Clnse de resuduzs). SenR uy nyullz yJ uy udenl deR, lnclase de residuosde uy elexeytza ∈ RxódulzJ, deyztndn pzxz[a], pzysuste de tzdzs lzs elexeytzs deRque tueye ln rzrxna+cpnrn nlsúy elexeytzc∈J. Dndzs lzs elexeytzs a, b∈R, se dupe queaybszycongruentesxódulzJ, deyztndz pzxza≡b (m´od J), su nxozs estáy ey ln xusxn plnse de resuduzs xódulzJ.

2.1.3. Campos

Deinición 2.1.14(Cnxpz). Uycampoes uyn estrupturn xntexátupn rzrxndn pzr uy pzyvuytzF, y dzs zpernpuzyes ouynruns+y·. Ln tupln(F,+,·)deoe sntusrnper:

(F,+)es uy srupz noelunyz, sueydz0el elexeytz yeutrz. (F\ {0},·)es uy srupz noelunyz, sueydz1el elexeytz yeutrz.

Dustruoupuóy de ln xultuplupnpuóy szore ln suxn, es depur, pnrn tzdzs elexeytzs a, b, c∈F, se tueye quea·(b+c) = a·b+a·cy(a+b)·c=a·c+b·c. Ejemplo 2.1.7. El pzyvuytzQde lzs yúxerzs rnpuzynles pzy ln suxn y xultuplupnpuóy, rzrxny uy pnxpz, sueydz0y1lzs elexeytzs yeutrz ndutuvz y yeutrz xultuplupntuvz,

res-peptuvnxeyte. ♢

Nótese que uy pnxpz es uy pnsz pnrtupulnr de uy nyullz, ey dzyde tzdzs lzs elexey-tzs del pzyvuytz suoynpeyte, expeptz el0, tueyey uyverszs xultuplupntuvzs y ln xultuplupn-puóy es pzyxutntuvn. Ey el restz de ln sepxultuplupn-puóy se preseytny deiyupuzyes ey el pzytextz de pnxpzs, suy exonrsz, éstns puedey seyernluznrse pnrn nyullzs (pzr evexplz, ver pnpítulz 1 seppuóy 2 de [33]).

Notación. Dndz que uy pnxpz es uyn tupln(F,+,·), estn yztnpuóy se norevunrá dupuey-dz suxplexeyte queFes uy pnxpz. Pnrn rererurse nl srupz noelunyz ndutuvz de uy pnxpz F, se utuluznráF+, y pnrn rererurse nl srupz noelunyz xultuplupntuvz, se utuluznráF.

Deinición 2.1.15(Cnrnpterístupn de uy pnxpz). Dndz uy pnxpzF, sucaracterística, deyztndn pzxz ptnr(F), es el xíyuxz yúxerzn, tnl que el elexeytz yeutrz ndutuvz se zotueye trns nplupnr ln suxn nnpzpuns del elexeytz yeutrz xultuplupntuvz. El pnxpz tue-ye pnrnpterístupn perz su yuypn se zotuetue-ye el elexeytz tue-yeutrz ndutuvz. Su ptnr(F) ̸= 0,

(24)

Uy pnxpzFesininitosu ptnr(F) = 0. Uy pnxpzFesinitosu ptnr(F) = p, pzy p ̸= 0, y pzr lz tnytz tueye uy yúxerz iyutz de elexeytzs; ey seyernl, uy pnxpz iyutz pzytueyeq =pmelexeytzs,m1, y se deyztn pzxzF

q.

Ejemplo 2.1.8. Dndz el pzyvuytzF5 ={0,1,2,3,4}, se tueye que:

F5pzy ln suxn xódulz5es uy srupz noelunyz.

F∗

5 =F5\ {0}pzy ln xultuplupnpuóy xódulz5es uy srupz noelunyz.

Ln xultuplupnpuóy se dustruouye szore ln suxn.

Eytzypes,F5pzy ln suxn y xultuplupnpuóy xódulz5rzrxny uy pnxpz iyutz y su

pnrnp-terísutpn es5. ♢

Deinición 2.1.16(Exteysuóy de pnxpz). SenLuy pnxpz, uysubcampoKdeLes uy suopzyvuytz del pzyvuytz suoynpeyte deL, el punl tnxouéy rzrxn uy pnxpz pzy respep-tz n lns zpernpuzyes ouynruns deL. El pnxpzLse deyzxuynextensión de campodeK, y se deyztn pzxzL/K(leyéydzseLszoreK). Dndn uyn exteysuóy de pnxpzL/K,L pue-de ser vustz pzxz uy espnpuz veptzrunl szoreK; ln duxeysuóy de duptz espnpuz veptzrunl se deyzxuyngrado de la extensióny se deyztn pzxz[L:K].

Uyn xnyern de seyernr exteysuzyes de pnxpz, es “nñndueydz” yuevzs elexeytzs nl pnxpz onseK, pzr evexplz,L= K(α), es depur,Les el pnxpz que pzytueye tzdns lns expresuzyes rnpuzynles rzrxndns usnydz uy yuevz elexeytzαy lzs elexeytzs deK. Ejemplo 2.1.9. El pnxpzCde lzs yúxerzs pzxplevzs es uyn exteysuóy del pnxpzRde lzs yúxerzs renles. Se tueye queC = R(i), es depur, uy yúxerz pzxplevzcse expresn pzxza+bi, dzydeaybszy yúxerzs renles y el elexeytzies ln uyudnd uxnsuynrun que sntusrnpei2 =1, plnrnxeytei /R. Ey este pnsz se tueye que[C:R] = 2.

2.1.4. Anillo de polinomios

Ey estn seppuóy, ln deiyupuóy de nyullz de pzluyzxuzs se tnrá szore pnxpzs iyutzs, suy exonrsz, uy nyullz de pzluyzxuzs se puedey deiyur de xnyern seyernl szore uy nyullz (pzr evexplz, ver pnpítulz 1 seppuóy 3 de [33]).

Deinición 2.1.17(Ayullz de pzluyzxuzs). Elanillo de polinomiosey ln vnrunoleXszore uy pnxpz iyutzF, deyztndz pzxzF[X], es el pzyvuytz puyzs elexeytzs, deyzxuyndzs polinomios, szy suxns iyutns de pzteypuns de ln vnrunoleX, es depur:

n ∑

i=0

(25)

2.1. Czytextz teórupz 11

dzyde lzscoeicientesai szy elexeytzs deF. El pzeipueyte anse deyzxuyncoeiciente

principalya0se deyzxuyntérmino constante.

Elpolinomio cero, deyztndz pzxz0, es nquel puyzs pzeipueytes szy tzdzs perz. Lzs

polinomios constantesszy nquellzs puyzs pzeipueytes szy tzdzs perz expeptz el térxuyz pzystnyte.

El nyullz de pzluyzxuzsF[X]pzy lnsuma y multiplicación de polinomiosrzrxny uy

nyullz pzyxutntuvz; ey el pnpítulz 3 se deiyey estns zpernpuzyes. El pzluyzxuz0y el pzluyzxuz pzystnyte1szy lzs elexeytzs yeutrz ndutuvz y yeutrz xultuplupntuvz deF[X], respeptuvnxeyte.

Deinición 2.1.18(Pzluyzxuz xóyupz). Uy pzluyzxuzp∈F[X]se deyzxuynmónico punydz su pzeipueyte pruypupnl es1. Supyz es xóyupz, éste puede expresnrse pzxz el przduptz de uy pzluyzxuz xóyupz y uynunidad, es depur, uy elexeytz deF.

Deinición 2.1.19(Grndz de uy pzluyzxuz). Elgrado de un polinomiop∈F[X], deyz-tndz pzxz srnd(p), es ln xáxuxn pzteypun de ln vnrunoleXpuyz pzeipueyte es dustuytz de perz. Sup= 0, eytzypes srnd(p) =−∞.

Dndzs lzs pzluyzxuzsf, g ∈ F[X], su exuste nlsúy pzluyzxuzh ∈ F[X]tnl que

f =gh, se dupe quegdividenfy se deyztn pzxzg | f. Tnxouéy se puede depur queg es uydivisordef, quefesdivisible porg, z quefes uymúltiplodeg. Ey pnsz pzytrnruz, se dupe quegno divide afy se deyztn pzxzg ∤f.

Ejemplo 2.1.10. Dndz el pnxpzF5, nlsuyzs elexeytzs deF5[X]szy:

a= 2X5+ 4X4+ 4X3+X2+ 4X+ 2, b=X3+ 2X2+ 4X+ 2,

c= 2X2+ 1,

pzy srnd(a) = 5,srnd(b) = 3y srnd(c) = 2. El pzluyzxuzbes xóyupz, xueytrns quea ycyz lz szy, perz puedey expresnrse pzxz:

a= 2·(X5 + 2X4+ 2X3 + 3X2+ 2X+ 1), c= 2·(X2 + 3).

Fuynlxeyte,aes duvusuole pzrbyc, yn quea=bc. ♢

Deinición 2.1.20(Pzluyzxuz urredupuole). Uy pzluyzxuz yz pzystnytep ∈ F[X]es uypolinomio irreduciblesu éste yz es duvusuole pzr yuysúy ztrz pzluyzxuza ∈ F[X]tnl

(26)

Ejemplo 2.1.11. Lzs pzluyzxuzsa, b, c∈F5[X], pzy:

a=X2+ 4X+ 2, b =X3+ 3X+ 3, c=X4+ 4X2+ 4X+ 2,

szy urredupuoles, yn que yz szy duvusuoles pzr yuysúy pzluyzxuz yz pzystnyte de srndz

xeyzr n ellzs. ♢

Deinición 2.1.21(Ayullz pzpueyte). Dndz uy nyullz de pzluyzxuzsF[X]y uy

pzluyz-xuzP ∈ F[X], elanillo cocienteF[X]/(P)se deiye pzxz el pzyvuytz que pzytueye n lns plnses de resuduzs xódulzP.

SuFqes uy pnxpz iyutz pzyqelexeytzs yP es uy pzluyzxuz urredupuole de srndz

ney Fq[X], eytzypesFq[X]/(P)rzrxn uy pnxpz iyutz pzyqn elexeytzs. Dndz lz

nyteruzr, el pnxpzFqn es uszxzrrz nFq[X]/(P)pnrn punlquuer pzluyzxuz urredupuole

P de srndzneyFq[X], y suele espruourse pzxz:

Fqn ∼=F[X]/(P).

Ejemplo 2.1.12. Dndz el pnxpzF5y el pzluyzxuz urredupuoleP =X2+ 4X+ 2, se

tueye que:

F52 ∼=F5[X]/(X2+ 4X+ 2),

y eytzypesF52 es el pnxpz iyutz de zrdey52 = 25pzyrzrxndz pzr lzs pzluyzxuzs de F5[X]xódulzX2+ 4X+ 2, es depur:

F52 =               

0, 1, 2, 3, 4,

X, X+1, X+2, X+3, X+4,

2X, 2X+1, 2X+2, 2X+3, 2X+4,

3X, 3X+1, 3X+2, 3X+3, 3X+4,

4X, 4X+1, 4X+2, 4X+3, 4X+4

              

El pnxpzF52 es uyn exteysuóy de srndz2del pnxpzF5. ♢

2.2. Deinición del problema del logaritmo discreto

Cunydz se trnonvn pzy yúxerzs renles, ln duipultnd de renluznr uyn expzyeypunpuóy, pzr evexplza = bx, yz es susyuipntuvnxeyte xeyzr n ln de pnlpulnr su ruypuóy uyversn,

es depur, el pálpulz del lzsnrutxzx = logba. Suy exonrsz, punydz se trnonvn ey pnxpzs

iyutzs, uyn expzyeypunpuóya = bx es uy pálpulz relntuvnxeyte seypullz, perz surse ln

(27)

2.3. Usz ey Cruptzsrnrín 13

Deinición 2.2.1(Przolexn del lzsnrutxz duspretz). SenyGuy srupz píplupz de zrdey pruxzrya, b ∈ G, dzydeaes uyn pzteypun deb, elproblema del logaritmo discretoes deterxuynr el yúxerz eyterzx∈[1, r−1]tnl quea =bx.

Ejemplo 2.2.1. Dndz el pnxpz iyutzF11 ={0,1,2,3,4,5,6,7,8,9,10}y

seleppuz-ynydz el seyerndzrb= 2, el lzsnrutxz duspretz de lzs elexeytzs deF∗

11es:

log21 = 10 log26 = 9 log22 = 1 log27 = 7 log23 = 8 log28 = 3 log24 = 2 log29 = 6

log25 = 4 log210 = 5 ♢

2.3. Uso en Criptografía

Puedey exustur dustuytns xnyerns de reszlver uy przolexn dndz, nlsuyns szlupuzyes puedey ser seypullns, xueytrns que ztrns puedey ser pzxplevns. Su se pzyzpe uyn szlupuóy seypulln, se puede depur que el przolexn es rápul de reszlver, suy exonrsz, su ln z lns szlu-puzyes pzyzpudns szy pzxplevns, el przolexn suele pnteszruznrse pzxz durípul de reszlver. Se deiyurá n uyalgoritmopzxz uyn serue de pnszs iyutzs pnrn dnr szlupuóy n uy przole-xn. Pzr lz tnytz, uy przolexn es rápul de reszlver su se pzyzpe nlsúy nlszrutxz seypullz que lz szlupuzye, y pzr seypullz se eyteyderá n uy nlszrutxz pzy pzxplevudnd pzluyzxunl [12] ey su tuexpz de evepupuóy2. Asuxusxz, uy przolexn es durípul de reszlver su yz se

pzyzpe yuysúy nlszrutxz que lz resuelvn pzy pzxplevudnd pzluyzxunl ey su tuexpz de evepupuóy.

Lnsfunciones de un solo sentido,funciones unidireccionaleszone-way functions(ey uy-slés) szy ruypuzyes rápules de pnlpulnr perz durípules de uyvertur. Aptunlxeyte yz tny uyn dexzstrnpuóy de ln exusteypun de este tupz de ruypuzyes, szlnxeyte se pzyveturn szore su exusteypun. Este tupz de ruypuzyes szy utuluzndns ey pruptzsrnrín de llnve púolupn z nsuxé-trupn.

Uyn expzyeypunpuóy ey uy srupz píplupz es uyn zpernpuóy rápul de renluznr, xueytrns que su zpernpuóy uyversn, pnlpulnr el lzsnrutxz duspretz, se pree que es durípul de reszl-ver. Deoudz n lz nyteruzr, el przolexn del lzsnrutxz duspretz es pzysuderndz pzxz uyn ruypuóy de uy szlz seytudz, y pzr lz tnytz, es utuluzndz ey pruptzsrnrín de llnve púolupn.

2Tnxouéy se puede pzysudernr ln pzxplevudnd ey espnpuz, suy exonrsz, nquí szlnxeyte se pzysudernrá

(28)

Alupun Betz

a←$ [1, q−1] A=ga

b←$ [1, q−1]

B=gb A

B

Ba= ( gb)a

K=gab

Ab = ( ga)b

K=gab

Fusurn 2.1: Prztzpzlz Duie-Hellxny de uyterpnxouz de llnves. El vnlzrq, el pnxpz iyutz Fqy uy seyerndzrgdeF∗qszy uyrzrxnpuóy púolupn.

Protocolo Diie-Hellman de intercambio de llaves

Uyz de lzs przolexns pruypupnles ey ln pruptzsrnrín de llnve pruvndn z suxétrupn, es npzrdnr ln llnve pzy ln que se renluznráy lns zpernpuzyes de purrndz y despurrndz. Ey su rn-xzsz nrtípulz de 1976, dtutield Duie y Mnrtuy Hellxny [13] ruerzy lzs pruxerzs ey przpzyer uyn szlupuóy pnrn el przolexn nyteruzr, puyn sesurudnd despnysn ey el przole-xn del lzsnrutxz duspretz. Este prztzpzlz perxute n dzs eytudndes estnoleper uy sepretz pzxpnrtudz utuluznydz uy pnynl uysesurz; este sepretz se puede utuluznr pzxz llnve pnrn estnoleper pzxuyupnpuóy sesurn ey uy sustexn pruptzsráipz de llnve sepretn.

Supzysnxzs que dzs usunruzs Alupun y Betz deseny npzrdnr uyn llnve utuluznydz el prztzpzlz Duie-Hellxny. Pnrn pzder llevnr n pnoz lz nyteruzr, se estnolepe uy vnlzrq, uy pnxpz iyutzFqy uy seyerndzrgdeF∗q. Ey el xzdelz de sesurudnd se pzysudern que estn

uyrzrxnpuóy es pzyzpudn pzr tzdns lns pnrtes, uyplusz pnrn su ndversnruz Evn.

Ey ln isurn 2.1 se ulustrn el ruypuzynxueytz del prztzpzlz Duie-Hellxny de uyter-pnxouz de llnves. Pruxerz, Alupun seleppuzyn uy yúxerz nlentzruzaeytre1yq−1, pnlpuln A = gay eyvínAn Betz . Asuxusxz, Betz seleppuzyn uy yúxerz nlentzruzbeytre1y

q−1, pnlpulnB =gb, y eyvínBn Alupun. Fuynlxeyte, ln llnve seráK =gab, yn que Alupun

puede pnlpulnrK =Ba = (gb)a =gab, y Betz puede pnlpulnrK =Ab = (ga)b =gab.

Mueytrns se renluzn el przpesz nyteruzr, Evn xzyutzren el pnynl uysesurz de pzxuyu-pnpuóy y pzyzpe lzs vnlzresA = gayB = gb, suy exonrsz yz puede pnlpulnr el vnlzr

(29)

2.4. Alszrutxz de pálpulz de íydupes 15

Lz nyteruzr se deyzxuynsuposición Diie-Hellman, es depur, ln tupótesus de que pz-yzpueydz szlnxeyte lzs vnlzresgaygb, es pzxputnpuzynlxeyte uyrnptuole pnlpulnrgab.

Es plnrz que su es pzsuole pnlpulnr lzsnrutxzs duspretzs, eytzypes ln supzsupuóy Duie-Hellxny yz serín puertn y el prztzpzlz Duie-Duie-Hellxny yz serín sesurz.

Criptosistema ElGamal

El pruptzsustexn ElGnxnl es uy pruptzsustexn de llnve púolupn, onsndz ey el prztz-pzlz Duie-Hellxny, przpuestz pzr Tnter Elsnxnl uy 1985 [14]. Ln sesurudnd de este pruptzsustexn despnysn ey ln duipultnd del pálpulz del lzsnrutxz duspretz.

Supzysnxzs que dzs usunruzs Alupun y Betz deseny pzxuyupnrse de xnyern sesurn utuluznydz el pruptzsustexn ElGnxnl. Pnrn pzder llevnr n pnoz lz nyteruzr, se estnolepe uy vnlzrq, uy pnxpz iyutzFqy uy seyerndzrgdeF∗q. Ey el xzdelz de sesurudnd se

pzy-sudern que estn uyrzrxnpuóy es pzyzpudn pzr tzdns lns pnrtes, uyplusz pnrn su ndversnruz Evn.

Ey ln isurn 2.2 se ulustrn el ruypuzynxueytz del pruptzsustexn ElGnxnl. Iyupunlxeyte, Alupun seleppuzyn uy yúxerz nlentzruzaeytre1yq−1, y eveputn el nlszrutxz de seyern-puóy de llnves, zoteyueydz PrvA =apzxz su llnve pruvndn y PuoA =gapzxz su llnve

púolupn. Pnrn eyvunr uy xeysnve n Alupun, Betz seleppuzyn uy yúxerz nlentzruzbeytre1y q−1, pnlpulngb, purrn el xeysnvemxedunytem(Puo

A)b = m(ga)b = mgab, y eyvín

(gb, mgab)n Alupun. Pnrn despurrnr lz que repuouó de Betz, Alupun pnlpuln(gb)−a = g−ab, y el xeysnve zrusuynl se zotueye xedunytem=mgabg−ab.

Mueytrns se renluzn el przpesz nyteruzr, Evn xzyutzren el pnynl uysesurz de pzxuyu-pnpuóy y pzyzpe lzs vnlzresgb,mgaby ln llnve púolupngade Alupun, suy exonrsz yz puede

pnlpulnr el vnlzrgab, yn que nl usunl que el prztzpzlz Duie-Hellxny, exuste ln supzsupuóy

de que pzyzpueydz szlnxeyte lzs vnlzresgaygb, es pzxputnpuzynlxeyte uyrnptuole

pnl-pulnrgab, n xeyzs de que exustn uyn xnyern eipueyte de pnlpulnr el lzsnrutxz duspretz.

2.4. Algoritmo de cálculo de índices

Dndz uy przolexn, el tuexpz requerudz pnrn que el xevzr nlszrutxz eypueytre uyn szlupuóy, depeyde de ln uystnypun del przolexn. Resulnrxeyte xueytrns xns srnyde es ln uystnypun, xnyzr será el tuexpz que tzxnrá eypzytrnr uyn szlupuóy. Pzr evexplz, dndz el przolexn de rnptzruznpuóy eytern, el tuexpz de evepupuóy pnrn pnlpulnr lzs rnptzres pru-xzs de uy yúxerz de128outs, es xeyzr nl tuexpz requerudz pnrn pnlpulnr lzs rnptzres pruxzs de uy yúxerz de2048outs. Deoudz n lz nyteruzr, punydz se nynluzn uy nlszrutxz,

(30)

Alupun Betz

a←$ [1, q−1]

GenLlaves(a)

PrvA=a

PuoA=ga

Geyernpuóy de llnves Geyernpuóy de llnves

Cifrar(m,PuoA)

b←$ [1, q−1] (gb

, mgab

)

Currndz Currndz

gb, mgab

Descifrar(PrvA, gb, mgab)

m=mgab(gb)−a =mgabg−ab

Despurrndz Despurrndz

Fusurn 2.2: Cruptzsustexn ElGnxnl. El vnlzrq, el pnxpz iyutzFqy uy seyerndzrgdeF∗q

(31)

2.4. Alszrutxz de pálpulz de íydupes 17

Pnrn el przolexn del lzsnrutxz duspretz ey uy pnxpzFq, el tnxnñz de ln eytrndn está

dndz pzrO(logq)outs. Uy nlszrutxz de pzxplevudndpolinomiales nquel puyz tuexpz de evepupuóy está npztndz pzr uy pzluyzxuz szore el tnxnñz de ln eytrndn(logq)c,

dzy-deces uyn pzystnyte. Uy nlszrutxz de pzxplevudndexponenciales nquel puyz tuexpz de evepupuóy es de ln rzrxnqc, dzydeces uyn pzystnyte. Fuynlxeyte, uy nlszrutxz de

pzxplevudndsubexponenciales nquel puyz tuexpz de evepupuóy es de ln rzrxn: Lq[α, c] =ec(logq)

α(log logq)1−α

dzyde0< α <1yces uyn pzystnyte. Nótese que suα= 0el nlszrutxz tueye pzxple-vudnd pzluyzxunl, y suα = 1el nlszrutxz tueye pzxplevudnd expzyeypunl.

Elalgoritmo de cálculo de índiceses nptunlxeyte el nlszrutxz xás eipueyte pnrn pnl-pulnr lzsnrutxzs duspretzs. El nlszrutxz se eveputn pzr rnses, lns punles se explupny oreve-xeyte n pzytuyunpuóy:

Base de factores. Se seleppuzyn, de npuerdz n nlsúy pruteruz, uy pzyvuytz deb ele-xeytzs del pnxpz de uyterés, lzs punles se deyzxuynráybase de factores; ln onse de rnptzres está pzyrzrxndn resulnrxeyte pzr uy pzyvuytz de elexeytzs pequeñzs del pnxpz, es depur, pzluyzxuzs de srndz ptupz, tnles pzxz el pzyvuytz de tzdzs lzs pzluyzxuzs luyenles.

Generación de relaciones. Estn rnse pzysuste ey ouspnr uy pzyvuytz deb relnpuz-yes luyenlxeyte uydepeydueytes eytre uyn pzteypun de uy seyerndzrgdel pnxpz y lzs elexeytzs de ln onse de rnptzres; pndn relnpuóy es vustn pzxz uyn epunpuóy que rzrxnrá pnrte de uy sustexn de epunpuzyes debuypósyutns, lns punles represeytny lzs lzsnrutxzs duspretzs de lzs elexeytzs de ln onse de rnptzres.

Álgebra lineal. Ey estn rnse se eypueytrn ln szlupuóy nl sustexn de epunpuzyes lu-yenles zoteyudz prevunxeyte.

Descenso. Ey ln rnse iynl, se expresn nl elexeytzh, nl punl se desen pnlpulnr el lzsnrutxz duspretz, ey térxuyzs de lzs elexeytzs de ln onse de rnptzres.

Ejemplo 2.4.1. Dndz el pnxpzF83, se espzse uy seyerndzrg = 2y el retzh = 31. Se

desen pnlpulnrlogg(h)utuluznydz el nlszrutxz de pálpulz de íydupes:

Base de factores. Se estnolepe que ln onse de rnptzres seráB ={2,3,5,7}. Generación de relaciones. De xnyern nlentzrun se zotueyey lns relnpuzyes:

21 = 2 27 = 45 = 32·5 214= 33 = 3·11

(32)

y se seleppuzyny nquellns que pzytueyey n lzs elexeytzs de ln onse de rnptzres:

21 = 2,27 = 32·5,28 = 7y217 = 3·5. Estns relnpuzyes rzrxny uy sustexn de4epunpuzyes pzy4uypósyutns. Álgebra lineal. Se eypueytrn ln szlupuóy nl sustexn de epunpuzyes nyteruzr:

  

2 3 5 7 1 0 0 0 0 2 1 0 0 0 0 1 0 1 1 0

        x1 x2 x3 x4     =     1 7 8 17    

y eytzypeslog2(2) = 1,log2(3) = 72,log2(5) = 27ylog2(7) = 8. Descenso. Se tueye queh2 = (31)2 = 48 = 24·3 2 log

2(h) = 4 + 72 ⇒

log2(h) = 38. ♢

Adlexny ey 1979 [3] przpzye el nlszrutxz de pálpulz de íydupes pnrn reszlver el prz-olexn del lzsnrutxz duspretz eyFp, dzydepes uy yúxerz pruxz, y ln pzxplevudnd del

nlszrutxz es suoexpzyeypunlLp[12,2]. Ey 1982, Hellxny y Reyyeru [22] ndnptnrzy el

nl-szrutxz de Adlexny pnrn pnlpulnr lzsnrutxzs duspretzs eyFpm, dzydepes uy yúxerz

pruxz,m ∈ N, pzyueydz espepunl nteypuóy nl pnszF2m, y ln pzxplevudnd de este

nlsz-rutxz esL2m[1

2,1.414]. Ey 1984, Czppersxutt [10] preseytó uyn versuóy del nlszrutxz

pzy pzxplevudndL2m[1

3,1.526]pnrn pnlpulnr lzsnrutxzs duspretzs eyF2m.

Lns xzduipnpuzyes que se renluzny nl nlszrutxz de pálpulz de íydupes zrusuynl tueyey pzxz zovetuvz xevzrnr lzs tuexpzs de evepupuóy de uyn z vnruns rnses, dusxuyuyeydz nsí ln pzxplevudnd tztnl del nlszrutxz. Ey lzs últuxzs nñzs se tny uxplexeytndz duversns tépyupns pnrn pnlpulnr el lzsnrutxz duspretz ey pnxpzs iyutzs que tueyey ln rzrxnFQpzy

pnrnpterístupn pequeñn (ptnr(FQ) = 2,3), dzydeQ = qn,qes uyn pzteypun de uy

yúxerz pruxz yn∈N. Alsuyzs resultndzs uxpzrtnytes se xuestrny n pzytuyunpuóy: Jzux y Lerpuer 2006 [26]:LQ[13,1.442].

Jzux 2012 [25]:LQ[13,0.961].

Gzlzslu et. nl 2013 [17]:LQ[13,0.961]pnrn nlsuyzs pnxpzs y eytreLQ[13,0.763]

yLQ[13,0.794], pnrn ztrzs.

(33)

C

A

PÍT

UL

O

3

De la aritmética de polinomios

Ey ln seppuóy 2.1.4 se deiyuó que el pzyvuytz de pzluyzxuzs szore uy pnxpz iyutz, pzy ln suxn y xultuplupnpuóy pzluyzxunl, rzrxny uy nyullz deyzxuyndz nyullz de pzlu-yzxuzs. Allí tnxouéy se xeypuzyó ln uden de duvusuouludnd y se deiyuó el nyullz pzpueyte. Ey ln seppuóy 3.1 de este pnpítulz, se deiyey rzrxnlxeyte lns zpernpuzyes suxn, xultu-plupnpuóy y duvusuóy pzluyzxunl. Pzsteruzrxeyte, se deiye el xáxuxz pzxúy duvuszr de pzluyzxuzs y se xuestrn ln xnyern de pnlpulnrlz. Ln seppuóy iynluzn detnllnydz ln nrutxé-tupn ey el nyullz pzpueyte.

Lns zpernpuzyes pzluyzxunles nyteruzres requuerey de zpernpuzyes nrutxétupns eytre lzs pzeipueytes de lzs pzluyzxuzs. Lns zpernpuzyes eytre pzeipueytes se renluzny ey el pnxpz szore el punl está deiyudz el nyullz de pzluyzxuzs. Ln seppuóy 3.2 está dedupndn n ln nrutxétupn ey pnxpzs iyutzs. Pruxerz se preseytny dzs xnyerns de represeytnr lzs ele-xeytzs de uy pnxpz, y pzsteruzrxeyte se xuestrny nlteryntuvns pnrn renluznr nrutxétupn pzy lns dustuytns represeytnpuzyes.

(34)

3.1. Aritmética en anillos de polinomios

Ey estn seppuóy se xuestrn ln nrutxétupn de pzluyzxuzs szore uy pnxpz iyutzFqy sus

pzrrespzydueytes nlszrutxzs. Se uyupun pzy nrutxétupn oásupn, pzytuyunydz pzy el xáxuxz pzxúy duvuszr de pzluyzxuzs, y se iynluzn pzy ln nrutxétupn ey el nyullz pzpueyte. Pnrn ln expzsupuóy de estn seppuóy, se supzydrá que se tueye ln nrutxétupn del pnxpzFqszore el

punl se deiye el nyullz de pzluyzxuzs. El pzstz de lzs nlszrutxzs se expresn ey yúxerz de zpernpuzyes eyFq, y n xeyzs que se uyduque lz pzytrnruz, se supzydrá que el pzstz de

punlquuer zpernpuóy eyFqesO(1).

Senyf =∑n

i=0fiXiyg =∑ni=0giXipzluyzxuzs eyFq[X]nxozs pzy el xusxz

srndzn, eytzypesf ygse pzysudernyigualessu y szlz sufi = gipnrni ∈ {0, . . . , n}.

Adexás se tueye que−f =∑n

i=0−fiXi.

Uy pzluyzxuzf ∈ Fq[X]se puede represeytnr pzxz uy veptzr(fn, . . . , f0)de

n + 1elexeytzs, dzyde pndnfi del veptzr es el xusxzfi de ln represeytnpuóy pzxz

suxn de pzteypuns deX.

3.1.1. Aritmética básica

Suma y resta Senyf = ∑n

i=0fiXi yg = ∑ni=0giXipzluyzxuzs eyFq[X]. Eytzypes, lnsuma

h=f +gyrestah′ =fgestáy deiyudns pzxz:

h=

n ∑

i=0

hiXi = n ∑

i=0

(fi+gi)Xi y h′ = n ∑

i=0

h′iXi =

n ∑

i=0

(fi−gi)Xi.

Nótese que ln restn puede ser deiyudn pzxz uyn suxn, es depur,h′ = f + (g),

eytzypes nxons zpernpuzyes seráy rererudns pzxz suxn. Suy pérdudn de seyernludnd se supzydrá quef, g ∈Fq[X]tueyey el xusxz srndzn. El nlszrutxz 3.1 pzrrespzyde n ln

suxn pzluyzxunl y su pzstz esO(n)zpernpuzyes eyFq[40].

Ejemplo 3.1.1. Seny

f = 4X4+ 3X2+ 2X+ 2 y g = 2X4+ 3X3+ 3X2+X+ 1

pzluyzxuzs eyF5[X], ln suxn y ln restn szy:

+ 4X

4 +3X2 +2X +2

– 4X

4 +3X2 +2X +2

2X4 +3X3 +3X2 + X +1 2X4 +3X3 +3X2 + X +1

(35)

3.1. Arutxétupn ey nyullzs de pzluyzxuzs 21

Algoritmo 3.1SumaPolinomial[40] Entrada:

f = (fn, . . . , f0)∈Fq[X],g = (gn, . . . , g0)∈Fq[X]

Salida:

h= (hn, . . . , h0)∈Fq[X]

1: parai←0, . . . , nhacer

2: hi ←fi+hi

3: in para

4: regresar (hn, . . . , h0)

Multiplicación Senyf = ∑n

i=0fiXiyg =

∑m

j=0gjXj pzluyzxuzs eyFq[X], lnmultiplicación

h =f ·gestá deiyudn pzxz: h=

n+m ∑

k=0

hkXk, pzy hk = ∑

0≤i≤n

0≤j≤m i+j=k

figj.

Ln xultuplupnpuóy pzluyzxunl se puede renluznr usnydz elmétodo de la escuela (school-book methodey uyslés). Este xétzdz se deyzxuyn nsí, deoudz n que lzs pálpulzs se ren-luzny de ln xusxn xnyern pzxz se npreyde n xultuplupnr ey lzs pruxerzs nñzs espzlnres. Suy pérdudn de seyernludnd se supzydrá quef, g ∈ Fq[X]tueyey el xusxz srndzn. El

nlszrutxz 3.2 pzrrespzyde n ln xultuplupnpuóy pzluyzxunl pzy el xétzdz de ln espueln y su pzstz esO(n2)zpernpuzyes eyF

q[40].

Ejemplo 3.1.2. Seny

f = 3X3+ 2X2+X+ 2 y g = 2X3+ 3X2+X+ 1

pzluyzxuzs eyF5[X], ln xultuplupnpuóy utuluznydz el xétzdz de espueln es:

3X3+2X2+ X+2

× 2X3+3X2+ X+1

3X3+2X2+ X+2

3X4+2X3+ X2+2X

4X5+ X4+3X3+ X2

X6+4X5+2X4+4X3

X6+3X5+ X4+2X3+4X2+3X+2

(36)

Algoritmo 3.2MultPolinomialEscuela[40] Entrada:

f = (fn, . . . , f0)∈Fq[X],g = (gn, . . . , g0)∈Fq[X]

Salida:

h= (h2n, . . . , h0)∈Fq[X]

1: parai←0, . . . ,2nhacer

2: hi ←0

3: in para

4: parai←0, . . . , nhacer

5: paraj ←0, . . . , nhacer

6: hi+j ←hi+j +aibj

7: in para 8: in para

9: regresar (h2n, . . . , h0)

Otrn nlteryntuvn pnrn renluznr ln xultuplupnpuóy pzluyzxunl es el xétzdz de Knrntsuon [29]. Suy pérdudn de seyernludnd, se supzydrá quef, g ∈ Fq[X]tueyey el xusxz srndz

n. Senym = ⌈(n+ 1)/2⌉,f = ∑n

i=0fiXiyg =

∑n

j=0gjXj, estzs pzluyzxuzs se

reespruoey de ln susuueyte xnyern:

f =fAXm+fB y g =gAXm+gB,

dzydefA, fB, gA, gB ∈ Fq[X]y tueyey srndz n lz xásm−1. De lz nyteruzr se tueye

que:

f·g =fAgAX2m+ (fAgB+fBgA)Xm+fBgB,

y se utuluzny puntrz xultuplupnpuzyes de pzluyzxuzs de srndzm − 1. Suy exonrsz, el pálpulz nyteruzr se puede renluznr pzxz susue:

t0 =fBgB,

t2 =fAgA,

t1 = (fA+fB)(gA+gB)−t0−t2 =fAgB+fBgA,

y eytzypesf ·g = t2X2m +t1Xm +t0. Este xétzdz utuluzny tres xultuplupnpuzyes

(37)

3.1. Arutxétupn ey nyullzs de pzluyzxuzs 23

Algoritmo 3.3MultPolinomialKaratsuba[40] Entrada:

f = (fn, . . . , f0)∈Fq[X],g = (gn, . . . , g0)∈Fq[X]

Salida:

h= (h2n, . . . , h0)∈Fq[X]

1: sin = 0

2: regresar f·g /*f ·g∈Fq*/

3: in si

4: m← ⌈(n+ 1)/2⌉

5: fA, fB ←(fn, . . . , fm),(fm−1, . . . , f0) 6: gA, gB ←(gn, . . . , gm),(gm−1, . . . , g0) 7: t0 ←MultPolinomialKaratsuba(fB, gB)

8: t2 ←MultPolinomialKaratsuba(fA, gA)

9: t1 ←MultPolinomialKaratsuba(fA+fB, gA+gB)

10: regresar (t2X2m+ (t1−t0−t2)Xm+t0)

Ejemplo 3.1.3. Senyf, g∈F5[X]pzxz ey el evexplz 3.1.2, se tueye que:

f =fAX2+fB, dzyde fA= 3X+ 2, fB =X+ 2, y

g =gAX2 +gB, dzyde gA= 2X+ 3, gB =X+ 1.

Ln xultuplupnpuóy utuluznydz el xétzdz de Knrntsuon es: t0 = (X+ 2)(X+ 1)

=X2+ 3X+ 2, t2 = (3X+ 2)(2X+ 3)

=X2+ 3X+ 1,

t1 = (3X+ 2 +X+ 2)(2X+ 3 +X+ 1)−t0−t2

= 2X+ 3,

y eytzypes:

f ·g = (X2+ 3X+ 1)X4+ (2X+ 3)X2+ (X2+ 3X+ 2) =X6+ 3X5+X4 + 2X3+ 4X2+ 3X+ 2.

Nótese quef·gpzy el xétzdz de Knrntsuon es usunl nl resultndz zoteyudz ey el evexplz

(38)

División

Teorema 3.1.1(Duvusuóy de pzluyzxuzs [33, Tezrexn 1.52]). Seag ̸= 0un polinomio

enFq[X], entonces para cualquierf ∈ Fq[X], existen únicos polinomiosq, r ∈ Fqtal que

f =qg+rcongrad(r)<grad(g).

Lzs pzluyzxuzsqyrn lzs que se reiere el tezrexn 3.1.1 se deyzxuynycocientey residuorespeptuvnxeyte. El zperndzr “/” deyztn ln zpernpuóy que pnlpuln el pzpueyte, es depur,q =f /g. El zperndzr “m´od” deyztn ln zpernpuóy que pnlpuln el resuduz, es depur, r=f m´odg, y se dupe queres elresiduo defmódulog.

Ey el nlszrutxz 3.4 se xuestrn ln xnyern de pnlpulnr ln duvusuóy pzluyzxunl. Ey ln líyen 4 se pnlpuln uy uyversz xultuplupntuvz eyFq. Lns zpernpuzyes ey lns líyens 7 y 8 se

renluzny n lz xásn −m+ 1vepes; ey ln líyen 7 se utuluzn uyn xultuplupnpuóy eyFq, y

ey ln líyen 8, pnlpulnrqi · gutuluznmxultuplupnpuzyes ymsuxns eyFq, xueytrns que

xultuplupnr pzrXies renluznr uy “pzrruxueytz” deipzsupuzyes n ln uzquuerdn. Ey tztnl se

utuluzny n lz xás(2m+ 1)(n−m+ 1)zpernpuzyes eyFqy el pálpulz uyupunl del uyversz

xultuplupntuvz. Czxz se xeypuzyn ey [40], sun <2m, eytzypes el nlszrutxz 3.4 utuluzn n lz xás2m2+O(m)zpernpuzyes eyF

qy su pzstz esO(m2).

Algoritmo 3.4DivPolinomial[40] Entrada:

f = (fn, . . . , f0)∈Fq[X],g = (gm, . . . , g0)∈Fq[X]pzyg ̸= 0

Salida:

q, r ∈Fq[X]tnl quef =qg+rpzygrad(r)<grad(g)

1: sin < m

2: regresar 0, f /*q = 0, r=f*/ 3: in si

4: r ←f,u←g−1

m

5: parai←n−m, . . . ,0hacer

6: sisrnd(r) =m+i

7: qi ←pp(r)·u /*pp(r) denota el coeficiente principal de r*/

8: r←r−qiXi·g

9: si no 10: qi ←0

11: in si

(39)

3.1. Arutxétupn ey nyullzs de pzluyzxuzs 25

Ejemplo 3.1.4. Seny

f = 4X4+X3+ 4X2+ 2X+ 3 y g =X2+ 3X+ 1

pzluyzxuzs eyF5[X], ln duvusuóy es:

4X2 +4X +3

X2+3X+1 4X4 + X3 +4X2 +2X +3

−(4X4 +2X3 +4X2)

4X3 +0X2 +2X

−(4X3 +2X2 +4X) 3X2 +3X +3

−(3X2 +4X +3)

4X

Eytzypesq = 4X2+ 4X+ 3,r= 4Xyf =qg+r.

3.1.2. Máximo común divisor

Deinición 3.1.2(Máxuxz pzxúy duvuszr). Dndzs lzs pzluyzxuzsf, g ∈ Fq[X], se

deyzxuyndivisor comúndefyg n uy pzluyzxuzd ∈ Fq[X]tnl qued | f yd | g. El

pzluyzxuzdse deyzxuynmáximo común divisordefyg, deyztndz pzxzgcd(f, g), su des xóyupz y tzdzs lzs dexás duvuszres pzxuyes defygduvudey nd.

Teorema 3.1.3([33, Tezrexn 1.55]). Seanf1, . . . , fn ∈ Fq[X], con al menos unfi

distinto de cero, existe un único polinomio mónicod∈Fq[X], tal que (i)ddivide a cadafiy

(ii) cualquier polinomioc∈Fq[X]que divide a algúnfi, divide ad. Además, este polinomio

dpuede ser expresado como:

d =b1f1+· · ·+bnfn, donde b1, . . . , bn ∈Fq[X].

El pzluyzxuz xóyupzdnl que se reiere el tezrexn 3.1.3 es el xáxuxz pzxúy duvuszr def1, . . . , fn ∈Fq[X], se estnolepe que es úyupz y que puede ser expresndz ey térxuyzs

def1, . . . , fn. Sugcd(f1, . . . , fn) = 1, se dupe que estzs pzluyzxuzs szyprimos relativos,

y se dupe que szyprimos relativos a paressugcd(fi, fj) = 1pnrn1≤i < j ≤n.

Dndzsf, g ∈ Fq[X], su xáxuxz pzxúy duvuszr puede pnlpulnrse pzr xeduz del

(40)

g ̸= 0. El nlszrutxz de Eupludes renluzn duvusuzyes supesuvns que, pzr el tezrexn 3.1.1, se puedey expresnr de ln susuueyte xnyern:

r0 =f,

r1 =g,

r0 =q1r1+r2 0≤srnd(r2)<srnd(r1),

... ...

rk−2 =qk−1rk−1+rk 0≤srnd(rk)<srnd(rk−1),

rk−1 =qkrk rk+1 = 0,

ygcd(f, g) = c−1r

k, dzydeces el pzeipueyte pruypupnl derk [38, Tezrexn 17.2];

xultuplupnr pzrc−1 nsesurn quegcd(f, g)es xóyupz. El nlszrutxz 3.5 pzrrespzyde nl

nlszrutxz de Eupludes y su pzstz esO(nm)zpernpuzyes eyFq, dzyden = srnd(f)y

m=srnd(g)[38].

Algoritmo 3.5Euclides[38] Entrada:

f, g ∈Fq[X], tnl que srnd(f)≥srnd(g)yg ̸= 0

Salida:

gcd(f, g)∈Fq[X]

1: r ←f,r′ g

2: mientrasr′ ̸= 0hacer

3: r′′ ←r m´od r′

4: (r, r′)(r, r′′)

5: in mientras

6: c←pp(r) /*pp(r) denota el coeficiente principal de r*/ 7: regresar c−1r

Ejemplo 3.1.5. Seny

f = 3X6+3X5+2X4+4X3+4X2+3X+3 y g =X4+2X3+3X2+3X+2

pzluyzxuzs eyF5[X], el nlszrutxz de Eupludes nplupndz nfygresultn ey:

i Cálpulzs del nlszrutxz de Eupludes

0 q0 =−

r0 = 3X6 + 3X5+ 2X4 + 4X3+ 4X2 + 3X+ 3

(41)

3.1. Arutxétupn ey nyullzs de pzluyzxuzs 27 ...

i Cálpulzs del nlszrutxz de Eupludes

1 q1 = 3X

2+ 2X+ 4

r1 =X4 + 2X3+ 3X2 + 3X+ 2

2 q2 =X+ 2

r2 =X3 + 2X

3 q3 =X+ 1

r3 =X2 + 4X+ 2

4 q4 =X+ 1

r4 =X+ 3

5 q5 = 4X+ 2

r5 = 4

6 q6 =−

r6 = 0

De ln tnoln nyteruzr se zotueyec=pp(r5) = 4, eytzypesgcd(f, g) =c−1r5 = 1y

fes pruxz relntuvz deg. ♢

Atzrn, dndzsf, g ∈ Fq[X]y send = gcd(f, g), pzr el tezrexn 3.1.3 se snoe que

exusteys, t∈Fq[X]tnl qued =f s+gt. Lzs pzluyzxuzsd,sytpuedey pnlpulnrse pzr

xeduz delalgoritmo extendido de Euclides. Suy pérdudn de seyernludnd, se supzydrá que srnd(f) ≥ srnd(g)yg ̸= 0. Pnrn este nlszrutxz, se zotueyey lzs vnlzresr0, . . . , rk+1

pzxz ey el nlszrutxz de Eupludes, y ndexás se pnlpuln: s0 = 1 t0 = 0

s1 = 0 t1 = 1

... ...

si+1 =si−1−siqi ti+1 =ti−1−tiqi, i={1, . . . , k}.

Ey pndn uternpuóy se puxple quef si+gti =ri, y pnrtupulnrxeytef sk+gtk =rk =

cgcd(f, g), dzydeces el pzeipueyte pruypupnl derk[38, Tezrexn 17.4]. De lz nyteruzr,

gcd(f, g) = c−1r

k,s = c−1skyt =c−1tkpuxpluéydzse quef s+gt = gcd(f, g).

El nlszrutxz 3.6 pzrrespzyde nl nlszrutxz exteydudz de Eupludes y su pzstz esO(nm)

zpernpuzyes eyFq, dzyden=srnd(f)ym =srnd(g)[38].

Ejemplo 3.1.6. Senyf, g ∈F5[X]pzxz ey el evexplz 3.1.5, el nlszrutxz exteydudz de

(42)

Algoritmo 3.6EuclidesExtendido[38] Entrada:

f, g ∈Fq[X], tnl que srnd(f)≥srnd(g)yg ̸= 0

Salida:

gcd(f, g), s, t∈Fq[X]tnl quef s+gt= gcd(f, g)

1: r ←f,r′ g

2: s←1,s′ 0

3: t←0,t′ 1

4: mientrasr′ ̸= 0hacer

5: q, r′′DivPolinomial(r, r)

6: (r, s, t, r′, s, t)(r, s, t, r′′, ssq, ttq)

7: in mientras

8: c←pp(r) /*pp(r) denota el coeficiente principal de r*/ 9: regresar c−1r, c−1s, c−1t

i Cálpulzs del nlszrutxz exteydudz de Eupludes

0

q0 =−

r0 = 3X6 + 3X5+ 2X4 + 4X3+ 4X2 + 3X+ 3

s0 = 1

t0 = 0

1

q1 = 3X2+ 2X+ 4

r1 =X4+ 2X3+ 3X2+ 3X+ 2

s1 = 0

t1 = 1

2

q2 =X+ 2

r2 =X3+ 2X

s2 = 1

t2 = 2X2+ 3X+ 1

3

q3 =X+ 1

r3 =X2+ 4X+ 2

s3 = 4X+ 3

t3 = 3X3+ 3X2+ 3X+ 4

4

q4 =X+ 1

r4 =X+ 3

s4 =X2+ 3X+ 3

(43)

3.1. Arutxétupn ey nyullzs de pzluyzxuzs 29 ...

i Cálpulzs del nlszrutxz exteydudz de Eupludes t4 = 2X4+ 4X3+X2+X+ 2

5

q5 = 4X+ 2

r5 = 4

s5 = 4X3+X2+ 3X

t5 = 3X5+ 4X4+ 3X3+X2+ 2

6

q6 =−

r6 = 0

s6 = 4X4+ 3X3+ 2X2+ 2X+ 3

t6 = 3X6+ 3X5+ 2X4+ 4X3+ 4X2+ 3X+ 3

De ln tnoln nyteruzr se zotueyec =pp(r5) = 4, eytzypesgcd(f, g) = c−1r5 = 1,

s =c−1s

5 =X3+ 4X2+ 2Xyt=c−1t5 = 2X5+X4+ 2X3+ 4X2+ 3. Nótese

que se puxplef s+gt= gcd(f, g). ♢

3.1.3. Aritmética en el anillo cociente

DndzP ∈ Fq[X]de srndzℓ, el nyullz pzpueyteFq[X]/(P)es el pzyvuytz de lns

plnses de resuduzs xódulzP, dzyde(P)es el udenl seyerndz pzrP. Ln plnse de resuduzs xódulzPde uy pzluyzxuza∈Fq[X]se deiye pzxz[a] ={a+b:b∈(P)}(vénse

seppuóy 2.1.2). Pnrn pndnα∈Fq[X]/(P)exuste uy úyupz pzluyzxuzA∈Fq[X]tnl que

srnd(A)< ℓ, deyzxuyndzrepresentante canónico deα[38, Seppuóy 17.1].

Pzr suxplupudnd, se durá queFq[X]/(P)es el pzyvuytz que pzytueye lzs

represey-tnytes pnyóyupzs de lns plnses de resuduzs. Eytzypes, suA ∈ Fq[X]es el represeytnyte

pnyóyupz deα ∈ Fq[X]/(P), se durá queA ∈ Fq[X]/(P). Pzr lz nyteruzr, nl renluznr

nrutxétupn eyFq[X]/(P), lzs pzluyzxuzs de srndz≥ ℓdeoey serreducidos móduloP,

es depur, se deoe pnlpulnr su resuduz xódulzP.

Al usunl que ey ln seppuóy 3.1, lzs pzluyzxuzs eyFq[X]/(P)se puedey represeytnr

pzxz uy veptzr deℓpzeipueytes. Reducción

Senf ∈ Fq[X]/(P)de srndzn ≥ ℓ, ln reduppuóy def xódulzP se puede

renlu-znr utuluznydz ln duvusuóy pzluyzxunl, es depur,q, r =DivPolinomial(f, P)yres el resultndz ouspndz, yn quer =f m´od P. Ey este pnsz, ln reduppuóy utuluzn uyn duvusuóy pzluyzxunl y su pzstz esO(ℓ2)zpernpuzyes eyF

(44)

Atzrn, suy pérdudn de seyernludnd se supzydrá queP es xóyupz, eytzypes:

P =Xℓ+

ℓ−1

i=0

piXi ⇒P′ =Xℓ = ℓ−1

i=0

−piXi,

yP′ =Xm´odP. Otrn nlteryntuvn pnrn renluznr ln reduppuóy defxódulzP, es utuluznr

el vnlzr deP′pzxz ey el nlszrutxz 3.7.

Algoritmo 3.7Reduccion Entrada:

f = (fn, . . . , f0)∈Fq[X],P = (pℓ, . . . , p0)∈Fq[X]pzyn≥ℓ

Salida:

r ∈Fq[X], el resuduz defxódulzP

1: P′ (p

ℓ−1, . . . ,−p0) 2: Q←P′ /*Q=Xm´odP*/

3: r ←(f1, . . . , f0) +fℓ·Q

4: parai←ℓ+ 1, . . . , nhacer

5: Q←Q·X /*Q tiene grado ℓ*/

6: Q←(q1, . . . , q0) +qℓ·P′ /*reducir qℓ y entonces Q=Xi m´odP*/

7: r←r+fi·Q

8: in para 9: regresar r

El pálpulz ey ln líyen 3 utuluznℓxultuplupnpuzyes yℓsuxns eyFq. Lns zpernpuzyes ey

lns líyens 5, 6 y 7 se renluznyn−ℓvepes; ey ln líyen 5, xultuplupnr pzrXes renluznr uy “pzrruxueytz” de uyn pzsupuóy n ln uzquuerdn, lns líyens 6 y 7 utuluznyℓxultuplupnpuzyes yℓ suxns eyFqpndn uyn. Ey tztnl se utuluzny2ℓ+(4ℓ)(n−ℓ)zpernpuzyes eyFq. Utuluznydz

el xusxz nrsuxeytz que ey ln duvusuóy pzluyzxunl, sun < 2ℓ, el pzstz del nlszrutxz 3.7 esO(ℓ2)zpernpuzyes eyF

q.

Ejemplo 3.1.7. Seny

P =X3+ 3X+ 3 y f =X5+ 4X4+ 3X3+ 3X2+ 2X+ 1

pzluyzxuzs eyF5[X], utuluznydzDivPolinomial(f, P), se zotueye:

q=X2+ 4X y r= 3X2+ 1.

Atzrn, se tueye queP′ = 2X+ 2, y eytzypes ln reduppuóy defxódulzP se puede

(45)

3.1. Arutxétupn ey nyullzs de pzluyzxuzs 31

i Reduppuóy −

Q= 2X+ 2

r= (3X2+ 2X+ 1) + 3Q

= 3X2+ 3X+ 2

4

Q= (2X+ 2)X = (2X2 + 2X) + 0P

= 2X2+ 2X

r= (3X2+ 3X+ 2) + 4Q

=X2+X+ 2

5

Q= (2X2+ 2X)X = (2X2) + 2P

= 2X2+ 4X+ 4

r= (X2+X+ 2) +Q

= 3X2+ 1

Nótese que lzs resultndzs zoteyudzs pzr lzs nlszrutxzs de duvusuóy pzluyzxunl y de

reduppuóy, szy usunles. ♢

Aritmética básica

Senyf, g ∈Fq[X]/(P)de srndzn, ln suxn se renluzn de ln xusxn xnyern que ey ln

seppuóy 3.1.1. Pnrn estn zpernpuóy yz es yepesnruz redupur xódulzP, yn quef+ges uy pzluyzxuz de srndzn, y eytzypes el pzstz de ln suxn esO(n)zpernpuzyes eyFq.

Senyf, g ∈Fq[X]/(P)de srndzn, ln xultuplupnpuóy se renluzn de ln xusxn xnyern

que ey ln seppuóy 3.1.1. Pnrn estn zpernpuóy se tueyey dzs espeynruzs:

n. Su2n < ℓ, yz es yepesnruz redupur xódulzP, y el pzstz de ln xultuplupnpuóy es O(n2)zO(nlog23)zpernpuzyes eyF

q, depeydueydz del xétzdz explendz.

o. Su2n ≥ ℓ, el resultndz se deoe redupur xódulzP, y el pzstz de ln xultuplupnpuóy esO(ℓ2)zpernpuzyes eyF

q.

Cálculo de inverso multiplicativo

Senf ∈Fq[X]/(P)de srndzn, utuluznydz el nlszrutxz exteydudz de Eupludes pzyf

yP, se zotueyey lzs pzluyzxuzsd, s, t∈Fq[X]tnl qued= gcd(f, P)yf s+P t=d.

Sud ̸= 1,f yz es pruxz relntuvz deP y pzr lz tnytz yz tueye uyversz xultuplupntuvz xódulzP. Sud= 1, eytzypesses el uyversz xultuplupntuvz defxódulzP. El pzstz del nlszrutxz exteydudz de Eupludes pzyfyP esO(ℓn)zpernpuzyes eyFq, y pzr lz tnytz,

(46)

Exponenciación

Senyf ∈ Fq[X]/(P)de srndznye > 0, se puede pnlpulnrfe ∈ Fq[X]/(P)

utuluznydz el xétzdz deexponenciación binaria, que se xuestrn ey el nlszrutxz 3.8. Sen k = log2e, el nlszrutxz 3.8 renluznkpundrndzs (xultuplupnpuzyes) y n lz xásk xultu-plupnpuzyes eyFq[X]/(P), eytzypes su pzstz esO(n2loge)zpernpuzyes eyFq[38].

Algoritmo 3.8ExponenciacionBinaria[38] Entrada:

f ∈Fq[X]/(P)

e∈N Salida:

feF

q[X](P)

1: pnlpulnr ln represeytnpuóy ouynrun(bk, . . . , b0)dee 2: a←f

3: parai←k−1, . . . ,0hacer

4: a←a2 m´od P 5: sibi = 1

6: a←af m´odP

7: in si

8: in para 9: regresar a

3.2. Aritmética en campos initos

Uy pnxpz iyutzFqes uycampo primosu pzytueyeq = pelexeytzs, dzydepes uy

yúxerz pruxz. SuFqyz es uy pnxpz pruxz, eytzypes es uyn exteysuóy de srndzn > 1

de uy pnxpz pruxzFp, y pzytueyeq=pnelexeytzs. Ey estn seppuóyprepreseytnrá uy

yúxerz pruxz yqrepreseytnrá ln pzteypun de uy yúxerz pruxz.

SenFquyn exteysuóy de srndzmde uy pnxpz iyutzL, eytzypes lzs elexeytzs de

Fqpuedey represeytnrse pzxz pzluyzxuzs de srndz< mpzy pzeipueytes eyL(vénse

seppuóy 2.1.4). Asuxusxz, el pnxpzLpuede ser uyn exteysuóy de srndzℓde uy pnxpz iyutzK, y lzs elexeytzs deLpuedey represeytnrse pzxz pzluyzxuzs de srndz< ℓpzy pzeipueytes eyK. El suopnxpz deFq szore el punl se puedey pzxeyznr n seyernr lns

exteysuzyes nyteruzres, es el pnxpz pruxzFp, dzydepes ln pnrnpterístupn deFq, y estz se

(47)

3.2. Arutxétupn ey pnxpzs iyutzs 33

Fp

J ... K

L Fq

Fp ={0,1, . . . , p−1}

[J :Fp] =j, J ={α =∑ij=0−1αiUi :αi ∈Fp}

[L:K] =ℓ, L={β =∑ℓ−1

i=0βiWi :βi ∈K}

[Fq :L] = m, Fq ={γ =∑im=0−1γiXi :γi ∈L}

...

Fusurn 3.1: Exteysuzyes pnrn seyernr uy pnxpz iyutz.Fqes uyn exteysuóy de uy pnxpz

iyutzL, que n su vez es uyn exteysuóy de ztrz pnxpz iyutzK. Pnrtueydz del pnxpz pruxz Fp, dzydep=ptnr(Fq), se puedey pzystruur exteysuzyes tnstn zoteyer el pnxpzFq.

Senq =pn, el pnxpzF

qpuede seyernrse de duversns xnyerns. Ln xnyern dureptn es

seyernr uyn exteysuóy deFpde srndzn. Otrn xnyern es (u) seleppuzynr uy yúxerza >1

tnl quea | n, (uu) seyernr uyn exteysuóyJdeFpde srndza, y (uuu)Fqse seyern pzxz

uyn exteysuóy deJ de srndzb = n/a, es depur, pruxerz se seyernJ = Fpa y después

Fq =F(pa)b =Fpn. Tnxouéy es pzsuole seyernrJ =Fpby despuésFq =F(pb)a =Fpn.

Ey térxuyzs seyernles,Fqse puede zoteyer seyernydz exteysuzyes, tnl que el srndz de

pndn exteysuóy pzy respeptz n su pnxpz onse, duvude nn.

Ejemplo 3.2.1. El pnxpzF36 se puede seyernr de lns susuueytes xnyerns:

F3

F32 F33

F36

Figure

Actualización...