IP Library Granted Patent US 8,510,861
Granted Patent B2
US 8,510,861 · App. 12/729,410 · Granted Aug 13, 2013

Anti-piracy software protection system and method

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 8,510,861
App. No.
12/729,410
Granted
Aug 13, 2013
Kind
B2
Abstract

A method and system for protecting software products from unauthorized use and distribution is described. The system comprises a client process executed on a client computer coupled to a producer computer over a network. The method comprises the steps of providing to a user a copy of the distributed software, the distributed software comprising an incomplete executable program requiring a security module to be installed prior to execution on the client computer. The user receives a registration code for use with the distributed software. Upon attempted execution of the distributed software the producer computer requests user registration from the user. Upon receipt of the registration information including the registration code from the user, the producer computer validates the registration code and constructing a security module for transmission to the client computer. The security module is integrated with the distributed software to allow execution of the executable program.

Claims (25)

1. A method of protecting software, the method comprising:

receiving, by a server computer, a registration request for a first copy of the software from a client computer, wherein the first copy of the software cannot be executed prior to registration and wherein the registration request comprises user registration information;

validating, by the server computer, the user registration information;

generating, by the server computer, a unique security module upon validation of the registration information, wherein the unique security module comprises an executable portion of the software's program instructions and one or more non-executable data items;

generating, by the server computer, a digital certificate comprising a location of the executable portion of the software's program instructions within the unique security module:

receiving, by the client computer, the unique security module and the digital certificate;

determining, by the client computer, the location of the executable portion of the software's program instructions within the unique security module based on the digital certificate; and

integrating, by the client computer, the executable portion of the software's program instructions with the first copy of the software based on the determined location, wherein the executable portion of the software's program instructions must be accessed by the first copy of the software prior to execution of the first copy of the software.

2. The method of claim 1 , wherein the registration request for a first copy of the software is received over a computer network.

3. The method of claim 1 , wherein the unique security module is created using an unlock sequence.

4. The method of claim 1 , wherein the user registration information comprises a unique code.

5. The method of claim 1 , wherein the security module is constructed using a DLL library file.

6. The method of claim 1 , further comprising:

verifying the unique security module on a periodic time basis.

7. The method of claim 1 , further comprising:

verifying the unique security module each time the first copy of the software is executed.

8. The method of claim 1 , further comprising:

preventing a second copy of the software from being integrated with the unique security module to deny execution of the second copy of the software.

9. The method of claim 1 , wherein the executable portion of the software's program instructions cannot be accessed by a second copy of the software.

10. The method of claim 1 , further comprising:

receiving, by the computer, a registration request for a second copy of the software;

modifying the unique security module such that the first copy of the software cannot be executed;

generating a second unique security module;

integrating the second unique security module with the second copy of the software to allow execution of the second copy of the software.

11. The method of claim 10 , wherein the modifying the unique security module occurs in response to receiving a permission to move authorization.

Assignments (9)
RE-DOMESTICATION AND ENTITY CONVERSION Recorded Aug 19, 2019
From: RESOURCE CONSORTIUM LIMITED
To: RESOURCE CONSORTIUM LIMITED, LLC
Reel/Frame 050091/0297 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 13, 2011
From: AVASOL, THOMAS
To: BYTEBLAZE AB
Reel/Frame 025634/0826 →
CHANGE OF NAME Recorded Jan 13, 2011
From: ERIKSSON, THOMAS EVALD
To: AVASOL, THOMAS EVALD
Reel/Frame 025635/0224 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 13, 2011
From: KARLSSON, TOBIAS
To: BYTEBLAZE AB
Reel/Frame 025635/0454 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 13, 2011
From: WENZEL, JURGEN
To: BYTEBLAZE AB
Reel/Frame 025635/0660 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 13, 2011
From: BYTEBLAZE AB
To: BYTEBLAZE, INC.
Reel/Frame 025635/0912 →
CHANGE OF NAME Recorded Jan 13, 2011
From: BYTEBLAZE, INC.
To: BYTESHIELD, INC.
Reel/Frame 025636/0072 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 13, 2011
From: BYTESHIELD, INC.
To: RESOURCE CONSORTIUM LIMITED
Reel/Frame 025636/0313 →
CHANGE OF NAME Recorded Sep 2, 2010
From: BYTEBLAZE, INC.
To: BYTESHIELD, INC.
Reel/Frame 024933/0108 →