1# coding=utf-8
2# --------------------------------------------------------------------------
3# Copyright (c) Microsoft Corporation. All rights reserved.
4# Licensed under the MIT License. See License.txt in the project root for
5# license information.
6#
7# Code generated by Microsoft (R) AutoRest Code Generator.
8# Changes may cause incorrect behavior and will be lost if the code is
9# regenerated.
10# --------------------------------------------------------------------------
11
12from msrest.serialization import Model
13
14
15class KeyVerifyParameters(Model):
16    """The key verify parameters.
17
18    All required parameters must be populated in order to send to Azure.
19
20    :param algorithm: Required. The signing/verification algorithm. For more
21     information on possible algorithm types, see JsonWebKeySignatureAlgorithm.
22     Possible values include: 'PS256', 'PS384', 'PS512', 'RS256', 'RS384',
23     'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', 'ECDSA256'
24    :type algorithm: str or
25     ~azure.keyvault.v2016_10_01.models.JsonWebKeySignatureAlgorithm
26    :param digest: Required. The digest used for signing.
27    :type digest: bytes
28    :param signature: Required. The signature to be verified.
29    :type signature: bytes
30    """
31
32    _validation = {
33        'algorithm': {'required': True, 'min_length': 1},
34        'digest': {'required': True},
35        'signature': {'required': True},
36    }
37
38    _attribute_map = {
39        'algorithm': {'key': 'alg', 'type': 'str'},
40        'digest': {'key': 'digest', 'type': 'base64'},
41        'signature': {'key': 'value', 'type': 'base64'},
42    }
43
44    def __init__(self, *, algorithm, digest: bytes, signature: bytes, **kwargs) -> None:
45        super(KeyVerifyParameters, self).__init__(**kwargs)
46        self.algorithm = algorithm
47        self.digest = digest
48        self.signature = signature
49