
能理解题主的困惑。其实这个锅得要普通话混乱的正音来背。“药”,“钥”,“跃”这三个字是同音字。按照韵书推导出来的读音应该是“yuè”。也就是说北京方言中这三个字的文读音,也就是正式书面语的发音,应该是“yuè”。但是,北京方言中很多字是有白读音的,也就是日常口语词汇的读音。这三个字的白读音应该是“yào”。在实际语言使用中,因为“药” 和 “钥匙” 常用,所以多读作白读音;“跃”不常用,只出现在书面词汇中,所以多读作文读音。和这三个字的文读白读相关的另几个字:“学”,“觉”,“约”,“削”,“雀”,其文读音分别是“xué”,“jué”,“yuē”,“xuē”,“què”,白读音是“xiáo”,“jiǎo”,“yāo”,“xiāo”,“qiǎo”。
普通话正音时很没原则地完全遵循北京话中的常见读音,而忽视普通话作为汉族通用语的系统性和传承性。导致本来同音的字变成不同音,且很多字文读白读并存,有时让人摸不着头脑。我觉得虽然普通话脱胎于北京方言,但既然普通话是要作为全国通用语的,就不能再完全遵循北京话的读音了,白读文读的区分完全没有必要保留,要么就全部采用白读音,要么全部采用文读音(个人还是倾向于采用文读音,因为毕竟普通话是正式场合使用的语言)。
回到题主的问题。假设遵循北京话的文白读规律,“公钥”中的“钥”应该读“yuè”,但是“钥匙”中的“钥”还是应该读“yào”。因为“钥匙”是生活词汇,应该用白读,“公钥”是纯粹的书面学术词汇,应该用文读。譬如,我们说“把这花生壳剥bāo开”,“把苹果皮削xiāo了”,但不能说“资本家剥bāo削xiāo劳动人民”,而是“资本家剥bō削xuē劳动人民”。
