線形合同法
短所
暗号論的擬似乱数生成器ではなく、そのまま暗号に使用してはならない。
線形合同法一般の欠点に、多次元で規則的に分布するという性質がある。線形合同法による乱数列r₀, r₁, r₂, r₃, ... から(r₀, r₁), (r₁, r₂), (r₂, r₃), ... のように順番に割り当ててプロットすると、それが疎になるのはしょうがないのだが（例として、全部で10000個しかない点を、10000x10000 の矩形にプロットすることになるのだから、稠密にはなりえない）、一定の間隔の平面上に点が並んでしまうのが問題である。印象的にこれを表現したフレーズに Random numbers fall mainly in the planes. （乱数は、主に平面（プレイン）に落ちる）というものがあり、「スペインの雨は主に平野（プレイン）に降る」（The rain in Spain stays mainly in the plain.）のパロディである。科学技術シミュレーションで3次元の点の位置などを生成する場合に問題となる。
下位ビットのランダム性が低い。Mの値によっては、最下位に近いビットはほとんどランダムでなく、完全に規則性を持っていることすらある。たとえばMが偶数の場合（コンピュータでの実装が楽であるために、Mに2の冪を採用した場合はこれに当たる）、最下位ビットは、同じものが出続けるか、0と1が交互にでるかのどちらかである。すなわち、偶数ばかりが出る、奇数ばかりが出る、偶数と奇数が交互に出る、のどれかになるということである（最大周期ならば偶数と奇数が交互に出る）。
大量に乱数列を消費する科学技術シミュレーションなどでは、周期の短さ（たとえば32ビットでは最大周期でも約40億）が問題になる。
プログラミング言語処理系に附属するライブラリの乱数列生成器（たとえばrand(3)やjava.util.Randomなど）が、線形合同法を利用している場合があるため、たとえばサイコロの目を生成する場合はrand() % 6 + 1としてはならない。前述のように周期2で偶数と奇数が循環するような場合、その規則性がそのまま顕れてしまう。rand() / (RAND_MAX / 6 + 1) + 1のようにすればランダムになる（注。このコードは考え方を示すものであり、厳密に1/6の確率になるものではない）。