WO2007034373A2 - Time-controlled operation - Google Patents

Time-controlled operation Download PDF

Info

Publication number
WO2007034373A2
WO2007034373A2 PCT/IB2006/053255 IB2006053255W WO2007034373A2 WO 2007034373 A2 WO2007034373 A2 WO 2007034373A2 IB 2006053255 W IB2006053255 W IB 2006053255W WO 2007034373 A2 WO2007034373 A2 WO 2007034373A2
Authority
WO
WIPO (PCT)
Prior art keywords
output signal
pseudo random
initial state
states
physical output
Prior art date
Application number
PCT/IB2006/053255
Other languages
French (fr)
Other versions
WO2007034373A3 (en
Inventor
Marc Vauclair
Original Assignee
Koninklijke Philips Electronics N.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 Koninklijke Philips Electronics N.V. filed Critical Koninklijke Philips Electronics N.V.
Publication of WO2007034373A2 publication Critical patent/WO2007034373A2/en
Publication of WO2007034373A3 publication Critical patent/WO2007034373A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/14Protecting executable software against software analysis or reverse engineering, e.g. by obfuscation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/66Substation equipment, e.g. for use by subscribers with means for preventing unauthorised or fraudulent calling

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Telephone Function (AREA)
  • Selective Calling Equipment (AREA)

Abstract

The present invention relates to a method and an device for enabling time- controlled operation of an object. A basic idea of the present invention is to control, in a deterministic manner, operation time of an object, e.g. an electronic appliance such as a mobile phone or a computer, a software program such as an echo-cancellation algorithm implemented in a mobile phone or a piece of executable code implemented on a computer, etc., resulting in a physical output signal. The manner in which the operation time is controlled should be obfuscated such that a malicious intruder cannot identify the control function that determines the operation time of the object by means of probing and/or reverse engineering the object to eliminate, remove or bypass the control function. Preferably, the actual control should be made as indistinguishable as possible from 'normal' processing.

Description

Time-controlled operation
The present invention relates to a method and a device for enabling time- controlled operation of an object.
Time-controlled operation is a feature that typically is required and implemented in various electronic devices that are delivered to potential customers for demonstration purposes. For example, a mobile phone delivered for demonstration purposes will be programmed in such a manner that it only will be up-and-running for a predetermined time period. When the period expires, the mobile phone will be turned off or in some other appropriate way be controlled to change its behavior such that it becomes useless. For instance, time-controlled operation may be used in a GSM speech enhancing demonstration program to be run on a mobile phone. When a predetermined time period of e.g. 30 seconds has expired, the program terminates. However, by employing reverse engineering, a hacker or malicious third party may disable or bypass the time-controlled operation such that usage of the electronic device can be continued.
In the prior art, time-controlled operation may e.g. be implemented by means of continuously checking a clock value in an electronic appliance to see if the predetermined clock value has expired or to use a counter that for instance counts the number of software instructions that have been processed. These methods of implementing time-controlled operation have the disadvantage that they are relatively easy to discover and manipulate by an intruder to eliminate or bypass the operation control and thus continue to use the electronic appliance.
An object of the present invention is to mitigate the previously mentioned problems in the prior art and to hamper elimination or bypassing of time-controlled operation in an electronic appliance. This object is attained by a method of enabling time-controlled operation of an object in accordance with claim 1 and a device for enabling time-controlled operation of an object in accordance with claim 10.
In a first aspect of the present invention, there is provided a method comprising the steps of setting an initial state of a pseudo random function, setting the object in an operating mode, wherein the object generates a physical output signal, advancing through states of the pseudo random function until a final state is reached, wherein the states of said function are arranged such that the time it takes to advance from the initial state to the final state corresponds to a predetermined time period and initiating a mode change for the object, wherein the object generates a physical output signal which differs from the output signal generated in the operating mode.
In a second aspect of the present invention, there is provided a device comprising means for setting an initial state of a pseudo random function, means for setting the object in an operating mode, wherein the object generates a physical output signal, means for advancing through states of the pseudo random function until a final state is reached, wherein the states of said iunction are arranged such that the time it takes to advance from the initial state to the final state corresponds to a predetermined time period and means for initiating a mode change for the object, wherein the object generates a physical output signal which differs from the output signal generated in the operating mode. A basic idea of the present invention is to control, in a deterministic manner, operation time of an object, e.g. an electronic appliance such as a mobile phone or a computer, a software program such as an echo-cancellation algorithm implemented in a mobile phone or a piece of executable code implemented on a computer, etc., resulting in a physical output signal. The manner in which the operation time is controlled should be obiuscated such that a malicious intruder cannot identify the control function that determines the operation time of the object by means of probing and/or reverse engineering the object to eliminate, remove or bypass the control function. Preferably, the actual control should be made as indistinguishable as possible from "normal" processing. For instance, if a digital processing function such as codec is to be controlled, the control preferably appears to be embodied as a codec software module.
A pseudo random function is employed to control the operation of the object for a predetermined time period. By setting the pseudo random function - implemented by means of e.g. a linear feedback shift register (LFSR) - in an initial state when the object is set in an operating mode, it is possible to maintain the object in its operating mode for a predetermined time period. For instance, the object to be controlled is a mobile phone, and the resulting output signal may be an audio signal coming out of the mobile phone earpiece, which audio signal is dependent on mobile phone gain. When the phone is set in operating mode, a nominal value of the gain is set, and the mobile phone operates in its "normal" operating mode.
After the function is set in its initial state, pseudo random iunction states are advanced until a final state is reached. When the final state is reached, a mode change is initiated for the object. This mode typically implies that the object is set in a non-operating mode; it may for instance be set in an idle mode or even be turned off. It is also possible that it is set in a mode where its performance is degraded, or where an error report is issued. A skilled person realizes that there exist a great number of operating modes in which the object may be set, depending on what type of object is to be controlled. For instance, in accordance with the mobile phone example given in the above, the mobile phone gain is set to a nominal value in the operating mode. When the final state of the pseudo random iunction is reached, the mobile phone is set in a non-operating mode. For example, the gain is rapidly increased (or decreased or oscillated). At this point, the volume of the audio signal coming out of the mobile phone earpiece increases (or decreases or oscillates) rapidly. Hence, it is possible to maintain the mobile phone in "normal" operating mode, i.e. keep its output signal at the nominal value, for a predetermined time period. When the period has expired, the output signal deteriorates to such an extent that the object cannot be used.
By arranging the number of states (and the length of each state) of the function such that the time it takes to advance from the initial state to the final state corresponds to the predetermined time period for which the object is to be set in its operating mode, it is possible to deterministically control the operation time. The present invention is advantageous for a number of reasons. First, by employing a pseudo random function such as an LFSR, the time-controlled operation appears to be non-deterministic even though it actually is deterministic. This is also an easy and cost- effective way of implementing the time-controlled operation. Second, the number of states of the function required to attain the predetermined time period is not implemented as a parameter which may be read by a hacker. Third, the initial state and the final state, which are implemented as numerical state values, can be chosen at random and is as such similar in appearance to other digital processing parameters. Fourth, the test of checking whether the final state has been reached is similar to other digital processing threshold tests. As can be seen, the time-controlled operation may be "hidden" in data processing blocks instead of hiding it in control processing blocks, as is typically done in prior art. Since the time- controlled operation of the present invention mimics other typical signal processing computation steps, the operation control is difficult to identify.
The invention may advantageously be implemented in embedded realizations of digital processing functions such as DSP algorithms, codec's, etc. Algorithms that are to be considered as valuable intellectual property blocks and that are delivered to third parties for demonstrations purposes in embedded devices may advantageously be protected by means of the present invention.
It should further be noted that the object to be controlled may comprise a software module which produces a physical output signal when set in an operating mode, and which is rendered inoperative when a mode change is initiated in that the physical output signal is changed in such a manner that usage of the software module no longer is meaningful.
Further features of, and advantages with, the present invention will become apparent when studying the appended claims and the following description. Those skilled in the art realize that different features of the present invention can be combined to create embodiments other than those described in the following.
A detailed description of exemplifying embodiments of the present invention will be given in the following with reference made to the accompanying drawing.
Fig. 1 shows an example of a pseudo random function in the form of a 3-bit linear feedback shift register (LFSR) which advantageously may be employed to realize the present invention.
Figure 1 shows an example of a pseudo random function in the form of a 3-bit linear feedback shift register (LFSR) which advantageously may be employed to realize the present invention. In practice, the number of bits employed is considerably higher than illustrated in Figure 1. An LFSR is a shift register that, when clocked, advances a signal through the register from one output to a next most-significant output. Some of the outputs, in this particular example outputs FF2 OUT, FF3 OUT of second and third flip-flops DFF2, DFF3, are combined in an exclusive-OR gate to form a signal that is fed back to an input D of first flip-flop DFFl. When the outputs of the flip-flops are loaded with an initial value, i.e. the flip-flops are set in an initial state, and when the LFSR is clocked by applying a (square- wave) signal to a clock input CLK of each flip-flop, it will generate a pseudorandom pattern of Is and 0s. Table 1 shows different states of this particular LFSR when loaded with a given initial value. Table 1. LFSR states
Initial state
Final state Start repeating
Figure imgf000006_0001
As can be seen in Table 1, it takes 7 clock cycles to reach the final state from the initial state. Hence, if the clock is set to have a frequency of e.g. 1 MHz, it takes 7 μs to complete one full cycle of the LFSR. A pseudo random function implemented with the LFSR of Figure 1 cycles through 7 different states without repetition. On the 8th clock pulse, a cycle is completed, and the LFSR is set in its initial state once again. If an operation time of e.g. 12 μs is required, the clock frequency should be set to 583 kHz, given that a 3 -bit LFSR is employed.
The pseudo random function may for example be implemented in an electronic appliance such as a mobile phone to control a speech enhancing algorithm. Initialization of the algorithm may be undertaken at power on of the mobile phone, wherein an initial state of the LFSR is set and the algorithm is started. Then, the states of the LFSR are advanced by clocking the registers. At the same time, one or more operations defined by algorithm are performed. When the final state of the LFSR is reached, whereby a predetermined time period has expired, the algorithm is terminated. Hence, operation of the algorithm is controlled for the predetermined time period it takes to complete a full cycle of the LFSR. Typically, the LFSR is coupled to a microprocessor (not shown) or some other device with computing capabilities. The LFSR may be implemented by means of discrete components, but may also be implemented by means of an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a complex programmable logic device (CPLD) or some other appropriate hardware device. The LFSR may alternatively be implemented by means of a software program which performs the pseudo random function.
It should be noted that a number of objects in the form of software programs or electronic appliances may be controlled with the same LFSR, and the predetermined time period may be shifted in time by choosing different initial states and corresponding
(different) final states: one object may be controlled by applying the initial state and final state of Table 1, while another object may have an initial state of 001 and a final state of 011, i.e. be shifted in time by two states, and hence still be controlled with a time period of 7 clock cycles. Even though the invention has been described with reference to specific exemplifying embodiments thereof, many different alterations, modifications and the like will become apparent for those skilled in the art. The described embodiments are therefore not intended to limit the scope of the invention, as defined by the appended claims.

Claims

CLAIMS:
1. A method of enabling time-controlled operation of an object resulting in a physical output signal, which method comprises the steps of: setting an initial state of a pseudo random function; setting the object in an operating mode, wherein the object generates a physical output signal; advancing through states of the pseudo random function until a final state is reached, wherein the states of said function are arranged such that the time it takes to advance from the initial state to the final state corresponds to a predetermined time period; and initiating a mode change for the object, wherein the object generates a physical output signal which differs from the output signal generated in the operating mode.
2. The method of claim 1, wherein advancement from the initial state to the final state should be performed without repeating any states of the pseudo random function.
3. The method according to claim 1 , wherein the object to be controlled is an electronic appliance.
4. The method according to claim 1, wherein the object to be controlled is a software program.
5. The method according to claim 1, wherein the step of setting an initial state is triggered by an object event.
6. The method according to claim 5, wherein the object event comprises a start- up of the object.
7. The method according to claim 1 , wherein the step of initiating a mode change comprises the step of setting the object in a non-operating mode.
8. The method according to claim 1, wherein the pseudo random function comprises a linear feedback shift register.
9. The method according to claim 1, wherein the physical output signal generated at the mode change is arranged such that it reflects a deterioration in performance of the object.
10. A device for enabling time-controlled operation of an object resulting in a physical output signal, which device comprises: means for setting an initial state of a pseudo random function; means for setting the object in an operating mode, wherein the object generates a physical output signal; means for advancing through states of the pseudo random function until a final state is reached, wherein the states of said function are arranged such that the time it takes to advance from the initial state to the final state corresponds to a predetermined time period; and means for initiating a mode change for the object, wherein the object generates a physical output signal which differs from the output signal generated in the operating mode.
11. A computer program product comprising computer-executable components for causing a device to perform the steps recited in claim 1 when the computer-executable components are run on a processing unit included in the device.
PCT/IB2006/053255 2005-09-19 2006-09-13 Time-controlled operation WO2007034373A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP05108580 2005-09-19
EP05108580.1 2005-09-19

Publications (2)

Publication Number Publication Date
WO2007034373A2 true WO2007034373A2 (en) 2007-03-29
WO2007034373A3 WO2007034373A3 (en) 2008-08-21

Family

ID=37889198

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2006/053255 WO2007034373A2 (en) 2005-09-19 2006-09-13 Time-controlled operation

Country Status (1)

Country Link
WO (1) WO2007034373A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2008717A2 (en) 2007-06-28 2008-12-31 Sony Corporation Reaction device with accurate temperature control

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5383143A (en) * 1994-03-30 1995-01-17 Motorola, Inc. Self re-seeding linear feedback shift register (LFSR) data processing system for generating a pseudo-random test bit stream and method of operation
WO1997024894A1 (en) * 1995-12-29 1997-07-10 Stx Corporation Nonreusable cellular telephone
US6057719A (en) * 1998-06-05 2000-05-02 International Business Machines Corporation Programmable, self-resetting divider

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5383143A (en) * 1994-03-30 1995-01-17 Motorola, Inc. Self re-seeding linear feedback shift register (LFSR) data processing system for generating a pseudo-random test bit stream and method of operation
WO1997024894A1 (en) * 1995-12-29 1997-07-10 Stx Corporation Nonreusable cellular telephone
US6057719A (en) * 1998-06-05 2000-05-02 International Business Machines Corporation Programmable, self-resetting divider

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ZANGER L M: "Law Review-still no agreement on repossession issues" IEEE SOFTWARE USA, vol. 9, no. 3, May 1992 (1992-05), pages 97-98, XP002432957 ISSN: 0740-7459 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2008717A2 (en) 2007-06-28 2008-12-31 Sony Corporation Reaction device with accurate temperature control

Also Published As

Publication number Publication date
WO2007034373A3 (en) 2008-08-21

Similar Documents

Publication Publication Date Title
JP6616471B2 (en) Stochastic processing
US8150900B2 (en) Random number generation based on logic circuits with feedback
US7206797B2 (en) Random number slip and swap generators
Golic New methods for digital generation and postprocessing of random data
EP1782181B1 (en) Method and apparatus for generating random data
JP3732188B2 (en) Pseudo random number generator
TWI374649B (en) Digital random number generator based on digitally-controlled oscillators
CN110413257B (en) Random number generating circuit
JP5165755B2 (en) Cryptographic random number generator using finite field operations
US20040076293A1 (en) Random number generator using compression
KR20110074878A (en) System and method to execute a linear feedback-shift instruction
WO2007034373A2 (en) Time-controlled operation
JP5150642B2 (en) Efficient data integrity protection
KR100871221B1 (en) Pseudorandom binary sequence generation method and apparatusin a communication system using linear feedback shift register
JP5119417B2 (en) Pseudo random number generator
KR100446317B1 (en) System for protecting data of code ROM in code ROM test
JPH10340183A (en) Random number generating circuit
JP2002521771A (en) Clock-controlled integrated semiconductor circuit and method of operating the integrated semiconductor circuit
Singh et al. FPGA Implementation of Chaos based Pseudo Random Number Generator
JP2004157168A (en) Random number generator
JP6386904B2 (en) Random number generation apparatus and random number generation method
JP4114722B2 (en) State circuit
Monisha et al. Implementation of RNG in FPGA using efficient resource utilization
KR20030093197A (en) Random number generator using compression
JPH05327427A (en) Random pulse generator and random pulse generating method

Legal Events

Date Code Title Description
NENP Non-entry into the national phase in:

Ref country code: DE

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 06809292

Country of ref document: EP

Kind code of ref document: A2

122 Ep: pct application non-entry in european phase

Ref document number: 06809292

Country of ref document: EP

Kind code of ref document: A2