public SignedPostPolicy Sign(PostPolicy postPolicy, Options options, IBlobSigner blobSigner, IClock clock) { var state = new PostPolicySigningState(new PostPolicy(postPolicy), options, blobSigner, clock); var base64Signature = blobSigner.CreateSignature(state._blobToSign); var rawSignature = Convert.FromBase64String(base64Signature); var hexSignature = FormatHex(rawSignature); return(state.GetResult(hexSignature)); }
public async Task <SignedPostPolicy> SignAsync(PostPolicy postPolicy, Options options, IBlobSigner blobSigner, IClock clock, CancellationToken cancellationToken) { var state = new PostPolicySigningState(new PostPolicy(postPolicy), options, blobSigner, clock); var base64Signature = await blobSigner.CreateSignatureAsync(state._blobToSign, cancellationToken).ConfigureAwait(false); var rawSignature = Convert.FromBase64String(base64Signature); var hexSignature = FormatHex(rawSignature); return(state.GetResult(hexSignature)); }