FR2908195A1 - Procede de passation d'instructions entre une station hote et un dispositif electronique portable, et dispositif de mise en oeuvre - Google Patents

Procede de passation d'instructions entre une station hote et un dispositif electronique portable, et dispositif de mise en oeuvre Download PDF

Info

Publication number
FR2908195A1
FR2908195A1 FR0609673A FR0609673A FR2908195A1 FR 2908195 A1 FR2908195 A1 FR 2908195A1 FR 0609673 A FR0609673 A FR 0609673A FR 0609673 A FR0609673 A FR 0609673A FR 2908195 A1 FR2908195 A1 FR 2908195A1
Authority
FR
France
Prior art keywords
electronic device
portable electronic
instruction
read
command
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR0609673A
Other languages
English (en)
Other versions
FR2908195B1 (fr
Inventor
Olivier Chamley
Stephane Andreau
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Idemia France SAS
Original Assignee
Oberthur Card Systems SA France
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oberthur Card Systems SA France filed Critical Oberthur Card Systems SA France
Priority to FR0609673A priority Critical patent/FR2908195B1/fr
Priority to US12/513,404 priority patent/US8327036B2/en
Priority to EP07822255A priority patent/EP2089806A1/fr
Priority to CA2702373A priority patent/CA2702373C/fr
Priority to PCT/EP2007/061938 priority patent/WO2008055902A1/fr
Publication of FR2908195A1 publication Critical patent/FR2908195A1/fr
Application granted granted Critical
Publication of FR2908195B1 publication Critical patent/FR2908195B1/fr
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4291Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Communication Control (AREA)

Abstract

Le procédé consiste à placer un paramètre de présence d'instruction dans le champ "argument" d'un mot binaire définissant une commande de lecture/écriture engendrée par des programmes génériques de gestion (drivers) d'unités amovibles de stockage de données. Cela permet de s'affranchir de la limitation du jeu des commandes autorisées par un programme générique de gestion d'unité amovible de stockage de données, sans risquer que des données soit interprétées à tort comme des instructions.

Description

1 PROCEDE DE PASSATION D'INSTRUCTIONS ENTRE UNE STATION HâTE ET UN
DISPOSITIF ELECTRONIQUE PORTABLE, ET DISPOSITIF DE MISE EN OEUVRE L'invention concerne la passation d'instructions à une carte à microcircuit, au moyen d'un programme générique de gestion d'unité amovible de stockage de données appartenant à la catégorie des "pilotes" ou "drivers" systématiquement associé aux systèmes d'exploitation d'équipements électroniques à microprocesseur tels que des ordinateurs personnels, des appareils photo numériques, des caméscopes, des baladeurs numériques, des téléphones portables, etc.. Les unités amovibles de stockage de données à mémoires flash, pour ordinateurs personnels et appareillages électroniques présentées sous des conditionnements à très faible encombrement : carte mémoire MMC (acronyme de l'expression anglo-saxonne "Multimedia Memory Card") ou clef USB de type "Mass Storage" sont de plus en plus répandues. Prévues initialement pour se connecter à des ordinateurs personnels par des ports d'entrée-sortie de type USB (acronyme de l'expression anglo-saxonne " Universal Serial Bus") ou autre, ces unités amovibles de stockage de données nécessitaient à l'origine la présence d'un driver spécifique dans la station hôte. Comme cela nuisait à leur portabilité, des drivers génériques ont été rapidement développés, à leur intention pour les principaux systèmes d'exploitation tels que Windows , Mac , Unix , Linux , etc., fonctionnant sur les ordinateurs personnels existants. Ces drivers génériques de gestion d'unités amovibles de stockage de données tels que, par exemple, les drivers adapté au protocole de communication du type "USB mass storage device class", utilisent des protocoles spécifiques de transaction entre station hôte et unité amovible de stockage de données dotés d'un jeu limité de commandes. Ainsi, selon le protocole au standard MMC, une unité amovible de stockage de données constituées d'une carte MMC, communique avec une station hôte par un jeu limité de commandes standard destinées à gérer son espace mémoire, dont des commandes de lecture et d'écriture de données. Très rapidement, le besoin s'est fait sentir de dépasser les limitations des jeux de commandes de ces drivers génériques en utilisant les 2908195 2 données échangées au cours d'une transaction initiée par une commande standard de lecture/écriture pour passer des instructions supplémentaires aux unités amovibles de stockage depuis une station hôte. C'est ainsi qu'il a été proposé, dans la demande de brevet 5 japonais JP 2001-147850, une méthode pour autoriser ou interdire l'écriture et/ou la lecture de l'espace mémoire ou de parties de l'espace mémoire ou même seulement de fichiers d'une unité amovible de stockage de données sans transmettre de commandes spécifiques autres que celles autorisée par un driver générique de gestion d'unité amovible de stockage de données.
10 Dans cette méthode, des drapeaux d'état d'autorisation/interdiction de lecture/écriture sont associés aux adresses physiques stockées dans la table d'allocation de fichiers FAT (acronyme de l'expression anglo-saxonne "file Allocation Table). Un mot de passe précède les données placées aux adresses physiques faisant l'objet d'une restriction de lecture/écriture. Pour 15 être considérée, chaque commande de lecture/écriture à des adresses physiques faisant l'objet de restriction de lecture/écriture doit être suivie par un mot de passe seul pour une commande de lecture ou placé en entête des données à inscrire pour une commande d'écriture. Le mot de passe associé à une commande de lecture/écriture portant sur un espace mémoire ou un 20 fichier frappé d'une restriction de lecture/écriture doit correspondre au mot de passe enregistré pour que la commande soit exécutée. Il a également été proposé, dans la demande européenne de brevet EP 1.571.557 de passer des commandes et/ou des données à un dispositif amovible de stockage de données par l'intermédiaire d'une 25 commande d'écriture standard provenant du driver générique d'un système d'exploitation d'ordinateur personnel, en introduisant dans les données à écrire un drapeau d'identification de commande détecté et interprété par le microcontrôleur de gestion du dispositif amovible de stockage comme marquant la présence d'une commande dans les données reçues. Chaque 30 paquet de données envoyé pour écriture au dispositif amovible de stockage commence par un champ entête qui contient ou non le drapeau d'identification de commande et qui est analysé par le microcontrôleur de gestion du dispositif amovible de stockage préalablement à la prise en compte des données.
2908195 3 La passation d'une signalisation de présence de commande ou d'un mot de passe par l'intermédiaire des données à inscrire dans le dispositif amovible de stockage de données présente l'inconvénient de rendre possible une reproduction fortuite d'une signalisation de commande 5 ou d'un mot de passe par les données ordinaires à inscrire pouvant conduire le microcontrôleur du dispositif amovible à une interprétation erronée de données d'écriture en tant que commandes ou un mot de passe. La présente invention a pour but de remédier à l'inconvénient 1 o précité. Elle a pour objet un procédé de passation d'instructions entre une station hôte à microprocesseur et un dispositif électronique portable reliés par une transmission de données, au rnoyen d'une transaction initiée par une 15 commande de lecture/écriture de paquets de données, engendrée au sein de la station hôte, par un programme de gestion d'unité amovible de stockage de données et transmise au dispositif électronique portable sous la forme d'un code binaire comportant un index définissant le type de commande de lecture/écriture concernée et un argurnent contenant un ou des paramètres 20 précisant la manière d'appliquer au dispositif électronique portable, le type de commande de lecture/écriture défini dans l'index. Ce procédé est remarquable en ce qu'une instruction est signalée au dispositif électronique portable au moyen d'un paramètre de présence d'instruction, placé dans l'argument d'une commande de lecture/écriture.
25 Ainsi, il est possible de commander un dispositif électronique portable pour réaliser des traitements autres que l'écriture et la lecture de données tout en se limitant aux commandes d'écriture et de lecture générées par des programmes gestionnaires existants associés aux systèmes d'exploitation des stations hôte.
30 Avantageusement, une instruction est passée au dispositif électronique portable par l'intermédiaire d'une commande d'écriture de paquets de données dont l'argument renferme un paramètre de présence d'instruction définissant l'instruction. Avantageusement, une instruction est passée au dispositif 35 électronique portable par l'intermédiaire d'une commande d'écriture de 2908195 4 paquets de données dont l'argument renferme un paramètre de présence d'instruction signalant une instruction dans les paquets de données à écrire. Avantageusement, une instruction est passée au dispositif électronique portable par l'intermédiaire d'une commande d'écriture de 5 paquets de données dont l'argument renferme un paramètre de présence d'instruction signalant un script de commande renfermant une suite d'instructions, dans les paquets de données à écrire. Avantageusement, le paramètre de présence d'instruction pointe, dans le dispositif électronique portable, une adresse de fichier préexistant.
10 Avantageusement, les données résultant de l'exécution d'une instruction par le dispositif électronique portable sont placées dans des emplacements mémoire du dispositif électronique portable consultables au moyen d'une instruction passée au dispositif électronique portable par l'intermédiaire de l'argument d'une commande de lecture de paquets de 15 données. Avantageusement, les données résultant de l'exécution d'une instruction par le dispositif électronique portable sont placées dans des emplacements mémoire volatile du dispositif électronique portable consultables au moyen d'une instruction passée par la station hôte au 20 dispositif électronique portable par l'intermédiaire de l'argument d'une commande de lecture de paquets de données. Avantageusement, les instructions sont de type APDU (acronyme de l'expression anglo-saxonne :"Application Protocol Data Unit), défini par la norme ISO 7816.
25 Avantageusement, les instructions sont des requêtes transmises au dispositif électronique portable par l'intermédiaire de commandes d'écriture de paquets de données et des réponses du dispositif électronique portable consultables par l'intermédiaire de commandes de lecture de paquets, requêtes et réponse étant conformes à un protocole internet.
30 Avantageusement, les requêtes transmises au dispositif électronique portable par l'intermédiaire de commandes d'écriture de paquets de données et les réponses du dispositif électronique portable consultables par l'intermédiaire de commandes de lecture de paquets sont conformes au protocole http.
2908195 5 Elle a également pour objet un dispositif électronique portable pour la mise en oeuvre du procédé précédent équipé d'un port entrée-sortie au standard USB. Avantageusement, le dispositif électronique portable est une carte 5 à microcircuit. Avantageusement, le dispositif électronique portable est une clef électronique. Avantageusement, le programme de gestion d'unité amovible de stockage de données est conforme à la spécification MMC.
10 D'autres caractéristiques et avantages de l'invention ressortiront de la description ci-après d'un mode de réalisation donné à titre d'exemple. Cette description sera faite en regard du dessin dans lequel : - une figure 1 est un schéma fonctionnel d'un dispositif 15 électronique portable amovible raccordable à une station hôte à microprocesseur, - une figure 2 est un diagramme illustrant la composition d'un mot binaire définissant une commande d'écriture conforme au protocole de transaction MMC, 20 - une figure 3 est un diagramme illustrant une transaction de lecture de données conforme au protocole de transaction MMC, et - une figure 4 est un diagramme illustrant un mode possible de fonctionnement pour le microcontrôleur d'un équipement électronique portable mettant en oeuvre le procédé selon l'invention.
25 La figure 1 montre le schéma fonctionnel d'un dispositif électronique portable amovible tel qu'une carte à microcircuit 1 conçue à la fois pour le stockage de données et pour le contrôle de l'exécution d'une transaction bancaire ou autre, par un système informatique pourvu d'un 30 terminal de communication adapté dit "lecteur de carte à microcircuit" qui constitue une station hôte. Cette carte à microcircuit 1 comporte une mémoire flash 10, un microcontrôleur de gestion 11 pourvu d'une mémoire de travail volatile RAM 12 et d'une mémoire de programme non volatile ROM 13 et un port d'entrée-sortie 14 raccordé par un bus interne au microcontrôleur de gestion 11.
2908195 6 Le port d'entrée-sortie 14 de la carte à microcircuit 1 peut être mis en communication avec un port d'entréesortie d'une station hôte. C'est ici un port série compatible avec le standard SPI (acronyme de l'expression anglo-saxonne :"Serial Peripheral Interface Bus") supportant le protocole de 5 transaction MMC, bien adapté aux cartes mémoire flash. Mais il pourrait être d'un tout autre type de port de communication, comme un port SDC (acronyme de l'expression anglo-saxonne :"Secure Digital memory Card"), un port USB, un port série RS232, un port GPIO (acronyme de l'expression anglo-saxonne :"General Purpose Input/Output") au format de transmission 10 12C (acronyme de l'expression anglo-saxonne :"Inter Integrated Circuit Bus"), ou SMBus (acronyme de l'expression anglo-saxonne :"System Management Bus"), un port PCMCIA, etc., avec un protocole de transaction offrant un jeu limité de commandes dont des commandes standard de lecture/écriture de données, codées par un mot binaire comportant au moins un champ index 15 précisant un type de commande lecture/écriture et un champ argument contenant un ou des paramètres précisant la manière d'appliquer le type de commande de lecture/écriture défini dans l'index. Le protocole de transaction MMC est plus particulièrement orienté vers la gestion d'une unité de stockage amovible de données ayant un 20 espace mémoire qui apparaît à la station hôte comme un volume organisé en secteurs ou blocs de même capacité et qui est géré par le driver générique d'une station hôte au moyen d'adresses logiques de blocs auxquelles le microcontrôleur de gestion 11 de l'unité amovible fait correspondre des adresses physiques de blocs.
25 La figure 2 illustre la composition de la trame 2 d'un mot binaire codant une commande du protocole de transaction MMC. Celle-ci se compose de 6 octets renfermant successivement : - un bit de début 20 toujours à la valeur 0, -un bit de transfert 21 toujours à la valeur 1, 30 - un champ index 22 occupant 6 bits et identifiant le type de la commande, - un champ argument 23 de 4 octets contenant un paramètre de commande tel qu'une adresse logique de bloc de début de lecture/écriture ou le nombre de blocs affectés par les opérations ultérieures de lecture/écriture, 35 - un code correcteur d'erreur 24 de 7 bits et, 2908195 7 - un bit de fin 25 toujours à la valeur 1. Une commande est suivie d'un temps d'inactivité correspondant à un délai de réponse accordé à la carte à microcircuit 1. Celle-ci 1 accuse réception d'un ordre par une réponse ou acquittement de 1 à 2 octets 5 indiquant des conditions d'erreur. Puis les données à échanger lorsqu'il y en a, sont émises sous forme de paquets de données. La figure 3 illustre le déroulement d'une transaction de lecture d'un bloc. Le programme générique de gestion d'unité amovible de la station hôte envoie à la carte à microcircuit 1 sur la ligne D1, une commande 5 de lecture io d'un ou plusieurs blocs identifiée par son index, avec l'adresse logique du premier bloc à lire dans son argument. La carte à microcircuit 1 répond sur la ligne DO par un acquittement 6 puis par une mise à disposition du paquet 7 des données lues dans le bloc dont l'adresse logique correspond à celle figurant dans l'argument de la commande de lecture. Pour une transaction de 15 lecture de plusieurs blocs, la carte à microcircuit répond par un acquittement suivi par la suite des paquets de données lues dans les différents blocs. Une commande d'écriture se déroule de la même manière, excepté le fait que les paquets de données envoyés par la station hôte se retrouvent sur la ligne Dl 20 Pour augmenter le nombre de commandes disponibles, qui est limité dans le cas du protocole de transaction MMC à la capacité d'un quart d'octet, c'est-à-dire 64, une partie de la capacité d'adressage du champ argument 21 des commandes de lecture ou écriture, considérées au sens large, c'est-à-dire incluant les commandes indirectement liées à l'écriture ou 25 à la lecture comme par exemple, la commande CMD16 de dénombrement des blocks à lire ou écrire (connue sous l'abréviation anglo-saxonne :"SET_BLOCKLEN"), est réservée à un paramètre de présence d'instruction. Celui-ci est alors interprété par la carte à microcircuit 1 comme un ordre d'inhibition de l'exécution de la commande de lecture ou écriture 30 reçue, de recherche d'instruction dans l'argument de la commande et/ou dans le ou les paquets de données à écrire suivant une commande d'écriture, et d'exécution de l'instruction trouvée. Le paramètre de présence d'instruction peut identifier une instruction à lui seul ou signifier la présence d'une instruction dans le ou les paquets de données d'une commande 35 d'écriture.
2908195 8 Le paramètre de présence d'instruction peut pointer, dans une commande d'écriture, une adresse de fichier préexistant car sa détection par le microcontrôleur 11 de la carte à microcircuit 1 inhibe l'exécution de la commande d'écriture pour la remplacer par une recherche d'instruction suivie 5 par l'exécution de l'instruction trouvée. Comme une réponse à une commande d'écriture selon le protocole de transaction MMC est toujours envoyée avant des données d'écriture, les données résultant de l'exécution d'une instruction par la carte à microcircuit 1 sont récupérées par la station hôte au moyen d'une commande io de lecture. La figure 4 est un diagramme de fonctionnement illustrant une façon d'opérer pour le microcontrôleur 11 de la carte à microcircuit 1. Au démarrage, à la mise sous tension 30 de la carte à microcircuit 1 par son embrochage sur un connecteur d'une station hôte en activité, le 15 microcontrôleur 11 de la carte à microcircuit 1 s'initialise et se met, en 31, en attente d'une commande conforme au protocole MMC en provenance de la station hôte. Dès que la carte à microcircuit reçoit une commande conforme au protocole MMC en provenance de la station hôte, son microcontrôleur 11 la 20 détecte et analyse son argument en 32 pour y rechercher un paramètre de présence d'instruction. Lorsque le microcontrôleur 11 ne repère pas de paramètre de présence d'instruction dans la commande, il examine en 33, si l'argument de la commande est compatible avec le type de commande annoncé dans le 25 champ index. S'il y a compatibilité, il exécute en 34 la commande qui intéresse la gestion de la mémoire flash 10 et se met en attente d'une nouvelle commande. S'il n'y a pas compatibilité, il émet en 35 une signalisation d'erreur par le message d'acquittement et se met en attente d'une nouvelle commande.
30 Lorsque le microcontrôleur repère un paramètre de présence d'instruction dans l'argument de la commande, il l'interprète pour localiser l'instruction, soit dans l'argument de la commande où figure le paramètre, soit dans des données à écrire et analyse en 36 l'instruction pour reconnaître si elle correspond à une requête d'exécution d'un traitement.
2908195 9 Si l'instruction correspond à une requête d'exécution d'un traitement, il exécute en 37 le traitement demandé, place, si nécessaire, le résultat obtenu dans sa mémoire volatile 12 pour permettre sa consultation par une instruction ultérieure de la station hôte et se met en attente d'une 5 nouvelle commande. Si l'instruction ne correspond pas à une requête d'exécution d'un traitement, il recherche en 38, si elle correspond à une requête de compte-rendu d'exécution d'une instruction antérieure. Si tel est le cas, il envoie en 39, à la station hôte, son compte-rendu qu'il a éventuellement placé ~o provisoirement dans sa mémoire RAM 12 et se met en attente d'une nouvelle commande. L'envoi se fait préférablement par le ou les paquets de données attendus en réponse à une commande de lecture transmettant par son argument l'instruction de requête de compte-rendu. Enfin, Si l'instruction ne correspond ni à une requête d'exécution 15 d'un traitement, ni à une requête de compte-rendu, le microcontrôleur envoie en 40, une signalisation d'erreur par le message d'acquittement et se met en attente d'une nouvelle commande. Une instruction de requête de compte-rendu peut être passée en argument d'une commande de lecture. Dans ce cas le compte-rendu est 20 renvoyé par la carte à microcircuit dans la suite des paquets des données lues. Lorsque le compte-rendu attendu est très court, l'instruction de requête de compte-rendu peut aussi être passée par un paramètre de présence d'instruction placé dans l'argument d'une commande d'écriture, et le compte rendu retourné par le message d'acquittement suivant la commande.
25 Il est possible de soumettre à condition, l'exécution d'une instruction par la carte à microcircuit, à l'aide d'une valeur drapeau associée à l'instruction, signalant la satisfaction ou non de la condition. Par exemple, lors du déroulement, sous le contrôle de la carte à microcircuit 1, d'une transaction bancaire ou autre exécutée par un système informatique 30 raccordé à la station hôte, faisant intervenir des échanges de message entre la carte à microcircuit 1 et le système informatique accessible de la station hôte, l'exécution par la carte à microcircuit 1 d'une requête de la station hôte lui parvenant par une instruction peut être conditionnée à la réception préalable par la carte à microcircuit 1, d'une instruction de consultation de 2908195 10 résultats d'exécution placés dans la mémoire volatile 12 de la carte à microcircuit 1. Lorsqu'une instruction de la station hôte à destination de la carte à microcircuit 1 est accompagnée de paramètres, elle est préférablement 5 transmise avec ses paramètres, par les paquets de données d'une commande d'écriture dont l'argument renferme un paramètre de présence d'instruction. Elle peut être également transmise par l'argument de la commande d'écriture, ses paramètres lorsqu'ils existent, étant transmis dans les paquets de données à écrire. 1 o Une instruction peut également être mémorisée dans la carte à microcircuit, le paramètre de présence d'instruction sert alors à la localiser au sein de la carte à microcircuit. Une instruction peut être conforme au protocole de transaction APDU (acronyme de l'expression anglo-saxonne "Application Protocol Data 15 Unit") défini dans la norme ISO 7816, de même que la réponse résultant de l'exécution de l'instruction par la carte à microcircuit 1. Lorsqu'il s'agit d'une requête de mise à disposition de consigne, elle est passée par la station hôte à la carte à microcircuit 1, de préférence, par l'intermédiaire d'une commande de lecture de paquets de données dont l'argument pointe l'adresse d'un 20 emplacement mémoire réservé à la communication de consigne de la part du dispositif électronique portable. Plus généralement, les requêtes de la station hôte transmises à la carte à microcircuit 1 préférablement, par des commandes d'écriture de paquets de données et les réponses de la carte à microcircuit 1 consultables 25 par la station hôte par l'intermédiaire de commandes de lecture de paquets de données peuvent être conformes au protocole Internet http 1.0 (acronyme de l'expression anglo-saxonne " HyperText Transfer Protocol") ou au protocole internet FTP (acronyme de l'expression anglo-saxonne :" File Transfer Protocol").
30 Une instruction peut être un script de commande, par exemple conforme à la spécification Java , placé dans le ou les paquets de données suivant une commande d'écriture dont l'argument renferme un paramètre de présence d'instruction prévenant de la présence d'instructions dans le ou les paquets de données à écrire.
2908195 11 De nombreuses variantes sont envisageables. La carte à microcircuit peut être montée dans une clef USB gérée par une station hôte selon un protocole de transaction SCSI (acronyme de l'expression anglo-saxonne :"Small Computer System Interface") tel que le SBC-2 acronyme de 5 l'expression anglo-saxonne :"SCSI Blocks Command") qui présente un jeu limité de commandes dont des commandes de lecture/écriture des blocs d'un espace mémoire de stockage de données, codées par un mot binaire comportant un champ index identifiant le type de commande lecture/écriture, et un champ argument contenant des paramètres comme une adresse io logique de bloc de début de lecture ou d'écriture. Ainsi, une instruction d'exécution de traitement peut être passée à une carte à microcircuit au moyen d'une commande d'écriture et de vérification simultanées ("write and verify" en anglo-saxon) du protocole SCSI, le drapeau "Expected initial logical block reference tag" figurant dans 15 l'argument de cette commande pouvant être utilisé en complément avec le paramètre de présence d'instruction utilisant l'emplacement de l'adresse logique de bloc ("logical block address" en anglo-saxon) pour signifier la présence d'instructions dans le ou les paquets de données à écrire. De même, une instruction de requête de compte-rendu peut être passée au 20 moyen d'une commande de lecture ("read" en anglo-saxon) comportant le paramètre de présence d'instruction à l'emplacement de l'argument réservé à l'adresse logique de bloc.

Claims (14)

REVENDICATIONS
1. Procédé de passation d'instructions entre une station hôte à microprocesseur et un dispositif électronique portable (1) reliés par une transmission de données, au moyen d'une transaction initiée par une commande de lecture/écriture (2) de paquets de données, engendrée au sein de la station hôte, par un programme de gestion d'unité amovible de stockage de données et transmise au dispositif électronique portable (1) sous la forme d'un code binaire comportant un index (20) définissant un type de commande de lecture/écriture et un argument (21) contenant un ou des 1 o paramètres précisant la manière d'appliquer au dispositif électronique portable (1), le type de commande de lecture/écriture défini dans l'index (20), caractérisé en ce qu'une instruction est signalée au dispositif électronique portable (1) au moyen d'un paramètre de présence d'instruction, placé dans l'argument (21) d'une commande de lecture/écriture (2). 15
2. Procédé selon la revendication 1, caractérisé en ce qu'une instruction est passée au dispositif électronique portable (1) par l'intermédiaire d'une commande (2) d'écriture de paquets de données dont l'argument (21) renferme un paramètre de présence d'instruction définissant 20 l'instruction.
3. Procédé selon la revendication 1, caractérisé en ce qu'une instruction est passée au dispositif électronique portable (1) par l'intermédiaire d'une commande (2) d'écriture de paquets de données dont 25 l'argument (21) renferme un paramètre de présence d'instruction signalant une instruction dans des paquets de données à écrire.
4. Procédé selon la revendication 3, caractérisé en ce que les paquets à écrire comportent un script de commande renfermant une suite 30 d'instructions.
5. Procédé selon la revendication 1, caractérisé en ce que le paramètre de présence d'instruction pointe une adresse de fichier préexistant. 2908195 13
6. Procédé selon la revendication 1, caractérisé en ce que les données résultant de l'exécution d'une instruction par le dispositif électronique portable (1) sont placées dans des emplacements mémoire du 5 dispositif électronique portable (1) consultables au moyen d'une instruction passée au dispositif électronique portable (1) par l'intermédiaire de l'argument (21) d'une commande de lecture de paquets de données.
7. Procédé selon la revendication 1, caractérisé en ce que les données résultant de l'exécution d'une instruction par le dispositif électronique portable (1) sont placées dans des emplacements mémoire volatile du dispositif électronique portable (1) consultables au moyen d'une instruction passée au dispositif électronique portable (1) par l'intermédiaire de l'argument (21) d'une commande de lecture de paquets de données.
8. Procédé selon la revendication 1, caractérisé en ce que les instructions sont du type APDU défini clans la norme ISO 7816.
9. Procédé selon la revendication 1, caractérisé en ce que les requêtes transmises au dispositif électronique portable (1) par l'intermédiaire de commandes d'écriture de paquets de données et les réponses du dispositif électronique portable (1) consultables par l'intermédiaire de commandes de lecture de paquets sont conformes à un protocole internet.
10. Procédé selon la revendication 9, caractérisé en ce que requêtes et réponses sont conformes au protocole http.
11. Dispositif électronique portable mettant en oeuvre le procédé selon la revendication 1, caractérisé en ce qu'il est équipé d'un port entrée-30 sortie au standard USB.
12. Dispositif électronique portable mettant en oeuvre le procédé selon la revendication 1, caractérisé en ce qu'il est constitué d'une carte à microcircuit. 35 2908195 14
13. Dispositif électronique portable mettant en oeuvre le procédé selon la revendication 1, caractérisé en ce qu'il est constitué d'une clef électronique. 5
14. Procédé selon la revendication 1, caractérisé en ce que le programme de gestion d'unité amovible de stockage de données est conforme à la spécification MMC.
FR0609673A 2006-11-06 2006-11-06 Procede de passation d'instructions entre une station hote et un dispositif electronique portable, et dispositif de mise en oeuvre Active FR2908195B1 (fr)

Priority Applications (5)

Application Number Priority Date Filing Date Title
FR0609673A FR2908195B1 (fr) 2006-11-06 2006-11-06 Procede de passation d'instructions entre une station hote et un dispositif electronique portable, et dispositif de mise en oeuvre
US12/513,404 US8327036B2 (en) 2006-11-06 2007-11-06 Method of passing instructions between a host station and a portable electronic device, and device for implementation
EP07822255A EP2089806A1 (fr) 2006-11-06 2007-11-06 Procede de passation d'instructions entre une station hote et un dispositif electronique portable, et dispositif de mise en oeuvre
CA2702373A CA2702373C (fr) 2006-11-06 2007-11-06 Procede de passation d'instructions entre une station hote et un dispositif electronique portable, et dispositif de mise en oeuvre
PCT/EP2007/061938 WO2008055902A1 (fr) 2006-11-06 2007-11-06 Procede de passation d'instructions entre une station hote et un dispositif electronique portable, et dispositif de mise en oeuvre

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0609673A FR2908195B1 (fr) 2006-11-06 2006-11-06 Procede de passation d'instructions entre une station hote et un dispositif electronique portable, et dispositif de mise en oeuvre

Publications (2)

Publication Number Publication Date
FR2908195A1 true FR2908195A1 (fr) 2008-05-09
FR2908195B1 FR2908195B1 (fr) 2009-02-06

Family

ID=38110466

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0609673A Active FR2908195B1 (fr) 2006-11-06 2006-11-06 Procede de passation d'instructions entre une station hote et un dispositif electronique portable, et dispositif de mise en oeuvre

Country Status (5)

Country Link
US (1) US8327036B2 (fr)
EP (1) EP2089806A1 (fr)
CA (1) CA2702373C (fr)
FR (1) FR2908195B1 (fr)
WO (1) WO2008055902A1 (fr)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8856292B2 (en) * 2009-10-27 2014-10-07 Cisco Technology, Inc. Managing command compliance in internetworking devices
CN102053917B (zh) * 2010-12-29 2013-04-24 北京握奇数据系统有限公司 一种降低内存占用的智能卡及其处理指令的方法
US10888119B2 (en) * 2014-07-10 2021-01-12 Rai Strategic Holdings, Inc. System and related methods, apparatuses, and computer program products for controlling operation of a device based on a read request
KR102395190B1 (ko) 2017-07-31 2022-05-06 삼성전자주식회사 호스트와 인터페이스를 수행하는 스토리지 장치, 호스트 및 스토리지 장치의 동작방법
US11853610B2 (en) * 2021-02-16 2023-12-26 iodyne, LLC Pass-through command queues for unmodified storage drivers

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001147850A (ja) * 1999-11-19 2001-05-29 Seiko Epson Corp コンピューターシステム
EP1304665A2 (fr) * 2001-10-22 2003-04-23 Kabushiki Kaisha Toshiba Dispositif et procédé de commande d'un dispositif à carte
US20040210715A1 (en) * 2003-04-17 2004-10-21 Eliyahou Harari Memory cards including a standard security function
EP1571557A1 (fr) * 2002-11-18 2005-09-07 Netac Technology Co., Ltd. Methode d'envoi d'instructions et de donnees a une memoire mobile
US20060101199A1 (en) * 2004-11-10 2006-05-11 Nokia Corporation Method and system for controlling a hard disk drive using a multimediacard physical interface

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002236767A (ja) * 2001-02-07 2002-08-23 Sony Corp 情報処理装置および方法、プログラム格納媒体、並びにプログラム
US7334077B2 (en) 2003-10-17 2008-02-19 Renesas Technology America, Inc. Method and apparatus for smart memory pass-through communication
US7427027B2 (en) * 2004-07-28 2008-09-23 Sandisk Corporation Optimized non-volatile storage systems
JP4735100B2 (ja) * 2005-03-08 2011-07-27 ソニー株式会社 複合型記憶装置、データ処理方法及びプログラム
US8078788B2 (en) * 2005-12-08 2011-12-13 Sandisk Technologies Inc. Media card command pass through methods
US7739487B2 (en) * 2006-01-17 2010-06-15 Nokia Corporation Method for booting a host device from an MMC/SD device, a host device bootable from an MMC/SD device and an MMC/SD device method a host device may booted from

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001147850A (ja) * 1999-11-19 2001-05-29 Seiko Epson Corp コンピューターシステム
EP1304665A2 (fr) * 2001-10-22 2003-04-23 Kabushiki Kaisha Toshiba Dispositif et procédé de commande d'un dispositif à carte
EP1571557A1 (fr) * 2002-11-18 2005-09-07 Netac Technology Co., Ltd. Methode d'envoi d'instructions et de donnees a une memoire mobile
US20040210715A1 (en) * 2003-04-17 2004-10-21 Eliyahou Harari Memory cards including a standard security function
US20060101199A1 (en) * 2004-11-10 2006-05-11 Nokia Corporation Method and system for controlling a hard disk drive using a multimediacard physical interface

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ISO: "IDENTIFICATION CARDS -- INTEGRATED CIRCUIT CARDS -- PART 4: ORGANIZATION, SECURITY AND COMMANDS FOR INTERCHANGE ISO/IEC 7816-4", INTERNATIONAL STANDARD ISO/IEC, XX, XX, 5 January 2005 (2005-01-05), pages 90, XP008077622 *
SAMSUNG ELECTRONICS: "S3F49DAX MultiMediaCard Controllers Datasheet Revision 1.0", INTERNET CITATION, 17 August 2004 (2004-08-17), XP002369242, Retrieved from the Internet <URL:http://origin.samsung.com/Products/Semiconductor/SystemLSI/Microcontrollers/32_bit/MemoryCardController/S3F49DAX/ds_s3f49dax_rev10.pdf> [retrieved on 20060207] *

Also Published As

Publication number Publication date
US8327036B2 (en) 2012-12-04
WO2008055902A1 (fr) 2008-05-15
CA2702373C (fr) 2017-05-23
FR2908195B1 (fr) 2009-02-06
CA2702373A1 (fr) 2008-05-15
US20100070655A1 (en) 2010-03-18
EP2089806A1 (fr) 2009-08-19

Similar Documents

Publication Publication Date Title
RU2625721C2 (ru) Способ и устройство управления доступом к компьютерной системе
WO2015188788A1 (fr) Procédé et appareil de protection de sécurité de paiement par terminal mobile, et terminal mobile
US8793795B1 (en) Computer forensic tool
FR2908195A1 (fr) Procede de passation d&#39;instructions entre une station hote et un dispositif electronique portable, et dispositif de mise en oeuvre
CN111131221B (zh) 接口校验的装置、方法及存储介质
WO2020181809A1 (fr) Procédé et système de traitement de données basés sur une vérification d&#39;interface, et dispositif informatique
CN111756750B (zh) 安全访问方法、装置、设备及存储介质
CN110888838A (zh) 基于对象存储的请求处理方法、装置、设备及存储介质
EP0681242B1 (fr) Procédé de sécurisation des accès aux cartes amovibles pour ordinateur
CN109800576B (zh) 未知程序异常请求的监控方法、装置、及电子装置
WO2018121266A1 (fr) Procédé et dispositif d&#39;obtention d&#39;une application et dispositif terminal
US7437563B2 (en) Software integrity test
CA2450334A1 (fr) Acces a une zone protegee d&#39;une memoire
CN108737328B (zh) 一种浏览器用户代理识别方法、系统及装置
US7779464B2 (en) System security approaches utilizing a hierarchical memory system
CN108600259B (zh) 设备的认证和绑定方法及计算机存储介质、服务器
EP1958418A2 (fr) Entite electronique portable destinee a etablir une communication voix sur ip securisee »
CN113141332B (zh) 一种命令注入识别方法、系统、设备及计算机存储介质
US20030120667A1 (en) Apparatus for processing method-embedded content and method thereof
CN112953957B (zh) 一种入侵防御方法、系统及相关设备
WO2022048464A1 (fr) Procédé de masquage de données, appareil de masquage de données et dispositif de stockage
WO2009138641A1 (fr) Procede d&#39;utilisation d&#39;un terminal hote par un dispositif externe connecte au terminal
CN109523591A (zh) 图片的处理方法、装置、设备和存储介质
CN113852638B (zh) 一种攻击检测方法、装置、设备及存储介质
CN112600816B (zh) 一种入侵防御方法、系统及相关设备

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 10

PLFP Fee payment

Year of fee payment: 11

PLFP Fee payment

Year of fee payment: 12

PLFP Fee payment

Year of fee payment: 13

PLFP Fee payment

Year of fee payment: 14

PLFP Fee payment

Year of fee payment: 15

PLFP Fee payment

Year of fee payment: 16

PLFP Fee payment

Year of fee payment: 17

PLFP Fee payment

Year of fee payment: 18