def test_pk_from_to_dict(): pk = PublicKey(N=cmod.integer(12345), Rms=cmod.integer(12) % cmod.integer(12345), Rctxt=cmod.integer(13) % cmod.integer(12345), R={ 'name': cmod.integer(1) % cmod.integer(12345), 'age': cmod.integer(2) % cmod.integer(12345) }, S=cmod.integer(14) % cmod.integer(12345), Z=cmod.integer(15) % cmod.integer(12345)) pk_serialized = { 'n': '12345', 'rms': '12', 'rctxt': '13', 'r': { 'name': '1', 'age': '2' }, 's': '14', 'z': '15', } assert pk.to_str_dict() == pk_serialized assert pk == PublicKey.from_str_dict(pk_serialized)
async def submitPublicKeys(self, id: ID, pk: PublicKey, pkR: RevocationPublicKey = None, signatureType='CL') -> \ (PublicKey, RevocationPublicKey): data = {} if pk is not None: data[PRIMARY] = pk.to_str_dict() if pkR is not None: data[REVOCATION] = pkR.toStrDict() op = { TXN_TYPE: CLAIM_DEF, REF: id.schemaId, DATA: data, SIGNATURE_TYPE: signatureType } _, seqNo = await self._sendSubmitReq(op) if seqNo: pk = pk._replace(seqId=seqNo) if pkR is not None: pkR = pkR._replace(seqId=seqNo) return pk, pkR
async def submitPublicKeys(self, id: ID, pk: PublicKey, pkR: RevocationPublicKey = None, signatureType='CL') -> \ (PublicKey, RevocationPublicKey): data = {} if pk is not None: data[PRIMARY] = pk.to_str_dict() if pkR is not None: data[REVOCATION] = pkR.toStrDict() op = { TXN_TYPE: CLAIM_DEF, REF: id.schemaId, DATA: data, SIGNATURE_TYPE: signatureType } _, seqNo = await self._sendSubmitReq(op) if seqNo: pk = pk._replace(seqId=seqNo) if pkR is not None: pkR = pkR._replace(seqId=seqNo) return pk, pkR