In Ethereum, the contract address/account isn't formed trivially from a cryptographically-generated private-public key pair, but rather by using a separate method, as described here.
In Substrate, similar to this, a pallet-account is formed from inside the runtime by passing a PalletId (a unique identifier assigned to the pallet) to the into_account() function instead of passing a random seed as is done for normal account formation.
For example: T::PalletId::get().into_account()
My question now is, how can we be sure that the account address won't be replicated by anyone else/ other pallets in the chain?
AccountId
of a Pallet and then steal the Pallets' funds?