Pergunta

Desculpe eu não poderia encontrar o melhor título para esta pergunta. A seguir é a minha obrigação.

Eu um trabalho em um projeto que ofertas que grande quantidade de transações de dinheiro para uma conta diferente. O sistema transfere automaticamente dinheiro para contas de A, B, C etc etc ,, Mas antes que isso seja feito algum um de A, B ou C devem aprovar (eletronicamente) o montante a ser transferido.

O que você acha que é a melhor maneira de fazê-lo? Eu quero o sistema para enviar um arquivo (PDF de algo) que é assinado digitalmente (?) E a pessoa autorizada a partir de A, B e C deve verificar e confirmar que a quantidade está correta.

Uma vez que o montante é alto I deve certificar-se o arquivo enviado pelo sistema não é adulterada e, ao mesmo tempo, eu também quero ter certeza do arquivo (resposta) enviado por A, B ou C também não é adulterado. Qual é a melhor maneira de alcançá-lo? Alguma idéia?

Foi útil?

Solução

Digital Signatures é o que você está procurando. Adobe PDF (desde que você mencionou pdf) permite-lhe assinar o pdf na versão gratuita do Adobe Reader e verificação também é feito automaticamente, assim que você abrir o documento pdf.

A diferença entre DigSig e MACs (H) como postado por Noldorin é que MACs usar criptografia simétrica, em que você precisar de um canal seguro para trocar a chave, enquanto que num PKI ambiente que não é necessária canal seguro.

Depende de como você deseja distribuir suas chaves.

Outras dicas

Você vai querer olhar para MACs (códigos de autenticação de mensagens). Há uma série de bibliotecas lá fora para várias linguagens que implementam algoritmos comuns, como HMAC .

EDIT: Veja também DSA ( http://en.wikipedia.org/wiki/Digital_Signature_Algorithm), que é um algoritmo popular para assinaturas digitais, e é totalmente implementado no quadro padrão .NET (namespace System.Cryptography).

A minha primeira reacção seria assinaturas digitais - mas eles têm uma falha fatal:. Eles são dados digitais que poderiam ser comprometidos por um usuário descuidado

Se isso é uma preocupação, você pode ir para o processo que os bancos South African usar, uma senha de uso único. Esta senha é transferido para eles através de um meio que não está envolvido na transação (na África do Sul Esta é de SMS, o que eu recomendo fortemente). Nós primeiro tipo em um nome de usuário e senha e, em seguida, obter o OTP via SMS que então precisa digitar para quaisquer operações que levam a dinheiro deixando nossas contas.

formas fortes de segurança (em aumentar a eficácia) incluem (não sou especialista, mas eu sei que alguns):

  • Conhecimento (A senha)
  • Possession (Um cartão SIM de telefone celular que pode receber SMSes, ou um pendrive USB com um certificado)
  • Localização (Um computador com um sistema de gestão certificado baseado em hardware, CellID)
  • Time (OTP expirar, a transação deve ocorrer no tempo específico)
  • Identidade (Um leitor de impressões digitais - efetivamente uma senha - mas insanamente longa)
  • Exclusividade (Um cabo de fibra óptica codificado na polarização dos fotões)

Pelo que eu sei se tem alguma três delas você pode se sentir confortável com a sua segurança. Adicionando mais aumenta a segurança exponencialmente, mas também aumenta o fator inconveniente. Os bancos usam conhecimento, posse e tempo na África do Sul. - e phishing realmente não trabalho contra os bancos da África do Sul

Espero que isso te ajudou um pouco.

Para assinar digitalmente um arquivo, você pode usar qualquer um dos parceiros da Microsoft. Arx, por exemplo, fornecer-lhe com uma ferramenta chamada CoSign que você pode usar para livre (ou pelo menos a sua versão de teste). Isso permitirá que você adicione assinaturas electrónicas para a maioria dos formatos disponíveis (Word, PDF, XML etc ').

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top