Τα πλέγματα μελετήθηκα για πρώτη φορά απο τους J. L. Lagrange και C. F. Gauss
στην θεωρία των τετραγωνικών μορφών στα τέλη του 18ου αιώνα αλλά και αργότερα
από άλλους μαθηματικούς. Με την επινόηση της αλγοριθμικής θεωρίας αριθμών
τα πλέγματα ήρθαν και πάλι στο προσκήνιο περίπου το 1980 και ειδικότερα μετά
την εφεύρεση του περίφημου LLL αλγορίθμου το 1982. Έκτότε τα πλέγματα αποτελούν
μια ενεργή περιοχή έρευνας στην θεωρητική πληροφορική και έχουν εφαρμογές,
μεταξύ άλλων, στην υπολογιστική θεωρία αριθμών, στην κρυπτογραφία, στην κρυπτανάλυση
και στον ακέραιο προγραμματισμό και επιπλέον έχουν μερικές μοναδικές ιδιότητες
από πλευράς υπολογιστικής πολυπλοκότητας.
Κρυπτογραφικά σχήματα βασισμένα σε πλέγματα εμφανίστηκαν για πρώτη
φορά στην πρωτότυπη δουλειά του M. Ajtai το 1996 και έχουν αναπτυχθεί σημαντικά
από τότε. Ο Ajtai παρουσίασε μια οικογένεια συναρτήσεων μονής κατεύθυνσης
των οποίων η ασφάλεια βασίζεται δυσκολία προσέγγισης, εντός ενός πολυωνυμικού
παράγοντα στην διάσταση του πλέγματος, της χειρότερης περίπτωσης για το πρόβλημα
του μικρότερου διανύσματος στα πλέγματα. Με άλλα λόγια έδειξε ότι αν κάποιος
αντιστρέψει με σημαντική πιθανότητα μια συνάρτηση από αυτή την οικογένεια
τότε μπορεί να λύσει ένα οποιοδήποτε στιγμιότυπο του προσεγγιστικού προβλήματος,
εντός ενός πολυωνυμικού παράγοντα στην διάσταση του πλέγματος, του μικρότερου
διανύσματος σε ένα πλέγμα. Αυτή η μοναδική σύνδεση μεταξύ δυσκολότερης
και μέσης περίπτωσης έχει ιδιαίτερο ενδιαφέρον για την κρυπτογραφία αλλά και
γενικότερα για την θεωρία πολυπλοκότητας.
Ο κύριος σκοπός αυτής της διπλωματικής εργασίας είναι η ανασκόπηση της
θεωρίας των πλεγμάτων και της εφαρμογής τους στην κρυπτογραφία. Στο πρωτο
κεφάλαιο δίνουμε βασικούς ορισμούς και ιδιότητες των πλεγμάτων ενώ στο δεύτερο
κεφάλαιο περιγράφουμε κάποια βασικά υπολογιστικά προβλήματα των πλεγμάτων,
περιγράφουμε την έννοια της μειωμένης βάσης πλέγματος με έμφαση στον αλγόριθμο
LLL. Στο τρίτο κεφάλαιο παρουσιάζουμε αποτελέσματα από την θεωρία πολυπλοκότητας
που αφορούν στα πλέγματα ενώ στο τέταρτο και τελευταίο κεφάλαιο περιγράφουμε
κάποια κρυπτοσυστήματα δημοσίου κλειδιού που βασίζονται σε προβλήματα των
πλεγμάτων αλλά και κάποια που βασίζονται στο συναφές πρόβλημα, "Εκμάθηση
με σφάλματα".
Lattices were first studied by J. L. Lagrange and C. F. Gauss in the theory of
quadratic forms in the late 18th century and later on by other mathematicians. With
the advent of algorithmic number theory, the subject had a revival around 1980 especially
after the invention of the celebrated LLL algorithm in 1982. Since then
lattices have become a topic of active research in computer science and have many
applications in computational number theory, cryptography, cryptanalysis and integer
programming among others and also have some unique properties from a
computational complexity point of view.
Cryptographic schemes based on lattices first emerged in the seminal work of
M. Ajtai in 1996 and have developed rapidly in the past few years. Ajtai presented a
family of one-way functions whose security is based on the worst-case approximation
hardness of the Shortest Vector Problem (SVP) in lattices, within a polynomial
factor in the lattice dimension. In other words, he showed that being able to invert
a function chosen from this family with non-negligible probability implies the
ability to solve any instance of approximate SVP within a polynomial factor in the
lattice dimension. This remarkable connection between worst-case and averagecase
complexity in certain lattice problems is of particular interest in cryptography
and more general in complexity theory.
The main purpose of this diploma thesis is to overview lattices and their application
to cryptography. In the first chapter we give some basic mathematical
background on lattices and, while in the second chapter we describe some basic
computational lattice problems and introduce the notion of a reduced lattice basis
with emphasis on the LLL algorithm. In the third chapter we present complexity
results regarding lattice problems and in the fourth and last chapter we describe
public-key encryption schemes that are based on lattice problems and some that are
based on the related problem, "Learning with errors".