GNU PG

Από τη Βικιπαίδεια, την ελεύθερη εγκυκλοπαίδεια
Μετάβαση σε: πλοήγηση, αναζήτηση
GNU PG
Gnupg logo.svg
Δημιουργός Werner Koch
Πρώτη έκδοση 7 Σεπτεμβρίου 1999
Τελευταία έκδοση 2.1.21
Τύπος OPEN PGP
Γραμμένο σε C
Ανάπτυξη Ενεργή
Άδεια χρήσης GNU GPLv3
Ιστοσελίδα gnupg.org

To GNU Privacy Guard (GnuPG ή GPG) δίνεται με Γενική Άδεια Δημόσιας Χρήσης GNU και είναι εναλλακτικό πρόγραμμα του PGP, προγράμματος κρυπτογράφησης/υπογραφής e-mail. Το GnuPG είναι ευθυγραμμισμένο με το RFC 4880, το οποίο αποτελεί το σύγχρονο standard της IETF για το OpenPGP. To GPG είναι έργο του GNU software project του Ιδρύματος Ελεύθερου Λογισμικού (Free Software Foundation, FSF) και έχει λάβει χρηματοδότηση από την Γερμανική κυβέρνηση.

Ιστορία[Επεξεργασία | επεξεργασία κώδικα]

Το GnuPG αρχικά αναπτύχθηκε από τον Βέρνερ Κοχ (Werner Koch)[1][2] . Η έκδοση 1.0.0.0 κυκλοφόρησε στις 7 Σεπτεμβρίου 1999, δύο χρόνια μετά την αρχική έκδοση 0.0.0. Το 2000, το Γερμανικό υπουργείο Οικονομικών και Τεχνολογίας χρηματοδότησε την εκδοχή του GPG για Windows καθώς και την συγγραφή οδηγιών. Το GPG ακολουθεί το πρότυπο του OPEN PGP το οποίο με την σειρά του βασίστηκε στο PGP του Phil Zimmerman[3][4]. Tον Φεβρουάριο του 2014 το GPG χρηματοδοτήθηκε με το ποσό των 36,732 ευρώ για την κατασκευή της νέας ιστοσελίδας και για δομικές βελτιώσεις του συστήματος.

Πλατφόρμες[Επεξεργασία | επεξεργασία κώδικα]

Linux[Επεξεργασία | επεξεργασία κώδικα]

Στο λειτουργικό σύστημα των GNU/Linux, πολλές από τις διανομές έρχονται με προεγκατεστημένο το GNU Privacy Guard. Εναλλακτικά, μπορεί να βρεθεί στα αντίστοιχα εξωτερικά software repositories και να εγκατασταθεί μέσω του package manager που η κάθε διανομή χρησιμοποιεί. 

Mac[Επεξεργασία | επεξεργασία κώδικα]

Στο λειτουργικό σύστημα του OS X, υπάρχουν δύο κύριες εναλλακτικές εγκατάστασης του GPG:

  • GPG tools [1] Παρέχει ενσωμάτωση με το Mail.app. Παράλληλα, παρέχεται το GPG Keychain για διαχείριση κλειδιών, ενώ χρησιμοποιεί το MacGPG στο εσωτερικό του.
  • GnuPG for OS X [2]

Windows[Επεξεργασία | επεξεργασία κώδικα]

Στο λειτουργικό σύστημα των Windows, το GPG μπορεί να εγκατασταθεί μέσω του GPG4win.

Τέλος, σε κάθε περίπτωση, ο χρήστης μπορεί να επιλέξει να μεταγλωττίσει τον παρεχόμενο κώδικα και να εγκαταστήσει τα παραγόμενα εκτελέσιμα.

Διαδικασία[Επεξεργασία | επεξεργασία κώδικα]

Το GPG είναι ένα υβριδικό σύστημα κρυπτογράφησης, καθώς χρησιμοποιεί συνδυασμό αλγορίθμων συμμετρικής κρυπτογραφίας για λόγους ταχύτητας και κρυπτογραφίας δημοσίου κλειδιού για ανταλλαγή κοινού κλειδιού. Αυτή η διαδικασία είναι εγγενές κομμάτι του προτύπου του PGP και έχει υπάρξει τμήμα του OpenPGP από την πρώτη του έκδοση.

Η δεύτερη έκδοση του GPG, 2.x, χρησιμοποιεί την Libgcrypt, ως βιβλιοθήκη κρυπτογράφησης, ενώ η πρώτη έκδοση, GPG 1.x, δεν την χρησιμοποιεί.

Το GPG κρυπτογραφεί χρησιμοποιώντας μη συμμετρικά ζεύγη κλειδιών, τα οποία οι χρήστες του δημιουργούν ξεχωριστά. Τα δημόσια κλειδιά που παράγονται από τη διαδικασία μπορούν να ανταλλαχθούν με ποικίλους τρόπους, μεταξύ των οποίων είναι και οι Internet key servers. Πρέπει πάντοτε να ανταλλάσσονται με προσοχή, για να αποφευχθεί η αλλοίωση ταυτότητας αλλοιώνοντας την αντιστοιχία δημοσίου κλειδιού και κατόχου. Επίσης, παρέχεται η δυνατότητα να προστεθεί μία Ψηφιακή Υπογραφή στο μήνυμα, ώστε ο έλεγχος της ακεραιότητας του μηνύματος να δυνατός.

Το GPG υποστηρίζει επίσης αλγορίθμους συμμετρικής κρυπτογραφίας. Προεπιλεγμένος είναι ο CAST5 αλγόριθμος. Το GPG δε χρησιμοποιεί πατενταρισμένους αλγορίθμους ή αλγορίθμου που υπόκεινται σε περιορισμένη χρήση λόγω της άδειάς τους.

Για αρκετό καιρό, το GPG δεν υποστήριζε τον  αλγόριθμο IDEA, που χρησιμοποιούταν στον PGP. Η συγκεκριμένη δυνατότητα μπορούσε να επιτευχθεί μόνο μέσα από πρόσθετο εργαλείο. Ωστόσο, μπορεί να απαιτούσε άδεια, σε χώρες στις οποίες ο εν λόγω αλγόριθμος ήταν πατενταρισμένος. Από την έκδοση 1.3.13/2.0.20 και μετά, ο GPG υποστηρίζει τον IDEA, καθώς έληξε η πατέντα του το 2012.

Στις εκδόσεις 2.0.26 και 1.4.18, το GPG υποστηρίζει τους εξής αλγορίθμους:

  • Δημοσίου κλειδιού: RSA, ElGamal, DSA
  • Cipher: IDEA, 3DES, CAST5, Blowfish, AES-128, AES-192, AES-256, Twofish, Camellia-128, Camellia-192, Camellia-256
  • Κατακερματιμού: MD5, SHA-1, RIPEMD-160, SHA-256, SHA-384, SHA-512, SHA-224
  • Συμπίεσης: Zip, ZLIB, BZIP2

Η έκδοση 2.1.x υποστηρίζει κρυπτογραφία ελλειπτικών καμπυλών.

Αδυναμίες[Επεξεργασία | επεξεργασία κώδικα]

Το πρότυπο του OpenPGP επιρέπει την χρήση αρκετών μεθόδων για την ψηφιακή υπογραφή μηνυμάτων. Το 2003, στην προσπάθεια να γίνει μία από αυτές τις μεθόδους πιο αποδοτικές, παρουσιάστηκε μία ευπάθεια στην ασφάλεια του συστήματος. Η ευπάθεια αυτή επηρέαζε μόνο μία μέθοδο ψηφιαικής υπογραφής και μόνο για συγκεκριμένες εκδόσεις του GnuPG (1.0.2 μέχρι 1.2.3). Υπολογίζεται πως υπήρχαν λιγότερο από 1000 κλειδιά που επηρέαστηκαν στον server, καθώς οι περισσότεροι χρήστες δεν χρησιμοποιούσαν την μέθοδο αυτή, και συνεπώς η ζημιά περιορίστηκε αρκετά. Μετά την αποκάλυψη της ευπάθειας αυτής, η υποστήριξη της μεθόδου σταμάτησε (εκδόσεις GnuPG 1.2.4 και έπειτα).

Δύο ακόμα τέτοιες ευπάθειες ανακαλύψθηκαν στις αρχές του 2006. Στην πρώτη απ’αυτές, παρατηρήθηκε πως κάποιες χρήσεις του GnuPG για verification υπογραφών κατέληγαν σε ένα false positive αποτέλεσμα. Η δεύτερη αφορούσε τα non-MIME μηνύματα, που ήταν ευπαθή σε επιθέσεις όπου εισάγονταν δεδομένα μετά την ψηφιακή υπογραφή του μηνύματος, χωρίς αυτό να σημαίνε την αποτυχία της μεθόδου επιβεβαίωσης. Και στις δύο περιπτώσεις οι ευπάθειες αυτές καλύφθηκαν με μελλοντικές εκδόσεις του GnuPG.

Υποστήριξη σε εφαρμογές[Επεξεργασία | επεξεργασία κώδικα]

Το GnuPG χρησιμοποιείται από αρκετές εφαρμογές, front-end συστήματα καθώς και browsers plugin, όπως είναι τα ακόλουθα:

  • Claws mail – mail client με GPG plugin
  • Enigform – επέκταση Firefox
  • Enigmail – επέκταση Thunderbird
  • FireGPG[30] – επέκταση Thunderbird (εγκαταλήφθηκε)
  • Gpg4win – πακέτο εργαλειών για κρυπτογράφηση email και αρχείων σε Windows
  • GPGMail – επέκταση του OS X Mail.app
  • GPGServices – επέκταση του OS X Services Menu
  • GPGTools – πακέτο εργαλειών για το OS X, γιια κρυπτογράφηση email και αρχείων.
  • KGPG – ένα front-end KDE σύστημα για το GnuPG
  • MCabber – μία Jabber client εφαρμογή
  • Mutt – email client με εγγενή υποστήριξη PGP/GPG
  • Psi - client για ανταλλαγή άμεσων μηνυμάτων
  • WinPT – ένα front-end για το GPG σε Windows

Στο διεθνή τύπο[Επεξεργασία | επεξεργασία κώδικα]

Τον Μάιο 2014, δημοσιεύθηκε στην Washington Post ένα 12-λεπτο video με τίτλο “GPG for Journalists” που είχε δημοσιευθεί τον Ιανουάριο του 2013 στην υπηρεσία Vimeo από τον χρήστη anon108. Σύμφωνα με την εφημερίδα ο χρήστης αυτός δεν ήταν άλλος παρά ο γνωστός Edward Snowden, ο οποίος αναφέρει στο video του με παραμορφωμένη φωνή, πως έκανε το video αυτό για να διδάξει στον Glenn Greenwald την έννοια της κρυπτογράφησης σε mail.

Αναφορές[Επεξεργασία | επεξεργασία κώδικα]

Εξωτερικοί σύνδεσμοι[Επεξεργασία | επεξεργασία κώδικα]


Στο λήμμα αυτό έχει ενσωματωθεί κείμενο από το λήμμα GNU Privacy Guard της Αγγλικής Βικιπαίδειας, η οποία διανέμεται υπό την GNU FDL και την CC-BY-SA 3.0. (ιστορικό/συντάκτες).