ID:134280
 
I think it'd be quite nifty if we could actually use hublib to attach new worlds to an authenticated hub entry of which the world is attached to, and even possibly detach worlds from an authenticated hub entry. Another variable might need to be introduced, possibly world.management_password to prevent malicious users from possibly getting a hold of hub_password and altering it all. It'd require world.management_password AND world.hub_password, just for security purposes.

Scenario:

World: W
Player: P
Central Server: C

C has world.hub_password AND world.management_password. W is registered with C by P. Then, the only way W is accessible is through C, even though C's only purpose might be to ensure proper authentication of W.

What I'm asking for is that C, with world.hub_password and world.management_password, would be able to attach or detach W from the hub entry, thus making it easier for a scheme like this to work.
If W can only be accessed through C, why do you want W to appear on the hub entry?
In response to Crispy
Crispy wrote:
If W can only be accessed through C, why do you want W to appear on the hub entry?

Because the fact that W could only be accessed through C would be the primary flaw in the whole design. C needs not serve any purpose but to properly authenticate W (in case the hub password is compromised), and attach it to the hub entry.
In response to Audeuro
Right...

Doesn't sound very useful to me, especially not considering the extra complexity and development time that would be required. If you don't want your hub password compromised, then don't give it out.
In response to Crispy
Crispy wrote:
Right...

Doesn't sound very useful to me, especially not considering the extra complexity and development time that would be required. If you don't want your hub password compromised, then don't give it out.

Yeah...I don't give that type of stuff out. I might just be paranoid, but I believe that as long as it's transferred from the world to the hub, it can be compromised by someone dedicated enough. With this method, it'd be impossible for them to compromise the hub in any way, due to the fact that (and I didn't mention this) they'd need the hub_password and the management_password just to connect to the hub entry, unless they've been attached to the hub by an entry with the aforementioned variables.
In response to Audeuro
Audeuro wrote:
I might just be paranoid, but I believe that as long as it's transferred from the world to the hub, it can be compromised by someone dedicated enough.

You're indeed too paranoid. If such a thing would ever occur, the attacker would be punished by BYOND Staff for breaking their hub protocols.
And in the case that you want multiple worlds controlled by a single central server as I just recently read:

world/Topic(T,Addr)
if(Addr!="central_server_address") return ..()
var/savefile/F=world.Import()
if(F)
if(F["cmd"]=="hub_password")
hub_password=F["data"]

...

if(server.authorized.is.not.an.illegal.server.at.all==47)
var/savefile/F=new
F["cmd"]<<"hub_password"
F["data"]<<world.hub_password
world.Export(server,F)


Something like this?