Universidade Estadual de Campinas - Unicamp

Tópicos em Engenharia de Computação V

Tecnologias da Infra-estrutura de Informação em Ambientes Colaborativos de Ensino

Comércio Eletrônico - Estudo de Caso

Prof. Ivan L. M. Ricarte

Prof. Léo P. Magalhães

 

Maria Flávia Cunha de Figueiredo Torres RA 974430


 Sumário

1. Introdução

2. Bradesco Net
2.1. Componentes do Sistema

3. Protocolo SET
3.1. Criptografia
3.2. Message Digest
3.3. Esquema de Segurança

4. Ferramenta de Desenvolvimento
4.1. Active Server Pages

5. Comunicação de Dados

6. Loja de Demostração

7. Conclusão

8. Bibliografia


1. Introdução

    Com a crescente expansão da Internet as empresas estão descobrindo que esse espaço não serve apenas para a divulgação mas também para a comercialização de seus produtos. Atualmente, as compras pela Internet totalizam aproximadamente 1 bilhão de dólares em todo o mundo e segundo projeções do governo norte-americano devem estar em torno de 10 bilhões de dólares no final do século. Por ser um ambiente aberto e de acesso anônimo a Web oferece riscos na transmissão e armazenamento de dados sigilosos, como números e senhas de cartões de crédito. A preocupação com a segurança na transmissão de dados tem aumentado a medida que cresce o interesse das empresas nessa área de comércio eletrônico.

    Para garantir a segurança de dados sigilosos envolvidos numa compra eletrônica, como o número do cartão de crédito, é necessária a criptografia desses dados. Essa técnica garante apenas que o emissor e o receptor terão conhecimento das informações enviadas.

    Outra questão está relacionada ao repúdio. Uma vez efetuada a venda o comerciante deve ter a segurança de que o verdadeiro dono do cartão efetuou a compra e que esse não poderá negar mais tarde o pagamento da mesma.

    O padrão SET (Secure Eletronic Transactions) surgiu da iniciativa de um consórcio de empresas como uma alternativa para resolver esses principais problemas relacionados ao comércio eletrônico. O SET é um protocolo de segurança desenvolvido para garantir a transmissão segura de informações financeiras em redes públicas. Muita coisa ainda vai ser dita, discutida e modificada até que esse protocolo se firme como um padrão mundialmente reconhecido e aceito. Porém, segundo a Gartner Group, existe uma probabilidade de 60%  de no final de 2001 o SET já ser o padrão mundial para segurança em pagamentos eletrônicos, dando suporte a mais de 50% das compras na Web.

    Por ser o SET um protocolo novo, mas com grandes perspectivas de se tornar um padrão, esse trabalho tem como tema o primeiro site nacional de comércio eletrônico que utiliza esse protocolo de segurança, o Bradesco Net.


2. Bradesco Net

    A primeira iniciativa nacional, e uma das primeiras mundiais, de implementação do protocolo SET para pagamento em compras eletrônicas foi a do Bradesco através da inauguração do shopping virtual Bradesco Net.

    O Bradesco Net foi inaugurado no dia 24 de março de 1998 no endereço eletrônico http://www.bradesco.com.br/comercio. A principal característica desse shopping é a utilização da carteira eletrônica (as "Wallets"), um conceito novo introduzido na especificação do protocolo SET. O sistema cobre os pontos mais críticos do comércio eletrônico: sigilo, autenticação, através dos certificados digitais, integridade, autenticidade das informações e não repúdio.

    O shopping foi construído no período de um ano, teve um custo de 700 mil dólares e nasceu com 13 lojas conveniadas.

    O site do Bradesco é um hospedeiro de lojas que queiram realizar vendas pela Web. O Bradesco não oferece produtos, ele fornece a infra-estrutura de um sistema de pagamentos pela Internet. As lojas interessadas assinam um convênio com o Bradesco Net e assim podem receber pagamentos eletrônicos efetuados com os cartões de crédito, débito e/ou de poupança do banco.

    Resumidamente, a compra virtual funciona da seguinte forma: ao fazer uma compra pela Internet numa loja conveniada, o cliente do Bradesco utiliza a carteira eletrônica, que ele mesmo instala no micro ou mantém em disquete. Ao concretizar a operação é emitido um recibo com o número da operação e a mercadoria é enviada pelo lojista.

    A home-page da loja conveniada pode estar hospedada num domínio próprio ou dentro do domínio do Bradesco Net. Caso a loja tenha um domínio próprio, na hora do pagamento, é feito o link para o back-end do Banco.
 

2.1 Componentes do Sistema

O sistema de comércio eletrônico utilizado pelo Bradesco Net é formado pelos seguintes componentes:
 

3. Protocolo SET

    Com sua primeira versão lançada dia 31 de maio de 1997, o SET (Secure Eletronic Transactions) é um protocolo desenvolvido por um consórcio de empresas, formado pela Visa, MasterCard, Netscape, IBM, Microsoft, GTE, SAIC, Terisa Systems e Verisign, para garantir a transmissão segura de informações pessoais e financeiras em redes públicas. Essa segurança é garantida com o uso de esquemas de criptografia durante as atividades de autorização, autenticação e identificação da compra e venda eletrônica.

    A identificação é a primeira etapa na compra eletrônica. Tanto comprador como vendedor devem se certificar sobre a verdadeira identidade do outro. Todas as entidades envolvidas na transação devem possuir um Certificado Digital, que é um tipo especial de estrutura de dados digitalmente assinada. Para o Comprador, o certificado é como uma representação eletrônica do seu cartão contendo além da identificação do cartão e de seu proprietário, a chave pública do comprador e a assinatura digital da instituição que emitiu o certificado. Para o Vendedor, o certificado é como um adesivo digital que comprova sua ligação com uma instituição financeira permitindo o recebimento de pagamento com determinado tipo de cartão. Esses certificados são válidos por um determinado período de tempo e cada um fica armazenado criptografado e protegido por senha no  computador do seu proprietário.

    Na segunda etapa da compra, a autorização, o vendedor deve confirmar a validade do número do cartão do comprador junto à sua administradora de cartão e se esse tem o crédito necessário para realizar a compra.

    A autenticação das mensagens deve ser testada em todas as etapas onde informações essenciais sejam trocadas, fornecendo uma garantia de que a mensagem não foi modificada durante o seu envio. Essa garantia é fornecida pelo uso de envelopes e assinaturas digitais.

    A assinatura digital além de garantir a integridade da mensagem, comprova também a sua autoria. Ela é gerada através da cifragem da “Message Digest”.

    O protocolo SET, assim como o HTTP, é um protocolo de comunicação para Internet. Porém seu uso é exclusivo para transações comerciais. A figura 1 mostra um esquema com todos os protocolos já utilizados ou em implantação nas comunicações pela Internet e a localização do SET nesse esquema.
 

Figura 1 - Protocolos da Internet
 

3.1. Criptografia

    A criptografia é uma técnica antiga de codificar mensagens para que só o emissor e o receptor possam entender seu significado, sem haver manipulação indevida das informações durante sua transmissão. Consiste basicamente de um algoritmo e uma chave que é associada à mensagem através desse algoritmo. Essa técnica esteve presente no sistema de escrita hieroglífica dos egpícios há quase 4.000 anos. Uma de suas principais utilizações, nesse século, foi durante a 2a Guerra Mundial.

    O uso de técnicas de criptografia é hoje a forma mais completa de garantia da segurança dos dados nas transações eletrônicas.

    Os esquemas criptográficos são classificados em:
 

    O protocolo SET utiliza o esquema híbrido de criptografia, utilizando o algoritmo RSA no esquema assimétrico e o DES no simétrico.
 

3.2. Message Digest

    O protocolo SET utiliza como padrão de algoritmo Hash o SHA-1 (Secure Hash Algorithm). O SHA-1 é o algoritmo padrão nos Estados Unidos desde outubro de 1995, utilizado por todos os departamentos e agências federais.
 
    O SHA-1 é um conjunto de funções aplicado em mensagens de tamanho menor que 264 bits, produzindo uma representação condensada da mensagem de 160-bits chamada de “Message Digest”. Durante a execução do algoritmo Hash são aplicadas funções MOD (que não possuem função matemática inversa, ou unidirecionais), AND, OR, XOR, NOT, << e >>. Por utilizar funções unidirecionais, a partir do “Message Digest” é impossível chegar à mensagem origem. Além disso a probabilidade de duas mensagens distintas terem a mesma “Message Digest” é praticamente nula.

    Assim a  “Message Digest” é como uma impressão digital da mensagem. Ela garante a sua integridade, pois se algum bit for mudado durante a transmissão da mensagem, o cálculo feito pelo receptor para verificação irá detectar tal mudança. Essa verificação consiste no receptor aplicar o mesmo algoritmo Hash nos dados recebidos e comparar com o “Message Digest” recebido se eles forem iguais é sinal de que nenhuma mudança ocorreu. Além disso, quando a “Message Digest” é usada para gerar a assinatura digital, através da sua cifragem pela chave privada do emissor, ela serve como garantia de autoria. Assim, o repúdio (termo usado quando o emissor nega o envio da mensagem) é impossível, pois existe uma prova digital que aquela mensagem foi gerada pela pessoa que a assinou.
 

3.3. Esquema de Segurança

    O processo de elaboração, envio e recebimento de mensagens criptografadas, usando chaves simétricas e assimétricas, “Message Digest”, assinatura digital, envelope digital e certificados eletrônicos pode ser melhor entendido acompanhando os passos da figura 2, onde Alice deseja enviar informações confidenciais, por exemplo um pedido de compra, para Bob:

1. Para enviar a mensagem para Bob, Alice dispara o aplicativo responsável pela segurança no envio da mensagem. O sistema aplica uma função Hash sobre os dados confidenciais a serem transmitidos, por exemplo o número do cartão, gerando uma “Message Digest”.
2. A “Message Digest” é cifrada com a chave privada de Alice para produzir a  assinatura digital dessa mensagem.
3. Depois, o sistema gera uma chave randômica simétrica e cifra os dados, a assinatura digital e o certificado de Alice, num único pacote, gerando a mensagem criptografada.
4. Para poder decifrar a mensagem Bob irá precisar de uma cópia da chave simétrica. Essa chave é cifrada com a chave pública de Bob que Alice obteve através do certificado de Bob (previamente enviado), gerando um envelope digital.
5. Alice envia para Bob um pacote contendo a mensagem criptografada e o envelope digital.
6. O sistema de Bob recebe a mensagem e decifra o envelope digital com sua chave privada, obtendo assim a chave simétrica.
7. Bob usa a chave simétrica para decifrar a mensagem e obter os dados confidenciais, a assinatura digital e o certificado de Alice.
8. Ele decifra a assinatura digital de Alice com sua chave pública, que ele obteve através do certificado de Alice, obtendo assim a “Message Digest” original.
9. Ele roda a mesma função Hash, usada por Alice, sobre os dados recebidos, gerando uma “Message Digest”.
10. Finalmente, Bob compara as duas “Message Digest”, se elas forem iguais ele pode ter certeza da autenticidade e integridade dos dados recebidos.

 

Figura 2 – Esquema de Criptografia

    A especificação do protocolo SET define o formato das mensagens enviadas durante o comércio eletrônico, as formas de criptografia e o esquema de segurança a ser seguido.

    Além disso, através de uma esquema de assinatura digital dupla, as informações só estarão disponíveis para as entidades responsáveis pelo seu tratamento. Os dados da compra são cifrados com a chave pública do vendedor e os dados do cartão são cifrados com a chave pública da instituição financeira. Assim, a administradora de cartão não terá acesso à lista de compras, nem o vendedor terá acesso ao número do cartão de crédito do comprador.


4. Ferramenta de Desenvolvimento

    A ferramenta escolhida para desenvolvimento do shopping virtual Bradesco Net foi o Site Server da Microsoft. O servidor do shopping virtual deve rodar numa máquina pentium ou alpha 400 com o sistema operacional Windows NT Server 4.0. O Site Server é um pacote de programas onde são oferecidos todos os softwares necessários para construção e manutenção de um shopping virtual. São eles:
 
 
Figura 3 - Softwares de um servidor de comércio eletrônico
 

4.1 Active Server Pages

    Todas as páginas da Web trocadas entre compradores, lojistas e instituições financeiras são páginas no formato ASP. Essas páginas são geradas de forma dinâmica, através de consultas à base de dados.

    Uma página ASP é um conjunto de tags HTML, comandos Script, em JavaScript ou VBScript, e texto. Através dos comandos Script são realizadas as consultas e modificações na base de dados. Esses comandos são delimitados através dos marcadores: <% e %>.

    Abaixo está um trecho de uma página ASP como exemplo.

<--! Tag HTML para definição da cor da fonte -->
<FONT COLOR=“GREEN”>
<--! Comando Script que verifica se a hora atual está entre 12:00AM e 12:00PM -->
<% If time >= #12:00:00 AM# And Time < #12:00:00:00 PM# Then %>
<--! Texto a ser escrito na página caso seja de manhã -->
Good Morning!
<--! Comando Script Else -->
<% Else %>
<--! Texto a ser escrito caso não seja manhã -->
Hello!
<--! Comando Script que finaliza o If -->
<% End If %>
<--! Tag HTML de término da definição da cor da fonte -->
</FONT>

    As páginas ASP provêem a mesma flexibilidade de programas CGI sem ocasionar problemas de performance por tradeoff. Com CGI para cada requisição do cliente é criado um processo no servidor para atender aquela requisição. Com isso existe muito consumo de tempo e de memória do servidor para criação dessses processos. A criação das páginas ASP é através de processos multi-threaded o que otimiza o atendimento a várias requisições ao mesmo tempo.
 


5. Comunicação de Dados

    O comércio eletrônico pode ser dividido em várias fases distintas (ver figura 4):
1. Envio do pedido:
1.1. Envia pedido ao lojista com as informações referentes aos produtos selecionados e o valor da compra e
1.2. Envia pedido ao banco com as informações do cartão para pagamento e o valor a ser pago;
2. Verificação dos certificados digitais do comprador e do lojista;
3. Envio da confirmação do pedido para o lojista;
4. Confirmação do pedido efetuado enviado por e_mail;
5. Requisição de pagamento feita pelo lojista para o banco;
6. Efetuação do pagamento do lojista.
 
Figura 4 - Esquema de compra

    A troca de mensagens relacionadas ao pagamento da compra é criptografada e enviada através do protocolo SET. O aplicativo responsável pela comunicação do cliente com o Banco e com o lojista para elaboração do pedido é a carteira digital. É ela a responsável por separar e enviar os dados do cartão para o banco e os da compra para o lojista.


6. Loja de Demostração

    No site do Bradesco Net está disponível uma loja de demonstração onde os usuários podem realizar compras virtuais para testar essa nova tecnologia. A figura 5 mostra a página inicial dessa loja que apresenta as opções de seções de produtos para compra.
Figura 5 – Tela de início da Loja de Demonstração

    A partir dessa página é possível navegar dentro da loja, escolhendo produtos e selecionando-os para inclusão na cesta de compras. A cesta de compra pode ser visualizada a qualquer instante e possui todos os dados do produto selecionado, seu valor e o valor total da compra.

    Se houver falha de comunicação ou se o comprador quiser voltar uma outra hora para efetuar a compra, os valores referentes a escolha feita são armazenados e através de cookies esses dados podem ser recuperados quando o comprador entrar novamente na loja.

    Na hora do pagamento é fornecida a opção de pagamento através da Carteira Eletrônica Bradesco. Caso seja essa a opção o próprio site vai apresentar a carteira do cliente na tela do seu micro para que esse escolha o endereço de entrega da mercadoria e o cartão para efetuar o pagamento. A Carteira Eletrônica Bradesco é mostrada na figura 6.

    O comprador quando instala a carteira em seu computador deve cadastrar pelo menos um endereço pessoal, que será o endereço utilizado para a entrega das mercadorias. Além disso, para cada cartão de pagamento registrado na carteira é gerado um certificado digital referente àquele cartão. Esse certificado vai ser a garantia para o banco da autenticidade do cartão e de seu portador.

Figura 6 – Carteira Eletrônica Bradesco

7. Conclusão

    A variedade de produtos a venda na Web é enorme. Qualquer produto que não precise ser experimentado, cheirado ou apalpado e que não seja perecível, é um sério candidato à venda virtual. A educação à distância também entra nessa lista. Já podemos encontrar cursos especializados, treinamentos, especializações, títulos de mestre e doutor oferecidos através de cursos virtuais e com pagamento eletrônico pela própria Web.

    A evolução do comércio eletrônico pela Web está diretamente ligado a evolução das técnicas que garantem a segurança na transmissão de dados sigilosos pela rede. Além disso, técnicas de marketing personalizado e direcionado ao consumidor alvo e novas formas de apresentação dos produtos, entre outros fatores, também estão na lista dos pontos de evolução dos shoppings virtuais. Tudo isso, busca a simpatia e a comodidade dos compradores.

    Existem alguns problemas que ainda precisam ser superados para que o comércio eletrônico cresça em qualidade e uso. Um desses problemas é a conquista da confiança dos compradores. Muito ainda precisa ser falado e provado para que essa confiança seja realmente conquistada. Dentro desse ponto temos a falta de assistência técnica que tranqüilize e oriente o usuário em caso de erros e falhas de comunicação.

    Um problema que tem surgido com a aceitação do protocolo SET diz respeito à política de segurança de alguns países do mundo. Na França, por exemplo, existe a restrição que toda mensagem cifrada deve ser possível de ser decifrada pelas autoridades governamentais. A solução encontrada na França é uma adaptação do protocolo SET, chamada C-SET (Chip-Secure Eletronic Transaction), que utiliza smartcards. O C-SET é compatível com o SET e permite transações entre comerciantes franceses e consumidores estrangeiros, assim como entre consumidores franceses e comerciantes estrangeiros.

    O uso dos smartcards tem mostrado ser uma possível evolução na forma de segurança das transações comerciais. E com a evolução dos computadores e o aumento da capacidade operacional desses, cada vez mais será necessário criar algoritmos de criptografia seguros que não possam ser quebrados por essas máquinas.


8. Bibliografia

[1] Prates, M., Loyolla, Waldomiro P. D. C., Educação à Distância Mediada por Computador (EDMC) - Uma Proposta Pedagógica.
http://www.puccamp.br/~prates/edmc.htm

[2] Revista Informática Exame. São Paulo, Editora Abril, 1997-1998

[3] CommerceNet Home Page - http://www.commerce.net/

[4] Basic Flaws in Internet Security and Commerce -
http://http.cs.berkeley.edu/~gauthier/endpoint-security.html

[5] Beginners' Guide to Cryptography - http://www.ftech.net/~monark/crypto/crypt/vig.htm

[6] RSA Data Security - http://www.rsa.com

[7] SET Especification Books One, Two and Three

[8] Matuck, M., O sucesso do Internet Banking do Bradesco é a base do Comércio Eletrônico recém lançado pelo banco.
http://www.intersection.com.br/artigos/1998/05061998.html

[9] PC Webopedia Definition and Links - http://www.pcwebopedia.com/

[10] Feit, S., SET - Needed to Build Trust. Application Development Trends, p. 68-72, Fev. 1997

[11] Microsoft Site Server Commerce Edition Documentation
http://www.microsoft.com/siteserver/commerce/default.asp

[12] Carroll, M., Internet-Commerce Security. Byte, Maio 1997

[13] Active Server Pages Overview -
http://www.microsoft.com/iis/guide/aspoverview.asp?A=2&B=9