当我们使用 Anchor cli 在 Solana 上进行程序部署时,它将读取target/deploy/<program>-keypair.json
处生成的 key 对。并用它来签署初始部署的指令。
如果我理解正确的话,根据create_account
指令:https://docs.rs/solana-program/latest/solana_program/system_instruction/fn.create_account.html
该程序 key 对用于对程序帐户进行签名,以证明您确实是该程序ID的所有者。
但是,在初次部署之后,似乎之后的所有操作都是类似 SetAuthority
Upgrade
Close
不再需要程序 key 对,只需要UpgradeAuthority
的 key 对.
那么我是否可以将程序 key 对视为一次性使用 key 对,并且可以在初始部署后丢弃?或者除了最初的程序部署之外它还有其他目的吗?
谢谢!
最佳答案
目前,除了初始部署之外,程序部署 key 对没有任何用处。但是,将其存储在某处仍然很有用,因为您需要将其部署到任何其他集群(例如 Testnet)或基于 SVM 的网络(例如 Eclipse)。
关于solana - 程序 key 对除了程序部署之外还有其他用途吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/77550799/