Polkadot proporciona un sistema de nomenclatura que permite a los participantes añadir información personal a su cuenta en la cadena y posteriormente solicitar la verificación de esta información por parte de los registradores (ver infra).
Establecer una Identidad #
Los usuarios pueden establecer una identidad registrándose a través de campos predeterminados como el nombre legal, el nombre para mostrar, el sitio web, Twitter handle, Riot handle, etc., junto con algunos campos extra, personalizados, para los que se desean certificar (ver Sentencias infra).
Los usuarios deben reservar fondos en una vinculación para almacenar su información en cadena: 20,258, y 0,066 por cada campo más allá del nombre legal. Estos fondos están bloqueados, no se gastan: se devuelven cuando se borra la identidad.
Estos montos también se pueden extraer consultando las constantes a través de la pestaña de constantes del estado de la Cadena en Polkadot-JS Apps.
Primero, selecciona identity
(identidad) como la selected constant query
(consulta constante seleccionada).
A continuación, en el lado derecho, puedes seleccionar las constantes que deseas ver y añadirlas a la página web haciendo clic en el icono “más” al final de la barra.
Cada campo puede almacenar hasta 32 bytes de información, por lo que los datos deben ser menores. Al introducir los datos manualmente a través de la interfaz de usuario de Extrinsics, un convertidor de UTF8 a bytes puede ayudar.
La forma más fácil de añadir los campos incorporados es hacer clic en el icono del engranaje junto a tu cuenta y seleccionar “Set on-chain identity” (Establecer identidad en la cadena).
Aparecerá una ventana emergente que ofrece los campos por defecto.
Para añadir campos personalizados más allá de los predeterminados, utiliza la interfaz de usuario de Extrinsics para enviar una transacción sin procesar, haciendo primero clic en “Add Item” (Añadir elemento) y añadiendo el nombre de campo que desees. El ejemplo siguiente añade un campo steam
, que es el nombre de usuario del usuario Steam. El primer valor es el nombre del campo en bytes (“steam”) y el segundo es el nombre de la cuenta en bytes (“theswader”). El nombre para mostrar también tiene que ser proporcionado, de lo contrario, la paleta de identidad lo consideraría borrado si lo enviamos con la opción “None” (ninguno) todavía seleccionada. Es decir, cada vez que haces un cambio en los valores de tu identidad, hay que volver a enviar todo el conjunto de campos: la operación de escritura es siempre “overwrite” (sobrescribir), nunca “append” (añadir).
Ten en cuenta que los campos personalizados no se muestran por defecto en la interfaz de usuario:
La representación de estos valores personalizados depende, en última instancia, de los creadores de la interfaz de usuario y de la aplicación. En el caso de Polkadot-JS, el equipo prefiere mostrar sólo los campos oficiales por ahora. Si quieres comprobar que los valores siguen almacenados, utiliza la interfaz de usuario de Chain State para consultar la información de identidad de la cuenta activa:
Depende de tu propia UI o dapp para hacer con estos datos lo que desees. Los datos permanecerán disponibles para su consulta a través de la API de Polkadot, por lo que no tienes que depender de la UI de Polkadot-JS.
Puedes tener un máximo de 100 campos personalizados.
Advertencia sobre el Formato #
Por favor, ten en cuenta la siguiente advertencia: debido a que los campos soportan diferentes formatos, desde bytes crudos a varios hashes, una UI no tiene forma de decir cómo codificar un campo determinado que encuentra. La interfaz de usuario de Polkadot-JS codifica actualmente los bytes brutos que encuentra como strings UTF8, lo que hace que estos valores sean legibles en pantalla. Sin embargo, dado que no hay restricciones en los valores que se pueden colocar en estos campos, una UI diferente puede interpretarlos como, por ejemplo, hashes IPFS o mapas de bits codificados. Esto significa que cualquier campo almacenado como bytes crudos será ilegible para esa UI específica. A medida que los estándares de los campos se cristalicen, las cosas se volverán más fáciles de usar, pero por ahora, cada implementación personalizada para mostrar la información del usuario probablemente tendrá que tomar una decisión consciente sobre el enfoque a tomar, o soportar múltiples formatos y luego intentar múltiples codificaciones hasta que la salida tenga sentido.
Valoraciones (Judgements) #
Después de que un usuario introduzca su información en la cadena, puede solicitar una valoración a un registrador. Los usuarios declaran una tarifa máxima que están dispuestos a pagar por la valoración, y los registradores cuya tarifa es inferior a esa cantidad pueden proporcionar una valoración.
Cuando un registrador emite una valoración, puede seleccionar hasta seis niveles de confianza en su atestación:
- Desconocido: El valor por defecto, aún no se ha emitido ningún juicio.
- Razonable: Los datos parecen razonables, pero no se han realizado comprobaciones en profundidad (por ejemplo, un proceso formal de KYC).
- Conocido Bueno: El registrador ha certificado que la información es correcta.
- Desactualizado: La información solía ser buena, pero ahora está desactualizada.
- Baja calidad: La información es de baja calidad o imprecisa, pero puede arreglarse con una actualización.
- Errónea: La información es errónea y puede indicar una intención maliciosa.
Un séptimo estado, “fee paid” (tarifa pagada), es para cuando un usuario ha solicitado una valoración y está en curso. La información que se encuentra en este estado o “errónea” es “pegajosa” y no puede modificarse; sólo puede eliminarse mediante la supresión completa de la identidad.
Los registradores se ganan la confianza realizando la debida diligencia y es de suponer que serán sustituidos por emitir valoraciones erróneas.
Para ser juzgado después de enviar la información de tu identidad, ve a la “Interfaz de usuario de Extrinsics” y selecciona la paleta de identity
, luego requestJudgement
. Para el reg_index
pon el índice del registrador por el que quieres ser valorado, y para el max_fee
pon el máximo que estás dispuesto a pagar por estas confirmaciones.
Si no sabes qué registrador elegir, primero comprueba los registradores disponibles yendo a “Chain State UI” y selecciona identity.registrars()
para obtener la lista completa.
Solicitar una Valoración #
Selecciona uno de los registradores de la consulta realizada anteriormente.
Esto hará que tu identidad pase de ser no valorada (unjudged):
A “en espera (waiting)”:
En este punto, se requiere el contacto directo con el registrador – la información de contacto está en su identidad como se muestra arriba. Cada registrador tendrá su propio conjunto de procedimientos para verificar tu identidad y valores, y sólo una vez que hayas satisfecho sus requisitos continuará el proceso.
Una vez que el registrador haya confirmado la identidad, debería aparecer una marca de verificación verde junto al nombre de tu cuenta con el nivel de confianza adecuado:
Ten en cuenta que si cambias incluso el valor de un solo campo después de haber sido verificado, se anulará la verificación de tu cuenta y tendrás que iniciar de nuevo el proceso de valoración. Sin embargo, puedes cambiar los campos mientras se realiza la valoración; es responsabilidad del registrador vigilar los cambios.
Cancelación de una Valoración #
Puedes decidir que no quieres ser valorado por un registrador (por ejemplo, porque te das cuenta de que introdujiste datos incorrectos o seleccionaste el registrador equivocado). En este caso, después de enviar la solicitud de valoración pero antes de que tu identidad haya sido valorada, puedes emitir una llamada para cancelar la valoración utilizando un extrínseco.
Para esto, ve primero a la “Interfaz de Extrínsecos” y selecciona la paleta de identity
, y luego cancelRequest
. Asegúrate de que estás llamando a esto desde la cuenta correcta (aquella para la que solicitaste inicialmente la valoración). Para el reg_index,
pon el índice del registrador del que solicitaste la valoración.
Envía la transacción, y la valoración solicitada será cancelada.
Registradores #
Los registradores pueden establecer una tarifa por sus servicios y limitar su certificación a determinados campos. Por ejemplo, un registrador podría cobrar 1 DOT por verificar el nombre legal, el correo electrónico y la clave GPG. Cuando un usuario solicite validación, pagará esta tarifa al registrador, que se encargará de verificar esos datos. Los usuarios fijan una tarifa máxima que están dispuestos a pagar y sólo los registradores por debajo de esta cantidad proporcionarán la validación.
Convertirse en Registrador #
Para convertirse en registrador, envía una imagen previa y una propuesta a Democracia, y espera a que la gente la vote. Para obtener los mejores resultados, escribe previamente un post sobre tu identidad e intenciones, y una vez que la propuesta esté en la cola pide a la gente que la secunde para que se adelante en la cola del referéndum.
A continuación te explicamos cómo presentar una propuesta para ser registrador:
Ve a la pestaña “Democracy”(Democracia), selecciona “Submit preimage” (Enviar preimagen), e introduce la información para esta moción – especialmente qué cuenta estás nominando para ser registrador en la función identity.setRegistrar
.
Copia el hash de la preimagen. En la imagen anterior, es 0x90a1b2f648fc4eaff4f236b9af9ead77c89ecac953225c5fafb069d27b7131b7
. Presenta la preimagen firmando una transacción.
A continuación, selecciona “Submit Proposal” (Enviar propuesta) e ingresa el hash de la preimagen previamente copiado. El campo locked balance
debe ser de al menos 20.258 DOT. Puedes averiguar el mínimo consultando el estado de la cadena en Chain State -> Constants -> democracy -> minimumDeposit.
En este punto, los titulares de DOT pueden secundar la moción. Con suficientes segundos, la moción se convertirá en un referéndum, que se votará. Si se aprueba, los usuarios podrán solicitar una valoración a este registrador.
Registradores Actuales #
Hay múltiples registradores en Polkadot. A menos que no haya información adicional disponible aquí, debes dirigirte a los registradores específicos individualmente si quieres ser valorado por ellos.
Registrador 0:
URL: https://registrar.web3.foundation/
Cuenta: 12j3Cz8qskCGJxmSJpVL2z2t3Fpmw3KoBaBaRGPnuibFc7o8,
Tarifa: 0 DOT,
Registrador 1:
URL: https://registrar.d11d.net/
Cuenta: 1Reg2TYv9rGfrQKpPREmrHRxrNsUDBQKzkYwP1UstD97wpJ,
Tarifa: 10 DOT,
Registrador 2:
Cuenta: 1EpXirnoTimS1SWq52BeYx7sitsusXNGzMyGx8WPujPd1HB,
Tarifa: 0 DOT.
Para saber cómo contactar con el registrador tras la solicitud de valoración o para saber quién es, podemos comprobar su identidad añadiéndolo a nuestra Address Book. Su identidad se cargará automáticamente.
Subcuentas #
Los usuarios también pueden vincular cuentas estableciendo “subcuentas”, cada una con su propia identidad, bajo una cuenta principal. El sistema reserva un vínculo para cada subcuenta. Un ejemplo de cómo se podría utilizar esto sería una empresa de validación que gestiona varios validadores. Una sola entidad, “Mi empresa de Staking”, podría registrar múltiples subcuentas que representen las cuentas Stash de cada uno de sus validadores.
Una cuenta puede tener un máximo de 100 subcuentas.
Para registrar una subcuenta en una cuenta existente, debes utilizar actualmente la interfaz de usuario de Extrinsics. Allí, selecciona la paleta de identidad, y luego setSubs
como la función a utilizar. Haz clic en “Add Item” (agregar Item) para cada cuenta secundaria que desees añadir a la cuenta de remitente principal. El valor a poner en el campo Datos de cada principal es el nombre opcional de la subcuenta. Si se omite, la subcuenta heredará el nombre de la cuenta principal y se mostrará como parent/parent
en lugar de parent/child
.
Ten en cuenta que se requiere un depósito de 20.053 para cada subcuenta.
Puedes utilizar Polkadot-JS Apps de nuevo para verificar esta cantidad consultando la constante identity.subAccountDeposit
.
Borrar y Matar una Identidad #
Borrar: Los usuarios pueden borrar la información de su identidad y que se les devuelva el depósito. Al borrar una identidad también se borran todas las subcuentas y se devuelven sus depósitos.
Para borrar una identidad:
- Navega a la interfaz de usuario de cuentas.
- Haz clic en los tres puntos correspondientes a la cuenta que deseas borrar y selecciona “Set on-chain identity” (Establecer identidad en la cadena).
- Selecciona “Clear Identity” (Borrar identidad), y firma y envía la transacción.
Matar: El Consejo puede matar una identidad que considere errónea. Esto da lugar a un recorte (slash) del depósito.