I have stream of millions of short n-bit (n<30) messages generated by some random number generator. The source of random number generator is not available to me.
I suspect there are messages used to convey information generated by some third parties and injected into the stream. I what to test the hypothesis of such messages existing.
As far as I understand, the injecting of such messages would lead to the existence of at least two different sources of randomness: the one from original random number generator and the rest from encryption algorithms used by third parties. So testing my hypothesis is equivalent to detecting those modes.
My knowledge of random number generation is very limited and I would appreciate all kind of hints, pointers, ideas and references to the relevant literature.
Adding twist on this question. Suppose I control the PNRG of the source (source sending only random messages without payload). Third party wants to hide their messages in my stream.
The new questions:
- Can I identify those messages injected if PRNG of the source (algorithm) in given to me?
- Can I choose or modify PRNG in such way to allow injected messages to be identified?
- Can third party identify the PRNG of the stream being modified in such way to allow for easy detection of non-source originating messages?