比特币并没有单一的数学公式,整套网络由多套密码学算法组合运行,挖矿共识层面核心采用双重SHA‑256哈希运算,也就是SHA‑256d,交易签名使用secp256k1椭圆曲线ECDSA算法,同时配套难度调整公式、Merkle树哈希运算共同维持网络运转,矿工挖矿的核心判断条件为SHA‑256(SHA‑256(区块头))≤难度目标值,这也是比特币PoW工作量证明最核心的运算逻辑。

挖矿环节中参与哈希计算的只有80字节的区块头,区块头包含上一区块哈希、Merkle根、时间戳、难度位Bits、随机数Nonce等字段,完整的区块交易数据并不直接参与PoW哈希运算。比特币强制执行两次SHA‑256运算,并非一次,两次哈希可以降低部分密码学攻击风险。矿工在其他字段固定的前提下,不断修改32位Nonce随机数,循环重复双重哈希计算,直到输出的256位数值小于网络设定的难度目标,才算完成解题拿到出块资格。整个过程没有捷径,只能暴力遍历尝试,但是全网其他节点验证结果时,仅需要执行一次双重哈希就可以校验区块合法性,验证成本极低。

为了维持平均10分钟出块的设定,比特币内置难度调整公式,每挖出2016个区块后自动重新计算难度,理论周期约14天。新难度等于旧难度乘以实际耗时,再除以理论目标耗时20160分钟,同时协议设置上下限,单次调整难度最多放大4倍或者缩小至原来四分之一,防止算力暴涨暴跌带来出块时间剧烈震荡。当全网算力上涨,区块产出变快,难度目标数值会被压低,挖矿变得更难;全网算力撤退出块变慢,难度目标数值抬高,挖矿门槛随之下降,这套公式完全写进协议代码,所有全节点独立运算,不需要任何中心化机构下达指令。

除挖矿之外,账户与交易体系同样依赖两套算法,secp256k1椭圆曲线算法用来生成私钥、公钥,交易签名校验依靠ECDSA,保证每一笔转账都只能由资产持有人发起,杜绝伪造交易。比特币地址则通过hash160运算生成,即先对公钥做SHA‑256哈希,再执行RIPEMD‑160哈希压缩输出,得到160位结果,经过编码之后形成我们日常见到的比特币收款地址。Merkle树算法负责压缩区块内全部交易,生成Merkle根存入区块头,不需要下载完整区块交易,仅凭Merkle路径就可以证明某一笔交易确实存在于对应区块之中,优化轻节点运行效率。
很多币圈新手容易混淆,比特币不存在预测价格、计算币价的数学公式,网络内部全部算法只服务于出块、验证交易、调整挖矿难度、生成密钥地址,比特币2100万枚的总量上限,也是依靠区块奖励减半规则代码约束,区块奖励每产出21万区块减半一次,从最初50枚逐步衰减,直至奖励归零。不管是挖矿、转账、链上验证,全部算法逻辑开源透明,任何人都可以查阅原始代码核对运算规则,这也是比特币去中心化体系的底层根基。
