Precio de Bitcoin Precio de Bitcoin
Ctrl+D Precio de Bitcoin
ads

Una introducción a las identidades, cuentas y billeteras descentralizadas de DFINITY ¿Cómo pueden usarlo los desarrolladores?

Author:

Time:

Título original: "Introducción a la identidad, la cuenta y la billetera descentralizadas de DFINITY. ¿Cómo pueden usarlo los desarrolladores?" "

El 3 de junio, ICP League y los desarrolladores de la comunidad realizaron la segunda conferencia telefónica de desarrolladores, discutiendo la estructura de cuenta subyacente de DFINITY y la forma de autenticación de identidad descentralizada de nivel superior, y presentaron la información de contacto entre los dos. Haga clic en "Leer el texto original" para ver la reproducción del video.

Aspectos destacados de este problema:

La cuenta y la identidad de DFINITY son dos sistemas, la capa inferior todavía está encriptada con la clave pública/clave privada/cuenta de dirección originales, pero se ha establecido un sistema de identidad descentralizado en la capa superior;

La identidad y la cuenta no están acopladas, la cuenta se escribe en la parte inferior de la cadena y la identidad es un contrato inteligente que se ejecuta en la subred NNS de la cadena, que establece una conexión con la cuenta a través del contrato;

La cuenta se parece más a una tarjeta bancaria, y la identidad se parece más a Alipay vinculada a la tarjeta bancaria, que puede usar fácilmente el dapp de DFINITY;

El propósito del sistema de identidad es ayudar a los usuarios a administrar mejor sus cuentas y evitar el acceso directo a las claves privadas;

Al usar DFINITY para iniciar sesión en otras DApps, si se actualiza el código relacionado con las DApps, es fácil perder la información de la subcuenta para estas DApps;

Los desarrolladores pueden combinar la billetera de la cuenta de la línea de comando oficial para realizar la billetera cliente/web, o realizar el negocio bajo la lógica web 3 basada en el sistema de identidad de Internet, como almacenamiento personal, avatar en cadena y mercado de datos.

Los usuarios generales no tienen acceso a transferir direcciones bajo el paquete de identidades de Internet, pero DFINITY, como un sistema de cadena de bloques, tiene cuentas similares a Bitcoin/Ethereum, y el mecanismo principal para la verificación de cuentas es el clásico esquema de firma digital. Es decir, el par de claves públicas y privadas se deriva de la semilla, y la clave pública se procesa y codifica en una dirección de cadena, la transacción se envía a través de la firma de la clave privada y la clave pública se usa para verificar y autenticar la transacción. .

En términos del algoritmo seleccionado, las cuentas de DFINITY son más similares a Bitcoin, principalmente Python ECDSA y secp256k1.Si usa una cuenta de Bitcoin existente para generar la misma clave pública en DFINITY, pero la expresión de la dirección es diferente.

La Fundación Algorand anuncia a Staci Warden como directora ejecutiva: el 10 de febrero, la Fundación Algorand anunció el nombramiento de Staci Warden como directora ejecutiva, con efecto inmediato. Warden ha sido miembro de la Junta Directiva de la Fundación Algorand desde septiembre de 2021.

Según su perfil de Linkedin, antes de unirse a Algorand, Warden fue director ejecutivo de JPMorgan Chase, responsable de las relaciones de agencias multilaterales en Europa, África, Rusia y Asia Central. También trabajó en Nasdaq, donde supervisó el desarrollo de BBX, la plataforma de negociación y cotización de la bolsa para empresas de micro capitalización. (CoinDesk) [2022/2/10 9:43:26]

La longitud de la dirección de la cuenta de DFINITY es de 64 caracteres. Este formato solo se usa para representar cuentas ordinarias. El contenedor de DFINITY (contrato) se representa mediante un ID de contenedor especial de 23 bits, que es un grupo de 5 cadenas separadas por "-" , como "h5aet-waaaa-aaaab-qaamq-cai.raw", agregando "https" y ".ic0.app" se puede acceder directamente en el navegador, como "https://h5aet-waaaa-aaaab-qaamq - cai.raw.ic0.app/". Esta es una gran diferencia con el sistema de cuentas de Ethereum.

Estas direcciones de cuenta se pueden ver en Cuentas en nns.ic0.app, que se pueden usar directamente para transferencias ICP, pero actualmente no existe una billetera nativa cifrada fácil de usar.

Pero el método oficial de implementación de código abierto de este tipo de billetera, una billetera de línea de comandos, se implementa en la biblioteca keysmith (https://github.com/dfinity/keysmith)

Además del sistema de cuentas, DFINITY ha desarrollado un sistema de identidad denominado "Identidad de Internet (Identidad de Internet)", en lo sucesivo denominado II. II es un contrato inteligente implementado en DFINITY, y el almacenamiento de estado del contrato inteligente establece un mapeo entre direcciones e identidades.

Datos: El valor de mercado total de los productos de valores de Bitcoin alcanzó los 5147 millones de dólares estadounidenses: según los datos de OKLink, el valor de mercado total actual de los productos de valores de Bitcoin es de 5147 millones de dólares estadounidenses, y el valor de mercado de los tres principales es CoinShares Bitcoin Tracker Euro 961 millones de EE. UU. dólares, con 295 millones posiciones 10,000 BTC, 3iQ CoinShares Bitcoin ETF con USD 693 millones, con 21,300 BTC y Purpose Bitcoin ETF con USD 636 millones, con 19,500 BTC. [2021/6/9 23:23:32]

Tenga en cuenta que la identidad y la cuenta de billetera son dos cosas diferentes. La dirección de la billetera en Ethereum es su identidad para usar la aplicación, pero en DFINITY, la identidad está separada de la cuenta de la billetera, las dos no están acopladas, pero provienen de la misma fuente de pares de claves pública y privada, y pueden evolucionar con cada una. otro.

Al usar II, los usuarios obtendrán una cadena de números llamada "número de usuario", que en realidad es un índice dentro del contrato II. Esta cadena de números proviene de una cadena de 63 bits, normalmente separados por "-" en grupos de cinco, denominada "Principal ID".

La identidad del usuario es en realidad un objeto instanciado en el contrato inteligente II. II es un estándar promovido por DFINITY. Actualmente, las aplicaciones en DFINITY pueden permitir a los usuarios iniciar sesión en las aplicaciones que utilizan el estándar II mediante la introducción de unas pocas líneas de código. II es una etiqueta de identidad centralizada que utiliza una autenticación de dos factores altamente segura y puede crear identidades derivadas para los usuarios cuando usan diferentes dapps para proteger la privacidad del usuario y evitar que se rastreen las cuentas a través de las aplicaciones; y puede ser más conveniente Administrar varias cuentas sin cuenta contraseñas o claves privadas con altos umbrales de aprendizaje, y se pueden usar fácilmente a través de terminales seguras como reconocimiento facial, escaneo de huellas dactilares o YubiKey.

Primero, permítanme presentarles WebAuthn, que cumple con el estándar de autenticación web W3C (World Wide Web Consortium), es decir, además de la autenticación de clave privada/contraseña de cuenta, también requiere autenticación de hardware seguro, que es para evitar sitios web de phishing y programa malicioso Por lo tanto, al usar II, los usuarios deben tener hardware de seguridad, que también es un umbral que preocupaba a los primeros usuarios. Sin embargo, la mayoría de nuestros teléfonos móviles y portátiles actualmente están equipados con chips de seguridad y también se pueden conectar a YubiKey.

El banco privado suizo Bordier & CieSCmA lanza el comercio de criptomonedas: el 24 de febrero, el banco privado suizo Bordier & CieSCmA anunció el lanzamiento del comercio de criptomonedas para los clientes. Desde aquí, sus clientes podrán comprar, mantener e intercambiar activos digitales como Bitcoin, Ethereum, Bitcoin Cash y Tezos. (CoinDesk) [2021/2/24 17:49:02]

Proceso de autenticación WebAuthn:

Después de que el usuario inicie el proceso de inicio de sesión, el contrato inteligente de DFINITY II generará un desafío aleatorio y lo enviará al navegador del usuario;

Luego, el navegador envía el desafío al dispositivo de seguridad, donde el usuario realiza una autenticación interactiva, como el desbloqueo de huellas dactilares, el reconocimiento facial o tocar una YubiKey;

Complete la verificación y firme con la clave privada almacenada en el dispositivo seguro;

Luego, envíe el desafío firmado verificado al contrato inteligente II, y el contrato inteligente II verificará y completará el inicio de sesión.

Cuando usamos la autorización II para iniciar sesión en una DApp, II generará automáticamente una subidentidad dedicada al uso de la DApp. Esto crea múltiples avatares en cadena para que los usuarios eviten que se rastree su identidad; al mismo tiempo, DFINITY necesita verificar por separado cuando interactúa con diferentes contenedores. Un contenedor no puede robar su autoridad de autorización para interactuar con otros contenedores para transferir tokens, y este Este tipo de cosas sucedieron en Ethereum.

Al mismo tiempo, el contrato II también abstrae la identidad, por lo que incluso si su clave privada solo se almacena en el chip de seguridad del dispositivo y no se transmite, puede vincular varios dispositivos bajo una cuenta maestra y utilizar varios dispositivos. Iniciar sesión directamente a la cuenta principal para enviar cualquier operación. Este es un tipo de gestión de permisos, y es necesario anunciar oficialmente más detalles.

Además del sistema de cuentas, DFINITY ha desarrollado un sistema de identidad denominado "Identidad de Internet (Identidad de Internet)", en lo sucesivo denominado "II". II es un contrato inteligente implementado en DFINITY.

Salida de identificación original:

Primero realice Bip39 en el número aleatorio Rand, luego genere el archivo semilla y luego infiera la clave privada;

Generar una clave pública en formato DER a través de la clave privada, con una longitud de 65 bytes;

Ejecute sha224 en la clave pública para obtener una cadena de 28 bytes, luego agregue un byte para juzgar su tipo y produzca una ID original de 29 bytes, que en lo sucesivo se denominará "blob";

Aquí se agrega un byte para indicar su tipo, "0x01" está reservado para el sistema, "0x02" significa que esta es la ID principal, que es creada por el usuario; "0x03" significa que la clave pública se deriva de la principal ID, una ID principal La ID tiene un espacio y puede registrar muchas ID derivadas para usar diferentes DApps; "0x04" es una ID anónima y puede enviar solicitudes sin firmar.

En este momento, los dos métodos de procesamiento del blob producen respectivamente el "ID principal" de 63 bytes para el contrato II y el "ID de cuenta" de la cuenta de billetera de 32 bytes.

Salida de ID principal:

Agregue un código de detección de errores CRC-32 pequeño de 4 bytes (código de detección de errores) al blob;

Use Base32 para codificar el resultado, cada grupo de cinco caracteres, separados por "-";

También puede usar representación ASCII, máximo 63 caracteres.

Salida para ID de cuenta:

Agregue una cadena específica de tipo de cuenta antes del blob, seguida de un número de serie;

Calcule sha224 en esta cadena y obtenga un resultado de 28 bytes;

Agregue un código de corrección de errores CRC-32 de 4 bytes al resultado para obtener un resultado de 32 bytes;

Convertido a una cadena de 64 caracteres.

La identificación de la cuenta es la dirección de transferencia que usamos en el intercambio, y la identificación de la cuenta también puede derivar múltiples subdirecciones, solo necesita modificar el número de serie después del blob y obtener una dirección diferente después de ser codificada, este proceso es el mismo que antes. La derivación de es diferente.

En la actualidad, DFINITY alienta oficialmente a los desarrolladores a usar II para iniciar sesión en DApp, y la derivación y el almacenamiento de identidades y direcciones de II se ejecutan en contratos inteligentes.

En el contrato de DFINITY, se permite actualizar el estado Persistente, por lo que el contrato se puede actualizar, pero este no es un estado persistente, por lo que se pueden perder datos durante la actualización. Esto significa que después de que se actualice el contrato II o el contrato DApp, se pueden perder datos, lo que resultará en la pérdida de identidades que usaron DApp en el pasado.

Este es un riesgo que todos los desarrolladores deben tener en cuenta cuando usan II, pero esta situación se encuentra a menudo cuando se usan DApps, y sus tokens ICP no se verán afectados.

En la actualidad, existe una brecha entre la experiencia de DFINITY y los usuarios cifrados nativos. II está por delante de los hábitos de uso actuales de los usuarios cifrados nativos, por lo que es difícil de aceptar para todos. Es muy importante eliminar esta brecha y mejorar este mecanismo, como hacer una página visual para la billetera de línea de comando keysmith.

También puede explorar el mecanismo de inicio de sesión.El inicio de sesión actual de WebAuthn tiene un cierto umbral de hardware, y no todos pueden usarlo fácilmente. Por ejemplo, use metamask para iniciar sesión, como hacer una verificación criptográfica a través del correo electrónico.

Al desarrollar billeteras DFINITY, es posible combinar mejor las direcciones de cuentas nativas encriptadas con el sistema de múltiples identidades de DFINITY. Para hacer una metáfora, la dirección de la cuenta es como una cuenta de tarjeta bancaria, y DFINITY II es una cuenta de WeChat. También puede usar esta cuenta de WeChat para iniciar sesión en diferentes aplicaciones. Tiene una identidad para cada aplicación.

Por lo tanto, no es suficiente usar MetaMask. La experiencia de DFINITY es diferente de "usar una billetera para completar todas las operaciones de inicio de sesión" descritas en Web3. La sensación de conexión de la aplicación es más como el "inicio de sesión con un clic" del tradicional Internet.

Al mismo tiempo, hay proyectos de identidad descentralizados en diferentes cadenas o plataformas públicas, y debido a que no existe un acoplamiento profundo, el DFINITY II oficial también puede ser un proyecto de identidad inicial y los desarrolladores pueden comenzar a mejorarlo o implementar uno nuevo. 1. Mejor sistema de identidad.

Al mismo tiempo, se pueden construir más aplicaciones en la capa superior de II, como establecer un espacio de almacenamiento independiente para cada cuenta como centro de autenticación de datos u optimizar el sistema de múltiples identidades para derivar la diversidad de interacciones de múltiples identidades. .

Tags:

Huobi App Download
¿Cómo depositar y retirar efectivo en RMB digital en el cajero automático? Se han admitido muchos lugares.

Según el Beijing Business Daily, al visitar los establecimientos bancarios en el área de Beijing, se notó que los cajeros automáticos de algunos establecimientos del ICBC.

Aspectos destacados del mercado ZB: Tesla no operó Bitcoin y puede reanudar el comercio de Bitcoin en el futuro.

Resumen de puntos calientes: 1. El tweet de Musk impulsó el volumen de negociación del token Uranus poco conocido en un 75.

Una introducción a las identidades, cuentas y billeteras descentralizadas de DFINITY ¿Cómo pueden usarlo los desarrolladores?

Título original: "Introducción a la identidad, la cuenta y la billetera descentralizadas de DFINITY. ¿Cómo pueden usarlo los desarrolladores?" "El 3 de junio.

Encuentra nuevo|Bitso: gigante latinoamericano de intercambio de cifrado

"Find New" es un proyecto de observación de proyectos de blockchain lanzado por Jinse Finance. Cubre el desarrollo de proyectos en varios campos de la industria.

Golden Observation | ¿Cómo insinúa la Reserva Federal subir los tipos de interés antes de finales de 2023? ¿Cómo afectará al mercado de la encriptación?

La reunión de política monetaria súper pesada de la Reserva Federal finalmente llegó a su fin, y finalmente se anunció la decisión altamente preocupada del FOMC.El 15 y 16 de junio.

¿Cuál es la lógica y el desarrollo futuro detrás de la publicación centralizada de las políticas regulatorias 609?

Título original: "Día regulatorio 609: muchas provincias prohíben la minería.

ads