Implementing Arithmetic for Elliptic Curve Cryptosystems

dc.contributorAalto-yliopistofi
dc.contributorAalto Universityen
dc.contributor.advisorNiemi, Valtteri
dc.contributor.authorLeskelä, Lasse
dc.contributor.departmentTeknillisen fysiikan ja matematiikan osastofi
dc.contributor.schoolTeknillinen korkeakoulufi
dc.contributor.schoolHelsinki University of Technologyen
dc.contributor.supervisorNevanlinna, Olavi
dc.date.accessioned2020-12-03T22:59:11Z
dc.date.available2020-12-03T22:59:11Z
dc.date.issued1999
dc.description.abstractTyö käsittelee elliptisiin käyriin pohjautuvien kryptosysteemien tehokasta toteuttamista. Näiden systeemien suorituskykyä tarkastellaan vertailemalla äärellisten kuntien ja elliptisten käyrien aritmetiikan eri laskentamenetelmiä. Lisäksi tehdään katsaus kehittyneimpiin algoritmeihin elliptisen käyrän diskreetin logaritmin ongelman ratkaisemiseksi, mikä luo matemaattista pohjaa olettamukselle, että elliptisiin käyriin perustuvilla julkisen avaimen kryptosysteemeillä voidaan saada aikaan vahva salaus suhteellisen Iyhyillä avaimilla. Elliptisten käyrien laaja matemaattinen teoria juontaa juurensa algebrallisesta geometriasta ja lukuteoriasta. Lyhyyden vuoksi muutama lause, joiden todistaminen vaatisi syvällisempää tietämystä näiltä aloilta, on esitetty suoraan ilman todistusta. Näitä lauseita tarvitaan elliptisen käyrän ryhmärakenteen selvittämiseksi, mikä puolestaan on kyseiseen käyrään perustuvan kryptosysteemin turvallisuuden kannalta merkittävä tekijä. Elliptisen käyrän ryhmäoperaatio voidaan laskea suorittamalla muutama laskutoimitus kunnassa, jonka päälle kyseinen käyrä on rakennettu. Koska kryptografiassa käytettävät kunnat ovat äärellisiä, tästä seuraa, että äärellisen kunnan nopeat laskenta-algoritmit ovat tärkeitä suunniteltaessa elliptisen käyrän aritmetiikan tehokkaita toteutuksia. Tämän vuoksi äärellisiä kuntia käsitellään työssä yksityiskohtaisesti, painottuen kuntiin, joiden karakteristika on 2. Mikä tekee karakteristikan 2 äärellisistä kunnista kiinnostavia on se tosiseikka, että nämä voidaan tulkita vektoriavaruuksiksi yli kunnan F_(2) = {0,1}. Kyseiset kunnat voidaan näin ollen luontevasti esittää kiinteän pituisina bittijonoina, mikä puolestaan johtaa hyvin nopeisiin kuntaoperaatioiden toteutuksiin käyttäen logiikkapiirejä tai yleiskäyttöisiä mikroprosessoreita. Työssä esitetään kuvaus eräistä aritmetiikan toteutuksista suurille karakteristikan 2 kunnille. Elliptisen käyrän kryptosysteemeissä käytettävistä laskutoimituksista tärkein on käyrän pisteen monikerran laskeminen, mikä on analoginen toimenpide potenssiin korotuksen kanssa kertolaskunotaatiolla varustetussa ryhmässä. Työssä esitetään muutama nopea yleisen ryhmän potenssiinkorotusalgoritmi sekä tekniikoita, jotka hyödyntävät elliptisen käyrän pisteiden esitystä projektiivisen tason homogeenisissa koordinaateissa. Yhdistämällä nämä tekniikat äärellisen kunnan algoritmeihin päädytään tehokkaisiin elliptisen käyrän pisteen monikerran laskentamenetelmiin. Työssä vertaillaan näiden menetelmien kompleksisuutta ja tarkastellaan eräitä tehtyjä ohjelmisto- ja mikropiiritoteutuksia.fi
dc.format.extent87
dc.identifier.urihttps://aaltodoc.aalto.fi/handle/123456789/86574
dc.identifier.urnURN:NBN:fi:aalto-2020120445412
dc.language.isoenen
dc.programme.majorMatematiikkafi
dc.programme.mcodeMat-1fi
dc.rights.accesslevelclosedAccess
dc.subject.keywordelliptic curvesen
dc.subject.keywordelliptiset käyrätfi
dc.subject.keywordelliptic curve cryptosystemsen
dc.subject.keywordelliptisen käyrän kryptosysteemitfi
dc.subject.keywordfinite fieldsen
dc.subject.keywordäärelliset kunnatfi
dc.subject.keyworddiscrete logarithm problemen
dc.subject.keyworddiskreetin logaritmin ongelmafi
dc.subject.keywordimplementationsen
dc.subject.keywordtoteutuksetfi
dc.titleImplementing Arithmetic for Elliptic Curve Cryptosystemsen
dc.titleAritmetiikan toteuttaminen elliptisen käyrän kryptosysteemeihinfi
dc.type.okmG2 Pro gradu, diplomityö
dc.type.ontasotMaster's thesisen
dc.type.ontasotPro gradu -tutkielmafi
dc.type.publicationmasterThesis
local.aalto.digiauthask
local.aalto.digifolderAalto_40846
local.aalto.idinssi13952
local.aalto.inssilocationP1 Ark TF80
local.aalto.openaccessno

Files