Smart Card - Alessandro Coneglian Bianchini
Transcrição
Smart Card - Alessandro Coneglian Bianchini
TECNOLOGIA SMART CARD Emerson Assis Borba Email: [email protected] RESUMO Smart cards (cartões inteligentes) são dispositivos com formato e dimensões muito semelhantes a um cartão de crédito sendo que a principal diferença está no fato deste dispositivo possuir um chip com capacidade de processamento e armazenamento de informações. O presente material aborda o desenvolvimento de aplicações para smart cards objetivando a utilização de dinheiro eletrônico, o armazenamento de documentos de forma eletrônica e mecanismos de segurança utilizando chaves assimétricas e certificado digital. Os applets, programas Java que executam em smart cards foram desenvolvidos utilizando-se a tecnologia Java Card que é uma arquitetura que possibilita que programas escritos na linguagem Java sejam executados nestes pequenos dispositivos. Palavras-Chave: Smart Card; Autenticação; Controle de acesso; Segurança ABSTRACT Smart cards are small devices with shape and dimensions very similar to a credit card but the big difference between then, is that smart cards have a microchip with process and storage information capacity. This work describes the development of applications for smart cards with the purpose of using electronic cash, electronic documents storage and security mechanisms using asymmetric keys and digital certificate. The applets, programs that run into smart cards, was developed using the Java card technology, an architecture that enables codes written in Java language to run into these little devices. Universidade Anhanguera São Caetano do Sul, SP- Brasil. Keywords: Smart Card; Autentication; Access Control; Security Curso: Redes de Computadores e Telecomunicação 1 2 Tecnologia Smart Card INTRODUÇÃO Como veremos, neste documento, as aplicações do Smart Card vêm de encontro a essa necessidade de segurança. Podemos defini-lo como um cartão de plástico com um chip de computador embutido. O chip pode ser tanto um microprocessador com memória interna - Microprocessor Card - ou um chip de memória com lógica não programável - Memory Card. A conexão do chip pode ser tanto via contato físico direto como remotamente via uma interface eletromagnética. A necessidade de segurança e de uma confidencialidade crescente se faz mais presente no momento onde as formas eletrônicas de identificação substituem o reconhecimento físico e a assinatura grafológica. A emergência da Internet e a extensão das redes corporativas de clientes a fornecedores aceleraram a procura de soluções baseadas sobre a tecnologia de chave pública. Essa tecnologia permite os seguintes serviços: - Comunicação através de um canal protegido numa rede pública; - Autenticação de um cliente num servidor; - Assinaturas eletrônicas para garantir a confidencialidade, a integridade e a não repudiação da informação. Acredita-se que Smart Card possa oferecer mais segurança e confidencialidade que outros tipos de informação ou armazenamento de informação. Veremos que o Smart Card é um dispositivo de segura intrínseca. Ele é um local seguro para armazenamento de informação como chaves privadas, números de contas, e informações pessoais como informações biométricas, ou então para executar processos off-line como encriptação e decriptação de chaves públicas e privadas. Para alcançar esse propósito, é feito uso da tecnologia chamada Java card que possibilita o desenvolvimento de applets para serem utilizados em smart cards. Para garantir os serviços de segurança anteriormente citados é empregado o uso de chaves assimétricas, ou seja, chaves privada e pública e o uso de certificado digital. Smart card é aliado com a tecnologia Java card, oferece uma série de vantagens e benefícios. Além de compacto e do poder computacional, podem ser citados ainda segurança, portabilidade e facilidade de uso. Smart Cards oferecem também flexibilidade, que possibilita o compartilhamento de produtos e serviços num mesmo cartão. Lembra que essa característica torna o smart card dinâmico, ou seja, novos applets podem ser instalados e registrados mesmo depois que um cartão foi emitido, se adaptando às necessidades de mudança do usuário do cartão. Tendo em vista todas as vantagens e a Emerson A. Borba 3 praticidade das tecnologias citadas e o fato dessas tecnologias não terem sido ainda muito exploradas no Brasil, esse trabalho se propõe a servir de exemplo para que futuros trabalhos venham a serem desenvolvidos utilizando essas tecnologias. 1. Inicio O primeiro progresso real no desenvolvimento dos smart cards se deu na França, em 1974, através da patente registrada por Roland Moreno. Foi criada uma nova gama de cartões com capacidade de integrar o processamento lógico e o armazenamento de dados em um único chip de silício, medindo apenas alguns milímetros quadrados. A utilização dos smart cards era pouco difundida devido a ser uma tecnologia nova e que estava em constante evolução e com muitos problemas a serem resolvidos. Isto sem contar com os custos elevados e com maior a complexidade de produção em relação aos cartões convencionais). Um marco que alavancou a utilização desses cartões foi em 1984, com a adoção da tecnologia pela French PPT (agência postal e de telecomunicação da França) nos seus cartões telefônicos e telefones públicos. O sucesso dessa tecnologia e as funcionalidades que agregava despertaram grandes interesses no desenvolvimento e usos da tecnologia para novas aplicações. Em 1986, milhões de smart cards telefônicos estavam em circulação na França, chegando a quase 60 milhões em 1990 e 100 milhões em todo o mundo em 1997, sendo essa tecnologia empregada para telefonia em mais de 50 países Paralelamente ao trabalho realizado na França, a Alemanha contava com um projeto piloto onde empregavam diversas tecnologias baseadas em diferentes tipos de cartões dentre eles: cartões com tarjas magnéticas, cartões com armazenamento óptico e smart cards. A finalidade dessa diversificação foi à realização de comparativos entre as tecnologias para ver qual das tecnologias era a melhor. Estudos comprovaram grandes vantagens e benefícios dos smart cards em relação aos outros tipos de cartões. Dentre estas vantagens e benefícios destaca-se o alto grau de confiabilidade e segurança que a tecnologia dos smart cards proporcionava, além da uma surpreendente flexibilidade na construção e adaptação em novas aplicações. Os primeiros smart cards eram baseados em chips de memória, geralmente utilizando tecnologia EPROM e EEPROM. Posteriormente, começaram a surgir cartões mais elaborados, com circuitos mais complexos, dispondo até mesmo de um microprocessador e mecanismos criptográficos. Em 1988, na Alemanha, os cartões microprocessados foram empregados como 4 Tecnologia Smart Card solução em sistemas de autorização para o uso da rede de telefonia móvel analógica. A razão para introdução de tais cartões foi o aumento de fraudes nas tecnologias existentes até então. A aplicação dos smart cards foi significantemente demorada nos sistemas de transações bancárias devido a maior complexidade de controles em relação ao sistema de telefonia. Com o avanço da tecnologia na área dos semicondutores e técnicas modernas de criptografia, a sua utilização em sistemas bancários logo foi possível. Pouco a pouco ganharam mercado no âmbito comercial, em relação aos tradicionais cartões com tarjas magnéticas. Em 1993 todos os bancos franceses passaram a utilizar smart cards. Na Alemanha e Áustria essa marca foi atingida em 1996 com a implantação de smart cards multifuncionais com a possibilidade de um único cartão ter a capacidade de ser utilizado para várias aplicações distintas. Em 1999, diversos países da Europa introduziam sistemas de assinaturas digitais utilizando smart cards para armazená-las e utilizá-las de forma segura. A partir dessas e outras utilizações se notou que os smart cards proviam um alto grau funcional de flexibilidade e segurança se empregados corretamente. Outro ponto positivo e vital para a tecnologia é a sua especificação por normas ISO/IEC as quais garantem um padrão aberto e interoperável. 2. Cartão Smart Card é codificado por cinco fases • Fabricação confecção do Cartão: Essa fase é conduzida pelos fabricantes de chip. O circuito fraudulento até que ele seja montado no suporte plástico do cartão. A KF de cada chip é única e deriva chave mestra do fabricante do cartão. Outros dados de fabricação serão escritos no chip até o fim dessa fase. Então o chip estará pronto para ser entregue ao fabricante do cartão com a proteção da KF.. integrado de silicone é criado e testado nessa fase. A chave de fabricação (KF) é adicionada para proteger o chip de modificações. • Pré-Codificação do Cartão: Essa fase é conduzida pelos fornecedores de cartão. Nessa fase, o chip será montado no cartão de plástico que deverá ter o logo do provedor da aplicação impresso. A conexão entre o chip e o circuito impresso será feita e o conjunto da unidade será testado. Para aumentar a segurança e para permitir a entrega segura para o emissor do cartão, a chave de fabricação será substituída por uma chave de personalização (KP), que não poderá mais ser modificada. Instruções físicas de acesso a memória também serão desabilitadas. O Emerson A. Borba 5 acesso ao cartão será feito usando apenas endereçamento lógico de memória. Isso preservará a área do sistema e de fabricação serem a acessadas ou modificadas. • A Fase de Personalização e Codificação do Cartão: Essa fase é conduzida pelos emissores do cartão. Ela completa a criação de estruturas lógicas de dados. Os conteúdos de arquivos de dados e dados de aplicações serão escritos no cartão. Informação da identidade do proprietário do cartão, PIN, e a ferramenta desbloqueadora de PIN serão armazenados também. Ao fim, uma trava de utilização será escrita ao cartão para indicar que essa fase chegou ao fim. • A Fase de Utilização Periodo de Utilização do Cartão: Essa é a fase para o uso normal do cartão pelo seu proprietário. O sistema de aplicação, os controle de acesso lógico aos arquivos entre outros estarão ativados. O acesso a informação do cartão estará limitado pelas políticas de segurança configuradas de acordo com a aplicação. • Smart Card e sua Vida Util: Existem duas formas que o cartão pode entrar nessa fase. Uma é iniciada pela aplicação que escreve a chave de invalidação para um arquivo individual ou arquivo mestre. Todas as operações incluindo escrita e atualizações serão desabilitadas pelo sistema operacional. Apenas instruções de leitura poderão continuar ativas para propósitos de análise. Outra maneira de fazer o cartão entrar nessa fase é quando o sistema de controle bloqueia irreversivelmente o acesso porque tanto o PIN e o aplicativo que administra o PIN são bloqueados, bloqueando todas as operações. 3. Estrutura Física Smart Card Dentre as diversas características físicas relacionadas ao hardware e envolvidas na composição de um smart card, serão abordadas nesse trabalho apenas características relativas ao seu formato físico. Processos de construção dos smart cards, componentes como tipo de hardware utilizado (microprocessadores, memórias), características elétricas, padrão de leitoras, entre outras características não serão abordadas nesse trabalho por não ser o foco principal do mesmo. Para obter mais detalhes sobre estes tópicos, sugere-se consultar obras como: Smart Cards Handbook , normas ISO/IEC e fichas técnicas (datasheets) fornecidas pelos fabricantes. Tipicamente um smart card tem o tamanho de 85,6mm por 54 mm. Este formato é designado como ID-1 (identificação) especificado pelo padrão ISO 7810. Esse padrão simplesmen- 6 Tecnologia Smart Card te especifica as dimensões de padrões para cartões plásticos com e sem fita magnética. Além do formato ID-1 pode-se encontrar smart cards nos formatos ID-000 e ID-00, ambos especificados pelo padrão ISO. O formato ID-000 é o menor deles, sendo geralmente utilizado para aplicações como telefonia móvel em telefones GSM. A figura 1 demonstra os três formatos especificados pela norma ISO. Figura 1 – Formato de smart cards (definidos pela ISO 7810) Fonte: Axalto access (2006, p.31) 4. APLICAÇÕES Hoje em dia podemos ver essa tecnologia sendo usada cada vez em nosso cotidiano, seja em receptores digitais de TV por assinatura, cartão de acesso restrito a industrias e estabelecimentos Existem mais de 100 países ao redor do mundo que eliminaram moedas de sistema usando Smart Cards. Alemanha, França, Reino Unido, México e China têm os maiores programas. Outras aplicações para Smart Cards incluem autenticação e não repudiação de usuários de computador/internet, programas de lealdade de varejista, acesso físico, transporte de carga, rastreamento de produtos, identidade nacional, carteira de motorista (CNH) , passaportes, entre outros. Originalmente as aplicações para a tecnologia dos smart cards microprocessados foram para sistemas de identificação e setores de telecomunicações. A sua ampla utilização e as suas características chamaram a atenção do mercado, incentivando a adoção e o desenvolvimento da tecnologia e aplicações para os mais variados segmentos. O crescimento do comércio eletrônico através da realização de transações eletrônicas, de compras e serviços através internet e outros meios digitais criaram a necessidade de utilização de Emerson A. Borba 7 mecanismos de segurança para proteção da integridade e sigilo das informações envolvidas, tanto dos consumidores quando das empresas. Os smart cards atendem de forma adequada à demanda de soluções por aplicações seguras, de baixo custo e ao mesmo tempo flexíveis. O objetivo desta seção é demonstrar algumas aplicações atuais que utilizam à tecnologia dos smart cards nas mais variadas áreas, comprovando o seu alto grau de aceitabilidade em relação à segurança e outras facilidades que o mesmo disponibiliza. Seria demasiadamente exaustivo listar e explicar nesse trabalho todas as possibilidades de uso para os smart cards. Por isso serão abordadas as principais aplicações como: • Compras eletrônicas; • Autenticação e acesso seguro; • Assinaturas digitais; • Telecomunicações. Inúmeras são as utilizações para os smart cards. Esta seção tem a finalidade de apresentar algumas aplicações e até sugerir o emprego dos smart cards em algumas áreas interessantes. Uma sugestão de aplicação seria empregar a utilização dos smart cards em passaportes. Para facilitar o uso seria adotada a tecnologia contactless , juntamente com a biometria a fim de garantir a identidade do portador. Devido às características dos smart cards apresentados, o emprego dessa tecnologia nessa área preveniria fraudes e dificultaria e muito a falsificação de passaportes bem como a agilidade na verificação das informações. Outra sugestão é a unificação do sistema de documentação existente. Atualmente no Brasil as pessoas possuem inúmeros documentos para identificação como: carteira de habilitação de condutor, documento de identidade (conhecido como registro geral ou simplesmente RG), título eleitoral, cadastro de pessoa física (conhecido como CPF). Este já conta com uma versão eletrônica utilizando um certificado digital armazenado em um smart card (denominada e-CPF). Cada documento seria uma aplicação contida no cartão, sendo selecionada conforme sua utilização. Além de agilizar o processo no momento do uso, os documentos eletronicamente armazenado no smart card, garantiriam a autenticidade, a confiabilidade, a segurança e a privacidade do portador. Uma alternativa para evitar fraudes e falsificações com um custo relativamente baixo. Atualmente no Brasil e no mundo existem muitos problemas de vírus que depois de instalados, devido à ingenuidade das pessoas e até mesmo falhas de segurança em antivírus, ficam monito- 8 Tecnologia Smart Card rando toda movimentação de acesso nas de páginas de bancos. Esses vírus capturam tudo o que é digitado além de capturar imagens da tela desses sites. A utilização de um smart card que conteria a senha ou chave de acesso aos serviços do banco, ambas de forma criptografada, ajudaria a prevenir a captura dos dados através desses eventos como digitação e captura de imagens. Informações que antes seriam digitadas como: conta corrente, agência, senha de operação, etc. Passam a estar armazenadas de forma segura dentro do smart card, bastando o titular do cartão inserir ele em um leitor e acessar a aplicação bancária de forma segura. Isso não elimina a existência desses programas maliciosos, mas coibi o rapto de informações. 5. Padrão e Normas ISO/IEC Consideramos com a penetração dos smart cards no mundo e no cotidiano deve-se a um fator de grande relevância: a criação de padrões internacionais que fortaleceu o desenvolvimento da tecnologia. Normas ISO/IEC (figura 2) especificam diversas características dos smart cards, que vão desde a sua constituição física como o material utilizado para produzi-los, disposição dos componentes até o seu funcionamento em si, como características elétricas, métodos de comunicação, especificações de leitores e demais componentes envolvidos. Figura 2 – Padrões ISO/IEC envolvidos na tecnologia dos smart cards Fonte: RANKL E EFFING (2003, p.12). Emerson A. Borba 9 6. Leitor e terminais Básicos de Leitura e Acesso Temos terminais e leitores lêem e escrevem para os Smart Cards. Os leitores podem existir de várias formas e com capacidades diferentes. A maneira mais fácil de descrever um leitor é pelo método que ele faz a interface para o PC. Eles podem fazer esta interface para as portas seriais RS-232, para portas USB, para slots PCMCIA, para slots de disco, para portas infravermelho IRDA e para entradas de teclado. Outra diferença de tipos de leitores está na inteligência e nas capacidades de sua placa. Por isso, existem grandes diferenças de preços de leitores no mercado. As opções para a escolha de um terminal são muito grandes também. A maioria das unidades têm seu próprio sistema operacional. Eles tipicamente suportam outras funções como funções de modem e a impressão da transação. Abaixo Demonstramos algumas leitoras SmartCard em meios de acesso via dispositivos: Fonte: (Smart Card Network,2011) Figura 3 - Leitora externa Smartcard Reflex USB Fonte: (Smart Card Network,2011) Figura 4 – ilustra Cartão Leitor PCMCIA Smartcard Reflex 20 10 Tecnologia Smart Card Fonte: (Smart Card Chips, JUL 20, 2010) Figura 5 – ilustra Teclado Leitor Smartcard padrão USB Figura 6 – ilustra Leitor Smartcard /Controle de acesso Automação de Estacionamento 7. Smart Card e Vantagens O cartão smart card constitui um elemento fundamental da infra-estrutura de chave pública (PKI) que a Microsoft integra atualmente no Windows XP/Vista/7 ele se estende de fato as soluções puramente de software tais como a autenticação de cliente, a abertura de sessão, e o correio eletrônico seguro. O smart card constitui essencialmente um ponto de convergência para os certificados de chave pública e de chave associada, já que: ele garante um armazenamento inviolável de para a proteção das chaves privadas e de todas outras informações pessoais; ele permitir isolar o cálculo crítico para a segurança, relativos à autenticação, às assinaturas eletrônicas e a troca de chaves de toda outra parte não concernida do sistema; ele fornece certo nível de portabilidade que permite deslocar as referências e outras informações de ordem privada entre os computadores utilizados Emerson A. Borba 11 no local de trabalho, no domicílio ou em deslocamentos, por exemplo, hoje uma empresa tendo a tecnologia implantada e aprimorada como finalidade autenticação via cliente Windows (Microsoft) e Controle de Acesso: controle preciso de áreas restritas administração total acesso a pessoas diariamente 24 h por dia em seu tempo de permanência nas dependências e instalações da empresa, sendo assim tendo como base um sistema desenvolvido globalmente, podemos unificar somente um cartão Smart Card as duas funções tanto autenticação como controle de acesso. Resultando como um todo uma tecnologia a um nivel segurança alto com produto de qualidade. Empresas utilizam atualmente o método de autenticação mas comum Login: usuário X Senha, sabemos que podemos contar com complexidade utilizada em password devido ao recurso GPO “Group Police” serviço que tem a função de gerenciar e aplicar recursos nesse ambiente visando segurança e aplicações de políticas de TI , da mesma forma podemos utilizar esse recurso na autenticação Smartcard porém com mais segurança considerando que o usuário sempre leva seu cartão na ausência de seu posto de trabalho e automaticamente bloqueando seu computador no momento de retirar seu Cartão da leitora Smart Card. Considerando que podemos contar com alta complexidade, confiabilidade e segurança na criptografia empregada na tecnologia e em suas aplicações , administração e gerenciamento por Sistemas Operacionais e outros aplicativos em geral . Temos empresas que utilizam autenticação e controle de acesso em um único cartão , o cartão você pode imprimir a foto da pessoa e nome como forma de identificação do funcionário, da mesma forma pode fornecer um cartão com Chip ou sem Chip 8. Tipos de Smart Card Os cartões smart cards podem ser divididos em duas categorias e diferenciados de acordo com a sua constituição, sendo: smart cards equipados somente com chips de memória (memory only smart cards) e smart cards equipados com microprocessadores (microprocessed smart cards). Na figura 7 é demonstrado um esboço básico da divisão dos tipos de smart cards existentes, no que diz respeito ao tipo de chip utilizado e as formas de transmissão dos dados entre o cartão e o leitor. 12 Tecnologia Smart Card Figura 7 – Classificação dos smart cards Fonte: (Smart Card Chips, JUL 20, 2010) 8.1 Smart Cards de memória Um smart card de memória é um cartão que possui um chip contendo bancos de memória para armazenamento de informações relativas às aplicações onde é empregado. Os primeiros smart cards utilizados em grande escala foram para aplicações telefônicas. Estes cartões eram pré-carregados com um valor de créditos que era armazenado eletronicamente no chip de memória, sendo descontados à medida que fossem realizadas ligações telefônicas. A vantagem desse tipo de cartão está na sua simples tecnologia e alta funcionalidade, com custo baixo. Sua desvantagem está relacionada no que diz respeito a sua re-utilização. Os dados depois de gravados não poderiam mais ser reescritos. Em resumo, os smart cards de memória tem suas funcionalidades limitadas. Mas sua capacidade de prover a segurança lógica das informações é suficiente para protegê-las de acessos e manipulações não autorizadas. Geralmente são adotados em sistemas de crédito pré-pago e sistemas de identificação, por terem um custo baixo de fabricação. É uma solução excelente em relação à segurança e baixo custo . O diagrama básico de funcionamento interno de um memory card é demonstrado na figura 8. Emerson A. Borba 13 Figura 8 – Diagrama de blocos básico de um smart card somente de memória Fonte: (Smart Card Chips, JUL 20, 2010) Os dados necessários para aplicação estão armazenados na memória, geralmente uma EEPROM. O acesso à memória pode ser controlado através de um circuito de segurança lógica e a ROM armazena a maneira como o cartão deve funcionar na execução e monitoramento de suas tarefas. A comunicação com o mundo exterior é feita através de contatos metálicos e externos ligados as portas de entrada e saída. As funcionalidades desses smart cards apenas de memória são geralmente personalizadas para certas aplicações, o que restringe a sua flexibilidade, mas reduz significativamente os custos 8.2 Smart Cards Microprocessados Eles possuem todos os componentes básicos da estrutura de um computador pessoal, só que em uma escala muito pequena e com um poder de processamento menor. Sua capacidade é analogamente comparada aos primeiros PC IBM vendidos em 1981. Foram inicialmente utilizados em cartões bancários por terem a capacidade de armazenar seguramente as informações, através do uso de algoritmos criptográficos, além da possibilidade de uso em soluções para transações offline altamente seguras. Desde que o microprocessador foi agregado aos cartões, o mesmo tornou-se totalmente programável, deixando suas funcionalidades restritas apenas pelo espaço de armazenamento e pela capacidade do processador. Os únicos limites impostos aos desenvolvedores, na implementação de sistemas utilizando smart cards, são tecnológicos. Dentre as diversas características e vantagens desses cartões microprocessados, destacam-se: 14 Tecnologia Smart Card • Maior capacidade de armazenamento em relação a cartões magnéticos; • Habilidade de armazenar e processar seguramente dados; • Utilização de criptografia na proteção dos dados; • Totalmente programável; • Possibilidade de executar diversas aplicações no mesmo cartão. Essas e outras vantagens geraram inúmeras possibilidades de aplicação para esse tipo de smart card, potencializando a tecnologia dos smart cards microprocessados e proporcionando um constante crescimento e utilização Diferentemente dos smart cards de memória, esse tipo de cartão conta com um conjunto mais complexo de componentes como: ROM, EEPROM, RAM, CPU e NPU. A figura 9 apresenta a arquitetura básica em blocos de um smart card com microprocessador. Figura 9 – Diagrama de blocos básico de um smart card microprocessado Fonte: (Smart Card Chips, JUL 20, 2010) O funcionamento de cada componente será resumidamente descrito a seguir: na ROM é armazenado o sistema operacional do cartão, que é gravado quando o chip é produzido, não sendo possível trocá-lo. Como a EEPROM é um chip de memória não volátil, nela são gravados dados e programas, podendo ser alterados e apagados, sendo essas operações controladas através do sistema operacional. A memória RAM é utilizada pelo processador para efetuar as suas tarefas, sendo essa uma memória volátil. A CPU é responsável pelo processamento dos dados podendo contar com um co-processador (NPU). Os primeiros smart cards microprocessados tinham capacidade de executar apenas uma única aplicação. Já os smart cards mais modernos contam com um sistema operacional mais evoluído permitindo múltiplas aplicações em um único cartão. Nesse caso, a ROM contém basi- Emerson A. Borba 15 camente os componentes necessários para o funcionamento do sistema operacional, existindo a possibilidade de carregamento de diversas aplicações em sua memória EEPROM. Pode-se comparar a estrutura de um smart card microprocessado com a estrutura lógica de funcionamento de um computador, devido aos componentes utilizados, mas com recursos muito limitados. 8.3 Smart Card Sem Fio Os contactless smart cards possuem internamente a mesma estrutura lógica de funcionamento de um smart card microprocessado ou de um smart card de memória. Fisicamente conta com uma interface, adicional em sua estrutura física, encarregada de prover a comunicação através de rádio freqüência (RF) (figura 10). Nos cartões sem fio a energia bem como os dados são transferidos sem a necessidade de qualquer contato físico entre o cartão e a leitora). Figura 10 – Diagrama de blocos básico smart card sem fio Fonte: Smart Card Chips, JUL 20, 2010). Os dois tipos de smart cards (memória e microprocessados) podem utilizar essa funcionalidade, mas com algumas particularidades. Smart cards microprocessados sem fio possuem um circuito mais complexo o qual demanda mais energia para seu funcionamento, ou seja, mais irradiação do sinal é necessária para seu funcionamento. Já os memory only smart cards operam a uma distância da ordem de alguns metros, devido a menor complexidade do circuito e a baixa 16 Tecnologia Smart Card intensidade do sinal necessária para sua operação. Entretanto, aplicações que acessam o smart card a uma longa distância podem causar problemas, como o acesso indevido, que devem ser previstos e prevenidos. Smart cards sem fio são particularmente empregados para aplicações nas quais existe a necessidade de identificação (pessoas ou objetos) de forma rápida, segura e simples. Algumas aplicações para esses tipos de cartões: • Controle de acesso; • Ticket de transporte público; • Ticket de companhias aéreas; • Identificação de Bagagem; • Estacionamento; • Identificação de pessoas. Uma vantagem significativa em relação aos cartões de contato é o fato desse tipo sofrer menos degradação e falhas na comunicação ocasionada por mau contato, uso excessivo ou exposição dos contatos ao ambiente. Outra vantagem considerável é o aspecto visual, o que torna a utilização de smart cards sem fio uma solução muito elegante, pois nenhum componente é visível no cartão, como os contatos elétricos. A complexidade desse sistema sem fio está em sua padronização devido à existência de diferentes sistemas e padrões. Isto aumenta significativamente os custos dos leitores, pois os mesmos devem ser capazes de reconhecer esses diferentes padrões. Esse panorama vem mudando a cada dia e com o avanço da tecnologia já se consegue obter custos da tecnologia sem fio (cartões e leitores) similares aos cartões e leitores que utilizam contatos elétricos. Cartões híbridos, capazes de realizar a comunicação via contatos ou com a tecnologia sem fio já existem no mercado, proporcionando uma maior flexibilidade conforme a aplicação. 9. Meios de Autenticação de um Smart Card De uma forma simples, podemos afirmar que qualquer técnica biométrica assenta na recolha de um conjunto de características próprias de um indivíduo, sendo a autenticação o resultado (positivo ou negativo) da comparação dessas características com um padrão 17 Emerson A. Borba armazenado. Se a recolha deve ser um processo fiável, ao mesmo nível de exigência deve estar a segurança do armazenamento e da operação de comparação. A autenticação do cliente implica a identificação e a validação de um cliente num servidor com o objetivo de estabelecer um canal de comunicações seguro. Um protocolo seguro tal qual SSL (Secure Sockets Layer) ou TLS (Transport Layer Security) é geralmente utilizado em conjunção com um certificado de chave pública confiável fornecida pelo cliente encarregado da identificação do cliente num servidor. Esse cliente pode ser o Internet Explorer rodando no Windows ou Windows NT/2003/2008 e o servidor pode ser um servidor IIS (Internet Information Server) ou qualquer servidor Web compatível com os protocolos SSL/TLS. Os Smart Cards garantem hoje esse requisito de armazenamento e, com a capacidade de processamento atual, podem ainda efetuar a comparação de padrões, naturalmente com algumas limitações, mas dentro de um ambiente bastante seguro. A tecnologia Java Card, como uma das mais amadurecidas, permite explorar níveis de programação já bastante elevados e garante a portabilidade do processo entre Sistemas Operativos. Do ponto de vista de sistema existe uma limitação imposta pela separação física entre o subsistema biométrico e o subsistema de suporte ao Smart Card que, habitualmente, se encontram interligados através de um computador pessoal. Esta arquitetura introduz algumas vulnerabilidades na comunicação, que poderão ser ultrapassadas recorrendo a técnicas de encriptação. Contudo, numa evolução previsível, é natural que os leitores biométricos venham a incorporar leitores de Smart Cards, conferindo ao conjunto interessantes capacidades de identificação e autenticação. Numa política de segurança global, será ainda interessante garantir a integração da função do identificador/autenticador com outros eventuais serviços de segurança existentes num sistema de informação. Esta integração poderá ser feita eficientemente utilizando o protocolo LDAP (Lightweight Directory Access Protocol ), bastante utilizado para acesso a repositórios de informação estruturada, como é o caso dos servidores de certificados nas infra-estruturas de chave pública, ou do próprio registry que o Windows implementa. Este protocolo, que pode ser seguro quando associado à criptografia, permite interoperabilidade entre sistemas operativos diferentes permitindo, por exemplo, uma autenticação única para Windows e Linux [Swanson etal. 2002]. Estes repositórios aparecem então com elo de ligação entre subsistemas independentes identificação/autenticação e serviços de segurança que exigem essa função. de 18 Tecnologia Smart Card A sessão segura é estabelecida pela autenticação de uma chave pública com o intercâmbio de chaves a fim de obter uma chave de sessão única que serve em seguida a garantir a integridade e a confidencialidade de dados durante toda a duração da sessão. A autenticação pode ser reforçada por intermédio de certificados mapeados sobre contas de usuários ou de grupos tendo anteriormente estabelecido privilégios de controle de acesso. O smart card estende o processo de autenticação de chave pública propondo a armazenagem segura da chave privada e um motor criptográfico que cuide das assinaturas eletrônicas e a troca de chave. Matryoshka é uma arquitetura em desenvolvimento pelos autores e que procura explorar esta linha de desenvolvimento. Do ponto de vista da tecnologia exige a criação de uma camada de interface no Smart Card (já concluída), do ponto de vista da biometria exige a investigação de técnicas biométricas adequadas a um determinado nível de segurança e dentro das capacidades de processamento disponíveis. Tal como foi demonstrado, apesar do domínio das soluções ser alargado, as restrições impostas pela limitada capacidade de processamento do Smart Card e por eventuais políticas de segurança, podem inviabilizar uma solução, obrigando à investigação de algoritmos otimizados e/ou técnicas biométricas alternativas. A Figura abaixo mencionamos layout de autenticação do cliente for Windows Vista. Figura 11 - Ilustra tela de autenticação via Smart Card no Windows Fonte: (Microsoft Corporation, Ago.2009) Emerson A. Borba 19 10. Segurança A habilidade de proteger de diversas maneiras todo um sistema é uma das vantagens dos cartões com chip (smart cards). Por essa razão, a quantidade de investimentos na área de segurança e smart cards crescem significantemente. A segurança é necessária para possibilitar a integridade dos dados e evitar acessos não autorizados e indevidos. A segurança de aplicações para smart cards e os princípios utilizados em seu desenvolvimento são de fundamental importância. Com o intuito de prover a segurança para esses sistemas baseados em smart cards, muitas técnicas e tecnologias são utilizadas, dentre as quais a biometria e criptografia destacam-se como as mais pesquisadas e utilizadas. Os smart cards tem a capacidade de oferecer inúmeras vantagens de maneira portável e distribuída. 10.1 Segurança e Criptografia em Correio Eletrônico A tecnologia do smart card reforça a integridade das aplicações de correio segura já que a chave privada é armazenada diretamente sobre o cartão, o qual é protegido por um código confidencial. Para se apropriar da chave privada de um usuário e enviar mensagens em seu nome, é necessário não somente possuir smart card desse usuário, mas também reconhecer seu código confidencial. Pode-se mesmo imaginar que esse código confidencial seja substituído pelo modelo biométrico de uma impressão digital de um usuário, reforçando ainda as garantias de não repudiarão de mensagens protegidas por uma assinatura eletrônica. Figura abaixo segue a ilustração de solicitação de confirmação de PIN, email criptografado de um aplicativo de correio eletrônico. Figura 12 - Ilustra Solicitação de confirmação de PIN , email criptografado 20 Tecnologia Smart Card O correio eletrônico seguro faz parte das aplicações mais interessantes permitidas pela tecnologia de chave pública, já que ele permite aos usuários compartilhar informações com toda segurança e garante a integridade dos dados numa transmissão. Com a ajuda de clientes do correio e de trabalho colaborativo Microsoft Outlook (tm) Express ou Outlook 98, um usuário pode selecionar um certificado de chave pública emitido pela autoridade de certificação pública confiável a fim de inserir uma assinatura eletrônica em suas mensagens e de decodificar as mensagens seguras. Se seu certificado é publicado num anuário público de uma empresa ou da Internet, ele poderá enviar mensagens criptografadas a outros usuários da rede da empresa ou via Internet e deles recebê-las. 10.2 Assinaturas Digitais de chave pública e privada Uma assinatura digital é o equivalente a uma assinatura convencional em um documento de papel. A única diferença é a necessidade de provar a autenticidade e concordância de operações que a utilizam em sistemas digitais. Os smart cards proporcionam esse uso a um sistema de assinatura digital garantindo segurança e confiabilidade. Existem inúmeros métodos na utilização de uma assinatura digital. O mais comum é baseado em um par de chaves criptográficas assimétricas. O detentor da assinatura possui uma chave privada a qual não pode ser acessada ou utilizada por outra pessoa. Publicamente é conhecida a segunda chave, a qual é associada à chave privada, denominada de chave pública. Apenas o dono da chave privada pode usá-la nos mais variados sistemas digitais. A sua autenticidade pode ser verificada através da consulta a chave pública correspondente. A chave pública é distribuída em um certificado que contém o nome do proprietário e uma data de expiração. A distribuição desses certificados é realizada através de uma autoridade certificada a qual garante a validade do mesmo de modo a não permitir manipulações, ou seja, somente um órgão certificador autorizado pode emitir e validá-los. O smart card é considerado um lugar seguro para armazenar uma chave privada devido as suas características de segurança. O sistema de arquivos onde essa chave fica armazenada é totalmente criptografado e inacessível por meios diretos. Devido a essas e outras características o uso desse tipo de assinatura cresce gradativamente tanto para uso comercial quanto para uso pessoal. No Brasil pode-se encontrar esses sistemas, de assinatura digital, tanto para utilização de pessoas jurídicas quanto para pessoas físicas. As principais soluções oficiais e aceitas no Brasil como método de assinatura digital são: o e-CPF e o e-CNPJ. Eles consistem em chaves privadas distribuídas por meios de certificados, armazenados em smart cards. O uso desses certificados Emerson A. Borba 21 provem acesso a diversos serviços federais, como o processo de entrega de documentos entre outras aplicações. Os principais órgãos certificadores no Brasil são: Serasa, Receita Federal, Caixa Econômica Federal, Cert Sign entre outros. Maiores informações sobre e-CPF e e-CNPJ são encontradas no site da Receita Federal (disponível em http://www.receita.fazenda.gov.br). 10.3 Funcionalidades Sistema Operacional Autenticação em Windows Server A família Windows Server 2003 oferece os seguintes melhoramentos (em comparação com o Windows 2000) que ajudam a fornecer maiores níveis de suporte para autenticação e utilização de cartões Smart Card. Temos abaixo algumas melhorias. • Nomes de utilizador e palavras-passe armazenadas A funcionalidade Nomes de Utilizador e Palavras-passe Armazenadas armazena as credenciais dos utilizadores, incluindo palavras-passe e certificados X.509 v3, de modo a poderem ser associados a computadores remotos e a serem reutilizados automaticamente. Fornece uma experiência de início de sessão único e consistente para os utilizadores, incluindo os utilizadores itinerantes. • Acesso de Smart Card através do 'Servidor de terminais' Com o Servidor de terminais, é possível iniciar sessão a partir de uma Ligação ao ambiente de trabalho remoto num domínio do Windows Server 2003 utilizando certificados fidedignos X.509 v3 que são armazenados num cartão Smart Card. Por exemplo, pode utilizar um cartão Smart Card para iniciar sessão no Active Directory num servidor de terminais. • Melhoramentos da 'Autoridade de certificação subordinada' As autoridades de certificação (AC) subordinadas já suportam subordinação qualificada, o que permite que os administradores da infra-estrutura de chaves públicas (PKI) utilizem AC subordinadas qualificadas para objectivos administrativos e de segurança mais precisos do que as AC padrão como, por exemplo, uma AC subordinada qualificada que só emite certificados para requerentes em determinados domínios que só podem ser utilizados por aplicações de software específicas. • Suporte completo para o protocolo Kerberos V5 Com o suporte de Kerberos V5, um processo de início de sessão único e rápido dá aos utilizadores o acesso necessário aos recursos empresariais em execução no Windows 2000 ou na família de produtos Windows Server 2003. O suporte para Kerberos V5 inclui benefícios adicionais, tais como a autenticação mútua (tanto o cliente como o servidor têm 22 Tecnologia Smart Card de fornecer autenticação) e a autenticação delegada (as credenciais do utilizador são rastreadas ponto a ponto). Para mais informações, consulte Autenticação Kerberos V5. • Infra-estrutura de chaves públicas, 'Serviços de certificados' e Smart Card Utilizando os Serviços de Certificados e as ferramentas de gestão de certificados, é possível implementar uma infra-estrutura de chaves públicas (PKI, public key infrastructure) própria. Com uma PKI, é possível implementar tecnologias baseadas em normas, como as capacidades de início de sessão de Smart Card, autenticação de clientes (através de SSL e TLS), correio electrónico seguro, assinaturas digitais e conectividade segura (através da segurança do Protocolo Internet (IPSec, Internet protocol security). Utilizando os Serviços de Certificados, é possível configurar e gerir autoridades de certificação (AC) que emitem e revogam certificados X.509 v3. Isto significa que não terá de depender dos serviços comerciais de autenticação de clientes, apesar de poder integrar a autenticação comercial de clientes na infra-estrutura de chaves públicas que seleccionar. • Rede privada virtual É possível dar aos utilizadores acesso imediato à rede da organização, mesmo quando estes se encontram fora do escritório, e reduzir os custos desse acesso através da implementação de uma rede privada virtual (VPN, virtual private network). A ligação VPN cria um túnel seguro pela Internet para a rede privada. Existem dois tipos de tecnologia VPN na família Windows Server 2003: • Protocolo de Túnel Ponto a Ponto (PPTP, Point-to-Point Tunneling Protocol), que utiliza métodos de autenticação de nível de utilizador do Protocolo Ponto a Ponto (PPP, Point-to-Point Protocol) e Encriptação Ponto a Ponto da Microsoft (MPPE, Microsoft Point-to-Point Encryption) para encriptação de dados. • Protocolo de Túnel de Camada 2 (L2TP, Layer Two Tunneling Protocol) com Segurança do Protocolo Internet (IPSec). O L2TP utiliza métodos de autenticação PPP de nível do utilizador e certificados de nível de computador com IPSec para encriptação de dados. No Windows Server 2003, Web Edition, e no Windows Server 2003, Standard Edition, pode criar até 1.000 portas de Protocolo de Túnel Ponto a Ponto (PPTP, Point-to-Point Tunneling Protocol) e pode criar até 1.000 portas de Protocolo de Túnel de Camada 2 (L2TP, Layer Two Tunneling Protocol). No entanto, o Windows Server 2003, Web Edition, só pode aceitar uma ligação de rede privada virtual (VPN, Virtual Private Network) de cada vez. O Windows Server 2003, Standard Edition, pode aceitar até 1000 ligações VPN simultâneas. Se estiverem ligados 1000 clientes VPN, serão recusadas as tentativas de ligação suplementares até que o número de ligações se situe abaixo de 1000. Emerson A. Borba 23 11. CONSIDERAÇÕES FINAIS Existem hoje algumas tecnologias com um grau de maturidade que permite considerá-las como uma ferramenta de autenticação indispensável quando utilizados em conjunto com Smart Cards que potenciados pela tecnologia Java materializada na plataforma Java Card e Windows, representam uma forma portátil, segura e resistente de amplificar as funções de autenticação existentes. O aumento do uso dos smart cards vem se tornando cada vez mais expressivo devido as suas características, evolução, custo baixo e a fácil aderência as mais variadas aplicações. A grande variedade de hardware, software e ferramentas de desenvolvimento disponíveis no mercado dificultam a definição tecnológica no momento de desenvolver uma aplicação usando Smart Cards. Por isto, faz-se necessária uma avaliação crítica e cautelosa a fim de escolher os recursos tecnológicos que melhor se apliquem a uma determinada situação. Hoje podemos considerar uma tecnologia bastante segura devido seu grau de segurança complexidade desenvolvido na escrita e no método utilizado de criptografia do chip, temos um mercado que favoreceu bastante para o crescimento da tecnologia como: Bancos em geral, Empresa Vale Ticket Alimentação entre outros. Novidades estão chegando como novo RG Brasileiro que utilizara tecnologia Smart Card com chip o projeto esta em testes em alguns estados brasileiros. Brasil adotando implantando essa tecnologia poderemos contar com nível segurança mas alto e uma proteção de informação minimizando falsificações ideológicas , copias ilegais, clones e falsificação de documento pessoal (RG). Em um futuro muito breve a tendência de implantação e utilização tecnologia Smart Card terá um grande impulso nas empresas e órgãos governamentais. No Brasil existe ainda uma grande dificuldade em se obter material especializado tanto no que diz respeito à literatura quanto aos equipamentos e ferramentas de desenvolvimento. É inevitável, na maioria das vezes, importar esses recursos. Muitas vezes esses fatores são empecilhos para disseminação dessa ótima tecnologia. 24 Tecnologia Smart Card AGRADECIMENTOS Este artigo teve inspiração nas aulas de segurança de redes orientadas pelo professor Alessandro Coneglian Bianchini durante o curso de pós–graduação no Centro Universitário Anhanguera, agradeço a experiência e praticas conquistada em minha vida profissional e as pessoas que me proporcionaram esse aprendizado nos últimos 4 anos atuando na tecnologia Smart Card. REFERÊNCIAS CARD EUROPE UK (1996). Smart Card Technology Background Paper, <http://www.gold.net/users/ct96/rep1.htm Acesso em (21 Fev. 2011). CASCADE (1994). Chip Architecture for Smart Cards and secure Protable Devices, <http://www.dice.ucl.ac.be/~dhem/cascade/cascade.html Acesso em (24 Mar. 2011). Clark P. & Hoffman L. (1994). BITS: A Smartcard Protected Operating System. KRUEGER J. & SCHLOSS R. (1997). Facing the Smart Card Security Issue, http://www.smartcrd.com/info/more/security.htm Acesso em (24 Mar. 2011). PERTO SOFTWARE. Perto smart: guia rápido. [Versão 1.0]. Gravataí, [2005]. SCHUMBERGER LIMITED (1996). Advantages, Smart Cards: Inherent advantages, <http://www.slb.com/et/inherent_advantage.html Acesso em (18 Mar. 2011) . http://technet.microsoft.com/pt-pt/library/cc780405(WS.10).aspx Acesso em: (20.abr.2011). RANKL, Wolfgang e EFFING, Wolfgang. Smart card handbook. John Wiley & Sons, 3rd edition. 2003. 1120p. CHEN, Z., Java Card Technology for Smart Cards, Addison Wesley, U.S.A., 2000. PROCEEDINGS OF IFIP TC8/WG8.8 FORTH Working Conference on Smart Card Research and Advanced Applications, Kluwer Academic Publishers (2000), 289-303. Smart card www.gta.ufrj.br/grad/01.../smartcard/smartcard.html Acesso em (20.mar.2011). CENTRO UNIVERSITARIO FEEVALE). tconline.feevale.br/tc/files/597.doc Acesso em Acesso em (20.maio.2011) WIKIPEDIA, Digital Encyclopedia. Magnetic stripe card from Wikipedia. Disponível em <http://en.wikipedia.org/wiki/Magnetic_stripe>. Acesso em: (20.abr.2011). autor: Emerson Assis Borba biografia: Profissional com 13 anos de experiência na área de TI atuando como Analista Suporte TI graduado em Telecomunicações e especializado em Redes de Computadores Universidade Anhanguera.