Comércio pela Internet Júlio César Marcondes Júnia Vieira Porto Engenharia de Computação Redes de Computadores II 1º Semestre/2005 Introdução • Compra de bens pela Internet • Dois sistemas: – SSL (secure sockets layer) – SET (secure electronic transations) • Grande uso da infra-estrutura de cartões de pagamento • Três participantes: – Cliente – Comerciante – Banco comercial Comércio pela Internet usando SSL • SSL = “Camada de portas de segurança” • Protocolo projetado para fornecer criptografia de dados e autenticação entre um cliente e um servidor Web. • Amplamente usado no comércio pela Internet. • Situa-se entre a camada de aplicação e a camada de transporte. Características do SSL • Autenticação do servidor SSL – Permite que o usuário confirme a identificação de um servidor. • Autenticação do cliente SSL – Permite que o servidor confirme a identidade de um usuário. • Sessão SSL criptografada – Toda informação entre cliente e servidor é criptograda pelo software remetente. Como a SSL funciona 1. Browser envia o nº da versão SSL que utiliza e as preferências criptográficas. 2. Servidor envia o nº da versão SSL que utiliza, as preferências criptográficas e seu certificado (criptografado por uma chave pública). 3. Se a CA (autoridade certificadora) estiver na lista de CA’s de confiança, browser usa a chave pública da CA para descriptografar o certificado e obter a chave pública do servidor. 4. Browser gera sessão de chave simétrica e a envia criptografada ao servidor. Como a SSL funciona 5. Browser informa que as futuras mensagens serão criptografadas com a chave da sessão, e outra mensagem informando que a fase de apresentação está encerrada. 6. Servidor faz o mesmo. 7. Começa a sessão SSL: - Servidor e browser usam as chaves de sessão para criptografar/descriptografar dados e para validar a integridade. Como a SSL funciona Fonte: http://ocw.mit.edu/OcwWeb/Electrical-Engineering-and-Computer-Science/6-857Fall2003/CourseHome/ Limitações da SSL • Não foi criada para transações com cartões de pagamento. • Fraude do comerciante. • Compra com cartões de crédito roubados. Comércio pela Internet usando SET • SET = “transações eletrônicas seguras”. • Projetado especificamente para transações seguras com cartões de pagamento na Internet. • Desenvolvido pela Visa International e MasterCard International em 1996. Características do SET • Criptografa tipos específicos de mensagens envolvendo cartões de pagamento. • Envolve o cliente, o comerciante e o banco do comerciante. • Os três participantes devem ter certificados. • Especifica a atribuição de responsabilidades relacionadas à transação. • O nº do cartão do cliente é passado ao banco sem que ele veja esse número em texto aberto (evita roubos do número de cartão). Componentes de software na transação SET • Carteira do browser: – Armazenagem e administração de cartões. • Servidor do comerciante: – Comercialização e fechamento de pedidos de compra. • Gateway do adquirente: – Processa a transação do cartão no banco. Como o SET funciona • 1ª Etapa - Identificação. Todas as entidade envolvidas relacionam financeiramente através do Certificado digital. • 2ª Etapa – Autorização. Confirmação da existência da financeira e do crédito necessário. Obs : A autenticação das mensagens deve ser testada em todas as etapas, garantindo que a mensagem não foi modificada durante o seu envio. (Uso de assinaturas digitais.) Obs2 : A assinatura digital utilizada na autenticação é gerada através da cifragem da “Message Digest”. Message Digest – O que é isso? • O protocolo SET utiliza como padrão de algoritmo Hash o SHA-1 (Secure Hash Algorithm). Algoritmo este que teve origem em outubro de 1995 nos USA e é utilizado até hoje 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 dessas mensagens em uma mensagem de 160bits chamada de “Message Digest”. Como funciona o Message Digest • Durante a execução do algoritmo Hash são aplicadas funções MOD (AND, OR, XOR, NOT, << e >>). Deste modo e com o uso do “Message Digest” é impossível chegar à mensagem origem. Além disso a probabilidade de duas mensagens distintas terem a mesma “Message Digest” é praticamente nula. • Sendo assim, caso algum bit seja mudado durante a transmissão da mensagem, o cálculo feito pelo receptor irá detectar tal mudança. • Sem falar que a “Message Digest” também pode ser usada para gerar a assinatura digital, através da sua cifragem pela chave privada do emissor, garantindo portanto a autoria. Etapas do E-commerce Fonte :http://www.dca.fee.unicamp.br/courses/IA368F/1s1998/Monografias/flavia/e-commerce.html Etapas do E-commerce 1. Para enviar a mensagem para Bob, Alice dispara o aplicativo responsável pela segurança no envio da mensagem. (É gerado um “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. Etapas do E-commerce 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. 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. Etapas do E-commerce 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. Etapas do E-commerce 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. Ferramentas de desenvolvimento • IIS (Internet Information Server): servidor Web responsável pelas funções de conexão e comunicação com a Web. • Commerce Server: servidor de comércio eletrônico, responsável pelo controle e gerenciamento de todas as transações envolvidas em uma compra eletrônica. Desde a apresentação dos produtos, até a efetuação do pagamento. • ODBC (Open DataBase Connectivity): padrão de método de acesso a qualquer base de dados desenvolvido pela Microsoft. • DBMS (Database Management System): uma coleção de programas que possibilita o armazenamento, modificação e extração de informações de uma base de dados. • Database (Base de Dados): repositório de dados onde estarão armazenadas informações de clientes e produtos. Organização da Base de Dados Fonte :http://www.dca.fee.unicamp.br/courses/IA368F/1s1998/Monografias/flavia/e-commerce.html Página exemplo Fonte :http://www.dca.fee.unicamp.br/courses/IA368F/1s1998/Monografias/flavia/e-commerce.html Dúvidas Bibliografia • Site : Comércio eletrônico – Estudo de Caso http://www.dca.fee.unicamp.br/courses/IA368F /1s1998/Monografias/flavia/e-commerce.html • Kurose e Ross; Redes de Computadores e a Internet. Exercício • Suponha que Homer está comprando mercadorias de Abul Inc. pela Internet. Quais são os passos necessários para a realização dessa transação, através do SSL? • Por que atualmente o SET é considerado mais seguro que o SSL?