Title of Invention

A METHOD FOR PREVENTING HACKING OF A BINARY CODE IN A MOBILE COMMUNICATION TERMINAL

Abstract A method for method for preventing the binary code hacking in a mobile communication terminal is provided. The method for preventing the binary code hacking comprises the steps of, in case of the download mode of the binary code, checking whether the binary code version information to be downloaded is received, decoding pre-stored release information if the binary code version information to be downloaded is received, comparing the next binary code version information included in the decoded release information with the binary code version information to be downloaded, and downloading the binary code if the next binary code version information is the same as the binary code version information to be download.
Full Text METHOD FOR PREVENTING BINARY CODE HACKING
IN MOBILE COMMUNICATION TERMINAL
PRIORITY
This application claims priority under 35 U.S.C. § 119 to an application
entitled "Method For Protecting Binary Code Hacking In Mobile Station
Terminal" filed in the Korean Intellectual Property Office on July 23, 2005 and
assigned Serial No. 2005-67049, the contents of which are incorporated herein by
reference.
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to a method for preventing the binary code
hacking in a mobile communication terminal, and in particular, to a method for
preventing the binary code hacking by encoding a part of the binary code area in
mobile communication terminal.
2. Description of the Related Art
Mobile communication terminals are widely used due to their convenient
portability. Manufacturers are developing mobile communication terminals with
advanced functions, in an effort to secure more users. For example, the mobile
communication terminals provide various functions of a phone book, a game, a
scheduler, a short message, an internet, an e-mail, a morning call, a MPEG
Layer3, a digital camera and so on.
As described above, along with developing the mobile communication
terminal with advanced functions, the mobile terminal is often upgraded to add
new functions. Every manufacturer has its own software to upgrade the mobile

communication terminal. Each manufacturer uses hardware lock or software lock
technology so as to prevent illegal software copying.
Hardware lock checks if the binary code is illegally copied by checking
the portion where hardware lock is positioned. Illegal copy check is performed
also in download tool.
As described above, hardware lock and software lock are used for
preventing the download of illegal software in a mobile communication terminal,
nowever, hardware lock is expensive not enough to be used in low end mobile
phone. Also, software lock may be hacked. In this case, hackers may change
download routines of the binary code through disassembling.
SUMMARY OF THE INVENTION
Accordingly, an object of the present invention is to provide a method for
preventing a mobile communication terminal from downloading of illegal
software.

Another object of the present invention is to provide a method for
preventing the binary code hacking from hackers by encoding a part of the binary
code to be downloaded in the mobile communication terminal.
A further object of the present invention is to provide a method for
preventing illegal software copying by providing the next binary code version
information when downloading the binary code.
According to an aspect of the present invention for achieving the above
objects, a method for preventing the binary code hacking in a mobile
communication terminal comprises the steps of, in case of download mode of the

binary, checking whether the binary version information to be downloaded is
received, decoding pre-stored release information if the binary version
information to be downloaded is received, and comparing the next binary version
information included in the decoding release information with the binary version
information to be downloaded, if the next binary version information is the same
as the binary version information to be downloaded, the binary is downloaded.

BRIEF DESCRIPTION OF THE ACCOMPANYING DRAWINGS

The above and other objects, features, and advantages of the present
invention will become more apparent from the following detailed description
when taken in conjunction with the accompanying drawings in which:
FIG. 1 is a block diagram of a mobile communication terminal according
to the present invention;
FIG. 2 is a flowchart illustrating a procedure for preventing the binary
code hacking in a mobile communication terminal according to an embodiment
of the present invention;
FIG. 3 is a communication route between a mobile terminal and a
download tool illustrating a procedure for preventing the binary code hacking
according to an embodiment of the present invention; and
FIG. 4 is a binary code configuration according to an embodiment of the
present invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
Preferred embodiments of the present invention will be described herein
below with reference to the accompanying drawings. In the following description,
well-known functions or constructions are not described in detail because they
would obscure the present invention in unnecessary detail.

Hereinafter, the present invention will be described a technology for
preventing illegal software download in a mobile communication terminal. In
other words, a technology for preventing the illegal software download, which
prevents the binary code hacking by encoding a part of code area of the binary to
be downloaded in the mobile communication terminal, will be described.
FIG. 1 illustrates a block diagram of a mobile communication terminal
according to the present invention. The mobile terminal includes a cellular phone,
a Personal Communication System (PCS), a Personal Data Assistant (PDA), and
an international mobile communication-2000 (IMT2000), and the like. The
following description will now be provided in view of general structures of the
above terminals.
Referring to FIG. 1, a Micro-Processor Unit (MPU) 100 controls an
overall operation of the mobile communication terminal. For example, the MPU
100 is responsible for processing and controlling voice and data communication.
In addition, the MPU 100 determines the binary code downloading by comparing
the next release information included in the binary code in the terminal with
version information of the binary to be downloaded, according to the present
invention. Thus, a detailed description of the typical processing and controlling
operation of the MPU 100 will be omitted. Here, page unit means messages
displayed in one screen.
Read Only Memory (ROM) 102 stores a microcode of a program for
processing and controlling the MPU and all reference data, in particular, for
determining binary code downloading by comparing the next release information
included in the binary code in the terminal with binary version information to be
downloaded according to the present invention. A Random Access Memory
(RAM) 104, which is a working memory of the MPU, stores temporary data
being generated while performing all programs. A flash Rom 106 stores various

updatable data to be kept, such as a phone book, an outgoing message, and an
incoming message.
Key pad 108 includes numeric keys of digits 0-9 and a plurality of
function keys, such as a MUNU key, a CANCEL (REMOVE) key, an ENTER
key, a TALK key, an END key, an internet connection key, navigation keys (or
direction keys) (▲/▼/◄/►). The key pad provides a key input data to the MPU
100. The key input data corresponds to a key that is pressed by the user. A display
unit 110 displays status information, limited number of characters, large moving
pictures and still pictures, and the like, which is generating while the mobile
terminal operates. Liquid Crystal Display (LCD) is used as the display unit 100.
A Coder-Decoder (CODEC) 112 connected to the MPU 100, a speaker
116 and a microphone 114 connected to the CODEC are audio input/output
blocks in call communication and voice record. The MPU 100 produces PCM
data and the CODEC 112 converts the PCM data into analog audio signals. The
analog audio signals are outputted through the speaker 116. Also, the CODEC
112 converts analog audio signals received through the microphone 114 into
PCM data and provides the MPU to the PCM data.
Radio Frequency (RF) unit 120 drops a frequency of an RF signal
received through an antenna 118 and provides the RF signal to a baseband
processor 112. Also, the RF unit 120 increases a frequency of a baseband signal
provided from the baseband processor 122, transmits the baseband signals
through the antenna 118. The baseband processor 112 processes the baseband
signals which are transmitted/received between the RF unit 120 and the MPU
100. For example, in case of the data transmission, the baseband processor 112
performs channel coding and spreading transmitting data. In case of the data
reception, the baseband processor 112 performs de-spreading and channel
decoding for received data.

FIG. 2 illustrates a procedure for preventing the binary code hacking in a
mobile communication terminal according to an embodiment of the present
invention. Here, a Download Tool is an application program for transmitting a
new binary code from a Personal Computer (PC) to the mobile terminal.
Referring to FIG. 2, in order to transmit a binary code from a Download
Tool in the PC to the mobile communication terminal, a MPU 100 checks if a
download starting signal is received (Step 201). If the download starting key in
the PC is input for transmitting to software from the PC to the terminal, the PC
transmits a download starting signal.
If the binary code starting signal is not received, the MPU 100 performs
a corresponding mode (e.g., waiting mode) in step 213. If the binary code
download starting signal is received, the MPU 100 converts to the binary code
download mode, and checks if the binary code version information to be
downloaded is received in step 203.
If the binary code version information is received, the MPU 100 decodes
the encoded release information stored in the mobile communication terminal in
step 205, and checks the next binary code version information included in the
encoded release information which has been downloaded in previous binary code.
That is, the release information includes the next binary code version information,
the encoded block information of the next binary code, and System ID (SID) and
Network ID (NID) related to an operator.
After this, the MPU 100 proceeds to step 207 and compares the binary
code version information to be downloaded with the next binary code version
information included in the release information.

If the two version information (i.e., the binary code version information
to be downloaded and the next binary code version information) is different, the
MPU 100 recognizes the binary code as illegal software by hacking and does not
allow the binary code to be downloaded, and ends the algorithm. While not
shown, if the number of times which the binary code download has not been
allowed exceeds the designated number of times, the MPU 100 prevents the
entering of binary code download mode.
If the two version information is the same, the MPU 100 loads download
module into the RAM 104 in order to download the binary code in step 209,
downloads the binary code in step 211, and ends the algorithm. Here, a part of
the binary code is encoded in order to prevent hacking, as illustrated FIG. 4. Also,
the encoding is performed in units of physical block or logical module.
Referring to FIG. 4, a general binary code has a boot area 401 and code
areas 403. According to the present invention, in order to prevent the binary code
hacking, a part of the code area is encoded, thereby selectively decoding them for
comparing with the next downloading binary code. Here, some parts of the
encoded code area are contained also in previous version binary code and the
download module is included in the encoding area.
FIG. 3 is a flowchart illustrating a procedure for preventing the binary
code hacking according to an embodiment of the present invention. Hereinafter, a
procedure for preventing the binary code hacking between a terminal and a
download tool will be described. Also, the download tool is assumed that it is an
application program for transmitting a new binary code from a PC (Personal
Computer) to the terminal.
Referring to FIG. 3, if a download starting signal is transmitted from the
download tool 303 to the terminal 301 (Step 311), the terminal 301 transmits an

ACK which is acknowledging response to the download starting signal receipt to
the download tool 303 (Step 313).
After receiving the response to the download starting signal receipt, the
download tool 303 transmits the version information of the binary code to be
downloaded to the terminal 301 (Step 315). The terminal 301 decodes the pre-
stored release information and compares the next binary code version
information included in the release information with the binary code version
information to be downloaded (Step 317). The encoded release information is
downloaded in previous downloaded binary code and included the encoded block
information of the next binary code, SID (System ID) and NID (Network ID)
related to an operator.
If the two version information (the binary code information to be
downloaded and the next binary code version information) is the same, the
terminal 301 transmits an ACK to the download tool 303, if not, transmits a
NACK (Step 319).
After that, the terminal 301 loads the download module into the RAM in
order to download the binary code, and transmits to the download tool 303 the
ACK which is a signal for notifying that the binary code has been prepared to
download (Step 321). The binary code downloading is performed by deleting
Flash area and writes the downloaded binary code in it. Since all the areas related
to system are deleted, if the download module is not loaded into the RAM, it
does not operate download mode. Thus, the binary code should be loaded into the
RAM for downloading. If the download module loaded into the RAM may be
hacked, thus the download module should be encoded, thereby preventing
hacking. The encoded download module is decoded and loaded into the RAM.
Upon receiving the download preparation completed signal, the binary

code is transmitted to the terminal 301 (Step 323). The terminal 301 transmits the
download completed signal to the download tool 303 when it is received all the
binary code (Step 325). When the download of the binary code ends, the
download tool 303 requests a Reset of the download module to the terminal 301
(Step 327), the terminal receives the reset request signal, and then the terminal
301 resets the download module (Step 329). The binary code to be downloaded is
encoded some part of its code area for preventing hacking as illustrated FIG. 4.
Also, the encoding generates in units of physical block or logical module.
An embodiment of a technology for preventing downloading of illegal
software by encoding some parts of the software has been described. As another
embodiment, after decoding a specific information value overlapped in code
areas, an encoded download module, and an EFS(Embedded File System) file
encoded in another format, it can be confirmed if the software is illegally copied
depending whether the values are the same or not.
While the present invention has been shown and described with reference
to certain preferred embodiments thereof, it will be understood by those skilled in
the art that various changes in form and details may be made therein without
departing from the spirit and scope of the present invention as defined by the
appended claims.
As described above, the present invention advantageously enables to
prevent downloading of the illegal software by encoding some part of code areas
of the binary code to be downloaded in a mobile communication terminal.

WE CLAIM
1. A method for preventing hacking of a binary code in a mobile
communication terminal, the terminal (301) includes one of a cellular
phone, a Personal Communication system (PCs), a Personal data Assistant
(PDA), and an international mobile communication - 2000, the terminal
(301) having a ROM (102) which a stores a microcode of a program; a
RAM (104) operating as a working memory of which a MPu (100), a flash
ROM (106) stores several updated data to be maintained; a key pad
(108), a CODEC (112) connected to the MPU (100) to convert PCM data
generated by the MPU (100) into analog audio signals including converting
audio signals received from a microphone (114) into PCM data to be fed
to the MPU (100); and a Radio frequency unit (120) receiving a RF-signal
from an antenna (118) and provides the RF-signal after reducing the
frequency to a baseband processor (112), the baseband processor (112)
providing baseband signals to the RF-unit (120) which after an increase of
the frequency is transmitted through the antenna (118), the baseband
processor (112) further processing the baseband signals being transmitted
/ received between the RF-unit (120) and the MPU(100), the micro-
processor unit (100) being enabled to process and control the voice and
data communication of the terminal including determining the binary code
downloading by comparing the next release information included in the
binary code in the terminal with version information of the binary code to
be downloaded, the method comprising the steps of:

decoding (205) release information stored in the communication terminal;
comparing (207) a next binary code version information included in the
decoded release information with a binary code version information to be
downloaded; and
downloading (211) a binary code version information if the next binary
code version information is the same as the binary code information to be
downloaded.
2. The method as claimed in claim 1, wherein the release information is
encoded and included in previous downloaded binary code.
3. The method as claimed in claim 1, wherein the release information
comprises the next download binary code version information, SID
(System ID) and NID (network ID) related to an operator.
4. The method as claimed in claim 1, comprising the step of loading (209)
the download module of the binary code into the RAM (104) if the next
binary code version information is the same as the binary code version
information to be downloaded.
5. The method as claimed in claim 5, wherein the download module, which is
encoded to prevent hacking, is decoded, thereby loading the decoded
download module into the RAM (104) when downloaded.

6. The method as claimed in claim 1, wherein the binary code is encoded
some part of core areas (401, 403).
7. The method as claimed in claim 6, wherein the encoded binary code is
encoded in units of physical block or logical module.
8. The method as claimed in claim 1, wherein the step of downloading a
binary code is prohibited if the next binary code version information is not
the same as the binary code version information to be downloaded.
9. A method for preventing binary code hacking between a mobile
communication terminal (301) and a download tool (303), the terminal
(301) includes one of a cellular phone, a Personal Communication system
(PCs), a Personal data Assistant (PDA), and an international mobile
communication - 2000, the terminal (301) having a ROM (102) stores a
microcode of a program; a RAM (104) operating as a working memory of
which a MPu (100), a flash ROM (106) stores several updated data to be
maintained; a key pad (108), a CODEC (112) connected to the MPU (100)
to convert PCM data generated by the MPU (100) into analog audio
signals including converting audio signals received from a microphone
(114) into PCM data to be fed to the MPU (100); and a Radio frequency
unit (120) receiving a RF-signal from an antenna (118) and provides the
RF-signal after reducing the frequency to a baseband processor (112), the
baseband processor (112) providing baseband signals to the RF-unit (120)
which after an increase of the frequency is transmitted through the

antenna (118), the baseband processor (112) further processing the
baseband signals being transmitted / received between the RF-unit (120)
and the MPU(100), the micro-processor unit (100) being enabled to
process and control the voice and data communication of the terminal
including determining the binary code downloading by comparing the next
release information included in the binary code in the terminal with
version information of the binary code to be downloaded, the method
comprising the steps of:
decoding (315) release information stored in the mobile communication
terminal (301) when a binary code version information to be downloaded
is received from the download tool (303);
comparing (317) a next binary code version information included in the
decoded release information with the binary code version information to
be downloaded; and
downloading (323) a binary code if the next binary code version
information is the same as the binary code version information to be
downloaded.
10.The method as claimed in claim 9, wherein the step of decoding the
prestored release information comprises the steps of:
- transmitting (311) a download starting signal from the download tool
(303) to the terminal (301);

- transmitting (313) an ACK signal from the terminal (301) constituting an
acknowledge response to the download tool (303); and
- transmitting (315) the version information of the downloadable binary
code to the terminal (301) by the download tool (303).
11.The method as claimed in claim 9, wherein the coded release information
is included in previously downloaded binary code.
12.The method as claimed in claim 9, wherein the release information
comprises the next download binary code information, SID (System ID)
and NID (Network ID) related to an operator.
13.The method as claimed in claim 9, comprising the step of loading by the
terminal (301) the download module of the binary code into the RAM
(104) if the next binary code version information is the same as the binary
code version information to be downloaded.
14.The method as claimed in claim 13, wherein the step of downloading the
binary code comprises the steps of:
- transmitting (321) by the terminal (301) to the download tool (303) an
Ack signal representing a notification that the binary code has been
prepared to be downloaded;

- transmitting (323) the binary code by the download tool (303) to the
terminal (301);
- transmitting (325) by the terminal (301) a downloading complete signal
to the download module by the download tool (303) to the terminal
(301); and
- resetting (329) the download module by the terminal (301) on receipt of
reset request signal from the download tool (303).
15.The method as claimed in claim 9, wherein the binary code is encoded in
units of physical block or logical module.

Documents:

00405-kol-2006-abstract.pdf

00405-kol-2006-claims.pdf

00405-kol-2006-correspondence other.pdf

00405-kol-2006-description (complete).pdf

00405-kol-2006-drawings.pdf

00405-kol-2006-form-1.pdf

00405-kol-2006-form-2.pdf

00405-kol-2006-form-3.pdf

00405-kol-2006-form-5.pdf

00405-kol-2006-g.p.a.pdf

00405-kol-2006-priority document.pdf

405-kol-2006-correspondence.pdf

405-kol-2006-examination report.pdf

405-kol-2006-form 18.pdf

405-kol-2006-form 3.pdf

405-kol-2006-form 5.pdf

405-kol-2006-gpa.pdf

405-kol-2006-granted-abstract.pdf

405-kol-2006-granted-claims.pdf

405-kol-2006-granted-description (complete).pdf

405-kol-2006-granted-drawings.pdf

405-kol-2006-granted-form 1.pdf

405-kol-2006-granted-form 2.pdf

405-kol-2006-granted-specification.pdf

405-kol-2006-others.pdf

405-kol-2006-priority document.pdf

405-kol-2006-reply to examination report.pdf

405-kol-2006-translated copy of priority document.pdf

abstract-00405-kol-2006.jpg


Patent Number 251052
Indian Patent Application Number 405/KOL/2006
PG Journal Number 08/2012
Publication Date 24-Feb-2012
Grant Date 20-Feb-2012
Date of Filing 03-May-2006
Name of Patentee SAMSUNG ELECTRONICS CO., LTD.
Applicant Address 416, MAETAN-DONG, YEONGTON-GU, SUWON-SI, GYEONGGI-DO
Inventors:
# Inventor's Name Inventor's Address
1 LEE, CHONG-HOON #204, DOORIVIL, MAETAN3-DONG 1254-9, YEONGTONG-GU, SUWON-SI, GYEONGGI-DO
2 NA, MIN-KI #103-808, DOOSAN APT, SINHEUNG 2-DONG, SEONGNAM-GU, SEONGNAM-SI, GYEONGGI-DO
PCT International Classification Number H04B1/00
PCT International Application Number N/A
PCT International Filing date
PCT Conventions:
# PCT Application Number Date of Convention Priority Country
1 2005-0067049 2005-07-23 Republic of Korea