Multichain 2 - filter transactions between 2 chains

+2 votes

In the future Multichain 2 update, will we be able to make decisions on one chain dependent on data from another chain?..For example, I am running a separate KYC chain, and another cryptofiat chain - I want to have addresses be given permissions based on KYC status in streams. Based on that, an address in the Fiat chain can then send and receive...

asked Sep 19, 2017 by mark

1 Answer

0 votes
No, it's not possible to make the transactions in one chain depend on the state of another. Not in MultiChain, and I believe not in blockchains in general, since I've never seen a good scheme for doing it.
answered Sep 20, 2017 by MultiChain
So the best way to approach this then is to have the KYC info posted into the Fiat Chain..and when transaction filters are introduced, the rules can be set "in stream xxx if hash in key has status in data that is xxx then grant <address> send, receive for asset xxx" - untill then, have to do this externally in app.
The first version of transaction filters are unlikely to support these kinds of conditions. Why not just use regular permission instead, where whoever updates the KYC data can also update send and receive permissions. The 'activate' semi-admin role is designed for this scenario.
The plan so far is to offer KYC processors the right to post the kyc status of customers (storing the full name, DOB and email or phone number of the person as a hash) either directly on nodes, or via our API. Companies who are not partners can then query the chain via the API, and pay a small fee if a hit is registered, which mostly goes to the KYC processor and a bit to us. Any partners wouldn't pay a fee. This way, a customer can generate as many addresses as they like on either private keys or managed wallets, and they could get automatic send and receive rights given to the address based on their KYC status.