_publicNames container, like any of the other default containers available, is a private MD’s and their entries are meant to be encrypted. The purpose of these containers is to work as an index of what an user/account owns on the network, e.g. by keeping track of xornames of MD’s or ID’s created at random addresses on the network.
When you create a website, the public id is stored in the
_publicNames as the key of an entry which value is the services container address, as an encrypted entry. But the services container is the one that actually has the list of services mapping to websites, or email inbox, etc., and it’s stored as a public MD with the address calculated with
When you are fetching a website by its public id, let’s say
safe://my-service.my-pub-id, the browser (actually the
webFetch function in safe_app_nodejs) looks for the services container located at
sha3('my-pub-id') and it looks up for entry with key ‘my-service’ to be able to then fetch the website’s NFS container where the website’s files are stored. As you can see the
_publicNames container is not used at all, and as you realise it couldn’t be used as it’s encrypted.