Search Images Maps Play YouTube News Gmail Drive More »
Advanced Patent Search | Web History | Sign in

Patents

A microprocessor for executing computer programs which have been enciphered during manufacture to deter the execution of the programs in unauthorized computers. This microprocessor deciphers and executes an enciphered program one instruction at a time, through a combination of substitutions, transpositions, and exclusive-OR additions, in which the address of each instruction is combined with the instruction. Each unit may use a unique set of substitutions so that a program that can be executed in one microprocessor can not be run in any other microprocessor.

InventorRobert M. Best
Current U.S. Classification713/190; 380/37; 711/E12.092
International Classification: H04L 900

View patent at USPTO
Search USPTO Assignment Database

Citations

Cited PatentFiling dateIssue dateOriginal AssigneeTitle
US3504132May 14, 1965Mar 31, 1970MEMORY UNIT FOR REPERTORY DIALLER UTI- LIZING CODED ENCAPSULATED RESISTORS
US3798359Jun 30, 19711974HSXA HSSA
US3911216Dec 17, 19731975NONLINEAR CODE GENERATOR AND DECODER FOR TRANSMITTING DATA SECURELY
US3944976Aug 9, 1974Mar 16, 1976Electronic security apparatus
US3958081Feb 24, 1975May 18, 1976International Business Machines CorporationBlock cipher system for data security
US4037215Apr 30, 1976Jul 19, 1977International Business Machines CorporationKey controlled address relocation translation system
US4074066Apr 26, 1976Feb 14, 1978International Business Machines CorporationMessage verification and transmission error detection by block chaining
US4120030Mar 11, 1977Oct 10, 1978Kearney & Trecker CorporationComputer software security system

Referenced by

Citing PatentFiling dateIssue dateOriginal AssigneeTitle
US4246638Sep 14, 1978Jan 20, 1981Method and apparatus for controlling usage of a programmable computing machine
US4249180Sep 20, 1978Feb 3, 1981Northern Telecom LimitedPast dependent microcomputer cipher apparatus
US4306289Feb 4, 1980Dec 15, 1981Western Electric Company, Inc.Digital computer having code conversion apparatus for an encrypted program
US4314097Mar 10, 1980Feb 2, 1982Burroughs CorporationAuthenticator device for precluding compensating text modifications in transmitted messages
US4352952Mar 3, 1980Oct 5, 1982Motorola Inc.Data security module
US4408093Jun 5, 1981Oct 4, 1983ITT Industries, Inc.Cryptographic encoder-decoder
US4433207Sep 10, 1981Feb 21, 1984Cryptographic decoder for computer programs
US4442486Nov 25, 1981Apr 10, 1984U.S. Philips CorporationProtected programmable apparatus
US4488001Dec 17, 1981Dec 11, 1984NCR CorporationIntellectual properties protection device
US4498148Feb 23, 1983Feb 5, 1985International Business Machines CorporationComparing input words to a word dictionary for correct spelling
US4503287Nov 23, 1981Mar 5, 1985Analytics, Inc.Two-tiered communication security employing asymmetric session keys
US4513174Mar 19, 1981Apr 23, 1985Standard Microsystems CorporationSoftware security method using partial fabrication of proprietary control word decoders and microinstruction memories
US4521853Jun 30, 1982Jun 4, 1985Texas Instruments IncorporatedSecure microprocessor/microcomputer with secured memory
US4523271Jun 22, 1982Jun 11, 1985Software protection method and apparatus
US4525599May 21, 1982Jun 25, 1985General Computer CorporationSoftware protection methods and apparatus
US4534037Sep 14, 1982Aug 6, 1985Robert Bosch GmbHMethod and apparatus for scrambled pulse-code modulation transmission or recording
US4558176Sep 20, 1982Dec 10, 1985Computer systems to inhibit unauthorized copying, unauthorized usage, and automated cracking of protected software
US4562305Dec 22, 1982Dec 31, 1985International Business Machines CorporationSoftware cryptographic apparatus and method
US4573119Jul 11, 1983Feb 25, 1986Computer software protection system
US4590552Jun 30, 1982May 20, 1986Texas Instruments IncorporatedSecurity bit for designating the security status of information stored in a nonvolatile memory
US4593353Oct 26, 1981Jun 3, 1986Telecommunications Associates, Inc.Software protection method and apparatus
US4593376Apr 21, 1983Jun 3, 1986System for vending program cartridges which have circuitry for inhibiting program usage after preset time interval expires
US4603381Jun 30, 1982Jul 29, 1986Texas Instruments IncorporatedUse of implant process for programming ROM type processor for encryption
US4633388Jan 18, 1984Dec 30, 1986Siemens Corporate Research & Support, Inc.On-chip microprocessor instruction decoder having hardware for selectively bypassing on-chip circuitry used to decipher encrypted instruction codes
US4634808Mar 15, 1984Jan 6, 1987M/A-COM Government Systems, Inc.Descrambler subscriber key production system utilizing key seeds stored in descrambler
US4644493Sep 14, 1984Feb 17, 1987International Business Machines CorporationImplementing a shared higher level of privilege on personal computers for copy protection of software
US4649510Apr 30, 1982Mar 10, 1987Methods and apparatus for the protection and control of computer programs
US4670857Oct 26, 1981Jun 2, 1987Cartridge-controlled system whose use is limited to authorized cartridges
US4683553Feb 5, 1986Jul 28, 1987Cii Honeywell Bull (Societe Anonyme)Method and device for protecting software delivered to a user by a supplier
US4724541Jul 24, 1985Feb 9, 1988Data-dependent binary encoder/decoder
US4748561Jun 27, 1986May 31, 1988Method of protecting computer software
US4757468Apr 21, 1987Jul 12, 1988Intel CorporationAuthenticated read-only memory
US4764959Aug 31, 1984Aug 16, 1988Kabushiki Kaisha ToshibaSingle-chip microcomputer with encryptable function on program memory
US4791565Jun 20, 1984Dec 13, 1988Effective Security Systems, Inc.Apparatus for controlling the use of computer software
US4796181Oct 24, 1986Jan 3, 1989Billing system for computer software
US4807288Nov 30, 1983Feb 21, 1989C.I.I. Honeywell Bull
Etat Francais represente par le Ministre des P.T.T. (C.N.E.T.)
Establissement Public de diffusion dit Telediffusion de France
Microprocessor intended particularly for executing the calculation algorithms of a public code encoding system
US4817140Nov 5, 1986Mar 28, 1989International Business Machines Corp.Software protection system using a single-key cryptosystem, a hardware-based authorization system and a secure coprocessor
US4827508Oct 14, 1985May 2, 1989Personal Library Software, Inc.Database usage metering and protection system and method
US4860351Nov 5, 1986Aug 22, 1989IBM CorporationTamper-resistant packaging for protection of information stored in electronic circuitry
US4864494Mar 21, 1986Sep 5, 1989Computerized Data Ssytems for Mfg., Inc.Software usage authorization system with key for decrypting/re-encrypting/re-transmitting moving target security codes from protected software
US4866769Aug 5, 1987Sep 12, 1989IBM CorporationHardware assist for protecting PC software
US4903296Nov 12, 1986Feb 20, 1990International Business Machines CorporationImplementing a shared higher level of privilege on personal computers for copy protection of software
US4905277Apr 17, 1989Feb 27, 1990Fujitsu LimitedMethod for enciphering and deciphering instructions in a microcomputer, and a microcomputer used for effecting same
US4977594Feb 16, 1989Dec 11, 1990Electronic Publishing Resources, Inc.Database usage metering and protection system and method
US4984189Apr 3, 1986Jan 8, 1991NEC CorporationDigital data processing circuit equipped with full bit string reverse control circuit and shifter to perform full or partial bit string reverse operation and data shift operation
US5007082Feb 26, 1990Apr 9, 1991Kelly Services, Inc.Computer software encryption apparatus
US5034980Jun 21, 1990Jul 23, 1991Intel CorporationMicroprocessor for providing copy protection
US5047928Jan 3, 1989Sep 10, 1991Billing system for computer software
US5050213Aug 6, 1990Sep 17, 1991Electronic Publishing Resources, Inc.Database usage metering and protection system and method
US5081675Nov 13, 1989Jan 14, 1992System for protection of software in memory against unauthorized use
US5095525Jun 26, 1989Mar 10, 1992Rockwell International CorporationMemory transformation apparatus and method
US5109413Nov 28, 1989Apr 28, 1992International Business Machines CorporationManipulating rights-to-execute in connection with a software copy protection mechanism
US5117457Jan 24, 1990May 26, 1992International Business Machines Corp.Tamper resistant packaging for information protection in electronic circuitry
US5123045Feb 7, 1990Jun 16, 1992Massachusetts Institute of TechnologyComprehensive software protection system
US5146575Nov 5, 1986Sep 8, 1992International Business Machines Corp.Implementing privilege on microprocessor systems for use in software asset protection
US5155680Apr 27, 1989Oct 13, 1992Signal Security TechnologiesBilling system for computing software
US5214697Mar 27, 1991May 25, 1993Kabushiki Kaisha ToshibaProgram execution apparatus for ensuring security of a program
US5309363Mar 5, 1992May 3, 1994Frank M. GravesRemotely rechargeable postage meter
US5319705Oct 21, 1992Jun 7, 1994International Business Machines CorporationMethod and system for multimedia access control enablement
US5335277May 3, 1993Aug 2, 1994The Personalized Mass Media CorporationSignal processing appparatus and methods
US5410598Sep 27, 1994Apr 25, 1995Electronic Publishing Resources, Inc.Database usage metering and protection system and method
US5416840Jul 6, 1993May 16, 1995Phoenix Technologies, Ltd.Software catalog encoding method and system
US5497479Feb 28, 1995Mar 5, 1996SofTel, Inc.Method and apparatus for remotely controlling and monitoring the use of computer software
US5515540Dec 28, 1993May 7, 1996Dallas Semiconducter Corp.Microprocessor with single pin for memory wipe
US5530752Feb 22, 1994Jun 25, 1996Convex Computer CorporationSystems and methods for protecting software from unlicensed copying and use
US5563945Feb 28, 1994Oct 8, 1996Motorola Inc.Data storage device
US5613089Feb 22, 1996Mar 18, 1997SofTel, Inc.Method and apparatus for remotely controlling and monitoring the use of computer software
US5623549Jan 30, 1995Apr 22, 1997Cipher mechanisms with fencing and balanced block mixing
US5649187Sep 29, 1995Jul 15, 1997SofTel, Inc.Method and apparatus for remotely controlling and monitoring the use of computer software
US5675645Apr 18, 1995Oct 7, 1997Ricoh Company, Ltd.
Ricoh Corporation
Method and apparatus for securing executable programs against copying
US5765197Jan 2, 1996Jun 9, 1998International Business Machines CorporationMethod and system for authentication of a memory unit for a computer system
US5802275Jun 22, 1994Sep 1, 1998Lucent Technologies Inc.Isolation of non-secure software from secure software to limit virus infection
US5860094Sep 6, 1996Jan 12, 1999Samsung Electronics Co., Ltd.System for protecting information stored on physical media
US5887243Jun 7, 1995Mar 23, 1999Personalized Media Communications, L.L.C.Signal processing apparatus and methods
US5892826Jan 30, 1996Apr 6, 1999Motorola, Inc.Data processor with flexible data encryption
US5892900Aug 30, 1996Apr 6, 1999InterTrust Technologies Corp.Systems and methods for secure transaction management and electronic rights protection
US5910987Dec 4, 1996Jun 8, 1999InterTrust Technologies Corp.Systems and methods for secure transaction management and electronic rights protection
US5915019Jan 8, 1997Jun 22, 1999InterTrust Technologies Corp.Systems and methods for secure transaction management and electronic rights protection
US5917912Jan 8, 1997Jun 29, 1999InterTrust Technologies CorporationSystem and methods for secure transaction management and electronic rights protection
US5920861Feb 25, 1997Jul 6, 1999InterTrust Technologies Corp.Techniques for defining using and manipulating rights management data structures
US5933498Nov 5, 1997Aug 3, 1999MRJ, Inc.System for controlling access and distribution of digital property
US5943421Sep 11, 1996Aug 24, 1999Norand CorporationProcessor having compression and encryption circuitry
US5943422Aug 12, 1996Aug 24, 1999InterTrust Technologies Corp.Steganographic techniques for securely delivering electronic digital rights management control information over insecure communication channels
US5982887Dec 26, 1996Nov 9, 1999Casio Computer Co., Ltd.Encrypted program executing apparatus
US5982891Nov 4, 1997Nov 9, 1999InterTrust Technologies Corp.Systems and methods for secure transaction management and electronic rights protection
US6052780Jul 3, 1997Apr 18, 2000Open Security Solutions, LLCComputer system and process for accessing an encrypted and self-decrypting digital information product while restricting access to decrypted digital information
US6112181Nov 6, 1997Aug 29, 2000InterTrust Technologies CorporationSystems and methods for matching, selecting, narrowcasting, and/or classifying based on rights management and/or other information
US6138119Apr 27, 1999Oct 24, 2000InterTrust Technologies Corp.Techniques for defining, using and manipulating rights management data structures
US6157721Aug 12, 1996Dec 5, 2000InterTrust Technologies Corp.Systems and methods using cryptography to protect secure computing environments
US6157966Jun 29, 1998Dec 5, 2000Schlumberger Malco, Inc.System and method for an ISO7816 complaint smart card to become master over a terminal
US6182216Sep 16, 1998Jan 30, 2001Block cipher method
US6185683Dec 28, 1998Feb 6, 2001InterTrust Technologies Corp.Trusted and secure techniques, systems and methods for item delivery and execution
US6199162Feb 17, 2000Mar 6, 2001Block cipher method
US6237786Jun 17, 1999May 29, 2001InterTrust Technologies Corp.Systems and methods for secure transaction management and electronic rights protection
US6240185Feb 10, 1999May 29, 2001Intertrust Technologies CorporationSteganographic techniques for securely delivering electronic digital rights management control information over insecure communication channels
US6253193Dec 9, 1998Jun 26, 2001InterTrust Technologies CorporationSystems and methods for the secure transaction management and electronic rights protection
US6292569Oct 4, 2000Sep 18, 2001InterTrust Technologies Corp.Systems and methods using cryptography to protect secure computing environments
US6308270Feb 13, 1998Oct 23, 2001Schlumberger Technologies, Inc.Validating and certifying execution of a software program with a smart card
US6314409Oct 26, 1998Nov 6, 2001Veridian Information SolutionsSystem for controlling access and distribution of digital property
US6327619Jul 8, 1998Dec 4, 2001Nielsen Media Research, Inc.Metering of internet content using a control
US6330678Nov 29, 2000Dec 11, 2001Block cipher method
US6345359Nov 14, 1997Feb 5, 2002Raytheon CompanyIn-line decryption for protecting embedded software
US6363488Jun 7, 1999Mar 26, 2002InterTrust Technologies Corp.Systems and methods for secure transaction management and electronic rights protection
US6378072Feb 3, 1998Apr 23, 2002Compaq Computer CorporationCryptographic system
US6389402Jun 9, 1999May 14, 2002InterTrust Technologies Corp.Systems and methods for secure transaction management and electronic rights protection
US6427140Sep 3, 1999Jul 30, 2002InterTrust Technologies Corp.Systems and methods for secure transaction management and electronic rights protection
US6438694Jan 25, 2001Aug 20, 2002Mitsubishi CorporationApparatus for data copyright management system
US6449367Feb 23, 2001Sep 10, 2002InterTrust Technologies Corp.Steganographic techniques for securely delivering electronic digital rights management control information over insecure communication channels
US6460079Mar 4, 1999Oct 1, 2002Nielsen Media Research, Inc.Method and system for the discovery of cookies and other client information
US6473861Dec 3, 1998Oct 29, 2002Joseph ForteMagnetic optical encryption/decryption disk drive arrangement
US6564995Sep 17, 1998May 20, 2003Schlumberger Malco, Inc.Smart card application-selection
US6578150Nov 29, 2000Jun 10, 2003Block cipher method
US6591229Oct 9, 1998Jul 8, 2003Schlumberger Industries, SAMetrology device with programmable smart card
US6618484Jul 5, 2002Sep 9, 2003InterTrust Technologies CorporationSteganographic techniques for securely delivering electronic digital rights management control information over insecure communication channels
US6658568Oct 26, 1999Dec 2, 2003Intertrust Technologies CorporationTrusted infrastructure support system, methods and techniques for secure electronic commerce transaction and rights management
US6715085Apr 18, 2002Mar 30, 2004International Business Machines CorporationInitializing, maintaining, updating and recovering secure operation within an integrated system employing a data access control function
US6741991Nov 2, 2001May 25, 2004Mitsubishi CorporationData management system
US6751319Oct 23, 2001Jun 15, 2004Block cipher method
US6789197Oct 2, 2000Sep 7, 2004Mitsubishi CorporationApparatus for data copyright management system
US6851056Apr 18, 2002Feb 1, 2005International Business Machines CorporationControl function employing a requesting master id and a data address to qualify data access within an integrated system
US6938021Oct 18, 2002Aug 30, 2005Intertrust Technologies CorporationMethods for matching, selecting, narrowcasting, and/or classifying based on rights management and/or other information
US6948070Oct 30, 2000Sep 20, 2005Intertrust Technologies CorporationSystems and methods for secure transaction management and electronic rights protection
US6957335Oct 23, 2003Oct 18, 2005International Business Machines CorporationInitializing, maintaining, updating and recovering secure operation within an integrated system employing a data access control function
US6990204Mar 26, 2001Jan 24, 2006Kabushiki Kaisha ToshibaInterface security system and method
US7016494Mar 26, 2001Mar 21, 2006Hewlett-Packard Development Company, L.P.Multiple cryptographic key precompute and store
US7051212May 30, 2002May 23, 2006Intertrust Technologies Corp.Systems and methods for secure transaction management and electronic rights protection
US7062500Sep 28, 2000Jun 13, 2006Intertrust Technologies Corp.Techniques for defining, using and manipulating rights management data structures
US7065508Aug 20, 2004Jun 20, 2006SL Patent Holdings LLCSystem and method for operating a licensing server
US7069451Jun 29, 1999Jun 27, 2006Intertrust Technologies Corp.Systems and methods for secure transaction management and electronic rights protection
US7076652Jan 19, 2001Jul 11, 2006Intertrust Technologies CorporationSystems and methods for secure transaction management and electronic rights protection
US7085743Sep 30, 2004Aug 1, 2006SL Patent Holdings LLCSystem and method for creating and running protected information
US7089212May 21, 2004Aug 8, 2006SL Patent Holdings LLCSystem and method for controlling access to protected information
US7089419Apr 18, 2002Aug 8, 2006International Business Machines CorporationControl function with multiple security states for facilitating secure operation of an integrated system
US7092908Nov 12, 2004Aug 15, 2006SL Patent Holdings LLCSystem and method for selling protected information in an oem context
US7092914Feb 4, 2000Aug 15, 2006Intertrust Technologies CorporationMethods for matching, selecting, narrowcasting, and/or classifying based on rights management and/or other information
US7095854Oct 3, 2000Aug 22, 2006Intertrust Technologies Corp.Systems and methods for secure transaction management and electronic rights protection
US7100199Oct 28, 2003Aug 29, 2006Intertrust Technologies Corp.Systems and methods for secure transaction management and electronic rights protection
US7110983Oct 18, 2002Sep 19, 2006Intertrust Technologies CorporationMethods for matching, selecting, narrowcasting, and/or classifying based on rights management and/or other information
US7120248Mar 26, 2001Oct 10, 2006Hewlett-Packard Development Company, L.P.Multiple prime number generation using a parallel prime number search algorithm
US7120800Jun 1, 2001Oct 10, 2006Intertrust Technologies Corp.Systems and methods for secure transaction management and electronic rights protection
US7120802Aug 6, 2001Oct 10, 2006Intertrust Technologies Corp.Systems and methods for using cryptography to protect secure computing environments
US7124302Sep 10, 2001Oct 17, 2006Intertrust Technologies Corp.Systems and methods for secure transaction management and electronic rights protection
US7133845Jun 9, 1999Nov 7, 2006Intertrust Technologies Corp.System and methods for secure transaction management and electronic rights protection
US7133846Sep 17, 1999Nov 7, 2006Intertrust Technologies Corp.Digital certificate support system, methods and techniques for secure electronic commerce transaction and rights management
US7143066Oct 18, 2002Nov 28, 2006Intertrust Technologies Corp.Systems and methods for matching, selecting, narrowcasting, and/or classifying based on rights management and/or other information
US7143290Aug 4, 2000Nov 28, 2006Intertrust Technologies CorporationTrusted and secure techniques, systems and methods for item delivery and execution
US7158954Oct 27, 2004Jan 2, 2007SL Patent Holdings LLCSystem and method for processing protected video information
US7165174Dec 17, 1999Jan 16, 2007Intertrust Technologies Corp.Trusted infrastructure support systems, methods and techniques for secure electronic commerce transaction and rights management
US7209901Aug 29, 2001Apr 24, 2007SL Patent Holdings LLC c/o AOL Time WarnerMethod for selling, protecting, and redistributing digital goods
US7233948Mar 25, 1999Jun 19, 2007Intertrust Technologies Corp.Methods and apparatus for persistent control and protection of content
US7243236Jul 28, 2000Jul 10, 2007Intertrust Technologies Corp.Systems and methods for using cryptography to protect secure and insecure computing environments
US7249103Dec 30, 2004Jul 24, 2007SL Patent Holdings, Inc.System and method for selectively enabling access based on lineage analysis of digital information
US7266842Apr 18, 2002Sep 4, 2007International Business Machines CorporationControl function implementing selective transparent data authentication within an integrated system
US7270193Feb 13, 2001Sep 18, 2007Kabushiki Kaisha ToshibaMethod and system for distributing programs using tamper resistant processor
US7281133Apr 7, 2005Oct 9, 2007Intertrust Technologies Corp.Trusted and secure techniques, systems and methods for item delivery and execution
US7302415Jan 3, 2000Nov 27, 2007Intarsia LLCData copyright management system
US7313677Oct 6, 2003Dec 25, 2007Arm LimitedProcessing activity masking in a data processing system
US7319988Oct 20, 2004Jan 15, 2008SL Patent Holdings LLCSystem and method for processing protected audio information
US7321910Sep 29, 2003Jan 22, 2008IP-First, LLCMicroprocessor apparatus and method for performing block cipher cryptographic functions
US7330837Jan 19, 2001Feb 12, 2008SL Patent Holdings LLCMethod for adapting a software product to an environment
US7353205Dec 30, 2004Apr 1, 2008SL Patent Holdings LLCMethod for causing a digital product to revert to a demo mode
US7353207Dec 15, 2004Apr 1, 2008SL Patent Holdings LLCMethod of altering a software product in response to predetermined events
US7356707Oct 23, 2003Apr 8, 2008International Business Machines CorporationInitializing, maintaining, updating and recovering secure operation within an integrated system employing a data access control function
US7376073Dec 12, 2001May 20, 2008ECD Systems, Inc.Optical storage medium having distortion regions, and a method of modifying an optical storage medium to include distortion regions
US7383447Jul 25, 2005Jun 3, 2008Intarsia Software LLCMethod for controlling database copyrights
US7392395Apr 7, 2005Jun 24, 2008Intertrust Technologies Corp.Trusted and secure techniques, systems and methods for item delivery and execution
US7392400Mar 15, 2004Jun 24, 2008Via Technologies, Inc.Microprocessor apparatus and method for optimizing block cipher cryptographic functions
US7415617Jul 22, 2004Aug 19, 2008Intertrust Technologies Corp.Trusted infrastructure support systems, methods and techniques for secure electronic commerce, electronic transactions, commerce process control and automation, distributed computing, and rights management
US7424622Sep 30, 2002Sep 9, 2008Kabushiki Kaisha ToshibaMicroprocessor with improved task management and table management mechanism
US7430670Jul 31, 2000Sep 30, 2008Intertrust Technologies Corp.Software self-defense systems and methods
US7447914Jul 16, 1997Nov 4, 2008Intarsia Software LLCMethod for controlling database copyrights
US7502943Apr 16, 2004Mar 10, 2009Via Technologies, Inc.Microprocessor apparatus and method for providing configurable cryptographic block cipher round results
US7519833Apr 16, 2004Apr 14, 2009Via Technologies, Inc.Microprocessor apparatus and method for enabling configurable data block size in a cryptographic engine
US7529367Apr 16, 2004May 5, 2009VIA Technologies, Inc.Apparatus and method for performing transparent cipher feedback mode cryptographic functions
US7529368Apr 16, 2004May 5, 2009VIA Technologies, Inc.Apparatus and method for performing transparent output feedback mode cryptographic functions
US7532722Dec 4, 2003May 12, 2009IP-First, LLCApparatus and method for performing transparent block cipher cryptographic functions
US7536560Apr 16, 2004May 19, 2009VIA Technologies, Inc.Microprocessor apparatus and method for providing configurable cryptographic key size
US7539876Apr 16, 2004May 26, 2009Via Technologies, Inc.Apparatus and method for generating a cryptographic key schedule in a microprocessor
US7542566Apr 16, 2004Jun 2, 2009IP-First, LLCApparatus and method for performing transparent cipher block chaining mode cryptographic functions
US7555463Nov 13, 2006Jun 30, 2009SL Patent Holdings LLCSystem and method for selectively changing parameter settings based on lineage analysis of digital information
US7555780Feb 16, 2005Jun 30, 2009Symantec CorporationInformation security method and system
US7562396Feb 1, 2002Jul 14, 2009ECD Systems, Inc.Systems and methods for media authentication
US7607147Dec 11, 1996Oct 20, 2009The Nielsen Company (US), LLCInteractive service device metering systems
US7643393Feb 5, 2004Jan 5, 2010ECD Systems, Inc.Systems and methods for optical media modification
US7644422Oct 31, 2002Jan 5, 2010The Nielsen Company (US), LLCInteractive service device metering systems
US7657758Dec 20, 2000Feb 2, 2010Fujitsu LimitedProcessing apparatus and integrated circuit to prevent illicit access and reverse engineering
US7673155May 9, 2008Mar 2, 2010Kabushiki Kaisha ToshibaMicroprocessor with improved task management and table management mechanism
US7680889Mar 30, 2005Mar 16, 2010Nielsen Media Research, Inc.Use of browser history file to determine web site reach
US7716485Feb 5, 2004May 11, 2010SCA IPLA Holdings Inc.Systems and methods for media authentication
US7730323Nov 6, 2006Jun 1, 2010Controlling database copyrights
US7730324Nov 2, 2001Jun 1, 2010Method for controlling database copyrights
US7734251Jun 6, 1995Jun 8, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7747217Jun 7, 1995Jun 29, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7752649May 24, 1995Jul 6, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7752650Jun 2, 1995Jul 6, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7761890Jun 7, 1995Jul 20, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7764685Jun 2, 1995Jul 27, 2010Personalized Media Communications, L.L.C.Signal processing apparatus and methods
US7769170May 22, 1995Aug 3, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7769344May 16, 1995Aug 3, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7774809Jun 7, 1995Aug 10, 2010Personalized Media Communications, LLCSignal processing apparatus and method
US7783252May 23, 1995Aug 24, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7784082May 23, 1995Aug 24, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7793332Jun 7, 1995Sep 7, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7797717May 23, 1995Sep 14, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7801304May 24, 1995Sep 21, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7801817Jul 20, 2006Sep 21, 2010Digital content management system and apparatus
US7805738Jun 6, 1995Sep 28, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7805748May 23, 1995Sep 28, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7805749Jun 7, 1995Sep 28, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7810115Jun 2, 1995Oct 5, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7814526Jun 6, 1995Oct 12, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7817208Jun 7, 1995Oct 19, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7818761Jun 7, 1995Oct 19, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7818776Jun 7, 1995Oct 19, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7818777Jun 7, 1995Oct 19, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7818778Jun 7, 1995Oct 19, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7823175Jun 6, 1995Oct 26, 2010Personalized Media Communications LLCSignal processing apparatus and methods
US7827109Dec 13, 2001Nov 2, 2010Digital content management system and apparatus
US7827586Jun 6, 1995Nov 2, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7827587Jun 2, 1995Nov 2, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7830925May 24, 1995Nov 9, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7831204Mar 2, 1995Nov 9, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7831516Dec 6, 2006Nov 9, 2010SL Patent Holdings LLCSystem and method for redistributing and licensing access to protected information among a plurality of devices
US7836480Jun 7, 1995Nov 16, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7840976May 23, 1995Nov 23, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7844053Dec 5, 2003Nov 30, 2010IP-First, LLCMicroprocessor apparatus and method for performing block cipher cryptographic functions
US7844835Sep 20, 2005Nov 30, 2010Intertrust Technologies CorporationSystems and methods for secure transaction management and electronic rights protection
US7844995Jun 7, 1995Nov 30, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7849479May 23, 1995Dec 7, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7849480May 26, 1995Dec 7, 2010Personalized Media Communications LLCSignal processing apparatus and methods
US7849493May 19, 1995Dec 7, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7853803Aug 28, 2002Dec 14, 2010Verizon Corporate Services Group Inc.
Raytheon BBN Technologies Corp.
System and method for thwarting buffer overflow attacks using encrypted process pointers
US7856649May 24, 1995Dec 21, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7856650Aug 30, 1993Dec 21, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7860131Jun 7, 1995Dec 28, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7860249May 15, 1995Dec 28, 2010Personalized Media Communications LLCSignal processing apparatus and methods
US7861263Jun 6, 1995Dec 28, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7861278May 19, 1995Dec 28, 2010Personalized Media Communications, LLCSignal processing apparatus and methods
US7864248Jun 7, 1995Jan 4, 2011Personalized Media Communications, LLCSignal processing apparatus and methods
US7864956Jun 7, 1995Jan 4, 2011Personalized Media Communications, LLCSignal processing apparatus and methods
US7865920May 19, 1995Jan 4, 2011Personalized Media Communications LLCSignal processing apparatus and methods
US7870581Jun 7, 1995Jan 11, 2011Personalized Media Communications, LLCSignal processing apparatus and methods
US7889865Jun 7, 1995Feb 15, 2011Personalized Media Communications, L.L.C.Signal processing apparatus and methods
US7900055Mar 15, 2004Mar 1, 2011Via Technologies, Inc.Microprocessor apparatus and method for employing configurable block cipher cryptographic algorithms
US7908638Jun 7, 1995Mar 15, 2011Personalized Media Communications LLCSignal processing apparatus and methods
US7917749May 22, 2006Mar 29, 2011Intertrust Technologies CorporationSystems and methods for secure transaction management and electronic rights protection
US7925891Mar 25, 2005Apr 12, 2011Via Technologies, Inc.Apparatus and method for employing cryptographic functions to generate a message digest
US7925898Jun 14, 2006Apr 12, 2011Intertrust Technologies Corp.Systems and methods using cryptography to protect secure computing environments
US7926084Jun 2, 1995Apr 12, 2011Personalized Media Communications LLCSignal processing apparatus and methods
US7940931Jun 7, 1995May 10, 2011Personalized Media Communications LLCSignal processing apparatus and methods
US7944806Apr 17, 2008May 17, 2011SCA IPLA Holdings Inc.Method for modifying optical path on optical recording medium having distortion regions
US7953223May 23, 1995May 31, 2011Personalized Media Communications, L.L.C.Signal processing apparatus and methods
US7958527Jun 7, 1995Jun 7, 2011Personalized Media Communications, LLCSignal processing apparatus and methods
US7962417Sep 30, 2004Jun 14, 2011SL Patent Holdings LLCSystem and method for distributing protected information
US7966640Jun 7, 1995Jun 21, 2011Personalized Media Communications, LLCSignal processing apparatus and methods
US7979354Aug 31, 2006Jul 12, 2011Intarsia Software LLCControlling database copyrights
US7986785Aug 29, 2006Jul 26, 2011Intarsia Software LLCData management
US7992169Jun 7, 1995Aug 2, 2011Personalized Media Communications LLCSignal processing apparatus and methods
US8024810Jul 3, 2006Sep 20, 2011Intarsia Software LLCMethod and apparatus for protecting digital data by double re-encryption
US8046791Jun 2, 1995Oct 25, 2011Personalized Media Communications, LLCSignal processing apparatus and methods
US8060755Mar 15, 2004Nov 15, 2011VIA Technologies, IncApparatus and method for providing user-generated key schedule in a microprocessor cryptographic engine
US8060903May 19, 1995Nov 15, 2011Personalized Media PMC Communications, L.L.C.Signal processing apparatus and methods
US8095798Mar 15, 2010Jan 10, 2012SCA IPLA Holdings Inc.Systems and methods for media authentication
US8112782Jun 2, 1995Feb 7, 2012Personalized Media Communications, LLCSignal processing apparatus and methods
US8140435Nov 4, 2004Mar 20, 2012SL Patent Holdings LLCSystem and method for processing protected text information
US8181021Aug 20, 2007May 15, 2012Intertrust Technologies Corp.Systems and methods for secure transaction management and electronic rights protection
US8185473Apr 13, 2006May 22, 2012Intertrust Technologies CorporationTrusted infrastructure support systems, methods and techniques for secure electronic commerce, electronic transactions, commerce process control and automation, distributed computing, and rights management
US8191091Jun 7, 1995May 29, 2012Personalized Media Communications, LLCSignal processing apparatus and methods
USRE40405Oct 7, 1999Jun 24, 2008Ricoh Company, Ltd.Method and apparatus for securing executable programs against copying
USRE41657Jun 13, 2002Sep 7, 2010Data management system
USRE42163Jun 1, 2006Feb 22, 2011Intarsia Software LLCData management system

Claims

1. A device for processing enciphered information comprising:

addressing means for generating a digital address; means for accepting a portion of enciphered information from storage means at a location selected by said address;
deciphering means for converting said portion of enciphered information into deciphered information by combining said portion of enciphered information with said address, so as to form a substitute portion of deciphered information; and
processing means for executing a plurality of computer instructions as a function of said deciphered information.

2. The device of claim 1, wherein said deciphering means comprises:

first substitution means for transforming said portion of enciphered information into substitute information, said substitution means comprising table means retaining binary numbers arranged in a secret arrangement; and
gate means for combining the bits of said substitute information with bits of said digital address using modulo-2addition, thereby forming combined information.

3. The device of claim 2, further comprising second substitution means for transforming said combined information into second substitute information, said second substitution means comprising table means retaining binary numbers arranged in a secret arrangement.

4. The device of claim 2, wherein said gate means combines a first portion of bits of said digital address with said substitute information, and further comprising second gate means for combining said substitute information with a second portion of the bits of said digital address.

5. The device of claim 1, wherein said deciphering means comprises:

first substitution means for transforming said portion of enciphered information into first substitute information;
second substitution means for transforming said digital address into second substitute information; and
gate means for combining said first substitute information with said second substitute information using modulo-2 addition, thereby forming combined information.

6. The device of claim 1, wherein said deciphering means comprises:

scrambling means for performing a substitution transformation on said digital address, thereby forming a scrambled address; and
gate means for combining the bits of said scrambled address with bits of said portion of enciphered information using module-2 addition, thereby forming combined information.

7. The device of claim 6, wherein said scrambling means comprises:

grouping means for grouping the bits of said digital address into m sets;
first substitution means for transforming said m sets of bits into m sets of substitute bits, said substitution means comprising m tables, each table retaining numbers arranged in a secret arrangement;
transposition means for regrouping said m sets of substitute bits from said first substitution means into n groups, such that one bit from each set is transposed to each group;
second substitution means for transforming said n groups of bits into n groups of substitute bits, said substitution means comprising n tables, each table retaining numbers arranged in a secret arrangement; and
forming means for grouping said n groups of substitute bits from said second substitution means, thereby forming said scrambled address.

8. The device of claim 6, wherein said deciphering means further comprises substitution means for converting said portion of enciphered information into substitute information, said substitution means consisting of table means retaining numbers arranged in a secret arrangement.

9. The device of claim 1 further comprising enciphering means for converting plain information into enciphered information by combining said plain information with said address.

10. A cryptographic apparatus for converting a block of binary information into a product block cipher, said apparatus comprising:

means for accepting said block of binary information and grouping the bits of said block into m sets of n bits each;
first substitution means for transforming said m sets of bits into m sets of substitute bits, said substitution means comprising m tables, each table retaining 2.sup.n different numbers consisting of n bits each, arranged in said table in one secret arrangement out of 2.sup.n ! arrangements;
transposition means for regrouping said m sets of n substitute bits from said first substitution means into n groups of m bits each, such that one and only one bit from each set is transposed to each group;
second substitution means for transforming said n groups of bits into n groups of substitute bits, said substitution means comprising n tables, each table retaining 2.sup.m different numbers consisting of m bits each, arranged in said table in one secret arrangement out of 2.sup.m ! arrangements; and
forming means for grouping said n groups of m bits from said second substitution means to form said product block cipher.

11. A process for deciphering enciphered information comprising the steps of:

generating a digital address; obtaining a byte of enciphered information from a location specified by said digital address;
combining said byte of enciphered information with said address, thereby forming a substitute byte of deciphered information; and
repeating the above steps for each of a plurality of addresses.

12. The process of claim 11, wherein said combining step comprises:

selecting a first subset of bits from said address;
selecting a second subset of bits from said address;
combining said addressed byte of enciphered information with said first address subset, thereby forming a combined byte;
forming a substitute byte as a function of said combined byte; and
combining said substitute byte with said second address subset, thereby forming a deciphered byte.

13. The process of claim 12, wherein said first combining step comprises:

forming a second substitute byte as a function of said addressed byte; and
adding said second substitute byte to said first address subset, using modulo-2 addition.

14. The process of claim 12, wherein said first combining step comprises:

forming a second substitute byte as a function of said first address subset; and
adding said second substitute byte to said addressed byte, using modulo-2 addition.

15. The process of claim 11, wherein said combining step comprises:

selecting a first subset of bits from said address;
selecting a second subset of bits from said address;
forming a first substitute byte as a function of said first address subset;
forming a second substitute byte as a function of said second address subset;
combining said addressed byte of enciphered information with said first substitute byte, thereby forming a combined byte; and
combining said combined byte with said second substitute byte, thereby forming a deciphered byte.

16. The process of claim 11, wherein said combining step comprises:

substituting a scrambled address for said generated address;
adding said scrambled address to said byte of enciphered information using modulo-2 addition, thereby forming a deciphered byte.

17. The process of claim 16, wherein said substituting step comprises the steps of:

grouping the bits of said generated address into a plurality of sets;
substituting one substitute set of bits for each said set, as determined by a secret arrangement of numbers in a substitution table means;
transposing said substitute bits to form a plurality of groups of bits, such that one bit from each said set is transposed to each said group; and
substituting one substitute group of bits for each said group, as determined by a secret arrangement of numbers in a substitution table means, thereby producing a scrambled address.

18. The process of claim 16 further comprising a step of combining a first portion of said scrambled address with a second portion of said address using modulo-2 addition, thereby producing a doubly scrambled address.

19. The process of claim 11 further comprising a step of enciphering said digital address such that said location is a secret function of said digital address.

20. A process for enciphering plain information comprising the steps of:

generating an address for selecting the location where a byte of enciphered information will be stored during a later storing step;
substituting a scrambled address for said generated address;
adding said scrambled address to one byte of said plain information using modulo-2 addition, thereby forming an enciphered byte;
storing said enciphered byte into a storage means at a location selected by said address; and
repeating the above steps for each of a plurality of plain bytes.

21. A process for enciphering a block of binary information comprising the steps of:

grouping the bits of said block into m sets, each set having n bits, where m and n are both greater than one;
substituting for each said set of n bits, one combination of n bits out of 2.sup.n ! combinations of n bits, as determined by a secret arrangement of said combinations in a substitution table means;
transposing said substitute bits to form n groups of m bits each, such that one and only one bit from each said combination of n bits is transposed to each said group of m bits; and
substituting for each said group of m bits, one combination of m bits out of 2.sup.m ! combinations of m bits, as determined by a secret arrangement of said combinations in a substitution table means, thereby producing a product block cipher.

22. The process of claim 21 for enciphering a 16-bit number, comprising the steps of:

grouping the bits of said number into four 4-bit sets;
substituting a 4-bit substitution cipher for each said set;
transposing the 16 bits from said four substitution ciphers to form four 4-bit groups, such that each group obtains one and only one bit from each said set; and

substituting a 4-bit substitution cipher for each said group, thereby producing a cipher block of 16 bits.

23. The process of claim 21 for enciphering a 20-bit number, comprising the steps of:

grouping the bits of said number into four 5-bit sets;
substituting a 5-bit substitution cipher for each said set;
transposing the 20 bits from said four substitution ciphers to form five 4-bit groups, such that each group obtains one and only one bit from each said set; and
substituting a 4-bit substitution cipher for each said group, thereby producing a cipher block of 20 bits.

24. The process of claim 21 for enciphering a 25-bit number, comprising the steps of:

grouping the bits of said number into five 5-bit sets;
substituting a 5-bit substitution cipher for each said set;
transposing the 25 bits from said five substitution ciphers to form five 5-bit groups, such that each group obtains one and only one bit from each said set; and
substituting a 5-bit substitution cipher for each said group, thereby producing a cipher block of 25 bits.

25. A microprocessor apparatus for executing a computer program stored in enciphered form as a plurality of bytes of enciphered information, while protecting the deciphered form of the program, wherein each said byte of enciphered information is identified by a digital address, the apparatus comprising:

deciphering means using alternating steps of substitution and exclusive-OR addition for combining a byte of said enciphered information with its corresponding digital address as a function of substitution information so as to produce a byte of deciphered information;
memory means for storing said substitution information during the production of said byte of deciphered information by said deciphering means; and
processing means for fetching a byte of said deciphered information containing at least a portion of an executable instruction, and for executing said executable instruction, and for addressing a successor byte of enciphered information, said processing means being operative to produce output information from which less than a significant part of said program in deciphered form can be obtained.

26. The apparatus of claim 25, further comprising protective body means of rigid material intimately surrounding said deciphering means, said memory means, and said processing means, for deterring access by anyone to said deciphering means, memory means, and processing means.

27. The apparatus of claim 26, wherein said memory means comprises volatile memory means continuously powered by electrical supply means through a power conductor embedded in said rigid material, wherein damage to said rigid material opens said power conductor and results in erasure of said substitution information.

28. The apparatus of claim 26, wherein said deciphering means, said memory means, and said processing means are constructed as an integrated circuit on a chip of semiconductor material, wherein said chip of semiconductor material comprises a portion of said rigid material, and wherein a second portion of said rigid material consists of opaque glass covering said integrated circuit.

29. The apparatus of claim 26, wherein said deciphering means, said memory means, and said processing means are constructed as a hybrid integrated circuit on chips of semiconductor material, wherein said rigid material includes potting resin in which said hybrid integrated circuit is embedded.

30. A microprocessor apparatus for executing a computer program stored in enciphered form as a plurality of bytes of enciphered information, while protecting the deciphered form of the program, wherein each said byte of enciphered information is identified by a digital address, the apparatus comprising:

scrambling means for performing a substitution transformation on the digital address of a byte of said enciphered information, so as to produce a scrambled address:
means for deciphering said byte of enciphered information by combining said scrambled address with said byte of enciphered information so as to produce a byte of deciphered information; and
processing means for fetching a byte of said deciphered information containing at least a portion of an executable instruction, for executing said executable instruction, and for addressing a successor byte of enciphered information, said processing means being operative to produce output information from which less than a significant part of said program in deciphered form can be obtained.

31. The apparatus of claim 30, further comprising protective body means of rigid material intimately surrounding said scrambling means, said deciphering means, and said processing means, for deterring access by anyone to said scrambling means, deciphering means, and processing means.

32. The apparatus of claim 31, wherein the operation of said scrambling means is a function of substitution information, wherein said apparatus further comprises volatile memory means for storing said substitution information during the production of said scrambled address, and wherein said protective body means intimately surrounds said volatile memory means in addition to said scrambling means, said deciphering means and said processing means.

33. The apparatus of claim 30, wherein said scrambling means comprises substitution table means retaining binary integers arranged in a secret arrangement, wherein a portion of said scrambled address is obtained from said substitution table means by table lookup of a portion of said digital address.

34. The apparatus of claim 30, wherein said scrambling means comprises:

grouping means for grouping the bits of said digital address into m sets;
first substitution means for transforming said m sets of bits into m sets of substitute bits, said substitution means comprising m tables, each table retaining integers arranged in a secret arrangement;
transposition means for regrouping said m sets of substitute bits from said first substitution means into n groups, such that one bit from each set is transposed to each group;
second substitution means for transforming said n groups of bits into n groups of substitute bits, said substitution means comprising n tables, each table retaining integers arranged in a secret arrangement; and
forming means for grouping said n groups of bits from said second substitution means, thereby forming said scrambled address.

35. The apparatus of claim 30, wherein said deciphering means comprises exclusive-OR means for combining said scrambled address with said byte of enciphered information using modulo-2 addition.

36. The apparatus of claim 30, wherein said deciphering means further comprises substitution table means for converting said byte of enciphered information into substitute information.

37. A microprocessor apparatus for executing a computer program stored in enciphered form as a plurality of bytes of enciphered information, while protecting the deciphered form of the program, wherein each said byte of enciphered information is identified by a digital address, the apparatus comprising:

memory means for storing a plurality of bytes of information;
deciphering means for combining a byte of enciphered information obtained from said memory means with its corresponding digital address so as to produce a byte of deciphered information;
processing means for fetching a byte of said deciphered information containing at least a portion of an executable instruction, for executing said executable instruction, and for addressing a successor byte of enciphered information, said processing means being operative to produce output information from which less than a significant part of said program in deciphered form can be obtained; and
protective body means of rigid material intimately surrounding said deciphering means, said memory means, and said processing means, for deterring access by anyone to said deciphering means, memory means, and processing means.

38. The apparatus of claim 37, wherein the operation of said deciphering means is a function of substitution information, wherein said apparatus further comprises volatile storage means for storing said substitution information during the production of said deciphered information, and wherein said protective body means intimately surrounds said volatile storage means in addition to said memory means, said deciphering means and said processing means.

39. A microprocessor apparatus for providing restricted access to data information available to the apparatus in enciphered form, while controlling the amount of the data information output by the apparatus in deciphered form, wherein each byte of said enciphered data information is identified by a digital address, the apparatus comprising:

deciphering means for combining a byte of enciphered information with its corresponding digital address so as to produce a byte of deciphered information;
processing means for fetching and executing a plurality of executable instructions, and for addressing portions of enciphered information responsive to said instructions, so as to restrict the portions of enciphered information which are deciphered by said deciphering means, and for producing output information from said byte of deciphered information; and
protective body means of rigid material intimately surrounding said deciphering means and said processing means, for deterring access by anyone to said deciphering means, processing means, and executable instructions.

40. A cryptographic microprocessor constructed as an integrated circuit chip comprising:

substitution table means included in said chip for cryptographically transforming a byte of an enciphered program of executable instructions obtained from a storage means location to produce a byte of deciphered information;
processing means included in said chip for fetching a byte of said deciphered information containing at least a portion of an executable instruction in said program, and for executing said executable instruction, and for fetching a byte of said deciphered information containing at least a portion of a storage means address, and for addressing a location in said storage means specified by the storage means address to select a byte of said enciphered program for transforming by said table means, the processing means being operative to produce output information;
external bus means for conveying said output information to a location externally of the microprocessor; and
internal bus means included in said chip for conveying said instruction portion and said address portion from said substitution table means to said processing means, the internal bus means being selectively isolated from said external bus means so as to prevent external access through said external bus means to portions of said deciphered information.

41. A cryptographic microprocessor for executing a computer program stored in enciphered form as a plurality of portions of enciphered information, while protecting the deciphered form of the program, the apparatus comprising:

first substitution means comprising m tables of integers, the integers in each table having a predetermined permutation, for transforming m portions of said enciphered information into m sets of substitute bits, wherein m is greater than one;
transposition means for regrouping said m sets of substitute bits into n groups of bits and for transposing one bit from each set to each group, wherein n is greater than one;
second substitution means comprising n tables of integers, the integers in each table having a predetermined permutation, for transforming said n groups of bits into n groups of substitute bits, wherein said n groups of substitute bits comprise a portion of deciphered information;
processing means for fetching a byte of said deciphered information containing at least a portion of an executable instruction, and for executing said executable instruction, and for fetching a byte of said deciphered information containing at least a portion of a storage means address, the processing means being operative to produce output information; and
external bus means for conveying said output information externally of the microprocessor.

42. The microprocessor of claim 41, further comprising:

internal bus means for conveying said instruction portion and said address portion from said second substitution means to said processing means, the internal bus means being selectively isolated from said external bus means so as to prevent external access via said external bus means to portions of said deciphered information.

43. The microprocessor of claim 41, further comprising:

internal bus means for conveying said instruction portion and said address portion from said second substitution means to said processing means; and
buffer means connected to receive said output information from said processing means, and connected to said external bus means, and operating under control of said processing means in either an output state or an isolation state, and for conveying said output information to said external bus means during said output state, and for substantially isolating said internal bus means from said external bus means during said isolation state, said processing means effecting the isolation state of the buffer means during said fetching of a byte of said deciphered information via said internal bus means, thereby preventing external access via said external bus means to said computer program in deciphered form.

44. The microprocessor of claim 41, further comprising memory means for storing said portions of enciphered information.

45. The microprocessor of claim 41, further comprising enciphering means for transforming a portion of unenciphered information into a portion of enciphered information.

46. A cryptographic microprocessor for providing limited access to data information available to the apparatus in enciphered form, while controlling the amount of the data information output by the apparatus in deciphered form, the apparatus comprising:

first substitution means comprising m tables of integers, the integers in each table having a predetermined permutation, for transforming portions of said enciphered information into m sets of substitute bits, wherein m is greater than one;
transposition means for regrouping said m sets of substitute bits into n groups of bits and for transposing one bit from each set to each group, wherein n is greater than one;
second substitution means comprising n tables of integers, the integers in each table having a predetermined permutation, for transforming said n groups of bits into n groups of substitute bits, wherein said n groups of substitute bits comprise a portion of deciphered information;
processing means for fetching and executing a plurality of executable instructions, and for addressing portions of said enciphered information responsive to said instructions, and for producing output information from said portion of deciphered information;
external bus means for conveying said output information externally of the apparatus; and
internal bus means selectively isolated from said external bus means, for conveying said portion of decipered information from said second substitution means to said processing means, the isolation between said buses preventing external access via said external bus means to portions of said deciphered information not output by said processing means.

47. The microprocessor of claim 46, further comprising memory means for storing said portions of enciphered information.

48. A cryptographic apparatus for converting a block of binary information into a product block cipher, the apparatus comprising:

first substitution means comprising m tables of integers, the integers in each table having a predetermined permutation, for transforming m portions of said block into m sets of substitute bits, wherein m is greater than one;
transposition means for regrouping said m sets of substitute bits into n groups of bits and for transposing one bit from each set to each group, wherein n is greater than one; and
second substitution means comprising n tables of integers, the integers in each table having a predetermined permutation, for transforming said n groups of bits into n groups of substitute bits, wherein said n groups of substitute bits comprise said product block cipher.

49. A cryptographic microprocessor apparatus constructed as an integrated circuit chip for executing a computer program of instructions stored in enciphered form in a storage means as a plurality of bytes of enciphered program information, the apparatus comprising:

deciphering means included in said chip for cryptographically transforming a portion of said enciphered program information obtained from a storage means location to produce a portion of deciphered information;
processing means included in said chip for fetching a byte of said deciphered information containing at least a portion of an executable instruction in said program, and for executing said executable instruction, and for fetching a byte of said deciphered information containing at least a portion of a storage means address, and for addressing a location in said storage means specified by the storage means address to select a portion of said enciphered program information for transforming by said deciphering means, the processing means being operative to produce output information;
external bus means for conveying said output information to a location externally of the apparatus; and
internal bus means included in said chip for conveying said instruction portion and said address portion from said deciphering means to said processing means, the internal bus means being selectively isolated from said external bus means so as to prevent external access through said external bus means to portions of said deciphered information.

50. A cryptographic microprocessor apparatus constructed as an integrated circuit chip for executing a computer program of instructions stored in enciphered form in a storage means as a plurality of bytes of enciphered program information, the apparatus comprising:

deciphering means included in said chip for cryptographically transforming a portion of said enciphered program information obtained from a storage means location to produce a portion of deciphered information;
processing means included in said chip for fetching a byte of said deciphered information containing at least a portion of an executable instruction in said program, and for executing said executable instruction, and for fetching a byte of said deciphered information containing at least a portion of a storage means address, and for addressing a location in said storage means specified by the storage means address to select a portion of said enciphered program information for transforming by said deciphering means, the processing means being operative to produce output information;
external bus means for conveying said output information to a location externally of the apparatus;
internal bus means included in said chip for conveying said instruction portion and said address portion from said deciphering means to said processing means; and
buffer means included in said chip and connected to receive said output information from said processing means, and connected to said external bus means, and operating under control of said processing means in either an output state or an isolation state, and for conveying said output information to said external bus means during said output state, and for substantially isolating said internal bus means for said external bus means during said isolation state, said processing means effecting the isolation state of the buffer means during said fetching of a byte of said deciphered information through said internal bus means, thereby preventing external access through said external bus means to said computer program in deciphered form.

51. A cryptographic microprocessor apparatus for executing a computer program of instructions stored in enciphered form as a plurality of bytes of enciphered program information, the apparatus comprising:

deciphering means for cryptographically transforming a portion of said enciphered program information into a portion of deciphered information;
processing means for fetching a byte of said deciphered information containing at least a portion of an executable instruction, and for executing said executable instruction, and for fetching a byte of said deciphered information containing at least a portion of a storage means address, the processing means being operative to produce output information;
external bus means for conveying said output information to a location externally of the apparatus; and
internal bus means for conveying said instruction portion and said address portion from said deciphering means to said processing means, the internal bus means being selectively isolated from said external bus means so as to prevent external access through said external bus means to portions of said deciphered information.

52. A cryptographic microprocessor apparatus for executing a computer program of instructions including executable portions stored in enciphered form as portions of enciphered program information, portions of the program being stored at respective storage means locations, each location having a storage means address, the apparatus comprising:

deciphering means for cryptographically transforming a portion of said enciphered program information from said storage means to produce a portion of deciphered information;
processing means for fetching a byte of said deciphered information containing an executable portion of an instruction in said program, and for executing said instruction, and for fetching a byte containing at least a portion of a specific address in said program, and for addressing in said storage means a location specified by said specific address to select a subsequent portion of said enciphered program information for transforming by said deciphering means; and
internal bus means for conveying said executable portion form said deciphering means to said processing means, the internal bus means being isolated from external access during conveying of said executable portion so as to prevent external access to portions of said program in deciphered form.

53. A cryptographic microprocessor apparatus constructed as an integrated circuit chip for executing a computer program of instructions including executable portions and address portions stored in enciphered form as a plurality of bytes of enciphered program information at respective storage means locations, the apparatus comprising:

deciphering means included in said chip for cryptographically transforming a portion of said enciphered program information from said storage means to produce a portion of deciphered information;
processing means included in said chip for fetching a byte of said deciphered information containing an executable portion of an instruction in said program, and for executing said instruction, and for fetching a byte of said deciphered information containing at least a portion of a deciphered address in said program, and for addressing in said storage means a location specified by said deciphered address to select a subsequent portion of said enciphered program information for transforming by said deciphering means; and
internal bus means included in said chip for conveying said executable portion and said address portion from said deciphering means to said processing means, the internal bus means being isolated from external access during said conveying so as to prevent external access to portions of said program in deciphered form.