JP2017091496A - Information processing device, information processing method and program - Google Patents

Information processing device, information processing method and program Download PDF

Info

Publication number
JP2017091496A
JP2017091496A JP2016085337A JP2016085337A JP2017091496A JP 2017091496 A JP2017091496 A JP 2017091496A JP 2016085337 A JP2016085337 A JP 2016085337A JP 2016085337 A JP2016085337 A JP 2016085337A JP 2017091496 A JP2017091496 A JP 2017091496A
Authority
JP
Japan
Prior art keywords
history information
information
vibration
unit
terminal
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.)
Pending
Application number
JP2016085337A
Other languages
Japanese (ja)
Other versions
JP2017091496A5 (en
Inventor
修一 倉林
Shuichi Kurabayashi
修一 倉林
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.)
Cygames Inc
Original Assignee
Cygames Inc
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 Cygames Inc filed Critical Cygames Inc
Priority to JP2016085337A priority Critical patent/JP2017091496A/en
Publication of JP2017091496A publication Critical patent/JP2017091496A/en
Publication of JP2017091496A5 publication Critical patent/JP2017091496A5/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Instructional Devices (AREA)
  • Telephone Function (AREA)
  • Telephonic Communication Services (AREA)

Abstract

PROBLEM TO BE SOLVED: To establish a method that effectively functions even when a falsification detection method becomes publicly known or a detection program code itself is falsified, as a new countermeasure technique against falsification of operation history.SOLUTION: A vibration information acquisition unit 111 acquires, from a player terminal 1, vibration history information showing time series of detection results by a vibration detection unit 31 of the player terminal 1. An operation information acquisition unit 113 acquires, from the player terminal 1, vibration history information showing time series of detection results by a touch operation input unit 26 of the player terminal 1. An operation information legitimacy determination unit 114 determines legitimacy of the operation history information by comparing the operation history information acquired by the operation information acquisition unit 113 with the vibration history information that has been determined to be legitimate by a vibration information legitimacy determination unit 112.SELECTED DRAWING: Figure 6

Description

本発明は、情報処理装置、情報処理方法及びプログラムに関する。   The present invention relates to an information processing apparatus, an information processing method, and a program.

従来から、スマートフォン等の端末で実行可能なゲームとして、複数のプレイヤーが競い合うランキング機能や、プレイヤー同士の対戦機能、プレイヤーのグループ同士の対戦機能を有するゲームが存在する(例えば特許文献1参照)。   Conventionally, as a game that can be executed on a terminal such as a smartphone, there is a game having a ranking function in which a plurality of players compete, a battle function between players, and a battle function between groups of players (see, for example, Patent Document 1).

このようなゲームでは、プログラムコード、端末内に保存されたデータ、ネットワークを通じてサーバに送信するデータを改ざんする行為、例えば、操作履歴を改ざんし、あたかも高得点を獲得したかのように偽装する行為、アイテムを不正に獲得する行為、アイテム数を改ざんし、希少なアイテムを大量に獲得する行為等を行う者の存在が問題になる(例えば特許文献2参照)。
なお、以下、これらの行為をまとめて「操作履歴の改ざん行為等」と呼ぶ。また、操作履歴の改ざん行為等を行う者を以下「改ざん者」と呼ぶ。
このような操作履歴の改ざん行為等は、ゲームのみならず情報処理一般にあてはまる問題である。
In such games, the act of falsifying the program code, data stored in the terminal, data sent to the server through the network, for example, falsifying the operation history as if gaining a high score The existence of a person who illegally obtains an item, alters the number of items, and obtains a large number of rare items becomes a problem (see, for example, Patent Document 2).
Hereinafter, these actions are collectively referred to as “operation history falsification actions”. Also, a person who performs an operation history falsification action or the like is hereinafter referred to as a “falsifier”.
Such manipulation history manipulation is a problem that applies not only to games but also to general information processing.

従来においても、操作履歴の改ざん行為等の対策技術について、各種の手法が提案されている。代表的な手法としては、アプリケーションソフトウェアのバイナリデータへの改ざんを検知する手法や、アプリケーションソフトウェアが読み書きするストレージやメモリ領域の改ざんを検知する手法が存在する。   Conventionally, various methods have been proposed for countermeasure techniques such as manipulation history falsification. As typical techniques, there are a technique for detecting falsification of application software to binary data and a technique for detecting falsification of storage and memory areas read / written by the application software.

特開2013−587号公報JP 2013-587 A 特許4385863号公報Japanese Patent No. 4385863

しかしながら、これらの操作履歴の改ざん行為等の対策技術についての従来の手法では、その改ざん検知の手法が公知となった場合や、検知を行うプログラム・コードそのものが改ざんの対象となった場合に、有効に機能しなかった。
そこで、改ざん検知の手法が公知となった場合や、検知を行うプログラム・コードそのものが改ざんの対象となった場合においても有効に機能する、操作履歴の改ざん行為等の新たな対策技術が要望されている状況である。
However, with the conventional methods for countermeasure techniques such as tampering actions of these operation histories, when the method of detecting the tampering is publicly known, or when the program code that performs the detection itself is subject to tampering, Did not work effectively.
Therefore, there is a demand for new countermeasure technology such as manipulation history manipulation that works effectively even when the tampering detection method becomes publicly known or when the detection program code itself is subject to tampering. It is a situation.

本発明は、このような状況に鑑みてなされたものであり、操作履歴の改ざん行為等の新たな対策技術において、改ざん検知の手法が公知となった場合や、検知を行うプログラム・コードそのものが改ざんの対象となった場合においても有効に機能する手法の確立を目的とする。   The present invention has been made in view of such a situation, and when a technique for detecting falsification is known in a new countermeasure technique such as manipulation history falsification or the like, a program code itself for performing detection is provided. The purpose is to establish a method that works effectively even if it is subject to tampering.

上記目的を達成するため、本発明の一態様の情報処理装置は、
複数のプレイヤーの夫々の操作を受付けてゲームを実行し得る複数の端末と、サーバとを含む情報処理装置において、
自機で生じる振動を検出する第1検出部と、
所定の表示面に画像を表示する表示部と、
前記表示面に積層され、物体の接触を所定方式で検出する第2検出部と、
前記物体の接触によるタッチ操作に基づいて、所定の処理を実行する実行部と、
を含む端末と、
通信をして情報を授受する情報処理装置において、
前記第1検出部の検出結果の時系列を示す振動履歴情報を前記端末から取得する第1取得手段と、
前記タッチ操作の時系列を示す操作履歴情報を前記端末から取得する第2取得手段と、
前記振動履歴情報と前記操作履歴情報とを比較することで、当該操作履歴情報の正当性を判断する第1判断手段と、
を備える。
In order to achieve the above object, an information processing apparatus of one embodiment of the present invention provides:
In an information processing apparatus including a plurality of terminals capable of executing a game by receiving operations of a plurality of players and a server,
A first detection unit for detecting vibrations generated by the own machine;
A display unit for displaying an image on a predetermined display surface;
A second detector that is stacked on the display surface and detects contact of an object in a predetermined manner;
An execution unit that executes predetermined processing based on a touch operation by contact of the object;
A device containing
In an information processing apparatus that communicates and receives information,
First acquisition means for acquiring vibration history information indicating a time series of detection results of the first detection unit from the terminal;
Second acquisition means for acquiring operation history information indicating a time series of the touch operation from the terminal;
First determination means for determining the legitimacy of the operation history information by comparing the vibration history information and the operation history information;
Is provided.

本発明の一態様の情報処理方法及びプログラムは、上述の本発明の一態様の情報処理装置に対応する情報処理方法及びプログラムである。   An information processing method and program according to one embodiment of the present invention are an information processing method and program corresponding to the information processing apparatus according to one embodiment of the present invention described above.

本発明によれば、操作履歴の改ざん行為等の新たな対策技術において、改ざん検知の手法が公知となった場合や、検知を行うプログラム・コードそのものが改ざんの対象となった場合においても有効に機能する手法を確立することができる。   According to the present invention, in a new countermeasure technique such as manipulation history falsification and the like, it is effective even when a falsification detection method becomes publicly known or when a program code to detect is subject to falsification. A working approach can be established.

本発明の一実施形態に係る情報システムの構成を示すブロック図である。It is a block diagram which shows the structure of the information system which concerns on one Embodiment of this invention. 図1の情報処理装置のうち、本発明の端末の一実施形態としてのプレイヤー端末のハードウェア構成を示すブロック図である。It is a block diagram which shows the hardware constitutions of the player terminal as one Embodiment of the terminal of this invention among the information processing apparatuses of FIG. 図1の情報処理装置のうち、本発明の一実施形態に係るサーバのハードウェア構成を示すブロック図である。It is a block diagram which shows the hardware constitutions of the server which concerns on one Embodiment of this invention among the information processing apparatuses of FIG. 図2のプレイヤー端末の加速度センサの検出結果のタイミングチャートである。It is a timing chart of the detection result of the acceleration sensor of the player terminal of FIG. プレイヤー端末の操作履歴情報の正当性を、正当性確認済みの振動履歴情報と比較し、検証する図である。It is a figure which compares and verifies the legitimacy of the operation history information of a player terminal with the vibration history information in which the legitimacy is confirmed. 図2のプレイヤー端末と図3のサーバの機能的構成のうち、操作履歴改ざん検出制御を実行するための機能的構成例を示す機能ブロック図である。It is a functional block diagram which shows the functional structural example for performing operation history alteration detection control among the functional structures of the player terminal of FIG. 2, and the server of FIG. 図6の機能的構成を有するサーバが実行する操作履歴改ざん検出処理の流れの一例を説明するフローチャートである。7 is a flowchart for explaining an example of a flow of operation history alteration detection processing executed by a server having the functional configuration of FIG. 6.

以下、本発明の実施形態について、図面を用いて説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

図1は、本発明の一実施形態に係る情報処理システムの構成を示している。
図1に示す情報処理システムは、m人(mは1以上の任意の整数値)のプレイヤーの夫々により使用されるプレイヤー端末1−1乃至1−mと、サーバ2とを含むシステムである。プレイヤー端末1−1乃至1−mの夫々と、サーバ2とは、インターネット等の所定のネットワークNを介して相互に接続されている。
FIG. 1 shows the configuration of an information processing system according to an embodiment of the present invention.
The information processing system shown in FIG. 1 is a system that includes player terminals 1-1 to 1 -m used by m players (m is an arbitrary integer value of 1 or more) and a server 2. Each of the player terminals 1-1 to 1-m and the server 2 are connected to each other via a predetermined network N such as the Internet.

サーバ2は、プレイヤー端末1−1乃至1−mの夫々に対してゲームの実行環境を提供し、プレイヤー端末1−1乃至1−mの夫々において実行されるゲームに関する各種各様のサービスを提供する。
プレイヤー端末1−1乃至1−mの夫々は、各プレイヤーにより操作されるスマートフォン等で構成され、ゲームの実行等各種処理を実行する。
なお、以下、プレイヤー端末1−1乃至1−mの夫々を個々に区別する必要がない場合、これらをまとめて「プレイヤー端末1」と呼ぶ。
The server 2 provides a game execution environment to each of the player terminals 1-1 to 1-m, and provides various services related to the game executed on each of the player terminals 1-1 to 1-m. To do.
Each of the player terminals 1-1 to 1-m includes a smartphone or the like operated by each player, and executes various processes such as game execution.
Hereinafter, when it is not necessary to individually distinguish each of the player terminals 1-1 to 1-m, these are collectively referred to as “player terminal 1”.

図2は、図1の情報処理システムのうち、プレイヤー端末1のハードウェア構成を示すブロック図である。   FIG. 2 is a block diagram showing a hardware configuration of the player terminal 1 in the information processing system of FIG.

プレイヤー端末1は、上述した様にスマートフォン等で構成される。
プレイヤー端末1は、CPU(Central Processing Unit)21と、ROM(Read Only Memory)22と、RAM(Random Access Memory)23と、バス24と、入出力インターフェース25と、タッチ操作入力部26と、表示部27と、入力部28と、記憶部29と、通信部30と、振動検出部31と、ドライブ32と、を備えている。
The player terminal 1 is configured by a smartphone or the like as described above.
The player terminal 1 includes a CPU (Central Processing Unit) 21, a ROM (Read Only Memory) 22, a RAM (Random Access Memory) 23, a bus 24, an input / output interface 25, a touch operation input unit 26, a display Unit 27, input unit 28, storage unit 29, communication unit 30, vibration detection unit 31, and drive 32.

CPU21は、ROM22に記録されているプログラム、又は、記憶部29からRAM23にロードされたプログラムに従って各種の処理を実行する。
RAM23には、CPU21が各種の処理を実行する上において必要なデータ等も適宜記憶される。
The CPU 21 executes various processes according to a program recorded in the ROM 22 or a program loaded from the storage unit 29 to the RAM 23.
The RAM 23 appropriately stores data necessary for the CPU 21 to execute various processes.

CPU21、ROM22及びRAM23は、バス24を介して相互に接続されている。このバス24にはまた、入出力インターフェース25も接続されている。入出力インターフェース25には、タッチ操作入力部26、表示部27、入力部28、記憶部29、通信部30、振動検出部31及びドライブ32が接続されている。   The CPU 21, ROM 22, and RAM 23 are connected to each other via a bus 24. An input / output interface 25 is also connected to the bus 24. A touch operation input unit 26, a display unit 27, an input unit 28, a storage unit 29, a communication unit 30, a vibration detection unit 31, and a drive 32 are connected to the input / output interface 25.

タッチ操作入力部26は、例えば表示部27の表示面に積層される静電容量式又は抵抗膜式(感圧式)の位置入力センサにより構成され、タッチ操作がなされた位置の座標を検出する。
ここで、タッチ操作とは、タッチ操作入力部26に対する物体の接触の操作をいう。タッチ操作入力部26に対して接触する物体は、例えばプレイヤーの指やタッチペン等である。
表示部27は、液晶等のディスプレイにより構成され、ゲームに関する画像等、各種画像を表示する。
このように、本実施形態では、タッチ操作入力部26と表示部27とにより、タッチパネルが構成されている。
The touch operation input unit 26 includes, for example, a capacitance type or resistive film type (pressure sensitive) position input sensor stacked on the display surface of the display unit 27, and detects coordinates of a position where the touch operation is performed.
Here, the touch operation refers to an operation of contacting an object with respect to the touch operation input unit 26. The object that comes into contact with the touch operation input unit 26 is, for example, a player's finger or a touch pen.
The display unit 27 includes a display such as a liquid crystal display, and displays various images such as an image related to a game.
Thus, in this embodiment, the touch operation input unit 26 and the display unit 27 constitute a touch panel.

ここで、タッチパネルにおけるタッチ操作の種類としては、例えばタップ、スワイプ及びフリックが存在する。
タップとは、表示面の所定領域に対して物体が接触し、その後、所定領域と同一の領域から物体が離間する操作のことをいう。
また、スワイプ及びフリックとは、表示媒体への物体の接触が開始された第1状態から、表示媒体への接触が維持されて物体の位置が変化する第2状態(タッチ位置が変化する第2状態)を経て、表示媒体への物体の接触が解除される第3状態(物体が表示媒体から離間する第3状態)まで至る一連の操作のことをいう。
詳細については後述するが、プレイヤー端末1のタッチパネルに対してこれらのタッチ操作が行われると、プレイヤー端末1に振動が生ずることとなる。
Here, as types of touch operations on the touch panel, for example, tap, swipe, and flick exist.
The tap is an operation in which an object comes into contact with a predetermined area on the display surface, and thereafter the object is separated from the same area as the predetermined area.
In addition, swipe and flick are a first state in which contact of an object with the display medium is started and a second state in which contact with the display medium is maintained and the position of the object is changed (second state in which the touch position is changed). State), a series of operations from the contact of the object to the display medium to the third state (third state in which the object is separated from the display medium).
Although details will be described later, when these touch operations are performed on the touch panel of the player terminal 1, the player terminal 1 is vibrated.

入力部28は、各種ハードウェア釦等で構成され、プレイヤーの指示操作に応じて各種情報を入力する。
記憶部29は、DRAM(Dynamic Random Access Memory)等で構成され、各種データを記憶する。
通信部30は、インターネットを含むネットワークNを介して他の装置(図1の例ではサーバ2や他のプレイヤー端末1)との間で行う通信を制御する。
The input unit 28 is configured with various hardware buttons and the like, and inputs various information according to the player's instruction operation.
The storage unit 29 is configured by a DRAM (Dynamic Random Access Memory) or the like and stores various data.
The communication unit 30 controls communication performed with other devices (the server 2 and other player terminals 1 in the example of FIG. 1) via the network N including the Internet.

振動検出部31は、タッチパネルへのタッチ操作により生じた振動を検出する。例えばプレイヤー端末1がスマートフォンで構成される場合、当該スマートフォンに内蔵される加速度センサにより、振動検出部31は構成される。
なお、より正確には加速度センサは、ピエゾ抵抗型や静電容量型の検出機構により3軸加速度成分を検出して、その検出結果を表す3軸成分毎の加速度データを出力する。そして、サーバ2等が、当該加速度データに基づいて、プレイヤー端末1の振動を認識する。ただし、本明細書では、このような加速度データは、振動を認識可能であるため、振動の情報の一種として把握する。即ち、本明細書では、振動検出とは、振動そのものを検出することの他、振動を認識可能な情報(例えば加速度)を検出することも含む広義な概念である。
The vibration detection unit 31 detects vibration generated by a touch operation on the touch panel. For example, when the player terminal 1 is configured by a smartphone, the vibration detection unit 31 is configured by an acceleration sensor built in the smartphone.
More precisely, the acceleration sensor detects a triaxial acceleration component by a piezoresistive type or a capacitance type detection mechanism, and outputs acceleration data for each triaxial component representing the detection result. Then, the server 2 or the like recognizes the vibration of the player terminal 1 based on the acceleration data. However, in this specification, such acceleration data is recognized as a kind of vibration information because vibration can be recognized. That is, in this specification, the vibration detection is a broad concept including not only detecting the vibration itself but also detecting information (for example, acceleration) capable of recognizing the vibration.

ドライブ32は、必要に応じて設けられる。ドライブ32には、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリ等よりなる、リムーバブルメディア41が適宜装着される。ドライブ32によってリムーバブルメディア41から読み出されたプログラムは、必要に応じて記憶部29にインストールされる。また、リムーバブルメディア41は、記憶部29に記憶されている各種データも、記憶部29と同様に記憶することができる。   The drive 32 is provided as necessary. A removable medium 41 composed of a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is appropriately attached to the drive 32. The program read from the removable medium 41 by the drive 32 is installed in the storage unit 29 as necessary. The removable medium 41 can also store various data stored in the storage unit 29 in the same manner as the storage unit 29.

図3は、図1の情報処理システムのうち、本発明の情報処理装置の一実施形態に係るサーバ2のハードウェア構成を示すブロック図である。   FIG. 3 is a block diagram showing a hardware configuration of the server 2 according to an embodiment of the information processing apparatus of the present invention in the information processing system of FIG.

サーバ2は、CPU51と、ROM52と、RAM53と、バス54と、入出力インターフェース55と、出力部56と、入力部57と、記憶部58と、通信部59と、ドライブ60とを備えている。
サーバ2の構成は、プレイヤー端末1の振動検出部31及びタッチパネルを除いた構成と基本的に同様であるので、ここではその説明は省略する。
The server 2 includes a CPU 51, a ROM 52, a RAM 53, a bus 54, an input / output interface 55, an output unit 56, an input unit 57, a storage unit 58, a communication unit 59, and a drive 60. .
Since the configuration of the server 2 is basically the same as the configuration excluding the vibration detection unit 31 and the touch panel of the player terminal 1, the description thereof is omitted here.

このような図2のプレイヤー端末1及び図3のサーバ2の各種ハードウェアと各種ソフトウェアとの協働により、プレイヤー端末1でゲームの実行が可能になる。
即ち、本実施形態の情報処理システムは、マルチバトル等複数のプレイヤーが参加可能なゲームに対する各種制御を実行できる。特に、情報処理システムは、操作履歴の改ざん行為等又はそのおそれを検出する制御(以下、「操作履歴改ざん検出制御」と呼ぶ)として、次のような制御を実行することができる。
The game can be executed on the player terminal 1 by the cooperation of the various hardware and various software of the player terminal 1 of FIG. 2 and the server 2 of FIG.
That is, the information processing system according to the present embodiment can execute various controls on a game in which a plurality of players can participate, such as a multi-battle. In particular, the information processing system can execute the following control as control for detecting manipulation history falsification or the like or the risk thereof (hereinafter referred to as “operation history alteration detection control”).

即ち、改ざん者の多くは、タッチ操作を行うべき場所とタイミングをコンピュータに判断させ、自然人(プレイヤー)による操作を伴わずに自動的にタッチ操作を行うプログラムを利用し、スマートフォン上のタッチ操作に関する情報を改ざんや偽造をし、操作履歴の改ざん行為等を行っている。従って、改ざん者の操作データは、自然人が物理的に入力した正規のタッチ操作に関する情報とは異なるものとなる。
そこで、自然人が物理的に入力した正規のタッチ操作か否かを検出することができれば、操作履歴の改ざん行為等又はそのおそれを検出することができる。
That is, many tamperers use a program that automatically performs a touch operation without an operation by a natural person (player) by making a computer determine the location and timing at which the touch operation should be performed. The information is falsified or counterfeited, and the operation history is falsified. Therefore, the manipulation data of the tamper is different from the information related to the regular touch operation physically input by the natural person.
Therefore, if it is possible to detect whether or not the touch operation is a normal input physically input by a natural person, it is possible to detect the manipulation history falsification action or the like or the risk thereof.

ここで、プレイヤー端末1のタッチパネルへのタッチ操作が行われるときには、必ず、プレイヤー端末1本体に微細な振動が加えられる。この振動を検出することができれば、自然人が物理的に入力した正規のタッチ操作か否かを検出することが可能になる。
具体的には、プレイヤー端末1がスマートフォンの場合、加速度センサが内蔵されている。この加速度センサの出力値(又はその加工値)の時系列の情報からは、プレイヤー端末1が振動したか否か、振動しているならばどの程度振動しているのかを把握することができる。
また、加速度センサ以外の振動検出部31がプレイヤー端末1に備えられている場合も、振動検出部31の検出結果の時系列情報から、プレイヤー端末1が振動したか否か、振動しているならばどの程度振動しているのかを把握することができる。
そこで、以下、加速度センサを含め振動検出部31の検出結果の時系列情報を、「振動履歴情報」と呼ぶ。
この振動履歴情報を用いることで、自然人が物理的に入力した正規のタッチ操作か否かを検出することが可能になる。その理由は次の通りである。即ち、振動検出部31が出力する値は、物理現象から観測されるものである。プレイヤー端末1の持ち方、プレイヤー端末1本体のサイズや重さ、プレイヤー端末1に搭載される振動検出部31の種類等、多様な要因により、振動検出部31の値が決定される。従って、プログラムを用いて、振動検出部31の出力値の履歴を正確かつ自動的に再現することは困難である。
なお、以下では、加速度センサの出力結果の時系列情報を、振動履歴情報の一例として適宜用いて説明する。
Here, when a touch operation on the touch panel of the player terminal 1 is performed, a fine vibration is always applied to the player terminal 1 main body. If this vibration can be detected, it is possible to detect whether or not the touch operation is a regular touch operation physically input by a natural person.
Specifically, when the player terminal 1 is a smartphone, an acceleration sensor is incorporated. From the time-series information of the output value (or processed value) of the acceleration sensor, it is possible to grasp whether or not the player terminal 1 vibrates, and if so, how much it vibrates.
Further, even when the player terminal 1 is provided with a vibration detection unit 31 other than the acceleration sensor, whether or not the player terminal 1 vibrates from the time series information of the detection result of the vibration detection unit 31. How much it vibrates.
Therefore, hereinafter, the time series information of the detection result of the vibration detection unit 31 including the acceleration sensor is referred to as “vibration history information”.
By using this vibration history information, it is possible to detect whether or not the touch operation is a regular touch operation physically input by a natural person. The reason is as follows. That is, the value output from the vibration detection unit 31 is observed from a physical phenomenon. The value of the vibration detection unit 31 is determined by various factors such as how to hold the player terminal 1, the size and weight of the player terminal 1 main body, and the type of the vibration detection unit 31 mounted on the player terminal 1. Therefore, it is difficult to accurately and automatically reproduce the history of output values of the vibration detection unit 31 using a program.
Hereinafter, the time series information of the output result of the acceleration sensor will be described as appropriate as an example of vibration history information.

以上まとめると、本実施形態の操作履歴改ざん検出制御では、次のような制御処理が実行される。即ち、プレイヤー端末1(スマートフォン)は、そのタッチパネルへのタッチ操作が行われる際の振動を、スマートフォンの加速度センサ(振動検出部31)を用いて検出して、その検出結果の時系列情報を振動履歴情報としてサーバ2に送信する。つまり、サーバ2は、プレイヤー端末1の加速度センサの検出結果の時系列情報を、当該プレイヤー端末1の振動履歴情報として取得する。
また、サーバ2は、当該プレイヤー端末1におけるタッチ操作の履歴を示す情報(以下、「操作履歴情報」と呼ぶ)も取得する。
そして、サーバ2は、操作履歴情報と振動履歴情報とを比較することにより、当該操作履歴情報が、自然人が物理的に入力した正規のタッチ操作に関する情報であるのか、それとも、プログラム等により自動的に生成或いは改ざんされた情報であるのかを識別する。つまり、サーバ2は、改ざんや偽造が容易なタッチ操作に関する操作履歴情報の正当性を、改ざんや偽造が困難な振動履歴情報を用いて、検証することができる。
In summary, in the operation history alteration detection control of the present embodiment, the following control process is executed. That is, the player terminal 1 (smart phone) detects vibration when a touch operation on the touch panel is performed using the acceleration sensor (vibration detection unit 31) of the smartphone, and vibrates time series information of the detection result. It is transmitted to the server 2 as history information. That is, the server 2 acquires the time series information of the detection result of the acceleration sensor of the player terminal 1 as the vibration history information of the player terminal 1.
The server 2 also acquires information indicating a history of touch operations on the player terminal 1 (hereinafter referred to as “operation history information”).
Then, the server 2 compares the operation history information with the vibration history information to determine whether the operation history information is information related to a regular touch operation physically input by a natural person, or automatically by a program or the like. Whether the information has been generated or altered. That is, the server 2 can verify the legitimacy of the operation history information related to the touch operation that can be easily falsified and counterfeited using the vibration history information that is difficult to falsify and counterfeit.

ここで、自然人が物理的に入力したタッチ操作に起因する加速度センサの検出結果を、プログラム等が模すことは困難であることは上述した通りである。しかしながら、プログラム等が模すことは不可能であるとまでは言い切れない。
そこで本実施形態では、サーバ2は、振動履歴情報が正当か否かを判断する指標となる情報(以下、「指標情報」と呼ぶ)を保持している。本実施形態の指標情報は、自然人が物理的に入力したタッチ操作に起因する加速度センサの検出結果から得られた振動履歴情報に基づいて生成されたものである。
そして、サーバ2は、プレイヤー端末1から送信されてきた振動履歴情報と、この指標情報とを比較することで、当該振動履歴情報の正当性を検証する。
このように、本実施形態では、振動履歴情報と操作履歴情報という異なる2種類の情報源を用いて、振動履歴情報の正当性の確認後に操作履歴情報の正当性を確認するといった2ステップでの正当性の確認を行っている。つまり、サーバ2は、改ざんや偽造が容易なタッチ操作に関する操作履歴情報の正当性を、改ざんや偽造がされていないことが検証された振動履歴情報を用いて、検証することができる。
Here, as described above, it is difficult for a program or the like to imitate the detection result of the acceleration sensor resulting from the touch operation physically input by the natural person. However, it cannot be said that a program or the like cannot be imitated.
Therefore, in the present embodiment, the server 2 holds information (hereinafter referred to as “index information”) that serves as an index for determining whether or not the vibration history information is valid. The index information of the present embodiment is generated based on vibration history information obtained from the detection result of the acceleration sensor resulting from the touch operation physically input by a natural person.
Then, the server 2 verifies the legitimacy of the vibration history information by comparing the vibration history information transmitted from the player terminal 1 with the index information.
As described above, in this embodiment, two types of information sources, vibration history information and operation history information, are used to check the validity of the operation history information after confirming the validity of the vibration history information. The validity is confirmed. That is, the server 2 can verify the legitimacy of the operation history information related to the touch operation that can be easily falsified and counterfeited using the vibration history information verified that the falsification and counterfeiting have not been performed.

さらに以下、このような操作履歴改ざん検出制御について、図4及び図5を参照して説明する。   Further, such operation history alteration detection control will be described below with reference to FIGS. 4 and 5.

図4は、プレイヤー端末1のタッチパネルへのタップ操作をすることにより生じた振動を、プレイヤー端末1の加速度センサ(振動検出部31)で検出した場合における、その検出結果のタイミングチャートである。
本実施形態の操作履歴改ざん検出制御を実施するためには、プレイヤー端末1のタッチパネルへのタッチ操作が行われる際の微細な振動を正確に検知する必要がある。このためには、プレイヤー端末1の加速度センサが十分な分解能を有していることが前提となる。この前提が成立するのか否かについて本発明者が検証した結果を示す図が、図4である。
具体的には、図4(A)は実験者がプレイヤー端末1を手で持って3回タップ操作を行った場合のタイミングチャートである。図4(B)はプレイヤー端末1を机の上に置いた状態で実験者が3回タップ操作を行った場合のタイミングチャートである。
なお、図4の例では、加速度センサの検出結果はアナログ的に連続した曲線として描画されているが、実際には、各軸の加速度の値は10ミリ秒毎に取得されている。プレイヤー端末1として現在市販されている一般的なスマートフォンが採用された場合、それに内蔵される加速度センサは、100Hz(1秒間に100回)の測定周波数を有するため、10ms毎の取得となる。
FIG. 4 is a timing chart of the detection result when the vibration generated by the tap operation on the touch panel of the player terminal 1 is detected by the acceleration sensor (vibration detection unit 31) of the player terminal 1.
In order to implement the operation history alteration detection control of the present embodiment, it is necessary to accurately detect minute vibrations when a touch operation on the touch panel of the player terminal 1 is performed. For this purpose, it is assumed that the acceleration sensor of the player terminal 1 has sufficient resolution. FIG. 4 is a diagram showing a result of verification by the present inventor as to whether or not this premise is satisfied.
Specifically, FIG. 4A is a timing chart when the experimenter holds the player terminal 1 with his hand and performs a tap operation three times. FIG. 4B is a timing chart when the experimenter performs the tap operation three times with the player terminal 1 placed on the desk.
In the example of FIG. 4, the detection result of the acceleration sensor is drawn as an analog continuous curve, but actually, the acceleration value of each axis is acquired every 10 milliseconds. When a general smart phone currently on the market is adopted as the player terminal 1, the acceleration sensor built in it has a measurement frequency of 100 Hz (100 times per second), and is acquired every 10 ms.

図4の3つの楕円の枠内に示すように、プレイヤー端末1のタッチパネルへの3回のタップ操作は、プレイヤー端末1の加速度センサの出力レベル(Accelerationの)変動(振幅変動)として検出ができていることがわかる。
なお、図4(A)及び図4(B)の末尾(横軸のSampleの値が300以降の波形)において、微細な振幅変動が繰り返されているのは、スクリーンキャプチャ操作のための振動であり、タッチ操作とは無関係である。
As shown in the three ellipse frames in FIG. 4, the three tap operations on the touch panel of the player terminal 1 can be detected as fluctuation (amplitude fluctuation) of the output level (Acceleration) of the acceleration sensor of the player terminal 1. You can see that
It should be noted that at the end of FIGS. 4 (A) and 4 (B) (a waveform with a sample value on the horizontal axis of 300 or later), the minute amplitude fluctuation is repeated due to vibration for the screen capture operation. Yes, unrelated to touch operation.

プレイヤー端末1を手に持った時のタップ操作をした振動と、プレイヤー端末1を机の上に固定してタップ操作をしたときの振動の最大の違いは、加速度センサの出力レベルの振れ幅である。
具体的には、図4(A)の、プレイヤー端末1を手に持った時の加速度センサの出力レベルの振れ幅は、0gal〜200galまでの揺れを示している。一方、図4(B)の、プレイヤー端末1を机の上に固定してタッチ操作したときの加速度センサの出力レベルの振れ幅は、0gal〜50galとなっている。
ここで、1galは、1センチメートル毎秒(cm/s)の加速度の大きさである。なお、プレイヤー端末1を落下させたときに生じる重力加速度はおよそ981galであり、プレイヤー端末1の加速度センサが極めて微細な加速度の変化をとらえていることがわかる。
The maximum difference between the vibration that occurs when the player terminal 1 is held in the hand and the vibration that occurs when the player terminal 1 is fixed on the desk and the tap is operated is the amplitude of the output level of the acceleration sensor. is there.
Specifically, the swing range of the output level of the acceleration sensor when the player terminal 1 is held in the hand in FIG. 4A shows a swing from 0 gal to 200 gal. On the other hand, the swing range of the output level of the acceleration sensor when the player terminal 1 is fixed on the desk and touched in FIG. 4B is 0 gal to 50 gal.
Here, 1 gal is the magnitude of acceleration of 1 centimeter per second (cm / s). Note that the gravitational acceleration generated when the player terminal 1 is dropped is about 981 gal, and it can be seen that the acceleration sensor of the player terminal 1 captures a very fine change in acceleration.

以上より、本実施形態の操作履歴改ざん検出制御を実施するための前提、即ち、プレイヤー端末1のタッチパネルへのタッチ操作が行われる際の微細な振動を正確に検知すべく、プレイヤー端末1の加速度センサが十分な分解能を有しているという前提が、成立することが検証された。   As described above, in order to accurately detect the premise for carrying out the operation history alteration detection control of the present embodiment, that is, the minute vibration when the touch operation on the touch panel of the player terminal 1 is performed, the acceleration of the player terminal 1 is detected. It was verified that the premise that the sensor has sufficient resolution was established.

図5は、プレイヤー端末1の操作履歴情報の正当性を、正当性確認済みの振動履歴情報と比較し、検証する図である。
プレイヤーTが、プレイヤー端末1のタッチパネルに3回のタップ操作をした場合における、プレイヤー端末1に内蔵された加速度センサ(振動検出部31)の検出結果を示すタイミングチャート(即ち振動履歴情報)が右上に示されており、プレイヤー端末1のタップ操作による操作履歴情報が右下に示されている。
FIG. 5 is a diagram for verifying the validity of the operation history information of the player terminal 1 by comparing it with the vibration history information whose validity has been confirmed.
A timing chart (that is, vibration history information) indicating the detection result of the acceleration sensor (vibration detection unit 31) built in the player terminal 1 when the player T performs a tap operation on the touch panel of the player terminal 1 three times is shown in the upper right. The operation history information by the tap operation of the player terminal 1 is shown in the lower right.

振動履歴情報(右上)は、プレイヤー端末1に内蔵された加速度センサから出力される、x軸の加速度、y軸の加速度、z軸の加速度の夫々のタイミングチャートから構成される。図5の例では、図4の例と同様に、振動履歴情報はアナログ的に連続した曲線として描画されているが、実際には、各軸の加速度の値は10ミリ秒毎に取得されている。プレイヤー端末1として現在市販されている一般的なスマートフォンが採用された場合、それに内蔵される加速度センサ(振動検出部31)は、100Hz(1秒間に100回)の測定周波数を有するため、10ms毎の取得となる。具体的には例えば、振動履歴情報Aのデータ構造は例えば次式(1)のように定義される。
A:={x1,y1,z1, x2,y2,z2, ・・・ , xm,ym,zm}・・・(1)
ここで、加速度センサは一定の周波数で加速度を測定しており、xk,yk,zk(kは1〜mの整数値)の夫々は、タイミングkで測定される、x軸の加速度、y軸の加速度、及び、z軸の加速度の夫々を示している。つまり、タイミングmは、最新の測定結果を示している。
The vibration history information (upper right) is composed of respective timing charts of x-axis acceleration, y-axis acceleration, and z-axis acceleration output from the acceleration sensor built in the player terminal 1. In the example of FIG. 5, as in the example of FIG. 4, the vibration history information is drawn as an analog continuous curve, but in reality, the acceleration value of each axis is acquired every 10 milliseconds. Yes. When a general smart phone currently on the market is adopted as the player terminal 1, the acceleration sensor (vibration detection unit 31) incorporated therein has a measurement frequency of 100 Hz (100 times per second), so every 10 ms. Will be acquired. Specifically, for example, the data structure of the vibration history information A is defined as the following equation (1), for example.
A: = {x1, y1, z1, x2, y2, z2,..., Xm, ym, zm} (1)
Here, the acceleration sensor measures acceleration at a constant frequency, and each of xk, yk, zk (k is an integer value of 1 to m) is an x-axis acceleration, y-axis measured at timing k. , And z-axis acceleration, respectively. That is, the timing m indicates the latest measurement result.

操作履歴情報は、プレイヤーTがプレイヤー端末1にタッチ操作をしたタイミングを示す情報である。
具体的には、タッチパネルからは、x軸上の位置及びy軸上の位置から構成される入力イベントの情報が得られる。このような入力イベントの情報は、プレイヤー端末1のメモリ上、もしくは、二次記憶上に格納される。この入力イベントの情報に対して、時間情報(各入力イベントがいつ発生したのかを示す情報)を含めたものが、操作履歴情報として採用されている。具体的には例えば、操作履歴情報Tのデータ構造は例えば次式(2)のように定義される。
A:={x1,y1,t1, x2,y2,t2, ・・・ , xn,yn,tn}・・・(2)
ここで、xp,yp,tp(pは1〜nの整数値)の夫々は、タイミングpで測定される、x軸の位置、y軸の位置、及び、それらの位置が記録された時刻の夫々を示している。このように、入力イベントの情報の履歴(各要素)は、振動履歴情報と異なり、ユーザが入力したタイミングで記録されるため、時間情報も夫々のイベント毎に記録したものが、操作履歴情報として採用される。
The operation history information is information indicating the timing at which the player T performs a touch operation on the player terminal 1.
Specifically, information on an input event including a position on the x axis and a position on the y axis is obtained from the touch panel. Such input event information is stored in the memory of the player terminal 1 or in a secondary storage. For the input event information, information including time information (information indicating when each input event has occurred) is adopted as operation history information. Specifically, for example, the data structure of the operation history information T is defined as in the following formula (2), for example.
A: = {x1, y1, t1, x2, y2, t2,..., Xn, yn, tn} (2)
Here, xp, yp, and tp (p is an integer value of 1 to n) are the x-axis position, the y-axis position, and the time at which these positions are recorded, measured at timing p. Showing each one. As described above, since the history (each element) of the input event information is recorded at the timing input by the user, unlike the vibration history information, the time information recorded for each event is the operation history information. Adopted.

プレイヤー端末1の加速度センサの検出結果を示す振動履歴情報(図5右上)において、1回目のタップ時における波形W1、2回目のタップ時における波形W2、及び3回目のタップ時における波形W3について、加速度センサの出力レベル(Accelerationの)変動(振幅変動)が明確に示されていることがわかる。なお、波形W1,W2,W3は、上記式(1)の振動履歴情報A内の複数の要素データxk,yk,zkの集合体である。
また、プレイヤー端末1の操作履歴情報(図5右下)では、1回目のタップを示すイベント情報T1、2回目のタップを示すイベント情報T2、及び3回目のタップを示すイベント情報T3が存在することがわかる。なお、イベント情報T1,T2,T3は、上記式(2)の操作履歴情報T内の1つの要素データxp,yp,tpである。
ここで、振動履歴情報A(図5右上)と操作履歴情報T(図5右下)の時間軸(横軸)は一致している。そして、振動履歴情報Aにおける波形W1,W2,W3の夫々の発生タイミング(時間軸上の位置)と、操作履歴情報Tにおけるイベント情報T1,T2,T3の夫々の発生タイミング(時間軸上の位置)とは略一致していることがわかる。
このように、正当性確認済みの振動履歴情報A(図5右上)と操作履歴情報T(図5右下)とを比較することで、当該操作履歴情報Tの正当性を、当該振動履歴情報Aから検証できることがわかる。
換言すると、振動履歴情報Aにおける加速度(振動)の変化が発生したタイミングと、操作履歴情報Tにおけるイベントの発生タイミングが略同一に起きていることを確認することで、当該操作履歴情報Tで表される各イベントは、自然人が物理的に入力した正規のタッチ操作に基づくものであることを検証することができる。
In the vibration history information indicating the detection result of the acceleration sensor of the player terminal 1 (upper right in FIG. 5), regarding the waveform W1 at the first tap, the waveform W2 at the second tap, and the waveform W3 at the third tap, It can be seen that the output level (Acceleration) variation (amplitude variation) of the acceleration sensor is clearly shown. Waveforms W1, W2, and W3 are aggregates of a plurality of element data xk, yk, and zk in the vibration history information A of the above formula (1).
In the operation history information of the player terminal 1 (lower right in FIG. 5), there are event information T indicating the first tap, event information T2 indicating the second tap, and event information T3 indicating the third tap. I understand that. The event information T1, T2, T3 is one element data xp, yp, tp in the operation history information T of the above formula (2).
Here, the time axis (horizontal axis) of the vibration history information A (upper right in FIG. 5) and the operation history information T (lower right in FIG. 5) coincide. Then, the generation timing (position on the time axis) of the waveforms W1, W2, and W3 in the vibration history information A and the generation timing (position on the time axis) of the event information T1, T2, and T3 in the operation history information T ) Is almost the same.
Thus, by comparing the vibration history information A (upper right in FIG. 5) and the operation history information T (lower right in FIG. 5), the correctness of the operation history information T can be determined. It can be seen from A that it can be verified.
In other words, by confirming that the timing at which the acceleration (vibration) change in the vibration history information A occurs and the occurrence timing of the event in the operation history information T are substantially the same, the operation history information T It can be verified that each event to be performed is based on a regular touch operation physically input by a natural person.

以上図4及び図5を用いて説明した操作履歴改ざん検出制御を実行すべく、図2のプレイヤー端末1と図3のサーバ2は、図6に示す様な機能的構成を有している。
図6は、プレイヤー端末1とサーバ2の機能的構成のうち、操作履歴改ざん検出制御を実行するための機能的構成例を示す機能ブロック図である。
The player terminal 1 in FIG. 2 and the server 2 in FIG. 3 have a functional configuration as shown in FIG. 6 in order to execute the operation history alteration detection control described with reference to FIGS.
FIG. 6 is a functional block diagram illustrating an example of a functional configuration for executing the operation history alteration detection control among the functional configurations of the player terminal 1 and the server 2.

図6に示すように、プレイヤー端末1のCPU21においては、送信制御部141と、ゲーム実行部142とが機能する。
ゲーム実行部142は、所定のゲームを実行する。当該ゲームは、タッチパネルに対するタッチ操作を必要とするものとする。
送信制御部141は、振動検出部31から出力された振動履歴情報を通信部30から送信することを制御する。また、送信制御部141は、タッチパネルに対する操作履歴情報を通信部30から送信することを制御する。
As shown in FIG. 6, a transmission control unit 141 and a game execution unit 142 function in the CPU 21 of the player terminal 1.
The game execution unit 142 executes a predetermined game. It is assumed that the game requires a touch operation on the touch panel.
The transmission control unit 141 controls transmission of the vibration history information output from the vibration detection unit 31 from the communication unit 30. The transmission control unit 141 controls transmission of operation history information for the touch panel from the communication unit 30.

また、図6に示す様に、サーバ2のCPUにおいては、振動情報取得部111と、振動情報正当性判断部112と、操作情報取得部113と、操作情報正当性判断部114と、指標関数生成更新部121と、指標関数管理部122とが機能する。
サーバ2の記憶部58においては、指標関数DB131が機能する。
As shown in FIG. 6, in the CPU of the server 2, the vibration information acquisition unit 111, the vibration information validity determination unit 112, the operation information acquisition unit 113, the operation information validity determination unit 114, and the index function The generation / update unit 121 and the index function management unit 122 function.
In the storage unit 58 of the server 2, the index function DB 131 functions.

振動情報取得部111は、プレイヤー端末1の振動検出部31の検出結果の時系列を示す振動履歴情報を、通信部59を介して当該プレイヤー端末1から取得する。
振動情報正当性判断部112は、指標関数管理部122によって管理されている指標関数に基づいて、振動情報取得部111により取得された振動履歴情報の正当性を判断する。
ここで、指標関数とは、振動履歴情報が示す振動が、自然人によるタッチ操作に基づく振動であるか否かの判定結果を示す情報、又は当該判定結果を導き出すことが可能な情報を出力する関数をいう。
従って、このような特性を有する関数であれば、任意のものを指標関数として採用することができる。
例えば、振動履歴情報が示す加速度センサの出力が線形変化していないことを確認するだけの関数を、指標関数として採用してもよい。
また、振動履歴情報は加速度センサの検出結果の時系列情報であるため、過去に自然人が実際にタッチ操作をした際に得られた加速度の特徴量を定義したモデルを用いて得られた関数が、指標関数として採用してもよい。
即ち、自然人によるタッチ操作の振動履歴情報の集合を対象として、サポートベクターマシン(support vector machine)等の教師あり学習を用いるパターン認識モデルや、ランダムフォレスト(random forest)等の機械学習アルゴリズムを適用して、自然人による振動履歴情報と、機械的に生成もしくは改ざんされた振動履歴情報とを識別する関数を出力させ、この関数を、指標関数として採用してもよい。
つまり、過去に得られた振動履歴情報のうち、正当性が確認された振動履歴情報に基づいて、指標関数が生成されて、指標関数DB131に格納されてもよい。
なお、指標関数の生成手法や生成場所は、特に限定されず、本実施形態では後述するようにサーバ2に設けられる指標関数生成更新部121が生成する手法を採用しているが、その他例えば、プレイヤーのプレイヤー端末1から集められた正規、および、不正規の振動履歴情報を、サーバ2側に所謂ビッグデータとして蓄積し、これらの振動履歴ビッグデータ(モーション・ビッグデータ)を対象とした機械学習による分類手法を採用してもよい。 具体的には本実施形態では、振動情報正当性判断部112は、振動情報取得部111により取得された振動履歴情報が示す各タイミングの加速度センサの値を、指標関数DB131に格納されている指標関数に入力して当該指標関数の出力に基づいて、振動履歴情報が示す各タイミングの加速度センサの値が、自然人がタッチ操作したものとして不自然でないか否かを確認する。つまり、自然人がタッチ操作したものとして不自然でないことが確認された振動履歴情報が、正当性が確認された振動履歴情報である。
The vibration information acquisition unit 111 acquires vibration history information indicating a time series of detection results of the vibration detection unit 31 of the player terminal 1 from the player terminal 1 via the communication unit 59.
The vibration information validity determination unit 112 determines the validity of the vibration history information acquired by the vibration information acquisition unit 111 based on the index function managed by the index function management unit 122.
Here, the index function is a function that outputs information indicating a determination result as to whether or not the vibration indicated by the vibration history information is a vibration based on a touch operation by a natural person, or information capable of deriving the determination result. Say.
Therefore, any function having such characteristics can be adopted as the index function.
For example, a function that only confirms that the output of the acceleration sensor indicated by the vibration history information does not change linearly may be adopted as the index function.
In addition, since the vibration history information is time-series information of the detection result of the acceleration sensor, a function obtained using a model that defines a feature quantity of acceleration obtained when a natural person has actually performed a touch operation in the past can be obtained. The index function may be employed.
That is, for a set of vibration history information of touch operations by natural persons, a pattern recognition model using supervised learning such as a support vector machine or a machine learning algorithm such as random forest is applied. Thus, a function for identifying vibration history information by a natural person and vibration history information mechanically generated or tampered with may be output, and this function may be adopted as an index function.
That is, an index function may be generated and stored in the index function DB 131 based on vibration history information whose validity has been confirmed among vibration history information obtained in the past.
Note that the index function generation method and generation location are not particularly limited, and in this embodiment, a method generated by the index function generation / update unit 121 provided in the server 2 as described later is employed. Regular and irregular vibration history information collected from the player terminal 1 of the player is stored as so-called big data on the server 2 side, and machine learning for these vibration history big data (motion big data) is targeted. A classification method may be employed. Specifically, in the present embodiment, the vibration information validity determination unit 112 uses the index stored in the index function DB 131 to indicate the value of the acceleration sensor at each timing indicated by the vibration history information acquired by the vibration information acquisition unit 111. Based on the input to the function and the output of the index function, it is confirmed whether or not the value of the acceleration sensor at each timing indicated by the vibration history information is not unnatural as a natural person touch-operated. That is, the vibration history information that is confirmed to be not unnatural as a natural person touch-operated is the vibration history information that is confirmed to be correct.

操作情報取得部113は、プレイヤー端末1のタッチ操作の時系列を示す操作履歴情報を、通信部59を介して当該プレイヤー端末1から取得する。
操作情報正当性判断部114は、操作情報取得部113により取得された操作履歴情報と、振動情報正当性判断部112で正当性が判断された振動履歴情報とを比較することで、当該操作履歴情報の正当性を判断する。
具体的には、操作情報正当性判断部114は、操作履歴情報が示すタッチ操作による入力イベント履歴と、正当性が確認された振動履歴情報が示す各タイミングの加速度センサの値とを比較し、入力イベント履歴が改ざんされていないことを確認する。
より具体的には例えば、操作情報正当性判断部114は、タッチ操作をしたときの時間に対応する加速度の変化が、入力履歴イベントと同時に起きていることを確認する関数を用いて、入力イベント履歴が改ざんされていないことを確認することができる。
The operation information acquisition unit 113 acquires operation history information indicating a time series of touch operations of the player terminal 1 from the player terminal 1 via the communication unit 59.
The operation information validity determining unit 114 compares the operation history information acquired by the operation information acquiring unit 113 with the vibration history information determined to be correct by the vibration information validity determining unit 112, so that the operation history is obtained. Determine the legitimacy of the information.
Specifically, the operation information validity determination unit 114 compares the input event history by the touch operation indicated by the operation history information with the value of the acceleration sensor at each timing indicated by the vibration history information whose validity is confirmed, Check that the input event history has not been tampered with.
More specifically, for example, the operation information validity determination unit 114 uses a function for confirming that a change in acceleration corresponding to the time when the touch operation is performed occurs simultaneously with the input history event. It can be confirmed that the history has not been tampered with.

指標関数生成更新部121は、過去に正当性が判断された振動履歴情報を用いて、指標関数を生成又は更新する。
具体的には、指標関数生成更新部121は、プレイヤー端末1において自然人のタッチ操作により検出された加速度の特徴量に基づいて、指標関数を生成又は更新する。生成又は更新の手法は、上述した様に特に限定されないが、適切なものに更新できるように、機械学習等を用いる手法を採用すると好適である。
指標関数管理部122は、このようにして指標関数生成更新部121によって生成又は更新された指標関数を、指標関数DB131に蓄積することで管理する。
The index function generation / updating unit 121 generates or updates an index function using vibration history information whose validity has been determined in the past.
Specifically, the index function generation / update unit 121 generates or updates an index function based on the acceleration feature amount detected by the natural person's touch operation on the player terminal 1. The method of generation or update is not particularly limited as described above, but it is preferable to employ a method using machine learning or the like so that it can be updated to an appropriate one.
The index function management unit 122 manages the index function generated or updated by the index function generation / updating unit 121 in this manner by accumulating in the index function DB 131.

以上、操作履歴改ざん検出制御を実現するためのプレイヤー端末1及びサーバ2の機能的構成について説明した。
次に、図7を参照して、このような機能的構成を有するサーバ2が実行する、操作履歴改ざん検出処理の流れを説明する。
図7は、サーバ2の操作履歴改ざん検出処理の流れを説明するフローチャートである。
The functional configuration of the player terminal 1 and the server 2 for realizing the operation history alteration detection control has been described above.
Next, the flow of the operation history alteration detection process executed by the server 2 having such a functional configuration will be described with reference to FIG.
FIG. 7 is a flowchart for explaining the flow of the operation history alteration detection process of the server 2.

ステップS1において、サーバ2の振動情報取得部111は、振動検出部31の検出の時系列を示す振動履歴情報をプレイヤー端末1から取得する。
ステップS2において、操作情報取得部113は、タッチ操作の検出の時系列を表す操作履歴情報をプレイヤー端末1から取得する。
ステップS3において、振動情報正当性判断部112は、ステップS1の処理で取得された振動履歴情報の正当性を、指標関数管理部122によって管理されている指標関数を用いて判断する。
ステップS4において、振動情報正当性判断部112は、ステップS3の判断結果に基づいて、ステップS1の処理で取得された振動履歴情報は正当か否かを判断する。
In step S <b> 1, the vibration information acquisition unit 111 of the server 2 acquires vibration history information indicating the time series of detection by the vibration detection unit 31 from the player terminal 1.
In step S <b> 2, the operation information acquisition unit 113 acquires operation history information representing the time series of touch operation detection from the player terminal 1.
In step S <b> 3, the vibration information validity determination unit 112 determines the validity of the vibration history information acquired in the process of step S <b> 1 using the index function managed by the index function management unit 122.
In step S4, the vibration information validity determination unit 112 determines whether or not the vibration history information acquired in the process of step S1 is valid based on the determination result of step S3.

振動履歴情報が正当でないと判断された場合、即ち、プログラム等による改ざん等が行われた可能性がある振動履歴情報と判断された場合、ステップS4においてNOであると判断されて、処理はステップS7に進む。
ステップS7において、振動情報正当性判断部112は、リクエストの拒否処理を実行する。ここでいうリクエストとは、操作履歴情報により特定されるタッチ操作の組合せによるコマンドの発行等のリクエストを意味する。その後、処理は、ステップS8に進む。なお、ステップS8以降の処理については後述する。
If it is determined that the vibration history information is not valid, that is, if it is determined that the vibration history information may have been altered by a program or the like, NO is determined in step S4, and the process Proceed to S7.
In step S <b> 7, the vibration information correctness determination unit 112 executes a request rejection process. The request here means a request for issuing a command by a combination of touch operations specified by the operation history information. Thereafter, the processing proceeds to step S8. The processing after step S8 will be described later.

これに対して、振動履歴情報が正当であると判断された場合、ステップS4においてYESであると判断されて、処理はステップS5に進む。
ステップS5において、操作情報正当性判断部114は、ステップS2の処理で取得された操作履歴情報と、ステップS3及びS4で正当性が判断された振動履歴情報とを比較する。
ステップS6において、操作情報正当性判断部114は、操作履歴情報は正当であるか否かを判断する。
On the other hand, if it is determined that the vibration history information is valid, YES is determined in step S4, and the process proceeds to step S5.
In step S5, the operation information validity determining unit 114 compares the operation history information acquired in the process of step S2 with the vibration history information determined to be correct in steps S3 and S4.
In step S6, the operation information validity determination unit 114 determines whether or not the operation history information is valid.

操作履歴情報が正当でないと判断された場合、即ち、プログラム等による改ざん等が行われた可能性がある操作履歴情報と判断された場合、ステップS6においてNOであると判断されて、処理はステップS7に進む。
ステップS7において、振動情報正当性判断部112は、リクエストの拒否処理を実行する。その後、処理は、ステップS8に進む。なお、ステップS8以降の処理については後述する。
When it is determined that the operation history information is not valid, that is, when it is determined that the operation history information may have been altered by a program or the like, it is determined NO in step S6, and the process proceeds to step Proceed to S7.
In step S <b> 7, the vibration information correctness determination unit 112 executes a request rejection process. Thereafter, the processing proceeds to step S8. The processing after step S8 will be described later.

これに対して、操作履歴情報が正当であると判断された場合、ステップS6においてYESであると判断されて、リクエストが受け付けられると、処理はステップS8に進む。
ステップS8において、サーバ2のCPU51は、処理の終了指示が有ったか否かを判断する。ここで、処理の終了指示は、特に限定されないが、本実施形態ではサーバ2の電源遮断が採用されている。つまり、サーバ2において電源が遮断されると、ステップS8においてYESであると判断されて、サーバ2の操作履歴改ざん検出処理は終了になる。
これに対して、サーバ2において電源が遮断されない限り、ステップS8においてNOであると判断されて処理はステップS1に戻され、それ以降の処理が繰り返される。
On the other hand, when it is determined that the operation history information is valid, it is determined as YES in Step S6, and when the request is accepted, the process proceeds to Step S8.
In step S8, the CPU 51 of the server 2 determines whether or not there is an instruction to end the process. Here, an instruction to end the process is not particularly limited, but in this embodiment, power-off of the server 2 is adopted. That is, when the power is cut off in the server 2, it is determined as YES in step S8, and the operation history alteration detection process of the server 2 is ended.
In contrast, unless the server 2 is powered off, it is determined NO in step S8, the process returns to step S1, and the subsequent processes are repeated.

以上本発明の一実施形態について説明したが、本発明は、上述の実施形態に限定されるものではなく、本発明の目的を達成できる範囲での変形、改良等は本発明に含まれるものである。   Although one embodiment of the present invention has been described above, the present invention is not limited to the above-described embodiment, and modifications, improvements, and the like within a scope that can achieve the object of the present invention are included in the present invention. is there.

例えば、上述の実施形態は、正規ユーザが自然に入力しており、かつ、改ざん者が容易には入力できないデータを、操作履歴改ざん検出の対象にするものである。
しかしながら、特にこれに限定されず、汎用的なタッチの操作についての操作履歴情報の正当性の検証の用途一般に適用することができる。即ち、ゲームに限定されず、スマートフォン等のタッチ操作の正当性の検証に幅広く適用することができる。
For example, in the above-described embodiment, data that is normally input by a legitimate user and that cannot be easily input by a tamper is targeted for manipulation history tampering detection.
However, the present invention is not particularly limited to this, and can be applied to general purposes for verifying the validity of operation history information for general touch operations. That is, the present invention is not limited to games, and can be widely applied to verification of the legitimacy of touch operations such as smartphones.

また例えば、上述の実施形態では、説明の便宜上、プレイヤー端末1へのタップの操作履歴情報を一例として用いたが、特にこれに限定されない。
即ち、上述したように、プレイヤー端末1のタッチパネルへのタッチ操作であれば、プレイヤー端末1に何らかの振動が生じる。従って、タップ、スワイプ、フリック等の任意の種類のタッチ操作が任意に組み合わされた操作履歴情報の検証に適用することが容易にできる。
For example, in the above-described embodiment, the operation history information of the tap on the player terminal 1 is used as an example for convenience of explanation, but the present invention is not particularly limited thereto.
That is, as described above, if the player terminal 1 is a touch operation on the touch panel, some vibration is generated in the player terminal 1. Therefore, it can be easily applied to verification of operation history information in which arbitrary types of touch operations such as tap, swipe, and flick are arbitrarily combined.

また例えば、上述の実施形態では、振動履歴情報の正当性を検証するための情報として、人間が入力した加速度の特徴量を定義したモデルを用いて得られた指標関数が採用されたが、特にこれに限定されず、自然人によるタッチ操作に基づくプレイヤー端末1の振動か否かの判定の指標になる情報であれば足りる。このような情報を、以下「指標情報」と呼ぶ。即ち、指標関数は指標情報の一例である。   Further, for example, in the above-described embodiment, an index function obtained using a model that defines a feature amount of acceleration input by a human is employed as information for verifying the validity of vibration history information. However, the present invention is not limited to this, and any information that is an index for determining whether or not the player terminal 1 vibrates based on a touch operation by a natural person is sufficient. Such information is hereinafter referred to as “index information”. That is, the index function is an example of index information.

また例えば、図6の機能的構成は例示に過ぎず、特に限定されない。即ち、上述した一連の処理を全体として実行できる機能が情報処理装置に備えられていれば足り、この機能を実現するためにどのような機能ブロックを用いるのかは特に図6の例に限定されない。また、機能ブロックの存在場所も、図6に特に限定されず、任意でよい。例えば、サーバ2の機能ブロックをプレイヤー端末1等に移譲させてもよいし、逆に端末1の機能ブロックをサーバ2等に移譲させてもよい。
また、1つの機能ブロックは、ハードウェア単体で構成してもよいし、ソフトウェア単体で構成してもよいし、それらの組み合わせで構成してもよい。
Further, for example, the functional configuration of FIG. 6 is merely an example, and is not particularly limited. That is, it is sufficient that the information processing apparatus has a function capable of executing the above-described series of processes as a whole, and what functional block is used to realize this function is not particularly limited to the example of FIG. Further, the location of the functional block is not particularly limited to that shown in FIG. For example, the functional block of the server 2 may be transferred to the player terminal 1 or the like, and conversely, the functional block of the terminal 1 may be transferred to the server 2 or the like.
In addition, one functional block may be constituted by hardware alone, software alone, or a combination thereof.

各機能ブロックの処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、コンピュータ等にネットワークや記録媒体からインストールされる。
コンピュータは、専用のハードウェアに組み込まれているコンピュータであってもよい。また、コンピュータは、各種のプログラムをインストールすることで、各種の機能を実行することが可能なコンピュータ、例えばサーバの他汎用のスマートフォンやパーソナルコンピュータであってもよい。
When the processing of each functional block is executed by software, a program constituting the software is installed on a computer or the like from a network or a recording medium.
The computer may be a computer incorporated in dedicated hardware. The computer may be a computer capable of executing various functions by installing various programs, for example, a general-purpose smartphone or personal computer other than a server.

このようなプログラムを含む記録媒体は、プレイヤーにプログラムを提供するために装置本体とは別に配布される図示せぬリムーバブルメディアにより構成されるだけでなく、装置本体に予め組み込まれた状態でプレイヤーに提供される記録媒体等で構成される。   The recording medium including such a program is not only constituted by a removable medium (not shown) distributed separately from the apparatus main body in order to provide the program to the player, but is also provided to the player in a state of being preinstalled in the apparatus main body. It is composed of a provided recording medium or the like.

なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的或いは個別に実行される処理をも含むものである。
また、本明細書において、システムの用語は、複数の装置や複数の手段等より構成される全体的な装置を意味するものとする。
In the present specification, the step of describing the program recorded on the recording medium is not limited to the processing performed in time series along the order, but is not necessarily performed in time series, either in parallel or individually. The process to be executed is also included.
Further, in the present specification, the term “system” means an overall apparatus configured by a plurality of devices, a plurality of means, and the like.

換言すると、本発明が適用される情報処理装置は、上述の図1のサーバ2を含め、次のような構成を有する各種各様の実施形態を取ることができる。
即ち、本発明が適用される情報処理装置は、次のような端末(例えば図1のプレイヤー端末1)と通信をして情報を授受する。
即ち、端末は、
自機で生じる振動を検出する第1検出部(例えば図2の振動検出部31)と、
所定の表示面に画像を表示する表示部(例えば図2の表示部27)と、
前記表示面に積層され、物体の接触を所定方式で検出する第2検出部(例えば図2のタッチ操作入力部26)と、
前記物体の接触によるタッチ操作に基づいて、所定の処理を実行する実行部(例えば図6のゲーム実行部142)と、
を含む。
また、本発明が適用される情報処理装置は、
前記第1検出部の検出結果の時系列を示す振動履歴情報を前記端末から取得する第1取得手段(例えば図6の振動情報取得部111)と、
前記タッチ操作の時系列を示す操作履歴情報を前記端末から取得する第2取得手段(例えば図6の操作情報取得部113)と、
前記振動履歴情報と前記操作履歴情報とを比較することで、当該操作履歴情報の正当性を判断する第1判断手段(例えば図6の操作情報正当性判断部114)と、
を備える。
In other words, the information processing apparatus to which the present invention is applied can take various embodiments including the server 2 shown in FIG.
That is, the information processing apparatus to which the present invention is applied communicates with the following terminals (for example, the player terminal 1 in FIG. 1) to exchange information.
That is, the terminal
A first detection unit (for example, the vibration detection unit 31 in FIG. 2) that detects vibration generated in the own device;
A display unit (for example, the display unit 27 in FIG. 2) that displays an image on a predetermined display surface;
A second detection unit (for example, the touch operation input unit 26 in FIG. 2) that is stacked on the display surface and detects contact of an object in a predetermined manner;
An execution unit (for example, the game execution unit 142 in FIG. 6) that executes a predetermined process based on the touch operation by the contact of the object;
including.
An information processing apparatus to which the present invention is applied is
First acquisition means (for example, vibration information acquisition unit 111 in FIG. 6) that acquires vibration history information indicating a time series of detection results of the first detection unit from the terminal;
Second acquisition means (for example, the operation information acquisition unit 113 in FIG. 6) for acquiring operation history information indicating the time series of the touch operation from the terminal;
A first determination unit (for example, the operation information validity determination unit 114 in FIG. 6) that determines the validity of the operation history information by comparing the vibration history information and the operation history information;
Is provided.

このようにして、操作履歴改ざん検出において、改ざん検知の手法が公知となった場合や、検知を行うプログラム・コードそのものが改ざんの対象となった場合においても有効に機能する手法が確立される。
即ち、正規ユーザが自然に入力しており、かつ、改ざん者が容易には入力できないデータとして、物体の接触操作(タッチ操作)により入力されるデータが存在する。このタッチ操作はスマートフォン等では汎用的な操作である。そこで、本発明が適用される情報処理装置は、この汎用的なタッチ操作のイベントの正当性を検証することにより、操作履歴の改ざん行為等(又はそのおそれの行為)を検出する。
ここで、正規ユーザが端末に対して自然にタッチ操作をした場合には、当該端末において振動が生ずる。この場合、第1検出部の検出結果の時系列を示す振動履歴情報は、物理現象から観測されるものであり、プログラムから正確に自動生成することは困難である。従って、本発明が適用される情報処理装置は、上記構成が公開されることによって、改ざん検知の手法が公知となった場合や、端末側において検知を行うプログラム・コードそのものが改ざんの対象となった場合においても、操作履歴の改ざん行為等を有効に検出することができる。
In this way, in the operation history alteration detection, a method is established that functions effectively even when the alteration detection method becomes known or when the program code that performs the detection itself is the target of alteration.
That is, there is data that is input by a contact operation (touch operation) of an object as data that a regular user inputs naturally and cannot be input easily by a tamper. This touch operation is a general-purpose operation in a smartphone or the like. Therefore, the information processing apparatus to which the present invention is applied detects the manipulation history alteration action or the like (or an action that is likely to do so) by verifying the legitimacy of this general-purpose touch operation event.
Here, when the authorized user naturally performs a touch operation on the terminal, vibration occurs in the terminal. In this case, the vibration history information indicating the time series of the detection result of the first detection unit is observed from the physical phenomenon, and it is difficult to automatically generate accurately from the program. Therefore, in the information processing apparatus to which the present invention is applied, when the above-described configuration is disclosed, the falsification detection method becomes known, or the program code that performs detection on the terminal side is subject to falsification. Even in such a case, it is possible to effectively detect an act of falsifying the operation history.

また、前記端末として一般的なスマートフォンが採用されるならば、ユーザのオプトイン操作は必要ない。具体的には、一般的なスマートフォンでは、その向きを検出する機能が、スマートフォンの基本機能として実装されているため、高い分解能を持つ加速度センサが常時起動しており、明示的にオフにすることができない。この加速度センサを前記第1検出部として採用することで、当該端末で実行される全てのアプリケーションソフトウェアに対する情報入力の改ざん検知を容易に行うことができる。   Further, if a general smartphone is adopted as the terminal, the user's opt-in operation is not necessary. Specifically, in a general smartphone, the function to detect its orientation is implemented as a basic function of the smartphone, so an acceleration sensor with high resolution is always activated and must be explicitly turned off. I can't. By adopting this acceleration sensor as the first detection unit, it is possible to easily detect falsification of information input for all application software executed on the terminal.

さらにまた、従来技術と異なり、クライアントの端末側を一切変更せずに、サーバとしての情報処理装置側の操作履歴改ざん検出ロジックを改善することができる。例えば、当該端末として新しいスマートフォンの機種が発表されたときに、当該機種固有の振動を加味した操作履歴改ざん検出ロジックを、任意の時点で当該情報処理装置(サーバ)側に追加することができる。さらに、振動履歴情報をビッグデータとしてサーバが保存しておけば、過去のデータに遡って操作履歴改ざん検出を行うことも可能である。   Furthermore, unlike the prior art, it is possible to improve the operation history alteration detection logic on the information processing apparatus side as a server without changing the terminal side of the client at all. For example, when a new smartphone model is announced as the terminal, operation history alteration detection logic that takes into account the vibration specific to the model can be added to the information processing apparatus (server) side at any point in time. Further, if the server stores the vibration history information as big data, it is possible to detect manipulation history alteration retroactively to past data.

より詳細には、前記情報処理装置を適用することで、スマートフォン等のタッチパネルを有する端末上のアプリケーションソフトウェアの継続的な更新を必要としない、前記情報処理装置側での操作履歴改ざん検出の高精度化が可能になる。
即ち、スマートフォン上で動作するアプリケーションソフトウェアの操作としては、タッチ操作が用いられる。このタッチ操作の情報を改ざんし、アプリケーション上での不正行為、即ち操作履歴の改ざん行為等は従来大きな問題であった。特に、ゲームでは、このタッチ操作の改ざんにより、容易に高得点を記録することや、他プレイヤーとの競争に勝利するという操作履歴の改ざん行為等が、従来大きな問題であった。
このようなタッチ操作の情報を改ざんする操作履歴の改ざん行為等に対して、それを検出する手法は従来から存在する。ただし、従来の手法では、スマートフォン等のタッチパネルを有する端末上のアプリケーションソフトウェアの継続的な更新を必要とするか、又は、サーバ側から遠隔でクライアント上での不正を検出する精度が高くなかった。
具体的には、従来の手法としては、ゲームソフトウェアへの改変をメモリのスキャン等を通じて検出する手法が良く知られている。このような従来の手法を、以下、「クライアント側の改変検知手法」と呼ぶ。クライアント側の改変検知手法は、実行ファイルや操作履歴といった、第三者による偽造が容易なデータを対象としてチートを検出しており、プログラミングに精通したユーザであれば、回避のためのプログラムを作成することが可能である。そのため、クライアント側の改変検知手法を採用した場合、チート手法の変化に合わせて継続的にアプリケーションソフトウェアを更新し続ける必要がある。
また、従来の手法として、クライアントであるゲーム機やスマートフォン等からサーバに送信される、操作情報等のデータの一貫性を検証する、といったネットワーク型のチート検出手法も存在する。しかしながら、ネットワーク型のチート検出手法も、クライアント側の技術よりも、さらに少ない情報に依拠してチート検出を行わなければならないため、回避が容易である。従って、ネットワーク型のチート検出手法は、単独では有効にチートを抑制することが難しく、クライアント側の改変検知手法と併せて使用されることが多い。
また、従来の手法として、生体情報(バイオメトリクス)を用いる手法も存在する。この従来の手法は、偽造が困難なデータを対象としており、不正プログラムが出力したデータと自然人が入力したデータを容易に区別することが可能な手法である。しかしながら、生体情報そのものがセンシティブなプライバシー情報であるため、一般的なアプリケーションソフトウェアの改ざん検知手法として用いることは困難である。
以上のことから、センシティブでない情報源を利用し、不正プログラムが出力したデータと自然人が入力したデータを高精度に識別する改ざん検知手法の実現は、公平なアプリケーションやネットワークサービスの利用環境を実現するうえで、本質的に重要である。これを実現できる手法が、上述した様に、前記情報処理装置を適用する手法である。
More specifically, by applying the information processing apparatus, it is not necessary to continuously update application software on a terminal having a touch panel such as a smartphone, and the operation history alteration detection on the information processing apparatus side is highly accurate. Can be realized.
That is, a touch operation is used as an operation of application software that operates on a smartphone. This touch operation information has been falsified, and fraud on the application, that is, manipulation history falsification has been a major problem. In particular, in games, tampering of the operation history of easily recording a high score or winning a competition with other players by tampering with the touch operation has been a big problem.
Conventionally, there is a technique for detecting such an operation history falsification act of falsifying such touch operation information. However, in the conventional method, the application software on the terminal having a touch panel such as a smartphone needs to be continuously updated, or the accuracy of detecting fraud on the client remotely from the server side is not high.
Specifically, as a conventional technique, a technique of detecting a modification to game software through a memory scan or the like is well known. Hereinafter, such a conventional method is referred to as a “client-side alteration detection method”. The client-side modification detection method detects cheats for data that can be easily counterfeited by third parties, such as executable files and operation histories. If the user is familiar with programming, create a program to avoid it. Is possible. Therefore, when the client-side modification detection method is adopted, it is necessary to continuously update the application software in accordance with the change of the cheat method.
In addition, as a conventional method, there is a network type cheat detection method of verifying the consistency of data such as operation information transmitted from a game machine or a smartphone as a client to a server. However, the network-type cheat detection method is also easy to avoid because the cheat detection must be performed based on less information than the client-side technology. Therefore, it is difficult for the network type cheat detection method to effectively suppress cheats alone, and it is often used in combination with the client side alteration detection method.
In addition, as a conventional technique, there is a technique using biometric information (biometrics). This conventional method targets data that is difficult to counterfeit, and is a method that can easily distinguish data output by a malicious program from data input by a natural person. However, since the biometric information itself is sensitive privacy information, it is difficult to use it as a general technique for detecting falsification of application software.
Based on the above, using a non-sensitive information source and realizing a tamper detection method that accurately identifies data output by a malicious program and data input by a natural person will realize a fair application and network service usage environment. Above all, it is essential. A technique capable of realizing this is a technique of applying the information processing apparatus as described above.

また、前記情報処理装置は、
自然人による前記タッチ操作に基づく前記端末の振動か否かの判定の指標になる指標情報を管理する管理手段と(例えば図6の指標関数管理部122)、
前記指標情報に基づいて、前記振動履歴情報の正当性を判断する第2判断手段と(例えば図6の振動情報正当性判断部112)、
をさらに備え、
前記第1判断手段は、前記振動履歴情報の正当性が確認された場合、前記操作履歴情報の正当性の判断の実行を許可し、前記振動履歴情報の正当性が確認されなかった場合、前記操作履歴情報の正当性の判断の実行を禁止する(例えば図6の振動情報正当性判断部112)、
ことができる。
The information processing apparatus includes:
Management means for managing index information that serves as an index for determining whether or not the terminal vibrates based on the touch operation by a natural person (for example, the index function management unit 122 in FIG. 6);
Second determination means for determining the validity of the vibration history information based on the index information (for example, the vibration information validity determination unit 112 in FIG. 6);
Further comprising
The first determination unit permits execution of the determination of the validity of the operation history information when the validity of the vibration history information is confirmed, and when the validity of the vibration history information is not confirmed, Execution of the validity judgment of the operation history information is prohibited (for example, the vibration information validity judgment unit 112 in FIG. 6),
be able to.

上述した様に、第1検出部の検出結果の時系列を示す振動履歴情報は、物理現象から観測されるものであり、プログラムから正確に自動生成することは困難である。しかしながら、不可能とまでは言い難い。そこで、振動履歴情報の正当性を判断するステップをさらに導入することで、操作履歴の改ざん行為等の不正行為をより確実に検出できるようになる。   As described above, the vibration history information indicating the time series of the detection result of the first detection unit is observed from a physical phenomenon, and it is difficult to automatically generate it accurately from a program. However, it is hard to say that it is impossible. Therefore, by introducing a step of determining the legitimacy of the vibration history information, it becomes possible to more reliably detect fraudulent acts such as manipulation history falsification.

ここで、過去に正当性が確認された1以上の前記振動履歴情報に基づいて、前記指標情報を生成する生成手段を(例えば図6の指標関数生成更新部121)、
さらに備えることができる。
これにより、指標情報の信頼性が高まり、操作履歴の改ざん行為等の不正行為をより確実に検出できるようになる。
また、過去に正当性が確認された1以上の前記振動履歴情報として、例えば全プレイヤーの振動履歴情報を情報処理装置(サーバ)側に蓄積し、それらを各端末(スマートフォン等)の機種毎に集計することにより、「自然な振動履歴情報の機械学習モデル」、といったモーション・ビッグデータを半自動的に生成することも容易にできる。このモーション・ビッグデータは外部から計測することができないデータであり、操作履歴の改ざん行為等の不正行為をさらに確実に検出できるようになる。
Here, based on the one or more pieces of vibration history information whose validity has been confirmed in the past, a generation unit that generates the index information (for example, the index function generation update unit 121 in FIG. 6),
Furthermore, it can be provided.
As a result, the reliability of the index information is increased, and it is possible to more reliably detect fraudulent acts such as manipulation history falsification.
Further, as one or more pieces of vibration history information whose validity has been confirmed in the past, for example, vibration history information of all players is accumulated on the information processing device (server) side, and is stored for each model of each terminal (smartphone or the like). By counting, motion big data such as “machine learning model of natural vibration history information” can be easily generated semi-automatically. This motion big data is data that cannot be measured from the outside, and it becomes possible to more reliably detect fraudulent acts such as manipulation history falsification.

1、1−1乃至1−m・・・プレイヤー端末、2・・・サーバ、21・・・CPU、51・・・CPU、111・・・振動情報取得部、112・・・振動情報正当性判断部、113・・・操作情報取得部、114・・・操作情報正当性判断部、121・・・指標関数生成更新部、122・・・指標情報管理部、131・・・指標情報DB   DESCRIPTION OF SYMBOLS 1, 1-1 thru | or 1-m ... Player terminal, 2 ... Server, 21 ... CPU, 51 ... CPU, 111 ... Vibration information acquisition part, 112 ... Vibration information correctness Judgment unit, 113 ... operation information acquisition unit, 114 ... operation information validity judgment unit, 121 ... index function generation update unit, 122 ... index information management unit, 131 ... index information DB

Claims (5)

自機で生じる振動を検出する第1検出部と、
所定の表示面に画像を表示する表示部と、
前記表示面に積層され、物体の接触を所定方式で検出する第2検出部と、
前記物体の接触によるタッチ操作に基づいて、所定の処理を実行する実行部と、
を含む端末と、
通信をして情報を授受する情報処理装置において、
前記第1検出部の検出結果の時系列を示す振動履歴情報を前記端末から取得する第1取得手段と、
前記タッチ操作の時系列を示す操作履歴情報を前記端末から取得する第2取得手段と、
前記振動履歴情報と前記操作履歴情報とを比較することで、当該操作履歴情報の正当性を判断する第1判断手段と、
を備える情報処理装置。
A first detection unit for detecting vibrations generated by the own machine;
A display unit for displaying an image on a predetermined display surface;
A second detector that is stacked on the display surface and detects contact of an object in a predetermined manner;
An execution unit that executes predetermined processing based on a touch operation by contact of the object;
A device containing
In an information processing apparatus that communicates and receives information,
First acquisition means for acquiring vibration history information indicating a time series of detection results of the first detection unit from the terminal;
Second acquisition means for acquiring operation history information indicating a time series of the touch operation from the terminal;
First determination means for determining the legitimacy of the operation history information by comparing the vibration history information and the operation history information;
An information processing apparatus comprising:
自然人による前記タッチ操作に基づく前記端末の振動か否かの判定の指標になる指標情報を管理する管理手段と、
前記指標情報に基づいて、前記振動履歴情報の正当性を判断する第2判断手段と、
をさらに備え、
前記第1判断手段は、前記振動履歴情報の正当性が確認された場合、前記操作履歴情報の正当性の判断の実行を許可し、前記振動履歴情報の正当性が確認されなかった場合、前記操作履歴情報の正当性の判断の実行を禁止する、
請求項1に記載の情報処理装置。
Management means for managing index information that serves as an index for determining whether or not the terminal vibrates based on the touch operation by a natural person;
Second determination means for determining validity of the vibration history information based on the index information;
Further comprising
The first determination unit permits execution of the determination of the validity of the operation history information when the validity of the vibration history information is confirmed, and when the validity of the vibration history information is not confirmed, Prohibit execution of validity judgment of operation history information,
The information processing apparatus according to claim 1.
過去に正当性が確認された1以上の前記振動履歴情報に基づいて、前記指標情報を生成する生成手段を、
さらに備える請求項2に記載の情報処理装置。
Generating means for generating the index information based on the one or more vibration history information whose validity has been confirmed in the past;
The information processing apparatus according to claim 2, further comprising:
自機で生じる振動を検出する第1検出部と、
所定の表示面に画像を表示する表示部と、
前記表示面に積層され、物体の接触を所定方式で検出する第2検出部と、
前記物体の接触によるタッチ操作に基づいて、所定の処理を実行する実行部と、
を含む端末と、
通信をして情報を授受する情報処理装置が実行する情報処理方法において、
前記第1検出部の検出結果の時系列を示す振動履歴情報を前記端末から取得する第1取得ステップと、
前記タッチ操作の時系列を示す操作履歴情報を前記端末から取得する第2取得ステップと、
前記振動履歴情報と前記操作履歴情報とを比較することで、当該操作履歴情報の正当性を判断する判断ステップと、
を含む情報処理方法。
A first detection unit for detecting vibrations generated by the own machine;
A display unit for displaying an image on a predetermined display surface;
A second detector that is stacked on the display surface and detects contact of an object in a predetermined manner;
An execution unit that executes predetermined processing based on a touch operation by contact of the object;
A device containing
In an information processing method executed by an information processing apparatus that communicates and receives information,
A first acquisition step of acquiring vibration history information indicating a time series of detection results of the first detection unit from the terminal;
A second acquisition step of acquiring operation history information indicating the time series of the touch operation from the terminal;
A determination step of determining the legitimacy of the operation history information by comparing the vibration history information and the operation history information;
An information processing method including:
自機で生じる振動を検出する第1検出部と、
所定の表示面に画像を表示する表示部と、
前記表示面に積層され、物体の接触を所定方式で検出する第2検出部と、
前記物体の接触によるタッチ操作に基づいて、所定の処理を実行する実行部と、
を含む端末と、
通信をして情報を授受するサーバを制御するコンピューターに、
前記第1検出部の検出結果の時系列を示す振動履歴情報を前記端末から取得する第1取得ステップと、
前記タッチ操作の時系列を示す操作履歴情報を前記端末から取得する第2取得ステップと、
前記振動履歴情報と前記操作履歴情報とを比較することで、当該操作履歴情報の正当性を判断する判断ステップと、
を含む制御処理を実行させるプログラム。
A first detection unit for detecting vibrations generated by the own machine;
A display unit for displaying an image on a predetermined display surface;
A second detector that is stacked on the display surface and detects contact of an object in a predetermined manner;
An execution unit that executes predetermined processing based on a touch operation by contact of the object;
A device containing
To the computer that controls the server that communicates and exchanges information,
A first acquisition step of acquiring vibration history information indicating a time series of detection results of the first detection unit from the terminal;
A second acquisition step of acquiring operation history information indicating the time series of the touch operation from the terminal;
A determination step of determining the legitimacy of the operation history information by comparing the vibration history information and the operation history information;
A program that executes control processing including
JP2016085337A 2016-04-21 2016-04-21 Information processing device, information processing method and program Pending JP2017091496A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016085337A JP2017091496A (en) 2016-04-21 2016-04-21 Information processing device, information processing method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016085337A JP2017091496A (en) 2016-04-21 2016-04-21 Information processing device, information processing method and program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2015222674A Division JP5926435B1 (en) 2015-11-13 2015-11-13 Information processing apparatus, information processing method, and program

Publications (2)

Publication Number Publication Date
JP2017091496A true JP2017091496A (en) 2017-05-25
JP2017091496A5 JP2017091496A5 (en) 2019-01-17

Family

ID=58770782

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016085337A Pending JP2017091496A (en) 2016-04-21 2016-04-21 Information processing device, information processing method and program

Country Status (1)

Country Link
JP (1) JP2017091496A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019139667A (en) * 2018-02-15 2019-08-22 Kddi株式会社 Communication analysis method and system, and communication terminal and application thereof
CN111627276A (en) * 2020-05-25 2020-09-04 中南大学 Interactive teaching aid
JP2021517292A (en) * 2018-03-21 2021-07-15 バルブ コーポレーション Automatically reduce the use of cheat software in your online gaming environment
DE112020006530T5 (en) 2020-03-19 2022-11-03 Mitsubishi Electric Corporation Gesture detection device and gesture detection method

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002343074A (en) * 2001-05-21 2002-11-29 Matsushita Electric Ind Co Ltd Hard disk system device and its rental method
WO2009037970A1 (en) * 2007-09-21 2009-03-26 Murata Manufacturing Co., Ltd. Drop detection device, magnetic disc device, and mobile electronic device
JP2013210934A (en) * 2012-03-30 2013-10-10 Minebea Co Ltd Input device for electronic apparatus
WO2014132431A1 (en) * 2013-03-01 2014-09-04 株式会社日立製作所 Method for detecting unfair use and device for detecting unfair use
JP2015018539A (en) * 2013-04-08 2015-01-29 株式会社三菱東京Ufj銀行 Authentication device, financial transaction device, communication terminal, information processing device, and program

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002343074A (en) * 2001-05-21 2002-11-29 Matsushita Electric Ind Co Ltd Hard disk system device and its rental method
WO2009037970A1 (en) * 2007-09-21 2009-03-26 Murata Manufacturing Co., Ltd. Drop detection device, magnetic disc device, and mobile electronic device
JP2013210934A (en) * 2012-03-30 2013-10-10 Minebea Co Ltd Input device for electronic apparatus
WO2014132431A1 (en) * 2013-03-01 2014-09-04 株式会社日立製作所 Method for detecting unfair use and device for detecting unfair use
JP2015018539A (en) * 2013-04-08 2015-01-29 株式会社三菱東京Ufj銀行 Authentication device, financial transaction device, communication terminal, information processing device, and program

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019139667A (en) * 2018-02-15 2019-08-22 Kddi株式会社 Communication analysis method and system, and communication terminal and application thereof
JP2021517292A (en) * 2018-03-21 2021-07-15 バルブ コーポレーション Automatically reduce the use of cheat software in your online gaming environment
JP7405329B2 (en) 2018-03-21 2023-12-26 バルブ コーポレーション Computer-implemented methods, programs and systems
DE112020006530T5 (en) 2020-03-19 2022-11-03 Mitsubishi Electric Corporation Gesture detection device and gesture detection method
CN111627276A (en) * 2020-05-25 2020-09-04 中南大学 Interactive teaching aid

Similar Documents

Publication Publication Date Title
JP5926435B1 (en) Information processing apparatus, information processing method, and program
Buriro et al. Hold and sign: A novel behavioral biometrics for smartphone user authentication
CN107665426B (en) Method and electronic device for payment using biometric authentication
Sitová et al. HMOG: New behavioral biometric features for continuous authentication of smartphone users
CN105980973B (en) User authentication gesture
JP2022088658A (en) Anti-replay systems and methods
US10068088B2 (en) Method, computer program and system that uses behavioral biometric algorithms
CN101406747B (en) Electronic device, master control substrate, periphery substrate, and authentication method
KR20150122123A (en) Systems and methods for authenticating a user based on a biometric model associated with the user
JP2017062760A (en) Haptic CAPTCHA
JP2017091496A (en) Information processing device, information processing method and program
US9202035B1 (en) User authentication based on biometric handwriting aspects of a handwritten code
US11194368B2 (en) Accelerometer-based biometric data
US10313508B2 (en) Non-intrusive user authentication system
CN107249703A (en) Information processing system, program, server, terminal and medium
Karakaya et al. Using behavioral biometric sensors of mobile phones for user authentication
Shrestha et al. Theft-resilient mobile wallets: Transparently authenticating NFC users with tapping gesture biometrics
CN106504001A (en) Method of payment and device in a kind of VR environment
GB2543427A (en) Computer program and stamp system
US10589172B1 (en) Embedding metadata in rendered content
JP6897223B2 (en) Data management system and data management method
Acharya et al. Gamification of wearable data collection: A tool for both friend and foe
Song et al. Pushid: A pressure control interaction-based behavioral biometric authentication system for smartwatches
US11786826B1 (en) Card customization via a gaming console
JP2022176553A (en) Game control system and game control program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181112

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181122

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190918

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20190919

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20190919

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191004

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191105

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191203

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20200602