Programmation de cartes avec Java Card

Magazine
Marque
MISC
HS n°
Numéro
2
Mois de parution
novembre 2008
Domaines


Résumé

La technologie Java Card fournit une machine virtuelle qui joue le rôle de système d'exploitation pour cartes à puce en apportant sécurité et indépendance vis à vis du matériel. Ainsi, des développeurs indépendants peuvent concevoir et déployer dans des cartes à puce toute une variété de produits et de services sécurisés, dans la poche de leurs utilisateurs. Nous explorons ici l'essence de cette technologie.


1. Introduction

Les cartes à puce d'aujourd'hui sont des cartes à microprocesseur capables de fournir des ressources nécessaires pour l'exécution d'applications qui y sont embarquées. En particulier, ces systèmes sont capables de gérer les entrées/sorties entre les applications de la carte et leurs contreparties sur le terminal. Ils implémentent aussi, parfois, un système de fichiers normalisé ISO 7816-4 ou même une base de donnée ISO 7816-7.

Autrefois, la programmation des cartes était le fait des fabricants. Le problème de tels systèmes est que les fabricants de cartes à puce utilisent des logiciels propriétaires – tout en gardant la compatibilité avec l'ISO 7816, qui ne définit finalement qu'un jeu de commandes supportées par la carte. Programmer les applications demande alors une grande connaissance du matériel particulier de la carte cible, et on peut être sûr que la portabilité de telles applications est très faible. « Changer de fournisseur...

Cet article est réservé aux abonnés. Il vous reste 97% à découvrir.
à partir de 21,65€ HT/mois/lecteur pour un accès 5 lecteurs à toute la plateforme
J'en profite


Articles qui pourraient vous intéresser...

Zéro SQLi malgré les développeurs

Magazine
Marque
MISC
Numéro
111
Mois de parution
septembre 2020
Domaines
Résumé

Nous proposons une méthode pour effectuer des requêtes SQL qui garantit l'invulnérabilité aux injections SQL, y compris lorsqu'elle est utilisée par un développeur pressé ou incompétent, contrairement aux requêtes paramétrées. Basée sur l'utilisation d'arbres de syntaxe abstraite, elle permet facilement de construire des requêtes dynamiques et est plus facile à mettre en œuvre qu'un ORM. Nous proposons une bibliothèque Java implémentant nos idées, mais la méthode peut s'appliquer à d'autres langages de programmation et d'autres types de requêtes.

Introduction à QBDI et ses bindings Python

Magazine
Marque
MISC
Numéro
109
Mois de parution
mai 2020
Domaines
Résumé

Le présent article traite de l'outil d'instrumentation dynamique QBDI. C'est un framework de DBI (Dynamic Binary Instrumentation), comparable à d'autres projets publics tels qu’Intel PIN, Valgrind ou encore DynamoRIO. Avant d'entrer dans le vif du sujet, quelques rappels peuvent s'avérer nécessaires…

Introduction au dossier : Python au service de la recherche et l’exploitation de vulnérabilités

Magazine
Marque
MISC
Numéro
109
Mois de parution
mai 2020
Domaines
Résumé

Quand on s’adonne aux plaisirs de la sécurité informatique, il est ce moment où doivent s’aligner les idées et la pratique, c’est-à-dire la production d’une preuve de concept. Et quand il faut écrire du code, le choix du langage s’impose forcément : d’un côté, il y a les contraintes fortes qui nous donnent des possibilités restreintes, et de l’autre il y a nos bas instincts qui prennent la solution qui produira le plus rapidement possible le résultat escompté.