Aplicaciones de La Criptografia

Embed Size (px)

Citation preview

INSTITUTO TECNOLGICO SUPERIOR DE LA MONTAA

INGENIERIA INFORMTICAMATERIA:Auditora InformticaTEMA:Aplicaciones de la criptografa. ALUMNAS:Ana Laura Leal HerreraEsperanza Morales lvarezPatricia Moreno lvarezMarypaz Soriano MoralesFACILITADOR:M.T.I. Abel Moreno Basilio

Tlapa de Comonfort, Gro., Junio de 2014ndiceINTRODUCCIN.2

Aplicaciones de la criptografa

6.1. Autenticacin e identificacin3

6.2. Esquemas de comparticin de secretos.4

6.3. Situaciones de confianza mutua...6

6.4. Dinero electrnico8

6.5. Elecciones electrnicas..10

6.6. Expectativas a futuro..12

6.7. PGP13

6.7.1 Fundamentos e historia de PGP.15

6.7.2 Estructura de PGP16

6.7.3 Vulnerabilidades de PGP.21

INTRODUCCINHoy en da la tecnologa ha evolucionado rpidamente, as mismo el internet ha cambiado la comunicacin y negocios.La comunicacin se ha vuelto ms importante en nuestra vida ya que es el proceso donde el emisor transmite un mensaje el cual viaja a travs de un canal para llegar al receptor, y cuando llega esta informacin al receptor en ella decodifica, la interpreta y surge la retroalimentacin. Al transmitir la informacin puede que la alteren y esto suele llegar a un nivel de riesgos y sobre todo si es una informacin considerada.Por este motivo se efecta la seguridad de la informacin. Por lo cual en este proyecto de investigacin explicara a detalles una de las aplicaciones para generar la seguridad de la informacin.PKI, ofrece hacer un uso seguro el cual se basa en RSA.Consiste en la funcin de la infraestructura de clave pblica, o conocido como PKI el cual es un conjunto de aplicaciones y de servicios que nos permite utilizar la criptografa, es decir, obtener la seguridad de la informacin.En el desarrollo de esta investigacin explicara a detalles lo contenido de la infraestructura de clave pblica.

6. APLICACIONES DE LA CRIPTOGRAFA6.1 Autenticacin e identificacinAutenticacin.- Elemento encriptado con la clave de sesin apropiada que contiene el nombre del cliente y una maca temporal. Demuestra la identidad del usuario.Autenticacin del servidor + clave sesin El cliente verifica la autenticidad del servidor (clave pblica) Se intercambian una clave secreta KAutenticacin del cliente El servidor verifica la autenticidad del cliente (varios mtodos)Identificacin y autenticacin. Gracias al uso de firmas digitales y otras tcnicas criptogrficas es posible identificar a un individuo o validar el acceso a un recurso en un entorno de red con ms garantas que con los sistemas de usuario y clave tradicionales.Dentro de un sistema decontrol de accesoconautenticacin, sta ser sin duda el proceso ms importante. Si por ejemplo un sitio web tiene informacin sensible o dirigida slo a un pequeo grupo de personas, la autenticacin asegura que las personas que ven esas pginas estn autorizadas. En el caso de utilizar tarjetas criptogrficas como el DNI la autenticacin que estas ofrecen puede permitir controlar al completo cundo y dnde alguien entra, navega y sale.Entonces, se puede definir la autenticacin como el proceso electrnico mediante el cual se verifica la identidad de un usuario.Existen tres mtodos de autenticacin: basados en algo conocido: contraseas, frases de paso, etc. basados en algo posedo: tarjeta de identidad, tarjeta inteligente (smartcard), dispositivo USB (token), etc. basados caracterstica fsicas del usuario: verificacin de voz, escritura, huellas, patrones oculares, etc.En funcin del nmero de factores en los que se base el sistema de autenticacin se puede hablar de:Autenticacin. En la seguridad de ordenador, la autenticacin es el proceso de intento de verificar la identidad digital del remitente de una comunicacin como una peticin para conectarse. El remitente siendo autenticado puede ser una persona que usa un ordenador, un ordenador por s mismo o un programa del ordenador. En un web de confianza, "autenticacin" es un modo de asegurar que los usuarios son quien ellos dice que ellos son - que el usuario que intenta realizar funciones en un sistema es de hecho el usuario que tiene la autorizacin para hacer as.6.2 ESQUEMAS DE COMPARTICIN DE SECRETOSEl sistema de comparticin de secretos de Shamir es un algoritmo criptogrfico. Es una forma de comparticin de secretos donde un secreto se divide en partes y se da a cada participante una sola: todas o parte de ellas son necesarias para reconstruir el secreto.El algoritmo basa su funcionamiento en una propiedad de los polinomios interpolares y fue desarrollado por el criptgrafo Israel Adi Shamir, que presento en 1979.La idea esencial de la combinacin de umbral de Shamir es que dos puntos son suficientes para definir una lnea recta, tres puntos lo son para definir una parbola, cuatro para definir una curva cbica y as sucesivamente. Es decir, con necesarios n + 1 puntos para definir un polinomio de grado n.Un esquema de compartir secretos es un protocolo criptogrfico en el que, como su nombre indica, se divide un determinado secreto en fragmentos que se reparten entre los participantes.La motivacin principal de la comparticin de secretos ha sido que en algunas situaciones existe una llave secreta que provee acceso a muchos archivos de actividades muy importantes.Los ECS surgen de la necesidad del manejo de llaves robusto. Dada una llave criptogrfica queremos generalizar la nocin de control de acceso fragmentado. Podemos usar el trmino ECS pues esto enfatiza la propiedad de fragmentacin, a diferencia de los esquemas de umbral creados inicialmente y que son ms restrictivos, pues requieren la concurrencia de un nmero fijo de participante.Los ECS tratan este problema y nos permiten tener confiabilidad sin riesgo creciente.La idea esencial de la combinacin de umbral de Shamir es que dospuntosson suficientes para definir unalnea recta, tres puntos lo son para definir unaparbola, cuatro para definir unacurva cbicay as sucesivamente. Es decir, son necesariospuntos para definir unpolinomiode grado .Supongamos que queremos trabajar con un umbral depara compartir un secreto(cualquier nmero,sin prdida de generalidad) siendo . La eleccin de los valores deydetermina la fortaleza del sistema.Eligiendo al azarcoeficientes, y siendo, se construye el polinomio. Calculamos cualesquierapuntos a partir del mismo, por ejemplo determinamos quede lo que se deriva . A todo participante en el secreto se le da un punto (un par de valores, el de entrada y el de salida para el polinomio)Dado cualquier subconjunto deentre estos pares, podemos calcular los coeficientes del polinomio mediante interpolacin y luego despejar, que es el secreto.

6.3 SITUACIONES DE CONFIANZA MUTUAExisten diferentes retos sobre el uso de la criptografa, (por ejemplo):a) Para los tcnicos:(1) Simplificar los mtodos a la medida del valor de los secretos;(2) Resolver el conflicto Estado-sociedad.Los gobiernos desean conocer las claves criptogrficas (por razones muy diversas: defenderse contra el terrorismo, seguridad nacional, velar ante posibles robos, destrucciones, olvidos, desapariciones,... Parece ser que no existe solucin tcnica satisfactoria, la solucin quizs no sea de ndole tcnica sino poltica y humanstica.(b)Para los filsofos y polticos:Devolver a la sociedad un grado casi anglico de confianza mutua interpersonal. Todas las complejas tcnicas criptogrficas dan por hecho que todos tenemos grandes secretos y que vivimos en una sociedad hipottica con absoluta desconfianza generalizada.

Dada la variedad de documentos digtales, informticos, imgenes, etc. es necesario desarrollar mtodos que aseguren y protejan a los autores de los mismos contra el pirateo. Josep Domingo, Jordi Herrera y Ricardo X. Snchez nos presentan un esquema original para la proteccin del copyright electrnico. La criptografa busca nuevos mtodos que sean resistentes a la violacin matemtica. Hay muchos desarrollos e investigaciones al respecto. Adems de las curvas elpticas e hiperblicas, la criptografa cuntica y otros mtodos matemticos. Existe una extensin de los abandonados "mtodos de mochila" que ofrece algunas posibilidades.

Redes de Confianza

En muchas ocasiones no se dispone ni de Autoridades de Certificacin ni de Registro. Una solucin tomada estriba en la confianza delos propios usuarios entre ellos.

Por ejemplo, si Juan confa plenamente en Lus y Lus ha aceptado la identificacin de Pedro, Juan podra inicialmente aceptar aPedro, porque Lus es de su confianza.

Comentario: En una red de confianza,una identificacin (clave nueva)se considerar vlida si viene firmada por suficientes claves vlidas.

Por ejemplo, PGP en correo seguro lo utiliza.

Aplicaciones Criptogrficas en Redes Para poder detectar yprevenir estos ataques, las redes deben incorporar mecanismos que proporcionen servicios de seguridad. Estos servicios, ya comentados, son: Autenticacin. Confidencialidad. Integridad. No Repudio.

6.4 DINERO ELECTRNICOUna aplicacin ms, que puede ser realidad gracias a la criptografa de clave pblica es conocida como dinero electrnico, en trminos sencillos el dinero electrnico es otra representacin de lo que conocemos como dinero o valor. El dinero electrnico es fsicamente un nmero que se genera aleatoriamente, se le asigna un valor, se cifra y firma y se enva al banco, ah el banco valida el nmero y certifica el valor, y lo regresa al usuario firmado por el banco, entonces el usuario puede efectuar alguna transaccin con ese billete electrnico. Las principales propiedades del dinero electrnico son las siguientes:1) Independencia: la seguridad del dinero digital no debe depender de la el lugar fsico donde se encuentre, por ejemplo en el disco duro de una PC2) Seguridad: el dinero digital (el nmero) no debe de ser usado en dos diferentes transacciones3) Privacidad: el dinero electrnico debe de proteger la privacidad de su usuario, de esta forma cuando se haga una transaccin debe de poder cambiarse el nmero a otro usuario sin que el banco sepa que dueos tuvo antes.4) Pagos fuera de lnea: el dinero electrnico no debe de depender de la conexin de la red, as un usuario puede transferir dinero electrnico que tenga en una smart card a una computadora, el dinero digital debe ser independiente al medio de transporte que use. Criptografa para principiantes 5) Transferibilidad: el dinero electrnico debe de ser transferible, cuando un usuario transfiere dinero electrnico a otro usuario debe de borrarse la identidad del primero.6) Divisibilidad: el dinero electrnico debe de poder dividirse en valores fraccionarios segn sea el uso que se da, por ejemplo en valor de 100, 50 y 25 La serie de pasos que puede seguir una transaccin que se realiza con dinero electrnico en un escenario simple es la siguiente:Supngase que el usuario A quiere mandar un cheque a B, usando ahora dinero electrnico.1) A genera un nmero aleatorio grande N de digamos 100 dgitos y le da un valor digamos 1000 pesos2) A cifra este nmero junto a su valor con su clave secreta asimtrica.3) Afirma este nmero y lo transmite a su banco.4) El banco de A usa, la clave pblica de Apara descifrar el nmero y verificar la firma, as recibe la orden y sabe que es de A. El banco borra la firma de A del documento electrnico.5) El banco revisa que Atenga en sus cuentas la cantidad pedida 1000 pesos y la debita de alguna de sus cuentas.6) El banco firma el nmero que mando A, con el valor asignado de 1000 pesos7) El banco regresa el nmero que ya es dinero a, A8) A enva este dinero a B9) B verifica la firma del banco de A, que est en N10) B enva N a su banco11) EL banco de B re-verifica la firma del banco de A en N12) El banco de B verifica que N no est en la lista de nmeros ya usados13) El banco de B acredita la cantidad de 1000 pesos a la cuenta de B14) El banco de B pone a N en la lista de nmeros ya usados15) Finalmente el banco de B enva un recibo firmado donde establece que tiene1000 pesos ms en su cuenta6.5 ELECCIONES ELECTRNICASEl voto por internetovoto electrnicose produce cuando la votacin se lleva a cabo mediante el uso de redes telemticas y agentes telemticos especficos de tal forma que los votos se depositan en una urna remota fuera de la vista del votante. Tanto la autorizacin para votar como el voto viajan por la red. El voto por Internet ha cobrado popularidad y ha sido usado para elecciones generales y referndum en elReino Unido,EstoniaySuiza, as como tambin en elecciones municipales enCanad, elecciones partidarias primarias enFranciay elecciones presidenciales en losEstados Unidos. Para votar por internet es necesario: Un ordenador conectado a la red Undocumento de identidad electrnicoque proporciona una herramienta defirma digital, fundamental para la autentificacin de la identidad del votante. Disponer de unlector para tarjetas electrnicas.Inconvenientes Segn Bernd Beckert, el investigador responsable del proyecto sobre voto electrnico del Panel de Opciones Cientficas y Tecnolgicas del Parlamento Europeo (STOA), existe el riesgo de fraude y de amenazas a la seguridad por parte decrackers.

Si bien el votante tiene que identificarse por medio de su identificacin oficial, la verificacin no se puede hacer sobre la persona (a diferencia de cuando se vota en un recinto electoral). No obstante, para superar este obstculo se puede utilizar el voto por Internet a travs del mvil, de forma que latarjeta SIMsirve para identificarse y se necesita activar la identificacin mvil en la web de la Polica.

La eleccin pierde toda auditabilidad, dado que no hay un documento fsico que respalde a cada uno de los votos emitidos; un error de programacin o un ataque deliberado pueden alterar uno o todos los votos emitidos

El diseo de interfaces usuario muchas veces es subptimo, y la poblacin menos acostumbrada al uso del cmputo puede sufrir dificultades que entorpezcan la votacin, o incluso que cambien el sentido por completo de su voto

Ventajas Permitira votar desde cualquier lugar con acceso a Internet.

Segn Thad Hall, unpolitlogoautor deElectronic Elections, permitira votar a las personas con discapacidades o que tienen dificultades para llegar en su da al colegio electoral o lugar de votacin.

Elvoto por correotambin est sujeto a riesgos, y sin embargo se utiliza desde hace tiempo.

Fomentara la participacin y el sentimiento dedemocracia.

Verificacin criptogrficaLos sistemas de voto electrnico pueden ofrecer soluciones que permiten a los votantes verificar si sus votos han sido registrados y contados con clculos matemticos. Estos sistemas pueden aliviar preocupaciones respecto de votos registrados incorrectamente. Una forma de mitigar esas preocupaciones podra ser permitir a los votantes verificar cmo han votado, con algn tipo de recibo electrnico, firmado por la autoridad electoral mediante una firma digital. Esta caracterstica podra probar en forma concluyente la exactitud del conteo, pero cualquier sistema de verificacin que no pueda garantizar la anonimidad de la eleccin del votante puede producir intimidacin en el votante o permitir la venta del voto. Algunas soluciones criptogrficas se dirigen a permitir al votante verificar su voto personalmente, pero no a un tercero. Una de las maneras sera proveer al votante de un recibo firmado digitalmente de su voto as como tambin de recibos de otros votos seleccionados al azar. Esto permitira que slo el votante identifique su voto, pero no le permitira probar su voto a nadie ms. Adems, cada voto podra estar sealado con una identificacin de sesin generada al azar, lo que permitira al votante verificar que el voto fue registrado correctamente en un control de auditora pblico de la papeleta.

6.6 EXPECTATIVAS A FUTUROSe puede afirmar con rotundidad es que los modelos criptogrficos actuales seguirn siendo vlidos durante algunos aos ms. En cualquier caso no conviene perder de vista los avances tecnolgicos, ya que cuando se conviertan en realidades, obligarn a replantear muchas situaciones, no solo en la criptografa.

6.7 PGPPretty Good PrivacyoPGP(privacidad bastante buena) Es unprogramadesarrollado porPhil Zimmermanny cuya finalidad es proteger la informacin distribuida a travs deInternetmediante el uso decriptografa de clave pblica, as como facilitar la autenticacin de documentos gracias afirmas digitales.PGP es unsistema mixto, pues cada vez que se codifica un mensaje, primero se comprime el texto plano (para evitar la redundancia), luego se genera una clave de sesin (aleatoria) y con esta clave de sesin se cifra el mensaje. La clave luego se cifra usando la clave pblica del destinatario.Este paquete de clave de sesin (cifrada con la clave pblica del destinatario), texto (comprimido y encriptado con la clave de sesin) y a veces firma (cifrada con la clave privada de quien enva) se llama hipertexto y es lo que se enva por Internet. El receptor descifra la clave de sesin con su clave privada y usando esta clave de sesin descifra el mensaje, se descomprime y queda listo para ser ledo.O sea el mensaje se cifra y descifra con la misma clave de sesin (mtodo simtrico o de clave privada) pero para enviar las claves de sesin se e cifran con el par de claves pblica-privada.Si usamos PGP 5x o superior, el algoritmo simtrico (el de la clave de sesin) usado por PGP puede ser cualquiera de estos tres:1. CAST: clave de 128 bits, rpido, bien diseado, su desventaja: es relativamente nuevo y no ha sido sometido a ataque durante mucho tiempo. Tiene patentes pendientes pero existe el compromiso de sus creadores de dejar una versin libre en cualquier caso.2. Triple-DES: clave de 168 bits, el algoritmo DES, publicado por IBM en los 70s aplicado tres veces lo hace un sistema muy robusto, tal como los otros dos algoritmos no se sabe de nadie que haya logrado romperlo a la fecha. No est protegido por patentes, es el ms lento de los tres3. IDEA: clave de 128 bits. el algoritmo fue publicado en 1990 y ha soportado toda clase de ataques desde esa fecha, probablemente obtenga patente lo que podra ser un problema para su uso futuroPor defecto se usa CAST pero podra escogerse cualquiera de los tres con Launch PGP Keys, Edit, Preferences, AdvancedA su vez, segn el tamao de nuestra clave ser la clave pblica usada para cifrar la clave de sesin1. RSA key pair para claves pequeas, por ej. 768 bits (seguridad dbil), esta funciona con PGP 2.xx2. DH/DSS key pair para claves grandes, por ej. 1024/2048 bits. El PGP 5.xx y superiores generan por defecto estas claves, pero tambin aceptan y generan claves RSA por razones de compatibilidadPara la firma digital PGP usa el algoritmo SHA que crea la funcin Hash requerida.Finalmente podemos preguntarnos que son al fin y al cabo las claves?, en PGP las claves son nmeros enormemente grandes, por ejemplo una clave de 1024 bits es un nmero binario de 1024 cifras! o sea su cifra mxima es 2 elevado a 1024 lo que equivale a un nmero decimal con varios cientos de cifras, solo como ejemplo, se estima que el nmero de tomos que contiene la Va Lctea es de 2 elevado a 223, creo que sobran comentarios.

6.7.1 FUNDAMENTOS E HISTORIA DE PGPPGP trabaja con criptografa asimtrica, y por ello tal vez su punto ms fuerte sea precisamente la gran facilidad que ofrece al usuario a la hora de gestionar sus claves pblicas y privadas. Si uno emplea algoritmos asimtricos, debe poseer las claves pblicas de todos sus interlocutores, adems de la clave privada propia. Con PGP surge el concepto de anillo de claves (o llavero), que no es ni ms ni menos que el lugar que este programa proporciona para que el usuario guarde todas las claves que posee. El anillo de claves es un nico _chero en el que se pueden efectuar operaciones de extraccin e insercin de claves de manera sencilla, y que adems proporciona un mecanismo de identificacin y autenticacin de llaves completas y simples de utilizar. Esta facilidad en la gestin de claves es una de las causas fundamentales que han hecho a PGP tan popular.La historia de PGP se remonta a comienzos de los aos 90. La primera versin era completamente diferente a los PGP posteriores, adems de ser incompatible con _estos. La familia deVersiones 2.x.x fue la que alcanz una mayor popularidad, y sigue siendo utilizada por mucha gente en la actualidad. Los PGP 2.x.x emplean _nicamente los algoritmos IDEA, RSA y MD5.En algn momento una versin de PGP atraves las fronteras de EE.UU. y naci la primera versin internacional de PGP, denominada PGPi, lo que le supuso a Phill Zimmermann una investigacin de ms de tres aos por parte del FBI, ya que supuestamente se haban violado las restrictivas leyes de exportacin de material criptogrfico que poseen los Estados Unidos. Para la versin 5 de PGP se subsan este problema exportando una versin impresa del cdigo fuente, que luego era reconstruida y compilada en Europa.

6.7.2 ESTRUCTURA DE PGPCodificacin de Mensajes

Como el lector ya sabe, los algoritmos simtricos de cifrado son considerablemente ms rpidos que los asimtricos. Por esta razn PGP cifra primero el mensaje empleando un algoritmo simtrico (ver _gura 14.1) con una clave generada aleatoriamente (clave de sesin) yPosteriormente codifica la clave haciendo uso de la llave pblica del destinatario. Dicha clave es extrada convenientemente del anillo de claves pblicas a partir del identificador suministrado por el usuario, todo ello de forma transparente, por lo que _nicamente debemos preocuparnos de indicar el mensaje a codificar y la lista de identificadores de los destinatarios. Ntese que para que el mensaje pueda ser ledo por mltiples destinatarios basta con que se incluya en la cabecera la clave de sesin codificada con cada una de las claves publicas correspondientes.Cuando se trata de decodificar el mensaje, PGP simplemente busca en la cabecera las claves pblicas con las que esta codificado y nos pide una contrasea. La contrasea servir para que PGP abra nuestro anillo de claves privadas y compruebe si tenemos una clave que permita decodificar el mensaje. En caso afirmativo, PGP descifrara el mensaje. Ntese que siempre que queramos hacer uso de una clave privada, habremos de suministrar a PGP la contrasea correspondiente, por lo que si el anillo de claves privadas quedara comprometido, un atacante an tendr que averiguar nuestra contrasea para descifrar nuestros mensajes. No obstante, si nuestro archivo de claves privadas cayera en malas manos, lo mejor ser revocar todas las claves que tuviera almacenadas y generar otras nuevas. Como puede comprenderse, gran parte de la seguridad de PGP reside en la calidad del generador aleatorio que se emplea para calcular las claves de sesin, puesto que si alguien logra predecir la secuencia de claves que estamos usando, podr descifrar todos nuestros mensajes independientemente de los destinatarios a los que vayan dirigidos. Afortunadamente, PGP utiliza un mtodo de generacin de nmeros pseudocdigo aleatorios muy seguro |una secuencia aleatoria pura es imposible de conseguir, como se dijo en el captulo 8|, y protege criptogrficamente la semilla que necesita1. No obstante, consideraremos sensible al _chero que contiene dicha semilla |normalmente RANDSEED.BIN|, y por lo tanto habremos de evitar que quede expuesto.

Firma DigitalEn lo que se refiere a la firma digital, las primeras versiones de PGP obtienen en primer lugar la signatura MD5 (ver seccin 13.1.3), que posteriormente se codifica empleando la clave privada RSA correspondiente. La firma digital o signatura puede ser aadida al fichero u obtenida en otro _chero aparte.Esta opcin es muy _til si queremos firmar un _chero ejecutable, por ejemplo.

Armaduras ASCII

Una de las funcionalidades ms _tiles de PGP consiste en la posibilidad de generar unaArmadura ASCII para cualquiera de sus salidas. Obviamente, todas las salidas de PGP (mensajes codificados, claves publicas extradas de algn anillo, firmas digitales, etc.) consisten en secuencias binarias, que pueden ser almacenadas en archivos. Sin embargo, en la mayora de los casos puede interesarnos enviar la informacin mediante correo electrnico, o almacenarla en archivos de texto.Recordemos que el cdigo ASCII original emplea 7 bits para codificar cada letra, lo cual quiere decir que los caracteres situados por encima del valor ASCII 127 no est definidos, y de hecho diferentes computadoras y sistemas operativos los interpretan de manera distinta. Tambin hay que tener en cuenta que entre los 128 caracteres ASCII se encuentran muchos que representan cdigos de control, como el retorno de carro, el _n de _chero, el tabulador, etc. La idea es elegir 64 caracteres imprimibles (que no sean de control) dentro de esos 128. Con este conjunto de cdigos ASCII podremos representar exactamente 6 bits, por lo que una secuencia de tres bytes (24 bits) podr codificarse mediante cuatro de estos caracteres. Esta cadena de smbolos resultante se trocea colocando en cada lnea un nmero razonable de smbolos, por ejemplo 72. El resultado es una secuencia de caracteres que pueden ser tratados como texto estndar, adems de ser manipulados en cualquier editor. Existe la ventaja adicional de que esta representacin es apropiada para ser enviada por correo electrnico, ya que muchas pasarelas de correo no admiten caracteres por encima de 127, y adems truncan las lneas demasiado largas, por lo que podrn alterar los mensajes si viajaran en otro formato.

Gestin de Claves

PGP, como ya se ha dicho, almacena las claves en unas estructuras denominadas anillos.Un anillo no es ms que una coleccin de claves, almacenadas en un fichero. Cada usuario tendr dos anillos, uno para las claves pblicas (PUBRING.PKR) y otro para las privadas (SECRING.SKR).Cada una de las claves, adems de la secuencia binaria correspondiente para el algoritmo concreto donde se emplee, posee una serie de datos, como son el identificador del usuario que la emiti, la fecha de expiracin, la versin de PGP con que fue generada, y la denominada huella digital (fingerprint). Este ltimo campo es bastante til, pues se trata de una secuencia hexadecimal lo suficientemente larga como para que sea nica, y lo suficientemente corta como para que pueda ser escrita en un papel, o leda de viva voz. La huella digital se emplea para asegurar la autenticidad de una clave. Por ejemplo, la huella digital de la clave pblica anterior es:9E2B 9D14 CBCE FE12 16A8 C103 48B2 5161 69AB 5784Si alguien quisiera asegurarse de la autenticidad de dicha clave, bastar con que llamara por telfono al autor, y le pidiera que le leyera la su huella digital.

Distribucin de Claves y Redes de ConfianzaPGP, como cualquier sistema basado en clave pblica, es susceptible a ataques de intermediario (seccin 12.2.2). Esto nos obliga a establecer mecanismos para asegurarnos de que una clave procede realmente de quien nosotros creemos. Una de las cosas que permite esto, aunque no la _nica, es la huella digital.PGP permite a un usuario firmar claves, y de esta forma podremos confiar en la autenticidad de una clave siempre que _esta venga firmada por una persona de confianza. Hay que distinguir entonces dos tipos de confianza: aquella que nos permite creer en la validez de una clave, y aquella que nos permite fiarnos de una persona como certificador de claves. La primera se puede calcular automticamente, en funcin de que las firmas que contenga una clave pertenezcan a personas de confianza, pero la segunda ha de ser establecida manualmente. No olvidemos que el hecho de que una clave sea autntica no nos dice nada acerca de la persona que la emiti. Por ejemplo, yo puedo tener la seguridad de que una clave pertenece a una persona, pero esa persona puede dedicarse a firmar todas las claves que le llegan, sin asegurarse de su autenticidad, por lo que en ningn caso merecer nuestra confianza.Cuando una clave queda comprometida, puede ser revocada por su autor. Para ello basta con generar y distribuir un certificado de revocacin que informara a todos los usuarios de que esa clave ya no es vlida. Para generarlo es necesaria la clave privada, por lo que en muchos casos se recomienda generar con cada clave su certificado de revocacin y guardarlo en lugar seguro, de forma que si perdemos la clave privada podamos revocarla de todas formas.Afortunadamente, las _ltimas versiones de PGP permiten nombrar revocadores de claves, que son usuarios capaces de invalidar nuestra propia clave, sin hacer uso de la llave privada.

Otros PGPLa rpida popularizacin de PGP entre ciertos sectores de la comunidad de Internet, y el desarrollo del estndar pblico Open PGP, han hecho posible la proliferacin de variantes ms o menos complejas del programa de Zimmerman. Muchas de ellas son desarrolladas por los propios usuarios, para mejorar alguna caracterstica, como manejar claves de mayor longitud (PGPg), y otras corresponden a aplicaciones de tipo comercial.Especial mencin merece la implementacin de Open PGP que est llevando a cabo el proyecto GNU: GnuPG (GNU Privacy Guard), que funciona en mltiples plataformas, y emplea nicamente algoritmos de libre distribucin |entre ellos AES|, aunque presenta una estructura que la hace fcilmente extensible. De hecho, hoy por hoy, podramos decir que es la implementacin de PGP ms completa, segura y til para cualquier usuario.

6.7.3 VULNERABILIDADES DE PGPSegn todo lo dicho hasta ahora, parece claro que PGP proporciona un nivel de seguridad que nada tiene que envidiar a cualquier otro sistema cifrado jams desarrollado. Qu sentido tiene, pues, hablar de sus vulnerabilidades, si estas parecen no existir?Como cualquier herramienta, PGP proporcionara un gran rendimiento si se emplea correctamente, pero su uso inadecuado podra convertirlo en una proteccin totalmente intil. Es por ello que parece interesante llevar a cabo una peque na recapitulacin acerca de las buenas costumbres que harn de PGP nuestro mejor aliado. Escoger contraseas adecuadas. Proteger adecuadamente los archivos sensibles. Estos archivos sern, lgicamente, nuestros llaveros (anillos de claves) y el fichero que alberga la semilla aleatoria. Esta proteccin debe llevarse a cabo tanto frente al acceso de posibles curiosos, como frente a una posible prdida de los datos (recuerde que si pierde el archivo con su clave privada no podr descifrar jams ningn mensaje!). Emitir revocaciones de nuestras claves al generarlas y guardarlas en lugar seguro. Sern el nico mecanismo vlido para revocar una clave en caso de prdida del anillo privado. Firmar slo las claves de cuya autenticidad estemos seguros. Es la nica manera de que las redes de confianza puedan funcionar, ya que si todos firmaremos las claves alegremente, podramos estar certificando claves falsas.

Al margen de un uso correcto, que es fundamental, debemos mencionar que ltimamente han sido detectados algunos fallos en las diversas implementaciones de PGP. Clasificaremos dichas vulnerabilidades en dos grupos claramente diferenciados: Debidas a la implementacin: Estos agujeros de seguridad son provocados por una implementacin defectuosa de PGP, y corresponden a versiones concretas del programa. Por ejemplo, el fallo descubierto en la versin 5.0 de PGP para UNIX, que haca que las claves de sesin no fueran completamente aleatorias, o el encontrado en todas las versiones para Windows, desde la 5.0 a la 7.0.4, en la que un inadecuado procesamiento de las armaduras ASCII permita a un atacante introducir _cheros en la computadora de la vctima.

Intrnsecas al protocolo: En este apartado habr que resear aquellos agujeros de seguridad que son inherentes a la definicin del estndar Open PGP. En este sentido, a principios de 2001 se hizo pblica una tcnica que permitir a un atacante falsificar firmas digitales. En cualquier caso, se necesita acceso fsico a la computadora de la vctima para manipular su clave privada, por lo que el fallo carece de inters prctico, aunque suponemos que obligara a una revisin del protocolo.