×

Computer systems to inhibit unauthorized copying, unauthorized usage, and automated cracking of protected software

  • US 4,558,176 A
  • Filed: 09/20/1982
  • Issued: 12/10/1985
  • Est. Priority Date: 09/20/1982
  • Status: Expired due to Fees
First Claim
Patent Images

1. A general purpose computer system for executing a plurality of encrypted software packages having provisions that inhibit unauthorized usage of encrypted software instructions comprising:

  • storage means for storing information;

    processing means for executing re-encrypted software instructions from the current package using an execution key common to all re-encrypted software instructions, and for executing unencrypted software instructions;

    said processing means including register/flag means for storing information being processed by said processing means under the control of said software instructions;

    translation means, coupled to said processing means, operative for re-encrypting said plurality of encrypted software packages using said execution key to form a plurality of re-encrypted software packages;

    said translation means including multiple translation prevention means for preventing said translation means from storing a second re-encrypted software package into locations of said storage means occupied by a first re-encrypted software package;

    secure communication means, coupled to said processing means and said translation means, operative for buffering information between said processing means and said translation means, including information describing the region of said storage means occupied by said plurality of re-encrypted software packages;

    said processing means including destruction means for destroying said execution key and the contents of said register/flag means upon receiving a destroy signal;

    package description means for indicating the region of said storage means occupied by said current package;

    violation recognition means, coupled to said destruction means, operative for generating said destroy signal if a re-encrypted software instruction came from a region of said storage means other than the region of said storage means indicated by said package description means; and

    branch allowing means, coupled to said violation recognition means and to said package description means, operative for preventing said violation recognition means from generating said destroy signal when a re-encrypted software instruction executing in said processing means is a handshake instruction originating from a region of said storage means other than the region of said storage means indicated by said package description means, and further for establishing the region of said storage means that contains said handshake instruction as the current package in said package description means, and additionally for erasing a portion of the information contained in said register/flag means.

View all claims
  • 0 Assignments
Timeline View
Assignment View
    ×
    ×