We determine a system IND-CPA secure when an adversary has a negligible advantage after any feasible amount of queries.
AES256-GCM uses a 128bit block cipher.
We know that the distinguishability from random of counter mode encryption follows the birthday bound.
If we encrypt a stream of static data, with counter mode encryption we will never see a repeated cipher text block.
A purely random oracle will have repeats. The probability of this happening follows the birthday bound, eg after $2^{64}$ blocks we expect a repeat with probability of about a half. This would give an attacker an advantage of one half with $2^{64}$ queries, which is completely insecure.
If we assume a negligible advantage of $10^{-9}$, we reach that after about $2^{54}$ blocks. This means we should limit the maximum amount of blocks encrypted under a single key to $2^{54}$ blocks right?
This is way less than the advertised $2^{32}$ invocations of $2^{32}$ block chunks in NIST SP 800-38D.
Why don’t we see any recommendations of limiting the use of AES256-GCM dependent on its security parameter due to this attack on the counter mode encryption?