throbber
United States Patent
`
`[19]
`
`[11] Patent Number:
`
`6,026,293
`
`Osborn
`
`[45] Date of Patent:
`
`Feb. 15, 2000
`
`US006026293A
`
`[54]
`
`SYSTEM FOR PREVENTING ELECTRONIC
`MEMORY TAMPERING
`
`[75]
`
`Inventor: William R. Osborn, Cary Wake, N.C.
`
`[73] Assignee: Ericssnn lnc., Research Triangle Park,
`NC‘
`
`FOR]-JIGN i>A'rEN'i' DOCUMENTS
`0 583 100
`2,/1994 European Pat. Otf. .
`2681965
`4/1990
`France .
`W091/09484 12/1990 WIPO ,
`
`OTHER PUBLICATIONS
`Preneel, B., “Cryptographic Hash Functions” European
`Transactions on Telecommunications and Related Technolo-
`
`[21] Appl- No: 08/706.574
`22
`Ffl d,
`S
`_ 5 1996
`ep
`0
`’
`]
`[
`[51] hit. Cl.7 .............................. .. H04L 9/28; H04L 9/30;
`HO4Q 7/'32
`............................... 455/411; 455/418; 380/4;
`380/25; 380/30; 711/164
`
`[52] U.S. C].
`
`gies, vol. 5, No. 4, pp. 17-34, Jul. 1994.
`“Mobile Station—Base Station Compatibility Standard for
`Dual—Mode Wideband Spread Spectrum Cellular System”,
`TIA/EIA/IS—95—A, Sections 2.3.12.1 through 2.3.12.1.9,
`Telecommunications Industry Association (May 1995).
`B. Schneier, Applied Cryptography, John Wiley & Sons,
`Inc., pp. 291-296, 321-346 (1994).
`
`[58] Field of Search ............................... .. 455/410, 411,
`455/418: 419? 711/163’ 1645 395/186; 380/4’
`25, 30
`
`p,.i,,m,.y Examme,._AndrcW M_ D0111-Jar
`Attorney, Agent, or Firm—Bums, Doane, Swecker &
`Mathis, L.L.P.
`
`ABSTRACT
`[57]
`Methods and apparatus for preventing tampering with
`memory in an electronic device, such as a cellular telephone,
`are disclosed. An electronic device having a memory and a
`processing means contains logic that is used to perform a
`‘
`.
`’
`.
`,
`one-way hash calculation on the device s memory contents
`tvhereby an audit hash value, or signature, of such contents
`is derived. The audit hash value 1S compared to a an
`authenticated valid hash value derived from authentic
`memory contents. A difference between the audit and valid
`51311135
`bgflflndlcatlvi 0fffl'1:1f;[—nOryt'[aH1pf1;r11—:,g,
`1'1-1
`accor ance W1
`ano er as ec o
`e inven ion, e ec ronic
`device memory contents calfi be updated by a data transfer
`-
`-
`-
`-
`-
`-
`device that is authenticated before being permitted access to
`Fhe memory °°““’“‘5~ D3.” “'fm5f"‘ d""1°"' a“Fh°““°a“°“
`involves the use of a public,/private key encryption scheme.
`When the data transfer device interfaces with a electronic
`device and requests memory access, a process to authenti-
`cate the data transfer device is initiated.
`
`50 Claims, 12 Drawing Sheets
`
`[56]
`
`References Cited
`U3, PATENT DOCUMENTS
`
`4,405,829
`
`............................ .. 380/'30
`
`
`
`9,/1983 Rivest et al.
`,
`" 38050
`$1988 sham“ el al‘
`4’748’668
`455/550
`3/1989 Krolopp et al.
`4,811,377
`455/419
`_
`9/1991 Zicker et al,
`5,046,082
`__ 380,30
`8/1992 Anderson _______ __
`5,142,579
`,_ 330,/44
`5,153,919 10,/1992 Rccds, 111 ct a1_
`,_ 380/23
`5,204,902
`4/1993 Reeds, 111 et a1,
`5,224,160
`6,/1993 Paulini et al.
`............................ .. 380/4
`....................................
`I
`--
`-
`~
`r’
`-,
`2
`-
`8'/1994 M°°"’ """""""
`" 380/4
`53431527
`1/1995 Henrickson et al
`380/'23
`5,384,847
`1/1995 Akiyama et al,
`........................N 380/4
`5,386,468
`3/1995 Niiyama et al.
`........................ 455/413
`5,400,389
`8/.1995 Ugon et ,1,
`371/25,1
`5,442,645
`8,/1995 Kung ,,,,,,,,_
`,, 33030
`5,442,705
`5,475,753 12,/1995 Kikuchi
`__ 330,/25
`5,551,073
`8/1996 Saniinarco
`455/411
`5,606,315
`2,/1997 Gaskins ....... ..
`380/4
`5,737,701
`4,/1998 Rosenthal et al.
`.................... .. 455/411
`
`
`
`
`
`420
`
`-422
`
`Flash Program
`Memory
`
`400
`
`
`
`
`410
`
`412
`414
`416
`418
`
` EEPROM
`
`User Profile
`I
`MIN
`ESN
`I
`Signedlunsigned I
`Hash Value Pair
`
`
`MicroprocessorI-
`
`int NMI
`::
`
`407’
`
`403
`
`
`
`-404
`
`421
`
`Boot Code
`Interrupt
`
`Controller
`
`HASH Code L’
`
`Public Key
`Hardware-based
`405
`Authentic.
`Timers T1 & T2
`
`406
`Code
`409
`
`
`
`
`401
`
`1
`
`APPLE 1001
`
`1
`
`APPLE 1001
`
`

`
`U.S. Patent
`
`Feb. 15, 2000
`
`Sheet 1 of 12
`
`6,026,293
`
`2
`
`

`
`U.S. Patent
`
`Feb. 15,2000
`
`Sheet 2 of 12
`
`6,026,293
`
`Receive MIN m and ESN m
`
`Look up ESNSYS
`
`Based on MIN m
`
`
`
`200
`
`202
`
`206
`
`Permit
`
`Access
`
`204
`
`No
`
`
`
`208
`
`
`
`Prior Art
`
`Figure 2
`
`3
`
`

`
`U.S. Patent
`
`Feb. 15,2000
`
`Sheet 3 of 12
`
`6,026,293
`
`Sn
`
`N_.m
`
`Em
`
`©_.m
`
`Em
`
`mom
`
`om:
`
`_%
`
`
`
`LTboEw_>_Em._m2n_
`
`fimm.5_>_OM
`
`Nun
`
`t<_o_._n_
`
`omm
`
`s_<m
`
`own
`
`En
`
`080som
`
`m93?.
`
`_ommooo5o.o__2
`
`8m
`
`Em
`
`mom
`
`4
`
`
`
`
`
`

`
`U.S. Patent
`
`Feb. 15, 2000
`
`Sheet 4 of 12
`
`6,026,293
`
`VmSm_u_
`
`080-.o_Em5=<
`
`3..ouoo_._w<_._.5__eEoo
`
`
`
`me.I3xo__§n__o$B-9maE2._Ev
`
`
`
`N._.wE.m.mc.__._.
`
`Nov_ommmuoE9_u__>_
`
`.22E.
`
`
`
`
`
`mowmuoo~oom_E:tmE_Ev
`
`
`
`
`
`._mn_m:_m>fin:
`
`0:»
`
`NE»
`
`3;»
`
`min
`
`Ev
`
`um:m_wc3Bmcm_m..
`
`%_
`
`NovA>._OF_0_>_
`
`vmw
`
`’oov
`
`
`
`EEmo._n_cmmi
`
`mmv
`
`mow
`
`_>_<mON.»
`
`5
`
`
`
`
`
`

`
`U.S. Patent
`
`Feb. 15, 2000
`
`Sheet 5
`
`of 12
`
`6,026,293
`
`IROM code
`
`
`
` lROM code
`
`computes audit
` 502
`hash value based
`
`
`
`on memory
`contents
`
`504
`
`
`
` IROM code
`authenticates hash
`
`value pair stored in
`EEPROM
`
`Phone boots up
`from
`
`microprocessor
`
`500
`
`Figure 5
`
`514
`
`
`
` IROM code stores
`authenticated hash
`506
`
`value in protected
`SRAM
`
`
`
`
`
` Does audit
`hash value match
`
`authenticated hash
`
`
`PSRAM?
`
`
`value in
`
`508
`
`
`
`No
`
`Put phone into
`infinite loop
`
`
`
`Begin normal
`mobile telephone
`operation using
`flash code
`
`
`
`initiate periodic
`hash calculation
`
`process, set
`
`program counter.
`
`510
`
`6
`
`

`
`U.S. Patent
`
`Feb. 15, 2000
`
`Sheet 6 of 12
`
`6,026,293
`
`
`
`
`Continue
`Normal
`
`Operation
`
` Generate
`NMI & Regular
`Interrupt
`
`604
`
`Capture Next Byte in
`Hash Value
`Calculation
`
`606
`
`Figure 6
`
`Continue Normal
`
`Operation
`
`Regular Interrupt
`Serviced
`
`
`
`
`
`Disable
`Phone
`
`614
`
`515
`
`618
`
`Disable
`Phone
`
`622
`
`
`
`
` Calculate Next
`Segment of Hash
`Value Calculation
`
`Hash Calculation
`
`
`
`Hash Value
`Match’?
`
`Reset Hardware
`Timers
`
`7
`
`

`
`U.S. Patent
`
`Feb. 15, 2000
`
`Sheet 7 of 12
`
`6,026,293
`
`Nmn
`
`map
`
`it
`
`9.9
`
`
`
`m.o_>mn_..£mcE._.Ema
`
`:E£:<
`
`Ev
`
`.ommmoo_n_mmzsomw
`
`H.22
`
`E_
`
`.ommmooEo._o__>_
`
`OIn
`
`mow
`
`s_<m
`
`omv
`
`mIn
`
`
`
`.__mn_WEN)EWNI
`
`EENinmEo.n_Em:‘
`1umcm_w:3Bm:m_wA3Diaoems
`
`
`
`Em.mo.Ecmm_u_
`
`9__EEeme%.m
`
`muoo
`
`Zmwmow
`
`N239”.
`
`.o=cm£:<
`
`muoo
`
`cmmm.n-Em>>EmI
`
`N._.wE.w._.mE_._.
`
`_£_m_o8..
`
`
`saga.'28owe.38:m<:_o__eEoo
`—$22...>_.n_me.>8.
`
`
`mimcgmmuoofloomE_.EmE_
`
`_.Nv
`
`Ev
`
`8
`
`
`
`
`
`
`
`
`
`
`
`
`

`
`U.S. Patent
`
`Feb. 15, 2000
`
`Sheet 8 of 12
`
`6,026,293
`
`800
`
`
`
`Bring Telephone
`into Operation
`
`DTD Sends
`
`Programming
`Request Message
`with Rand1
`
`Figure 8
`
`822
`
`
`
`304
`
`Return Challenge
`Code (Rand2)
`
`
`
`Failure Message,
`Request Resend of
`Programming
`Request
`A
`
` Generate
`
`Authorization
`
`
`
`
`
`Generate
`
`
`
`Challenge
`Response based
`
`on Rand1, Rand2
`No
`and Private Key
`
`818
` Does Failure
`Count = MaxCount
`?
`
`Yes
`
`
`
`Return Challenge
`Response
`
`806
`
`303
`
`
`
`
`
`Count 5 Challenge
`
`
`Increment Failure
`
`and Public Key
`
`
`
`Response
`Valid?
`
` Put Telephone into
`
`Lock Telephone
`
`Programming
`Mode
`
`
`
`
`
`814
`
`810
`
`_ Process Challenge
`Response using
`Rand1, Rand2,
`
`9
`
`

`
`U.S. Patent
`
`Feb. 15, 2000
`
`Sheet 9 of 12
`
`6,026,293
`
`
`
`Bring Telephone
`into Operation
`
`
`DTD Sends ESN
`
`900
`
`902
`
`Programming
`Request Message
`with Randi
`
`906 _
`
`
`
`
`
`
`
`
`all Zeros
`'3
`
`Is ESN
`
`
`
`
`Initiate Challenge
`Response Process
`to Put Telephone
`into ESN
`
`Programming
`Mode
`
`904
`
`908
`
`
`
`10
`
`

`
`U.S. Patent
`
`Feb. 15, 2000
`
`Sheet 10 of 12
`
`6,026,293
`
`FIG. 10
`
`Bring Telephone
`Into Programming
`
`1002 \__/R
`
`DTD Downloads
`ESN
`Reprogramming
`
`Code Into PSRAM Controller Uses
`
`1004 \_/x Code in PSRAM to
`Zero ESN
`
`Initiate ESN
`1006 ‘\—-/‘\ Reprogramming
`Process
`
`Recalculate Hash
`
`/ "“
`
`Value
`
`1 008
`
`Pass New Hash
`
`Value Back to DTD
`
`1010 /__/
`
`’ for Digital
`Signature
`
`1012
`
`Return Signed
`Hash Value for
`
`Storage in
`EEPROM
`
`11
`
`11
`
`

`
`U.S. Patent
`
`Feb. 15,2000
`
`Sheet 11 of 12
`
`6,026,293
`
` PRO°E%S,3,OL$
`
`MEMORY
`cs R/W
`
` EEPROM
`CS RAN
`
`INT
`
`"W"
`
`
` _ _ _ _ _ _ _ _ _ _ . __.
`
`
`INTERRUPT
`CONTROLLER
`
`RIW
`
`cs
`
`<=
`
`
`
`CHIP SELECT "
`LOGIC i
`—-—_1
`
`A
`
`C
`
`SPVR
`
`' """ ' "S150" """" ‘ ' ‘
`
`HARDWARE
`
`BASED T1
`
`TIMERS T2
`CS
`
`
`
`12
`
`CD
`co
`LLI
`[E
`C}
`
`D <
`
`12
`
`

`
`U.S. Patent
`
`mF
`
`p.
`
`p.
`
`6,026,293
`
`5,___o
`
`M£3>8.%m_m>:n_
`
`m._:omw
`
`_omwmoo._n_
`
`MSESS
`
`13
`
`NF2:9“.
`
`13
`
`
`

`
`6,026,293
`
`1
`SYSTEM FOR PREVENTING ELECTRONIC
`MEMORY TAMPERING
`
`BACKGRO UND
`
`The invention relates to a system for preventing electronic
`memory manipulation, and in particular, to methods and
`apparatuses for preventing unauthorized manipulation of
`desirably secure memory contents in an electronic device.
`The invention disclosed herein relates to any electronic
`device whose memory contents are to be maintained in a
`secure or preferably unaltered state. Such a requirement may
`be necessitated by security reasons, such as preventing
`fraudulent manipulation of a cellular telephone memory, or
`for the purposes maintaining the integrity of electronic
`device operation in critical applications such as aircraft
`control or medical instrument operation. As disclosed and
`described herein, exemplary aspects of the invention are set
`out in the context of a system and method for securing one
`or more electronic memories within a cellular telephone.
`Also described herein is a system that permits access to, and
`manipulation of, one or more electronic memories in an
`electronic device, by use of a data transfer device that
`undergoes an authentication process before being permitted
`to access an electronic memory. The latter system also is
`described in the context of a cellular telephone application.
`Even though exemplary embodiments of the invention dis-
`closed herein are described in the context of a secure cellular
`
`telephone memory and a means for securely accessing and
`altering memory contents in a cellular telephone, it will be
`readily appreciated by those skilled in the art that systems in
`accordance with the invention can be applied to any elec-
`tronic system having one or more memories whose contents
`are to remain unaltered, or whose memories are to be
`accessed only by authorized means. Consequently, the scope
`of the invention is not intended to be limited by the exem-
`plary embodiments set out herein, but rather by the claims
`appended hereto and equivalents thereof.
`In the United States, losses due to cellular telephone fraud
`were projected at 600 million dollars in 1995. In response,
`manufacturers, service providers, the Federal Communica-
`tions Commission (FCC) and industry trade groups have
`been investigating a number of techniques for combating
`such fraud. Amajority of cellular telephone fraud carried out
`in the U.S. involves some form of memory manipulation to
`alter a cellular telcpho11e’s electronic serial number (ESN)
`which a cellular telephone must provide to establish com-
`munication. Consequently one fraud prevention technique,
`under consideration as a ruling by the FCC, is to require
`cellular telephone manufacturers to make all microprocessor
`code and the ESN unalterable. Some background on basic
`cellular communications is provided below to assist
`in
`illustrating the cellular telecommunications operating envi-
`ronment and associated problems that are addressed by
`systems incorporating the present invention.
`A simplified layout of a cellular communications system
`is depicted in FIG. 1. Mobile telephones M1—M10 commu-
`nicate with the fixed part of a public switched network by
`transmitting radio signals to, and receiving radio signals
`from, cellular base stations B1—B10. The cellular base
`stations B1—B10 are,
`in turn, connected to the public
`switched network via a Mobile Switching Center GVISC).
`Each base station B14310 transmits signals within a corre-
`sponding area, or “cell” C1—C1l). As depicted in FIG. 1, an
`idealized arrangement of base stations are organized so that
`the cells substantially cover an area in which mobile tele-
`phone communication ordinarily occurs (e.g., a metropolitan
`area), with a minimum amount of overlap.
`
`10
`
`25
`
`30
`
`35
`
`40
`
`45
`
`60
`
`65
`
`2
`When a user activates a mobile telephone within a cell,
`the mobile telephone transmits a signal indicating the mobile
`telephone’s presence to the cell’s base station. The mobile
`telephone transmits the signal, which may include its ESN,
`in a designated set-up chamnel that is continuously moni-
`tored by each base station. When the base station receives
`the mobile telephone’s signal, it registers the mobile tele-
`phone’s presence within the cell. This process can be
`:repeated periodically so that the mobile telephone is appro-
`priately registered in the event that it moves into another
`cell.
`
`When a mobile telephone number is dialed, a telephone
`company central oflice recognizes the number as a mobile
`telephone and forwards the call to the MSC. The MSC sends
`a paging message to certain base stations based on the dialed
`mobile telephone number and current registration informa-
`tion. One or more of the base stations transmits a page on its
`set-up channel. The dialed mobile telephone recognizes its
`identification on the set-up channel, and responds to the base
`station page. The mobile telephone also follows an instruc-
`tion to tune to an assigned voice channel and then initiates
`ringing. When a mobile user terminates a communication, a
`signaling tone is transmitted to the base station, and both
`sides release the voice channel.
`
`In the aforedescribed operation, mobile telephones are not
`connected permanently to a
`fixed network but
`instead,
`communicate through a so-ca1led“air interface” with a base
`station. This, of course, provides the flexibility of cellular
`communication systems, since a user can readily transport a
`mobile telephone without the restriction of being physically
`linked to a communication system. This same feature,
`however, also creates difficulties with respect to securing
`information transmitted over cellular telephone systems.
`For example,
`in ordinary wired telephone systems, a
`central office exchange can identify a particular subscriber to
`be billed for use of a telephone set by the communication
`line to which it is physically attached. Thus, fraudulent use
`of a subscriber’s account typically requires that a physical
`connection be made to the subscriber’s line. This presents a
`risk of discovery to a would-be fraudulent user.
`Cellular telecommunication systems, on the other hand,
`pose no such connection problem for the would-be fraudu-
`lent user since these systems communicate over an air
`interface. Absent protection schemes, fraudulent users can
`use another subscriber’s account by accessing the subscrib-
`er’s electronic serial number (ESN) which is transmitted by
`the mobile telephone to the network at various times for
`establishing and maintaining communications.
`In establishing a standard cellular connection, two iden-
`tification codes are transmitted by a mobile telephone to the
`system. These are the Mobile Identification Number (MIN)
`and the ESN. The MIN identifies a subscriber, while the
`ESN identifies the actual hardware being used by the sub-
`scriber. Accordingly, it is expected that the MIN correspond-
`ing to a particular ESN can, due to subscribers purchasing
`new equipment, change over time. The MIN is a 34-bit
`binary number derived from a 10-digit directory telephone
`number, while the ESN is a 32-bit binary number that
`uniquely identifies a mobile telephone. The ESN is typically
`set by the mobile telephone manufacturer.
`A conventional authentication method utilized in setting
`up communications in, for example, the Advanced Mobile
`Phone System (AMPS),
`is illustrated by the flowchart
`depicted in FIG. 2. Accord’ing to this method, a base station
`receives both an ESN and a MIN from the mobile telephone
`at block 200. These identification codes are designated
`
`14
`
`14
`
`

`
`6,026,293
`
`3
`ESN", and MIN,” to indicate that they are received from the
`mobile telephone. Next, at block 202 the base station
`retrieves an ESN”, which corresponds to MIN," from a
`system memory. ESNW, is then compared with ESN," at
`block 204. If the two serial numbers are the same, the flow
`proceeds to block 206 and system access is permitted.
`Otherwise, system access is denied at block 208.
`One drawback to this system is that it is relatively simple
`for a fraudulent user to assemble valid MIN/"ESN combina-
`tions by eavesdropping on the air interface or from other
`sources. Since accesses according to this conventional sys-
`tem are presumed valid if the MIN and ESN received from
`the mobile telephone correspond with those stored in system
`memory, all of the necessary information for fraudulent
`access can be obtained by electronic eavesdropping.
`In systems operating under the European GSM standard
`(Global System for Mobile Communication), the American
`TIA/EIA/"IS-136 standard and the Japanese Personal Digital
`Cellular standard radio communication systems,
`fraud
`resulting from eavesdropping is prevented by using a
`challenge-response method. According to the challenge-
`response method, each mobile telephone is associated with
`a unique secret key that
`is stored both in the mobile
`telephone and in a database in the network. An algorithm,
`which is unique to the system,
`is stored in each mobile
`telephone and in desired network nodes. When a call is set
`up, authentication is requested whereby the network sends a
`challenge (random number) to the mobile telephone. Based
`on the received challenge and the stored secret key, the
`mobile telephone calculates a response using the algorithm
`and transmits the response to the network. Simultaneously,
`the network calculates an “expected” response based on the
`same challenge and network-stored secret key. The network
`then receives the mobile telephone’s calculated response and
`compares the mobile telephone’s calculated response with
`the network’s calculated response. If a mismatch occurs,
`appropriate actions will take place, e.g., access is denied or
`a warning flag is set. Amethod for carrying out an authen-
`tication check between a base station and a mobile telephone
`in a mobile radio system is set out in U.S. Pat. No. 5,282,250
`to P. Dent et al.
`
`In a conventional analog system, such as AMPS, most
`fraud is perpetrated by fraudulent users who “clone” valid
`subscribers by acquiring valid MIN/ESN pairs and using the
`pairs to reprogram a cellular telephone. In more sophisti-
`cated cloning arrangements, a cellular telephone’s software
`is reprogrammed with so that it can use several MIN/ESN
`pairs in a practice called “tumbling.” A cellular telephone
`programmed with a tumbling routine randomly scrolls
`through and selects a MIN/ESN pair to initiate a call. As the
`fraud is identified by the service provider or subscriber, the
`MIN/ESN pairs are invalidated. When an invalid MIN/ESN
`pair is encountered when attempting to make a call, the
`tumbling routine simply cancels that MIN,/ESN pair and
`continues scrolling until a valid MIN/ESN pair is found.
`After all of the MIN/ESN pairs programmed into the cellular
`telephone are invalidated,
`the telephone user typically
`returns to the cloner to have a new set of MIN/ESN pairs
`programmed into the cellular telephone.
`Most cellular fraud involves some degree of memory
`manipulation. This is described in reference to FIG. 3 which
`depicts a block diagram of a conventional cellular telephone
`memory and processor arrangement. A controller 300 com-
`municates with a ROM or flash program memory 320, an
`EEPROM 310, and a random access memory (RAM) 330,
`using a memory bus 308. The program memory 320 is a
`non-volatile reacflwrite memory theat is used to store the
`
`10
`
`15
`
`25
`
`30
`
`35
`
`40
`
`45
`
`60
`
`65
`
`4
`majority of code used for general operation of the cellular
`telephone. The EEPROM 310 is used to store the MIN/ESN
`pair 314 and 316, and user profile information 312 (e.g.,
`speed dialing numbers) and the RAM is used for read/write
`scratchpad memory. Cloners have been known to monitor
`messaging between the memories and the controller 300 to
`gather information that is used to bypass or modify infor-
`mation stored in the flash memory 320 or the EEPROM 310.
`The most common method of telephone fraud has been
`the illegitimate use of test commands, which commands are
`intended for telephone servicing and repair, to change the
`ESN. However, more recently produced telephones are
`resistant to such tampering and have effectively eliminated
`this avenue of attack. Consequently, cloners have resorted to
`more sophisticated modes of attack.
`One such technique involves removing the original
`EEPROM 310 containing the ESN 314 and replacing it.
`Following its removal, the EEPROM is studied to decipher
`its contents. The deciphered contents are then used to
`program a replacement EEPROM with a misappropriated
`ESN/MIN pair from a valid user’s account. This technique
`may be attractive to the cloner if he or she only wants to
`change one ESN at one time. But the technique. is labor
`intensive and poorly skilled cloners may damage printed
`circuits if not extremely careful.
`A large step in cloning sophistication involves analyzing
`a telephone’s microprocessor program code and rewriting
`one or more sections of the code to transmit a fraudulent
`
`identity (ESN/MIN pair) to a cellular base station. This often
`involves reverse engineering portions of the telephone hard-
`ware design, and requires significant understanding of
`imbedded software design. The obvious advantage of this
`method, however, is that once the modification is complete,
`the telephone can be reprogrammed with a new identity as
`often as desired.
`
`The most sophisticated attacks combine alterations of the
`cellular telephone’s microprocessor code as described
`above,
`in combination with hardware modification. One
`example of this technique uses a so-called “shadow
`memory” to avoid detection by conventional memory vali-
`dation routines which only execute during the boot-up
`process when the cellular telephone is first turned on. The
`boot-up process is carried out pursuant to a small portion of
`boot code 304 contained in the controller 300 (see FIG. 3)
`The boot-up process configures the cellular telephone into
`an in-service condition and sets a program counter in the
`microprocessor 301 to an appropriate location in the flash
`memory 320. When the process is complete, the controller
`300 may illuminate an LED 318 (or other equivalent signal)
`indicating to a user that the telephone is in service. A cloner
`can monitor a connection 306 between the controller 300
`and the LED 318 to subvert the execution of normal oper-
`ating code in the flash memory 320 as described in more
`detail as follows.
`
`The flash memory 320 contained in a typical modern
`cellular telephone has an addressable capacity of 512K. A
`cloner may remove the flash memory 320, and replace it
`with a 1024K shadow memory 322 after copying the con-
`tents of the original flash memory 320 into the first 512K of
`the 1024K shadow memory 322. During boot-up, any
`accesses to program memory are successfully directed in the
`first 512K of the flash memory 320. The cloner may then
`monitor a signal available in the telephone which indicates
`the boot process is complete (such as the LED signal 306)
`in order to switch all future program memory accesses to the
`shadow memory 322. Thereafter the cellular telephone oper-
`
`15
`
`15
`
`

`
`6,026,293
`
`5
`ates in accordance with instructions found in the shadow
`memory 322 which memory can be programmed to contain
`tumbling routine code and corresponding MIN/ESN pairs.
`Because most cellular fraud is based on some degree of
`memory manipulation, the Federal Communications Com-
`mission (FCC) is presently considering a solution directed to
`this aspect of cellular telephone fraud. The solution is
`incorporated in a proposed FCC Rule designated § 22.219.
`As presently written, § 22.919 prohibits a mobile tele-
`phone’s operating software from being alterable; requires an
`ESN to be factory set and incapable of being altered,
`transferred, removed or manipulated in any manner; and
`requires the mobile transmitter to become inoperable if any
`party, including a manufacturer, attempts to remove, tamper
`with or change the ESN, the system logic, or firmware of the
`cellular telephone.
`From a consumer’s standpoint, the present ability of a
`manufacturer or its factory authorized service representa-
`tives to program cellular telephones makes it easy to replace
`cellular telephones that are not operating properly. For
`example, if a subscriber’s cellular telephone is not operating
`properly, the subscriber can obtain a new unit from a factory
`authorized representative and have it programmed to contain
`the same electronic “personality” of the old unit. The
`electronic personality of a cellular telephone includes not
`only the ESN, but also the user profile and a substantial
`amount of information programmed into the unit by the
`subscriber such as personal and/or business telephone num-
`bers. Repair/replacement programs and the technology to
`make quick and easy ESN and other memory changes to
`cellular telephones have been developed at the insistence of
`cellular service providers who do not want their subscribers
`to be inconvenienced by defective terminals.
`Under FCC § ‘22.919 a subscriber in the situation
`described above will still be able to obtain a new mobile unit
`if their old unit is defective. However, because a new, fixed
`ESN will be associated with the new unit, the new ESN
`information will have to be communicated to the cellular
`
`carrier who will have to program it into their database. This
`can result in a lengthy period of time during which the
`subscriber will not have service. The subscriber will also
`have to reprogram their cellular telephone with any personal
`or business telephone numbers. A much more significant
`problem with § 22.919 is the adverse impact it will have on
`the ability of cellular service providers to furnish their
`subscribers with system upgrades by programming or
`re-programming of their cellular telephones.
`The practical impact § 22.919 may have on the cellular
`industry’s ability to upgrade systems is demonstrated as
`follows. The use of a digital control channel as specified, for
`example, in the TIA/EIA/IS-136 standard, enables cellular
`carriers to olfer new extended services such as a short
`
`messaging service. If carriers, manufacturers or authorized
`agents are allowed to make changes to the software and/or
`firmware of a cellular telephone, such services can be made
`available to subscribers quickly and efficiently through
`software upgrades of the terminals. Under § 22.919 (in its
`present form), neither a manufacturer, a manufacturer’s
`authorized service representative nor a cellular carrier will
`be able to make such software changes. The only way a
`carrier will be able to offer a subscriber a system enhance-
`ment will be to require the subscriber to purchase a new
`cellular telephone.
`To ameliorate the impact of § 22.919 on subscribers as
`well as on the manufacturing community, the FCC stated
`that the rule would be applicable to cellular telephones for
`
`10
`
`25
`
`30
`
`35
`
`40
`
`45
`
`60
`
`65
`
`6
`which applications for initial type acceptance were filed
`after Jan. 1, 1995. In etfect, the FCC has grandfathered the
`20 million cellular telephones currently in operation as well
`as the millions of cellular telephones placed in service after
`Jan. 1, 1995, based upon applications for type acceptance
`filed prior to Jan. 1, 1995. The fact that there are so many
`cellular units already in the marketplace whose electronic
`information can be manipulated for illegal purposes suggests
`that § 22.919 will have Very little impact on the fraud
`problem. Those entities who commit fraud by illegally
`tampering with E.SNs can continue to do so by using the
`millions of terminals that are not subject to the § 22.919
`restrictions.
`
`As can be appreciated from the foregoing, provision of a
`cellular telephone having a secure memory is highly desir-
`able. At present there appear to be no solutions for retrofit-
`ting cellular telephones to make them resistant to tampering.
`In addition there appear to be no methods or apparatuses for
`providing updates to electronic device memories in such a
`way that only authorized access is ensured.
`
`SUMMARY
`
`These and other drawbacks and limitations of conven-
`
`tional methods and proposed solutions for preventing cel-
`lular telephone memory tampering, and electronic memory
`tampering generally, are overcome by the present invention,
`exemplary embodiments of which protect electronic
`memory contents from unauthorized access and manipula-
`tion.
`
`In accordance with one aspect of the invention, security is
`achieved by periodically auditing electronic memory con-
`tents in an electronic device to ensure that the contents have
`
`not been tampered with. The audit involves performing a
`hash calculation over selected contents of the electronic
`memory to derive an audit hash value, or audit signature, of
`such contents. The audit hash value is compared with a valid
`hash Value previously derived from authentic memory con-
`tents. The valid hash value is preferably stored in an
`encrypted form within an electronic memory and decrypted
`only for purposes of comparison. A disparity between the
`audit hash value and the valid hash value can indicate
`memory tampering, wherefore an electronic device contain-
`ing the electronic memory can be rendered inoperative, or a
`waming indication can be made.
`In accordance with another aspect of the invention, elec-
`tronic memory contents, such as those contained in a cellular
`telephone memory (including the cellular telephone’s ESN),
`can be updated by a data transfer device that is authenticated
`before being permitted access to the memory contents. Data
`transfer device authentication involves the use of a public/
`private key authentication scheme. When the data transfer
`device interfaces with the electronic device and requests
`access, the electronic device initiates a process to authenti-
`cate the data transfer device. This can involve exchanging a
`series of messages between the electronic device and the
`data transfer device. A public key is maintained within the
`electronic device that
`is used to decrypt a message
`encrypted, or “signed” with a secret private key maintained
`within the data transfer device. More particularly, when the
`data transfer device requests to program the electronic
`device, an authentication process is initiated. The electronic
`device responds by sending a challenge message back to the
`data transfer device. The challenge message is signed with
`a digital signature using the private key maintained in the
`data transfer device. The signed challenge message is sent
`back to the electronic device which authenticates it using the
`
`16
`
`16
`
`

`
`6,026,293
`
`7
`public key. Once authenticated, the data transfer device is
`permitted access to privileged commands and capabilities in
`the electronic device.
`
`Following any reprogramming of an electronic memory,
`the electronic device performs a hash calculation to derive a
`new (valid) hash value on the modified memory contents.
`The new hash value is returned to the data transfer device for
`a digital signature by the private key. The signed new hash
`value is returned to the electronic device for storage. When
`the electronic device performs a subsequent memory audit,
`the resulting audit hash value is compared to the new valid
`hash value.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`The foregoing and other objects, features and advantages
`of the present invention will be more readily understood
`upon reading this description in conjunction with the
`drawings, in which:
`FIG. 1 depicts an idealized layout of a cellular commu-
`nications system;
`FIG. 2 depicts a flow diagram illustrating a conventional
`cellular authentication method for setting up a cellular call;
`FIG. 3 depicts a conventional cellular telephone processor
`and memory arrangement;
`FIG. 4 depicts a cellular telephone processor and memory
`arrangement in accordance with an exemplary embodiment
`of the invention;
`FIG. 5 depicts a flow diagram illustrating an exemplary
`cellular telephone start up process in accordance with an
`embodiment of the invention;
`FIG. 6 depicts a flow diagram illustrating an exemplary
`periodic memory validation process in accordance with the
`invention;
`FIG. 7 depicts an exemplary data transfer device in
`accordance with an embodiment of the invention:
`
`FIG. 8 depicts a flow diagram illustrating an exemplary
`process for authenticating the data transfer device in accor-
`dance with an embodiment of the invention;
`FIG. 9 depicts a flow diagram illustrating an exemplary
`process for entering an initial ESN into a cellular memory in
`accordance with an embodiment of the invention;
`FIG. 10 depicts a flow diagram illustrating an exemplary
`process for reprogramming an established ESN in accor-
`dance with the invention; and
`in
`FIG. 11 depicts a protected memory arrangement
`accordance with an exemplary embodiment of the invention;
`and
`
`FIG. 12 depicts an exemplary cellular telephone program-
`mer in accordance with an embodiment of the inven

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket