public Response <VerifyResult> Verify(SignatureAlgorithm algorithm, byte[] digest, byte[] signature, CancellationToken cancellationToken = default) { var parameters = new KeyVerifyParameters { Algorithm = algorithm.GetName(), Digest = digest, Signature = signature }; using DiagnosticScope scope = Pipeline.CreateScope("Azure.Security.KeyVault.Keys.Cryptography.RemoteCryptographyClient.Verify"); scope.AddAttribute("key", _keyId); scope.Start(); try { return(Pipeline.SendRequest(RequestMethod.Post, parameters, () => new VerifyResult { Algorithm = algorithm, KeyId = _keyId.ToString() }, cancellationToken, "/verify")); } catch (Exception e) { scope.Failed(e); throw; } }
/// <summary> /// /// </summary> /// <param name="algorithm"></param> /// <param name="digest"></param> /// <param name="cancellationToken"></param> /// <returns></returns> public virtual Response <SignResult> Sign(SignatureAlgorithm algorithm, byte[] digest, CancellationToken cancellationToken = default) { var parameters = new KeySignParameters { Algorithm = algorithm.GetName(), Digest = digest }; return(SendRequest(SignOperation, parameters, () => new SignResult() { Algorithm = algorithm }, cancellationToken)); }
/// <summary> /// /// </summary> /// <param name="algorithm"></param> /// <param name="digest"></param> /// <param name="cancellationToken"></param> /// <returns></returns> public virtual async Task <Response <SignResult> > SignAsync(SignatureAlgorithm algorithm, byte[] digest, CancellationToken cancellationToken = default) { var parameters = new KeySignParameters { Algorithm = algorithm.GetName(), Digest = digest }; return(await SendRequestAsync(SignOperation, parameters, () => new SignResult() { Algorithm = algorithm }, cancellationToken).ConfigureAwait(false)); }
/// <summary> /// /// </summary> /// <param name="algorithm"></param> /// <param name="digest"></param> /// <param name="signature"></param> /// <param name="cancellationToken"></param> /// <returns></returns> public virtual Response <VerifyResult> Verify(SignatureAlgorithm algorithm, byte[] digest, byte[] signature, CancellationToken cancellationToken = default) { var parameters = new KeyVerifyParameters { Algorithm = algorithm.GetName(), Digest = digest, Signature = signature }; return(SendRequest(VerifyOperation, parameters, () => new VerifyResult() { Algorithm = algorithm, KeyId = KeyId.ToString() }, cancellationToken)); }
/// <summary> /// /// </summary> /// <param name="algorithm"></param> /// <param name="digest"></param> /// <param name="signature"></param> /// <param name="cancellationToken"></param> /// <returns></returns> public virtual async Task <Response <VerifyResult> > VerifyAsync(SignatureAlgorithm algorithm, byte[] digest, byte[] signature, CancellationToken cancellationToken = default) { var parameters = new KeyVerifyParameters { Algorithm = algorithm.GetName(), Digest = digest, Signature = signature }; return(await SendRequestAsync(VerifyOperation, parameters, () => new VerifyResult() { Algorithm = algorithm, KeyId = KeyId.ToString() }, cancellationToken).ConfigureAwait(false)); }
public async Task <Response <SignResult> > SignAsync(SignatureAlgorithm algorithm, byte[] digest, CancellationToken cancellationToken = default) { var parameters = new KeySignParameters { Algorithm = algorithm.GetName(), Digest = digest }; using DiagnosticScope scope = Pipeline.CreateScope("Azure.Security.KeyVault.Keys.Cryptography.RemoteCryptographyClient.Sign"); scope.AddAttribute("key", _keyId); scope.Start(); try { return(await Pipeline.SendRequestAsync(RequestMethod.Post, parameters, () => new SignResult { Algorithm = algorithm }, cancellationToken, "/sign").ConfigureAwait(false)); } catch (Exception e) { scope.Failed(e); throw; } }