Solana 使用 PrivateKey 导入钱包
我正在创建一个应用程序,具有使用关键字和私钥导入以太坊链钱包和 solana 钱包的功能。
对于以太坊链,我使用输入的私钥成功导入了钱包。我想为 Solana 做同样的事情。我正在使用 https://github.com/ajamaica/Solana.kt 创建 Solana 钱包地址此代码的 Account.kt 类,还使用它签署交易和发送令牌。任何人都可以帮忙是否有任何方法使用 PrivateKey 导入 Solana 钱包?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
在
Account.kt
类的默认构造函数中,它会生成一个新的密钥对供您使用。如果要导入现有密钥对,可以使用任何其他构造函数,例如:constructor(secretKey: ByteArray)
:https://github.com/ajamaica/Solana.kt/blob/1a79932e67e698f2dba5f347fb74dd47d702f8fb/solana/src/main/java/com/solana/core/Account.kt#L29fromJson(json :字符串)
:https://github.com/ajamaica/Solana.kt/blob/1a79932e67e698f2dba5f347fb74dd47d702f8fb/solana/src/main/java/com/solana/core/Account.kt#L94密钥或 JSON 字符串参数是代表您的私钥的 64 字节,例如:
请注意 Solana 和以太坊并不完全兼容,因为它们使用不同的加密曲线。 Solana 使用 ed25519 曲线作为其帐户/密钥对,因此您的私钥将为 64 字节,而以太坊使用 secp256k1 曲线,这意味着您的私钥为 32 字节。
In the default constructor for the
Account.kt
class, it's generating a new keypair for you to use. If you want to import an existing keypair, you can use any of the other constructors, such as:constructor(secretKey: ByteArray)
: https://github.com/ajamaica/Solana.kt/blob/1a79932e67e698f2dba5f347fb74dd47d702f8fb/solana/src/main/java/com/solana/core/Account.kt#L29fromJson(json: String)
: https://github.com/ajamaica/Solana.kt/blob/1a79932e67e698f2dba5f347fb74dd47d702f8fb/solana/src/main/java/com/solana/core/Account.kt#L94The secret key or JSON string parameter is the 64 bytes representing your private key, like:
Note that Solana and Ethereum are not perfectly compatible since they use different cryptographic curves. Solana uses the ed25519 curve for its accounts / keypairs, so your private key will be 64 bytes, whereas Ethereum uses the secp256k1 curve, meaning 32 bytes for your private key.
您也可以使用 sol4k 和
Keypair
类来完成此操作:这是 a Java 中可立即运行的示例。在文档中查找详细信息。
You can do also it with sol4k and the
Keypair
class:Here is a ready-to-run example in Java. Find the details in the documentation.