public void Setup() { publicKey = Mock.Of <IAsymmetricKey>(); signedContent = new byte[] { 0x10 }; signature = new byte[] { 0x20 }; result = commandProvider.GetVerifySignatureCommand(publicKey, signedContent, signature); }
public async Task <ActionResult <VerifySignatureResult> > Verify( [FromBody] VerifySignatureCommand command) { var(valid, fullName, photo) = await Mediator.Send(command); return(Ok(new VerifySignatureResult { FullName = fullName, Valid = valid, Photo = photo })); }
public void VerifySignature(ApplicationArguments arguments) { ReadKeyFromFileCommand readPublicKeyFromFile = fileCommandProvider.GetReadPublicKeyFromFileCommand(arguments.PublicKeyPath); commandExecutor.Execute(readPublicKeyFromFile); byte[] contentToVerify; if (arguments.HasFileInput) { ReadFileCommand <byte[]> readFileToVerify = fileCommandProvider.GetReadFileCommand <byte[]>(arguments.FileInput); commandExecutor.Execute(readFileToVerify); contentToVerify = readFileToVerify.Result; } else { contentToVerify = encoding.GetBytes(arguments.Input); } byte[] signatureToVerify; if (base64.IsBase64(arguments.Signature)) { signatureToVerify = base64.FromBase64String(arguments.Signature); } else { ReadFileCommand <byte[]> readSignatureToVerify = fileCommandProvider.GetReadFileCommand <byte[]>(arguments.Signature); commandExecutor.Execute(readSignatureToVerify); string base64Signature = encoding.GetString(readSignatureToVerify.Result); signatureToVerify = base64.FromBase64String(base64Signature); } VerifySignatureCommand verifySignature = signatureCommandProvider.GetVerifySignatureCommand(readPublicKeyFromFile.Result, contentToVerify, signatureToVerify); commandExecutor.Execute(verifySignature); }