US20050251596A1 - Usb device - Google Patents

Usb device Download PDF

Info

Publication number
US20050251596A1
US20050251596A1 US10/521,228 US52122805A US2005251596A1 US 20050251596 A1 US20050251596 A1 US 20050251596A1 US 52122805 A US52122805 A US 52122805A US 2005251596 A1 US2005251596 A1 US 2005251596A1
Authority
US
United States
Prior art keywords
usb
usb device
functionality
service
auxiliary device
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.)
Abandoned
Application number
US10/521,228
Inventor
Thomas Maier
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.)
Axalto SA
Original Assignee
Axalto SA
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 Axalto SA filed Critical Axalto SA
Priority claimed from PCT/IB2003/002801 external-priority patent/WO2004008313A1/en
Publication of US20050251596A1 publication Critical patent/US20050251596A1/en
Assigned to AXALTO S.A. reassignment AXALTO S.A. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: DRABCZUK, NICOLAS
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • 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/10Program control for peripheral devices

Definitions

  • the invention relates to a system comprising a main device arranged to communicate with an auxiliary device.
  • the main device can be, for example, a USB host.
  • the auxiliary device can be, for example, a USB device, which communicates with the USB host via a USB bus using the USB protocol.
  • the system comprises a USB host, which is connected to various USB devices via a USB bus.
  • the USB host communicates with the USB devices with the USB protocol.
  • the USB protocol allows connecting several USB devices on the same USB bus using a system of time-sharing based on addressed devices.
  • the USB protocol is organized as a master/slave architecture, the USB host is thus responsible of the time-sharing management.
  • the USB host may comprise various applications. One or several services may be needed to run an application. An application uses one or several drivers to access and use the associated services. The drivers may be on the USB host.
  • the USB device may comprise various services, in particular those, which are needed by the applications of the USB host.
  • a service may be offered, for example, at the device level (standard USB device), or at the interface level (composite USB device).
  • the USB device is organized into several levels a device level, a configuration level, an interface level and an endpoint level. Each level is represented by different USB descriptors.
  • the USB device is plugged onto a USB port of the USB host.
  • all the USB descriptors are then retrieved from the USB device to the host device.
  • the enumeration step is triggered off with the modification of the voltage level on the line D+ or D ⁇ (depending on the USB device speed) due to a pull-up resistor present in the USB device on one of the lines.
  • the USB Host then uses the descriptors to load all the drivers of the USB device.
  • the number of drivers loaded depends on the number of different services present in the USB device. For example, if the USB device is at the same time a scanner and a printer the USB device will have to present two interfaces during the enumeration step. In that case, two drivers, one associated to the scanner interface, and the other one associated to the printer interface, will be loaded. A main driver associated to the device itself could also be loaded.
  • An object of the invention is to reduce the costs and to enhance the security.
  • a system comprising a main device and an auxiliary device arranged to co-operate with each other, the auxiliary device being arranged to effect a core functionality, the auxiliary device comprising descriptors, characterised in that at least one descriptor defines a functionality that is different from the core functionality.
  • the auxiliary device can be for, example, a USB device in the form of a smart card.
  • the main device can be, for example, a USB host, in particular a computer.
  • the smart card may comprise as a core functionality, for example, an internet login application.
  • the functionality that is different from the core functionality can be, for example, a mass storage functionality.
  • the Smart Card (USB device) is seen as a mass storage. It is then possible to install a driver and/or an application from the USB device by simulating that the USB device is a mass storage.
  • the USB device can thus be used in any USB host, even if the driver(s) are not installed nor available, since the driver(s) is(are) available in the USB device itself. A user can thus use, for example, the login application directly from the USB device.
  • an Internet Service Provider can, for example, define its own proprietary login application and store it on the Smart Card itself (USB device). The risk of hacking the login application is therefore reduced.
  • the invention thus enables an enhanced security and a reduction of the cost.
  • FIG. 1 illustrates a system comprising a USB host and a USB device
  • FIG. 2 illustrates the structure of the USB device
  • FIG. 3 illustrates a method of using the system
  • FIG. 4 illustrates a system comprising a USB host and a USB device
  • FIG. 5 illustrates a method of using the system
  • FIG. 6 illustrates a particular mode of realization.
  • the system comprises a USB host, which is connected to a USB device via a USB bus.
  • the USB host communicates with the USB devices with the USB protocol.
  • the communication between the USB host and the USB device can be made according four different transfer modes:
  • Two of these four modes require a bandwidth reservation, which is accorded or not by the USB host after an enumeration phase, depending on the bandwidth already reserved by other USB devices, which are plugged onto the USB bus.
  • the USB host comprises various applications (A 0 , A 1 ).
  • One or several services are needed to run an application (A 1 ).
  • the application A 1 needs, for example, to use the service S 1 and the service S 3 .
  • the services (S 1 , S 2 , S 3 , S 4 ) are located on the USB device.
  • an application A 1 uses a driver D 1 .
  • the USB host also comprises a standard application (A 0 ) associated with a standard driver (D 0 ).
  • the standard application (A 0 ) is implemented on a big number of USB hosts.
  • the USB device comprises various services (S 1 , S 2 , S 3 and S 4 ) in particular those (S 0 , S 1 , S 3 ), which are needed by the applications (A 0 , A 1 ) of the USB host.
  • the USB device also comprises two applications, (A 21 ) and (A 22 ). Each of these applications is arranged to run the service (S 2 ) using respectively a driver D 21 and a driver D 22 .
  • the application (A 21 ) is, for example, an application arranged to be used on a first type of computer provided with a first type of Operating System.
  • the application (A 22 ) is, for example, the same application than (A 21 ) but arranged to be used on a second type of computer provided with a second type of Operating System.
  • the USB device is, for example, a Smart Card.
  • the USB host is, for example, a Personal Computer (PC) using a specific Operating System (OS).
  • the services (S 2 , S 3 , S 4 ) can be any Vendor Specific services.
  • the service (S 2 ) can be a service associated, for example, to an Internet Service Provider login application, (A 21 ) or (A 22 ).
  • the service (S 1 ) is a mass storage service.
  • driver(s) and/or application(s) contained on the USB device can be installed by simulating that the USB device is a mass storage.
  • a service can be offered, for example, at the device level, or at the interface level (S 1 ,S 2 ,S 3 ,S 4 ).
  • the USB device also comprises a standard service (SO).
  • SO standard service
  • the standard service (S 0 ) is implemented on a big number of USB devices.
  • the USB device is connected to a USB port of a USB host.
  • a first checking step CHECK 1 the USB device checks whether a negotiation flag is activated or not.
  • the USB device removes its pull-up resistor in order to detach itself and then re-attach itself.
  • a second checking step CHECK 2 the USB device checks whether the negotiation flag is activated or not
  • the Smart Card (USB device) is seen as a mass storage. It is then possible to install a driver (D 21 or D 22 ) and/or an application (A 21 or A 22 ) from the USB device by simulating that the USB device is a mass storage.
  • the USB device can thus be used in any USB host, even if the driver(s) are not installed nor available, since the driver(s) is(are) available in the USB device itself.
  • the user can thus use the Internet Service Provider login application, (A 21 ) or (A 22 ), directly from the USB device to access the login service (S 2 ).
  • an Internet Service Provider can, for example, define its own proprietary login application (A 21 ).
  • this proprietary application (A 21 ) is stored on the Smart Card itself (USB device) and not on the computer. The risk of hacking the application (A 21 ) is therefore reduced.
  • the invention thus enables an enhanced security.
  • the standard application (A 0 ) can negotiate the activation of the new service (S 4 ) in a new negotiating step.
  • an opening step OPEN user opens a new application (A 3 ) requiring a service (S 4 ), which is not available in the current configuration of the USB device
  • the USB host activates the service (S 4 ).
  • the USB device activates the negotiation flag.
  • the USB device removes its pull-up resistor in order to detach itself and then re-attach.
  • a checking step CHECK the USB device checks whether the negotiation flag is activated or not.
  • the service (S 4 ) was first hidden from the USB host point of view. But one can imagine that once the USB device is inserted in the USB host, all the services are automatically enumerated. Some drivers will not be available and the corresponding application will be marked as not correctly installed. In this case, after the enumeration step, the user will have to update the drivers from the USB device.
  • FIG. 6 illustrates another example wherein the smartcard (USB device) comprises a loudspeaker service, a microphone service and a decryption service.
  • the smartcard comprises a loudspeaker service, a microphone service and a decryption service.
  • the loudspeaker service When the smartcard (USB device) is plugged into a computer (USB host) the loudspeaker service is activated by the computer.
  • the computer first considers the smartcard (USB device) as a loudspeaker and sends an encrypted music file ( 1 ).
  • the loudspeaker service receives the music file and sends it ( 2 ) to the decryption service for decrypting the music file.
  • the decrypted music file is sent ( 2 ) to the microphone service so that the computer (USB host) believes now ( 3 ) that the smartcard (USB device) is a microphone wherein someone is speaking.
  • the computer then sends the decrypted music file to the real loudspeaker ( 4 ).
  • a system comprising a main device and an auxiliary device arranged to co-operate with each other, the auxiliary device being arranged to effect a core functionality, the auxiliary device comprising descriptors, characterised in that the auxiliary device comprises at least one descriptor that defines a functionality that is different from the core functionality.
  • the main device is, for example, a USB host and the auxiliary device is, for example, a USB device.
  • the invention is not limited to devices communicating using the USB protocol. Other protocol like, for example, firewire based protocol may be used.
  • the functionality that is different from the core functionality is, for example, a mass storage functionality.
  • the functionality that is different from the core functionality is, for example, a microphone functionality.
  • the functionality that is different from the core functionality is, for example, a loudspeaker functionality or any other functionality that is different from the core functionality, and that can be effected by the auxiliary device
  • the auxiliary device when it is coupled to the main device, initially presents the descriptor that defines a functionality that is different from the core functionality
  • the USB device comprises a driver for the USB host to be installed by simulating that the USB device is a mass storage.
  • the USB device is a smartcard or any other portable object arranged to use the USB protocol, like, for example, a Personal Digital Assistant (PDA) or a cellular phone.
  • PDA Personal Digital Assistant

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Systems (AREA)
  • Dc-Dc Converters (AREA)
  • Rectifiers (AREA)
  • Formation And Processing Of Food Products (AREA)
  • Confectionery (AREA)
  • Eye Examination Apparatus (AREA)

Abstract

A system comprises a main device and an auxiliary device arranged to co-operate with each other. The auxiliary device is arranged to effect a core functionality. The auxiliary device comprises descriptors. The system is characterised in that the auxiliary device comprises at least one descriptor that defines a functionality that is different from the core functionality.

Description

    BACKGROUND OF INVENTION
  • 1. Field of the Invention
  • The invention relates to a system comprising a main device arranged to communicate with an auxiliary device. The main device can be, for example, a USB host. The auxiliary device can be, for example, a USB device, which communicates with the USB host via a USB bus using the USB protocol.
  • 2. Background Art
  • The system comprises a USB host, which is connected to various USB devices via a USB bus. The USB host communicates with the USB devices with the USB protocol. The USB protocol allows connecting several USB devices on the same USB bus using a system of time-sharing based on addressed devices. The USB protocol is organized as a master/slave architecture, the USB host is thus responsible of the time-sharing management.
  • The USB host may comprise various applications. One or several services may be needed to run an application. An application uses one or several drivers to access and use the associated services. The drivers may be on the USB host.
  • The USB device may comprise various services, in particular those, which are needed by the applications of the USB host. A service may be offered, for example, at the device level (standard USB device), or at the interface level (composite USB device).
  • The USB device is organized into several levels a device level, a configuration level, an interface level and an endpoint level. Each level is represented by different USB descriptors.
      • A device descriptor describing the overall device. The device descriptor may be associated to one or more configuration descriptors.
      • A configuration descriptor describing the electrical characteristics of the USB device, or of a part of the USB device. The configuration descriptor may be associated to one or more interface descriptors.
      • An interface descriptor describing a particular service of the USB device. An interface may contain one or more alternate settings. The interface descriptor may be associated to zero or more endpoint descriptors.
      • An endpoint descriptor describing a communication channel used by the service defined by the interface descriptor.
  • In a plugging step, the USB device is plugged onto a USB port of the USB host.
  • In an enumeration step, all the USB descriptors are then retrieved from the USB device to the host device. The enumeration step is triggered off with the modification of the voltage level on the line D+ or D− (depending on the USB device speed) due to a pull-up resistor present in the USB device on one of the lines.
  • In a loading step, the USB Host then uses the descriptors to load all the drivers of the USB device. The number of drivers loaded depends on the number of different services present in the USB device. For example, if the USB device is at the same time a scanner and a printer the USB device will have to present two interfaces during the enumeration step. In that case, two drivers, one associated to the scanner interface, and the other one associated to the printer interface, will be loaded. A main driver associated to the device itself could also be loaded.
  • SUMMARY OF INVENTION
  • An object of the invention is to reduce the costs and to enhance the security.
  • According to one aspect of the invention, a system comprising a main device and an auxiliary device arranged to co-operate with each other, the auxiliary device being arranged to effect a core functionality, the auxiliary device comprising descriptors, characterised in that at least one descriptor defines a functionality that is different from the core functionality.
  • The auxiliary device can be for, example, a USB device in the form of a smart card. The main device can be, for example, a USB host, in particular a computer. The smart card may comprise as a core functionality, for example, an internet login application. The functionality that is different from the core functionality can be, for example, a mass storage functionality.
  • Thanks to the invention, the Smart Card (USB device) is seen as a mass storage. It is then possible to install a driver and/or an application from the USB device by simulating that the USB device is a mass storage. The USB device can thus be used in any USB host, even if the driver(s) are not installed nor available, since the driver(s) is(are) available in the USB device itself. A user can thus use, for example, the login application directly from the USB device.
  • In addition, an Internet Service Provider can, for example, define its own proprietary login application and store it on the Smart Card itself (USB device). The risk of hacking the login application is therefore reduced.
  • The invention thus enables an enhanced security and a reduction of the cost.
  • BRIEF DESCRIPTION OF DRAWINGS
  • FIG. 1 illustrates a system comprising a USB host and a USB device;
  • FIG. 2 illustrates the structure of the USB device;
  • FIG. 3 illustrates a method of using the system;
  • FIG. 4 illustrates a system comprising a USB host and a USB device;
  • FIG. 5 illustrates a method of using the system; and
  • FIG. 6 illustrates a particular mode of realization.
  • DETAILED DESCRIPTION
  • The invention will be explained in the context of a system using the USB protocol.
  • As illustrated in FIG. 1, the system comprises a USB host, which is connected to a USB device via a USB bus. The USB host communicates with the USB devices with the USB protocol.
  • The communication between the USB host and the USB device can be made according four different transfer modes:
      • a control transfer, offering mainly a delivery and data integrity guarantee,
      • an interrupt transfer, offering mainly a periodicity and data integrity guarantee,
      • a bulk transfer, offering mainly a data integrity guarantee, and a possibly good data rate,
      • a isochronous transfer, offering mainly a bandwidth guarantee.
  • Two of these four modes require a bandwidth reservation, which is accorded or not by the USB host after an enumeration phase, depending on the bandwidth already reserved by other USB devices, which are plugged onto the USB bus.
  • As illustrated in FIG. 1, the USB host comprises various applications (A0, A1).
  • One or several services (S1, S3) are needed to run an application (A1). The application A1 needs, for example, to use the service S1 and the service S3. The services (S1, S2, S3, S4) are located on the USB device. To use a specific service S1, an application A1 uses a driver D1. The USB host also comprises a standard application (A0) associated with a standard driver (D0). Advantageously the standard application (A0) is implemented on a big number of USB hosts.
  • The USB device comprises various services (S1, S2, S3 and S4) in particular those (S0, S1, S3), which are needed by the applications (A0, A1) of the USB host. The USB device also comprises two applications, (A21) and (A22). Each of these applications is arranged to run the service (S2) using respectively a driver D21 and a driver D22. The application (A21) is, for example, an application arranged to be used on a first type of computer provided with a first type of Operating System. The application (A22) is, for example, the same application than (A21) but arranged to be used on a second type of computer provided with a second type of Operating System.
  • The USB device is, for example, a Smart Card. The USB host is, for example, a Personal Computer (PC) using a specific Operating System (OS). The services (S2, S3, S4) can be any Vendor Specific services. The service (S2) can be a service associated, for example, to an Internet Service Provider login application, (A21) or (A22). Advantageously, the service (S1) is a mass storage service. Thus driver(s) and/or application(s) contained on the USB device can be installed by simulating that the USB device is a mass storage.
  • As illustrated in FIG. 2, a service (S) can be offered, for example, at the device level, or at the interface level (S1,S2,S3,S4). The USB device also comprises a standard service (SO). Advantageously the standard service (S0) is implemented on a big number of USB devices.
  • As illustrated in FIG. 3, in a connecting step CON, the USB device is connected to a USB port of a USB host.
  • In a first checking step CHECK1, the USB device checks whether a negotiation flag is activated or not.
  • If not:
      • in a first enumerating step ENUM1, the USB host will enumerate the USB device. In other words, as illustrated in FIG. 2, the USB host will retrieve from the USB device to the USB host only the descriptors (I) associated to the standard service SO and to the mass storage service S1,
      • in a loading step LOAD, the drivers D0 and D1 are loaded into an active memory of the USB host,
      • in a negotiation step NEGO, the standard application A0 negotiates the services (S2, S3) to activate. The negotiating step comprises the following sub-steps:
        • a first receiving step, in which the standard application A0 receives from the standard service S0 a first list of all the different services (S1,S2, S3, S4) which are available on the USB device,
        • a comparing step, in which the standard application compares the first list of all the different services (S1, S2, S3, S4) which are available on the USB device with a second list of the services (S1,S2,S3) needed by the applications (A1,A2) to deduce the services to be activated (S1, S2, S3) on the USB device,
        • a second receiving step, in which the USB host indicates which type of computer is used and which type of Operating System (OS) is used, so that the USB device can install the corresponding application(s) (resp. A21 or A22) and the associated driver(s) (resp. D21 or D22).
        • a service activating step, in which the USB device activates the services to be activated, for example, by disconnecting and reconnecting the USB device to the USB host.
  • In an flag activating step ACTIV, the negotiation flag is activated.
  • In an initialization step INIT, the USB device removes its pull-up resistor in order to detach itself and then re-attach itself.
  • In a second checking step CHECK2, the USB device checks whether the negotiation flag is activated or not
  • If yes:
      • in a deactivating step DEACTIV, the negotiation flag is deactivated,
      • in a second enumerating step ENUM2, the USB host enumerates the USB device. As illustrated in FIG. 2, only the descriptors (II) associated to the services (S1, S2, S3) which have been activated and the descriptor associated to the standard service (S0) will be retrieved,
      • in a second loading step LOAD2, the standard driver D0 and the drivers (D1,D21 or D22,D3) associated to the services (S1, S2, S3) which have been activated are loaded into the active memory of the USB host.
  • The Smart Card (USB device) is now ready for use.
  • Thanks to the invention, from the user point of view, the Smart Card (USB device) is seen as a mass storage. It is then possible to install a driver (D21 or D22) and/or an application (A21 or A22) from the USB device by simulating that the USB device is a mass storage. The USB device can thus be used in any USB host, even if the driver(s) are not installed nor available, since the driver(s) is(are) available in the USB device itself.
  • The user can thus use the Internet Service Provider login application, (A21) or (A22), directly from the USB device to access the login service (S2).
  • Thanks to the invention, an Internet Service Provider can, for example, define its own proprietary login application (A21). In addition this proprietary application (A21) is stored on the Smart Card itself (USB device) and not on the computer. The risk of hacking the application (A21) is therefore reduced. The invention thus enables an enhanced security.
  • Note that, if a new service has to be added on the USB device, the standard service (S0) does not change and therefore the standard application (A0) does not change
  • As illustrated in FIGS. 4 and 5, if the USB device is already plugged, and the user starts a new application (A3), which requires a new service (S4), which is not activated in the USB device, the standard application (A0) can negotiate the activation of the new service (S4) in a new negotiating step.
  • In an opening step OPEN, user opens a new application (A3) requiring a service (S4), which is not available in the current configuration of the USB device
  • In a negotiating step NEGO, the USB host activates the service (S4).
  • In a flag activating step ACTIV, the USB device activates the negotiation flag.
  • In an initialization step INIT, the USB device removes its pull-up resistor in order to detach itself and then re-attach.
  • In a checking step CHECK, the USB device checks whether the negotiation flag is activated or not.
  • If yes:
      • in a deactivating step DEACTIV, the negotiation flag is deactivated,
      • in an enumerating step ENUM, the USB host enumerates the USB device. As illustrated in FIG. 2, only the descriptors (III) associated to the services (S1, S2, S3, S4) which have been activated and the descriptor associated to the standard service (SO) will be retrieved,
      • in a loading step LOAD, the standard driver D0 and the drivers (D1,D21 or D22,D3,D4) associated to the services (S1, S2, S3,S4) which have been activated are loaded into the active memory of the USB host.
  • In the above-mentioned example, the service (S4) was first hidden from the USB host point of view. But one can imagine that once the USB device is inserted in the USB host, all the services are automatically enumerated. Some drivers will not be available and the corresponding application will be marked as not correctly installed. In this case, after the enumeration step, the user will have to update the drivers from the USB device.
  • FIG. 6 illustrates another example wherein the smartcard (USB device) comprises a loudspeaker service, a microphone service and a decryption service.
  • When the smartcard (USB device) is plugged into a computer (USB host) the loudspeaker service is activated by the computer. The computer first considers the smartcard (USB device) as a loudspeaker and sends an encrypted music file (1). The loudspeaker service receives the music file and sends it (2) to the decryption service for decrypting the music file. Then the decrypted music file is sent (2) to the microphone service so that the computer (USB host) believes now (3) that the smartcard (USB device) is a microphone wherein someone is speaking. The computer then sends the decrypted music file to the real loudspeaker (4).
  • The description hereinbefore illustrates the following features:
  • A system comprising a main device and an auxiliary device arranged to co-operate with each other, the auxiliary device being arranged to effect a core functionality, the auxiliary device comprising descriptors, characterised in that the auxiliary device comprises at least one descriptor that defines a functionality that is different from the core functionality.
  • According to another aspect of the invention, the main device is, for example, a USB host and the auxiliary device is, for example, a USB device. It should be clear that the invention is not limited to devices communicating using the USB protocol. Other protocol like, for example, firewire based protocol may be used.
  • According to another aspect of the invention, the functionality that is different from the core functionality is, for example, a mass storage functionality.
  • According to another aspect of the invention, the functionality that is different from the core functionality is, for example, a microphone functionality.
  • According to another aspect of the invention, the functionality that is different from the core functionality is, for example, a loudspeaker functionality or any other functionality that is different from the core functionality, and that can be effected by the auxiliary device
  • According to another aspect of the invention, the auxiliary device, when it is coupled to the main device, initially presents the descriptor that defines a functionality that is different from the core functionality
  • According to another aspect of the invention, the USB device comprises a driver for the USB host to be installed by simulating that the USB device is a mass storage.
  • According to another aspect of the invention, the USB device is a smartcard or any other portable object arranged to use the USB protocol, like, for example, a Personal Digital Assistant (PDA) or a cellular phone.

Claims (9)

1. A system comprising a main device and an auxiliary device arranged to co-operate with each other, the auxiliary device being arranged to effect a core functionality, the auxiliary device comprising descriptors, characterised in that at least one descriptor defines a functionality that is different from the core functionality.
2. The system according to claim 1, wherein the main device is a USB host and the auxiliary device is a USB device.
3. The system according to claim 2, wherein the functionality that is different from the core functionality is a mass storage functionality.
4. The system according to claim 1, wherein the auxiliary device, when it is coupled to the main device, initially presents the descriptor, that defines a functionality that is different from the core functionality.
5. The system according to claim 2, wherein the USB device comprises a driver for the USB host to be installed by simulating that the USB device is a mass storage.
6. The system according to claim 2, wherein the USB device is a smartcard.
7. An-auxiliary device arranged to effect a core functionality, the auxiliary device comprising descriptors, characterised in that at least one descriptor defines a functionality that is different from the core functionality.
8. The auxiliary device according to claim 7, wherein the auxiliary device is a USB device.
9. The auxiliary device according to claim 7, wherein the auxiliary device is a smart card.
US10/521,228 2002-07-15 2003-07-15 Usb device Abandoned US20050251596A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP02291778 2002-07-15
EP02291778.5 2002-07-15
PCT/IB2003/002801 WO2004008313A1 (en) 2002-07-15 2003-07-15 Usb device

Publications (1)

Publication Number Publication Date
US20050251596A1 true US20050251596A1 (en) 2005-11-10

Family

ID=30011263

Family Applications (2)

Application Number Title Priority Date Filing Date
US10/521,084 Expired - Fee Related US7461177B2 (en) 2002-07-15 2003-07-08 Device functionalities negotiation, fallback, backward-compatibility, and reduced-capabilities simulation
US10/521,228 Abandoned US20050251596A1 (en) 2002-07-15 2003-07-15 Usb device

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US10/521,084 Expired - Fee Related US7461177B2 (en) 2002-07-15 2003-07-08 Device functionalities negotiation, fallback, backward-compatibility, and reduced-capabilities simulation

Country Status (5)

Country Link
US (2) US7461177B2 (en)
EP (1) EP1530757B1 (en)
AT (1) ATE530982T1 (en)
AU (1) AU2003281098A1 (en)
WO (1) WO2004008314A1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050240695A1 (en) * 2004-04-21 2005-10-27 Stmicroelectronics, Inc. Smart card with self-detachment features and related methods
US20050236491A1 (en) * 2004-04-21 2005-10-27 Stmicroelectronics, Inc. Smart card providing data mapping for multiple applications and related methods
US20050240704A1 (en) * 2004-04-21 2005-10-27 Stmicroelectronics, Inc. Smart card with self-reconfiguration features and related methods
EP2386959A1 (en) * 2009-12-08 2011-11-16 ZTE Corporation Communication device based on usb interface and method for implementing service configuration
US20170168971A1 (en) * 2015-12-15 2017-06-15 Intel IP Corporation Re-enumerating media agnostic devices
US10409734B1 (en) * 2017-03-27 2019-09-10 Symantec Corporation Systems and methods for controlling auxiliary device access to computing devices based on device functionality descriptors
WO2023135477A1 (en) * 2022-01-13 2023-07-20 High Sec Labs Ltd. System and method for secure copy-and-paste opertions between hosts through a peripheral sharing device

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7060932B2 (en) 2003-03-18 2006-06-13 Loma Linda University Medical Center Method and apparatus for material processing
JP4466739B2 (en) * 2008-01-15 2010-05-26 コニカミノルタビジネステクノロジーズ株式会社 Image forming apparatus
JP4561873B2 (en) * 2008-05-16 2010-10-13 コニカミノルタビジネステクノロジーズ株式会社 Information processing device
EP2131287A1 (en) 2008-06-02 2009-12-09 Gemalto SA Electronic device for providing self-adapting services according to the platform of the host device to which it is connected
US8082369B2 (en) * 2008-12-08 2011-12-20 Symbol Technologies, Inc. System and method for configuring an electronic device
WO2011059428A1 (en) 2009-11-10 2011-05-19 Hewlett-Packard Development Company, L.P. Selectively hiding an interface controller from an operating system
GB2483167B (en) 2010-08-27 2013-05-29 Fxi Technologies As Storage device with separate application and interface processors
US9124934B2 (en) * 2012-01-10 2015-09-01 Intuit Inc. Rule-based classification of electronic devices
CN115391242A (en) * 2021-12-01 2022-11-25 威锋电子股份有限公司 USB integrated circuit, operation method of USB integrated circuit and USB device

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6012103A (en) * 1997-07-02 2000-01-04 Cypress Semiconductor Corp. Bus interface system and method
US6151647A (en) * 1998-03-26 2000-11-21 Gemplus Versatile interface smart card
US6199137B1 (en) * 1999-01-05 2001-03-06 Lucent Technolgies, Inc. Method and device for controlling data flow through an IO controller
US6216230B1 (en) * 1998-02-11 2001-04-10 Durango Corporation Notebook security system (NBS)
US6754725B1 (en) * 2001-05-07 2004-06-22 Cypress Semiconductor Corp. USB peripheral containing its own device driver

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3795712B2 (en) * 1999-09-02 2006-07-12 アルプス電気株式会社 Peripheral device connection device
JP4553279B2 (en) * 2000-03-09 2010-09-29 インターナショナル・ビジネス・マシーンズ・コーポレーション Data transfer system, data transfer terminal, controller, and interface method
US6986030B2 (en) * 2000-10-27 2006-01-10 M-Systems Flash Disk Pioneers Ltd. Portable memory device includes software program for interacting with host computing device to provide a customized configuration for the program
US20020178316A1 (en) * 2001-05-23 2002-11-28 Schmisseur Mark A. System and method for defining private functions of a multi-function peripheral device
US6738834B1 (en) * 2002-07-15 2004-05-18 Cypress Microsystems System for reconfiguring a peripheral device using configuration residing on the peripheral device by electronically simulating a physical disconnection and reconnection to a host device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6012103A (en) * 1997-07-02 2000-01-04 Cypress Semiconductor Corp. Bus interface system and method
US6216230B1 (en) * 1998-02-11 2001-04-10 Durango Corporation Notebook security system (NBS)
US6151647A (en) * 1998-03-26 2000-11-21 Gemplus Versatile interface smart card
US6199137B1 (en) * 1999-01-05 2001-03-06 Lucent Technolgies, Inc. Method and device for controlling data flow through an IO controller
US6754725B1 (en) * 2001-05-07 2004-06-22 Cypress Semiconductor Corp. USB peripheral containing its own device driver

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8239592B2 (en) * 2004-04-21 2012-08-07 Stmicroelectronics, Inc. Smart card with self-detachment features and related methods
US20050236491A1 (en) * 2004-04-21 2005-10-27 Stmicroelectronics, Inc. Smart card providing data mapping for multiple applications and related methods
US20050240704A1 (en) * 2004-04-21 2005-10-27 Stmicroelectronics, Inc. Smart card with self-reconfiguration features and related methods
US7328849B2 (en) * 2004-04-21 2008-02-12 Stmicroelectronics, Inc. Smart card providing data mapping for multiple applications and related methods
US7904607B2 (en) * 2004-04-21 2011-03-08 Stmicroelectronics, Inc. Smart card with self-reconfiguration features and related methods
US8046508B2 (en) * 2004-04-21 2011-10-25 Stmicroelectronics, Inc. Smart card with self-detachment features and related methods
US20050240695A1 (en) * 2004-04-21 2005-10-27 Stmicroelectronics, Inc. Smart card with self-detachment features and related methods
US20120042103A1 (en) * 2004-04-21 2012-02-16 St Microelectronics, Inc. Smart card with self-detachment features and related methods
EP2386959A1 (en) * 2009-12-08 2011-11-16 ZTE Corporation Communication device based on usb interface and method for implementing service configuration
EP2386959A4 (en) * 2009-12-08 2012-09-05 Zte Corp Communication device based on usb interface and method for implementing service configuration
US20170168971A1 (en) * 2015-12-15 2017-06-15 Intel IP Corporation Re-enumerating media agnostic devices
US10409734B1 (en) * 2017-03-27 2019-09-10 Symantec Corporation Systems and methods for controlling auxiliary device access to computing devices based on device functionality descriptors
WO2023135477A1 (en) * 2022-01-13 2023-07-20 High Sec Labs Ltd. System and method for secure copy-and-paste opertions between hosts through a peripheral sharing device

Also Published As

Publication number Publication date
AU2003281098A1 (en) 2004-02-02
ATE530982T1 (en) 2011-11-15
EP1530757A1 (en) 2005-05-18
US20060101182A1 (en) 2006-05-11
US7461177B2 (en) 2008-12-02
WO2004008314A1 (en) 2004-01-22
EP1530757B1 (en) 2011-10-26

Similar Documents

Publication Publication Date Title
US20050251596A1 (en) Usb device
US10445258B1 (en) Method for creation of device drivers and device objects for peripheral devices
US9116723B2 (en) Communication device or media device for providing phone calling service, internet access service, or digital content service
US5519851A (en) Portable PCMCIA interface for a host computer
US7739429B2 (en) Method for data processing device exchanging data with computer
US7921244B2 (en) Data sharing and transfer systems and methods
JP5009519B2 (en) Virtual extended display identification data (EDID) in flat panel controller
US8239592B2 (en) Smart card with self-detachment features and related methods
US8135880B2 (en) USB mass storage locking
EP0552873A1 (en) Modifying system configuration in a computer system
US7568053B2 (en) USB composite device, USB communication system, and USB communication method
US7477244B2 (en) Automatic activity detection in a display controller
US20050060490A1 (en) Apparatus for multiple host access to storage medium
US7328849B2 (en) Smart card providing data mapping for multiple applications and related methods
EP1834276A2 (en) System and method for securing the intialization of a smartcard controller
WO2004008313A1 (en) Usb device
EP2372565A1 (en) Method for managing USB devices
US20140181494A1 (en) Setting method, program, and information processing apparatus
KR100705381B1 (en) Method of managing USB devices using Security Controller added into USB host controller
US7913263B2 (en) External device and operating method applied thereto
CN1338683A (en) Personal computer operation system for dynamic re-configuration
US20050240704A1 (en) Smart card with self-reconfiguration features and related methods
KR20080017810A (en) Method and apparatus for interfacing using otg in mobile phone
Wang et al. I/O and Network Interface
JP2001256168A (en) Usb device

Legal Events

Date Code Title Description
AS Assignment

Owner name: AXALTO S.A., FRANCE

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:DRABCZUK, NICOLAS;REEL/FRAME:017017/0185

Effective date: 20050202

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION