WO2021095457A1 - 二次元コード生成方法、二次元コード評価方法、二次元コードシステム、二次元コード生成装置、及び二次元コード評価装置、及び二次元コード - Google Patents

二次元コード生成方法、二次元コード評価方法、二次元コードシステム、二次元コード生成装置、及び二次元コード評価装置、及び二次元コード Download PDF

Info

Publication number
WO2021095457A1
WO2021095457A1 PCT/JP2020/039376 JP2020039376W WO2021095457A1 WO 2021095457 A1 WO2021095457 A1 WO 2021095457A1 JP 2020039376 W JP2020039376 W JP 2020039376W WO 2021095457 A1 WO2021095457 A1 WO 2021095457A1
Authority
WO
WIPO (PCT)
Prior art keywords
dimensional code
information
code
arrangement
data
Prior art date
Application number
PCT/JP2020/039376
Other languages
English (en)
French (fr)
Inventor
健 永濱
Original Assignee
合同会社 Ark
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 合同会社 Ark filed Critical 合同会社 Ark
Publication of WO2021095457A1 publication Critical patent/WO2021095457A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C5/00Ciphering apparatus or methods not provided for in the preceding groups, e.g. involving the concealment or deformation of graphic data such as designs, written or printed messages

Definitions

  • the present invention relates to a two-dimensional code generation method, a two-dimensional code evaluation method, a two-dimensional code system, a two-dimensional code generation device, a two-dimensional code evaluation device, and a two-dimensional code.
  • an error that can detect and correct an error of an information body including the first information, a first data code word having a terminal code and a padding code word, and the first data code word.
  • an object of the present invention is a two-dimensional code generation method and two-dimensional code evaluation that can suppress the capacity limitation of information to be concealed.
  • a method, a two-dimensional code system, a two-dimensional code generator, a two-dimensional code evaluation device, and a two-dimensional code are provided.
  • the two-dimensional code generation method includes, in advance, an acquisition step of acquiring target information to be coded, a generation step of generating a data block including a constituent code word based on the content of the target information, and a pre-existing step.
  • a setting step for setting placement information for arranging as an initial two-dimensional code for each of the plurality of code data included in the configuration code word, and setting for the plurality of code data is characterized by including a replacement step for replacing the arranged arrangement information, and a two-dimensional code generation step for generating a two-dimensional code based on the arrangement information replaced by the replacement step.
  • the replacement step is set to the code data in a range exceeding the number of error corrections in one or more of the data blocks among the plurality of data blocks. It is characterized in that the above-mentioned arrangement information is exchanged.
  • the replacement step refers to the placement conversion information having information regarding the replacement of the placement information, and the placement information set in the plurality of code data. It is characterized by replacing.
  • the replacement step refers to the format information used at the time of generating the initial two-dimensional code and the arrangement conversion information based on at least one of the model number information. It is characterized in that the arrangement information set in the plurality of code data is exchanged.
  • the acquisition step acquires specific information associated with the target information
  • the replacement step refers to the arrangement conversion information based on the specific information.
  • the arrangement information set in the plurality of code data is exchanged.
  • the two-dimensional code generation method is any one of the third to fifth inventions, wherein the arrangement conversion information relates to the recognition order of the arrangement information when the code data is derived from the two-dimensional code. It is characterized by having information.
  • the two-dimensional code generation method according to the seventh invention is any one of the third to fifth inventions, wherein the arrangement conversion information is the arrangement set in a plurality of the code data included in one constituent code word. It is characterized by having information for exchanging information.
  • the two-dimensional code generation method is any one of the third to fifth inventions, wherein the arrangement conversion information is the code data included in the first constituent code word among the plurality of constituent code words. It is characterized in that it has information for replacing the first arrangement information set in (1) with the second arrangement information set in the code data included in the second configuration code word.
  • the two-dimensional code generation method is the initial two based on the arrangement information set in each of the plurality of code data after the setting step in any of the third to fifth inventions. It is characterized by further including an initial two-dimensional code generation step for generating a dimensional code.
  • the arrangement conversion information has information for changing the code data arranged at a specific position in the initial two-dimensional code to another position. It is characterized by that.
  • the arrangement conversion information transfers the code data arranged row by row or column to another row or column in the initial two-dimensional code. It is characterized by having information to be changed.
  • the arrangement conversion information has information that turns the arrangement position of the code data in the initial two-dimensional code along a row or a column. It is characterized by that.
  • the two-dimensional code generation method according to the thirteenth invention is any one of the third to twelfth inventions, wherein the two-dimensional code generation step is based on preset mask information and at least one of the plurality of code data. It is characterized by having a mask processing step of inverting the portion.
  • the replacement step specifies the arrangement information to be replaced based on the error correction code word included in the data block. It is characterized by doing.
  • the two-dimensional code generation method according to the fifteenth invention is characterized in that, in any one of the third to fourteenth inventions, the two-dimensional code format is a QR code format.
  • the two-dimensional code evaluation method is a two-dimensional code evaluation method for evaluating the two-dimensional code generated by the two-dimensional code generation method in any one of the third to fifteenth inventions. It is characterized by including a reading step for reading a dimensional code and a derivation step for deriving the target information for the two-dimensional code by referring to the arrangement conversion information.
  • the two-dimensional code system is preset with an acquisition means for acquiring target information to be coded and a generation means for generating a data block including a constituent code word based on the content of the target information.
  • the setting means for setting the arrangement information for arranging as the initial two-dimensional code for each of the plurality of code data included in the constituent code words, and the setting means for setting the plurality of code data. It is characterized by including a replacement means for replacing the arrangement information, and a two-dimensional code generating means for generating a two-dimensional code based on the arrangement information replaced by the replacement means.
  • the two-dimensional code system according to the eighteenth invention is characterized in that, in the seventeenth invention, it further includes a reading means for reading the two-dimensional code and a derivation means for deriving the target information with respect to the two-dimensional code.
  • the two-dimensional code generation device includes an acquisition unit that acquires target information to be coded, a generation unit that generates a data block including a constituent code word based on the content of the target information, and a generation unit in advance.
  • the setting unit for setting the arrangement information for arranging as the initial two-dimensional code for each of the plurality of code data included in the configuration code word, and the plurality of code data are set. It is characterized by including a replacement unit that replaces the arranged arrangement information, and a two-dimensional code generation unit that generates a two-dimensional code based on the arrangement information exchanged by the replacement unit.
  • the two-dimensional code evaluation device is a two-dimensional code evaluation device that evaluates the two-dimensional code generated by the two-dimensional code generator according to the nineteenth invention, and includes a reading unit that reads the two-dimensional code. It is characterized by including a derivation unit for deriving the target information with respect to the two-dimensional code.
  • the two-dimensional code according to the 21st invention is characterized in that it is generated by the two-dimensional code generation method according to any one of the first to 16th inventions.
  • the two-dimensional code generation step generates a two-dimensional code based on the arrangement information replaced by the replacement step. Therefore, it is possible to perform unreadable processing associated with the replacement of the arrangement information while maintaining the data capacity based on the target information that can be set in the conventional two-dimensional code format. This makes it possible to suppress the capacity limitation of the information to be kept secret.
  • the replacement step replaces the arrangement information set in the code data within a range exceeding the number of error corrections in one or more data blocks among the plurality of data blocks. Therefore, it is possible to make it more difficult to derive the generated two-dimensional code by using the conventional two-dimensional code reading device. This makes it possible to increase the confidentiality of the target information.
  • the replacement step refers to the placement conversion information having the information regarding the replacement of the placement information, and replaces the placement information set in the plurality of code data. Therefore, the derivation of the two-dimensional code can be restricted only to a specific terminal having the arrangement conversion information. This makes it possible to further enhance the confidentiality of the target information.
  • the replacement step refers to the placement conversion information based on at least one of the format information and the model number information, and replaces the placement information set in the plurality of code data. Therefore, the derivation of the two-dimensional code can be restricted by using the format information or the model number information used at the time of the conventional two-dimensional code generation. This makes it possible to further enhance the confidentiality of the target information.
  • the replacement step refers to the placement conversion information based on the specific information, and replaces the placement information set in the plurality of code data. Therefore, the content of the specific information associated with the target information can be changed depending on the content of the target information to be concealed, and the derivation of the two-dimensional code can be restricted according to the importance of concealment and the like. This makes it possible to easily change the degree of confidentiality of the target information.
  • the initial two-dimensional code generation step generates an initial two-dimensional code corresponding to the initial arrangement information based on the arrangement information set in each of the plurality of code data after the setting step. .. Therefore, for example, even when the initial two-dimensional code is already generated by another terminal or the like, the two-dimensional code with high confidentiality can be generated. This makes it possible to expand the conditions of data that can generate a two-dimensional code.
  • the arrangement conversion information has information that turns the arrangement position of the code data in the initial two-dimensional code along a row or a column. Therefore, when exchanging the arrangement information, one arrangement conversion information can be used regardless of the format of the initial two-dimensional code. This makes it easy to generate a two-dimensional code C with enhanced confidentiality for various initial two-dimensional code formats. Further, it is not necessary to set the arrangement information for each format of the initial two-dimensional code, and it is possible to enhance the confidentiality with the minimum information.
  • the derivation step refers to the arrangement conversion information and derives the target information for the two-dimensional code. Therefore, it is possible to realize the derivation of the two-dimensional code using the arrangement conversion information.
  • the two-dimensional code generating means generates a two-dimensional code based on the arrangement information replaced by the replacement means. Therefore, it is possible to perform unreadable processing associated with the replacement of the arrangement information while maintaining the data capacity based on the target information that can be set in the conventional two-dimensional code format. This makes it possible to suppress the capacity limitation of the information to be kept secret.
  • the derivation means derives the target information for the two-dimensional code. Therefore, it is possible to realize the derivation of the two-dimensional code.
  • the two-dimensional code generation unit generates a two-dimensional code based on the arrangement information replaced by the replacement unit. Therefore, it is possible to perform unreadable processing associated with the replacement of the arrangement information while maintaining the data capacity based on the target information that can be set in the conventional two-dimensional code format. This makes it possible to suppress the capacity limitation of the information to be kept secret.
  • the derivation unit derives the target information for the two-dimensional code. Therefore, it is possible to realize the derivation of the two-dimensional code.
  • the 2D code is generated by the 2D code generation method according to any one of the 1st to 16th inventions. This makes it possible to suppress the capacity limitation of the information to be kept secret. Further, it is possible to increase the confidentiality of the target information.
  • FIG. 1 is a schematic diagram showing an example of a two-dimensional code according to the first embodiment.
  • FIG. 2 is a schematic diagram showing an example of the two-dimensional code system 100 according to the first embodiment.
  • FIG. 3 is a schematic diagram showing an example of the two-dimensional code generation method and the two-dimensional code evaluation method in the first embodiment.
  • FIG. 4A is a schematic diagram showing an example of the configuration of the two-dimensional code generator according to the first embodiment
  • FIG. 4B is an example of the function of the two-dimensional code generator according to the first embodiment. It is a schematic diagram which shows.
  • FIG. 5A is a schematic diagram showing an example of arrangement information
  • FIG. 5B is a schematic diagram showing an example of arrangement information after replacement.
  • FIG. 6A is a schematic diagram showing an example of arrangement information before and after replacement
  • FIG. 6B is a schematic diagram showing an example of arrangement conversion information
  • FIG. 7A is a schematic diagram showing an example of the configuration of the two-dimensional code evaluation device according to the first embodiment
  • FIG. 7B is an example of the function of the two-dimensional code evaluation device according to the first embodiment.
  • It is a schematic diagram which shows. 8 (a) and 8 (b) are flowcharts showing an example of the operation of the two-dimensional code system according to the first embodiment.
  • FIG. 9 is a flowchart showing a modified example of the operation of the two-dimensional code system according to the first embodiment.
  • 10 (a) to 10 (c) are schematic views showing an example of a two-dimensional code generation method according to the second embodiment.
  • FIG. 11A is a schematic diagram showing an example of the arrangement conversion information in the second embodiment
  • FIG. 11B is a schematic diagram showing a first modification of the arrangement conversion information in the second embodiment.
  • FIG. 12 is a schematic view showing a second modification of the arrangement conversion information in the second embodiment.
  • FIG. 13 is a flowchart showing an example of the operation of the two-dimensional code system in the second embodiment.
  • FIG. 1 is a schematic diagram showing an example of a two-dimensional code in the present embodiment.
  • FIG. 2 is a schematic diagram showing an example of the two-dimensional code system 100 in the present embodiment.
  • FIG. 3 is a schematic diagram showing an example of the two-dimensional code generation method and the two-dimensional code evaluation method in the present embodiment.
  • the two-dimensional code C in the present embodiment indicates the format of the QR code (registered trademark), as well as the format of a matrix-type two-dimensional code such as a data matrix code, maxi code, veric code, or CP code, or a stack type.
  • a known two-dimensional code format such as the two-dimensional code format of, may be indicated.
  • the "format" indicates the external compliance rules regarding the arrangement of the light / dark module representing the information bit, and the code such as the model number set according to the information capacity in the given compliance rules. Indicates the external scale.
  • Some of the two-dimensional code C generation methods and evaluation methods are, for example, JIS X 0510: 2018 “Information Technology-Automatic Recognition and Data Acquisition Technology-QR Code Bar Code Symbol System Specifications” and ISO / IEC 18004: 2015 “Information”.
  • Technology-Automatic identification and data collection technology-QR code bar code symbol specifications may be followed.
  • a known standard regarding the format of a two-dimensional code will be referred to as a target standard.
  • the two-dimensional code C is generated based on the QR code symbol of the model number "2", and is arbitrary depending on the content of the coded target information and the use of the two-dimensional code C. It may be generated based on the model number of the above or any two-dimensional code format.
  • the two-dimensional code C has, for example, a functional pattern and a coded region.
  • the functional pattern shows a pattern necessary for position search and characteristic identification (processing of acquiring external data) in the two-dimensional code C, for example, to assist the coding in the module of the two-dimensional code C. Used.
  • the coded area indicates an area in which necessary information is written.
  • the functional pattern includes, for example, a position detection pattern FP, a separation pattern SP, a timing pattern TP, an alignment pattern AP, and a quiet zone QZ.
  • the position detection pattern FP indicates a pattern arranged at at least three corners of the two-dimensional code C. For example, by identifying the three position detection patterns FP at the time of reading, the direction and position of the two-dimensional code C can be correctly recognized.
  • the separation pattern SP is a bright module having a width of one module arranged around the position detection pattern FP.
  • the position detection pattern FP can be distinguished from the functional pattern and the like.
  • the timing pattern TP is a pattern in which dark modules and bright modules are arranged alternately in a straight line with one module M each. Since the number of modules M in the two-dimensional code C can be recognized by the timing pattern TP, for example, the model number of the QR code can be identified.
  • the module M is a unit cell that constitutes the two-dimensional code C. For example, one bit corresponds to one module.
  • the alignment pattern AP is a pattern that is arranged at a position determined by the model number of the QR code.
  • the alignment pattern AP assists in finding a position in, for example, a two-dimensional code C.
  • the quiet zone QZ is a bright module area having a width of at least 4 modules provided around the QR code.
  • the coding area has, for example, a data code word placement area DP, an error correction code word placement area EP, and a formal information placement area FI.
  • the coding area may have a model number information arrangement area VI.
  • the model number information arrangement area VI has, for example, when a QR code having a large model number is used. For example, the QR code of the model number "2" shown in FIG. 1 does not have the model number information arrangement area VI.
  • Data code word placement area DP and error correction code word placement In the EP, configuration code words generated based on actual data (target information) are placed.
  • the constituent code word includes a data code word and an error correction code word (hereinafter referred to as a correction code).
  • the data code word generated based on the content of the target information is arranged in the data code word arrangement area DP.
  • the error correction code word arrangement area EP a correction code word used when data cannot be derived is arranged.
  • the data cannot be derived for example, there is a case where an unclear part or a missing part occurs due to stains or the like in the part corresponding to the constituent code word.
  • the correction code word may be arranged in the data code word arrangement area DP, and the data code word may be arranged in the error correction code word arrangement area EP. That is, the data code word placement area DP and the error correction code word placement area EP indicate areas defined by the prior art such as the target standard.
  • the arrangement order (initial arrangement information) of the data code word and the data code word is set in the data code word arrangement area DP and the error correction code word arrangement area EP (for example, rules such as the target standard).
  • the data code words are arranged in the order of position D1, position D2, ..., Position D28, and the correction code words are arranged in the order of position E1, position E2, ..., Position E16. Place etc.). Therefore, a conventional two-dimensional code (initial two-dimensional code) can be generated by performing processing according to the target standard.
  • data is derived (decoded) from the initial two-dimensional code using a general-purpose reading device or the like based on the target standard.
  • the configuration code words are arranged in a different order and arrangement area from the data code word arrangement area DP and the error correction code word arrangement area EP set in the target standard or the like. Can be placed in.
  • data derivation decoding
  • the two-dimensional code C in the present embodiment can be shown in a state in which the entire coded area is unreadable (a state in which the target information is concealed). As a result, it is possible to suppress the capacity limitation of the target information to be kept secret as compared with the conventional case.
  • the format information necessary for decoding the coded area is arranged in the format information arrangement area FI.
  • Information about the error correction level applied to the two-dimensional code C may be arranged in the formal information arrangement area FI, and for example, information about the standard mask pattern used may be arranged. That is, the formal information includes, for example, information on an error correction level and information on a standard mask pattern (for example, a mask pattern in a target standard).
  • model number information arrangement area VI for example, model number information given to a QR code of 7 type or more is arranged.
  • the model number information placement area VI is, for example, on the upper side of the timing pattern TP, immediately to the left of the separation pattern SP adjacent to the upper right position detection pattern FP, and on the left side of the timing pattern TP, of the separation pattern SP adjacent to the lower left position detection pattern FP. The area immediately above is shown.
  • the two-dimensional code system 100 is used to generate the two-dimensional code C, and may be used, for example, to evaluate the two-dimensional code C.
  • the two-dimensional code system 100 includes, for example, a two-dimensional code generator 1 as shown in FIG.
  • the two-dimensional code system 100 may include, for example, a two-dimensional code evaluation device 2, or may include, for example, a server 3.
  • the two-dimensional code generation device 1, the two-dimensional code evaluation device 2, and the server 3 are connected via, for example, a communication network 4 as needed.
  • the two-dimensional code generation method (encoding process) and the two-dimensional code evaluation method (decoding process) shown in FIG. 3 can be implemented.
  • the two-dimensional code generator 1 acquires a character string (target information to be coded).
  • the two-dimensional code generator 1 generates one or more RS blocks (Reed-Solomon blocks: hereinafter referred to as data blocks) based on the target information, and for a plurality of code data included in each data block, for example, to a target standard. Set the placement information based on.
  • the two-dimensional code generator 1 generates the two-dimensional code C after exchanging the arrangement information set in each code data. As a result, the two-dimensional code C is generated.
  • the two-dimensional code C generated by the two-dimensional code generator 1 can be output by being printed on, for example, a paper medium.
  • the two-dimensional code evaluation device 2 reads the two-dimensional code C and derives the target information.
  • the user or the like possessing the two-dimensional code evaluation device 2 can recognize the target information.
  • a terminal 9 (for example, a general-purpose reading device) different from the two-dimensional code evaluation device 2 can read the two-dimensional code C (process for acquiring external data), but the read two-dimensional code.
  • the target information cannot be derived from C. That is, the two-dimensional code C can prevent the derivation of the target information using the terminal 9. Therefore, for example, the target information can be notified only to a specific user.
  • FIG. 4A is a schematic diagram showing an example of the configuration of the two-dimensional code generator 1 in the present embodiment
  • FIG. 4B is an example of the function of the two-dimensional code generator 1 in the present embodiment. It is a schematic diagram which shows.
  • the two-dimensional code generator 1 for example, an electronic device such as a laptop (notebook) PC, a desktop PC, a smartphone, or a tablet terminal is used. As shown in FIG. 4A, for example, the two-dimensional code generator 1 includes a housing 10, a CPU (Central Processing Unit) 101, a ROM (Read Only Memory) 102, and a RAM (Random Access Memory) 103. , A storage unit 104, I / F 105 to 107, an input mechanism 108, and an output mechanism 109. Each configuration 101 to 107 is connected by an internal bus 110.
  • a CPU Central Processing Unit
  • ROM Read Only Memory
  • RAM Random Access Memory
  • the CPU 101 controls the entire two-dimensional code generator 1.
  • the ROM 102 stores the operation code of the CPU 101.
  • the RAM 103 is a work area used during the operation of the CPU 101.
  • the storage unit 104 stores various information such as information on the target standard.
  • As the storage unit 104 for example, in addition to an HDD (Hard Disk Drive), a data storage device such as an SSD (Solid State Drive) is used.
  • HDD Hard Disk Drive
  • SSD Solid State Drive
  • the I / F 105 is an interface for transmitting and receiving various information to and from the two-dimensional code evaluation device 2 and the server 3 as needed via the communication network 4.
  • the I / F 106 is an interface for transmitting and receiving information with the input mechanism 108.
  • the I / F 107 is an interface for transmitting and receiving various information with the output mechanism 109.
  • a keyboard is used as the input mechanism 108, and the user of the two-dimensional code generator 1 can use the input mechanism 108 to include information (target information) to be included in the two-dimensional code C or the two-dimensional code generator 1. Enter the control command of.
  • the output mechanism 109 outputs various information stored in the storage unit 104, a two-dimensional code C, or the like.
  • a display is used as the output mechanism 109, and for example, in the case of a touch panel type, it is provided integrally with the input mechanism 108.
  • a known printing device such as a printer may be used so that the two-dimensional code C can be printed on a paper medium.
  • the two-dimensional code generation device 1 includes an acquisition unit 11, a generation unit 12, a setting unit 13, a replacement unit 14, and a two-dimensional code generation unit 15, for example.
  • a storage unit 16 and an output unit 17 may be provided.
  • Each function shown in FIG. 4B is realized by the CPU 101 executing a program stored in the storage unit 104 or the like using the RAM 103 as a work area.
  • the two-dimensional code generator 1 is two-dimensional.
  • Each function may be provided by installing a program for executing the code generation method. Further, a part of each function may generate (encode) the two-dimensional code C by a method according to the above-mentioned target standard or known technology.
  • the acquisition unit 11 acquires the target information.
  • the acquisition unit 11 may acquire the target information from the two-dimensional code evaluation device 2 or another terminal 9 or the like via the communication network 4, for example.
  • the acquisition unit 11 acquires specific information associated with the target information, for example.
  • the acquisition unit 11 may acquire the target information at a different timing from the target information, for example, and may acquire the target information from the terminal 9 and the specific information via the input mechanism 108. It may be acquired from (acquisition).
  • the specific information includes, for example, information related to confidentiality such as a password and a confidentiality level for the target information, and also includes, for example, a user ID of a service using a two-dimensional code C and information related to a user terminal.
  • the specific information may include, for example, a plurality of codes (encoded setting information).
  • the plurality of codes may be various identification information such as angles, front and back, arrangement, enlargement / reduction, and color regarding the identification method of the two-dimensional code C, for example.
  • the plurality of codes may be, for example, order information indicating the order of each.
  • the plurality of codes may be correct / incorrect information indicating hit or miss of the two-dimensional code C, for example.
  • the plurality of codes may be, for example, concealment information or authentication information stored in the concealment storage portion.
  • the plurality of codes may be, for example, other related two-dimensional codes C or information between groups.
  • the generation unit 12 generates one or more data blocks including the constituent code words based on the target information.
  • the configuration code includes a data code word and a correction code word.
  • a data block is generated as shown in blocks 1 and 2 shown in FIG. 5 (a).
  • the generation unit 12 may generate a data block including a constituent data word as a concealed storage portion, for example, a data block for storing as concealed information or authentication information, based on specific information associated with the target information.
  • the data code word and the correction code word include a plurality of code data.
  • the code data is represented by, for example, a binary value of 0 or 1.
  • the data block shown in FIG. 5A and the like is an example.
  • the number of code data included in the data code word and the correction code word and the number of data blocks can be set by a method according to the target standard. it can.
  • the data code word includes, for example, an information body, a terminal code, and a padding code word, and is represented by code data, respectively.
  • the information body is generated based on the target information to be encoded.
  • the terminal code is a code indicating the end of the information body.
  • the padding code word is a temporary code word (filled grass code word) used for the purpose of supplementing an empty code word portion when the total number of code words in the information body is less than the capacity of the two-dimensional code C.
  • the correction code word includes, for example, an RS (Reed-Solomon) code and is represented by code data.
  • the RS code is a code used for error correction in units of data blocks.
  • the setting unit 13 sets the arrangement information for arranging as the initial two-dimensional code for each of the plurality of code data based on the initial arrangement information set in advance.
  • the initial arrangement information indicates, for example, information regarding the arrangement order of each code data in the target standard.
  • the arrangement information is set in each code data according to the arrangement order shown in, for example, the data code word arrangement area DP and the error correction code word arrangement area EP shown in FIG.
  • the arrangement information a, b, c, d, and e corresponding to the position D1 are set in the code data included in the data code word of block 1, and the code data included in the data code word of block 2 is set.
  • Arrangement information f, g, h, i, j corresponding to the position D2 is set.
  • the arrangement information A, B, C, and D corresponding to the position E1 are set in the code data included in the correction code word of the block 1, and the code data included in the correction code word of the block 2 is the position.
  • Arrangement information E, F, G, H corresponding to E2 is set.
  • the replacement unit 14 replaces the arrangement information set in the plurality of code data.
  • the replacement unit 14 may replace the arrangement information set in each code data included in the constituent code words over a plurality of constituent codes, or may be replaced within one constituent code word.
  • the replacement unit 14 may replace, for example, the arrangement information set in each code data included in a plurality of data code words, or may replace the arrangement information set in each code data included in, for example, a plurality of correction code words. ..
  • the replacement unit 14 may replace, for example, the arrangement information set in the code data included in the plurality of data blocks, and is included in, for example, the arrangement information set in the code data included in the data code word and the correction code word.
  • the arrangement information set in the code data may be replaced. That is, the replacement unit 14 performs the replacement process for the arrangement information, unlike the process of inverting the value of the code data such as that by the XOR operation.
  • the replacement unit 14 may replace at least a part of the placement information set in the plurality of code data, and in FIG. 5B, the replacement information is replaced. Information is shown in italics underlined.
  • the replacement unit 14 may replace the arrangement information set in the code data within a range exceeding the number of error corrections in one or more data blocks among the plurality of data blocks.
  • a conventional two-dimensional code reader for example, terminal 9 can be used to make it more difficult to derive the generated two-dimensional code.
  • the replacement unit 14 may refer to the placement conversion information and replace the placement information set in the plurality of code data.
  • the arrangement conversion information has information on replacement of arrangement information, and has information on arrangement settings different from the contents (initial arrangement information) shown in the above-mentioned target standard.
  • the placement conversion information is set based on, for example, format information.
  • the replacement unit 14 refers to, for example, a format information table in which a plurality of format information and information related to replacement of placement information for each format information (for example, replacement rules and information for specifying a replacement target) are linked and arranged. Conversion information may be set. In this case, the replacement unit 14 sets the arrangement conversion information for the format information based on the format information corresponding to the format of the data block or the like generated by the generation unit 12.
  • the format information table is stored in advance in, for example, the storage unit 104, and is taken out as needed.
  • the arrangement conversion information may be set based on at least a part of a plurality of data included in the format information, for example. For example, out of a plurality of data included in the format information, information corresponding to any n bits may be associated with the arrangement conversion information. In this case, assuming that the format information is 15 bits ⁇ 2, (15 C n). Two conversion patterns can be defined. As a result, for example, when a plurality of two-dimensional code generators 1 are used, the two-dimensional code generators 1 select the arrangement conversion information based on the information corresponding to n bits of the different format information, whereby the same format is used. It is possible to realize the generation of the two-dimensional code C by referring to the different arrangement conversion information for the information.
  • the placement conversion information is set based on, for example, model number information.
  • the replacement unit 14 may set the placement conversion information by referring to, for example, a model number information table in which a plurality of model number information and information related to replacement of placement information for each model number information are linked. In this case, the replacement unit 14 sets the arrangement conversion information for the model number information based on the model number information corresponding to the format of the data block or the like generated by the generation unit 12.
  • the model number information table is stored in advance in, for example, the storage unit 104, and is taken out as needed.
  • the arrangement conversion information may be set based on at least a part of a plurality of data included in the model number information, for example. For example, out of a plurality of data included in the model number information, information corresponding to any n bits may be associated with the arrangement conversion information.
  • the two-dimensional code generators 1 select the arrangement conversion information based on the information corresponding to n bits of the model number information different from each other, whereby the same model number is used. It is possible to realize the generation of the two-dimensional code C by referring to the different arrangement conversion information for the information.
  • the arrangement conversion information may be set based on the format information and the model number information.
  • a table in which each table is combined may be referred to.
  • the placement conversion information may be set based on, for example, specific information.
  • the replacement unit 14 may set the placement conversion information by referring to the specific information table in which the plurality of specific information and the information related to the replacement of the placement information for each specific information are linked.
  • the specific information table is stored in advance in, for example, the storage unit 104, and is taken out as needed.
  • the specific information may include information regarding replacement of placement information.
  • the replacement unit 14 extracts the information related to the replacement of the placement information from the specific information and sets it as the placement conversion information.
  • the specific information may include the arrangement conversion information.
  • the arrangement conversion information may be set in advance, for example.
  • the arrangement conversion information is stored in, for example, the storage unit 104, and is taken out as needed.
  • a rule for exchanging the arrangement information when used as the arrangement conversion information, one arrangement conversion information can be used regardless of the format of the two-dimensional code. Therefore, the amount of data to be stored in the storage unit 104 or the like can be minimized.
  • a rule for exchanging the arrangement information for example, a rule for rotating a plurality of arrangement information in one data block and exchanging the code data associated with each is used.
  • the arrangement conversion information has, for example, information for replacing the arrangement information set in a plurality of code data included in one constituent code word.
  • the arrangement conversion information includes, for example, information for replacing the arrangement information set in a plurality of code data included in at least a part of one data code word. Further, the arrangement conversion information may include, for example, information for replacing the arrangement information set in a plurality of code data included in at least a part of the data code word and the correction code word included in one configuration code. ..
  • the target information when deriving the target information from the two-dimensional code C, the target information can be easily derived by referring to the arrangement conversion information. Further, by storing the arrangement conversion information only in a specific terminal (for example, the two-dimensional code evaluation device 2), it becomes difficult to derive the target information using another terminal 9, and the confidentiality of the target information can be improved. It will be possible.
  • the arrangement conversion information is, for example, the arrangement information (first arrangement information) set in the code data included in one composition code word (first composition code word) among a plurality of composition code words, and the other composition code words. It has information to be replaced with the arrangement information (second arrangement information) set in the code data included in (second configuration code word). In this case, the confidentiality of the generated two-dimensional code C can be improved. It is arbitrary whether each arrangement information to be replaced is included in either the data code word or the correction code word.
  • the arrangement information is, for example, the arrangement information set in all the code data included in one data code word (first data code word) among a plurality of data code words, and the other data code words (second data code). It has information to be replaced with the arrangement information set in the code data included in the word). At this time, the number of code data included in the first data code word is less than or equal to the number of code data included in the second data code word.
  • the replacement unit 14 uses the arrangement information a, b, c, d, and e set in the code data included in the first data code word as the second data code. It is replaced with the arrangement information f, g, h, i, j set in the code data included in the word.
  • the arrangement information set in the code data included in the second data code word is set in the code data included in, for example, another data code word in addition to the arrangement information a, b, c, d, and e. It may be replaced with the arrangement information. Since the same applies when a plurality of "correction code words" are used instead of the plurality of "data code words" described above, the description thereof will be omitted.
  • the arrangement information set in all the code data included in the first data code word may be replaced with the arrangement information set in the code data included in one correction code word.
  • the number of code data included in the first data code word is less than or equal to the number of code data included in one correction code word.
  • the arrangement information set in all the code data included in one correction code word may be replaced with the arrangement information set in the code data included in the first data code word. At this time, the number of code data included in one correction code word is less than or equal to the number of code data included in the first data code word.
  • the arrangement conversion information includes, for example, information regarding the recognition order of the arrangement information when deriving the code data from the two-dimensional code C. That is, the arrangement conversion information has information regarding the recognition order of the arrangement information different from the conventional one. Therefore, the replacement unit 14 replaces the placement information set in each code data according to the recognition order of the placement information possessed by the placement conversion information.
  • the conventional recognition order of the arrangement information is "first recognized code data: arrangement information” a (1 row, 1 column) ", and the second recognized code.
  • the recognition order of the arrangement information possessed by the arrangement conversion information is” first recognized code data: arrangement information "h (2 rows 1).
  • Column) second code data to be recognized: Arrangement information“ g (3 rows and 3 columns) ”...” indicates a recognition order different from the conventional one. Therefore, the replacement unit 14 refers to the placement conversion information, and replaces, for example, the placement information “a” set in the code data with the placement information “h”. As a result, it is possible to generate a highly concealed two-dimensional code C.
  • the replacement unit 14 may replace the placement information without referring to the placement conversion information.
  • the replacement unit 14 randomly replaces the arrangement information, and stores the information (history information) related to the replaced history in the storage unit 104 or the like. This makes it possible to easily derive the target information based on the history information, for example, when deriving the target information from the two-dimensional code C. Further, by storing the history information only in a specific terminal (for example, the two-dimensional code evaluation device 2), it becomes difficult to derive the target information using another terminal 9, and it is possible to improve the confidentiality of the target information. It becomes.
  • the two-dimensional code generation unit 15 generates the two-dimensional code C based on the arrangement information replaced by the replacement unit 14.
  • the two-dimensional code generation unit 15 generates the two-dimensional code C by, for example, a generation method according to the target standard. At this time, since the arrangement information is exchanged by the exchange unit 14, at least a part of the code data included in the plurality of data blocks is arranged at a position different from the conventional one.
  • Memory unit 16 retrieves various data such as information on the target standard, initial arrangement information, and arrangement conversion information stored in the storage unit 104 as needed.
  • the storage unit 16 stores various data acquired or generated by the configurations 11 to 15 and 17 in the storage unit 104 as needed.
  • Output unit 17 outputs the generated two-dimensional code C.
  • the output unit 17 outputs data for printing the two-dimensional code C to the output mechanism 109.
  • the output unit 17 outputs data for displaying the two-dimensional code C to the output mechanism 109.
  • the output unit 17 may output the data of the two-dimensional code C to another terminal such as the two-dimensional code evaluation device 2 via the communication network 4, for example.
  • FIG. 7A is a schematic diagram showing an example of the configuration of the two-dimensional code evaluation device 2 in the present embodiment
  • FIG. 7B is an example of the function of the two-dimensional code evaluation device 2 in the present embodiment. It is a schematic diagram which shows.
  • the two-dimensional code evaluation device 2 for example, as in the two-dimensional code generator 1, electronic devices such as laptop (notebook) PCs, desktop PCs, smartphones, tablet terminals, and two-dimensional code read-only terminals (two-dimensional code readers). Is used.
  • the two-dimensional code evaluation device 2 includes a housing 20, a CPU 201, a ROM 202, a RAM 203, a storage unit 204, an I / F 205 to 207, an input mechanism 208, and the like. It is provided with an output mechanism 209.
  • Each configuration 201 to 207 is connected by an internal bus 210.
  • the CPU 201 controls the entire two-dimensional code evaluation device 2.
  • the ROM 202 stores the operation code of the CPU 201.
  • the RAM 203 is a work area used during the operation of the CPU 201.
  • the storage unit 204 stores various information such as information on the target standard. As the storage unit 204, for example, in addition to an HDD, a data storage device such as an SSD is used.
  • the I / F 205 is an interface for transmitting and receiving various information to and from the two-dimensional code generator 1 and the server 3 as needed via the communication network 4.
  • the I / F 206 is an interface for transmitting and receiving information with the input mechanism 208.
  • the I / F 207 is an interface for transmitting and receiving various information with the output mechanism 209.
  • the input mechanism 208 a known imaging device such as a camera is used, and the user or the like of the two-dimensional code evaluation device 2 reads the two-dimensional code C through the input mechanism 208 and includes the two-dimensional code C in the two-dimensional code C. Check the target information.
  • the output mechanism 209 outputs various information stored in the storage unit 204 or target information derived from the two-dimensional code C.
  • a display is used as the output mechanism 209.
  • the output mechanism 209 For example, in the case of a touch panel type, it is provided integrally with a character input unit, a screen selection unit, and the like of the input mechanism 208.
  • the two-dimensional code generator 1 may include a reading unit 21 and a derivation unit 22, and may include, for example, a storage unit 23 and an output unit 24.
  • Each function shown in FIG. 7B is realized by the CPU 201 executing a program stored in the storage unit 204 or the like using the RAM 203 as a work area.
  • the two-dimensional code evaluation device 2 is two-dimensional. Each function may be provided by installing a program for executing the code evaluation method. Further, for a part of each function, the two-dimensional code C may be evaluated by a method according to the above-mentioned target standard or known technology.
  • Reading unit 21 reads the two-dimensional code C.
  • the reading unit 21 reads the two-dimensional code C by, for example, imaging the two-dimensional code C via the input mechanism 208.
  • the reading unit 21 may acquire the data of the two-dimensional code C from the two-dimensional code generator 1 or the like via, for example, the communication network 4.
  • the derivation unit 22 derives the target information for the two-dimensional code C.
  • the derivation unit 22 refers to, for example, the arrangement conversion information, and from the plurality of data blocks (for example, FIG. 5B) based on the two-dimensional code C and the arrangement information, the plurality of data blocks before the arrangement information is replaced (for example, FIG. 5). (A)) and the arrangement information is extracted.
  • the derivation unit 22 derives the target information from the plurality of data blocks by, for example, a derivation method according to the target standard or the like.
  • the derivation unit 22 may derive the target information after converting the two-dimensional code C into the initial two-dimensional code by referring to, for example, the arrangement conversion information.
  • the derivation unit 22 derives the target information for at least one of the other related two-dimensional code C or the related other two-dimensional code based on the specific information associated with the target information for the two-dimensional code C, for example. You may do so. Further, the derivation unit 22 may derive the concealment information from the data block that stores the concealment information, for example, based on the specific information associated with the target information for the two-dimensional code C. Further, the derivation unit 22 may derive the authentication information from the data block that stores the authentication information, for example, based on the specific information associated with the target information for the two-dimensional code C.
  • the derivation unit 22 is referred to when the two-dimensional code C is generated, for example, based on at least one of the format information arranged in the formal information arrangement area FI of the two-dimensional code C and the model number information arranged in the model number information arrangement area VI.
  • the arrangement conversion information may be specified.
  • the two-dimensional code can be obtained by preserving at least one of the above-mentioned format information table, model number information table, table combining each table, and rules for exchanging arrangement information in the storage unit 204. Appropriate arrangement conversion information for C can be extracted and referred to. As a result, the limit of the terminal capable of evaluating the two-dimensional code C can be set in advance, and the confidentiality can be improved.
  • the derivation unit 22 may acquire the arrangement conversion information or the history information via the communication network 4. In this case, since the two-dimensional code evaluation device 2 does not need to store the arrangement conversion information in advance, it is possible to suppress an increase in the storage capacity of the two-dimensional code evaluation device 2.
  • the derivation unit 22 may acquire specific information via the communication network 4.
  • the derivation unit 22 may acquire specific information via the communication network 4.
  • the specific information includes information related to the replacement of the arrangement information
  • the two-dimensional code evaluation device 2 does not need to store the arrangement conversion information in advance, so that the increase in the storage capacity in the two-dimensional code evaluation device 2 is suppressed. can do.
  • the storage unit 23 retrieves various data such as information on the target standard, initial arrangement information, and arrangement conversion information stored in the storage unit 204 as needed.
  • the storage unit 23 stores various data acquired or generated by the configurations 21, 22, and 24 in the storage unit 204 as needed.
  • Output unit 24 The output unit 24 outputs the derived target information.
  • the output unit 24 may output other information based on the target information, for example, and the contents of the other information can be arbitrarily set in advance.
  • the output unit 24 may output the target information or information notifying that the target information has been derived to another terminal such as the two-dimensional code generator 1 via the communication network 4, for example.
  • the two-dimensional code evaluation device 2 may include, for example, at least one of the functions 11 to 15 provided in the two-dimensional code generation device 1, and the two-dimensional code generation device 1 includes the two-dimensional code evaluation device 2. It may have at least one of the functions 21 and 22.
  • the server 3 is connected to the two-dimensional code generation device 1, the two-dimensional code evaluation device 2, and the like via, for example, the communication network 4.
  • Various past data and the like are stored in the server 3, and various data are transmitted from the two-dimensional code generator 1 and the like as needed.
  • the server 3 may have at least a part of the functions provided by, for example, the two-dimensional code generator 1, and may perform at least a part of the functions instead of, for example, the two-dimensional code generator 1. ..
  • the server 3 stores at least a part of various data stored in the storage units 104 and 204 of, for example, the two-dimensional code generator 1, and may be used in place of the storage units 104 and 204, for example. In this case, the two-dimensional code generator 1 can store only the minimum amount of information, and can improve security.
  • the communication network 4 is, for example, an Internet network or the like to which a two-dimensional code generator 1, a two-dimensional code evaluation device 2, and the like are connected via a communication circuit.
  • the communication network 4 may be composed of a so-called optical fiber communication network. Further, the communication network 4 may be realized by a known communication network such as a wireless communication network in addition to the wired communication network.
  • FIG. 8A is a flowchart showing an example of an operation of generating the two-dimensional code C among the operations of the two-dimensional code system 100 in the present embodiment
  • FIG. 8B is a two-dimensional operation in the present embodiment. It is a flowchart which shows an example of the operation which evaluates a 2D code C among the operations of a code system 100.
  • the two-dimensional code system 100 includes acquisition means S110, generation means S120, setting means S130, replacement means S140, and two-dimensional code generation means S150, and includes, for example, reading means S210 and derivation means S220. May be good.
  • the acquisition unit 11 acquires the target information to be coded.
  • the acquisition unit 11 may acquire, for example, a plurality of pieces of information as target information.
  • the acquisition unit 11 may acquire specific information associated with the target information, for example.
  • the generation unit 12 In the generation means S120, for example, the generation unit 12 generates one or more data blocks based on the target information.
  • the generation unit 12 generates a plurality of data blocks based on the target information by, for example, a method according to the target standard.
  • the setting unit 13 sets the arrangement information for arranging as the initial two-dimensional code for each of the plurality of code data included in the configuration code words based on the initial arrangement information.
  • the setting means S130 may be performed at the same time as the generation means S120, for example.
  • the replacement unit 14 replaces the arrangement information set in the plurality of code data.
  • the total number of arrangement information before and after the replacement means S140 is the same, and the total number of each value (for example, 0 or 1) indicated by each code data is also the same. Therefore, by exchanging the arrangement information, the conventional technique can be used for the process of acquiring the external data, and the data capacity based on the target information included in the two-dimensional code C can be reduced to the conventional initial two. It can be equal to the data capacity based on the target information that can be set in the dimension code.
  • the replacement unit 14 may replace the arrangement information set in the code data within a range exceeding the number of error corrections in one or more data blocks, for example, among a plurality of data blocks.
  • the number of error corrections for example, those strictly defined in the target standard or the like are used.
  • the replacement unit 14 may replace the placement information set in the plurality of code data by referring to, for example, the placement conversion information based on at least one of the format information and the model number information.
  • the replacement unit 14 acquires at least one of a format information table, a model number information table, and a table in which each table is combined, which is stored in the storage unit 104, via, for example, the storage unit 16. Set and refer to the placement conversion information suitable for.
  • the replacement unit 14 may refer to, for example, the placement conversion information based on the specific information, and replace the placement information set in the plurality of code data.
  • the replacement unit 14 acquires the specific information table stored in the storage unit 104 via, for example, the storage unit 16, sets and refers to the arrangement conversion information suitable for each information.
  • the replacement unit 14 may refer to, for example, preset placement conversion information and replace the placement information set in the plurality of code data.
  • the replacement unit 14 acquires the arrangement conversion information stored in the storage unit 104, for example, via the storage unit 16, and refers to the arrangement conversion information.
  • the replacement unit 14 may replace the arrangement information at random, for example.
  • the replacement unit 14 stores the history information in the storage unit 104, for example, via the storage unit 16.
  • the replacement unit 14 may specify the arrangement information to be replaced, for example, based on the error correction code included in the data block.
  • the replacement unit 14 specifies the number of arrangement information to be replaced, for example, according to the number of code data included in the error correction code.
  • the replacement unit 14 may specify the placement information to be replaced based on the error correction code, for example, with reference to the placement conversion information. As a result, even when the number of code data included in each error correction code word is different, it is possible to replace the arrangement information suitable for the conditions such as the arrangement conversion information.
  • ⁇ Two-dimensional code generation means S150> the two-dimensional code generation unit 15 generates the two-dimensional code C based on the arrangement information replaced by the replacement means S140.
  • the two-dimensional code generation unit 15 generates the two-dimensional code C by, for example, a method according to the target standard.
  • the two-dimensional code generating means S150 generates the two-dimensional code C based on at least one of the model number and the format according to the target standard similar to those when the data block is generated by the generating means S120, for example.
  • the two-dimensional code generating means S150 may include the mask processing means S151, for example, as shown in FIG.
  • the mask processing means S151 inverts at least one part of the plurality of code data (changes the value from 0 to 1 or 1 to 0) based on, for example, preset mask information.
  • the processing can be different from the standard mask processing specified in the target standard, and the confidentiality can be further enhanced.
  • the mask information for example, information on the standard mask pattern in the target standard is used.
  • the output unit 17 outputs data for printing the two-dimensional code C to the output mechanism 109.
  • the two-dimensional code C can be printed on a paper medium or the like using the output mechanism 109.
  • the output unit 17 may output the arrangement conversion information or the history information referred to in the replacement means S140 to the two-dimensional code evaluation device 2 or the like via the communication network 4.
  • the reading unit 21 reads the two-dimensional code C.
  • the reading unit 21 takes an image of the two-dimensional code C printed on a paper medium or the like via, for example, the input mechanism 208, and reads the two-dimensional code C.
  • the derivation unit 22 derives the target information for the two-dimensional code C.
  • the derivation unit 22 refers to, for example, the arrangement conversion information or the history information, and derives the target information for the two-dimensional code C.
  • the derivation unit 22 may refer to, for example, the above-mentioned format information table or the like, and specify the arrangement conversion information referred to when the two-dimensional code C is generated.
  • the derivation unit 22 may acquire, for example, specific information transmitted from the two-dimensional code generator 1 or arrangement conversion information.
  • the output unit 24 outputs the derived target information to the output mechanism 209 or the like.
  • the setting means S130 described above may not be performed.
  • the arrangement information may be set in a plurality of code data by referring to the arrangement conversion information having the arrangement information setting order different from that of the target standard.
  • the acquisition means S110, generation means S120, setting means S130, replacement means S140, two-dimensional code generation means S150, and mask processing means S151 described above are the acquisition step S11 and the generation step of the two-dimensional code generation method in the present embodiment.
  • the reading means S210 and the derivation means S220 correspond to the reading step S21 and the two-dimensional code evaluation method reading step S21 in the present embodiment.
  • the derivation step S22 corresponds to the derivation step S22.
  • the two-dimensional code generation means S150 generates the two-dimensional code C based on the arrangement information replaced by the replacement means S140. Therefore, it is possible to perform unreadable processing associated with the replacement of the arrangement information while maintaining the data capacity based on the target information that can be set in the conventional two-dimensional code format. This makes it possible to suppress the capacity limitation of the information to be kept secret.
  • the derivation means S220 derives the target information for the two-dimensional code C. Therefore, it is possible to realize the derivation of the two-dimensional code C.
  • the two-dimensional code generation unit 15 generates the two-dimensional code C based on the arrangement information replaced by the replacement unit 14. Therefore, it is possible to perform unreadable processing associated with the replacement of the arrangement information while maintaining the data capacity based on the target information that can be set in the conventional two-dimensional code format. This makes it possible to suppress the capacity limitation of the information to be kept secret.
  • the derivation unit 22 derives the target information for the two-dimensional code C. Therefore, it is possible to realize the derivation of the two-dimensional code C.
  • the two-dimensional code generation step S15 generates the two-dimensional code C based on the arrangement information replaced by the replacement step S14. Therefore, it is possible to perform unreadable processing associated with the replacement of the arrangement information while maintaining the data capacity based on the target information that can be set in the conventional two-dimensional code format. This makes it possible to suppress the capacity limitation of the information to be kept secret.
  • the replacement step S14 provides the arrangement information set in the code data in a range exceeding the number of error corrections in one or more data blocks among the plurality of data blocks. Replace. Therefore, it is possible to make it more difficult to derive the generated two-dimensional code C by using the conventional two-dimensional code reading device. This makes it possible to increase the confidentiality of the target information.
  • the replacement step S14 refers to the placement conversion information having the information regarding the replacement of the placement information, and replaces the placement information set in the plurality of code data. Therefore, the derivation of the two-dimensional code C can be restricted only to a specific terminal (for example, the two-dimensional code evaluation device 2) having the arrangement conversion information. This makes it possible to further enhance the confidentiality of the target information.
  • the replacement step S14 refers to the arrangement conversion information based on at least one of the format information and the model number information, and obtains the arrangement information set in the plurality of code data. Replace. Therefore, the derivation of the two-dimensional code C can be restricted by using the format information or the model number information used at the time of the conventional two-dimensional code generation. This makes it possible to further enhance the confidentiality of the target information.
  • the replacement step S14 refers to the placement conversion information based on the specific information and replaces the placement information set in the plurality of code data. Therefore, the content of the specific information associated with the target information can be changed depending on the content of the target information to be concealed, and the derivation of the two-dimensional code C can be restricted according to the importance of concealment and the like. This makes it possible to easily change the degree of confidentiality of the target information.
  • the derivation step S22 refers to the arrangement conversion information and derives the target information for the two-dimensional code C. Therefore, it is possible to derive the two-dimensional code C using the arrangement conversion information.
  • the two-dimensional code C in the present embodiment it is possible to realize the two-dimensional code C that can suppress the capacity limitation of the information to be concealed.
  • the difference between the second embodiment and the first embodiment is that the initial two-dimensional code generation means S160 (initial two-dimensional code generation step S16) is further provided.
  • the description of the same configuration and contents as those of the first embodiment will be omitted.
  • the initial two-dimensional code is generated (FIG. 10 (b)). ..
  • the arrangement information for each code data is exchanged to generate a two-dimensional code C (FIG. 10 (c)).
  • the arrangement information determined by the two-dimensional code C is not exchanged, but the code data set in the arrangement information is exchanged.
  • the two-dimensional code C in the present embodiment can be shown in a state in which the entire coded region is unreadable.
  • the two-dimensional code generation method of the present embodiment it is possible to generate a highly confidential two-dimensional code C even when the initial two-dimensional code has already been generated by, for example, another terminal or the like.
  • the arrangement conversion information used in the present embodiment has, for example, information for changing the code data arranged at a specific position in the initial two-dimensional code to another position.
  • the code data set in the arrangement information “a” is replaced with the arrangement information “B”
  • the code data set in the arrangement information “B” is replaced with the arrangement information “f”. Indicates the information to be replaced with.
  • the position where each code data is arranged is changed as shown by the arrow shown in FIG. 11A.
  • the arrangement conversion information used in the present embodiment has information for replacing the code data arranged for each row or column with another row or column in, for example, the initial two-dimensional code.
  • the code data set in the arrangement information of the “x column” is replaced with the arrangement information of the “x + 1” column, and the code data set in the arrangement information of the “N column”. Indicates information to replace with "1 column”. As a result, the position where each code data is arranged is changed as shown by the arrow shown in FIG. 11B.
  • the arrangement conversion information used in the present embodiment has information that, for example, rotates the arrangement position of the code data in the initial two-dimensional code along a row or a column.
  • the arrangement conversion information is referred to, the arrangement information set in the code data is replaced by 10 turns (R1 to R10) from the initial two-dimensional code, and the arrangement is converted into the array of the two-dimensional code C. Shown.
  • the row or column targeted in each turn (R1 to R10) is indicated by a broken line frame, the degree of turn is indicated by an arrow, and the characters a to y indicate arrangement information.
  • numbers (1) to (25) are assigned to each code data in order to clarify the movement of the code data before and after turning.
  • the arrangement conversion information shown in FIG. 12 includes the row or column to be turned (for example, “row 1, 3, 5” or “column 1, 3, 5”, etc.) and the degree of turning (for example, “shift 3”, etc.). ) Is shown. That is, the rule of exchanging the arrangement information is used as the arrangement conversion information. Therefore, when exchanging the arrangement information, one arrangement conversion information can be used regardless of the format of the initial two-dimensional code. Further, the information used as the arrangement conversion information (replacement rule) can significantly reduce the data capacity as compared with the table for setting the arrangement conversion information. Thereby, the load of the storage capacity in the two-dimensional code generator 1 and the like can be reduced. Although the number of rotations is shown as 10 in FIG. 12, the number of rotations is arbitrary.
  • FIG. 13 is a flowchart showing an example of an operation of generating the two-dimensional code C among the operations of the two-dimensional code system 100 in the present embodiment.
  • the operation of evaluating the two-dimensional code C is the same as that of the above-described embodiment, and thus the description thereof will be omitted.
  • the two-dimensional code system 100 in the present embodiment further includes an initial two-dimensional code generating means S160.
  • the initial two-dimensional code generation means S160 after the setting means S130, for example, the two-dimensional code generation unit 15 generates an initial two-dimensional code based on the arrangement information set in each of the plurality of code data.
  • the two-dimensional code generation unit 15 generates an initial two-dimensional code by, for example, a method according to the target standard.
  • the replacement means S140 and the like are implemented in the same manner as in the above-described embodiment, and the operation of the two-dimensional code system 100 in the present embodiment is completed.
  • the two-dimensional code generating means S150 generates the two-dimensional code C, for example, based on at least one of the same model number and format as the initial two-dimensional code. Further, the two-dimensional code generating means S150 may include the mask processing means S151 described above. In this case, similarly to the above-described embodiment, when the two-dimensional code C is generated, the distribution of the light and dark modules based on the code data can be made uniform. In addition, the processing can be different from the standard mask processing specified in the target standard, and the confidentiality can be further improved.
  • the two-dimensional code generator 1 may acquire the initial two-dimensional code generated by the other terminal 9 and perform the processing after the replacement means S140.
  • the two-dimensional code generator 1 can read the initial two-dimensional code by, for example, including the above-mentioned reading unit 21, and for example, after deriving a data block from the initial two-dimensional code using a known technique, Processing such as the replacement means S140 may be performed.
  • the above-mentioned initial two-dimensional code generation means S160 corresponds to the initial two-dimensional code generation step S16 of the two-dimensional code generation method in the present embodiment.
  • the same mask processing as the mask processing means S151 described above may be performed.
  • the initial two-dimensional code generation step S16 corresponds to the initial arrangement information based on the arrangement information set in each of the plurality of code data after the setting step S13. Generate a two-dimensional code. Therefore, for example, even when the initial two-dimensional code is already generated by another terminal 9 or the like, the two-dimensional code with high confidentiality can be generated. This makes it possible to expand the conditions of data that can generate a two-dimensional code.
  • the arrangement conversion information has information that turns the arrangement position of the code data in the initial two-dimensional code along a row or a column. Therefore, when exchanging the arrangement information, one arrangement conversion information can be used regardless of the format of the initial two-dimensional code. This makes it easy to generate a two-dimensional code C with enhanced confidentiality for various initial two-dimensional code formats. Further, it is not necessary to set the arrangement information for each format of the initial two-dimensional code, and it is possible to enhance the confidentiality with the minimum information.
  • the two-dimensional code system 100 and the two-dimensional code generator 1 in the present embodiment can also obtain the same effects as those in the above-described embodiment.
  • Two-dimensional code generation device 2 Two-dimensional code evaluation device 3: Server 4: Communication network 9: Terminal 10: Housing 11: Acquisition unit 12: Generation unit 13: Setting unit 14: Replacement unit 15: Two-dimensional code generation Unit 16: Storage unit 17: Output unit 20: Housing 21: Reading unit 22: Derivation unit 23: Storage unit 24: Output unit 100: Two-dimensional code system 101: CPU 102: ROM 103: RAM 104: Preservation unit 105: I / F 106: I / F 107: I / F 108: Input mechanism 109: Output mechanism 110: Internal bus 201: CPU 202: ROM 203: RAM 204: Preservation unit 205: I / F 206: I / F 207: I / F 208: Input mechanism 209: Output mechanism 210: Internal bus S110: Acquisition means S120: Generation means S130: Setting means S140: Replacement means S150: Two-dimensional code generation means S151: Mask processing means S160: Initial two-dimensional code generation means S210: Reading means S220:

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Electromagnetism (AREA)
  • General Health & Medical Sciences (AREA)
  • Toxicology (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Storage Device Security (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

【課題】秘匿化する情報の容量制限を抑制することができる二次元コード生成方法、二次元コード評価方法、二次元コードシステム、二次元コード生成装置、二次元コード評価装置、二次元コード、及び二次元コードを提供する。 【解決手段】二次元コード生成方法は、取得ステップと、生成ステップと、設定ステップと、入れ替えステップと、二次元コード生成ステップとを備える。生成ステップは、対象情報に基づき、構成コード語を含むデータブロックを生成する。設定ステップは、予め設定された初期配置情報に基づき、構成コード語に含まれる複数の符号データのそれぞれに対し、初期二次元コードとして配置するための配置情報を設定する。入れ替えステップは、複数の符号データに設定された配置情報を入れ替える。二次元コード生成ステップは、入れ替えステップにより入れ替えられた配置情報に基づき、二次元コードを生成する。

Description

二次元コード生成方法、二次元コード評価方法、二次元コードシステム、二次元コード生成装置、及び二次元コード評価装置、及び二次元コード
  本発明は、二次元コード生成方法、二次元コード評価方法、二次元コードシステム、二次元コード生成装置、及び二次元コード評価装置、及び二次元コードに関する。
  近年、QRコード(登録商標)等の二次元コードにおいて、秘匿情報を隠蔽する方法が注目を集めており、例えば特許文献1に開示された二次元コード生成方法等が提案されている。
  特許文献1の開示技術では、第1の情報を含む情報本体と、終端符号と、パディングコード語とを有する第1データコード語と、前記第1データコード語の誤りを検出し訂正しうる誤り訂正コード語と、を含むデータブロックを求めることと、前記データブロックの一部を第2の情報を含む第2データコード語で置換した置換後データブロックを求めることと、前記置換後データブロックに基づいて二次元コードを生成することと、を含み、前記第2データコード語で置換する置換対象の中には、前記第1データコード語の前記情報本体又は前記誤り訂正コード語のどちらかが少なくとも含まれている。
特開2016-189197号公報
  ここで、特許文献1の開示技術では、第1データコード語及び誤り訂正コード語の一部を、第2データコード語(隠蔽情報語に相当)に置換することを前提としている。また、第2データコード語の置換は、データブロックの誤り訂正数を超えない範囲で行われる。即ち、第2データコード語数は、データブロックの誤り訂正数以下に制限される。このため、秘匿化する情報の容量制限が課題として挙げられる。
  そこで本発明は、上述した問題点に鑑みて案出されたものであり、その目的とするところは、秘匿化する情報の容量制限を抑制することができる二次元コード生成方法、二次元コード評価方法、二次元コードシステム、二次元コード生成装置、二次元コード評価装置、及び二次元コードを提供することにある。
  第1発明に係る二次元コード生成方法は、コード化の対象となる対象情報を取得する取得ステップと、前記対象情報の内容に基づき、構成コード語を含むデータブロックを生成する生成ステップと、予め設定された初期配置情報に基づき、前記構成コード語に含まれる複数の符号データのそれぞれに対し、初期二次元コードとして配置するための配置情報を設定する設定ステップと、複数の前記符号データに設定された前記配置情報を入れ替える入れ替えステップと、前記入れ替えステップにより入れ替えられた前記配置情報に基づき、二次元コードを生成する二次元コード生成ステップと、を備えることを特徴とする。
  第2発明に係る二次元コード生成方法は、第1発明において、前記入れ替えステップは、複数の前記データブロックのうち、1以上の前記データブロックにおける誤り訂正数を超える範囲で、前記符号データに設定された前記配置情報を入れ替えることを特徴とする。
  第3発明に係る二次元コード生成方法は、第2発明において、前記入れ替えステップは、前記配置情報の入れ替えに関する情報を有する配置変換情報を参照し、複数の前記符号データに設定された前記配置情報を入れ替えることを特徴とする。
  第4発明に係る二次元コード生成方法は、第2発明において、前記入れ替えステップは、前記初期二次元コード生成時に用いられる形式情報、及び型番情報の少なくとも何れかに基づく配置変換情報を参照し、複数の前記符号データに設定された前記配置情報を入れ替えることを特徴とする。
  第5発明に係る二次元コード生成方法は、第2発明において、前記取得ステップは、前記対象情報に紐づく特定情報を取得し、前記入れ替えステップは、前記特定情報に基づく配置変換情報を参照し、複数の前記符号データに設定された前記配置情報を入れ替えることを特徴とする。
  第6発明に係る二次元コード生成方法は、第3発明~第5発明の何れかにおいて、前記配置変換情報は、前記二次元コードから前記符号データを導出するときにおける前記配置情報の認識順序に関する情報を有することを特徴とする。
  第7発明に係る二次元コード生成方法は、第3発明~第5発明の何れかにおいて、前記配置変換情報は、1つの前記構成コード語に含まれる複数の前記符号データに設定された前記配置情報を入れ替える情報を有することを特徴とする。
  第8発明に係る二次元コード生成方法は、第3発明~第5発明の何れかにおいて、前記配置変換情報は、複数の前記構成コード語のうち、第1構成コード語に含まれる前記符号データに設定された第1配置情報を、第2構成コード語に含まれる前記符号データに設定された第2配置情報に入れ替える情報を有することを特徴とする。
  第9発明に係る二次元コード生成方法は、第3発明~第5発明の何れかにおいて、前記設定ステップのあと、複数の前記符号データのそれぞれに設定された前記配置情報に基づき、前記初期二次元コードを生成する初期二次元コード生成ステップを更に備えることを特徴とする。
  第10発明に係る二次元コード生成方法は、第9発明において、前記配置変換情報は、前記初期二次元コードにおいて特定の位置に配置された前記符号データを、他の位置に変更する情報を有することを特徴とする。
  第11発明に係る二次元コード生成方法は、第9発明において、前記配置変換情報は、前記初期二次元コードにおいて、行毎又は列毎に配置された前記符号データを、他の行又は列に変更する情報を有することを特徴とする。
  第12発明に係る二次元コード生成方法は、第9発明において、前記配置変換情報は、前記初期二次元コードにおける前記符号データの配置された位置を、行又は列に沿って転回する情報を有することを特徴とする。
  第13発明に係る二次元コード生成方法は、第3発明~第12発明の何れかにおいて、前記二次元コード生成ステップは、予め設定されたマスク情報に基づき、複数の前記符号データのうち少なくとも一部を反転させるマスク処理ステップを有することを特徴とする。
  第14発明に係る二次元コード生成方法は、第3発明~第13発明の何れかにおいて、前記入れ替えステップは、前記データブロックに含まれる誤り訂正コード語に基づき、入れ替えを行う前記配置情報を特定することを特徴とする。
  第15発明に係る二次元コード生成方法は、第3発明~第14発明の何れかにおいて、前記二次元コードの形式は、QRコードの形式であることを特徴とする。
  第16発明に係る二次元コード評価方法は、第3発明~第15発明の何れかにおける二次元コード生成方法によって生成された前記二次元コードを評価する二次元コード評価方法であって、前記二次元コードを読取る読取りステップと、前記配置変換情報を参照し、前記二次元コードに対する前記対象情報を導出する導出ステップとを備えることを特徴とする。
  第17発明に係る二次元コードシステムは、コード化の対象となる対象情報を取得する取得手段と、前記対象情報の内容に基づき、構成コード語を含むデータブロックを生成する生成手段と、予め設定された初期配置情報に基づき、前記構成コード語に含まれる複数の符号データのそれぞれに対し、初期二次元コードとして配置するための配置情報を設定する設定手段と、複数の前記符号データに設定された前記配置情報を入れ替える入れ替え手段と、前記入れ替え手段により入れ替えられた前記配置情報に基づき、二次元コードを生成する二次元コード生成手段と、を備えることを特徴とする。
  第18発明に係る二次元コードシステムは、第17発明において、前記二次元コードを読取る読取り手段と、前記二次元コードに対する前記対象情報を導出する導出手段とをさらに備えることを特徴とする。
  第19発明に係る二次元コード生成装置は、コード化の対象となる対象情報を取得する取得部と、前記対象情報の内容に基づき、構成コード語を含むデータブロックを生成する生成部と、予め設定された初期配置情報に基づき、前記構成コード語に含まれる複数の符号データのそれぞれに対し、初期二次元コードとして配置するための配置情報を設定する設定部と、複数の前記符号データに設定された前記配置情報を入れ替える入れ替え部と、前記入れ替え部により入れ替えられた前記配置情報に基づき、二次元コードを生成する二次元コード生成部と、を備えることを特徴とする。
  第20発明に係る二次元コード評価装置は、第19発明における二次元コード生成装置によって生成された前記二次元コードを評価する二次元コード評価装置であって、前記二次元コードを読取る読取り部と、前記二次元コードに対する前記対象情報を導出する導出部とを備えることを特徴とする。
 第21発明に係る二次元コードは、第1~16発明の何れか1項記載の二次元コード生成方法によって生成されたことを特徴とする。
  第1発明~第15発明によれば、二次元コード生成ステップは、入れ替えステップにより入れ替えられた配置情報に基づき、二次元コードを生成する。このため、従来の二次元コードの形式に設定できる対象情報に基づくデータ容量を維持した状態で、配置情報の入れ替えに伴う非可読処理を行うことができる。これにより、秘匿化する情報の容量制限を抑制することが可能となる。
  特に、第2発明によれば、入れ替えステップは、複数のデータブロックのうち、1以上のデータブロックにおける誤り訂正数を超える範囲で、符号データに設定された配置情報を入れ替える。このため、従来の二次元コード読取り装置を用いて、生成された二次元コードの導出をさらに難しくすることができる。これにより、対象情報の秘匿性を高めることが可能となる。
  特に、第3発明によれば、入れ替えステップは、配置情報の入れ替えに関する情報を有する配置変換情報を参照し、複数の符号データに設定された配置情報を入れ替える。このため、配置変換情報を有する特定の端末のみに、二次元コードの導出を制限することができる。これにより、対象情報の秘匿性を更に高めることが可能となる。
  特に、第4発明によれば、入れ替えステップは、形式情報、及び型番情報の少なくとも何れかに基づく配置変換情報を参照し、複数の符号データに設定された配置情報を入れ替える。このため、従来の二次元コード生成時に用いられる形式情報又は型番情報を利用して、二次元コードの導出を制限することができる。これにより、対象情報の秘匿性を更に高めることが可能となる。
  特に、第5発明によれば、入れ替えステップは、特定情報に基づく配置変換情報を参照し、複数の符号データに設定された配置情報を入れ替える。このため、秘匿化する対象情報の内容によって、対象情報に紐づく特定情報の内容を変えることができ、秘匿化の重要度等に応じて二次元コードの導出を制限することができる。これにより、対象情報における秘匿性の度合いを容易に変更することが可能となる。
  特に、第9発明によれば、初期二次元コード生成ステップは、設定ステップのあと、複数の符号データのそれぞれに設定された配置情報に基づき、初期配置情報に対応する初期二次元コードを生成する。このため、例えば他の端末等によって既に初期二次元コードが生成された場合においても、秘匿性の高い二次元コードを生成することができる。これにより、二次元コードを生成できるデータの条件を拡大させることが可能となる。
  特に、第12発明によれば、配置変換情報は、初期二次元コードにおける符号データの配置された位置を、行又は列に沿って転回する情報を有する。このため、配置情報を入れ替える際、初期二次元コードの形式に関わらず1つの配置変換情報を用いることができる。これにより、様々な初期二次元コードの形式に対して、秘匿性を高めた二次元コードCを生成することが容易となる。また、初期二次元コードの形式毎に配置情報を設定する必要がなく、最小限の情報により、秘匿性を高めることが可能となる。
  特に、第16発明によれば、導出ステップは、配置変換情報を参照し、二次元コードに対する対象情報を導出する。このため、配置変換情報を用いた二次元コードの導出を実現することが可能となる。
  第17発明及び第18発明によれば、二次元コード生成手段は、入れ替え手段により入れ替えられた配置情報に基づき、二次元コードを生成する。このため、従来の二次元コードの形式に設定できる対象情報に基づくデータ容量を維持した状態で、配置情報の入れ替えに伴う非可読処理を行うことができる。これにより、秘匿化する情報の容量制限を抑制することが可能となる。
  特に、第18発明によれば、導出手段は、二次元コードに対する対象情報を導出する。このため、二次元コードの導出を実現することが可能となる。
  第19発明によれば、二次元コード生成部は、入れ替え部により入れ替えられた配置情報に基づき、二次元コードを生成する。このため、従来の二次元コードの形式に設定できる対象情報に基づくデータ容量を維持した状態で、配置情報の入れ替えに伴う非可読処理を行うことができる。これにより、秘匿化する情報の容量制限を抑制することが可能となる。
  特に、第20発明によれば、導出部は、二次元コードに対する対象情報を導出する。このため、二次元コードの導出を実現することが可能となる。
 第21発明によれば、二次元コードは、第1~16発明の何れか1項記載の二次元コード生成方法によって生成される。これにより、秘匿化する情報の容量制限を抑制することが可能となる。さらに、対象情報の秘匿性を高めることが可能となる。
図1は、第1実施形態における二次元コードの一例を示す模式図である。 図2は、第1実施形態における二次元コードシステム100の一例を示す模式図である。 図3は、第1実施形態における二次元コード生成方法、及び二次元コード評価方法の一例を示す模式図である。 図4(a)は、第1実施形態における二次元コード生成装置の構成の一例を示す模式図であり、図4(b)は、第1実施形態における二次元コード生成装置の機能の一例を示す模式図である。 図5(a)は、配置情報の一例を示す模式図であり、図5(b)は、入れ替えたあとの配置情報の一例を示す模式図である。 図6(a)は、入れ替え前後における配置情報の一例を示す模式図であり、図6(b)は、配置変換情報の一例を示す模式図である。 図7(a)は、第1実施形態における二次元コード評価装置の構成の一例を示す模式図であり、図7(b)は、第1実施形態における二次元コード評価装置の機能の一例を示す模式図である。 図8(a)及び図8(b)は、第1実施形態における二次元コードシステムの動作の一例を示すフローチャートである。 図9は、第1実施形態における二次元コードシステムの動作の変形例を示すフローチャートである。 図10(a)~図10(c)は、第2実施形態における二次元コード生成方法の一例を示す模式図である。 図11(a)は、第2実施形態における配置変換情報の一例を示す模式図であり、図11(b)は、第2実施形態における配置変換情報の第1変形例を示す模式図である。 図12は、第2実施形態における配置変換情報の第2変形例を示す模式図である。 図13は、第2実施形態における二次元コードシステムの動作の一例を示すフローチャートである。
  以下、本発明を適用した実施形態における二次元コード生成方法、二次元コード評価方法、二次元コードシステム、二次元コード生成装置、二次元コード評価装置、及び二次元コードの一例について、図面を参照しながら説明する。
(第1実施形態)
  図1~図3を参照し、第1実施形態における二次元コードC、二次元コードシステム100、二次元コード生成装置1、二次元コード評価装置2、二次元コード生成方法、及び二次元コード評価方法の一例について説明する。図1は、本実施形態における二次元コードの一例を示す模式図である。図2は、本実施形態における二次元コードシステム100の一例を示す模式図である。図3は、本実施形態における二次元コード生成方法、及び二次元コード評価方法の一例を示す模式図である。
  <二次元コードC>
  本実施形態における二次元コードCは、QRコード(登録商標)の形式を示すほか、例えばデータマトリックススコード、マキシコード、ベリコード、又はCPコード等のマトリックス式の二次元コードの形式や、スタック式の二次元コードの形式のような、公知の二次元コードの形式を示してもよい。なお、「形式」とは、情報ビットを表す明暗モジュールなどの配置に関する外形的準拠規約のことを示すほか、与えられた準拠規約の中で情報容量などに応じて設定される型番などのコードの外形的規模のことを示す。
  二次元コードCの生成方法及び評価方法の一部は、例えばJIS X 0510:2018「情報技術-自動認識及びデータ取得技術-QRコード  バーコードシンボル体系仕様」や、ISO/IEC 18004:2015「情報技術-自動識別及びデータ収集技術-QRコードバーコード記号仕様」等の準拠規約に準じてもよい。以下、二次元コードの形式に関する公知の規格を、対象規格とする。
  二次元コードCは、例えば図1に示すように、型番「2」のQRコードシンボルに基づいて生成されるほか、コード化される対象情報の内容や、二次元コードCの用途に応じて任意の型番や、任意の二次元コードの形式に基づいて生成されてもよい。
  二次元コードCは、例えば機能パターンと、符号化領域とを有する。機能パターンは、二次元コードCにおける位置の検索や特性の識別(外形的なデータを取得する処理)に必要なパターンを示し、例えば二次元コードCのモジュール内での符号化を補助するために用いられる。符号化領域は、必要となる情報が書き込まれる領域を示す。
  機能パターンは、例えば位置検出パターンFP、分離パターンSP、タイミングパターンTP、位置合わせパターンAP、及びクワイエットゾーンQZを有する。
  位置検出パターンFPは、二次元コードCの少なくとも3つの隅に配置されるパターンを示す。例えば読取り時において、3つの位置検出パターンFPを識別することで、二次元コードCの方向や位置を正しく認識することができる。
  分離パターンSPは、位置検出パターンFPの周りに配置される1モジュール幅の明モジュールである。分離パターンSPを配置することで、位置検出パターンFPを機能パターン等から区別させることができる。
  タイミングパターンTPは、暗モジュールと明モジュールとを1モジュールMずつ直線状に交互に配置されたパターンである。タイミングパターンTPによって、二次元コードCにおけるモジュールMの数を認識可能となるため、例えばQRコードの型番を識別することができる。なお、モジュールMは、二次元コードCを構成する単位セルである。例えば、1ビットが1モジュールに相当する。
  位置合わせパターンAPは、QRコードの型番によって決められた位置に配置されるパターンである。位置合わせパターンAPは、例えば二次元コードCにおける位置の検索を補助する。
  クワイエットゾーンQZは、QRコードの周囲に設けられる最低4モジュール幅の明モジュール領域である。
  符号化領域は、例えばデータコード語配置領域DPと、誤り訂正コード語配置領域EPと、形式情報配置領域FIとを有する。例えば符号化領域は、型番情報配置領域VIを有してもよい。なお、型番情報配置領域VIは、例えば型番の大きなQRコードを用いる場合に有し、例えば図1に示す型番「2」のQRコードは、型番情報配置領域VIを有しない。
  データコード語配置領域DP、及び誤り訂正コード語配置菱位にEPには、実際のデータ(対象情報)に基づき生成された構成コード語が配置される。構成コード語は、データコード語と、誤り訂正コード語(以下、訂正コードとする)とを含む。
  データコード語配置領域DPには、対象情報の内容に基づき生成されたデータコード語が配置される。誤り訂正コード語配置領域EPには、データを導出できなかった場合に用いられる訂正コード語が配置される。データが導出できない場合として、例えば構成コード語に対応する部分に汚損などによる不明瞭部や欠落部が発生した場合が挙げられる。
  なお、本実施形態における二次元コードCでは、例えばデータコード語配置領域DPに訂正コード語が配置され、誤り訂正コード語配置領域EPにデータコード語が配置されてもよい。即ち、データコード語配置領域DP及び誤り訂正コード語配置領域EPは、対象規格等の従来技術により定められた領域を示す。
  例えば上述した対象規格では、データコード語配置領域DP及び誤り訂正コード語配置領域EPにおいて、データコード語及びデータコード語の配置順序(初期配置情報)が設定されている(例えば対象規格等の規則によって構成コード語を含むRSブロックに基づき、位置D1、位置D2、・・・、位置D28の順にデータコード語を配置し、位置E1、位置E2、・・・、位置E16の順に訂正コード語を配置する等)。このため、対象規格に準ずる処理を行うことで、従来の二次元コード(初期二次元コード)を生成することができる。これにより、対象規格に基づく汎用の読取り装置等を用いて、初期二次元コードからデータの導出(デコード)が行われる。
  これに対し、本実施形態における二次元コードCでは、例えば構成コード語を、対象規格等において設定されたデータコード語配置領域DP、及び誤り訂正コード語配置領域EPとは異なる配置順序や配置領域に配置することができる。この場合、対象規格に基づく汎用の読取り装置等を用いて、データの導出(デコード)を防止することができる。このため、本実施形態における二次元コードCは、符号化領域全体に対して非可読処理を施した状態(対象情報を秘匿化した状態)で示すことができる。これにより、従来に比べて秘匿化する対象情報の容量制限を抑制することが可能となる。
  形式情報配置領域FIには、符号化領域を復号化するときに必要な形式情報が配置される。形式情報配置領域FIには、二次元コードCに適用する誤り訂正レベルに関する情報が配置され、例えば使用した標準マスクパターンに関する情報が配置されてもよい。即ち、形式情報は、例えば誤り訂正レベルに関する情報と、標準マスクパターン(例えば対象規格におけるマスクパターン)に関する情報とを有する。
  型番情報配置領域VIには、例えば7型以上のQRコードに付与される型番情報が配置される。型番情報配置領域VIは、例えばタイミングパターンTPの上側で、右上位置検出パターンFPに隣接する分離パターンSPのすぐ左、及びタイミングパターンTPの左側で、左下位置検出パターンFPに隣接する分離パターンSPのすぐ上の領域を示す。
  <二次元コードシステム100、二次元コード生成方法、二次元コード評価方法>
  二次元コードシステム100は、二次元コードCを生成するために用いられ、例えば二次元コードCを評価するために用いられてもよい。二次元コードシステム100は、例えば図2に示すように、二次元コード生成装置1を備える。二次元コードシステム100は、例えば二次元コード評価装置2を備えてもよいほか、例えばサーバ3を備えてもよい。二次元コード生成装置1、二次元コード評価装置2、及びサーバ3は、例えば必要に応じて通信網4を介して接続される。
  二次元コードシステム100では、例えば図3に示す二次元コード生成方法(エンコード処理)、及び二次元コード評価方法(デコード処理)を実施することができる。
  二次元コード生成方法では、例えば二次元コード生成装置1が文字列(コード化の対象となる対象情報)を取得する。二次元コード生成装置1は、対象情報に基づくRSブロック(リードソロモンブロック:以下、データブロックとして説明する)を1以上生成し、各データブロックに含まれる複数の符号データに対し、例えば対象規格に基づく配置情報を設定する。二次元コード生成装置1は、各符号データに設定された配置情報を入れ替えたあと、二次元コードCを生成する。これにより二次元コードCが生成される。二次元コード生成装置1により生成された二次元コードCは、例えば紙媒体等に印刷されることで、出力することができる。
  二次元コード評価方法では、例えば二次元コード評価装置2が、二次元コードCを読取り、対象情報を導出する。これにより、二次元コード評価装置2を保有するユーザ等が、対象情報を認識することができる。なお、二次元コード評価装置2とは異なる端末9(例えば汎用の読取り装置)では、二次元コードCを読取る(外形的なデータを取得する処理)ことは可能であるが、読取った二次元コードCから対象情報を導出することができない。即ち、二次元コードCは、端末9を用いた対象情報の導出を、防止することができる。このため、例えば特定のユーザのみに対し、対象情報を報知することができる。
  <二次元コード生成装置1>
  次に、図4を参照して、本実施形態における二次元コード生成装置1の一例を説明する。図4(a)は、本実施形態における二次元コード生成装置1の構成の一例を示す模式図であり、図4(b)は、本実施形態における二次元コード生成装置1の機能の一例を示す模式図である。
  二次元コード生成装置1として、例えばラップトップ(ノート)PC、デスクトップPC、スマートフォン、タブレット端末等の電子機器が用いられる。二次元コード生成装置1は、例えば図4(a)に示すように、筐体10と、CPU(Central Processing Unit)101と、ROM(Read Only Memory)102と、RAM(Random Access Memory)103と、保存部104と、I/F105~107と、入力機構108と、出力機構109とを備える。各構成101~107は、内部バス110により接続される。
  CPU101は、二次元コード生成装置1全体を制御する。ROM102は、CPU101の動作コードを格納する。RAM103は、CPU101の動作時に使用される作業領域である。保存部104は、対象規格に関する情報等の各種情報が記憶される。保存部104として、例えばHDD(Hard Disk Drive)のほか、SSD(Solid State Drive)等のデータ保存装置が用いられる。
  I/F105は、通信網4を介して、必要に応じて二次元コード評価装置2や、サーバ3等との各種情報の送受信を行うためのインターフェースである。I/F106は、入力機構108との情報の送受信を行うためのインターフェースである。I/F107は、出力機構109との各種情報の送受信を行うためのインターフェースである。
  入力機構108として、例えばキーボードが用いられ、二次元コード生成装置1の使用者等は、入力機構108を介して、二次元コードCに含めたい情報(対象情報)や、二次元コード生成装置1の制御コマンド等を入力する。
  出力機構109は、保存部104に保存された各種情報、又は二次元コードC等を出力する。出力機構109として、ディスプレイが用いられ、例えばタッチパネル式の場合、入力機構108と一体に設けられる。出力機構109として、例えばプリンター等のような公知の印刷装置が用いられ、紙媒体に二次元コードCを印刷できるようにしてもよい。
  二次元コード生成装置1は、例えば図4(b)に示すように、取得部11と、生成部12と、設定部13と、入れ替え部14と、二次元コード生成部15とを備え、例えば記憶部16と、出力部17とを備えてもよい。なお、図4(b)に示した各機能は、CPU101が、RAM103を作業領域として、保存部104等に記憶されたプログラムを実行することにより実現され、例えば二次元コード生成装置1が二次元コード生成方法を実行するためのプログラムをインストールすることで、各機能を備えてもよい。また、各機能の一部は、上述した対象規格や公知技術に準ずる方法により、二次元コードCを生成(エンコード)してもよい。
  <<取得部11>>
  取得部11は、対象情報を取得する。取得部11は、例えば入力機構108から入力された対象情報を取得するほか、例えば通信網4を介して二次元コード評価装置2や他の端末9等から、対象情報を取得してもよい。
  取得部11は、例えば対象情報に紐づく特定情報を取得する。取得部11は、例えば対象情報と同時に取得するほか、例えば対象情報とは異なるタイミングでもよく、端末情報とは異なる経路(例えば対象情報は端末9から取得し、特定情報は入力機構108を介して取得)から取得してもよい。特定情報は、例えばパスワードや、対象情報に対する秘匿レベル等の秘匿に関する情報を含むほか、例えば二次元コードCを利用したサービスのユーザIDや、ユーザ端末に関する情報を含む。
 特定情報は、例えば複数のコード(符号化された設定情報)を含んでもよい。複数のコードは、例えば二次元コードCの識別方法に関する角度、表裏、配置、拡大縮小、色彩等の各種の識別情報であってもよい。また複数のコードは、例えば各々に順番を示す順番情報であってもよい。また複数のコードは、例えば二次元コードCの当たり、はずれを示す正誤情報であってもよい。また複数のコードは、例えば隠蔽格納部分に格納される隠蔽情報または認証情報であってもよい。また複数のコードは、例えば関連する他の二次元コードC、又はグループ間の情報であってもよい。
  <<生成部12>>
  生成部12は、対象情報に基づき、構成コード語を含むデータブロックを1以上生成する。構成コードは、データコード語と、訂正コード語とを含み、例えばデータブロックは、図5(a)に示すブロック1、ブロック2のように生成される。
 生成部12は、対象情報に紐づく特定情報に基づき、構成データ語を含むデータブロックを、例えば隠蔽情報または認証情報として格納するデータブロックを隠蔽格納部分として生成してもよい。
  データコード語及び訂正コード語は、複数の符号データを含む。符号データは、例えば0又は1の2値で示される。なお、図5(a)等に示すデータブロックは一例であり、例えば対象規格に準ずる方法により、データコード語及び訂正コード語に含まれる符号データの数、並びにデータブロックの数を設定することができる。
  データコード語は、例えば情報本体と、終端符号と、パディングコード語とを含み、それぞれ符号データによって表される。情報本体は、コード化の対象となる対象情報に基づき生成される。終端符号は、情報本体の終端を示す符号である。パディングコード語は、情報本体のコード語の総数が二次元コードCの容量に満たない場合、空のコード語部分を補充する目的で用いられる仮のコード語(埋め草コード語)である。
  訂正コード語は、例えばRS(リード・ソロモン)符号を含み、符号データによって表される。RS符号は、データブロックを単位として、誤り訂正するために用いられる符号である。
  <<設定部13>>
  設定部13は、予め設定された初期配置情報に基づき、複数の符号データのそれぞれに対し、初期二次元コードとして配置するための配置情報を設定する。初期配置情報は、例えば対象規格における各符号データの配置順序に関する情報を示す。配置情報は、例えば図1に示したデータコード語配置領域DP、及び誤り訂正コード語配置領域EPに示した配置順序に従って、各符号データに設定される。
  例えば、ブロック1のデータコード語に含まれる符号データには、位置D1に対応する配置情報a、b、c、d、eが設定され、ブロック2のデータコード語に含まれる符号データには、位置D2に対応する配置情報f、g、h、i、jが設定される。また、例えばブロック1の訂正コード語に含まれる符号データには、位置E1に対応する配置情報A、B、C、Dが設定され、ブロック2の訂正コード語に含まれる符号データには、位置E2に対応する配置情報E、F、G、Hが設定される。
  <<入れ替え部14>>
  入れ替え部14は、複数の符号データに設定された配置情報を入れ替える。入れ替え部14は、例えば構成コード語に含まれる各符号データに設定された配置情報を、複数の構成コードに亘って入れ替えるほか、1つの構成コード語内で入れ替えてもよい。
  入れ替え部14は、例えば複数のデータコード語に含まれる各符号データに設定された配置情報を入れ替えるほか、例えば複数の訂正コード語に含まれる各符号データに設定された配置情報を入れ替えてもよい。入れ替え部14は、例えば複数のデータブロックに含まれる符号データに設定された配置情報を入れ替えてもよく、例えばデータコード語に含まれる符号データに設定された配置情報と、訂正コード語に含まれる符号データに設定された配置情報とを入れ替えてもよい。即ち、入れ替え部14は、XOR演算によるもの等のような符号データの値を反転させる処理とは異なり、配置情報を対象とした入れ替え処理を行う。
  例えば図5(b)に示すように、入れ替え部14は、複数の符号データに設定された配置情報のうち、少なくとも一部の配置情報を入れ替えてもよく、図5(b)では入れ替えた配置情報を、下線付き斜体で示す。
  例えば入れ替え部14は、複数のデータブロックのうち、1以上のデータブロックにおける誤り訂正数を超える範囲で、符号データに設定された配置情報を入れ替えてもよい。この場合、従来の二次元コード読取り装置(例えば端末9)を用いて、生成された二次元コードの導出をさらに難しくすることができる。
  例えば入れ替え部14は、配置変換情報を参照し、複数の符号データに設定された配置情報を入れ替えてもよい。配置変換情報は、配置情報の入れ替えに関する情報を有し、上述した対象規格に示された内容(初期配置情報)とは異なる配置の設定に関する情報を有する。
  配置変換情報は、例えば形式情報に基づき設定される。入れ替え部14は、例えば複数の形式情報と、各形式情報に対する配置情報の入れ替えに関する情報(例えば入れ替えのルールや、入れ替える対象を特定する情報)とを紐づけた形式情報用テーブルを参照し、配置変換情報を設定してもよい。この場合、入れ替え部14は、生成部12により生成されたデータブロック等の形式に対応する形式情報に基づき、形式情報に対する配置変換情報を設定する。なお、形式情報用テーブルは、例えば保存部104に予め保存され、必要に応じて取出される。
  なお、配置変換情報は、例えば形式情報に含まれる複数のデータのうち、少なくとも一部に基づき設定されてもよい。例えば形式情報に含まれる複数のデータのうち、任意のnビットに相当する情報を、配置変換情報に紐づけてもよく、この場合、形式情報を15ビット×2とすると、(15n2通りの変換パターンを定義できる。これにより、例えば複数の二次元コード生成装置1を用いた場合、各二次元コード生成装置1が互いに異なる形式情報のnビットに相当する情報に基づき配置変換情報を選択することで、同一の形式情報に対してそれぞれ異なる配置変換情報を参照した二次元コードCの生成を実現することができる。
  配置変換情報は、例えば型番情報に基づき設定される。入れ替え部14は、例えば複数の型番情報と、各型番情報に対する配置情報の入れ替えに関する情報とを紐づけた型番情報用テーブルを参照し、配置変換情報を設定してもよい。この場合、入れ替え部14は、生成部12により生成されたデータブロック等の形式に対応する型番情報に基づき、型番情報に対する配置変換情報を設定する。なお、型番情報用テーブルは、例えば保存部104に予め保存され、必要に応じて取出される。
  なお、配置変換情報は、例えば型番情報に含まれる複数のデータのうち、少なくとも一部に基づき設定されてもよい。例えば型番情報に含まれる複数のデータのうち、任意のnビットに相当する情報を、配置変換情報に紐づけてもよい。これにより、例えば複数の二次元コード生成装置1を用いた場合、各二次元コード生成装置1が互いに異なる型番情報のnビットに相当する情報に基づき配置変換情報を選択することで、同一の型番情報に対してそれぞれ異なる配置変換情報を参照した二次元コードCの生成を実現することができる。
  なお、例えば配置変換情報は、形式情報及び型番情報に基づき設定されてもよい。この場合、上述した形式情報用テーブル、及び型番情報用テーブルを参照するほか、例えば各テーブルを組み合わせたテーブルを参照してもよい。
  配置変換情報は、例えば特定情報に基づき設定されてもよい。入れ替え部14は、例えば複数の特定情報と、各特定情報に対する配置情報の入れ替えに関する情報とを紐づけた特定情報用テーブルを参照し、配置変換情報を設定してもよい。なお、特定情報用テーブルは、例えば保存部104に予め保存され、必要に応じて取出される。
  上記のほか、例えば特定情報は、配置情報の入れ替えに関する情報を含んでもよい。この場合、入れ替え部14は、特定情報から配置情報の入れ替えに関する情報を抽出し、配置変換情報として設定する。また、特定情報は、配置変換情報を含んでもよい。
  配置変換情報は、例えば予め設定されてもよい。この場合、配置変換情報は、例えば保存部104に保存され、必要に応じて取出される。特に、配置変換情報として、配置情報を入れ替えるルールが用いられる場合、二次元コードの形式に関わらず1つの配置変換情報を用いることができる。このため、保存部104等に保存するデータ容量を最小限に抑えることができる。なお、配置情報を入れ替えるルールとして、例えば1つのデータブロック内における複数の配置情報を転回し、それぞれ紐づく符号データを入れ替えるルールが用いられる。
  配置変換情報は、例えば1つの構成コード語に含まれる複数の符号データに設定された配置情報を入れ替える情報を有する。配置変換情報は、例えば1つのデータコード語のうち、少なくとも一部に含まれる複数の符号データに設定された配置情報を入れ替える情報を有する。また、配置変換情報は、例えば1つの構成コードに含まれるデータコード語及び訂正コード語のうち、少なくとも一部に含まれる複数の符号データに設定された配置情報を入れ替える情報を有してもよい。
  配置変換情報を参照することで、例えば二次元コードCから対象情報を導出する際、配置変換情報を参照することで、容易に対象情報を導出することが可能となる。また、配置変換情報を特定の端末(例えば二次元コード評価装置2)のみに記憶させることで、他の端末9を用いた対象情報の導出が困難となり、対象情報の秘匿性を向上させることが可能となる。
  配置変換情報は、例えば複数の構成コード語のうち、1つの構成コード語(第1構成コード語)に含まれる符号データに設定された配置情報(第1配置情報)を、他の構成コード語(第2構成コード語)に含まれる符号データに設定された配置情報(第2配置情報)に入れ替える情報を有する。この場合、生成される二次元コードCの秘匿性を向上させることができる。なお、入れ替えの対象となる各配置情報が、データコード語及び訂正コード語の何れかに含まれるかは、任意である。
  配置情報は、例えば複数のデータコード語のうち、1つのデータコード語(第1データコード語)に含まれる全ての符号データに設定された配置情報を、他のデータコード語(第2データコード語)に含まれる符号データに設定された配置情報に入れ替える情報を有する。このとき、第1データコード語に含まれる符号データの数は、第2データコード語に含まれる符号データの数以下である。
  この場合、例えば図6(a)に示すように、入れ替え部14は、第1データコード語に含まれる符号データに設定された配置情報a、b、c、d、eを、第2データコード語に含まれる符号データに設定された配置情報f、g、h、i、jに入れ替える。このとき、例えば第2データコード語に含まれる符号データに設定される配置情報は、配置情報a、b、c、d、eのほか、例えば他のデータコード語に含まれる符号データに設定された配置情報に入れ替えてもよい。なお、上述した複数の「データコード語」の代わりに、複数の「訂正コード語」を用いた場合も同様のため、説明を省略する。
  例えば、第1データコード語に含まれる全ての符号データに設定された配置情報を、1つの訂正コード語に含まれる符号データに設定された配置情報に入れ替えてもよい。このとき、第1データコード語に含まれる符号データの数は、1つの訂正コード語に含まれる符号データの数以下である。また、例えば1つの訂正コード語に含まれる全ての符号データに設定された配置情報を、第1データコード語に含まれる符号データに設定された配置情報に入れ替えてもよい。このとき、1つの訂正コード語に含まれる符号データの数は、第1データコード語に含まれる符号データの数以下である。
  配置変換情報は、例えば二次元コードCから符号データを導出するときにおける配置情報の認識順序に関する情報を有する。即ち、配置変換情報は、従来とは異なる配置情報の認識順序に関する情報を有する。このため、入れ替え部14は、配置変換情報の有する配置情報の認識順序に従って、各符号データに設定された配置情報を入れ替える。
  この場合、例えば図6(b)に示すように、従来の配置情報の認識順序が、「1番目に認識する符号データ:配置情報「a(1行1列)」、2番目に認識する符号データ:配置情報「b(1行2列)」・・・」である場合、配置変換情報の有する配置情報の認識順序が、「1番目に認識する符号データ:配置情報「h(2行1列)」、2番目に認識する符号データ:配置情報「g(3行3列)」・・・」のように、従来とは異なる認識順序を示す。このため、入れ替え部14は、配置変換情報を参照し、例えば符号データに設定された配置情報「a」を、配置情報「h」に入れ替える。これにより、秘匿化の高い二次元コードCを生成することができる。
  なお、例えば入れ替え部14は、配置変換情報を参照せずに、配置情報を入れ替えてもよい。この場合、入れ替え部14は、例えばランダムに配置情報を入れ替え、入れ替えた履歴に関する情報(履歴情報)を保存部104等に保存する。これにより、例えば二次元コードCから対象情報を導出する際、履歴情報に基づき容易に対象情報を導出することが可能となる。また、履歴情報を特定の端末(例えば二次元コード評価装置2)のみに記憶させることで、他の端末9を用いた対象情報の導出が困難となり、対象情報の秘匿性を向上させることが可能となる。
  <<二次元コード生成部15>>
  二次元コード生成部15は、入れ替え部14により入れ替えられた配置情報に基づき、二次元コードCを生成する。二次元コード生成部15は、例えば対象規格に準ずる生成方法により、二次元コードCを生成する。このとき、入れ替え部14によって配置情報が入れ替えられているため、複数のデータブロックに含まれる少なくとも一部の符号データは、従来とは異なる位置に配置される。
  <<記憶部16>>
  記憶部16は、保存部104に保存された対象規格に関する情報、初期配置情報、配置変換情報等の各種データを必要に応じて取出す。記憶部16は、各構成11~15、17により取得又は生成された各種データを、必要に応じて保存部104に保存する。
  <<出力部17>>
  出力部17は、生成された二次元コードCを出力する。例えば出力機構109として印刷装置が用いられる場合、出力部17は、出力機構109に二次元コードCを印刷するためのデータを出力する。例えば出力機構109としてディスプレイが用いられる場合、出力部17は、出力機構109に二次元コードCを表示するためのデータを出力する。出力部17は、例えば通信網4を介して、二次元コード評価装置2等の他の端末に二次元コードCのデータを出力してもよい。
  <二次元コード評価装置2>
  次に、図7を参照して、本実施形態における二次元コード評価装置2の一例を説明する。図7(a)は、本実施形態における二次元コード評価装置2の構成の一例を示す模式図であり、図7(b)は、本実施形態における二次元コード評価装置2の機能の一例を示す模式図である。
  二次元コード評価装置2として、例えば二次元コード生成装置1と同様に、ラップトップ(ノート)PC、デスクトップPC、スマートフォン、タブレット端末、二次元コード読取り専用端末(二次元コードリーダ)等の電子機器が用いられる。二次元コード評価装置2は、例えば図7(a)に示すように、筐体20と、CPU201と、ROM202と、RAM203と、保存部204と、I/F205~207と、入力機構208と、出力機構209とを備える。各構成201~207は、内部バス210により接続される。
  CPU201は、二次元コード評価装置2全体を制御する。ROM202は、CPU201の動作コードを格納する。RAM203は、CPU201の動作時に使用される作業領域である。保存部204は、対象規格に関する情報等の各種情報が記憶される。保存部204として、例えばHDDのほか、SSD等のデータ保存装置が用いられる。
  I/F205は、通信網4を介して、必要に応じて二次元コード生成装置1や、サーバ3等との各種情報の送受信を行うためのインターフェースである。I/F206は、入力機構208との情報の送受信を行うためのインターフェースである。I/F207は、出力機構209との各種情報の送受信を行うためのインターフェースである。
  入力機構208として、例えばカメラ等のような公知の撮像装置が用いられ、二次元コード評価装置2の使用者等は、入力機構208を介して二次元コードCを読取り、二次元コードCに含まれる対象情報を確認する。
  出力機構209は、保存部204に保存された各種情報、又は二次元コードCから導出された対象情報を出力する。出力機構209として、ディスプレイが用いられ、例えばタッチパネル式の場合、入力機構208の文字入力部や画面選択部等と一体に設けられる。
  二次元コード生成装置1は、例えば図7(b)に示すように、読取り部21と、導出部22とを備え、例えば記憶部23と、出力部24とを備えてもよい。なお、図7(b)に示した各機能は、CPU201が、RAM203を作業領域として、保存部204等に記憶されたプログラムを実行することにより実現され、例えば二次元コード評価装置2が二次元コード評価方法を実行するためのプログラムをインストールすることで、各機能を備えてもよい。また、各機能の一部は、上述した対象規格や公知技術に準ずる方法により、二次元コードCを評価してもよい。
  <<読取り部21>>
  読取り部21は、二次元コードCを読取る。読取り部21は、例えば入力機構208を介して二次元コードCを撮像することで、二次元コードCを読取る。読取り部21は、例えば通信網4を介して、二次元コード生成装置1等から二次元コードCのデータを取得してもよい。
  <<導出部22>>
  導出部22は、二次元コードCに対する対象情報を導出する。導出部22は、例えば配置変換情報を参照し、二次元コードCに基づく複数のデータブロック(例えば図5(b))及び配置情報から、配置情報を入れ替える前の複数のデータブロック(例えば図5(a))及び配置情報を抽出する。その後、導出部22は、例えば対象規格等に準ずる導出方法により、複数のデータブロックから対象情報を導出する。なお、導出部22は、例えば配置変換情報を参照し、二次元コードCを初期二次元コードに変換した上で、対象情報を導出してもよい。
 また導出部22は、例えば二次元コードCに対する対象情報に紐づく特定情報に基づいて、関連する他の二次元コードC、または関連する他の二次元コードの少なくとも何れかに対する対象情報を導出するようにしてもよい。また導出部22は、例えば二次元コードCに対する対象情報に紐づく特定情報に基づいて、隠蔽情報を格納するデータブロックから隠蔽情報を導出するようにしてもよい。また導出部22は、例えば二次元コードCに対する対象情報に紐づく特定情報に基づいて、認証情報を格納するデータブロックから認証情報を導出するようにしてもよい。
  導出部22は、例えば二次元コードCの形式情報配置領域FIに配置された形式情報、型番情報配置領域VIに配置された型番情報の少なくとも何れかに基づき、二次元コードCの生成時に参照された配置変換情報を特定してもよい。この場合、例えば上述した形式情報用テーブル、型番情報用テーブル、及び各テーブルを組み合わせたテーブル、並びに配置情報を入れ替えるルールの少なくとも何れかを保存部204に予め保存させておくことで、二次元コードCに対して適切な配置変換情報を取出して参照することができる。これにより、二次元コードCを評価できる端末の制限を予め設定することができ、秘匿性の向上を図ることが可能となる。
  上記のほか、例えば導出部22は、通信網4を介して、配置変換情報、又は履歴情報を取得してもよい。この場合、二次元コード評価装置2は、予め配置変換情報を予め保存させる必要がないため、二次元コード評価装置2における記憶容量の増加を抑制することができる。
  上記のほか、例えば導出部22は、通信網4を介して、特定情報を取得してもよい。この場合、例えば上述した特定情報用テーブルを保存部204に予め保存させておくことで、二次元コードCに対して適切な配置変換情報を取出して参照することができる。これにより、二次元コードCを評価できる端末の制限を予め設定することができ、秘匿性の向上を図ることが可能となる。また、特定情報に配置情報の入れ替えに関する情報が含まれる場合、二次元コード評価装置2は、予め配置変換情報を予め保存させる必要がないため、二次元コード評価装置2における記憶容量の増加を抑制することができる。
  <<記憶部23>>
  記憶部23は、保存部204に保存された対象規格に関する情報、初期配置情報、配置変換情報等の各種データを必要に応じて取出す。記憶部23は、各構成21、22、24により取得又は生成された各種データを、必要に応じて保存部204に保存する。
  <<出力部24>>
  出力部24は、導出された対象情報を出力する。出力部24は、例えば対象情報に基づく他の情報を出力してもよく、他の情報の内容に関しては、予め任意に設定することができる。出力部24は、例えば通信網4を介して、二次元コード生成装置1等の他の端末に、対象情報又は対象情報を導出した旨を通知する情報等を出力してもよい。
  なお、二次元コード評価装置2は、例えば二次元コード生成装置1の備える各機能11~15の少なくとも何れかを備えてもよく、二次元コード生成装置1は、二次元コード評価装置2の備える各機能21、22の少なくとも何れかを備えてもよい。
  <サーバ3>
  サーバ3は、例えば通信網4を介して、二次元コード生成装置1、二次元コード評価装置2等と接続される。サーバ3は、過去の各種データ等が記憶され、必要に応じて二次元コード生成装置1等から各種データが送信される。サーバ3は、例えば二次元コード生成装置1等の備える機能のうち、少なくとも一部の機能を備えてもよく、例えば二次元コード生成装置1等の代わりに少なくとも一部の処理を行ってもよい。サーバ3は、例えば二次元コード生成装置1等の保存部104、204に記憶された各種データのうち少なくとも一部が記憶され、例えば保存部104、204の代わりに用いられてもよい。この場合、二次元コード生成装置1には、最低限の情報のみを保存させておくことができ、セキュリティの向上を図ることができる。
  <通信網4>
  通信網4は、例えば二次元コード生成装置1、二次元コード評価装置2等が通信回路を介して接続されるインターネット網等である。通信網4は、いわゆる光ファイバ通信網で構成されてもよい。また、通信網4は、有線通信網のほか、無線通信網等の公知の通信網で実現してもよい。
(第1実施形態:二次元コードシステム100の動作)
  次に、図8を参照して、本実施形態における二次元コードシステム100の動作の一例を説明する。図8(a)は、本実施形態における二次元コードシステム100の動作のうち、二次元コードCを生成する動作の一例を示すフローチャートであり、図8(b)は、本実施形態における二次元コードシステム100の動作のうち、二次元コードCを評価する動作の一例を示すフローチャートである。
  二次元コードシステム100は、取得手段S110と、生成手段S120と、設定手段S130と、入れ替え手段S140と、二次元コード生成手段S150とを備え、例えば読取り手段S210と、導出手段S220とを備えてもよい。
  <取得手段S110>
  取得手段S110では、例えば取得部11は、コード化の対象となる対象情報を取得する。取得部11は、例えば複数の情報を、対象情報として取得してもよい。取得部11は、例えば対象情報に紐づく特定情報を取得してもよい。
  <生成手段S120>
  生成手段S120では、例えば生成部12は、対象情報に基づき、データブロックを1以上生成する。生成部12は、例えば対象規格に準ずる方法により、対象情報に基づく複数のデータブロックを生成する。
  <設定手段S130>
  設定手段S130では、例えば設定部13は、初期配置情報に基づき、構成コード語に含まれる複数の符号データのそれぞれに対し、初期二次元コードとして配置するための配置情報を設定する。なお、設定手段S130は、例えば生成手段S120と同時に行われてもよい。
  <入れ替え手段S140>
  入れ替え手段S140では、例えば入れ替え部14は、複数の符号データに設定された配置情報を入れ替える。なお、入れ替え手段S140前後における配置情報の総数は等しく、各符号データの示す各値(例えば0又は1)の総数も等しい。このため、配置情報の入れ替えを行うことで、外形的なデータを取得する処理については従来技術を用いることができるとともに、二次元コードCに含められる対象情報に基づくデータ容量を、従来の初期二次元コードに設定できる対象情報に基づくデータ容量と等しくすることができる。
  入れ替え部14は、例えば複数のデータブロックのうち、1以上のデータブロックにおける誤り訂正数を超える範囲で、符号データに設定された配置情報を入れ替えてもよい。誤り訂正数として、例えば対象規格等において厳密に定義されているものが用いられる。
  入れ替え部14は、例えば形式情報、及び型番情報の少なくとも何れかに基づく配置変換情報を参照し、複数の符号データに設定された配置情報を入れ替えてもよい。この場合、入れ替え部14は、例えば記憶部16を介して、保存部104に保存された形式情報用テーブル、型番情報用テーブル、及び各テーブルを組み合わせたテーブルの少なくとも何れかを取得し、各情報に適した配置変換情報を設定し、参照する。
  入れ替え部14は、例えば特定情報に基づく配置変換情報を参照し、複数の符号データに設定された配置情報を入れ替えてもよい。この場合、入れ替え部14は、例えば記憶部16を介して、保存部104に保存された特定情報用テーブルを取得し、各情報に適した配置変換情報を設定し、参照する。
  入れ替え部14は、例えば予め設定された配置変換情報を参照し、複数の符号データに設定された配置情報を入れ替えてもよい。この場合、入れ替え部14は、例えば記憶部16を介して、保存部104に保存された配置変換情報を取得し、配置変換情報を参照する。
  入れ替え部14は、例えばランダムに配置情報を入れ替えてもよい。この場合、入れ替え部14は、例えば記憶部16を介して、履歴情報を保存部104に保存する。
  入れ替え部14は、例えばデータブロックに含まれる誤り訂正コードに基づき、入れ替えを行う配置情報を特定してもよい。入れ替え部14は、例えば誤り訂正コードに含まれる符号データの数に応じて、入れ替える配置情報の数を特定する。入れ替え部14は、例えば配置変換情報を参照した上で、誤り訂正コードに基づき、入れ替えを行う配置情報を特定してもよい。これにより、誤り訂正コード語毎に含まれる符号データの数が異なる場合においても、配置変換情報等の条件に適した配置情報の入れ替えが可能となる。
  <二次元コード生成手段S150>
  二次元コード生成手段S150では、例えば二次元コード生成部15は、入れ替え手段S140により入れ替えられた配置情報に基づき、二次元コードCを生成する。二次元コード生成部15は、例えば対象規格に準ずる方法により、二次元コードCを生成する。なお、二次元コード生成手段S150では、例えば生成手段S120においてデータブロックを生成したときと同様の対象規格に準ずる型番、及び形式の少なくとも何れかに基づき、二次元コードCを生成する。
  <<マスク処理手段S151>>
  二次元コード生成手段S150は、例えば図9に示すように、マスク処理手段S151を有してもよい。マスク処理手段S151は、例えば予め設定されたマスク情報に基づき、複数の符号データのうち少なくとも1部を反転(値を0から1、又は1から0に変更)させる。これにより、二次元コードCを生成する際、符号データによる明暗モジュールの分布を、均一化することができる。また、これにより、対象規格に規定される標準のマスク処理とは異なる処理とすることができ、より秘匿性を高めることが可能となる。マスク情報として、例えば対象規格における標準マスクパターンに関する情報が用いられる。
  その後、例えば出力部17は、出力機構109に二次元コードCを印刷するためのデータを出力する。これにより、出力機構109を用いて紙媒体等に二次元コードCを印刷できる。なお、例えば出力部17は、入れ替え手段S140において参照した配置変換情報、又は履歴情報を、通信網4を介して二次元コード評価装置2等に出力してもよい。
  <読取り手段S210>
  読取り手段S210では、例えば読取り部21は、二次元コードCを読取る。読取り部21は、例えば入力機構208を介して、紙媒体等に印刷された二次元コードCを撮像し、二次元コードCを読取る。
  <導出手段S220>
  導出手段S220では、例えば導出部22は、二次元コードCに対する対象情報を導出する。導出部22は、例えば配置変換情報、又は履歴情報を参照し、二次元コードCに対する対象情報を導出する。
  導出部22は、例えば上述した形式情報用テーブル等を参照し、二次元コードCの生成時に参照された配置変換情報を特定してもよい。導出部22は、例えば二次元コード生成装置1から送信された特定情報や、配置変換情報等を取得してもよい。
  その後、例えば出力部24は、導出された対象情報を出力機構209等に出力する。
  これにより、本実施形態における二次元コードシステム100の動作が終了する。
  なお、二次元コードシステム100では、例えば上述した設定手段S130を行わなくてもよい。この場合、入れ替え手段S140では、対象規格とは異なる配置情報の設定順序を有する配置変換情報を参照し、複数の符号データに配置情報を設定してもよい。
  なお、上述した取得手段S110、生成手段S120、設定手段S130、入れ替え手段S140、二次元コード生成手段S150、及びマスク処理手段S151は、本実施形態における二次元コード生成方法の取得ステップS11、生成ステップS12、設定ステップS13、入れ替えステップS14、二次元コード生成ステップS15、及びマスク処理ステップに相当し、読取り手段S210、及び導出手段S220は、本実施形態における二次元コード評価方法の読取りステップS21、及び導出ステップS22に相当する。
  本実施形態における二次元コードシステム100によれば、二次元コード生成手段S150は、入れ替え手段S140により入れ替えられた配置情報に基づき、二次元コードCを生成する。このため、従来の二次元コードの形式に設定できる対象情報に基づくデータ容量を維持した状態で、配置情報の入れ替えに伴う非可読処理を行うことができる。これにより、秘匿化する情報の容量制限を抑制することが可能となる。
  また、本実施形態における二次元コードシステム100によれば、導出手段S220は、二次元コードCに対する対象情報を導出する。このため、二次元コードCの導出を実現することが可能となる。
  本実施形態における二次元コード生成装置1によれば、二次元コード生成部15は、入れ替え部14により入れ替えられた配置情報に基づき、二次元コードCを生成する。このため、従来の二次元コードの形式に設定できる対象情報に基づくデータ容量を維持した状態で、配置情報の入れ替えに伴う非可読処理を行うことができる。これにより、秘匿化する情報の容量制限を抑制することが可能となる。
  また、本実施形態における二次元コード評価装置2によれば、導出部22は、二次元コードCに対する対象情報を導出する。このため、二次元コードCの導出を実現することが可能となる。
  本実施形態における二次元コード生成方法によれば、二次元コード生成ステップS15は、入れ替えステップS14により入れ替えられた配置情報に基づき、二次元コードCを生成する。このため、従来の二次元コードの形式に設定できる対象情報に基づくデータ容量を維持した状態で、配置情報の入れ替えに伴う非可読処理を行うことができる。これにより、秘匿化する情報の容量制限を抑制することが可能となる。
  また、本実施形態における二次元コード生成方法によれば、入れ替えステップS14は、複数のデータブロックのうち、1以上のデータブロックにおける誤り訂正数を超える範囲で、符号データに設定された配置情報を入れ替える。このため、従来の二次元コード読取り装置を用いて、生成された二次元コードCの導出をさらに難しくすることができる。これにより、対象情報の秘匿性を高めることが可能となる。
  また、本実施形態における二次元コード生成方法によれば、入れ替えステップS14は、配置情報の入れ替えに関する情報を有する配置変換情報を参照し、複数の符号データに設定された配置情報を入れ替える。このため、配置変換情報を有する特定の端末(例えば二次元コード評価装置2)のみに、二次元コードCの導出を制限することができる。これにより、対象情報の秘匿性を更に高めることが可能となる。
  また、本実施形態における二次元コード生成方法によれば、入れ替えステップS14は、形式情報、及び型番情報の少なくとも何れかに基づく配置変換情報を参照し、複数の符号データに設定された配置情報を入れ替える。このため、従来の二次元コード生成時に用いられる形式情報又は型番情報を利用して、二次元コードCの導出を制限することができる。これにより、対象情報の秘匿性を更に高めることが可能となる。
  また、本実施形態における二次元コード生成方法によれば、入れ替えステップS14は、特定情報に基づく配置変換情報を参照し、複数の符号データに設定された配置情報を入れ替える。このため、秘匿化する対象情報の内容によって、対象情報に紐づく特定情報の内容を変えることができ、秘匿化の重要度等に応じて二次元コードCの導出を制限することができる。これにより、対象情報における秘匿性の度合いを容易に変更することが可能となる。
  また、本実施形態における二次元コード評価方法によれば、導出ステップS22は、配置変換情報を参照し、二次元コードCに対する対象情報を導出する。このため、配置変換情報を用いた二次元コードCの導出を実現することが可能となる。
  本実施形態における二次元コードCによれば、秘匿化する情報の容量制限を抑制することができる二次元コードCを実現することが可能となる。
(第2実施形態)
  次に、第2実施形態における二次元コードC、二次元コードシステム100、二次元コード生成装置1、二次元コード評価装置2、二次元コード生成方法、及び二次元コード評価方法の一例について説明する。
  第2実施形態と、第1実施形態との違いは、初期二次元コード生成手段S160(初期二次元コード生成ステップS16)をさらに備える点である。なお、第1実施形態と同様の構成や内容については、説明を省略する。
  本実施形態では、例えば図10に示すように、複数の符号データのそれぞれに対して配置情報を設定(図10(a))したあと、初期二次元コードを生成する(図10(b))。その後、各符号データに対する配置情報を入れ替え、二次元コードCを生成する(図10(c))。このとき、例えば図10(c)に示す矢印のように、二次元コードCに決められた配置情報は入れ替えられずに、配置情報に設定された符号データが入れ替えられる。
  この場合においても、上述した実施形態と同様に、対象規格に基づく汎用の読取り装置等を用いて、データの導出(デコード)を防止することができる。このため、本実施形態における二次元コードCは、符号化領域全体に対して非可読処理を施した状態で示すことができる。特に、本実施形態における二次元コード生成方法では、例えば他の端末等によって既に初期二次元コードが生成された場合においても、秘匿性の高い二次元コードCを生成することができる。
  本実施形態に用いられる配置変換情報は、例えば初期二次元コードにおいて特定の位置に配置された符号データを、他の位置に変更する情報を有する。例えば図11(a)に示す配置変換情報は、配置情報「a」に設定された符号データを配置情報「B」に入れ替え、配置情報「B」に設定された符号データを配置情報「f」に入れ替える情報を示す。これにより、図11(a)に示す矢印のように、各符号データの配置される位置が変更される。
  また、本実施形態に用いられる配置変換情報は、例えば初期二次元コードにおいて、行毎又は列毎に配置された符号データを、他の行又は列に入れ替える情報を有する。例えば図11(b)に示す配置変換情報は、「x列」の配置情報に設定された符号データを「x+1」列の配置情報に入れ替え、「N列」の配置情報に設定された符号データを「1列」に入れ替える情報を示す。これにより、図11(b)に示す矢印のように、各符号データの配置される位置が変更される。
  また、本実施形態に用いられる配置変換情報は、例えば初期二次元コードにおける符号データの配置された位置を、行又は列に沿って転回する情報を有する。例えば図12では、配置変換情報を参照し、初期2次元コードから10回の転回(R1~R10)によって符号データに設定された配置情報を入れ替え、二次元コードCの配列に変換される例を示す。図12では、各転回(R1~R10)において対象とした行又は列を破線枠で示し、転回した度合いを矢印で示し、文字a~yは配置情報を示す。また、図12では、転回前後における符号データの動きを明確にするため、各符号データに数字(1)~(25)が付与されている。
  図12に示す配置変換情報は、転回の対象とする行又は列(例えば「row 1, 3, 5」又は「column 1, 3, 5」等)、及び転回する度合い(例えば「shift 3」等)を示す。すなわち、配置変換情報として、配置情報の入れ替えのルールが用いられる。このため、配置情報を入れ替える際、初期二次元コードの形式に関わらず、1つの配置変換情報を用いることができる。また、配置変換情報として用いられる情報(入れ替えのルール)は、配置変換情報を設定するためのテーブルに比べて、データ容量を大幅に削減することができる。これにより、二次元コード生成装置1等における記憶容量の負荷を低減することができる。なお、図12では転回の回数を10回で示しているが、転回の回数は任意である。
(第2実施形態:二次元コードシステム100の動作)
  次に、図13を参照して、本実施形態における二次元コードシステム100の動作の一例を説明する。図13は、本実施形態における二次元コードシステム100の動作のうち、二次元コードCを生成する動作の一例を示すフローチャートである。なお、本実施形態における二次元コードシステム100の動作のうち、二次元コードCを評価する動作については、上述した実施形態と同様のため説明を省略する。
  <初期二次元コード生成手段S160>
  本実施形態における二次元コードシステム100は、初期二次元コード生成手段S160を更に備える。初期二次元コード生成手段S160では、設定手段S130のあと、例えば二次元コード生成部15は、複数の符号データのそれぞれに設定された配置情報に基づき、初期二次元コードを生成する。二次元コード生成部15は、例えば対象規格に準ずる方法により、初期二次元コードを生成する。
  その後、上述した実施形態と同様に、入れ替え手段S140等を実施し、本実施形態における二次元コードシステム100の動作が終了する。
  なお、二次元コード生成手段S150では、例えば初期二次元コードと同様の型番、及び形式の少なくとも何れかに基づき、二次元コードCを生成する。また、二次元コード生成手段S150では、上述したマスク処理手段S151を有してもよい。この場合、上述した実施形態と同様に、二次元コードCを生成する際、符号データによる明暗モジュールの分布を、均一化することができる。また、対象規格に規定される標準のマスク処理とは異なる処理とすることができ、より秘匿性を高めることが可能となる。
  なお、例えば他の端末9によって生成された初期二次元コードを二次元コード生成装置1が取得し、入れ替え手段S140以降の処理を行ってもよい。この場合、二次元コード生成装置1は、例えば上述した読取り部21を備えることで、初期二次元コードを読取ることができ、例えば公知技術を用いて初期二次元コードからデータブロックを導出したあと、入れ替え手段S140等の処理を行ってもよい。
  なお、上述した初期二次元コード生成手段S160は、本実施形態における二次元コード生成方法の初期二次元コード生成ステップS16に相当する。初期二次元コード生成手段S160では、例えば上述したマスク処理手段S151と同様のマスク処理を行ってもよい。
  本実施形態における二次元コード生成方法によれば、初期二次元コード生成ステップS16は、設定ステップS13のあと、複数の符号データのそれぞれに設定された配置情報に基づき、初期配置情報に対応する初期二次元コードを生成する。このため、例えば他の端末9等によって既に初期二次元コードが生成された場合においても、秘匿性の高い二次元コードを生成することができる。これにより、二次元コードを生成できるデータの条件を拡大させることが可能となる。
  また、本実施形態における二次元コード生成方法によれば、配置変換情報は、初期二次元コードにおける符号データの配置された位置を、行又は列に沿って転回する情報を有する。このため、配置情報を入れ替える際、初期二次元コードの形式に関わらず1つの配置変換情報を用いることができる。これにより、様々な初期二次元コードの形式に対して、秘匿性を高めた二次元コードCを生成することが容易となる。また、初期二次元コードの形式毎に配置情報を設定する必要がなく、最小限の情報により、秘匿性を高めることが可能となる。
  なお、本実施形態における二次元コードシステム100、二次元コード生成装置1においても、上述した実施形態と同様の効果を得ることができる。
  本発明の実施形態を説明したが、これらの実施形態は例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1        :二次元コード生成装置
2        :二次元コード評価装置
3        :サーバ
4        :通信網
9        :端末
10      :筐体
11      :取得部
12      :生成部
13      :設定部
14      :入れ替え部
15      :二次元コード生成部
16      :記憶部
17      :出力部
20      :筐体
21      :読取り部
22      :導出部
23      :記憶部
24      :出力部
100    :二次元コードシステム
101    :CPU
102    :ROM
103    :RAM
104    :保存部
105    :I/F
106    :I/F
107    :I/F
108    :入力機構
109    :出力機構
110    :内部バス
201    :CPU
202    :ROM
203    :RAM
204    :保存部
205    :I/F
206    :I/F
207    :I/F
208    :入力機構
209    :出力機構
210    :内部バス
S110  :取得手段
S120  :生成手段
S130  :設定手段
S140  :入れ替え手段
S150  :二次元コード生成手段
S151  :マスク処理手段
S160  :初期二次元コード生成手段
S210  :読取り手段
S220  :導出手段
C        :二次元コード
AP      :位置合わせパターン
DP      :データコード語配置領域
EP      :誤り訂正コード語配置領域
FI      :形式情報配置領域
FP      :位置検出パターン
SP      :分離パターン
TP      :タイミングパターン
M        :モジュール
QZ      :クワイエットゾーン

Claims (21)

  1.   コード化の対象となる対象情報を取得する取得ステップと、
      前記対象情報の内容に基づき、構成コード語を含むデータブロックを生成する生成ステップと、
      予め設定された初期配置情報に基づき、前記構成コード語に含まれる複数の符号データのそれぞれに対し、初期二次元コードとして配置するための配置情報を設定する設定ステップと、
      複数の前記符号データに設定された前記配置情報を入れ替える入れ替えステップと、
      前記入れ替えステップにより入れ替えられた前記配置情報に基づき、二次元コードを生成する二次元コード生成ステップと、
      を備えることを特徴とする二次元コード生成方法。
  2.   前記入れ替えステップは、複数の前記データブロックのうち、1以上の前記データブロックにおける誤り訂正数を超える範囲で、前記符号データに設定された前記配置情報を入れ替えること
      を特徴とする請求項1記載の二次元コード生成方法。
  3.   前記入れ替えステップは、前記配置情報の入れ替えに関する情報を有する配置変換情報を参照し、複数の前記符号データに設定された前記配置情報を入れ替えること
      を特徴とする請求項2記載の二次元コード生成方法。
  4.   前記入れ替えステップは、前記初期二次元コード生成時に用いられる形式情報、及び型番情報の少なくとも何れかに基づく配置変換情報を参照し、複数の前記符号データに設定された前記配置情報を入れ替えること
      を特徴とする請求項2記載の二次元コード生成方法。
  5.   前記取得ステップは、前記対象情報に紐づく特定情報を取得し、
      前記入れ替えステップは、前記特定情報に基づく配置変換情報を参照し、複数の前記符号データに設定された前記配置情報を入れ替えること
      を特徴とする請求項2記載の二次元コード生成方法。
  6.   前記配置変換情報は、前記二次元コードから前記符号データを導出するときにおける前記配置情報の認識順序に関する情報を有すること
      を特徴とする請求項3~5の何れか1項記載の二次元コード生成方法。
  7.   前記配置変換情報は、1つの前記構成コード語に含まれる複数の前記符号データに設定された前記配置情報を入れ替える情報を有すること
      を特徴とする請求項3~5の何れか1項記載の二次元コード生成方法。
  8.   前記配置変換情報は、複数の前記構成コード語のうち、第1構成コード語に含まれる前記符号データに設定された第1配置情報を、第2構成コード語に含まれる前記符号データに設定された第2配置情報に入れ替える情報を有すること
      を特徴とする請求項3~5の何れか1項記載の二次元コード生成方法。
  9.   前記設定ステップのあと、複数の前記符号データのそれぞれに設定された前記配置情報に基づき、前記初期二次元コードを生成する初期二次元コード生成ステップを更に備えること
      を特徴とする請求項3~5の何れか1項記載の二次元コード生成方法。
  10.   前記配置変換情報は、前記初期二次元コードにおいて特定の位置に配置された前記符号データを、他の位置に変更する情報を有すること
      を特徴とする請求項9記載の二次元コード生成方法。
  11.   前記配置変換情報は、前記初期二次元コードにおいて、行毎又は列毎に配置された前記符号データを、他の行又は列に変更する情報を有すること
      を特徴とする請求項9記載の二次元コード生成方法。
  12.   前記配置変換情報は、前記初期二次元コードにおける前記符号データの配置された位置を、行又は列に沿って転回する情報を有すること
      を特徴とする請求項9記載の二次元コード生成方法。
  13.   前記二次元コード生成ステップは、予め設定されたマスク情報に基づき、複数の前記符号データのうち少なくとも一部を反転させるマスク処理ステップを有すること
      を特徴とする請求項3~12の何れか1項記載の二次元コード生成方法。
  14.   前記入れ替えステップは、前記データブロックに含まれる誤り訂正コード語に基づき、入れ替えを行う前記配置情報を特定すること
      を特徴とする請求項3~13の何れか1項記載の二次元コード生成方法。
  15.   前記二次元コードの形式は、QRコードの形式であること
      を特徴とする請求項3~14の何れか1項記載の二次元コード生成方法。
  16.   請求項3~15の何れか1項記載の二次元コード生成方法によって生成された前記二次元コードを評価する二次元コード評価方法であって、
      前記二次元コードを読取る読取りステップと、
      前記配置変換情報を参照し、前記二次元コードに対する前記対象情報を導出する導出ステップと
      を備えることを特徴とする二次元コード評価方法。
  17.   コード化の対象となる対象情報を取得する取得手段と、
      前記対象情報の内容に基づき、構成コード語を含むデータブロックを生成する生成手段と、
      予め設定された初期配置情報に基づき、前記構成コード語に含まれる複数の符号データのそれぞれに対し、初期二次元コードとして配置するための配置情報を設定する設定手段と、
      複数の前記符号データに設定された前記配置情報を入れ替える入れ替え手段と、
      前記入れ替え手段により入れ替えられた前記配置情報に基づき、二次元コードを生成する二次元コード生成手段と、
      を備えることを特徴とする二次元コードシステム。
  18.   前記二次元コードを読取る読取り手段と、
      前記二次元コードに対する前記対象情報を導出する導出手段と
      をさらに備えること
      を特徴とする請求項17記載の二次元コードシステム。
  19.   コード化の対象となる対象情報を取得する取得部と、
      前記対象情報の内容に基づき、構成コード語を含むデータブロックを生成する生成部と、
      予め設定された初期配置情報に基づき、前記構成コード語に含まれる複数の符号データのそれぞれに対し、初期二次元コードとして配置するための配置情報を設定する設定部と、
      複数の前記符号データに設定された前記配置情報を入れ替える入れ替え部と、
      前記入れ替え部により入れ替えられた前記配置情報に基づき、二次元コードを生成する二次元コード生成部と、
      を備えることを特徴とする二次元コード生成装置。
  20.   請求項19記載の二次元コード生成装置によって生成された前記二次元コードを評価する二次元コード評価装置であって、
      前記二次元コードを読取る読取り部と、
      前記二次元コードに対する前記対象情報を導出する導出部と
      を備えることを特徴とする二次元コード評価装置。
  21.  請求項1~16の何れか1項記載の二次元コード生成方法によって生成されたことを特徴とする二次元コード。
PCT/JP2020/039376 2019-11-12 2020-10-20 二次元コード生成方法、二次元コード評価方法、二次元コードシステム、二次元コード生成装置、及び二次元コード評価装置、及び二次元コード WO2021095457A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019204667A JP6714303B1 (ja) 2019-11-12 2019-11-12 二次元コード生成方法、二次元コード評価方法、二次元コードシステム、二次元コード生成装置、及び二次元コード評価装置
JP2019-204667 2019-11-12

Publications (1)

Publication Number Publication Date
WO2021095457A1 true WO2021095457A1 (ja) 2021-05-20

Family

ID=71104033

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/039376 WO2021095457A1 (ja) 2019-11-12 2020-10-20 二次元コード生成方法、二次元コード評価方法、二次元コードシステム、二次元コード生成装置、及び二次元コード評価装置、及び二次元コード

Country Status (3)

Country Link
JP (1) JP6714303B1 (ja)
TW (1) TW202119289A (ja)
WO (1) WO2021095457A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000148922A (ja) * 1998-09-03 2000-05-30 Denso Corp 2次元コ―ド、2次元コ―ドの読取方法、2次元コ―ドの生成方法及び記録媒体
JP2007026427A (ja) * 2005-06-13 2007-02-01 Yutaka Kiuchi 管理用シンボルを用いた情報管理方法、及び情報管理サーバ
KR20160057038A (ko) * 2014-11-12 2016-05-23 삼성에스디에스 주식회사 큐알 코드의 암호화 및 복호화를 위한 장치 및 방법

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006020144A (ja) * 2004-07-02 2006-01-19 Ricoh Co Ltd 文書処理システム
JP5310502B2 (ja) * 2009-11-23 2013-10-09 株式会社デンソーウェーブ 二次元コード、二次元コードの読取装置、及び二次元コードの生成装置
WO2015001637A1 (ja) * 2013-07-03 2015-01-08 A・Tコミュニケーションズ株式会社 認証サーバ、認証システム、認証方法、及びプログラム
EP3065088B1 (en) * 2013-10-30 2021-03-24 NISHIZAKI, Tsutao 2d-code generation method, 2d-code generation device, 2d-code reading method, 2d-code reading device, 2d code, and program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000148922A (ja) * 1998-09-03 2000-05-30 Denso Corp 2次元コ―ド、2次元コ―ドの読取方法、2次元コ―ドの生成方法及び記録媒体
JP2007026427A (ja) * 2005-06-13 2007-02-01 Yutaka Kiuchi 管理用シンボルを用いた情報管理方法、及び情報管理サーバ
KR20160057038A (ko) * 2014-11-12 2016-05-23 삼성에스디에스 주식회사 큐알 코드의 암호화 및 복호화를 위한 장치 및 방법

Also Published As

Publication number Publication date
JP6714303B1 (ja) 2020-06-24
JP2021077204A (ja) 2021-05-20
TW202119289A (zh) 2021-05-16

Similar Documents

Publication Publication Date Title
JP4122629B2 (ja) 2次元コードの生成方法
US8437013B2 (en) Glyph-looking alphabet for vipp / specialty imaging fonts
EP0572989B1 (en) Record with encoded data
CN104246794A (zh) 具有多个不同区域的二维条形码
CN108351956B (zh) 用于印刷取证编码的2d条形码的方法和系统
JP2007501976A (ja) 紙または他のキャリヤ上の背景のデータチャネル
JP4207049B2 (ja) 同定機能付き印刷物、画像生成装置、画像処理装置及びその方法
US20220318346A1 (en) Certified text document
JP2007241328A (ja) プログラム、情報記憶媒体、2次元コード生成システム、画像生成システム及び印刷物
KR20090002278A (ko) 이동통신 단말기에 사용하기 위한 분할형 2차원 바코드의인코딩 방법
CN110097159B (zh) 一种基于汉明码的qr码安全认证方法及系统
RU2656734C2 (ru) Способ кодирования и декодирования цифровой информации в виде ультрасжатого нанобар-кода (варианты)
WO2021095457A1 (ja) 二次元コード生成方法、二次元コード評価方法、二次元コードシステム、二次元コード生成装置、及び二次元コード評価装置、及び二次元コード
JP6099258B2 (ja) 光学コード及び該光学コードの生成方法
CN112418374B (zh) 一种信息码生成方法
CN113557529B (zh) 混合二维条码阅读器
JP3545782B2 (ja) 極秘文書の機密保持方法
JP6617302B1 (ja) 光学コード、光学コード生成方法とそのプログラム、並びに、光学コード読み取り方法とそのプログラム
JP5592234B2 (ja) 二次元コード生成装置、二次元コード読取装置、二次元コード、二次元コード生成方法、二次元コード読取方法及びプログラム
Lay et al. Visual QR codes with lossless picture embedding
CN113557530B (zh) 混合二维条形码和混合二维条形码生成器
KR101235618B1 (ko) 이미지를 포함하는 2차원 코드 생성 방법 및 시스템
CN101673334A (zh) 以一类pdf文本作为掩体的信息嵌入和提取方法
US8256687B2 (en) Method of coding information in a dual fashion on physical media and in DOTEM computerised form
Sim et al. Development of high data capacity color code

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20887010

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20887010

Country of ref document: EP

Kind code of ref document: A1