JP7333704B2 - 秘密鍵の暗号関数を実装するための方法 - Google Patents
秘密鍵の暗号関数を実装するための方法 Download PDFInfo
- Publication number
- JP7333704B2 JP7333704B2 JP2019062858A JP2019062858A JP7333704B2 JP 7333704 B2 JP7333704 B2 JP 7333704B2 JP 2019062858 A JP2019062858 A JP 2019062858A JP 2019062858 A JP2019062858 A JP 2019062858A JP 7333704 B2 JP7333704 B2 JP 7333704B2
- Authority
- JP
- Japan
- Prior art keywords
- cryptographic
- private key
- virtual machine
- instructions
- generic
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 39
- 230000006870 function Effects 0.000 title description 48
- 238000012545 processing Methods 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 8
- 238000004422 calculation algorithm Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 4
- 238000013500 data storage Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000013475 authorization Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0877—Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/14—Protecting executable software against software analysis or reverse engineering, e.g. by obfuscation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/16—Obfuscation or hiding, e.g. involving white box
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Technology Law (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Storage Device Security (AREA)
Description
(b) 前記秘密鍵の前記暗号関数を表す、暗号マクロ命令の一意のシーケンスを:
- 所与の仮想マシンによって実行可能な暗号マクロ命令のジェネリックリスト;および
- 前記シーケンスを記述したデータの個別ファイル;
に基づいて構築することと、
(c) 前記仮想マシンによって、暗号マクロ命令の前記一意のシーケンスを実行することと
に存するステップの実装を含むことを特徴とする。
・ 前記個別ファイルは、暗号マクロ命令の前記一意のシーケンスを暗号マクロ命令の前記ジェネリックリストの要素のシーケンスとして定義し;
・ 前記シーケンスを記述した前記データは、暗号マクロ命令の前記ジェネリックリストにおける前記シーケンスのマクロ命令のそれぞれを連続して識別し;
・ 個別ファイルは、秘密鍵と一意に関連付けられ;
・ ジェネリックアプリケーションを得る事前ステップ(a)は、前記仮想マシンを実装することができ、仮想マシンによって実行可能な暗号マクロ命令の、および前記個別ファイルの前記ジェネリックリストを含み;
・ 前記個別ファイルを得ることは、前記アプリケーションによるファイルのその後のローディングを含み;
・ ジェネリックアプリケーションは、装置によって、第1のアプリケーションンプラットフォームサーバからロードされ、個別ファイルは、アプリケーションによって、秘密鍵を保持する第2のサーバからロードされ、
・ 個別ファイルのローディングは、あらかじめの第2のサーバへの要求の送出と、第2のサーバによる秘密鍵からの個別ファイルの生成と、装置による個別ファイルの受領とを含む。
- 装置のユーザの秘密鍵の暗号関数を表す、暗号マクロ命令の一意のシーケンスを:
○ 所与の仮想マシンによって実行可能な暗号マクロ命令のジェネリックリスト;および
○ 前記シーケンスを記述したデータの個別ファイル;
に基づいて構築し;
- 前記仮想マシンによって、ユーザの秘密鍵の前記暗号関数を実装するように、暗号マクロ命令の前記一意のシーケンスを実行する:
ように構成されたデータ処理手段を備えることを特徴とする装置が提案される。
図1を参照すると、モバイル端末(スマートフォン、タッチパッドなど)などの装置1、すなわち、安全なハードウェアを特に有さず、ハードウェアの実装に対する攻撃の対象となり得、ホワイトボックス方式が有用となる装置内に実装される「ホワイトボックス」暗号関数を実装するための方法が提案される。
暗号関数
本方法は、個別の秘密鍵(または秘密鍵の個別の組合せ)、特に、装置1のユーザの鍵の暗号関数を実装するための方法である。第2のサーバ3は、秘密鍵(および一般に複数のユーザの鍵)を保持できることに留意されたい。
- 所与の仮想マシンによって実行可能な、特に、やはりジェネリックであるアプリケーション(Aと記載)によって含まれる暗号マクロ命令のジェネリックリスト(Lと記載);および
- 個別データファイル(Fと記載)。
- サブステップ(a1)において、ユーザは、サーバ2のアプリケーションンプラットフォームから、前記仮想マシンを実装することができ、仮想マシンよって実行可能な暗号マクロ命令の前記ジェネリックリストを含む、ジェネリックアプリケーションをロードし(メモリ12内に)、次いで、アプリケーションは、装置1にインストールされる。ユーザは、アプリケーションのダウンロードを起動するために同じ名前のプラットフォームへのアクセスを可能にするiOS「アプリストア」アプリケーションなどの前記アプリケーションンプラットフォームへのアクセスのためにOSの専用アプリケーションを通してこれを行うことができることに留意されたい。
- 所与の仮想マシンによって実行可能な暗号マクロ命令のジェネリックリスト;および
- 前記シーケンスを記述したデータの個別ファイル;
に基づいて構築する。
コンピュータプログラム製品
第2の態様によれば、本発明は、第1の態様による方法を実装するための、特に、モバイル端末タイプの装置1に関する。
- 装置1のユーザの秘密鍵の暗号関数を表す、暗号マクロ命令の一意のシーケンスを:
○ 所与の仮想マシンによって実行可能な暗号マクロ命令のジェネリックリスト;および
○ 前記シーケンスを記述したデータの個別ファイル;
に基づいて構築し、
- 前記仮想マシンによって、ユーザの秘密鍵の前記暗号関数を実装するように、暗号マクロ命令の前記一意のシーケンスを実行する
ように構成されたデータ処理手段11を備える。
コンピュータプログラム製品
第3の態様および第4の態様によれば、本発明は、秘密鍵の暗号関数を実装するための本発明の第1の態様による方法を行うための(特に、装置1のデータ処理手段11上で)コード命令、ならびにこのコンピュータプログラム製品を見つけることができる、コンピュータ装置によって可読の記憶手段(装置1のメモリ12)を備える、コンピュータプログラム製品に関する。
2 第1のサーバ
3 第2のサーバ
11 データ処理手段
12 データ記憶手段
20 インターネットネットワーク
21 データ処理手段
31 データ処理手段
A アプリケーション
F 個別データファイル
L ジェネリックリスト
a1 ジェネリックリストを得るステップ、サブステップ
a2 個別ファイルを得るステップ、サブステップ
Claims (9)
- 秘密鍵の暗号関数を実装するための方法であって、装置(1)のデータ処理手段(11)によって:
(b) 前記秘密鍵の前記暗号関数を表す、暗号マクロ命令の一意のシーケンスを:
所与の仮想マシンによって実行可能な暗号マクロ命令のジェネリックリスト;および
前記シーケンスを記述したデータの個別ファイル;
に基づいて構築することと、
(c) 前記仮想マシンによって、暗号マクロ命令の前記一意のシーケンスを実行することと
に存するステップの実装を含み、
方法が、前記仮想マシンを実装することができ、仮想マシンによって実行可能な暗号マクロ命令の前記ジェネリックリストを含むジェネリックアプリケーションを得る、および前記個別ファイルを得る事前のステップ(a)を含み、
方法が、第1のアプリケーションプラットフォームサーバ(2)からの装置(1)によるジェネリックアプリケーションのローディング、および秘密鍵を保持する第2のサーバ(3)からのアプリケーションによる個別ファイルのその後のローディングを含むことを特徴とする、方法。 - 前記個別ファイルが、暗号マクロ命令の前記一意のシーケンスを、暗号マクロ命令の前記ジェネリックリストの要素のシーケンスとして定義する、請求項1に記載の方法。
- 前記シーケンスを記述した前記データが、暗号マクロ命令の前記ジェネリックリストにおける前記シーケンスのマクロ命令のそれぞれを連続して識別する、請求項2に記載の方法。
- 個別ファイルが、秘密鍵と一意に関連付けられている、請求項1から3のいずれかに記載の方法。
- 個別ファイルが、秘密鍵の関数を表す、請求項4に記載の方法。
- 個別ファイルのローディングが、あらかじめ第2のサーバ(3)への要求の送出と、第2のサーバ(3)による秘密鍵からの個別ファイルの生成と、装置(1)による個別ファイルの受領とを含む、請求項5に記載の方法。
- 装置(1)のユーザの秘密鍵の暗号関数を表す、暗号マクロ命令の一意のシーケンスを:
所与の仮想マシンによって実行可能な暗号マクロ命令のジェネリックリスト;および
前記シーケンスを記述したデータの個別ファイル;
に基づいて構築し、
前記仮想マシンによって、ユーザの個別の鍵の前記暗号関数を実装するように、暗号マクロ命令の前記一意のシーケンスを実行する
ように構成されたデータ処理手段(11)を備え、
処理手段(11)が、前記仮想マシンを実装することができ、仮想マシンによって実行可能な暗号マクロ命令の前記ジェネリックリストを含むジェネリックアプリケーションを得るように、および前記個別ファイルを得るように構成され、ジェネリックアプリケーションが、秘密鍵を保持する第2のサーバ(3)からのファイルをローディングするように構成され、
処理手段(11)が、第1のアプリケーションプラットフォームサーバ(2)からジェネリックアプリケーションをローディングするように構成されることを特徴とする、装置(1)。 - プログラムがコンピュータによって実行されるとき、秘密鍵の暗号関数を実装するための請求項1から6のいずれかに記載の方法を実行するためのコード命令を備える、コンピュータプログラム。
- 秘密鍵の暗号関数を実装するための請求項1から6のいずれかに記載の方法を実行するためのコード命令を備えるコンピュータプログラムを備える、コンピュータ装置可読記憶手段。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1852738 | 2018-03-29 | ||
FR1852738A FR3079638B1 (fr) | 2018-03-29 | 2018-03-29 | Procede de mise en oeuvre d'une fonction cryptographique pour une cle secrete |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019175461A JP2019175461A (ja) | 2019-10-10 |
JP7333704B2 true JP7333704B2 (ja) | 2023-08-25 |
Family
ID=63209482
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019062858A Active JP7333704B2 (ja) | 2018-03-29 | 2019-03-28 | 秘密鍵の暗号関数を実装するための方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20190305945A1 (ja) |
EP (1) | EP3547602A1 (ja) |
JP (1) | JP7333704B2 (ja) |
KR (1) | KR20190114894A (ja) |
FR (1) | FR3079638B1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7244955B2 (ja) * | 2019-09-26 | 2023-03-23 | 株式会社エアロネクスト | 飛行体及び飛行体の飛行方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060195703A1 (en) | 2005-02-25 | 2006-08-31 | Microsoft Corporation | System and method of iterative code obfuscation |
US20080288771A1 (en) | 2007-05-18 | 2008-11-20 | Verimatrix, Inc. | System and method for defining programmable processing steps applied when protecting the data |
JP2015504279A (ja) | 2012-01-09 | 2015-02-05 | コーニンクレッカ フィリップス エヌ ヴェ | 鍵駆動の難読化を用いる仮想マシンデバイス及び方法 |
JP2015114964A (ja) | 2013-12-13 | 2015-06-22 | Kddi株式会社 | 疑似乱数生成装置及び方法、並びにプログラム難読化装置及び方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5742686A (en) * | 1996-06-14 | 1998-04-21 | Finley; Phillip Scott | Device and method for dynamic encryption |
SE512864C2 (sv) * | 1998-10-07 | 2000-05-29 | Lateca Computer Inc Nv | Bearbetningsmetod och apparat för omvandling av information från ett första format till ett andra format |
US8607224B2 (en) * | 2009-05-28 | 2013-12-10 | Yahoo! Inc. | System for packaging native program extensions together with virtual machine applications |
JP5988747B2 (ja) * | 2012-07-20 | 2016-09-07 | 日本放送協会 | 鍵管理装置、アプリケーション署名付加装置および受信端末、ならびに、それらのプログラム |
US9495544B2 (en) * | 2013-06-27 | 2016-11-15 | Visa International Service Association | Secure data transmission and verification with untrusted computing devices |
US9501315B2 (en) * | 2014-01-10 | 2016-11-22 | Citrix Systems, Inc. | Management of unmanaged user accounts and tasks in a multi-account mobile application |
-
2018
- 2018-03-29 FR FR1852738A patent/FR3079638B1/fr active Active
-
2019
- 2019-03-28 JP JP2019062858A patent/JP7333704B2/ja active Active
- 2019-03-28 US US16/368,740 patent/US20190305945A1/en not_active Abandoned
- 2019-03-28 EP EP19165673.5A patent/EP3547602A1/fr active Pending
- 2019-03-29 KR KR1020190036872A patent/KR20190114894A/ko unknown
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060195703A1 (en) | 2005-02-25 | 2006-08-31 | Microsoft Corporation | System and method of iterative code obfuscation |
US20080288771A1 (en) | 2007-05-18 | 2008-11-20 | Verimatrix, Inc. | System and method for defining programmable processing steps applied when protecting the data |
JP2015504279A (ja) | 2012-01-09 | 2015-02-05 | コーニンクレッカ フィリップス エヌ ヴェ | 鍵駆動の難読化を用いる仮想マシンデバイス及び方法 |
JP2015114964A (ja) | 2013-12-13 | 2015-06-22 | Kddi株式会社 | 疑似乱数生成装置及び方法、並びにプログラム難読化装置及び方法 |
Also Published As
Publication number | Publication date |
---|---|
US20190305945A1 (en) | 2019-10-03 |
EP3547602A1 (fr) | 2019-10-02 |
FR3079638B1 (fr) | 2021-04-09 |
FR3079638A1 (fr) | 2019-10-04 |
JP2019175461A (ja) | 2019-10-10 |
KR20190114894A (ko) | 2019-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6771565B2 (ja) | ウェブページ、ウェブアプリ、およびアプリケーションをセキュリティ保護すること | |
EP3474209A1 (en) | Storing blockchain private keys in a sim card | |
EP2761523B1 (en) | Provisioning of operating systems to user terminals | |
CN109075976A (zh) | 取决于密钥认证的证书发布 | |
US20090249492A1 (en) | Fabrication of computer executable program files from source code | |
RU2740298C2 (ru) | Защита использования содержимого хранилища ключей | |
EP2064648A1 (en) | Fabrication of computer executable program files from source code | |
JP6756056B2 (ja) | 身元検証による暗号チップ | |
JP5118700B2 (ja) | 仮想マシンのアクティブ化を伴う携帯可能な大容量記憶装置 | |
Coughlin et al. | Breaking the trust dependence on third party processes for reconfigurable secure hardware | |
EP3292654A1 (en) | A security approach for storing credentials for offline use and copy-protected vault content in devices | |
CN111783071A (zh) | 基于密码、基于隐私数据的验证方法、装置、设备及系统 | |
Hanzlik et al. | Controlled randomness–a defense against backdoors in cryptographic devices | |
JP7333704B2 (ja) | 秘密鍵の暗号関数を実装するための方法 | |
JP6517435B2 (ja) | アプリケーションを管理する方法 | |
Bala et al. | Biometric inspired homomorphic encryption algorithm for secured cloud computing | |
KR101973578B1 (ko) | 어플리케이션의 무결성 검증 방법 및 장치 | |
EP3278259B1 (en) | Data protection | |
Akram et al. | Rethinking the smart card technology | |
US20240004986A1 (en) | Cla certificateless authentication of executable programs | |
US20230224173A1 (en) | Method for remotely programming a programmable device | |
EP4058921B1 (en) | Device and method for secure communication | |
KR102145679B1 (ko) | Https 프로토콜에서 mitm 공격을 회피하는 방법 | |
Bobowski et al. | Derandomized PACE with Mutual Authentication | |
Idrissi et al. | Trust can be misplaced |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220302 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230307 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230601 |
|
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: 20230725 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230815 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7333704 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |