JP2021051199A - 情報処理装置 - Google Patents
情報処理装置 Download PDFInfo
- Publication number
- JP2021051199A JP2021051199A JP2019174291A JP2019174291A JP2021051199A JP 2021051199 A JP2021051199 A JP 2021051199A JP 2019174291 A JP2019174291 A JP 2019174291A JP 2019174291 A JP2019174291 A JP 2019174291A JP 2021051199 A JP2021051199 A JP 2021051199A
- Authority
- JP
- Japan
- Prior art keywords
- entropy source
- entropy
- data protection
- delivery
- application
- 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.)
- Granted
Links
- 230000010365 information processing Effects 0.000 title claims description 23
- 238000000034 method Methods 0.000 claims description 19
- 230000006870 function Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 2
- 101100264195 Caenorhabditis elegans app-1 gene Proteins 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000002716 delivery method Methods 0.000 description 1
- 208000015181 infectious disease Diseases 0.000 description 1
Images
Classifications
-
- 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/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- 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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/582—Pseudo-random number generators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/065—Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
- H04L9/0656—Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
- H04L9/0662—Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
-
- 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/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Virology (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Bioethics (AREA)
- Storage Device Security (AREA)
Abstract
Description
エントロピー発生源からエントロピー源を収集する機能とメモリ上のデータを暗号化する機能をそれぞれ別のアプリがもつ。
エントロピー発生源からエントロピー源を収集する機能を有するアプリ(以下、「アプリ1」という)は収集したエントロピー源を用いて乱数を生成し、データを暗号化する機能を有するアプリ(以下、「アプリ2」という)とのメモリ上の共有メモリ領域に生成した乱数を書き込む処理を繰り返し行う。
この結果、マルウェアは暗号鍵を復元することが難しくなり、マルウェアがメモリ上のデータの暗号化を無効化するリスクを軽減できる。
以下、図面を用いて実施例について説明する。
システムは、ネットワーク端末102を持つユーザ101とアプリ配信サーバ103で構成されており、ユーザ101はアプリ配信サーバ103からダウンロードしたアプリを端末102にダウンロードする。
端末102は、ネットワーク301を介して外部と情報のやり取りを行うネットワークインターフェース208、カメラやマイクなど物理情報を読み取るセンサ202、物理乱数生成器などのエントロピー発生源302、データやプログラムを保存するストレージ210、演算処理を行うCPU206、処理中の中間データやプログラムを保持するメモリ205などで構成される。これらの機能はデータバスで互いに繋がれており、メモリ205を介してデータをやり取りする。
図4は、図3におけるメモリのユーザ空間320を詳細に表したものであり、本実施例におけるエントロピー源を収集し配送を行うエントロピー源収集・配送アプリ321とエントロピー源収集・配送アプリ321が配送したエントロピー源を用いてデータ保護処理を行うデータ保護アプリ324の機能構成を示している。エントロピー発生源302はCPU206を介してメモリ205に接続されているが、図4ではCPU206を省略している。
図6は、本実施例において、エントロピー源収集・配送アプリ321が有するエントロピー源2配送部412の動作を表すフローチャートである。図5、6に従って、エントロピー源収集・配送アプリ321におけるエントロピー源2の生成・配送方法について説明する。
図8は、本実施例において、データ保護アプリ324におけるエントロピー源3取得部402の処理フローである。
図8に従って、データ保護アプリがエントロピー源3(703)を取得する方法について説明する。
図9は、本実施例において、エントロピー源収集・配送アプリ321がデータ保護アプリ324へエントロピー源2を配送する様子を表している。図9に従って、エントロピー源2の配送方法を説明する。
図10は、本実施例において、エントロピー源収集・配送アプリ321がデータ保護アプリ324へエントロピー源2を配送する際の通信路をマルウェア204が盗聴している様子を表している。図10に従って、マルウェア204が通信路を盗聴している場合においても本実施例はデータ保護処理が無効化されるリスクを軽減できることを説明する。
206 CPU
302 エントロピー発生源
303 汎用レジスタ
321 エントロピー源収集・配送アプリ
401 エントロピー源1収集部
410 エントロピー源2生成・配送部
324 データ保護アプリ
402 エントロピー源3取得部
403 データ保護処理部
404 主要処理部
323 共有メモリ領域
Claims (10)
- 主記憶装置に格納されたデータとプログラムをCPUが参照して演算することにより処理を行う情報処理装置であって、
前記情報処理装置は、
前記CPUを介して前記主記憶装置に接続され、エントロピー源を発生するエントロピー発生源を有し、
前記主記憶装置は、
前記プログラムごとにリソースの割り当てを行うOSと、
前記エントロピー源を収集し配送を行うエントロピー源収集・配送プログラムと、
前記エントロピー源収集・配送プログラムが配送した前記エントロピー源を用いて前記データの保護処理を行うデータ保護プログラムと、を格納し、
前記エントロピー源収集・配送プログラムは、
前記エントロピー発生源から第1のエントロピー源を収集するエントロピー源収集部と、
前記第1のエントロピー源から疑似乱数である第2のエントロピー源を生成して前記データ保護プログラムに前記第2のエントロピー源を配送するエントロピー源生成・配送部と、を有し、
前記データ保護プログラムは、
前記エントロピー源収集・配送プログラムが配送した前記第2のエントロピー源を取得し、取得した前記第2のエントロピー源から第3のエントロピー源を生成するエントロピー源取得部と、
前記データの保護処理を前記第3のエントロピー源を用いて行うデータ保護処理部と、
を有することを特徴とする情報処理装置。 - 前記OSは、
前記エントロピー源収集・配送プログラムから前記データ保護プログラムに前記第2のエントロピー源を配送することを特徴とする請求項1に記載の情報処理装置。 - 前記OSは、
前記エントロピー源収集・配送プログラムと前記データ保護プログラムとマルウェアを含む複数の前記プログラムから同時に同一の前記リソースへアクセスする試行を繰り返した場合、前記リソースへの前記プログラムのアクセス順を試行ごとに変動させることを特徴とする請求項1に記載の情報処理装置。 - 前記OSは、
前記エントロピー源収集・配送プログラムの実行中に、前記マルウェアを含む複数の前記プログラムによる割り込みが発生した場合、
前記第1のエントロピー源及び前記第2のエントロピー源を前記主記憶装置内のカーネル空間内のエントロピー源収集・配送プログラム退避領域に退避させ、
前記割り込みによって実行される前記マルウェアが、前記エントロピー源収集・配送プログラム退避領域にアクセスできないようにすることを特徴とする請求項3に記載の情報処理装置。 - 前記OSは、
前記データ保護プログラムの実行中に、前記マルウェアを含む複数の前記プログラムによる割り込みが発生した場合、
前記第3のエントロピー源を前記主記憶装置内のカーネル空間内のデータ保護プログラム退避領域に退避させ、
割り込みによって実行される前記マルウェアが、前記データ保護プログラム退避領域にアクセスできないようにすることを特徴とする請求項3に記載の情報処理装置。 - 前記主記憶装置は、
前記エントロピー源収集・配送プログラムと前記データ保護プログラムを含む複数の前記プログラムがアクセス可能な共有メモリ領域を有し、
前記エントロピー源収集・配送プログラムは、
前記第2のエントロピー源を前記共有メモリ領域に書き込み、
前記データ保護プログラムは、
前記共有メモリ領域に書き込まれた前記第2のエントロピー源を取得することを特徴とする請求項1に記載の情報処理装置。 - 複数の前記プログラムはマルウェアを含み、
前記OSは、
複数の前記プログラムが前記共有メモリ領域にアクセスできるタイミングを随時決定することを特徴とする請求項6に記載の情報処理装置。 - 前記エントロピー源生成・配送部は、
前記第1のエントロピー源を用いてseedの生成を行うseed生成部と、
前記seedから前記第2のエントロピー源を生成して前記データ保護プログラムに配送するエントロピー源配送部と、
を有することを特徴とする請求項1に記載の情報処理装置。 - 前記エントロピー源配送部は、
疑似乱数生成器を用いて前記seedから前記第2のエントロピー源の生成を行うエントロピー源生成部を有することを特徴とする請求項8に記載の情報処理装置。 - 前記エントロピー源収集部は、
前記エントロピー発生源にアクセスし、取得した前記第1のエントロピー源を前記CPUの汎用レジスタのエントロピープールにためる処理を繰り返すことを特徴とする請求項1に記載の情報処理装置。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019174291A JP7295761B2 (ja) | 2019-09-25 | 2019-09-25 | 情報処理装置 |
EP20193359.5A EP3799348A1 (en) | 2019-09-25 | 2020-08-28 | Information processing apparatus |
US17/014,379 US20210089346A1 (en) | 2019-09-25 | 2020-09-08 | Information processing apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019174291A JP7295761B2 (ja) | 2019-09-25 | 2019-09-25 | 情報処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021051199A true JP2021051199A (ja) | 2021-04-01 |
JP7295761B2 JP7295761B2 (ja) | 2023-06-21 |
Family
ID=72290906
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019174291A Active JP7295761B2 (ja) | 2019-09-25 | 2019-09-25 | 情報処理装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20210089346A1 (ja) |
EP (1) | EP3799348A1 (ja) |
JP (1) | JP7295761B2 (ja) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004038350A (ja) * | 2002-07-01 | 2004-02-05 | Hitachi Ltd | 計算機の加速試験方法 |
US9270455B1 (en) * | 2014-02-14 | 2016-02-23 | Google Inc. | CPU assisted seeding of a random number generator in an externally provable fashion |
US20190286421A1 (en) * | 2016-11-29 | 2019-09-19 | Continental Teves Ag & Co. Ohg | Method for providing random numbers for control units of a vehicle network, and vehicle network for performing said method |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8787564B2 (en) * | 2011-11-30 | 2014-07-22 | Certicom Corp. | Assessing cryptographic entropy |
US10887080B2 (en) * | 2017-03-16 | 2021-01-05 | King Fahd University Of Petroleum And Minerals | Double-hashing operation mode for encryption |
US10402169B2 (en) * | 2017-07-12 | 2019-09-03 | Dell Products L.P. | Method and system of secure random seed generation for a cryptographically secure pseudo-random number generator |
JP6899308B2 (ja) | 2017-10-16 | 2021-07-07 | 株式会社日立製作所 | 情報処理装置および情報処理装置のデータ処理方法 |
US11646867B2 (en) * | 2017-12-22 | 2023-05-09 | The Boeing Company | Systems and methods implementing countermeasures to phase tracking attacks on ring oscillator based entropy sources |
JP7221596B2 (ja) | 2018-03-28 | 2023-02-14 | Jx金属株式会社 | 粒状試料の分析方法及び分析装置 |
-
2019
- 2019-09-25 JP JP2019174291A patent/JP7295761B2/ja active Active
-
2020
- 2020-08-28 EP EP20193359.5A patent/EP3799348A1/en active Pending
- 2020-09-08 US US17/014,379 patent/US20210089346A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004038350A (ja) * | 2002-07-01 | 2004-02-05 | Hitachi Ltd | 計算機の加速試験方法 |
US9270455B1 (en) * | 2014-02-14 | 2016-02-23 | Google Inc. | CPU assisted seeding of a random number generator in an externally provable fashion |
US20190286421A1 (en) * | 2016-11-29 | 2019-09-19 | Continental Teves Ag & Co. Ohg | Method for providing random numbers for control units of a vehicle network, and vehicle network for performing said method |
Non-Patent Citations (1)
Title |
---|
渡辺 大: "暗号機能のソフトウェア実装におけるマルウェアの脅威に関する一考察", 電子情報通信学会技術研究報告, vol. 117, no. 316, JPN6023000358, 13 November 2017 (2017-11-13), JP, pages 35 - 40, ISSN: 0004964879 * |
Also Published As
Publication number | Publication date |
---|---|
EP3799348A1 (en) | 2021-03-31 |
JP7295761B2 (ja) | 2023-06-21 |
US20210089346A1 (en) | 2021-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5646631B2 (ja) | デバイスの監査 | |
CN110637301B (zh) | 减少虚拟机中敏感数据的泄密 | |
CN108345806B (zh) | 一种硬件加密卡和加密方法 | |
JP2019505887A (ja) | 信頼できる実行環境を有するモバイル装置 | |
US20190052651A1 (en) | Real-time prevention of malicious content via dynamic analysis | |
US20130024936A1 (en) | Auditing a device | |
EP3623980B1 (en) | Ransomware encryption algorithm determination | |
Garay et al. | Software integrity protection using timed executable agents | |
US11449612B2 (en) | Ransomware remediation | |
US20150047001A1 (en) | Application program execution device | |
CN115495746B (zh) | 一种基于eBPF的安全防护方法、系统及电子设备 | |
JP7295761B2 (ja) | 情報処理装置 | |
WO2021117638A1 (ja) | 情報処理システム、プログラム間鍵共有方法、及びプログラム間鍵共有プログラム | |
Lee et al. | Removing Secrets from Android's TLS. | |
JP2019074913A (ja) | 情報処理装置および情報処理装置のデータ処理方法 | |
CN108259490B (zh) | 一种客户端校验方法及装置 | |
WO2020226054A1 (ja) | 情報処理方法、情報処理装置及び記憶媒体 | |
WO2021117524A1 (ja) | 実行ファイル生成装置、方法、およびプログラムが記録された非一時的記憶媒体 | |
JP6297149B2 (ja) | モバイル機器及び該モバイル機器の動作方法 | |
US9058484B2 (en) | Method for checking whether program instructions have been executed by a portable end device | |
CN116108418A (zh) | 一种基于libevent库的可信验证通信方法 | |
CN115828276A (zh) | 一种接口数据的处理方法及装置、存储介质、计算机设备 | |
CN116346330A (zh) | 基于Redis缓存和c缓存的密钥存储读取方法 | |
JP2018088574A (ja) | プログラムイメージを保護する方法 | |
Andersson | Cryptographic Key Masking During Run-Time |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220323 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20221227 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230117 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230215 |
|
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: 20230606 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230609 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7295761 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |