[BUGFIX] Check cHash in TSFE only if necessary

Sometimes a cHash URL parameter is passed to the Frontend but
there are no other variables to use for cHash calculation. This
may happen, for example, if TS incorrectly uses typoLink with
useCacheHash=1 but without additionalParams or if additionalParams
are set from the current query string. Also external sources
may call the URL with a cHash parameter set to random value and
cause the same bad effect. The result is extra cache
entries, unneeded flooding of core and RealURL caches,
useless checks.

Resolves: #41033
Releases: 6.1, 6.0, 4.7, 4.6, 4.5