Java Card est devenu un pilier dans le développement d’applications sur cartes à puce, grâce à sa simplicité et son accessibilité. Cependant, pour garantir la sécurité des applications Java Card, il est essentiel de comprendre les mécanismes de sécurité de la plateforme, ses limites, et les meilleures pratiques pour sécuriser vos développements. Cette formation vous permettra de maîtriser les outils et les techniques nécessaires pour sécuriser vos applications, tout en intégrant le standard GlobalPlatform, qui offre des fonctionnalités avancées de sécurité, d’interopérabilité et de pérennité pour vos projets.
Objectifs de la formation Développement Java Card Sécurité
Objectif opérationnel :
Acquérir les compétences nécessaires pour sécuriser le développement d’applications Java Card et comprendre les mécanismes de sécurité associés.
Objectifs pédagogiques :
À l’issue de cette formation, vous serez capable de :
- Maîtriser les bonnes pratiques de programmation sécurisée pour Java Card.
- Comprendre l’importance de la cryptographie et des canaux sécurisés dans le développement des applications Java Card.
- Intégrer le standard GlobalPlatform dans vos applications pour en améliorer la sécurité et la gestion.
- Développer des applications Java Card efficaces et sécurisées, tout en optimisant le code et en utilisant des outils de sécurité avancés.
À qui s’adresse cette formation ?
Public :
Cette formation est destinée aux développeurs d’applets Java Card ainsi qu’aux développeurs d’applications interfacées avec des cartes Java Card. Elle s’adresse plus particulièrement aux développeurs d’applications installées sur les cartes, contrairement à la formation « Sécurité Java Card », qui est axée sur les développeurs de plateformes (cartes, machines virtuelles, etc.).
Prérequis :
Il est nécessaire d’avoir des connaissances de base en programmation Java Card ainsi que des notions de cryptographie pour suivre cette formation.
Contenu du cours Développement Java Card Sécurité
Jour 1 : Java Card, sécurité et cryptographie
- Rappels sur Java Card : Introduction à la chaîne de développement Java Card, y compris la compilation, la conversion, le chargement, et les mécanismes de sécurité (firewall, atomicité, transactions, etc.).
- Bonnes pratiques de programmation Java Card : Apprendre à optimiser le code pour la sécurité, gérer le partage d’objets sécurisés et améliorer les performances.
- Cryptographie et canaux sécurisés : Rappels sur les principes cryptographiques et l’importance de sécuriser les canaux de communication dans les applications Java Card.
- Travaux pratiques : Programmation d’applications Java Card simples, incluant des mécanismes cryptographiques et des applications client-serveur.
Jour 2 : GlobalPlatform
- Présentation du standard GlobalPlatform : Découverte de GlobalPlatform côté carte et côté client, y compris les domaines de sécurité, les mécanismes de sécurité des canaux, les outils de communication et les cycles de vie des entités.
- Avantages du standard GlobalPlatform : Comment utiliser GlobalPlatform pour sécuriser et valoriser vos développements en créant, gérant et utilisant des domaines de sécurité dans vos applications.
- Travaux pratiques : Programmation d’applications Java Card et d’applications clientes intégrées à l’écosystème GlobalPlatform.
Travaux Pratiques
Chaque chapitre est accompagné de travaux pratiques utilisant de véritables lecteurs de cartes et cartes à puce, offrant ainsi une expérience pratique essentielle pour la maîtrise des concepts de sécurité abordés.