Is default hash of Animator state names fixed for a given controller?

I can’t seem to find a way to find the string representation of the current animator state. This creates a complication for networked games – if I communicate the state of a given animator to another networked client – using a proprietary network connection – how do I know that it is always safe to send the hash to represent the same state to two different clients that are running the game?

Or is it the hash value guaranteed?

Hash values are deterministic so the same string will always generate the same hash. As long as Unity doesn’t change the hash implementation across platforms you should be fine, it would be very strange if they did. So you should be fine. Anyway its much more efficient to send the hash than the string over the network in terms of length and its slightly more secure.