# US 11,308,238 B2 · Server and method for identifying integrity of application

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,308,238 B2
- Document ID: US11308238B2
- Status: Granted
- Kind: B2
- Application number: 16/601,983
- Filed: 2019-10-15
- Published: 2020-05-28
- Granted: 2022-04-19
- Earliest claimed: 2018-11-28
- Assignees: Samsung Electronics Co., Ltd.
- Applicants: Samsung Electronics Co., Ltd.
- Inventors: Dongsun Lee; Donguk Kim
- Web page: https://patentgrep.com/patent/US11308238B2

## CPC

- G06F 21/64: Protecting data integrity, e.g. using checksums, certificates or signatures
- G06F 21/44: Program or device authentication
- H04L 9/0643: {Hash functions, e.g. MD5, SHA, HMAC or f9 MAC}
- H04L 9/3236: {using cryptographic hash functions}
- H04L 9/3247: {involving digital signatures}
- H04L 63/06: {for supporting key management in a packet data network (cryptographic mechanisms or cryptographic arrangements for key management H04L9/08)}
- H04L 63/123: {received data contents, e.g. message integrity}
- H04L 63/1433: {Vulnerability analysis}
- H04L 2209/80: Wireless
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A server is provided. The server according to an embodiment includes a memory, a communicator, and a processor configured to transmit an application check module for identifying integrity of an application stored in an electronic apparatus to the electronic apparatus through the communicator, and, based on identification information corresponding to the application being received from the electronic apparatus, identify integrity of the application based on the received identification information, wherein the processor is further configured to identify integrity of the application based on whether the received identification information is signed by a signature key included in the application check module, and whether the received identification information matches identification information that is pre-stored in the memory.

## Claims

### Claim 1

A server comprising:
a memory;
a communicator; and
a processor configured to:
transmit an application check module for identifying integrity of an application stored in an electronic apparatus to the electronic apparatus through the communicator, and
based on identification information corresponding to the application being received from the electronic apparatus, identify integrity of the application based on the received identification information,
wherein the processor is further configured to identify integrity of the application based on:
whether the received identification information is signed by a signing key included in the application check module, and
whether the received identification information matches identification information that is pre-stored in the memory, and
wherein the processor is further configured to, based on a signal requesting to identify integrity of the application being received from the electronic apparatus, generate the signing key and transmit the application check module including the generated signing key to the electronic apparatus.

### Claim 2 (depends on 1)

The server as claimed in claim 1, wherein the processor is further configured to deny the integrity of the application based on the received identification information not being signed by the signing key, or based on the received identification information failing to match the pre-stored identification information.

### Claim 3 (depends on 2)

The server as claimed in claim 2, wherein the processor is further configured to transmit a message for inducing deletion of the application to the electronic apparatus.

### Claim 4 (depends on 1)

The server as claimed in claim 1, wherein the processor is further configured to receive a signal requesting to identify integrity of an application stored in an external electronic apparatus from the electronic apparatus.

### Claim 5 (depends on 4)

The server as claimed in claim 4, wherein the processor is further configured to transmit an application check module for identifying integrity of the application stored in the external electronic apparatus to the external electronic apparatus.

### Claim 6 (depends on 5)

The server as claimed in claim 5, wherein the processor is further configured, identity of the external electronic apparatus being denied, to transmit to the electronic apparatus a message inducing deletion of the application stored in the external electronic apparatus.

### Claim 7 (depends on 1)

The server as claimed in claim 1, wherein the processor is further configured to, based on the signal requesting to identify integrity of the application being received again, generate a new signing key that is different from the signing key, and transmit the application check module including the new signing key to the electronic apparatus.

### Claim 8 (depends on 1)

The server as claimed in claim 1, wherein the processor is further configured to obfuscate the signing key and transmit the application check module including the obfuscated signing key to the electronic apparatus.

### Claim 9 (depends on 1)

The server as claimed in claim 1,
wherein the identification information includes a signature value obtained by signing a hash value corresponding to the application with the signing key, and
wherein the processor is further configured to, validity of the signature value being verified based on a signature verification algorithm, identify that the received identification information is signed by the signing key.

### Claim 10 (depends on 1)

The server as claimed in claim 1, wherein the processor is further configured to transmit the application check module including the signing key to the electronic apparatus at a predetermined time interval.

### Claim 11 (depends on 1)

The server as claimed in claim 1, wherein the processor is further configured to, based on a signal requesting a service of the application being received, transmit the application check module including the signing key to the electronic apparatus.

### Claim 12 (depends on 1)

The server as claimed in claim 1, wherein the processor is further configured to, based on the identification information being received after a predetermined period of time passes from a time at which the application check module is transmitted to the electronic apparatus, generate a new signing key that is different from the signing key without identifying integrity of the application based on the received identification information, and transmit the application check module including the new signing key to the electronic apparatus.

### Claim 13 (depends on 12)

The server as claimed in claim 12, wherein the processor is further configured to obfuscate the new signing key at a relatively higher level than an obfuscation level of an obfuscation technique applied to the signing key, and transmit the application check module including the obfuscated signing key to the electronic apparatus.

### Claim 14

A method for identifying integrity of an application, the method comprising:
transmitting an application check module for identifying integrity of an application stored in an electronic apparatus to the electronic apparatus; and
based on identification information corresponding to the application being received from the electronic apparatus, identifying integrity of the application based on the received identification information,
wherein the identifying of the integrity of the application is based on:
whether the received identification information is signed by a signing key included in the application check module, and
whether the received identification information matches pre-store identification information, and
wherein the transmitting comprises, based on a signal requesting to identify integrity of the application being received from the electronic apparatus, generating the signing key and transmitting the application check module including the signing key to the electronic apparatus.

### Claim 15 (depends on 14)

The method as claimed in claim 14, wherein the identifying comprises denying the integrity of the application based on the received identification information not being signed by the signing key or based on the received identification information failing to match the pre-stored identification information.

### Claim 16 (depends on 14)

The method as claimed in claim 14, further comprising:
based on the signal requesting to identify integrity of the application being received again, generating a new signing key that is different from the signing key, and transmitting the application check module including the new signing key to the electronic apparatus.

### Claim 17 (depends on 14)

The method as claimed in claim 14, wherein the transmitting comprises obfuscating the signing key, and transmitting the application check module including the obfuscated signing key to the electronic apparatus.

### Claim 18 (depends on 14)

The method as claimed in claim 14,
wherein the identification information includes a signature value obtained by signing a hash value corresponding to the application with the signature value, and
wherein the identifying comprises, based on validity of the signature value being verified based on a signature verification algorithm, identifying that the received identification information is signed by the signing key.

### Claim 19 (depends on 14)

The method as claimed in claim 14, wherein the transmitting comprises identifying integrity of an application that transmits an application check module including the signing key to the electronic apparatus at a predetermined time interval.

### Claim 20 (depends on 14)

The method as claimed in claim 14, wherein the transmitting comprises, based on a signal requesting a service of the application being received from the electronic apparatus, transmitting an application check module including the signing key to the electronic apparatus.

### Claim 21 (depends on 14)

The method as claimed in claim 14, further comprising:
based on the identification information begin received after a predetermined time passes from a time at which the application check module is transmitted to the electronic apparatus,
generating a new signing key that is different from the signing key without identifying integrity of the application based on the received identification information, and
transmitting the application check module including the new signing key to the electronic apparatus.

### Claim 22

A system for identifying integrity of an application, comprising:
a server comprising a first memory and a first processor, wherein the server is configured to store identification information of each of a plurality of applications; and
an external server comprising a second memory and a second processor, wherein the external server is configured to transmit a signal requesting to identify integrity of an application stored in an electronic apparatus to the server,
wherein the server is further configured to:
based on the signal requesting to identify integrity of the application being received from the electronic apparatus, generate a signing key and transmit an application check module including the generated signing key to the electronic apparatus, and
based on identification information corresponding to the application being received from the electronic apparatus, identify integrity of the application based on the received identification information, and
wherein the server is further configured to identify integrity of the application based on:
whether the received identification information is signed by the signing key included in the application check module, and
whether the received identification information matches identification information of the application among a plurality of pieces of identification information which are pre-stored in the first memory.
