比特币在未零件交易输出(UTXO)模型下运行,其中,比特币的每一部分都作为先前的转移或采矿奖励的离散输出。每个输出都包含一个锁定脚本,以定义可以花费的条件,并且支付者必须提供一个解锁这些条件的解锁脚本。此设计可确保无法任意创建或破坏比特币:追踪任何单位比特币总是会导致有效的采矿奖励输出。但是,尽管该模型维护比特币的安全保证,但它涉及实施定制令牌或复杂资产协议的重大挑战。在以太坊的基于帐户的系统中,每个节点都保持一个全局状态,以记录所有余额。简单的操作,例如传输ERC-20代币,通过降低发件人的余额并增加接收者的余额来更新此全局分类帐。整个网络可以轻松验证发件人的帐户是否有足够的资金,并且收件人的余额正确调整了。相比之下,比特币节点不能保持用户平衡的单一全局状态。相反,必须通过扫描整个区块链扫描相关的UTXOS来推断每个用户的持股。这种无状态的性质使得像ERC-20相似的类似令牌的逻辑很难。没有本地全球状态,验证发件人是否有足够的令牌来传输或记录传输后产生的余额变化,在比特币的基础层中不能直接完成。此外,将所有必要的令牌信息直接嵌入到比特币的标准交易脚本中是不平凡的。简单地将收件人和数量数据放在这些脚本中会违反比特币的共识规则,从而导致转移失败。UTXO模型对脚本执行和数据存储的严格限制会妨碍以太坊风格的代币供电的直接采用,需要在安全且信任度量的方式中实现类似的功能。