LinuxParty
Una de las distribuciones Linux más emblemáticas y conocidas que lleva más de una década entre nosotros, ha lanzado su más reciente versión estable el día de hoy y ya puedes descargar Fedora 25 Workstation desde la web oficial en versiones de 32 y 64 bits.
Varias son las novedades que incluye el nuevo lanzamiento, especialmente del lado del servidor gráfico. Fedora 25 finalmente deja el atrás el viejo X11 y se cambia a Wayland (aunque aún podrás elegirlo si es necesario), algo que dentro de la comunidad ha causado más de una polémica.
Interesante post, éste, que explica cómo cambiar la versión de PHP con un ejemplo real, ya sea, haciendo un downgrade de la versión de PHP o instalando a una versión concreta. Este ejemplo está ejecutando en una máquina con CentOS 6.3 64 bits, con el repositorio de remi instalado.
Primero, podemos ver qué versión tenemos.
# php -v
PHP 5.4.11 (cli) (built: Jan 16 2013 16:51:38)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies
¿Que hemos usado para el proyecto?
-
Anexgrid: para páginar los registros.
-
jQuery UI: basicamente por el tema de autocomplete, el cual me parece bueno y lo he usado bastante tiempo.
-
Arquitectura MVC: ya que es la arquitectura que uso en todos mis proyectos.
Nuestro objeto facturador (Javascript)
Creamos un objeto llamado "facturador" en javascript que implementaba las reglas de negocio necesaria para manipular el DOM y comenzar a facturar, agregando detalle, calculando el monto por cada línea ingresada, el sub total, total y el IVA (IGV en otros países). Este ha sido modificado, ya que ahora los productos que se ingresan los elegimos desde la base de datos usando el autocomplete de jquery ui, adicionalmente, tambíen usamos el autocomplete para seleccionar un cliente.
Nuestro objeto es el siguiente:
var facturador = { detalle: { igv: 0, total: 0, subtotal: 0, cliente_id: 0, items: [] }, /* Encargado de agregar un producto a nuestra colección */ registrar: function(item) { var existe = false; item.total = (item.cantidad * item.precio); this.detalle.items.forEach(function(x){ if(x.producto_id === item.producto_id) { x.cantidad += item.cantidad; x.total += item.total; existe = true; } }); if(!existe) { this.detalle.items.push(item); } this.refrescar(); },
Datos de un certificado
Existen diversos formatos de certificados, pero el más extendido es el X.509, definido por la norma del ITU-T X.509 (versión 3), parte servicio de directorio diseñado por ISO (International Organization for Standardization, Organización Internacional de Estandarización) para el modelo OSI (Open System Interconnection, Interconexión de Sistemas Abiertos).
Un certificado X.509 normalmente es un fichero pequeño que contiene la siguiente información:
- Nombre Distintivo del propietario.
- Nombre Distintivo de la Autoridad Certificadora. Identificación y firma de la Autoridad Certificadora (CA) que firmó el certificado.
- Período de vigencia. El período de tiempo de vigencia del certificado
- Información adicional sobre la CA, números de serie o versión.
Nombre Distintivo
El Nombre Distintivo del certificado define una identidad dentro de un contexto, por ejemplo una organización. Los Nombres Distintivos están definidos en el estándar X.509. Por ejemplo, podemos tener:
Nombre Común (CN), el nombre a ser certificado.
Organización o Compañía (O), el nombre asociado con la organización
Ciudad/Localidad (L) Ciudad donde está localizado el CN.
Estado/Provincia (SP) Provincia donde está localizado el CN.
País ( C) , el país donde está localizado CN.
Autoridades Certificadoras (CA)
Una Autoridad Certificadora (CA, Certificate Authority) es la autoridad encargada de firmar los certificados y posteriormente confirmar que el dueño de un certificado es realmente quien dice ser.
Para la firma de certificados, una Autoridad Certificadora puede establecer una política que especifique qué campos del Nombres Distintivo es necesario incluir y cuáles son opcionales, u qué valoes de los campos son o no admisibles.
Una Autoridad Certificadora puede certificar las identidades de otras Autoridades Certificadoras y así sucesivamente. Este proceso se detiene en el momento en que una Autoridad no tenga quién la certifique, en este caso, el certificado lo tiene que firmar ella misma (``self-signed''), por lo que la propia Autoridad Certificadora se otorga la confianza.
Las Autoridades Certificadoras además pueden realizar tareas de gestión de certificados, renovarlos, revocarlos.
Funcionamiento de los Certificados
Un certificado se ofrece para garantizar una comunicación segura con el interlocutor que lo toma. Corre de cuenta del interlocutor verificar que el certificado que te ofrecen es correcto. Por ejemplo un servidor web seguro ofrece un certificado para cifrar las comunicaciones entre él y el navegador cliente. Cuando el navegador cliente recibe el certificado, comprueba en una lista que tiene si viene firmado por una autoridad de confianza. En caso de que la firma del certificado esté avalada por una autoridad de confianza el navegador continúa normalmente su diálogo cifrando la información. Si la firma no está avalada por ninguna de las autoridades reconocidas, entonces avisa al cliente de que la firma no es de confianza y pregunta qué hacer. Es importante observar que la confianza o no de un certificado, en general, no impide que se pueda utilizar para establecer una comunicación, simplemente plantea dudas sobre la autenticidad del emisor.
Los pasos para establecer una comunicación segura mediante certificados es:
- Se solicita un certificado
- Se verifica la firma con la Autoridad Certificadora para comprobar que el certificado es correcto, que dicha Autoridad Certificadora fue quien emitió el certificado y que su llave pública es la misma que la del certificado.
- Se recibe la confirmación de la Autoridad Certificadora que el certificado es correcto.
- La información se cifra mediante la llave pública y se envía.
Confianza en un certificado
Una vez que tenemos un certificado de alguien el problema que tenemos es garantizar que el certificado realmente pertenece a quien dice pertenecer, garantizar que el certificado es autentico y no una falsificación.
Para resolver el problema existen autoridades certificadoras reconocidas que firman los certificados responsabilizándose de que la identidad del propietario coincide con la identidad del certificado. Una vez que la autoridad certificadora firma el certificado le otorga su confianza.
Evidentemente podemos tener certificados creados por nosotros mismos y firmados por nosotros también, sin tener que pagar a una empresa por el servicio, pero en este caso, cada vez que se utilice el certificado avisará de que no reconoce a la autoridad certificadora, por ejemplo si hemos instalado un certificado firmado por nosotros mismos en un servidor web seguro, cuando abrimos la primera página no indica que el certificado del servidor no está firmado por una autoridad reconocida, si queremos continuar o si queremos isntalar el certificado par confiar plenamente en él. A pesar de todo, las comunicaciones seguirán siendo cifradas.
Elementos de los certificados
Tipos de llaves
Las llaves o claves son el elemento fundamental para mantener la privacidad en las comunicaciones. El problema que presentan las claves es que de alguna forma tienen que poner de acuerdo al emisor con el receptor cuando usan comunicaciones con clave. El mecanismo más sencillo es que ambos compartan una misma clave, pero no está exento de problemas. El principal problema de las claves compartidas es que de alguna forma tiene que hacerla llegar el emisor al receptor antes de iniciar la comunicación cifrada, pero al ser la comunicación de la clave sin cifrar puede resultarle fácil averiguarla a terceros. Lo ideal sería tener un canal seguro entre emisor y receptor por el cual se pudieran transmitir contraseñas sin el peligro de que sean detectadas. Por otro lado el proceso de cifrado no debería consumir demasiados recursos para que no se altere la velocidad de las comunicaciones.
Llave simétrica o secreta.
El mecanismo de cifrado basado en claves simétricas consiste en que el emisor y el destinatario tienen que compartir una misma clave para cifrar y descifrar la información. El principal problema de las claves simétricas es que para compartir la clave hay que enviarla a través de la red sin cifrar, lo que supone un riesgo de que alguien pueda interceptarla.
La gran ventaja de las llaves simétricas es su simplicidad por lo que alcanzan un alto grado de rendimiento: las operaciones criptográficas se realizan con rapidez y con un bajo consumo de recursos.
El gran inconveniente de las llaves simétricas es su forma de distribución, como distribuir una llave por una canal inseguro, lo que habíamos comentado en la introducción.
Llave asimétrica o pública.
Se basa en un pareja de claves, una pública y otra privada, de forma que lo que se cifra con la llave privada sólo se puede descifrar usando la llave pública asociada. Igualmente todo lo que se cifre con la llave pública sólo se puede descifrar con la llave privada.
Aquí surge el concepto de comunicación segura, una comunicación que nadie puede descifrar salvo que disponga de la llave privada.
La gran ventaja de las llaves asimétricas es que evitan tener que transmitir contraseñas por canales inseguros.
El inconveniente de las llaves asimétricas es que requieren una alto consumo de recursos para realizar sus operaciones, lo que las podría hacer inoperativas para grandes volúmenes de información.
Combinación llaves simétricas y asimétricas
Un aspecto importante, crítico es el tiempo que se lleva el cifrado y descifrado de datos. Pensemos que un servidor seguro web tiene que cifrar y descifrar todas las comunicaciones que envía a la red y un sistema de cifrado lento podría afectar gravemente a su rendimiento.
Como vimos en la descripción de las llaves cada una de ellas tiene la ventaja que nos interesa, transmisión segura y velocidad de proceso, y el inconveniente que queremos evitar, la lentitud y la inseguridad de la transmisión.
Aplicando estos criterios lo que hace SSL es combinar ambos tipos de llaves:
La información que vamos a enviar se cifra usando una llave simétrica, ahora la llave simétrica se cifra usando la llave asimétrica y se envían ambos, los datos cifrados y la llave cifrada.
Cuando el destinatario recibe la información primero descifra la llave simétrica con la llave asimétrica que dispone y luego descifra la información con la llave obtenida.
Observamos cono en realidad el cifrado asimétrico se limita a un valor muy pequeño, una contraseña, mientras que el grueso del descifrado se realiza con la llave simétrica.
Certificados Digitales
Una de las principales utilidades de los certificados consiste en proporcionar a los servidores una capa criptográfica para evitar la circulación de información en claro por la red, particularmente cuando se intercambian datos importantes como por ejemplo pueden ser contraseñas de acceso, datos privados como números de tarjetas de crédito u otra información que se pretende que nadie más pueda acceder a ella.
El ejemplo citado de la clave es un ejemplo significativo. Cada vez que nos identificamos ante un sistema cualquiera tenemos que enviar un nobre de usuario y contraseña por la red. Si esta información circula sin cifrar un programa de escucha en red (sniffer) podría llegar a leerlos. Pero para poder enviar una contraseña cifrada necesitamos algúna forma de que los dos puntos sean capaces de tener un sistema previo de cifrado para que las comunicaciones.
Otro aspecto importante es la identificación de una persona ante la red. Un certificado digital, identificadores digital, pasaporte digital o certificado de llave pública, son unas claves digitales que certifican que una determinada llave pública corresponde a un individuo, maquina u organización concretos. El certificado garantiza que la llave pertenece a quien afirma pertenecer e identifica a su propietario. Evidentemente si perdemos el certificado u otra persona accede a él, esa persona podría identificarse en nuestro nombre, por ejemplo, ante hacienda.
Los certificados digitales se utilizan para:
cifrado y descifrado de datos: para fundamentalmente, transmitir información cifrada a través de la red.
Autenticación: para identificar a una entidad como individuo, máquina u organización.
Firmas digtales: para garantizar la integridad de una información. Firmamos un texto para poder comprobar posteriormente si ha sido o no manipulado.
Vía: bdat.net
"Si el paciente no sobrevive al trance y fallece, es posible que la información cuántica pueda existir fuera del cuerpo como alma, tal vez de manera indefinida", ha dicho el físico británico Roger Penrose para explicar qué ocurre, según la ciencia, luego de la muerte.
Su equipo de trabajo, tras largos meses de investigación, encontró pruebas de que dentro de las proteínas que los seres humanos almacenamos, en los microtúbulos (conductos que trasladan materia celular), existe alojada la información denominada alma. Esta podría mantenerse en el universo luego de que el cuerpo muera, ha explicado el diario The Daily Express.
Tengo este libro - una edición en español del Manual de Stephen Coffin, Unix System V Release 4: The Complete Reference. Puede abrirlo en cualquiera de sus 700 páginas y apostar un euro que los comandos de la página funcionará en cualquier Linux moderno. Bueno, excepto donde están involucrados teletipos y almacenamiento de cintas.
Dicho así, puede pensar que la línea de comandos *NIX no ha cambiado mucho desde principios de los noventa. Esto no es enteramente cierto.
Red Hat, el proveedor líder mundial de soluciones open source, se complace en anunciar la disponibilidad general de Microsoft SQL Server Public Preview en RHEL.
La noticia llega apenas un día después del anuncio de Canonical de que la Vista previa pública de Microsoft SQL Server en Linux estaba disponible para los usuarios del popular sistema operativo Ubuntu y ahora parece que también puede instalar SQL Server en sus computadoras Red Hat Enterprise Linux , Disfrutando de un potente y avanzado sistema de gestión de bases de datos relacional.
“La siguiente versión de SQL Server en Linux, la plataforma de administración de datos y análisis de negocios de Microsoft, está ahora disponible como una vista previa pública en Red Hat Enterprise Linux. , Y ahora ofrece soporte para contenedores Linux con formato docker “, dice el anuncio de hoy.
Cuando empecé a escribir el artículo, no sabía en que categoría etiquetar esto, si en Microsoft, en Linux o en Humor y cachondeo, pero si, es cierto y así lo ha publicado la propia Linux Foundation, que además se ha unido a Linux como miembro Platino.
Microsoft y Linux han sido grandes rivales a través de los años. Nadie va a negar que Linux tiene sus ventajas por encima de Windows, a pesar de que esta ultima es el rey absoluto de los sistemas operativos gracias a su llegada en todo el mundo.
Estamos viviendo en una época donde seremos testigos del siguiente cambio generacional de conexiones móviles, muchas compañías están trabajando en diversas soluciones e implementaciones que buscan hacer del 5G la próxima gran revolución hacia un mundo más conectado, donde no sólo los dispositivos móviles aprovecharían estas conexiones sino también otros objetos como coches, infraestructura y mucho más.
Todos ven en el 5G el futuro de las conexiones móviles, lo que hace que las conexiones domésticas estén pasando a segundo plano y eso lo vemos hoy día donde el 4G se equipará en muchas características con la fibra, pero esto podría cambiar en los próximos años gracias a un interesante proyecto conocido como AirGig, el cual busca aprovechar todo el tendido eléctrico existente en el mundo para ofrecer conexión a internet con velocidades multi-gigabit.
Donde haya energía eléctrica habría internet
Parece una historia sacada de la serie futurista «Black Mirror», inquietante y extraña, pero es real. El Consejo de Investigación Médica de India (ICMR) ha desbaratado un controvertido experimento que intenta traer a la vida a las víctimas de accidentes con muerte cerebral. El proyecto, llamado “ReAnima”, ya no aparece en el registro de ensayos clínicos del país, según informa la web de la revista Science.