Conceptes/OpenPGP per a principiants

From KDE UserBase Wiki
This page is a translated version of the page Concepts/OpenPGP For Beginners and the translation is 100% complete.

Introducció

La seguretat efectiva amb una solució de criptografia depèn més de conèixer el que feu i el que signifiquen certes dades tècniques (i el que no!) en la llargària de la clau i el mateix programari. Així, aquest article donarà una introducció als conceptes bàsics d'OpenPGP.

Aquesta guia d'aprenentatge és per a principiants, de manera que qualsevol cosa massa complicada quedarà fora. A més, no trobareu explicacions de com fer quelcom amb un cert programari. Per això ja disposeu de la documentació del programari. Això us ajudarà a entendre millor les accions que s'expliquen allà.

Hi ha un article que us prepara per a la generació de la clau i un altre que explica conceptes avançats.

Claus asimètriques

OpenPGP utilitza parells de claus. Això vol dir que sempre hi ha una clau secreta i una clau pública juntes. En contrast amb el concepte intuïtiu d'encriptatge simètric (és a dir, la mateixa contrasenya encripta i desencripta les dades) això és fa difícil d'entendre. No penseu en això, només accepteu-ho. Les matemàtiques al seu darrere són un malson per a la majoria de les persones, entrar en els detalls seria una pèrdua de temps estressant.

Com el nom suggereix: La clau secreta sols és coneguda pel seu propietari, i la clau pública és coneguda de manera ideal per tothom. Amb l'encriptatge simètric el problema està en compartir de forma segura la contrasenya amb el destinatari d'un missatge. Amb les claus públiques el problema canvia: Ara la part difícil és assegurar-vos que esteu utilitzant la clau pública correcta (i no una forjada per un atacant que intenta enganyar-vos).

Encriptatge

Una de les dues funcions d'OpenPGP és l'encriptatge. Encripteu les dades per a una o més claus públiques (encriptatge simètric, és a dir, utilitzant una contrasenya, és possible, però s'utilitza poques vegades). Per desencriptar les dades es necessita la clau secreta d'una de les claus del destinatari.

Excepte pel problema amb l'encriptatge ja esmentat «Quina és la clau correcta per encriptar?» - el desencriptatge és una operació molt senzilla, perquè no hi ha lloc per a malentesos: Encripteu quelcom i ningú excepte el propietari(s) de la clau del destinatari(s) ho podrà llegir. I aquí teniu com desencriptar o no podeu. Les pròpies dades desencriptades poden ser difícils d'entendre, però l'operació de desencriptatge no ho és. Però: Part de la qüestió «Quina és la clau correcta per encriptar?» no és només «Qui és el propietari d'aquesta clau?» sinó també «És aquesta clau prou segura per a encriptar les dades?». No es tracta de la longitud de clau o similar, sinó del lliurament de les claus. Per tant, abans d'enviar la informació crítica: Pregunteu al propietari de la clau sobre el nivell de seguretat de la clau!

Signatures digitals

L'encriptatge de dades pot ser una mica invers: En lloc de crear dades que només pot entendre una clau, podeu crear dades que tothom pugui entendre, però que només les pot haver creat una clau. Aquesta impossibilitat de crear les mateixes dades sense accés a la clau secreta corresponent fa que d'aquestes dades una signatura. Una vegada més: No pregunteu com és això possible llevat que realment us agradin les matemàtiques.

Una de les millors coses de la criptografia digital és: En contrast amb una signatura manuscrita, la qual és molt fàcil per a tothom (Bé, pera l'ordinador de tothom) per comprovar que aquesta signatura ha estat feta per una determinada clau. Si podeu relacionar una clau específica amb una persona, llavors també podreu relacionar una signatura digital amb aquesta persona -a menys que, per descomptat, la clau hagi estat compromesa-. Us haureu adonat: En aquest punt, la tasca esdevé organitzativa i legal.

La tecnologia no resol tots els vostres problemes. I és molt important que sempre esteu assabentat d'on es troba la frontera entre els problemes tècnics i d'organització.

Relacionar una clau amb una persona no és la part més difícil! Això és: «Què significa exactament la signatura?» És la vostra interpretació d'una signatura, jurídicament vinculant per al seu creador? El significat pot ser tan baix com una marca de temps (el qual és perfectament vàlid en una aplicació seria per a signatures criptogràfiques!), proporcionant res més que la certesa que un cert document existeix en un moment determinat (i que no s'ha creat més tard).

Si algú signa tots els seus missatges de correu electrònic (per evitar la falsificació d'adreces), llavors el pur fet d'enviar un cert document dins d'un correu electrònic signat no significarà res a excepció que probablement us el volia oferir. Si l'adreça de correu electrònic (la part signada, no l'assumpte sense signar) diu alguna cosa així com «Accepto l'acord adjunt», llavors el significat serà clar i el risc restant del destinatari de caràcter tècnic (baix nivell de seguretat i clau compromesa).

Per tant, té sentit tenir diferents claus en nivells de seguretat diferents: Una per assegurar raonablement les tasques diàries i una altra per a signar acords (on la política de les claus de documents explica els límits i privilegis de la clau corresponent).

En contrast amb l'encriptatge, la signatura de les dades no (tècnicament) té un destinatari. Totes les persones amb accés a la clau pública poden verificar la signatura. En molts casos això no és un problema (o en contrast: Fins i tot pot ser un requisit). En lloc de seleccionar un destinatari, seleccionareu la clau secreta a utilitzar per crear la signatura (si en teniu més d'una).

El gran problema «Quina és la clau pública correcta?» també es produeix amb les signatures. No quan es creen les signatures, sinó quan s'interpreta amb èxit una validació de la signatura. La pregunta real és: «Què significa una signatura?» Òbviament, una signatura de «qualsevol» clau no significa res. Tothom la pot haver creat. La signatura en si no diu més que: «Algú amb accés a la clau secreta ha decidit crear aquesta signatura». Aquest és un fet tècnic i sense rellevància en la vida real.


Vincles de les claus per a la gent

Aquesta és una altra part més difícil i complicada. I de fet, només unes poques persones ho fan correctament, ja que tot el sistema és molt menys segur del que la majoria de la gent creu. Cal distingir entre quatre components d'aquesta comprovació. El primer és el més fàcil: la pròpia clau. Heu d'estar segur que esteu utilitzant el material de la clau correcta (l'enorme número aleatori).

Com les claus són massa grans per a ser comparades manualment, en el seu lloc s'utilitza un hash segur. Una vegada més: Les matemàtiques al seu darrere, afortunadament, no cal entendre-les. Una funció hash ho farà: li llanceu qualsevol tipus i quantitat de dades (des d'un sol dígit a un fitxer d'imatge de DVD) i la seva sortida serà un «número» de longitud fixa. Si és (considera) impossible crear dues entrades diferents que creïn la mateixa sortida, llavors la funció de hash serà segura.

OpenPGP actualment utilitza la funció hash SHA-1 per a identificar les claus. SHA-1 té problemes de seguretat, però que no afecten l'ús a OpenPGP. Un valor SHA-1 es veu així:

   7D82 FB9F D25A 2CE4 5241  6C37 BF4B 8EEF 1A57 1DF5

Això s'anomena empremta digital de la clau. Hi ha dues maneres de confirmar la identitat d'una clau (el material clau RAW), sense tercers involucrats: Obteniu la clau des d'una font segura (llapis USB lliurat pel propietari de la clau) o obteniu l'empremta digital des d'una font segura (el qual és, òbviament, molt més fàcil doncs es pot imprimir en petits trossos de paper, fins i tot a la targeta de visita, i després distribuir-la).

La seva aplicació OpenPGP mostra l'empremta digital de la clau que vau rebre d'una font no segura i compareu «què és» amb el «que hauria de ser». Si és la mateixa, llavors podreu estar segur de la clau. Per tant: tingueu sempre petits trossos de paper amb la vostra empremta digital.

Una clau OpenPGP públic (un «certificat») consta de dues parts: el material de la clau i l'identificador (ID) d'usuari. Un ID d'usuari és una cadena de text. L'ús típic d'aquesta cadena és:

   Nom Sobrenom (comentari) <adreça de correu electrònic>

Molts ID d'usuari no tenen un comentari, alguns no tenen una adreça de correu electrònic i també hi ha claus sense un nom (real), (p. ex. per a un ús anònim). Fins i tot si esteu segur de l'empremta digital el nom, correu electrònic i comentaris poden estar equivocats.

El correu electrònic és més fàcil de comprovar (envieu un missatge encriptat a l'adreça i espereu una resposta que garanteixi que el vostre missatge a estat desencriptat).

Comprovar la identitat de persones desconegudes no és fàcil. En festes de signatures això es fa mitjançant la comprovació de passaports i similars. Però, reconeixeríeu un passaport falsificat?

Afortunadament pels vostres propis propósits, la identitat en general no és tan important. «Aquell a qui vaig conèixer en aquest esdeveniment i es va presentar com a Peter» és en general suficient. Per tant, la verificació de la identitat és un problema principalment per a la web confiança (veure més endavant).

Els comentaris també poden ser crítcs: El comentari «CEO de qualsevol companyia» poden crear una diferència real (a menys que després hi hagi algú més). La qüestió sobre quan acceptar (i certificar) un ID d'usuari és molt complicada.

La majoria de la gent no entén aquest problema i així redueix la seva pròpia seguretat i la dels altres. El poder prendre aquesta decisió pels altres és més fàcil tenint ID d'usuari que només consisteixin en el seu nom o simplement la seva adreça de correu electrònic. Aquests ID d'usuari poden ser més fàcilment acceptables de revisar per alguns certificadors.

Si esteu segur sobre un ID d'usuari que heu de certificar. Això vol dir que fareu una signatura digital sobre la clau pública i l'ID d'usuari. Només podeu realitzar aquesta certificació per a vosaltres mateixos (s'anomena una «signatura local») o per al públic («xarxa de confiança»). Si una clau té diversos ID d'usuari, llavors podreu decidir quins certifiqueu.

També podeu donar una idea aproximada sobre com heu comprovat l'ID d'usuari i la clau. Per aplicacions OpenPGP (i espero que per a tu també!) hi ha una gran diferència respecte a si es reconeix o no una clau com a «vàlida».

Les claus que disposen de la clau secreta es considerarà vàlides automàticament. Les altres poden obtenir la validesa des de les signatures de les seves pròpies claus. I per les altres claus.

El web de confiança (web of trust -WoT-)

En relació amb OpenPGP sovint sentireu xarxa de confiança. Aquest és un mètode indirecte per a relacionar les persones amb les claus, una tecnologia poderosa, però complicada. Els principiants no l'han d'utilitzar, però es familiaritzaran amb la verificació i certificació de les claus. El WoT s'explica a l'article OpenPGP per a usuaris avançats.


Resum sobre l'ús de la clau

necessiteu per a
la clau pública d'una altra persona encriptar les dades per a ell
comprovar les signatures d'aquesta clau (correcció tècnica, no validesa de la clau)
les vostres subclaus secretes desencriptar les dades que us han encriptat
crear signatures per a les dades
la vostra clau secreta principal gestionar la vostra clau (afegir els ID d'usuari o subclaus, canviar els ajustaments com la data de venciment)
certificar altres claus (és a dir, algun o la totalitat dels seus ID d'usuari)
l'empremta digital de la clau d'una altra persona assegurar-vos que heu importat la clau correcta (abans de certificar la clau de manera local o per al públic)


Altres lectures