def validate_signature(self, claim_address, certificate):
     if isinstance(certificate, ClaimDict):
         certificate = certificate.protobuf
     curve = CURVE_NAMES[certificate.certificate.keyType]
     validator = get_validator(curve).load_from_certificate(
         certificate, self.certificate_id)
     return validator.validate_claim_signature(self, claim_address)
 def validate_private_key(self, private_key, certificate_id):
     certificate = self.protobuf
     if CLAIM_TYPE_NAMES[certificate.claimType] != "certificate":
         return
     curve = CURVE_NAMES[certificate.certificate.keyType]
     validator = get_validator(curve).load_from_certificate(
         certificate, certificate_id)
     signing_key = validator.signing_key_from_pem(private_key)
     return validator.validate_private_key(signing_key)
    def get_validator(self, certificate_id):
        """
        Get a lbryschema.validator.Validator object for a certificate claim

        :param certificate_id: claim id of this certificate claim
        :return: None or lbryschema.validator.Validator object
        """

        claim = self.protobuf
        if CLAIM_TYPE_NAMES[claim.claimType] != "certificate":
            return
        curve = CURVE_NAMES[claim.certificate.keyType]
        return get_validator(curve).load_from_certificate(
            claim, certificate_id)