That’s exactly I am working on right now. I’m learning Rust, so I could fork the DNS system(that’s why I asked in dev thread, what happened to DNS folder), then switch to “NO DNS / Pet name system.” I do not like the maidsafe version DNS model at all. This DNS will automatically create random generated ID. Then it provide an id config file, which would contain omniname, just like steam usernames. interchangeability. Each config will hold specific information on which user could access to which files, and such.
[id]
rootname = 294792389797
omniname = grizmoblust
[whitelist]
user1 = 078977823423409
The first thing when you click on his profile, is to look at his config. Some of his profile will open up for certain people with black/white list.
I think this is much better approach than what we have right now.
Not only that, when you access to his profile, it is like looking at his file system. One could look through his files, and folders (with permission, obviously). It then becomes a personalized NFS system. This will push towards less junk websites, and push towards social content system.
Each random generated ID includes email ID.
Edited: This is what I wrote on my RFC few weeks back which is obviously not done. A lot of errors, and such but let me know…
What is wrong with safenet Official DNS system?
Official dns system allows apps to control the users contents.
Whereas, no dns proposal will change the way app functions, that is users are control of the apps and it’s contents.
This also could lead to hypervision system where you can run OS inside of safenet. Your personal hypervisor system.
787986124987/boot/
787986124987/bin/
787986124987/etc/
787986124987/var/
787986124987/users/name1/docs/
You may be willing to share your hypervisor to others. Or perhaps have a join accounts. Two constent rootname signed into one rootname. Thus creating an joint, organization, business, etc. Each changes requires approval from each joint account that is signed, matching [keys] list.
The key list is your “contracts” dealing system. Once pubkey is signed, next script would pop up, to create new contract with functionalities, change, or fork.
The best part about this is that you can send him a message wtih that ID. You don’t have to generate another ID. Simply send to 787986124987. This will generate a new SD system, a put that is spend by the user. Then it would be saved into logs folder.
787986124987/vars/logs/safemail/userrootid/date.log
To control the users on your own rootname system. You need something exactly like sudo functionality. Perhaps, make it more simpiler format. It would take from key folder, and put into function algorithm to decide how users save and maniplate the files.
#[keys(/keys)]
List of public keys
publickey1 → only can modify 787986124987/docs/
Now organization can actually give users place to save their files only inside of that organization. Meaning that organizations are WILLING to pay storage, so that users can save stuff which cannot be shared outside of the organization. You are logged into their rootname/users/name1… from your pubkey.
publickey1 → only can modify 787986124987/users/name1/
787986124000/users/name1/docs
To return to the original point of web of trust. When we enter a rootname, it doesn’t do anything but show his ID. In that vcard would have stamps of approval from organizations, and individuals. Again, it doesn’t have too. It’s part of building web of trust with competiting organizations stating that he is either this or that. We need more honest people and to do that is to create micro dns competing field. Each micro dns contains reviews of each rootname. When you random click a link in the network, the micro dns would give an expression; safe, netural, dangerous, or unknown.
MicroDNS is a public SD controlled by a man, or organization. The first column is list of the official rootname directory. Second column is how people like to be named.
Keys are stored in .toml format. We need to extract the pubkey, and put into function that would make a determination to pass or not.
Now I would build a script in rocket-rust
#[docs(/docs)]
let key in keylist { //this is accessing to 787986124987/keys/
if pkey == accept
then show this…
else = break; // blocks access
}
How you want to name him is your “nickname” convention. This is saved in your private folder.
787986124987/contacts
Reviews
How to add reviews is quite simple.
Each mutable data would contain users commenting about him, and how trusted he is. It is infact indeed public. Saved under 787986124987/reviews. But of course, that requires rootname to allow people add comment in MD reviews.
What if user ID doesn’t accept reviews? That’s where you fall back to micro dns organization of choice, and write a review about this particular rootname.
But what if you want to have multiple “characters” without ties to rootname. Like Master Cheif, don’t you want to review him, instead of the actor itself? But what if there are 10 other master chiefs? See the problem here? How can you give actor an review about that paritcular character?
787986124987/users/mastercheif.obj
Okay, you saved masterchief.obj, and when you play garrys mod, disguise as masterchief, people are awed by your 3d artwork, and how well it act… They decide to review it.
users would have to be allow to write in that particular folder. Keys are good for signatures. But it isn’t needed since it’ll be in public. However, you want to prevent them from accessing users.
chmod 0700 787986124987/users/mastercheif/reviews
787986124987/users/mastercheif/reviews
But this would be annoying to get to DNS and review system. So to build a better system is to UI that does not require to use URL! Crazy but it’s doable. The function is to recursive through the folders, and take the names, and then prop to new screen. However, what about multiple items reviews under one business?
787986124987/shop/products/item1/reviews
As you see, it is very versible. It is just matter of saving where and why. And to do that, you need give users more control on where it should be saved.
If you design a game, and want to share to the world, it would work exactly in a way app would be installed on the machine.
787986124987/games/halo/
Now we got a highly complex system that gives users control of their own security files.
What about git, and source files?
That is a highly complex system to get into. Say, if you want build a more hackable system for users, such as zeronet, dat, and Beaker Browser, then how can we make it better? Well forkable system is quite easy with git. But the problem is spending money, to recieve all files, and change one slight file. Well one way is to fork that file, and make the app point to that file instead of personal user file. Oh boy getting too complex here.
787986124987/apps/halo/git/cra77s
787986124000/apps/halo/git/crb77s
Inside in that file,
doessomething() = linkto.(787986124000/apps/halo/git/cra77s))
Now you able to run that user app, with extention of your file. Everthing goes accordingly to your plan.
But why should we save our apps on our own system, where we should put into game.library/halo? Or
Well you can do that too. But the point is here is about giving users more options on the table to control the data flow. If you build it yourself, then you can place it in your own folder, and share to the world. TThat means you gain karma, and showed the world that you are skillful to build a game. Instead to realize that organization doesn’t invent things, individuals do! Invididual matters. But organization is jut group of people working together.
Even more sane system, to keep it modular, each rootname could be an app itself, nothing else.
787986124000/git/
787986124000/src/
As you can see, we don’t actually NEED safe: //name.name when one could be enough, competing micro dns system will be build on top of that. Game Indexing DNS. App Indexing DNS. Think of the possibilies here with this approach. And of course, you’ll get malware but that’s wild west. Wild west is the best, because it competes. With safe, wild west is much more SAFE!