Autor: efece

¡Se lanzó PHP 8!

¡Finalmente PHP 8 está con nosotros!

Uno de los lenguajes de programación de código abierto más populares entre los desarrolladores, liberó hoy su versión 8.0, ofreciendo entre otras ventajas, un aumento considerablemente en su rendimiento y nivel de seguridad.

¿Con qué nos vamos a encontrar?

Estas son algunas de las nuevas características que trae consigo PHP 8

  • Compilador JIT La mayor novedad es el compilador JIT (Just In Time Compiler o Compilador Justo a Tiempo) que mejorará el rendimiento con una ejecución de código más rápida. El compilador almacenará parte del código durante el tiempo de ejecución, funcionando de manera muy similar a una versión en caché. Para aplicaciones Web tradicionales, implica una leve mejora de performance pero sobre todo, prepara el motor PHP para abarcar aplicaciones intensivas de uso de CPU como procesamiento masivo de datos, video, etc.
  • Union Types Los “union types” son una colección de dos o más tipos de datos. De este modo, permite tener variables que acepten ser de tipos distintos, validando ambos. En la versión PHP 7 se introdujo el tipado en los parámetros de entrada y salida de las funciones, pero, dado que PHP es un lenguaje dinámico muchas veces nos veíamos obligados a no ponerlo porque las funciones podían devolver varios tipos. Ahora en PHP 8 puedes especificar directamente qué tipo de respuestas o parámetros son aceptables y cuáles no.
  • Attributes Los atributos o anotaciones permiten añadir metadatos a las diferentes clases sin tener que parsear un PHPDoc completo. A partir de PHP 8 se podrá especificar atributos / anotaciones sin tener que recurrir a bloques de comentarios.
  • Mixed Type Con PHP 8 se podrá tipar mediante “mixed” argumentos, propiedades y valores de retorno para representar varios de estos valores: array, bool, callable, int, float, null, object, resource, string. Utilizar esta función “mixed” ahorrará concatenar muchos tipos.
  • Weak Maps PHP 8 introduce los “WeakMaps” que permiten almacenar referencias a objetos, pero sin impedir que estos sean eliminados por el “garbage collector”. Seguramente esto sea un añadido muy interesante para librerías encargadas de cachear objetos como por ejemplo hace Doctrine con las entidades que recupera y que, almacenándolas en WeakMaps permitirían liberar memoria de forma más eficiente cuando esas entidades dejan de tener referencias en algún momento.

Estas son solo algunas de las novedades de esta versión, hay mucho más por conocer y aprender ingresando a PHP o en la guía oficial de migración, para conocer las novedades e incompatibilidades de PHP 8

NOTA: La imagen a continuación, se trata de pruebas en desarrollo, es decir PHP 8-Dev y no sobre la versión final de PHP 8.

El MP3 cumple 25 años

Fines de Julio de 1995. Alemania, calor, quizás no cómo los actuales, pero mucho calor al fin y al cabo.

Karlheinz Brandenburg llegaba con mucho mejor humor del habitual a las oficinas de Instituto Fraunhofer IIS, a pesar de la increíble humedad reinante, saludando muy amablemente al conserje, de hecho, le dejó el suplemento deportivo del diario Deuschland, que hablaba sobre las incorporaciones que pensaba hacer el Bayern Munich para derrotar en la próxima temporada al poderoso Borussia. No era para menos que este alemán – hoy considerado el padre del formato .MP3 – haya estado tan contento, ya que en parte sabía que lo que había logrado iba a revolucionar el mundo.

Por entonces, un disco rígido convencional tenía un costo de U$D 0,25 por MB, y guardar música en formato .WAV (sin compresión) utilizaba alrededor de 10MB el minuto. De hecho, un álbum promedio de 65 minutos llegaba a ocupar más de la mitad de lo que tenía un HD estándar de la época (1GB). A nivel costo, meter un CD sin comprimir en un HD llegaba a costar hasta (U$D 150) que eran una 10 veces más de lo que costaba en su formato original.

MPEG-1 Capa de Audio III (MPEG-1 Audio Layer III) fue una evolución – o mejor dicho fork – del estándar MPEG que permitía comprimir audio en hasta 10 veces su tamaño en bytes sin perder calidad aparente para la mayoría de las personas. Una de las principales técnicas para lograr que MP3 haya sido exitoso fue la técnica MUSICAM (del inglés, Masking Pattern Universal Sub-band Integrated Coding and Multiplexing) que adoptaba un modelo psicoacústico de audición humana para ayudar a la compresión. Esto aprovechaba el efecto del enmascaramiento auditivo que es algo así cómo una una limitación que tenemos los humanos para escuchar sonidos que se enmascaran con otros. Al eliminar los datos de los sonidos que no se perciben, es posible almacenar más audio en menos espacio sin ningún efecto percibido para el oyente.

Si bien el estándar ya había sido definido a finales de los 80 y estandarizado en 1992, el día del que hablamos, donde Karlheinz, de hecho, invitó a toda la oficina a almorzar en un restaurant al mediodía se define por el hecho de que el Instituto Fraunhofer IIS iba a lanzar las primeras noticias sobre el primer reproductor de MP3 en tiempo real de la historia, el WinPlay3.

Un software de 1995 tiene mejor interfaz que el VLC hoy.

Ese día, además, se bautizaría por primera vez a la extensión de los archivos de audio comprimidos cómo .MP3

El día que nació el mito (y la piratería)

Antes de esa fecha, Fraunhofer IIS ya vendía un compresor comercial que transformaba archivos PCM en MPEG-1 Capa de Audio III pero la extensión en la que lo guardaba era .BIT, pero estaba destinada a estudios de grabación y radios. El primer salto de fama del formato se dio cuando en los servidores FTP de la escena Warez comenzaron a aparecer CD’s comprimidos en MP3 con el reproductor incluído.

Solo era cuestión de tiempo para que la cosa explote y así fue. Un hacker australiano adquirió el software de compresión de Fraunhofer llamado L3enc usando una tarjeta de crédito robado con la intención de hacerle ingeniería inversa al software y lo logró. Tiempo después, saldría un software que hacía lo mismo, con mejor interfaz de usuario y fue distribuído de manera gratuita, llamado “Gracias Fraunhofer”.

Así fue que poco duraría la alegría de Fraunhofer. La idea de tener un modelo de negocio redondo, donde el medio sería el más utilizado pero ellos vendían el software de compresión murió rápidamente ya que cualquier persona con acceso a Internet tenía la capacidad de conseguir un rippeador de CD’s sin pagar un centavo.

Y por si fuera poco, meses después Justin Frankel crearía Winamp. Un software que tomaba lo mejor de las interfaces de los reproductores de música físicos y lo pondría en una PC con Windows para reproducir MP3. Todo era más y más cercano al acceso de las masas.

Best reproductor, ever.

Pero el verdadero boom del formato sin dudas se dio en 1999, cuando otro joven estadounidense crea Napster, el que fuera el primer software P2P popular de la historia. Napster le permitía a cualquier usuario sin conocimientos descargar un programa, escribir una canción y tenerla en minutos. Fue el principio del fin del negocio de la música tal cómo lo conocíamos en ese momento.

El resto, es historia.

Gracias por todo, MP3.

El artículo El MP3 cumple 25 años apareció primero en Tecnovortex.

Un fallo de seguridad en Zoom

Un analista descubrió un nuevo fallo de seguridad en Zoom que permite a un atacante descifrar la contraseña de tu videollamada en minutos.

Los problemas de seguridad de Zoom parecen estar lejos de terminar. Tom Anthony, analista de seguridad, descubrió un modo de acceder a las reuniones privadas protegidas por contraseña. Tras intentar acceder a una videollamada del Gobierno de Reino Unido, Anthony descubrió un fallo en el cliente web que no cuantifica el número de intentos fallidos al introducir la clave.

Por medio de una entrada en su blog, el analista menciona que el problema suele estar en la contraseña de seis dígitos que asigna Zoom por defecto para proteger las reuniones. Esto significa que existe 1 millón de contraseñas máximas, que al combinarse con la vulnerabilidad del cliente web de Zoom permite que un atacante pueda descifrar la clave en minutos.

Tom Anthony tomó como punto de partida una reunión que sostuvo Boris Johnson, Primer Ministro de Reino Unido, con su gabinete. Al tomar el id de la llamada — visible en una captura de pantalla publicada por Johnson — intentó unirse a la videollamada.

Un atacante podría descifrar la contraseña de tu videollamada en minutos

Zoom videollamada Boris Johnson

La reunión de Boris Johnson en Zoom pudo estar abierta a algunos hackers.

En el proceso descubrió varios detalles, como el número predeterminado de caracteres en una contraseña y que no existe una limitante de velocidad en intentos fallidos al usarla. Esto último resulta en un problema, puesto que un atacante puede iterar hasta conseguir el password y entrar a la reunión.

Pese a que no hay límite en los intentos repetidos, la velocidad está limitada por la rapidez con la que se pueden hacer solicitudes HTTP. Por medio de un script en Phyton ejecutado desde su ordenador casero, Anthony obtuvo la contraseña en menos de 30 minutos, tiempo que puede reducirse considerablemente si se realiza con 4 o 5 servidores en la nube.

Un atacante podría acceder a reuniones programadas anticipando la contraseña, un proceso que el usuario podría demorar si cambia la clave antes de la llamada. Otro problema tiene que ver con las reuniones periódicas ya que usan la misma contraseña. Una vez que se descifra, no es necesario ejecutar el proceso nuevamente.

El fallo fue corregido por Zoom hace algunas semanas

El fallo de seguridad fue descubierto hace semanas por el analista de seguridad, quien comunicó a Zoom su hallazgo. La empresa procedió a desconectar el cliente web por unos días para resolver el exploit. De acuerdo con Anthony, los ingenieros de la empresa parecían preocupados por la seguridad de la plataforma y apreciaron su informe, aunque no recibió una recompensa por comunicarlo.

La seguridad de Zoom ha estado en el centro de la polémica desde hace meses. Tras la pandemia de la COVID-19, el uso de la plataforma se intensificó y salieron a la luz sus vulnerabilidades. Para resolver el problema la empresa contrató a Alex Stamos, ex director de seguridad de Facebook, quien se integró como asesor para corregir el rumbo.

La polémica más reciente involucró al cifrado de punto a punto, una característica que en un principio estaba destinada a suscriptores de pago. Tras las críticas del resto de usuarios, Zoom tuvo que dar marcha atrás y anunciar la implementación en todas las videollamadas en algún momento de 2020.

El artículo Un fallo de seguridad en Zoom permite descifrar la contraseña de tu videollamada en minutos apareció primero en Hipertextual.

Programas de escritorio remoto en 2020: menos servicios pero mejores

Hace unos años escribimos sobre los mejores programas de escritorio remoto, y creo que es hora de una actualización.

Primero, porque así cómo avanza la tecnología también avanza nuestra forma de lidiar con las cosas y considero que existen soluciones que han quedado, digamos… demasiado rústicas cómo para seguir recomendándolas.

Una de ellas es sin duda, VNC. Es un hermoso protocolo que me dio muchísimo de comer y al que amo. Pero hablar de abrir puertos en la segunda década de este milenio es como que ya no va. Sé que existen muchos informáticos de la vieja escuela que lo siguen usando y con muy buenos resultados, cómo también existen personas que cazan con arco y flecha.

Así que acá estamos, en pleno 2020 con menos opciones viables que hace 10 años, pero con servicios muy buenos.

Y creo que, además, existe un factor muy imporante que no existía antes, y es la costumbre de las personas.

Verán, en mi caso, suelo atender a muchas personas de forma remota. Algunos son clientes y otros no, y si existe un software que ganó la pulseada de “hacerse conocido” ese fue sin dudas uno solo.

1) Teamviewer

Teamviewer es la Coca Cola de los escritorios remotos. Más de una vez hice la prueba de decir “ok, tengo que entrar a tu PC, ¿tenes algún programa de escritorio remoto?” y no tenían ni idea. Ahora, si decía “Pasame Teamviewer” enseguida venía la foto del ID y el password para poder ingresar. Así que la guerra ya está ganada y el ganador es este software.

El gran problema es que todo esto se cobra. Durante años los que ofrecemos soporte utilizamos esta plataforma de manera cuasi gratuita. Y desde hará 2 años aproximadamente se pusieron la gorra. Primero avisándonos que lo estabamos usando bastante y luego directamente con un tiempo de uso extremadamente limitado, lo que obligaba a comprarlo, cosa que hice.

El problema es que la licencia de Teamviewer es cara. Yo la pagué, cansado y frustrado de las limitaciones y debido a que mi cantidad de trabajo remoto a veces lo justifica. Si se tratase de algo un poco menos profesional iría a la segunda opción.

Lo que han mejorado mucho estos últimos años es la integración desde Android e iOS. La verdad que es bastante fácil entrar desde un celular a un equipo y configurar algo.

2) Anydesk

A pesar de que si lo bajás desde Chrome, éste te dice que el archivo puede dañar el equipo. Anydesk es sin duda la mejor alternativa que existe en la actualidad a Teamviewer. Y es mucho mejor si consideramos que no hay que pagarla.

Con una interfaz mas sencilla y no tan vistosa, Anydesk funciona a las mil maravillas para todo lo que sirve Teamviewer y al menos en lo que a mis pruebas respecta, he tenido incluso menos lag en la mayoría de las intervenciones.

El gran problema que tiene este software es que el usuario promedio no lo conoce, y para que pueda bajarlo hay que ir explicándole paso por paso (algo que no pasa con Teamviewer ya que o lo conocen o algo de confianza le tienen) para que lo puedan bajar e instalar. Recordemos que la gran mayoría de los ingresos remotos es por soporte.

Ahora… (debería ponerlo en mayúsculas) si se trata de un soporte un poco más profesional, supongamos un IT de una empresa que instala los equipos de todos ya sean las workstations como las laptops y por él pasan todos, probablemente armar “una red” de Anydesk sea la mejor opción.

3) Chrome remote desktop

La sorpresa es la evolución que le ha dado Google al viejo software que comenzó con Hangouts que permitía compartir pantalla/escritorio y que luego derivó en un complemento para Chrome. Hoy se llama Google Remote Desktop y para alguien que tiene varias PC’s, usa Chrome es una solución muy sencilla y funcional.

Obviamente no es para cualquiera, pero se lo he recomendado a varios amigos que tienen Laptop y por algo necesitan ingresar a la PC de su casa y por lejos, es la opción que mejor les funciona a los usuarios comunes.

La pregunta, ahora, para los amigos lectores es: ¿Existe algún otro software que podamos recomendar en este artículo?

¡Comenten! Este es un work in progress así que vamos a seguir agregando información.

El artículo Programas de escritorio remoto en 2020: menos servicios pero mejores apareció primero en Tecnovortex.