Contratos, em termos simples, são restrições sobre como os tokens podem ser transferidos, permitindo aos utilizadores especificar a distribuição de UTXOs através de contratos. Muitas soluções de escalabilidade, como a Lightning Network, são baseadas neste princípio, demonstrando que as soluções de escalabilidade do Bitcoin dependem fortemente da introspeção e dos contratos. No mundo das criptomoedas, o método mais comum é o compromisso, frequentemente alcançado através da função de hash. Para comprovar que cumprimos os requisitos de transferência, é necessária uma mecanismo de assinatura para verificação. Assim, os contratos envolvem muitos ajustes relacionados com as funções de hash e as assinaturas.