docs: def load_key(self, key, key_type, key_encoding):
          """Load a key from bytes.
  
          :param bytes key: Key bytes
          :param EncryptionKeyType key_type: Type of key
          :param KeyEncodingType key_encoding: Encoding used to serialize key
          :returns: Loaded key
          """
          if key_type not in (EncryptionKeyType.PRIVATE, EncryptionKeyType.PUBLIC):
              raise ValueError(
                  'Invalid key type "{key_type}" for cipher "{cipher}"'.format(key_type=key_type, cipher=self.java_name)
              )
  
          if key_encoding not in (KeyEncodingType.DER, KeyEncodingType.PEM):
              raise ValueError(
                  'Invalid key encoding "{key_encoding}" for cipher "{cipher}"'.format(
                      key_encoding=key_encoding, cipher=self.java_name
                  )
              )
  
          return _KEY_LOADERS[self.cipher](key, key_type, key_encoding)