How to do selective disclosure of grin tx?

Hi guys, forgive me for my ignorance (grin newbie). I am trying to put information together to allow compliance professionals to be able to request further information in the case of suspicious transactions, to allow them to meet AML/KYC obligations. I noticed that the grin docs at note that one may “selectively disclose information as needed.”

My questions:

  1. Are there any guides or additional info on doing this? I cannot find any after several google searches

  2. Is this possible through a client command of feature of some sort?

Any technical overviews on how this would be done is welcome as well, even if it’s not formally written up somewhere. Thanks!

1 Like

Hello, welcome, and thanks for stopping by!

  1. To the best of my knowledge, there is no additional information available at the moment. It’s not a field that’s had much attention to it yet.
  2. No, not at this time.

We don’t have a technical overview either I’m afraid, but this could be what triggers it to be created! Could you tell us more about what kind of information it is that would be needed? What is the specific data that is required for compliance purposes in order to meet AML/KYC requirements?

We could then see if we could put some documentation together about whether this would be possible (or not) in Grin and if so, how.

Just to set expectations, we’re in the middle of preparations for a version upgrade, so this might take a while, but I hope we could get to it at some point and provide a satisfying answer.


Hi Daniel, thanks for the quick and detailed response. This is for a compliance effort that will be releasing within the next week or two. We do have a Grin compliance brief put together, and have representation from several other projects (namely Monero, Zcash and Dash) on the team. We collaborated with Perkins Coie for their recent whitepaper on AECs here:

Could you have your point person for compliance/exchange integration (if it’s not you) send me an email? I can then get you set up with the group and show your team what we have so far. We have weekly calls Friday at 3PM CT and can invite you to those as well moving forward.

Payment proofs are selective revealing/proof on sending funds. Can something similar be done for receiving funds, e.g. just like you can sign for owning a bitcoin address in Bitcoin?

I think all that would cover most KYC cases since you prove you own the wallet a fund was send to. I do think this would be a nice addition which should make buying Grin and sending to your own wallet legal again in NL (NL is the only country in the EU which does not allow moving bought privacy coins from exchanges to your own wallet).
Preferably such a proof of receiving funds would only involve the received funds and not all funds owned by the private key. I think technically it ahould be the same as payment proofs, right?