Miksi ja kuinka käyttää PGP-digitaalista allekirjoitusta

Jonkin aikaa sitten keskustelimme salaustekniikasta (kuten MD5 ja SH1-tarkistussummat) ja kuinka niiden avulla voidaan varmistaa, että latamasi tiedosto on sama tiedosto, jonka sen luoja on tarkoittanut sinun lataavan luomalla tiedostolle ainutlaatuisen sormenjäljen, joka voidaan tarkastettu alkuperäisen suhteen.

Mahdollisuus tarkistaa melkein minkä tahansa tiedoston eheys on tärkeää, mutta kun lataamme yksityisyys- ja tietoturvaohjelmistoja Internetistä, se on ehdottoman kriittinen. Loppujen lopuksi mitä hyötyä on luottaa yksityisyytesi ja tietoturvasi ohjelmaan, joka voi sisältää viruksen, varsinkin kun ajatellaan, että tällainen ohjelmisto ja sen käyttäjät ovat epäilemättä NSA: n ja sen ilk: n ensisijaisia ​​tavoitteita?

Jopa kun lataat ohjelmistoja suoraan myyjän tai kehittäjien verkkosivuilta, saatat joutua Man-in-the-Middle (MitM) -hyökkäyksen uhreiksi tai itse verkkosivusto voi olla vaarantunut eri tavoin.

Salaushajautusten avulla on yritetä ratkaista tämä ongelma, mutta valitettavasti tekniikalla on suuri heikkous - esimerkiksi kehittäjän verkkosivusto voidaan hakkeroida näyttämään kompromissitiedoston hash kuin alkuperäinen tai matemaattiset haavoittuvuudet voivat tehdä niistä epävarmoja. Hassi on siksi hyödyllinen sen varmistamisessa, että tiedostoa ei ole vioittunut, mutta sillä on vain rajoitettu käyttö sen varmistamisessa, että latamasi tiedosto on sama tiedosto, jonka kehittäjät aikovat sinun ladata.

Saadakseen paremmat takeet tästä, kehittäjät voivat allekirjoittaa tiedostojaan digitaalisilla allekirjoituksilla, joissa käytetään epäsymmetristä kryptografiaa (julkiset avaimet ja yksityiset avaimet) varmistaakseen, että tiedosto on tarkalleen mitä se väittää olevansa.

Kaavio, joka osoittaa, kuinka digitaalista allekirjoitusta käytetään ja sitten varmennetaan.

PGP-digitaaliset allekirjoitukset

Eri salausjärjestelmät käyttävät erilaisia ​​mekanismeja digitaalisten allekirjoitusten luomiseen ja validointiin. Esimerkiksi Windows käyttää Microsoftin julkisen avaimen infrastruktuurin (PKI) tekniikkaa validoimaan allekirjoitukset automaattisesti, kun ohjelmisto asennetaan ensimmäisen kerran.

Avoimen lähdekoodin ohjelmisto ei voi käyttää tyydyttävää Microsoft PKI -sovellusta, joten se käyttää PGP-digitaalisia allekirjoituksia. Joka on sitten todennettava manuaalisesti. Nämä toimivat hyvin kuin avainparit, joita käytetään PGP-sähköpostien todentamiseen, ja kuten näemme, PGP-digitaalisten allekirjoitusten todentaminen vaatii PGP-yhteensopivan sähköpostiohjelman käyttämisen.

Valitettavasti tämä tarkoittaa myös, että kuten PGP: n käyttäminen sähköpostien suojaamiseen, PGP: n digitaalisten allekirjoitusten käyttö on liian monimutkaista.

Kuinka vahvistaa digitaalinen allekirjoitus Kleopatra GUI -sovelluksella

Tiedoston PGP-digitaalisen allekirjoituksen tarkistamiseksi on käytettävä PGP-asiakasohjelmaa (tai tarkemmin sanottuna GnuPG - sen avoimen lähdekoodin klooni). GnuPG-versioita on saatavana Windowsille (Gpg4win), Mac OSX ja Linux (yleensä esiasennettu).

Tässä opetusohjelmassa tarkistamme Pidgin + OTR: n digitaalisen allekirjoituksen Gpg4winin avulla, mutta prosessi on hyvin samanlainen muiden GnuPG-versioiden kanssa.

Meillä on kaksiosainen artikkeli Gpg4winin käytöstä, ja suosittelemme lukemaan ainakin sen osa 1 perehtyäksesi alla käytettäviin keskeisiin käsitteisiin.

Gpg4win-lataus on itse digitaalisesti allekirjoitettu avaimella, joka on varmennettu varmenneviranomaisella (CA) ja jonka voidaan itsenäisesti tarkistaa varmennusta varten käyttämällä luotettavaa vanhaa GnuPG-kopiota (SHA1-hash on myös saatavana). Sinun ei pitäisi koskaan luottaa Gpg4win-kopioon, jota et ole vahvistanut.

Kun GnuPG on asennettu, tarvitsemme kolme asiaa digitaalisen allekirjoituksen todentamiseksi:

  • Tiedosto, jonka haluamme vahvistaa (duh!) Esim. pidgin-otr-4.0.1.exe -asennusohjelma
  • PGP / GPG-allekirjoitustiedosto (.asc), esim. Pidgin-OTR-4.0.1.exe.asc
  • Tämän allekirjoituksen luomiseen käytetty julkinen avain / PGP-varmenne esim. gpgkey.asc

Kaikki nämä tiedostot (toivottavasti) toimittaa kehittäjä, jonka digitaalisesti allekirjoitetut tiedostot haluat vahvistaa. Julkisen avaimen / PGP-varmenteet tallennetaan usein avainpalvelimelle, mutta laitteiden tulisi tarjota ohjeet niiden käyttämiseen.

Kleopatra

Kleopatra on avaimenhallintaohjelma, joka on yhdistetty Gpg4win-ohjelmaan.

1. Tarvitset henkilökohtaisen yksityisen avaimen PGP-varmenteen varmentamiseen. Jos olet luonut sellaisen aiemmin (esimerkiksi käyttämällä GPA: ta), voit tuoda sen (File -> Tuo sertifikaatit ...) tai voit luoda uuden avainparin (File -> Uusi sertifikaatti…).

Ohjatut toiminnot opastavat sinut loppuvaiheen tämän prosessin läpi

2. Tuo julkinen avain / PGP-varmenne Kleopatraan - käyttämällä joko Tuo varmenteita tai napsauttamalla tiedostoa hiiren kakkospainikkeella ja valitsemalla Tuo avaimet..

3. Varmenna PGP-varmenne yksityisellä avaimellasi - tämä kertoo GnuPG: lle, että luotat varmenteen allekirjoittajaan.

a) Napsauta hiiren kakkospainikkeella Kleopatrassa avainta ja valitse Varmenna sertifikaatti.

b) Valitse varmenne ja vahvista, että olet varmistanut sen sormenjäljen (toivottavasti se julkaistaan ​​kehittäjän verkkosivustolla).

c) Ellet ole varma varmenteen aitoudesta, sinun tulee sertifioida vain itse (sertifikaatit toimivat luottamusverkon periaatteella - mitä enemmän ihmisiä luottaa niihin, sitä varmemmin voit olla aitoja).

d) Kirjoita yksityisen avaimen salasana lauseen varmentamisen lopettamiseksi.

4. Nyt kun olet varmistanut lataamasi tiedoston allekirjoituksessa käytetyn varmenteen (WHW!), Voit käyttää sitä vahvistaaksesi allekirjoituksen.

a) Mene Kleopatrassa tiedostoon -> Salaa / tarkista tiedostot ja selaa allekirjoitustiedostoa tai napsauta sitä hiiren kakkospainikkeella ja siirry MoreGpgEX-asetuksiin -> tarkistaa.

b) Varmista, että 'Syöttötiedosto' on allekirjoitustiedosto ja että 'Allekirjoitetut tiedot' -kenttä sisältää ohjelman tai tiedoston, jonka haluat vahvistaa, ja paina sitten 'Salaa / vahvista'.

c) Kaikki hyvin, Kleopatra julistaa allekirjoituksen voimassa olevaksi.

Kuinka voin luottaa sertifikaattiin?

Yksinkertaisin tapa varmistaa PGP-varmenteen pätevyys on tarkistaa varmenteen allekirjoittaneen henkilön verkkosivusto ... hiukan onnea, se julkaisee varmenteen sormenjäljen..

Vaikka tämä on helppoa, se ei kuitenkaan takaa allekirjoituksen aitoutta, koska hallitus on saattanut hakkeroida verkkosivuston tai pakottaa sen näyttämään väärennetyn sormenjäljen (sama ongelma, joka vakoittaa salaustekniikkaa).

Tässä kohtaa tulee luottamusverkko, jossa käyttäjät takaavat varmenteen. Käytännössä tämä on kaareva prosessi, joka on sekä liian monimutkainen että hämärä useimmille käyttäjille, joten parasta, johon suurin osa meistä voi toivoa, on se, että varmenne on taattu tunnustetussa varmentajaviranomaisessa tai että se on tunnettujen kehittäjien allekirjoittama jotka julkaisevat allekirjoitusavaimensa (kuten esimerkiksi Tor-kehittäjät tekevät).

Pidgin + OTR on tietyllä tavalla huono esimerkki digitaalisen allekirjoituksen toimivuudesta, koska OTR-verkkosivulla ei ole melkein mitään ohjeita julkaistujen avainten käyttämiselle, ja sen PGP-varmenne ei ollut vain kovin vaikea löytää, mutta muutenkin kuin saatavana osoitteesta https://otr.cypherpunks.ca/gpgkey.asc, sen aitouden todentamiseksi ei ole helppoa tapaa (tosiasia, että 1024-bittinen RSA-avain on myös huono osoitus, tässä vaiheessa, kun NSA voi todennäköisesti halkeaa niin heikon salauksen ).

Se on kuitenkin hyvä esimerkki siitä, miksi koko käsite digitaalisista allekirjoituksista on niin sotkuinen! Mielenkiintoinen keskustelu siitä, miten voit yrittää vahvistaa OTR-sertifikaatin, on täällä.)

johtopäätös

Kuten näette, digitaalisen allekirjoituksen tarkistaminen on todella tuskaa, joten ei ole ihme, että jopa ne, jotka ymmärtävät ammattikielen raskasprosessin, vaivautuvat harvoin. Tilannetta pahentaa vielä se, että monet kehittäjät eivät pysty selittämään, kuinka heidän tiedostojaan varmennetaan, ja / tai myöntävät huolimaton PGP-varmenteita, joita on erittäin vaikea tarkistaa, aitoja (OTR-ryhmä, katsomme sinua!)

Se, että digitaaliset allekirjoitukset ovat ainoa tarkoituksenmukainen tapa taata, että lataamasi tiedostot ovat ne, jotka aikoit ladata (tai että niiden ohjelmat aikoivat sinun ladata), ei merkitse Internet-turvallisuutta.

Siihen saakka, kunnes joku keksii paremman, käyttäjäystävällisemmän järjestelmän, toivomme kuitenkin rohkaisemalla DEV: tä antamaan selkeät ohjeet heidän digitaalisten allekirjoitustensa käyttämiselle ja julkaisemaan merkityksellisiä takeita PGP-sertifikaattiensa aitoudesta… (huokaus)

"Digitaalisen allekirjoituksen kaavio" kirjoittanut Acdx - Oma työ. Lisensoitu CC BY-SA 3.0: n kautta Wikimedia Commonsin kautta - https://commons.wikimedia.org/wiki/File:Digital_Signature_diagram.svg#mediaviewer/File:Digital_Signature_diagram.svg

Brayan Jackson
Brayan Jackson Administrator
Sorry! The Author has not filled his profile.
follow me