Ejemplo n.º 1
0
            public void Setup()
            {
                publicKey     = Mock.Of <IAsymmetricKey>();
                signedContent = new byte[] { 0x10 };
                signature     = new byte[] { 0x20 };

                result = commandProvider.GetVerifySignatureCommand(publicKey, signedContent, signature);
            }
Ejemplo n.º 2
0
        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);
        }