How can service IDs be guaranteed unique?
There are two prescribed ways to generate a service ID; they are differentiated by a four-bit field in the 128-bit service ID which identifies which of the two methods generated that ID.
The first method, version 0x4, simply uses a cryptographically strong psuedo-random number as the service ID. The algorithm is not specified. Uniqueness is guaranteed only by chance - a well-designed implementation will likely include timestamp and service name information in the seed, thus making it unlikely that two different services are assigned the same service ID.