---
# System prepended metadata

title: Nom - Name Registry DNA Questions
tags: [Technical Specification]

---

# Nom - Name Registry DNA Questions

###### tags: `Technical Specification`

## Questions
- **[Question]** Is there any indicator of network health that can aid individuals in buying names/coupons?
- **[Question]:** What are the grace periods (period before another person can buy an expired name) for the following
    - NameRegistration
    - Global Name (this might be retired)
    - Namespace
- **[Question]**: once it expires, can other people get the same global name or is it retired? (meaning no one can get it anymore)
- **[Question]**: If retired, can the same person revive the name by renewing it?
- **[Question]**: does global name renew every 3 years?
- **[Question]**: Do we sell global name every x (i.e. 3) years??
- **[Question]** In Nametypes/GlobalNameType, what is the regex for names?
- **[Question]** From Pablo
    - What's the final character set available for the names?
    - Do we differentiate between small and big caps for letters?
    - Where's the hash coming from? (currently I just downloaded a js script that generates a SHA256  hash).


Roles
- agent who got the portable proof (coupon) from the central website 
- maintainers pattern with categories of permission
- people who could assign/change the vectors of roles

1. add agent connection to a registered name in a dna space (global name) (same thing as 2 but in global context)
    - This will also meet the need to maintain
3. associate client happ agent pub key to the registered local name in the nomdeent DNA thorugh the portable proof (coupon)
4. roles enforcement to have categories of permission through nomdenet consensus for a non-agent-handle-or-username registered name
5. register non-username names as a different entry that accomodates roles functionality. 
    - a space for different categories of permissions

### TODOs
- [ ] who gets to update or create name type?
    - [ ] What if a bad actor puts in old Namespace entryhash? how do we know the agent is putting in the "latest" name space entry hash it can get when he updates or create name type entry?


## Documentation Requirements
 - For the Client Happs

## CA Payment Portal

- **[Question][Signing]** If the ED25519 signing keypair is generated in the payment portal backend (JS Crypto library),
    - where do we store the public key in the Rival/Namespace app for verification purposes?
        - thinking about placing it in the DNA properties
    - Is it ok to store the private key in the hosted server (does not touch frontend) of the payment portal? Will this raise any security concern?
        - centrally managed system
        - a leaked/compromised private key might invalidate all coupons
    - are the algorithms for signing and verifying identical between the platforms?
        - can signatures signed with keys generated outside holochain be verified in HDK verify signature API? 
        - will be testing this
    - HDK's verify_signature takes in the AgentPubKey as the verifying signature
        - can we convert a [u8; 32] ed25519 pubkey into an AgentPubKey
            - HoloHash needs prefix bytes (can be added) and [dht] location bytes (can't be added???)
        - can we take a private key from holochain to be used as a signing key outside of holochain?
