Oracle demanda a una startup por violación de marca

Oracle demanda a una startup llamada CryptoOracle

Págima web de la empresa a la que demanda Oracle

Oracle, el gigante tecnológico especializado en Linux, la nube y base de datos, demanda a una startup especializada en blockchain. La acusación se basa en el uso de la palabra oracle (oráculo) en el nombre.

Para la empresa, CryptoOracle LLC y su propietario Louis Kerner, eligieron el nombre a propósito, para aprovechar la reputación de Oracle como un “innovador y líder dentro de la industria de la tecnología”.

CryptoOracle LLC, se fundó en 2017 como una empresa de capital de riesgo. Ofrece asesoramiento a empresas y emprendedores relacionados con tecnologías blockchain. Además, vende entradas para reuniones y otros eventos educativos que organiza sobre el tema. Su fundador, asegura en Linkedin ser un ex ejecutivo de Goldman Sachs.

La cuestión, es que, además de las bases de datos y su distribución Linux corporativa, también ofrece tecnología blockcahin, así como organiza eventos educativos y conferencias.

Oracle, quien descubrió la existencia de su casi homónimo por un segmento televisivo, intentó resolver la cuestión con un aviso de cese y desistimiento. El fundador respondió iniciando el proceso de registro de la marca.

La compañía, pidió a un juez federal que obligue a CryptoOracle a retirar la solicitud de marca, elimine su marca relacionada de todos los sitios web y cambie su nombre. En el curioso lenguaje de los abogados estadounidenses:

Aunque Oracle agradece los esfuerzos de la demandada por difundir la tecnología del blockchain , incluyendo la organización de eventos para entusiastas, interesados y curiosos, no puede tolerar el uso de su conocida marca.

Pero, la cosa va más allá. También pidió quedarse con las ganancias que hubiese obtenido CryptoOracle. Teniendo en cuenta la diferencia de tamaño, esto es más una medida punitiva que otra cosa.

El 2019 parece ser un año de polémicas para Oracle. Hace unos meses, su decisión de despedir 900 personas de su división china, generaron fuertes protestas en el país asiático. A esto hay que sumarle las 350 que despidió de su división de investigación y desarrollo en Estados Unidos.

Tampoco goza demasiado de las simpatías de la comunidad open source. Su actitud hacia los proyectos de código abierto heredados por la compra de Sun,provocaron el nacimiento de forks como LIbreOffice y MariaDB.

from Linux Adictos https://ift.tt/31MbTxK
via IFTTT

KNOB un nuevo ataque para interceptar tráfico cifrado de Bluetooth

bluetooth KNOB

Recientemente se dio a conocer información importante sobre un nuevo ataque llamado KNOB (Key Negotiation Of Bluetooth), que le permite a un atacante poder organizar la intercepción y la sustitución de la información en el tráfico cifrado de Bluetooth.

Al tener la capacidad de bloquear la transmisión directa de paquetes en el proceso de negociación de la conexión de dispositivos Bluetooth, el atacante puede lograr el uso de claves que contienen solo 1 byte de entropía para la sesión, lo que le permite poder utilizar el método de fuerza bruta para determinar la clave de cifrado.

Sobre KNOB

Daniele Antonioli de SUTD, el Dr. Nils Tippenhauer de CISPA y el profesor Kasper Rasmussen de la Universidad de Oxford descubrieron esta nueva vulnerabilidad de KNOB y afecta a dispositivos Bluetooth BR / EDR, también conocidos como Bluetooth Classic, utilizando las versiones de especificación 1.0 – 5.1.

Los investigadores informaron la vulnerabilidad a los miembros de ICASI, Microsoft, Apple, Intel, Cisco y Amazon, quienes emitieron una divulgación coordinada de la vulnerabilidad.

El problema (CVE-2019-9506) es causado por fallas  en la especificación Bluetooth BR / EDR Core 5.1 y versiones anteriores que permiten el uso de claves de cifrado que son demasiado cortas y no evitan que un atacante interfiera con el paso de negociación de conexión para revertir a esas claves poco confiables (los paquetes pueden ser sustituidos por un atacante no autenticado ).

Se puede realizar un ataque al momento de negociar la conexión de un dispositivo (las sesiones ya establecidas no se pueden atacar) y es efectivo solo para conexiones en los modos BR / EDR (Velocidad básica de Bluetooth / Velocidad de datos mejorada) si ambos dispositivos son vulnerables.

Si la clave se selecciona con éxito, el atacante puede descifrar los datos transmitidos y silenciosamente de la víctima realizar una sustitución de texto cifrado arbitrario en el tráfico.

¿Como funciona el ataque?

Para reproducir la vulnerabilidad en el laboratorio (la actividad del atacante se emitió en uno de los dispositivos), se propuso un kit de herramientas prototipo para llevar a cabo el ataque.

Para un ataque real, el atacante debe estar en la zona de recepción de los dispositivos de las víctimas y tener la capacidad de bloquear brevemente la señal de cada dispositivo, que se propone implementar mediante la manipulación de la señal o la interferencia reactiva.

Explotar esta vulnerabilidad no es una tarea fácil, ya que requiere que se establezcan condiciones específicas. Esto incluye:

  • Ambos dispositivos deben ser Bluetooth BR/EDR.
  • Un atacante necesitaría estar dentro del alcance de los dispositivos mientras establecen una conexión.
  • “El dispositivo atacante necesitaría interceptar, manipular y retransmitir mensajes de negociación de longitud de clave entre los dos dispositivos y al mismo tiempo bloquear las transmisiones de ambos, todo dentro de una ventana de tiempo estrecha”.
  • La clave de cifrado necesitaría ser acortada con éxito y luego forzada a descifrar la clave de descifrado.
  • El atacante necesitaría repetir este ataque cada vez que los dispositivos se emparejaran.

Al establecer una conexión entre dos controladores Bluetooth A y B, el controlador A, después de la autenticación con una clave de canal (clave de enlace), puede ofrecer utilizar 16 bytes de entropía para la clave de cifrado, y el controlador B puede aceptar este valor o especificar un valor inferior, en si no es posible generar una clave del tamaño propuesto.

En respuesta, el controlador A puede aceptar la respuesta y activar el canal de comunicación encriptado.

En esta etapa de la negociación de parámetros, el cifrado no se aplica, por lo que el atacante tiene la oportunidad de meterse en el intercambio de datos entre controladores y reemplazar el paquete con el tamaño de entropía propuesto.

Como el tamaño de clave permitido varía de 1 a 16 bytes, el segundo controlador aceptará este valor y enviará su confirmación con una indicación de un tamaño similar.

La organización Bluetooth SIG responsable del desarrollo de los estándares de Bluetooth ha publicado una actualización de la especificación con el número 11838, en la que los fabricantes han propuesto medidas para bloquear la vulnerabilidad (el tamaño mínimo de la clave de cifrado se ha incrementado de 1 a 7).

Para el Kernel de Linux se propuso en el kernel stack una solución que le permite cambiar el tamaño mínimo de una clave de cifrado.

from Linux Adictos https://ift.tt/2KDd78X
via IFTTT

Llega KDE Applications 19.08 y estas son las mejoras que nos ofrecen

KDE_applications

Hace pocos días los desarrolladores del proyecto de KDE dieron a conocer mediante una publicación en su blog, la liberación de la nueva versión de KDE Applications 19.08, incluida una selección de aplicaciones de usuario adaptadas para trabajar con KDE Frameworks 5.

Con la llegada de esta nueva version las principales aplicaciones del entorno de escritorio de KDE han recibido una significante mejora para su uso y funcionamiento, de entre estas aplicaciones el gestor de archivos llega con la esperada multi-pestañas.

Principales novedades de KDE Applications 19.08

Dolphin recibió mejoras, pues los desarrolladores implementaron y habilitaron de manera predeterminada la capacidad de abrir una nueva pestaña en una ventana existente del administrador de archivos (en lugar de abrir una nueva ventana con una instancia de Dolphin separada) al intentar abrir un directorio desde otra aplicación.

Otra mejora es el soporte para la tecla de acceso rápido global Meta + E, que permite llamar al administrador de archivos en cualquier momento.

Se han realizado mejoras en el panel de información correcto: Soporte agregado para permitir la reproducción automática de archivos multimedia resaltados en el panel principal.

dolphin_bookmark

Se ha agregado un bloque de configuración incorporado que permite cambiar el contenido que se muestra en el panel sin abrir una ventana de configuración separada.

Para Konsole se han ampliado las posibilidades del diseño de la ventana de mosaico: la ventana principal ahora se puede dividir en partes en cualquier forma, tanto vertical como horizontalmente.

A su vez, cada área obtenida después de la separación también se puede dividir o mover con el mouse a una nueva ubicación en modo arrastrar y soltar. La ventana de configuración se ha rediseñado, lo que se ha vuelto más claro y simple.

KMail proporciona integración con sistemas de revisión gramatical como LanguageTool y Grammalecte. Se agregó soporte para el marcado Markdown en la ventana de redacción del mensaje. Al planificar eventos, la eliminación automática de las cartas de invitación se detuvo después de escribir la respuesta.

Vídeo, imagen y PDF

Gwenview Image Viewer mejoro la visualización de miniaturas y el modo de bajo consumo de recursos, que utiliza miniaturas de baja resolución.

Este modo es significativamente más rápido y consume menos recursos al cargar miniaturas de imágenes JPEG y RAW.

Además, se resolvieron los problemas con la creación de miniaturas de las cámaras Sony y Canon y se amplió la información que se muestra sobre la base de metadatos EXIF ​​para imágenes RAW.

Okular mejoro el trabajo con anotaciones, por ejemplo, ha sido posible contraer y expandir todas las anotaciones a la vez, se ha rediseñado el diálogo de configuración y se ha agregado la función de enmarcar los extremos de las etiquetas lineales (por ejemplo, puede mostrar una flecha).

Mientras que con Spectacle al crear una instantánea con un retraso en el encabezado y el botón en el panel del administrador de tareas proporciona una indicación del tiempo restante antes de que se tome la instantánea.

Cuando se abre la ventana Spectacle, mientras espera la imagen, ahora aparece un botón para cancelar la acción. Después de guardar la imagen, se muestra un mensaje que le permite abrir la imagen o el directorio en el que se guarda.

Kdenlive presenta nuevas secuencias de escape de teclado y mouse. Por ejemplo, si gira la rueda mientras mantiene presionada la tecla Mayús en la línea de tiempo, cambiará la velocidad del clip, y al mover el cursor sobre las miniaturas del clip mientras mantiene presionada la tecla Shift se activará la vista previa del vídeo.

Las operaciones de edición de tres puntos se han unificado con otros editores de vídeo. Al intentar abrir un nuevo documento en el editor de texto de Kate, la instancia ya lanzada del editor aparece en primer plano. En el modo “Apertura rápida”, los elementos se ordenan por el momento en que se abrieron por última vez y el elemento superior de la lista se selecciona de forma predeterminada.

Finalmente, esta nueva actualización estará llegando de manera gradual a las diferentes distribuciones de Linux. Aunque también es posible probar los diferentes componentes por separado con ayuda de la tecnología de los paquetes de Flatpak.

from Linux Adictos https://ift.tt/2Mnivit
via IFTTT

El cliente de Rust dejará de estar disponible para linux. Ofrecerán reembolsos

Rust: imagen juego de supervivencia

El cliente de Rust, un juego de supervivencia multijugador dejará pronto de tener una versión para Linux. En compensación  ofrecerá reembolsos a aquellos que lo utilicen actualmente. En un artículo publicado en su blog explican que la versión Linux se transformó en un “santuario de los tramposos”.

A esto hay que sumar que una actualización que incorporaba mejoras en el rendimiento y la seguridad, y que se liberó en setiembre no funcionaba en Linux. Sin embargo, los desarrolladores siguen queriendo tener una versión que si lo haga.

Al principio los desarrolladores, Facepunch Studios,  pensaron en aislar la compilación para Linux en su propio servidor, liberando solo parches de mantenimiento. Esta compilación no recibiría ninguna característica nueva. Sin embargo, luego han optado por eliminar el cliente por completo.

Según declaró el fundador y programador Garry Newman:

“Después de escuchar a la comunidad Linux durante la semana pasada, ahora nos damos cuenta de que hacer una construcción separada sería una mierda. Así que hemos decidido que sería mejor dejar de liberar un cliente Linux y ofrecer reembolsos”,

De todas formas, si habías comprado el cliente Linux tendrás que esperar para el reembolso. Para obtenerlo es necesario que Facepunch Studios se coordine con la plataforma de juegos Steam en la cual se comercializa.

Newman recomienda que uses la versión Linux al menos una vez antes del 5 de setiembre, la fecha prevista para la desconexión. Esto es para asegurarse que eres candidato a recibir el reembolso. Esto es porque para determinar si puedes pedirlo o no se basarán en el historial de uso de Steam, y este tiene una cantidad de registros limintados.

Aún cuando consideres que no deberían reembolsarte, Newman te invita a que igual lo pidas.

“Puedes usar ese dinero para comprar un juego de un desarrollador que sea compatible con Linux, es lo mejor que puedes hacer para ayudar a tu comunidad”

Newman reconoce que aunque esperaban que la versión Linux iba a ser más difícil de mantener que los otros productos, subestimaron los recursos necesarios para mantener los estándares.

“No fuimos capaces de probar características y errores “a menos que supiéramos o sospecháramos que algo andaba mal”. Hemos sido reactivos en lugar de proactivos, y eso no es lo que se puede esperar cuando se ha pagado por un juego”.

from Linux Adictos https://ift.tt/2KT8XZj
via IFTTT

Cómo mejorar la privacidad en Facebook

Mejorar la privacidad en Facebook es muy fácil

Para mejorar la privacidad en Facebook, hay que modificar algunas opciones de configuración.

Para garantizar la privacidad en Facebook, sin dudas lo mejor es no registrarse. Sin embargo, mal que les pese a los exégetas del software libre, a veces tienes que hacerlo. Tus amigos, familiares y clientes lo usan. Si cursas una carrera universitaria, sin dudas tendrás que entrar para interactuar con compañeros o profesores. Si tienes un negocio, tus competidores tenderán allí sus anzuelos para quedarse con tus compradores.

Después de todo, los aviones en los que Stallman viaja para dar sus conferencias se manejan con software privativo, y los antibióticos que toma cuando se enferma tienen fórmulas patentadas. A veces hay que aceptar las cosas como son, y no como debieran ser.

Sin embargo, si no podemos evitar que Facebook sepa cosas de nosotros, al menos podemos ponerle las cosas más difíciles.

Mejorando la privacidad en Facebook.

Elije bien a tus amigos

Puede que, como el cantante brasileño Roberto Carlos, quieras tener un millón de amigos. Y en Facebook es muy fácil. Tengo pendiente 99 solicitudes de amistad, solo porque me suscribí a varios grupos de compra venta. (Por favor, no entremos en discusiones filosóficas sobre lo que significa ser un amigo).

Dado que Facebook tiene tres opciones predefinidas de visualización (solo yo, amigos o público) lo mejor es que seas más selectivo con quienes aceptas en la categoría. También puedes revisar tu lista de amigos y “hacer limpieza”. Es probable que si no son muy cercanos, nunca se enteren.

No uses el número de teléfono

Si le diste tu número de teléfono a Facebook, perdiste. Con la excusa de utilizarlo para ayudarte a recuperar tu cuenta, lo utilizará para la segmentación de anuncios y la configuración de perfiles de usuario. Aunque, supuestamente si eliminas tu cuenta, ellos prometen borrarlo de sus registros.

Pero, aunque se los hayas dado, siempre puedes evitar que otras personas lo vean. Lo que puedes hacer es lo siguiente:

-Para la autenticación en dos factores utiliza una aplicación o una dirección alternativa de mail.

-Borra tu número en Información de contacto y en la sección Acerca de.

Usa navegadores y complementos que impidan el rastreo

Facebook usa cookies para rastrear tu actividad en Internet, incluyendo cuando utilizas los botones de compartir contenido o usas tu cuenta para registrarte en otros sitios. Algunos navegadores como Firefox o Brave bloquean por defecto ese seguimiento. Además, tanto en las páginas de complementos de Firefox y Chrome existen varios que te garantizan mayor protección. Aunque, en algunos casos puede que pierdas velocidad o funcionalidades.

Limitar los dispositivos con los que accedes a Facebook

Una buena forma de garantizar la privacidad en Facebook es limitar la cantidad de dispositivos desde los que accedes. En la página de la red social vas a Ajustes > Seguridad e inicio de sesión > Dónde iniciaste sesión y haz clic en “Ver más” para ver la lista completa. Haz clic en los tres puntos a la derecha de cualquier entrada que no reconozcas (o que ya no utilices) y selecciona “Salir”.

Para evitar el acceso no autorizado desde tus dispositivos, muévete por la misma página hasta Configuración de seguridad adicional, Pulsa en Recibir alertas sobre inicios de sesión no reconocidos, haz clic en el botón Editar y selecciona cómo Facebook debe avisarte de los nuevos inicios de sesión.

No conectes aplicaciones ni sitios de terceros

Cuando utilizas tu cuenta de Facebook para registrarte en aplicaciones de terceros, les están permitiendo recopilar información como tu nombre, foto de perfil, ubicación (país e idioma), cumpleaños, dirección de correo electrónico y lista de amigos. Lo mismo ocurre con los servicios externos como Spotify o Netflix, que te permiten compartir su actividad en ellos a través de la red social.

Desde el sitio web de Facebook puedes ver que aplicaciones y sitios web están enlazados a tu cuenta de Facebook. Para hacerlo ve a Configuración > Apps y sitios web. En “Apps y sitios web activos” verás una lista de sitios web y sus logos. Pulsa en “ver y editar” en el siito que quieras borrar. A continuación, haz clic en el botón “Eliminar”. Si tienes suerte, es posible que los desarrolladores te permitan eliminar la información guardada.

Para evitar enlazar involuntariamente una aplicación con Facebook, dentro de la página “Apps y sitios web” ve a a Aplicaciones, Sitios web y Juegos y haz clic en Editar para desactivar la función.

from Linux Adictos https://ift.tt/2NmxBon
via IFTTT

hmtimer, una pequeña aplicación con interfaz de usuario para apagar tu pc

hmtimer

Lo decimos muchas veces: en Linux tenemos una herramienta muy poderosa en el terminal, pero también tenemos el pequeño problema de que no es fácil recordar todos los comandos más útiles. Por ese motivo, aunque se supone que es mejor usar el terminal para algunas tareas, muchos prefieren usar un software con interfaz de usuario. Entre las cosas que podemos hacer tanto con el terminal como con una aplicación con GUI tenemos apagar el ordenador, en el terminal usaríamos shutdown y hmtimer lo hace desde su propia ventana.

hmtimer es una aplicación muy sencilla que está diseñada especialmente para aquellos que no se llevan bien con el terminal. El comando shutdown nos permite apagar el equipo al instante, a una hora determinada, en un tiempo determinado o reiniciar el equipo, y todo esto son acciones que puede hacer hmtimer, con la diferencia de que lo haremos todo desde su interfaz y no tendremos que recordar ningún comando que suele estar en inglés. Aunque es cierto que la aplicación también está en inglés, siempre es más fácil entender lo que tenemos delante si lo acompaña una imagen.

Qué podemos hacer con hmtimer y cómo hacerlo

Lo que podemos hacer con hmtimer, cuyo nombre proviene de “Hsiu-Ming’s Timer”, es:

  • Programar un apagado del equipo.
  • Programar un apagado del monitor.
  • Configurarle un reinicio en un momento determinado.
  • Reproducir un sonido después de un periodo de tiempo.
  • Abrir un programa.

Usar hmtimer es sencillo, pero el idioma puede generar confusión:

  • Donde pone “Hour, Min., Sec” le configuraremos el tiempo que tardará en hacer lo que le pidamos.
  • Si marcamos la casilla “Run repeatedly”, una vez finalizado el tiempo realizará lo que le hayamos pedido y volverá a empezar (no disponible si le pedimos un apagado o un reinicio).
  • Si accedemos al apartado “At:”, podremos indicarle a la hora a la que queremos que haga su trabajo.
  • En “Action” es donde le indicamos qué debe hacer pasado el tiempo o llegada la hora configurada.
  • “Start” inicia la cuenta atrás.
  • Y no hay más. Bueno, sí, que una vez iniciada la cuenta atrás, el botón “Start” pasa a ser un “Stop” con el que la pararemos.

Cosas que debería mejorar en mi opinión: al configurar la hora podemos ponerle las 25h, lo que sería la 1 de la mañana (creo) y puede confundirnos; creo que debería haber un límite en las 23h y en 59min. Por otra parte, si queremos que reproduzca un sonido, tenemos que buscar alguno que tengamos almacenado en nuestro ordenador; creo que debería tener disponible como mínimo uno.

¿Qué te parece hmtimer? ¿Lo usarás, prefieres otra opción con GUI o hacerlo con el terminal?

 

from Linux Adictos https://ift.tt/2P0b1nX
via IFTTT

Se dio a conocer el plan de desarrollo de funciones para la versión de Qt 6

qt-logo.png

Lars Knoll, creador del motor KHTML, gerente del proyecto Qt Project y director técnico de Qt Company, habló sobre los planes para crear la próxima rama significativa del marco Qt. Después de que se complete la formación de la funcionalidad de la rama Qt 5.14, el desarrollo se centrará en la preparación de la versión Qt 6, que se espera para finales de 2020.

Qt 6 evolucionará con el objetivo de garantizar la compatibilidad con Qt 5, pero no se descarta que puedan surgir problemas individuales, ya que los cambios arquitectónicos y la limpieza planificados no serán posibles sin perder un cierto nivel de compatibilidad. Para facilitar la transición, se planea incluir algunas características de Qt 6 en forma abreviada en las versiones Qt 5.14 y Qt 5.15 LTS. También se preparará un kit de herramientas para facilitar la migración a Qt 6.

Entre los objetivos principales para la próxima sucursal importante está alinear la funcionalidad con los requisitos de 2020, limpiar la base del código y simplificar el mantenimiento del proyecto.

Estos son los cambios esperados

Dentro de los principales cambios que se tienen previstos para Qt 6 se encuentra la capacidad para compilar QML en una representación en C ++ y código máquina.

Así como la transferencia de soporte completo para JavaScript a la categoría de opciones (el uso de un motor de JavaScript con todas las funciones requiere grandes recursos, lo que impide el uso de QML en equipos como los microcontroladores).

Se planea agregar una nueva capa abstracta, Rendering Hardware Interface (RHI), para garantizar el uso sin problemas de varias API gráficas, incluidas OpenGL, Vulkan, Metal y Direct 3D (anteriormente Qt estaba vinculado solo a OpenGL).

Toda la infraestructura de renderizado existente, incluidos QPainter, Qt Quick Scenegraph y Qt3D, se convertirán a RHI. También se planea agregar el módulo Qt Shader Tools para admitir varios lenguajes de desarrollo de sombreadores y proporcionar una compilación cruzada de sombreadores tanto en la etapa de ensamblaje como durante la ejecución del programa.

Unificación de herramientas para crear una interfaz de usuario

Para evitar la duplicación de la funcionalidad y dejar de suministrar dos productos separados, se espera que la funcionalidad de Qt 3D Studio se integre en Qt Design Studio, muchos de los cuales los subsistemas y el marco de conexión de complementos se construyen en una sola base de código con Qt Creator.

Qt Design Studio también planea proporcionar una integración de calidad con paquetes de creación de contenido como Photoshop, Sketch, Illustrator, Maya y 3D Max. Los principales idiomas admitidos en un kit de herramientas de desarrollo unificado son C ++, QML y Python.

Se espera preparar una API unificada para crear interfaces de usuario que combinen elementos de gráficos 2D y 3D. La nueva API permitirá que QML se use para definir elementos de interfaz 3D sin usar el formato UIP.

En la nueva interfaz para integrar contenido 3D con Qt Quick, planean resolver problemas como la sobrecarga al integrar QML con contenido de Qt 3D o 3D Studio, y la incapacidad de sincronizar animaciones y transformaciones a nivel de cuadros individuales entre 2D y 3D.

El renderizado conjunto 2D y 3D se implementará utilizando el nuevo motor de renderizado. Se espera una implementación preliminar del nuevo Qt Quick con soporte 3D en Qt 5.14.

Agregar herramientas para procesar recursos relacionados con gráficos en la etapa de compilación, por ejemplo, para convertir imágenes PNG en texturas comprimidas o para convertir sombreadores y mallas en formatos binarios optimizados para equipos específicos.

La unificación también implica la posibilidad de acceder a Qt Creator para interactuar con las herramientas de diseño y proporcionar a los diseñadores de interfaces oportunidades de herramientas para desarrolladores.

De los demás cambios que se destacan son:

  • Denegación de versiones en QML y una unificación de estructuras de datos que se duplican en QObject y QML (reducirá el consumo de memoria y acelerará el inicio).
  • Evitar la generación de estructuras de datos en tiempo de ejecución a favor de la generación en tiempo de compilación.
  • Ocultar componentes internos mediante el uso de métodos y propiedades privados.
  • Integración mejorada con herramientas de desarrollo para refactorizar y diagnosticar errores durante la compilación.

Fuente: https://blog.qt.io/

from Linux Adictos https://ift.tt/2P0OLKr
via IFTTT

Dropbox cambia el codigo a multiplataforma mediante C++

Hace algunos días, los desarrolladores de Dropbox mediante una publicacion en el blog oficial de la aplicación dieron a conocer la ruta que pretenden seguir en cuanto al desarrollo móvil de su aplicación multiplataforma, en donde el equipo ha decidido crear una base de código unificada, para varios objetivos o plataformas.

El enfoque puede ser útil para equipos pequeños con poca habilidad, pero se necesita la producción lo más rápido posible. Desde 2013, el equipo de Dropbox confía en esta estrategia. Apunta a plataformas Android e iOS a través de una base de código único construida en C ++. En la publicación se explica por qué la compañía ahora prefiere el desarrollo nativo en Swift y Kotlin.

“Al montar nuestra base de código de una manera no estándar, heredamos los costos de los que no habríamos tenido que preocuparnos si nos hubiéramos alineado con las armas predeterminadas que los terceros usan a gran escala”.Al final, era más costoso que escribir código dos veces “, dijo.

De manera brusca, los comentarios del ingeniero de Dropbox muestran que la elección del enfoque de desarrollo multiplataforma introduce costos de desarrollo adicionales relacionados con la implementación de marcos y bibliotecas personalizadas.

Eso sin contar los relacionados con la implementación de herramientas de trabajo personalizadas o la necesidad de capacitar o reclutar a terceros capaces de adaptarse a una pila de software muy personalizada.

De hecho, enfatiza que la elección de C++ para el desarrollo multiplataforma de Android e iOS puede llevar a los desarrolladores a enfrentar dificultades que no habrían tenido de forma nativa.

Por ejemplo, dice, establecer un marco para administrar tareas que se ejecutan en segundo plano puede ser imprescindible en la tubería de desarrollo multiplataforma de C ++.

Por el contrario, otro ingeniero explica el ingeniero de Dropbox, no es un problema en nativo.

Incluso afirma que el equipo de Dropbox, en el proceso, tuvo que configurar una biblioteca JSON para C++ 11, así como otra para la administración de punteros NULL.

El ingeniero de la empresa fue aún más lejos al enfatizar que se está volcando en la teoría de pensar que uno puede montar una única base de código para varias plataformas.

De hecho, él insiste, Las especificidades de cada plataforma son factores que no se pueden evitar.

“La forma en que una aplicación ejecuta un trabajo en segundo plano es específica de la plataforma, y ​​hay que mirarla desde el principio”, dice.

Además de las consideraciones que afectan el código, existen aquellas que conciernen a las herramientas de trabajo. En este sentido, el ingeniero de la empresa se desarrolla en dos ejes: depuración y configuración de herramientas personalizadas.

“La experiencia de depuración nativa es generalmente superior a la de C ++ a través del IDE predeterminado de la plataforma de destino”, escribe, y agrega que “además de tener que alejarse de las herramientas disponibles, tuvimos que movilizar los esfuerzos de desarrollo para el desarrollo de otros capaces de apoyar el enfoque multiplataforma en C ++. “

Finalmente, en términos de capacitación y aspectos de reclutamiento, Eyal Guthmann indica que la aventura multiplataforma se construyó alrededor de un núcleo de ingenieros con una sólida formación en C ++.

Con la salida de este último a otros equipos o compañías, la compañía ha tenido cada vez más dificultades para llenar el vacío técnico para mantener la base del código C ++. Interna y externamente, la empresa ha tenido problemas para capacitarse y reclutar en este eje, porque parece que muy pocos desarrolladores móviles están interesados ​​en C ++.

El paso del equipo de Dropbox al nativo a través de Kotlin y Swift para Android e iOS conlleva beneficios.

De hecho, el lenguaje C ++, junto con el C que ya no cita, sirve como un denominador común para la gestión de tales problemas.

No es difícil imaginar que el grupo inicial de ingenieros lo haya integrado para la gestión de ciertos aspectos críticos del backend. Solamente, preguntas sobre la calidad de la interfaz C ++ con plataformas de destino se pueden poner sobre la mesa.

Fuente: https://blogs.dropbox.com/

from Linux Adictos https://ift.tt/2YVfgFy
via IFTTT

Cómo ocultar archivos dentro de una imagen en Linux

Ocultar archivos dentro de una imagen en Linux

Los dispositivos móviles, sobre todo los smartphones, son algo más privados que unos ordenadores que en muchas ocasiones compartimos con la familia. La privacidad es importante y siempre cabe la posibilidad de que queramos guardar algo que no queramos que vea nadie más. Existen muchas opciones para conseguirlo, como crear un archivo comprimido con contraseña, pero de esta manera estamos dando a entender que tenemos algo que ocultar, cosa que es cierto. Si queremos esconder algo y que nadie sepa que lo escondemos, siempre podemos ocultar archivos dentro de una imagen.

Esto es posible gracias a un sencillo comando del terminal. Eso y dar los pasos correctos en el orden correcto. Lo que haremos será básicamente crear un archivo comprimido cuya miniatura en el gestor de archivos es una imagen, una que incluso podemos abrir como cualquier otra. Lo único que puede hacer sospechar a los “intrusos” es que metamos muchos gigas dentro de una imagen, pero eso ya es decisión de cada uno. Aquí os vamos a explicar el proceso.

Ocultar archivos en una imagen completamente funcional

Antes de detallar los pasos a seguir, vamos a decir qué vamos a hacer: vamos a coger una carpeta, en mi caso CarpetaSecreta, que será la que tendrá todos los archivos, vamos a comprimir dicha carpeta y crear el archivo CarpetaSecreta.zip, unirla a una imagen llamada Imagen.png que será “el disfraz” o “tapadera” y crear un archivo que solo mostrará una imagen pero tendrá todos los archivos dentro, que en mi caso será Captura.png. Los pasos a seguir serían los siguientes:

  1. Ponemos la imagen y la carpeta que queremos ocultar (CarpetaSecreta) dentro de una misma carpeta, la que sea. Por ejemplo, en Documentos.
  2. Si no lo hemos hecho ya, metemos todos los archivos que queramos ocultar en CarpetaSecreta. Yo he eliminado el espacio en el nombre de la carpeta para facilitar las cosas en el terminal.
  3. Comprimimos la carpeta. Esto podemos hacerlo haciendo clic derecho y usando nuestro compresor por defecto. Si queremos, podemos ponerle contraseña.
  4. Abrimos el terminal.
  5. Vamos a la carpeta donde están juntos CarpetaSecreta.zip e Imagen.png, en mi caso el comando sería cd /home/pablinux/Escritorio.
  6. El siguiente paso es “concatenar” los archivos CarpetaSecreta.zip e Imagen.png en el archivo de salida Captura.png. El comando para mi ejemplo sería el siguiente:
cat Imagen.png CarpetaSecreta.zip > Captura.png
  1. Por último, podemos eliminar todos los archivos, menos “Captura.png” que es donde están todos los datos ocultos.

Esteganografía, ocultar un archivo dentro de otros

Ahora podéis hacer la prueba: si abrimos la imagen, el programa que la abra nos dirá que tiene un peso normal, como pueden ser 2mb una captura como la que yo he usado, pero haciendo clic derecho sobre la imagen y entrando a sus propiedades, veremos que el tamaño es algo mayor. A este proceso, ocultar archivos dentro de otros, se le llama Esteganografía, que es “el estudio y aplicación de técnicas que permiten ocultar mensajes u objetos, dentro de otros, llamados portadores, para ser enviados y de modo que no se perciba el hecho. Es decir, procura ocultar mensajes dentro de otros objetos y de esta forma establecer un canal encubierto de comunicación, de modo que el propio acto de la comunicación pase inadvertido para observadores que tienen acceso a ese canal“.

Para descomprimir el archivo recién creado no basta con abrirlo con un una aplicación para descoprimir, ni tan siquiera nos vale cambiarle la extensión a .zip e intentar descomprimirila. Tendremos que usar otro comando, este más fácil de recordar. En el caso de mi ejemplo, el comando sería:

unzip Captura.png

Lo único que veremos tras pulsar Intro es que aparece la carpeta que habíamos comprimido en el paso 3. En donde sí veremos algo más será en el terminal, que en mi caso muestra algo como lo siguiente:

pablinux@k1904:~/Escritorio$ unzip Captura.png
Archive: Captura.png
warning [Captura.png]: 703579 extra bytes at beginning or within zipfile
(attempting to process anyway)
creating: CarpetaSecreta/
inflating: CarpetaSecreta/Lupa.png
inflating: CarpetaSecreta/Pablinux.jpg
creating: CarpetaSecreta/Disco-Dingo_WP_4096x2304/
inflating: CarpetaSecreta/Disco-Dingo_WP_4096x2304/Disco-Dingo_WP_4096x2304.png

¿Te ha servido lo explicado en este artículo? Y ahora, dime: ¿qué ocultarás en tu PC? O mejor no me lo digas…

Artículo relacionado:
rm: cómo eliminar archivos y carpetas con este comando del Terminal


from Linux Adictos https://ift.tt/33ClrgB
via IFTTT

Matando los zombies que residen en tu Linux….

zombie

Los procesos son programas en ejecución. Cada software puede iniciar uno o más procesos que se tendrán que cargar en la memoria principal para su procesamiento por la CPU. En ocasiones, un proceso puede subdividirse en los llamados LWP o procesos ligeros, es decir, en hebras, hilos o threads, como los quieras llamar. Cuando todos los threads de un proceso se han ejecutado, entonces el proceso se ha finalizado.

Hecha esa introducción, decir que los procesos en los entornos Unix se identifican por un ID y pueden tener varios estados. Ese ID o identificador es un número asignado a dicho proceso para poder hacer un seguimiento. Se puede conocer fácilmente el PID de un proceso con la herramienta ps, htop, entre otras herramientas. Y también se puede apreciar información sobre su estado.

Los estados en los que puede estar un proceso en Linux son:

  • Running: el proceso está en ejecución.
  • Sleeping: el proceso está durmiendo, a la espera de que suceda un evento que lo despierte y continúe su ejecución.
  • Terminating: el proceso se ha terminado o muerto.
  • Device I/O: procesos de dispositivos de E/S que no se pueden interrumpir.
  • Zombie: cuando un proceso hijo termina antes que su proceso padre se mantiene la información del hijo hasta que le padre termina también. El hijo realmente está muerto o terminado, pero no puede ser destruido para liberar recursos. Realmente no ocupa tiempo de CPU, pero si espacio en la tabla de procesos.

Una forma de enviar señales a los procesos para que pasen a un estado u otro es mediante el comando kill. Si usas el comando kill -l verás la lista de señales que puedes enviar. Lo más típico es enviar una señal KILL a un proceso para eliminarlo. Por ejemplo:


kill -l

kill -9 <PID>

La señal 9 o SIGKILL directamente mata al proceso señalado por PID sin comprobar el estado. En cambio, SIGTERM terminará el proceso solo en ciertas circunstancias, ya que sí comprueba el estado del proceso al que se le envía la señal y si no es seguro se ignorará la señal.

Bien, una vez dicho todo eso, las herramientas como ps tienen una columna que muestra el STAT o estado del proceso. Si te fijas en esa columna, aparece la inicial del estados en el que se encuentra. Por ejemplo, S para sleeping, o Z para zombie, etc. Puedes comprobar si tienes o no procesos zombie en tu sistema con el siguiente comando:


ps aux | grep 'Z'

En mi caso, había uno con PID 6393. Y para eliminar los procesos zombie, puedes usar la siguiente orden:


kill 6393

from Linux Adictos https://ift.tt/2TFOprp
via IFTTT