Thanks for the article!
One way to bypass the restriction of the current ed25519verify
opcode is to design the oracle slightly differently. The oracle value would be in the note field of a transaction (let’s call it TxO
) with a specific sender (let’s call it SndO
). This sender SndO
signs TEAL script that essentially verifies that the note field is equal to the oracle value.
TEAL allows you to access all the transaction fields of all the transactions in a group of transactions. Therefore, to access this oracle value, you group this transaction TxO
with the transaction that needs the oracle value. This latter transaction checks the former transaction is from the correct sender SndO
, and read its note value as the oracle value.
See How can I create an Oracle Smart Contract in TEAL? for additional details