Substrate utiliza conjuntos de pares de claves pública/privada para representar a los participantes en la red.
El papel de los participantes en un sistema de cadena de bloques varía, por ejemplo, desde validadores hasta usuarios comunes.
Como ejemplo, los nodos Substrate utilizan el algoritmo de "Prueba de participación nominada" (NPoS) para seleccionar validadores. Los validadores y nominadores pueden tener fondos significativos, por lo que el módulo Stake de Substrate introduce una abstracción de cuenta para ayudar a mantener los fondos lo más seguros posible.
Estas cuentas abstractas son:
Claves ocultas: las cuentas ocultas se utilizan para almacenar grandes cantidades de fondos. Su clave privada debe almacenarse en una billetera fría para mantenerla lo más segura posible.
Claves de controlador: las cuentas de control toman decisiones en nombre de las cuentas de almacenamiento, como las preferencias de pago, pero solo deben tener pequeñas cantidades de fondos para pagar las tarifas de transacción. Su clave privada debe mantenerse segura ya que afecta la configuración del validador, pero la clave privada se usa periódicamente mientras se mantienen los validadores.
Claves de sesión: las claves de sesión son teclas "calientes" que se guardan en el cliente del validador y se utilizan para firmar ciertas operaciones del validador. No deben tener fondos.
Un par de claves puede representar una cuenta y controlar los fondos, al igual que una cuenta normal que se ve en otras cadenas de bloques. En el contexto del módulo de Saldos de Substrato, estas cuentas deben tener un monto mínimo ("depósito existente") para existir en almacenamiento.
Las claves de cuenta se definen de forma genérica y se concretan en tiempo de ejecución.
Continuando con nuestro ejemplo de almacenamiento y control de cuentas, las claves de estas cuentas se distinguen por su uso previsto, no por diferencias criptográficas subyacentes. Al crear claves de almacenamiento o control, también se admite todo el cifrado compatible con las claves de cuenta normales.
Las claves ocultas son pares de claves públicas/privadas que definen una cuenta de almacenamiento. Esta cuenta es como una "cuenta de ahorros" en el sentido de que no debe usarla para transacciones con mucha frecuencia. Por lo tanto, sus claves privadas deben ser tratadas con el más alto nivel de seguridad, como protegidas en una capa de seguridad o seguridad de hardware.
Dado que la clave de almacenamiento permanece fuera de línea, designará una cuenta de control para tomar decisiones de no gasto usando el peso de los fondos de la cuenta de almacenamiento. También puede designar una cuenta de poder para votar en el gobierno en su nombre.
Las claves de controlador son pares de claves públicas/privadas que definen las cuentas de control. En el contexto del modelo NPoS de Substrate, la clave de control representará la intención de una persona de verificar o nominar.
La clave de control se usa para establecer preferencias, como la dirección de recepción de la recompensa, y para que los validadores configuren su clave de sesión. Las cuentas de control solo requieren tarifas de transacción y, por lo tanto, requieren muy poco capital.
Las llaves de control nunca se pueden usar para gastar fondos de sus cuentas de almacenamiento. Sin embargo, el acto de controlar las teclas puede dar lugar a barras y debe manejarse con cuidado.
Las claves de sesión son "teclas de acceso rápido" que los validadores usan para firmar mensajes relacionados con el consenso. No pretende ser una clave de cuenta para controlar fondos y solo debe usarse para el propósito previsto. Pueden cambiar periódicamente; su cuenta de control solo necesita crear un certificado firmando la clave pública de la sesión y luego transmitir ese certificado con un mensaje externo. Las claves de sesión también se definen de forma genérica y se concretan en tiempo de ejecución.
Para crear una clave de sesión, los operadores de validación deben dar fe de que la clave representa su cuenta de almacenamiento (participación) y nominadores. Para ello, crean un certificado firmando la clave con su clave de control. Luego informan a la cadena que esta clave representa su clave de control mediante la publicación del certificado de sesión en una transacción en la cadena.
Substrate proporciona el módulo de sesión, que permite a los validadores administrar sus claves de sesión.
Puede declarar cualquier número de claves de sesión. Por ejemplo, el nodo Substrate predeterminado usa tres: BABE, GRANDPA y "I'm Online". Otras cadenas pueden tener más o menos claves de sesión, dependiendo de lo que la cadena quiera que hagan sus validadores.
Estas diferentes claves de sesión pueden usar la misma criptografía, pero sirven para propósitos completamente diferentes a lo largo de la lógica del tiempo de ejecución. Para evitar que se use la clave incorrecta para una operación incorrecta, la escritura fuerte de Rust envuelve estas claves, haciéndolas incompatibles entre sí y asegurando que solo se usen para el propósito previsto.
Si la clave de sesión se ve comprometida, un atacante podría cometer acciones que provoquen una barra inclinada. Las claves de sesión deben cambiarse periódicamente (por ejemplo, por sesión) a través del RPC `rotate_keys` para mayor seguridad.
Obtenga más información sobre la criptografía utilizada en Substrate.
Siga los tutoriales sobre cómo crear una red local y generar claves.
Módulo de replanteo: https://substrate.dev/rustdocs/v2.0.0-rc5/pallet_staking/index.html
Módulo de saldos: https://substrate.dev/rustdocs/v2.0.0-rc5/pallet_balances/index.html
Módulo de sesión: https://substrate.dev/rustdocs/v2.0.0-rc5/pallet_session/index.html
el RPC de rotate_keys: https://substrate.dev/rustdocs/v2.0.0-rc5/sc_rpc/author/trait.AuthorApi.html#tymethod.rotate_keys
Criptografía utilizada en Substrate: https://substrate.dev/docs/en/knowledgebase/advanced/cryptography
Tutorial para crear una red local y generar claves: https://substrate.dev/docs/en/tutorials/start-a-private-network/
API de tiempo de ejecución de claves de sesión: https://substrate.dev/rustdocs/v2.0.0-rc5/sp_session/trait.SessionKeys.html
Claves de sesión en el tiempo de ejecución del nodo Substrate: https://substrate.dev/rustdocs/v2.0.0-rc5/node_runtime/struct.SessionKeys.html
substrato_application_crypto: https://substrate.dev/rustdocs/v2.0.0-rc5/sp_application_crypto/index.html
Tags:
El surgimiento de la moneda digital es un evento importante en la historia de la moneda, y es probable que su importancia supere con creces el nacimiento de la moneda metálica y los billetes.
Para una bolsa de valores convencional, existen algunos elementos clave que determinan su éxito. Estos factores incluyen la seguridad, el rendimiento y la estabilidad de todos los aspectos del intercambio.
A principios de esta semana, dimos un gran paso para habilitar la funcionalidad de parachain en Polkadot cuando lanzamos una nueva red de prueba diseñada específicamente para parachains y tecnologías relacionadas.
Substrate utiliza conjuntos de pares de claves pública/privada para representar a los participantes en la red.El papel de los participantes en un sistema de cadena de bloques varía, por ejemplo.
YAM, que ha llamado la atención de la comunidad DeFi, finalmente anunció su fracaso.El 13 de agosto, Yam Finance descubrió que había una laguna en el contrato de ajuste de suministro elástico.
Kava anunció hoy en Twitter que Kava Labs ha establecido una asociación estratégica con Swipe Wallet para desarrollar aún más el ecosistema DeFi de USDX.
En la era de Internet, los agregadores capturan la gran mayoría del valor. Google agrega el contenido de varios sitios web, Facebook agrega relaciones sociales y contenido, Amazon agrega productos y transacciones.