小试牛刀-Python生成solana Wallet公私钥

简介: 在使用Python开发solana应用过程中,需要生成solana Wallet公私钥,以实现后续应用操作.这里将Python生成方法进行整理,方便日后的查阅,也能帮助到实现相关功能的朋友。

 目录

1.编写目的

2.使用依赖

3.实现方法

3.1 Pynacl实现

3.2 ed25519实现


1.编写目的

       在使用Python开发solana应用过程中,需要生成solana Wallet公私钥,以实现后续应用操作.这里将Python生成方法进行整理,方便日后的查阅,也能帮助到实现相关功能的朋友。

2.使用依赖

主要使用了以下3个Python依赖:

  1. PyNacl
  2. ed25519
  3. base58

安装方法:

# 安装pynacl
pip3 install pynacl
# 安装ed25519
pip install ed25519
# 安装base58
pip install base58

image.gif

注意:这里pynacl是使用pip3安装,ed25519版本较早使用pip安装,即pyhton2用ed25519,pyhton3使用pynacl.base58作为公私钥格式转换的依赖.

3.实现方法

3.1 Pynacl实现

from nacl.signing import SigningKey
import base58
def generate_solana_wallet_nacl():
    signing=SigningKey.generate()
    public_key=base58.b58encode(signing.verify_key.encode()).decode('utf-8') 
    private_key=base58.b58encode(signing._signing_key).decode('utf-8')
    print("public:{}".format(public_key))
    print("private_key:{}".format(private_key))

image.gif

这里生成的public_key即是公钥,也就是Wallet地址,private_key即为私钥,可以用于wallet导入.格式为Base58格式.

image.gif 编辑

3.2 ed25519实现

import ed25519
import base58
def generate_solana_wallet():
    private_key, public_key = ed25519.create_keypair()
    private_key_base58 = base58.b58encode(private_key.to_bytes()).decode('utf-8')
    public_key_base58 = base58.b58encode(public_key.to_bytes()).decode('utf-8')
    return public_key_base58, private_key_base58

image.gif

这里的public_key_base58即为公钥,private_key_base58即为私钥.格式为Base58

感谢关注,感谢点赞!

image.gif 编辑

目录
相关文章
|
7月前
|
缓存 Java 测试技术
高德?不,用自己的导航
编写该文章的目的是在开发时需要用到自定义的路网导航,查阅高德、百度地图等相关网站后,并没有发现可自定义路网的导航,后来在Git上搜到了Graphhopper这个国外的开源软件,然后学习使用后实现了自定义路网导航的功能,现在记录一下自己的实现过程,以保存开发资料,并且帮助到需要实现相关功能的朋友。
245 1
|
7月前
|
区块链
小试牛刀-区块链Solana多签账户
在 Solana 区块链中,多签账户(Multisig Account)是一种智能合约账户,允许多个签名者共同管理和控制账户上的资产或操作。这种机制增强了账户的安全性和灵活性,特别适用于需要多个权限共同批准的操作场景,如资产管理、资金转移、或项目治理。
382 1
|
7月前
|
区块链 数据安全/隐私保护 Python
小试牛刀-区块链WalletConnect协议数据解密
最近在学习如何使用Wallet Connect,查阅官方文档后,发现并没有太多的中文参考资料,英文直译读起来也有一些偏差,所以这边直接采用网页Demo的方式,对WC协议有了一定了解.在此进行记录,同时希望帮助到有实现相关功能的朋友.
606 4
|
7月前
|
存储 Java API
小试牛刀-SpringBoot集成SOL链
java工程师:如何在java/springboot中使用solana区块链呢?不用担心,现在solanaj来了!
262 1
|
7月前
|
存储 Java 区块链
Springboot应用开发:工具类整理
在实际的Springboot应用开发中,有很多类可作为工具类,这些类将实际开发中可能用到的重复性代码进行提取,方便在后续的开发中使用,在这里我对在开发中经常用到的工具类进行整理,方便自己之后查找,同时希望可以帮助到有实现相关功能的朋友。
321 0
|
7月前
|
缓存 监控 Linux
Linux系统性能调优技巧和相关工具
Linux 作为一种应用应展和系统服务的优选操作系统,在处理性能和端到端点评估上持有出色表现。但是,在处理进程或系统处于低效状态时,性能调优就显得十分重要。本文将探讨一些 Linux 系统性能调优的常用技巧,并介绍相关工具
202 1
Linux系统性能调优技巧和相关工具
|
7月前
|
存储 算法 fastjson
火点监测:Nasa高分卫星接入
NASA(美国国家航空航天局)是美国联邦政府的一个独立机构,负责国家的航空航天研究和探索任务。NASA成立于1958年,其使命是探索太空并推动科学技术的发展。NASA的主要任务包括研究地球和太空的物理特性、开发和测试航空航天技术、进行太空探索和科学研究,以及促进航空航天技术的应用和技术转移。这里使用其开发的系统firms(火灾资源管理系统),通过Http请求获取数据来实现火点的监测,帮助需要实现相关功能,有类似开发任务的朋友。
218 6
|
7月前
|
算法 关系型数据库 Java
Springboot集成PostGIS完成路径规划
因为公司里需要做关于林区防火方面的项目,需要完成着火后山区路径的导航,但.....某德的功能似乎只能到达山区的边上,后边的路就需要自己完成导航了。搞了一个周终于有所效果了,也遇见了很多的坑,在此记录一下,希望以后不要踩坑。需要上述的环境才能进行路径导航,环境的搭建可以参阅
248 5
|
7月前
|
开发框架 Rust JavaScript
小试牛刀-Anchor安装和基础测试
Anchor是一个SOL链的开发框架,可以很方便的完成链上程序(Program)的编写,并且可以进行快速的前端测试。但安装时需要很多步骤,并且在测试时也有些错误需要注意。在这里对步骤和相关版本进行记录,作为记录和过程分享。
259 4
|
7月前
|
关系型数据库 MySQL 索引
mysql中的索引和分区
在MySQL中,索引和分区是提高查询效率的关键技术。通过创建合适的索引,可以显著提升数据检索速度。而分区可以作为作为进一步提高查询效率的方式,在较大数据量时通常可以使用这两个结合的方式优化查询速度,所以这边将这两个进行整理,巩固个人知识,同时也希望帮助到有需要的朋友。
169 2