Įvadas
Neužšifruoti duomenys gali būti matomi tiek tarnybinėse stotyse, tiek persiunčiant juos tinklu. Pašto tarnybinių stočių administratoriai ar jūsų vietinio tinklo kaimynai gali nesunkiai skaityti jūsų laiškus. Jūs, žinoma, to nenorite.
Nepasirašyti duomenys gali būti suklastoti. Įsivaizduokite, kad gaunate laišką iš pažįstamo, o jame yra kenksmingas kodas ir jūsų paprašoma jį išbandyti. Arba gaunate el. laišką iš draugo, kuriam turite pervesti pinigus, o jame – pakeistas banko sąskaitos numeris į kitą sąskaitą, kurią valdo piktavalis. Jei laiškas yra suklastotas, pasekmės gali būti skaudžios.
Kodėl „GnuPG“?
Laiškų ir bylų šifravimui rekomenduojame naudoti „GnuPG“ programą. „GnuPG“ (The GNU Privacy Guard) yra nemokamas, stabiliai veikiantis, kokybiškas atviro kodo PGP pakaitalas, suderinamas su „OpenPGP“ standartu (žr. RFC2440), nenaudojantis patentuotų algoritmų, galintis iššifruoti ir patikrinti PGP v.5, 6, 7 žinutes, palaikantis „ElGamal“, DSA, RSA, AES, 3DES, „Blowfish“, „Twofish“, CAST5, MD5, SHA-1, RIPE-MD-160 ir TIGER šifravimo algoritmus. Be šių algoritmų galimas darbas ir su kitais, panaudojant papildomus modulius. Svarbu tai, kad čia aprašomam metodui naudoti nereikia papildomų investicijų (programų ar kvalifikuoto sertifikato pirkimo ir pan.), šifravimo algoritmo saugumas patikimas, ne veltui „GnuPG“ yra naudojamas daugelio IT saugumo specialistų visame pasaulyje, o CERT bendruomenėje jis patapo nerašytu standartu.
„GnuPG“ pradėtas kurti Werner Koch, vėliau vystytas Atviro kodo bendrijos. Finansuojant Vokietijos ekonomikos ir technologijų ministerijai, „GnuPG“ buvo pritaikytas ir „Microsoft Windows“ aplinkai. „GnuPG“ sistema leidžia saugiai užšifruoti bei iššifruoti duomenis ir užtikrinti jų konfidencialumą persiunčiant juos tinklu ar saugant laikmenose. Kitas sistemos privalumas – skaitmeninis parašas, užtikrinantis duomenų autentiškumą.
Truputis teorijos
Simbolių rinkinys, kurį galima skaityti be jokių specialių priemonių, vadinamas paprastu tekstu. Metodas, paprastą tekstą paverčiantis į gausybę nesusijusių simbolių, vadinamas šifravimu, o toks tekstas – užšifruotu tekstu. Supaprastinta šifravimo schema atrodo taip:
|ABCDEFGH| --------> |OD)E?$NS#6| ----------> |ABCDEFGH| paprastas raktas užšifruotas raktas pradinis tekstas +užšifravimas tekstas +iššifravimas tekstas
„GnuPG“/PGP šifruoja pranešimus ir bylas naudojant nesimetrinių raktų poras. Vieną porą sudaro viešasis ir privatusis raktai. Privatusis raktas turi būti saugomas jo savininko ir prieinamas tik jam vienam. Viešasis raktas turi būti visiems prieinamas ir gali būti dedamas į raktų tarnybines stotis (pavyzdžiui, http://pgp.mit.edu), gali būti siunčiamas el. paštu ar dedamas į tinklalapius.
Pažymėtina, kad „GnuPG“ yra komandinės eilutės programų rinkinys, bet yra sukurta keletas grafinių sąsajų, kurios žymiai supaprastina „GnuPG“ naudojimą: „Enigmail“ yra skirta „Thunderbird“ bei „Seamonkey“ pašto programoms, „WinPT“, „Seahorse“, „Gpgp“ ir „Kgpg“ yra skirtos bylų šifravimui.
Diegimas
„GnuPG“
Pirmiausia turime įdiegti „GnuPG“ paketą. „MS Windows“ naudotojams reikia atsisiųsti iš http://www.gnupg.org/download/ skyrelio „Binaries“ sukompiliuotą (paruoštą vykdymui kodą) programą „gnupg-w32cli.exe“ ir ją įdiegti. „Linux“ vartotojai gali atsisiųsti išeities programos kodus, ją sukompiliuoti ir įdiegti arba pasinaudoti Linux distribucijos paketų tvarkykle. Pavyzdžiui, „Debian“/„Ubuntu“ naudotojai gali įdiegti „GnuPG“ paketą terminalo lange surinkę komandas: „sudo apt-get install gnupg“. Tačiau „GnuPG“ turi CLI (angl. Command Line Inteface) sąsają, kuri nėra patogi, todėl reikėtų įdiegti dar keletą priedų.
„Enigmail“
„Enigmail“ – tai nemokamas pašto programos „Thunderbird“ priedas, padedantis naudoti „GnuPG“ programą laiškų šifravimui ir raktų valdymui. „Enigmail“ diegimas tiek „Windows“, tiek „Linux“ naudotojams yra vienodas: Thunderbird meniu spaudžiate „Tools->Add-ons->Get Extentions“, susirandate „Enigmail“ ir išsaugote vietinėje laikmenoje. Tada „Thunderbird“ „Add-ons“ lange spaudžiate „Install“, susirandate ką tik išsaugotą „Enigmail.xpi“ bylą ir įdiegiate ją. „GnuPG“ turi būti diegiamas atskirai.
1. pav. „Enigmail“ kartu su „Thunderbird“„WinPT“
„WinPT“ – tai nemokama programa, skirta MS „Windows“ OS. Ji reikalinga bylų šifravimui bei raktų tvarkymui ir yra suderinama su „OpenPGP“ programa. Taigi ji kuo puikiausiai tiks ir „GnuPG“. Atsisiųsti šią programą galima iš http://www.stud.uni-hannover.de/~twoaday/download.html. „GnuPG“ turi būti diegiama atskirai.
2 pav. „WinPT“ raktų tvarkyklė-
„Seahorse“
„Seahorse“ tai nemokamas „GnuPG“ grafinis apvalkalas, pritaikytas „Gnome“ aplinkai „Linux“ operacinėje sistemoje. Diegimas „Debian“/„Ubuntu“: „sudo apt-get install seahorse“. Diegimas „Gentoo“ (iš „root“ konsolės): „emerge seahorse“.
3 pav. „Seahorse“ raktų tvarkyklė „Kgpg“
„Kgpg“ – tai nemokamas grafinis „GnuPG“ programos apvalkalas, pritaikytas KDE aplinkai „Linux“ operacinėje sistemoje. Diegimas „Debian“/„Ubuntu“: „sudo apt-get install kgpg“. Diegimas „Gentoo“ (iš „root“ konsolės): „emerge seahorse“.
4 pav. KGPG raktų tvarkyklė-
„Gpg4win“
„Gpg4win“ – tai nemokamų programų rinkinys, skirtas Windows operacinei sistemai. Šiuo rinkiniu galima valdyti raktus, užšifruoti bei iššifruoti el. pašto laiškus ir bylas. „Gpg4win“ programų rinkinyje yra „GnuPG“, jos integravimo priemonės su „Microsoft Outlook“ ir „Outlook Express“ pašto programomis bei su „Windows Explorer“. Programą parsisiųsti galima iš http://www.gpg4win.org/download.html
Diegiant tereikia pasirinkti norimas papildomas programas: „WinPT“, GPA (raktų valdiklis), „GPGol“ („Microsoft Outlook“ ir „Outlook Express“ programų priedas), „GPGee“ („Windows Explorer“, „Sylpheed-Claws“ (el. pašto programa, palaikanti „GnuPG“) programų priedas). „GPGol“ tinka nesenesniam nei OL2003SP2 „Outlook“. Programos „Microsoft Outlook 2000“ yra priedas G-DATA, bet jo naudoti nerekomenduojama, nes G-DATA nevystomas ir turi keletą senų klaidų, be to, neveikia kartu su „Outlook Express“.
5 pav. Raktų tvarkyklė iš „gpg4win“ paketo
6 pav. „Outlook Express“ integravimas su „GnuPG“ iš „gpg4win“ paketo
7 pav. „MS Windows Explorer“ integravimas su „GnuPG“ iš „gpg4win“ paketo
Naudojimas
Įsidiegus „GnuPG“, pirmiausia reikia sugeneruoti naują raktų porą. Tai galite padaryti komandinėje eilutėje surinkę „gpg –gen-key“ arba raktų valdiklyje „Generate->New Key Pair“. Jei raktus jau turite, reikia juos importuoti. Tai galite padaryti komandinėje eilutėje „gpg –import“ arba raktų valdiklyje „File->Import Keys from File“.
Sugeneravus naują raktų porą, reikia ją pasirašyti (komanda „gpg –sign rakto_numeris“ arba iš raktų valdiklio meniu „Edit->Sign“), po to viešąją rakto dalį galima padėti į raktų serverį arba į tinklalapį ar persiųsti el. paštu interesantui. Padėti į viešąjį raktų serverį galima iš komandinės eilutės surenkant komandą „gpg –send-keys rakto_numeris –key-server pgp.mit.edu“ (čia pgp.mit.edu – viešojo raktų serverio adresas, kuris gali būti ir kitas), arba iš raktų valdiklio, pažymėjus pele raktą, spaudžiam meniu „Keyserver->Upload Public Keys“ (žiūr. 2, 3, 4, 5 pav.). Viešąsias raktų dalis padėti ar paimti galima ir iš naršyklės, apsilankius raktų tarnybinėje stotyje, pavyzdžiui, adresu http://cryptonomicon.mit.edu/. Viešųjų raktų tarnybinių stočių adresus galima rasti čia: http://www.rossde.com/PGP/pgp_keyserv.html.
Su pašto programa
Siųsdami užšifruotą laišką draugui, turite turėti viešąją draugo rakto dalį, kurią pašto programa paims iš raktų valdiklio pagal gavėjo adresą. Jei siųsdami laišką tik pasirašote, naudojama jūsų rakto privačioji dalis, todėl tapatybės patvirtinimui turite įvesti slaptą frazę, kurią įvedėte, kai generavote naują raktų porą. Tam el. pašto programoje, atidarę naują laišką, paspaudžiate mygtukus „Sign“ ar/ir „Encrypt“ (žr. 6 pav.).
Jei laišką siunčia draugas Jums, turėdamas Jūsų rakto viešąją dalį jis užšifruoja jums siunčiamą laišką. Jūs, turėdami savo asmeninį raktą (private key) ir slaptą frazę, galite iššifruoti atsiųstą laišką ar duomenis. Jei siųsdamas Jums laišką draugas jį pasirašo (savo rakto privačiąja dalimi), Jūs, turėdamas draugo rakto viešąją dalį, galite įsitikinti, kad laiškas gautas tikrai iš siuntusio asmens ir kad laiško turinys nepasikeitė. Tuo tikslu, pažymėję ar atsidarę gautą pasirašytą ar užšifruotą laišką, paspauskite mygtuką „Decrypt/Verify“.
-
Su bylų tvarkykle
„GnuPG“ panašiai naudojamas ir su bylomis. Bylų tvarkyklėje (galioja „Windows Explorer“, „Gnome“ ir KDE aplinkoms) pele pažymite norimą užšifruoti ar iššifruoti bylą, pasirenkate komandą, pasirenkate raktą ir įvedate slaptąją frazę (žr. 7 pav.). Komandinėje eilutėje surenkate „gpg –encrypt/decrypt/sign bylos_pavadinimas“. Raktų sąrašą leidžia pažiūrėti komanda „gpg –list-keys“. Detalesnius gpg komandos parametrus galite pažiūrėti surinkę komandą „gpg –help“ arba „man gpg“.
Laikmenų šifravimas
Jei turite daug duomenų ar bylų, kurios turi būti laikomos užšifruotos, „GnuPG“ tampa nepatogus naudoti. Tam tikslui rekomenduojame naudoti „TrueCrypt“ programą, kuri yra nemokama, atviro kodo ir veikia „Windows“ bei „Linux“ operacinėse sistemose, palaiko AES-256, „Serpent“ ir „Twofish“ kodavimo algoritmus. Šia programa galima užšifruoti laikmenas (diskus) (taip pat ir nešiojamas ar USB) ar jų skirsnius, dirbant su juose esančiomis bylomis realiu laiku, tai yra slaptą frazę įvedate tik prijungdami laikmeną, po to su bylomis, esančiomis užšifruotoje laikmenoje, dirbate lyg su nešifruotomis. Diegimas: „Debian“/„Ubuntu“ naudotojai komandinėje eilutėje renka „sudo apt-get install truecrypt“, gentoo naudotojai root konsolėje renka „emerge truecrypt“. „MS Windows“ naudotojai atsisiunčia programos archyvą iš http://www.truecrypt.org/downloads.php ir jį išpakavę įdiegia. „Linux“ operacinėje sistemoje laikmenas ar jų skirsnius galima šifruoti ir standartinėmis priemonėmis. Daugiau apie tai galite paskaityti TLDP svetainėje.