Multiple hidden services can share a pk_digest/service_id.

This may be a duplicate, it's past my bed time, so I don't have time to check.

The current rendservice code's duplication check doesn't enforce uniqueness of pk_digest and service_id. It probably should do so for both things, since I can't think of a reason why this would ever be well defined, or desirable behavior.

The trivial fix would be to add a pair of checks to rendservice.c:rend_service_load_keys(s), that log on LD_CONFIG, and return an error if a collision is detected.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information