def revoke(self, password, community): """ Revoke self-identity on server, not in blockchain :param str password: The account SigningKey password :param cutecoin.core.community.Community community: The community target of the revocation """ revoked = Person.lookup(self.pubkey, community) revocation = Revocation(PROTOCOL_VERSION, community.currency, None) selfcert = revoked.selfcert(community) key = SigningKey(self.salt, password) revocation.sign(selfcert, [key]) logging.debug("Self-Revocation Document : \n{0}".format(revocation.raw(selfcert))) logging.debug("Signature : \n{0}".format(revocation.signatures[0])) data = { 'pubkey': revoked.pubkey, 'self_': selfcert.signed_raw(), 'sig': revocation.signatures[0] } logging.debug("Posted data : {0}".format(data)) community.broadcast(bma.wot.Revoke, {}, data)
async def revoke(self, password, community): """ Revoke self-identity on server, not in blockchain :param str password: The account SigningKey password :param sakia.core.community.Community community: The community target of the revocation """ revoked = await self._identities_registry.future_find(self.pubkey, community) revocation = Revocation(PROTOCOL_VERSION, community.currency, None) selfcert = await revoked.selfcert(community) key = SigningKey(self.salt, password) revocation.sign(selfcert, [key]) logging.debug("Self-Revocation Document : \n{0}".format(revocation.raw(selfcert))) logging.debug("Signature : \n{0}".format(revocation.signatures[0])) data = { 'pubkey': revoked.pubkey, 'self_': selfcert.signed_raw(), 'sig': revocation.signatures[0] } logging.debug("Posted data : {0}".format(data)) responses = await community.bma_access.broadcast(bma.wot.Revoke, {}, data) result = (False, "") for r in responses: if r.status == 200: result = (True, (await r.json())) elif not result[0]: result = (False, (await r.text())) else: await r.release() return result
def revoke(self, password, community): """ Revoke self-identity on server, not in blockchain :param str password: The account SigningKey password :param cutecoin.core.community.Community community: The community target of the revocation """ revoked = Person.lookup(self.pubkey, community) revocation = Revocation(PROTOCOL_VERSION, community.currency, None) selfcert = revoked.selfcert(community) key = SigningKey(self.salt, password) revocation.sign(selfcert, [key]) logging.debug("Self-Revocation Document : \n{0}".format( revocation.raw(selfcert))) logging.debug("Signature : \n{0}".format(revocation.signatures[0])) data = { 'pubkey': revoked.pubkey, 'self_': selfcert.signed_raw(), 'sig': revocation.signatures[0] } logging.debug("Posted data : {0}".format(data)) community.broadcast(bma.wot.Revoke, {}, data)