El creador del lenguaje C++ critico un informe de la NSA sobre lenguajes de programación seguros

bjarne-stroustrup

Bjarne Stroustrup responde a la recomendación de la NSA y contradice la clasificación de C++

Bjarne Stroustrup, el creador del lenguaje C++, publicó objeciones a los hallazgos del informe de la NSA, que recomendaba que las organizaciones se alejaran del uso de lenguajes de programación como C y C++, que trasladan la gestión de la memoria al desarrollador, a favor de los lenguajes como C#, Go, Java, Ruby, Rust y Swift que brindan administración de memoria automática o realizan comprobaciones de seguridad de la memoria en tiempo de compilación.

Según Stroustrup, los lenguajes seguros mencionados en el informe de la NSA no son realmente superiores a C++ en aplicaciones importantes desde su punto de vista.

La NSA aconseja a las organizaciones que consideren hacer un cambio estratégico de los lenguajes de programación que proporcionar poca o ninguna protección de memoria inherente, como C/C++, a un lenguaje seguro para la memoria
cuando sea posible

En particular, las Directrices básicas de C++, que se han desarrollado en los últimos años, cubren métodos para una programación segura y prescriben el uso de herramientas que garantizan un trabajo seguro con tipos y recursos. Sin embargo, los desarrolladores que no requieren garantías de seguridad tan sólidas pueden continuar utilizando métodos de desarrollo más antiguos.

Stroustrup cree que un buen analizador estático que cumpla con las Directrices principales de C++ puede proporcionar las garantías de seguridad necesarias para el código C++ a un costo mucho menor que cambiar a nuevos lenguajes de programación seguros.

Por ejemplo, la mayoría de las Directrices principales ya están implementadas en el analizador estático y el perfil seguro para la memoria de Microsoft Visual Studio. Algunas de las recomendaciones también se tienen en cuenta en el analizador estático Clang tidy.

El informe de la NSA también fue criticado por centrarse solo en problemas de memoria, dejando sin abordar muchos otros problemas del lenguaje de programación que afectan la seguridad y la confiabilidad.

Desafortunadamente, gran parte del uso de C++ también está atascado en el pasado distante, ignorando las mejoras, incluidas las formas de mejorar drásticamente la seguridad. Ahora, si considerara cualquiera de esos lenguajes «seguros» superiores a C++ para la gama de usos que me interesan, no consideraría la desaparición de C/C++ como algo malo, pero ese no es el caso.

Bjarne Stroustrup no está de acuerdo con el hecho de que la publicación de la NSA limita la noción de proteger el software a la de proteger la memoria. En realidad, este aspecto es un denominador común de todas las publicaciones que aconsejan desechar C o C++ en favor del lenguaje Rust por las garantías de seguridad del software que varias grandes empresas (Microsoft, Amazon, etc.) lo reconocen.

“No existe una definición única de ‘seguridad’ y podemos lograr una variedad de tipos de seguridad a través de una combinación de estilos de programación, bibliotecas de soporte y aprovechamiento del análisis estático”, dice. Bjarne Stroustrup sugiere así que lo que se puede obtener de C++ en términos de seguridad del software depende, entre otras cosas, del desarrollador y, en particular, del conocimiento de las herramientas que ofrece el lenguaje, su dominio del compilador, etc.

Stroustrup ve la seguridad como un concepto más amplio, cuyas diversas facetas se pueden lograr mediante una combinación de estilo de codificación, bibliotecas y analizadores estáticos. Para controlar la inclusión de reglas que garanticen la seguridad de trabajar con tipos y recursos, se propone utilizar anotaciones en el código y opciones del compilador.

En aplicaciones donde el rendimiento es más importante que la seguridad, este enfoque permite el uso selectivo de herramientas que garantizan la seguridad solo donde se necesita. Las herramientas de mejora de la seguridad también se pueden aplicar parcialmente, como limitar primero las reglas de verificación e inicialización del rango y luego adaptar gradualmente el código a requisitos más estrictos.

Finalmente si estás interesado en poder conocer más al respecto sobre la publicación del creador de C++, puedes consultar los detalles en el siguiente enlace.

from Linux Adictos https://ift.tt/JxRvIoD
via IFTTT

ChatGPT Professional tendrá un costo de $42 por mes

ChatGPT

ChatGPT es un prototipo de chatbot de inteligencia artificial

Se dio a conocer la noticia por parte de algunos usuarios de ChatGPT informaron que obtuvieron acceso anticipado a «ChatGPT Professional», la versión premium del chatbot de IA de OpenAI, que el costo por el uso de este será de $42 por mes.

Sin embargo, todavía no se ha hecho ningún anuncio oficial, lo que significa que todavía podría ser un experimento y este precio no es definitivo. Según las capturas de pantalla compartidas por los usuarios que obtuvieron acceso, a este precio obtienes una velocidad de respuesta más rápida, un acceso más confiable (porque ChatGPT a menudo se bloquea debido a una gran cantidad de solicitudes de red) y «acceso prioritario a nuevas funciones».

Este fin de semana, algunos usuarios informaron haber obtenido acceso a una versión pro que cuesta $42 por mes. OpenAI no ha confirmado el rumor y no ha hecho ningún anuncio sobre dicho lanzamiento, aunque hay que recordar que las funciones y los precios pueden cambiar antes del lanzamiento real de ChatGPT Professional. Como dijo OpenAI a principios de este mes:

«Tenga en cuenta que este es un programa experimental temprano que está sujeto a cambios, y no devolveremos el acceso a la versión paga generalmente disponible en este momento». Siendo así, ¿qué te aportan estos 42 dólares al mes?

Las capturas de pantalla compartidas por los primeros evaluadores de la versión ChatGPT Pro muestran que obtiene una velocidad de respuesta más rápida, un acceso más confiable y acceso prioritario a las nuevas funciones de chatbot.

Zahid Khawaja, un desarrollador que trabaja en proyectos de IA, compartió un video del nivel profesional trabajando tanto en computadoras de escritorio como en dispositivos móviles (junto con una captura de pantalla de su pago a OpenAI como prueba). Como señala Khawaja, el sistema definitivamente responde más rápido que la versión gratuita, que actualmente está plagada de una serie de problemas.

https://platform.twitter.com/widgets.js

De hecho, ChatGPT ha sido visto millones de veces desde su lanzamiento a fines de noviembre, y la gente se apresuró a aprovechar la capacidad del chatbot para responder preguntas, a veces con gran precisión. Debido al número cada vez mayor de usuarios, ChatGPT a menudo falla.

Para hacer frente a la demanda, OpenAI dice que se ha visto obligado a implementar límites de uso, introducir un sistema de colas durante los períodos pico y otros métodos para minimizar la demanda. Un mensaje en pantalla que pide a los usuarios que tengan paciencia mientras esperan que el sistema se escale.

Aun que por la parte del costo, muchos usuarios mencionar que es demasiado alto, ya que dicen que

«si estuviera ganando dinero, podría justificar los $42 al mes, pero en mi país eso es un buen porcentaje del salario mínimo”, dijo un usuario.

Otro usuario escribió:

«Realmente quería pagar por la versión pro, pero $42 es demasiado». Un tercero dijo: «$ 42 no es demasiado para las personas que son grandes usuarios y quieren convertirse en ‘superhumanos’ con la ayuda de la IA. Pero será demasiado para muchos”. Todos consideran que el precio de ChatGPT Professional es demasiado alto.

Hay que aclarar que el juicio de los usuarios sobre el precio dependerá de su necesidad del servicio, dado que las personas que usan ChatGPT para acelerar su trabajo y para esas personas, $ 42 por mes es probablemente un gasto razonable como cualquier otra suscripción de software, ademas de que las empresas que usan ChatGPT también podrían permitirse pagar esta cantidad. Sin embargo, los usuarios casuales de ChatGPT tendrán que esperar que la versión gratuita permanezca y mantenga la paridad de características (más o menos) con la versión profesional.

En última instancia, incluso un precio pequeño será un filtro efectivo para ver qué tan útil es realmente ChatGPT, y dada la falta de servicios comparables, $42 es probablemente un primer intento especulativo de fijación de precios de OpenAI.

Además, los analistas esperan que el mercado de chatbots de IA explote este año. No solo se están desarrollando sistemas rivales como Claude, una IA construida por ex miembros del equipo de OpenAI, pero que actualmente solo está disponible en versión beta cerrada, sino que Microsoft también planea hacer la integración en sus servicios.

Por otra parte, Google tambien se está preparando para lanzar su propio producto de búsqueda mejorado por chat a finales de este año. La herramienta de inteligencia artificial de Google podría basarse en el modelo de lenguaje Sparrow de su empresa hermana DeepMind.

from Linux Adictos https://ift.tt/y7fLeBG
via IFTTT

De la teoría al hardware. Breve historia de la Inteligencia Artificial 2

Alan Turing, Claude Shannon y John von Neuman sentaron las bases teóricas que permitieron construir hardware para Inteligencia Artificial

En el artículo anterior habíamos comentado que la idea de crear artificialmente herramientas que hicieran cosas reservadas a los seres humanos estuvo con nosotros desde la antigüedad. Dijimos también que, hasta principios del siglo XX, todas las invenciones se limitaban a imitar comportamientos específicos de personas y animales.

La inteligencia artificial busca crear máquinas que hagan tareas que requieren de la capacidad de pensar y, aunque la máquina de Turing (Posteriormente denominada máquina universal de Turing cuando se extendió su aplicación) se limitaba a seguir instrucciones, sentó las bases teóricas para la creación de las primeras computadoras electrónicas.

El juego de la imitación

El segundo aporte de Turing en el campo de la Inteligencia Artificial fue su famosa prueba. Mientras que muchos insistían en que era imposible que una máquina realizara tareas de pensamiento o creativas, el matemático decidió explorar la posibilidad teórica.
En la época victoriana había un entretenimiento llamado “El juego de la imitación” en el que se trataba de adivinar el sexo de una persona por las respuestas a las preguntas que se le realizaban. En la versión de Turing los interrogadores se comunican con lo que está del otro lado a través de un teclado y una pantalla. Ellos no saben si quien les responde es una persona o una máquina. Si después de un tiempo quienes hacen las preguntas no logran saber que están hablando con una máquina podemos decir entonces que esta es capaz de pensar.

De la teoría al hardware

En otra serie de artículos ya les conté la historia de Claude Shannon, una persona cuyas contribuciones deberían ponerlo a la altura de Newton o Einstein. Si Turing imaginó una máquina que fuera capaz de seguir instrucciones, Shannon fue el que dijo como podía hacérselas más rápidas y útiles.

A los veintidós años Shannon fue contratado como operador del Analizador Diferencial, una máquina que usando una mezcla de componentes analógicos y relés electromecánicos resolvía ecuaciones. Con el tiempo demostró que era posible hacer lo mismo solo con relés, una serie de interruptores interconectados que podían encenderse y apagarse entre sí. Las operaciones matemáticas podían programarse según como se configuraran los interruptores.

Dado que un interruptor solo admite dos posiciones encendido o apagado (1 o 0) los nuevos dispositivos debieron adoptar la aritmética binaria.

Más adelante los relés serían reemplazados por tubos al vacío primero y transistores y microprocesadores después.

Para el final de la segunda guerra había varias máquinas funcionando bajo las ideas de Turing y Shannon y todas tenían el mismo problema. Si querías que la máquina hiciera otra cosa tenías que cambiar la configuración del cableado.

Acá es cuando interviene un inmigrante húngaro que ya tenía una reputación como científico: John von Neumann.

Von Neuman había contribuido al esfuerzo bélico de los Estados Unidos con sus métodos de cálculosde ondas de choque (Utilizados por el proyecto Manhattan) y la invención de la teoría de los juegos. Además, estudió el tema de la auto reproducción de las máquinas y escribió sobre matemática cuántica.

Su respuesta al problema de la reprogramación parece sacada de un manual de creatividad. Dividir el ordenador en dos partes y asignarle a una de ellas otra función.

De acuerdo con el modelo de von Neuman que aún se sigue usando en ordenadores, smartphones y otros dispositivos inteligentes, el hardware se divide en:

  1. La unidad central de proceso (CPU) que es la encargada de aplicar las instrucciones de un programa a los datos.
  2. La memoria en la que se almacenan los datos y el programa que contiene las instrucciones sobre que hacer con ellos.

La arquitectura de von Neuman permitió que una computadora pudiera realizar tareas más complejas ya que la CPU solo debe obtener el dato, seguir la instrucción y repetir el ciclo hasta que termine.

Turing, Shannon y von Neuman sentaron las bases para que existieran máquinas capaces de responder preguntas en el curso de una conversación normal o realizar tareas creativas. Pero, todavía faltan los programas adecuados. Esa es la historia que contaremos en el próximo post.

from Linux Adictos https://ift.tt/0rOUCt5
via IFTTT

Una breve historia de la Inteligencia Artificial

La idea de una máquina que reemplace a los seres humanos nos acompaña desde el principio de la historia.

En los últimos meses mis compañeros y yo estuvimos cubriendo las noticias sobre las novedades en Inteligencia Artificial. Como tantas otras cosas estos logros son el resultado de un largo camino que empezó en la imaginación de los novelistas e incluyó algunas estafas ingeniosas. En este post y los que siguen vamos a hacer una breve historia de la Inteligencia Artificial.

Aunque estas tecnologías llevan bastante tiempo entre nosotros no habían estado disponibles para el consumidor general. Al menos no con el nivel de calidad que tienen servicios como ChatGPT.

Una breve historia de la Inteligencia Artificial

Nadie sabe exactamente cuando el ser humano tuvo la idea de crear artificialmente herramientas que pudieran hacer las mismas cosas. Pero, la idea aparece tanto en la mitología como en la literatura. Claro que no se hablaba de microprocesadores ni software sino de construcciones más o menos antropomórficas elaboradas con arcilla, madera o incluso partes de cuerpos humanos.

Y, por supuesto no faltaron falsificaciones.

Allá por el año 800 la estatua del Dios Amon elegía al sucesor del faraón de entre los herederos que desfilaban delante de ella. Luego de tomarlo por el hombro pronunciaba un discurso. Esta tecnología sería la envidia del MIT y OpenAI si no fuera porque el software que la operaba era un sacerdote escondido dentro de ella.

En los siglos siguientes se construyeron varias máquinas que impulsadas por agua o vapor imitaban ciertos comportamientos o realizaban ciertas tareas propias de humanos o animales. Eran conocidos como autómatas.
Por supuesto, que a los autómatas no se los puede calificar como inteligencia artificial. De acuerdo con la clásica definición de Marvin Minsky:

Inteligencia artificial es la ciencia que trata de que las máquinas hagan tareas que requerirían de inteligencia si las hicieran los seres humanos.

Turing y el Entscheidungsproblem

De acuerdo con los historiadores, el primer paso concreto hacia la Inteligencia Artificial se logró gracias al Entscheidungsproblem. No, no estoy escribiendo mis estornudos. La palabreja fue acuñada por el matemático David Hilbert en 1928. El problema que se esconde detrás del término es el de saber si existen problemas matemáticos que no puedan resolverse de manera sistemática.

Los matemáticos llaman problemas decidibles a aquellos que tienen dos respuestas posibles: SI o NO. Dos ejemplos serían
¿Es x un número primo?
¿ X*Y es igual a Z?

Este tipo de problemas puede ser resuelto por cualquiera siguiendo un método de la misma forma que puede prepararse un pastel con las instrucciones de una receta de cocina. Solo es cuestión de tiempo. Hilbert quería saber si existían problemas decidibles que no admitieran el uso de un método.

Hoy el nombre de Alan Turing es universalmente conocido, básicamente por su contribución a descifrar Enigma, la máquina de claves de la Alemania nazi y su condena por homosexualidad una década después. Pocos saben que uno de sus primeros logros fue responder el Entscheidungsproblem.

Su método fue imaginar la existencia de una máquina que resolviera los problemas siguiendo instrucciones expresadas en forma matemática. Es decir que el dispositivo leía símbolos contenidos en una cinta y los manipulaba siguiendo una serie de instrucciones.

Según Turing esta máquina contaba con una ilimitada capacidad de memoria gracias a una cinta infinita dividida en cuadrados, en cada uno de los cuales podría imprimirse un símbolo. En todo momento la máquina debe tener cargado un símbolo al que puede modificar. La modificación a que lo somete está determinada en parte por el mismo símbolo. Los símbolos en otros lugares de la cinta no afectan su comportamiento salvo que la cinta se mueve y otro ocupe el lugar de símbolo leído.
Los componentes de la máquina son entonces:

  • Una cinta dividida en recuadros que contienen símbolos (Hay un símbolo especial para los recuadros en blanco
  • Un cabezal que lee y escribe símbolos y mueve la cinta.
  • Un registro que indica en todo momento el estado de la máquina.
  • Una serie de instrucciones que a partir del símbolo y registro de estado indica lo que se debe hacer a continuación.

from Linux Adictos https://ift.tt/3QugJl5
via IFTTT

WINE 8.0-rc5 corrige un total de 9 bugs para preparar el lanzamiento de la versión estable

WINE 8.0-rc5

Una semana más, y ya nos acercamos al momento de la verdad, WineHQ lanzó ayer una nueva Release Candidate de su software para ejecutar aplicaciones de Windows en otros sistemas operativos. Lo que nos han entregado hace unas horas ha sido WINE 8.0-rc5, una versión discreta en cuanto a cambios, pero que es lo esperado en esta fase del desarrollo y ya tan cerca del momento en el que anuncien la versión estable.

Como en la mayoría de notas sobre una nueva RC, WineHQ vuelve a recordarnos que no se han añadido nuevas funciones porque estamos en la congelación de código. Sí se han corregido 9 bugs, algo menos de la mitad de lo que corrigieron la semana pasada. Aunque esta vez también han introducido una pequeña lista de cambios, por lo que podríamos decir que este lanzamiento sí está a la altura del anterior.

Bugs corregidos en WINE 8.0-rc5

  • Un doble clic en el icono de la barra de título debería cerrar la ventana.
  • getsockopt() no indica WSAEFAULT cuando optlen es demasiado pequeño..
  • WeGame se cuelga después de iniciar sesión..
  • Lento renderizado de texto en dofus vinculado a fnIMLangFontLink2_GetCharCodePages llamando a WideCharToMultiByte con CP_UNICODE.
  • urlmon:url rompe la prueba wininet:http en Windows 10 1709+ (7 fallos).
  • Múltiples juegos fallan al reproducir vídeos (War Mongrels, The Medium, Sherlock Holmes Chapter One).
  • Dark Souls: Remastered tiene un rendimiento lento con el renderizador OpenGL.
  • Renderizado roto en Mafia III: Definitive Edition.
  • dinput:force_feedback – test_windows_gaming_input() a veces falla en Windows.

WINE 8.0-rc5 está disponible desde este enlace. En la página de descargas hay información sobre cómo instalar esta y otras versiones en sistemas operativos como Debian y Ubuntu, pero también se puede instalar en Android y macOS.

En cuanto a la versión estable, llegará a principios de 2023, pero no está claro si lo hará a finales de enero o a principios/mediados de febrero. El año pasado lanzaron 6 RCs de WINE 7.0, por lo que, de seguir el mismo patrón, WINE 8.0 llegaría el 4 de febrero.

from Linux Adictos https://ift.tt/pFi2naN
via IFTTT

Cómo configurar el firewall en Linux con IPtables

iptables linux

Aunque alguna vez aún toco Windows por mi mismo y en otras muchas me obligan (marditoh roedoreh) cuando tengo que hacer cosas lejos de mis equipos, para mí hablar de Windows es como algo que queda muy atrás en el tiempo. Cuando lo usaba de sistema principal (no tenía otro), intentaba blindarlo con software como el antivirus de Kaspersky y algún que otro cortafuegos, entre otras muchas herramientas de seguridad. En Linux nunca hemos estado tan expuestos como en Windows, pero también hay software que nos ayuda a estar más tranquilos, como IPtables, un cortafuegos o firewall.

El cortafuegos es un sistema de seguridad que se encarga de controlar el tráfico de red que entra y sale de un sistema operativo. Uno de los más extendidos en Linux es el mencionado IPtables, hasta el punto de que, probablemente y sin que lo sepas, ya esté instalado en tu sistema operativo desde que lo estrenaste. Lo que vamos a intentar hacer en este artículo es explicar cómo configurar el firewall en Linux con IPtables.

IPtables en Linux, lo que necesitas saber

La configuración de un cortafuegos puede ser complicada, y más en un sistema operativo como Linux en el que lo mejor se consigue a golpe de terminal. Antes de empezar, es recomendable conocer un poco los temas de redes y seguridad, o como mínimo entender que, cuando estamos conectados, nos estamos comunicando con otros equipos, y estos aparatos o sus dueños pueden tener buenas o malas intenciones. Por ese motivo, dependiendo del uso que hagamos de nuestro PC, merece la pena controlar todo lo que sale y todo lo que entra en él.

También, y por lo que pueda pasar, si tenemos otro cortafuegos en nuestro sistema Linux y vamos a empezar a retocar las cosas en IPtables, merece la pena hacer una copia de seguridad de la configuración de nuestro actual firewall. Con todo esto claro, empezamos de lleno a hablar de la configuración de IPtables.

  1. Lo primero que tenemos que hacer es instalar el paquete. La mayoría de distribuciones Linux lo tienen instalado por defecto, pero esto es algo que no siempre se cumple. Para saber si tenemos IPtables instalado en nuestro sistema operativo, abrimos un terminal y escribimos iptables -v. En mi caso y en el momento de escribir este artículo, mi terminal me devuelve iptables v1.8.8. En el caso de que no esté instalado, se puede instalar con:

Ubuntu/Debian o derivados:

sudo apt install iptables

Fedora/Redhat o derivados:

sudo yum install iptables

Arch Linux y derivados

sudo pacman -S iptables

Tras la instalación, se habilitará con:

sudo systemctl enable iptables
sudo systemctl start iptables

Y se puede ver su estado con:

sudo systemctl status iptables
  1. Con el cortafuegos ya instalado, hay que configurar sus reglas. Las reglas de IPtables se dividen en tablas (de las que hablaremos con más detalle en un punto más adelante en este artículo): filter, nat y mangle, a las que hay que sumarles la raw y security. La tabla filter se utiliza para controlar el tráfico entrante y saliente, la tabla nat se utiliza para hacer NAT (Network Address Translation) y la tabla mangle se utiliza para modificar el paquete IP. Para configurar las reglas de la tabla filter, se utilizan los siguientes comandos:
  • iptables -A INPUT -j ACCEPT (permitir todo el tráfico entrante).
  • iptables -A OUTPUT -j ACCEPT (permitir todo el tráfico saliente).
  • iptables -A FORWARD -j ACCEPT (permitir todo el tráfico de enrutamiento). Sin embargo, esta configuración permite todo el tráfico, y no es recomendable para un sistema en producción. Es importante especificar las reglas del firewall según las necesidades específicas del sistema. Por ejemplo, si se desea bloquear el tráfico entrante en el puerto 22 (SSH), se puede utilizar el comando:
iptables -A INPUT -p tcp --dport 22 -j DROP
  1. Otra cosa importante es guardar las configuraciones, para no perderlas al reiniciar el sistema. En Ubuntu y Debian se utiliza el comando «iptables-save» para guardar las configuraciones actuales en un archivo. En Red Hat y Fedora, se utiliza el comando «service iptables save» para guardar las configuraciones. Si tienes dudas de cuál usar, los comandos de Ubuntu/Debian suelen funcionar en más distribuciones.

Cargar las configuraciones tras un reinicio

Para cargar las configuraciones guardadas, se utilizan los mismos comandos utilizados para guardarlas, pero con la acción «restore» en lugar de «save». En Ubuntu y Debian, se utiliza el comando «iptables-restore» para cargar las configuraciones guardadas desde un archivo. En Red Hat y Fedora, se utiliza el comando «service iptables restore» para cargar las configuraciones guardadas. Una vez más, si se tienen dudas sobre qué comando usar, los de Ubuntu/Debian suelen ser los que mejor funcionan.

Es importante tener en cuenta que, si se realizan cambios en las configuraciones del firewall, es necesario volver a guardarlas y cargarlas para que los cambios surtan efecto. Es una manera de sobrescribir el archivo de configuración con los nuevos datos, y si no se hace de esta manera, los cambios no se guardarán.

Tablas en IPtables

Hay 5 tipos de tablas en IPTables y cada una tiene diferentes reglas aplicadas:

  • filter : esta es la tabla principal y por defecto cuando se utiliza IPTables. Esto significa que si no se menciona ninguna tabla específica al aplicar reglas, éstas se aplicarán a la tabla filter. Como su nombre indica, la función de la tabla de filtros es decidir si se debe permitir que los paquetes lleguen a su destino o denegar su solicitud.
  • nat (Network Address Translation): como su nombre indica, esta tabla permite a los usuarios determinar la traducción de las direcciones de red. El papel de esta tabla es determinar si modificar y cómo modificar el origen y el destino de la dirección del paquete.
  • mangle: esta tabla nos permite modificar las cabeceras IP de los paquetes. Por ejemplo, se puede ajustar el TTL para alargar o acortar los saltos de red que puede soportar el paquete. De una manera similar, otras cabeceras IP también pueden ser modificadas de acuerdo a su preferencia.
  • raw: el uso principal de esta tabla es rastrear conexiones ya que provee un mecanismo para marcar paquetes para ver paquetes como parte de una sesión en curso.
  • security: usando la tabla security, los usuarios pueden aplicar marcas internas de contexto de seguridad SELinux en paquetes de red.

Las dos últimas tablas prácticamente no se usan, hasta el punto de que en la mayoría de documentación sólo se habla de filter, nat y mangle.

En el archivo de ayuda podemos encontrar ejemplos sobre cómo gestionar IPtables. Para verlo, abriremos un terminal y escribiremos iptables -h.

Aunque iptables es una de las mejores opciones que hay para Linux, si se prefiere algo más sencillo con interfaz gráfica se puede echar un vistazo a Firewalld.

from Linux Adictos https://ift.tt/5RSPuBV
via IFTTT

Open Metaverse, una fundación de la mano de la Linux Fundation para llevar el metaverso a realidad

 

Open metaverse fundation

Open Metaverse Foundation es el hogar de una comunidad abierta e independiente

La Fundación Linux ha dado a conocer recientemente sus intenciones de llevar el metaverso de la promesa a la realidad con el lanzamiento de la nueva Open Metaverse Foundation, en la cual sienta las bases para un progreso práctico y poderoso en la construcción conjunta de mundos inmersivos, globales y escalables.

The Linux Foundation, la organización sin fines de lucro cuyo objetivo es fomentar la innovación a través del código abierto, creó Open Metaverse Foundation (OMF), cuya misión es proporcionar un espacio de colaboración con diversas industrias para trabajar en el desarrollo de software y estándares de código abierto para un metaverso inclusivo, global, independiente del proveedor y escalable.

La Open Metaverse Foundation está organizada en grupos de interés (FIG) que proporcionan una estructura de toma de decisiones enfocada y distribuida sobre temas clave. Además, los FIG brindan recursos y foros específicos para identificar nuevas ideas, realizar el trabajo e involucrar a nuevos participantes.

Estos incluyen miembros de disciplinas específicas involucradas en el avance de proyectos o tecnologías escalables dentro de su tema, además de garantizar que se aborde la propiedad del código de cada parte identificable de los proyectos (por ejemplo, GitHub.org, repositorio, subdirectorio, API, prueba, problema, PR) y gestionado. Los ocho grupos de interés principales de OMF consisten en usuarios, transacciones, activos digitales, modelado y mundos virtuales, inteligencia artificial, redes, seguridad y privacidad, legislación y política.

Estos incluyen ChainHub Foundation, Cloud Native Computing Foundation, Futurewei, GenXP, Guangdong Digital Industry Research Institute, Hyperledger Foundation, LF Edge, LF Networking, OpenSDV, Open Voice Network y Veriken, entre otros.

Juntos, estos miembros aportan años de conocimiento y experiencia para abordar iniciativas que abarcan inteligencia artificial (IA), computación en la nube y perimetral, activos digitales, transacciones, identidad, redes, simulaciones, seguridad y más.

«Estamos solo en los primeros días de la visión de un metaverso abierto, y reconocemos que muchas comunidades y fundaciones de código abierto están trabajando en piezas críticas de este rompecabezas iterativo», dijo Royal O’Brien, director ejecutivo. «Si bien los desafíos pueden parecer intimidante, estoy energizado por las posibilidades de colaborar con una amplia comunidad global para unir estas piezas y convertir esta visión en realidad. «

Se menciona que una de las principales causas de la creación de la fundación se debe a que uno de los mayores desafíos en la creación de un estándar que permita la interoperabilidad entre múltiples plataformas de diferentes industrias es el alto grado de complejidad.

Sin interoperabilidad, no hay diferencia entre un personaje ficticio de un videojuego y un avatar del metaverso. Debe existir la capacidad de llevar su identidad y pertenencias de una plataforma a otra, independientemente del dispositivo o la plataforma.

» El Metaverse presenta desafíos sin precedentes para la informática y las redes de vanguardia. Esperamos que Open Metaverse Foundation se convierta en la plataforma para definir las soluciones tecnológicas requeridas. La colaboración de toda la industria es la única manera de participar en proyectos tan complejos Las comunidades de LF Edge y Networking están bien posicionadas para ofrecer las tecnologías de código abierto definidas por Open Metaverse Foundation Esperamos una estrecha colaboración con la nueva fundación y prevemos muchas sinergias potenciales entre ella y nuestros proyectos. , CTO, Network, Edge, and Access Technologies, Linux Foundation

Se espera que más marcas y empresas se unan a grupos como Metaverse Standard Forum, donde empresas como Google, Meta, Microsoft y Nvidia discuten y promueven estándares de interoperabilidad para un metaverso abierto. El éxito de un Metaverso estándar e interoperable depende de la voluntad de colaboración de las empresas.

Las empresas de tecnología tradicionalmente guardan de cerca su innovación y desarrollo para lograr el éxito comercial y fomentar la lealtad de los usuarios. Sin embargo, para que industrias como la de viajes y la hospitalidad prosperen en el metaverso, será necesario que las empresas del metaverso adopten un enfoque de colaboración más flexible y abierto.

Finalmente si estás interesado en poder conocer más al respecto, puedes consultar los detalles en el siguiente enlace.

from Linux Adictos https://ift.tt/sw8XLlM
via IFTTT

El sistema de apilado avanzado de Plasma 5.27 es de todo menos intuitivo, pero está bien cuando aprendes a usarlo

Sistema de apilado de Plasma 5.27

Esta semana, KDE ha lanzado la beta de Plasma 5.27. Llegará con muchas novedades importantes, pero creo que ninguna como ese sistema de apilado avanzado que nos avanzaron, valga la redundancia, a finales de 2022. Las capturas de pantalla que se publicaron gustaban, y mucho, pero una vez intentas usar ese sistema, uno no puede entender cómo conseguir plasmar en la pantalla lo que crea en el «boceto». Con toda probabilidad nos darán más instrucciones cuando lancen la versión estable, pero yo ya lo he probado y puedo adelantarme a ese momento.

Yo no tengo prisa por subir a Plasma 5.27, pero sí quería ver cómo funcionaba esto para apilar ventanas. Para probarlo, lo he hecho en la última testing de KDE neon, y he perdido un ratillo intentando entender cómo funcionaba. Lo primero que he hecho ha sido ir al blog de Nate Graham para enterarme de que se inicia con la combinación de teclas META + T (de «tilling», supongo). Viendo ya que el sistema funciona, me ha dado por intentar hacer las cosas por mi mismo… y me ha tocado volver a buscar cómo se gestiona esto.

Plasma 5.27 y su sistema de apilado llegarán el 14 de febrero

Al final, todo tiene una explicación y una manera de hacerlo funcionar. Como explicábamos, entraremos al modo de apilado con la tecla de Windows y la T. Una vez en esa vista, configuraremos cómo queremos que quede nuestra pantalla. Lo que me ha ayudado a sido este vídeo de Niccolo. En él, el desarrollador/colaborador de KDE explica que para que las ventanas vayan a su sitio, tenemos que arrastrarlas presionando la tecla Shift. En ese momento, las ventanas ya obedecen y van hasta donde queríamos.

En la pantalla de configuración, podemos elegir también el espacio entre ventanas, de 4 por defecto. También podemos elegir una de las disposiciones que ofrece por defecto, tal y como se ve en la siguiente captura de pantalla:

Disposiciones por defecto

La imagen anterior también nos muestra que se pueden hacer configuraciones de lo más complejas. Habrá usos de todo tipo, pero sólo poder mover al mismo tiempo el tamaño de dos ventanas que están una al lado de la otra ya es un avance interesante. Por ejemplo, en mi uso personal, podré ver algo de información, ya sea en texto o vídeo, a la izquierda y tener el Visual Studio code a la derecha. ¿Que es un vídeo y quiero verlo más grande en un momento? Agrando su ventana y hago más pequeña la otra. Y todo eso se podrá hacer con muchos más arreglos.

Plasma 5.27 llegará el 14 de febrero, pero sólo KDE neon, Kubuntu 22.10 + backports ppa y algunas distribuciones Rolling Release podrán usarlo en esas fechas. El resto tendremos que esperar un poco más.

from Linux Adictos https://ift.tt/6Xstv9L
via IFTTT

En SQLite ya trabajan en un backend HCTree con soporte para escrituras paralelas

SQLite

es un sistema de gestión de bases de datos relacional compatible con ACID, contenida en una relativamente pequeña biblioteca escrita en C

Los desarrolladores del proyecto SQLite han comenzado a probar un backend experimental de HCtree que admite el bloqueo a nivel de fila y proporciona un alto nivel de paralelismo en el procesamiento de consultas.

Sobre el nuevo backend en el que se encuentran trabajando se menciona que este tiene como objetivo mejorar la eficiencia del uso de SQLite en sistemas cliente-servidor que tienen que procesar una gran cantidad de solicitudes de escritura simultáneas en la base de datos.

Las estructuras b-tree utilizadas originalmente en SQLite para almacenar datos no están diseñadas para este tipo de carga, lo que limita a SQLite a escribir solo en una secuencia. Como experimento, los desarrolladores comenzaron a desarrollar una solución alternativa que utiliza estructuras de HCtree para el almacenamiento, más adecuadas para paralelizar operaciones de escritura.

El proyecto HC-tree (hctree) es un intento de desarrollar un nuevo backend de base de datos que mejora el SQLite normal de la siguiente manera:

Concurrencia mejorada: El uso de la extensión begin-concurrent cambia esto para que pueda ejecutarse simultáneamente utilizando el bloqueo optimista a nivel de página. Esto mejora un poco la simultaneidad, pero el bloqueo a nivel de página puede detectar conflictos entre transacciones lógicamente independientes, y las operaciones COMMIT aún deben serializarse.

Compatibilidad con la replicación: Stock SQLite admite la extensión de sesiones, que permite serializar el contenido de una transacción confirmada para su transmisión y aplicación a una segunda base de datos. Hctree integra esto en el backend de la base de datos y agrega soporte para la aplicación de dichas transacciones a las bases de datos de seguidores en configuraciones de líder-seguidor. En este caso, las transacciones recibidas de una base de datos líder se pueden aplicar más rápidamente y con mayor concurrencia que con las que se aplicaron originalmente a la base de datos líder, porque no se requiere validación de transacciones.

Eliminación de las limitaciones de tamaño de la base de datos: Stock SQLite utiliza números de página de 32 bits. Usando el tamaño de página predeterminado de 4 KiB, esto conduce a un tamaño máximo de base de datos de 2^44 bytes o 16 TiB.

Para manejar varias operaciones al mismo tiempo, los registros de HCtree usan un mecanismo de separación de transacciones que usa bloqueos a nivel de página, similar a MVCC (control de contención de múltiples versiones), pero usa controles de transacciones basados ​​en rangos de claves y rangos de claves en lugar de conjuntos de páginas.

Las operaciones de lectura y escritura se realizan en relación con la instantánea de la base de datos, cuyos cambios se vuelven visibles en la base de datos principal solo después de que se completa la transacción.

Los clientes pueden utilizar tres operaciones de apertura de transacciones:

  • «BEGIN«: las transacciones no tienen en cuenta los datos de acceso de otros clientes. Si se realizan operaciones de escritura dentro de una transacción, la transacción solo se puede confirmar si no hubo otras operaciones de escritura en la base de datos durante el tiempo de su ejecución.
    «BEGIN CONCURRENT«: las transacciones recopilan información sobre el acceso de otros clientes. Si se realizan operaciones de escritura dentro de una transacción, la transacción se puede confirmar si se han confirmado otras transacciones en la base de datos desde que se creó la instantánea.
    «BEGIN EXCLUSIVE«: después de abrir una transacción, bloquea las operaciones de otras transacciones hasta que se complete.

HCtree admite la replicación maestro-esclavo, lo que permite transferir transacciones a otra base de datos y mantener las bases de datos secundarias sincronizadas con la base de datos principal.

HCtree también elimina el límite de tamaño de la base de datos: en lugar de identificadores de página de datos de 32 bits, HCtree usa identificadores de 48 bits, lo que aumenta el tamaño máximo de la base de datos de 16 tebibytes a 1 exbibyte (millones de tebibytes).

Se espera que el rendimiento de SQLite con el backend HCtree sea al menos tan bueno como el backend clásico de un solo subproceso. Los clientes de SQLite con compatibilidad con HCtree podrán acceder tanto a las bases de datos de HC-tree como a las bases de datos SQLite heredadas.

Fuente: https://sqlite.org/

from Linux Adictos https://ift.tt/a62QIEx
via IFTTT

Bitwarden adquirió Passwordless.dev para llevar soluciones de autenticación sin contraseña

passwordless.dev

Bitwarden adquiere passwordless.dev

Se dio a conocer hace poco la noticia de que Bitwarden ha realizado la adquisición de una startup llamada Passwordless.dev, que se especializa en ayudar a los desarrolladores a integrar la tecnología de autenticación sin contraseña a través de su software.

Passwordless.dev se integra fácilmente con los sistemas existentes y permite a los desarrolladores llevar WebAuthn a los usuarios con solo unas pocas líneas de código. Para las empresas que buscan modernizar las aplicaciones internas existentes con autenticación sin contraseña, Passwordless.dev reduce el costo y la complejidad, proporcionando una solución ágil y llave en mano.

Al igual que otros servicios de administración de contraseñas, Bitwarden está diseñado para permitir que las personas y las empresas creen automáticamente contraseñas difíciles de adivinar y las almacenen en una bóveda segura.

El objetivo aquí es ayudar a los usuarios de Internet a no reutilizar la misma contraseña predecible en todos sus servicios en línea. Sin embargo, el principal punto de venta de Bitwarden es que es de código abierto (o, al menos, está disponible como código abierto), lo que significa que promete total transparencia en el código base, al tiempo que permite que la comunidad contribuya y ayude a desarrollar nuevas funciones.

La compañía también aprovechó este anuncio para revelar que recaudó fondos Serie A en 2019, sin revelar el monto.

La recaudación de fondos de la Serie A cae en la categoría de capital de desarrollo. Estas operaciones están destinadas a financiar la aceleración del crecimiento de la compañía, tanto interna como externamente.

Para considerar una recaudación de fondos de la Serie A, debe tener un producto o servicio en el mercado que genere interés, así como perspectivas de desarrollo y una visión clara para el futuro. En este punto, el negocio ya está generando ingresos. La Serie A es principalmente para empresas que desean expandirse en su mercado a nivel nacional.

Los fondos recaudados en una Serie A suelen ser de unos pocos millones de euros.

La importancia de la adquisición de Passwordless.dev se debe a que el uso de una contraseña es el método más popular para acceder a una cuenta. Lo cual al día de hoy enfrenta varios desafíos, incluida la memorización, que se vuelve cada vez más relevante debido a la proliferación de la cantidad de servicios que requieren una contraseña y el compromiso al que puede estar sujeto.

Ante la situación, las principales marcas tecnológicas Google, Apple y Microsoft han optado por un enfoque sin contraseña, con lo cual, con la adquirió de Passwordless.dev, Bitwarden se suma a este.

Hay que recordar que el año pasado, Apple, Google y Microsoft se unieron para admitir un nuevo estándar de inicio de sesión sin contraseña llamado WebAuthn, mientras que Apple introdujo por separado una nueva función llamada Passkey que permite a los usuarios usar su dispositivo Apple para iniciar sesión en servicios en línea sin contraseña.

Las claves de acceso se basan en la API de autenticación web (WebAuthn), un estándar que utiliza criptografía de clave pública en lugar de contraseñas para autenticar a los usuarios en sitios web y aplicaciones, y se almacenan en el dispositivo en lugar de en un servidor web. El reemplazo de contraseña numérica usa Touch ID o Face ID para la verificación biométrica, lo que significa que en lugar de tener que ingresar una larga cadena de caracteres, una aplicación o sitio web en el que inicie sesión enviará una solicitud de autenticación de contraseña a su teléfono.

A Bitwarden le gustaría capitalizar esta tendencia en la seguridad en línea, que busca poner las contraseñas en los libros de historia (después de todo, las contraseñas comprometidas son responsables de la mayoría de las empresas).

Bitwarden ya ofrece cierto soporte para la autenticación sin contraseña, como inicios de sesión biométricos para las propias aplicaciones de Bitwarden, al tiempo que admite claves de seguridad físicas de autenticación de dos factores (2FA) como YubiKey. Pero al tomar Passwordless.dev bajo su protección, Bitwarden quiere facilitar a los desarrolladores la integración del inicio de sesión biométrico nativo en su software, al tiempo que permite a las empresas modernizar sus aplicaciones existentes que actualmente dependen de contraseñas.

Fuente: https://bitwarden.com

from Linux Adictos https://ift.tt/Shvd2gz
via IFTTT