JP4917861B2 - プログラム解析方法およびプログラム - Google Patents
プログラム解析方法およびプログラム Download PDFInfo
- Publication number
- JP4917861B2 JP4917861B2 JP2006282307A JP2006282307A JP4917861B2 JP 4917861 B2 JP4917861 B2 JP 4917861B2 JP 2006282307 A JP2006282307 A JP 2006282307A JP 2006282307 A JP2006282307 A JP 2006282307A JP 4917861 B2 JP4917861 B2 JP 4917861B2
- Authority
- JP
- Japan
- Prior art keywords
- conditional statement
- program
- variables
- value
- conditional
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Stored Programmes (AREA)
Description
Mila Dalla Preda and Roberto Giacobazzi、"Opaque Predicates Detention by Abstract Interpretation、"Proc.of EAAI 2006.
(1)本発明は、抽象解釈を用いて、複数の変数あるいは複数の式からなり、常に真または偽と判定される条件文をプログラム内から検出するプログラム解析方法を提案している。
なお、本実施形態における構成要素は適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組合せを含む様々なバリエーションが可能である。したがって、本実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
図1を用いて、本実施形態の処理について説明する。
なお、本実施形態は、プログラム中に存在する複数の変数を含む条件文を検出するプログラムの解析方法を示したものである。
本実施形態の処理は、図1に示すように、まず、条件文に用いられている最大の係数もしくは最大の法を選択し、この値をpとする(ステップS101)。次に、条件文に用いられている複数の変数に対して、それぞれの変数の値を0からp−1に設定する(ステップS102)
<実施例1>
本実施例では、複数の変数を含む条件文「すべての整数x、yに対して、ax2−by2≠c」について、その判定方法を図2を用いて説明する。
本実施例では、複数の変数を含む条件文「p|f(x1、x2、・・・、xn)」について、その判定方法を図3を用いて説明する。
図4を用いて、本実施形態の処理について説明する。
なお、本実施形態は、プログラム中に存在する複数の式を含む条件文を検出するプログラムの解析方法を示したものである。
本実施形態の処理は、図4に示すように、まず、条件文に用いられているすべての法の最小公倍数をpとする(ステップS401)。次に、条件文に用いられている複数の変数に対して、それぞれの変数の値を0からp−1に設定する(ステップS402)。
Claims (4)
- プログラム内に、複数の変数を含む条件文が与えられているときに、
コンピュータが、
用いられている最大の係数あるいは最大の法を選択して、その値をpとする第1のステップと、
条件文に用いられている複数の変数に対して、それぞれの変数の値を0からp−1の値に設定する第2のステップと、
設定したすべての値について、mod_pにおける条件文が常に真もしくは偽となるか否かを判断する第3のステップと、
を実行することを特徴とするプログラム解析方法。 - プログラム内に、複数の式からなる条件文が与えられているときに、
コンピュータが、
用いられているすべての法の最小公倍数をpと設定する第1のステップと、
条件文に用いられている複数の変数に対して、それぞれの変数の値を0からp−1の値に設定する第2のステップと、
設定したすべての値について、mod_pにおける条件文が常に真もしくは偽となるか否かを判断する第3のステップと、
を実行することを特徴とするプログラム解析方法。 - プログラム内に、複数の変数を含む条件文が与えられているときに、
用いられている最大の係数あるいは最大の法を選択して、その値をpとする第1のステップと、
条件文に用いられている複数の変数に対して、それぞれの変数の値を0からp−1の値に設定する第2のステップと、
設定したすべての値について、mod_pにおける条件文が常に真もしくは偽となるか否かを判断する第3のステップと、
をコンピュータに実行させるためのプログラム。 - プログラム内に、複数の式からなる条件文が与えられているときに、
用いられているすべての法の最小公倍数をpと設定する第1のステップと、
条件文に用いられている複数の変数に対して、それぞれの変数の値を0からp−1の値に設定する第2のステップと、
設定したすべての値について、mod_pにおける条件文が常に真もしくは偽となるか否かを判断する第3のステップと、
をコンピュータに実行させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006282307A JP4917861B2 (ja) | 2006-10-17 | 2006-10-17 | プログラム解析方法およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006282307A JP4917861B2 (ja) | 2006-10-17 | 2006-10-17 | プログラム解析方法およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008102576A JP2008102576A (ja) | 2008-05-01 |
JP4917861B2 true JP4917861B2 (ja) | 2012-04-18 |
Family
ID=39436885
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006282307A Expired - Fee Related JP4917861B2 (ja) | 2006-10-17 | 2006-10-17 | プログラム解析方法およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4917861B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI687273B (zh) | 2015-01-19 | 2020-03-11 | 日商荏原製作所股份有限公司 | 流體操作式泵浦用的擴散器及該擴散器之製造方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5277825B2 (ja) * | 2008-09-18 | 2013-08-28 | 富士ゼロックス株式会社 | プログラム難読化装置及び難読化プログラム |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08272623A (ja) * | 1995-04-03 | 1996-10-18 | Toshiba Corp | プログラム解析装置及びプログラム解析方法 |
EP0988591A1 (en) * | 1997-06-09 | 2000-03-29 | Intertrust, Incorporated | Obfuscation techniques for enhancing software security |
KR100568228B1 (ko) * | 2003-05-20 | 2006-04-07 | 삼성전자주식회사 | 고유번호를 이용한 프로그램 탬퍼 방지 방법과 난독처리된 프로그램 업그레이드 방법, 상기 방법을 위한 장치 |
JP4675642B2 (ja) * | 2005-02-22 | 2011-04-27 | Kddi株式会社 | プログラム難読化装置およびその方法ならびにプログラム |
-
2006
- 2006-10-17 JP JP2006282307A patent/JP4917861B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI687273B (zh) | 2015-01-19 | 2020-03-11 | 日商荏原製作所股份有限公司 | 流體操作式泵浦用的擴散器及該擴散器之製造方法 |
Also Published As
Publication number | Publication date |
---|---|
JP2008102576A (ja) | 2008-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Yarom et al. | Recovering OpenSSL ECDSA nonces using the FLUSH+ RELOAD cache side-channel attack | |
CN107040362B (zh) | 模乘设备和方法 | |
US20160358165A1 (en) | Cryptographically concealing amounts transacted on a ledger while preserving a network's ability to verify the transaction | |
JP4938766B2 (ja) | プログラム難読化システム、プログラム難読化装置及びプログラム難読化方法 | |
CN101261666B (zh) | 一种通过加密可执行程序文件实现软件版权保护的方法 | |
Rahimunnisa et al. | FPGA implementation of AES algorithm for high throughput using folded parallel architecture | |
CN109462477B (zh) | 基于物联网嵌入式设备的白盒加密方法 | |
Rebeiro et al. | Timing channels in cryptography: a micro-architectural perspective | |
CN111008407A (zh) | 用于执行虚拟加密操作的加密电路 | |
Tuveri et al. | Side-channel analysis of SM2: A late-stage featurization case study | |
US9565017B2 (en) | Method for efficiently protecting elliptic curve cryptography against simple power analysis attacks | |
EP3287891A1 (fr) | Protection d'un calcul modulaire | |
CN104463020B (zh) | 存储器数据完整性保护的方法 | |
US20110255687A1 (en) | Data transformation system using cyclic groups | |
JP4917861B2 (ja) | プログラム解析方法およびプログラム | |
Gaspoz et al. | Threshold implementations in software: Micro-architectural leakages in algorithms | |
Coron et al. | Improved gadgets for the high-order masking of dilithium | |
KR102578869B1 (ko) | 부채널 공격에 안전한 행렬 곱 연산을 수행하기 위한 장치 및 방법 | |
JP2013156798A (ja) | 記憶装置、アクセスパターンの秘匿方法およびプログラム | |
JP5102536B2 (ja) | ストリーム暗号の暗号化装置、復号化装置、暗号化方法、復号化方法およびプログラム | |
EP2674891A1 (en) | A method, a device and a computer program support for execution of encrypted computer code | |
Chakraborty et al. | RASSLE: return address stack based side-channel leakage | |
CN104636276A (zh) | 一种保护内存存储器数据机密性和完整性的方法 | |
US11265145B2 (en) | Method and device for performing substitution table operations | |
JP6996561B2 (ja) | システム、改変装置、方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090708 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111011 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111025 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111220 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20120117 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120127 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150203 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |