Protocol://Domain.Subdomain/Path

If name/service/this/and/that can do the same, then it seems less important to me.
Although the ‘.’ instead of ‘/’ can be useful to indicate it is another website (other style etc…).

I got an idea, why not make URL a command?

It would start with anything the user desires or default to “safenet” then followed by a space the you enter anything imaginable!!!

If it uses chineese chars then if you don’t have chineese keyboard you just go to search the website and then bookmark it!!!

so that way is hackable (the user may substitute safenet with anything in his browser like s then space then the website name-“URL”)

So the default would be:
safenet google search
safenet google
safenet google uk
safenet google mail
safenet gmail
safenet google docs

So this differentiates from a search term in that a search term doesnt start with safenet or anything the user has set, that when a browser will have a default search engine

The thing then is who owns what?
Does one own Google and he can use Google docs or Google images?
Then how is one be able to have a website called Google is evil?

I will think further on my idea and come back later with results

Edit1: at least multiple spaces would be substituted by one space

edit2: as I look at it the safenet could be the root of all, then followed with the next “name” then next “name” and in that thought there should be many roots!

safenet (root of public addresses)
localnet (root of a possible local files that are present in your drive and you have securly and privately backedup on the safenetwork)
and maybe each language may have a root directory
grnet (greek root directory - so all greek websites are here or if your website supports greek all the user needs to do is “grnet google”)
esnet (spanish root directory - the same as with greek but when someone types “esnet google” he gets the spanish google)

edit3 the simplest that comes to mid is allow spaces but it acts like another website so “google/images” is something different from “google images” where in the first the webname is “google” and in the second the webname is “google images”

@JimCollinson, please, convince the rest of the team to implement this.

Subname ownership is currently defined like this: the owner of safe://A will also be the owner of safe://B.A but not the owner of safe://A.B. This is a legacy of domain system on internet, but it should be reversed on safenework to better express natural order of encapsulation where A contains B (like A/B in a directory path or A.B in a code program).

Examples to illustrate this (from @Traktion in shared vault POC, sorry to mention you):

  • You have created safe://lazydog to point to a nice dog image but afterwards I could create safe://lazydog.jpeg. This is not normal because by creating safe://lazydog you could have expected to be the only possible owner of all possible derivatives of lazydog.

  • Worse: by creating safe://lazydog.jpeg I am now the sole owner of all possible jpeg images, nobody else can create an url with the format safe://*.jpeg (trying create nrs generates an error stating “NRS name already exists. Please use ‘nrs add’ command to add sub names to it”, but only me can issue nrs add command)

  • Honestly, when you created safe://traktion.wallet what was your expectation: to own every wallet or to own everything related to traktion? I suppose you expected the latter, but this command does the former.

Clearly, reversing the order would be more logical.

8 Likes

Not necessarily. It’s the difference between top-down vs. bottom-up organization.
It depends on one’s point of view and whether we want a “safe://service.style” paradigm or a “safe://owner.owned” paradigm. I happen to like the “safe://service.style” paradigm that is currently being used.

Honestly, I just bashed in a name without giving it much thought - the dot was just a handy separator! :slight_smile: I was just messing about and not thinking about hierarchies at all.

I actually thought that there wasn’t a concept of top level domains as such previously. There were ‘services’ which looked like subdomains, but that was it? Maybe in have this wrong though?

If I held safe://lazydog, I would expect to be able to own safe://blog.lazydog or safe://wallet.lazydog, much like the service concept.

I would caution against switching the order of precedence, just because it will confuse people and could cause bugs in ported software.

I would also suggest current top level DNS domains are reserved in some way, as it could cause issues with a cyber squatter impersonating clear net sites. E.g. if I register safe://com, then I would have freedom to register safe://google.com.

1 Like

I think we also need to remember why DNS has sub domains at all - it is a way carving up the name space to allow the infrastructure to scale. This quora answer is pretty decent: https://www.quora.com/Why-do-we-need-top-level-domain

For SAFENetwork we don’t have either the technical or administrative limitations. There is no hierarchy of DNS servers to scale out. Indeed, there are no DNS servers at all, nor a need to administer changes upon them. Instead, it is a integrated system, which is highly self manageable out of the box.

So, the question is, do we still need subdomains, given the technical/administrative burden to justify them is not present? IMO, it comes down to user experience expectations.

If there is no hierarchy or special separators, then they just become names in a flat namespace. Whether people choose lazydog.wallet or wallet.lazydog then just becomes a preference of the creator and would have no impact on anyone else.

Furthermore, given you can address any resource with a name, rather than just an IP address, it is far more flexible. I could give each file a new NRS name, should I desire it. You could conceivably create a website using no naming hierarchy at all, not in the NRS name, nor the path associated with it.

Is a hierarchy just a relic from clear net, which should be discarded?

EDIT: To counter my own point, I do think people have been educated to trust sub-domains as being associated with the parent domain. Wildcard SSL certs, for example, re-enforce this trusted relationship. Obviously, SSL certs are not used/needed on SAFENetwork (as MITM attacks are not possible on a functioning network), but the emphasis then shifts to who can create sub-domains.

3 Likes

Maidsafe has specified and implemented a NRS with a hierarchy based on the dot separator in public names and I am not questioning this.

In this context, I am just arguing that the chosen order of a public name sub elements is not the right one.

Reversing the order would allow this.

Domain.subdomain is less prone to phishing attacks. Another good reason to have this on the SAFE Network.

2 Likes

Well, I suppose the dot delimiter could just be ignored by the user and then it doesn’t do anything at all.

E.g, safe://lazydog-wallet or safe://wallet-lazydog.

2 Likes

Surely it just means fishing attacks will reverse their ordering too?

yes, but I only have to check the first part now. Much easier and less error prone. Maybe it’s another story in the arabic world. No idea how it works there

2 Likes

If I would start from scratch I would be consistent and do everything from left to right, so Protocol://Domain.Subdomain/Path (with Path e.g. Adam/Cain/Enoch/…/Draw), or like in Arabic I assume everything from right to left.
So that would be
ʜɈɒԳ\niɒmobdυƧ.niɒmoႧ\\:loɔoɈoɿԳ
Or
htaP/niamodbuS.niamoD//:locotorP

But we’re not starting completely from scratch here, so I’m not sure. Things can change however. From here:

Traditionally Chinese text was written in vertical columns which were read from top to bottom, right-to-left; the first column being on the right side of the page, and the last column on the left.

and

In modern times, the familiar Western layout, left-to-right horizontal Chinese, has become more popular.

1 Like

Just to throw these valid NRS URLs into the debate:

safe://wallet@lazydog
safe://lazydog#wallet

There is lots of flexibility with the naming, for sure.

1 Like

It’s an interesting question, why was this ordering chosen in the first place? It could have been the other way around.

4 Likes

why are domain names reversely ordered?'-thread on Ycombinator news forum.

And from the following interview with Tim Berners-Lee:

I would have skipped on the double slash - there’s no need for it. Also I would have put the domain name in the reverse order - in order of size so, for example, the BCS address would read: http:/uk.org.bcs/members. The last two terms of this example could both be servers if necessary.

5 Likes

Logically, going from broadest to narrowest would seem ideal. However, how often is the path quoted? In adverts, it’s ‘go to blah.com’ and ‘blah’ being first gets maximum impact. Reversing the order would also be a bit like calling someone by their surname, then first name.

5 Likes

Currently we have an extra bit that’s not needed - the TLD - without that I think the revised ordering makes even more sense.

2 Likes

True - Google maps would be better as safe://google.maps than safe://maps.google.

Still, safe://google-maps also works currently.

2 Likes

Are you sure about that?

IMO it is preferable to think of the safe network as a world computer with different services, and each service has a different provider or style governed by the owner of the public id. In your example above, maps are the service. There can be many service providers, so taking an example from oldnet you could have :

  • safe://maps.google
  • safe://maps.yahoo
  • safe://maps.nasa
  • safe://maps.traction
  • safe://maps.happybeing

A user looks for some maps, then they pick a provider or endpoint. The same could be said for any other thing. Such as safe://cats.traction or safe://dogs.traction or safe://wallet.traction etc.

A good example for this type of top down design scheme is in the Filesystem Hierarchy Standard. It works well and provides a logical easy to navigate structure. In the past I’ve considered working on the writeup of a “SAFE Hierarchy Standard” along the same lines but haven’t had the time.

When you think of it from this perspective of navigating the directory structure for a unified world computer the URL’s left to right consistency is also maintained and logically consistent, ie.

safe://service.provider/path

The safe://wallet.everyone aspect is specifically pertinent.

EDIT: There are other interesting possibilities as well with regard to having a built in directory listing. For example, If someone navigates to safe://traction, there could be a list of all services you provide. Likewise if someone navigates to safe://maps, there would be a list of all providers of this service. This also fixes much of the domain name squatting issues if the vast majority of existing words are designated as services.

3 Likes

Yes NAME.Sub is best if we are to have “.” at all a separator. I would argue to not have “.” as a separator, but that a discussion for elsewhere I’d say

No its like saying go to walmart, then goto hardware, then goto tools then goto …

Just like giving directions.

Agreed.

I would say safe://google/maps
or
safe://googlemaps

4 Likes