当前位置: 首页 > news >正文

什么是SHA256?比特币是如何应用SHA256算法的?

SHA 256算法是一种具有确定性单向哈希函数

算法是执行操作的一系列步骤或过程

哈希函数是种数学函数,输入的长度任意,但是输出长度固定,可以理解为文件的数字指纹,同一个输入值,总是得相同的输出

SHA256(secure hash algorithm)是指输出值为256位的安全的哈希算法

单向代表函数很难逆推(比如30+30加密后的值,只要-30就解密了,但是如果是乱搞成999再加上xx再除什么一堆就很难逆推,如果逆推两个大素数的乘法公式就非常难了)

单向散列函数,输入值可以是任意类型和长度,输出均为256位,可能是0可能是1

有没有可能输入两个不同的数会得到一个结果呢?机会不可能结果有2的256次方多个

运用于:密码学、数字签名、认证等等,还有比特币

任何人在自己计算机上运行这个数学函数,但没有人能逆推他,SHA256在比特币协议中发挥着关键作用,如果你可以逆推这个算法,你就可以比其他人挖矿挖的更快,赚更多钱

比特币的挖矿过程,就是找到输入值的过程,这个输入值是通过SHA256算法产生了一串开头带有70个零的输出值,但是没有已知的公式,每个人能做的只有蛮力计算,一个一个数去试,知道找到正确的输入值。

我们之前说过,不可能找到一个完全相同的哈希值,不过比特币挖矿只需要找到一个接近的哈希值就好,不需要完全匹配,挖矿难度也可以跳转。大约会保证每十分钟就有矿工找到匹配的输入值,然后转12.5个比特币的出块奖励。

这就是为什么我认为是地球上最流行的算法或者说是最常用的算法

http://www.lryc.cn/news/42008.html

相关文章:

  • JDK20正式发布了GA版本,短期维护支持,以及JDK21预览
  • .NET/C#/GC与内存管理(含深度解析)
  • Java开发 | 内部类 | 静态内部类 | 非静态内部类 | 匿名内部类
  • Portal认证
  • 论文解读:ChangeFormer | A TRANSFORMER-BASED SIAMESE NETWORK FOR CHANGE DETECTION
  • Redis 内存优化技巧
  • 【java】笔试强训Day2【​倒置字符串​与排序子序列】
  • 【Linux】基础IO(一) :文件描述符,文件流指针,重定向
  • 【C语言】通讯录的实现(静态版)
  • IDEA一键构建Docker镜像
  • QT的使用3:鼠标事件
  • 线程安全之单例模式
  • “二分”带来“十分”快感——二分思想的奥秘解析
  • 一台服务器最大能支持多少条 TCP 连接?问倒一大片。。。
  • 蓝桥杯嵌入式RTC实时时钟
  • Centos7 挂载 ISO镜像
  • 三级数据库备考--数据库应用系统开发方法第一次练习(刷题库知识点记录)
  • 免费空间主机是什么?怎么申请免费空间主机
  • 网络安全文章汇总导航(持续更新)
  • AI-TestOps —— 软件测试工程师的一把利剑
  • Linux内核进程管理原理详解
  • 通过Linux串口实现树莓派与电脑通信
  • 全球变暖 蓝桥杯 178
  • Java现在好找工作吗?
  • Flink 第1章 基础介绍和特性
  • docker 安装 nginx无坑版
  • 自己动手做chatGPT:向量的概念和相关操作
  • 【洛谷刷题】蓝桥杯专题突破-深度优先搜索-dfs(7)
  • Python嵌套函数(Nested function)和闭包(closure)
  • 【实战】React 必会第三方插件 —— Cron 表达式生成器(qnn-react-cron)