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

Information processing program, information processing device, and information processing method Download PDF

Info

Publication number
JP7415671B2
JP7415671B2 JP2020037511A JP2020037511A JP7415671B2 JP 7415671 B2 JP7415671 B2 JP 7415671B2 JP 2020037511 A JP2020037511 A JP 2020037511A JP 2020037511 A JP2020037511 A JP 2020037511A JP 7415671 B2 JP7415671 B2 JP 7415671B2
Authority
JP
Japan
Prior art keywords
code
information processing
block
forgery
weighted
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020037511A
Other languages
Japanese (ja)
Other versions
JP2021140449A (en
Inventor
真季 乾
哲也 伊豆
和快 古川
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2020037511A priority Critical patent/JP7415671B2/en
Publication of JP2021140449A publication Critical patent/JP2021140449A/en
Application granted granted Critical
Publication of JP7415671B2 publication Critical patent/JP7415671B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Description

本発明は、情報処理プログラム等に関する。 The present invention relates to an information processing program and the like.

近年、QRコード(登録商標)の偽造方法が考案され、偽造の検知がQRコード業界の共通課題となっている。QRコードの偽造方法について、2018年6月に、確率的なQRコードの偽造技術が考案された(例えば、非特許文献1参照)。ここでいうQRコードとは、デジタルデータを平面上の縦横に配置された白黒のドットパターンで表記する符号化方法のことをいう。図6は、偽造QRコードの参考例を示す図である。図6に示すように、正常なQRコードの所定の位置にドットを埋め込むことで、正常な復号データが一定の確率で、正常でない復号データとして悪意のあるウェブサイトのURL(Uniform Resource Locator)に復号される。この結果、サイバー攻撃が可能となる。 In recent years, methods for counterfeiting QR codes (registered trademarks) have been devised, and detection of counterfeiting has become a common issue in the QR code industry. Regarding a QR code forgery method, a probabilistic QR code forgery technique was devised in June 2018 (for example, see Non-Patent Document 1). The QR code here refers to an encoding method in which digital data is expressed in black and white dot patterns arranged vertically and horizontally on a plane. FIG. 6 is a diagram showing a reference example of a counterfeit QR code. As shown in Figure 6, by embedding dots at predetermined positions in a normal QR code, normal decrypted data will be redirected to the URL (Uniform Resource Locator) of a malicious website as incorrect decrypted data with a certain probability. Decrypted. As a result, cyber attacks become possible.

QRコードは、リードソロモン(RS:Reed Solomon)符号と呼ばれる誤り訂正符号技術を利用する。誤り訂正符号技術は、読み取りデータに数ビットの誤りがあっても、誤りを訂正でき、正常に復号できる。誤りを訂正できるビット数には、誤り訂正能力と呼ばれる限界値が定められている。復号処理は、読み取りデータに対して、ノイズの個数が誤り訂正能力以内ならば、正常なデータに復号できる。例えば、正常な復号データは、「http://www.aaaaaaa.com/」のURLを示す。 The QR code uses an error correction code technique called a Reed Solomon (RS) code. Error correction code technology can correct errors even if there are several bit errors in read data, allowing for normal decoding. A limit value called error correction ability is set for the number of bits that can correct errors. In the decoding process, read data can be decoded into normal data if the number of noises is within the error correction ability. For example, normal decrypted data indicates the URL "http://www.aaaaaaa.com/".

一方で、復号処理は、読み取りデータに対して、ノイズの個数が誤り訂正能力を超えた場合には、読み取りエラーとなる。ここで、復号処理の際に、ノイズが読み取れなかったり読み取れたりする特殊な形式のノイズが報告されている。復号処理は、特殊な形式のノイズが含まれたQRコードを読み取ると、読み取り結果に応じて、正常な復号データと正常でない復号データとを確率的に発生させることになる。このような特殊な形式が含まれたQRコードを確率的に遷移するQRコードと呼ぶ。悪意のある者は、毎回正常でないデータに復号させると、偽造に気付かれるので、正常な復号データと正常でない復号データとに確率的に遷移させるこのようなQRコードを偽造する。例えば正常でない復号データとして「http://www.aabaaaa.com/」のURLに復号するように特殊な形式でノイズが埋め込まれている場合、ノイズの個数が誤り訂正能力以内ならば復号処理が行われ、結果として正常でないデータに復号される場合がある。 On the other hand, in the decoding process, if the number of noises in the read data exceeds the error correction ability, a read error occurs. Here, a special type of noise has been reported in which the noise is either unreadable or unreadable during the decoding process. In the decoding process, when a QR code containing a special type of noise is read, normal decoded data and abnormal decoded data are generated stochastically depending on the reading result. A QR code that includes such a special format is called a QR code that transitions stochastically. If a malicious person decodes incorrect data each time, he or she will notice the forgery, so they forge such a QR code that probabilistically transitions between normal decrypted data and incorrect decoded data. For example, if noise is embedded in a special format to decode the URL "http://www.aabaaaa.com/" as abnormal decoded data, the decoding process will be completed if the number of noises is within the error correction capability. This may result in incorrect data being decoded.

かかるQRコード偽造に対して、復号時の誤り訂正ビット数をカウントし、閾値以上の場合に、偽造コードと判定する偽造判定方法が知られている。閾値は、例えば、誤り訂正能力×0.8の値を示す。 For such QR code forgery, a forgery determination method is known in which the number of error correction bits during decoding is counted, and if the number is equal to or greater than a threshold value, the code is determined to be a forgery. The threshold value indicates, for example, a value of error correction ability times 0.8.

大熊,瀧田,森井,“悪性サイトに誘導するQRコードの存在とそれを利用した偽造攻撃”,信学技報,vol.118,no.109,ICSS2018-6,pp.33-38,2018年6月Okuma, Takita, Morii, “The existence of QR codes that lead to malicious sites and counterfeit attacks using them,” IEICE Technical Report, vol. 118, no.109, ICSS2018-6, pp.33-38, June 2018

しかしながら、確率的に遷移するQRコードの判定において、偽造されていないQRコードを偽造された確率的に遷移するQRコードであると誤判定してしまうという問題がある。例えば、誤り訂正能力が5である場合に、偽造と判定する閾値が誤り訂正能力×0.8であるとする。すなわち、閾値が4であるとする。すると、従来の判定処理は、誤り訂正ビット数が4である場合には、偽造と判定する。ところが、QRコードに汚れや破れ等の汚損が存在する場合に、誤り訂正ビット数が4以上になり、QRコードが偽造でないにもかかわらず偽造であると誤判定してしまうことがある。 However, in determining a QR code that transitions probabilistically, there is a problem in that a non-forged QR code is incorrectly determined to be a forged QR code that transitions stochastically. For example, assume that when the error correction ability is 5, the threshold for determining forgery is error correction ability x 0.8. That is, assume that the threshold value is 4. Then, in the conventional determination process, if the number of error correction bits is 4, it is determined that it is a forgery. However, if the QR code is contaminated, such as dirt or tear, the number of error correction bits becomes 4 or more, and the QR code may be erroneously determined to be a forgery even though it is not a forgery.

本発明は、1つの側面では、確率的に遷移するQRコードの判定において、偽造でないQRコードを偽造と誤判定してしまうことを回避することを目的とする。 One aspect of the present invention is to avoid erroneously determining that a QR code that is not a forgery is a forgery in determining a QR code that changes stochastically.

第1の案では、情報処理プログラムは、処理対象とするQRコードに含まれるブロックそれぞれが改変される可能性の高さに応じて、それぞれのブロックに対する重み付けを行い、前記重み付けが行われたブロックに含まれる誤りビット数に応じて、前記確率的に遷移するQRコードであるか否かを判定する、処理をコンピュータに実行させる。 In the first proposal, the information processing program weights each block according to the probability that each block included in the QR code to be processed will be modified, and blocks the weighted blocks. A computer is caused to execute a process of determining whether or not the QR code is a QR code that changes stochastically according to the number of error bits included in the QR code.

1実施態様によれば、確率的に遷移するQRコードの判定において、偽造でないQRコードを偽造と誤判定してしまうことを回避することができる。 According to one embodiment, in determining a QR code that changes stochastically, it is possible to avoid erroneously determining that a QR code that is not a forgery is a forgery.

図1は、実施例に係る情報処理装置の機能構成を示す図である。FIG. 1 is a diagram showing the functional configuration of an information processing apparatus according to an embodiment. 図2は、QRコードのコード配置(2-M型)の一例を示す図である。FIG. 2 is a diagram showing an example of the code arrangement of the QR code (2-M type). 図3は、2-M型QRコードの符号語の一例を示す図である。FIG. 3 is a diagram showing an example of a code word of a 2-M type QR code. 図4は、実施例に係る判定のフローチャートの一例を示す図である。FIG. 4 is a diagram illustrating an example of a flowchart of determination according to the embodiment. 図5は、情報処理プログラムを実行するコンピュータの一例を示す図である。FIG. 5 is a diagram illustrating an example of a computer that executes an information processing program. 図6は、偽造QRコードの参考例を示す図である。FIG. 6 is a diagram showing a reference example of a counterfeit QR code. 図7は、偽造と誤判定する参考例を示す図である。FIG. 7 is a diagram illustrating a reference example in which it is erroneously determined to be a forgery.

以下に、本願の開示する情報処理プログラム、情報処理装置および情報処理方法の実施例を図面に基づいて詳細に説明する。なお、実施例によりこの発明が限定されるものではない。 Embodiments of an information processing program, an information processing apparatus, and an information processing method disclosed in the present application will be described in detail below based on the drawings. Note that this invention is not limited to the examples.

まず、偽造と誤判定する参考例を、図7を参照して説明する。図7は、偽造と誤判定する参考例を示す図である。なお、誤り訂正能力は5であるとする。偽造と判定する閾値は、5×0.8(=4)であるとする。図7上図に示すようなQRコードの誤り訂正ビット数が4であったとする。すると、復号処理は、誤り訂正ビット数が閾値以上であるので、偽造と判定する。また、図7下図に示すような、汚れがあるQRコードの誤り訂正ビット数が4であったとする。すると、復号処理は、誤り訂正ビット数が閾値以上であるので、偽造でないのにかかわらず、偽造と誤判定してしまう。これは、例えば、QRコードの読み取り時に発生した誤りビットもカウントされるためである。なお、図7下図のQRコードは、汚れがある場合であったが、破れ等の汚損がある場合であっても良い。 First, a reference example in which an erroneous determination as a forgery is made will be described with reference to FIG. FIG. 7 is a diagram illustrating a reference example in which it is erroneously determined to be a forgery. Note that the error correction capability is assumed to be 5. It is assumed that the threshold value for determining forgery is 5×0.8 (=4). Assume that the number of error correction bits of the QR code as shown in the upper diagram of FIG. 7 is 4. Then, in the decoding process, since the number of error correction bits is greater than or equal to the threshold value, the decoding process determines that it is a forgery. Further, it is assumed that the number of error correction bits of a QR code with stains as shown in the lower diagram of FIG. 7 is 4. Then, in the decoding process, since the number of error correction bits is equal to or greater than the threshold value, the image is erroneously determined to be a forgery even though it is not a forgery. This is because, for example, error bits that occur when reading a QR code are also counted. Note that although the QR code shown in the lower diagram of FIG. 7 is soiled, it may also be soiled with tears or the like.

そこで、以降の実施例では、確率的に遷移するQRコードの判定において、偽造でないQRコードを偽造と誤判定してしまうことを回避する情報処理装置について説明する。 Therefore, in the following embodiments, an information processing apparatus that avoids erroneously determining a QR code that is not a forgery as a forgery when determining a QR code that changes probabilistically will be described.

図1は、実施例に係る情報処理装置の機能構成を示す図である。図1に示す情報処理装置1は、QRコードの中に偽造QRコードに利用される可能性が高い部分があることを利用し、偽造に利用される可能性の高い部分に含まれる誤りビット数に応じて、確率的に遷移するQRコードであるか否かを判定する。 FIG. 1 is a diagram showing the functional configuration of an information processing apparatus according to an embodiment. The information processing device 1 shown in FIG. 1 takes advantage of the fact that there are parts of the QR code that are likely to be used for counterfeiting, and calculates the number of error bits included in the parts that are likely to be used for counterfeiting. , it is determined whether the QR code is a QR code that changes stochastically.

図1に示すように、情報処理装置1は、制御部10と、記憶部20とを有する。 As shown in FIG. 1, the information processing device 1 includes a control section 10 and a storage section 20.

制御部10は、CPU(Central Processing Unit)等の電子回路に対応する。そして、制御部10は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する。制御部10は、読取部11、誤り訂正箇所特定部12、重み付け部13、偽造判定部14および復号部15を有する。なお、重み付け部13は、重み付け部の一例である。偽造判定部14は、判定部の一例である。 The control unit 10 corresponds to an electronic circuit such as a CPU (Central Processing Unit). The control unit 10 has an internal memory for storing programs and control data that define various processing procedures, and executes various processes using these. The control section 10 includes a reading section 11 , an error correction location specifying section 12 , a weighting section 13 , a forgery determining section 14 , and a decoding section 15 . Note that the weighting unit 13 is an example of a weighting unit. The forgery determination unit 14 is an example of a determination unit.

記憶部20は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置である。記憶部20は、閾値21を有する。閾値21は、偽造と判定するために用いられる一定値を示す。 The storage unit 20 is, for example, a semiconductor memory element such as a RAM (Random Access Memory) or a flash memory, or a storage device such as a hard disk or an optical disk. The storage unit 20 has a threshold value 21. The threshold value 21 indicates a constant value used to determine forgery.

読取部11は、デコーダを用いてQRコードを読み取る。なお、デコーダは、QRコードを認識する専用のアプリケーションであっても良いし、カメラ等のハードウェアを利用した読取機能であっても良い。 The reading unit 11 reads the QR code using a decoder. Note that the decoder may be a dedicated application that recognizes QR codes, or may have a reading function using hardware such as a camera.

誤り訂正箇所特定部12は、読取部11によって読み取られたQRコードの誤り訂正箇所を特定する。例えば、誤り訂正箇所特定部12は、RS符号を利用して、読み取ったQRコードの画像から誤りを検出し、検出した誤りを訂正する。そして、誤り訂正箇所特定部12は、誤りを訂正した箇所を特定する。 The error correction location specifying unit 12 identifies the error correction location of the QR code read by the reading unit 11. For example, the error correction location specifying unit 12 uses the RS code to detect errors from the read image of the QR code, and corrects the detected errors. Then, the error correction location identification unit 12 identifies the location where the error has been corrected.

重み付け部13は、確率的に遷移するQRコードの判定の際に、QRコードに含まれるブロックそれぞれが改変される可能性の高さに応じて、それぞれのブロックに対する重み付けを行う。例えば、重み付け部13は、QRコードに含まれるブロックが偽造に利用される確率が1/2以上のブロックである場合には、当該ブロックに対する重み付けを行う。 When determining a QR code that changes stochastically, the weighting unit 13 weights each block included in the QR code according to the probability that each block will be modified. For example, if the block included in the QR code has a probability of 1/2 or more of being used for forgery, the weighting unit 13 weights the block.

ここで、QRコードのコード配置の一例を、図2を参照して説明する。図2は、QRコードのコード配置(2-M型)の一例を示す図である。図2に示すように、「E」で示されている部分は、誤り訂正ブロックである。「D」で示されている部分は、情報コードである。確率的に遷移するQRコードに利用される確率が高い部分は、「E」で示される誤り訂正ブロックであることが知られている。これは、「D」で示される情報コードの部分が偽造されると、常時偽造になってしまうからである。したがって、QRコードのコード配置のうち「E」で示される誤り訂正ブロックが、確率的に遷移するQRコードに利用される確率が高い部分となる。ここでは、図2のQRコードの配置のうち強調パターンの部分が、「E」で示される誤り訂正ブロックであり、確率的に遷移するQRコードに利用される確率が高い部分である。 Here, an example of the code arrangement of the QR code will be explained with reference to FIG. 2. FIG. 2 is a diagram showing an example of the code arrangement of the QR code (2-M type). As shown in FIG. 2, the portion indicated by "E" is an error correction block. The part indicated by "D" is an information code. It is known that a portion with a high probability of being used in a QR code that changes stochastically is an error correction block indicated by "E". This is because if the part of the information code indicated by "D" is forged, it will always be forged. Therefore, in the code arrangement of the QR code, the error correction block indicated by "E" is a part that has a high probability of being used for a QR code that changes stochastically. Here, the emphasized pattern part of the QR code arrangement in FIG. 2 is an error correction block indicated by "E", and is a part that has a high probability of being used for a QR code that changes stochastically.

ここで、2―M型のQRコードの符号語の一例を、図3を参照して説明する。図3は、2-M型QRコードの符号語の一例を示す図である。 Here, an example of a code word of a 2-M type QR code will be explained with reference to FIG. 3. FIG. 3 is a diagram showing an example of a code word of a 2-M type QR code.

図3に示すように、QRコードの符号語は、情報コードと、埋め草コードと、誤り訂正ブロックとを含む。QRコードにURLとして「http://www.aaaaaaa.com/」が埋め込まれている場合とする。かかる場合には、情報コードは、「http://www.aaaaaaa,com/」をシフトJISの1バイトコードに変換し、変換したデータの前にモード指示子および文字数指示子を追加し、変換したデータの後ろに終端パターンを追加し、得られたデータを8ビットずつ区切ったものとなる。なお、モード指示子は、QRコードに埋め込み可能な文字データの種類(数字モード、英数字モード、8ビットバイトモード、漢字モード)を示す識別子である。ここでは、モード指示子には、一例として、8ビットバイトモードを示すビット列が設定される。文字数指示子は、QRコードに埋め込まれているデータ文字列の長さを定義するビット列である。ここでは、文字数指示子には、一例として、22文字を示すビット列(00010110)が設定される。 As shown in FIG. 3, the code word of the QR code includes an information code, a padding code, and an error correction block. Assume that "http://www.aaaaaaa.com/" is embedded in the QR code as a URL. In such a case, the information code is converted by converting "http://www.aaaaaaa,com/" into a Shift JIS 1-byte code, adding a mode indicator and a character count indicator in front of the converted data, and converting it. A termination pattern is added after the obtained data, and the resulting data is divided into 8 bits. Note that the mode indicator is an identifier indicating the type of character data (numeric mode, alphanumeric mode, 8-bit byte mode, kanji mode) that can be embedded in the QR code. Here, as an example, a bit string indicating an 8-bit byte mode is set in the mode indicator. The character count indicator is a bit string that defines the length of the data string embedded in the QR code. Here, as an example, a bit string (00010110) indicating 22 characters is set as the character count indicator.

埋め草コードは、QRコードの全体のデータ量に満たない場合に全体のデータ量になるまでデータを表さない仮のコード語を埋め込んだものである。なお、埋め草コードには、固定のビットパターンとして236(11101100)および17(00010001)が繰り返しでパディングされる。情報コードおよび埋め草コードが、QRコードのデータであり、RS符号により符号化される。 The filler code is a temporary code word embedded that does not represent data until the total data amount is reached when the total data amount of the QR code is less than the total data amount. Note that the padding code is repeatedly padded with 236 (11101100) and 17 (00010001) as a fixed bit pattern. The information code and the filler code are QR code data, and are encoded using the RS code.

誤り訂正ブロックは、QRコードのデータの誤りを訂正し、復号することが可能な情報である。この誤り訂正ブロックが、図2で示したQRコードのコード配置のうち「E」で示されるブロックであり、確率的に遷移するQRコードに利用される確率が高い部分である。 The error correction block is information that can correct errors in QR code data and decode it. This error correction block is the block indicated by "E" in the code arrangement of the QR code shown in FIG. 2, and is a part that has a high probability of being used for a QR code that changes stochastically.

図1に戻って、偽造判定部14は、改変される可能性の高いブロックに含まれる誤りビット数に応じて、確率的に遷移するQRコードであるか否かを判定する、例えば、偽造判定部14は、誤り訂正箇所特定部12によって特定された誤り訂正箇所に関し、重み付け部13によって重み付けが行われたブロックに含まれる誤りビット数をカウントする。そして、偽造判定部14は、カウントした数が閾値21を超えるか否かを判定する。すなわち、偽造判定部14は、カウントした数が閾値21を超える場合には、確率的に遷移するQRコードであると判定する。つまり、偽造判定部14は、読み取ったQRコードを偽造コードとして検知する。また、偽造判定部14は、カウントした数が閾値21以下である場合には、確率的に遷移するQRコードでないと判定する。 Returning to FIG. 1, the forgery determination unit 14 determines whether or not the QR code is a QR code that probabilistically transitions according to the number of error bits included in a block that is likely to be modified. The unit 14 counts the number of error bits included in the blocks weighted by the weighting unit 13 with respect to the error correction location identified by the error correction location identification unit 12. Then, the forgery determination unit 14 determines whether the counted number exceeds the threshold value 21 or not. That is, if the counted number exceeds the threshold value 21, the forgery determination unit 14 determines that the QR code is a QR code that changes probabilistically. That is, the forgery determination unit 14 detects the read QR code as a forged code. Further, if the counted number is less than or equal to the threshold value 21, the forgery determination unit 14 determines that the QR code is not a QR code that transitions probabilistically.

復号部15は、確率的に遷移するQRコードでない場合には、QRコードを復号する。 The decoding unit 15 decodes the QR code if it is not a QR code that changes stochastically.

[判定のフローチャート]
ここで、実施例に係る判定のフローチャートの一例を、図4を参照して説明する。図4は、実施例に係る判定のフローチャートの一例を示す図である。
[Judgment flowchart]
Here, an example of a flowchart of determination according to the embodiment will be described with reference to FIG. 4. FIG. 4 is a diagram illustrating an example of a flowchart of determination according to the embodiment.

図4に示すように、読取部11は、デコーダを用いてQRコードを読み取る(ステップS11)。そして、誤り訂正箇所特定部12は、RS符号を利用して、読み取ったQRコードの誤り訂正箇所を特定する(ステップS12)。 As shown in FIG. 4, the reading unit 11 reads the QR code using a decoder (step S11). Then, the error correction location identification unit 12 uses the RS code to identify the error correction location of the read QR code (step S12).

そして、重み付け部13は、読み取られたQRコードの中で、偽造に利用される可能性が高い箇所に重み付けする(ステップS13)。例えば、重み付け部13は、QRコードの中で、偽造に利用される確率が1/2以上のブロックに、重み付けを行う。一例として、重み付け部13は、誤り訂正ブロックに対応する箇所に重み付けする。 Then, the weighting unit 13 weights the parts of the read QR code that are likely to be used for forgery (step S13). For example, the weighting unit 13 weights blocks in the QR code that have a probability of 1/2 or more of being used for forgery. As an example, the weighting unit 13 weights a portion corresponding to an error correction block.

そして、偽造判定部14は、特定された誤り訂正箇所に関し、重み付けが行われたブロックに含まれる誤り訂正ビット数をカウントする(ステップS14)。偽造判定部14は、カウント数が閾値21を超えるか否かを判定する(ステップS15)。カウント数が閾値21を超えると判定した場合には(ステップS15;Yes)、偽造判定部14は、読み取られたQRコードが偽造であると判断し、偽造コードを検知する(ステップS16)。そして、判定のプロセスは、終了する。 Then, the forgery determination unit 14 counts the number of error correction bits included in the weighted block regarding the identified error correction location (step S14). The forgery determination unit 14 determines whether the count exceeds the threshold 21 (step S15). If it is determined that the count exceeds the threshold 21 (step S15; Yes), the forgery determination unit 14 determines that the read QR code is a forgery, and detects the forgery code (step S16). The determination process then ends.

一方、カウント数が閾値21を超えていないと判定した場合には(ステップS15;No)、復号部15は、読み取られたQRコードを復号する(ステップS17)。そして、判定のプロセスは、終了する。 On the other hand, if it is determined that the count does not exceed the threshold value 21 (step S15; No), the decoding unit 15 decodes the read QR code (step S17). The determination process then ends.

なお、重み付け部13は、例えばQRコードに含まれるブロックが偽造に利用される確率が1/2以上のブロックの場合には、当該ブロックに対する重み付けを行うと説明した。しかしながら、重み付け部13は、偽造に利用される確率の高さに応じて段階的に重み付けを行っても良い。例えば、重み付け部13は、偽造に利用される確率について、2/3以上のブロックの場合には重み付けを「3」とし、1/3以上2/3未満のブロックの場合には重み付けを「1.5」としても良い。そして、偽造判定部14は、特定された誤り訂正箇所に関し、重み付けが行われたブロックに含まれる誤り訂正ビットの重み付きの和をカウントして、閾値21を超える場合には、確率的に遷移するQRコードであると判定すれば良い。 It has been explained that the weighting unit 13 weights the block included in the QR code, for example, if the probability of the block being used for forgery is 1/2 or more. However, the weighting unit 13 may perform weighting in stages according to the probability of being used for forgery. For example, the weighting unit 13 sets the weighting to "3" for a block that is 2/3 or more, and sets the weighting to "1" for a block that is 1/3 or more and less than 2/3, regarding the probability of being used for forgery. .5" may be used. Then, the forgery determination unit 14 counts the weighted sum of the error correction bits included in the weighted block with respect to the identified error correction location, and if the weighted sum exceeds the threshold 21, the counterfeit determination unit 14 probabilistically transitions. It is only necessary to determine that the QR code is

[実施例の効果]
上記実施例によれば、情報処理装置1は、処理対象とするQRコードに含まれるブロックそれぞれが改変される可能性の高さに応じて、それぞれのブロックに対する重み付けを行う。情報処理装置1は、重み付けが行われたブロックに含まれる誤りビット数に応じて、確率的に遷移するQRコードであるか否かを判定する。かかる構成によれば、情報処理装置1は、確率的に遷移するQRコードの判定に、改変される可能性の高さに応じた重み付けを用いることで、偽造でないQRコードを偽造と誤判定してしまうことを回避することができる。すなわち、情報処理装置1は、確率的に遷移するQRコードの判定を、精度良く行うことが可能となる。
[Effects of Examples]
According to the above embodiment, the information processing device 1 weights each block included in the QR code to be processed depending on the probability that each block will be altered. The information processing device 1 determines whether the QR code is a QR code that changes stochastically according to the number of error bits included in the weighted block. According to this configuration, the information processing device 1 uses weighting according to the possibility of alteration when determining a QR code that transitions probabilistically, thereby erroneously determining a QR code that is not a forgery as a forgery. This can be avoided. That is, the information processing device 1 can accurately determine the QR code that changes probabilistically.

また、上記実施例によれば、情報処理装置1は、QRコードに含まれるブロックが偽造に利用される確率が所定の割合以上のブロックである場合には、当該ブロックに対する重み付けを行う。情報処理装置1は、重み付けが行われたブロックに含まれる誤りビット数をカウントする。情報処理装置1は、カウントした数が規定値を超えるか否かにより確率的に遷移するQRコードであるか否かを判定する。かかる構成によれば、情報処理装置1は、偽造に利用される確率が所定の割合より低いブロックの誤りビット数をカウントしないことで、偽造に利用される可能性が低い部分が汚れたり破れたりした場合の誤検知を回避することができる。 Further, according to the embodiment described above, if the block included in the QR code has a probability of being used for forgery at a predetermined rate or higher, the information processing device 1 weights the block. The information processing device 1 counts the number of error bits included in the weighted blocks. The information processing device 1 determines whether the QR code is a QR code that changes stochastically based on whether the counted number exceeds a specified value. According to this configuration, the information processing device 1 does not count the number of error bits of blocks whose probability of being used for forgery is lower than a predetermined percentage, thereby preventing parts that are unlikely to be used for forgery from becoming dirty or torn. false positives can be avoided.

また、上記実施例によれば、情報処理装置1は、QRコードに含まれるブロックそれぞれが改変される可能性の高さに応じて、段階的に重み付けを行う。情報処理装置1は、重み付けが行われたブロックに含まれる誤りビットの重み付けの和をカウントする。情報処理装置1は、カウントした和が規定値を超えるか否かにより確率的に遷移するQRコードであるか否かを判定する。かかる構成によれば、情報処理装置1は、確率的に遷移するQRコードの判定に、改変される可能性の高さに応じた段階的な重み付けを用いることで、確率的に遷移するQRコードの判定を、精度良く行うことが可能となる。また、情報処理装置1は、改変される可能性の低いブロックの誤りビット数をカウントしないことで、偽造に利用される可能性が低い部分が汚れたり破れたりした場合の誤検知を回避することができる。 Further, according to the above embodiment, the information processing device 1 weights each block included in the QR code in stages according to the probability that each block will be modified. The information processing device 1 counts the weighted sum of error bits included in the weighted blocks. The information processing device 1 determines whether the QR code is a QR code that changes stochastically based on whether the counted sum exceeds a specified value. According to this configuration, the information processing device 1 uses stepwise weighting according to the possibility of alteration in determining a QR code that changes probabilistically. It becomes possible to perform judgments with high accuracy. Furthermore, by not counting the number of error bits in blocks that are unlikely to be altered, the information processing device 1 can avoid false detections when parts that are unlikely to be used for forgery are soiled or torn. I can do it.

[その他]
なお、図示した情報処理装置1の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、情報処理装置1の分散・統合の具体的態様は図示のものに限られず、その全部または一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、読取部11と誤り訂正箇所特定部12とを1つの部として統合しても良い。また、偽造判定部14を、重み付けが行われたブロックに含まれる誤りビット数をカウントするカウント部と、カウントした数を判定する判定部とに分散しても良い。また、記憶部20を情報処理装置1の外部装置としてネットワーク経由で接続するようにしても良い。
[others]
Note that each component of the illustrated information processing device 1 does not necessarily need to be physically configured as illustrated. In other words, the specific manner of distributing and integrating the information processing devices 1 is not limited to what is shown in the diagram, and all or part of the information processing devices 1 can be functionally or physically distributed in arbitrary units depending on various loads, usage conditions, etc. It can be configured in a distributed/integrated manner. For example, the reading unit 11 and the error correction location specifying unit 12 may be integrated as one unit. Further, the forgery determination unit 14 may be distributed into a counting unit that counts the number of error bits included in a weighted block and a determination unit that determines the counted number. Further, the storage unit 20 may be connected as an external device to the information processing device 1 via a network.

また、上記実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーション等のコンピュータで実行することによって実現することができる。そこで、以下では、図1に示した情報処理装置1と同様の機能を実現する情報処理を含む情報処理プログラムを実行するコンピュータの一例を説明する。図5は、情報処理プログラムを実行するコンピュータの一例を示す図である。 Further, the various processes described in the above embodiments can be realized by executing a program prepared in advance on a computer such as a personal computer or a workstation. Therefore, an example of a computer that executes an information processing program including information processing that implements the same functions as the information processing apparatus 1 shown in FIG. 1 will be described below. FIG. 5 is a diagram illustrating an example of a computer that executes an information processing program.

図5に示すように、コンピュータ200は、各種演算処理を実行するCPU203と、ユーザからのデータの入力を受け付ける入力装置215と、表示装置209を制御する表示制御部207とを有する。また、コンピュータ200は、記憶媒体からプログラム等を読取るドライブ装置213と、ネットワークを介して他のコンピュータとの間でデータの授受を行う通信制御部217とを有する。また、コンピュータ200は、各種情報を一時記憶するメモリ201と、HDD205を有する。そして、メモリ201、CPU203、HDD205、表示制御部207、ドライブ装置213、入力装置215、通信制御部217は、バス219で接続されている。 As shown in FIG. 5, the computer 200 includes a CPU 203 that executes various calculation processes, an input device 215 that receives data input from a user, and a display control unit 207 that controls a display device 209. The computer 200 also includes a drive device 213 that reads programs and the like from a storage medium, and a communication control unit 217 that exchanges data with other computers via a network. Further, the computer 200 includes a memory 201 that temporarily stores various information, and an HDD 205. The memory 201, CPU 203, HDD 205, display control section 207, drive device 213, input device 215, and communication control section 217 are connected via a bus 219.

ドライブ装置213は、例えばリムーバブルディスク211用の装置である。HDD205は、情報処理プログラム205aおよび情報処理関連情報205bを記憶する。 The drive device 213 is, for example, a device for the removable disk 211. The HDD 205 stores an information processing program 205a and information processing related information 205b.

CPU203は、情報処理プログラム205aを読み出して、メモリ201に展開し、プロセスとして実行する。かかるプロセスは、情報処理装置1の各機能部に対応する。情報処理関連情報205bは、閾値21等に対応する。そして、例えばリムーバブルディスク211が、情報処理プログラム205a等の各情報を記憶する。 The CPU 203 reads the information processing program 205a, develops it in the memory 201, and executes it as a process. This process corresponds to each functional unit of the information processing device 1. The information processing related information 205b corresponds to the threshold value 21 and the like. For example, the removable disk 211 stores information such as the information processing program 205a.

なお、情報処理プログラム205aについては、必ずしも最初からHDD205に記憶させておかなくても良い。例えば、コンピュータ200に挿入されるフレキシブルディスク(FD)、CD-ROM、DVDディスク、光磁気ディスク、ICカード等の「可搬用の物理媒体」に当該プログラムを記憶させておく。そして、コンピュータ200がこれらから情報処理プログラム205aを読み出して実行するようにしても良い。 Note that the information processing program 205a does not necessarily have to be stored in the HDD 205 from the beginning. For example, the program is stored in a "portable physical medium" such as a flexible disk (FD), CD-ROM, DVD disk, magneto-optical disk, or IC card that is inserted into the computer 200. Then, the computer 200 may read out the information processing program 205a from these and execute it.

1 情報処理装置
10 制御部
11 読取部
12 誤り訂正箇所特定部
13 重み付け部
14 偽造判定部
15 復号部
20 記憶部
21 閾値
1 Information processing device 10 Control unit 11 Reading unit 12 Error correction location identification unit 13 Weighting unit 14 Forgery determination unit 15 Decoding unit 20 Storage unit 21 Threshold

Claims (5)

処理対象とするQRコードに含まれるブロックそれぞれが改変される可能性の高さに応じて、それぞれのブロックに対する重み付けを行い、
前記重み付けが行われたブロックに含まれる誤りビット数に応じて、前記QRコードが確率的に遷移するQRコードであるか否かを判定する
処理をコンピュータに実行させることを特徴とする情報処理プログラム。
Each block included in the QR code to be processed is weighted according to the possibility that it will be modified,
An information processing program that causes a computer to execute a process of determining whether or not the QR code is a QR code that transitions probabilistically according to the number of error bits included in the weighted block. .
前記重み付けを行う処理は、前記QRコードに含まれるブロックが偽造に利用される確率が所定の割合以上のブロックである場合には、当該ブロックに対する重み付けを行い、
該判定する処理は、
前記重み付けが行われたブロックに含まれる誤りビット数をカウントし、
カウントした数が規定値を超えるか否かにより前記QRコードが確率的に遷移するQRコードであるか否かを判定する
ことを特徴とする請求項1に記載の情報処理プログラム。
In the weighting process, if a block included in the QR code has a probability of being used for forgery is a predetermined percentage or more, weighting the block;
The process for determining the
Counting the number of error bits included in the weighted block,
The information processing program according to claim 1, wherein it is determined whether the QR code is a QR code that changes stochastically depending on whether the counted number exceeds a specified value.
該重み付けを行う処理は、前記QRコードに含まれるブロックそれぞれが改変される可能性の高さに応じて、段階的に重み付けを行い、
該判定する処理は、
前記重み付けが行われたブロックに含まれる誤りビットの前記重み付けの和を算出し、
算出した和が規定値を超えるか否かにより前記QRコードが確率的に遷移するQRコードであるか否かを判定する
ことを特徴とする請求項1に記載の情報処理プログラム。
The weighting process performs weighting in stages according to the possibility that each block included in the QR code will be modified,
The process for determining the
Calculating the weighted sum of error bits included in the weighted block;
The information processing program according to claim 1, wherein it is determined whether the QR code is a QR code that changes stochastically based on whether the calculated sum exceeds a specified value.
処理対象とするQRコードに含まれるブロックそれぞれが改変される可能性の高さに応じて、それぞれのブロックに対する重み付けを行う重み付け部と、
前記重み付けが行われたブロックに含まれる誤りビット数に応じて、前記QRコードが確率的に遷移するQRコードであるか否かを判定する判定部と、
を有することを特徴とする情報処理装置。
a weighting unit that weights each block included in the QR code to be processed according to the possibility that each block will be modified;
a determination unit that determines whether the QR code is a QR code that transitions probabilistically according to the number of error bits included in the weighted block;
An information processing device comprising:
処理対象とするQRコードに含まれるブロックそれぞれが改変される可能性の高さに応じて、それぞれのブロックに対する重み付けを行い、
前記重み付けが行われたブロックに含まれる誤りビット数に応じて、前記QRコードが確率的に遷移するQRコードであるか否かを判定する
処理をコンピュータが実行することを特徴とする情報処理方法。
Each block included in the QR code to be processed is weighted according to the possibility that it will be modified,
An information processing method characterized in that a computer executes a process of determining whether or not the QR code is a QR code that probabilistically transitions according to the number of error bits included in the weighted block. .
JP2020037511A 2020-03-05 2020-03-05 Information processing program, information processing device, and information processing method Active JP7415671B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020037511A JP7415671B2 (en) 2020-03-05 2020-03-05 Information processing program, information processing device, and information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020037511A JP7415671B2 (en) 2020-03-05 2020-03-05 Information processing program, information processing device, and information processing method

Publications (2)

Publication Number Publication Date
JP2021140449A JP2021140449A (en) 2021-09-16
JP7415671B2 true JP7415671B2 (en) 2024-01-17

Family

ID=77669621

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020037511A Active JP7415671B2 (en) 2020-03-05 2020-03-05 Information processing program, information processing device, and information processing method

Country Status (1)

Country Link
JP (1) JP7415671B2 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001006014A (en) 1999-06-18 2001-01-12 Denso Corp Forgery judgement method, forgery judgement device and recording medium
JP2020160961A (en) 2019-03-27 2020-10-01 株式会社デンソーウェーブ Two-dimensional code reading device, computer program, and two-dimensional code
JP2020160759A (en) 2019-03-26 2020-10-01 株式会社デンソーウェーブ Two-dimensional code reading device
JP2021015489A (en) 2019-07-12 2021-02-12 京セラドキュメントソリューションズ株式会社 Image analysis device, image analysis system, image analysis method and image analysis program

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001006014A (en) 1999-06-18 2001-01-12 Denso Corp Forgery judgement method, forgery judgement device and recording medium
JP2020160759A (en) 2019-03-26 2020-10-01 株式会社デンソーウェーブ Two-dimensional code reading device
JP2020160961A (en) 2019-03-27 2020-10-01 株式会社デンソーウェーブ Two-dimensional code reading device, computer program, and two-dimensional code
JP2021015489A (en) 2019-07-12 2021-02-12 京セラドキュメントソリューションズ株式会社 Image analysis device, image analysis system, image analysis method and image analysis program

Also Published As

Publication number Publication date
JP2021140449A (en) 2021-09-16

Similar Documents

Publication Publication Date Title
US20080256415A1 (en) Error Detection/Correction Circuit as Well as Corresponding Method
US8417960B2 (en) Method for generating an encryption key using biometrics authentication and restoring the encryption key and personal authentication system
RU2004115730A (en) DVD DISC PROTECTED FROM COPYING AND METHOD OF ITS PRODUCTION AND VERIFICATION
EP1623359A1 (en) Verification of authenticity of check data
JP3115003B2 (en) Method and apparatus for decoding barcode symbols using module size ratio analysis
US7720252B2 (en) Method and apparatus for processing image, and printed material
JP7415671B2 (en) Information processing program, information processing device, and information processing method
CN107766909B (en) The method and system of anti-tamper processing is carried out to two-dimension code pattern
JP2007088693A (en) Image processing system, tampering verification apparatus, tampering verification method, and computer program
US8504901B2 (en) Apparatus, method, and computer program product for detecting embedded information
JP2021135654A (en) Information processing program, information processor, and information processing method
JP4410217B2 (en) Digital watermark method
JP4863017B2 (en) Information hiding system, apparatus and method
JP2020160961A (en) Two-dimensional code reading device, computer program, and two-dimensional code
CN109902519B (en) Magnetic stripe decoding method, system and related device
US7912243B2 (en) Decoding device, decoding method and decoding program
US20090183258A1 (en) Pirate user detecting apparatus, collusion-secure code generating apparatus, and collusion-secure code generating program
JP4910786B2 (en) Image processing apparatus and image processing method
JPS58501922A (en) Information systems that use error syndromes for special control
JP2000187441A (en) Method and device for encoding embedded information, storage medium storing embedded information encoding program, method and device for decoding extracted information, and storage medium storing extracted information decoding program, and method and device for encoding digital watermark information, and storage medium storing digital watermark information encoding program, and method and device for decoding digital watermark information, and storage medium storing digital watermark information decoding program
JP2012175629A (en) Wireless tag decoding method
CN111104668B (en) Implementation method and application of return value of security authentication function
CN101383887B (en) Information processing device and method
KR20200067378A (en) Apparatus and Method for processing signal using adversarial information embedding scheme
Ohigashi et al. Detecting Fake QR Codes Using Information from Error-Correction

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221117

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231006

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231017

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231108

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231218

R150 Certificate of patent or registration of utility model

Ref document number: 7415671

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150