KAD(KademliaChain)账户
一个KAD(KademliaChain)帐户是一个具有KAD(KademliaChain)余额的实体,可以在KAD(KademliaChain)上发送交易。 帐户可以由用户控制,也可以作为智能合约部署。
帐户类型
以太坊有两种帐户类型:
外部所有的帐户 (EOA) – 由任何拥有私钥的人控制
合约帐户 – 部署到网络上的智能合约,由代码控制。
这两种帐户类型都能:
接收、持有和发送 KAD 和 token
与已部署的智能合约进行交互
主要区别
外部持有
创建帐户是免费的
可以发起交易
外部所有的帐户之间只能进行以太币和代币交易
由一对加密密钥组成:控制帐户活动的公钥和私钥
合约
创建合约存在成本,因为需要使用网络存储空间
在收到交易时发送交易
从外部帐户向合约帐户发起的交易能触发可执行多种操作的代码,例如转移代币甚至创建新合约
合约帐户没有私钥。 相反,它们由智能合约代码逻辑控制
帐户创建
当你想要创建一个帐户时,大多数库将生成一个随机的私钥。
私钥由 64 个十六进制字符组成,可以用密码加密保存。
例如:
fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd036415f
使用椭圆曲线数字签名算法(opens in a new tab)从私钥生成公钥。 通过获取公钥 Keccak-256 哈希的最后 20 个字节并校验码前面添加 0x
,可以为帐户获取公共地址。
下面的示例显示如何使用一种名为 Clef(opens in a new tab) 的签名工具生成一个新帐户。 Clef 是一个集成在以太坊客户端 Geth(opens in a new tab) 中的账户管理和签名工具。 clef newaccount
命令创建一个新的密钥对并保存在加密的密钥库中。
可以通过你的私钥获取公钥,但你不能通过公钥获取私钥。 这意味着保持私人密钥的安全至关重要,如同名称所建议的 PRIVATE。
你需要一个私钥来签署消息和交易并输出签名。 然后其他人可以使用签名获取你的公钥,证明信息的作者。 在你的应用程序中,可以使用 javascript 库向网络发送交易。
Last updated