Algoritmos y criptografía : lo primero es lo primero, antes de proceder y comenzar a jactarme de mí mismo y convertir este blog en una aburrida conversación de un lado, primero entendemos qué son los algoritmos y cómo se relacionan con la criptografía.

Algoritmos y Criptografía

Algoritmos

Para aquellos de ustedes que piensan que Algorithms solo está conectado a la informática, están equivocados. El algoritmo es un método o una fórmula para resolver un problema. Y cuando digo un problema, puede ser cualquier tipo de problema, ya sean matemáticas, ciencias o incluso computadoras. Déjame darte un simple

Ejemplo:

(A + b) 2 = a 2 + 2ab + b 2

O puede ser como:

Monto acumulado = Principal (1 + ROI * 100 * tiempo)

¡Si! Todo lo que es una fórmula puede tomarse como un Algoritmo. Un algoritmo es un conjunto de reglas para resolver un problema que, si se hace correctamente, dará una respuesta correcta cada vez. Los algoritmos generalmente implican repetir una serie de pasos una y otra vez, como en los algoritmos de préstamo y transporte y en los algoritmos de multiplicación y división largos. Los algoritmos incluyen una variedad de sumas, restas, multiplicaciones y divisiones.

Pero antes de que comiences a pensar que estoy tomando algún tipo de clase de matemáticas aquí, déjame decirte que no. Estoy aquí para hablar sobre algoritmos y criptografía relacionados con la informática. Pero antes de continuar con eso, déjame darte algunos ejemplos de algoritmos simples para comenzar.

Estos ejemplos son para novatos puros que nunca han hecho ningún tipo de cosas algorítmicas en toda su vida. Entonces, si crees que eres lo suficientemente inteligente, puedes pasar a la siguiente sección de Criptografía donde volvería a presentar algunos conceptos básicos antes de pasar al siguiente nivel.

Entonces, aquí hay algunos ejemplos sobre Algoritmos de adición, que lo ayudarán a comenzar por ahora y le darán una idea de cómo son los algoritmos. Comencemos con las matemáticas básicas:

Algoritmos de adición de izquierda a derecha:

Comenzando por la izquierda, agregue columna por columna y ajuste el resultado.

Para algunas personas, este proceso se vuelve tan automático que comienzan a la izquierda y escriben la respuesta columna por columna, ajustándose a medida que avanzan sin escribir ningún paso intermedio. Si se les pide que expliquen, dicen algo como esto:

200 más 400 es 600, pero (mirando la siguiente columna) necesito ajustar eso, entonces escriba 7. Luego, 60 y 80 es 140, pero eso necesita ajuste, entonces, escriba 5. Ahora, 8 y 3 es 11, no hay más que hacer, escriba 1. Esta técnica se desarrolla fácilmente a partir de experiencias con manipuladores, como bloques de base 10 y dinero, y juegos de intercambio o intercambio, y es consistente con los patrones de izquierda a derecha aprendidos para leer y escribir.

Ahora, algunas personas pueden volverse locas al leer sobre esto. Por lo tanto, es posible que necesite Google estas cosas para tener una idea exacta de lo que está sucediendo exactamente aquí.

Criptografía

La criptografía es un arte de escribir códigos de una manera no legible para humanos. Es un método de almacenamiento y transmisión de datos en una forma particular para que solo aquellos a quienes está destinado puedan leerlos y procesarlos. Se puede decir que la criptografía es una prima cercana a las disciplinas de la criptología y el criptoanálisis.

La criptografía incluye técnicas como micro puntos, fusión de palabras con imágenes y otras formas de ocultar información en almacenamiento o tránsito. Sin embargo, en el mundo actual centrado en la computadora, la criptografía se asocia con mayor frecuencia a la codificación de texto sin formato (texto ordinario, a veces denominado texto sin cifrar) en texto cifrado (un proceso llamado cifrado), y luego nuevamente (descifrado). Las personas que practican este campo son conocidas como criptógrafos.

El cifrado se ha utilizado durante miles de años. Los siguientes códigos y cifrados se pueden aprender y utilizar para cifrar y descifrar mensajes a mano:

A) Cifrados monoalfabéticos:

El cifrado monoalfabético utiliza la misma sustitución en todo el mensaje. Por ejemplo, si sabe que la letra A está cifrada como la letra K, esto será válido para todo el mensaje. Estos tipos de mensajes se pueden descifrar utilizando análisis de frecuencia, conjeturas informadas o prueba y error.

1. Cifrado Ceaser

Un cifrado César es uno de los métodos de cifrado más simples (y más fáciles de descifrar). Es un cifrado de sustitución que implica reemplazar cada letra del mensaje secreto con una letra diferente del alfabeto, que es un número fijo de posiciones más adelante en el alfabeto.

Como cada letra del mensaje tiene una traducción directa a otra letra, el análisis de frecuencia se puede utilizar para descifrar el mensaje. Por ejemplo, la letra E es la letra más utilizada en el idioma inglés.

Por lo tanto, si la letra más común en un mensaje secreto es K, es probable que K represente E. Además, las terminaciones de palabras comunes como ING, LY y ES también dan pistas. Un enfoque de fuerza bruta de probar las 25 combinaciones posibles también funcionaría para descifrar el mensaje.

En este ejemplo, cada letra del mensaje de texto sin formato se ha desplazado 3 letras hacia abajo en el alfabeto.

Texto sin formato : este es un mensaje secreto

Texto cifrado : wklv lv d vhfuhw phvvdjh

2. Cifrado Atbash

El cifrado Atbash es un caso muy específico de un cifrado de sustitución en el que se invierten las letras del alfabeto. En otras palabras, todos como se reemplazan con Zs, todos los Bs se reemplazan con Ys, y así sucesivamente.

Como invertir el alfabeto dos veces obtendrá el alfabeto real, puede cifrar y descifrar un mensaje utilizando exactamente el mismo algoritmo.

Ejemplo:

Texto sin formato : este es un mensaje secreto

Texto cifrado : Gsrh rh z hvxivg nvhhztv

El cifrado de palabras clave es idéntico al cifrado César con la excepción de que el alfabeto de sustitución utilizado se puede representar con una palabra clave.

Para crear un alfabeto de sustitución a partir de una palabra clave, primero debe escribir el alfabeto. Debajo de esto, escriba la palabra clave (omitiendo letras duplicadas) seguida de las letras restantes del alfabeto que no se utilizan.

ABCDEFGHIJKLMNOPQRSTU VWXYZ

KEYWORDABCFGHIJLMNPQSTUVXZ

Para cifrar un mensaje de texto sin formato, convierte todas las letras de la fila superior a su letra correspondiente en la fila inferior (A a K, B a E, etc.).

El uso del análisis de frecuencia y algunas conjeturas educadas pueden descifrar fácilmente estos tipos de cifrados de sustitución simples.

4. Pigpen / Cifrado masónico

El cifrado pigpen (a veces llamado cifrado masónico o cifrado de masón) es un cifrado de sustitución simple que intercambia letras por símbolos basados ​​en una cuadrícula. El esquema fue desarrollado y utilizado por los masones a principios de 1700 para el mantenimiento de registros y la correspondencia. La tecla de ejemplo muestra una forma en que las letras se pueden asignar a la cuadrícula.

B) Cifrados polialfabéticos:

En un cifrado polialfabético, la sustitución puede cambiar a lo largo del mensaje. En otras palabras, la letra A puede codificarse como la letra K para parte del mensaje, pero más tarde puede codificarse como la letra W.

Cursos recomendados

  • Entrenamiento en XML
  • Curso de entrenamiento del examen CCNA
  • Entrenamiento completo del sistema operativo UNIX y Linux
  • Paquete de entrenamiento HTML 5

1. Cifrado de Vigenere

En un cifrado César, cada letra del alfabeto se desplaza a lo largo de algunos lugares; por ejemplo, en un cifrado César del turno 3, A se convertiría en D, B se convertiría en E y así sucesivamente. El cifrado Vigenere consiste en utilizar varios cifrados César en secuencia con diferentes valores de desplazamiento.

Para cifrar, se puede utilizar una tabla de alfabetos, denominada tabla recta, cuadro de Vigenere o tabla de Vigenere. Consiste en el alfabeto escrito 26 veces en diferentes filas, cada alfabeto desplazado cíclicamente a la izquierda en comparación con el alfabeto anterior, correspondiente a los 26 posibles cifrados César. En diferentes puntos del proceso de encriptación, el cifrado usa un alfabeto diferente de una de las filas. El alfabeto utilizado en cada punto depende de una palabra clave repetitiva.

Por ejemplo, suponga que el texto sin formato que se cifrará es:

ATTACKATDAWN

La persona que envía el mensaje elige una palabra clave y la repite hasta que coincida con la longitud del texto sin formato, por ejemplo, la palabra clave "LIMÓN":

LIMON LEMONLE

Cada letra se codifica al encontrar la intersección en la cuadrícula entre la letra de texto sin formato y la letra de palabra clave. Por ejemplo, la primera letra del texto sin formato, A, se cifra utilizando el alfabeto en la fila L, que es la primera letra de la clave. Esto se hace mirando la letra en la fila L y la columna A del cuadrado de Vigenere, es decir, L. De manera similar, para la segunda letra del texto sin formato, se usa la segunda letra de la clave; la letra en la fila E y la columna T es X. El resto del texto plano se cifra de manera similar:

Texto sin formato : ATTACKATDAWN

Clave : LEMONLEMONLE

Texto cifrado : LXFOPVEFRNHR

Encontrar la posición de la letra de texto cifrado en una fila de la tabla y luego tomar la etiqueta de la columna en la que aparece como texto sin cifrar. Por ejemplo, en la fila L, el texto cifrado L aparece en la columna A, que se toma como la primera letra de texto sin formato. Mirando hacia arriba X en la fila E de la tabla descifra la segunda letra; aparece en la columna T, que se toma como la letra de texto sin formato.

Un cifrado de Gronsfeld es idéntico al cifrado de Vigenere con la excepción de que solo se utilizan 10 filas, lo que permite que la palabra clave sea un número en lugar de una palabra.

Esteganografía

La esteganografía es en realidad la ciencia de ocultar información de personas que te espían. La diferencia entre esto y el cifrado es que los aspirantes a fisgones pueden no ser capaces de decir que hay información oculta en primer lugar.

Como ejemplo, los archivos de imagen suelen tener mucho espacio sin usar. Este espacio podría usarse para enviar mensajes ocultos. Si realiza una investigación sobre el cifrado, puede ver el término esteganografía utilizado ocasionalmente. Sin embargo, no es un cifrado verdadero (aunque aún puede ser bastante efectivo), y como tal, solo lo menciono aquí para completarlo.

Entonces, básicamente, si desea comenzar a practicar la criptología, la mejor manera de comenzar sería comenzar a resolver algoritmos y texto cifrado junto con la esteganografía. Aunque la esteganografía puede parecer fácil y no es un cifrado verdadero, sigue siendo uno de los cifrados más utilizados cuando se trata de conceptos básicos y cuando necesita codificar algo en muy poco tiempo y de la mejor manera posible.

Primera fuente de imagen: pixabay.com

Artículos recomendados

Aquí hay algunos artículos que lo ayudarán a obtener más detalles sobre los Algoritmos y la Criptografía, así que solo vaya al enlace.

  1. Estructuras de datos y algoritmos Preguntas de la entrevista | Más útil
  2. 8 preguntas y respuestas impresionantes de la entrevista del algoritmo
  3. Los mejores lenguajes de programación para el aprendizaje de algoritmos
  4. 10 mejores estructuras de datos y algoritmos C ++ | Lo esencial