lsd0001

LSD0001: GNU Name System
Log | Files | Refs | README

commit ef5cfefc5b877ceda8c7e0188ef476fba847697f
parent b4258bf9ba662ef0c09bce0b4dccaeb18143f769
Author: Martin Schanzenbach <schanzen@gnunet.org>
Date:   Sun, 20 Feb 2022 09:18:50 +0100

cleanup start zones

Diffstat:
Mdraft-schanzen-gns.xml | 71++++++++++++++++++++++-------------------------------------------------
1 file changed, 22 insertions(+), 49 deletions(-)

diff --git a/draft-schanzen-gns.xml b/draft-schanzen-gns.xml @@ -382,11 +382,6 @@ If this functionality is not implemented, names can still be resolved if zone keys for the initial step in the name resolution are available (see <xref target="resolution"/>). - As users can own and manage their own zones, each local zone SHOULD be - associated with a single GNS label, but users MAY choose to use longer - names consisting of multiple labels. - The associated labels or names are used in order to discover starting - zones in the resolution process (see <xref target="governance"/>). </t> <t> Each zone type (ztype) is a unique 32-bit number. @@ -1904,36 +1899,14 @@ q := SHA-512 (ZKDF-Public(zk, label)) <section anchor="governance" numbered="true" toc="default"> <name>Start Zones</name> <t> - The resolution of a GNS name starts in an initial start zone. - The resolver may have one or more local start zones configured - which point to local or remote zone keys. - A resolver may also determine the start zone from the - suffix of the name given for resolution, or using information - retrieved out of band. - </t> - <t> - The governance model of any zone is at the sole discretion - of the zone owner. - However, the choice of available start zone(s) is at the sole - discretion of the local system administrator or user. - This property addresses the issue of a single hierarchy with a - centrally controlled root and the related issue of distribution and - management of root servers in DNS (see <xref target="RFC8324"/>, Section 3.10 and 3.12). - The only exception to this rule are names ending with a zTLD. - In this case the start zone is explicitly given in the rightmost - label of the name to resolve. + The resolution of a GNS name starts by identifying the start zone. + For names ending with a zTLD the start zone is explicitly given in the + rightmost label of the name to resolve. In order to ensure uniqueness of names with zTLDs any implementation MUST use the given zone as start zone. </t> <t> - A GNS resolver MUST follow the steps below in order to discover - the start zone. - The process given is not exhaustive and resolvers MAY supplement it - with other mechanisms if the particular application - requires a different process: - </t> - <t> - First, any implementation MUST try to interpret the top-level domain of + An implementation MUST try to interpret the top-level domain of the given name zTLD. If the rightmost label can be converted to a valid ztype and zone key, it MUST be used as the start zone: @@ -1944,24 +1917,17 @@ Example name: www.example.<zTLD> => Name to resolve from start zone: www.example ]]></artwork> <t> - An implementation MAY allow the user to manage local zones. - If the name of a locally managed zone matches the suffix - of the name to be resolved, resolution MUST start from the - respective local zone with the longest matching suffix: + Otherwise, the resolver MUST determine the start zone through other + means. + The choice of available start zone(s) is at the sole + discretion of the local system administrator or user. + This property addresses the issue of a single hierarchy with a + centrally controlled root and the related issue of distribution and + management of root servers in DNS (see <xref target="RFC8324"/>, Section 3.10 and 3.12). </t> - <artwork name="" type="" align="left" alt=""><![CDATA[ -Example name: www.example.org -Local zones: -fr = (d0,zk0) -org = (d1,zk1) -com = (d2,zk2) -... -=> Start zone: zk1 -=> Name to resolve from start zone: www.example - ]]></artwork> <t> - Finally, an implementation MAY support the configuration of additional - "suffix-to-zTLD" mappings. + In order to discover the start zone from a name, an implementation MAY + support the configuration of "suffix-to-zTLD" mappings. Suffix-to-zTLD mappings MUST be configurable through a local configuration file or database by the user or system administrator. A suffix MAY consist of multiple GNS labels concatenated with a @@ -1970,8 +1936,12 @@ com = (d2,zk2) matching suffix MUST be used. The suffix length of two results MUST NOT be equal. This indicates a misconfiguration and the implementation MUST return an error. - If both a locally managed zone and a configuration entry exist - for the same suffix, the locally managed zone MUST have priority. + </t> + <t> + If both a locally managed zone and a configuration entry for a + non-local zone exist for the same suffix, the locally managed zone MUST + be given priority. + The following is a non-normative example mapping of start zones: </t> <artwork name="" type="" align="left" alt=""><![CDATA[ Example name: www.example.org @@ -1984,6 +1954,9 @@ example.com = zTLD2 (ztype2||zk2) => Name to resolve from start zone: www ]]></artwork> <t> + The process given is not exhaustive and resolvers MAY supplement it + with other mechanisms if the particular application + requires a different process. If no start zone can be discovered, resolution MUST fail and an error MUST be returned to the application. </t>