GUID は 128 ビットの値であり、6 ビットは一定に保持されるため、合計 122 ビットを使用できます。これはハッシュへの入力であるため、アプリケーションには 2^512 の一意のハッシュはありません。これは、チェックするおおよそ 5.3*10^36 の値です。
攻撃者が 1 秒あたり 1,000,000 (10^6) ハッシュを計算できるとします (SHA-512 の妥当性はわかりませんが、このサイズでは、数桁はそれほど影響しません)。これは、スペースを確認するのに約 5.3*10^30 秒かかります (参考までに、これはすべての星が暗くなる時間をはるかに超えています)。また、数十億のクライアントを持っていない限り、誕生日の攻撃はおそらくこれから桁違いに多くのことを取り除くことはありません.
しかし、楽しみのために、攻撃者がチェックするハッシュの数を半分に減らす (または、チェックするスペースの削減と速度の向上の組み合わせ) ことを可能にする何らかのトリックを持っているとしましょう。あなたのGUIDジェネレーター、またはあなたが持っているもので。衝突が見つかるまでには、まだ 1 億年を優に超えています。
あなたは安全を超えており、やや行き過ぎの領域に入っていると思います。また、GUID をハッシュしても実際には何も行われないこと、および GUID はおそらく安全な乱数ジェネレーターを介して生成されないことに注意してください。実際には、プラットフォームが使用する安全な乱数ジェネレーターを介して 128 ビット (16 バイト) のランダム性を生成し、それを共有シークレットとして使用する方が少し良いでしょう。