SpruceID es una empresa de gestión de identidad digital y datos personales que desarrolla la infraestructura y las herramientas que permitirán a los usuarios tomar el control de su identidad y sus datos en Internet. Con más de 3 millones de descargas y más de 1.000 dapps que utilizan sus bibliotecas de código abierto para el estándar Sign-In With Ethereum (SIWE), SpruceID está resolviendo el problema persistente de la propiedad e interoperabilidad de los datos de los usuarios.
MetaMask Developer hace referencia al área de desarrollo de MetaMask, que ofrece un conjunto completo de herramientas, APIs y SDKs diseñados para facilitar la incorporación de usuarios y permitir a los desarrolladores crear conexiones de wallet únicas y sin permisos, así como experiencias dentro de las dapps para los usuarios de MetaMask. Construido sobre las bases confiables y seguras de MetaMask e Infura, MetaMask Developer también está orientado a mejorar la experiencia de la wallet MetaMask para usuarios y desarrolladores mediante la participación activa y la colaboración con la comunidad.
Este blog presenta a SpruceID, un socio del ecosistema, y su trabajo para habilitar la interoperabilidad de datos a través de la autenticación controlada por el usuario. También explica cómo, mediante su colaboración con MetaMask Developer, se implementó en MetaMask el EIP-4361, también conocido como Sign-In with Ethereum (SIWE), mientras se creaba simultáneamente la MetaMask Improvement Proposal.
Habilitando la interoperabilidad de datos mediante la autenticación controlada por el usuario
El internet actual está centralizado y la interoperabilidad de los datos de los usuarios es inexistente. Por ejemplo, un paciente que desea cambiar de proveedor médico necesitaría ayuda para trasladar sus registros médicos existentes, debido a la forma en que se almacenan estos datos: mediante bases de datos centralizadas. Esta práctica no es exclusiva de los proveedores de salud; es común en las finanzas tradicionales, las redes sociales y el ámbito gubernamental.
SpruceID reconoce que esto puede resolverse fácilmente migrando a una Arquitectura de Bóveda de Datos donde, en lugar de que los datos de los usuarios sean almacenados y gestionados por servicios de terceros, residan en una bóveda personal segura y cifrada que el propio usuario administra.
Sin embargo, para que esto funcione, se requiere un estándar de autenticación que permita a los usuarios otorgar o revocar el acceso a sus datos en cualquier momento. Este estándar también tendría que ser lo suficientemente extensible como para admitir el intercambio basado en consentimiento, de modo que los usuarios tengan un control granular sobre qué datos compartir o no compartir según cada caso.
Otro desafío es garantizar que este estándar de autenticación sea reconocido y adoptado dentro del ecosistema por los desarrolladores de dapps. Además, ciertos problemas de seguridad asociados a este método de autenticación solo pueden resolverse a nivel de la wallet. Por ejemplo, si un sitio web solicita a un usuario que firme una transacción, verificar que la dirección en la barra de direcciones del usuario sea correcta y que la solicitud se esté sirviendo a través de una red segura son comprobaciones de seguridad complejas de implementar a nivel de la dapp. Sin embargo, una wallet puede aplicarlas fácilmente.
MetaMask Developer implementa EIP-4361 en colaboración con SpruceID
A través de la autoría del estándar (SIWE), el equipo de Spruce ID creó un método de autenticación controlado por el usuario basado en criptografía y en las claves públicas y privadas de los usuarios. Con estas claves, los usuarios pueden firmar firmas digitales que las máquinas no pueden falsificar. Los usuarios también pueden firmar autorizaciones para que las dapps accedan a su bóveda de datos. SIWE también ofrece control granular, lo que permite a los usuarios especificar qué recursos de su bóveda de datos están involucrados en una interacción.
Para facilitar una adopción más amplia en el ecosistema, especialmente entre los desarrolladores de dapps, SpruceID colaboró con MetaMask Developer para integrar SIWE en la wallet MetaMask como una funcionalidad. Esta colaboración ayudó a abordar múltiples problemas de seguridad a nivel de la wallet, aprovechando la experiencia de los expertos en seguridad JavaScript del equipo interno de MetaMask. Como resultado, los desarrolladores ya no necesitan gestionar estos problemas a nivel de la dapp.
"Al reflexionar sobre nuestra experiencia colaborando con el equipo de MetaMask Developer, las dos palabras que me vienen a la mente son 'extremadamente receptivos' y 'minuciosos'**. Hubo muchas iteraciones mientras íbamos y veníamos buscando el mejor resultado para los usuarios. Estamos agradecidos de que el equipo de MetaMask Developer reconociera el potencial para mantener a los usuarios seguros". - Wayne Chang, Fundador, SpruceID*.*
Además, a través de esta colaboración, MetaMask Developer estableció un proceso para que proyectos como SpruceID puedan proponer nuevas funcionalidades y sugerir cambios a la API de la wallet MetaMask. Este proceso se denomina MetaMask Improvement Proposal (MIP), y se pueden encontrar más detalles en este blog.
Comienza hoy con MetaMask Developer
¿Eres un desarrollador creando dapps para consumidores?
La suite MetaMask Developer, que comprende la API de la wallet MetaMask, el SDK, las APIs de servicios Web3 y Snaps, ofrece un conjunto completo de herramientas para incorporar a millones de los usuarios más activos de la web.
Visita el portal para desarrolladores para obtener más información sobre nuestras ofertas.