Funds that are uniquely held in an application need to have some exclusive control over the assets. This requires a deposit/escrow contract on the chain with the assets.
However, what we can show off is that with TEE, you don't have to deposit in a particular application, you basically just have to deposit/escrow with a KettleEscrow singleton. The KettleEscrow can then delegate, off-chain, the exclusive access to these assets, without having to post an on-chain transaction.
Essentially this idea is like TEEChan. Instead of a payment channel, where funds have to be deposited on-chain to a particular set of counterparties, instead you can deposit to an instance of a TEE acting as a channel broker. The ability of the TEE to carry out a "one time program" enables you to delegate the key to a session involving a particular party.
We should take advantage of the following:
Funds that are uniquely held in an application need to have some exclusive control over the assets. This requires a deposit/escrow contract on the chain with the assets.
However, what we can show off is that with TEE, you don't have to deposit in a particular application, you basically just have to deposit/escrow with a KettleEscrow singleton. The KettleEscrow can then delegate, off-chain, the exclusive access to these assets, without having to post an on-chain transaction.
Essentially this idea is like TEEChan. Instead of a payment channel, where funds have to be deposited on-chain to a particular set of counterparties, instead you can deposit to an instance of a TEE acting as a channel broker. The ability of the TEE to carry out a "one time program" enables you to delegate the key to a session involving a particular party.