Henry cardenas bravo criptografía-laboratorio Ficha:2276654
La criptografía es el desarrollo de un conjunto de técnicas que permiten alterar y
modificar mensajes o archivos con el objetivo de que no puedan ser leídos por
todos aquellos usuarios que no estén autorizados a hacerlo. En criptografía,
el cifrado es un procedimiento que utiliza un algoritmo de cifrado con cierta clave
(clave de cifrado) para transformar un mensaje, sin atender a su estructura
lingüística o significado, de tal forma que sea incomprensible o, al menos, difícil de
comprender a toda persona que no tenga la clave secreta (clave de descifrado)
del algoritmo. Las claves de cifrado y de descifrado pueden ser iguales
(criptografía simétrica), distintas (criptografía asimétrica) o de ambos tipos
(criptografía híbrida).
SIFRADO DE TEXTO CON AES
Texto cifrado con sistema de 128 bits
Archivo descifrado
Archivo recibido por correo y descifrado correctamente, sin modificaciones en su
trayecto.
Consultas.
1. RSA: El sistema criptográfico con clave pública RSA es un algoritmo asimétrico
cifrador de bloques, que utiliza una clave pública, la cual se distribuye (en forma
autenticada preferentemente), y otra privada, la cual es guardada en secreto por
su propietario. Una clave es un número de gran tamaño, que una persona puede
conceptualizar como un mensaje digital, como un archivo binario o como una
cadena de bits o bytes. Cuando se envía un mensaje, el emisor busca la clave
pública de cifrado del receptor y una vez que dicho mensaje llega al receptor, éste
se ocupa de descifrarlo usando su clave oculta.
Los mensajes enviados usando el algoritmo RSA se representan mediante
números y el funcionamiento se basa en el producto de dos números
primos grandes (mayores que 10100) elegidos al azar para conformar la clave de
descifrado.
Emplea expresiones exponenciales en aritmética modular. La seguridad de
este algoritmo radica en que no hay maneras rápidas conocidas de factorizar un
número grande en sus factores primos utilizando computadoras tradicionales.
La computación cuántica podría proveer una solución a este problema de
factorización. El algoritmo RSA es un algoritmo de clave pública desarrollado en
1977 en el MIT por Ronald Rivest, Adi Shamir y Leonard Adelman. Fue registrado
el 20 de septiembre de 1983. El 20 de septiembre del 2000, tras 17 años, expiró la
patente RSA, pasando a ser un algoritmo de dominio público. Este popular
sistema se basa en el problema matemático de la factorización de números
grandes. El algoritmo RSA funciona de la siguiente manera:
Inicialmente es necesario generar aleatoriamente dos números primos
grandes, a los que llamaremos p y q.
A continuación, calcularemos n como producto de p y q: n = p * q
Se calcula fi: fi(n)=(p-1) (q-1)
Se calcula un número natural e de manera que MCD (e, fi(n))=1 , es decir e
debe ser primo relativo de fi(n).
Es lo mismo que buscar un numero impar por el que dividir fi(n) que de cero
como resto.
Mediante el algoritmo extendido de Euclides se calcula d: e.d mod fi(n)=1
Puede calcularse d=((Y*fi(n))+1)/e para Y=1,2,3,… hasta encontrar un d
entero.
El par de números (e,n) son la clave pública.
El par de números (d,n) son la clave privada.
Cifrado: La función de cifrado es C = M^e mod n
Descifrado: La función de descifrado es M = C^d mod n
Ejemplo con números pequeños
Escogemos dos números primos, por ejemplo, p=3 y q=11.
n = 3 * 11 = 33
fi(n) = (3-1) * (11-1) = 20
Buscamos e: 20/1=0, 20/3=6.67. e=3
Calculamos d como el inverso multiplicativo módulo z de e, por ejemplo,
sustituyendo Y por 1,2, 3… hasta que se obtenga un valor entero en la
expresión: d = ((Y * fi(n)) + 1) / e = ( Y * 20 + 1) / 3 = 21 / 3 = 7
e=3 y n=33 son la clave pública
d=7 y n=33 son la clave privada
Cifrado: Mensaje = 5, C = M^e mod n = 5^3 mod 33 = 26
Descifrado: M = C^d mod n = 26^7 mod 33 = 8031810176 mod 33 = 52.
2. DSA: (Digital Signature Algorithm, en español Algoritmo de Firma digital) es un
estándar del Gobierno Federal de los Estados Unidos de América o FIPS para
firmas digitales. Fue un Algoritmo propuesto por el Instituto Nacional de Normas y
Tecnología de los Estados Unidos para su uso en su Estándar de Firma Digital
(DSS), especificado en el FIPS 186. DSA se hizo público el 30 de agosto de 1991,
este algoritmo como su nombre lo indica, sirve para firmar y no para cifrar
información. Una desventaja de este algoritmo es que requiere mucho más tiempo
de cómputo que RSA
3. ECDSA: son las siglas en inglés de Elliptic Curve Digital Signature
Algorithm (Algoritmo de Firma Digital de Curva Elíptica). Este sistema, se utiliza
para crear una firma digital que permite la verificación por parte de terceros sin
comprometer la seguridad. El algoritmo ECDSA funciona mediante un mecanismo
de criptografía llamado, criptografía asimétrica. Este sistema de firmado genera
dos claves que reciben el nombre de clave privada y clave pública. Ambas claves
están relacionadas por una compleja operación matemática realizada sobre una
función de curva elíptica. Bajo este esquema de funcionamiento, ECDSA garantiza
en primera instancia lo siguiente:
Firmas únicas e irrepetibles para cada conjunto de generación de claves
privadas y públicas.
La imposibilidad práctica de falsificar las firmas digitales. Esto es así porque
la potencia computacional necesaria para ello está fuera de los límites
actuales.
Gracias a estas dos características, ECDSA se considera un estándar seguro para
desplegar sistemas de firmas digitales. Su uso en la actualidad es tan variado, que
hay aplicación de estas en casi todos los campos informáticos. Por ejemplo, la
infraestructura de certificados de seguridad SSL y TLS de Internet hace uso
intensivo de ECDSA. El Bitcoin, precursor de la tecnología blockchain, también
hace uso de ECDSA para alcanzar el elevado nivel de seguridad que lo
caracteriza.
4.EdDSA: El esquema de firmas criptográficas EdDSA es uno de los sistemas de
firmas digitales criptográficas más seguros del momento y cuya evolución no se
detiene. En la actualidad EdDSA está demostrando claramente lo que promete,
seguridad, eficiencia y rapidez.
Existen varios esquemas de firmas criptográficas y entre ellos uno de los más
importantes es EdDSA. Este esquema fue creado para firmar digital e
inequívocamente un documento o información. Esto con el objetivo de reconocer
su autenticidad u origen del mismo. Para lograr esto, EdDSA hace uso de técnicas
criptográficas asimétricas muy potentes. Todo ello con el fin de asegurar que esta
firma digital no puede ser duplicada.
Para verlo de forma más sencilla, piense en EdDSA como un sello para cartas que
no puede ser duplicado. Un sello que al mismo tiempo genera una impronta
distinta para cada carta que usted emite y dirige a sus destinatarios. Impronta que
le permite a sus destinatarios verificar que efectivamente esa carta fue hecha y
firmada por su persona. ¿Le agrada la idea?. Pues bien eso es lo que
precisamente hace EdDSA y de allí su enorme potencia y capacidad de uso.
Por ejemplo, se puede usar EdDSA para garantizar la autenticidad de documentos
digitales. Una vez creado un documento digital y firmado, la firma digital crea una
huella única para dicho documento. Una manipulación del mismo por pequeña que
sea inválida dicha firma. De esta forma, el documento es protegido contra
manipulaciones y se garantiza su autenticidad frente a toda situación.
La creación de EdDSA fue el resultado del trabajo de Daniel J. Bernstein, Niels
Duif, Tanja Lange, Peter Schwabe y Bo-Yin Yang. Ellos unieron la tecnología de
DSA y ECDSA, a la que aplicaron una nueva curva elíptica que garantiza
seguridad y rendimiento. El primer documento de EdDSA fue presentado en el año
2011 y toda su especificación técnica es de dominio público.
Características técnicas
EdDSA está lleno de características que lo hacen único frente a otras opciones.
Entre estas podemos destacar:
Ofrece un sistema de verificación de firmas mucho más rápido y
computacionalmente eficiente. Eso significa que necesita poco poder de
cómputo para realizar verificaciones y puede ser usado en dispositivos poco
potentes.
Tiene una capacidad de verificación por lotes más rápida. Esta es una
característica relacionada con la anterior. El hecho de consumir poca
potencia para realizar una verificación hace que un lote sea mucho menos
costoso de verificar. Pero también está relacionado con la eficiencia. El
algoritmo de EdDSA es muy amigable con las caches de CPU. Esto permite
que el impacto sobre las mismas sea mínimo y la velocidad de verificación
aumente.
El sistema de firmado digital es muy rápido. El proceso de lectura,
verificación y firmado del documento es casi instantáneo.
Ofrece una rápida generación de claves pública y privada. La generación de
claves es casi tan rápida como la firma.
El esquema de firmas ofrece un alto nivel de seguridad. El nivel de
seguridad de EdDSA es equiparable al de sistemas como RSA y ECDSA.
Por ejemplo, romper una firma EdDSA bien construida podría llevar cerca
de 4 millones de años o requerir de un computador cuántico.
Resistencia a las colisiones. Las colisiones de la función hash no rompen
este sistema. Esto agrega una capa de defensa contra la posibilidad de
debilidad en la función hash seleccionada.
Las firmas y claves generadas por EdDSA son de pequeño tamaño. Una
firma de EdDSA ocupa unos 64 bytes de datos. Por otro lado, las claves
ocupan la mitad de ese tamaño.Esto hace perfecto al sistema para ser
aplicado en sistemas con reducido ancho de banda, almacenamiento y
potencia.
¿Cómo funcionan las firmas EdDSA?
El proceso de funcionamiento de EdDSA está dividido en varias etapas entre las
cuales tenemos:
Elección del algoritmo
En primer lugar, debemos elegir el algoritmo a usar para crear y utilizar nuestra
firma EdDSA. A grandes rasgos existen dos algoritmos cuya diferencia mayoritaria
está enmarcada en la curva elíptica que usa. Estas curvas elípticas son
las Ed25519 y Ed448. En el caso de Ed25519 su nivel de seguridad es muy alto y
comparable con opciones como RSA y ECDSA. Pero Ed448 va un poco más allá
entregando un nivel de seguridad claramente superior. Sin embargo, Ed448 es
incompatible con Ed25519 y es más compleja de implementar.
En cualquier caso, el pilar de funcionamiento de EdDSA es la elección de su curva
y el nivel de seguridad requerido.
Generación de claves
Una vez elegimos nuestra curva comenzamos la generación de las clave
pública y clave privada. Si EdDSA es un sistema de criptografía asimétrica y es
precisamente este modelo lo que permite explotar su potencial. En este punto, la
generación de claves sigue el mismo esquema de generación que cualquier
sistema asimétrico. En primer lugar, el entorno debe tener un generador de
número aleatorios y un pool de entropía seguro. Esto asegura la calidad de los
números aleatorios aplicados a la curva elíptica y su resultado único.
Comprobado este punto se inicia la generación de la clave privada. Esta clave es
la que permitirá al usuario crear las firmas criptográficas seguras en todo
momento. Luego de generar la clave privada se inicia la creación de la clave
pública. Esta última se genera en un proceso de hash de la clave privada usando
SHA-512. Una vez se realiza el hash se realiza una codificación octal al número
generado por la curva elíptica. El resultado es la clave pública que podemos
disponer para que otros puedan verificar los documentos que firmamos. De esta
forma, mantenemos la seguridad del sistema y nuestra clave privada, el origen de
nuestra firma digital.
Firmado y Verificación
El firmado usando EdDSA es bastante sencillo pero eficaz y seguro. El proceso
consta de tomar la información que queremos firmar y crear un hash de la misma.
Este hash garantiza que la clave aleatoria para generar la clave pública sea
completamente distinta en cada momento. Esta clave aleatoria luego es aplicada a
la formulación de la curva elíptica la cual produce la firma del documento.
De esta forma se garantiza:
1. Cada documento genera una “huella digital” única en forma de un hash
SHA-512. Se usa SHA-512 para agregar mayor seguridad y evitar
colisiones o hash repetidos. Esta huella digital o hash se usa luego para
generar el clave aleatorio que será usada para generar la firma digital de
dicho documento.
2. El proceso de usar SHA-512 y generar una clave aleatorio-única para cada
documento aumenta la seguridad. De esta forma, cada firma es única para
cada documento y sigue siendo verificable públicamente.
Como pueden ver el funcionamiento de EdDSA no es nada complicado y de hecho
ofrece seguridades que otros sistemas no. Esto convierte a EdDSA en un sistema
de firmado digital muy potente y seguro.
Diferencias entre EdDSA y ECDSA
1. Las curvas utilizadas por ambos sistemas son distintas. EdDSA utiliza las
llamadas curvas elípticas de Edwards, mientras que ECDSA usa curvas
elípticas más variadas.
2. El proceso de generación de firmas es completamente distinto. ECDSA
genera una firma única criptográficamente comprobable. Pero EdDSA
genera firmas distintas para cada documento e igualmente comprobables.
Esto es un salto en seguridad claramente observable. De hecho, ECDSA
puede ser explotado completamente debido a esta falla, como pasó con el
hack de PlayStation 3.
3. Las firmas y claves de EdDSA son computacionalmente menos costosas
que las de ECDSA. Además ambos elementos en EdDSA son más
pequeños en tamaño que su contraparte ECDSA. Esto le da la ventaja de
EdDSA de ser muy amigable con el poder de cómputo y el ancho de banda.
Ventajas y Desventajas.
Ventajas:
1. Ofrecen un alto nivel de rapidez, optimización y seguridad en un solo
aplicativo.
2. Las firmas EdDSA son completamente deterministas. Esto significa que las
firmas siempre contarán con las mismas propiedades y valores en todo
momento.
3. El sistema ofrece resistencia a ataque de canal lateral. Esta es una medida
de seguridad que evita que las firmas puedan romperse por este tipo de
ataque de fuerza bruta.
4. Las fórmulas son válidas para todos los puntos de la curva, sin
excepciones. Esto evita la necesidad de que EdDSA realice una costosa
validación de puntos en valores públicos no confiables.
5. EdDSA también proporciona resistencia a las colisiones, lo que significa
que las colisiones de función hash no rompen este sistema (solo se aplica a
PureEdDSA).
Desventajas:
1. Carece del nivel de pruebas y estandarización de otras opciones conocidas
como RSA y ECDSA.
2. Resulta un poco más compleja su comprensión de uso y análisis
algorítmico dificultando el diseño de software.
Son incompatibles con firmas como las ECDSA y RSA. Esto evita que se puedan
hacer mix de firmas dentro de una estructura blockchain sin marcadores.
Instalación y ejecución del software ¨kleopatra¨.
Creacion de llave
Archivo sifrado.
Despues de crear el certificado , buscamos el archivo a sifrar.
Escogemos el certificado que necesitemos.
Ciframos con contraseñ a si lo requerimos, para mayor seguridad.
Por ultimos tenemos el archivo ya sifrado y seguro bajo llave.
Bibliografía:
https://seguinfo.wordpress.com/2007/09/14/%C2%BFque-es-rsa/
https://academy.bit2me.com/que-es-ecdsa-curva-eliptica/
Henry cardenas bravo Control de la seguridad Ficha: 2276654
digital
Certificados de Confianza de nuestros Navegadores
El robo, la pérdida o la manipulación fraudulenta de la información son, hoy,
algunos de los riesgos de ciberseguridad que afectan a los usuarios de Internet.
Por ello, la digitalización y la ciberseguridad deben ir de la mano para todas
aquellas organizaciones que desean ofrecernos sus servicios a través del
ciberespacio.
Los certificados digitales son la base que ayuda a crear la confianza que los
usuarios necesitan. Son ficheros electrónicos generados para las organizaciones
por un prestador oficial de servicios de certificación que están autorizados para
emitirlos. Por ejemplo, si tenemos una web y queremos que los usuarios tengan la
tranquilidad y confianza que los datos que compartan a través de ella van a estar
debidamente protegidos mediante un cifrado, podemos contratar a una empresa
que se encargará de certificarlo y, si efectivamente la web cumple con los
requisitos, le permitirán utilizar ese “sello de confianza” en forma de certificado
digital.
Certificados de mi navegador
PASO #1 navegador Chrome
Entidades de certificación raíz de confianza.
Paso # 2 navegador Mozilla Firefox.
Navegador:
Privacidad y seguridad
Certificados: