WO2022209065A1 - 記録媒体の真正性を判定する方法、及び記録媒体 - Google Patents

記録媒体の真正性を判定する方法、及び記録媒体 Download PDF

Info

Publication number
WO2022209065A1
WO2022209065A1 PCT/JP2021/047588 JP2021047588W WO2022209065A1 WO 2022209065 A1 WO2022209065 A1 WO 2022209065A1 JP 2021047588 W JP2021047588 W JP 2021047588W WO 2022209065 A1 WO2022209065 A1 WO 2022209065A1
Authority
WO
WIPO (PCT)
Prior art keywords
recording medium
controller
data
memory card
authentication
Prior art date
Application number
PCT/JP2021/047588
Other languages
English (en)
French (fr)
Inventor
信治 井上
雄介 清水
Original Assignee
パナソニックIpマネジメント株式会社
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 パナソニックIpマネジメント株式会社 filed Critical パナソニックIpマネジメント株式会社
Priority to JP2023510253A priority Critical patent/JPWO2022209065A1/ja
Priority to CN202180096550.6A priority patent/CN117099100A/zh
Publication of WO2022209065A1 publication Critical patent/WO2022209065A1/ja
Priority to US18/374,743 priority patent/US20240028674A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Definitions

  • the present disclosure relates to a method and recording medium for determining the authenticity of a recording medium.
  • Patent Literature 1 discloses a technique for improving security related to authentication for accessing a device using an authentication server. However, there is still the possibility that a malicious third party may illegally access the device via the communication network and steal information.
  • the purpose of this disclosure is to provide offline authentication technology for confirming the authenticity of an object even when it is not connected to a communication network.
  • the method of the present disclosure is a method of determining the authenticity of a second recording medium attached to a second device using a first device attached to the first recording medium.
  • the first device has a first imaging device and a first display device
  • the second device has a second imaging device and a second display device.
  • Each of the first recording medium and the second recording medium includes a flash memory having a user area in which data can be rewritten by a user and a non-user area in which data cannot be rewritten by a user; Alternatively, it has a controller that controls reading.
  • first identification information and first algorithm data defining a calculation method are recorded in advance.
  • the controller of the first recording medium causes the first display device to display the first image pattern in which the predetermined first variable value is one-dimensionally or two-dimensionally encoded. After displaying the first image pattern, the controller causes the first imaging device to capture the one-dimensional or two-dimensional second image pattern displayed on the second display device of the second device. Further, the controller decodes the first code data from the imaged second image pattern, performs calculation using the first identification information and the first variable value using the first algorithm data, and obtains the first code data as the calculation result. Output the result data. The controller determines that the second recording medium is authentic when the decoded first code data matches the output first result data.
  • a recording medium of the present disclosure is a first recording medium and is a recording medium including a controller that executes the above-described determination method.
  • FIG. 4 is a diagram showing a procedure for updating a machine tool control program using an SD memory card;
  • Flowchart showing the procedure of authentication processing Flowchart showing procedures for two-way authentication processing 4 is a flow chart showing a procedure of simple authentication mode setting processing in a machine tool control system; Flowchart showing procedure for generating simple authentication data when power is off Flowchart showing procedure for simple authentication processing at power-on
  • FIG. 1 is a block diagram showing the hardware configuration of the offline authentication system 1.
  • the offline authentication system 1 is used, for example, to authenticate equipment normally used offline, such as factory equipment, industrial machinery, and infrastructure equipment installed in a factory 10 .
  • the reason for using the device offline is to prevent a malicious third party from entering via the communication network 80 and hijacking the device or stealing the data of the device. That is, to protect devices from cyber security threats.
  • a device that is normally used offline is hereinafter referred to as an “offline device”.
  • Equipment is usually used offline to maintain high security, so whether or not the recording medium attached to such equipment is a recording medium that is originally expected to be used. I need to check for legitimacy or authenticity.
  • the recording medium itself is provided with a mechanism for performing such authentication, thereby making it possible to confirm the authenticity of the recording medium.
  • Such a mechanism is specifically as follows.
  • a plurality of removable recording media that are assumed to be used in the factory 10 are prepared. All such recording media are provided with a flash memory having a "user area” in which data can be rewritten by the user and a "non-user area” in which the data cannot be rewritten by the user.
  • the non-user area the same identification information and algorithm data defining the calculation method are recorded in advance.
  • the identification information is called an "initial registration ID (IID)" and the algorithm data is called a "one-way function". Since it is necessary to record necessary information and the like in the non-user area in advance, each recording medium is manufactured for the purpose of, for example, a business operator performing authentication according to the present disclosure.
  • the authentication terminal 2 to which the SD memory card A is attached uses the initial registration ID and the one-way function recorded on the SD memory card A to access another SD memory card B authenticate the authenticity of
  • a controller which is an arithmetic circuit provided in the SD memory card, performs necessary processing and displays a QR code (registered trademark; hereinafter the same) on the display of the authentication terminal 2 or the like. Display and authenticate.
  • QR code is a matrix-type two-dimensional code in which data having a predetermined data length or less is represented by an image pattern.
  • the authenticity of the SD memory card B attached to the management system 4 or the machine tool control system 6 is confirmed using the authentication terminal 2 to which the SD memory card A is attached, for example in the factory 10.
  • the authentication terminal 2 can be, for example, a mobile computer such as a smart phone, tablet PC, or notebook PC.
  • an SD memory card and a QR code are mainly used, and offline authentication (local authentication) within the factory 10 is realized.
  • the SD memory card B is initially attached to the control device 6a of the machine tool control system 6.
  • the control device 6a is a computer system, such as a PC, for controlling the machine tool 6b, and has an SD memory card slot (not shown) for inserting an SD memory card B therein.
  • the machine tool 6b is provided with various sensors 7a and 7b.
  • the sensor 7a is, for example, a camera having an image sensor, and the sensor 7b is an accuracy sensor that detects the rotation angle of a motor (not shown) of the machine tool 6b.
  • sensor data of various sensors 7a and 7b collected along with the operation of the machine tool 6b are recorded.
  • Such an SD memory card B is removed from the control device 6a, carried by a person, and attached to the PC of the management system 4 (hereinafter referred to as "management PC 4").
  • the management PC 4 determines whether or not the SD memory card B is the SD memory card that is originally supposed to be used, that is, the authenticity of the SD memory card B. gender is unknown. Therefore, in this embodiment, the authenticity of the SD memory card B is confirmed by the authentication process using the QR code Qa displayed on the display of the authentication terminal 2.
  • FIG. At this time, the SD memory card A of the authentication terminal 2 may be further authenticated using the QR code Qb displayed on the display of the management PC 4 . This makes it possible to perform stricter authentication. A detailed procedure of the authentication process will be described later.
  • SD memory card A transmits a command notifying that access to SD memory card B is permitted to the SD memory card of management PC 4 via authentication terminal 2. Output to B.
  • the controller of SD memory card B permits data reading and/or data writing from the flash memory in SD memory card B.
  • the management PC 4 is connected to the communication network 80 and can communicate with the cloud server 90 . Since the authenticity of the SD memory card B is confirmed and access to the flash memory in the SD memory card B is permitted, the management PC 4 reads out the sensor data 70 recorded in the SD memory card B, and accesses the communication network 80. to the cloud server 90 via. Cloud server 90 analyzes sensor data 70 to generate motion program 72 more adapted to machine tool control system 6 . The cloud server 90 transmits the operating program 72 to the management PC 4 via the communication network 80 . Since the management PC 4 is permitted to access the SD memory card B, the operation program 72 is recorded on the SD memory card B. FIG. After that, the SD memory card B is removed from the management PC 4 and mounted on the control device 6a of the machine tool control system 6 again.
  • authentication processing using the QR code Qc is performed between the authentication terminal 2 and the control device 6a, and the authenticity of the SD memory card B is confirmed.
  • the control device 6a can read the operation program 72 and update the operation program up to now.
  • FIG. 2 shows a hardware configuration common to the authentication terminal 2 and the management PC 4. Also, FIG. 3 shows the hardware configuration of the control device 6a. The difference between FIG. 2 and FIG. 3 is that the communication circuit present in the configuration of FIG. 2 is not present in the control device 6a of FIG. Other configurations are the same. Please refer to FIG. 2 below.
  • the authentication terminal 2 and the management PC 4 have a processing circuit 22, a communication circuit 24, an SD memory card interface device (SD-I/F device) 26, a display 28, a camera 30, and a memory 32. ing.
  • SD-I/F device is abbreviated as "I/F device” below.
  • the processing circuit 22 is a semiconductor integrated circuit called a CPU (Central Processing Unit).
  • the processing circuit 22 issues commands to the SD memory card A or B or receives data from the SD memory card A or B via the I/F device 26 .
  • Processing circuitry 22 can also communicate with other components. Although the drawing shows that the processing circuit 22 is directly connected to each component, it may be connected via an internal bus, for example.
  • the communication circuit 24 performs wired or wireless communication with the outside to exchange information.
  • wired communication include a wired LAN based on the Ethernet (Ethernet: registered trademark) standard, or a connection using an optical fiber cable.
  • wireless communication include wireless connection with an external device via a base station or the like, or direct wireless connection with an external device.
  • wireless connections with external devices via base stations include wireless LANs compatible with IEEE 802.11 that wirelessly communicate with Wi-Fi (registered trademark) routers, and third-generation mobile communication systems (commonly known as 3G). , 4th generation mobile communication system (commonly known as 4G), 5th generation mobile communication system (commonly known as 5G), IEEE 802.16 compatible WiMax (registered trademark), or LPWA (Low Power Wide Area), etc. .
  • the I/F device 26 is an SD memory card slot into which the SD memory card A or B is loaded, connection terminals inside the slot, and various circuits for communicating with the SD memory card A or B. Details of the configuration of the I/F device 26 will be described later with reference to FIG.
  • the display 28 is a display device that displays characters, images, and the like. In this embodiment, display 28 is used to display the QR code.
  • the camera 30 is a well-known imaging device capable of shooting moving images or still images.
  • the camera 30 is used to photograph the QR code displayed on the display of the other party's device.
  • the memory 32 stores computer programs executed by the processing circuit 22 .
  • memory 32 encompasses RAM and ROM.
  • a computer program stored in the ROM is read by the processing circuit 22 and developed in the RAM. This allows the processing circuit 22 to execute the computer program.
  • the control device 6 a has a processing circuit 62 , an SD memory card interface device (SD-I/F device) 66 , a display 68 , a camera 70 and a memory 72 .
  • SD-I/F device is also abbreviated as "I/F device” below.
  • FIG. 4 shows the detailed configuration of the I/F devices 26 and 66 and the SD memory cards A and B.
  • the I/F devices 26 and 66 are called “host devices”, and the SD memory cards A and B are also called “slave devices”.
  • the I/F device 26 and the SD memory card A will be described as an example.
  • the I/F device 26 has a controller 106 , a host device I/F 105 , a clock generator 201 , a register 202 and a sampling clock generator 203 .
  • the host device I/F 105 has a transmission section 105T that implements a transmission function and a reception section 105R that implements a reception function.
  • the SD memory card A has a slave device I/F 124, a controller 125, a register 221, and a flash memory 222.
  • the slave device I/F 124 also has a transmitting section 124T that implements a transmitting function and a receiving section 124R that implements a receiving function.
  • the clock generator 201 of the I/F device 26 outputs the basic clock signal tclk onto the CLK line 111 .
  • the basic clock signal is transmitted to the SD memory card A via the host device I/F 105 and used as a clock signal when the SD memory card A operates.
  • the clock generator 201 also outputs the basic clock signal to the sampling clock generator 203 .
  • the basic clock signal received by the sampling clock generator 203 is written as "SDCLK" for convenience.
  • the sampling clock generator 203 receives the basic clock signal SDCLK from the clock generator 201, receives the selection signal from the controller 106, and outputs a sampling clock signal.
  • the sampling clock signal is a clock signal used when determining the so-called punching timing.
  • Data transmission/reception between the host device 100 and the slave device 120 is performed using the transmitter 105T and receiver 105R of the host device I/F 105 and the transmitter 124T and receiver 124R of the slave device I/F 124. performed, but not explicitly stated below. It is simply assumed that communication is performed between the controller 106 of the I/F device 26 and the controller 125 of the SD memory card A. FIG.
  • FIG. 5 is a diagram for explaining the configuration of the recording areas of SD memory cards A and B.
  • the recording areas of SD memory cards A and B have a normal area or user area 110 and a secure area or non-user area 120 .
  • the user area 110 is an area in which data can be rewritten by the user.
  • a random number generation program 110a is a program that generates random numbers using a well-known algorithm. A random number is an example of a predetermined variable value.
  • the QR code generation program 110b is a program that generates a QR code indicating data from predetermined data.
  • the QR code decoding program 110c is a program for decoding the QR code photographed using the camera 30 or 70 and extracting data. These programs are executed by the controllers 125 of the SD memory cards A and B. FIG. Methods for generating and decoding QR codes are well known.
  • QR code generation program 110b and the QR code decoding program 110c do not need to be separate programs, and one program may perform both QR code generation and decoding.
  • the random number generation program 110a, the QR code generation program 110b, and the QR code decoding program 110c may be recorded in the non-user area 120.
  • the non-user area 120 is an area in which data cannot be rewritten by the user.
  • identification information (IID) 120a and a one-way function 120b are recorded in advance.
  • the identification information (IID) 120a is information common to SD memory cards A and B, in other words, the same information.
  • the one-way function 120b specifies a calculation method for calculating an output value from a given input value.
  • one example of the one-way function 120b is SHA-256, which is a cryptographic hash function.
  • SHA-256 is a hash function that generates a hash value (output value) with a hash length of 256 bits from an input value with a word length of 32 bits.
  • Counter 120c is also shown in FIG.
  • the counter 120c is used in a simple authentication mode which will be explained later. If the simple authentication mode is not used, it is not essential to provide the counter 120c.
  • SD memory card A stores "one-way function F” and SD memory card B stores "one-way function G". This is because the one-way functions F and G must be the same for the authentication to be established, but it cannot be assumed that they are the same when explaining the process of the authentication process.
  • FIG. 6 is a diagram showing the procedure for updating the machine tool control program using the SD memory card B.
  • FIG. 6 is formally a flowchart, it should be noted that it shows the procedure of operations performed by the offline authentication system 1 as a whole, and is not a process executed by a specific CPU or the like.
  • SD memory card is abbreviated as “SD card” in the drawings.
  • QR code authentication is performed between the authentication terminal 2 having the SD memory card A and the management PC 4 having the SD memory card B.
  • QR code authentication is either one-way authentication or two-way authentication.
  • step S2 if the authentication succeeds, then the controller 125 of SD memory card B sets SD memory card B as accessible. "Access" encompasses reading data and writing data. However, if the SD memory card B has no restrictions on data reading, only writing to the SD memory card B may be set.
  • step S3 the management PC 4 uploads sensor data to the cloud server 90 and also requests an operation program.
  • the management PC 4 downloads the operating program from the cloud server 90 in step S4, and saves the operating program in the SD memory card B in step S5.
  • step S6 the manager of the factory 10 removes the SD card B from the management system and inserts it into the machine tool control system 6.
  • the authentication processing for confirming the authenticity of the SD memory card B is performed between the authentication terminal 2 and the machine tool control system 6, and the authenticity is confirmed.
  • the machine tool control system 6 can read and execute the updated motion program. It should be noted that it is possible to tune the operation program based on the unique sensor data of the machine tool 6b and generate an update program by using so-called artificial intelligence.
  • FIG. 7 is a flowchart showing the procedure of authentication processing.
  • the left side of FIG. 7 shows, in principle, the processing procedure of the controller 125 of the SD memory card A attached to the authentication terminal 2, and the right side, in principle, attached to the management PC 4 or the machine tool control system 6.
  • a processing procedure of the controller 125 of the SD memory card B is shown.
  • part of the processing on the left side of FIG. 7 may be processed by the CPU 22 of the management PC 4 or machine tool control system 6, and part of the processing on the right side of FIG. 7 is processed by the CPU 22 of the authentication terminal 2. In some cases.
  • FIG. 7 is a flowchart showing the procedure of authentication processing.
  • the left side of FIG. 7 shows, in principle, the processing procedure of the controller 125 of the SD memory card A attached to the authentication terminal 2, and the right side, in principle, attached to the management PC 4 or the machine tool control system 6.
  • a processing procedure of the controller 125 of the SD memory card B is shown.
  • FIG. 7 shows a "one-way authentication” processing procedure in which the controller 125 of the SD memory card A confirms the authenticity of the SD memory card B attached to the management PC 4 or the machine tool control system 6. .
  • the "two-way authentication” processing procedure in which the controller 125 of the SD memory card B additionally confirms the authenticity of the SD memory card A is shown in FIG. explain.
  • the controller 125 of the SD memory card A executes the random number generation program 110a to generate the random number RN1. Then, in step S104, the controller 125 executes the QR code generation program 110b to QR code the random number RN1. In step S ⁇ b>106 , the controller 125 transmits the QR code image pattern data to the authentication terminal 2 and causes the display 28 of the authentication terminal 2 to display the QR code.
  • the QR code displayed on the display 28 of the authentication terminal 2 is hereinafter referred to as "QR code 1".
  • the user of the authentication terminal 2 moves the display 28 displaying the QR code 1 to the management PC 4 so that it is within the field of view of the camera 30 provided on the management PC 4. turn. Thereafter, processing by the controller 125 of the SD memory card B attached to the management PC 4 is started.
  • step S202 the controller 125 of the SD memory card B acquires the result of reading the QR code 1 using the camera 30 to the PC 4 for management.
  • step S204 the controller 125 decodes the QR code 1 using the QR code decoding program 110c and extracts the code data.
  • Code data represents the random number RN1 generated by the controller 125 of the SD memory card A.
  • the controller 125 combines the identification information IID stored in the non-user area 120 with the extracted RN1 in step S206, and substitutes it into the one-way function G in step S208 to generate the value G(IID, RN1). .
  • the controller 125 converts the value G (IID, RN1) into a QR code using the QR code generation program 110b, and in step S210, the image pattern data of the QR code (hereinafter referred to as "QR code 2"). to the management PC 4.
  • the management PC 4 causes the display 28 to display the QR code 2 .
  • step S108 the controller 125 of the SD memory card A acquires the result of reading the QR code 2 using the camera 30 on the authentication terminal 2.
  • step S110 the controller 125 decodes the QR code 2 and extracts the code data.
  • Code data represents the value G(IID, RN1).
  • step S112 the controller 125 combines the identification information IID stored in the non-user area 120 with the random number RN1 generated in step S102, substitutes it for the one-way function F in step S114, and obtains the value F( IID, RN1).
  • step S116 determines that the authentication has succeeded. After that, the process proceeds to step S118.
  • Processing "A" shown in FIG. 7 is processing for two-way authentication, which will be described later.
  • step S118 the controller 125 issues an access permission command and transmits it to the management PC 4.
  • the controller 125 of the SD memory card B transitions the flash memory 222 of the SD card B to an accessible state in step S214.
  • the controller 125 of the SD memory card B can write the data received from the authentication terminal 2, the server 90, etc. into the flash memory 222 (step S216).
  • "access” may include reading as well as writing.
  • SD memory card B can be confirmed even when offline. Since SD memory card B can be accessed only when SD memory card B is authenticated as a legitimate recording medium, the data recorded on SD memory card B may be stolen or the SD may be stolen by a malicious third party. Data will not be illegally written into the memory card B.
  • FIG. 8 is a flow chart showing the procedure of two-way authentication processing. The procedure in FIG. 8 is continued from "A" in the processing of the authentication terminal 2 in FIG. The description of the left and right processing procedures conforms to FIG.
  • the process shown in FIG. 8 for two-way authentication corresponds to the process in which the controller 125 of SD memory card A and the controller 125 of SD memory card B are exchanged in the one-way authentication of FIG.
  • step S120 the controller 125 of the SD memory card A attached to the authentication terminal 2 issues a command instructing the start of two-way authentication and transmits it to the management PC 4.
  • step S220 in response to receiving the command, the controller 125 of the SD memory card B generates a random number RN2 using the random number generation program 110a. Then, in step S222, the controller 125 executes the QR code generation program 110b to QR code the random number RN1. In step S224, the controller 125 transmits the image pattern data of the QR code to the management PC 4, and causes the display 28 of the management PC 4 to display the QR code ("QR code 3").
  • step S122 to S132 executed by the controller 125 of the SD memory card A is the same as the processing from steps S202 to S212 in FIG. be.
  • step S132 the processing from steps S226 to S234 of the controller 125 of the SD memory card B in the management PC 4 is performed from step S108 to step S108 in FIG. This is the same as the processing of S116. Therefore, description of these processes is omitted.
  • steps S214 and S216 are common to FIGS. However, in the case of step S214 in FIG. 8, the controller 125 of the SD memory card A does not issue an access permission command, and the controller 125 of the SD memory card B makes a transition to an accessible state by itself.
  • an SD memory card B is attached to the machine tool control system 6, and that the control device 6a reads the operation program in the SD memory card B and controls the machine tool 6b.
  • the power of the machine tool control system 6 is turned off, and then turned on when the work is started.
  • the authentication terminal 2 is used to authenticate the authenticity of the SD memory card B attached to the machine tool control system 6 . It is assumed that the controller 6a can control the machine tool 6b using the operation program only after its authenticity is confirmed.
  • FIG. 9 is a flow chart showing the procedure for setting the simple authentication mode in the machine tool control system.
  • the use of the simple authentication mode is not set from the beginning. Therefore, the setting is requested as a declaration of intention to use the simple authentication mode.
  • step S240 the controller 125 of the SD memory card B attached to the control device 6a of the machine tool control system 6 performs QR code authentication processing with the authentication terminal 2 and confirms successful authentication.
  • step S242 the setting for setting/cancelling the simple authentication mode is accepted based on the user's operation input. As a result, the simple authentication information is saved during the unmounting process in step S246.
  • the "simple authentication information" is represented as the sum of, for example, a random number generated when the simple authentication information is generated and the counter value of the SD memory card counter 120c (FIG. 5) at that time. information.
  • Simple authentication information may be generated by various calculation methods such as difference, product, exclusive OR, etc. instead of the sum, or only the counter value may be used. At least the counter value should be included.
  • the counter 120c (FIG. 5) is managed in the non-user area 120 of the SD memory card, and its counter value increases when writing to the SD memory card occurs. This counter value is only counted up and cannot be counted down, cleared, or externally rewritten arbitrarily by the user. Note that the count-up is an example, and only the count-down may be performed. In short, it suffices if a counter that counts in one direction is provided.
  • the simple authentication information will be deleted and will not be saved until the next simple authentication mode is set.
  • step S244 unmount processing of the SD memory card B is performed, for example, at the timing when the power of the machine tool control system 6 is turned off.
  • the "unmounting process” is a process of canceling the recognition of the SD memory card B that has been attached to and recognized by the control device 6a, and is performed to prevent corruption of data in the SD memory card. Simple authentication information is recorded at the time of unmount processing. Once unmounted, the control device 6a does not write data to the SD memory card B until it is mounted again. The processing when the power is turned off will be described with reference to FIG.
  • FIG. 10 is a flowchart showing the procedure for generating simple authentication data when the power is turned off.
  • the processing in FIG. 10 is an example assuming that it is performed between the control device 6a of the machine tool control system 6 and the SD memory card B inserted in the control device 6a.
  • the operation of the processing circuit 62 of the control device 6a is shown on the left side, and the operation of the controller 125 of the SD memory card B is shown on the right side.
  • the processing circuit 62 of the control device 6a issues a simple authentication information recording command and transmits it to the SD memory card B in step S140.
  • the simple authentication information recording command is a command requesting that the SD memory card B generate and record simple authentication information.
  • the controller 125 of the SD memory card B transmits the generated simple authentication information to the control device 6a.
  • the controller 125 of the SD memory card B uses the random number generation program 110a to generate a random number RNX.
  • the controller 125 reads the counter value CX of the counter 120c from the non-user area 120.
  • the controller 125 saves the generated random number RNX and counter value CX in the non-user area 120.
  • the controller 125 transmits the stored random number RNX and counter value CX to the control device 6a as a response to the recording command.
  • step S142 the processing circuit 62 of the control device 6a stores the received random number RNX and counter value CX in the memory 72, for example, as simple authentication information.
  • the simple authentication information stored in the SD memory card B matches the simple authentication information stored in the memory 72 of the control device 6a.
  • FIG. 11 is a flowchart showing the procedure of simple authentication processing at power-on. The processing in FIG. 11 is also an example assuming that it is performed between the control device 6a of the machine tool control system 6 and the SD memory card B inserted in the control device 6a.
  • the processing circuit 62 When the user turns on the power, the processing circuit 62 energizes the SD memory card B and powers on the SD memory card B in step S150.
  • a power-on detector (not shown) provided in the SD memory card B detects power-on in step S260.
  • step S152 the processing circuit 62 sends the SD memory card B a storage initialization instruction. At the same time, the processing circuit 62 transmits the simple authentication information A held by itself, and further requests transmission of a simple authentication result request command.
  • step S262 in response to the simple authentication result request command, the controller 125 of the SD memory card B executes simple authentication processing. Specifically, the controller 125 first reads the simple authentication information B stored in the storage.
  • step S264 the controller 125 compares the simple authentication information A and the simple authentication information B. If the simple authentication information A and the simple authentication information B match, the controller 125 determines that the authentication has succeeded. On the other hand, if the simple authentication information A and the simple authentication information B do not match, the controller 125 determines that the authentication has failed.
  • step S266 the controller 125 notifies the control device 6a of the simple authentication result as a response to the simple authentication result request command. If the authentication succeeds, in step S268 the controller 125 transitions the SD memory card B to a data writable state.
  • step S154 the processing circuit 62 of the control device 6a determines whether or not the simple authentication is successful based on the notification from the SD memory card B. If the authentication succeeds, the process proceeds to step S156; otherwise, the process proceeds to step S158.
  • the processing circuit 62 transmits a write command and data to the SD memory card B at a predetermined timing.
  • the controller 125 of the SD memory card B writes data to the SD memory card B in step S270, and counts up the counter 120c in step S272.
  • the processing circuit 62 of the control device 6a determines that the SD card cannot be accessed in step S158, and waits until the QR code authentication shown in FIG.
  • the controller 125 of one SD memory card B maintains the access denied state until the QR code authentication with the authentication terminal succeeds in step S274.
  • the manager of the factory 10 can simplify the authentication process while confirming the authenticity of the SD memory card.
  • notification of the simple authentication result in steps S266 and S154 is not essential.
  • the processing circuit 62 of the control device 6a may transmit a command to write or read arbitrary data to/from the SD memory card B, and try. If a notification is received from the SD memory card B as a response to the command that the data has been written or read, it can be determined that the authentication has succeeded.
  • the above description is an example in which the simple authentication process is performed between the control device 6a of the machine tool control system 6 and the SD memory card B inserted in the control device 6a.
  • the simple authentication process may be performed between the management PC 4 and the SD memory card B inserted in the management PC 4 .
  • FIGS. 10 and 11 may be processing independent of the authentication processing using the authentication terminal described using FIGS. 1 to 9 in this disclosure. Therefore, even if the processing in FIGS. 10 and 11 is cut out, it can be used industrially, and it is not essential to combine it with FIGS. 1 to 9.
  • FIG. 10 and 11 is widely applied as a mechanism for verifying that the SD memory card attached to the device before the power is turned off is the same as the SD memory card attached when the device is turned on. It is possible.
  • a recording medium is provided with a counter that counts in one direction each time a data write process is executed, a device in which the recording medium is mounted has a storage device, and At the timing when the recording medium is unmounted from the apparatus, the recording medium stores simple authentication information generated from at least the counter value as first authentication information in a non-user area of the recording medium, and the simple authentication information as second authentication information to the device, and the device stores the second authentication information in the storage device.
  • the first device transmits the second authentication information stored in the storage device to the recording medium, and the controller of the recording medium compares the first authentication information stored in the non-user area with the second authentication information received from the second device, and determines that the second recording medium is authentic if they match.
  • the controller of the recording medium compares the first authentication information stored in the non-user area with the second authentication information received from the second device, and determines that the second recording medium is authentic if they match.
  • the authenticity of the SD memory card B is confirmed using the authentication terminal 2 in the factory 10, but this is only an example.
  • a business may use the process of the present disclosure for the purpose of authenticating a user who has paid a particular contract or fee. More specifically, the company ships the SD memory card only to the user who paid for the music concert.
  • the SD memory card records a random number generation program 110a, QR code generation and decoding programs 110b and 110c, identification information 120a, and a one-way function 120b shown in FIG. It is also assumed that the non-user area 120 stores seat information indicating the position of the seats in the concert venue.
  • the user attaches the SD memory card to his/her own terminal, such as a smart phone, and heads for the concert venue.
  • his/her own terminal such as a smart phone
  • an attendant having the authentication terminal 2 authenticates the authenticity of the SD memory card.
  • the user can access his seat information from the SD memory card and display its location on the smartphone screen. In this way, the possession of a valid SD memory card is used to authenticate the user who is the owner of the card, and by reading the user's unique information, the information is presented only to a specific user. can be done.
  • Flash memory devices such as compact flash (registered trademark) and memory stick (registered trademark) can be used as recording media according to other standards.
  • the present disclosure can be applied to a system for confirming the authenticity of removable recording media such as SD cards offline.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Storage Device Security (AREA)

Abstract

第1記録媒体が装着された第1装置を用いて、第2装置に装着された第2記録媒体の真正性を判定する方法が提供される。第1記録媒体の非ユーザ領域には、第1識別情報及び第1アルゴリズムデータが記録されている。第1記録媒体のコントローラは、第1画像パターンを第1表示装置に表示させ、第1画像パターンの表示後に、第2装置の第2表示装置に表示された第2画像パターンを、第1撮像装置を用いて撮像させる。コントローラは、第2画像パターンから第1コードデータを復号し、第1アルゴリズムデータを利用して第1識別情報及び第1変数値を用いた演算を行う。復号された第1コードデータと演算結果とが一致した場合、第2記録媒体を真正であると判定する。

Description

記録媒体の真正性を判定する方法、及び記録媒体
 本開示は、記録媒体の真正性を判定する方法及び記録媒体に関する。
 有線通信及び無線通信に関する通信インフラの普及に伴い、多くの機器を通信ネットワークに接続することが一般的になりつつある。通信ネットワークに接続されることで、各機器は最新のデータを容易に取得でき、また自身が保持するデータを通信ネットワーク上のサーバ等に容易に送信できる。
 そのような機器には、通常、サイバーセキュリティが確保されている。サイバーセキュリティとは、情報の安全管理のために必要な措置、及び、情報システム及び情報通信ネットワークの安全性及び信頼性の確保のために必要な措置が講じられ、その状態が維持管理されていることを言う。例えば特許文献1は、認証サーバを用いて機器にアクセスするための認証に関するセキュリティを向上させる技術を開示する。
 しかしながら、それでもなお、悪意のある第三者が通信ネットワークを介して機器に不正にアクセスし、情報を窃取するおそれは存在する。
特開2020-201716号公報
 サイバーセキュリティ上の脅威を考慮すると、通信ネットワークに接続せず、産業機器等の重要な機器またはインフラをオフラインで使用する場合も十分考えられる。その際、通信を前提として正規のユーザであることを認証するオンライン認証技術を利用できない。
 本開示は、通信ネットワークに接続されていない状況であっても対象の真正性を確認するためのオフライン認証技術を提供することを目的とする。
 本開示の方法は、第1記録媒体が装着された第1装置を用いて、第2装置に装着された第2記録媒体の真正性を判定する方法である。第1装置は、第1撮像装置及び第1表示装置を有し、第2装置は、第2撮像装置及び第2表示装置を有する。第1記録媒体及び第2記録媒体の各々は、ユーザがデータを書き換え可能なユーザ領域、及びユーザがデータを書き換え不可能な非ユーザ領域を有するフラッシュメモリと、フラッシュメモリへのデータの書き込みおよび/または読み出しを制御するコントローラとを有している。第1記録媒体の非ユーザ領域には、第1識別情報、及び、演算方法を規定する第1アルゴリズムデータが予め記録されている。第1記録媒体のコントローラは、所定の第1変数値が1次元状または2次元状に符号化された第1画像パターンを第1表示装置に表示させる。そして、コントローラは、第1画像パターンの表示後に、第2装置の第2表示装置に表示された1次元状または2次元状の第2画像パターンを、第1撮像装置を用いて撮像させる。さらにコントローラは、撮像された第2画像パターンから第1コードデータを復号し、第1アルゴリズムデータを利用して第1識別情報及び第1変数値を用いた演算を行い、演算結果である第1結果データを出力する。コントローラは、復号された第1コードデータと出力された第1結果データとが一致した場合、第2記録媒体を真正であると判定する。
 本開示の記録媒体は、第1記録媒体であって、かつ、上述した判定する方法を実行するコントローラを備える記録媒体である。
 本開示によれば、通信ネットワークに接続されていない状況であっても対象の真正性を確認するためのオフライン認証技術を提供することが可能である。
オフライン認証システムのハードウェア構成を示すブロック図 認証端末及び管理用PCのハードウェア構成図 制御機器のハードウェア構成図 I/F装置及びSDメモリカードの詳細な構成図 SDメモリカードの記録領域の構成図 SDメモリカードを用いた工作機械の制御プログラムの更新手順を示す図 認証処理の手順を示すフローチャート 双方向認証処理の手順を示すフローチャート 工作機械制御システムにおける簡易認証モードの設定処理の手順を示すフローチャート 電源オフ時の簡易認証用データを生成する処理の手順を示すフローチャート パワーオン時の簡易認証処理の手順を示すフローチャート
 以下、適宜図面を参照しながら、実施の形態を詳細に説明する。但し、必要以上に詳細な説明は省略する場合がある。例えば、既によく知られた事項の詳細説明や実質的に同一の構成に対する重複説明を省略する場合がある。これは、以下の説明が不必要に冗長になるのを避け、当業者の理解を容易にするためである。
 なお、発明者は、当業者が本開示を十分に理解するために添付図面及び以下の説明を提供するのであって、これらによって特許請求の範囲に記載の主題を限定することを意図するものではない。
 [1.オフライン認証システムの構成]
 図1は、オフライン認証システム1のハードウェア構成を示すブロック図である。オフライン認証システム1は、例えば工場10内に設置された、工場機器・産業機械・インフラ設備などの通常オフラインで利用されている機器を認証するために利用される。機器をオフラインで利用する理由は、通信ネットワーク80を介して外部から悪意のある第三者が侵入し、機器が乗っ取られたり、機器のデータを窃取されたりしないようにするためである。すなわちサイバーセキュリティ上の脅威から機器を守るためである。以下、通常オフラインで利用されている機器を、「オフライン機器」と呼ぶ。
 オフライン機器であっても、保守・定期点検などで、当該オフライン機器が蓄積したセンサデータの収集、オフライン機器において使用されている動作プログラムのバージョンアップなどを行う必要がある。そのような場合には、オフライン機器からセンサデータを収集し、またはオフライン機器に外部からソフトウェアを導入する必要が生じる。このような場合、SDメモリカードのような取り外し可能な記録媒体が利用され得る。
 セキュリティを高く維持するために通常オフラインで利用されている機器であるから、そのような機器に装着される記録媒体についても、本来利用が想定されている記録媒体であるかどうか、すなわち記録媒体の正当性または真正性を確認する必要がある。オフライン認証システム1では、記録媒体自体にそのような認証を行う仕組みを持たせて記録媒体の真正性の確認を可能とする。そのような仕組みは、具体的には以下の通りである。
 まず、工場10内で利用されることが想定される、複数枚の取り外し可能な記録媒体が用意される。そのような記録媒体はいずれも、ユーザがデータを書き換え可能な「ユーザ領域」、及びユーザがデータを書き換え不可能な「非ユーザ領域」を有するフラッシュメモリが設けられている。そして、非ユーザ領域には、予め、同じ識別情報、及び、演算方法を規定するアルゴリズムデータが予め記録されている。本実施形態では、当該識別情報は「初期登録用ID(IID)」、及びアルゴリズムデータは「一方向性関数」と呼ぶ。非ユーザ領域に予め必要な情報等を記録しておく必要性があるため、各記録媒体は、例えばある事業者が本開示にかかる認証を行うことを目的として製造されている。
 本実施形態にかかるオフライン認証システム1では、SDメモリカードAを装着した認証端末2が、SDメモリカードAに記録された初期登録用ID及び一方向関数を利用して、他のSDメモリカードBの真正性を認証する。後述のように、SDメモリカードを利用する場合、SDメモリカードに設けられた演算回路であるコントローラが必要な処理を行い、認証端末2等のディスプレイにQRコード(登録商標。以下同じ。)を表示させて認証を行う。「QRコード」とは、所定のデータ長以下のデータを画像パターンによって表現した、マトリックス型二次元コードである。本実施形態ではQRコードを用いた例を説明するが、QRコードを用いることは必須ではない。例えば、一次元コードであるバーコードを用いてもよい。
 QRコードの生成に必要な情報・機能がカードの非ユーザ領域(セキュア領域)に保管されているため、機器側でのセキュリティを担保したり特別な機能を有したりする必要性がほとんどない。SDメモリカードを装着する機器には、当該コントローラからの指示・データに基づいてQRコードを表示し、読み取る機能が設けられていればよく、他に特殊な機器および/または機能は必要とされない。つまり、認証を行うためには機器は必要ではあるが、実体的には、SDメモリカードAがSDメモリカードBを認証していると言うことができる。これにより、工場10の経営者は、比較的低コストでオフライン認証システム1を導入することができる。以下、オフライン認証システム1を具体的に説明する。
 オフライン認証システム1では、例えば工場10内で、SDメモリカードAが装着された認証端末2を用いて、管理システム4または工作機械制御システム6に装着されたSDメモリカードBの真正性が確認される。認証端末2は、例えばスマートフォン、タブレットPC、ノートPCなどのモバイルコンピュータであり得る。このとき主として利用されるのはSDメモリカードとQRコードであり、オフラインで、かつ工場10内での認証(ローカル認証)が実現される。
 SDメモリカードBは、当初、工作機械制御システム6の制御機器6aに装着されているとする。制御機器6aは、工作機械6bを制御するコンピュータシステム、例えばPCであり、SDメモリカードBを装着するためのSDメモリカードスロット(図示せず)を有している。工作機械6bには種々のセンサ7a及び7bが設けられている。センサ7aは、例えばイメージセンサを有するカメラであり、センサ7bは工作機械6bのモータ(図示せず)の回転角を検出する確度センサである。SDメモリカードBには、工作機械6bの動作に伴って、収集された種々のセンサ7a及び7bのセンサデータが記録されている。
 そのようなSDメモリカードBが制御機器6aから取り外され、人によって持ち運ばれ、管理システム4のPC(以下「管理用PC4」と記述する。)に装着される。SDメモリカードBが一旦制御機器6aから取り外されると、管理用PC4にとってはそのSDメモリカードBが本来使用することが想定されているSDメモリカードであるか否か、すなわちSDメモリカードBの真正性が不明である。そこで、本実施形態では、認証端末2のディスプレイに表示されたQRコードQaを用いた認証処理によってSDメモリカードBの真正性が確認される。このとき、管理用PC4のディスプレイに表示されたQRコードQbを用いてさらに認証端末2のSDメモリカードAが認証されてもよい。これにより、より厳重な認証を行うことも可能である。認証処理の詳細な手順は後述する。
 SDメモリカードBの真正性が確認されたことにより、SDメモリカードAは、認証端末2を介して、SDメモリカードBへのアクセスを許可することを通知するコマンドを管理用PC4のSDメモリカードBに出力する。当該コマンドの受信に応答して、SDメモリカードBのコントローラは、SDメモリカードB内のフラッシュメモリからのデータの読み出しおよび/またはデータの書き込みを許可する。
 管理用PC4は、通信ネットワーク80に接続され、クラウドサーバ90と通信を行うことができる。SDメモリカードBの真正性が確認されてSDメモリカードB内のフラッシュメモリへのアクセスが許可されたため、管理用PC4はSDメモリカードBに記録されているセンサデータ70を読み出して、通信ネットワーク80を介してクラウドサーバ90に送信する。クラウドサーバ90は、センサデータ70を解析することによって、工作機械制御システム6により適合した動作プログラム72を生成する。クラウドサーバ90は、通信ネットワーク80を介して動作プログラム72を管理用PC4に送信する。管理用PC4ではSDメモリカードBへのアクセスが許可されているため、動作プログラム72がSDメモリカードBに記録される。その後、SDメモリカードBは管理用PC4から取り外され、再び工作機械制御システム6の制御機器6aに装着される。このときもまた、認証端末2と制御機器6aとの間で、QRコードQcを用いた認証処理が行われ、SDメモリカードBの真正性が確認される。SDメモリカードBの真正性が確認されると、制御機器6aは動作プログラム72を読み出して、これまでの動作プログラムをアップデートすることができる。
 QRコードを用いた認証処理を説明する前に、認証処理に利用される機器及びSDメモリカードの構成を説明する。
 図2は、認証端末2及び管理用PC4に共通するハードウェア構成を示している。また図3は、制御機器6aのハードウェア構成を示している。図2と図3との相違点は、図2の構成に存在する通信回路が、図3の制御機器6aには存在しない点である。その他の構成は同じである。以下、図2を参照する。
 認証端末2及び管理用PC4は、処理回路22と、通信回路24と、SDメモリカードのインタフェース装置(SD-I/F装置)26と、ディスプレイ28と、カメラ30と、メモリ32とを有している。以下では、SD-I/F装置を「I/F装置」と略記する。
 処理回路22は、いわゆるCPU(Central Processing Unit)と呼ばれる半導体集積回路である。処理回路22は、I/F装置26を介してSDメモリカードAまたはBにコマンドを発行し、またはSDメモリカードAまたはBからデータを受け取る。処理回路22はまた、他の構成要素とも通信可能である。なお図では処理回路22が各構成要素と直接接続されているかのように記載されているが、例えば内部バスを介して接続されていてもよい。
 通信回路24は、外部と有線または無線で通信を行って情報を授受する。有線通信の例は、Ethernet(イーサネット:登録商標)規格に基づく有線LAN、又は、光ファイバケーブルを用いた接続などがある。無線通信の例は、基地局等を介しての外部機器との無線接続、又は、外部機器との直接無線接続などがある。基地局等を介しての外部機器との無線接続としては、例えば、Wi-Fi(ワイファイ:登録商標)ルータと無線通信するIEEE802.11対応の無線LAN、第3世代移動通信システム(通称3G)、第4世代移動通信システム(通称4G)、第5世代移動通信システム(通称5G)、IEEE 802.16対応のWiMax(ワイマックス:登録商標)、又は、LPWA(Low Power Wide Area)などがある。
 I/F装置26は、SDメモリカードAまたはBが装填されるSDメモリカードスロット、スロット内部の接続端子、及びSDメモリカードAまたはBと通信を行う種々の回路である。I/F装置26の構成の詳細は図4を参照しながら後述する。
 ディスプレイ28は、文字、画像等を表示する表示装置である。本実施形態において、ディスプレイ28はQRコードを表示するために利用される。
 カメラ30は、動画または静止画を撮影可能な周知の撮像装置である。本実施形態において、カメラ30は相手方の機器のディスプレイに表示されたQRコードを撮影するために利用される。
 メモリ32は、処理回路22が実行するコンピュータプログラムを記憶する。本明細書では、メモリ32はRAMおよびROMを包括する。ROMに記憶されているコンピュータプログラムは、処理回路22によって読み出され、RAMに展開される。これにより、処理回路22は、コンピュータプログラムを実行することができる。
 次に、図3を参照する。制御機器6aは、処理回路62と、SDメモリカードのインタフェース装置(SD-I/F装置)66と、ディスプレイ68と、カメラ70と、メモリ72とを有している。以下でも、SD-I/F装置を「I/F装置」と略記する。これらの実体的な構成は、図2に示す同名の構成要素と同じである。したがって、各構成要素の説明として図2の同名の構成要素の説明を援用し、具体的な説明は省略する。
 図4は、I/F装置26及び66と、SDメモリカードA及びBの詳細な構成を示している。一般に、I/F装置26及び66は「ホスト装置」と呼ばれ、SDメモリカードA及びBは「スレーブ装置」ともよばれる。以下では、I/F装置26及びSDメモリカードAを例示して説明する。
 I/F装置26は、コントローラ106と、ホスト装置I/F105と、クロック発生器201と、レジスタ202と、サンプリングクロック発生器203とを有する。ホスト装置I/F105は、送信機能を実現する送信部105T、及び受信機能を実現する受信部105Rを有する。
 SDメモリカードAは、スレーブ装置I/F124と、コントローラ125と、レジスタ221と、フラッシュメモリ222とを有する。スレーブ装置I/F124もまた、送信機能を実現する送信部124T、及び受信機能を実現する受信部124Rを有する。
 I/F装置26のクロック発生器201は、基本クロック信号tclkをCLKライン111上に出力する。例えば、基本クロック信号tclkの1周期は2.8ナノ秒であり、周波数は208MHzである。基本クロック信号は、ホスト装置I/F105を介してSDメモリカードAに送信され、SDメモリカードAが動作する際のクロック信号として利用される。またクロック発生器201は、基本クロック信号をサンプリングクロック発生器203にも出力する。図2では、サンプリングクロック発生器203が受け取る基本クロック信号を便宜的に「SDCLK」と記載している。
 サンプリングクロック発生器203は、クロック発生器201から基本クロック信号SDCLKを受け取り、かつ、コントローラ106から選択信号を受け取って、サンプリングクロック信号を出力する。サンプリングクロック信号は、いわゆる打ち抜きタイミングを決定する際に利用されるクロック信号である。
 なお、ホスト装置100とスレーブ装置120との間のデータの送受信は、ホスト装置I/F105の送信部105T及び受信部105Rと、スレーブ装置I/F124の送信部124T及び受信部124Rとを用いて行われるが、以下では特に明示しない。単に、I/F装置26のコントローラ106と、SDメモリカードAのコントローラ125との間で通信が行われるとして説明する。
 次に、レジスタ221及びフラッシュメモリ222によって構成されるSDメモリカードA及びBの記録領域を、図5を参照しながら説明する。
 図5は、SDメモリカードA及びBの記録領域の構成を説明するための図である。SDメモリカードA及びBの記録領域は、通常領域またはユーザ領域110と、セキュア領域または非ユーザ領域120とを有する。
 ユーザ領域110はユーザがデータを書き換え可能な領域である。ユーザ領域110には、乱数生成プログラム110aと、QRコード生成プログラム110bと、QRコードデコードプログラム110cとが予め記録されている。乱数生成プログラム110aは周知のアルゴリズムを用いて乱数を生成するプログラムである。乱数は所定の変数値の一例である。QRコード生成プログラム110bは、所定のデータから、そのデータを示すQRコードを生成するプログラムである。QRコードデコードプログラム110cは、カメラ30または70を用いて撮影されたQRコードを復号してデータを抽出するプログラムである。これらのプログラムはSDメモリカードA及びBのコントローラ125によって実行される。QRコードの生成方法及び復号方法は周知である。よって、QRコード生成プログラム110b及びQRコードデコードプログラム110cの具体的な処理内容の説明は省略する。なお、QRコード生成プログラム110b及びQRコードデコードプログラム110cは別個のプログラムである必要はなく、1つのプログラムでQRコードの生成及び復号の両方を行ってもよい。なお、乱数生成プログラム110aと、QRコード生成プログラム110bと、QRコードデコードプログラム110cとは非ユーザ領域120に記録されても良い。
 非ユーザ領域120は、ユーザがデータを書き換え不可能な領域である。非ユーザ領域120には、識別情報(IID)120aと、一方向性関数120bが予め記録されている。識別情報(IID)120aは、SDメモリカードA及びBに共通の、換言すると同一の情報である。一方向性関数120bは、ある入力値から出力値を算出するための演算方法を特定する。本実施形態において、一方向性関数120bの一例は、暗号学的ハッシュ関数であるSHA-256である。SHA-256は、32ビットのワード長を有する入力値から、256ビットのハッシュ長を有するハッシュ値(出力値)を生成するハッシュ関数である。
 図5には「カウンタ120c」も記載されている。カウンタ120cは後に説明する簡易認証モードにおいて利用される。簡易認証モードが利用されない場合には、カウンタ120cを設けることは必須ではない。
 以下の説明では、便宜上、SDメモリカードAには「一方向性関数F」が記録され、SDメモリカードBには「一方向性関数G」が記録されているとする。認証が成立するためには一方向性関数F及びGは同一であることが必要とされるが、認証処理の過程を説明する際には両者が同一であることを前提とできないからである。
 [2.オフライン認証システム1において行われる動作]
 次に、オフライン認証システム1における認証処理の手順を説明する。先に図1を参照しながら簡単に説明したように、以下では、SDメモリカードBを利用して工作機械制御システム6の動作プログラムを更新する際の処理を例示して説明する。
 図6は、SDメモリカードBを用いた工作機械の制御プログラムの更新手順を示す図である。図6は形式的にはフローチャートであるが、オフライン認証システム1全体で行われる動作の手順を示しており、特定のCPU等によって実行される処理ではないことに留意されたい。記載の便宜上、図面では「SDメモリカード」を「SDカード」と略記する。
 ステップS1において、SDメモリカードAを有する認証端末2とSDメモリカードBを有する管理用PC4との間でQRコード認証が実行される。QRコード認証は、片方向認証または双方向認証のいずれかで行われる。
 ステップS2において、認証が成功すると、その後、SDメモリカードBのコントローラ125がSDメモリカードBをアクセス可に設定する。「アクセス」とはデータの読み出し及びデータ書き込みを包括する。ただし、SDメモリカードBにおいてデータの読み出しに制限が設けられない場合には、SDメモリカードBへの書き込み可のみが設定されればよい。
 ステップS3において、管理用PC4はクラウドサーバ90へセンサデータをアップロードし、併せて動作プログラムを要求する。
 管理用PC4は、ステップS4において、クラウドサーバ90から動作プログラムをダウンロードし、ステップS5において、動作プログラムをSDメモリカードBに保存する。
 ステップS6において、工場10の経営者は管理システムからSDカードBを抜き、工作機械制御システム6に挿入する。その後、上述の片方向認証または双方向認証が、認証端末2と工作機械制御システム6との間で、SDメモリカードBの真正性を確認するための認証処理が行われ真正性が確認されると、工作機械制御システム6は更新された動作プログラムを読み出して実行することが可能になる。なお、いわゆる人工知能を利用する等により、工作機械6bの固有のセンサデータに基づいて動作プログラムをチューニングし、更新プログラムを生成することが可能である。
 次に、認証処理の具体的な内容を説明する。
 図7は、認証処理の手順を示すフローチャートである。図7の左側には、原則として認証端末2に装着されたSDメモリカードAのコントローラ125の処理の手順が示され、右側には、原則として管理用PC4または工作機械制御システム6に装着されたSDメモリカードBのコントローラ125の処理の手順が示されている。ここで、図7の左側の一部の処理は管理用PC4または工作機械制御システム6のCPU22によって処理される場合もあり、図7右側の一部の処理は認証端末2のCPU22によって処理される場合もある。なお、図7は、SDメモリカードAのコントローラ125が、管理用PC4または工作機械制御システム6に装着されたSDメモリカードBの真正性を確認する「片方向認証」の処理手順を示している。「片方向認証」の処理の後、さらに、SDメモリカードBのコントローラ125がSDメモリカードAの真正性を追加で確認する「双方向認証」の処理手順は図8に示されており、後に説明する。
 以下では、認証端末2と管理用PC4とを用いてSDメモリカードBの真正性が確認される処理を説明する。
 図7のステップS102において、SDメモリカードAのコントローラ125は、乱数生成プログラム110aを実行して乱数RN1を生成する。そしてステップS104において、コントローラ125は、QRコード生成プログラム110bを実行して、乱数RN1をQRコード化する。ステップS106において、コントローラ125は、QRコードの画像パターンデータを認証端末2に送信し、認証端末2のディスプレイ28にQRコードを表示させる。以下では、認証端末2のディスプレイ28に表示されたQRコードを「QRコード1」と呼ぶ。
 QRコード1がディスプレイ28に表示されている状態で、認証端末2のユーザは、管理用PC4に設けられたカメラ30の視野に入るよう、QRコード1が表示されたディスプレイ28を管理用PC4に向ける。以下、管理用PC4に装着されたSDメモリカードBのコントローラ125による処理が開始される。
 ステップS202において、SDメモリカードBのコントローラ125は、管理用PC4に、カメラ30を用いてQRコード1を読み取った結果を取得する。ステップS204において、コントローラ125は、QRコードデコードプログラム110cを用いてQRコード1を復号し、コードデータを抽出する。コードデータは、SDメモリカードAのコントローラ125によって生成された乱数RN1を表す。
 コントローラ125は、ステップS206において、非ユーザ領域120に格納されている識別情報IIDと抽出したRN1を結合し、ステップS208において一方向性関数Gに代入し、値G(IID,RN1)を生成する。その後、コントローラ125は、ステップS210において、QRコード生成プログラム110bを用いて値G(IID,RN1)をQRコード化し、ステップS210において、そのQRコード(以下、「QRコード2」)の画像パターンデータを管理用PC4に送信する。管理用PC4はディスプレイ28にQRコード2を表示させる。
 次に、再び認証端末2に装着されたSDメモリカードAのコントローラ125の処理が開始される。認証端末2側から見ると、QRコード1をディスプレイ28に表示した後、管理用PC4のディスプレイ28に新たにQRコード2が表示されるまでは処理を待機している。
 ステップS108において、SDメモリカードAのコントローラ125は、認証端末2に、カメラ30を用いてQRコード2を読み取った結果を取得する。ステップS110において、コントローラ125は、QRコード2を復号してコードデータを抽出する。コードデータは、値G(IID,RN1)を表す。
 一方、コントローラ125は、ステップS112において、非ユーザ領域120に格納されている識別情報IIDとステップS102において生成した乱数RN1とを結合し、ステップS114において一方向性関数Fに代入し、値F(IID,RN1)を生成する。
 ステップS116において、コントローラ125は、G(IID,RN1)=F(IID,RN1)かを判定する。G(IID,RN1)=F(IID,RN1)が成り立たない場合、SDメモリカードAのコントローラ125は、認証が失敗したとして処理は終了する。本実施形態では一方向性関数を用いているため、管理用PC4側で、識別情報IID及び乱数値RN1が異なっている場合や、一方向性関数Gが一方向性関数Fと異なる場合には、ステップS116の等式は成り立たない。これにより、SDメモリカードAのコントローラ125は、SDメモリカードBの真正性を確認できないと判断できる。
 一方、ステップS116の等式が成り立つ場合、コントローラ125は、認証は成功したと判定する。その後、処理はステップS118に進む。なお図7に示す処理「A」は後に説明する双方向認証のための処理である。
 ステップS118において、コントローラ125は、アクセス許可コマンドを発行し、管理用PC4に送信する。
 アクセス許可コマンドの受信に応答して、SDメモリカードBのコントローラ125は、ステップS214においてSDカードBのフラッシュメモリ222にアクセスが可能な状態に遷移させる。その結果、SDメモリカードBのコントローラ125は、認証端末2、サーバ90等から受け取ったデータをフラッシュメモリ222に書き込むことが可能になる(ステップS216)。上述のように「アクセス」は、書き込みだけでなく、読み出しを含んでもよい。
 以上の処理により、オフラインであってもSDメモリカードBの真正性を確認できる。SDメモリカードBが正当な記録媒体であると認証された場合にのみ、SDメモリカードBにアクセスできるため、SDメモリカードBに記録されたデータが窃取されたり、悪意のある第三者によってSDメモリカードBに不正にデータが書き込まれたりすることもない。
 図8は、双方向認証処理の手順を示すフローチャートである。図8の手順は、図7の認証端末2の処理における「A」からの続きである。左右の処理手順の記載は図7に準じる。
 双方向認証のための図8に示す処理は、図7の片方向認証におけるSDメモリカードAのコントローラ125と、SDメモリカードBのコントローラ125とを入れ替えた処理に相当する。
 ステップS120において、認証端末2に装着されたSDメモリカードAのコントローラ125は、双方向認証を開始することを指示するコマンドを発行し、管理用PC4に送信する。
 ステップS220において、当該コマンドの受信に応答して、SDメモリカードBのコントローラ125は乱数生成プログラム110aにより乱数RN2を生成する。そしてステップS222において、コントローラ125は、QRコード生成プログラム110bを実行して、乱数RN1をQRコード化する。ステップS224において、コントローラ125は、QRコードの画像パターンデータを管理用PC4に送信し、管理用PC4のディスプレイ28にQRコード(「QRコード3」)を表示させる。
 QRコード3を管理用PC4のディスプレイ28に表示させた後の、SDメモリカードAのコントローラ125が実行するステップS122からS132の処理は、それぞれ、図7におけるステップS202からS212までの処理と同様である。また、ステップS132によって認証端末2のディスプレイ28にQRコード4が表示された後の、管理用PC4におけるSDメモリカードBのコントローラ125のステップS226からS234の処理は、それぞれ、図7におけるステップS108からS116の処理と同様である。よってこれらの処理の説明は省略する。なおステップS214及びS216は図7及び図8に共通である。ただし、図8におけるステップS214の場合には、SDメモリカードAのコントローラ125はアクセス許可コマンドを発行せず、SDメモリカードBのコントローラ125が自身でアクセスが可能な状態に遷移させる。
 双方向認証を行うことにより、SDメモリカードBの真正性だけでなく、SDメモリカードAの真正性も確認することができる。両方の真正性が確認されなければSDメモリカードBはアクセスが可能な状態に遷移しないため、より高いセキュリティを確保できる。例えば、SDメモリカードA内の情報が不正に窃取・改ざんされ、任意のSDメモリカードに対してアクセス許可コマンドを発行してしまうような場合であっても、SDメモリカードBにアクセス許可がされてしまうことを防止できる。
 次に、認証手続きを簡略化する処理を説明する。管理用PC4に新たにSDメモリカードが装着された場合や、管理用PC4や工作機械制御システム6に電源が投入された際にSDメモリカードが装着されている場合、機器はそのSDメモリカードに無制限にアクセスすることはできない。認証端末2を用いた図7に示す認証処理によってそのSDメモリカードの真正性が確認された場合に、認証端末2のSDメモリカードのコントローラが、そのSDメモリカードへのアクセスを許可する。または、認証端末2を用いた図8に示す認証処理によって、そのSDメモリカードの真正性が確認された場合のみ、管理用PC4等に装着されたSDメモリカードのコントローラが、自身へのアクセス許可を設定する。
 以下では、工作機械制御システム6にSDメモリカードBが装着されており、SDメモリカードB内の動作プログラムを制御機器6aが読み出して工作機械6bを制御している状況を想定して説明する。工作機械6bの作業が終了すると、工作機械制御システム6の電源はオフされ、次に作業が開始される際に電源がオンされる。通常は、電源がオンされた後、認証端末2を用いて工作機械制御システム6に装着されているSDメモリカードBの真正性が認証される。真正性が確認されて初めて、その動作プログラムを利用して制御機器6aは工作機械6bを制御できるとする。
 このような認証処理を毎回行うことに代えて、一定の条件が満たされた場合にはSDメモリカードの真正性が担保されていると見なし、認証端末2を用いた認証処理を経ずにSDメモリカードへのアクセス許可を設定できることとした。このような簡易認証を導入すると、例えば工場10内に工作機械制御システム6が多数存在する場合には、1台1台認証処理を行わなくて済むため特に有用である。なお、簡易認証処理は、本開示における必須の処理ではなく、ユーザが任意に採用する否かを選択し得る処理である。
 図9は、工作機械制御システムにおける簡易認証モードの設定処理の手順を示すフローチャートである。簡易認証モードを利用することは当初からは設定されていない。そこで、簡易認証モードを利用する意思表示としてその設定を求める。
 ステップS240において、工作機械制御システム6の制御機器6aに装着されたSDメモリカードBのコントローラ125は、認証端末2との間でQRコード認証処理を行い、認証成功を確認する。
 ステップS242において、ユーザの操作入力に基づいて、簡易認証モードの設定/解除の設定が受け付けられる。これにより、ステップS246のアンマウント処理時において、簡易認証情報が保存されるようになる。
 本実施形態では、「簡易認証情報」は、例えば簡易認証情報が生成される時点で生成された乱数と、その時点のSDメモリカードのカウンタ120c(図5)のカウンタ値との和として表される情報である。和に代えて、差、積、排他的論理和等の種々の演算方法によって簡易認証情報を生成してもよいし、カウンタ値のみでもよい。少なくともカウンタ値が含まれていればよい。カウンタ120c(図5)は、SDメモリカードの非ユーザ領域120で管理されており、SDメモリカードへの書き込みが発生した場合にそのカウンタ値が増加する。このカウンタ値は、カウントアップのみが行われ、カウントダウンが行われたり、クリアされたり、あるいは外部からユーザが任意に書き換えられない。なお、カウントアップは一例であり、カウントダウンのみが行われてもよい。要するに、一方向にカウントが行われるカウンタが設けられていればよい。
 既に簡易認証モードが設定されている場合に、簡易認証モードの解除が選択された場合には、簡易認証情報は削除され、次に簡易認証モードが設定されるまで簡易認証情報は保存されない。
 ステップS244において、例えば工作機械制御システム6の電源がオフされるタイミングでSDメモリカードBのアンマウント処理が行われる。「アンマウント処理」とは、制御機器6aに装着されて認識されているSDメモリカードBの認識を解除する処理であり、SDメモリカード内のデータの破損を防ぐために行われる。アンマウント処理の時点で、簡易認証情報が記録される。アンマウントされると、再度マウントが行われるまで、その制御機器6aはそのSDメモリカードBにデータを書き込まない。図10を参照しながら、電源オフ時の処理を説明する。
 図10は、電源オフ時の簡易認証用データを生成する処理の手順を示すフローチャートである。図10の処理は、工作機械制御システム6の制御機器6aと、制御機器6aに挿入されたSDメモリカードBとの間で行われることを想定した例である。左側が制御機器6aの処理回路62の動作であり、右側がSDメモリカードBのコントローラ125の動作である。
 ユーザによって電源のオフ操作が行われると、ステップS140において、制御機器6aの処理回路62は簡易認証情報記録コマンドを発行し、SDメモリカードBに送信する。簡易認証情報記録コマンドは、SDメモリカードBに簡易認証情報を生成し記録することを要求するコマンドである。以下に説明するように、このコマンドに対する応答として、SDメモリカードBのコントローラ125は生成した簡易認証情報を制御機器6aに送信する。
 ステップS250において、SDメモリカードBのコントローラ125は、乱数生成プログラム110aを用いて、乱数RNXを生成する。ステップS252において、コントローラ125は非ユーザ領域120からカウンタ120cのカウンタ値CXを読み出す。そしてステップS256において、コントローラ125は、非ユーザ領域120に、生成した乱数RNX及びカウンタ値CXを保存する。ステップS258において、コントローラ125は、記録コマンドへの応答として、記憶した乱数RNX及びカウンタ値CXを制御機器6aに送信する。
 ステップS142において、制御機器6aの処理回路62は、受け取った乱数RNX及びカウンタ値CXを簡易認証情報として、例えばメモリ72に保存する。
 以上の処理によれば、簡易認証情報が生成された時点では、SDメモリカードB内に保存されている簡易認証情報と、制御機器6aのメモリ72に保存された簡易認証情報とは一致する。
 図11は、パワーオン時の簡易認証処理の手順を示すフローチャートである。図11の処理も、工作機械制御システム6の制御機器6aと、制御機器6aに挿入されたSDメモリカードBとの間で行われることを想定した例である。
 ユーザによって電源のオン操作が行われると、ステップS150において、処理回路62はSDメモリカードBに通電し、SDメモリカードBの電源をオンする。SDメモリカードBに通電されると、ステップS260においてSDメモリカードBに設けられたパワーオン検出部(図示せず)が電源オンを検出する。
 ステップS152において、処理回路62は、SDメモリカードBに、ストレージの初期化指示を送信する。併せて処理回路62は、自身が保持していた簡易認証情報Aを送信し、さらに簡易認証の結果要求コマンドの送信を要求する。
 ステップS262において、簡易認証の結果要求コマンドの受信に応答して、SDメモリカードBのコントローラ125は簡易認証のための処理を実行する。具体的にはコントローラ125は、まずストレージに記憶されている簡易認証情報Bを読み込む。
 ステップS264において、コントローラ125は、簡易認証情報Aと簡易認証情報Bとを比較する。簡易認証情報Aと簡易認証情報Bとが一致する場合、コントローラ125は、認証は成功したと判定する。一方、簡易認証情報Aと簡易認証情報Bとが一致しない場合、コントローラ125は、認証は失敗したと判定する。
 ステップS266において、コントローラ125は、簡易認証の結果要求コマンドへの応答として、簡易認証結果を制御機器6aに通知する。認証に成功した場合、ステップS268において、コントローラ125は、SDメモリカードBをデータの書き込みが可能な状態に遷移させる。
 ステップS154において、制御機器6aの処理回路62は、SDメモリカードBからの通知に基づいて、簡易認証成功か否かを判定する。認証に成功した場合には処理はステップS156に進み、失敗した場合には処理はステップS158に進む。
 ステップS156において、処理回路62は、所定のタイミングでSDメモリカードBに書き込みコマンド及びデータを送信する。
 SDメモリカードBのコントローラ125は、ステップS270においてSDメモリカードBにデータを書き込み、ステップS272においてカウンタ120cのカウントアップを行う。
 認証に失敗した場合、制御機器6aの処理回路62は、ステップS158において、SDカードへのアクセスはできないとして、認証端末2との間で図6等に示すQRコード認証が成功するまで待機する。
 一方のSDメモリカードBのコントローラ125は、ステップS274において、認証端末との間でQRコード認証が成功するまではアクセス拒否の状態を維持する。
 以上の簡易認証処理によれば、電源オン時に装着されているSDメモリカードが、直前に電源オフされた時点で認証されて使用されていたSDメモリカードであるか否かを判定できる。電源オフ時及びオン時に装着されていたSDメモリカードが同一であると判定した場合には、認証端末2を用いた認証処理を経ることなく、SDメモリカードをアクセス可能な状態に遷移させることができる。よって、工場10の経営者はSDメモリカードの真正性を確認しながら、認証処理を簡略化することができる。
 なお、ステップS266及びS154における簡易認証結果の通知は必須ではない。例えば制御機器6aの処理回路62は、簡易認証情報Aを送信した後、SDメモリカードBに対する任意のデータの書き込みや読み出しを行うコマンドを送信し、試行してみればよい。SDメモリカードBから、コマンドに対する応答として、データの書き込みや読み出しができたことを報告する通知を受信した場合には、認証が成功したと判定することができる。
 また、上述の説明は、簡易認証処理を、工作機械制御システム6の制御機器6aと、制御機器6aに挿入されたSDメモリカードBとの間で行われる例であった。簡易認証処理は、管理用PC4と、管理用PC4に挿入されたSDメモリカードBとの間で行われてもよい。
 なお、図10および図11における処理は、本開示で図1ないし図9を用いて説明した認証端末を用いた認証処理とは独立した処理であり得る。従って、図10および図11における処理を切り出しても産業上利用することが可能であり、必ずしも、図1ないし図9と組み合わせることが必須ではない。要は図10および図11における処理は電源オフまでに機器に装着されていたSDメモリカードが、機器のオン時に装着されているSDメモリカードと同一のものであることを検証する仕組みとして広く適用可能である。すなわち、本開示は、記録媒体に、データの書き込み処理が実行される度に一方向にカウントされるカウンタが設けられており、前記記録媒体を装着する装置は記憶装置を有しており、前記装置から前記記録媒体のマウントが解除されるタイミングにおいて、前記記録媒体は少なくとも前記カウンタ値から生成される簡易認証情報を第1認証情報として前記記録媒体の非ユーザ領域に保存し、前記簡易認証情報を第2認証情報として前記装置に送信し、前記装置は、前記第2認証情報を前記記憶装置に保存する判定方法を含む。また、本開示は、前記装置に前記記録媒体がマウントされたタイミングで、前記第置は、前記記憶装置に保存されていた前記第2認証情報を前記記録媒体に送信し、前記記録媒体のコントローラは、前記非ユーザ領域に保存していた前記第1認証情報と、前記第2装置から受信した前記第2認証情報とを比較し、一致している場合には前記第2記録媒体を真正であると判定する判定方法を含む。
 以上、本開示の例示的な実施形態を説明した。
 上述の説明では、工場10内で認証端末2を用いてSDメモリカードBの真正性を確認したが、これは一例に過ぎない。他に、例えば事業者が、特定の契約や料金の支払いを行ったユーザを認証する目的で本開示の処理を利用してもよい。より具体的には、事業者が、音楽コンサートの入金を行ったユーザにのみ、SDメモリカードを発送する。SDメモリカードには、図5に示す乱数生成プログラム110a、QRコード生成及びデコードプログラム110b及び110c、識別情報120a、及び一方向性関数120bが記録されている。また、非ユーザ領域120にはコンサート会場の座席の位置を示す座席情報が格納されているとする。ユーザは、そのSDメモリカードを自身の端末、例えばスマートフォン、に装着してコンサート会場に向かう。コンサート会場では、認証端末2を有する係員がSDメモリカードの真正性を認証する。真正性が確認されると、そのユーザはSDメモリカードから、自身の座席情報にアクセスしてスマートフォンの画面にその位置を表示することができる。このように、正当なSDメモリカードを所有していることを利用して、その所有者であるユーザを認証し、ユーザの固有の情報を読み出すことで、特定のユーザのみに情報を提示することができる。
 本明細書ではSDメモリカードを例示して説明したが、上述の説明は、他の規格による取り外し可能な記録媒体にも適用可能である。他の規格による記録媒体として、例えばコンパクトフラッシュ(登録商標)、メモリースティック(登録商標)などのフラッシュメモリデバイスを利用可能である。
 本開示は、SDカードをはじめとする取り外し可能な記録媒体の真正性をオフラインで確認するシステムに適用することができる。
 1 オフライン認証システム
 2 認証端末
 4 管理システム(管理用PC)
 6 工作機械制御システム
 6a 制御機器
 6b 工作機械
 22、62 処理回路(CPU)
 24 通信回路
 26、66 SD-インタフェース(I/F)装置
 28、68 ディスプレイ
 30、70 カメラ
 32、72 メモリ
 110 ユーザ領域
 110a 乱数生成プログラム
 110b QRコード生成プログラム
 110c QRコードデコードプログラム
 120 非ユーザ領域
 120a 識別情報
 120b 一方向性関数
 120c カウンタ

Claims (15)

  1.  第1記録媒体が装着された第1装置を用いて、第2装置に装着された第2記録媒体の真正性を判定する方法であって、
     前記第1装置は、第1撮像装置及び第1表示装置を有し、
     前記第2装置は、第2撮像装置及び第2表示装置を有し、 
     前記第1記録媒体及び前記第2記録媒体の各々は、
      ユーザがデータを書き換え可能なユーザ領域、及びユーザがデータを書き換え不可能な非ユーザ領域を有するフラッシュメモリと、
      前記フラッシュメモリへのデータの書き込みおよび/または読み出しを制御するコントローラと
     を有し、かつ、
     前記第1記録媒体の前記非ユーザ領域には、第1識別情報、及び、演算方法を規定する第1アルゴリズムデータが予め記録されており、
     前記第1記録媒体のコントローラは、
    (a)所定の第1変数値が1次元状または2次元状に符号化された第1画像パターンを前記第1表示装置に表示させ、
    (b)前記第1画像パターンの表示後に、前記第2装置の前記第2表示装置に表示された1次元状または2次元状の第2画像パターンを、前記第1撮像装置を用いて撮像させ、
    (c)撮像された前記第2画像パターンから第1コードデータを復号し、
    (d)前記第1アルゴリズムデータを利用して前記第1識別情報及び前記第1変数値を用いた演算を行い、演算結果である第1結果データを出力し、
    (e)復号された前記第1コードデータと出力された前記第1結果データとが一致した場合、前記第2記録媒体を真正であると判定する、判定方法。
  2.  前記第2記録媒体が、前記第1識別情報と同じ第2識別情報、及び、前記第1アルゴリズムデータと同じ第2アルゴリズムデータを記憶している場合であって、かつ、
     前記第2記録媒体のコントローラが、
     (b1)前記第1画像パターンから前記第1変数値を復号し、
     (b2)前記第2アルゴリズムデータを利用して前記第2識別情報及び前記第1変数値を用いて演算を行い、
     (b3)演算結果である第2結果データから前記第2画像パターンを生成した、場合、
     前記ステップ(e)において、前記第1記録媒体のコントローラは前記第2記録媒体を真正であると判定する、請求項1に記載の判定方法。
  3.  前記ステップ(e)において、前記第1記録媒体のコントローラが前記第2記録媒体を真正であると判定した場合、前記第1記録媒体のコントローラは前記第2端末に、前記第2記録媒体へのアクセス許可のコマンドを送信する、請求項1または2に記載の判定方法。
  4.  前記アクセス許可のコマンドは、前記第2記媒体へのデータの書き込み許可のコマンドを少なくとも含み、
     前記書き込み許可のコマンドの受信後、前記第2記録媒体のコントローラは、前記フラッシュメモリへのデータの書き込みを実行する、請求項3に記載の判定方法。
  5. (f)前記ステップ(e)において、前記第2記録媒体を真正であると判定した前記第1記録媒体のコントローラは、前記第2端末に双方向認証を実行させるコマンドを送信し、
     前記第2記録媒体の前記非ユーザ領域には、第2識別情報、及び、演算方法を規定する第2アルゴリズムデータが予め記録されており、
     前記コマンドの受信に応答して、前記第2記録媒体のコントローラは、
    (g)所定の第2変数値が1次元状または2次元状に符号化された第3画像パターンを前記第2表示装置に表示させ、
    (h)前記第3画像パターンの表示後に前記第1装置の前記第1表示装置に表示された1次元状または2次元状の第4画像パターンを、前記第2撮像装置を用いて撮像させ、
    (i)撮像された前記第4画像パターンから第2コードデータを復号し、
    (j)前記第2アルゴリズムデータを利用して前記第2識別情報及び前記第2変数値を用いた演算を行い、演算結果である第2結果データを出力し、
    (k)前記ステップ(c)において復号された前記第2コードデータと、前記ステップ(l)において出力された前記第2結果データとが一致した場合、前記第1記録媒体を真正であると判定する、請求項1に記載の判定方法。
  6.  前記ステップ(l)において、前記第2記録媒体のコントローラが前記第1記録媒体を真正であると判定した場合、前記第1記録媒体のコントローラは前記第2端末に、前記第2記録媒体へのアクセス許可のコマンドを送信する、請求項5に記載の判定方法。
  7.  前記コマンドの受信後、前記第2記録媒体は、前記フラッシュメモリへのデータの書き込みおよび/または読み出しが可能な状態に遷移する、請求項6に記載の判定方法。
  8.  前記第2記録媒体には、データの書き込み処理が実行される度に一方向にカウントされるカウンタが設けられており、
     前記第2装置は記憶装置を有しており、
     第2記録媒体が真正であると判定された後、前記第2装置から前記第2記録媒体のマウントが解除されるタイミングにおいて、前記第2記録媒体は少なくとも前記カウンタ値から生成される簡易認証情報を第1認証情報として前記非ユーザ領域に保存し、前記簡易認証情報を第2認証情報として前記第2装置に送信し、
     前記第2装置は、前記第2認証情報を前記記憶装置に保存する、請求項1に記載の判定方法。
  9.  前記第2装置に前記第2記録媒体がマウントされたタイミングで、
     前記第2装置は、前記記憶装置に保存されていた前記第2認証情報を前記第2記録媒体に送信し、
     前記第2記録媒体のコントローラは、
     前記非ユーザ領域に保存していた前記第1認証情報と、前記第2装置から受信した前記第2認証情報とを比較し、一致している場合には前記第2記録媒体を真正であると判定する、請求項8に記載の判定方法。
  10.  前記第1装置はモバイルコンピュータであり、
     前記第2装置は、工作機械または工作機械を制御する制御機器である、請求項1に記載の判定方法。
  11.  前記第1記録媒体は前記第1装置から取り外し可能なメモリカードであり、
     前記第2記録媒体は前記第2装置から取り外し可能なメモリカードである、請求項1に記載の判定方法。
  12.  前記第1記録媒体及び前記第2記録媒体はSDメモリカードである、請求項11に記載の判定方法。
  13.  前記第1変数値は、前記第1記録媒体のコントローラによって生成された乱数であり、
     前記第1識別情報は、前記第1記録媒体の製造時または使用時に記録された固定値であり、
     前記第1アルゴリズムは、一方向性関数である、請求項1に記載の判定方法。
  14.  前記第2変数値は、前記第2記録媒体のコントローラによって生成された乱数であり、
     前記第2識別情報は、前記第2記録媒体の製造時または使用時に記録された固定値であり、
     前記第2アルゴリズムは、一方向性関数である、請求項5に記載の判定方法。
  15.  前記第1記録媒体であって、かつ、請求項1に記載の判定する方法を実行するコントローラを備える記録媒体。
PCT/JP2021/047588 2021-03-31 2021-12-22 記録媒体の真正性を判定する方法、及び記録媒体 WO2022209065A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2023510253A JPWO2022209065A1 (ja) 2021-03-31 2021-12-22
CN202180096550.6A CN117099100A (zh) 2021-03-31 2021-12-22 判定记录介质的真实性的方法以及记录介质
US18/374,743 US20240028674A1 (en) 2021-03-31 2023-09-29 Method for determining authenticity of recording medium and recording medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202163168767P 2021-03-31 2021-03-31
US63/168,767 2021-03-31

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/374,743 Continuation US20240028674A1 (en) 2021-03-31 2023-09-29 Method for determining authenticity of recording medium and recording medium

Publications (1)

Publication Number Publication Date
WO2022209065A1 true WO2022209065A1 (ja) 2022-10-06

Family

ID=83455802

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/047588 WO2022209065A1 (ja) 2021-03-31 2021-12-22 記録媒体の真正性を判定する方法、及び記録媒体

Country Status (4)

Country Link
US (1) US20240028674A1 (ja)
JP (1) JPWO2022209065A1 (ja)
CN (1) CN117099100A (ja)
WO (1) WO2022209065A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005174514A (ja) * 2003-12-15 2005-06-30 Matsushita Electric Ind Co Ltd 情報記録媒体
JP2016035751A (ja) * 2014-08-01 2016-03-17 国立大学法人 鹿児島大学 透かし入り二次元コード、認証システム、認証方法、及びプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005174514A (ja) * 2003-12-15 2005-06-30 Matsushita Electric Ind Co Ltd 情報記録媒体
JP2016035751A (ja) * 2014-08-01 2016-03-17 国立大学法人 鹿児島大学 透かし入り二次元コード、認証システム、認証方法、及びプログラム

Also Published As

Publication number Publication date
CN117099100A (zh) 2023-11-21
JPWO2022209065A1 (ja) 2022-10-06
US20240028674A1 (en) 2024-01-25

Similar Documents

Publication Publication Date Title
US11069168B2 (en) Facial capture managing access to resources by a device
US7562385B2 (en) Systems and methods for dynamic authentication using physical keys
CN102045367B (zh) 实名认证的注册方法及认证服务器
AU2023204649A1 (en) Method of using one device to unlock another device
US20160328895A1 (en) Controlling physical access to secure areas via client devices in a networked environment
US10339366B2 (en) System and method for facial recognition
US20140189119A1 (en) Controlling Access to Resources on a Network
US11366885B2 (en) Vehicle security system and vehicle security method
US20050061875A1 (en) Method and apparatus for a secure RFID system
US20040186880A1 (en) Management apparatus, terminal apparatus, and management system
US11025595B2 (en) Secure and anonymous data sharing
CN103888436A (zh) 用户认证的方法和装置
CN104469736B (zh) 一种数据处理方法、服务器及终端
CN107657199B (zh) 行动装置、验证装置及其验证方法
KR101321875B1 (ko) 엔에프씨 보안 프린트 시스템 및 방법
WO2022209065A1 (ja) 記録媒体の真正性を判定する方法、及び記録媒体
KR20200123635A (ko) 차량의 영상 데이터 접근 제어 장치 및 그 방법
KR20150112655A (ko) 무선 접속 방식 및 서비스 인증 방법, 인쇄 코드 생성 방법 및 단말
JP7521185B2 (ja) 決済装置、制御方法、プログラム、及びシステム
CN114254300A (zh) 一种长输管道数据安全采集方法及系统
CN105825247B (zh) 一种读卡器及数据传输方法
WO2021176814A1 (ja) 認証システム、通信機器、情報機器及び認証方法
CN115527294B (zh) 安全芯片的nfc信号车辆解锁方法及安全芯片装置
TWI764616B (zh) 身分驗證及產品權限獲得方法、用於身分驗證的設備端和用於獲得產品權限的使用端
US20140344920A1 (en) Method, terminal, and service device for providing data security service

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

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023510253

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 202180096550.6

Country of ref document: CN

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21935214

Country of ref document: EP

Kind code of ref document: A1