Trillium, el chip de IA desarrollado por Google más potente y energéticamente más eficiente hasta la fecha

Trillium, el chip de IA desarrollado por Google más potente y energéticamente más eficiente hasta la fecha

Alphabet, la empresa matriz de Google, ha presentado su última incorporación a la familia de chips de centros de datos de inteligencia artificial: Trillium.

Representando el hardware más avanzado específico para IA, Trillium está compuesto por Unidades de Procesamiento Tensorial (TPUs, por sus siglas en inglés). Estos chips personalizados para centros de datos de IA son una alternativa destacada a las ofertas de Nvidia, proporcionando una opción convincente en el mercado.

Actualmente, Nvidia posee el 80% del mercado de chips de IA, con Google dominando el 20% restante. Es notable que Google no vende los chips, sino que los alquila a través de su plataforma de computación en la nube.

Rendimiento y Eficiencia Energética

Trillium es la sexta generación de TPU, la más performante y eficiente en energía hasta la fecha. Google ha destacado que los TPUs Trillium logran un impresionante aumento de 4.7 veces en el rendimiento máximo de cálculo por chip en comparación con el TPU v5e, según se indicó en una publicación de blog.

La última oferta de la compañía cuenta con el doble de capacidad y ancho de banda de memoria de alta capacidad (HBM, por sus siglas en inglés), junto con el doble de ancho de banda de Interconexión entre Chips (ICI, por sus siglas en inglés) en comparación con el TPU v5e.

Además, Trillium presenta una tercera generación de SparseCore, un acelerador especializado para procesar incrustaciones ultra-grandes encontradas en cargas de trabajo avanzadas de clasificación y recomendación. La publicación del blog también destaca la capacidad de entrenar la próxima ola de modelos fundamentales a menor latencia y menor costo.

Escalabilidad y Eficiencia

Los últimos TPUs Trillium se destacan por ser más del 67% más eficientes en energía que el TPU v5e, según Google. Además, el Trillium es capaz de escalar hasta 256 TPUs dentro de un solo pod de alta capacidad y baja latencia.

El blog también mencionó que más allá de esta escalabilidad a nivel de pod, los TPUs Trillium, equipados con tecnología multislice y Unidades de Procesamiento de Inteligencia Titanium (IPUs, por sus siglas en inglés), pueden escalar a cientos de pods, conectando decenas de miles de chips en un supercomputador a escala de edificio interconectado por una red de centro de datos de varios petabits por segundo.

Mejoras en el Rendimiento

La compañía logró un aumento de 4.7 veces en el rendimiento de cálculo por chip Trillium al aumentar el tamaño de las unidades de multiplicación de matrices (MXUs, por sus siglas en inglés) y aumentar la velocidad del reloj.

En una publicación de blog, la compañía declaró: «Los TPUs Trillium impulsarán la próxima ola de modelos y agentes de IA, y estamos deseando ayudar a habilitar a nuestros clientes con estas capacidades avanzadas».

Impacto en los Servicios de Computación en la Nube

Este avance beneficiará enormemente a los servicios de computación en la nube de Google y a Gemini. Empresas como Deep Genomics y Deloitte, que dependen de los servicios de Google Cloud, experimentarán un impulso significativo gracias al nuevo chip.

El soporte para entrenar y servir modelos multimodales de largo contexto en los TPUs Trillium permitirá a Google DeepMind entrenar y servir futuras generaciones de modelos Gemini más rápido, de manera más eficiente y con menor latencia que nunca.

Los TPUs Trillium son fundamentales para la Supercomputadora de IA de Google Cloud, una arquitectura de supercomputación diseñada específicamente para cargas de trabajo de IA de vanguardia.

Gemini 1.5 Pro es el modelo de IA más grande y capaz de Google, y fue entrenado usando decenas de miles de aceleradores TPU.

“Nuestro equipo está entusiasmado con el anuncio de la sexta generación de TPUs, y esperamos con ansias el aumento en rendimiento y eficiencia para el entrenamiento e inferencia a la escala de nuestros modelos Gemini.Jeff Dean, científico en jefe de Google Deepmind y Google Research.”

Vía google.com

Criptografía: la rama con más historia de la ciberseguridad y con un futuro prometedor

Criptografía: la rama con más historia de la ciberseguridad y con un futuro prometedor

La Criptografía es una materia apasionante. Me gusta recordar que esta ciencia ha escondido los mayores secretos de la Humanidad desde tiempos inmemoriales. Esta ciencia nos ha acompañado a lo largo de la humanidad y ha ido evolucionando con la misma, creando cada vez criptosistemas más sofisticados de modo que pudiera dar respuesta a las demandas de cada época. Pasando por los criptosistemas clásicos, como el famoso cifrado César o Vigenère, se dio paso a la Criptografía moderna, donde contamos con algoritmos tan importantes como el intercambio de claves Diffie-Hellman, el cual marcó un antes y un después en la Criptografía.

Figura 1: Criptografía: la rama con más historia de
la ciberseguridad y con un futuro prometedor

Este algoritmo resuelve el problema de cómo establecer una clave común entre los interlocutores de la comunicación sin la necesidad de utilizar un canal seguro o un contacto previo entre los mismos, el cual hasta 1976 había acompañado a la humanidad. La genialidad de este algoritmo le valió el premio A.M. Turing de 2015 de la Association for Computer Machinery y además dio lugar a la Criptografía asimétrica, en la que, a diferencia de la simétrica utilizada hasta entonces, se utiliza una clave diferente para cifrar y descifrar. 
De hecho, cada interlocutor utiliza un par de claves, una pública y otra privada. Aquí se puede hablar de algoritmos tan relevantes como RSA, la gran aportación de la firma digital y los certificados o las grandes ventajas de la Criptografía basada en curvas elípticas. Además, hay evoluciones de la Criptografía que estamos viendo, como la Criptografía ligera, la Criptografía homomórfica, etc.

La Criptografía, guardiana de la seguridad de nuestros datos y comunicaciones

La Criptografía utiliza el aparataje matemático como base para garantizar el funcionamiento de la misma, dándole aplicaciones que traen grandes aportaciones a la sociedad. De hecho, ha sabido hacer transparente esa complejidad y robustez matemática al usuario, quien la utiliza hoy en día casi sin ser consciente de ello.
¿Sabías que cuando sacas dinero de un cajero automático estás utilizando Criptografía, o cuando hablas por teléfono o cuando ves tu partido de fútbol favorito o cuando navegas por gran parte de las páginas de Internet o cuando envías un mensaje de Whatsapp/Telegram? Tantas acciones cotidianas que hacemos todos los días bajo las que subyace la Criptografía, haciendo de guardiana de la seguridad de nuestros datos y comunicaciones.

La Criptografía tiene características únicas respecto a cualquier otra rama de la Ciberseguridad. Además de ser la rama con más historia de la Ciberseguridad, también tiene un futuro prometedor. Hablamos de la Criptografía Cuántica, que permite hacer un intercambio de clave por un canal inseguro (típicamente a través de fibra óptica o aire) utilizando las propiedades de la cuántica, de forma que se puede detectar si hay un espía en el canal. Incluso ya se está trabajando en la Criptografía post-cuántica, es decir, aquella que se muestra resistente a la aparición del ordenador cuántico.

Breve repaso de la evolución de la Esteganografía

Tanto se podría decir de cada uno de los conceptos enunciados, sin embargo, en esta ocasión me gustaría hablar de la Esteganografía: una ciencia complementaria a la Criptografía cuyo objetivo es ocultar el hecho mismo de la transmisión de información. Sabiendo esto se entiende la etimología de la palabra Esteganografía, que proviene del griego “Steganos” (oculto) y “Graphos” (escritura).

Al no conocer el atacante que existe la comunicación, se reducen las probabilidades de ataque, lo que supone una medida extra de seguridad, la cual puede ser muy útil cuando se trata con información sensible o, por ejemplo, en situaciones de censura. Al igual que sucede con la Criptografía, los orígenes de la Esteganografía se remontan tiempo atrás. De hecho, se ha usado desde la antigüedad, en diferentes civilizaciones como la Griega y la China.

Haciendo un repaso por los diferentes sistemas esteganográficos a lo largo de la historia se encuentran curiosos e ingeniosos sistemas para ocultar la información. Se sitúa en el S. V a.C. el mecanismo mencionado por Heródoto, el cual escribía un mensaje en una tablilla y luego se recubría con cera para ocultar el mensaje. También es muy sonado el método de escribir un mensaje en la cabeza del mensajero. ¡Fijaos el tiempo que requería enviar un mensaje oculto de esta manera! Primero había que afeitar la cabeza del mensaje, escribir el mensaje, dejar el pelo crecer, enviar el mensaje y volver a afeitar la cabeza para leer el mensaje. ¡Nada que ver con la velocidad a la que transmitimos hoy los mensajes y la cantidad de información que manejamos!
Otra técnica utilizada durante las guerras mundiales era la utilización de tintas invisibles, como puede ser la de limón. O la ingeniosa idea de escribir el mensaje en un huevo cocido, cuya cáscara porosa absorbe la tinta y luego pelando el huevo se puede leer el mensaje.

Incluso es frecuente la utilización de textos como soporte para ocultar los mensajes, no solo en textos sino por ejemplo en partituras de música. Otro mecanismo conocido es la Rejilla de Cardano, donde utilizando una rejilla con un patrón se puede leer un mensaje oculto en un texto. Para l@s que tengan curiosidad por esta técnica pueden revisar este post sobre el accidente del Yack-42 en Turquía.

Técnicas actuales donde se utilizan medios informáticos para ocultar la información

Para ocultar los mensajes, la Esteganografía se apoya en un estegomedio, es decir, el recurso utilizado para ocultar la información. Hoy en día es frecuente la utilización de diferentes formatos de archivos, como imágenes, videos, audios, textos, lenguajes de programación, protocolos, ficheros, redes sociales, etc. como “tapadera” o estegomedio. Esto tiene multitud de aplicaciones a día de hoy, desde la protección de los derechos de autor (con las famosas marcas de agua), hasta la vulneración de mecanismos de seguridad como firewalls o antivirus, exfiltración de datos o la creación de estegomalware. Como siempre, las herramientas están disponibles para sus buenos usos u otros menos buenos… La Criptografía y la Esteganografía no son ciencias excluyentes sino complementarias. De hecho, no es extraño hacer una combinación de Criptografía y Esteganografía, cifrando los mensajes ocultos por si fueran descubiertos.

En cuanto a los mecanismos de ocultación, hay muchos que se pueden utilizar. Uno muy utilizado en imagen digital es la técnica LSB (Least Significant Bit en inglés), que como su nombre indica consiste en la sustitución de los bits menos significativos de una imagen por el mensaje a ocultar. Si la cantidad de información a ocultar no es demasiado grande, este mensaje pasará inadvertido a los ojos de los visualizadores de la imagen.

El estegoanálisis es el encargado de descubrir estos mensajes ocultos, para lo cual se suele buscar información redundante, que al modificarla no afecte al estegomedio y que permita descubrir esos canales de comunicación encubiertos.

Herramientas para trabajar con Esteganografía

Hay varias disponibles, como OpenStego, Steghide, Xiao Steganography, S-tools, etcérera. Cada una tiene sus particularidades, algoritmos de cifrado, medios que soporta, etc. Para ilustrar un ejemplo de cómo se puede aplicar la Esteganografía en imágenes digitales, os voy a hablar de S-tools, una herramienta muy sencilla que permite ocultar y descubrir mensajes ocultos en imágenes. 
Su utilización es muy sencilla e intuitiva. Para visualizar la imagen que servirá como estegomedio simplemente podemos arrastrar la imagen (en formato BMP). En este caso se ha usado la imagen “Figuras.bmp”.

Figura 5: Figuras.bmp antes de introducir el mensaje secreto

El fichero que se va a ocultar es “MensajeSecreto.docx” que contiene el texto “Ataque al amanecer”. Para ocultar este archivo con el mensaje en la imagen simplemente basta con arrastrar el archivo a ocultar encima de la imagen que se usará como tapadera. Entonces la herramienta nos pedirá que introduzcamos una clave y el algoritmo de cifrado que se quiera usar. Como algoritmos se pueden emplear varios: IDEADESTripleDES y MDC. En este caso se elige IDEA con la clave 9512.    

Figura 6: Selección de opciones de ocultación del mensaje secreto

A continuación, pulsamos sobre la imagen, que ya tiene el fichero oculto incrustado y seleccionamos la opción de guardar, dándole el nombre de “Hidden.bmp” a la imagen resultante. Cuando el destinatario recibe la imagen esteganográfica, si quiere descubrir el mensaje secreto primeramente debe arrastrar la imagen para abrirla con S-tools
A continuación, pulsando el botón derecho y usando la opción Reveal, podemos introducir de nuevo el algoritmo de cifrado y la clave (previamente debe haber un intercambio de clave entre los interlocutores) y…¡tachán!…esto esto es lo que obtenemos:

Figura 7: Hay un fichero oculto en la imagen

Usando la opción de guardar podemos traernos a local este fichero, abrirlo y descubrir el mensaje secreto:

Figura 8: Fichero extraído con S-tools de la imagen

Como se puede ver, esta herramienta permite ilustrar fácilmente los conceptos de la esteganografía. Por supuesto, todo es cuestión de imaginación para hacer cosas interesantes 😊 

Figura 9: Criptografía y ciberseguridad de forma sencilla y divertida por Carmen Torrano

Si te interesan estos temas te invito a ver esta ponencia sobre ciberseguridad y criptografía (que acaba de publicarse en abierto) en el CTO Summit, el evento en el que participé junto a más de 20 profesionales del sector de la tecnología el pasado 2020.

Además, si quieres especializarte en esta área y dar un salto profesional en tu carrera, te invito a que eches un vistazo al programa del Bootcamp Online Ciberseguridad (empieza el 24 de septiembre) del que formo parte también y junto a un equipo de docentes con muchísima experiencia en el sector. Si has llegado leyendo hasta aquí te doy las gracias y espero que lo hayas disfrutado.

¡Hasta pronto!

Autora: Carmen Torrano, experta en Ciberseguridad en Telefónica y docente en cursos de Ciberseguridad.

Fuente: https://www.elladodelmal.com/2021/08/criptografia-la-rama-con-mas-historia.html

Ver Imagen ocultando la url con PHP

Ver Imagen ocultando la url con PHP

El día de hoy necesitaba cargar una imagen pero que no se vea su ubicación real, leyendo y leyendo info obviamente de PHP me encontré con la funcion chunk_split() el cual se relaciona con base64_encode, el cual nos permite codificar en base64 la imagen y así mostrarla como si hicieras un simple <img src=”imagen.jpg”>

El código para esta función es:


// Seleccionamos la imagen que queremos codificar, también puedes poner la dirección donde se encuentra la 
imagen $imagen = file_get_contents("path + mi_imagen.jpg");
//Codificamos la imagen en base64 
$imagen_base64 = chunk_split(base64_encode($imagen));
// Para mostrar la imagen codificada sería lo siguiente 
echo '< img src="data:image/jpg;base64,'.$imagen_base64.'" />';

Se vería así:

[view_image64 type=jpg]2016/01/lluvia-1.jpg[/view_image64]

voilà!

Con eso tenemos la imagen, en codificación base64 sin necesidad de mostrar la url real de dicha imagen.

Saludos! 😀

Función Obtener IP en YII Framework Components

Función Obtener IP en YII Framework Components

Hola, hace rato no posteaba nada, he estado con hartas cosas he ahí el motivo, ahora les mostraré una función que utilizo en mis sistemas creados en YII para obtener la IP de quien se logea o realiza alguna acción en el sistemilla.

Es bastante sencilla y solo hay que alojarla en un nuevo archivo que se debe crear en la carpeta components obviamente que esta clase debe ser extención de controladores globales.

En la carpeta Components creado el siguiente archivo llamado Funcion.php (en realidad el nombre que deseen ponerle al archivo), el cual tendría el siguiente contenido.

<?php
class Funcion extends CController
{
  public static function obtenerIP()
  {
     if(!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
     {
        $client_ip = ( !empty($_SERVER['REMOTE_ADDR']) ) ? $_SERVER['REMOTE_ADDR'] : ( ( !empty($_ENV['REMOTE_ADDR']) ) ? $_ENV['REMOTE_ADDR'] : "unknown" );
        $entries = preg_split('/[, ]/', $_SERVER['HTTP_X_FORWARDED_FOR']);
   
        reset($entries);
        while (list(, $entry) = each($entries)) {
           $entry = trim($entry);
           if ( preg_match("/^([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)/", $entry, $ip_list) ) {
              $private_ip = array(
                    '/^0\./', 
                    '/^127\.0\.0\.1/', 
                    '/^192\.168\..*/', 
                    '/^172\.((1[6-9])|(2[0-9])|(3[0-1]))\..*/', 
                    '/^10\..*/');
              $found_ip = preg_replace($private_ip, $client_ip, $ip_list[1]);
              if ($client_ip != $found_ip){
                 $client_ip = $found_ip;
                 break;
              }
           }
        }
     } else { $client_ip = ( !empty($_SERVER['REMOTE_ADDR']) ) ? $_SERVER['REMOTE_ADDR'] : ( ( !empty($_ENV['REMOTE_ADDR']) ) ? $_ENV['REMOTE_ADDR'] : "unknown" ); }
     return $client_ip;
  }
}
?>

Ahora para llamar la función es simple desde el controllador agregas la siguiente línea:

$model->ip = Funcion::ObtenerIP();

Y estaríamos listo.

Saludos! 😀

Linux – Comprimir carpeta o archivos desde consola

Linux – Comprimir carpeta o archivos desde consola

Es muy fácil y útil comprimir archivos y sobre todo carpetas enteras desde consola. Es útil a la hora de realizar backups o copias de seguridad de directorios, ya que permite comprimir un directorio entero y descargarlo de forma más segura y más cómoda.

El comando te tienes que ejecutar desde la consola es el siguiente:
tar -zcvf nombre-archivo.tar.gz nombre-directorio

Donde,

-z: Comprimir archivos usando gzip
-c: Crear un nuevo archivo
-v: Verbose, es decir, mostrar el proceso durante la creacion del archivo
-f: nombre de archivo
Ahora bien, Como Descomprimir un archivo .tar.gz.

El comando necesario para descomprimir sería el mismo pero cambiando algunos atributos.

tar -xvzf miarcho.tar.gz

Donde,

-x: extrae el contenido del archivo comprimido
-v: Verbose, es decir, mostrar el proceso durante la creacion del archivo
-f: nombre de archivo
Otros formatos y comandos para comprimir y descomprimir mas usados

Ficheros gz
Comprimir
gzip -9 fichero

Descomprimir
gzip -d fichero.gz

Ficheros bz2

Comprimir
bzip fichero

Descomprimir
bzip2 -d fichero.bz2

Tanto gzip como bzip2 solo comprimen ficheros. No son capaces de empaquetar carpetas, para esto se utiliza el comando tar que he indicado anteriormente.

Ficheros zip

Comprimir
zip archivo.zip ficheros

Descomprimir
unzip archivo.zip

Ficheros rar

Comprimir
rar -a archivo.rar ficheros

Descomprimir
rar -x archivo.rar

Tags de búsquedas:

comprimir carpeta linux, comprimir carpeta en linux, comprimir una carpeta en linux, linux comprimir carpeta, comprimir carpetas linux, comprimir directorio linux, comprimir carpeta tar gz, comprimir carpetas en linux, comprimir carpeta tar, comprimir una carpeta linux