dc.contributor.author | Skarderud, Fredrik | |
dc.date.accessioned | 2008-04-01T08:42:51Z | |
dc.date.issued | 2005 | |
dc.identifier.uri | http://hdl.handle.net/11250/144088 | |
dc.description.abstract | NORSK:
Å kunne lagre hemmeligheter og sensitive data på en trygg måte er en nødvendighet i
dagens samfunn. Siden en stor menge av hardwareteknologi som tilbyr "sikker " lagring
av sensitiv data er dyrt for den enkelte bruker, er det veldig vanlig å benytte seg av programvare
eller software-implementerte krypteringsalgoritmer for å løse dette problemet.
Hvis for eksempel den sensitive informasjonen vi vil beskytte er den hemmelige nøkkelen
i et privat/offentlig nøkkelpar, er det viktig å finne den beste måten å lagre nøkkelen
på, hvis mediet som brukes er en PC med harddisk. Det er også viktig å vite noe om
hvor sikre og hvor bra eksisterende applikasjoner og krypteringsalgoritmer implementert
i software er for å få en viss trygghetsfølelse når det gjelder lagringen av sensitiv data.
En gjennomgang av noen av de mest kjente og brukte krypteringsalgoritmene i software
og andre metoder for lagring av sensitive data, samt forslag til et nytt stream cipher
for lagring av sensetive data på en PC, implementasjon og testanalyse er hovedpunktene
i denne masteroppgaven.
Ved å anvende godt kjente og analyserte teknikker, som for eksempel lineære shift
registre, iregulær klokking og sannhetstabeller som bygningsblokker for krypteringsalgoritmen,
er målet å oppnå høy sikkerhet og god forståelse for algoritmens struktur.
Algoritmen er implementert i C#. Både algoritmens implementasjon og struktur er
gjort med hensyn på å oppnå høy effektivitet i software. Spesielt for standard 32 bits
prosessorer som er mest vanlig i dagens standard datamaskiner.
Svakhetsanalyse og grundig statistisk testing er utført på algoritmen for å vurdere
algoritmens sikkerhet og styrke.
Både svakhetsanalysen og den statistiske analysen av algoritmen indikerer at den
virker sikker og har gode statistiske egenskaper. Praktisk utførte efektivitetstester viser
at algoritmen eksekveres raskt i software. | no |
dc.description.abstract | ENGELSK:
To store secrets and sensitive data in secure ways is necessary in the modern life. Since
most hardware technologies used to store sensitive data are expensive for a single user,
it is very common to store this kind of data by the means of software or software implemented
encryption procedures. If for example the secret to protect is the secret key
in a Public Key Infrastructure environment it would be important to determine the best
way of storing it on a hard drive. It is also important to determine how secure the existing
storing applications or available encryption algorithms are. A brief overview of the
most common methods and solutions for storing secrets, such as encryption algorithms
are given, and a proposal of a new stream cipher, its implementation and analysis are
presented in this thesis.
The stream ciphermakes use of well known and understood techniques, such as linear
feedback shift registers, irregular clocking, and truth tables, as elements and building
blocks to achieve very high security and easy understanding of the fundamental structure
of the cipher.
The cipher is implemented in C#, and both the implementation and design of the
cipher is made to achieve high efficiency when running in software, especially on a standard
32 bit processor (CPU).
Cryptanalysis and thorough statistical testing are applied to the cipher to evaluate its
cryptographic strength and security.
Both the cryptanalysis and the statistical testing conducted on the cipher indicate that
the cipher is secure and has good statistical properties. Efficiency testing shows that the
cipher design is very fast in software. | en |
dc.format.extent | 1034461 bytes | |
dc.format.mimetype | application/pdf | |
dc.language.iso | eng | en |
dc.subject | datasikkerhet | en |
dc.subject | datakryptering | en |
dc.subject | krypteringsalgoritm | en |
dc.title | Protecting sensitive data on a PC by a custom algorithm | en |
dc.type | Master thesis | en |
dc.subject.nsi | VDP::Mathematics and natural science: 400::Information and communication science: 420::Security and vulnerability: 424 | en |