Spelling suggestions: "subject:"criptografía"" "subject:"criptografías""
1 |
An elastic electronic voting systemCornejo Ramírez, Mario Sergei January 2015 (has links)
Magíster en Ciencias, Mención Computación / En los últimos años, organizaciones y movimientos sociales han aparecido demandando
más participación en políticas públicas. En éstas organizaciones, los miembros demandan ser
parte del proceso de toma de decisiones el cual generalmente se realiza mediante iniciativas de
voto directo entre los miembros. Además utilizan Internet intensamente como la plataforma
principal de comunicación y tienden a confundir sistemas de encuestas con herramientas de
votación electrónica. Por otra parte, no es claro que software se debe utilizar, y la debilidad
de la mayoría de éstos que tienen con respecto a la robustez (capacidad de computar bien el
resultado) más que con la privacidad del voto, además de la facilidad de uso.
Como una forma de mejorar la participación, nosotros proponemos un sistema de votación
electrónica para ese segmento, que incluye organizaciones sociales, federaciones de estudiantes,
colegios, sindicatos, sociedades profesionales, etc. El problema de votación electrónica
ha sido ampliamente estudiado por criptógrafos, y hoy en día, existen varios protocolos para
resolver problemas específicos a votación electrónica. Nosotros proponemos una solución
que toma en consideración esas soluciones existentes combinadas con protocolos de sistemas
distribuidos para introducir un sistema de votación electrónica remota elástica. El sistema
utiliza la tecnología elastic computing de Amazon que permite escalar en términos de capacidad
de computación y alta disponibilidad junto al anonimato de los votantes y la garantía
que el voto fue correctamente contado. Concretamente, el sistema está pensado sobre cinco
principios: i) Computación elástica, ii) Internet iii) Facilidad de uso, iv) Anonimato y computación
verificable, v) Cliente liviano.
El objetivo de esta tesis no es solamente resolver el problema abierto descrito anteriormente,
sino también establecer una base sólida para plataformas de votación electrónicas
a través de Internet. De este modo, nosotros creamos un nuevo sistema de votación electrónica
en donde el votante no realiza ninguna computación grande, sino que la trasladamos
al servidor, que idealmente está en una plataforma de Cloud Computing como Amazon Web
Services. Esta técnica previene ataques de denegación de servicio, robo de identidad y accesos
no autorizados, al mismo tiempo preserva la privacidad y la verificabilidad.
La plataforma se probó en un caso real, concretamente en una experiencia de votación
electrónica en donde los chilenos demandando su derecho a voto en el extranjero, pudieron
votar en una elección simbólica. Se presenta la experiencia, los problemas y las soluciones
que encontramos utilizando un sistema de identificación simple. Esta proyecto nos permitió
estudiar de forma técnica, política y práctica aplicaciones de votación electrónica en América
Latina.
|
2 |
Diesño e Implementación de un Esquema de Encriptación y Firmas Basado en Identidad para Dispositivos BUGMoreno Vilicich, María Francisca January 2010 (has links)
Históricamente, la autentificación de mensajes se ha manejado a través de firmas digitales basadas en certificados, usualmente emitidos por una entidad neutral a la comunicación y de confianza de todas las partes. Sin embargo, esta solución no siempre es posible de implementar, debido a factores como los costos, el tiempo limitado de vigencia de los certificados, la necesidad de depositar la confianza en un tercero, y por último el poder, usualmente limitado, de procesamiento de las máquinas. Además los certificados usualmente son muy pesados, y deben adjuntarse a cada mensaje enviado para mostrar su autenticidad, lo cual dificulta su implementación en dispositivos con poca capacidad de almacenamiento.
La Criptografía basada en identidad (o Identity Based Cryptography, IBC) es una alternativa al escenario presentado en sistemas que desean autentificar mensajes, pero no quieren (o no pueden) depender de certificados. Esto se logra usando la identidad de la persona (o del dispositivo) como semilla para la generación de claves por parte de un servidor maestro dentro del mismo sistema. De esta forma, las firmas son mucho más ligeras que los certificados, agilizando las comunicaciones. Además, como las identidades son públicas, cualquier miembro de la red puede verificar la autenticidad de un mensaje sin necesidad de hacer consultas online al ente central.
Por otro lado, las lecturas biométricas son la forma más usada de comprobar la identidad de una persona, ya sea a través de las huellas digitales, reconocimiento facial, lectura de iris o incluso análisis de forma de las orejas. Esto debido a que los rasgos mencionados son únicos para la persona, e incluso los dispositivos actuales permiten reconocer rasgos latentes, es decir que no poseen señales biológicas, de "vivos" y así prevenir el uso de guantes, máscaras, etc.
El tema de esta tesis es desarrollar una alternativa de sistema de seguridad para dispositivos de procesamiento limitado. El sistema utiliza firma de mensajes basada en identidad, pero usando las huellas digitales tanto para enlazar un usuario específico a un dispositivo, como para la protección de los datos privados del usuario. El sistema debe poder extenderse para poder incorporar encriptación basada en identidad también.
La primera parte de este trabajo consiste en un estudio de las componentes a usar, tanto de hardware como de software, incluyendo los conceptos básicos necesarios para su diseño y operación, así como los estándares que siguen. La segunda parte corresponde a un estudio y descripción detallada de las componentes del proyecto y de la implementación realizada, para terminar con posibles extensiones.
El sistema se probará en dispositivos BUG, un tipo de hardware usado en el diseño y fabricación de prototipos modulares.
|
3 |
Mecanismo de filtrado criptográfico para sistemas de comunicación anónima basados en reencriptaciónBahamonde Vega, Jorge Andrés January 2013 (has links)
Ingeniero Civil en Computación / Las redes de comunicación anónima posibilitan nuevas formas de interacción entre las personas. En particular, la libre expresión de ideas contrarias a la opinión popular o la de la autoridad ha permitido, en ciertos casos, el inicio de procesos de cambio en las sociedades. Sin embargo, el anonimato puede ser abusado, lo cual lleva al cuestionamiento de la utilidad del mismo y a la tentación de no implementar estos sistemas. En este contexto, la posibilidad de filtrar de manera segura mensajes según un criterio público permite resolver este problema, al permitir implementar sistemas de comunicación anónima donde es posible filtrar (descartar) mensajes que no calzan con una política pública predefinida.
Por ejemplo, el sistema de comunicación anónima pudiera establecer la restricción de que sólo mensajes "certificados" (firmados) por entidades confiables pueden ser comunicados. Un posible escenario de uso de tal sistema sería el caso en que usuarios pueden "comprar" el acceso al sistema de comunicación anónima, vía una autorización de su autoridad certificadora local.
Una solución para este escenario se complica debido a la naturaleza distribuida de las implementaciones de canales de comunicación anónima - cada participante del sistema debe poder verificar si está procesando mensajes certificados o no.
En la presente memoria se trabajó en la definición e instanciación de un sistema de comunicación anónima (en particular, una red de mezcla basada en reencriptación) que permitiese el filtrado de mensajes según una propiedad claramente definida. Para ello, primero se realizó un estudio de herramientas comúnmente aplicadas para obtener propiedades criptográficamente verificables, firmado y anonimato. Habiendo identificado un conjunto de herramientas útiles, el trabajo se focalizó en el aspecto definicional.
Se logró construir una definición basada en conceptos criptográficos estándares. Luego, utilizando herramientas criptográficas analizadas, se construyó una instanciación de esta definición, utilizándose técnicas criptográficas formales y rigurosas para demostrar la seguridad del esquema.
La solución desarrollada no sólo logra resolver el problema planteado, sino que provee una base sobre la cual pueden realizarse múltiples mejoras y extensiones futuras.
|
4 |
Diseño de un generador de números aleatorios para aplicaciones de criptografía en tarjetas inteligentesBejar Espejo, Eduardo Alberto Martín 26 June 2015 (has links)
La generación de números aleatorios es un punto clave en los sistemas criptográficos,su desempeño depende del nivel de aleatoriedad que son capaces de generar.
Particularmente, en aplicaciones móviles estos generadores de números aleatorios están sujetos a fuertes restricciones a nivel de diseño de circuito integrado. En la presente tesis se realizó el diseño y simulación de un circuito generador de números aleatorios en tecnología CMOS 0.35 m para el procesador criptográfico de una
tarjeta inteligente (Smart Card). El método de generación consiste en el muestreo de un oscilador con jitter elevado, el cual permite dividir al circuito en tres bloques principales. El primero de ellos es el oscilador que fija la frecuencia de muestreo cuyo periodo debe ser mucho más pequeño, en promedio, que el del oscilador con jitter elevado. El segundo bloque consiste en el circuito muestreador, implementado
mediante un flip flop tipo T. El tercer bloque es el oscilador afectado por jitter del cual depende, en gran medida, la calidad de los números aleatorios generados. Este consiste en un oscilador triangular donde el ruido térmico, introducido por un par de resistencias, es amplificado. Estos tres bloques, trabajando de manera conjunta, generan los números aleatorios cuya calidad se analizó mediante los algoritmos
propuestos por el National Institute of Standards and Technology (NIST) para verificar si el generador es lo suficientemente aleatorio como para ser utilizado en aplicaciones criptográficas.
La estructura del presente documento se detalla a continuación. En el primer capítulo se definió el problema a resolver. En el segundo capítulo, se revisaron los conceptos teóricos fundamentales relacionados a los números aleatorios y tecnología CMOS,
asimismo, se presentaron diferentes metodologías actuales de generación de números aleatorios en circuitos integrados. En el tercer capítulo, se analizó con detalle la topología a usar y se realizó su diseño respectivo. En el cuarto capítulo se hicieron las simulaciones necesarias para verificar el correcto funcionamiento del circuito y se
analizaron las secuencias de números obtenidas usando los algoritmos propuestos por el NIST. Finalmente, se presentan las conclusiones y recomendaciones. / Tesis
|
5 |
Functional verification framework of an AES encryption modulePlasencia Balabarca, Frank Pedro 06 August 2018 (has links)
Over the time, the development of the digital design has increased dramatically and nowadays many different circuits and systems are designed for multiple purposes in short time lapses. However, this development has not been based only in the enhancement of the design tools, but also in the improvement of the verification tools, due to the outstanding role of the verification process that certifies the adequate performance and the fulfillment of the requirements. In the verification industry, robust methodologies such as the Universal Verification Methodology (UVM) are used, an example of this is [1], but they have not been implemented yet in countries such as Peru and they seem inconvenient for educational purposes. This research propose an alternative methodology for the verification process of designs at the industry scale with a modular structure that contributes to the development of more complex and elaborated designs in countries with little or none verification background and limited verification tools. This methodology is a functional verification methodology described in SystemVerilog and its effectiveness is evaluated in the verification of an AES (Advance Encryption Standard) encryption module obtained from [2]. The verification framework is based on a verification plan (developed in this research as well) with high quality standards as it is defined in the industry. This verification plan evaluates synchronization, data validity, signal stability, signal timing and behavior consistency using Assertions, functional coverage and code coverage. An analysis of the outcomes obtained shows that the AES encryption module was completely verified obtaining 100% of the Assertions evaluation, 100% of functional verification and over 95% of code coverage in all approaches (fsm, block, expression, toggle). Besides, the modular structure defines the intercommunication with the Design only in the bottom most level, which facilitates the reuse of the verification framework with different bus interfaces. Nonetheless, this unit level verification framework can be easily instantiated by a system level verification facilitating the scalability. Finally, the documentation, tutorials and verification plan templates were generated successfully and are aimed to the development of future projects in the GuE PUCP (Research group in Microelectronics). In conclusion, the methodology proposed for the verification framework of the AES encryption module is in fact capable of verifying designs at the industry scale with high level of reliability, defining a very detailed and standardized verification plan and containing a suitable structure for reuse and scalability. / Tesis
|
6 |
Encriptación RSA de archivos de textoLeón Lomparte, Katia Regina 09 May 2011 (has links)
En este trabajo se presentará el método desarrollado en 1978 por R. L. Rivest, A. Shamir y L. Adleman y que es conocido como sistema criptográfico RSA por las iniciales de sus autores. Basa su seguridad en la dificultad de factorizar números primos muy grandes aunque como todo sistema de encriptación de clave pública, el RSA puede estar sujeto a ataques con el fin de obtener el mensaje original o descubrir la clave privada. / Tesis
|
7 |
Sistema de criptoanálisis distribuidoFrias Morales, Eduardo Emmanuel Alexis January 2014 (has links)
Ingeniero Civil en Computación / Un supuesto criptográfico es un problema computacional que se conjetura difícil de resolver con algoritmos que utilizan tiempo y recursos razonables, para los adversarios considerados. Ejemplos de esto son: factorización y encontrar el logaritmo discreto. Estos supuestos permiten definir esquemas criptográficos seguros si los supuestos son verdaderos. En relación a esto, el uso de técnicas tanto computacionales como matemáticas para intentar resolver los problemas computacionales subyacentes a dichos supuestos, se denomina criptoanálisis.
Existen diversos algoritmos criptoanalíticos que intentan resolver supuestos computacionales, tanto de forma secuencial como distribuida. Estos algoritmos deben ser implementados o adaptados por una persona interesada en el tema, ya sea para realizar un análisis sobre éstos, resolver un supuesto construido sobre otro(s), o para algún otro uso relevante para un criptógrafo. Sin embargo, no siempre se tiene a disposición el hardware adecuado para este tipo de trabajos: ejecutar un algoritmo criptoanalítico sobre entradas de muchos bits (el caso típicamente interesante) en un computador de escritorio, puede resultar infactible. Por otro lado, si es que se tuviera, por ejemplo, un cluster a disposición del investigador, el acceso a éste podría ser complejo y poco adecuado, dificultando el trabajo a realizar. Es por esto que se intenta buscar una solución que permita al criptógrafo enfocarse en lo importante de la investigación, que permita implementar un algoritmo distribuido de manera simple, modular e independiente del hardware.
Este trabajo se separó en dos partes: desarrollo de una plataforma web, y configuración de un cluster en Amazon Web Services. En la plataforma web se implementó: un login que permitiese autentificar a los usuarios, en donde un administrador puede crearlos; un sistema de resolución de problemas computacionales; una manera sencilla para agregar otros problemas; un mecanismo para que un usuario pueda implementar algoritmos personalizados; y un sistema que permite ver el estado de las tareas. Con respecto a la configuración del cluster, se implementaron algoritmos distribuidos para resolver algunos de los problemas computacionales más conocidos, los cuales permiten: factorizar un número; encontrar el logaritmo discreto en el grupo Z_p^*, y en el grupo de las curvas elípticas sobre F_p, donde p es primo; encontrar una colisión y preimagen de una función de hash.
Con esta solución se llegó a una aplicación que alcanzó los objetivos propuestos, pues un usuario tiene un acceso relativamente fácil al sistema (aunque filtrado por un encargado), puede ejecutar de forma inmediata algoritmos criptoanalíticos sin tener que implementarlos y puede ejecutar algoritmos criptoanalíticos personalizados que le otorgan una mayor flexibilidad sobre las operaciones disponibles.
|
8 |
Implementación de un algoritmo distribuido de generación de claves RSA con umbralMuñoz Vildósola, Caterina January 2016 (has links)
Ingeniera Civil en Computación / La presente memoria detalla el proceso de implementación de un algoritmo distribuido de generación de claves RSA umbral.
RSA es un sistema criptográfico de clave privada. Esto significa que se requieren dos claves distintas para realizar las operaciones criptográficas: una privada y una pública. En un sistema RSA la clave privada consiste en un valor privado (llamado exponente de firma o desencriptación) mientras que la clave pública consiste en dos valores (el exponente de verificación o encriptación, más un valor denominado módulo ). En un sistema RSA tanto el exponente privado como la factorización del módulo deben mantener secretos para garantizar la seguridad.
En RSA umbral, la operación privada está distribuida entre n nodos. De los n nodos mencionados, se requieren t para poder realizar una operación criptográfica privada de manera exitosa.
Dado que la operación privada está distribuida, la clave privada también debe estarlo. Además, tanto la claves privadas como la factorización del módulo RSA deben seguir siendo secretos. Dado lo anterior, al momento de generar las claves ningún nodo debe tomar conocimiento ni de las claves privadas ajenas, ni de la factorización del módulo RSA.
El trabajo de esta memoria consistió en implementar el algoritmo de generación distribuida de claves RSA umbral propuesto por D. Boneh y M. Franklin. Dicho algoritmo logra generar un módulo RSA y un conjunto de claves privadas umbral sin que ningún nodo obtenga información sobre la factorización del módulo ni sobre las claves ajenas. A diferencia de trabajos previos, el algoritmo logra lo anterior sin requerir de un actor confiable que genere y distribuya las claves. Cabe destacar que el tiempo de ejecución del algoritmo es aleatorizado, por lo que no se puede predecir cuánto tomará en ejecutarse. A pesar de lo anterior, hay un tiempo de ejecución esperado.
Se realizaron pruebas que comprobaron que la implementación estaba correcta y se comportaba de acuerdo a lo especificado en el algoritmo original. Además, se pudo comprobar que el promedio de los tiempos de ejecución medidos fueron menores al tiempo de ejecución esperado. / Este trabajo ha sido parcialmente financiado por Nic Chile Research Labs
|
9 |
Eliminación de puntos críticos de falla en el sistema Threshold Cryptography HSMCifuentes Quijada, Francisco José January 2016 (has links)
Magíster en Ciencias, Mención Computación / Ingeniero Civil en Computación / En un sistema distribuido, los puntos críticos de falla son aquellos nodos tales que si sólo uno de ellos falla, el sistema completo deja de funcionar. La no existencia de estos permite tener sistemas robustos y tolerantes a fallas.
Threshold Cryptography Backend para DNSSEC es un sistema desarrollado previamente a este trabajo, el cual permite firmar electrónicamente una zona DNS de manera distribuida con el uso criptografía umbral. El autor de esta tesis, en un trabajo previo, desarrolló una interfaz para que el Threshold Cryptography Backend sea utilizado por otras herramientas. La interfaz consistía en dos elementos: una biblioteca que implementa la API PKCS #11, estándar para soluciones criptográficas, y un nodo capaz de escuchar a esta biblioteca y transformar las solicitudes al Threshold Cryptography Backend. La interfaz permite que el sistema sea utilizado como una virtualización de un módulo de seguridad por hardware (HSM por sus siglas en inglés), por parte de cualquier aplicación diseñada para que use estos dispositivos. Por lo cual, el nuevo sistema, que incluye tanto la nueva interfaz como el Threshold Cryptography Backend, adquiere el nombre de Threshold Cryptography HSM. Este nuevo sistema consta de varios nodos: el nodo pkcs11, el nodo maestro, y de los nodos firmadores, además de los nodos que manejan la comunicación entre cada uno de estos, por medio del software de mensajería RabbitMQ. Sin embargo, dada las características del sistema original y los requerimientos de la API, dicho sistema presenta puntos críticos de falla, lo cual deja vulnerable al sistema en su conjunto.
La presente tesis, describe el trabajo realizado para rediseñar totalmente el sistema Treshold Cryptography HSM, con la finalidad de eliminar los puntos críticos de fallas. Esto se logró trasladando funcionalidad entre nodos. El primer traslado de funcionalidad consistió en los mecanismos de comunicación: se cambiaron los nodos de mensajería RabbitMQ por un protocolo de mensajería implementado por la biblioteca ZeroMQ. El segundo traslado de funcionalidad, consistió en mover varios algoritmos de criptografía umbral que corrían en el nodo maestro, hacia el nodo pkcs11. Originalmente, los algoritmos de criptografía umbral estaban implementados en el lenguaje de programación Java, sin embargo la API PKCS #11 está diseñada para ser usada por el lenguaje de programación C. Por lo tanto, el traslado de la funcionalidad criptográfica requirió reescribir los algoritmos en el lenguaje de programación C. Para enfrentar este desafío, se desarrolló una biblioteca en C que implementaba la funcionalidad criptográfica necesaria para eliminar el punto crítico de falla. De este modo, el nodo pkcs11 utiliza esta biblioteca, incorporando así parte de la funcionalidad del nodo maestro.
Este desarrollo permitió, entre otras cosas, una mejora en desempeño y una simplificación del código. Adicionalmente, quedó como subproducto la implementación inédita de un protocolo criptográfico, el algoritmo de firma criptografica umbral RSA. Dicha implementación quedó disponible bajos los términos una licencia de software libre tipo MIT. Este protocolo de criptografía umbral, cumple la propiedad de no falsificabilidad aún cuando nodos no comprometidos reciben una solicitud de firmar un documento falsificado. Esta propiedad de seguridad permiten asegurar que el sistema es robusto. Como toda funcionalidad criptográfica, requiere un cuidado especial en el desarrollo y testing, por tanto se diseñó un mecanismo para realizar pruebas del sistema basado en la equivalencia entre sistemas distribuidos y sistemas concurrentes. A partir de esto, se procedió a utilizar model checking como mecanismo de verificación formal para estudiar la correctitud del sistema.
|
10 |
Diseño y simulación de un scrambler digital de vozMontoya Limón, Roberto Isaac 15 October 2012 (has links)
Un primer acercamiento a la definición de comunicación puede realizarse
desde su etimología. La palabra deriva del latín communicare, que significa
“compartir algo, poner en común”. Por lo tanto, la comunicación es el
proceso mediante el cual el emisor y el receptor establecen una conexión en
un momento y espacio determinados para compartir ideas, transmitir e
intercambiar información o significados que son comprensibles para ambos.
Desde un punto de vista técnico se entiende por comunicación al hecho que
un determinado mensaje originado por el emisor llegue a un receptor,
distante en el espacio o en el tiempo. La comunicación implica transmitir y
recepcionar una determinada información que en la actualidad se encuentra
muy vulnerable e insegura debido a las interceptaciones, la existencia de
intereses personales, empresariales o de terceros. Este problema ha
motivado la presente tesis a diseñar una alternativa de solución mediante el
cual se mejora la confidencialidad de las comunicaciones que en su mayoría
de casos se requiere.
En tal sentido, la presente tesis tiene como objetivo presentar un Diseño y
Simulación de un Scrambler Digital de Voz, el cual permitirá codificar la
señal de voz a fin de transmitirla por el canal.
La transmisión permitirá la comunicación exclusiva entre el emisor y
receptor. Sólo el receptor podrá decodificar el mensaje y a su vez recibirá del
emisor una contraseña que será establecida aleatoriamente en cada
transmisión. Para la recepción, se decodificará la señal de voz con la
contraseña recibida aleatoriamente garantizando de esta manera una
comunicación segura. / Tesis
|
Page generated in 0.0583 seconds