×

Almost independent logically integrated license enforcement framework

  • US 20030135741A1
  • Filed: 12/04/2002
  • Published: 07/17/2003
  • Est. Priority Date: 12/04/2001
  • Status: Abandoned Application
First Claim
Patent Images

1. A process of converting a computer program to a form resistant to unauthorized use, whereby said resistant form becomes comprised of a client program, communication channel allowed to have a low bandwidth and be infrequently used and a secure program capable of execution in a time substantially less then the client program comprising the steps of:

  • (a) providing a level of complexity of said computer program'"'"'s logical conditions such that without knowledge of said logical conditions, determining the logical conditions by a random guess would take prohibitively long time, by means of;

    (1) combining the logical conditions of said computer program, including those used to control loop execution, so that they achieve substantial length;

    (2) converting recursive functions to iterative loops; and

    (3) increasing a number of Boolean variables of said logical conditions in said loops to a sufficiently secure level by means of a loop variable increment procedure (b) providing that said client program contacts said secure program via said communication channel with any desired probability and any of said computer program'"'"'s input data size by means of;

    (1) conjunctively adding a random condition controller logical expression to the logical conditions outside of the said computer program loops;

    (2) converting loops of said computer program to a form where execution of a considerably small set of controlling steps becomes logically necessary to correctly execute other steps whereby said random condition controller conjunctively added to the logical expressions governing said controlling steps, gets invoked a number of times independent of a number of loop iterations said computer program performs; and

    (3) performing a blending procedure on a plurality of said logical conditions containing said random condition controller to provide a resulting expression whereby separating the random condition controller from said resulting expression would require prohibitively long time;

    (c) providing means for said program to use input data specific small data packet received from said secure program over said communication channel in order to resume correct execution whereby said client program can execute all instructions of the computer program with an exception of a number of special instructions that is small and independent of an initial input data size whereby said client program will send a small and independent of the initial input data size request and require a small data specific response via said communication channel from said secure program when executing said special instructions whereby said secure program will require an amount of time that is small and independent of initial input data size to generate said data specific response for said client program in case said client program submits said input data with a valid license whereby without knowing said secure program restoring the computer program or otherwise achieving correct execution requires more then a polynomial time.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×