I'm trying to get at a way to do this without human involvement, otherwise I think it just won't be trusted. Plus how would it work, witnesses would have to manually approve each transaction? I don't see that as a viable solution. And I think there's a better way.
I agree that not having human involvement would be ideal and cracking the trustless sidechain problem will greatly enhance the BitShares platform.
So far, we have two solutions for the trustless problem that have been posed and a third if we allow for trusted parties:
1) Enigma-like implementation (and / or integration) -- in which we have another thread already
2) Dynamic addresses akin to smart contracts, with the ability to seamlessly to turn on and off 'spendability' of an address, depending on whether or not certain conditions are met.
3) Multisig solution with witnesses
1 and 3 have the same issues of collusion of k parties.
1) suggests a penalty for such a collusion attack by requiring a deposit to perform the calculations.
3) there is no penalty for witnesses who collude, in so far as I can tell.
We haven't really discussed the possibility of 2. Can someone explain if this is possible with smart contracts or can we have 'dynamic addresses' like this? Would that solution essentially be the same as either 1 or 3 ?