Random number generator protocol and implementations
