Re: Purge Private Data - by individual transaction - on trigger


Simeon MacMillen
 

Hi David,

Thank you for this information, including the two JIRAs.

FAB-5097 would definitely help satisfy the ISO requirement that I referenced.

I'm not sure that I understand the other JIRA (FAB-18461).  If data is only deleted on an individual peer, would it continue to live on other collection member ledgers?  Would the deleted transaction get re-copied over to the original peer or would the collection members need to maintain divergent copies of the collection ledger?

I agree with you on channel-wide purge being more important (from my perspective on compliance).

Regards,
Simeon MacMillen

On 5/4/21 7:12 AM, David Enyeart wrote:

Note that deletePrivateData only deletes from private state. The private data remains in the private data store (committed data) and transient store (uncommitted data) for other peers that may be running behind to pull. There are a couple stories being considered to deal with this other data in future versions of Fabric:

https://jira.hyperledger.org/browse/FAB-5097
GDPR for private data - On demand delete of private data prior to block-to-live policy based on a delete transaction. Option for transaction resulting from DelPrivateData() chaincode API to purge key from peer's private data store and transient store on all peers, in addition to deleting from private state database on all peers.

https://jira.hyperledger.org/browse/FAB-18461
FAB-18461 GDPR for private data - On demand delete of private data prior to block-to-live policy on an individual peer. API to purge a private data key from private state, private data store, and transient store on an individual peer (could be done before or after or instead of DelPrivateData() chaincode API).

Basically, channel-wide versus peer-scoped purge, while keeping the hash on the chain. I assume the former would be more important, but would like to hear thoughts from people familiar with the ISO and GDPR requirements.

Also, let us know if anybody could assist to expedite an implementation, as many people have asked for such a feature.


Dave Enyeart

"Nicholas Leonardi via lists.hyperledger.org" ---05/03/2021 07:21:54 PM--- Hey Simeon, - You can purge using the deletePrivateData function.https://urldefense.proofpoint.com/

From: "Nicholas Leonardi via lists.hyperledger.org" <nlzanutim=yahoo.com@...>
To: fabric <fabric@...>, Simeon MacMillen <industrial_eng@...>
Date: 05/03/2021 07:21 PM
Subject: [EXTERNAL] Re: [Hyperledger Fabric] Purge Private Data - by individual transaction - on trigger
Sent by: fabric@...





Hey Simeon, - You can purge using the deletePrivateData function. https://hyperledger.github.io/fabric-chaincode-node/release-1.4/api/fabric-shim.ChaincodeStub.html#deletePrivateData__anchor - You can't purge a transaction on a block, you purge ZjQcmQRYFpfptBannerStart
This Message Is From an External Sender
This message came from outside your organization.
ZjQcmQRYFpfptBannerEnd
Hey Simeon,

- You can purge using the deletePrivateData function.
https://hyperledger.github.io/fabric-chaincode-node/release-1.4/api/fabric-shim.ChaincodeStub.html#deletePrivateData__anchor

- You can't purge a transaction on a block, you purge the data that you inserted into the database using the
function above

Regards,
Nick

Em segunda-feira, 3 de maio de 2021 16:41:45 BRT, Simeon MacMillen <industrial_eng@...> escreveu:


According to the documentation, Private Data can be purged after a
pre-determined number of blocks, based on a Collection 'blockToLive' value.

- Is there any other way of purging private data when the purge
date/block quantity is not known in advance (e.g. schedule a purge after
block creation)?

- Is there any way to purge only a single transaction in a channel?

I am looking for how to "dispose" of data as needed based on customer or
industry regulations (e.g. ISO 9001:2015 7.5.3.2 d)).


Regards,
Simeon MacMillen

Referenced link:
https://hyperledger-fabric.readthedocs.io/en/release-2.3/private_data_tutorial.html#pd-purge












Join fabric@lists.hyperledger.org to automatically receive all group messages.