使用Python语言生成区块链地址

# 单次运行
import binascii
import sha3
from ecdsa import SigningKey, SECP256k1priv = SigningKey.generate(curve=SECP256k1)  # 生成私钥
pub = priv.get_verifying_key()  # 生成公钥keccak = sha3.keccak_256()
keccak.update(pub.to_string())  # keccak_256哈希运算
address = "0x" + keccak.hexdigest()[24:]priv_key = binascii.hexlify(priv.to_string())
pub_key = binascii.hexlify(pub.to_string())print("Private key: " + priv_key.decode())
print("Public key:  " + pub_key.decode())
print("Address:     " + address)# 生成的以太坊生成账户地址是 私钥 -> 公钥 ->账户地址,
# 以太坊账户地址使用Secp256k1椭圆曲线得到私钥、公钥,得到公钥后,
# 对公钥做Keccak-256哈希运算,然后取最后的40位16进制字符,
# 得到的就是以太坊账户地址。# 使用循环进行生成然后写入文本保存
import binascii
import sha3
from ecdsa import SigningKey, SECP256k1for i in range(1,2):priv = SigningKey.generate(curve=SECP256k1)  # 生成私钥pub = priv.get_verifying_key()  # 生成公钥keccak = sha3.keccak_256()keccak.update(pub.to_string())  # keccak_256哈希运算address = "0x" + keccak.hexdigest()[24:]priv_key = binascii.hexlify(priv.to_string())pub_key = binascii.hexlify(pub.to_string())f = open('address.txt', 'a+', encoding='utf-8')Private_key = ('Private key: ' + priv_key.decode() + '\n')Pub_key = ("Public key:  " + pub_key.decode() + '\n')Produce_Address = ("Address:     " + address + '\n'+'\n'+'\n')f.write(Private_key + Pub_key + Produce_Address)f.close()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/458629.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java实现数据可视化的智慧河南大屏 JAVA+Vue+SpringBoot+MySQL

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块三、系统展示四、核心代码4.1 数据模块 A4.2 数据模块 B4.3 数据模块 C4.4 数据模块 D4.5 数据模块 E 五、免责说明 一、摘要 1.1 项目介绍 基于JAVAVueSpringBootMySQL的数据可视化的智慧河南大屏,包含了GDP、…

101. 对称二叉树 - 力扣(LeetCode)

题目描述 给你一个二叉树的根节点 root , 检查它是否轴对称。 题目示例 输入:root [1,2,2,3,4,4,3] 输出:true 解题思路 首先想清楚,判断对称二叉树要比较的是哪两个节点,要比较的可不是左右节点! 对于…

awd总结

总结: 由于是第一次参加AWD比赛,各方面经验都不足,在参赛的前几天也是疯狂搜集各种脚本、框架、工具等,同时也参考b站的视频进行学习,我发现就是还是实操才能更快的学习 我觉得就是我前期的准备工作不足,…

解决SpringBoot官网创建SpringBoot项目但Java版本只能勾选17和21的情况

IDEA页面创建Spring项目,其实是访问spring initializr去创建项目。我们可以通过阿里云国服去间接创建Spring项目。服务器URL地址替换为 https://start.aliyun.com

如何在 emacs 上开始使用 Tree-Sitter (archlinux)

文章目录 如何在emacs上开始使用Tree-Sitter(archlinux) 如何在emacs上开始使用Tree-Sitter(archlinux) 在archlinux上使用比windows上不知道要方便多少倍! $ sudo pacman -S emacs $ sudo pacman -S tree-sitter这里…

C语言:函数递归

创作不易,给个三连吧!! 一、什么是递归 递归式一种解决问题的方法,在C语言中,递归就是自己调用自己。 递归的思想: 把⼀个⼤型复杂问题层层转化为⼀个与原问题相似,但规模较小的⼦问题来求解…

(注解配置AOP)学习Spring的第十七天

基于注解配置的AOP 来看注解式开发 : 先把目标与通知放到Spring里管理 : Service("userService") public class UserServiceImpl implements UserService {Overridepublic void show1() {System.out.println("show1......");}Overridepublic void show2…

CTF-PWN-堆-【chunk extend/overlapping-2】(hack.lu ctf 2015 bookstore)

文章目录 hack.lu ctf 2015 bookstore检查IDA源码main函数edit_notedelete_notesubmit .fini_array段劫持(回到main函数的方法) 思路格式化字符串是啥呢0x开头或者没有0x开头的十六进制的字符串或字节的转换为整数构造格式化字符串的其他方法 exp 佛系getshell 常规getshell ha…

Onlyfans年龄验证/无法支付等问题解决方案

很多用户在Onlyfans绑卡时,出现了地址、年龄验证、无法支付等各种问题。出现这个问题的原因,一是用国内邮箱注册了,二是绑卡时的IP有问题,会导致出现年龄验证、无法支付 Onlyfans 等问题。准备工作:WildCard账户&#…

Bootstrap5 响应式导航栏

Bootstrap5 响应式导航栏 我们可以使用 Bootstrap5 导航栏组件为网站或应用程序创建响应式导航标题。 这些响应式导航栏在手机等小视口的设备上会折叠,但当用户单击切换按钮时会展开。 但是,它在中型和大型设备(例如笔记本电脑或台式机&#…

Netty源码系列 之 HashedWheelTimer源码

Netty优化方案 之前总结NioEventLoop以及其他内容时,已经总结了Netty许多优化的设计方案。 1.Selector的优化 (1) 为epoll空转问题提供了解决思路,虽然并没有从根本上解决epoll空转问题,但是使用一个计数器的方式可以减少空转所带来的性能…

点大商城V2版 2.5.5全开源独立版+前端

版本号:V2.5.52024-01-19新增买单付款备注 新增移动端后台买单数据统计和列表优化新增用户编辑可选附件存储类型(控制台-用户编辑)新增打开视频号主页组件(选择链接-功能-视频号主页)新增随行付小程序收银台&#xff0…