WO2004053506A1 - Method and computer program for providing a function to an automotive measuring instrument - Google Patents

Method and computer program for providing a function to an automotive measuring instrument Download PDF

Info

Publication number
WO2004053506A1
WO2004053506A1 PCT/NL2002/000817 NL0200817W WO2004053506A1 WO 2004053506 A1 WO2004053506 A1 WO 2004053506A1 NL 0200817 W NL0200817 W NL 0200817W WO 2004053506 A1 WO2004053506 A1 WO 2004053506A1
Authority
WO
WIPO (PCT)
Prior art keywords
code number
software module
measuring instrument
access
server
Prior art date
Application number
PCT/NL2002/000817
Other languages
French (fr)
Inventor
Nicolaas Maria Jozef Stoffels
Michael Anthony Carroll
Robert Hoevenaar
Original Assignee
Snap-On Europe Holding B.V.
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 Snap-On Europe Holding B.V. filed Critical Snap-On Europe Holding B.V.
Priority to TW091135869A priority Critical patent/TW200410120A/en
Priority to PCT/NL2002/000817 priority patent/WO2004053506A1/en
Priority to AU2002353653A priority patent/AU2002353653A1/en
Publication of WO2004053506A1 publication Critical patent/WO2004053506A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/008Registering or indicating the working of vehicles communicating information to a remotely located station
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/101Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measures for digital rights management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

A method for providing a function to an automotive measuring instrument comprises the steps of a) establishing a connection between a programmable memory of the measuring instrument and a programming device b) generating a request message, the request message comprising an function identifier for identifying the function, c) sending the request message via a communication means to a server, d) receiving from the server an access message, enabling the programming device to access a software module having the function, and e) loading the software module, by the programming device, into the programmable memory.

Description

METHOD AND COMPUTER PROGRAM FOR PROVIDING A FUNCTION TO N UTOMOTIVE MEASURING
INSTRUMENT
The invention relates to a method for providing a function to an automotive measuring instrument. Further, the invention relates to a method for enabling a software module in an automotive measuring instrument. Still further, the invention relates to a method for providing access to a software module for use in an automotive measuring instrument. Also, the invention relates to computer programs comprising program instructions for executing these methods. Still further, the invention relates to an automotive measuring instrument and a cartridge being designed to form a releasable part of the automotive instrument.
From WO 89/06839 an interchangeable diagnostic instrument system is known, which comprises a universal communications control station and at least one removable data accessing cartridge. The data accessing cartridge enables the control station to process data from a plurality of on-board vehicle computers. The cartridge comprises a read only memory for storing a computer program which, at least in part, controls the accessing of data from the on-board vehicle computer. Currently, the use of computer systems in automotive vehicles is rapidly increasing, the computer system being used for controlling an increasing amount of functions in automotive vehicles, such as engine- and ignition control, airbag systems, anti-lock brake systems, electronic stability systems, instrument and/or display panels, anti theft security systems, central locking, electric windows, etc. With the ever increasing amount of functions which are controlled by such on-board computers, the rapid development of electronic components for such on-board computers and the current world-wide car market in which a large number of different manufacturers is introducing on the market an ever increasing amount of new car models, the amount of different on-board vehicle computers which are installed in current vehicles is rapidly increasing. To be able to cope with different vehicle computers, currently service personnel is required to have a plurality of cartridges available, each cartridge comprising program instructions for enabling the diagnostic system to communicate with a particular type of vehicle computer. As service stations, such as car dealers, for servicing automotive vehicles, more and more tend to provide maintenance and repair services for several makes of automotive vehicles, the amount of different cartridges required by a service station, and the frequency with which new cartridges comprising program instructions for communicating with new vehicle computers are required, is rapidly increasing. Thus, cartridges which contain outdated program instructions are frequently thrown away, which forms a waist of materials and electronic components, or alternatively need to be recycled by sending them back to the manufacturer which involves a substantial logistic and administrative organisation with associated costs. Further, delivery times for obtaining a new cartridge by a service outlet are long, as, at the moment when a new cartridge is required, first an order has to be placed at a distributor or a manufacturer of the diagnostic instrument, after which the cartridge which has been ordered will be delivered by post, express service, etc. In general, the consequence of the above drawbacks is that a service outlet for servicing automotive vehicles either spend unnecessary costs for ordering every new cartridge which becomes available, and thus have available a large amount of cartridges which are hardly used, or frequently face the problem that an appropriate cartridge for diagnosing a specific vehicle computer system appears to be not available at the moment when such cartridge would be needed.
Manufacturers of diagnostic instruments and diagnostic instrument systems currently need to spend substantial efforts, and thus costs, to repetitively introduce new cartridges comprising program instructions, and for example settings or parameters for enabling the diagnostic instruments to be able to be connected to and to communicate with the ever increasing amount of different vehicle computers. As a revenue for these efforts, as well as all associated testing and verification of the new cartridges, an income is generated by the sales of new cartridges. A problem however rising is that these revenues tend to be undermined by third parties selling unauthorised cartridges, second hand cartridges, cartridges which have been illegally modified or updated, etc. The invention intends to at least partly take away the problems of the prior art and to provide an easy, user-friendly, quick and safe method for providing a function to an automotive measuring instrument. To achieve these and other goals, the method for providing a function to an automotive measuring instrument comprises the steps of a) establishing a connection between a programmable memory of the measuring instrument and a programming device, b) generating a request message, the request message comprising an function identifier for identifying the function, c) sending the request message via a communication means to a server, d) receiving from the server an access message, enabling the programming device to access a software module having the function and e) loading the software module, by the programming device, into the programmable memory. Thus, the instrument, which comprises a programmable memory, can be loaded by the programming device with the software module. The steps according to the method can be performed locally, thus e.g. at the garage or service station, and make the function available within a very short period of time. The automotive measuring instrument can comprise a diagnostic instrument, a testing instrument, and/or an instrument for performing adjustments or settings in the automotive vehicle. The instrument can be portable as well as stationary. The program device can e.g. comprise a computer system or a mobile telephone, as well as a cable, connector or other communication means for connecting the programming device with at least the programmable memory of the measuring instrument. Alternatively, it is possible that the programming device is comprised in the automotive measuring instrument. The server can e.g. be placed at the manufacturers premises or the distributor, of the automotive measuring instrument respectively of the software modules, however can also be placed at any other convenient locations. The server is connected to the programming device, by a communication means, such as a telephone line, the internet, or any other suitable communication means which might be known as such. Security is increased as access to the software module is only enabled when a corresponding access message is sent by the server to the programming device. Thus, it is possible from the server to control and monitor the use of a particular software module. Also, in case that a user is not authorised to use a particular software module, sending the access message by the server can be disabled or an invalid access message can be transferred to the programming device. A user can for example select the function which needs to be provided to the automotive measuring instrument from a table, overview or any other selection means, such as a search function for searching a specific function. The function can comprise a diagnostic function, a measuring function, a testing function, or a combination of two or more of these functions. With the method, a required function can be quickly and easily provided to the automotive measuring instrument by generating a request message identifying the function, sending the request message to a server, the server in response to the request message generating an access message and sending the access message to the programming device, the programming device being now able to get access to a corresponding software module having the function, upon which the software module is loaded into the programmable memory by the programming device. The request message can be sent to the server via a communication means, such as the internet, however it is also possible that the request message is transferred by telephone or facsimile by a user to the server. For this purpose, the server can incorporate a fax server, voice response server or any other interactive communication means, however it is also possible that the information contained in the request message is entered into the server manually. The access message can be transferred from the server to the programming device via the internet, a telephone network or any other communication means. The access message can e.g. also be transferred by telephone and entered into the programming device or into the automotive measuring instrument by any suitable input means, such as a keyboard of a computer which might be comprised in the programming device, a keyboard comprised in the automotive measuring instrument, a barcode read by a barcode reader, etc. The automotive measuring instrument can be a communication device, such as a serial communication device for an on-board diagnosis and/or for Engine Control Unit (ECU) programming and/or reprogramming. Advantageously, the programmable memory is comprised in a cartridge which is connectable to and comprised in the automotive measuring instrument. Thus, it is possible to almost instantaneously provide another function to the automotive measuring instrument by connecting a different cartridge. Further, this allows full availability of the measuring instrument, as, in case that an additional function is required, use of the measuring instrument can be continued making use of a first cartridge while simultaneously a new function can be provided with to the method according to the invention to a second cartridge. Advantageously, only the cartridge requires to be connected to the programming device for carrying out the method according to the invention as described above, however it is also possible that the automotive measuring instrument including the programmable memory, which advantageously is comprised in the cartridge, is connected to the programming device. Still further, it is possible that the programming device is comprised in the automotive measuring instrument or advantageously the cartridge, resulting in a very simple and user-friendly set-up. Advantageously, step d) comprises the steps of dl) receiving from the server the access message comprising an access key, d2) deriving the access key from the access message, and d3) accessing the software module by the programming device using the access key. The access key can comprise any suitable access means, such as a password, a security code, access code, or any other suitable access means. In this manner, the software module, or a library of different software modules, can be available to the user, e.g. stored on a CDROM, downloadable from the internet, etc, while access to the software is only provided when an appropriate access key has been provided.
Advantageously, the access key comprises a decryption key, step d3) advantageously comprising the step of decrypting the software with the decryption key. Thus, access to the software can be controlled in a very effective manner, as only when an appropriate decryption key is available, access to the software module is provided.
• Advantageously, the method comprises the further step of f) charging, by the server, an amount to a user account for payment for the software module. Thus, upon receipt of a request message requesting access to a specific function, an amount can be charged to a user account, the user thus paying for the function requested.
Advantageously, step f) comprises the further step of f.l) checking, in a user account database, prior payments for a same user and f.2) determining a value of the amount based on the prior payments. Thus, pricing schemes can be set up by checking prior amounts charged to the same user and determining a value based on the previously charged amounts. It is for example possible to avoid multiple payments for a same function, or software module, by setting the amount to zero in case that the same function or software module has already been requested and paid. Also, quantum discounts can be provided for users who request for and pay a certain, predetermined amount of functions or software modules within a certain time frame. Advantageously, the request message further comprises a destination identifier for identifying a destination for the software module. The destination identifier can advantageously be chosen from a group comprising a user identification, a measuring instrument identification, a measuring instrument memory identification and/or a cartridge identification. Thus, it is possible to provide a more detailed charging mechanism, as charging, and determining a height of the amount charged can further be based on a history of previous request messages and previous payments which are related to the same destination as the destination for the current request. Further, security and retraceability can be increased, as the destination for which the software module is requested (such as the user, the measuring instrument, the cartridge etc) is available at the server and can be stored in the server or in a memory which is accessible to the server. Advantageously, the access message received in step d) further comprises a code number determined by the server and step d) comprises the further steps of d5) deriving the code number from the access message d6) storing the code number in the software module, the software module further comprising a code number calculation module for calculating the code number, for enabling the software module to verify if the code number calculated by the code number calculation module equals the code number stored in the software module. Thus, a further protection against unauthorised use of the software. The software module comprises a code number as well as a code number calculation module. At a suitable moment, e.g. when starting the software module by the measuring instrument, the software module first calculates the code number using the code number calculation module and then compares the calculated code number with the code number stored in the software module. If the code number stored in the software module is identical to the code number calculated by the code number calculation module, then the software is enabled, but in case that the code number calculation module provides a code number which does not correspond to the code number stored in the software, the software, and consequently the function is not enabled. The code number calculation module is advantageously adapted for calculating the code number using at least one input parameter comprising the destination identifier. Consequently, when use of the software module at a different destination is attempted, the calculation performed by the code number calculation module will result in calculation of a different code number, as the code number calculation module performs the calculation of the code number using the destination identifier as an input parameter. As a different destination identifier will result in a different code number, the code number stored in the software will not correspond to the code number calculated by the calculation module, which results in limited or no availability of the function. Thus, unauthorised copying of the software module and unauthorised use of the software module at various destinations, such as various measuring instruments, cartridges, etc. can be prevented. As the code number calculation module is comprised in the software module, it is possible to use different code number calculation modules for a variety of software modules, because the appropriate code number calculation module for the specific software module is comprised in each particular software module. In case that a third party for example has successfully retrieved the calculation algorithm used by the code number calculation module which is applied in a specific software module, this third party could eliminate the protection of the code number calculation module by calculating appropriate code numbers for a variety of destination identifiers and by storing each code number in a corresponding software module to be loaded without authorisation into a corresponding measuring instrument, cartridge, etc. As however each software module can comprise a different code number calculation module making use of a different code number calculation algorithm, a different algorithm, and thus a different code number calculation module can be comprised in each different software module, which significantly impedes unauthorised use of various software modules, as for each particular software module providing a specific function, the algorithm applied for calculating the code number in the code number calculation module used in that specific software module has to be retrieved. The code number calculation module can perform any kind of operation for calculating the code number, including logical, mathematical, and/or any suitable type of operation. Also, the code number calculation module can make use of one or more input parameters, comprising advantageously the destination identifier identifying the destination for the particular software module, however any other suitable type of input parameter can be used.
Advantageously, the method comprises the further steps of, in the server, before step d) providing a duplicate of the code number calculation tool to the server, calculating the code number in the server, and integrating the code number in the access message. Thus, the code number is calculated by a duplicate of the code number calculation tool (which comprises the same algorithm for calculating the code number as the code number calculation tool comprised in the software module) , resulting in a possibility to individually calculate a code number upon receipt of a request message requesting a function for a particular destination.
Advantageously, the software module comprises program instructions for, before enabling the software module in the automotive measuring instrument, performing the steps of calculating the code number by the code number calculation module, comparing the code number calculated with the code number stored in the software module and enabling the software module only when the calculated code number equals the code number stored in the software module. The software module can be read from a memory means, which advantageously is chosen from a group comprising an optically readable disk, a magnetically readable disk, a magnetically readable tape and a semiconductor memory. The software modules can thus be available for the user on a memory means, such as a CDROM, advantageously in encrypted form, and upon receipt of an appropriate access message, access to a particular software module is provided. Alternatively, it is possible that the software module can be downloaded from the internet or any other computer network. The invention further comprises a method for enabling a software module in an automotive measuring instrument, the software module having been provided to the instrument according to the method according to the invention, the method comprising the steps of calculating, in the automotive measuring instrument, the code number by the code number calculation module, comparing the calculated code number with the code number stored in the software module, and enabling the software module only when the calculated code number equals the code number stored in the software module.
Further, the invention comprises a method for providing access to a software module for use in an automotive measuring instrument having a programmable memory, the method comprising the steps of, in a server receiving, from a programming device, a request message requesting access to the software module, the request message comprising a software identification for identifying the software module and sending an access message comprising an access key enabling the automotive instrument to access the software module, from the server to the programming device. The computer programs according to the invention comprise program instructions for executing the respective methods according to the invention.
The automotive measuring instrument according to the invention comprises a programmable memory and a communication port for communication between at least the programmable memory and a programming device for being provided with a function according to the method according to the invention. The communication port can be a separate communication port, such as a connection for connecting a cable, a wireless communication port, etc. Advantageously, the communication port is comprised in a connection already available on or in the automotive measuring instrument, such as an electrical connection (c.q. one or more contacts) between the programmable memory and a remainder of the automotive measuring instrument.
The cartridge according to the invention is designed to form a releasable part of the automotive instrument according to the invention and comprises the programmable memory, the cartridge being adapted for providing the automotive measuring instrument access to the software module, when being connected to and forming part of the automotive measuring instrument.
Further advantages and features of the invention will become clear from a description of the appended drawing, showing non- limiting embodiments of the invention, in which:
Fig 1 shows a system for providing a function to an automotive measuring instrument according to the invention;
Fig. 2 shows a flow diagram showing a method for providing the function to the automotive measuring instrument, according to the invention; and
Fig. 3 shows a flow diagram describing a method for enabling the software module which has been provided to the measuring instrument as described with reference to Fig. 2, in the measuring instrument. Fig. 1 shows an automotive measuring instrument 1 which is equipped with a cartridge 2 comprising a programmable memory. The cartridge 2 which is in Fig. 1 shown as a separate device can be inserted in a suitable slot in the automotive measuring instrument 1 and when inserted, the cartridge 2 will be connected to the automotive measuring instrument 1 via suitable electrical connections. Thus, when the cartridge 2 is inserted in the slot, or alternatively connected to the automotive measuring instrument 1 via any suitable connection, the automotive measuring instrument 1 is able to read out the contents of the programmable memory comprised in the cartridge 2. Fig. 1 further shows a programming device in this example consisting of a programming station 3 which is connected via a suitable data connection to a personal computer 4. The cartridge 2 comprising the programmable memory can be connected to the programming station such that without of data in the programmable memory or programming the programmable memory by the programming station 3 is made possible. The personal computer 4 is connected to a server, such as in this example an internet server 6 which can be on a location remote from the personal computer 4. The personal computer 4 and the internet server 6 are connected to each other via a network 7, such as a telephone network, a private computer network or a public computer network such as the internet, and the personal computer 4 as well as the internet server 6 is connected to the network 7 via a suitable communication link 8a, 8b, respectively, such as for example a modem, a data communication line, a local area network, etc. The automotive measuring instrument 1, cartridge 2, programming station 3 and personal computer 4 will in practice be positioned at a service outlet, garage, car dealer, or alternatively at a service outlet or dealer for the automotive measuring instrument, however any other location is possible too. The server 6 will typically be under control of a manufacturer or authorised dealer of the automotive measuring instrument 1, which enables such person, firm or party controlling the server 6 to allow or deny access by a user of the programming station 3 and personal computer 4 to a function for the automotive measuring instrument 1, as will be explained in more detail below. In this example, the software module (also called software or software program) is available to the user of the programming station 3 and personal, computer 4 on a computer readable medium, such as a CD-ROM 5. The CD-ROM 5 comprises one or more functions for the automotive measuring instrument 1, which are incorporated in suitable software programs or modules. The software is stored on the CD-ROM 5 in an encrypted manner, and will need a decryption before being able to be functionally applied. The operation of the system according to Fig. 1 will be described with reference to Fig. 2.
Fig. 2 shows a flow diagram comprising steps 20 to 28, which are performed in the programming device, i.e. the personal computer 4, the programming station 3, or both. Further, Fig. 2 shows steps 30-35, which are performed by the server 6 shown in Fig 1. In step 20, a connection is established between the programmable memory of the measuring instrument 1, in this example comprised in the cartridge 2, and the programming device, in this example the programming station 3. This can take place by electrically connecting the cartridge 2 to the programming station 3. Upon selection of the function by the user of the personal computer 4, a request message is generated in step 21. The request message comprises a function identifier for identifying the function requested, such as a software number, and advantageously comprises a destination identifier such as a cartridge number, user number, customer number, measuring instrument number, or any other suitable identifier. Then, in step 22 the request message is sent from the personal computer 4 via the network 7 to the server 6. In step 30, in the server, is determined if the request is valid. A such determination of validity can e.g. be performed based on the destination identifier, i.e. by checking in a database in or operationally connected to the server 6 if the request comprises a destination identifier which is comprised in a list of valid destination identifiers comprised in the database. Then, a decryption key is determined in step 31. The decryption key can be dependent on the function, i.e. on the particular software requested which is on the CD-ROM 5, however it is also possible that the decryption key is user dependent, destination dependent, etc. Then, in step 32 in the server a code number is calculated making use of a code number calculation module which resides in the server or is accessible by the server. The function of the code number and the code number calculation module will be explained in more detail below. In step 33 user account is charged for the requested function. The charge can be performed on a fixed fee basis, however it is also possible that an amount of the charge is based on e.g. prior payments, a discount schedule, or any other suitable other parameter. In step 34, an access message is generated, the access message comprising the decryption key which has been determined in step 31 and the code number calculated in step 32. Then, in step 35 the access message is sent to the programming device, in this example the personal computer 4, via the network 7 and received therein in step 23. Following receipt of the access message, in step 24 the decryption key is derived from the access message, with which the requested software which is stored on the CD-ROM is decrypted in the personal computer 4, as indicated with step 25. Also, in step 26 the code number is derived from the access message and the code number is stored in the software which has been decrypted in step 25. Then, in step 28 the function which is comprised in the software is loaded by the programming station 3 into the programmable memory which is in this example comprised in the cartridge 2. Thus, a protection against unauthorised use of the function comprised in the software is accomplished, as only a user or destination which is considered valid by the server 6 will receive an appropriate access message with which access to the software comprising the function is provided.
When, in the automotive measuring instrument, the function comprised in the software module is requested, as indicated with step 40 in Fig. 3, then the software module first calculates the code number in step 41. The calculation of the code number is performed making use of the code number calculation module which is comprised in the software module and at least one input parameter which comprises the destination identifier (such as a measuring instrument serial number, a user number or customer number, or any other suitable identification for identifying the destination at which running of the software is requested) . The destination identifier will advantageously be stored in the measuring instrument 1, and/or the cartridge 2. In step 42, the calculated code number is compared with the stored code number which is stored in the software. If the calculated code number is equal to the stored code number then the software module is enabled in step 43. If the calculated code number is not equal to the stored code number then the software module is disabled, i.e. availability of the function on the particular automotive measuring instrument, the function being provided by the software module, being inhibited. Thus, the software module is only started in case that a correct code number is calculated, i.e. the software module is only started at a predetermined destination, as only a destination comprising the predetermined destination identifier will result in a calculation of a code number which corresponds to the stored code number. Thus, use of the software or a copy thereof, at other destinations, i.e. at other measuring instruments, other users, etc. is prevented. Further, as the code number calculation module is comprised in the software, it is possible to incorporate different code number calculation modules in different software modules, thus in case that an unauthorised person should have successfully retrieved the algorithm behind a particular code number calculation tool comprised in a particular software module, then this person only has access to the particular software module which comprises the particular code number calculation tool, however not to all other software modules which comprise a different code number calculation tool. In the example described above, the software module has been made available to the user on a CD-ROM, however it is also possible that the software module is stored on a magnetically readable disk, a magnetically readable tape, a semiconductor memory. Further, it is possible that the software module is downloaded from the internet. Consequently, the invention provides a user-friendly, fast and secure way for providing a function to an automotive measuring instrument as a request for obtaining access to the function is sent to a server, upon which the server provides an access message advantageously comprising an access key, such as a decryption key, enabling access to the software module. The server can determine validity of the request and can provide for a charging of an amount to a user account for payment of the software. An advantage of the system and method according to the invention is that the software can be distributed in advance, while use of the software is controlled via the access message as described above and payment for the software takes place when access to the software is provided. Thus, it is not required to send large files via the internet or another network, as the software itself, which comprises the function, is already present on the CD-ROM, while only comparatively small messages need to be sent via the internet for providing access to the software.

Claims

1. A method for providing a function to an automotive measuring instrument, the method comprising the steps of: a) establishing a connection between a programmable memory of the measuring instrument and a programming device; b) generating a request message, the request message comprising a function identifier for identifying the function; c) sending the request message via a communication means to a server; d) receiving from the server an access message, enabling the programming device to access a software module having the function; and e) loading the software module, by the programming device, into the programmable memory.
2. The method according to claim 1, characterised in that the programmable memory is comprised in a cartridge which is connectable to and comprised in the automotive measuring instrument.
3. The method according to claim 1 or 2, characterised in that step d) comprises the steps of: dl) receiving from the server the access message comprising an access key; d2) deriving the access key from the access message; and d3) accessing the software module by the programming device using the access key.
4. The method according to claim 3, characterised in that the access key comprises a decryption key, step d3) comprising the step of decrypting the software with the decryption key.
5. The method according to any of the preceding claims, characterised in that the method comprises the further step of f) charging, by the server, an amount to a user account for payment for the software module.
6. The method according to claim 5, characterised in that step f) comprises the further step of: fl) checking, in a user account database, prior payments for a same user; and f2) determining a value of the amount based on the prior payments.
7. The method according to any of the preceding claims, characterised in that the request message further comprises a destination identifier for identifying a destination for the software module.
8. The method according to claim 7, characterised in that the destination identifier is chosen from a group comprising a user identification, a measuring instrument identification, a measuring instrument memory identification, and/or a cartridge identification.
9. The method according to any of claims 3 - 8, characterised in that the access message received in step d) further comprises a code number determined by the server and in that step d) comprises the further steps of: d5) deriving the code number from the access message; d6) storing the code number in the software module, the software module further comprising a code number calculation module for calculating the code number, for enabling the software module to verify if the code number calculated by the code number calculation module equals the code number stored in the software module.
10. The method according to claim 9, characterised in that the code number calculation module is adapted for calculating the code number using at least one input parameter comprising the destination identifier.
11. The method according to claim 9 or 10, characterised by the steps of, in the server, before step d) : providing a duplicate of the code number calculation tool to the server; calculating the code number in the server; and integrating the code number in the access message.
12. The method according to any of claims 9 - 11, characterised in that the software module comprises program instructions for, before enabling the software module in the automotive measuring instrument, performing the steps of: calculating the code number by the code number calculation module; comparing the code number calculated with the code number stored in the software module; and enabling the software module only when the calculated code number equals the code number stored in the software module.
13. The method according to any of claims 1 to 12, characterised in that step d) comprises the further step of downloading the software module from the internet.
14. The method according to any of claims 1 to 12, characterised in that step c) comprises the further step of reading the software module from a memory means.
15. The method according to claim 14, characterised in that the memory means is chosen from a group comprising an optically readable disk, magnetically readable disk, a magnetically readable tape, and a semiconductor memory.
16. A Method for enabling a software module in an automotive measuring instrument, the software module having been provided to the instrument according to the method according to any of claims 9 or 12, the method comprising the steps of: calculating, in the automotive measuring instrument, the code number by the code number calculation module; comparing the calculated code number with the code number stored in the software module; and enabling the software module only when the calculated code number equals the code number stored in the software module.
17. A method for providing access to a software module for use in an automotive measuring instrument having a programmable memory, the method comprising the steps of, in a server: receiving, from a programming device, a request message requesting access to the software module, the request message comprising a software identification for identifying the software module; and sending an access message comprising an access key enabling the automotive instrument to access the software module, from the server to the programming device.
18. A computer program comprising program instructions for executing the method according to any of claims 1 to 15.
19. A computer program comprising program instructions for executing the method according to claim 16.
20. A computer program comprising program instructions for executing the method according to claim 17.
21. An automotive measuring instrument comprising a programmable memory and a communication port for communication between at least the programmable memory and a programming device for being provided with a function according to the method according to any of claims 1 - 15.
22. A cartridge being designed to form a releasable part of the automotive instrument according to claim 21 and comprising the programmable memory, the cartridge being adapted for providing the automotive measuring instrument access to the software module, when being connected to and forming part of the automotive measuring instrument.
PCT/NL2002/000817 2002-12-11 2002-12-11 Method and computer program for providing a function to an automotive measuring instrument WO2004053506A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
TW091135869A TW200410120A (en) 2002-12-11 2002-12-11 Method for providing a function to an automotive measuring instrument, and computer program for executing the method
PCT/NL2002/000817 WO2004053506A1 (en) 2002-12-11 2002-12-11 Method and computer program for providing a function to an automotive measuring instrument
AU2002353653A AU2002353653A1 (en) 2002-12-11 2002-12-11 Method and computer program for providing a function to an automotive measuring instrument

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/NL2002/000817 WO2004053506A1 (en) 2002-12-11 2002-12-11 Method and computer program for providing a function to an automotive measuring instrument

Publications (1)

Publication Number Publication Date
WO2004053506A1 true WO2004053506A1 (en) 2004-06-24

Family

ID=32501529

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/NL2002/000817 WO2004053506A1 (en) 2002-12-11 2002-12-11 Method and computer program for providing a function to an automotive measuring instrument

Country Status (3)

Country Link
AU (1) AU2002353653A1 (en)
TW (1) TW200410120A (en)
WO (1) WO2004053506A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2973376A4 (en) * 2013-03-15 2016-11-02 Bosch Automotive Service Solutions Inc Revenue sharing system and method thereof

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4404639A (en) * 1980-12-02 1983-09-13 Chevron Research Company Automotive diagnostic system
US4694408A (en) * 1986-01-15 1987-09-15 Zaleski James V Apparatus for testing auto electronics systems
DE19537074A1 (en) * 1995-10-05 1997-04-10 Bosch Gmbh Robert Testing equipment for motor vehicle
US5784460A (en) * 1996-10-10 1998-07-21 Protocall Technolgies, Inc. Secured electronic information delivery system having a three-tier structure

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4404639A (en) * 1980-12-02 1983-09-13 Chevron Research Company Automotive diagnostic system
US4694408A (en) * 1986-01-15 1987-09-15 Zaleski James V Apparatus for testing auto electronics systems
DE19537074A1 (en) * 1995-10-05 1997-04-10 Bosch Gmbh Robert Testing equipment for motor vehicle
US5784460A (en) * 1996-10-10 1998-07-21 Protocall Technolgies, Inc. Secured electronic information delivery system having a three-tier structure

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2973376A4 (en) * 2013-03-15 2016-11-02 Bosch Automotive Service Solutions Inc Revenue sharing system and method thereof

Also Published As

Publication number Publication date
AU2002353653A1 (en) 2004-06-30
TW200410120A (en) 2004-06-16

Similar Documents

Publication Publication Date Title
EP1606708B1 (en) Method for providing a software module to an automotive vehicle control unit, and computer program for executing the method
US10089628B1 (en) System and method for enrolling in a biometric system
EP1590917B1 (en) A system and a method for controlling use by applications of proprietary resources within a secure telematics system in a vehicle
EP0795809A2 (en) Secure software distribution system and software utilization scheme
JP2004506258A (en) Personal data device and protection system and method for storing and protecting personal data
EP2601624A1 (en) Verification methods for fraud prevention in money transfer receive transactions
JP2004512583A (en) Transaction verification
US7712139B2 (en) Data transmission method
US7373307B2 (en) Computer system warranty upgrade method
US20030074230A1 (en) Computer system warranty upgrade method and apparatus with configuration change detection feature
WO2004097704A1 (en) Automatic management system of communal vehicle
JP2001216360A (en) Device and method for issuing advance order certificate
US20150058223A1 (en) Authorising use of a computer program
WO2004053506A1 (en) Method and computer program for providing a function to an automotive measuring instrument
JP2005301927A (en) Utilization management system of application software
WO2016016781A1 (en) Electronic payment system for fuel
US20020156741A1 (en) Feature-dependent charge assessment method and apparatus
JP2006155052A (en) On-line shopping system, its user management device, network store device, and user terminal device
JPH08335170A (en) Program usage tariff charging system
JP2003248783A (en) Content compensation method and system, purchase control terminal, authenticating/charging server, and selling server
JP4369652B2 (en) Management server in automatic fee payment system and automatic fee payment system
JP2003293846A (en) Driving permission system, and insurance contract device, method, program and recording medium
WO2001046917A2 (en) Identity authentication using transaction history
WO2004088605A1 (en) Transaction apparatus for processing transactions by means of a communication network, and system comprising such a transaction apparatus
CN113815470A (en) Authentication method, charging method, authentication device and charging management device

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ OM PH PL PT RO RU SC SD SE SG SK SL TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR IE IT LU MC NL PT SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP

WWW Wipo information: withdrawn in national office

Country of ref document: JP