BR112012031052A2 - processor-implemented method to ensure software integrity - Google Patents

processor-implemented method to ensure software integrity

Info

Publication number
BR112012031052A2
BR112012031052A2 BR112012031052A BR112012031052A BR112012031052A2 BR 112012031052 A2 BR112012031052 A2 BR 112012031052A2 BR 112012031052 A BR112012031052 A BR 112012031052A BR 112012031052 A BR112012031052 A BR 112012031052A BR 112012031052 A2 BR112012031052 A2 BR 112012031052A2
Authority
BR
Brazil
Prior art keywords
instruction
character
software
integrity
processor
Prior art date
Application number
BR112012031052A
Other languages
Portuguese (pt)
Other versions
BR112012031052B1 (en
Inventor
Henri Kudelski
Marco Macchetti
Original Assignee
Nagravision Sa
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 Nagravision Sa filed Critical Nagravision Sa
Publication of BR112012031052A2 publication Critical patent/BR112012031052A2/en
Publication of BR112012031052B1 publication Critical patent/BR112012031052B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/3017Runtime instruction translation, e.g. macros
    • G06F9/30178Runtime instruction translation, e.g. macros of compressed or encrypted instructions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/54Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by adding security routines or objects to programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/72Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits

Abstract

método implementado por processador voltado para assegurar a integridade do software. a presente invenção proporciona com uma solução junto ao problema de assegurar-se quanto a integridade de programas de software por meio de criptografia de parte ou da totalidade pertinente a cada instrução de um programa fazendo emprego de um caractere baseado parcialmente ou totalmente em uma instrução anterior ou na pluralidade de instruções anteriores, resultando, desse modo, em um diferenciado caractere de criptografia por instrução. a invenção encontra aplicação junto à programas de software cujas estruturas não se apresentem necessariamente sob o formato naturalmente ramificado, encontrando ainda aplicação quando os programas incluem a presença de enlaces, saltos, chamadas ou quebras, etc. a invenção fornece condições ainda a que ocorra a sinalização de excepcionalidades quando da efetuação errônea da decodificação de uma instrução criptografada. não existe nenhuma necessidade para que a primeira instrução seja aberta, uma vez que o caracter de instrução pode vir a ser inicializado adequadamente conforme se faça necessáriio. a invenção pode ser projetada em software ou inteiramente em hardware, eliminando qualquer possibilidade quanto a terceiros de virem a interceptar uma instrução decodificada ou um caractere decodificado.processor-implemented method to ensure software integrity. The present invention provides a solution to the problem of ensuring the integrity of software programs by encrypting part or all pertinent to each instruction of a program employing a character based partially or wholly on a previous instruction. or in the plurality of previous statements, thereby resulting in a differentiated encryption character per instruction. The invention finds application with software programs whose structures are not necessarily in a naturally branched format, and finds application when programs include links, hops, calls or breaks, etc. The invention further provides conditions for exceptionality signaling to occur when erroneously decoding an encrypted instruction. There is no need for the first instruction to be opened, as the instruction character can be initialized properly as needed. The invention may be designed in software or entirely in hardware, eliminating any possibility for third parties to intercept a decoded instruction or a decoded character.

BR112012031052-6A 2010-07-22 2010-07-22 method implemented by a processor aimed at ensuring the integrity of the software BR112012031052B1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2010/060603 WO2012010205A1 (en) 2010-07-22 2010-07-22 A processor-implemented method for ensuring software integrity

Publications (2)

Publication Number Publication Date
BR112012031052A2 true BR112012031052A2 (en) 2016-10-25
BR112012031052B1 BR112012031052B1 (en) 2020-12-01

Family

ID=43297003

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112012031052-6A BR112012031052B1 (en) 2010-07-22 2010-07-22 method implemented by a processor aimed at ensuring the integrity of the software

Country Status (6)

Country Link
JP (1) JP5616528B2 (en)
KR (1) KR101687439B1 (en)
CN (1) CN102959556B (en)
BR (1) BR112012031052B1 (en)
RU (1) RU2541196C2 (en)
WO (1) WO2012010205A1 (en)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103902858A (en) * 2013-12-25 2014-07-02 武汉安天信息技术有限责任公司 APK application reinforcing method and system
JP6478724B2 (en) * 2015-03-09 2019-03-06 Kddi株式会社 Information processing apparatus, information processing method, and computer program
US10073977B2 (en) 2015-07-20 2018-09-11 Intel Corporation Technologies for integrity, anti-replay, and authenticity assurance for I/O data
US10552619B2 (en) * 2015-07-20 2020-02-04 Intel Corporation Technologies for secure trusted I/O access control
CN106789006A (en) * 2016-11-28 2017-05-31 范睿心 A kind of decryption method and system
KR101953444B1 (en) * 2016-12-26 2019-05-17 포항공과대학교 산학협력단 Software security method based on virtualization technologies to ensure the security level equivalent to hardware and system using the same
FR3071121B1 (en) * 2017-09-14 2020-09-18 Commissariat Energie Atomique PROCESS FOR EXECUTION OF A BINARY CODE OF A FUNCTION SECURE BY A MICROPROCESSOR
FR3071122B1 (en) 2017-09-14 2019-09-13 Commissariat A L'energie Atomique Et Aux Energies Alternatives METHOD FOR EXECUTING A BINARY CODE OF A FUNCTION SECURE BY A MICROPROCESSOR
RU179302U1 (en) * 2017-11-21 2018-05-07 Александра Владимировна Харжевская DEVICE OF DYNAMIC CONTROL OF PERFORMANCE OF SPECIAL COMPUTATIONS
FR3094107B1 (en) 2019-03-21 2021-02-26 Commissariat Energie Atomique PROCESS FOR EXECUTING A BINARY CODE OF A SECURE FUNCTION BY A MICROPROCESSOR
CN110515652B (en) * 2019-08-30 2021-10-15 腾讯科技(深圳)有限公司 Code abstract generation method and device and storage medium
CN111565002A (en) * 2020-05-22 2020-08-21 北京合康新能变频技术有限公司 Control system of frequency converter
CN111881467B (en) * 2020-06-12 2022-10-28 海光信息技术股份有限公司 Method and device for protecting file by using security processor, CPU and computer equipment
EP4002165A1 (en) * 2020-11-18 2022-05-25 Thales DIS France SA Code flow protection with error propagation

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5675645A (en) * 1995-04-18 1997-10-07 Ricoh Company, Ltd. Method and apparatus for securing executable programs against copying
US6061449A (en) * 1997-10-10 2000-05-09 General Instrument Corporation Secure processor with external memory using block chaining and block re-ordering
JP2002353960A (en) * 2001-05-30 2002-12-06 Fujitsu Ltd Code performing device and code distributing method
US6715085B2 (en) * 2002-04-18 2004-03-30 International Business Machines Corporation Initializing, maintaining, updating and recovering secure operation within an integrated system employing a data access control function
US6948067B2 (en) * 2002-07-24 2005-09-20 Qualcomm, Inc. Efficient encryption and authentication for data processing systems
US7370319B2 (en) * 2003-02-11 2008-05-06 V.I. Laboratories, Inc. System and method for regulating execution of computer software
US7103779B2 (en) * 2003-09-18 2006-09-05 Apple Computer, Inc. Method and apparatus for incremental code signing
EP1855476A3 (en) * 2006-05-11 2010-10-27 Broadcom Corporation System and method for trusted data processing
KR100922862B1 (en) * 2007-11-14 2009-10-20 성균관대학교산학협력단 Security method of system by? encoding instructions
CN101452514B (en) * 2007-12-06 2011-06-29 中国长城计算机深圳股份有限公司 User data protection method for safety computer
JP2009211292A (en) 2008-03-03 2009-09-17 Oki Electric Ind Co Ltd Encryption method, decryption method, encryption device, and decryption device
EP2196937A1 (en) * 2008-12-15 2010-06-16 Thomson Licensing Methods and devices for instruction level software encryption

Also Published As

Publication number Publication date
RU2013104050A (en) 2014-08-27
KR20130120985A (en) 2013-11-05
KR101687439B1 (en) 2016-12-16
JP5616528B2 (en) 2014-10-29
RU2541196C2 (en) 2015-02-10
JP2013535725A (en) 2013-09-12
BR112012031052B1 (en) 2020-12-01
CN102959556A (en) 2013-03-06
WO2012010205A1 (en) 2012-01-26
CN102959556B (en) 2015-12-16

Similar Documents

Publication Publication Date Title
BR112012031052A2 (en) processor-implemented method to ensure software integrity
BR112017021986A2 (en) system and method for extracting and sharing application-related user data
BR112019002748A2 (en) method for a wireless transmit / receive unit, wireless transmit / receive unit, and base station
BR112017020771A2 (en) wiper blade and wiper blade
BR112012015200A2 (en) "Process for preparing microparticles, and working head assembly for a mixer through non-static flow."
BR112017017286A2 (en) cysteine protease
BR112017024121A2 (en) acoustic structures with multiple degrees of freedom
BR112017017284A2 (en) cysteine protease
BR112016006320A8 (en) Fixation System
BR112018074032A2 (en) compositions and methods related to manipulated fc constructs
BR112016025271A2 (en) message composition in a communication segment
BR122021012469A8 (en) ELECTROSURGICAL STRAINING DEVICE
BR112015020528A2 (en) auto idc device social network expansion
BR112015015259A2 (en) method, apparatus and electronic device for connection management
BR102014015634A8 (en) COMPUTER-IMPLEMENTED METHOD TO PREVENT ATTACKS AGAINST AUTHORIZATION SYSTEMS, COMPUTER PROGRAM, AND COMPUTER PROGRAM PRODUCT
BR112017027661A2 (en) communication of specific transaction attributes in a peripheral component express interconnection (pcie) system
BR112018075894A2 (en) method and system for granular data obfuscation while retaining data privacy
BR112017020570A2 (en) support for location services using a positioning protocol
BR112018012998A2 (en) techniques for allocating resources in low latency wireless communications
AR101147A1 (en) COMPOSITIONS AND METHODS THAT INCLUDE A VARIANTE DE XILANASA
BR112019003512A2 (en) Network function processing method and related devices
BR112014031586A2 (en) network-based management of protected data sets
BR112015016012A2 (en) method and device for resource transfer
BR112019012743B8 (en) Method and device for setting communication parameter
BR112017025336A2 (en) rotor for a fluid machine having removable blades

Legal Events

Date Code Title Description
B06F Objections, documents and/or translations needed after an examination request according art. 34 industrial property law
B06U Preliminary requirement: requests with searches performed by other patent offices: suspension of the patent application procedure
B09A Decision: intention to grant
B16A Patent or certificate of addition of invention granted

Free format text: PRAZO DE VALIDADE: 10 (DEZ) ANOS CONTADOS A PARTIR DE 01/12/2020, OBSERVADAS AS CONDICOES LEGAIS.