IP Library Granted Patent US 9,003,184
Granted Patent B2
US 9,003,184 · App. 13/860,297 · Granted Apr 7, 2015

Computing device and method for protecting software of the computing device

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,003,184
App. No.
13/860,297
Granted
Apr 7, 2015
Kind
B2
Abstract

In a method for protecting software of a computing device, a hypertext preprocessor (PHP) software program of the computing device is encrypted using an encryption rule to obtain an encrypted file. When the encrypted file needs to be decrypted, the method determines whether a predetermined hardware lock is connected to the computing device. When the predetermined hardware lock is not connected to the computing device, the method displays a prompt that indicates the predetermined hardware lock is not connected to the computing device. When the predetermined hardware lock is connected to the computing device, the method decrypts the encrypted file with a decryption rule corresponding to the encryption rule.

Claims (61)

1. A computerized-method for protecting software of a computing device, the method comprising:

encrypting a hypertext preprocessor (PHP) software program of the computing device using an encryption rule to obtain an encrypted file;

generating a decryption rule corresponding to the encryption rule to decrypt the encrypted file;

storing the decryption rule corresponding to the encryption rule to a storage system of the computing device;

determining whether a predetermined hardware lock is connected to the computing device when the encrypted file is decrypted;

displaying a prompt that indicates the predetermined hardware lock is not connected to the computing device when the predetermined hardware lock is not connected to the computing device;

searching the decryption rule corresponding to the encryption rule from the storage system when the predetermined hardware lock is connected to the computing device; and

decrypting the encrypted file with the decryption rule corresponding to the encryption rule;

wherein the encrypted file comprises the encrypted PHP software program, a hardware identification number of the predetermined hardware lock, and a software identification code of the PHP software program.

2. The method as claimed in claim 1 ,

wherein the decryption rule comprises a software identification code of the PHP software program.

3. The method as claimed in claim 1 , wherein the determination step comprises:

obtaining a hardware identification number stored in the connected hardware lock through a port of the computing device;

determining whether a hardware identification number of the connected hardware lock and a hardware identification number stored in the encryption file are the same;

determining that the predetermined hardware lock is connected to the computing device when the hardware identification number of the connected hardware lock and the hardware identification number stored in the encryption file are the same; and

determining that the predetermined hardware lock is not connected to the computing device when the hardware identification number of the connected hardware lock and the hardware identification number stored in the encryption file are not the same.

4. The method as claimed in claim 1 , wherein the searching step comprises:

traversing all decryption rules stored in the computing device to search a decryption rule with a same software identification code of the PHP software program;

using the decryption rule with the same software identification code of the PHP software program to decrypt the encrypted file when the decryption rule with the same software identification code of the PHP software program is searched; and

displaying a prompt that indicates the decryption rule corresponding to the encryption rule does not exist when the decryption rule with the same software identification code of the PHP software program is not searched.

5. A non-transitory computer readable storage medium storing a set of instructions, when executed by at least one processor of a computing device, cause the at least one processor to perform a method for protecting software of the computing device, the method comprising:

encrypting a hypertext preprocessor (PHP) software program of the computing device using an encryption rule to obtain an encrypted file;

generating a decryption rule corresponding to the encryption rule to decrypt the encrypted file;

storing the decryption rule corresponding to the encryption rule to a storage system of the computing device;

determining whether a predetermined hardware lock is connected to the computing device when the encrypted file is decrypted;

displaying a prompt that indicates the predetermined hardware lock is not connected to the computing device when the predetermined hardware lock is not connected to the computing device;

searching the decryption rule corresponding to the encryption rule from the storage system when the predetermined hardware lock is connected to the computing device; and

decrypting the encrypted file with the decryption rule corresponding to the encryption rule;

wherein the encrypted file comprises the encrypted PHP software program, a hardware identification number of the predetermined hardware lock, and a software identification code of the PHP software program.

6. The storage medium as claimed in claim 5 , wherein

the decryption rule comprises a software identification code of the PHP software program.

7. The storage medium as claimed in claim 5 , wherein the determination step comprises:

obtaining a hardware identification number stored in the connected hardware lock through a port of the computing device;

determining whether a hardware identification number of the connected hardware lock and a hardware identification number stored in the encryption file are the same;

determining that the predetermined hardware lock is connected to the computing device when the hardware identification number of the connected hardware lock and the hardware identification number stored in the encryption file are the same; and

determining that the predetermined hardware lock is not connected to the computing device when the hardware identification number of the connected hardware lock and the hardware identification number stored in the encryption file are not the same.

8. The storage medium as claimed in claim 5 , wherein the searching step comprises:

traversing all decryption rules stored in the computing device to search a decryption rule with a same software identification code of the PHP software program;

using the decryption rule with the same software identification code of the PHP software program to decrypt the encrypted file when the decryption rule with the same software identification code of the PHP software program is searched; and

displaying a prompt that indicates the decryption rule corresponding to the encryption rule does not exist when the decryption rule with the same software identification code of the PHP software program is not searched.

9. A computing device, comprising:

at least one processor; and

a storage system that stores one or more programs, when executed by the at least one processor, cause the at least one processor to:

encrypt a hypertext preprocessor (PHP) software program of the computing device using an encryption rule to obtain an encrypted file;

generate a decryption rule corresponding to the encryption rule to decrypt the encrypted file;

store the decryption rule corresponding to the encryption rule to the storage system;

determine whether a predetermined hardware lock is connected to the computing device when the encrypted file is decrypted;

display a prompt that indicates the predetermined hardware lock is not connected to the computing device when the predetermined hardware lock is not connected to the computing device;

search the decryption rule corresponding to the encryption rule from the storage system when the predetermined hardware lock is connected to the computing device; and

decrypt the encrypted file with the decryption rule corresponding to the encryption;

wherein the encrypted file comprises the encrypted PHP software program, a hardware identification number of the predetermined hardware lock, and a software identification code of the PHP software program.

10. The computing device as claimed in claim 9 , wherein the decryption rule comprises a software identification code of the PHP software program.

11. The computing device as claimed in claim 9 , wherein whether the predetermined hardware lock is connected to the computing device is determined by:

obtaining a hardware identification number stored in the connected hardware lock through a port of the computing device;

determining whether a hardware identification number of the connected hardware lock and a hardware identification number stored in the encryption file are the same;

determining that the predetermined hardware lock is connected to the computing device when the hardware identification number of the connected hardware lock and the hardware identification number stored in the encryption file are the same; and

determining that the predetermined hardware lock is not connected to the computing device when the hardware identification number of the connected hardware lock and the hardware identification number stored in the encryption file are not the same.

12. The computing device as claimed in claim 9 , wherein the decryption rule corresponding to the encryption rule is searched from the storage system by:

traversing all decryption rules stored in the computing device to search a decryption rule with a same software identification code of the PHP software program;

using the decryption rule with the same software identification code of the PHP software program to decrypt the encrypted file when the decryption rule with the same software identification code of the PHP software program is searched; and

displaying a prompt that indicates the decryption rule corresponding to the encryption rule does not exist when the decryption rule with the same software identification code of the PHP software program is not searched.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 7, 2018
From: HON HAI PRECISION INDUSTRY CO., LTD.
To: CLOUD NETWORK TECHNOLOGY SINGAPORE PTE. LTD.
Reel/Frame 045281/0269 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 10, 2013
From: CHIU, CHUI-WEN; LIANG, CHEN-LIANG
To: HON HAI PRECISION INDUSTRY CO., LTD.
Reel/Frame 030190/0490 →