JP2015177329A - 情報処理装置、情報処理方法及びコンピュータプログラム - Google Patents

情報処理装置、情報処理方法及びコンピュータプログラム Download PDF

Info

Publication number
JP2015177329A
JP2015177329A JP2014052006A JP2014052006A JP2015177329A JP 2015177329 A JP2015177329 A JP 2015177329A JP 2014052006 A JP2014052006 A JP 2014052006A JP 2014052006 A JP2014052006 A JP 2014052006A JP 2015177329 A JP2015177329 A JP 2015177329A
Authority
JP
Japan
Prior art keywords
information
unit
processing apparatus
information processing
sensor
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
Application number
JP2014052006A
Other languages
English (en)
Other versions
JP6237363B2 (ja
JP2015177329A5 (ja
Inventor
紘一 作本
Koichi Sakumoto
紘一 作本
美和 市川
Yoshikazu Ichikawa
美和 市川
白井 太三
Taizo Shirai
太三 白井
豊秀 一司
Toyohide Ichiji
豊秀 一司
裕二 井手
Yuji Ide
裕二 井手
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2014052006A priority Critical patent/JP6237363B2/ja
Priority to US14/639,361 priority patent/US10075293B2/en
Publication of JP2015177329A publication Critical patent/JP2015177329A/ja
Publication of JP2015177329A5 publication Critical patent/JP2015177329A5/ja
Application granted granted Critical
Publication of JP6237363B2 publication Critical patent/JP6237363B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • User Interface Of Digital Computer (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)

Abstract

【課題】秘密情報の生成の際のランダムネスとしてセンシングした情報を用いる際に、ユーザの負担が少なく、かつ手軽に充分なランダムネスを得ることが可能な情報処理装置を提供する。
【解決手段】所定の情報をセンシングするセンサが取得した前記情報を前記センサから取得するセンサデータ取得部と、前記センサデータ取得部が所定の期間において取得した前記情報に基づいて、認証処理に用いられる鍵情報を生成する鍵生成部と、を備える、情報処理装置が提供される。
【選択図】図1

Description

本開示は、情報処理装置、情報処理方法及びコンピュータプログラムに関する。
電子データの暗号化、装置やサービスの利用時の認証、電子署名等の暗号技術に利用される秘密情報(鍵)は、他者から推測されない値でなければならない。秘密情報をユーザや装置ごとに自力で生成する際には、その秘密情報は、秘密情報を生成するプログラムのリバースエンジニアリングによっても、予測の付かない値となることが望ましい。
そのような秘密情報をユーザや装置ごとに自力で生成する技術として、例えば特許文献1〜4が開示されている。下記特許文献1〜4は、情報処理装置の姿勢、勢い、加速度等の情報をセンシングし、その情報を秘密情報の生成の際のランダムネスとして用いて秘密情報を生成し、また他の装置と共有する技術が開示されている。
特開2011−130224号公報 特開2010−187282号公報 特開2008−311726号公報 国際公開第2008/075638号
上記特許文献で開示されている技術は、複数の装置で同時にセンシングした情報に基づいて、同じ秘密情報を共有するものである。秘密情報を複数の装置で共有する際には、その複数の装置で秘密情報が同じにならなければならない。複数の装置で共有される秘密情報を、センシングした情報に基づいて生成する場合には、センサの個体差の影響があるため、センシングした情報を各装置で完全に一致させることが困難であり、センシングした情報を解析して装置間で類似する情報を用いて秘密情報を生成している。
従って、わずかに違うデータがセンシングされても、生成される秘密情報は同一になると考えられる。このようにセンシングした情報を解析して類似する情報を用いる方法では、センシングした情報を秘密情報の生成の際のランダムネスとして用いる場合には望ましくない。
そこで本開示では、秘密情報の生成の際のランダムネスとしてセンシングした情報を用いる際に、ユーザの負担が少なく、かつ手軽に充分なランダムネスを得ることが可能な、新規かつ改良された情報処理装置、情報処理方法及びコンピュータプログラムを提案する。
本開示によれば、所定の情報をセンシングするセンサが取得した前記情報を前記センサから取得するセンサデータ取得部と、前記センサデータ取得部が所定の期間において取得した前記情報に基づいて、認証処理に用いられる鍵情報を生成する鍵生成部と、を備える、情報処理装置が提供される。
また本開示によれば、所定の情報をセンシングするセンサが取得した前記情報を前記センサから取得することと、所定の期間において取得された前記情報に基づいて、認証処理に用いられる鍵情報を生成することと、を含む、情報処理方法が提供される。
また本開示によれば、コンピュータに、所定の情報をセンシングするセンサが取得した前記情報を前記センサから取得することと、所定の期間において取得された前記情報に基づいて、認証処理に用いられる鍵情報を生成することと、を実行させる、コンピュータプログラムが提供される。
以上説明したように本開示によれば、秘密情報の生成の際のランダムネスとしてセンシングした情報を用いる際に、ユーザの負担が少なく、かつ手軽に充分なランダムネスを得る、新規かつ改良された情報処理装置、情報処理方法及びコンピュータプログラムが提供される。
なお、上記の効果は必ずしも限定的なものではなく、上記の効果とともに、または上記の効果に代えて、本明細書に示されたいずれかの効果、または本明細書から把握され得る他の効果が奏されてもよい。
本開示の一実施形態に係る情報処理装置100の機能構成例を示す説明図である。 本開示の一実施形態に係る情報処理装置100に含まれる制御部110の機能構成例を示す説明図である。 本開示の一実施形態に係る情報処理装置100の動作例を示す流れ図である。 本開示の一実施形態に係る情報処理装置100が出力部130に出力する画面の例を示す説明図である。 本開示の一実施形態に係る情報処理装置100が出力部130に出力する画面の例を示す説明図である。 本開示の一実施形態に係る情報処理装置100が出力部130に出力する画面の例を示す説明図である。 3軸の加速度センサからの出力データの一例をグラフで示す説明図である。 3軸の加速度センサからの出力データの、単位時間あたりの変化量の一例をグラフで示す説明図である。 本開示の一実施形態に係る情報処理装置100の動作例を示す流れ図である。 本開示の一実施形態に係る情報処理装置100の動作例を示す流れ図である。 本開示の一実施形態に係る情報処理装置100の動作例を示す流れ図である。 ハードウェア構成例を示す説明図である。
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
なお、説明は以下の順序で行うものとする。
1.本開示の一実施形態
1.1.情報処理装置の機能構成例
1.2.情報処理装置の動作例
2.ハードウェア構成例
3.まとめ
<1.本開示の一実施形態>
[1.1.情報処理装置の機能構成例]
まず、図面を参照しながら本開示の一実施形態に係る情報処理装置の機能構成例について説明する。図1は、本開示の一実施形態に係る情報処理装置100の機能構成例を示す説明図である。以下、図1を用いて本開示の一実施形態に係る情報処理装置100の機能構成例について説明する。
図1に示した情報処理装置100は、例えばスマートフォン、タブレット型端末、携帯電話、PHSのような機器であってもよく、腕時計型、リストバンド型、指輪型、メガネ型その他のウェアラブルデバイス、キーホルダー型の機器等の装置であってもよい。図1に示した情報処理装置100は、電子データの暗号化、装置やサービスの利用時の認証、電子署名等の暗号技術に利用される秘密情報(秘密鍵)を、ユーザに振ってもらうことによって得られるセンサデータを用いて生成する装置である。
図1に示したように、本開示の一実施形態に係る情報処理装置100は、制御部110と、入力部120と、出力部130と、通信部140と、記憶部150と、センサ部160と、を含んで構成される。
制御部110は、情報処理装置100の動作を制御する。すなわち、図1に示した情報処理装置100の各構成要素は、制御部110の制御により動作する。制御部110は、例えば、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)、不揮発性メモリ部、インターフェース部を備えたマイクロコンピュータにより構成され、本実施形態の全体を制御する制御部として機能し得る。本実施形態では、制御部110は、ユーザが情報処理装置100を振ったことに応じて得られるセンサデータを用いて鍵情報(例えば共通鍵暗号方式における共通鍵や、公開鍵暗号方式における秘密鍵)を生成する機能を有する。なお、制御部110の詳細な機能構成例については後述する。
入力部120は、ユーザの入力操作を受け付ける入力デバイスである。入力部120を構成するものとしては、例えばタッチパネル、キーボード、電源ボタン、操作ボタン、マイク等があり得る。
出力部130は、情報処理装置100で処理された情報を出力する出力デバイスである。出力部130を構成するものとしては、例えば液晶ディスプレイ、有機ELディスプレイ、スピーカ、LEDインジケータ、バイブレータ等があり得る。出力部130からの出力内容は、例えば制御部110によって生成され得る。
通信部140は、外部機器との間でデータの送受信を行う。外部機器としては、コンピュータ装置、スマートフォン、スマートウォッチ、ネットワークサーバ装置などが想定される。通信部140は、無線LAN、ブルートゥース(登録商標)などの方式で、例えばネットワークアクセスポイントに対する近距離無線通信を介してネットワーク通信を行う構成としても良いし、対応する通信機能を備えた外部機器との間で直接無線通信を行う構成としても良い。通信部140は、制御部110が生成した秘密鍵を用いた、外部機器との間の認証処理に関する情報を送受信する。なお通信部140は、外部機器との間の認証処理に関する情報の他にも、例えば動画コンテンツ、静止画コンテンツ、電子書籍等のデータ、情報処理装置100で生成された画像データ、テキストデータ、表計算データ等のコンピュータユースのデータ、ゲーム画像など、表示対象となるあらゆるデータを通信対象とし得る。
記憶部150は、例えばROM(Read Only Memory)、RAM(Random Access Memory)、不揮発性メモリ部等で構成され得る。記憶部150は、制御部110が情報処理装置100の制御に用いる情報や、情報処理装置100で生成された画像データ、テキストデータ、表計算データ等のコンピュータユースのデータ、情報処理装置100で実行されるアプリケーションのデータ等を格納する。また記憶部150は、制御部110が生成した秘密鍵を格納する。制御部110が生成した秘密鍵が格納される記憶部150の領域は、耐タンパ性を有することが望ましい。
センサ部160は、情報処理装置100の動きを検出するセンサである。センサ部160は、例えば加速度センサ、重力センサ、ジャイロセンサ、照度センサ、線形加速度センサ、地磁気センサ、近接センサ、回転ベクトルセンサ等のセンサで構成され得る。センサ部160のセンシングによって得られるセンサデータは、制御部110で取得される。本実施形態では、センサ部160のセンシングによって得られるセンサデータが、制御部110での秘密鍵の生成に用いられる。センサ部160のセンシングによって得られるセンサデータを制御部110での秘密鍵の生成に用いることで、本開示の一実施形態に係る情報処理装置100は、秘密鍵の生成の際にユーザの負担を軽減させ、かつ秘密鍵の生成の際に手軽に充分なランダムネスを得ることが出来る。
以上、図1を用いて本開示の一実施形態に係る情報処理装置100の機能構成例について説明した。続いて、本開示の一実施形態に係る情報処理装置100に含まれる制御部110の機能構成例について説明する。
図2は、本開示の一実施形態に係る情報処理装置100に含まれる制御部110の機能構成例を示す説明図である。以下、図2を用いて本開示の一実施形態に係る情報処理装置100に含まれる制御部110の機能構成例について説明する。
図2に示したように、制御部110は、センサデータ取得部111と、判定部112と、進捗情報算出部113と、鍵生成部114と、出力制御部115と、を含んで構成される。
センサデータ取得部111は、センサ部160のセンシングによって得られるセンサデータを取得する。センサデータ取得部111は、所定の期間において、センサ部160のセンシングによって得られるセンサデータを取得してもよい。例えばセンサデータ取得部111は、ユーザがセンサデータの取得開始を指示してからセンサデータの取得を開始しても良い。センサデータの取得開始指示は、例えば、後述の出力制御部115の制御によって出力部130から出力される画面に対するユーザの操作に基づいて発生し得る。出力制御部115の制御によって出力部130から出力される画面の例については後述する。そして、センサデータ取得部111がセンサ部160から取得したセンサデータは、判定部112、進捗情報算出部113、鍵生成部114、出力制御部115での処理に、それぞれ用いられ得る。
判定部112は、センサデータ取得部111が取得したセンサデータを用いて、そのセンサデータが、後述の進捗情報算出部113での進捗率の算出に有効なデータであるかどうかを判定する。進捗情報算出部113での進捗率の算出に有効なデータであるかを判定することで、判定部112は、センサデータ取得部111が取得したセンサデータが、ユーザが情報処理装置100を振ったことで得られたセンサデータなのかどうか、または単なるノイズに起因するものなのかどうかを判定することが可能となる。
例えば、センサデータ取得部111が取得したセンサデータが3軸の加速度センサから取得したデータである場合、判定部112は、各軸について値の絶対値が所定の閾値を超えている場合、その時点でユーザが情報処理装置100を振ったと判断してもよい。また判定部112は、各軸について値の単位時間あたりの変化量の絶対値が所定の閾値を超えている場合、その時点でユーザが情報処理装置100を振ったと判断してもよい。判定部112のセンサデータに対する判定結果は、進捗情報算出部113、鍵生成部114、出力制御部115での処理に、それぞれ用いられ得る。
進捗情報算出部113は、鍵生成部114での秘密鍵の生成に用いられる情報の取得が完了するまでの進捗情報を算出する。進捗情報算出部113は、進捗情報として、例えば鍵生成部114での秘密鍵の生成に用いられるセンサデータがどの程度まで取得できているかを意味する進捗率を算出する。以下では、進捗情報算出部113は、進捗情報として進捗率pを算出するとして説明する。進捗情報算出部113による進捗率の算出処理の一例を挙げれば、例えば以下の通りである。
進捗情報算出部113は、進捗率pを算出するにあたって、例えば単位時間あたりに所定の値を加算する。例えば進捗情報算出部113は、1秒毎に5%、進捗率pに加算する。そして進捗情報算出部113は、単位時間あたりに所定の値を加算する処理に加え、センサデータ取得部111が取得したセンサデータが、進捗情報算出部113での進捗率の算出に有効なデータであると判定部112で判定されると、その判定毎に、所定の値をさらに加算する。例えば進捗情報算出部113は、進捗情報算出部113での進捗率の算出に有効なデータであると判定部112で判定される毎に所定の値(例えば、1%)を進捗率pに加算する。すなわち、センサデータ取得部111が取得したセンサデータが、進捗情報算出部113での進捗率の算出に有効なデータであると判定部112で判定されればされるほど、進捗情報算出部113は、進捗率pが上昇するように進捗率pを算出する。そして進捗情報算出部113が算出する進捗率pが100%に達すると、センサデータ取得部111がセンサデータの取得を開始してから、進捗率pが100%になった時点までのセンサデータが鍵生成部114に送られる。もちろん、センサデータ取得部111は、取得したセンサデータを鍵生成部114に逐次送り、鍵生成部114は、進捗情報算出部113によって進捗率pが100%に達した時点までのセンサデータを用いて鍵を生成するようにしてもよい。
進捗情報算出部113が算出する進捗率pの情報は、出力制御部115にも逐次送られ得る。出力制御部115は、進捗情報算出部113が算出する進捗率pの情報を用いて状況をリアルタイムで出力部130から提示する制御を実行し得る。
鍵生成部114は、センサデータ取得部111が取得したセンサデータを用いた秘密鍵の生成処理を実行する。鍵生成部114は、センサデータ取得部111がセンサデータの取得を開始してから、進捗情報算出部113が算出する進捗率pが100%になった時点までのセンサデータの値を用いた演算処理により、秘密鍵を生成する。鍵生成部114による秘密鍵の生成処理の一例を挙げれば、以下の通りである。
鍵生成部114は、センサデータ取得部111が取得したセンサデータの各取得時の値に、情報処理装置100に固有の情報、例えばMACアドレスを連結し、その連結後のデータをSHA(Secure Hash Algorithm)等で圧縮することで、秘密鍵を生成してもよい。また鍵生成部114は、センサデータ取得部111が取得したセンサデータの各取得時の値を連結したビット列をエントロピーとして設定し、擬似乱数生成アルゴリズムのシードを初期化、またはリシードし、その初期化、またはリシードされた乱数シードを基に擬似乱数生成アルゴリズムを適用して生成した乱数を秘密鍵としてもよい。なお、擬似乱数生成アルゴリズムの例としては、NIST SP800−90A等のDRBG(Deterministic Random Bit Generator;決定性乱数生成器)がある。このアルゴリズムは、シード初期化、リシード、乱数生成の3つから構成される。シード初期化とは、エントロピーなどを入力し、乱数を生成するためのシードを初期化することである。リシードとは、現在のシードに、エントロピーを追加することで、新たなシードに更新することである。乱数生成とは、乱数シードを入力し、実際に乱数を生成することである。
出力制御部115は、出力部130で提示する各種情報の出力を制御する。例えば出力制御部115は、センサデータ取得部111が取得したセンサデータや、進捗情報算出部113が算出した進捗情報に基づく情報を出力部130から出力するための制御を実行する。出力制御部115は、センサデータ取得部111が取得したセンサデータや、進捗情報算出部113が算出した進捗情報に基づく情報を出力部130から出力するための制御を実行することで、ユーザに対してセンサデータの状態や、秘密鍵の作成処理の進捗状況を分かりやすく提示することができる。出力制御部115によって出力部130から出力される情報の例は後に詳述する。
本開示の一実施形態に係る制御部110は、図2に示したような構成を有することで、ユーザが情報処理装置100を振ったり、情報処理装置100に振動を加えたりしたことに応じて得られるセンサデータを用いた秘密鍵の生成を可能にする。また本開示の一実施形態に係る制御部110は、図2に示したような構成を有することで、ユーザに対してセンサデータの状態や、秘密鍵の作成処理の進捗状況を分かりやすく提示することができる。
以上、図2を用いて本開示の一実施形態に係る情報処理装置100に含まれる制御部110の機能構成例について説明した。続いて、本開示の一実施形態に係る情報処理装置100の動作例について説明する。
[1.2.情報処理装置の動作例]
図3は、本開示の一実施形態に係る情報処理装置100の動作例を示す流れ図である。図3に示したのは、ユーザが情報処理装置100を振ったり、情報処理装置100に振動を加えたりしたことに応じて得られるセンサデータを用いた秘密鍵の生成処理を実行する際の、情報処理装置100の動作例である。以下、図3を用いて本開示の一実施形態に係る情報処理装置100の動作例について説明する。
情報処理装置100は、ユーザが情報処理装置100を振らせたり、情報処理装置100に振動を加えさせたりすることに応じて得られるセンサデータを用いた秘密鍵の生成処理を実行するにあたり、出力部130へ所定の処理開始画面を出力する(ステップS101)。ステップS101の処理開始画面の出力処理は、例えば出力制御部115が実行し得る。また、出力部130に出力される所定の処理開始画面は、例えば秘密鍵を生成するアプリケーションの実行によって出力部130に出力されるものであり得る。
図4は、本開示の一実施形態に係る情報処理装置100が出力部130に出力する処理開始画面の例を示す説明図である。図4に示したのは、情報処理装置100が秘密鍵を生成するアプリケーションを実行したことによって出力部130に出力される画面の一例である。図4に示した画面には、キャンセルボタン121と、開始ボタン122と、が表示されている。開始ボタン122は、情報処理装置100で鍵生成処理を開始させるためのボタンであり、ユーザが開始ボタン122をタッチしたことを検出すると、情報処理装置100は鍵生成処理を開始する。一方のキャンセルボタン121は、秘密鍵を生成するアプリケーションを終了するためのボタンである。ユーザがキャンセルボタン121をタッチしたことを検出すると、情報処理装置100は秘密鍵を生成するアプリケーションを終了する。本開示の一実施形態に係る情報処理装置100は、図4に示したような処理開始画面を出力部130に出力することで、ユーザに鍵生成処理を開始させることが出来る。
なお図4に示したような処理開始画面が出力部130に出力されている際に、ユーザが開始ボタン122をタッチしたことを検出しなくても、ユーザが所定の加速度以上で情報処理装置100を振ったことを、センサデータ取得部111が取得したセンサデータから判定すると、情報処理装置100は鍵生成処理を開始するようにしてもよい。
ステップS101で処理開始画面を出力し、ユーザが鍵生成処理の開始を情報処理装置100に通知すると、情報処理装置100は、センサ部160で取得される加速度データを逐次取得する(ステップS102)。ステップS102の加速度データの取得処理は、例えばセンサデータ取得部111が実行し得る。
上記ステップS102で、センサ部160で取得される加速度データを逐次取得すると、続いて情報処理装置100は、時間の経過や、加速度データの取得状況に応じて進捗率pを増加させる(ステップS103)。ステップS103の進捗率pの算出処理は、例えば進捗情報算出部113が実行し得る。
情報処理装置100は、ステップS103での進捗率pの算出にあたって、例えば単位時間あたりに所定の値を加算する。例えば情報処理装置100は、ステップS103での進捗率pの算出にあたって、1秒毎に5%、進捗率pに加算する。そして情報処理装置100は、単位時間あたりに所定の値を加算する処理に加え、センサデータ取得部111が取得したセンサデータがステップS103での進捗率pの算出に有効なデータである場合は、さらに所定の値を加算する。
例えば情報処理装置100は、ステップS103での進捗率pの算出に有効なデータである場合は、さらに1%を進捗率pに加算する。すなわち、センサデータ取得部111が取得したセンサデータが、ステップS103での進捗率pの算出に有効なデータであればあるほど、情報処理装置100は、ステップS103での進捗率pの算出の際に、進捗率pが上昇するように進捗率pを算出する。
情報処理装置100は、ステップS103で進捗率pを算出すると、その算出した進捗率pに基づく情報を出力部130から出力しても良い。図5は、本開示の一実施形態に係る情報処理装置100が出力部130に出力する画面の例を示す説明図である。図5に示したのは、ユーザが情報処理装置100に対して鍵生成処理の開始を指示してから出力部130に出力される画面の一例である。図5には、進捗率pの増加に応じて状況が変化するプログレスバー131と、加速度データ132が出力部130に出力されている状態が示されている。情報処理装置100は、図5に示したような画面を出力部130から出力することで、ユーザに対して鍵生成処理の進捗状況を分かりやすく提示することが出来る。なお、図5には進捗率pの値が出力部130に出力されている状態が示されているが、情報処理装置100は、進捗率pは出力部130に出力せず、例えば進捗率pの増加に応じて状況が変化するプログレスバー131だけを出力部130に出力しても良い。
情報処理装置100は、加速度データを出力部130へ表示する際に、X軸、Y軸、Z軸の3軸分を重ねて表示してもよい。ただし、すべてのデータを表示すると、鍵生成に利用するランダムネスが他者に露呈する可能性がある。そのため情報処理装置100は、加速度データを表示する際に、一部のデータのみを表示したり、またはデータの精度を落として表示したりするなどして、鍵生成に利用するランダムネスが他者に露呈しないようにすることが望ましい。
もちろん、鍵生成処理の進捗状況を提示する画面は係る例に限定されるものではない。また情報処理装置100は、画面へのプログレスバー131や進捗率の値の表示だけでなく、色の変化や音の変化等で鍵生成処理の進捗状況を出力部130から出力するようにしてもよい。例えば情報処理装置100は、進捗率pが5%増加するごとに、C4、D4、E4、F4、G4、A4、B4、C5、D5、E5、F5、G5、A5、B5、…などと段階的に高い音を出力部130から出力するようにしてもよい。また例えば情報処理装置100は、進捗率の増加に伴って出力部130から出力する画面の色を変化させるような表示制御を実行してもよい。また例えば情報処理装置100は、出力部130に対し、最初は複数の色からなる所定の図形が表示され、進捗率の増加に伴ってその複数の色が混ざっていくような表示制御を実行してもよい。
ステップS103で進捗率pを増加させる処理を実行すると、続いて情報処理装置100は、その進捗率pの増加によって進捗率pが100%に達したかどうかを判断する(ステップS104)。ステップS104の判断は、例えば進捗情報算出部113が実行し得る。
ステップS104の判断の結果、進捗率pが100%に達していれば、続いて情報処理装置100は、鍵生成処理を開始してから進捗率pが100%に達するまでの加速度データを用いて、秘密鍵を生成する(ステップS105)。ステップS105の秘密鍵の生成処理は、例えば鍵生成部114が実行し得る。なお情報処理装置100は、進捗率pが100%に達すると、例えばバイブレータによる振動で、進捗率pが100%に達したことをユーザに通知してもよい。情報処理装置100は、進捗率pが100%に達するまでの加速度データを用いて秘密鍵を生成するので、バイブレータによる振動によって生じたセンサデータは秘密鍵の生成には影響を与えない。
一方、ステップS104の判断の結果、進捗率pが100%に達していれば、続いて情報処理装置100は、ステップS102に戻って加速度データの取得処理を継続する。
情報処理装置100は、進捗率pが100%になり、加速度データを用いた秘密鍵の生成が完了すると、秘密鍵の生成が完了した旨の画面を出力部130から出力しても良い。図6は、本開示の一実施形態に係る情報処理装置100が出力部130に出力する画面の例を示す説明図である。図6に示したのは、情報処理装置100で秘密鍵の生成が完了した際に出力部130に出力される画面の一例である。図6に示した画面には、OKボタン123が表示されている。ユーザがOKボタン123をタッチしたことを検出すると、情報処理装置100は、秘密鍵を生成するアプリケーションを終了する。
本開示の一実施形態に係る情報処理装置100は、上述した一連の処理を実行することで、ユーザが情報処理装置100を振ったり、情報処理装置100に振動を加えたりしたことに応じて得られるセンサデータを用いた秘密鍵の生成を可能にする。また本開示の一実施形態に係る情報処理装置100は、上述した一連の処理を実行することで、ユーザに対してセンサデータの状態や、秘密鍵の作成処理の進捗状況を分かりやすく提示することができる。
続いて、進捗情報算出部113での進捗率pを算出するにあたって、進捗情報算出部113での進捗率の算出に有効なデータであるかどうか、すなわち、ユーザが情報処理装置100を振ったことによる加速度データがセンサデータ取得部111で取得されたかどうかを判定部112で判定する際の判定処理例を説明する。
上述したように、判定部112は、3軸の加速度センサからセンサデータが出力される場合に、各軸について値の絶対値が所定の閾値を超えている場合、その時点でユーザが情報処理装置100を振ったと判断してもよい。図7は、3軸の加速度センサからの出力データの一例をグラフで示す説明図である。図7には、x軸方向のデータx1、y軸方向のデータy1、z軸方向のデータz1が、それぞれ示されている。また図7には、ユーザが情報処理装置100を振った区間s1、s2も示されている。
例えば、X方向、Y方向、Z方向のそれぞれの加速度センサの、i番目のデータでの値X、Y、Zのうち、いずれか1つの値の絶対値が所定の閾値Cを超えた場合、すなわち、|X|>C、または|Y|>C、または|Z|>Cであった場合、判定部112は、そのi番目のデータの時点ではユーザが情報処理装置100を振ったと判定する。
なお、単純に値の絶対値が所定の閾値を超えたことでユーザが情報処理装置100を振ったと判定した場合、判定部112は、ユーザが情報処理装置100を振っていなくても、乗り物に乗っている場合等に由来するノイズの影響で情報処理装置100を振ったと判定する可能性がある。
そこで判定部112は、各軸について値の単位時間あたりの変化量の絶対値が所定の閾値を超えている場合、その時点でユーザが情報処理装置100を振ったと判断してもよい。図8は、3軸の加速度センサからの出力データの、単位時間あたりの変化量の一例をグラフで示す説明図である。図8には、x軸方向のデータx2、y軸方向のデータy2、z軸方向のデータz2が、それぞれ示されている。また図8には、ユーザが情報処理装置100を振った区間s1、s2も示されている。
判定部112は、以下で定義する、i番目のデータでの単位時間当たりの加速度変化量dX、dY、dZを利用して判定を行なう。なお、X、Y、ZはX方向、Y方向、Z方向のそれぞれの加速度センサの、i番目のデータでの値である。またtはi番目のデータが取得された時刻である。
dX=(X−Xi−1)/(t−ti−1
dY=(Y−Yi−1)/(t−ti−1
dZ=(Z−Zi−1)/(t−ti−1
そして判定部112は、例えば、dX、dY、dZのうち、いずれか1つについて絶対値が所定の閾値Cを超えた場合、すなわち、|dX|>C、または|dY|>C、または|dZ|>Cであった場合、判定部112は、そのi番目のデータの時点ではユーザが情報処理装置100を振ったと判定する。また判定部112は、例えば、(dX、dY、dZ)を3次元ベクトルと見なした場合のベクトル長が、ある閾値Cを超えたとき、すなわち(dX +dY +dZ 1/2>Cであった場合、判定部112は、そのi番目のデータの時点ではユーザが情報処理装置100を振ったと判定する。
判定部112は、このように各軸について値の単位時間あたりの変化量を用いて判定することで、ユーザが情報処理装置100を振っていない場合における連続的な加速度の変化のノイズを除去して判定することが可能になる。
判定部112は、上述したような処理によって、ユーザが情報処理装置100を振ったかどうかを判定することが出来る。ここで、加速度センサの値は、値に変化があった場合にのみ取得できることが多く、その場合には、加速度センサから一定間隔で値を取得することができない。また加速度センサから値を取得できる間隔は、加速度センサによって異なる。例えば、1秒間に200回のデータを取得できる加速度センサもあれば、1秒間に最大でも50回しか取得できない加速度センサもある。
加速度センサから値を取得できる間隔が異なると、判定部112が値の単位時間あたりの変化量を用いて判定する場合、間隔が長いほど、加速度変化量のピークを捉えにくくなる。従って、加速度センサから値を取得できる間隔が長い程、判定部112は情報処理装置100を振ったと判定することが難しくなる。すなわち、情報処理装置100を振ったと判定する頻度が異なると、同じように情報処理装置100を振っても、ある装置では5秒振り続ければ進捗率が100%に達するのに、ある装置では20秒振り続けないと進捗率が100%に達しない、ということが起こり得る。
しかし秘密鍵を生成するアプリケーションは広く配布されることが望ましく、従って、判定部112による判定アルゴリズムは、全ての装置で同じにすることが望ましい。
そこで、装置ごとのセンサの性能の違いを吸収するため、センサデータ取得部111は、前回にセンサ部160からセンサの値を取得した時刻から所定時間経過した後に、新たにセンサ部160からセンサの値を取得するようにしても良い。センサデータ取得部111は、この所定時間を任意の時間に設定することができるが、例えば値を取得できる間隔が長いセンサに合わせて所定時間を設定してもよい。このようにセンサデータ取得部111がセンサ部160からの値の取得間隔を調整することで、情報処理装置100は、装置ごとのセンサの性能の違いを吸収し、判定部112による判定アルゴリズムを統一することが出来る。
またセンサデータ取得部111は、装置ごとのセンサの性能の違いを吸収するため、所定の時間における、例えば鍵生成アプリケーションを起動してから所定の時間における、自装置でのセンサ部160からの値を取得可能な平均の間隔Sを実測しても良い。例えばセンサデータ取得部111は、センサ部160から値をT秒間取得し、そのT秒間でN個の値がセンサ部160から取得できたとすると、平均の間隔SはS=T/Nとなる。そして判定部112は、センサデータ取得部111が算出した平均間隔Sに応じ、上記所定の閾値Cの値を変化させてもよい。つまり判定部112は、CをSの関数C(S)とする。具体的には、平均間隔Sが広いほど、判定部112は情報処理装置100を振ったと判定しにくくなるので、関数C(S)はSが増加すると減少するような関数にすることが望ましい。
このように、センサデータ取得部111は、鍵生成アプリケーションを起動してから、鍵生成のランダムネスとして利用するセンサ部160の値の取得が開始されるまでの間の時間を利用することで、ユーザからの見た目には特に影響を与えずに、装置ごとのセンサの性能の違いを吸収することが出来る。
センサによっては、API(Application Programming Interface)により、値を取得可能な間隔の情報が得られるものがある。しかし、センサによっては、正しい値ではなく、例えば0のような異常値を、値を取得可能な間隔として返すものもある。値を取得可能な間隔として異常値が返されてしまうと、正しい間隔の情報を得ることが出来ない。そこで、APIによる値ではなく、センサデータ取得部111が値を取得可能な間隔を実測することで、本実施形態に係る情報処理装置100は、異常値に影響されなくなるという効果を奏する。
そして判定部112は、上述したようにセンサデータ取得部111が算出した平均間隔Sに応じ、上記所定の閾値Cの値を変化させることで、端末間のセンサの性能の差異を吸収することが可能になる。
続いて、図3のステップS105における秘密鍵の生成処理について例示する。図9は、本開示の一実施形態に係る情報処理装置100の動作例を示す流れ図である。図9に示したのは、図3のステップS105における秘密鍵の生成処理の一例を詳細に示したものである。以下、図9を用いて本開示の一実施形態に係る情報処理装置100の動作例について説明する。なお、以下の処理は鍵生成部114が実行するものとする。また鍵生成部114が生成する秘密鍵のビット長をKビットとし、鍵生成部114が使用する関数Hは、データをLビットに圧縮する関数であるとする。なおデータを圧縮する関数には、例えばSHA256があり、SHA256の場合、L=256となる。
鍵生成部114は、進捗率pが100%に達すると、鍵生成処理を開始してから進捗率pが100%に達するまでのn個の加速度データx,…,xをセンサデータ取得部111から取得する(ステップS111)。加速度データx,…,xをセンサデータ取得部111から取得すると、続いて鍵生成部114は、変数iを1にセットし(ステップS112)、続いてK≦iLかどうかを判断する(ステップS113)。
ステップS113の判断の結果、K≦iLとなった場合は(ステップS113、Yes)、続いて鍵生成部114は、i=1,…,Nについて、i,端末固有の情報(例えばMACアドレス)p_str,x,…,xを連結したビット列(i||p_str||x||…||x)を関数Hに適用することにより、Lビット(例えば256bit)の長さのデータh1,…,hnを得る。すなわち鍵生成部114は、h=H(i||p_str||x||…||x)を計算する(ステップS114)。ステップS114でhを計算すると、続いて鍵生成部114は、iにi+1を代入し(ステップS115)、上記ステップS113の判定処理を再度実行する。
一方、上記ステップS113の判断の結果、K>iLとなった場合は(ステップS113、No)、続いて鍵生成部114は、L×Nビットのデータh1||…||hnの内のKビットを秘密鍵として出力する(ステップS116)。
図3のステップS105における秘密鍵の生成処理の別の方法について例示する。図10は、本開示の一実施形態に係る情報処理装置100の動作例である。図10に示したのは、図3のステップS105における秘密鍵の生成処理の一例を詳細に示したものであり、擬似乱数生成アルゴリズムを適用して生成した乱数を秘密鍵とする場合の動作例である。なお、擬似乱数生成アルゴリズムの例としては、NIST SP800−90A等のDRBG(決定性乱数生成器)がある。以下、図10を用いて本開示の一実施形態に係る情報処理装置100の動作例について説明する。なお、以下の処理は鍵生成部114が実行するものとする。また鍵生成部114が生成する秘密鍵のビット長をKビットとする。
鍵生成部114は、進捗率pが100%に達すると、鍵生成処理を開始してから進捗率pが100%に達するまでのn個の加速度データx,…,xをセンサデータ取得部111から取得する(ステップS121)。加速度データx,…,xをセンサデータ取得部111から取得すると、続いて鍵生成部114は、ビット列x||…||xをエントロピー、またはエントロピーの一部、端末固有の情報(例えばMACアドレス)p_strをpersonalization inputとして利用し、乱数シードsを初期化する(ステップS122)。
上記ステップS122で乱数シードsを初期化すると、続いて鍵生成部114は、初期化した乱数シードsを基にKビットの乱数rを生成し、その乱数rを鍵とする(ステップS123)。鍵生成部114は、図10に示した一連の処理を実行することで、鍵生成処理を開始してから進捗率pが100%に達するまでのn個の加速度データx,…,xを用いた秘密鍵の生成が可能となる。
図3のステップS105における秘密鍵の生成処理のさらに別の方法について例示する。図11は、本開示の一実施形態に係る情報処理装置100の動作例である。図11に示したのは、図3のステップS105における秘密鍵の生成処理の一例を詳細に示したものであり、擬似乱数生成アルゴリズムを適用して生成した乱数を秘密鍵とする場合の動作例である。
鍵生成部114は、進捗率pが100%に達すると、鍵生成処理を開始してから進捗率pが100%に達するまでのn個の加速度データx,…,xをセンサデータ取得部111から取得する(ステップS131)。加速度データx,…,xをセンサデータ取得部111から取得すると、続いて鍵生成部114は、ビット列x||…||xをエントロピー、またはエントロピーの一部として利用し、乱数シードsをリシードする(ステップS132)。
上記ステップS122で乱数シードsをリシードすると、続いて鍵生成部114は、初期化した乱数シードsを基にKビットの乱数rを生成し、その乱数rを鍵とする(ステップS133)。
鍵生成部114は、上述したような処理を実行することにより、加速度データx,…,xを用いて鍵を生成することが出来る。また鍵生成部114は、鍵を生成する際にセンサ部160から送られる加速度データをそのまま使用するので、加速度データが少しでも違うと、全く違う値の鍵を生成することが出来る。従って本開示の一実施形態に係る情報処理装置100は、同じ鍵を二度生成することを困難にさせて、秘密鍵の安全性を担保することが出来る。
上述した実施形態では、秘密にすることが求められる鍵(秘密鍵)を生成するものである。このような鍵には、共通鍵暗号技術に利用する共通鍵や、公開鍵暗号技術に利用する秘密鍵などがある。さらに、上述した実施形態において生成した秘密鍵を基に、公開鍵暗号技術に利用する公開鍵を生成することも可能である。
例えば、生成したのがRSAの秘密鍵(素数p,q)であれば、鍵生成部114は、その秘密鍵から公開鍵(合成数N=pq)を生成することが出来る。また例えば、生成したのがECDSA(Elliptic Curve Digital Signature Algorithm;楕円曲線DSA)の秘密鍵(スカラーx)であれば、鍵生成部114は、その秘密鍵から公開鍵y(Gをベースポイントとして、Gのスカラー倍y=xG)を生成することが出来る。
例えば、生成したのが、特開2012−98690号公報等で開示されている、多次多変数連立方程式に対する求解問題の困難性に安全性の根拠をおく公開鍵認証方式で用いられる秘密鍵(ベクトルx)であれば、鍵生成部114は、その秘密鍵から公開鍵y(Fを2次多変数多項式から構成される写像として、y=F(x))を生成することが出来る。
情報処理装置100は、上述したように鍵生成部114が生成した公開鍵をユーザが視覚的に理解できるように出力部130から出力してもよい。例えば鍵生成部114は、生成した公開鍵をbase64などでエンコードすることにより、視覚的に理解できるような情報に変換し、出力制御部115は、鍵生成部114が生成した当該情報を出力部130から出力する制御を実行してもよい
上述したように鍵生成部114が生成した公開鍵は、例えばbluetooth(登録商標)、Wi−Fi、NFC(Near field communication)などの無線通信や、USBケーブルなどの有線通信、テキスト入力による手作業でのコピー等により、情報処理装置100から他の機器に転送されて、転送先の当該他の機器に登録されるようにしてもよい。
上述の実施形態で述べたように、鍵生成部114で生成された鍵(秘密鍵及び公開鍵)は、情報処理装置100の内部に格納されてもよく、情報処理装置100と別の装置、例えばスマートフォン、タブレット端末、USBメモリなどのポータブルデバイスを含む何らかの装置に格納され得る。そして鍵生成部114で生成された鍵は、その後、常に利用可能な状態にしてもよく、鍵が格納される装置に設けられるボタンまたはスイッチなどの機構により、利用可能状態と利用不可状態とを切替可能としてもよい。具体的には、切替の機構として、鍵をスマートフォンに格納している場合、装置にインストールされているアプリケーションが提供する機能、例えばウィジェットと呼ばれる、ホーム画面に貼り付けられてユーザの操作を受け付けることが可能な機能であってもよい。
そして、秘密鍵を格納した装置は、秘密鍵が利用可能状態であればその秘密鍵を利用した公開鍵認証の要求に自動で応答するが、秘密鍵が利用不可状態であればその秘密鍵を利用した公開鍵認証の要求に応答しないように動作を制御してもよい。
<2.ハードウェア構成例>
上記の各アルゴリズムは、例えば、図12に示す情報処理装置のハードウェア構成を用いて実行することが可能である。つまり、当該各アルゴリズムの処理は、コンピュータプログラムを用いて図12に示すハードウェアを制御することにより実現される。なお、このハードウェアの形態は任意であり、例えば、パーソナルコンピュータ、携帯電話、PHS、PDA等の携帯情報端末、ゲーム機、接触式又は非接触式のICチップ、接触式又は非接触式のICカード、又は種々の情報家電がこれに含まれる。但し、上記のPHSは、Personal Handy−phone Systemの略である。また、上記のPDAは、Personal Digital Assistantの略である。
図12に示すように、このハードウェアは、主に、CPU902と、ROM904と、RAM906と、ホストバス908と、ブリッジ910と、を有する。さらに、このハードウェアは、外部バス912と、インターフェース914と、入力部916と、出力部918と、記憶部920と、ドライブ922と、接続ポート924と、通信部926と、を有する。但し、上記のCPUは、Central Processing Unitの略である。また、上記のROMは、Read Only Memoryの略である。そして、上記のRAMは、Random Access Memoryの略である。
CPU902は、例えば、演算処理装置又は制御装置として機能し、ROM904、RAM906、記憶部920、又はリムーバブル記録媒体928に記録された各種プログラムに基づいて各構成要素の動作全般又はその一部を制御する。ROM904は、CPU902に読み込まれるプログラムや演算に用いるデータ等を格納する手段である。RAM906には、例えば、CPU902に読み込まれるプログラムや、そのプログラムを実行する際に適宜変化する各種パラメータ等が一時的又は永続的に格納される。
これらの構成要素は、例えば、高速なデータ伝送が可能なホストバス908を介して相互に接続される。一方、ホストバス908は、例えば、ブリッジ910を介して比較的データ伝送速度が低速な外部バス912に接続される。また、入力部916としては、例えば、マウス、キーボード、タッチパネル、ボタン、スイッチ、及びレバー等が用いられる。さらに、入力部916としては、赤外線やその他の電波を利用して制御信号を送信することが可能なリモートコントローラ(以下、リモコン)が用いられることもある。さらに、入力部916としては、各種センサ、例えば地磁気センサ、加速度センサ等のセンサやGPS等の現在地を取得するものが用いられることもある。
出力部918としては、例えば、CRT、LCD、PDP、又はELD等のディスプレイ装置、スピーカ、ヘッドホン等のオーディオ出力装置、プリンタ、携帯電話、又はファクシミリ等、取得した情報を利用者に対して視覚的又は聴覚的に通知することが可能な装置である。但し、上記のCRTは、Cathode Ray Tubeの略である。また、上記のLCDは、Liquid Crystal Displayの略である。そして、上記のPDPは、Plasma DisplayPanelの略である。さらに、上記のELDは、Electro−Luminescence Displayの略である。
記憶部920は、各種のデータを格納するための装置である。記憶部920としては、例えば、ハードディスクドライブ(HDD)等の磁気記憶デバイス、半導体記憶デバイス、光記憶デバイス、又は光磁気記憶デバイス等が用いられる。但し、上記のHDDは、Hard Disk Driveの略である。
ドライブ922は、例えば、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体928に記録された情報を読み出し、又はリムーバブル記録媒体928に情報を書き込む装置である。リムーバブル記録媒体928は、例えば、DVDメディア、Blu−rayメディア、HD DVDメディア、各種の半導体記憶メディア等である。もちろん、リムーバブル記録媒体928は、例えば、非接触型ICチップを搭載したICカード、又は電子機器等であってもよい。但し、上記のICは、Integrated Circuitの略である。
接続ポート924は、例えば、USBポート、IEEE1394ポート、SCSI、RS−232Cポート、又は光オーディオ端子等のような外部接続機器930を接続するためのポートである。外部接続機器930は、例えば、プリンタ、携帯音楽プレーヤ、デジタルカメラ、デジタルビデオカメラ、又はICレコーダ等である。但し、上記のUSBは、Universal Serial Busの略である。また、上記のSCSIは、Small Computer System Interfaceの略である。
通信部926は、ネットワーク932に接続するための通信デバイスであり、例えば、有線又は無線LAN、Bluetooth(登録商標)、又はWUSB用の通信カード、光通信用のルータ、ADSL用のルータ、又は接触又は非接触通信用のデバイス等である。また、通信部926に接続されるネットワーク932は、有線又は無線により接続されたネットワークにより構成され、例えば、インターネット、家庭内LAN、赤外線通信、可視光通信、放送、又は衛星通信等である。但し、上記のLANは、Local Area Networkの略である。また、上記のWUSBは、Wireless USBの略である。そして、上記のADSLは、Asymmetric Digital Subscriber Lineの略である。
例えば、情報処理装置100がこのようなハードウェア構成を有する場合、例えば制御部110の機能はCPU902が担い得る。また例えば入力部120の機能は入力部916が担い得る。また例えば、出力部130の機能は出力部918が担い得る。また例えば、通信部140の機能は通信部926が担い得る。また例えば記憶部140の機能はROM904、RAM906、記憶部920、又はリムーバブル記録媒体928が担い得る。また例えばセンサ部160の機能は入力部916が担い得る。
<3.まとめ>
以上説明したように本開示の一実施形態によれば、ユーザに特別な操作を強いることなく、情報処理装置100の動きを検出するセンサ部160が出力した情報を用いて鍵情報、特に秘密鍵を生成する情報処理装置100が提供される。本開示の一実施形態に係る情報処理装置100は、所定の期間内、例えば、ユーザが鍵情報の生成開始を情報処理装置100に指示してから、センサ部160からの情報が充分得られるまで(例えば進捗率pが100%になるまで)の期間内でセンサ部160が出力した情報を用いて鍵情報を生成する。
本開示の一実施形態に係る情報処理装置100は、所定の期間内でセンサ部160が出力した情報を用いて鍵情報を生成することで、秘密情報の生成の際のランダムネスとしてセンサ部160が出力した情報を用いる際に、ユーザの負担が少なく、かつ手軽に充分なランダムネスを得ることを可能にする。
また本開示の一実施形態に係る情報処理装置100は、装置間でセンサの性能が異なる場合を考慮し、センサ部160から出力されるセンサデータの取得間隔を調整する。本開示の一実施形態に係る情報処理装置100は、センサ部160から出力されるセンサデータの取得間隔を調整することで、センサの性能が装置で異なる場合であっても同じような操作感を提供することが可能となる。
本明細書の各装置が実行する処理における各ステップは、必ずしもシーケンス図またはフローチャートとして記載された順序に沿って時系列に処理する必要はない。例えば、各装置が実行する処理における各ステップは、フローチャートとして記載した順序と異なる順序で処理されても、並列的に処理されてもよい。
また、各装置に内蔵されるCPU、ROMおよびRAMなどのハードウェアを、上述した各装置の構成と同等の機能を発揮させるためのコンピュータプログラムも作成可能である。また、該コンピュータプログラムを記憶させた記憶媒体も提供されることが可能である。また、機能ブロック図で示したそれぞれの機能ブロックをハードウェアで構成することで、一連の処理をハードウェアで実現することもできる。また、当該コンピュータプログラムはスマートフォンやタブレット等種々の情報処理端末向けアプリケーション・プログラムとして、インターネット等のネットワーク上に存在する所定のアプリケーション配信サイトから配信することが可能である。このようなアプリケーション配信サイトは、プログラムを記憶する記憶装置と、クライアント(スマートフォンやタブレット等種々の情報処理端末)からのダウンロード要求に応じ、そのアプリケーション・プログラムを送信する通信装置とを備えるサーバ装置が提供し得る。
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
例えば上記実施形態では、進捗情報として進捗率を算出していたが、本開示はかかる例に限定されるものではない。情報処理装置100が所定の回数振られたら秘密鍵の生成に用いるセンサデータの取得を完了するとした場合、進捗情報算出部113は進捗情報として、例えば情報処理装置100が振られた回数を計数しても良い。例えば情報処理装置100が100回振られたら秘密鍵の生成に用いるセンサデータの取得を完了するとした場合、進捗情報算出部113は情報処理装置100が振られた回数を計数することで、進捗情報として、情報処理装置100が何回振られているかについてや、鍵の生成のためには後何回振れば良いかについて算出することが出来る。
また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
なお、以下のような構成も本開示の技術的範囲に属する。
(1)
所定の情報をセンシングするセンサが取得した前記情報を前記センサから取得するセンサデータ取得部と、
前記センサデータ取得部が所定の期間において取得した前記情報に基づいて、認証処理に用いられる鍵情報を生成する鍵生成部と、
を備える、情報処理装置。
(2)
前記センサからの前記情報の取得が完了するまでの進捗情報に基づく情報を出力する進捗情報算出部をさらに備える、前記(1)に記載の情報処理装置。
(3)
前記進捗情報算出部は、前記鍵生成部での鍵情報の生成に用いられる前記情報の取得が完了するまでの進捗情報を算出する、前記(2)に記載の情報処理装置。
(4)
前記進捗情報算出部が算出した進捗情報を出力する出力部をさらに備える、前記(2)または(3)に記載の情報処理装置。
(5)
前記鍵生成部での鍵情報の生成に用いられる前記情報の取得が完了するまでの進捗情報を算出する進捗情報算出部をさらに備える、前記(1)〜(4)のいずれかに記載の情報処理装置。
(6)
前記センサデータ取得部が取得した前記情報は前記鍵生成部での鍵情報の生成に有効な情報か否かを判定する判定部をさらに備える、前記(1)〜(5)のいずれかに記載の情報処理装置。
(7)
前記判定部は、前記センサデータ取得部が取得した前記情報の単位時間あたりの変化量を用いて判定する、前記(6)に記載の情報処理装置。
(8)
前記判定部は、前記センサデータ取得部が取得した前記情報の絶対値を用いて判定する、前記(6)に記載の情報処理装置。
(9)
前記センサデータ取得部は、前記情報を取得してから所定時間が経過した後に新たな前記加速度情報を取得する、前記(1)〜(8)のいずれかに記載の情報処理装置。
(10)
前記センサデータ取得部は、前記所定の期間の前に前記センサからの情報の平均取得間隔を用いて前記所定時間を決定する、前記(9)に記載の情報処理装置。
(11)
前記センサデータ取得部が取得する前記情報は、加速度情報である、前記(1)〜(10)のいずれかに記載の情報処理装置。
(12)
前記鍵生成部は、前記センサデータ取得部が取得した前記情報と、自装置固有の情報を用いて鍵情報を生成する、前記(1)〜(11)のいずれかに記載の情報処理装置。
(13)
前記鍵生成部が生成する鍵情報は秘密鍵である、前記(1)〜(12)のいずれかに記載の情報処理装置。
(14)
所定の情報をセンシングするセンサが取得した前記情報を前記センサから取得することと、
所定の期間において取得された前記情報をに基づいて、認証処理に用いられる鍵情報を生成することと、
を含む、情報処理方法。
(15)
コンピュータに、
所定の情報をセンシングするセンサが取得した前記情報を前記センサから取得することと、
所定の期間において取得された前記情報に基づいて、認証処理に用いられる鍵情報を生成することと、
を実行させる、コンピュータプログラム。
100 情報処理装置
110 制御部
111 センサデータ取得部
112 判定部
113 進捗情報算出部
114 鍵生成部
115 出力制御部
120 入力部
130 出力部
140 通信部
150 記憶部
160 センサ部

Claims (15)

  1. 所定の情報をセンシングするセンサが取得した前記情報を前記センサから取得するセンサデータ取得部と、
    前記センサデータ取得部が所定の期間において取得した前記情報に基づいて、認証処理に用いられる鍵情報を生成する鍵生成部と、
    を備える、情報処理装置。
  2. 前記センサからの前記情報の取得が完了するまでの進捗情報を算出する進捗情報算出部をさらに備える、請求項1に記載の情報処理装置。
  3. 前記進捗情報算出部は、前記鍵生成部での鍵情報の生成に用いられる前記情報の取得が完了するまでの進捗情報を算出する、請求項2に記載の情報処理装置。
  4. 前記進捗情報算出部が算出した進捗情報を出力する出力部をさらに備える、請求項2に記載の情報処理装置。
  5. 前記鍵生成部での鍵情報の生成に用いられる前記情報の取得が完了するまでの進捗情報を算出する進捗情報算出部をさらに備える、請求項1に記載の情報処理装置。
  6. 前記センサデータ取得部が取得した前記情報は前記鍵生成部での鍵情報の生成に有効な情報か否かを判定する判定部をさらに備える、請求項1に記載の情報処理装置。
  7. 前記判定部は、前記センサデータ取得部が取得した前記情報の単位時間あたりの変化量を用いて判定する、請求項6に記載の情報処理装置。
  8. 前記判定部は、前記センサデータ取得部が取得した前記情報の絶対値を用いて判定する、請求項6に記載の情報処理装置。
  9. 前記センサデータ取得部は、前記情報を取得してから所定時間が経過した後に新たな前記情報を取得する、請求項1に記載の情報処理装置。
  10. 前記センサデータ取得部は、前記所定の期間の前に前記センサからの情報の平均取得間隔を用いて前記所定時間を決定する、請求項9に記載の情報処理装置。
  11. 前記センサデータ取得部が取得する前記情報は、加速度情報である、請求項1に記載の情報処理装置。
  12. 前記鍵生成部は、前記センサデータ取得部が取得した前記情報と、自装置固有の情報を用いて鍵情報を生成する、請求項1に記載の情報処理装置。
  13. 前記鍵生成部が生成する鍵情報は秘密鍵である、請求項1に記載の情報処理装置。
  14. 所定の情報をセンシングするセンサが取得した前記情報を前記センサから取得することと、
    所定の期間において取得された前記情報に基づいて、認証処理に用いられる鍵情報を生成することと、
    を含む、情報処理方法。
  15. コンピュータに、
    所定の情報をセンシングするセンサが取得した前記情報を前記センサから取得することと、
    所定の期間において取得された前記情報に基づいて、認証処理に用いられる鍵情報を生成することと、
    を実行させる、コンピュータプログラム。
JP2014052006A 2014-03-14 2014-03-14 情報処理装置、情報処理方法及びコンピュータプログラム Active JP6237363B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014052006A JP6237363B2 (ja) 2014-03-14 2014-03-14 情報処理装置、情報処理方法及びコンピュータプログラム
US14/639,361 US10075293B2 (en) 2014-03-14 2015-03-05 Information processing apparatus, information processing method, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014052006A JP6237363B2 (ja) 2014-03-14 2014-03-14 情報処理装置、情報処理方法及びコンピュータプログラム

Publications (3)

Publication Number Publication Date
JP2015177329A true JP2015177329A (ja) 2015-10-05
JP2015177329A5 JP2015177329A5 (ja) 2016-03-24
JP6237363B2 JP6237363B2 (ja) 2017-11-29

Family

ID=54070177

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014052006A Active JP6237363B2 (ja) 2014-03-14 2014-03-14 情報処理装置、情報処理方法及びコンピュータプログラム

Country Status (2)

Country Link
US (1) US10075293B2 (ja)
JP (1) JP6237363B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017073660A1 (ja) * 2015-10-28 2017-05-04 オムロン株式会社 データ流通管理システム

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2693920C1 (ru) * 2015-10-30 2019-07-05 Телефонактиеболагет Лм Эрикссон (Пабл) Установление секрета, совместно используемого между первым устройством связи и по меньшей мере одним вторым устройством связи
DE102016223695A1 (de) * 2016-11-29 2018-05-30 Continental Teves Ag & Co. Ohg Verfahren zur Bereitstellung von Zufallszahlen für Steuereinheiten eines Fahrzeugnetzwerks sowie Fahrzeugnetzwerk zur Durchführung dieses Verfahrens
US10320756B2 (en) * 2016-12-31 2019-06-11 Intel Corporation Secure communications for sensor data
WO2019010421A1 (en) * 2017-07-07 2019-01-10 Ligatti Jay SYSTEMS AND METHODS FOR GENERATING SYMMETRIC CRYPTOGRAPHIC KEYS
CN113452773A (zh) * 2018-07-22 2021-09-28 王铁军 多模异构iot网络
CN109167662A (zh) * 2018-09-04 2019-01-08 上海易酷信息技术服务有限公司 一种种子生成方法及其设备
US11410078B2 (en) * 2019-03-11 2022-08-09 Nxp B.V. Method and data processing system for making machine learning model more resistent to adversarial examples

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04247737A (ja) * 1991-02-01 1992-09-03 Kokusai Denshin Denwa Co Ltd <Kdd> 暗号化装置
WO2009157048A1 (ja) * 2008-06-27 2009-12-30 独立行政法人情報通信研究機構 無線通信認証方法及び無線通信システムと無線センサ
US20100199092A1 (en) * 2009-02-02 2010-08-05 Apple Inc. Sensor derived authentication for establishing peer-to-peer networks
JP2011130224A (ja) * 2009-12-18 2011-06-30 Lenovo Singapore Pte Ltd 通信端末装置における共有情報の作成方法
WO2012091164A1 (ja) * 2010-12-28 2012-07-05 日本電気株式会社 鍵の生成方法
JP2013140415A (ja) * 2011-12-28 2013-07-18 Ricoh Co Ltd 携帯端末、認証方法、認証プログラム、
JP2013150787A (ja) * 2011-12-28 2013-08-08 Fujifilm Corp 音響画像生成装置およびそれを用いて画像を生成する際の進捗状況の表示方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102006004399A1 (de) * 2006-01-31 2007-08-09 Infineon Technologies Ag Verfahren zum Erzeugen eines kryptographischen Schlüssels
WO2008075638A1 (ja) 2006-12-19 2008-06-26 Nec Corporation 共通データ生成方法およびその装置
CN100566254C (zh) * 2007-01-24 2009-12-02 北京飞天诚信科技有限公司 提高智能密钥设备安全性的方法和系统
JP2008311726A (ja) 2007-06-12 2008-12-25 Hitachi Ltd 情報記録装置、及びその認証方法
US8275123B2 (en) * 2007-08-17 2012-09-25 Infineon Technologies, Ag Integrated data transceiver and sensor for the generation of a symmetrical cryptographic key
US8156342B2 (en) * 2007-09-21 2012-04-10 Fuji Xerox Co., Ltd Progress indicators to encourage more secure behaviors
JP5436412B2 (ja) * 2008-03-25 2014-03-05 パナソニック株式会社 データ暗号化装置、制御方法および集積回路
KR101737829B1 (ko) * 2008-11-10 2017-05-22 삼성전자주식회사 휴대 단말기의 모션 입력 장치 및 그의 운용 방법
JP5463516B2 (ja) 2009-02-13 2014-04-09 日本電気株式会社 暗号鍵生成システム、暗号鍵生成方法および暗号鍵生成用プログラム
KR101381752B1 (ko) * 2009-12-08 2014-04-10 한국전자통신연구원 단말기 및 그 제어 방법
JP5656566B2 (ja) * 2010-11-05 2015-01-21 ラピスセミコンダクタ株式会社 運動検出装置、電子機器、運動検出方法及びプログラム
US20120167170A1 (en) * 2010-12-28 2012-06-28 Nokia Corporation Method and apparatus for providing passive user identification
TW201334491A (zh) * 2012-02-07 2013-08-16 Ind Tech Res Inst 秘密金鑰產生方法以及裝置
CN104254832B (zh) * 2012-04-04 2017-03-08 英派尔科技开发有限公司 通过物理属性监控对服务器的非期望操作进行检测
EP2763071A1 (en) * 2013-01-31 2014-08-06 Sensirion AG Authentication of a chemical sensor in a portable electronic device
US8774338B1 (en) * 2013-02-13 2014-07-08 Lookout, Inc. Method and system for providing a bit string on electronic devices
US9185087B2 (en) * 2013-10-24 2015-11-10 Medtronic, Inc. Medical device communication using encryption based on correlated motion

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04247737A (ja) * 1991-02-01 1992-09-03 Kokusai Denshin Denwa Co Ltd <Kdd> 暗号化装置
WO2009157048A1 (ja) * 2008-06-27 2009-12-30 独立行政法人情報通信研究機構 無線通信認証方法及び無線通信システムと無線センサ
US20100199092A1 (en) * 2009-02-02 2010-08-05 Apple Inc. Sensor derived authentication for establishing peer-to-peer networks
JP2011130224A (ja) * 2009-12-18 2011-06-30 Lenovo Singapore Pte Ltd 通信端末装置における共有情報の作成方法
WO2012091164A1 (ja) * 2010-12-28 2012-07-05 日本電気株式会社 鍵の生成方法
JP2013140415A (ja) * 2011-12-28 2013-07-18 Ricoh Co Ltd 携帯端末、認証方法、認証プログラム、
JP2013150787A (ja) * 2011-12-28 2013-08-08 Fujifilm Corp 音響画像生成装置およびそれを用いて画像を生成する際の進捗状況の表示方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017073660A1 (ja) * 2015-10-28 2017-05-04 オムロン株式会社 データ流通管理システム
JP2017084134A (ja) * 2015-10-28 2017-05-18 オムロン株式会社 データ流通管理システム

Also Published As

Publication number Publication date
JP6237363B2 (ja) 2017-11-29
US10075293B2 (en) 2018-09-11
US20150263854A1 (en) 2015-09-17

Similar Documents

Publication Publication Date Title
JP6237363B2 (ja) 情報処理装置、情報処理方法及びコンピュータプログラム
AU2018299716B2 (en) Key attestation statement generation providing device anonymity
CN111585760B (zh) 密钥找回方法、装置、终端及可读介质
CN108964903B (zh) 密码存储方法及装置
US20090167487A1 (en) Secure association between devices
JP2010056642A (ja) 加速度センサ利用ペアリング方法、システム、及び装置、並びに加速度センサ利用ペアリング用プログラム
JP2018502524A (ja) 情報に対する暗号化制御、情報解析の方法、システム及び端末
EP2927834A1 (en) Information processing apparatus, information processing method, and recording medium
US9065640B2 (en) Method and apparatus for generating non-interactive key and method for communication security using the same
JP6158859B2 (ja) 予測装置、端末、予測方法及び予測プログラム
JP2012080152A (ja) 暗号化システム、暗号化装置、復号装置、暗号化システムプログラム及び暗号化方法
CN109766705B (zh) 一种基于电路的数据验证方法、装置及电子设备
CN108347629A (zh) 视频文件处理方法、装置、服务器及存储介质
CN109145644B (zh) 私钥混淆及数字签名生成方法、装置、智能设备
US20180097621A1 (en) Obfuscated secret key derivation for non-secure commercial off-the-shelf (cots) devices
US20230370407A1 (en) Communication of messages of an application in an unlaunched state
CN110287733B (zh) 一种文件防篡改方法和装置
CN109067554A (zh) 抗注入攻击的签名方法、装置、移动终端及存储介质
KR101031450B1 (ko) 디바이스들 사이의 안전한 제휴
JP6309823B2 (ja) 認証システム、認証方法、プログラム
JPWO2017141393A1 (ja) サーバ装置、方法及びプログラム
JP2019105932A (ja) 情報処理装置、情報処理方法及び情報処理プログラム
JP2016110395A5 (ja)
CN109743289B (zh) 一种基于神经网络的数据验证方法、装置及电子设备
CN110968549B (zh) 文件存储的方法、装置、电子设备及介质

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160204

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160204

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170123

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170411

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170605

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: 20171003

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171016

R151 Written notification of patent or utility model registration

Ref document number: 6237363

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250