Lines Matching refs:alg
206 def can_do(self, alg: 'Algorithm') -> bool:
212 if not alg.is_valid_for_operation():
214 if self.head == 'HMAC' and alg.head == 'HMAC':
218 return alg.head in [
223 alg.head in frozenset.union(BLOCK_MAC_MODES,
226 if alg.head in ['CMAC', 'OFB'] and \
230 if self.head == 'CHACHA20' and alg.head == 'CHACHA20_POLY1305':
233 alg.head == 'STREAM_CIPHER':
235 if self.head == 'RSA' and alg.head.startswith('RSA_'):
237 if alg.category == AlgorithmCategory.KEY_AGREEMENT and \
244 if alg.is_invalid_key_agreement_with_derivation():
249 if alg.head == 'ECDH' and \
253 if alg.head == 'ECDSA' and \
256 if alg.head in {'PURE_EDDSA', 'EDDSA_PREHASH'} and \
259 if self.head == 'DH' and alg.head == 'FFDH':
460 def hash_length(cls, alg: str) -> int:
462 if alg in cls.HASH_LENGTH:
463 return cls.HASH_LENGTH[alg]
464 m = cls.HASH_LENGTH_BITS_RE.search(alg)
467 raise ValueError('Unknown hash length for ' + alg)