Práctica Cifrado y Criptografia
Práctica Cifrado y Criptografia
Práctica Cifrado y Criptografia
1. Introdu uccin
neras en la que podem mos mejorar la segurid dad de las empresasen e las Una de las man orno seguro mediante claves que asegure tan nto la que trabajando es generando un ento s mensajes enviados e com mo el remite ente de dichos mensajes s. En esta pr rctica privacidad de los zaremos de manera gu uiada algun as prcticas que nos darn una a idea de cmo realiz podemos aplicar el cifrado o y la criptog grafa en la empresa, posteriormen nte en el tem ma de sprivadasvir rtualesampliaremosesta ainformaci n. redes GnuP PGesunaherramienta h desegurid dadencomunicacioneselectrnica sparaelcifrado yfirm madedocum mentos.Esun nautilidade nlneadeco omandossin ningunacar ractersticagrfica g dispo onibleenlamayora m desistemasope rativosbasadosenUNIX/Linux. GnuP PG es una alternativalibre para P PGP (Pretty Good Privacy), uno d de los programas ms e extendidos y que inclu uso fue la base para el e estndar PGP. GnPG G cumple el e RFC 4880 (OpenPGP) y gracias a que no utiliza el algoritmo patentado p IIDEA, puede ser adosinrestr ricciones.Acontinuaci nrealizarem mosalgunasprcticas p de cifradoutilizando utiliza estep programa. Impo ortante:Lasiguiente s prcticaseha arealizadoconxitosobremqui nasvirtuale escon Ubun ntu10yUbuntu11,aunq queelprogra amaestdisponibleentodaslasvers sionesdeUb buntu. Elalu umnodeber rrealizartodas t laspr rcticasguia adaseirre ecogiendoe enundocum mento los pa asos y capturas de panta alla que cons sidere neces sarias para entender el fu uncionamien nto de lo que est haci iendo, es decir, lo imp portante es entender lo que se e est haciend do no solo ejecutar los comandos tal y como estn escrit tos. Dicho manual m debe er entregar en la fecha ayformaque eelprofesor rindique.
P gina1
4 4. Guardalo oscambiosen e eldocume entoycirralo 5 5. De vuelt ta en el ter rminal, vam mos a cifrar el docume ento median nte un algo oritmo simtrico o.Paraello,ejecuta e elco mando:gpg gcDocumen nto_Secreto La opcin n c hace qu ue se cifre el documento o utilizandouna u clave priivada 6. Intro oduce la frase contrasea c (p passphrase) que se solicita, pues ser r con esta c con la que se e cifre eldocum mento.Tendrsqueintrod ducirladosveces v pormo otivosdeseg guridad.
6 6. Lista el directorio y observars que se ha a creado un n document ensin to con exte .gpg,que ecorrespond dealdocume entocifrado.
JuanP PedroFernnd dezSnchez P gina2
Pr rctica Cifrado y Criptog grafa SAD D 7 7. Visualiza el conten nido del do ocumento cifrado c y vers v un t texto totalm mente ilegible:
ras cifrar un documento para que fu uera legible, en cdigo A ASCII, en lugar del Si desear comando oanteriordeberasutiliza ar:gpgca aDocumento o_Secreto
La opci n a guard da el docu mento cifra ado con caracteres AS SCII. Es dec cir, el documen nto tambin es cifrado pero es le egible mediante editor res ascii, au unque tampocoentenders sdemasiado deloqueleesporquees stcifrado. 8 8. Lista el directorio y observar s un nuevo documento con ext tensin .asc, que mentocifrad doconcaract teresASCII. correspondealdocum
Pr rctica Cifrado y Criptog grafa SAD D 1 10. Habrs advertido a que q el doc umento cif frado lleva el mismo nombre que el documen nto original, a excepci n de las ex xtensionesaadidas. a Sii se quisier ra dar un nuevo nombre al document to cifrado, habra h que hacer uso de la opcin o o. As, g cao Nuevo_Doc cumento_CifradoDocumento_Secret to ejecuta:gpg 1 11. Listaeldi irectorioyob bservarsel documentocreado
1 12. Cmo llevar a cabo el descifrad o de un doc cumento? Pu ues es muy s sencillo. Para a ello, habr qu ue utilizar la opcin d e en lugar de c e indicar el documen nto cifrado que q se quierade escifrar.As,ejecuta: gpgdoDocumento o_Descifrado oNuevo_Doc cumento_Cif frado
1 13. Introduce e la contrase ea (passphr rase) para el descifrado, que coincid de con la uti ilizada para el ci ifrado, pues en eso co onsiste el ci ifrado simt trico, en ha acer uso de e una nicacontraseaparalosproce esosdecifrad doydescifra ado: 1 14. Visualiza el contenido de Doc umento_Des scifrado y observa o que e el texto es el nzodetodo esteproceso o,Mensajeacifrar: introducidoalcomien
Pr rctica Cifrado y Criptog grafa SAD D 1 15. Comparte e el documento cifrado o en el ord denador de un compa ero y desd de all intentadescifrarloint troduciendo olacontrase a(passphra ase),respond dealassiguientes cuestione es: A.influy yeparaalgoelequipoen nelquesere ealizelcifrado?No B.Influy yeparaalgoque q elcifrad doserealiceenASCIIoenbinario?N o
Seleccion nalaopcin1ypulsaEnt ter. 3 3. Una vez seleccionado s o el tipo de c clave a gene erar, debemo os selecciona ar el tamao o de la misma.Amayortama aodelacla avemayordificultadpres sentarnlos ataquesdefuerza f bruta,pe eromslento oserelproc cesodecifra adoydescifra ado,adems sdeincreme entar lalongitu uddelafirma adigital. 4 4. Aceptael ltamaoque eaparecepo ordefecto(2 2048bits)
P gina6
Pr rctica Cifrado y Criptog grafa SAD D 5 5. Ahora de ebemos espe ecificar el tie empo de vali idez de la clave. En este e caso escrib be 1m, conelfindegenerarunaclaveco onunperiododevalidezdeunmes.
6 6. Acontinuacin,indicanombre yapellidos, ,correoelectrnicoyu uncomenta ario.El ra que el cre eador de la clave c almace ene detalles que conside ere de comentario sirve par ncia sobre la misma, n nunca la cla ave, evident temente, ad dems a la hora importan contenidodeeste debuscarenundirec ctoriodeclav vestambinsepuedebu uscarporelc campo.
7 7. A continu uacin y des spus de val idar los dato os el sistema a te pide int troducir una frase contrase a (passphrase)que se e utilizarpara p protege er la clave privada.N NO LA OLVIDES! !!!
8 8. Para crea ar las claves se requiere cierta dosis s de aleatorie edad, por lo o que la aplic cacin nos informar ahorade que inter ractuemos con c el sistema para gene erar dicha do osis de aleatoriedad, podemos trabajar en otra ven ntana, abrir y cerrar pro ogramas, mo over la ventanahasta h quefin naliceelproc cesoytedev vuelvaalashelldeLinux xinformndo otede losdatos sdetuclav ve.Esunpr rocesounpoco p lentopero p cuanta amsintera accin generes ms m rpido acabar, au nque parezc ca que se ha a bloqueado o sigue generando movimien ntosyaccion nes,enocasiionespuedellevaralguno osminutos.
P gina7
9 9. Para lista ar las clave pblicas p pres sentes en el equipo que e acabamos de generar debes ejecutarel e comando gpgk
ntalla es fundamental qu ue la captures!!! En ella observar q que aparece en dos Esta pan a a firmar do claves, la primera (pu ub) destinada ocumentosy la segunda (sub) destin nada a ormacin. De e este modo o cualquiera que nos quiera enviar in nformacinpuede p cifrar info utilizar estas e claves para cifrar rla, solamen nte nosotros s mediante la clave privada seremoscapacesdedescifrarla. d
P gina8
Pr rctica Cifrado y Criptog grafa SAD D 1 10. NO HAGAS ESTE PA ASO, SLO LEELO. Una a vez cread da tu clave pblica tendras partirlaenunservidor declaves(una ( especie edelistnt telefnico,donde d quecomp se guarda an claves p blicas de m muchas perso onas. Existen n muchos se ervidores p blicos quetepe ermitencom mpartirtuc clavepblica ayobtenerladeotro osusuarios,como por ejemplo el de red iris (htt tp://www.re ediris.es/keyserver/) o e ece el el que ofre sistema operativo Ubuntu ( (http://keyse erver.ubuntu u.com:11371 1/). Se puede p conectar a ellos med diante interf face web o mediante el puerto 113 371 directam mente desdeGP PGynormalmenteestn nsincronizad dosdemaneraquelaclav vequecomp partes en uno acaba a propa agndose a otros. En el l siguiente punto p creare emos un servidor privado en e otra mqu uina virtual donde com mpartiremos nuestras c claves, dejar remos los servidores pblic cos para cu uando realm mente quier ras hacer u una clave no o sea e aenviar e mens ajesprivadosyhayaseliminadotucllavededescifrado queteempiecen porquela acreasteenunamquina avirtual:P
P gina9
1 1. Instalamo os el paquet te sks (nece sitars que en la mqui ina este hab bilitada la sa alida a Internet):sudoaptge etinstallsks
Pg gina10
Pr rctica Cifrado y Criptog grafa SAD D 3 3. Establece emos los pe ermisos de la base de datoscamb biando el p propietariode d las carpetasadebansks s:sudoch hownRcdeb bansks:deb bansks/var r/lib/sks/DB
4 4. Configura amoselservidorparaqu ueseinicieau utomticame enteenelar rranque: setinitsta art=yesin/etc/default/s ks 5 5. El paso anterior a en ocasiones o no o funciona correctament c te, por lo qu ue es aconsejable editar el archivo /etc c/default/sks s y establece er la variable e initstart a valor yes en n caso oloest:su udogedit/et tc/default/sk ks dequeno
6 6. Arrancam moselservici io:sudo/e etc/init.d/sks sstart 7 7. Desde es ste momento o tenemos u un servidor de d claves esc cuchando en n el puerto 11371. 1 Ahorapo odemossubir rlasclavesg generadasan nteriormente emediantee elcomando gpgsen ndkeys,porejemplo: gpgsen ndkeyskeyserver192. .168.93.134 015B6979 Donde es specificamos s la IP del se rvidor de cla aves y la clav ve a subir. En n la figura puedes verded ndeseobtie ene,resaltad doencolorro ojo.
Pr rctica Cifrado y Criptog grafa SAD D 8 8. Paracom mprobarsiun naclaveest enelservidorpodemosejecutar: gpgkey yserver192.1 168.93.134 searchkeyJuan J Pedro En else earchkey podemos utiliz zar cualquier ra de los cam mpos que se rellenan a la a hora de crear la clave. Est te comando o nos inform mar si la clave est en el servidor y si la namos nos la a podremos bajar a nuestra mquina, (Nota: Si tienes problemas seleccion parasalir rdelaaplicacinsinbaja artelaclavepuedes p pulsa arcontrol+c) )
Tambin nesposibleutilizar u lasop pcionesdegp pg: re ecvkeysparadescargar lasclavesde elservidor re efreshkeyspara p actualiz zarnuestrosdatoslocalessobreclave es gpg refreshkeys skeyserver r192.168.93.134
Losservid doresdeclav vespuedenc comunicarse econotrosservidoresde eclaves,med diante laedicin ndelarchivo o/etc/sks(sks sconfgdondepodemosestablecer e la aipdeunservidor con el qu ue nos vamo os a sincroniizar, no obst tante no lo realizaremos s en esta pr rctica paraquenuestrascla avesnosepr ropaguenportodoslosservidoresde eInternet. 9 9. Realiza lo os pasos nec cesarios para a intercambiar la clave pblica con u un compaer ro por mediode elservidorde eclaves,esp ecificaaququ q pasosha abisrealiza do. Ponemos s los equipos en red y d desde el equipo de mi compaero (Ubuntu 10 0.04 Descifrad do)ejecuto: gpgkey yserver192.1 168.93.134 searchkeyJuan J Pedro yseleccio onamoslacla avequeque remosdesca argar(1):
Pg gina12
Pg gina13
2 2. Paracrea arelcertificadoderevoca acin,ejecut taelcomand do: gpggen nrevokeidentificadorCla avePblica < orClavePbli ca> es el id dentificador de la clave aunque tam mbin Donde <identificado puede ut tilizarse el no ombre y ape ellido de la persona, p correo electrn nico o las palabras del come entario utiliza ado al crear el par de claves que ser r ms senciillo que intro oducir el identif ficador de la clave, como o dijimos ant teriormenteel identifica ador de la cla ave es elnmeroqueapareceresaltado oenlaimagensuperior.
3 3. Indica al sistema que e quieres gen nerar un cert tificado de revocacin pu ulsando la te ecla s, rmente indic ca la razn p por la que creamos c el certificado de e revocacin n. As, posterior seleccion nalaprimer raopcin(0 0)eintrodu ucecomode escripcinC Certificadocreado inmediatamentedesp pusdegene erarelpardeclaves.(parafinalizarla aedicindebes v introducirunalneavaca).
Pg gina14
Pr rctica Cifrado y Criptog grafa SAD D 4 4. Introduce elacontras seaconla queproteg gistelaclave eprivadae nelpunto7del apartado o 3.1. (Si la olvidaste de ebes volver a empezar to odo el proce eso!!!) contr rasea (passphra ase)
6 6. El proble ema es que e as el cer rtificado no nos sirvede mucho (aunque en n PGP nos recom mienden imp primirlo), lo interesante es que esainformacin n est almace enada enunarc chivo,paraellosedebee ejecutarelco omando: gpgocert_revocado.asc cgenrevok keidClaveP blica Ydespusdeseguirlosmismosp pasosobserv varsqueapa areceunfich heroquecon ntiene elcertific cadoderevo ocacindela clavepblic caquetendrasquecom partirconelresto deusuari iosenelcaso odequetus sistemaocla aveprivadase s viesevulne erada.
Pg gina15
7 7. En el caso de que ocurriese algo problemtic co y necesit semos revo ocar nuestra clave simportarelcertificadod derevocaci n: debemos gpgimportcert_revocad c do.asc
genlaclaveaparece a revo ocada. Comopuedesobservarenlaimag 9 9. Ahora solo necesitar amos que ell resto de us suarios conociesen la rev vocacin env viando or de claves s. Intenta realizarlo en n el servidor que la clave revocada a un servido configura asteenelapa artadoanter rioryescribe eaqulospas sosrealizado os. Ejecu utamos gpg sendkeys keyserver 192.168.93. .134 8C0A00 079 para ree enviar nuest trosdatoslo ocalessobre laclavealse ervidor: Paracomprobarsi s laclavese ehaactualiza adoenelser rvidorejecut tamoselcom mando gpgkeyserver192.168.93.1 34searchkeyJuanPed dro:
Pg gina16
Pr rctica Cifrado y Criptog grafa SAD D En lo os equipos que tenga n las claves descargad das ejecutam mos el sigu uiente coma ando:gpgrefresh r keys keyserver192.168.93.1 134
Pg gina17
2 2. Una vez exportada te endremos q ue pasar nuestra clave pblica a un n compaero o, que tambinnospasarlasuya,demodoquesepuedaestablecer e u unacomunic cacin seguraen ntreambos,paraimporta eejecutarelsiguiente s com mando: arlahayque gpgimportnombreArch hivo.gpg Ahorapo odrsobserva armediante gpgkqueentulistado odeclavesp pblicasapar recela clavedelcompaeroquetepas elarchivo.
2 2. Ejecutael e siguientecomando: gpgoutputdocumentoE d Encriptado.gpgencrypt trecipient clavePublicaD Destinatario nombreDoc cumentoACif frar Sustituye endo<docum mentoEncript tado.gpg>por p elarchiv voquealma acenarlosdatos uetendrsentu encriptad dos,<clavePu ublicaDestina atario>laclavedeldestinatarioqu repositor rio local de e claves y <nombreDocumentoAC Cifrar> por el nombre e del documen ntocreadoen nelpaso1.
Pg gina19
3 3. Observar rs que en el e directorio se ha gener rado un arch hivo que con ntiene el me ensaje encriptad do.Pasaeldocumentoa aldestinatar riodelmen nsaje(Propie etariodela aclave pblicaqueusaste).
Pasamoselarchivoal lequipoUbu untu10.04 Descifrado odebereje 4 4. Paradese encriptarlotucompaero ecutarelcom mando: gpgoutputDocumentoD Desencriptad do.txt decryptDoc cumentoEncr riptado.gpg Siendo<D DocumentoD Desencriptad do.txt>eldocumentodondesealma acenarnlosdatos desencrip ptados y <do ocumentoEn ncriptado.gpg g> el documento encript tado generado en elpaso2.
Pg gina20
a que proteg ge su claveprivada p y si e es correcta podr El sistema le pedir la contrasea a documento,responde alassiguien ntepregunta: accederal
asas el mism mo documen nto a otro co ompaero puede desenc criptarlo de algn A. Si pa modo? S lo si tiene e las claves descargadas del equip po Ubuntu10 0.04Descifra ado y co onocelacon ntrasea.
JuanP PedroFernnd dezSnchez Pg gina21
2 2. Introduce elacontrase eaqueprote egelaclaveprivada.(pas ssphrase) 3 3. Lista el directorio par ra detectar q que se ha ge enerado el documento c con extensin .sig obinariocom mprimido.(Lo opuedesver rconunedit tordetexto) firmadoyenformato
Pg gina22
Pr rctica Cifrado y Criptog grafa SAD D 4 4. Conelco omandogpgverifydocu umentoFirmado.sig Puedes verificar v la fir rma digital d de cualquier persona cuy ya clave pb blica poseas en tu anillo de claves pblicas. As, ver rifica la firma a realizada so obre el docu umento .sig con c el o comando gpgverifyDocumentoFi rmado.sig
2 2. Introduce elacontrase eaqueprote ssphrase) egelaclaveprivada.(pas on extensin 3 3. Lista el co ontenido del directorio, observarsque q se creaun fichero co n .asc, si visualiz zas su interio or encontrar rs que se ha h incorporado la inform macin de la firma digital de el documento o. Puedes ve erificar quin n lo firmo siutilizas la op pcinverify y y en tureposit toriodeclav vestieneslac clavepblica adelfirmant tedeltexto.
Pg gina23
Pr rctica Cifrado y Criptog grafa SAD D 4 4. Prueba a firmar e in ntercambiar documento os con un compaero c con el que hayas compartido tu clave pblica, ind dica aqu los s pasos realizados tanto o para el fir rmado comprimidocomoelfirmadoASC CII.
Pg gina24