/// <summary>
 /// Creates a signature from a digest.
 /// </summary>
 /// <param name="algorithm">The JWK signing algorithm.</param>
 /// <param name="digest">The content to be signed.</param>
 /// <return>The signature in a byte[] array.</return>
 byte[] Microsoft.Azure.Management.KeyVault.Fluent.IKey.Sign(JsonWebKeySignatureAlgorithm algorithm, params byte[] digest)
 {
     return(this.Sign(algorithm, digest));
 }
 /// <summary>
 /// Verifies a signature from a digest.
 /// </summary>
 /// <param name="algorithm">The JWK signing algorithm.</param>
 /// <param name="digest">The content to be signed.</param>
 /// <param name="signature">The signature to verify.</param>
 /// <return>True if the signature is valid.</return>
 bool Microsoft.Azure.Management.KeyVault.Fluent.IKey.Verify(JsonWebKeySignatureAlgorithm algorithm, byte[] digest, params byte[] signature)
 {
     return(this.Verify(algorithm, digest, signature));
 }
 /// <summary>
 /// Creates a signature from a digest.
 /// </summary>
 /// <param name="algorithm">The JWK signing algorithm.</param>
 /// <param name="digest">The content to be signed.</param>
 /// <return>The signature in a byte[] array.</return>
 async Task <byte[]> Microsoft.Azure.Management.KeyVault.Fluent.IKey.SignAsync(JsonWebKeySignatureAlgorithm algorithm, byte[] digest, CancellationToken cancellationToken)
 {
     return(await this.SignAsync(algorithm, digest, cancellationToken));
 }
        ///GENMHASH:A24DEA7416E3C63740F762CB203870B1:FC9FA12503FF387652EDECA6C4BCF3C7
        public async Task <byte[]> SignAsync(JsonWebKeySignatureAlgorithm algorithm, byte[] digest, CancellationToken cancellationToken = default(CancellationToken))
        {
            var result = await vault.Client.SignAsync(Inner.KeyIdentifier.Identifier, algorithm.Value, digest, cancellationToken);

            return(result.Result);
        }
 ///GENMHASH:FEE492F5B9F2CCFE2EBA87182AF9BB3C:A60DF4005777D357B57ED714179A311F
 public async Task <bool> VerifyAsync(JsonWebKeySignatureAlgorithm algorithm, byte[] digest, byte[] signature, CancellationToken cancellationToken = default(CancellationToken))
 {
     return(await vault.Client.VerifyAsync(Inner.KeyIdentifier.Identifier, algorithm.Value, digest, signature, cancellationToken));
 }
 ///GENMHASH:941A212532B2484985C0C67B55878584:EEEF6B4C0E5650CF744C9BEDCB5F5483
 public bool Verify(JsonWebKeySignatureAlgorithm algorithm, byte[] digest, params byte[] signature)
 {
     return(Extensions.Synchronize(() => VerifyAsync(algorithm, digest, signature)));
 }
 ///GENMHASH:D3DFB0D2185AF1F41A37363CE2556419:50116362EC57A25887D53D2FE0E43FFF
 public byte[] Sign(JsonWebKeySignatureAlgorithm algorithm, params byte[] digest)
 {
     return(Extensions.Synchronize(() => SignAsync(algorithm, digest)));
 }