Transcript
Page 1: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

Projet de veille technologique

Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

Page 2: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

Plan

Cartes à puces

JavaCard

Coté terminal (OpenCard)

JavaCard en pratique

Page 3: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

Généralités sur les cartes à puces

Historique

1974, cartes à mémoire• Innovatron

1977, carte à microprocesseur• Bull CP8• 1980, carte bancaire• 1983, carte santé

1984, carte à micromodules• France Telecom

Page 4: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

Généralités sur les cartes à puces

Réalisations industrielles majeures

Carte Bleue

SESAM Carte Vitale

Porte monnaie électronique

Téléphonie mobile

Page 5: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

Généralités sur les cartes à puces

Types de cartes (1/2)Carte à mémoire

•Mémoire simple (sans processeur). •Carte “porte-jeton” .

Carte à logique cablée•Mémoire accessible via des circuits

préprogrammés et figés .•Carte “sécuritaire” .

Page 6: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

Généralités sur les cartes à puces

Types de cartes (2/2)

SmartCard•Microcontrôleur encarté (processeur +

mémoires).•Carte “programmable” pouvant

effectuer tout type de traitements.• Interface électronique par contacts ou

via signaux RF.

Page 7: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

Généralités sur les cartes à puces

Architecture d'une Smartcard

Page 8: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

Les Avantages

Langage de haut niveau

Write Once Run Anywhere

Plateforme multi applicative

Partage de données entre applications

Sécurité des données

Souplesse

Page 9: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

Java Vs JavaCard

Une sous Classe du langage Java• Pas de chargement de classe dynamique.• Pas de threads / synchronisation.• Pas de Clone.• Pas de méthodes Natives.• Pas de String.• Peu de types.

Une sous Classe de la VM Java• Un bytecode limité.• Nommage différent. (pas de string)• Pas de GC / pas de finalize.

Page 10: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

Javacard : comment ça marche?

L’architecture. (JCRE)• Les Natives methods.• L’interpréteur.• Les standard class libraries.

Page 11: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

Mécanismes de mise en Oeuvre.

.java

CompilateurJava

Librairies dedéveloppement

Fichiers ClassJava

.class

Exports

Convertiseur, verifieur, signeur de bytecode

On-cardLoader

APIInterprète

O.S.

Java CardFiles

.cap

Page 12: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

Création d’une applet

Bibliothèque de base javacard.Framework

Hérite de javacard.Framework.Applet

Implémente• Install• Process• Select• deselect

Page 13: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

Installation des applets

Pourquoi installer des applets ?

L’installation•Chargement sur la carte•Création d’une instance.

Page 14: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

Coté sécurité : L’applet Firewall

Page 15: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

RPC et systèmes à objets répartis

L’approche : construire les applications avec la carte

comme des applications réparties

Principes :•Notion d’interface objet pour décrire

les objets distants•Pré-compilateur pour générer les

couches (skell stub)•Le principe Java RMI est retenu.

Page 16: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

RPC et systèmes à objets répartis

Applet JavaCard = objet serveur distant

Page 17: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

Les Terminaux.Appareil permettant l'accès à distance à un système informatique.

Rôle terminal

Page 18: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

La norme ISO 7816

Norme décomposée en sous parties:

• Partie 1: caractéristiques physique

• Partie 2: les contacts• Partie 3: caractéristiques

électrique & protocole de communication

• Partie 4: format de paquets (APDU)

Page 19: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

Le standard PC/SC

Pourquoi?•Standardiser l’interface entre PC et le

lecteur.•Exploitation des cartes multi

applicatives•Création d’un groupe de travail (PC/SC

workgroup)

Standard:•Repose sur la norme ISO 7816•Offre une interface entre le driver de

carte et la programmation

Page 20: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

Opencard

Framework orienté objet pour l’utilisation des smart card.

Pourquoi?• Standardiser les accès aux cartes à puce

Les atouts d’Opencard.• Développeurs• Fabricants

Opencard VS PC/SC• Opencard complémente PC/SC• PC/SC reste d’actualité

Page 21: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

Architecture Opencard

Page 22: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

Javacard en pratiqueLe Java development Kit

Un JDK de SUN spécialement pour Javacard

•Environnement de simulation– Support pour la cryptographie– Adressage étendu– Support du RMI

•Outils– Respectant les spécifications Javacard

2.2.1, et les nouvelles fonctionnalités

•Plateformes– Support JDK 1.4.1– Version Linux existante

Page 23: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

Javacard en pratiqueDocumentation du

développeur

Javacard sur le site de Sun• Java Card 2.1.1 Vitual Machine Specification• Java Card 2.1.1 Runtime Environment Specification• Java Card 2.1.1 Application Programming Interface

Opencard sur le site d'OpenCard ou GemPlus

• OpenCard 1.2 Application Programming Interface• OpenCard 1.2 Programmer's Guide

Page 24: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

DEMO

Page 25: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

Conclusion (1/3)

Cartes à puces de plus en plus répandues

Utilisation de plus en plus facile•plus de C ou d'assembleur -> langage

évolué, objet

Page 26: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

Conclusion (2/3)

Javacard propose un SDK complet, aux outils performant et fortement documenté.

Opencard propose un framework pour standardiser les échanges avec les terminaux.

Page 27: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

Conclusion (3/3)

Alternative à Javacard : JITS

•Mélange de l'OS et de la JVM pour plus de légèreté et de flexibilité.

•API est plus complète que l'API de javacard.

Page 28: 10 janvier 2005Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro Projet de veille technologique Xavier Perrin – Emile Gourlay – Julien

10 janvier 2005 Xavier Perrin – Emile Gourlay – Julien Janier – Emmanuel De Castro

Des questions?