Protegiendo nuestro acceso e identidad, con "Blockchain"
Hola abejas, lo creáis o no, llevaba varios días documentándome y leyendo "cosas raras" sobre blockchain y su aplicación en la gestión de identidades, y el control de accesos, que dicho sea de paso, yo creo que es una de la grandes preocupaciones, de las muchas que imagino deben de tener los "CISO" de muchas compañías.
Así que había empezado a escribir en mi PC un post sobre este tema, y que había ido dejando sin terminar, pero es un tema del que ya os hablé antes, en este artículo anterior .
Pero dados los últimos acontecimientos que se han dado en la colmena, con gusto he retomado el tema, y aquí os dejo mi artículo, que espero y deseo, os ayude a comprender como funciona blockchain, que dicho sea de paso no es lo mismo, ni mucho menos, que bitcoin.
Así que os pido que lo leáis con paciencia, y si no entendeis bien el concepto, no os preocupéis... Os aseguro y os garantizo que a mi también me cuesta bastante a veces.
¡Vamos al lío abejas!
* * * * * *
El mayor obstáculo para migrar muchos servicios online, es la capacidad de asegurar los datos y verificar la identidad de los usuarios del mismo. Actualmente, la autenticación online se basa en una contraseña y en raras ocasiones el uso de autenticación de doble factor. El problema con estos métodos es que las contraseñas son notoriamente inseguras y la autenticación de doble factor generalmente se basa en el envío de un código a través de SMS o un servicio tercero. Una solución a este problema podría ser la cadena blockchain, ya que los mismos principios criptográficos podrían aplicarse a la autenticación.
Al distribuir un “ledger” (libro mayor o registro oficial) entre todos los miembros de la red, la autenticación blockchain erradica el poder modificar maliciosamente el “ledger”. Cada vez que se agrega una "transacción" o bloque de datos a la cadena, la mayoría de la red debe verificar su validez, lo que garantiza su integridad.
¿Por qué nuestra actual identidad es insegura?
Las credenciales de correo electrónico y las contraseñas son fáciles de romper, como pudimos ver en la última violación de Yahoo con 500 millones de cuentas. Si tenemos que presentar el DNI cuando pagamos con tarjeta, existe el riesgo de dar a alguien más información de la que necesita. Si pagamos en un restaurante, el mismo sólo necesita saber que usted es quien dice que es y su fecha de nacimiento, pero también estamos proporcionando información adicional incluida en el DNI, información que puede ser crucial para poder robar nuestra identidad.
La solución ideal sería una forma de autenticación que sólo otorgue acceso a cierta información, eliminando así, la necesidad de que cada proveedor de servicios almacene credenciales para cada cliente. Blockchain puede ofrecer este enfoque mediante la descentralización de la propiedad de las credenciales y disponibilidad en una cadena inmutable de datos. Estos datos, en lugar de ser almacenados por una aplicación, se almacenan en un "libro compartido o ledger". Este ledger compartido es descargado por cada usuario individual, reflejando un registro de cada transacción realizada.
¿Por qué blockchain es seguro?
La cadena de bloques se basa en tres grandes pilares (consenso, distribución y sin confianza) y donde es necesario tener una gran cantidad de potencia de procesamiento de datos para autenticar generar y verificar nuevos “bloques” de la cadena y, por lo tanto, donde a una sola persona podría tardar años, pero una red de ordenadores tan apenas tardaría sólo unos minutos (en el peor de los casos). Las pruebas de trabajo que están vinculadas a los datos de cada bloque son necesarias para que los bloques sean aceptados. La dificultad de este trabajo se ajusta para limitar la velocidad a la que nuevos bloques pueden ser generados por la red a una media de uno cada 10 minutos.
Así, la cadena puede continuamente agregarse y las transacciones se procesan de manera oportuna mientras se protegen los datos de la manipulación indebida, por los que la naturaleza de este problema hace matemáticamente imposible que alguien cambie la cadena de bloqueo.
Cambiar un bloque (que sólo puede hacerse haciendo un nuevo bloque que contenga el mismo predecesor) requiere regenerar a todos los sucesores y rehacer el trabajo que contienen.
Esto se podría hacer teóricamente con suficiente tiempo, pero el libro público mencionado anteriormente es elegido por consenso, donde la red de usuarios está de acuerdo en que la cadena bloqueada más larga sea la cadena reconocida. Esto constituye el primer pilar de la cadena de bloques. Al acordar la cadena de bloques más larga, la única forma de que un usuario altere la cadena con éxito sería alterar un bloque y luego generar bloques de transacción subsiguientes para crear una nueva cadena más larga.
Sin embargo, esto es matemáticamente imposible, debido a que la red de usuarios agregará bloques a un ritmo mucho más rápido que a la que cualquier persona por si sola podría agregar bloques. Así, la seguridad es confiable.
Por último, el libro mayor se distribuye, lo que significa que cada usuario almacena el libro mayor actual, evitando que alguien altere un único punto de verdad. En la criptografía tradicional, un único “punto de verdad” podría ser una autoridad de certificación (CA), sin embargo, un atacante malicioso podría reemplazar las claves almacenadas de CA con sus propias claves. Al distribuir el libro mayor, un atacante tendría que atacar a todas y cada una de las máquinas que componen la cadena completa, y reemplazar la cadena de bloque por la suya propia haciendo que sea funcionalmente imposible para un atacante alterar la cadena.
Aplicaciones del Blockchain
Blockchain ID es una solución viable para poder resolver la verificación de que un usuario es quien dice que es. Pudiendo, además, ampliar esta funcionalidad para realizar una variedad de transferencias seguras de datos en nombre de dicho individuo. Un servicio profundamente vinculado con la verificación de la identidad es el intercambio de información de identidad sin revelar información innecesaria como comenté anteriormente.
Además de compartir datos, un usuario también podría agregar datos a la cadena como prueba de una transacción, sin dar los datos originales de la transacción. Cualquiera de las partes podría verificar un documento contra dicha entrada y demostrar que es válida, lo que permite una auditoría rápida y fiable de los datos compartidos. Esta metodología se basaría en el principio de la firma de mensajes y el hash.
Propuesta de autenticación con blockchain
Un flujo de autenticación genérico que ha sido probado y utilizado por compañías como Blockstack se basa en un handshake centrado en bloques. Este handshake verifica tanto a la aplicación de autenticación como al usuario que es la otra parte con la que se están comunicando.
En este ejemplo, la aplicación protegida es la aplicación que solicita la autenticación, y el usuario es la entidad que intenta obtener acceso a la aplicación protegida. El primer paso de este flujo es similar al de cualquier inicio de sesión. Sin embargo, no se le pedirá al usuario que introduzca una contraseña. En su lugar, un usuario vería un formulario en la aplicación protegida para un nombre de usuario, a continuación, mostraría (por ejemplo) un código QR para la autenticación.
El proceso de autenticación y los diferentes pasos y procedimientos internos, son bastante difíciles de explicar y “domesticar”, así que, para no añadir más dificultad a este artículo, voy a ser “bueno” y no voy a hablaros de ellos.
El beneficio de utilizar la cadena blockchain es que está completamente descentralizada. Si no se desea utilizar una aplicación para facilitar este flujo o transacción, el usuario podría simplemente generar su propia firma con su clave pública y enviarla en un formulario que el sitio web verificaría. Esto demuestra el verdadero beneficio de un sistema descentralizado, puesto que cualquiera puede acceder a los datos, y al tener cada usuario el control de su propia clave privada, y no ser necesario utilizar una API para facilitar esta solicitud, éste podría y puede dar tanta confianza a la transacción como se esté dispuesto a dar.
Compartir sólo la información de identidad que deseas
Un problema actual con la verificación de identidad es que se está obligado a dar más información de la que el sistema realmente necesita. El problema con esto, es que, si la transacción se ve comprometida y alguien es capaz de interceptar los datos de alguna manera, tendrán bastante información para comenzar a forjar una identidad. Para resolver este problema, el flujo de autenticación anterior podría ampliarse para soportar este tipo de servicio.
A pesar de que existen muchas aplicaciones posibles en blockchain, no debemos suponer que la cadena de bloques es una solución perfecta para estos problemas. Como con cualquier sistema, todavía hay inconvenientes e inseguridades, ya que ningún sistema es 100% seguro y por lo tanto, debemos considerarlo a la hora de adoptar esta tecnología.
En el caso de la autenticación, el problema sigue siendo que se puede confiar en un tipo de autoridad de certificación, confiando en una tercera parte. Para asegurar que un ID es realmente la persona que dice ser, se requieren formas de verificación más seguras que simplemente usar los mensajes de los medios de comunicación sociales.
Referencias:
https://retina.elpais.com/retina/2017/07/13/tendencias/1499945987_724507.html
https://es.wikipedia.org/wiki/Cadena_de_bloques
https://hbr.es/datos/925/blockchain-podr-ayudarnos-recuperar-el-control-sobre-nuestros-datos
https://elpais.com/tecnologia/2016/05/02/actualidad/1462174998_210251.html
https://www.criptonoticias.com/aplicaciones/panorama-desarrollo-gestion-identidades-blockchain/
https://www.elespanol.com/economia/empresas/20171017/254974760_0.html
https://www.xataka.com/empresas-y-economia/para-que-se-esta-usando-blockchain-mas-alla-de-bitcoin
Artículos de Fran 🐝 Brizzolis
Ver blogHola abejas, después de este período navideño en el que "se me han pegado los turrones" (os pido dis ...
¡Hpla abejas! · En los últimos tiempos hemos asistido a la publicación de infinidad de información y ...
En mi · último artículo · os comentaba que había comenzado un curso "bastante exigente" que me oblig ...
Profesionales relacionados
Puede que te interesen estos puestos de trabajo
-
Desarrollador/a de Blockchain
Encontrado en: beBee Professionals - hace 2 días
Aplicar directamente
beBee Professionals está buscando un/a Desarrollador/a de Blockchain para unirse a su equipo en Málaga. Estamos buscando a alguien con una pasión por la tecnología blockchain y una comprensión profunda de los conceptos de seguridad, escalabilidad y privacidad. · Como Desarrollado ...
-
Consultor AD e Identidad y Accesos
Encontrado en: beBee S2 ES - hace 3 días
Digital Talent Agency Madrid, España OTHER· Trabajarás como Consultor/a de Identidad y Accesos (IAM) y Active Directory (AD) en el equipo de arquitectura de Identidad IT de un gran proyecto de ingeniería automotriz, participando en el proceso de cambio de herramientas de gestión de identidades, tareas relacionadas con m ...
-
jefatura de proyecto de gestion de accesos
Encontrado en: Talent ES C2 - hace 17 horas
Telefónica Madrid, EspañaJEFATURA DE PROYECTO DE GESTIÓN DE ACCESOS · Telefónica España · ¿Te apasiona el mundo de las tecnologías de control de acceso? · ¿Quieres unirte a una empresa líder en el sector de las Telecomunicaciones? · Sabemos que estás en búsqueda de un cambio... · Y por eso, en Telefóni ...
Comentarios
Fran 🐝 Brizzolis
hace 6 años #18
Te refieres a publicar Andr\u00e9s Zarzuelo?
Fran 🐝 Brizzolis
hace 6 años #17
Fran 🐝 Brizzolis
hace 6 años #16
Fran 🐝 Brizzolis
hace 6 años #15
Fran 🐝 Brizzolis
hace 6 años #14
Genial... Isabel \ud83d\udc1d D\u00edaz Dur\u00e1n... Si es un tema "complicadillo"... Y tiene muchas posibilidades, y prosibles aplicaciones... Me allegro de haber podido ayudarte. Un abrazo.
Fran 🐝 Brizzolis
hace 6 años #13
Lo que necesites... Mañana examen!!!.... Jajaja
Fran 🐝 Brizzolis
hace 6 años #12
Lo que haga falta... Buen finde
Hugo Chinchilla
hace 6 años #11
Gracias a ti por etiquetarme y permitirme aprender un poco más.
Fran 🐝 Brizzolis
hace 6 años #10
Gracias Alfredo.
Fran 🐝 Brizzolis
hace 6 años #9
Gracias Hugo Chinchilla por compartir
Fran 🐝 Brizzolis
hace 6 años #8
Gracias Laura \ud83d\udc1d Carvajal... Con fans como vosotros da gusto escribir... Bitcoin es una moneda virtual y blockchain es un protocolo de seguridad por decirlo de alguna forma, y como tal podria servir para muchas cosas más ademas de monedas virtuales
Fran 🐝 Brizzolis
hace 6 años #7
Fran 🐝 Brizzolis
hace 6 años #6
Fran 🐝 Brizzolis
hace 6 años #5
Fran 🐝 Brizzolis
hace 6 años #4
Fran 🐝 Brizzolis
hace 6 años #3
Gracias ... Proximamente intentaré traducirlo al ingles para publicarlo para las abejas que no hablen español
Fran 🐝 Brizzolis
hace 6 años #2
Fran 🐝 Brizzolis
hace 6 años #1