I am reading “Mastering Bitcoin” by Andreas Antonopoulos. In the transactions section, the locking script for normal account(single address) is
OP_DUP OP_HASH160 <Cafe Public Key Hash> OP_EQUALVERIFY OP_CHECKSIG
Which I’m sure that
<Cafe Public Key Hash> is the address of the recipient. But the locking script for multsig account is,
2 <Public Key A> <Public Key B> <Public Key C> 3 CHECKMULTISIG
My question is that why does the locking script for multsig address contain their public keys instead of PubKeyHashes(addresses)? And also isn’t it dangerous for the receiving party(multsig owners) to reveal their public keys to senders..Long shot but if ECDSA breaks, they can’t be secure with SHA256 and RIPEMD160 right?