blockstackblockstack-Trans

naming-How to use BNS-Manage BNS

2019-08-06  本文已影响1人  空乱木

FROM : https://docs.blockstack.org/core/naming/manage.html

本节教你如何管理你的命名空间,它包含以下部分:

管理的概述
NAME_UPDATE
NAME_TRANSFER
NAME_REVOKE
NAME_RENEWAL

管理的概述

一旦注册了BNS名称,就可以更改它的区域文件散列、更改它的公钥散列、销毁它(即使其无法解析)或更新它。BNS协商一致规则确保只有您作为名称私钥的所有者才能执行这些操作。

这些操作都是通过向区块链发送一个特殊格式的区块链事务来执行的,BNS节点读取并处理这个事务。具体操作如下:

交易分类 描述
NAME_UPDATE 这将更改名称的区域文件散列。允许任何20字节的字符串。
NAME_TRANSFER 这将更改名称的公钥散列。此外,当前所有者可以自动清除名称的区域文件散列(这样新所有者就不会“接收”该区域文件)。
NAME_REVOKE 这将使名称无法解析。如果您的私钥被泄露,您应该这样做。
NAME_RENEWAL 这将回推名称的过期日期(如果它有过期日期),并且可以选择同时设置一个新的区域文件散列和一个新的公钥散列。

参考BNS客户端—Blockstack .js和Blockstack浏览器—可以为您处理创建和发送所有这些事务。

NAME_UPDATE (live example)

NAME_UPDATE事务更改名称的区域文件散列。如果希望更改名称的区域文件内容,可以发送其中一个事务。例如,如果您希望部署自己的Gaia hub并希望其他人从中阅读,那么您可以这样做。

NAME_UPDATE事务由名称、最近的共识散列和新的区域文件散列生成。参考客户端自动收集这些信息。有关如何构造此事务的详细信息,请参阅事务格式文档。

NAME_TRANSFER (live example)

NAME_TRANSFER事务更改名称的公钥散列。如果您想发送以下交易之一:

在传输名称时,您还可以选择清除名称的区域文件散列(即将其设置为null)。当您将名称发送给其他人时,这非常有用,因此收件人的名称不会解析到您的区域文件。

NAME_TRANSFER事务由名称、最近的共识散列和新的公钥散列生成。参考客户端自动收集这些信息。有关如何构造此事务的详细信息,请参阅事务格式文档。

NAME_REVOKE (live example)

NAME_REVOKE事务使名称无法解析。BNS协商一致规则规定,一旦名称被撤销,任何人都不能更改其公钥散列或区域文件散列。名称的区域文件散列被设置为null,以防止解析。

只有当您的私钥被破坏,或者无论出于什么原因,您想使您的名称无法使用时,才应该这样做。它在实践中很少使用。

NAME_REVOKE操作仅使用名称生成。有关如何构造事务格式文档的详细信息,请参阅事务格式文档。

NAME_RENEWAL (live example)

根据名称空间规则,名称可能会过期。例如,.id名称空间中的名称将在两年后过期。你需要每隔一段时间发送一次name_renew来保存你的名字。

name_renew需要支付交易费和注册费。当您更新名称空间时,您将向名称空间指定的burn地址支付注册费用。您可以使用/v1/prices/names/{name}端点查找此费用。

当一个名字过期,它进入一个月的“宽限期”(5000个区块)。它将在宽限期内停止解决,所有上述操作将不再受BNS协商一致规则的遵守。不过,您可以在宽限期内发送一个NAME_RENEWAL来保存您的姓名。

如果您的名称位于名称不会过期的名称空间中,则永远不需要使用此事务。

当您发送NAME_RENEWAL时,您还可以设置一个新的公钥散列和一个新的区域文件散列。有关如何构造此事务的详细信息,请参阅事务格式文档。

上一篇 下一篇

猜你喜欢

热点阅读