Movatterモバイル変換


[0]ホーム

URL:


US20040193987A1 - Protection of software code from unauthorized use by executing portions of the code in a secure computer environment separate from the environment that executes the remaining portions of the code - Google Patents

Protection of software code from unauthorized use by executing portions of the code in a secure computer environment separate from the environment that executes the remaining portions of the code
Download PDF

Info

Publication number
US20040193987A1
US20040193987A1US10/752,429US75242904AUS2004193987A1US 20040193987 A1US20040193987 A1US 20040193987A1US 75242904 AUS75242904 AUS 75242904AUS 2004193987 A1US2004193987 A1US 2004193987A1
Authority
US
United States
Prior art keywords
code
software
program
computer
fragments
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US10/752,429
Inventor
Sigurd Sigbjornsen
Magne Haglund
Vladimir Oleshchuk
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sospita AS
Original Assignee
Sospita AS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sospita ASfiledCriticalSospita AS
Priority to US10/752,429priorityCriticalpatent/US20040193987A1/en
Publication of US20040193987A1publicationCriticalpatent/US20040193987A1/en
Abandonedlegal-statusCriticalCurrent

Links

Images

Classifications

Definitions

Landscapes

Abstract

Code of at least one software program is executed in a multi-processor computer environment. Each software program includes a first portion of software code to be executed in a computer, and a second portion of software code that includes one or more fragments of code of the software program. The second portion of code is executed in one or more external devices which are in communication with the computer. The second portion of code is encrypted, transferred to a secure computer environment, such as a smart card, and decrypted in the one or more external devices prior to execution. The fragments of code may be interspersed within the first portion of code.

Description

Claims (33)

What is claimed is:
1. A method of executing code of at least one software program in a multi-processor computer environment, each software program including (i) a first portion of software code to be executed in a computer, and (ii) a second portion of software code that includes one or more fragments of code of the software program, the method comprising executing the second portion of code in one or more external devices which are in communication with the computer.
2. The method ofclaim 1 wherein the second portion of code is encrypted, the method further comprising transferring the second portion of code to a secure computer environment, and decrypting the second portion of code in the one or more external devices prior to execution.
3. The method ofclaim 2 wherein the one or more external devices are one or more smart cards, each smart card including a processor for executing the second portion of code, the smart card being the secure computer environment.
4. The method ofclaim 1 wherein the fragments of code are interspersed within the first portion of code.
5. The method ofclaim 1 wherein the second portion of code is stored in the computer, the method further comprising downloading the second portion of code into the one or more external devices prior to execution.
6. The method ofclaim 1 wherein there are a plurality of software programs, and the second portions include fragments from more than one of the software programs.
7. The method ofclaim 1 wherein the one or more external devices are tamper-resistant.
8. The method ofclaim 1 wherein the one or more external devices are one or more smart cards.
9. An apparatus which executes code of at least one software program in a multi-processor computer environment, each software program including (i) a first portion of software code, and
(ii) a second portion of software code that includes one or more fragments of code of the software program, the apparatus comprising:
(a) a first computer which executes the first portion; and
(b) one or more externals unit in communication with the computer, the one or more external units executing the second portion.
10. The apparatus ofclaim 9 wherein the second portion of code is encrypted, the apparatus further comprising:
(c) means for transferring the second portion of code to a secure computer environment; and
(d) means for decrypting the second portion of code in the one or more external devices prior to execution.
11. The apparatus ofclaim 10 wherein the one or more external devices are one or more smart cards, each smart card including a processor for executing the second portion of code, the smart card being the secure computer environment.
12. The apparatus ofclaim 9 wherein the second portion of code is stored in the computer, the apparatus further comprising:
(e) means for downloading the second portion of code into the one or more external devices prior to execution.
13. The apparatus ofclaim 9 wherein the one or more external devices are tamper-resistant.
14. The apparatus ofclaim 9 wherein the one or more external devices are one or more smart cards.
15. A method of transforming a computer program which includes software code, the method comprising:
(a) identifying one or more fragments of the software code,
(b) associating a program call with each of the identified fragments; and
(c) inserting the program call into the software code, thereby transforming the software program,
wherein when a program call is reached, the respective fragment of software code is executed.
16. The method ofclaim 15 further comprising:
(d) encrypting the software code associated with the identified fragments; and
(e) replacing the fragments with encrypted versions of the software code.
17. A method of executing a computer program which includes software code, the software code having (i) a first portion, and (ii) a second portion, the second portion including one or more fragments of the software code and a program call associated with each fragment, the method comprising:
(a) executing the first portion; and
(b) executing the associated fragments when a program call in the second portion is reached.
18. The method ofclaim 17 wherein the first portion executes in a computer, and the second portion executes in an external device with respect to the computer, and step (b) further comprises sending a fragment to the external device when a program call of the associated fragment is reached, and executing the fragment in the external device.
19. The method ofclaim 18 wherein step (b) further comprises generating a result upon execution of the fragment in the external device, the result being used during subsequent execution of the computer program.
20. The method ofclaim 18 wherein the external device is a smart card.
21. The method ofclaim 17 wherein the one or more fragments are encrypted code, the method further comprising:
(c) decrypting the one or more fragments prior to execution thereof.
22. An apparatus for executing a computer program which includes software code, the software code having (i) a first portion, and (ii) a second portion, the second portion including one or more fragments of the software code and a program call associated with each fragment, the apparatus comprising:
(a) means for executing the first portion; and
(b) means for executing the associated fragments when a program call in the second portion is reached.
23. The apparatus ofclaim 22 wherein the means for executing the first portion is in a computer, and the means for executing the associated fragments is in an external device with respect to the computer, and a fragment is sent to the external device when a program call of the associated fragment is reached, and is then executed in the external device.
24. The apparatus ofclaim 23 wherein the external device is a smart card.
25. The apparatus ofclaim 22 wherein the one or more fragments are encrypted code, the apparatus further comprising:
(c) means for decrypting the one or more fragments prior to execution thereof.
26. A method of access control of software code which is executed on a smart card that is in communication with a host computer, the smart card having stored therein access control parameters for identified software code, the method comprising:
(a) the host computer uploading software code and its identity data to the smart card; and
(b) the smart card using the access control parameters and the identity data to determine whether access is permissible for the uploaded software code, wherein the software may be executed only if access is permissible.
27. The method ofclaim 26 wherein the software code includes one or more fragments of software code of a software program that executes at the host computer.
28. The method ofclaim 26 wherein access control parameters include one or more of permission status, number of runs data, time data, and program variant data.
29. The method ofclaim 26 further comprising:
(c) modifying at least one of the access control parameters subsequent to an initial storage of the access control parameters.
30. A method of executing a plurality of software code fragments of a software program on an external unit, wherein the external unit is connected to a computer, the external unit including a processor and a memory, the method comprising:
(a) at execution time of each of the software code fragments, automatically uploading the respective software code fragment to the memory of the external unit; and
(b) executing the respective software code fragment in the external unit using only the processor and the memory of the external unit.
31. The method ofclaim 30 wherein the software code fragments are encrypted, the method further comprising:
(c) after step (a) and prior to step (b), decrypting the software code fragments.
32. A method of preparing code of a software program, the software program including (i) a first portion of source code to be executed by a first processor, and (ii) a second portion of source code to be executed by a second processor, the second portion of source code including one or more fragments of code of the software program, the method comprising prior to compilation of the software program, encrypting only the second portion of source code.
33. The method ofclaim 32 wherein the second processor is a smart card.
US10/752,4291995-07-132004-01-06Protection of software code from unauthorized use by executing portions of the code in a secure computer environment separate from the environment that executes the remaining portions of the codeAbandonedUS20040193987A1 (en)

Priority Applications (1)

Application NumberPriority DateFiling DateTitle
US10/752,429US20040193987A1 (en)1995-07-132004-01-06Protection of software code from unauthorized use by executing portions of the code in a secure computer environment separate from the environment that executes the remaining portions of the code

Applications Claiming Priority (5)

Application NumberPriority DateFiling DateTitle
NO9527951995-07-13
NO952795ANO302388B1 (en)1995-07-131995-07-13 Procedure and apparatus for protecting software against unauthorized use
US08/983,461US6266416B1 (en)1995-07-131996-07-10Protection of software against use without permit
US09/873,351US20030190043A1 (en)1995-07-132001-06-05Protection of software against use without permit
US10/752,429US20040193987A1 (en)1995-07-132004-01-06Protection of software code from unauthorized use by executing portions of the code in a secure computer environment separate from the environment that executes the remaining portions of the code

Related Parent Applications (1)

Application NumberTitlePriority DateFiling Date
US09/873,351ContinuationUS20030190043A1 (en)1995-07-132001-06-05Protection of software against use without permit

Publications (1)

Publication NumberPublication Date
US20040193987A1true US20040193987A1 (en)2004-09-30

Family

ID=19898393

Family Applications (3)

Application NumberTitlePriority DateFiling Date
US08/983,461Expired - Fee RelatedUS6266416B1 (en)1995-07-131996-07-10Protection of software against use without permit
US09/873,351AbandonedUS20030190043A1 (en)1995-07-132001-06-05Protection of software against use without permit
US10/752,429AbandonedUS20040193987A1 (en)1995-07-132004-01-06Protection of software code from unauthorized use by executing portions of the code in a secure computer environment separate from the environment that executes the remaining portions of the code

Family Applications Before (2)

Application NumberTitlePriority DateFiling Date
US08/983,461Expired - Fee RelatedUS6266416B1 (en)1995-07-131996-07-10Protection of software against use without permit
US09/873,351AbandonedUS20030190043A1 (en)1995-07-132001-06-05Protection of software against use without permit

Country Status (17)

CountryLink
US (3)US6266416B1 (en)
EP (2)EP0855052B1 (en)
JP (1)JP4267065B2 (en)
KR (1)KR19990028931A (en)
CN (1)CN1155866C (en)
AT (1)ATE233916T1 (en)
AU (1)AU713872B2 (en)
DE (1)DE69626530T2 (en)
DK (1)DK0855052T3 (en)
ES (1)ES2194109T3 (en)
HK (1)HK1048674A1 (en)
IL (1)IL122888A (en)
NO (1)NO302388B1 (en)
NZ (1)NZ313319A (en)
PL (1)PL187088B1 (en)
PT (1)PT855052E (en)
WO (1)WO1997003398A1 (en)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US20010044902A1 (en)*2000-01-032001-11-22Shavit Nir N.Secure software system and related techniques
US20030150913A1 (en)*2000-07-072003-08-14Fujitsu LimitedIC card terminal
US20050204405A1 (en)*2004-03-042005-09-15Brian WormingtonMethod and system for digital rights management
US20070135111A1 (en)*2005-12-092007-06-14Floyd David GLayered mobile application security system
EP1798653A1 (en)2005-12-162007-06-20Aladdin Europe GmbHMethod and device for protecting a program comprising a function block
US20070177720A1 (en)*2004-03-112007-08-02Oberthur Card Systems SaSecure data processing method based particularly on a cryptographic algorithm
WO2007126341A3 (en)*2006-04-272008-04-17Vladimir Nikitich VstovskiyMethod and device for protecting software from unauthorized use
US20080133419A1 (en)*2006-12-052008-06-05Brian WormingtonSecure financial transaction system and method
DE102007059798B3 (en)*2007-12-112009-04-09Ascolab GmbhExecutable program code i.e. executable file, coding method for computer, involves combining chains of sequential instructions to code fragments, and coding and storing detected code fragments belonging to methods in program library
US20090276826A1 (en)*2008-04-302009-11-05Ricoh Company, Ltd.Image forming apparatus, method, and computer-readable recording medium for access control
US20110271260A1 (en)*2008-12-292011-11-03Oin KwonMethod for separately executing software, apparatus, and computer-readable recording medium
US20130283396A1 (en)*2009-07-302013-10-24Rascalim Software Security Ltd.System and method for limiting execution of software to authorized users
WO2014030168A2 (en)2011-08-052014-02-27Kpit Technologies Ltd.A system for protection of embedded software codes
US20170076072A1 (en)*2015-09-112017-03-16Patrick Robert KorenMethod and apparatus for preventing and investigating software piracy
US11163859B2 (en)*2011-09-092021-11-02Nvidia CorporationContent protection via online servers and code execution in a secure operating system
US20220374512A1 (en)*2021-05-212022-11-24Vmware, Inc.Software-based hardware security module (hsm) for a virtualized computing environment
US11829454B2 (en)*2018-03-092023-11-28Patrick Robert KorenMethod and apparatus for preventing and investigating software piracy

Families Citing this family (124)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
NO302388B1 (en)*1995-07-131998-02-23Sigurd Sigbjoernsen Procedure and apparatus for protecting software against unauthorized use
US6523119B2 (en)*1996-12-042003-02-18Rainbow Technologies, Inc.Software protection device and method
FR2760871B1 (en)*1997-03-131999-04-16Bull Cp8 METHOD FOR STORING AND EXPLOITING SENSITIVE INFORMATION IN A SECURITY MODULE, AND RELATED SECURITY MODULE
SG67401A1 (en)*1997-07-071999-09-21Low Huan KhingA method and system for protecting intellectual property products distributed in mass market
US6442276B1 (en)1997-07-212002-08-27Assure Systems, Inc.Verification of authenticity of goods by use of random numbers
US6643775B1 (en)*1997-12-052003-11-04Jamama, LlcUse of code obfuscation to inhibit generation of non-use-restricted versions of copy protected software applications
DE69837113T2 (en)1998-01-202007-06-06Fujitsu Ltd., Kawasaki Data storage arrangement and control method therefor
EP1004979A1 (en)*1998-11-242000-05-31CANAL+ Société AnonymePortable electronic card
US7140005B2 (en)*1998-12-212006-11-21Intel CorporationMethod and apparatus to test an instruction sequence
US7730300B2 (en)1999-03-302010-06-01Sony CorporationMethod and apparatus for protecting the transfer of data
US7565546B2 (en)1999-03-302009-07-21Sony CorporationSystem, method and apparatus for secure digital content transmission
US6697489B1 (en)1999-03-302004-02-24Sony CorporationMethod and apparatus for securing control words
JP2001016195A (en)*1999-04-272001-01-19Matsushita Electric Ind Co Ltd Information use control device
FR2793050B1 (en)*1999-04-282001-08-17Fingerprint METHOD FOR SECURING USER SOFTWARE FROM A SECRET PROCESSING AND STORING UNIT AND SYSTEM USING THE SAME
US7117369B1 (en)*1999-05-032006-10-03Microsoft CorporationPortable smart card secured memory system for porting user profiles and documents
US7036738B1 (en)1999-05-032006-05-02Microsoft CorporationPCMCIA-compliant smart card secured memory assembly for porting user profiles and documents
US6681214B1 (en)*1999-06-292004-01-20Assure Systems, Inc.Secure system for printing authenticating digital signatures
JP4127587B2 (en)1999-07-092008-07-30株式会社東芝 Content management method, content management apparatus, and recording medium
US7351919B1 (en)*1999-07-152008-04-01Thomson LicensingPort cover for limiting transfer of electromagnetic radiation from a port defined in a host device
US6684389B1 (en)*1999-08-052004-01-27Canon Kabushiki KaishaCompiler that decrypts encrypted source code
EP1076279A1 (en)*1999-08-132001-02-14Hewlett-Packard CompanyComputer platforms and their methods of operation
GB9922665D0 (en)1999-09-251999-11-24Hewlett Packard CoA method of enforcing trusted functionality in a full function platform
US6912513B1 (en)*1999-10-292005-06-28Sony CorporationCopy-protecting management using a user scrambling key
US7039614B1 (en)1999-11-092006-05-02Sony CorporationMethod for simulcrypting scrambled data to a plurality of conditional access devices
DE10003086A1 (en)*2000-01-252001-08-02Infineon Technologies Ag Data processing system
US7225164B1 (en)2000-02-152007-05-29Sony CorporationMethod and apparatus for implementing revocation in broadcast networks
SE0000871L (en)*2000-03-132001-09-14Oerjan Vestgoete A method and system for preventing unauthorized use of software in electronic commerce
KR20000053933A (en)*2000-05-102000-09-05류종렬System for confirming of original software and the method thereof
DE10023820B4 (en)*2000-05-152006-10-19Siemens Ag Software protection mechanism
WO2001088732A1 (en)*2000-05-172001-11-22Smart Modular Technologies, (Ma) Inc.Programming a memory based on information obtained from a remote location
MD1871G2 (en)*2000-07-282002-08-31Компания ДЕКАРТ с ограниченной ответственностьюProcess for protection from copying of databases and computer programs
JP4067757B2 (en)*2000-10-312008-03-26株式会社東芝 Program distribution system
WO2002086684A2 (en)*2001-04-242002-10-31Hewlett-Packard CompanyAn information security system
ATE242892T1 (en)2001-05-112003-06-15Sospita As SEQUENCE NUMBERING MECHANISM TO ENSURE THE EXECUTION ORDER INTEGRITY OF INTERDEPENDENT SMART CARD APPLICATIONS
EP1296477A1 (en)*2001-05-152003-03-26Mitsubishi Denki Kabushiki KaishaContent reproduction apparatus, content distribution server, and content distribution system
US7336787B2 (en)2001-06-062008-02-26Sony CorporationCritical packet partial encryption
US7895616B2 (en)2001-06-062011-02-22Sony CorporationReconstitution of program streams split across multiple packet identifiers
US7350082B2 (en)2001-06-062008-03-25Sony CorporationUpgrading of encryption
US7747853B2 (en)2001-06-062010-06-29Sony CorporationIP delivery of secure digital content
US7146340B1 (en)*2001-07-252006-12-05Novell, Inc.Method and systems for licensing electronic data
KR100435918B1 (en)*2001-11-092004-06-16주식회사 휴맥스Method for encryption recording a data in digital broadcasting program
US20040255136A1 (en)*2001-11-122004-12-16Alexey Borisovich FadyushinMethod and device for protecting information against unauthorised use
CA2363795A1 (en)*2001-11-262003-05-26Cloakware CorporationComputer system protection by communication diversity
AU2002354095B2 (en)*2001-12-212008-01-10Sony Interactive Entertainment Inc.Methods and apparatus for secure distribution of program content
KR20030055713A (en)*2001-12-272003-07-04한국전자통신연구원The apparatus and method of digital contents's protection
US7242773B2 (en)2002-09-092007-07-10Sony CorporationMultiple partial encryption using retuning
US7765567B2 (en)2002-01-022010-07-27Sony CorporationContent replacement by PID mapping
US7155012B2 (en)2002-01-022006-12-26Sony CorporationSlice mask and moat pattern partial encryption
US7302059B2 (en)2002-01-022007-11-27Sony CorporationStar pattern partial encryption
US7218738B2 (en)2002-01-022007-05-15Sony CorporationEncryption and content control in a digital broadcast system
US7376233B2 (en)2002-01-022008-05-20Sony CorporationVideo slice and active region based multiple partial encryption
US7039938B2 (en)2002-01-022006-05-02Sony CorporationSelective encryption for video on demand
US7823174B2 (en)2002-01-022010-10-26Sony CorporationMacro-block based content replacement by PID mapping
US7215770B2 (en)2002-01-022007-05-08Sony CorporationSystem and method for partially encrypted multimedia stream
US7233669B2 (en)2002-01-022007-06-19Sony CorporationSelective encryption to enable multiple decryption keys
US7292691B2 (en)2002-01-022007-11-06Sony CorporationProgressive video refresh slice detection
JP2003280754A (en)*2002-03-252003-10-02Nec CorpHidden source program, source program converting method and device and source converting program
US7162644B1 (en)2002-03-292007-01-09Xilinx, Inc.Methods and circuits for protecting proprietary configuration data for programmable logic devices
US20030200449A1 (en)*2002-04-172003-10-23International Business Machines CorporationMethod of accessing a shared subroutine of computer system
US20030217280A1 (en)*2002-05-172003-11-20Keaton Thomas S.Software watermarking for anti-tamper protection
US7530084B2 (en)2002-05-282009-05-05Sony CorporationMethod and apparatus for synchronizing dynamic graphics
US7093119B2 (en)2002-07-162006-08-15International Business Machines CorporationMethods and computer program products for protecting source code of an interpreted programming language
WO2004012378A2 (en)*2002-07-302004-02-05Digital Interactive Streams, Inc.Digital content security system and method
WO2004013744A2 (en)*2002-08-012004-02-12Matsushita Electric Industrial Co., Ltd.Apparatuses and methods for decrypting encrypted blocks of data and locating the decrypted blocks of data in memory space used for execution
GB2392262A (en)*2002-08-232004-02-25Hewlett Packard CoA method of controlling the processing of data
US8818896B2 (en)2002-09-092014-08-26Sony CorporationSelective encryption with coverage encryption
US8572408B2 (en)2002-11-052013-10-29Sony CorporationDigital rights management of a digital device
US7724907B2 (en)2002-11-052010-05-25Sony CorporationMechanism for protecting the transfer of digital content
AR042599A1 (en)*2002-11-192005-06-29Schiavoni Juan Jose METHOD OF PROTECTION OF PROGRAMS AND EQUIPMENT TO PERFORM IT
JP2004171367A (en)*2002-11-212004-06-17Matsushita Electric Ind Co Ltd Circuit operation simulation apparatus, circuit operation simulation method, circuit operation simulation program, and circuit information decoding program
JP3878542B2 (en)*2002-11-292007-02-07株式会社東芝 Recording device
US8645988B2 (en)2002-12-132014-02-04Sony CorporationContent personalization for digital content
US8667525B2 (en)2002-12-132014-03-04Sony CorporationTargeted advertisement selection from a digital stream
EP1439446B1 (en)*2003-01-142006-03-29Aladdin Knowledge Systems GmbH& Co. KGMethod for extending a program through a copy protection function
US7409702B2 (en)2003-03-202008-08-05Sony CorporationAuxiliary program association table
US7292692B2 (en)2003-03-252007-11-06Sony CorporationContent scrambling with minimal impact on legacy devices
WO2005022341A2 (en)*2003-08-292005-03-10Tgbw Inc.Flash memory distribution of digital content
US7286667B1 (en)2003-09-152007-10-23Sony CorporationDecryption system
US8220058B2 (en)*2003-09-252012-07-10Oracle America, Inc.Rendering and encryption engine for application program obfuscation
US7415618B2 (en)*2003-09-252008-08-19Sun Microsystems, Inc.Permutation of opcode values for application program obfuscation
US7424620B2 (en)*2003-09-252008-09-09Sun Microsystems, Inc.Interleaved data and instruction streams for application program obfuscation
US20050071656A1 (en)*2003-09-252005-03-31Klein Dean A.Secure processor-based system and method
US20050069138A1 (en)*2003-09-252005-03-31Sun Microsystems, Inc., A Delaware CorporationApplication program obfuscation
US7353499B2 (en)*2003-09-252008-04-01Sun Microsystems, Inc.Multiple instruction dispatch tables for application program obfuscation
US7363620B2 (en)*2003-09-252008-04-22Sun Microsystems, Inc.Non-linear execution of application program instructions for application program obfuscation
US7346163B2 (en)2003-10-312008-03-18Sony CorporationDynamic composition of pre-encrypted video on demand content
US7620180B2 (en)2003-11-032009-11-17Sony CorporationPreparation of content for multiple conditional access methods in video on demand
US7853980B2 (en)2003-10-312010-12-14Sony CorporationBi-directional indices for trick mode video-on-demand
US7343013B2 (en)2003-12-162008-03-11Sony CorporationComposite session-based encryption of video on demand content
US7263187B2 (en)2003-10-312007-08-28Sony CorporationBatch mode session-based encryption of video on demand content
KR20060127007A (en)*2003-12-222006-12-11코닌클리케 필립스 일렉트로닉스 엔.브이. Software execution protection using active entities
CN101023433A (en)*2004-07-022007-08-22皇家飞利浦电子股份有限公司Security unit and method for protecting data
US20060020552A1 (en)*2004-07-262006-01-26James SloanCopy-restriction system for digitally recorded, computer disk-based music recordings
US8041190B2 (en)2004-12-152011-10-18Sony CorporationSystem and method for the creation, synchronization and delivery of alternate content
US7895617B2 (en)2004-12-152011-02-22Sony CorporationContent substitution editor
US20060137016A1 (en)*2004-12-202006-06-22Dany MargalitMethod for blocking unauthorized use of a software application
CN100373376C (en)*2005-01-212008-03-05深圳市致芯微电子有限公司Encryption chip, CPU program encryption method using said chip and system thereof
WO2006100522A1 (en)2005-03-222006-09-28Hewlett-Packard Development Company, L.P.Methods, devices and data structures for trusted data
EP1717723A1 (en)*2005-04-292006-11-02ST Incard S.r.l.Improved virtual machine or hardware processor for IC-card portable electronic devices
JP2007065850A (en)*2005-08-302007-03-15Fujitsu Ltd Information processing apparatus, information processing method, and program
US20070074050A1 (en)*2005-09-142007-03-29Noam CamielSystem and method for software and data copy protection
JP4631658B2 (en)*2005-11-092011-02-16ソニー株式会社 Digital broadcast receiving system and digital broadcast receiving apparatus
CN100446016C (en)*2005-11-172008-12-24北京兆维电子(集团)有限责任公司System for realizing data security protecting
US8701091B1 (en)2005-12-152014-04-15Nvidia CorporationMethod and system for providing a generic console interface for a graphics application
US8185921B2 (en)2006-02-282012-05-22Sony CorporationParental control of displayed content using closed captioning
US8452981B1 (en)*2006-03-012013-05-28Nvidia CorporationMethod for author verification and software authorization
US7555464B2 (en)2006-03-012009-06-30Sony CorporationMultiple DRM management
US8436870B1 (en)2006-08-012013-05-07Nvidia CorporationUser interface and method for graphical processing analysis
US8963932B1 (en)2006-08-012015-02-24Nvidia CorporationMethod and apparatus for visualizing component workloads in a unified shader GPU architecture
US8436864B2 (en)*2006-08-012013-05-07Nvidia CorporationMethod and user interface for enhanced graphical operation organization
US8607151B2 (en)*2006-08-012013-12-10Nvidia CorporationMethod and system for debugging a graphics pipeline subunit
CN100428262C (en)*2006-09-222008-10-22中山大学 A Software Protection Method Based on Improved One-Time-Password Random Code Book
US8479020B2 (en)*2007-07-252013-07-02Motorola Mobility LlcMethod and apparatus for providing an asymmetric encrypted cookie for product data storage
US8448002B2 (en)*2008-04-102013-05-21Nvidia CorporationClock-gated series-coupled data processing modules
KR101224717B1 (en)*2008-12-262013-01-21에스케이플래닛 주식회사Method for Protecting Software License, System, Server, Terminal And Computer-Readable Recording Medium with Program therefor
EP2689375B1 (en)*2011-03-212021-09-15Irdeto B.V.System and method for securely binding and node-locking program execution to a trusted signature authority
ITMI20120561A1 (en)2012-04-052013-10-06St Microelectronics Srl METHOD TO PROTECT AN APPLICATION PROGRAM
US9323315B2 (en)2012-08-152016-04-26Nvidia CorporationMethod and system for automatic clock-gating of a clock grid at a clock source
US8850371B2 (en)2012-09-142014-09-30Nvidia CorporationEnhanced clock gating in retimed modules
US9471456B2 (en)2013-05-152016-10-18Nvidia CorporationInterleaved instruction debugger
CN103324871A (en)*2013-05-232013-09-25董礼貌Software changing linking device, system and method
CN104462990B (en)*2013-09-132019-02-26腾讯科技(深圳)有限公司Character string encipher-decipher method and device
JP6287964B2 (en)*2015-06-092018-03-07株式会社デンソー Software duplication prevention system
JP6381857B1 (en)*2017-06-232018-08-29三菱電機株式会社 Ladder program unauthorized use prevention system, ladder program unauthorized use prevention method, and engineering tool

Citations (14)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US4558176A (en)*1982-09-201985-12-10Arnold Mark GComputer systems to inhibit unauthorized copying, unauthorized usage, and automated cracking of protected software
US4634807A (en)*1984-08-231987-01-06National Research Development Corp.Software protection device
US4799258A (en)*1984-02-131989-01-17National Research Development CorporationApparatus and methods for granting access to computers
US4817140A (en)*1986-11-051989-03-28International Business Machines Corp.Software protection system using a single-key cryptosystem, a hardware-based authorization system and a secure coprocessor
US5081676A (en)*1990-10-041992-01-14Chou Wayne WMethod and apparatus for protecting multiple copies of computer software from unauthorized use
US5109413A (en)*1986-11-051992-04-28International Business Machines CorporationManipulating rights-to-execute in connection with a software copy protection mechanism
US5319704A (en)*1993-06-171994-06-07Exar CorporationControl circuit for voltage controlled attenuator for speakerphones
US5337357A (en)*1993-06-171994-08-09Software Security, Inc.Method of software distribution protection
US5343527A (en)*1993-10-271994-08-30International Business Machines CorporationHybrid encryption method and system for protecting reusable software components
US5398285A (en)*1993-12-301995-03-14Motorola, Inc.Method for generating a password using public key cryptography
US5410717A (en)*1991-03-221995-04-25Allen-Bradley Company, Inc.Removable function card for a programmable controller processor
US5485519A (en)*1991-06-071996-01-16Security Dynamics Technologies, Inc.Enhanced security for a secure token code
US5651068A (en)*1995-03-081997-07-22Hewlett-Packard CompanyInternational cryptography framework
US6266416B1 (en)*1995-07-132001-07-24Sigbjoernsen SigurdProtection of software against use without permit

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
FR2523745B1 (en)*1982-03-181987-06-26Bull Sa METHOD AND DEVICE FOR PROTECTING SOFTWARE DELIVERED BY A SUPPLIER TO A USER
GB8423784D0 (en)*1984-09-201984-10-24Fifield K JProcessing device
CA1238427A (en)*1984-12-181988-06-21Jonathan OseasCode protection using cryptography
DE3751047T2 (en)*1986-11-051995-08-10Ibm Software protection system including a one-key crypto system, a hardware-based authorization system and a protected additional processor.
US5222133A (en)*1991-10-171993-06-22Wayne W. ChouMethod of protecting computer software from unauthorized execution using multiple keys
US5319705A (en)*1992-10-211994-06-07International Business Machines CorporationMethod and system for multimedia access control enablement
DE4239865A1 (en)1992-11-271994-06-01Heinz JohannUnauthorised program use prevention method - inserting installation chip card data carrier into test appts. before starting, interrogating card to check program addresses, and interrupting program with incorrect answer
DE4419115A1 (en)1994-06-011994-10-20Michael DoelkerMethod of highly effective protection from unauthorised use of software copies

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US4558176A (en)*1982-09-201985-12-10Arnold Mark GComputer systems to inhibit unauthorized copying, unauthorized usage, and automated cracking of protected software
US4799258A (en)*1984-02-131989-01-17National Research Development CorporationApparatus and methods for granting access to computers
US4634807A (en)*1984-08-231987-01-06National Research Development Corp.Software protection device
US4817140A (en)*1986-11-051989-03-28International Business Machines Corp.Software protection system using a single-key cryptosystem, a hardware-based authorization system and a secure coprocessor
US5109413A (en)*1986-11-051992-04-28International Business Machines CorporationManipulating rights-to-execute in connection with a software copy protection mechanism
US5081676A (en)*1990-10-041992-01-14Chou Wayne WMethod and apparatus for protecting multiple copies of computer software from unauthorized use
US5410717A (en)*1991-03-221995-04-25Allen-Bradley Company, Inc.Removable function card for a programmable controller processor
US5485519A (en)*1991-06-071996-01-16Security Dynamics Technologies, Inc.Enhanced security for a secure token code
US5319704A (en)*1993-06-171994-06-07Exar CorporationControl circuit for voltage controlled attenuator for speakerphones
US5337357A (en)*1993-06-171994-08-09Software Security, Inc.Method of software distribution protection
US5343527A (en)*1993-10-271994-08-30International Business Machines CorporationHybrid encryption method and system for protecting reusable software components
US5398285A (en)*1993-12-301995-03-14Motorola, Inc.Method for generating a password using public key cryptography
US5651068A (en)*1995-03-081997-07-22Hewlett-Packard CompanyInternational cryptography framework
US6266416B1 (en)*1995-07-132001-07-24Sigbjoernsen SigurdProtection of software against use without permit

Cited By (27)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US20010044902A1 (en)*2000-01-032001-11-22Shavit Nir N.Secure software system and related techniques
US20030150913A1 (en)*2000-07-072003-08-14Fujitsu LimitedIC card terminal
US20050204405A1 (en)*2004-03-042005-09-15Brian WormingtonMethod and system for digital rights management
US20050216548A1 (en)*2004-03-042005-09-29Brian WormingtonMethod and system for digital content distribution
US20070177720A1 (en)*2004-03-112007-08-02Oberthur Card Systems SaSecure data processing method based particularly on a cryptographic algorithm
US8386791B2 (en)*2004-03-112013-02-26Oberthur TechnologiesSecure data processing method based particularly on a cryptographic algorithm
US20070135111A1 (en)*2005-12-092007-06-14Floyd David GLayered mobile application security system
US7991159B2 (en)*2005-12-092011-08-02Alcatel-Lucent Usa Inc.Layered mobile application security system
US20070143630A1 (en)*2005-12-162007-06-21Aladdin Knowledge Systems (Deutschland) GmbhMethod and device for protecting a program comprising a functional block
EP1798653A1 (en)2005-12-162007-06-20Aladdin Europe GmbHMethod and device for protecting a program comprising a function block
US8495388B2 (en)2005-12-162013-07-23Sfnt Germany GmbhMethod and device for protecting a program comprising a functional block
WO2007126341A3 (en)*2006-04-272008-04-17Vladimir Nikitich VstovskiyMethod and device for protecting software from unauthorized use
US20090094601A1 (en)*2006-04-272009-04-09Vstovskiy Vladimir NikitichMethod and device for protecting software from unauthorized use
EA012921B1 (en)*2006-04-272010-02-26Владимир Никитич ВстовскийMethod and device for protecting software from unauthorized use
US20080133419A1 (en)*2006-12-052008-06-05Brian WormingtonSecure financial transaction system and method
DE102007059798B3 (en)*2007-12-112009-04-09Ascolab GmbhExecutable program code i.e. executable file, coding method for computer, involves combining chains of sequential instructions to code fragments, and coding and storing detected code fragments belonging to methods in program library
US20090276826A1 (en)*2008-04-302009-11-05Ricoh Company, Ltd.Image forming apparatus, method, and computer-readable recording medium for access control
US9135468B2 (en)*2008-04-302015-09-15Ricoh Company, Ltd.Apparatus, method, and computer-readable recording medium for access control
US20110271260A1 (en)*2008-12-292011-11-03Oin KwonMethod for separately executing software, apparatus, and computer-readable recording medium
US9454456B2 (en)*2008-12-292016-09-27Sk Planet Co., Ltd.Method for separately executing software, apparatus, and computer-readable recording medium
US20130283396A1 (en)*2009-07-302013-10-24Rascalim Software Security Ltd.System and method for limiting execution of software to authorized users
WO2014030168A2 (en)2011-08-052014-02-27Kpit Technologies Ltd.A system for protection of embedded software codes
US11163859B2 (en)*2011-09-092021-11-02Nvidia CorporationContent protection via online servers and code execution in a secure operating system
US20170076072A1 (en)*2015-09-112017-03-16Patrick Robert KorenMethod and apparatus for preventing and investigating software piracy
US9881142B2 (en)*2015-09-112018-01-30Patrick Robert KorenMethod and apparatus for preventing and investigating software piracy
US11829454B2 (en)*2018-03-092023-11-28Patrick Robert KorenMethod and apparatus for preventing and investigating software piracy
US20220374512A1 (en)*2021-05-212022-11-24Vmware, Inc.Software-based hardware security module (hsm) for a virtualized computing environment

Also Published As

Publication numberPublication date
KR19990028931A (en)1999-04-15
DK0855052T3 (en)2003-07-07
US20030190043A1 (en)2003-10-09
AU713872B2 (en)1999-12-09
IL122888A0 (en)1998-08-16
MX9800385A (en)1998-09-30
DE69626530T2 (en)2003-11-13
WO1997003398A1 (en)1997-01-30
CN1155866C (en)2004-06-30
HK1009533A1 (en)1999-06-04
NO952795L (en)1997-01-14
NO302388B1 (en)1998-02-23
ES2194109T3 (en)2003-11-16
AU6535796A (en)1997-02-10
IL122888A (en)2000-10-31
CN1192814A (en)1998-09-09
EP1253503A3 (en)2004-07-14
NO952795D0 (en)1995-07-13
EP0855052B1 (en)2003-03-05
EP1253503A2 (en)2002-10-30
ATE233916T1 (en)2003-03-15
EP0855052A1 (en)1998-07-29
PL187088B1 (en)2004-05-31
HK1048674A1 (en)2003-04-11
JP4267065B2 (en)2009-05-27
PT855052E (en)2003-06-30
US6266416B1 (en)2001-07-24
NZ313319A (en)1999-10-28
DE69626530D1 (en)2003-04-10
PL324525A1 (en)1998-06-08
JPH11509023A (en)1999-08-03

Similar Documents

PublicationPublication DateTitle
US6266416B1 (en)Protection of software against use without permit
EP1423771B1 (en)Method to protect software against unauthorized use
US6684198B1 (en)Program data distribution via open network
US6871192B2 (en)System and method for preventing unauthorized use of protected software utilizing a portable security device
US20060048223A1 (en)Method and system for providing tamper-resistant software
EP1630998A1 (en)User terminal for receiving license
CN101305333A (en)Tamper-resistant trusted virtual machine
WO1997025798A1 (en)System for controlling access and distribution of digital property
US20110083020A1 (en)Securing a smart card
US6336189B1 (en)Apparatus and method for data capsule generation
US5710817A (en)Method and device for preventing unauthorized access to a computer system
US20070198857A1 (en)Software execution protection using an active entity
US20030118188A1 (en)Apparatus and method for accessing material using an entity locked secure registry
EP1436998B1 (en)Apparatus and method for accessing material using an entity locked secure registry
CA2226386C (en)Protection of software against use without permit
AU2002351507A1 (en)Apparatus and method for accessing material using an entity locked secure registry
HK1009533B (en)Protection of software against use without permit
WO1994004972A1 (en)Method and device for preventing unauthorised access to a computer system
MXPA98000385A (en)Protection of computer programs against unauthorized use

Legal Events

DateCodeTitleDescription
STCBInformation on status: application discontinuation

Free format text:ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION


[8]ページ先頭

©2009-2025 Movatter.jp