小试牛刀-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 编辑

目录
相关文章
|
Python
【Python】4. 人生重开模拟器(简易版)
【Python】4. 人生重开模拟器(简易版)
417 2
|
SQL 数据可视化 Java
DBeaver数据库可视化工具
DBeaver数据库可视化工具
1321 3
|
JSON 前端开发 JavaScript
Docusaurus框架——快速搭建markdown文档站点介绍sora
Docusaurus框架——快速搭建markdown文档站点介绍sora
1011 0
|
2月前
|
人工智能 缓存 安全
阿里云百炼Token Plan深度解析:Credits计费规则、模型适配与省钱高效配置技巧
2026年,阿里云百炼Token Plan已成为企业与个人规模化使用AI大模型的核心计费方案。它以统一Credits点数为核心,打通百炼平台150+款模型的调用计费,提供固定预算、多模型通用、团队共享的订阅服务,彻底解决传统按量付费的账单波动与预算不可控问题。本文将从Token Plan核心定义、Credits计费机制、支持模型矩阵、省钱技巧、配置方法与常见问题等维度,提供2026年最新完整指南,帮助用户高效使用、精准省钱。
1150 0
|
区块链
小试牛刀-区块链Solana多签账户
在 Solana 区块链中,多签账户(Multisig Account)是一种智能合约账户,允许多个签名者共同管理和控制账户上的资产或操作。这种机制增强了账户的安全性和灵活性,特别适用于需要多个权限共同批准的操作场景,如资产管理、资金转移、或项目治理。
725 2
|
小程序 JavaScript 开发工具
Uniapp 对接抖音短剧播放器 video-player 坑点解决
Uniapp 对接抖音短剧播放器 video-player 坑点解决
981 1
|
JSON 资源调度 JavaScript
nodemon 启动问题:nodemon : 无法将“nodemon”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。
【6月更文挑战第3天】在尝试运行`nodemon`时遇到错误,提示无法识别该命令。问题可能是缺少nodemon环境或系统不允许执行脚本。解决方法包括:首先尝试使用`npm install nodemon -g`全局安装nodemon,如果安装失败,可能需要以管理员权限打开PowerShell,执行`set-ExecutionPolicy RemoteSigned`,然后再次尝试安装。nodemon是一款用于Node.js开发的工具,能监控源码变化自动重启应用,常用于提高开发效率。安装后,通过`nodemon your-app.js`启动应用,可自定义配置如监听特定文件、扩展名或目录。
5497 1
|
Linux C++ iOS开发
【C++ 17 新特性 文件管理】探索C++ Filesystem库:文件和目录操作的全面指南(二)
【C++ 17 新特性 文件管理】探索C++ Filesystem库:文件和目录操作的全面指南
2455 2
|
JavaScript 前端开发 开发工具
从零开始使用node.js制作一个脚手架
本文介绍了如何从零开始使用Node.js制作一个项目脚手架,涵盖了脚手架的基本概念、所需准备的第三方库、项目结构的初始化、命令注册、项目创建流程及用户交互设计等内容。通过实例演示了如何利用commander、inquirer等库实现命令行工具的开发,最终完成了一个能够根据用户选择自动创建Vue或React项目的脚手架。
533 1
从零开始使用node.js制作一个脚手架
三大运营商那个流量便宜
要确定中国三大运营商(中国移动、中国联通、中国电信)中哪个提供的流量套餐更为便宜,并不是一个可以直接给出固定答案的问题,因为不同的地区、时间、以及用户的具体需求(如通话时长、短信数量、数据流量等)都会影响套餐的价格和性价比。不过,以下是一些通用的方法来比较和选择较为经济的流量套餐: