A computer-implemented method comprising: establishing a cryptographically protected communications session with a computing entity; receiving, via the cryptographically protected communications session, a communication comprising input data that controls execution of a program published to a blockchain network; receiving a first attestation that a set of communications occurred via the cryptographically protected communications session, the set of communications comprising the data; executing the program using the input data, wherein execution of the program results in generation of a proof of correct execution of the program; generating, based at least in part on the received input data, a second attestation that the data was received from a data source; providing the proof of correct execution of the program to another computer system; detecting a blockchain transaction comprising: a first transaction output comprising a first locking script, wherein a first digital asset associated with the first transaction output is unlockable by an unlocking script that encodes: a public key associated with the computing entity; a digital signature encoding an expected value, authenticity of the digital signature cryptographically verifiable using the public key; and authentication information usable to generate the expected value; and a second transaction output encoding an indication the proof of correct execution is valid; and unlocking the first digital asset by providing at least the public key, the digital signature, and the authentication information; wherein the authentication information comprises a Merkle path of a Merkle tree and the expected value is based at least in part on a root node of the Merkle tree. establishing a cryptographically protected communications session with a computing entity; receiving, via the cryptographically protected communications session, a communication comprising input data that controls execution of a program published to a blockchain network; receiving a first attestation that a set of communications occurred via the cryptographically protected communications session, the set of communications comprising the data; executing the program using the input data, wherein execution of the program results in generation of a proof of correct execution of the program; generating, based at least in part on the received input data, a second attestation that the data was received from a data source; providing the proof of correct execution of the program to another computer system; detecting a blockchain transaction comprising: a first transaction output comprising a first locking script, wherein a first digital asset associated with the first transaction output is unlockable by an unlocking script that encodes: a public key associated with the computing entity; a digital signature encoding an expected value, authenticity of the digital signature cryptographically verifiable using the public key; and authentication information usable to generate the expected value; and a second transaction output encoding an indication the proof of correct execution is valid; and a first transaction output comprising a first locking script, wherein a first digital asset associated with the first transaction output is unlockable by an unlocking script that encodes: a public key associated with the computing entity; a digital signature encoding an expected value, authenticity of the digital signature cryptographically verifiable using the public key; and authentication information usable to generate the expected value; and a public key associated with the computing entity; a digital signature encoding an expected value, authenticity of the digital signature cryptographically verifiable using the public key; and authentication information usable to generate the expected value; and a second transaction output encoding an indication the proof of correct execution is valid; and unlocking the first digital asset by providing at least the public key, the digital signature, and the authentication information; wherein the authentication information comprises a Merkle path of a Merkle tree and the expected value is based at least in part on a root node of the Merkle tree.