Suppose that we have a template that stores big and/or sensitive data on the ledger:
template BigData
with
owner : Party
data_ : Text
dataKey : Text
where
signatory owner
key (owner, dataKey) : (Party, Text)
maintainer key._1
But this template needs to have a dataKey
field that is “validated” via an operator functionality:
template Creator
with
owner : Party
where
signatory owner
controller owner can
CreateBigData : ContractId BigData
with
data_ : Text
do
dataKey <- undefined data_
create BigData with ..
- Is
data_
stored on the ledger twice (instance ofBigData
and argument toCreateBigData
) ? More generally, are choice arguments persisted on the ledger? - What are the permissions of that choice? Can any new participant to the ledger see that
owner
submitteddata_
?