Method and system for authenticating an accessory

Information

  • Patent Grant
  • 8117651
  • Patent Number
    8,117,651
  • Date Filed
    Tuesday, June 27, 2006
    20 years ago
  • Date Issued
    Tuesday, February 14, 2012
    14 years ago
Abstract
A method, system, and connector interface for authenticating an accessory. The method includes performing a first authentication operation on the accessory by the media player, where an authentication certificate is validated; and performing a second authentication operation on the accessory by the media player, where an authentication signature is validated. According to the system and method disclosed herein, the media player and accessory may utilize a plurality of commands in a variety of environments such as within a connector interface system environment to control access to the media player.
Description
FIELD OF THE INVENTION

The present invention relates generally to electrical devices and more particularly to electronic devices such as media players that communicate with accessory devices.


BACKGROUND OF THE INVENTION

A media player stores media assets, such as audio tracks or photos that can be played or displayed on the media player. One example of a media player is the iPod® media player, which is available from Apple Inc. of Cupertino, Calif. Often, a media player acquires its media assets from a host computer that serves to enable a user to manage media assets. As an example, the host computer can execute a media management application to manage media assets. One example of a media management application is iTunes®, version 6.0, produced by Apple Inc.


A media player typically includes one or more connectors or ports that can be used to interface to the media player. For example, the connector or port can enable the media player to couple to a host computer, be inserted into a docking system, or receive an accessory device. There are today many different types of accessory devices that can interconnect to the media player. For example, a remote control can be connected to the connector or port to allow the user to remotely control the media player. As another example, an automobile can include a connector and the media player can be inserted onto the connector such that an automobile media system can interact with the media player, thereby allowing the media content on the media player to be played within the automobile.


Numerous third parties have developed accessories for use with media players. An accessory may be used with the media player as long as a compatible connector or port is utilized. Accessories interact with the media player using an accessory protocol. One example of an accessory protocol is referred to as iPod Accessory Protocol (iAP), which is available from Apple Inc. of Cupertino, Calif. The accessory protocol includes commands which have been typically been made freely accessible to accessory developers. A problem with the commands being freely accessible is that they can be used by unauthorized or counterfeit accessory devices.


One solution is to perform authentication operations on an accessory device. Accordingly, the accessory devices would not have any access to the media player until after the authentication process is complete.


Thus, there is a need for improved techniques to control the nature and extent to which accessory devices can be utilized with other electronic devices.


SUMMARY OF THE INVENTION

A method, system, and connector interface for authenticating an accessory are disclosed. The method includes performing a first authentication operation on the accessory by the media player, where an authentication certificate is validated; and performing a second authentication operation on the accessory by the media player, where an authentication signature is validated.


According to the system and method disclosed herein, the media player and accessory may utilize a plurality of commands in a variety of environments such as within a connector interface system environment to control access to the media player.





BRIEF DESCRIPTION OF THE DRAWINGS


FIGS. 1A and 1B illustrate a docking connector in accordance with the present invention.



FIG. 2A is a front and top view of a remote connector in accordance with the present invention.



FIG. 2B illustrates a plug to be utilized in the remote connector.



FIG. 2C illustrates the plug inserted into the remote connector.



FIG. 3A illustrates the connector pin designations for the docking connector.



FIG. 3B illustrates the connection pin designations for the remote connector.



FIG. 4A illustrates a typical FireWire connector interface for the docking connector.



FIG. 4B illustrates a reference schematic diagram for an accessory power source.



FIG. 4C illustrates a reference schematic diagram for a system for detecting and identifying accessories for the docking connector.



FIG. 4D is a reference schematic of an electret microphone that may be connected to the remote connector.



FIG. 5A illustrates a media player coupled to different accessories.



FIG. 5B illustrates the media player coupled to a computer.



FIG. 5C illustrates the media player coupled to a car or home stereo system.



FIG. 5D illustrates the media player coupled to a dongle that communicates wirelessly with other accessories.



FIG. 5E illustrates the media player coupled to a speaker system.



FIG. 6 is a flow chart, which illustrates a process for controlling access to a media player.



FIG. 7 is a flow chart, which illustrates a process for authenticating an accessory.





DETAILED DESCRIPTION OF THE INVENTION

The present invention relates generally to electrical devices and more particularly to electrical devices such as media players that communicate with accessory devices. The following description is presented to enable one of ordinary skill in the art to make and use the invention and is provided in the context of a patent application and its requirements. Various modifications to the preferred embodiment and the generic principles and features described herein will be readily apparent to those skilled in the art. Thus, the present invention is not intended to be limited to the embodiment shown but is to be accorded the widest scope consistent with the principles and features described herein.


A method and system in accordance with the present invention are provided for authenticating an accessory. The method includes performing a first (background) authentication operation on the accessory by the media player, wherein an authentication certificate is validated. In one embodiment, the authentication operations are handled in the background such that the media player is operative to process commands after authentication has begun but before the authentication has completed. This allows the media player and the accessory to interact immediately rather than waiting until after the authentication process has completed successfully. The method also includes performing a second authentication operation on the accessory by the media player, wherein an authentication signature is validated. In one embodiment, the media player verifies the authentication signature using a public key provided in the certificate. The media player and accessory may utilize a plurality of commands in a variety of environments to facilitate controlling access to the media player. One such environment is within a connector interface system environment such as described in detail hereinbelow.


Although the authentication of an accessory is described hereinbelow, one of ordinary skill in the art recognizes that the procedures described below may be applied to the authentication of the media player and such application would be within the spirit and scope of the present invention.


Connector Interface System Overview


To describe the features of the connector interface system in accordance with the present invention in more detail, refer now to the following description in conjunction with the accompanying drawings.


Docking Connector



FIGS. 1A and 1B illustrate a docking connector 100 in accordance with the present invention. Referring first to FIG. 1A, the keying features 102 are of a custom length 104. In addition, a specific key arrangement is used where one set of keys is separated by one length at the bottom of the connector and another set of keys is separated by another length at the top of the connector. The use of this key arrangement prevents noncompliant connectors from being plugged in and causing potential damage to the device. The connector for power utilizes a Firewire specification for power. The connector includes a first make/last break contact to implement this scheme. FIG. 1B illustrates the first make/last break contact 202 and also illustrates a ground pin and a power pin related to providing an appropriate first make/last break contact. In this example, the ground pin 204 is longer than the power pin 206. Therefore, the ground pin 204 would contact its mating pin in the docking accessory before the power pin 206, minimizing internal electrical damage of the electronics of the device.


In addition, a connector interface system in accordance with the present invention uses universal serial bus (USB), universal asynchronous receiver-transmitter (UART), and Firewire interfaces as part of the same docking connector alignment, thereby making the design more compatible with different types of interfaces, as will be discussed in detail hereinafter. In so doing, more remote accessories can interface with the media player.


Remote Connector


The connection interface system also includes a remote connector which provides for the ability to output and input audio, provides I/O serial protocol, and provides an output for video. FIG. 2A is a front and top view of a remote connector 200 in accordance with the present invention. As is seen, the remote connector 200 includes a top headphone receptacle 202, as well as a second receptacle 204 for remote devices. FIG. 2B illustrates a plug 300 to be utilized in the remote connector. The plug 300 allows the functions to be provided via the remote connector. FIG. 2C illustrates the plug 300 inserted into the remote connector 200. Heretofore, all of these features have not been implemented in a remote connector. Therefore, a standard headphone cable can be plugged in, but also special remote control cables, microphone cables, and video cables could be utilized with the remote connector.


To describe the features of the connector interface system in more detail, please find below a functional description of the docking connector, remote connector and a command set in accordance with the present invention.


Docking and Remote Connector Specifications


For an example of the connector pin designations for both the docking connector and for the remote connector for a media player such as an iPod® device by Apple Computer, Inc., refer now to FIGS. 3A and 3B. FIG. 3A illustrates the connector pin designations for the docking connector. FIG. 3B illustrates the connection pin designations for the remote connector.


Docking Connector Specifications



FIG. 4A illustrates a typical Firewire connector interface for the docking connector. The following are some exemplary specifications: Firewire power (8V-30V DC IN, 10 W Max). In one embodiment, Firewire may be designed to the IEEE 1394 A Spec (400 Mb/s).


USB Interface


The media player provides two configurations, or modes, of USB device operation: mass storage and media player USB Interface (MPUI). The MPUI allows the media player to be controlled using a media player accessory protocol (MPAP) which will be described in detail later herein, using a USB Human Interface Device (HID) interface as a transport mechanism.


Accessory 3.3 V Power



FIG. 4B illustrates the accessory power source. The media player accessory power pin supplies voltages, for example, 3.0 V to 3.3V+/−5% (2.85 V to 3.465 V) over the 30-pin docking connector and remote connector (if present). A maximum current is shared between the 30-pin docking and Audio/Remote connectors.


By default, the media player supplies a particular current such as 5 mA. Proper software accessory detection is required to turn on high power (for example, up to 100 mA) during active device usage. When devices are inactive, they must consume less than a predetermined amount of power such as 5 mA current.


Accessory power is grounded through the Digital GND pins.



FIG. 4C illustrates a reference schematic diagram for a system for detecting and identifying accessories for the docking connector. The system comprises a resistor to ground that allows the device to determine what has been plugged into the docking connector. There is an internal pullup on Accessory Identify within the media player. Two pins are required (Accessory Identify & Accessory Detect).



FIG. 4D is a reference schematic of an electret microphone that may be connected to the remote connector.


Serial Protocol Communication:


a) Two pins used to communicate to and from device (Rx & Tx)


b) Input & Output (0V=Low, 3.3V=High)


As mentioned previously, media players connect to a variety of accessories. FIGS. 5A-5E illustrate a media player 500 coupled to different accessories. FIG. 5A illustrates a media player 500 coupled to a docking station 502. FIG. 5B illustrates the media player 500′ coupled to a computer 504. FIG. 5C illustrates the media player 500″ coupled to a car or home stereo system 506. FIG. 5D illustrates the media player 500′″ coupled to a dongle 508 that communicates wirelessly with other devices. FIG. 5E illustrates the media player 500″″ coupled to a speaker system 510. As is seen, what is meant by accessories includes but is not limited to docking stations, chargers, car stereos, microphones, home stereos, computers, speakers, and accessories which communicate wirelessly with other accessories.


As mentioned previously, this connector interface system could be utilized with a command set for authenticating an accessory. In one embodiment, the accessory may be a host computer or any other electronic device or system that may communicate with the media player. It should be understood by one of ordinary skill in the art that although the above-identified connector interface system could be utilized with the command set, a variety of other connectors or systems could be utilized and they would be within the spirit and scope of the present invention.


As described above, accessories interact with the media player using a media player accessory protocol. An example of such a media player accessory protocol is the iPod Accessory Protocol (iAP). The media player accessory protocol refers to the software component executing on the media player that communicates with accessories over a given transport layer. The application of the media player may be, for example, a media player application framework that presents menus/screens to the user. Media player commands are associated with the processing of voice, video, and other data between the media player and the accessory. For example, commands may be associated with read operations and write operations to transfer and store information between the media player and the accessory. Accordingly, in one embodiment, for each command related to the media player, there is a reciprocal command for the accessory. In one embodiment, commands may be grouped and associated with specific accessory functionality.


Command Functionality


Although a plurality of commands is described hereinbelow, one of ordinary skill in the art recognizes that many other commands could be utilized and their use would be within the spirit and scope of the present invention. Accordingly, the list of commands below is representative, but not exhaustive, of the types of commands that could be utilized to authenticate an accessory. Furthermore, it is also readily understood by one of ordinary skill in the art that a subset of these commands could be utilized by a media player or an accessory and that use would be within the spirit and scope of the present invention. A description of the functionality of some of these commands is described below.


Authentication of an Accessory


In previous authentication methods, the accessory transmits an identification message to the media player, where the identification message indicates that the accessory supports certain commands and supports authentication. The media player then transmits an acknowledgment message to the accessory. The media player then blocks access by the accessory until the entire authentication process completes. The media player may display a “Connecting . . . ” screen. The media player then confirms that the authentication version number that the accessory provides is the correct version number. If so, the media player transmits a challenge to be signed by the device. The media player then validates the authentication signature using a public key based on a device ID from the accessory. The following describes improvements over the previous authentication methods, in accordance with the present invention.



FIG. 6 is a flow chart, which illustrates a process for controlling access to a media player, in accordance with the present invention. As FIG. 6 illustrates, the process begins in step 602 where the media player performs a background authentication operation on the accessory, where the authentication certificate is validated. More specifically, during the background authentication operation, the accessory transmits authentication information to the media player, and the media player receives and then validates the certificate contained in the authentication information. In one embodiment, the authentication information may also include an authentication version number. Authentication certificates are described in more detail below. As described in more detail below, the media player does not wait until the entire authentication process completes but instead allows certain access before the authentication process completes. Next, in step 604, the media player performs a second authentication operation on the accessory, where an authentication signature is validated. More specifically, during the second authentication operation, the accessory transmits an authentication signature to the media player, and the media player receives and then validates the authentication signature. In one embodiment, the media player verifies the authentication signature using a public key. More detailed embodiments of the background authentication and second authentication operations are described below and shown in FIG. 7.


Although the authentication of an accessory is described herein, one of ordinary skill in the art recognizes that the procedures described herein may be applied to the authentication of the media player, and such application would be within the spirit and scope of the present invention. For example, the same or similar steps described in FIG. 6 above and/or in FIG. 7 below may be utilized by an accessory to authenticate the media player.


Authentication Certificates


Standard authentication certificates function as containers for data such as the certificate creator (issuer, country, etc.), certificate type, valid certificate date ranges, and other metadata. Authentication certificates, also referred to as certificates or certs, are generated and signed by one or more certificate authorities (CAs) and have a unique serial number. In one embodiment, the certificate may be stored in an authentication coprocessor chip on the accessory. Authentication certificates in accordance with the present invention contain not only the metadata as in a standard authentication certificate but also device class information and a public key, which are described in more detail below.


As described in more detail below, the media player verifies certificates using a public key that is issued by the CA. The media player may also use the public key to verify a signed challenge. Certificates are used to transfer the public key and other accessory-specific information to the media player. Such accessory-specific information may contain, for example, device class information about the accessory. The device class determines what commands the accessory is permitted to use with respect to the media player. In one embodiment, the media player may add permissible commands to existing classes or add new device classes by means of a media player firmware update. New accessories may be supported by the media player when the CA issues new certificates to the accessory vendor.


In one embodiment, if a certificate is somehow compromised and cloned in counterfeit devices, the compromised serial number may be added to a certificate revocation list (or CRL) on the media player to prevent devices using the certificate from authenticating successfully. If the certificate parser of the media player does not recognize the cert's device class, the media player will reject the certificate. In one embodiment, a certificate to be used for device authentication may have a preset lifespan (e.g., in the range of 1-5 years, etc.), which may be set, for example, by a date. In one embodiment, certificate expiration could be accomplished by adding device serial numbers to the CRL after the expiration date has passed.



FIG. 7 is a flow chart, which illustrates a process for authenticating an accessory, in accordance with the present invention. As FIG. 7 illustrates, the process begins in step 702 where the media player and accessory exchange messages to determine whether the accessory supports certain commands and supports immediate authentication. More specifically, in one embodiment, the accessory transmits an identification message to the media player. The identification message includes a device identification (ID) and an indication that the accessory supports certain commands and supports authentication. In a preferred embodiment, support for immediate authentication is required. The media player then transmits an acknowledgment message to the accessory. In one embodiment, the media player notifies the application of the media player that the accessory is attempting to access the media player.


As described above, in one embodiment, the authentication operations are handled in the background to allow multiple cryptography options (e.g., RSA or SFEE) with/without hardware acceleration to be used. As a result, the media player is operative to process device commands after authentication has begun, before the authentication has completed, and through its successful completion. When device authentication fails (e.g., retry count and/or maximum time has been exhausted), the media player could lockout processing of incoming commands and prevent the device from interacting with media player. Media player applications will need to permit non-risky device use once authentication has started. Risky behavior is defined as anything that could permanently alter the media player behavior or download unsafe media. Examples of risky behavior to be avoided could be downloading executable media or firmware updates. If authentication fails at some later point, the application of the media player could cancel any device-related activities and possibly report an error to the user (e.g., “Device is not supported”).


Referring still to FIG. 7, in step 704, during the background authentication operation, the media player transmits an authentication information request to the accessory. In one embodiment, the media player starts a timeout timer. Next, in step 706, the accessory transmits the authentication information to the media player. In one embodiment, the authentication information includes an authentication major version, an authentication minor version, and a public certificate, where the certificate may be divided up into sections if it is large (e.g., greater than 500 bytes). If the certificate is divided up into sections, upon receipt of the authentication information, the media player reassembles the certificate. When the certificate is fully assembled, the certificate is parsed for device class information. The media player then converts a class number from the device class information into an allowed command mask. This mask is used to validate that the commands identified by the device are allowed by the certificate In other words, the media player validates the certificate based at least in part on the device class information.


Next, in step 708, the media player validates the authentication information. The authentication information may be invalid for a number of reasons. For example, the authentication information may be invalid if the authentication version is not valid, if the public certificate has expired or is on the certificate revocation list (CRL). If any of the authentication information is invalid, the background authentication operation fails. A failure will restart the authentication process (if a retry count and timeout limits have not been exceeded). The background authentication operation passes if the authentication version is validated and if the certificateclass commands have been determined to match or exceed those requested by an identify command of the media player, and if a certification chain has been verified. In one embodiment, non-risky media player command application functions and command processing are enabled while authentication process continues. In one embodiment, the media player may transmit a message to the accessory indicating a version information status.


Next, in step 710, during a second authentication operation, the media player transmits an authentication signature request to the accessory. The authentication signature request includes a random nonce/challenge to be signed by the device. The specific nonce/challenge length may vary and will depend on the specific implementation. Next, in step 712, the accessory transmits an authentication signature (i.e., a message with a signed challenge/signature) to the media player. Next, in step 714, upon receipt of the authentication signature, the media player validates the authentication signature (i.e., the signed challenge). In one embodiment, the media player verifies the signed nonce/challenge using a public key based on a device ID from the accessory. In a preferred embodiment, the media player verifies the signed nonce/challenge using a public key from the certificate provided by the accessory.


In one embodiment, an accessory authentication process (AAP) is based on a public key/private key system where the accessory has a private key and the media player has the associated public key. The accessory authentication process is closely integrated with accessory protocol commands.


Before completing the authentication process, the media player transmits an authentication status message to the accessory indicating signature status and authentication process completion. The authentication passes if the media player verifies the authentication signature. Otherwise, the authentication process fails. If authentication passes, the application of the media player unblocks to allow user access to the device.


If the authentication process fails, the device port of the media player will lock out the accessory. Also, upon a failure, the media player de-authorizes the accessory to prevent the accessory from utilizing the media player resources. In one embodiment, the media player may also transmit an authentication status to the application of the media player. For example, if the authentication fails, the application of the media player may display a “Connection Failed” message.


In one embodiment, the authentication operations may utilize a retry count and maximum timeout. Accordingly, in one embodiment, the authentication can also fail if the retry counter or maximum timeout is exceeded. Locking out a port prevents an accessory from simulating a detach or re-identifying in order to reset the authentication retry/timeout counters. In one embodiment, incoming packets may be deleted if a device port authentication state is set to “lockout.” This will prevent any locked out device packets from being processed. In one embodiment, if the failure is due to an accessory identifying more commands than allowed by the certificate, the device lockout will not be activated at authentication failure and the accessory may be permitted to re-identify.


A method, system, and connector interface for authenticating an accessory has been disclosed. The method includes performing a first authentication operation on the accessory by the media player, where an authentication certificate is validated. The method also includes performing a second authentication operation on the accessory by the media player, where an authentication signature is validated. According to the system and method disclosed herein, the media player and accessory may utilize a plurality of commands in a variety of environments such as within a connector interface system environment to control access to the media player.


Although the present invention has been described in accordance with the embodiments shown, one of ordinary skill in the art will readily recognize that there could be variations to the embodiments and those variations would be within the spirit and scope of the present invention. For example, the present invention can be implemented using hardware, software, a computer readable medium containing program instructions, or a combination thereof. Software written according to the present invention is to be either stored in some form of computer-readable medium such as memory or CD-ROM, or is to be transmitted over a network, and is to be executed by a processor. Consequently, a computer-readable medium is intended to include a computer readable signal, which may be, for example, transmitted over a network. Accordingly, many modifications may be made by one of ordinary skill in the art without departing from the spirit and scope of the appended claims.

Claims
  • 1. A method usable by a media player to communicate with an accessory configured to interact with the media player according to a media player accessory protocol that defines a plurality of application commands to invoke a plurality of media player application functions, the method comprising: initiating an authentication operation to authenticate the accessory;sending a request to the accessory requesting first authentication information;receiving the first authentication information from the accessory;validating the first authentication information;during the authentication operation, receiving one of the plurality of application commands of the media player accessory protocol from the accessory based on validation of the first authentication information and, in response to the received application command, invoking one of the plurality of media player application functions;receiving second authentication information from the accessory, the second authentication information being different from the first authentication information;determining whether the authentication operation completed successfully or failed based on validation of the second authentication information;in the event that the authentication operation completed successfully, receiving a subsequent one of the plurality of application commands from the accessory and, in response to the subsequent application command, invoking a subsequent one of the plurality of media player application functions; andin the event that the authentication operation failed, ignoring any subsequent application command received from the accessory.
  • 2. The method of claim 1 wherein the first authentication information includes one or more of: an authentication certificate, an authentication major version information, and an authentication minor version information.
  • 3. The method of claim 2 further comprising: receiving a device identification message from the accessory, the device identification message including an indication of a command set supported by the accessory, the supported command set including at least some of the plurality of commands defined by the media player accessory protocol;determining an allowed command set for the accessory based on the authentication information included in the authentication certificate; andcomparing the allowed command set to the supported command set,wherein the authentication operation fails in the event that the allowed command set does not match the supported command set.
  • 4. The method of claim 2 wherein the second authentication information comprises: a digital signature that includes a digitally signed version of a random challenge transmitted to the accessory by the media player.
  • 5. The method of claim 4 wherein the digitally signed version of the random challenge is signed by the accessory using a private key and wherein the method further comprises: extracting a public key from the authentication certificate; andusing the public key to validate the digital signature.
  • 6. The method of claim 1 further comprising: receiving a device identification message from the accessory, the device identification message including an indication of a command set supported by the accessory, the command set including at least some of the plurality of commands defined by the media player accessory protocol,wherein during the authentication operation, one of the plurality of application commands is one of the commands in the command set supported by the accessory.
  • 7. The method of claim 1 further comprising: receiving a device identification message from the accessory, the device identification message including an indication of a command set supported by the accessory, the command set including at least some of the plurality of commands defined by the media player accessory protocol, wherein the command set includes a first command that relates to a risky behavior and a second command that relates to a non risky behavior,wherein if the second command is received prior to validation of the second authentication information, the media player invokes a corresponding media player application function but if the first command is received prior to validation of the second authentication information, the media player ignores the first command.
  • 8. The method of claim 1 wherein in the event that an error occurs during the authentication operation, retrying the authentication operation if a timeout period has not ended.
  • 9. The method of claim 8 wherein retrying the authentication includes updating a count of retries and wherein the authentication operation fails in the event that the count of retries exceeds a retry limit.
  • 10. The method of claim 1 wherein if the authentication operation fails a notification is provided to the user of the media player, and wherein the notification includes a message displayed on a display screen of the media player.
  • 11. The method according to claim 1 wherein the media player application functions include a function associated with processing at least one of voice data, video data, or other data.
  • 12. A method usable by an accessory to interact with a media player according to a media player accessory protocol that defines a plurality of application commands to invoke a plurality of media player application functions, the method comprising: receiving an authentication request from the media player, the authentication request initiating an authentication operation;transmitting first authentication information to the media player in response to the authentication request, the first authentication information being usable by the media player in the authentication operation;sending at least one of the plurality of application commands to the media player based on validation of the first authentication information and prior to completion of the authentication operation, wherein the media player processes the at least one application command, thereby allowing the accessory to invoke at least one of the plurality of media player application functions during the authentication operation; andtransmitting second authentication information different from the first authentication information to the media player for validation, wherein the authentication operation completes upon validation of the second authentication information, and wherein if the authentication operation fails, any subsequent application commands sent by the accessory are not processed by the media player.
  • 13. The method according to claim 12 wherein the plurality of application commands defined by the media player accessory protocol includes commands to transfer and store information between the media player and the accessory.
  • 14. The method according to claim 12 wherein the plurality of application commands defined by the media player accessory protocol includes a command associated with the processing of at least one of voice, video, or other data between the media player and the accessory.
  • 15. A method usable by an accessory to interact with a media player according to a media player accessory protocol that defines a plurality of application commands to invoke a plurality of media player application functions, the plurality of media player application functions including a first function associated with a risky behavior and a second function associated with a non-risky behavior, the method comprising: receiving an authentication request from the media player, the authentication request initiating an authentication operation;transmitting first authentication information to the media player in response to the authentication request, the first authentication information being usable by the media player in the authentication operation;sending at least one of the plurality of application commands to the media player prior to completion of the authentication operation based on validation of the first authentication information, wherein in response to the at least one application command, the media player invokes an associated one of the plurality of media player application functions if the associated one of the plurality of media player application functions is the second function but does not invoke the associated one of the plurality of media player application functions if the associated one of the plurality of media player application functions is the first function; andtransmitting an second authentication signature to the media player for validation, wherein the authentication operation completes upon validation of the authentication signature, the authentication signature being different from the first authentication information;and wherein if the authentication operation fails, any subsequent commands sent by the accessory are ignored by the media player.
  • 16. The method according to claim 15 wherein the media player application functions include a function to transfer and store information between the media player and the accessory.
  • 17. The method according to claim 15 wherein the media player application functions include functions associated with the processing of voice, video, and other data between the media player and the accessory.
  • 18. The method of claim 15 further comprising: after completion of the authentication operation, sending a subsequent application command to invoke the first function,wherein if the authentication operation completed successfully, the media player invokes the first function in response to the subsequent application command.
  • 19. The method of claim 15 wherein the first function is a function related to downloading executable media onto the media player.
  • 20. The method of claim 15 wherein the first function is a function related to performing a firmware update on the media player.
US Referenced Citations (371)
Number Name Date Kind
4673861 Dubovsky et al. Jun 1987 A
4850899 Maynard Jul 1989 A
4916334 Minagawa et al. Apr 1990 A
4924216 Leung May 1990 A
4938483 Yavetz Jul 1990 A
5041025 Haitmanek Aug 1991 A
5051606 Ikehara Sep 1991 A
5055069 Townsend et al. Oct 1991 A
5080603 Mouissie Jan 1992 A
5104243 Harding Apr 1992 A
5108313 Adams Apr 1992 A
5150031 James et al. Sep 1992 A
5186646 Pederson Feb 1993 A
5247138 Landmeier Sep 1993 A
5277624 Champion Jan 1994 A
5471128 Patino et al. Nov 1995 A
5525981 Abernethy Jun 1996 A
5586893 Mosquera Dec 1996 A
5592588 Reekes et al. Jan 1997 A
5618045 Kagan et al. Apr 1997 A
5648712 Hahn Jul 1997 A
5660558 Osanai et al. Aug 1997 A
5675467 Nishimura et al. Oct 1997 A
5727866 Kraines et al. Mar 1998 A
5732361 Liu Mar 1998 A
5754027 Oglesbee et al. May 1998 A
5830001 Kinoshita Nov 1998 A
5835862 Nykanen et al. Nov 1998 A
5845217 Lindell et al. Dec 1998 A
5859522 Theobald Jan 1999 A
5884323 Hawkins et al. Mar 1999 A
5901049 Schmidt et al. May 1999 A
5964847 Booth et al. Oct 1999 A
5975957 Noda et al. Nov 1999 A
5991640 Lilja et al. Nov 1999 A
6007372 Wood Dec 1999 A
6012105 Rubbmark et al. Jan 2000 A
6031797 Van Ryzin et al. Feb 2000 A
6053773 Wu Apr 2000 A
6078402 Fischer et al. Jun 2000 A
6078789 Bodenmann et al. Jun 2000 A
6125455 Yeo Sep 2000 A
6130518 Gabehart et al. Oct 2000 A
6139373 Ward et al. Oct 2000 A
6154773 Roberts et al. Nov 2000 A
6154798 Lin et al. Nov 2000 A
6161027 Poirel Dec 2000 A
6169387 Kaib Jan 2001 B1
6175358 Scott-Jackson et al. Jan 2001 B1
6178514 Wood Jan 2001 B1
6184652 Yang Feb 2001 B1
6184655 Malackowski Feb 2001 B1
6188265 Liu et al. Feb 2001 B1
6192340 Abecassis Feb 2001 B1
6203345 Roque et al. Mar 2001 B1
6204637 Rengan Mar 2001 B1
6206480 Thompson Mar 2001 B1
6211581 Farrant Apr 2001 B1
6211649 Matsuda Apr 2001 B1
6224420 Nishio et al. May 2001 B1
6230205 Garrity et al. May 2001 B1
6230322 Saib et al. May 2001 B1
6234827 Nishio et al. May 2001 B1
6236395 Sezan et al. May 2001 B1
6247135 Feague Jun 2001 B1
6252380 Koenck Jun 2001 B1
6255961 Van Ryzin et al. Jul 2001 B1
6261109 Liu et al. Jul 2001 B1
6262723 Matsuawa et al. Jul 2001 B1
6267623 Hisamatsu Jul 2001 B1
6268845 Pariza et al. Jul 2001 B1
6271605 Carkner et al. Aug 2001 B1
6272328 Nguyen et al. Aug 2001 B1
6280251 Nishio et al. Aug 2001 B1
6283789 Tsai Sep 2001 B1
6304764 Pan Oct 2001 B1
6314326 Fuchu Nov 2001 B1
6314479 Frederick et al. Nov 2001 B1
6316916 Bohne Nov 2001 B2
6319061 Chen et al. Nov 2001 B1
6322396 Kuan Nov 2001 B1
6336365 Blackadar et al. Jan 2002 B1
6344727 Desai et al. Feb 2002 B1
6353894 Pione Mar 2002 B1
6354713 Leifer et al. Mar 2002 B1
6358089 Kuroda et al. Mar 2002 B1
6372974 Gross et al. Apr 2002 B1
6385596 Wiser et al. May 2002 B1
6394905 Takeda et al. May 2002 B1
6418421 Hurtado et al. Jul 2002 B1
6429622 Svensson Aug 2002 B1
6429879 Sturgeon et al. Aug 2002 B1
6431915 Ko Aug 2002 B1
6453371 Hampson et al. Sep 2002 B1
6454592 Takagi Sep 2002 B2
6461173 Mizuno et al. Oct 2002 B1
6464542 Lee Oct 2002 B1
6468110 Fujino et al. Oct 2002 B2
6476825 Croy et al. Nov 2002 B1
6478603 Wu Nov 2002 B1
6483428 Fish et al. Nov 2002 B1
6485328 Wu Nov 2002 B1
6489751 Small et al. Dec 2002 B2
6501441 Ludtke et al. Dec 2002 B1
6505160 Levy et al. Jan 2003 B1
6524119 Kato et al. Feb 2003 B2
6526287 Lee Feb 2003 B1
6535981 Shimizu Mar 2003 B1
6535983 McCormack et al. Mar 2003 B1
6558201 Begley et al. May 2003 B1
6559773 Berry May 2003 B1
6577877 Charlier et al. Jun 2003 B1
6589076 Davis et al. Jul 2003 B1
6591085 Grady Jul 2003 B1
6608264 Fouladpour Aug 2003 B1
6608399 McConnell et al. Aug 2003 B2
6614232 Mukai Sep 2003 B1
6616473 Kamata et al. Sep 2003 B2
6629197 Bhogal et al. Sep 2003 B1
6642629 DeLeeuw Nov 2003 B2
6643777 Chu Nov 2003 B1
6653813 Khatri Nov 2003 B2
6663420 Xiao Dec 2003 B1
6665803 Lunsford et al. Dec 2003 B2
6670997 Nortrup Dec 2003 B1
6674995 Meyers et al. Jan 2004 B1
6687454 Kuroiwa Feb 2004 B1
6697944 Jones et al. Feb 2004 B1
6708283 Nelvin et al. Mar 2004 B1
6724339 Conway et al. Apr 2004 B2
6725061 Hutchison, IV et al. Apr 2004 B1
6728546 Peterson et al. Apr 2004 B1
6728729 Jawa et al. Apr 2004 B1
6747859 Walbeck et al. Jun 2004 B2
6754468 Sieben et al. Jun 2004 B1
6761635 Hoshino et al. Jul 2004 B2
6774939 Peng Aug 2004 B1
6776626 Huang et al. Aug 2004 B2
6776660 Kubota et al. Aug 2004 B1
6776665 Huang Aug 2004 B2
6799226 Robbin et al. Sep 2004 B1
6801964 Mahdavi Oct 2004 B1
6813528 Yang Nov 2004 B1
6816376 Bright et al. Nov 2004 B2
6830160 Risolia Dec 2004 B2
6859538 Voltz Feb 2005 B1
6859854 Kwong Feb 2005 B2
6879843 Kim Apr 2005 B1
6928295 Olson et al. Aug 2005 B2
6931266 Miyoshi et al. Aug 2005 B2
6931456 Payne et al. Aug 2005 B2
6939177 Kato et al. Sep 2005 B2
6944704 Brelin Sep 2005 B2
6991483 Milan et al. Jan 2006 B1
7004787 Milan Feb 2006 B2
7006793 Himmel et al. Feb 2006 B2
7013164 Lin Mar 2006 B2
7040919 Yao May 2006 B2
7046230 Zadesky May 2006 B2
7050783 Curtiss et al. May 2006 B2
7054888 La Chapelle et al. May 2006 B2
7062261 Goldstein et al. Jun 2006 B2
7108560 Chou et al. Sep 2006 B1
7120462 Kumar Oct 2006 B2
7127678 Bhesania et al. Oct 2006 B2
7127879 Zhu et al. Oct 2006 B2
7149543 Kumar Dec 2006 B2
7155545 Wang Dec 2006 B1
7167112 Andersen et al. Jan 2007 B2
7167935 Hellberg Jan 2007 B2
7187947 White et al. Mar 2007 B1
7187948 Alden Mar 2007 B2
7215042 Yan May 2007 B2
7281214 Fadell Oct 2007 B2
7293122 Schubert et al. Nov 2007 B1
7293227 Plastina et al. Nov 2007 B2
7299304 Saint-Hilaire et al. Nov 2007 B2
7303282 Dwyer et al. Dec 2007 B2
7304685 Park et al. Dec 2007 B2
7305254 Findikli Dec 2007 B2
7305506 Lydon et al. Dec 2007 B1
7322043 Letsinger Jan 2008 B2
7324833 White et al. Jan 2008 B2
7362963 Lin Apr 2008 B2
7363129 Barnicle et al. Apr 2008 B1
7391963 Chen et al. Jun 2008 B2
7415563 Holden et al. Aug 2008 B1
7441058 Bolton et al. Oct 2008 B1
7441062 Novotney et al. Oct 2008 B2
7444388 Svendsen Oct 2008 B1
7450961 Heubel et al. Nov 2008 B1
7454019 Williams Nov 2008 B2
7493645 Tranchina Feb 2009 B1
7526588 Schubert et al. Apr 2009 B1
7529870 Schubert et al. May 2009 B1
7529871 Schubert et al. May 2009 B1
7529872 Schubert et al. May 2009 B1
7558894 Lydon et al. Jul 2009 B1
7587540 Novotney et al. Sep 2009 B2
7590783 Lydon et al. Sep 2009 B2
7610350 Abdulrahiman et al. Oct 2009 B2
7634605 Laefer et al. Dec 2009 B2
7660929 Novotney et al. Feb 2010 B2
7670263 Ellis et al. Mar 2010 B2
7673020 Rosenbloom et al. Mar 2010 B2
7673083 Laefer et al. Mar 2010 B2
7680849 Heller et al. Mar 2010 B2
7681033 Miura et al. Mar 2010 B2
7702833 Novotney et al. Apr 2010 B2
7757026 Novotney et al. Jul 2010 B2
7779185 Schubert et al. Aug 2010 B2
7791319 Veselic et al. Sep 2010 B2
7797471 Laefer et al. Sep 2010 B2
7836493 Xia et al. Nov 2010 B2
7853746 Novotney et al. Dec 2010 B2
7877532 Schubert et al. Jan 2011 B2
20010003205 Gilbert Jun 2001 A1
20010005641 Matsumoto et al. Jun 2001 A1
20010006884 Matsumoto Jul 2001 A1
20010042107 Palm Nov 2001 A1
20020002035 Sim et al. Jan 2002 A1
20020010759 Hitson et al. Jan 2002 A1
20020015362 Cowgill et al. Feb 2002 A1
20020025042 Saito Feb 2002 A1
20020029303 Nguyen Mar 2002 A1
20020065074 Cohn et al. May 2002 A1
20020068610 Anvekar et al. Jun 2002 A1
20020072390 Uchiyama Jun 2002 A1
20020103008 Rahn et al. Aug 2002 A1
20020105861 Leapman Aug 2002 A1
20020108108 Akaiwa et al. Aug 2002 A1
20020115480 Huang Aug 2002 A1
20020116533 Holliman et al. Aug 2002 A1
20020120850 Walker et al. Aug 2002 A1
20020132651 Jinnouchi Sep 2002 A1
20020151327 Levitt Oct 2002 A1
20020152874 Vilcauskas et al. Oct 2002 A1
20020156546 Ramaswamy Oct 2002 A1
20020156949 Kubo et al. Oct 2002 A1
20020161865 Nguyen Oct 2002 A1
20020173273 Spurgat et al. Nov 2002 A1
20020174269 Spurgat et al. Nov 2002 A1
20020194621 Tran et al. Dec 2002 A1
20030004934 Qian Jan 2003 A1
20030011608 Wada Jan 2003 A1
20030028664 Tan et al. Feb 2003 A1
20030041206 Dickie Feb 2003 A1
20030059022 Nebiker et al. Mar 2003 A1
20030067741 Alfonso et al. Apr 2003 A1
20030073432 Meade Apr 2003 A1
20030079038 Robbin et al. Apr 2003 A1
20030090988 Chen et al. May 2003 A1
20030097379 Ireton May 2003 A1
20030110403 Crutchfield et al. Jun 2003 A1
20030151621 McEvilly et al. Aug 2003 A1
20030167318 Robbin et al. Sep 2003 A1
20030172209 Liu et al. Sep 2003 A1
20030185395 Lee et al. Oct 2003 A1
20030198015 Vogt Oct 2003 A1
20030212895 Kisliakov Nov 2003 A1
20030215102 Marlowe Nov 2003 A1
20030220988 Hymel Nov 2003 A1
20030236075 Johnson et al. Dec 2003 A1
20030236991 Letsinger Dec 2003 A1
20030237043 Novak et al. Dec 2003 A1
20040003300 Malueg et al. Jan 2004 A1
20040019497 Volk et al. Jan 2004 A1
20040039860 Mills et al. Feb 2004 A1
20040048569 Kawamura Mar 2004 A1
20040055446 Robbin et al. Mar 2004 A1
20040090998 Chen May 2004 A1
20040103223 Gabehart et al. May 2004 A1
20040116005 Choi Jun 2004 A1
20040151327 Marlowe Aug 2004 A1
20040152439 Kimura et al. Aug 2004 A1
20040162029 Grady Aug 2004 A1
20040164708 Veselic et al. Aug 2004 A1
20040172533 DeMello et al. Sep 2004 A1
20040186935 Bel et al. Sep 2004 A1
20040194154 Meadors et al. Sep 2004 A1
20040198436 Alden Oct 2004 A1
20040224638 Fadell et al. Nov 2004 A1
20040235339 Sato et al. Nov 2004 A1
20040249994 Shapiro et al. Dec 2004 A1
20040252966 Holloway et al. Dec 2004 A1
20040267812 Harris et al. Dec 2004 A1
20040267825 Novak et al. Dec 2004 A1
20040268397 Dunbar et al. Dec 2004 A1
20050001589 Edington et al. Jan 2005 A1
20050005133 Xia et al. Jan 2005 A1
20050014119 Rudakov Jan 2005 A1
20050014531 Findikli Jan 2005 A1
20050014536 Grady Jan 2005 A1
20050015355 Heller et al. Jan 2005 A1
20050018768 Mabey et al. Jan 2005 A1
20050022212 Bowen Jan 2005 A1
20050047071 Tse Chun Hin Mar 2005 A1
20050080915 Shoemaker et al. Apr 2005 A1
20050135790 Hutten Jun 2005 A1
20050138433 Linetsky Jun 2005 A1
20050149213 Guzak et al. Jul 2005 A1
20050181756 Lin Aug 2005 A1
20050198189 Robinson et al. Sep 2005 A1
20050207726 Chen Sep 2005 A1
20050227612 Helstrom et al. Oct 2005 A1
20050239333 Watanabe et al. Oct 2005 A1
20050240705 Novotney et al. Oct 2005 A1
20050246375 Manders et al. Nov 2005 A1
20050251565 Weel Nov 2005 A1
20050281185 Kawasaki Dec 2005 A1
20060015826 Shiozawa et al. Jan 2006 A1
20060031545 Manders et al. Feb 2006 A1
20060056796 Nishizawa et al. Mar 2006 A1
20060072527 Beck et al. Apr 2006 A1
20060088228 Marriott et al. Apr 2006 A1
20060116009 Langberg et al. Jun 2006 A1
20060143680 Adachi Jun 2006 A1
20060156415 Rubinstein et al. Jul 2006 A1
20060161621 Rosenberg Jul 2006 A1
20060163358 Biderman Jul 2006 A1
20060168298 Aoki et al. Jul 2006 A1
20060184456 de Janasz Aug 2006 A1
20060188237 Watanabe et al. Aug 2006 A1
20060205349 Passier et al. Sep 2006 A1
20060224620 Silverman et al. Oct 2006 A1
20060236245 Agarwal et al. Oct 2006 A1
20060247851 Morris Nov 2006 A1
20060258289 Dua Nov 2006 A1
20060277555 Howard Dec 2006 A1
20060294209 Rosenbloom et al. Dec 2006 A1
20070018947 Toro-Lira Jan 2007 A1
20070056012 Kwon et al. Mar 2007 A1
20070056013 Duncan Mar 2007 A1
20070070856 Tebele Mar 2007 A1
20070080823 Fu et al. Apr 2007 A1
20070083750 Miura et al. Apr 2007 A1
20070083814 Wilbrink et al. Apr 2007 A1
20070086724 Grady et al. Apr 2007 A1
20070106760 Houh et al. May 2007 A1
20070130592 Haeusel Jun 2007 A1
20070173197 Hsiung Jul 2007 A1
20070173294 Hsiung Jul 2007 A1
20070206827 Tupman et al. Sep 2007 A1
20070209081 Morris Sep 2007 A1
20070226238 Kiilerich et al. Sep 2007 A1
20070226384 Robbin et al. Sep 2007 A1
20070233294 Holden et al. Oct 2007 A1
20070233295 Laefer et al. Oct 2007 A1
20070234420 Novotney et al. Oct 2007 A1
20070236482 Proctor et al. Oct 2007 A1
20070247794 Jaffe et al. Oct 2007 A1
20070300155 Laefer et al. Dec 2007 A1
20080025172 Holden et al. Jan 2008 A1
20080034325 Ording Feb 2008 A1
20080055272 Anzures et al. Mar 2008 A1
20080065722 Brodersen et al. Mar 2008 A1
20080188209 Dorogusker et al. Aug 2008 A1
20090013096 Novotney et al. Jan 2009 A1
20090013110 Novotney et al. Jan 2009 A1
20090013253 Laefer et al. Jan 2009 A1
20090125134 Bolton et al. May 2009 A1
20090132076 Holden et al. May 2009 A1
20090198361 Schubert et al. Aug 2009 A1
20090204244 Schubert et al. Aug 2009 A1
20090204738 Schubert et al. Aug 2009 A1
20090210079 Schubert et al. Aug 2009 A1
20090249101 Lydon et al. Oct 2009 A1
20090292835 Novotney et al. Nov 2009 A1
20090299506 Lydon et al. Dec 2009 A1
20100049350 Laefer et al. Feb 2010 A1
20100106879 Laefer et al. Apr 2010 A1
Foreign Referenced Citations (54)
Number Date Country
1104150 May 2001 EP
1150472 Oct 2001 EP
1498899 Jan 2005 EP
1594319 Nov 2005 EP
1672613 Jun 2006 EP
2405718 Mar 2005 GB
07-176351 Jul 1995 JP
10-321302 Apr 1998 JP
10-334993 Dec 1998 JP
11-288420 Oct 1999 JP
2000-214953 Aug 2000 JP
2000-223215 Aug 2000 JP
2000-223216 Aug 2000 JP
2000-223218 Aug 2000 JP
2001-035603 Feb 2001 JP
2001-069165 Mar 2001 JP
2001-196133 Jul 2001 JP
2001-230021 Aug 2001 JP
2001-332350 Nov 2001 JP
2002-025720 Jan 2002 JP
2002-140304 May 2002 JP
2002-203641 Jul 2002 JP
2002 245719 Aug 2002 JP
2002-252566 Sep 2002 JP
3090747 Oct 2002 JP
2002-374447 Dec 2002 JP
2003-17165 Jan 2003 JP
2003-032351 Jan 2003 JP
2003-058430 Feb 2003 JP
2003-274386 Sep 2003 JP
2002-342659 Nov 2003 JP
2004-078538 Mar 2004 JP
2004-259280 Sep 2004 JP
2008071419 Mar 2007 JP
2008053955 Mar 2008 JP
2009303001 Dec 2009 JP
530267 May 2003 TW
WO 9926330 May 1999 WO
WO 03056776 Sep 1999 WO
WO 0039907 Jul 2000 WO
WO 0060450 Oct 2000 WO
WO 0249314 Jun 2002 WO
WO 03036541 May 2003 WO
WO 03036957 May 2003 WO
WO 9948089 Jul 2003 WO
WO 03073688 Sep 2003 WO
WO 2004084413 Sep 2004 WO
WO 2004-095772 Nov 2004 WO
WO 2004112311 Dec 2004 WO
WO 2005109781 Nov 2005 WO
WO 2005119463 Dec 2005 WO
WO 2006071364 Jun 2006 WO
WO 2006073702 Jul 2006 WO
WO 2006080957 Aug 2006 WO
Related Publications (1)
Number Date Country
20070234420 A1 Oct 2007 US