moname — query and manage names on the Moera naming server
moname [--dev | --server SERVER] [--created] [--keys | --all-keys] [--similar] [--at AT] <name>
moname --list [--dev | --server SERVER] [--created] [--at AT] [--newer NEWER] [--ignore-case] [<name>]
moname --add [--dev | --server SERVER] <name> <uri>
moname --update [--dev | --server SERVER] [--uri URI] [--signing-key] [--updating-key] <name>
moname --help
moname --version
The names are given in the form <name>_<generation> (for example lamed_0),
where <name> is the name itself and <generation> is the number that
differentiate between usages of the same name — for example, different social
networks. If the generation is missing, generation 0 is used by default.
-h, --helpGet the list of all available options, their meaning and their short and long forms.
-V, --versionShow the program’s version number and exit.
<name>Check a name and get a corresponding node URL.
$ moname lamed
lamed_0 https://lamed.moera.blog/moera
-c, --createdSee the creation date/time of the name.
$ moname -c lamed
2019-12-17 02:13:26 lamed_0 https://lamed.moera.blog/moera
-d, --dev-s SERVER, --server SERVERUse the development naming server or any other naming server.
$ moname -d balu-dev
...
$ moname -s http://localhost.localdomain:8081/moera-naming balu-dev
...
-S, --similarTry to find a similar name if the provided one is not found.
$ moname -S Lamed
lamed_0 https://lamed.moera.blog/moera
-k, --keysSee the detailed information about the name, including the keys.
$ moname -k moera-blog
name : moera-blog
generation : 0
node URI : https://blog.moera.org/moera
digest : b42b9ba69e7e58bba1c2606bafb86eaac8683c6bc3784a3bf20e59c9f8ce2a0e
updating key : 1894f11410389a0dc0d37a5b3f8f9b993e5e8da61f38d818cce4f662d1d5ad4728441134dfb660a28155520bf79beae07e95763e52ce9c5d3597e793c8f89737
created : 2019-09-22 02:49:15
signing key : 3d6dd81295985291c4727fdbcbacba3349f18876578d633dbff1956364269cab5f3fe4da30f60896d2327ca60df64d54adb154ca34320d2c0ece96f0ccc2bf9c
valid from : 2020-08-28 03:22:09
-t AT, --at ATSee the information valid at some moment in the past.
$ moname -k -t '2019-10-09' moera-blog
name : moera-blog
generation : 0
node URI : https://blog.moera.org/moera
digest : b42b9ba69e7e58bba1c2606bafb86eaac8683c6bc3784a3bf20e59c9f8ce2a0e
updating key : 1894f11410389a0dc0d37a5b3f8f9b993e5e8da61f38d818cce4f662d1d5ad4728441134dfb660a28155520bf79beae07e95763e52ce9c5d3597e793c8f89737
created : 2019-09-22 02:49:15
signing key : d2b7f5a2c7578c1ed6a9048f5f9efdd98e7d1955769a926d26bf3210668992a3ff34092755e8b0d8f3da8fc22246d32187b6656e87f675c3fe894258c9248c8e
valid from : 2019-09-22 03:48:18
-K, --all-keysSee the whole history of the keys.
$ moname -K moera-blog
name : moera-blog
generation : 0
node URI : https://blog.moera.org/moera
digest : b42b9ba69e7e58bba1c2606bafb86eaac8683c6bc3784a3bf20e59c9f8ce2a0e
updating key : 1894f11410389a0dc0d37a5b3f8f9b993e5e8da61f38d818cce4f662d1d5ad4728441134dfb660a28155520bf79beae07e95763e52ce9c5d3597e793c8f89737
created : 2019-09-22 02:49:15
signing key : 3d6dd81295985291c4727fdbcbacba3349f18876578d633dbff1956364269cab5f3fe4da30f60896d2327ca60df64d54adb154ca34320d2c0ece96f0ccc2bf9c
valid from : 2020-08-28 03:22:09
signing key : d2b7f5a2c7578c1ed6a9048f5f9efdd98e7d1955769a926d26bf3210668992a3ff34092755e8b0d8f3da8fc22246d32187b6656e87f675c3fe894258c9248c8e
valid from : 2019-09-22 03:48:18
-l, --listGet a list of all names registered on the server (it may be huge!).
$ moname -l|head
4ap-4aps_0 https://4ap-4aps.moera.blog/moera
abrasha_0 https://abrasha.moera.blog/moera
abu-chucha_0 https://abu-chucha.moera.blog/moera
achernitsky_0 https://achernitsky.moera.blog/moera
a-dev_0 http://a-dev.localhost.localdomain:8082/moera
Aelita_0 https://aelita.moera.blog/moera
Agropoliv_0 https://agropoliv.moera.blog/moera
Akeon_0 https://akeon.moera.blog/moera
akog_0 https://akog.moera.blog/moera
akovalenko_0 https://akovalenko.moera.blog/moera
<name>Show only entries whose names start with the given prefix. If a generation
suffix is omitted, entries from every generation are included. If the suffix
is present, only that generation is included. For example, al matches
alice_0, alice_2, alex_0, and alla_5, while al_0 matches only
alice_0 and alex_0.
Filtering is performed by the client. moname still downloads every page of
the complete, potentially huge list from the naming server and filters only
what it prints. Supplying <name> therefore does not reduce network traffic or
the time needed to retrieve the list.
-i, --ignore-caseIgnore letter case when comparing the <name> prefix. Without this option,
prefix matching is case-sensitive.
-c, --createdPrepend the creation date/time to every name in the list when it is available.
-t AT, --at ATGet the list as it was at some moment in the past.
$ moname -l -t '2019-12-01'
alice-dev_0 http://alice.localhost.localdomain:8082/moera
balu-dev_0 http://balu.localhost.localdomain:8082/moera
moera-blog_0 https://blog.moera.org/moera
-w NEWER, --newer NEWERGet the list of names registered recently.
If --newer and --at are both specified, --newer takes precedence and
--at has no effect.
$ moname -l -w '2023-08-04'
achernitsky_0 https://achernitsky.moera.blog/moera
Amitaykrichevsky_0 https://amitaykrichevsky.moera.blog/moera
IrinaVulf_0 https://irinavulf.moera.blog/moera
mendel_0 https://mendel.moera.blog/moera
thickstone_0 https://thickstone.moera.blog/moera
Леямеламуд_0 https://leyamelamud.moera.blog/moera
Олексій_0 https://alexeyvk.moera.blog/moera
-a, --add <name> <uri>Add a new name to the naming server and set its node URI to <uri>.
The updating and signing keys are generated automatically. Save both outputs:
the 24 secret words are required for future updates, and the raw private signing
key is needed by the node that will use the name. Keep the private signing key
secret. The corresponding public signing key becomes valid approximately ten
minutes after the request is made.
$ moname -da moname-sample https://moname.moera.social/moera
Request sent, waiting for the operation to complete...
Secret words:
1. sauce
2. ordinary
3. force
4. mix
5. meadow
6. hockey
7. cook
8. maple
9. swear
10. dinner
11. hint
12. settle
13. wheat
14. fabric
15. sleep
16. memory
17. radio
18. collect
19. much
20. eager
21. adult
22. bleak
23. cash
24. innocent
Signing key: af0eee5798fabc78332d945ab0b001ad60409c1343ed34edf927d1b0d1cdb498
Status messages and the Secret words: and Signing key: labels are printed
only when standard output is a terminal. When output is redirected, the
numbered mnemonic and the raw private signing key are printed without those
labels.
-u, --update <name>Update the given name on the naming server. Without any other options, this command does not change anything (can be used to verify the secret words). The secret words should be passed to the standard input. It is allowed to pass them exactly how they are printed, with each word prepended with its number. These numbers are ignored.
The command always reads the current 24 secret words from standard input, even if you only change the URI or rotate keys.
The Enter 24 secret words: prompt is printed only when standard input is a
terminal. The operation status and the Secret words: and Signing key:
labels are printed only when standard output is a terminal. When output is
redirected, a newly generated mnemonic remains numbered, while a generated
raw private signing key is printed without a label.
-U, --uri URISet a new node URI.
-g, --signing-keyGenerate a new signing key and print its raw private value after the update completes. Keep this value secret. The corresponding public signing key becomes valid approximately ten minutes after the request is made.
-G, --updating-keyGenerate a new updating key and print the new 24 secret words after the update completes.
-g and -G may be used together. In that case the command prints both the
new secret words and the new signing key.