http://www.cic.unb.br/docentes/pedro/sd.htm > protocolos: e-moeda

Moeda Eletrônica 
Conceitos e Protocolos de Segurança

Luciana de Amorim Monteiro
Curso de Extensão em Criptografia e Segurança na Informática
Turma 2 -Trabalho final - Julho/98





Introdução

 O termo Eletronic Money (e-money), também chamado de eletronic cash ou digital cash, ainda não tem uma definição precisa. Refere-se a transações efetuadas eletronicamente com o propósito de transferir fundos de uma parte para outra. Digital cash por si só é basicamente um outro valor corrente e as transações realizadas com ele podem ser visualizadas como uma troca de moedas nos mercado estrangeiro. Isto porque antes de utilizar o dinheiro digital é necessário disponibilizá-lo de alguma forma e esse processo de conversão é semelhante à aquisição de moeda estrangeira.

 Segundo alguns autores, o dinheiro eletrônico representa a oportunidade de transformar totalmente o sistema de pagamentos: novas moedas podem ser criadas e negociadas pelas empresas, sem deixar de lado as premissas já adotadas pelas instituições financeiras tradicionais como segurança, confiabilidade e sigilo.

 O digital cash pode ser armazenado num chip e este colocado num cartão de plástico semelhante aos cartões de crédito tradicionais. Aos cartões com essas propriedades é dada a denominação de Smart Cards ou Cartões Inteligentes. Os Smart Cards estão revolucionando o comércio eletrônico e seu uso vem crescendo a cada dia. O setor que mais se destaca é o da telefonia, onde os cartões telefônicos vieram substituir as fichas no pagamento de ligações.

 Cuidados devem ser tomados para garantir que as transações efetuadas com dinheiro digital sejam confiáveis. A duplicação indevida de chips, permitindo o uso da mesma quantidade de dinheiro mais de uma vez, a possibilidade de se transferir dinheiro através de uma rede e de utilizá-lo em partes são pontos a considerar num sistema de pagamento eletrônico.

 Criptografia Assimétrica torna o desenvolvimento do comércio eletrônico possível, na medida em que permite identificar usuários, bancos e comerciantes numa transação, legitimando-os. Outros protocolos criptográficos impedem falsificações  e são utilizados para garantir a realização das transações monetárias.

 Alguns protocolos podem ser utilizados para o comércio eletrônico, entre eles o iKP ( Internet Keyed Payments Protocol), o SEPP (Secure Eletronic Payment Protocol),  o STT (Secure Transaction Technology), Secure Courier e o SET (Secure Eletronic Transaction).
 
 

Um pouco sobre Moeda Eletrônica


 Existem, por definição, dois tipo diferentes de E-money: identificado e anônimo (conhecido como digital cash).  O E-money identificado contém informações revelando o seu possuidor  - é semelhante ao cartão de crédito e permite o rastreamento de todas as operações. Utiliza um algoritmo geral para assinatura digital. Já o E-money anônimo não permite  que se descubra o seu proprietário, possibilitando, no entanto, a descoberta de todas as transações efetuadas (existem pagamentos que são anônimos relação ao negociante mas não ao Banco e outros anônimos para todas as transações).  Utiliza um algoritmo de criptografia de chaves públicas, como o RSA.

 Ambos E-money identificado e anônimo podem ser de dois tipos: online e offline. Online impõe a necessidade de comunicação com um banco, realizada via modem ou rede de computadores, para efetuar uma transação com uma terceira parte; offline não implica na comunicação direta com o banco.  A forma offline anônima, que constitui o verdadeiro dinheiro digital, é a forma mais complexa de E-money devido ao problema de se garantir que os valores armazenados sejam utilizados apenas uma vez (uma vez que o e-money é apenas uma representação eletrônica de fundos, torna-se muito fácil duplicá-lo e utilizar mais de uma vez os recursos disponibilizados originalmente - double-spending).

 Para impedir o double-spending, os sistemas online obrigam que o comerciante consulte o banco a cada transação para validar/verificar a existência de fundos. Os sistemas offline implementam um tipo especial de smart card com um chip contendo um mini banco de dados que registra todas as transações realizadas pelo cartão. Ao se tentar duplicar o e-money, o chip detecta a tentativa e impede a transação. Uma outra maneira é utilizar os protocolos criptográficos envolvidos para revelar a identidade do duplicador no momento em que uma peça do e-money retornar ao banco.
 
 

Smart Cards - Aplicações do Dinheiro Eletrônico


 Smart Card, também chamado de cartão inteligente, é  semelhante em tamanho aos cartões de crédito tradicionais, que possui um chip com memória suficiente para armazenar dinheiro. Com esta propriedade, permite a aquisição e troca de valores, possibilitando o comércio eletrônico. Provê portabilidade de dados, segurança e conveniência.

 Muitas são as utilizações dos Smart Cards atualmente: controle de acesso, pagamento de ligações telefônicas, pagamento de assinaturas de canais de TV, convênios médicos ou simplesmente como porta-moedas eletrônico.

 Os cartões inteligentes diferem quanto à memória e forma de contato. Quanto à memória, dividem-se em cartões de memória, cartões com microprocessador e cartões híbridos.
· Cartões de memória: armazenam informações e dependendo da tecnologia empregada, podem ser descartáveis ou reutilizáveis. Não há processamento no cartão e sim nas máquinas leitoras.
· Cartões com microprocessador: é considerado o "verdadeiro" smart card pois possui uma CPU com capacidade para efetuar comandos e uma área de memória para armazenar informações. Pode ser recarregado em terminais ATM, terminais específicos ou até mesmo através de computadores pessoais ligados à conta corrente do possuidor. Ao armazenar informações, impede o double-spending.
· Cartões híbridos: são aqueles que, além do chip, possuem também tarja magnética.

 Quanto à forma de contato podem ser com contato, onde o acesso aos dados e aplicações do smart cards se dão através do contato físico com o dispositivo de leitura, que se comunicam por sinais elétricos, ou sem contato (contactless), onde não há necessidade de contato físico.

 O comércio eletrônico com cartões inteligentes vem crescendo bastante a cada dia. Proporcionalmente, aumentam as preocupações dos usuários com a segurança com que suas transações são feitas.

 Para solucionar o problema, a Visa Internacional e a MasterCard anunciaram, em parceria com outras empresas, o desenvolvimento de uma norma de segurança para pagamentos com porta-moedas feitas em redes abertas, conhecida como SET (Secure Eletronic Transaction).

 O SET usa técnicas sofisticadas que tornam o ciberespaço um local seguro para manutenção da confiabilidade da informação, e autenticação das partes envolvidas na transação, através de certificados digitais.

 O comércio eletrônico e a sobrevivência do e-money só são possíveis devido à criptografia assimétrica e aos sistemas de assinaturas digitais. Um pouco de criptografia será visto no próximo item.
 
 
 

Criptografia - Tornando o comércio eletrônico possível


 Criptografia hoje pode ser resumida como o estudo de técnicas e aplicações que dependem da existência de problemas difíceis de serem solucionados. Entenda-se aqui problemas difíceis como aqueles cuja solução depende de alguma informação secreta como a decriptação de uma mensagem ou a assinatura de algum documento digital ou ainda aqueles que estão relacionados a funções de hash.

Encriptação é a transformação de dados em alguma forma ilegível, com o propósito de garantir privacidade da mensagem. A decriptação é o inverso: é a transformação de dados ilegíveis numa mensagem inteligível.

 A encriptação e a decriptação utilizam uma chave secreta. Alguns algoritmos utilizam a mesma chave para encriptar e decriptar, enquanto outros utilizam chaves diferentes para estas operações. À criptografia que utiliza as mesmas chaves para encriptação e decriptação damos o nome de Simétrica; quando chaves diferentes são utilizadas, a criptografia é referenciada como Assimétrica e as chaves denominadas privadas (para encriptar e/ou assinar) e públicas (utilizadas para decriptação e verificação de assinatura).

 Mas a criptografia é mais do que  encriptação e decriptação. É também a possibilidade de se garantir a legitimidade de assinaturas eletrônicas.

 A criptografia prevê mecanismos para a autenticação. Uma assinatura digital relaciona um documento ao possuidor de uma determinada chave privada e um timestamp digital relaciona um documento a sua criação num determinado tempo. Estes mecanismos podem ser utilizados para controlar acessos a um disco compartilhado, uma instalação de alta segurança etc.

 Um certificado digital é um documento eletrônico assinado por agente confiável, cujo propósito é transferir confiança na autenticidade por ele verificada de um dado ali contido.

 Com algumas pequenas ferramentas é possível elaborar esquemas e protocolos que permitam o pagamento através de moeda eletrônica.

 A criptografia assimétrica e as assinaturas digitais tornam possível a existência do E-money porque garantem a integridade das mensagens e validam os participantes da transação, autenticando-os.

Em linhas gerais, os protocolos criptográficos funcionam da seguinte forma: o banco e  os usuários (compradores e vendedores) possuem chaves públicas  (conhecidas por todas) e chaves privadas (conhecidas apenas por seus possuidores). Eles utilizam essas chaves para encriptar/decriptar mensagens (ordens de pagamento) e também para assiná-las, garantindo a identificação. O banco utiliza sua chave privada para assinar as ordens de pagamento e os usuários e comerciantes a validam através da chave pública (amplamente divulgada). Os usuários assinam depósitos e retiradas utilizando sua chave privada e o banco utiliza a chave pública do usuário para validar estas assinaturas. Com a garantia de que comprador, vendedor e o banco são realmente quem dizem  ser, as transações podem então ser realizadas.

 Abaixo, alguns protocolos utilizados no comércio eletrônico.
 

Alguns Protocolos de Moeda Eletrônica

 

iKP - Internet Keyed Payment Protocol.


 Desenvolvido pela IBM e pela Zurich Research Laboratory, este protocolo define transações de natureza semelhante aos cartões de crédito, onde um comprador e um vendedor interagem com uma terceira parte, por exemplo  um banco, que irá autorizar a transação. É baseado em criptografia assimétrica.

 Uma transação típica realiza seis fluxos: INITIATE, INVOICE, PAYMENT, AUTH-REQUEST, AUTH-RESPONSE, CONFIRM.

INICIATE - o comprador inicia a transação, enviando uma mensagem para o vendedor.
INVOICE - a resposta do vendedor. Opcionalmente pode conter a assinatura do vendedor nos dados da transação.
PAYMENT -  a resposta do comprador, que envia um slip contendo o seu número de conta e possivelmente um PIN (Personal Identification Number), encriptado com a chave pública do banco. Opcionalmente, há a assinatura do comprador na transmissão dos dados.
AUTH-REQUEST - o vendedor envia ao banco o slip do comprador
AUTH-RESPONSE - a resposta do banco ao vendedor, contendo a assinatura do banco nos dados transmitidos.
CONFIRM - a confirmação do vendedor para o comprador dizendo que a transação foi autorizada.
 
 
 
 

Algumas considerações sobre o protocolo:
· Mensagens entre o comprador e o vendedor devem ser trocadas através da Internet
· Mensagens entre o vendedor e o banco podem ser mandadas pela Internet  ou através de uma rede financeira privada.
· As principais proteções criptográficas são a encriptação do slip com a chave pública do banco e a assinatura do banco na autorização de compra.
· Nem o vendedor nem qualquer outra pessoa pode obter o slip de pagamento enviado pelo comprador, então o número da conta do comprador é mantido privado
· Assinaturas do vendedor e comprador são opcionais,  provendo proteção adicional contra repudiação.
· O RSA é utilizado como o algoritmo de encriptação e para assinatura..
 
 

SEPP - Secure Eletronic Payment Protocol


 É uma especificação aberta para transações seguras com cartões bancários realizadas através da Internet, desenvolvida pela IBM, Netscapes, GTE, CyberCash e MasterCard.

 Utiliza o protocolo iKP direcionando-o  para transações HTTP e adaptando-o para pagamentos com cartões bancários. Utiliza MIME para transmissão de mensagens e o protocolo X.509 versão 3 para certificados.

 MIME - Multipurpose Internet Mail Entensions. É o padrão oficial proposto para mail eletrônico na Internet.

 Um exemplo de SEPP:
 O sistema CyberCash para pagamentos na Internet provê dois tipos de serviços: comprador para negociante (customer to merchant) e peer to peer. No primeiro caso, três parte são conectadas à Internet: o comprador, o vendedor e o servidor CyberCash. Os diálogos realizados entre as três partes são semelhantes aos descritos no protocolo iKP, onde o banco é substituído pelo servidor CyberCash.

 O CyberCash  permite pagamentos Peer to Peer entre usuários que possuam conta no servidor. Para abrir uma conta, o usuário adquire o software e faz o pedido ao servidor, gerando um par de chaves pública e privada. A pública será informada ao servidor e irá identificar a conta; a privada servirá para assinar mensagens. O usuário pode, a partir deste momento,  movimentar sua conta e efetuar transferências entre outras contas cadastradas no servidor.

 O CyberCash utiliza tecnologia de chaves públicas, combinada com algoritmos simétricos e funções de hash (RSA, DES e MD5), respectivamente.
 
 

Secure Courier


 É um protocolo proposto pela Netscape para prover comércio eletrônico seguro na Internet. Está no topo de um SSL (Secure Socket Layer) ou protocolo semelhante.

 O SSL, que atua na camada de transporte, prevê encriptação, autenticação e MAC’s (Message Authentication Codes).

 Assim como o iKP, Secure Courier é baseado no modelo de cartão de crédito, envolvendo uma terceira parte, o banco. Mensagens são enviadas entre o comprador e o negociante e entre o negociante e o banco. Este protocolo é mais simples em alguns aspectos do que outros protocolos de pagamentos que permitem que a integridade da mensagem e a confidencialidade dos serviços sejam entregues a um SSL ou a um nível mais baixo. Por exemplo, um campo identificador é suficiente para  ligar mensagens numa transação e impedir ataques por replay, uma vez que a camada mais baixa garante que o campo não será modificado. Em outros protocolos, o campo de identificação precisa de proteção criptográfica explícita.

 O Secure Courier utiliza RSA para encriptação e assinaturas digitais e também o DES.
 
 

STT - Secure Transaction Technology


 Protocolo desenvolvido pela Microsoft e Visa Internacional. Utiliza o PCT (Private Communication Technology). O STT, no entanto, não pode ser colocado no topo de um PCT e  pode rodar sobre TCP.

PCT é uma reprodução do SSL, tendo sido desenvolvido para corrigir falhas e melhorar o protocolo  inicial. Como principais diferenças podemos citar:

· as mensagens trocadas entre o cliente e o servidor são mais curtas que o SSL;
· autenticação de mensagens e encriptação usam diferentes chaves, significando que a autenticação utiliza chaves mais longas que a encriptação, podendo ser mais segura;
· no algoritmo de autenticação do PCT, a resposta depende do algoritmo escolhido, enquanto que no SSL é independente de algoritmo.

 Pretende gerenciar produtos sobre redes, incluindo a Internet, onde pagamentos são feitos por cartões bancários. O STT inclui mensagens para gerenciar mercadorias e serviços eletronicamente, solicitando autorizações de pagamento, certificados (credenciais) etc. Todas as partes envolvidas possuem um par de chaves públicas e privadas. A autenticação de todas as partes, baseada em assinaturas digitais e credenciais, é o propósito do protocolo.

 Utiliza DES e RC4 para encriptação da maioria dos dados; RSA é usado para autenticações, e para encriptar o número do cartão bancário.  A credencial é definida pelo protocolo, sendo diferente do padrão X.509.

 SEPP e STT foram unidos num outro protocolo denominado SET (Secure Eletronic Transactions).
 
 

Conclusão


 Existem dois tipos básicos de e-money: anônimo e identificado, ambos podendo ser online ou offline. O e-money anônimo offline constitui o verdadeiro digital cash e é o mais difícil de ser gerenciado devido à dificuldade de se impedir o double-spending.

 Os Smart Cards ou cartões inteligentes carregam um chip com memória suficiente para armazenar dinheiro e estão revolucionando o comércio eletrônico ao possibilitar a execução de pagamentos realizados através de uma rede de computadores. O exemplo mais marcante é o dos cartões telefônicos, que vieram substituir as fichas no pagamento de ligações.

 O crescimento do comércio eletrônico pressupõe uma melhoria na segurança das transações de pagamento realizadas através da Internet. Vários protocolos criptográficos foram desenvolvidos para garantir a integridade e autenticidade das partes envolvidas em uma transação.

 A criptografia assimétrica é utilizada na maioria dos algoritmos que provêem segurança no comércio digital devido ao fato de poderem implementar o conceito de assinaturas, primordiais neste tipo de aplicação.

 Alguns algoritmos importantes são o iKP, o SEPP, STT, o Secure Courier e o SET, um merge entre o SEPP e o STT.

 A escolha do algoritmo a ser empregado,  o tipo de e-money a ser utilizado e  a forma como esse vai ser disponibilizado e utilizado, constituem pontos importantes a serem discutidos quando da implantação de uma aplicação do comércio eletrônico. Quanto maior a segurança fornecida, maior a quantidade de pessoas a utilizar o produto, maior o sucesso da aplicação.

 A facilidade de efetuar pagamentos através de uma rede de computadores aumenta a cada dia. É importante que haja segurança nas transações para que o número de usuários aumente ainda mais: o desenvolvimento de métodos seguros de transmissão é uma preocupação das empresas de comércio eletrônico. O surgimento de outras técnicas criptográficas e o incremento das hoje existentes permitirá o crescimento do comércio eletrônico, difundindo ainda mais o uso do dinheiro digital.
 
 
 

Bibliografia


1. http://www.rsa.com/rsalabs/
2. Cybercash - sistemas de pagamento para a Internet - http://info.isoc.org/HMP/PAPER/181/abst.html.
3. E-money - mini-FAQ (release 2.0) - http://www.ex.ac.uk/~Rdavies/arian/emoneyfaq.html
4. SET Secure Eletronic Transaction - http://www.mastercard.com/set
5. Digital Cash and Monetary Freedom - http://info.isoc.org/HMP/PAPER/136/abst.htlm
6. Answers to frequently asked questions about Smart Cards - http://www.smartcrd.com/info/whatis/faq.htm

7. Prepaid Smart Card Techniques - http://ganges.cs.tcd.ie/mepeirce/Project/Chaum/cardcom.htlm
8. Revista CardNews, número 26, publicada em março/1998.