Baixe Java Card - básico e outras Notas de estudo em PDF para Engenharia Elétrica, somente na Docsity!
SMART CARD COM TECNOLOGIA
JAVA CARD
Raphael Soares Ribeiro Universidade do Estado do Rio de Janeiro - UERJ Programa de pós-graduação em engenharia eletrônica
Como surgiu o Java Card
Como surgiu o Java Card
Parâmetros típicos do hardware
• 8-32 bit CPU
• 2 Kb RAM
• 32-64 Kb ROM
• 8-32 Kb EEPROM
• Vcc: 5V
• Clock externo: 1-5 Mhz
• Half duplex serial I/O: 420 Kbps
• Co-processador Crypto
Limitação do projeto: 25 mm
2
(área)
APDU de comando
- (^) CLA – Classe da instrução
- (^) INS – Código da instrução
- (^) P1, P1 – Parâmetros
- Lc – Comprimento dos dados opcionais
- (^) Le – Comprimento esperado dos dados retornados
- (^) Determine o byte dos seguintes comandos
APDU:
008400000501020304057F (exemplo)
- (^) Solução:
- (^) CLA: 00
- (^) INS: 84
- (^) P1: 00
- (^) P2: 00
- (^) LC: 05
- (^) DATA: 0102030405
- (^) LE: 7F
Casos de ADPU
- (^) Determine o formato da resposta de acordo com
o comando APDU:
008400000501020304057F (exemplo)
Vantagens do Java Card
- (^) Subconjunto da linguagem de programação e plataforma Java SE para cartões inteligentes
- (^) Foco em desenvolvimento de aplicativos
- (^) Permite que diferentes aplicativos de diversos fabricantes no mesmo cartão
- (^) 1 Bilhão de cartões distribuídos
- (^) Diversas versões (atualmente na versão 3.0.2):
- (^) Java Card Virtual Machine specification (JCVM)
- (^) Java Card Runtime Environment specification (JCRE)
- (^) Java Card API specification
Máquina virtual Java Card (JCVM)
- (^) Arquitetura dividida
- (^) Conversor Off-card
- (^) Verifica conformidade com a especificação Java Card VM
- (^) Realiza verificações seguras
- (^) Otimiza o código
- (^) Inicializa variáveis estáticas
- (^) Gera arquivo de Applet convertido (CAP)
- (^) Instalador On-card
- (^) Comunica com o programa de instalação off-card
- (^) Aramazena o arquivo CAP na memória do smart card
- (^) Faz o link com outras classes já presentes no cartão
- (^) Interpretador On-card
- (^) Executa do código encontrado no arquivo CAP
Java Card Runtime Environment (JCRE)
- (^) Inicializado junto com o cartão
- (^) Responsável pelo gerenciamento dos recursos, comunicação, execução dos applets, sistema on-card e reforço na segurança dos applets.
- (^) Funcionalidades especiais incluem:
- (^) Objetos persistentes e transitórios
- (^) Execução
- (^) Gerenciamento
- (^) Segurança
- (^) Firewall para Applets e mecanismos de compartilhamento
- (^) É como um sistema operacional
Java Card API
- (^) java.lang
- (^) java.rmi
- (^) java.io
- (^) javacard.framework
- (^) javacard.framework.service
- (^) javacard.security
- (^) javacardx.crypto
- javacardx.rmi