java card development kit

10
Java Card Development Kit ... em 10 minutos Nuno Cancelo (Aluno 31401) 7 de Maio de 2012

Upload: nuno-cancelo

Post on 06-May-2015

764 views

Category:

Education


0 download

TRANSCRIPT

Page 1: Java Card Development Kit

Java Card Development Kit... em 10 minutos

Nuno Cancelo (Aluno 31401)

7 de Maio de 2012

Page 2: Java Card Development Kit

Índice

1 Índice

2 Java Card

3 Especificação

4 Ferramentas

5 Bibliotecas

6 Elementos de uma Aplicação Java Card

7 APDU

8 Desenvolvimento Java Card Applet

9 Conclusão

Nuno Cancelo (Aluno 31401) () Titulo 7 de Maio de 2012 2 / 10

Page 3: Java Card Development Kit

Java Card:Smart Card

Adaptação da linguagem Java para utilização em smart cardsUm Smart Card é um cartão de plástico com um circuito integrado.Smart card é um cartão que cumpre a especificação ISO/EIC 7816cuja a última revisão foi em 2003.Os java cards são cartões programáveis, logo têm ummicro-processador e memória para realizar operações (ex: operaçõescriptográficas, executar applets)Este tipo de cartões não têm bateriaSão elementos passivos e apenas processam pedidos enviados peloleitor de cartõesOs cartões podem ter dois tipos de interface: com contacto e semcontacto, no entanto podem ter as duas ao mesmo tempo

Nuno Cancelo (Aluno 31401) () Titulo 7 de Maio de 2012 3 / 10

Page 4: Java Card Development Kit

Java Card: Especificação

Um dos objetivos da especificação é a definir um subconjunto datecnologia Java para desenvolvimento de aplicações para sistemascom poucos recursos.A especificação é ainda mais restrita que a especificação J2ME,dedicada para sistemas mobileA especificação da Tecnologia Java Card

Máquina Virtual Java Card (JCVM) define o subconjunto de instruçõesda linguagem Java e também a máquina virtual para smart cardsAmbiente de Execução Java Card (JCRE) define o comportamento daexecução dos smart cards baseados na linguagem javaEspecificação da API Java Card, define as classes e os tipos disponíveisna framework para este tipo de aplicativosKit de Desenvolvimento Java Card (JCDK). Fornece a documentaçãoda JCRE e JCVM, bibliotecas para o desenvolvimento de applets eferramentas para teste e depuração de erros de applets.

Nuno Cancelo (Aluno 31401) () Titulo 7 de Maio de 2012 4 / 10

Page 5: Java Card Development Kit

Java Card: Ferramentas

O JCDK inclui ferramentas para auxiliar o desenvolvimento e testar javacard applets

SimuladorConversão para CAP (Converted Applet)Verificar validade do CAPVerificar o conteúdo do CAPTestar APDU (Application Protocol Data Unit)Converter CAP para scripts APDUBibliotecas

Nuno Cancelo (Aluno 31401) () Titulo 7 de Maio de 2012 5 / 10

Page 6: Java Card Development Kit

Java Card: Bibliotecas

Java Card APINão há suporte para String, threads e classes Wrapperjavacard.framework, javacard.security, javacardx.crypto, etc

Security and Trust Services API (SATSA)definida em "Java Specification Requests"(JSR) 177, especifica umconjunto de package opcionais que oferece uma API de Segurança e deConfiança para J2ME. Esta API define acesso a serviços por elementosde segurança e inclui a obtenção de informação, encriptação eautenticação de serviços.java.rmijavacard.frameworkjavacard.securityetc

Nuno Cancelo (Aluno 31401) () Titulo 7 de Maio de 2012 6 / 10

Page 7: Java Card Development Kit

Java Card: Elementos de uma Aplicação Java Card

Aplicação de Back-EndAplicação de Servidor (fora do cartão)Um equipamento de Leitura de cartõesUm applet

Nuno Cancelo (Aluno 31401) () Titulo 7 de Maio de 2012 7 / 10

Page 8: Java Card Development Kit

Java Card: APDUAPDU Command

APDU Response

Exemplos de APDU

Nuno Cancelo (Aluno 31401) () Titulo 7 de Maio de 2012 8 / 10

Page 9: Java Card Development Kit

Java Card: Desenvolvimento Java Card Applet

1 Definir os comando e respostas APDU2 Desenvolver uma aplicação Java3 Compilar a aplicação Java4 Testar a aplicação no simulador5 Converter os ficheiros .class para o ficheiro Converted Applet(CAP)6 Verificar se o CAP é válido7 Instalar o CAP

Nuno Cancelo (Aluno 31401) () Titulo 7 de Maio de 2012 9 / 10

Page 10: Java Card Development Kit

Conclusão

A tecnologia Java Card destina-se a sistemas com recursos limitadosO Java Card Development Kit vem auxiliar o desenvolvimento deapplets para esses sistemasO modo de programação é semelhante ao de uma aplicação ’normal’JavaAPDU é a chave na comunicação

Image Source: http://www.oracle.com/technetwork/java/javacard/javacard1-139251.html

Nuno Cancelo (Aluno 31401) () Titulo 7 de Maio de 2012 10 / 10