python程序实现BTC(比特币)挖矿的完整代码


Posted in Python onJanuary 20, 2021

区块链的作业是比特币挖矿程序python实现,我做完了跟大家分享一波。

完整代码如下:

#Author:Mr.Pan_学狂
#Finish_time:2020/11/22/22:34
import hashlib
import time
def find_gold():#参数D是难度系数
  x = 0#算力初始值
  Diffcult_number = str(input('请输入难度系数:'))
  print('开始挖矿!!')
  while True:
    x += 1
    string = 'hello'
    start_string = str(x)
    combine_string = start_string + string#字符串拼接
    h = hashlib.sha256()#采用sha256加密
    h.update(combine_string.encode('utf-8'))#utf-8编码后哈希加密
    gold_hash = h.hexdigest()
    #print(gold_hash)
    startTime = time.perf_counter()
    if gold_hash[0:len(Diffcult_number)] == Diffcult_number:#对比哈希值的x位与难度系数是否相同,x为难度系数
      print('算力:{}'.format(x), '用时:{}'.format(startTime))
      print('哈希值:%s' % gold_hash)#占位符
      print('挖矿成功!!')
      break
    elif gold_hash[0:len(Diffcult_number)] != Diffcult_number:#哈希值前x位与难度系数不相同
      print('算力:{}'.format(x),'用时:{}'.format(startTime))
      print('哈希值:%s' % gold_hash)
      print('没有挖到!!')
      print()
      continue
if __name__ == '__main__':#主函数,调用函数,程序出口。
  find_gold()

我设置的难度规则系数是:‘0abd',若哈希值的最前面四位是'0abd'则显示挖矿成功!!否则,挖矿失败。经过一段时间后的运行结果,如下图:

python程序实现BTC(比特币)挖矿的完整代码

我觉得随着时代的进步,矿机的升级,个人PC机(服务器)想要挖到比特币是很难的。并且,目前出现了专业的挖矿公司和挖矿团队,个人的算力就根本微不足道了。所以,现在就是租赁挖矿公司的服务器,根据挖到的成果分红。还有一个问题,就是环保问题,当矿机工作的时候会产生噪声,而且特别消耗电力,会排放大量的二氧化碳。我个人认为仅仅只是为了获得记账权的服务费,而去挖矿其实不是太理想,因为浪费了大量的资源,包括计算机的算力,能源等等。

到此这篇关于python程序实现BTC(比特币)挖矿的完整代码的文章就介绍到这了,更多相关python实现BTC(比特币)挖矿内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python实现DNS正向查询、反向查询的例子
Apr 25 Python
Python中文件遍历的两种方法
Jun 16 Python
Django中实现一个高性能计数器(Counter)实例
Jul 09 Python
linecache模块加载和缓存文件内容详解
Jan 11 Python
Python内置模块ConfigParser实现配置读写功能的方法
Feb 12 Python
PyQt4实现下拉菜单可供选择并打印出来
Apr 20 Python
python pandas修改列属性的方法详解
Jun 09 Python
pycharm配置pyqt5-tools开发环境的方法步骤
Feb 11 Python
利用Python实现Shp格式向GeoJSON的转换方法
Jul 09 Python
pytorch实现查看当前学习率
Jun 24 Python
Pycharm操作Git及GitHub的步骤详解
Oct 27 Python
python基于opencv 实现图像时钟
Jan 04 Python
python3中celery异步框架简单使用+守护进程方式启动
Jan 20 #Python
Django+Django-Celery+Celery的整合实战
Jan 20 #Python
详解Python Celery和RabbitMQ实战教程
Jan 20 #Python
详解python3类型注释annotations实用案例
Jan 20 #Python
python-jwt用户认证食用教学的实现方法
Jan 19 #Python
使用Python爬虫爬取小红书完完整整的全过程
Jan 19 #Python
python 自动识别并连接串口的实现
Jan 19 #Python
You might like
PHP.MVC的模板标签系统(三)
2006/09/05 PHP
php实现webservice实例
2014/11/06 PHP
php面向对象中static静态属性和静态方法的调用
2015/02/08 PHP
yii2.0实现创建简单widgets示例
2016/07/18 PHP
Smarty模板常见的简单应用分析
2016/11/15 PHP
laravel框架之数据库查出来的对象实现转化为数组
2019/10/23 PHP
PhpStorm 如何优雅的调试Hyperf的方法步骤
2019/11/24 PHP
flexigrid 参数说明
2010/11/23 Javascript
日历查询的算法 如何计算某一天是星期几
2012/12/12 Javascript
node.js中的fs.readFileSync方法使用说明
2014/12/15 Javascript
Javascript中Array用法实例分析
2015/06/13 Javascript
JQ实现新浪游戏首页幻灯片
2015/07/29 Javascript
layui表格实现代码
2017/05/20 Javascript
Webpack执行命令参数详解
2017/06/17 Javascript
解决Webpack 热部署检测不到文件变化的问题
2018/02/22 Javascript
JS实现的获取银行卡号归属地及银行卡类型操作示例
2019/01/08 Javascript
JavaScript Dom实现轮播图原理和实例
2021/02/19 Javascript
[50:12]EG vs Fnatic 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
用python分割TXT文件成4K的TXT文件
2009/05/23 Python
Python cookbook(数据结构与算法)将多个映射合并为单个映射的方法
2018/04/19 Python
Linux下python制作名片示例
2018/07/20 Python
python3判断url链接是否为404的方法
2018/08/10 Python
python判断列表的连续数字范围并分块的方法
2018/11/16 Python
celery4+django2定时任务的实现代码
2018/12/23 Python
浅谈python函数调用返回两个或多个变量的方法
2019/01/23 Python
利用python将图片版PDF转文字版PDF
2019/05/03 Python
Python3标准库之dbm UNIX键-值数据库问题
2020/03/24 Python
科颜氏香港官方网店:Kiehl’s香港
2021/03/07 全球购物
教师的实习鉴定
2013/12/15 职场文书
《我不是最弱小的》教学反思
2014/02/23 职场文书
2014最新股权信托合同协议书
2014/11/18 职场文书
2014年终工作总结范本
2014/12/15 职场文书
2015年电信员工工作总结
2015/05/26 职场文书
2015年暑期社会实践方案
2015/07/14 职场文书
抖音动画片,皮皮虾,《治愈系》动画在用这首REMIX作为背景音乐,Anak ,The last world with you完整版
2022/03/16 杂记
vue2的 router在使用过程中遇到的一些问题
2022/04/13 Vue.js