Portability -- should give the same results on different computers.
Efficiency -- should be fast (small number of floating point operations) and not use much memory.
Disjoint subsequences -- different seeds should produce long independent (disjoint) subsequences so that there are no correlations between simulations with different initial seeds.
Homogeneity -- sequences of all bits should be random.