jueves, 12 de octubre de 2023

Criptografía de Forma Sencilla

   La criptografía es un campo moderno dentro del ámbito de estudio e investigación de la matemática y requiere conocimientos avanzados de esta materia. Aún así, intentaré en esta entrada reflejar la criptografía de la forma más sencilla que pueda sin que el lector se sienta empequeñecido y abrumado por la teoría que encierra. Espero acertar.

   Sea M un mensaje y E su encriptación. Supondremos que ambos son números naturales. Llamamos f a la función que va de M a E, f(M) = E. Para codificar M, el codificador y el descifrador del mensaje seleccionan dos números primos muy grandes, p y q, y definen el módulo, al que llamaremos n poniendo n = pq, suponiendo n > M. Se elije un e, con 1 < e < g(n) y e primo entre sí con g(n). La función g(n) llama función indicatriz y se define como el número de elementos del conjunto de números menores que n que son primos entre sí con n, es decir, g(1) = 1, g(2) = 1, g(3) = 2, g(4) = 2, g(5) = 4, g(6) = 2, g(7) = 6, g(8) = 4, g(9) = 6, g(10) = 4, ... Algunas propiedades interesantes de la función g son que, si p y q son primos entre sí, se cumple que g(pq) = g(p)g(q) y cumple el pequeño teorema de Fermat (su enunciado es "si a es un entero positivo y p un primo que no es factor de a, entonces p ha de ser un factor de aᴾ⁻¹ – 1"): si p y q son primos entre sí, entonces pg(q)  1 (mod q), es decir, pg(q) - 1 = kq, con k número entero, esto es,  pg(q) y 1 dejan el mismo resto al dividirse entre q. El símbolo "≡" en una expresión del tipo x ≡ y (mod n)  significa x congruente con y módulo n. En definitiva, x es igual a y en Zn (son iguales como clases de equivalencia).

   La clave pública está formada por n y e y es conocida. Se puede definir este concepto con un ejemplo tan sencillo como ilustrativo: Supongamos que Y quiere enviar a X un mensaje secreto que solo él pueda leer. X envía a Y una caja abierta con cerradura, la cual se bloqueará una vez se cierre la caja, de tal modo que solo podrá abrirse con una llave que solo posee X. Y recibe la caja, escribe el mensaje, lo pone en la caja y la cierra. Ahora Y ya no podrá abrir la caja para acceder de nuevo al mensaje porque no tiene la llave. Entonces Y envía la caja a X, la cual puede abrir con su llave. Así, la caja con la cerradura es lo que se denomina clave pública de X y la llave de la cerradura es su clave privada. La caja la puede ver cualquiera pero no su contenido.

    Como n es tan grande y no está factorizado, p y q son incógnitas casi imposibles de saber. Se tiene que E = f(M) M e (mod n). En estas condiciones, la clave privada es el par n, d, donde d se elije de manera que ed 1 (mod g(n)). Como p y q son primos y n = pq, se cumple que g(n) = (p - 1)(q - 1). Si no se conocen p y q, y es prácticamente imposible conocerlos, no puede conocerse tampoco g(n) por lo que tampoco puede conocerse d. Pero el descifrador sí posee d ya que conoce p y q y así puede descifrar el mensaje (posee la llave que desbloquea la caja): E d (M e ) d  (mod n) M ed (mod n)   M (Ng(n) + 1) (mod n), con N un número natural. Se puede aplicar ahora el pequeño teorema de Fermat: si a = M N (a es, casi seguro, primo entre sí con n), entonces, E d aM g(n) (mod n) M (mod n) = M, ya que M < n, como se ha supuesto al principio.

   Por todo ello, crear una clave es relativamente fácil, pues sólo se necesitan dos números primos grandes, los que hemos llamado p y q, y romperla es muy difícil. En esto se basa la seguridad actual de internet.

   Pocas veces se puede encontrar el resumen de toda una rama de la teoría de números tan breve, concisa y clara. Lo ideal es probar con algunos ejemplos que dejo al lector a su libre albedrío para que experimente, lo que quizás le lleve algún tiempo (una fracción de una fracción de una fracción es lo que tardan los ordenadores en cifrar mensajes) pero seguro que el resultado le agrada.

jueves, 5 de octubre de 2023

Logaritmos de Números Negativos: Euler y Sus Juegos

 Que Leonard Euler fue uno de los más grandes matemáticos de todos los tiempos no encierra ninguna duda. Desde pequeño le gustaba jugar con los números e investigar a partir de cosas conocidas para sacar sus propias conclusiones y una de ellas es el estudio de los logaritmos de números negativos.

   En secundaria se nos enseña que no existen los logaritmos de los números negativos y nos lo creemos por nuestra inocencia y falta de conocimientos pero sí existen. La cuestión es que existencia se basa en el cuerpo en el que se definan. Así, dichos logaritmos no existen en el cuerpo de los números reales R pero sí en el cuerpo que incluye a todos los números reales, el cuerpo de los números complejos C. Se sabe que C es algebraicamente cerrado, esto es, cualquier ecuación de grado mayor que 1 tiene solución (o soluciones) en C. No sucede este extremo en el cuerpo de los números reales como, por ejemplo, la ecuación de segundo grado x2 + 1 = 0 cuya solución escapa de los números reales, ya que ésta es x = -1, la constante imaginaria llamada " i " (nombrada así por Euler), irresoluble en R, como es sabido.

   Es conocida la fórmula de Euler e xi = cosx + isenx . El número real -1 se puede considerar como número complejo, ya que -1 = -1 + 0i. Así, cualquier número real se puede ver como un número complejo con esta sencilla construcción. Como bien es sabido, cosπ = -1, senπ = 0, por lo que -1 = -1 + 0i = cosπ + isenπ e i Pi  =>                 e i Pi + 1 = 0, que es la conocida como "fórmula más bella del mundo".

Escribimos ahora la ecuación anterior de la siguiente manera: -1 = e i Pi , y le vamos a aplicar logaritmos en ambos miembros y aplicar sus propiedades: ln(-1) = ln (e i Pi ) => ln(-1) = iπ ln(e) = iπ . Con este sencillo proceso se ha conseguido el logaritmo de un número negativo.

   Por la construcción del cuerpo de los números complejos C, el resultado más exacto es ln(-1) = iπ + 2kπ, (k un número entero), es decir, añadirle a la primera solución las vueltas sucesivas a la circunferencia en C.

Como curiosidad, se puede calcular el valor de i i  de la siguiente forma:

i = 0 + 1i = 0 + 1 · [cos(π/2) + i sen(π/2)], porque cos(π/2) = 0  sen(π/2) = 1.  De la fórmula de Euler e xi = cosx + isenx  se tiene  i = 1 · (e i Pi/2 ) = e i Pi/2 =>  i i = e w Pi/2 , donde w =  i 2 = -1 , por lo que i i es un número real, aproximadamente  0,2078795764...  Al igual que más arriba, hay que añadir las soluciones cada vez que se produce un giro completo, es decir, i i = e (w Pi/2 + 2k Pi), para todo k número entero.

Otro pequeño ejemplo está en hallar el valor de la raíz i-ésima de -1, es decir, (-1) 1/i :

Por la bella fórmula  e i Pi + 1 = 0, se tiene que -1 = e i Pi, a lo que hay que añadir, como comenté en el ejemplo anterior, las vueltas o giros en el plano complejo, es decir, -1 = e i (Pi + 2k Pi), para cualquier k un número entero, por tanto, (-1) 1/i = (e i (Pi + 2k Pi)) 1/i = e (Pi + 2k Pi), que es otro número real (cuando k = 0), como en el caso anterior. Como dato importante, comentar que e Pi  es llamada constante de Gelfond  y su valor aproximado es 23,1406926328...

   Experimentar con los números y descubrir nuevas propiedades de ellos es a lo que se dedicó el genial Euler, así como cualquiera, hoy en día, de niños a mayores, puede experimentar "jugando" como en los ejemplos anteriores. Euler estaría orgulloso de esas mentes inquietas.

lunes, 2 de octubre de 2023

¿Existe Algún Líquido en el que Flote el Acero?

    ¿Es posible que el acero o el hierro floten en algún líquido? Es una pregunta interesante que requiere precisar el término "líquido". Básicamente, un líquido es un estado de agregación de la materia aunque es un concepto altamente complejo. La flotabilidad de un objeto en un medio es el empuje que experimenta hacia arriba. La tensión superficial de un líquido es la energía que se necesita para aumentar su superficie por unidad de área. Este es otro concepto complicado pero muy fácil de entender si se imaginan los insectos sobre la superficie del agua de un recodo de un río, aparentemente flotando sin hundirse en el agua.

   Con estas breves definiciones ya es posible plantear la cuestión inicial de un modo más concreto. La respuesta a la pregunta es un SÍ relativo, es decir, una afirmación condicionada. Cualquier metal en estado sólido puede flotar en un líquido que sea producto de la fundición de otro metal de tal manera que la densidad del metal fundido sea mayor que la del metal sólido y que el punto de fusión del metal sólido sea mayor que el del metal fundido convertido en líquido. Es cierto que un metal puede flotar en el agua pero bajo unas condiciones muy estrictas. Como ejemplo obvio, los barcos flotan en el agua pero los barcos han de tener unas formas muy concretas y cumplir ciertos principios... en caso contrario, incluso los barcos de madera se pueden hundir a pesar de que la madera flota en el agua de forma natural.

   Para entender con claridad lo expuesto en el párrafo anterior y contestando a la pregunta concreta que titula esta entrada, se pueden presentar varios ejemplos:

   El acero (aleación de Hierro y Carbono, esto es, Fe + C) tiene una densidad media de 7,8 g/cm3 y su punto de fusión es de 1375º grados Celsius. El Latón (aleación de Cobre y Zinc, Cu + Zn) tiene una densidad media en el intervalo 8,4 - 8,7 g/cm3 y su punto de fusión oscila entre 900º y 940º Celsius dependiendo de los porcentajes de sus componentes. Así, por lo visto anteriormente, el acero flota en latón fundido ya que requiere más calor que el latón para fundirse y su densidad es mayor que la del latón.

   Se puede ir probando con distintos metales según sus características; como ejemplos, el Mercurio (Hg) tiene una densidad de 13,6 g/cm3 y su punto de fusión es negativo, -39º Celsius, por lo que, por encima de -39º permanece en estado líquido (de ahí su uso en los termómetros). El Oro (Au) tiene una densidad media de 19,32 g/cm3 y su punto de fusión es de 1065º Celsius. La Plata (Ag) tiene una densidad de 10,5 g/cm3 y su punto de fusión es de 962º Celsius. Con estos datos, el acero y la Plata flotan en el Mercurio pero el Oro se hunde sin fusionarse, la Plata se fusiona con el Oro (estando el Oro en estado líquido y sumergiendo Plata en estado sólido en él, a la inversa no se cumple), el acero flota en la Plata, el Oro se hunde en el latón, etc.

   Por tanto, la respuesta rápida a la cuestión inicial ha sido encontrar dos "líquidos" en los que flota el acero sólido: el Mercurio y el latón, sin tener en cuenta el caso excepcional del acero en el agua, como ya he comentado. Evidentemente, se puede buscar gran cantidad de información sobre distintos metales y comprobar teóricamente los distintos casos como he comentado en esta curiosa entrada.