Libros CALIGRAFIA y el fascinante mundo de mis primos

pitercitonorth

RangoVeterano
Registro
11 Jun 2003
Mensajes
1.946
Reacciones
1
CRIPTOGRAFIA y el fascinante mundo de los números primos

Quizás mucha gente no lo sepa, pero los números primos son los garantes de la seguridad y la libertad.

Como os lo cuento.

Los sistemas de claves, criptografía y codificación, se basan en ellos, mejor dicho, en la factorización de los mismos.

Imaginad que se pudiese descrifrar cualquier mensaje ¿dónde quedaría la libertad, la intimidad, el proteger lo que pensamos?

La criptografía es una ciencia apasionante.

Hay varios algoritmos como el archiconocido 3DES, el Twofish, Gost, el potente RD5 o el popular Rij-aNd-Dael

hay cientos, de hecho.

¿usáis la criptografía a menudo, en vuestra vida cotidiana, para proteger documentos, para el trabajo? ¿qué algoritmos usáis, qué protegéis?

p.d. luego lo desarrollo más que tengo que ir a currar

p.d.2. uno de los ejercicios que te ponen en mensa es calcular y determinar números primos
 
pitercitonorth rebuznó:
Los sistemas de claves, criptografía y codificación, se basan en ellos, mejor dicho, en la factorización de los mismos.

Un problema que requiere mucha potencia de cálculo, factorizar un número primo...

pitercitonorth rebuznó:
¿usáis la criptografía a menudo, en vuestra vida cotidiana, para proteger documentos, para el trabajo? ¿qué algoritmos usáis, qué protegéis?

Los algoritmos concretos, aunque en el fondo son la base de a criptografía, normalmente suelen ser lo de menos. En cada momneto se confía en los que la comunidad científica califica como no vulnerables. El listado no cambia muy a menudo, así que las infraestructuras criptográficas suelen soportar la mayoría de ellos y es igual por cuál se opte (dentro una familia, claro: si se quieren claves secretas o si se necesita PBE no se escogerá un algoritmo de claves asimétricas).
 
EL único algoritmo que utilizo es el de Hash, utilizado principalmente con las certificaciones de internet. Es probablemente el algoritmo más seguro en cuanto a envío de información.

En informática, Hash se refiere a una función o método para generar claves o llaves que representen de manera casi unívoca a un documento, registro, archivo, etc., resumir o identificar un dato a través de la probabilidad, utilizando una función hash o algoritmo hash. Un hash es el resultado de dicha función o algoritmo.
Una función de hash es una función para resumir o identificar probabilísticamente un gran conjunto de información, dando como resultado un conjunto imagen finito generalmente menor (un subconjunto de los números naturales por ejemplo). Varían en los conjuntos de partida y de llegada y en cómo afectan a la salida similitudes o patrones de la entrada. Una propiedad fundamental del hashing es que si dos resultados de una misma función son diferentes, entonces las dos entradas que generaron dichos resultados también lo son.
Es posible que existan claves resultantes iguales para objetos diferentes, ya que el rango de posibles claves es mucho menor que el de posibles objetos a resumir (las claves suelen tener en torno al centenar de bits, pero los ficheros no tienen un tamaño límite).
Son usadas en múltiples aplicaciones, como los arrays asociativos, criptografía, procesamiento de datos y firmas digitales, entre otros. Una buena función de hash es una que experimenta pocas colisiones en el conjunto esperado de entrada; es decir que se podrán identificar unívocamente las entradas
De la wikipedia.

Lo dejo con enlaces incluso por si alguien desea echarle un vistazo.
 
ElcielodeHubeqa rebuznó:
EL único algoritmo que utilizo es el de Hash, utilizado principalmente con las certificaciones de internet. Es probablemente el algoritmo más seguro en cuanto a envío de información.

Eso no es un algoritmo. Un algoritmo (de hash, precisamente) puede ser el MD5, el SHA-1 o el SHA-256, pero no "hash" en sí, que es un concepto general.

Además, si por "certificaciones de internet" te refieres a certificados para SSL, lo que se hace es firmar, no sólo "hashear". Quizás te refieres a los códigos que ofrecen algunas páginas para verificar que el fichero que uno se ha descargado esté completo. Eso permite saber si lo que uno se ha bajado está íntegro, pero no si ha sido manipulado, ya que el manipulador podría haber tocado también el código que tú ves y contra el que comparas. Para garantizar la autenticidad sin claves secretas, lo único fiable es la firma.
 
pastanaga rebuznó:
Eso no es un algoritmo. Un algoritmo (de hash, precisamente) puede ser el MD5, el SHA-1 o el SHA-256, pero no "hash" en sí, que es un concepto general.

Además, si por "certificaciones de internet" te refieres a certificados para SSL, lo que se hace es firmar, no sólo "hashear". Quizás te refieres a los códigos que ofrecen algunas páginas para verificar que el fichero que uno se ha descargado esté completo. Eso permite saber si lo que uno se ha bajado está íntegro, pero no si ha sido manipulado, ya que el manipulador podría haber tocado también el código que tú ves y contra el que comparas. Para garantizar la autenticidad sin claves secretas, lo único fiable es la firma.

Si ha sido manipulado la información no llega de una forma transparente, además se te informa de que parte del código ha sido manipulado.

Precisamente el contraste en las clave privada y pública hace que se te informe de si el código ha sido manipulado o no.

Y bueno, el algoritmo de Hash es un algoritmo propiamente dicho, que engloba otros algoritmos de la misma rama, como los que vd comentó. Pero en sí, es un algoritmo, sino de qué se llamaría Algoritmo de Hash. De todos modos, sé por donde iba. Quizás me expresé yo mal.

De hecho, se suele tener la idea de que su única función es ofrecer una longitud invariable del código, transformándolo previamente si es necesario.
 
Si ha sido manipulado la información no llega de una forma transparente, además se te informa de que parte del código ha sido manipulado.

Precisamente el contraste en las clave privada y pública hace que se te informe de si el código ha sido manipulado o no.

Y bueno, el algoritmo de Hash es un algoritmo propiamente dicho, que engloba otros algoritmos de la misma rama, como los que vd comentó. Pero en sí, es un algoritmo, sino de qué se llamaría Algoritmo de Hash. De todos modos, sé por donde iba. Quizás me expresé yo mal.

De hecho, se suele tener la idea de que su única función es ofrecer una longitud invariable del código, transformándolo previamente si es necesario.

Si se dice "algoritmo de hash" no es porque "hash" sea un algoritmo. Es como si por decir "función de onda", "onda" sea una función. Pero bueno, dejémoslo en que no nos hemos entendido por cuestiones semánticas.

Donde ya sí que me dejas anonadado es en lo de la clave pública y la privada. ¿Estás hablando de las claves de algún algoritmo de hash? ¿¿Desde cuándo hacen falta claves para calcular un SHA-1?? Si en cambio te refieres al par de claves para encriptar o verificar una firma, entonces de acuerdo, pero es que eso no es un simple hash, ahí hay una firma.

Releyendo, me parece que por clave privada y pública te estás refiriendo al hash del documento que te bajas y al hash que la página web indica. Si es así, eso sólo te permite saber lo que comentaba antes, si el fichero que te has bajado está completo o no, no si alguien entre tu ordenador y el servidor ha manipulado el documento.

Porque si alguien se ha interpuesto en el camino y ha podido manipular el documento que te bajas a través de una conexión HTTP, también habrá podido manipular la página de donde lees lo que llamas "clave pública" a través de tu conexión HTTP con el servidor. Por lo tanto, si las dos hashes coinciden, no es garantía de que nadie haya podido manipular maliciosamente el documento que te bajas.

Si la comunicación se hace a través de HTTPS, sí que sabes que ni lo que te bajas ni la página con el hash que te tendría que salir han sido manipulados. Pero es que entonces sí que hay firma electrónica por debajo.
 
Y bueno, el algoritmo de Hash es un algoritmo propiamente dicho, que engloba otros algoritmos de la misma rama, como los que vd comentó. Pero en sí, es un algoritmo, sino de qué se llamaría Algoritmo de Hash. De todos modos, sé por donde iba. Quizás me expresé yo mal.
Se llama algoritmo hash porque a toda sucesión de operaciones que sirven para resolver un problema se les puede llamar algoritmo. Pero una función hash, de por sí, no sirve para encriptar nada.

Para lo único que sirve una función hash es para aplicarla sobre determinado conjunto de datos, obtener un valor en un rango determinado, y poder aplicar determinado proceso sobre los datos dependiendo del valor obtenido con la función hash.

De hecho, se suele tener la idea de que su única función es ofrecer una longitud invariable del código, transformándolo previamente si es necesario.
¿Ofrecer longitud invariable del código? ¿Invariable respecto a qué? ¿Sobre qué código? ¿Para qué hay que transformarlo?
 
Pasemos a describir los algoritmos, ¿os parece?


Blowfish (llave de 448 bits) es un algoritmo de encriptación rápido y fuerte. Su creador es Bruce Schneier, uno de los más prestigiosos criptógrafos en el mundo.

Rijndael (llave de 256 bits) es un algoritmo seguro y eficiente. Sus creadores son Joan Daemen y Vincent Rijmen (Bélgica). Ha sido elegido como el nuevo Estándar Avanzado de Encriptación (AES) por el Instituto Nacional de Estándares y Tecnología (NIST) de los EEUU.

3DES-Triple DES (llave de 168 bits) es un algoritmo desarrollado por el gobierno de EEUU y ha sido evaluado durante años sin descubrírsele debilidades. Es una configuración de encriptación en la cual el algoritmo DES es usado tres veces con tres llaves diferentes.

Gost (llave de 256 bits) es un algoritmo de Rusia y podría ser considerado el análogo ruso al DES. Tiene un diseño conservador y no ha podido ser vulnerado, a pesar de haber sido uno de los más estudiados, durante años, por los mejores expertos en criptoanálisis.

Mañana vamos con los fuertes, TwoFish y los RD y alguno más curioso

también es interesante hablar de velocidades de encriptado, recuerdo que en algún sitio tenía la lista, es interesante a la hora de escoger uno por otro.

como curiosidad, el compresor ARJ utiliza el algoritmo GOST y muchas páginas de internet el Twofish, aunque se está imponiendo el RijNDael como un estandar (que antes lo fue DES como AES pero lo lograron romper)

¿alguien se atreve a romper uno de ellos? hay cuantiosos premios por ello que ofrecen los creadores
 
pastanaga rebuznó:
Vale, pero para mostrar dominio sobre el tema mejor no llames "llave" a las "claves".

No tengo dominio ni intento mostrarlo, aunque eso pueda desprenderse.

Intento intercambiar pareceres en tan fascinante mundo.

Sólo eso ;)
 
Arriba Pie