WO2018109906A1 - メッセージ認証システム、装置及びメッセージ検証方法 - Google Patents

メッセージ認証システム、装置及びメッセージ検証方法 Download PDF

Info

Publication number
WO2018109906A1
WO2018109906A1 PCT/JP2016/087405 JP2016087405W WO2018109906A1 WO 2018109906 A1 WO2018109906 A1 WO 2018109906A1 JP 2016087405 W JP2016087405 W JP 2016087405W WO 2018109906 A1 WO2018109906 A1 WO 2018109906A1
Authority
WO
WIPO (PCT)
Prior art keywords
message
tag
error correction
codeword
message authentication
Prior art date
Application number
PCT/JP2016/087405
Other languages
English (en)
French (fr)
Inventor
一彦 峯松
Original Assignee
日本電気株式会社
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 日本電気株式会社 filed Critical 日本電気株式会社
Priority to US16/468,768 priority Critical patent/US11336456B2/en
Priority to JP2018556125A priority patent/JP6693574B2/ja
Priority to PCT/JP2016/087405 priority patent/WO2018109906A1/ja
Publication of WO2018109906A1 publication Critical patent/WO2018109906A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3242Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/34Encoding or coding, e.g. Huffman coding or error correction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless

Definitions

  • the present invention relates to a message authentication system, apparatus, and message verification method, and more particularly, to a message authentication system, apparatus, and message verification method having an error correction function using an error correction code.
  • the message and tag received on the receiver side via the communication path are denoted as message M ′ and tag T ′, respectively.
  • the recipient who has received the message M ′ and the tag T ′ calculates the tag T ′′ using the received message M ′ and the key K shared with the sender.
  • the received tags T ′ and T ′′ match or not, it can be determined whether the message M ′ is sent from a legitimate sender.
  • CMAC Cipher-based Message Authentication Code
  • HMAC Hash-based Message Authentication Code
  • ECC error correction code
  • the transmission content is g (M
  • the receiver first performs error correction processing, and performs MAC verification processing on the estimated value of (M
  • Non-Patent Document 3 [DNSN]
  • Non-Patent Document 4 [LGV]
  • Patent Document 1 propose a method that combines the functions of the message authentication and the error correction code.
  • NIST Special Publication 800-38B “Recommendation for Block Cipher Modes of Operation: The CMAC Mode for Authentication”, [online], [November 28, 2016], http: // n. gov / nistpubs / SpecialPublications / NIST.SP.800-38b.pdf> Mihir Bellare, Ran Canetti and Hugo Krawczyk, “Keying Hash Functions for Message Authentication”, [online], [November 28, 2016 search], Internet ⁇ URL: http: //csewebu.mi papers / kmd5.pdf> Maria Maria Dubrova, Mats Naslund, Goran Selander, Karl Norrma, “Error-Correcting Message Authentication for 5G”, [online], [November 28, 2016], Internet ⁇ URL: s /res/docs/2017/error-correcting-message-authentication-for-5g.pdf> C.
  • error correction for packets input / output from the storage is performed by software.
  • ECC message authentication and error correction
  • the tag used for the message authentication described above is relatively short data having a fixed length (for example, 32 bits to 128 bits), and in a general Internet packet, the message is sufficiently longer than the tag, so that there is no problem.
  • Non-Patent Document 3 proposes a message authentication method combined with single bit error correction, and realizes a combination of an arbitrary message authentication code and an arbitrary error correction code. It is not a thing.
  • Non-Patent Document 4 [LGV] is construction of a message authentication code itself having an error correction function, and this also does not realize a combination of an arbitrary message authentication code and an arbitrary error correction code.
  • the present invention eliminates the restriction of the processing order when using an arbitrary message authentication code and an arbitrary error correction code, improves the processing speed, and contributes to the suppression of overhead, and the message authentication system, apparatus, and message verification It aims to provide a method.
  • a message authentication system including a first device and a second device.
  • the first apparatus receives as input the message M to be transmitted to the second apparatus, performs error code encoding with a predetermined error correction code, and outputs the code word C, and receives the message M as input.
  • Message authentication tag generation means for outputting a predetermined tag T for message authentication, and transmission means for transmitting the codeword C and tag T as transmission information S to the second apparatus.
  • the second device includes extraction means for extracting the codeword C ′ and the tag T ′ corresponding to the codeword C and the tag T from the transmission information S received from the first device, and the codeword C ′.
  • the error correction code decoding means for decoding the predetermined error correction code and outputting the message M * to be verified, and the message M * to be verified and the tag T ′ as inputs are input.
  • a message verification result output means for determining that the message M * to be verified has not been tampered with when the tag T * obtained from the message M * and the tag T ′ satisfy a predetermined identity criterion; Prepare.
  • a first device and a second device constituting the message authentication system are provided.
  • the codeword corresponding to the codeword C and the tag T from the transmission information S received from the first device that transmits the codeword C and the tag T as transmission information S to the second device. Extracting C ′ and tag T ′, decoding the predetermined error correction code on the codeword C ′, outputting a verification target message M *, and the verification target message
  • the tag T * obtained from the message M * to be verified and the tag T ′ satisfy a predetermined identity criterion using the M * and the tag T ′ as inputs the message M * to be verified is falsified. And determining that the message has not been processed.
  • This method is a specific machine called a device having a function of performing error correction processing on a code word C ′ in transmission information S and message verification using a message M *, a secret key K, and a reception tag T ′. Is tied to
  • a program to be executed by a computer mounted on each of the first device and the second device that constitute the message authentication system can be recorded on a computer-readable (non-transient) storage medium. That is, the present invention can be embodied as a computer program product.
  • connection lines between blocks such as drawings referred to in the following description include both bidirectional and unidirectional directions.
  • the unidirectional arrow schematically shows the main signal (data) flow and does not exclude bidirectionality.
  • the present invention can be realized by a message authentication system including a first device 100 and a second device 200 as shown in FIG. More specifically, the first apparatus 100 receives an error message M to be transmitted to the second apparatus 200, performs error code encoding using a predetermined error correction code, and outputs a code word C. Similarly, the message authentication tag generation means 102 that outputs the predetermined message authentication tag T with the message M as an input, and the code word C and the tag T are connected to transmit information S as the second apparatus 200. And transmitting means 103 for transmitting to.
  • the second device 200 includes an extraction unit 201 that extracts the codeword C ′ and the tag T ′ corresponding to the codeword C and the tag T from the transmission information S received from the first device 100, and the codeword.
  • the error correction code decoding means 202 that performs decoding processing of the predetermined error correction code on C ′ and outputs the message M * to be verified, and the message M * to be verified and the tag T ′ as inputs
  • the tag T * obtained from the message M * to be verified and the tag T ′ satisfy a predetermined identity standard the message verification result output for determining that the message M * to be verified has not been tampered with is output.
  • Means 203 Means 203.
  • FIG. 2 is a diagram for explaining the operation of the message authentication system.
  • the error correction encoding unit 101 and the message authentication tag generation unit 102 operate to calculate the code word C and the tag T, respectively, and transmit them.
  • the transmission means 103 concatenates the code word C and the tag T and transmits the transmission information S to the second device 200 as transmission information S.
  • the operations of the error correction encoding means 101 and the message authentication tag generation means 102 are independent as shown in FIG. Can be operated in parallel.
  • the connection between the code word C and the tag T can take various forms determined in advance between the first and second devices.
  • the present invention is not limited to this aspect, and various forms such as a form for storing the tag T in the header area of the transmission frame and a form for encrypting the combined data can be adopted.
  • the second device 200 When receiving the transmission information S, the second device 200 extracts the codeword C and the tag T from the transmission information S (since the identity is not guaranteed at the extraction stage, “C ′”, “ T ′ ”). Next, the second apparatus 200 decodes the code word C ′ to obtain a message M * to be verified. The message M * to be verified is not checked for falsification, but is an error corrected in the transmission process. Next, the second device 200 receives the message M * as an input and calculates a tag T * using a secret key shared with the first device 100 in advance. Furthermore, when the tag T * and the tag T ′ extracted from the transmission information S received from the first device 100 satisfy a predetermined identity criterion, the second device 200 alters the verification target message M *. Judge as not being done. On the other hand, if the tag T * and the tag T ′ do not satisfy a predetermined identity criterion, the second device 200 determines that the message M * to be verified has been tampered with.
  • the error correction encoding process and the message authentication tag T calculation process can be performed independently, so that the processing speed in the transmission-side apparatus can be improved.
  • the tag T (for example, having a length of 32 to 128 bits) is excluded from the target of the error correction encoding process, so the amount of calculation and the amount of data to be transmitted to the second device 200 side Can be reduced (see FIG. 6).
  • the predetermined identity standard various methods for determining practical identity based on the degree of similarity between two data can be adopted. For example, if the value (distance) indicating the magnitude of the difference between the tag T * and the tag T ′ is equal to or smaller than a predetermined threshold value, it is assumed that the verification target message M * has not been tampered with. Criteria for determining can be used. Further, the threshold value is also obtained from the error rate assumed in the communication path between the first device 100 and the second device 200 and the communication between the first device 100 and the second device 200. A value set according to the accuracy of the tampering detection function to be used can be used.
  • FIG. 3 is a diagram illustrating the configuration of the message authentication system according to the first embodiment of this invention. Referring to FIG. 3, a message transmission device 10 that transmits a tagged message and a message verification device 20 that verifies the tagged message received from the message transmission device 10 are illustrated.
  • the message transmission device 10 is a device on the data transmission side such as various wireless terminals and sensor terminals.
  • the message verification device 20 is a device on the data reception side such as a terminal or a server that receives a message from the message transmission device 10.
  • the communication between the message transmission device 10 and the message verification device 20 is described as being performed wirelessly, but the message transmission device 10 and the message verification device 20 may be connected by wire.
  • FIG. 4 is a block diagram illustrating a configuration of the message transmission device 10. Referring to FIG. 4, a configuration including a message input unit 110, an error correction encoding unit 111, a message authentication tag generation unit 112, and an output unit 113 is shown.
  • the message input unit 110 is a unit that receives an input of a message M to be processed from a user or the like and outputs it to the error correction encoding unit 111 and the message authentication tag generation unit 112.
  • a message input means 110 is realized by a character input device such as a keyboard or a communication unit that receives a message from the outside (see, for example, the communication device 930 and the input device 940 in FIG. 9).
  • the error correction coding unit 111 is a unit that applies a coding function of a predetermined error correction code to the message M and outputs a code word C as a result.
  • the error correction code any code including a Hamming code and a Reed-Solomon code can be used. If the encoding function is g (x), the codeword C can be expressed as g (M).
  • the message authentication tag generation means 112 is a means for applying a message authentication code tag generation function using common key encryption to the message M and outputting a tag T as a result thereof.
  • a message authentication code any message authentication code that realizes a pseudo-random function, such as CMAC using a block cipher (Non-Patent Document 1) and HMAC using a hash function (Non-Patent Document 2) can be used.
  • the tag generation function is F (x)
  • the tag T can be expressed as F (M).
  • the output unit 113 connects the code word C output from the error correction encoding unit 111 and the tag T output from the message authentication tag generation unit 112, and transmits the result to the message verification device 20 side as transmission information S. It is.
  • the output unit 113 can be configured by a communication unit that configures the transmission information S and transmits the message to the message verification apparatus 20 and a message.
  • the message transmission device 10 described above can be realized by a computer including a CPU and a storage device (memory / disk) (see FIG. 9). As shown in FIG. 9, each means of the message transmitting apparatus 10 stores a computer program that causes the CPU 910 to execute processing corresponding to each of the means in the storage device 920 (the program of FIG. 9). This can be realized by operating this program on the CPU 910.
  • FIG. 5 is a block diagram showing a configuration of the message verification device 20. Referring to FIG. 5, a configuration including transmission information input means 120, message division means 121, error correction code decoding means 122, and message verification result output means 123 is shown.
  • the message dividing unit 121 corresponds to the extracting unit described above, and is a unit that divides the transmission information S and obtains the received code word C ′ and the received tag T ′.
  • the error correction code decoding means 122 is means for applying a decoding function of the error correction code to the code word C ′ obtained by the message dividing means 121 and outputting a decoding result message M *.
  • M * matches the original message M if the received codeword C ′ has not been tampered with during communication and the error generated in the communication is within the range of the correction capability of the error correction code used. Will do.
  • the decoding function is g ⁇ 1 (x)
  • the calculation formula of M * can be expressed as g ⁇ 1 (C ′).
  • the message verification result output means 123 calculates F (M *) for the decrypted message M * using the tag generation function F (x) of the same message authentication code as that of the message transmitting apparatus 10, and the local tag Get T *.
  • the message verification result output means 123 further compares the tag T * and the received tag T ′, and the distance (a value indicating the magnitude of the difference between the tag T * and the tag T ′) is determined from the noise in the communication path. If the expected threshold value is exceeded, it is determined that there has been tampering. Otherwise, it is determined that there has been no tampering.
  • the message verification result output unit 123 outputs the determination result to a display or the like.
  • the distance here depends on the nature of the communication path. For example, the Hamming distance may be used for a normal two-way symmetric communication path.
  • the threshold depends on the noise parameter.
  • the message verification device 20 described above can also be realized by a computer including a CPU and a storage device (memory / disk) in the same manner as the message transmission device 10 (see FIG. 9). Further, as shown in FIG. 9, each means of the message verification device 20 stores a computer program that causes the CPU 910 to execute processing corresponding to each of the above means in the storage device 920 (program storage in FIG. 9). Section 922), and can be realized by operating this program on the CPU 910.
  • FIG. 6 is a flowchart showing the operation of the message transmission device according to the first exemplary embodiment of the present invention.
  • the message input unit 110 of the message transmitting apparatus 10 receives an input of the target message M (step S001 in FIG. 6).
  • the error correction encoding means 111 of the message transmitting apparatus 10 encodes the message M and outputs a code word C (step S002 in FIG. 6).
  • the message authentication tag generation means 112 of the message transmitting apparatus 10 calculates and outputs a tag T by applying the message authentication code tag generation function to the message M (step S003 in FIG. 6).
  • the output means 113 of the message transmitting apparatus 10 connects the code word C and the tag T to create transmission information S (step S004 in FIG. 6).
  • the transmission information S is composed of g (M)
  • F (M) C
  • the message transmission device 10 transmits the created transmission information S to the message verification device 20 (step S005 in FIG. 6).
  • FIG. 7 is a flowchart showing the operation of the message verification device according to the first exemplary embodiment of the present invention. As shown in FIG. 7, first, the transmission information input means 120 of the message verification device 20 accepts input of transmission information S to be verified (step S101 in FIG. 7).
  • the message dividing means 121 of the message verification device 20 extracts the code word C ′ and the received tag T ′ from the transmission information S (step S102 in FIG. 7).
  • the message dividing unit 121 sends the code word C to the error correction code decoding unit 122.
  • the error correction code decoding means 122 of the message verification device 20 performs an error correction code decoding process on the code word C ′ and outputs a message M * as a decoding result (step S103 in FIG. 7).
  • the message verification result output unit 123 of the message verification device 20 applies a message authentication code tag generation function to the decrypted result message M * to obtain a local tag T *.
  • the message verification result output means 123 compares the local tag T * with the received tag T ′ (step S104 in FIG. 7).
  • the message verification result output means 123 has been altered. If it is not, tampering is not performed (VALID), and the determination result is output (step S105 in FIG. 7).
  • the processing order of the message authentication tag creation and error correction encoding on the transmission side is arbitrarily changed. be able to.
  • the receiving side of the present embodiment first performs error correction on the message, and then verifies the message by comparing the tag T * calculated from the result with the received tag T ′. .
  • the error correction code since the error correction code is not applied to the transmitted tag T ', it is expected that the noise of the communication channel is added as it is. For this reason, if a strict matching determination is performed as in a normal message authentication code, the verification result often fails (determines that there has been tampering). Therefore, in the present embodiment, when the value indicating the magnitude of the difference between the calculated tag T * and the received tag T ′ (for example, the Hamming distance) is greater than the value expected from the error rate of the communication path. Only when the message M * is determined to have been tampered with, the message is verified.
  • ⁇ Judgment based on the above threshold value is equivalent to weakening the acceptance standard of the message authentication code.
  • the important point here is that the message authentication code is generally made from a pseudorandom function (PRF), and the PRF output is completely random for each different input (more precisely, the computational complexity) (This is a pseudo-random number that cannot be distinguished from a complete random number).
  • PRF pseudorandom function
  • the tag is t bits and the average r bit is noise generated from the error rate of the communication channel, even if the acceptance criterion of the message authentication code is weakened as described above, the probability of successful alteration is at most 2. ⁇ R times only.
  • the success probability of falsification with the original message authentication code is 2 ⁇ -64. is there.
  • the success probability of falsification in the present invention is only 2 ⁇ -59.
  • FIG. 8 is a diagram comparing the message authentication method of Patent Document 1 shown as a comparative example with the message authentication method of the first embodiment.
  • ECC error correction code
  • FIG. 8 in the case of the comparative example, an error correction code (ECC) is applied to the message authentication tag T + message M, and the tag check is performed by strict matching determination.
  • ECC error correction code
  • only a message is subject to error correction code (ECC)
  • the tag check is performed by using a distance measure Diff (F (M *), T ′) between two tags and a threshold th. This is done by threshold judgment by. Assume that the message M in FIG.
  • the effect of bandwidth reduction is weakened as the rate of the error correction code to be used is closer to the optimum (that is, closer to the perfect code), but according to the present embodiment, even if it is a perfect code, the effect is reduced. Will not disappear. For example, a case where a Hamming code, which is a complete code capable of correcting 1-bit error, is used is shown.
  • it is only necessary to transmit 126 bits obtained by concatenating the code word of the (63, 57) Hamming code (increment is 63 ⁇ m 6 bits) and the tag T bits, and reducing 1 bit. Become.
  • the first device and the second device of the message authentication system described above can also calculate the tag T and the tag T * using CMAC (Cipher-based Message Authentication Code), respectively.
  • CMAC Chip-based Message Authentication Code
  • the first device and the second device of the message authentication system described above can also calculate the tag T and the tag T * using HMAC (Hash-based Message Authentication Code), respectively.
  • HMAC Hash-based Message Authentication Code
  • Extracting means for extracting; Error correction code decoding means for performing decoding processing of the predetermined error correction code on the codeword C ′ and outputting a message M * to be verified;
  • Message verification result output means for determining that the message M * has not been tampered with.
  • Error correction coding means for receiving a message M to be transmitted to the second device, performing encoding with a predetermined error correction code, and outputting a codeword C;
  • Message authentication tag generation means for receiving the message M and outputting a predetermined message authentication tag T; 1st apparatus provided with the transmission means which transmits the said codeword C and the tag T to said 2nd apparatus as transmission information S.
  • the codeword C and the tag T are transmitted as the transmission information S to the second device.
  • the codeword C ′ and the tag T ′ corresponding to the codeword C and the tag T are transmitted from the transmission information S received from the first device.
  • the present invention can be applied to error correction and message authentication in wireless or wired data communication.
  • it is applied to applications such as ensuring the integrity of communication between a wireless sensor device and an information collection server. it can.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

本発明は、任意のメッセージ認証コードと任意の誤り訂正符号とを用いる場合の処理順序の制約をなくし、処理速度を向上可能とするとともに、オーバーヘッドの抑制に貢献できるようにする。第1の装置は、第2の装置に送信するメッセージMを入力とし、所定の誤り訂正符号による符号化を行って符号語Cを出力する誤り訂正符号化手段と、前記メッセージMを入力とし、所定のメッセージ認証用のタグTを出力するメッセージ認証タグ生成手段と、前記符号語CとタグTとを送信情報Sとして前記第2の装置に送信する送信手段と、を備える。第2の装置は、送信情報Sから得た検証対象のメッセージM*とタグT'とを入力として、検証対象のメッセージM*から得られるタグT*と、前記タグT'とが所定の同一性基準を満たす場合、前記検証対象のメッセージM*が改ざんされていないものとして判定する。

Description

メッセージ認証システム、装置及びメッセージ検証方法
 本発明は、メッセージ認証システム、装置及びメッセージ検証方法に関し、特に、誤り訂正符号による誤り訂正機能を持つメッセージ認証システム、装置及びメッセージ検証方法に関する。
 メッセージ認証(Message Authentication Code, MAC)とは、メッセージに対して秘密鍵を知るものだけが計算できるタグを付与することで、メッセージが正当であることを保証する技術である。例えば、メッセージ認証を用いれば、秘密鍵を共有した2者の通信において、通信の間に行われた、第三者による改ざんを検知することが可能となる。具体的には、メッセージの送信者と受信者で共有される秘密鍵をK、メッセージをMとすると、送信者はメッセージMとともにタグT=MAC(K,M)を受信者に送る。なお、MAC(K,M)は、MとKを入力して、タグTを出力する関数Fを示す。
 通信路を介して受信者側で受け取られたメッセージとタグをそれぞれメッセージM’、タグT’と記す。メッセージM’とタグT’を受け取った受信者は、受信メッセージM’と、送信者と共有する鍵Kとを用いてタグT’’を計算する。ここで、受信したタグT’とT’’の一致/不一致を確認することで、メッセージM’が正当な送信者から送られたものかどうかを判断できる。
 このような方式の一例として、非特許文献1のCMAC(Cipher-based Message Authentication Code;以下、[CMAC]と記す)や、非特許文献2のHMAC(Hash-based Message Authentication Code;以下、[HMAC]と記す)などがある。
 一方、通信においては自然の要因によるエラーが起きうるため、誤り訂正符号(Error-Correcting Code以下、ECCと記す)も適用することが一般的である。この際、通常、誤り訂正符号は通信内容全体に適用される。従って、メッセージ認証を用いている場合は、メッセージMと、タグT=MAC(M)とを連結した系列(M||T)全体に、誤り訂正符号の符号化処理を行うことになる(なお、||は連結演算子を示す)。
 任意の2値系列xに対する符号化処理をg(x)とすれば、送信内容はg(M||MAC(M))となる。受信者は、まず誤り訂正処理を行い、得られた(M||T)の推定値についてMAC検証処理を行う。
 非特許文献3[DNSN]、非特許文献4[LGV]及び特許文献1には、上記メッセージ認証と、誤り訂正符号の機能を組み合わせた方式が提案されている。
特開2015-204508号公報
NIST Special Publication 800-38B、"Recommendation for Block Cipher Modes of Operation: The CMAC Mode for Authentication"、[online]、[平成28年11月28日検索]、インターネット〈URL:http://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-38b.pdf〉 Mihir Bellare, Ran Canetti and Hugo Krawczyk、"Keying Hash Functions for Message Authentication"、[online]、[平成28年11月28日検索]、インターネット〈URL:http://cseweb.ucsd.edu/~mihir/papers/kmd5.pdf〉 Elena Dubrova, Mats Naslund, Goran Selander, Karl Norrma、"Error-Correcting Message Authentication for 5G"、[online]、[平成28年11月28日検索]、インターネット〈URL:https://www.ericsson.com/res/docs/2016/error-correcting-message-authentication-for-5g.pdf〉 C.Y. Lam, G. Gong, S.A. Vanstone、"Message Authentication Codes with Error Correcting Capabilities"、 4th International Conference, ICICS 2002、2002年6月20日[online]、[平成28年11月28日検索]、インターネット〈URL:http://cacr.uwaterloo.ca/techreports/2002/corr2002-19.ps〉
 以下の分析は、本発明によって与えられたものである。上記したように、メッセージ認証(MAC)と誤り訂正符号(ECC)とを組み合わせる場合、メッセージMと、タグT=MAC(M)とを連結した系列(M||T)全体に、誤り訂正符号の符号化処理が行われる(特許文献1の段落0065、0110-0111参照)。通常、誤り訂正符号の機能は通信デバイスの中にハードウェアとして組み込まれており、メッセージ認証は通信デバイスの外側で、典型的にはソフトウェアで実行されていることが多いため、上記処理順序の制約は問題とはならない。
 しかしながら、例えば、ストレージから入出力されるパケットに対する誤り訂正などはソフトウェアで行われる。この場合、メッセージ認証と、誤り訂正(ECC)とをそれぞれソフトウェアで処理することになるため、処理速度の向上を図る際のボトルネックとなりうる。
 また、上記したメッセージ認証に用いられるタグは固定長(例えば32bitから128bit)の比較的短いデータであり、一般的なインターネットのパケットにおいてはメッセージの方がタグより十分長いため問題とはならない。
 しかしながら、IoT(Internet of Things)に代表される低電力動作の無線通信を用いたセンサーネットワーク等のアプリケーションでは、ビットあたりの送信にかかる電力量が相対的に大きい。このため、アプリケーションの側でメッセージを極めて短くするような設計がなされることが多い。結果として、既存のメッセージ認証方式と組みわせた場合、メッセージとタグの長さは同等か、メッセージの方が短くなることも予想される。これらメッセージ本文に対するオーバーヘッドは、低電力動作の無線通信においては無視できない消費電力増加の要因となる。
 上記の諸点に関連し、非特許文献3[DNSN]は、シングルビット誤り訂正と組み合わせたメッセージ認証方式を提案するものであり、任意のメッセージ認証コードと任意の誤り訂正符号との組合せを実現するものではない。また、非特許文献4[LGV]は、誤り訂正機能を持つメッセージ認証コード自体の構築であり、こちらも任意のメッセージ認証コードと任意の誤り訂正符号との組合せを実現するものではない。
 本発明は、任意のメッセージ認証コードと任意の誤り訂正符号とを用いる場合の処理順序の制約をなくし、処理速度を向上可能とするとともに、オーバーヘッドの抑制に貢献できるメッセージ認証システム、装置及びメッセージ検証方法を提供することを目的とする。
 第1の視点によれば、第1の装置と、第2の装置と、を含むメッセージ認証システムが提供される。第1の装置は、第2の装置に送信するメッセージMを入力とし、所定の誤り訂正符号による符号化を行って符号語Cを出力する誤り訂正符号化手段と、前記メッセージMを入力とし、所定のメッセージ認証用のタグTを出力するメッセージ認証タグ生成手段と、前記符号語CとタグTとを送信情報Sとして前記第2の装置に送信する送信手段と、を備える。第2の装置は、前記第1の装置から受信した送信情報Sから前記符号語CとタグTに対応する符号語C’とタグT’とを抽出する抽出手段と、前記符号語C’に対して前記所定の誤り訂正符号の復号処理を行い、検証対象のメッセージM*を出力する誤り訂正符号復号手段と、前記検証対象のメッセージM*と前記タグT’とを入力として、検証対象のメッセージM*から得られるタグT*と、前記タグT’とが所定の同一性基準を満たす場合、前記検証対象のメッセージM*が改ざんされていないものとして判定するメッセージ検証結果出力手段と、を備える。
 第2の視点によれば、上記メッセージ認証システムを構成する第1の装置及び第2の装置がそれぞれ提供される。
 第3の視点によれば、符号語CとタグTとを送信情報Sとして第2の装置に送信する第1の装置から受信した送信情報Sから前記符号語CとタグTに対応する符号語C’とタグT’とを抽出するステップと、前記符号語C’に対して前記所定の誤り訂正符号の復号処理を行い、検証対象のメッセージM*を出力するステップと、前記検証対象のメッセージM*と前記タグT’とを入力として、検証対象のメッセージM*から得られるタグT*と、前記タグT’とが所定の同一性基準を満たす場合、前記検証対象のメッセージM*が改ざんされていないものとして判定するステップと、を含むメッセージ検証方法が提供される。本方法は、送信情報S中の符号語C’についての誤り訂正処理と、メッセージM*、秘密鍵K及び受信タグT’とを用いたメッセージ検証とを行う機能を有する装置という、特定の機械に結びつけられている。
 第4の視点によれば、上記メッセージ認証システムを構成する第1の装置及び第2の装置にそれぞれ搭載されたコンピュータに実行させるプログラムが提供される。なお、このプログラムは、コンピュータが読み取り可能な(非トランジエントな)記憶媒体に記録することができる。即ち、本発明は、コンピュータプログラム製品として具現することも可能である。
 本発明によれば、メッセージ認証と誤り訂正符号とを用いる通信におけるこれらの処理速度を向上可能とするとともに、オーバーヘッドを低減することが可能となる。
本発明の一実施形態の構成を示す図である。 本発明の一実施形態の動作を説明するための図である。 本発明の第1の実施形態のメッセージ認証システムの構成を示す図である。 本発明の第1の実施形態のメッセージ送信装置の構成を示す図である。 本発明の第1の実施形態のメッセージ検証装置の構成を示す図である。 本発明の第1の実施形態のメッセージ送信装置の動作を表したフローチャートである。 本発明の第1の実施形態のメッセージ検証装置の動作を表したフローチャートである。 比較例と本発明の第1の実施形態のメッセージ認証システムとの差異を説明するための参考図である。 本発明の第1の実施形態のメッセージ認証システムを構成する装置のハードウェア構成を示す図である。
 はじめに本発明の一実施形態の概要について図面を参照して説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を図示の態様に限定することを意図するものではない。また、以降の説明で参照する図面等のブロック間の接続線は、双方向及び単方向の双方を含む。一方向矢印については、主たる信号(データ)の流れを模式的に示すものであり、双方向性を排除するものではない。
 本発明は、その一実施形態において、図1に示すように、第1の装置100と、第2の装置200と、を含むメッセージ認証システムにて実現できる。より具体的には、第1の装置100は、第2の装置200に送信するメッセージMを入力とし、所定の誤り訂正符号による符号化を行って符号語Cを出力する誤り訂正符号化手段101と、同じく前記メッセージMを入力とし、所定のメッセージ認証用のタグTを出力するメッセージ認証タグ生成手段102と、前記符号語CとタグTとを連結して送信情報Sとして第2の装置200に送信する送信手段103と、を備える。
 一方、第2の装置200は、第1の装置100から受信した送信情報Sから符号語CとタグTに対応する符号語C’とタグT’とを抽出する抽出手段201と、前記符号語C’に対して前記所定の誤り訂正符号の復号処理を行い、検証対象のメッセージM*を出力する誤り訂正符号復号手段202と、前記検証対象のメッセージM*と前記タグT’とを入力として、検証対象のメッセージM*から得られるタグT*と、前記タグT’とが所定の同一性基準を満たす場合、前記検証対象のメッセージM*が改ざんされていないものとして判定するメッセージ検証結果出力手段203と、を備える。
 図2は、上記メッセージ認証システムの動作を説明するための図である。第1の装置100に、メッセージMが入力されると、誤り訂正符号化手段101と、メッセージ認証タグ生成手段102とが、それぞれ動作し、符号語CとタグTとをそれぞれ計算して、送信手段103に出力する。送信手段103は、符号語CとタグTとを連結して送信情報Sとして、第2の装置200に送信する。なお、本実施形態においてはタグTを先に計算しなければならないという制約はないので、誤り訂正符号化手段101と、メッセージ認証タグ生成手段102の動作は、図2に示すように、独立して並列に動作させることができる。また、符号語CとタグTとの連結は、第1、第2の装置間で事前に取り決めた種々の態様を採ることができる。例えば、所定の送信フォーマットの前段に符号語Cを格納し、その後ろにタグTを格納する態様を採ることができる。もちろん、この態様に限られず、送信フレームのヘッダ領域にタグTを格納する形態や結合後のデータを暗号化する形態等の種々の形態を採ることができる。
 第2の装置200は、送信情報Sを受信すると、送信情報Sから符号語CとタグTの部分を抽出する(抽出した段階では同一性が保証されていないため、それぞれ”C’”、”T’”と記す)。次に、第2の装置200は、符号語C’を復号して検証対象のメッセージM*を得る。この検証対象のメッセージM*は、改ざん有無の確認はなされていないが、伝送過程で生じた誤りが訂正されたものとなっている。次に、第2の装置200は、このメッセージM*を入力として、事前に第1の装置100と共有している秘密鍵を用いてタグT*を計算する。さらに、第2の装置200は、タグT*と、第1の装置100から受信した送信情報Sから抽出したタグT’とが所定の同一性基準を満たす場合、検証対象のメッセージM*が改ざんされていないものとして判定する。他方、前記タグT*と、前記タグT’とが所定の同一性基準を満たしていない場合、第2の装置200は、検証対象のメッセージM*が改ざんされたものとして判定する。
 以上のように、本発明によれば、誤り訂正符号化処理と、メッセージ認証用タグTの計算処理とを独立して実施可能であるため、送信側の装置における処理速度を向上させることができる。また、本発明によれば、誤り訂正符号化処理の対象からタグT(例えば、32~128ビットの長さとなる)は除外されるため、計算量及び第2の装置200側に送信するデータ量を少なくすることができる(図6参照)。
 なお、前記所定の同一性基準としては、2つのデータの類似の度合いに基づいて、実施的な同一性を判定する種々の方法を採用することができる。例えば、前記タグT*と、前記タグT’との差異の大きさを示す値(距離)が、所定のしきい値以下であった場合、検証対象のメッセージM*が改ざんされていないものとして判定する基準を用いることができる。また、前記しきい値としても、第1の装置100と第2の装置200の間の通信路において想定される誤り率や、第1の装置100と第2の装置200の間の通信に求められる改ざん検知機能の精度に応じて設定した値を用いることができる。
[第1の実施形態]
 続いて、本発明の第1の実施形態について図面を参照して詳細に説明する。以下、とくに断りのない限り、メッセージMがmビット、タグTがtビットであるとする。図3は、本発明の第1の実施形態のメッセージ認証システムの構成を示す図である。図3を参照すると、タグ付きのメッセージを送信するメッセージ送信装置10と、メッセージ送信装置10から受信したタグ付きのメッセージを検証するメッセージ検証装置20とが示されている。
 メッセージ送信装置10は、各種の無線端末やセンサ端末などデータの送信側の装置である。メッセージ検証装置20は、メッセージ送信装置10からメッセージを受信する端末やサーバなどデータの受信側の装置である。本実施形態では、メッセージ送信装置10とメッセージ検証装置20間の通信は無線で行われるものとして説明するが、メッセージ送信装置10とメッセージ検証装置20とが有線で接続されていてもよい。
 はじめに、メッセージ送信装置10の構成について説明する。図4は、メッセージ送信装置10の構成を示すブロック図である。図4を参照すると、メッセージ入力手段110と、誤り訂正符号化手段111と、メッセージ認証タグ生成手段112と、出力手段113とを備えた構成が示されている。
 メッセージ入力手段110は、ユーザ等から処理対象となるメッセージMの入力を受け付け、誤り訂正符号化手段111と、メッセージ認証タグ生成手段112とに出力する手段である。このようなメッセージ入力手段110は、例えばキーボードなどの文字入力装置や外部からメッセージを受信する通信ユニットにより実現される(例えば、図9の通信デバイス930、入力デバイス940参照)。
 誤り訂正符号化手段111は、メッセージMに対し、所定の誤り訂正符号の符号化関数を適用し、その結果である符号語Cを出力する手段である。誤り訂正符号としては、ハミング符号やReed-Solomon符号を含む、任意のものを利用可能である。符号化関数をg(x)とすると、符号語Cは、g(M)と表すことができる。
 メッセージ認証タグ生成手段112は、メッセージMに対し、共通鍵暗号を用いたメッセージ認証コードのタグ生成関数を適用し、その結果であるタグTを出力する手段である。メッセージ認証コードとしては、ブロック暗号を用いたCMAC(非特許文献1)や、ハッシュ関数を用いたHMAC(非特許文献2)など、擬似ランダム関数を実現する任意のメッセージ認証コードを利用可能である。タグ生成関数をF(x)とすると、タグTは、F(M)と表すことができる。
 出力手段113は、誤り訂正符号化手段111の出力する符号語Cと、メッセージ認証タグ生成手段112の出力するタグTとを連結して、送信情報Sとして、メッセージ検証装置20側に送信する手段である。出力手段113は、送信情報Sを構成し、メッセージ検証装置20側に送信するコンピュータプログラム及びメッセージを送信する通信ユニットにより構成することができる。
 上記したメッセージ送信装置10は、CPUと記憶装置(メモリ/ディスク)とを備えたコンピュータにより実現可能である(図9参照)。また、上記したメッセージ送信装置10の各手段は、図9に示すように、上記CPU910に、上記各手段に相当する処理を実行させるコンピュータプログラムを記憶装置920に格納しておき(図9のプログラム記憶部922参照)、このプログラムをCPU910上で動作させることにより実現することができる。
 次に、メッセージ検証装置20の構成について説明する。図5は、メッセージ検証装置20の構成を示すブロック図である。図5を参照すると、送信情報入力手段120と、メッセージ分割手段121と、誤り訂正符号復号手段122と、メッセージ検証結果出力手段123と備えた構成が示されている。
 送信情報入力手段120は、メッセージ送信装置10から送信された送信情報Sを入力する手段である。送信情報入力手段120は、外部からメッセージを受信する通信ユニットなどにより実現される(例えば、図9の通信デバイス930、入力デバイス940参照)。
 メッセージ分割手段121は、上述した抽出手段に相当し、送信情報Sを分割して、受信した符号語C’と、受信したタグT’を得る手段である。
 誤り訂正符号復号手段122は、メッセージ分割手段121にて得られた符号語C’に対し誤り訂正符号の復号関数を適用し、復号結果のメッセージM*を出力する手段である。ここで、M*は、受信した符号語C’の通信中に改ざんがなく、かつ、通信において生じたエラーが利用した誤り訂正符号の訂正能力の範囲内であれば、元のメッセージMと一致することになる。復号関数をg-1(x)とすると、M*の算出式は、g-1(C’)と表すことができる。
 メッセージ検証結果出力手段123は、前記復号結果のメッセージM*に対し、メッセージ送信装置10と同じメッセージ認証コードのタグ生成関数F(x)を用いてF(M*)を計算し、ローカルなタグT*を得る。メッセージ検証結果出力手段123は、さらに、タグT*と前記受信したタグT’とを比較し、その距離(タグT*とタグT’の差異の大きさを示す値)が通信路のノイズから期待されるしきい値を超える場合には改ざんがあったと判定し、そうでない場合は改ざんなしとして判定する。メッセージ検証結果出力手段123は、前記判定の結果をディスプレイなどへ出力する。ここでの距離は通信路の性質に依存する。たとえば通常の2元対称通信路であればハミング距離でよい。しきい値はノイズのパラメータに依存する。
 上記したメッセージ検証装置20も、メッセージ送信装置10と同様に、CPUと記憶装置(メモリ/ディスク)とを備えたコンピュータにより実現可能である(図9参照)。また、上記したメッセージ検証装置20の各手段は、図9に示すように、上記CPU910に上記各手段に相当する処理を実行させるコンピュータプログラムを記憶装置920に格納しておき(図9のプログラム記憶部922参照)、このプログラムをCPU910上で動作させることにより実現することができる。
 続いて、本実施形態の動作について図面を参照して詳細に説明する。図6は、本発明の第1の実施形態のメッセージ送信装置の動作を表したフローチャートである。図6に示すように、まず、メッセージ送信装置10のメッセージ入力手段110が、対象となるメッセージMの入力を受け付ける(図6のステップS001)。
 次に、メッセージ送信装置10の誤り訂正符号化手段111が、メッセージMの符号化を行ない、符号語Cを出力する(図6のステップS002)。
 次に、メッセージ送信装置10のメッセージ認証タグ生成手段112が、メッセージMにメッセージ認証コードのタグ生成関数を適用してタグTを計算し、出力する(図6のステップS003)。
 メッセージ送信装置10の出力手段113が符号語CとタグTを連結して、送信情報Sを作成する(図6のステップS004)。送信情報Sは図6に示すように、g(M)||F(M)=C||Tより構成される。
 最後に、メッセージ送信装置10は、作成された送信情報Sをメッセージ検証装置20に送信する(図6のステップS005)。
 図7は、本発明の第1の実施形態のメッセージ検証装置の動作を表したフローチャートである。図7に示すように、まず、メッセージ検証装置20の送信情報入力手段120が、検証の対象となる送信情報Sの入力を受け付ける(図7のステップS101)。
 次に、メッセージ検証装置20のメッセージ分割手段121が送信情報Sから符号語C’と受信したタグT’を取り出す(図7のステップS102)。メッセージ分割手段121は、誤り訂正符号復号手段122に符号語Cを送る。
 次に、メッセージ検証装置20の誤り訂正符号復号手段122は符号語C’に対し、誤り訂正符号の復号処理を行い、復号結果としてメッセージM*を出力する(図7のステップS103)。
 次に、メッセージ検証装置20のメッセージ検証結果出力手段123が復号結果のメッセージM*に対して、メッセージ認証コードのタグ生成関数を適用し、ローカルなタグT*を得る。次に、メッセージ検証結果出力手段123は、前記ローカルなタグT*と受信したタグT’とを比較する(図7のステップS104)。
 前記比較の結果、タグT*とタグT’間の距離が所定のしきい値th以上である場合(Diff(T*,T’)≧th)、メッセージ検証結果出力手段123は、改ざんがあったと判定し(INVALID)、そうでない場合は改ざんなしとし(VALID)、判定結果を出力する(図7のステップS105)。
 以上説明したように、本実施形態によれば、メッセージ認証コードと誤り訂正符号の両方を適用した通信において、送信側でのメッセージ認証用のタグ作成と誤り訂正符号化の処理順序を任意に変えることができる。また、本実施形態によれば、タグ作成と誤り訂正符号化とを並列に実行することも可能となる(第1の効果)。その理由は、メッセージ認証用のタグ作成と誤り訂正符号化を独立にメッセージへ適用する構成を採用したことにある。この点は、図8の上段に示すように、メッセージ認証用のタグ作成を先に行う必要がある特許文献1の方式等と比較して、処理速度の向上、計算量及びデータサイズの削減等において大きなアドバンテージとなる。
 一方、本実施形態の受信側においては、まず誤り訂正をメッセージに対して行った後、この結果から計算されたタグT*と、受信したタグT’とを比較することでメッセージの検証を行う。ここで、送信されたタグT’には誤り訂正符号が適用されていないため、通信路のノイズがそのまま加わっていることが予想される。このため、通常のメッセージ認証コードのように厳密な一致判定を行うと、多くの場合で検証結果は失敗(改ざんがあると判定)とされてしまう。そこで、本実施形態では、計算されたタグT*と受信したタグT’との差異の大きさを示す値(例えば、ハミング距離)が通信路のエラー率から期待される値以上であったときのみ、メッセージM*に改ざんがあったと判定することで、メッセージの検証を行う。
 上記しきい値による判定はメッセージ認証コードの受理基準を弱めていることに相当する。ここで重要なのは、メッセージ認証コードは一般的に擬似ランダム関数(Pseudorandom Function, PRF)より作られており、PRF出力は異なる入力ごとに完全にランダムとなることである(より正確には、計算量的に完全な乱数と判別がつかない、擬似乱数となる)。
 従って、タグがtビット、通信路のエラー率から平均してrビットがタグに生じるノイズだとした場合、上記のようにメッセージ認証コードの受理基準を弱めたとしても、改ざん成功確率は高々2^r倍にしかならない。
 典型的な例でt=64,エラー率を0.08とした場合、平均で約5ビットがノイズとして載るが、この場合でも、元々のメッセージ認証コードでの改ざん成功確率が2^-64である。これに対し、本発明での改ざん成功確率は2^-59となるのみである。
 また、本実施形態によれば、誤り訂正符号の適用範囲が狭まることによる、送信データのサイズと計算量を低減することができる。図8は、比較例として示す特許文献1のメッセージ認証方法と、第1の実施形態のメッセージ認証方法とを対比した図である。図8に示すように比較例の場合、メッセージ認証用タグT+メッセージMに誤り訂正符号(ECC)を適用し、タグのチェックは厳密な一致判定で行われる。一方、本実施形態では、誤り訂正符号(ECC)の対象となるのはメッセージのみであり、タグのチェックは、二つのタグの距離尺度Diff(F(M*),T’)としきい値thとによるしきい値判定で行う。図8のメッセージMがmビット、タグTがtビットであるとする。例えばm=t=64の場合、比較例(特許文献1相当)の方法では両者を連結した128ビットの(M,T)へ誤り訂正を行うため、単純な繰り返し符号では256ビットを送信することになる。一方、本実施形態では、誤り訂正の適用範囲はメッセージMのみとなるため、128+64=192ビットに圧縮できる。
 一般的に、帯域削減(送信データサイズ圧縮)の効果は用いる誤り訂正符号のレートが最適に近い(すなわち完全符号に近い)ほど弱まるが、本実施形態によれば、たとえ完全符号だとしても効果はなくならない。例えば1ビット誤り訂正可能な完全符号である、ハミング符号を用いる場合を示す。m=57,t=63の場合で、1ビット誤り訂正をハミング符号で行うには、比較例(特許文献1相当)の方法では(127,120)ハミング符号の符号語(増分は127-(m+t)=7ビット)を送信することになる((n,k)ハミング符号のnは符号長、kは情報数を示す)。これに対して、本実施形態では、(63,57)のハミング符号の符号語(増分は63-m=6ビット)とタグTビットを連結した126ビットを送信すればよく、1ビット削減となる。
 別の例として、極めてメッセージが短く、しかし十分な認証強度を保ちたい場合として、m=4,t=53とした場合、比較例(特許文献1相当)では、(63,57)ハミング符号の符号語を送信するのに対して、本発明では(7,4)ハミング符号の符号語とタグTビットを連結した60ビットを送信すればよく、3ビット削減となる。このような例はセンサーによる死活監視など、毎回送る情報が数ビットでよい場合に相当する。
 また、本実施形態によれば、これらの例が示すように符号の入出力が小さくなるために全体の計算量が下がるため、計算量低減の効果がある。
 以上、本発明の各実施形態を説明したが、本発明は、上記した実施形態に限定されるものではなく、本発明の基本的技術的思想を逸脱しない範囲で、更なる変形・置換・調整を加えることができる。例えば、各図面に示した装置の数及び接続構成、各要素の構成、メッセージの表現形態は、本発明の理解を助けるための一例であり、これらの図面に示した構成に限定されるものではない。
 最後に、本発明の好ましい形態を要約する。
[第1の形態]
 (上記第1の視点によるメッセージ認証システム参照)
[第2の形態]
 上記したメッセージ認証システムのメッセージ検証結果出力手段は、タグT*と、タグT’との差異の大きさを示す値が、所定のしきい値以下であった場合、検証対象のメッセージM*が改ざんされていないものとして判定することができる。
[第3の形態]
 上記したメッセージ認証システムにおいて、
 前記しきい値は、第1の装置と第2の装置の間の通信路において想定される所定の誤り率に応じて設定された値とすることができる。
[第4の形態]
 上記したメッセージ認証システムにおいて、
 誤り訂正符号化手段とメッセージ認証タグ生成手段とが並列して動作するよう構成することが好ましい。
[第5の形態]
 上記したメッセージ認証システムの第1の装置及び第2の装置は、それぞれCMAC(Cipher-based Message Authentication Code)を用いてタグT及びタグT*を計算することもできる。
[第6の形態]
 上記したメッセージ認証システムの第1の装置及び第2の装置は、それぞれHMAC(Hash-based Message Authentication Code)を用いてタグT及びタグT*を計算することもできる。
[第7の形態]
 符号語CとタグTとを送信情報Sとして第2の装置に送信する第1の装置から受信した送信情報Sから前記符号語CとタグTに対応する符号語C’とタグT’とを抽出する抽出手段と、
 前記符号語C’に対して前記所定の誤り訂正符号の復号処理を行い、検証対象のメッセージM*を出力する誤り訂正符号復号手段と、
 前記検証対象のメッセージM*と前記タグT’とを入力として、検証対象のメッセージM*から得られるタグT*と、前記タグT’とが所定の同一性基準を満たす場合、前記検証対象のメッセージM*が改ざんされていないものとして判定するメッセージ検証結果出力手段と、を含む第2の装置。
[第8の形態]
 第2の装置に送信するメッセージMを入力とし、所定の誤り訂正符号による符号化を行って符号語Cを出力する誤り訂正符号化手段と、
 前記メッセージMを入力とし、所定のメッセージ認証用のタグTを出力するメッセージ認証タグ生成手段と、
 前記符号語CとタグTとを送信情報Sとして前記第2の装置に送信する送信手段と、を備える第1の装置。
[第9の形態]
 (上記第3の視点によるメッセージ検証方法参照)
[第10の形態]
 符号語CとタグTとを送信情報Sとして第2の装置に送信する第1の装置から受信した送信情報Sから前記符号語CとタグTに対応する符号語C’とタグT’とを抽出する処理と、
 前記符号語C’に対して所定の誤り訂正符号の復号処理を行い、検証対象のメッセージM*を出力する処理と、
 前記検証対象のメッセージM*と前記タグT’とを入力として、検証対象のメッセージM*から得られるタグT*と、前記タグT’とが所定の同一性基準を満たす場合、復号されたメッセージM*が改ざんされていないものとして判定する処理と、を第2の装置に搭載されたコンピュータに実行させるプログラム。
 なお、上記第7~第10の形態は、第1の形態と同様に、第2~第6の形態に展開することが可能である。
 なお、上記の特許文献および非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の開示の枠内において種々の開示要素(各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ、ないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
 本発明によれば、無線もしくは有線のデータ通信における誤り訂正とメッセージ認証に適用可能であるが、具体的なアプリケーションとして、無線センサーデバイスと情報収集サーバとの通信の完全性の確保といった用途に適用できる。
 10 メッセージ送信装置
 20 メッセージ検証装置
 100 第1の装置
 101、111 誤り訂正符号化手段
 102、112 メッセージ認証タグ生成手段
 103 送信手段
 110  メッセージ入力手段
 113 出力手段
 120 送信情報入力手段
 121 メッセージ分割手段
 200 第2の装置
 201 抽出手段
 202、122 誤り訂正符号復号手段
 203、123 メッセージ検証結果出力手段
 910 CPU
 920 記憶装置
 921 しきい値記憶部
 922 プログラム記憶部
 930 通信デバイス
 940 入力デバイス
 950 出力デバイス

Claims (10)

  1.  第2の装置に送信するメッセージMを入力とし、所定の誤り訂正符号による符号化を行って符号語Cを出力する誤り訂正符号化手段と、
     前記メッセージMを入力とし、所定のメッセージ認証用のタグTを出力するメッセージ認証タグ生成手段と、
     前記符号語CとタグTとを送信情報Sとして前記第2の装置に送信する送信手段と、を備える第1の装置と、
     前記第1の装置から受信した送信情報Sから前記符号語CとタグTに対応する符号語C’とタグT’とを抽出する抽出手段と、
     前記符号語C’に対して前記所定の誤り訂正符号の復号処理を行い、検証対象のメッセージM*を出力する誤り訂正符号復号手段と、
     前記検証対象のメッセージM*と前記タグT’とを入力として、検証対象のメッセージM*から得られるタグT*と、前記タグT’とが所定の同一性基準を満たす場合、前記検証対象のメッセージM*が改ざんされていないものとして判定するメッセージ検証結果出力手段と、を備える第2の装置と、
     を含むメッセージ認証システム。
  2.  前記メッセージ検証結果出力手段は、前記タグT*と、前記タグT’との差異の大きさを示す値が、所定のしきい値以下であった場合、前記検証対象のメッセージM*が改ざんされていないものとして判定する請求項1のメッセージ認証システム。
  3.  前記しきい値は、前記第1の装置と前記第2の装置の間の通信路において想定される所定の誤り率に応じて設定された値である請求項2のメッセージ認証システム。
  4.  前記誤り訂正符号化手段と前記メッセージ認証タグ生成手段とが並列して動作するよう構成されている請求項1から3いずれか一のメッセージ認証システム。
  5.  前記第1の装置及び前記第2の装置は、それぞれCMAC(Cipher-based Message Authentication Code)を用いてタグT及びタグT*を計算する請求項1から4いずれか一のメッセージ認証システム。
  6.  前記第1の装置及び前記第2の装置は、それぞれHMAC(Hash-based Message Authentication Code)を用いてタグT及びタグT*を計算する請求項1から4いずれか一のメッセージ認証システム。
  7.  符号語CとタグTとを送信情報Sとして第2の装置に送信する第1の装置から受信した送信情報Sから前記符号語CとタグTに対応する符号語C’とタグT’とを抽出する抽出手段と、
     前記符号語C’に対して前記所定の誤り訂正符号の復号処理を行い、検証対象のメッセージM*を出力する誤り訂正符号復号手段と、
     前記検証対象のメッセージM*と前記タグT’とを入力として、検証対象のメッセージM*から得られるタグT*と、前記タグT’とが所定の同一性基準を満たす場合、前記検証対象のメッセージM*が改ざんされていないものとして判定するメッセージ検証結果出力手段と、を含む第2の装置。
  8.  前記メッセージ検証結果出力手段は、前記タグT*と、前記タグT’との差異の大きさを示す値が、所定のしきい値以下であった場合、前記検証対象のメッセージM*が改ざんされていないものとして判定する請求項7の第2の装置。
  9.  第2の装置に送信するメッセージMを入力とし、所定の誤り訂正符号による符号化を行って符号語Cを出力する誤り訂正符号化手段と、
     前記メッセージMを入力とし、所定のメッセージ認証用のタグTを出力するメッセージ認証タグ生成手段と、
     前記符号語CとタグTとを送信情報Sとして前記第2の装置に送信する送信手段と、を備える第1の装置。
  10.  符号語CとタグTとを送信情報Sとして第2の装置に送信する第1の装置から受信した送信情報Sから前記符号語CとタグTに対応する符号語C’とタグT’とを抽出するステップと、
     前記符号語C’に対して前記所定の誤り訂正符号の復号処理を行い、検証対象のメッセージM*を出力するステップと、
     前記検証対象のメッセージM*と前記タグT’とを入力として、検証対象のメッセージM*から得られるタグT*と、前記タグT’とが所定の同一性基準を満たす場合、前記検証対象のメッセージM*が改ざんされていないものとして判定するステップと、を含むメッセージ検証方法。
PCT/JP2016/087405 2016-12-15 2016-12-15 メッセージ認証システム、装置及びメッセージ検証方法 WO2018109906A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US16/468,768 US11336456B2 (en) 2016-12-15 2016-12-15 Message authentication system, apparatus, and message verification method
JP2018556125A JP6693574B2 (ja) 2016-12-15 2016-12-15 メッセージ認証システム、装置及びメッセージ検証方法
PCT/JP2016/087405 WO2018109906A1 (ja) 2016-12-15 2016-12-15 メッセージ認証システム、装置及びメッセージ検証方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/087405 WO2018109906A1 (ja) 2016-12-15 2016-12-15 メッセージ認証システム、装置及びメッセージ検証方法

Publications (1)

Publication Number Publication Date
WO2018109906A1 true WO2018109906A1 (ja) 2018-06-21

Family

ID=62558217

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/087405 WO2018109906A1 (ja) 2016-12-15 2016-12-15 メッセージ認証システム、装置及びメッセージ検証方法

Country Status (3)

Country Link
US (1) US11336456B2 (ja)
JP (1) JP6693574B2 (ja)
WO (1) WO2018109906A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116707934A (zh) * 2023-06-20 2023-09-05 甘肃省地震局(中国地震局兰州地震研究所) 一种基于无线传感网络的数据加密传送方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6735926B2 (ja) * 2017-09-01 2020-08-05 三菱電機株式会社 暗号化装置、復号装置、暗号化方法、復号方法、暗号化プログラム及び復号プログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6845449B1 (en) * 1999-07-23 2005-01-18 Networks Associates Technology, Inc. System and method for fast nested message authentication codes and error correction codes
US20070160082A1 (en) * 2006-01-06 2007-07-12 Mehmet Un Media access layer processors for network communications
JP2008278416A (ja) * 2007-05-07 2008-11-13 Matsushita Electric Ind Co Ltd データ暗号処理装置、データ復号処理装置、データ暗号処理方法、データ復号処理方法、データ暗号処理プログラム、データ復号処理プログラムおよび集積回路
US20090080389A1 (en) * 2007-09-26 2009-03-26 Motorola, Inc. Method, system and a data frame for communication in a wireless communication system

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE60133266T2 (de) * 2001-05-03 2009-04-23 Telefonaktiebolaget Lm Ericsson (Publ) Verfahren und Vorrichtung zum Schutz der Datenintegrität
US7921284B1 (en) * 2001-12-12 2011-04-05 Gary Mark Kinghorn Method and system for protecting electronic data in enterprise environment
US7284127B2 (en) * 2002-10-24 2007-10-16 Telefonktiebolaget Lm Ericsson (Publ) Secure communications
FR2864387B1 (fr) * 2003-12-23 2006-04-28 Eads Telecom Procede et dispositif de transmission d'informations avec verification des erreurs de transmission involontaires ou volontaires
US8139763B2 (en) * 2007-10-10 2012-03-20 Spansion Llc Randomized RSA-based cryptographic exponentiation resistant to side channel and fault attacks
JP5169449B2 (ja) * 2008-05-01 2013-03-27 富士通株式会社 無線通信装置及び受信方法
US8850293B2 (en) * 2011-12-06 2014-09-30 Welch Allyn, Inc. Wireless transmission reliability
US10574461B2 (en) * 2013-09-30 2020-02-25 Triad National Security, Llc Streaming authentication and multi-level security for communications networks using quantum cryptography
JP2015204508A (ja) 2014-04-14 2015-11-16 株式会社日立製作所 情報処理システム及びデータ転送方法
US10211990B2 (en) * 2014-07-25 2019-02-19 GM Global Technology Operations LLC Authenticating messages sent over a vehicle bus that include message authentication codes

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6845449B1 (en) * 1999-07-23 2005-01-18 Networks Associates Technology, Inc. System and method for fast nested message authentication codes and error correction codes
US20070160082A1 (en) * 2006-01-06 2007-07-12 Mehmet Un Media access layer processors for network communications
JP2008278416A (ja) * 2007-05-07 2008-11-13 Matsushita Electric Ind Co Ltd データ暗号処理装置、データ復号処理装置、データ暗号処理方法、データ復号処理方法、データ暗号処理プログラム、データ復号処理プログラムおよび集積回路
US20090080389A1 (en) * 2007-09-26 2009-03-26 Motorola, Inc. Method, system and a data frame for communication in a wireless communication system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116707934A (zh) * 2023-06-20 2023-09-05 甘肃省地震局(中国地震局兰州地震研究所) 一种基于无线传感网络的数据加密传送方法
CN116707934B (zh) * 2023-06-20 2023-10-24 甘肃省地震局(中国地震局兰州地震研究所) 一种基于无线传感网络的数据加密传送方法

Also Published As

Publication number Publication date
JPWO2018109906A1 (ja) 2019-10-31
US11336456B2 (en) 2022-05-17
US20200076611A1 (en) 2020-03-05
JP6693574B2 (ja) 2020-05-13

Similar Documents

Publication Publication Date Title
US8589688B2 (en) Message authentication device, message authentication method, message authentication program and storage medium therefor
JP6740902B2 (ja) 認証暗号化方法、認証復号方法および情報処理装置
CN107592968B (zh) 生成密码校验和
JP6289680B2 (ja) パケット送信装置、パケット受信装置、パケット送信プログラムおよびパケット受信プログラム
CN101098478A (zh) 提供具有完整性视频流的装置和方法
CA2792571A1 (en) Hashing prefix-free values in a signature scheme
CN109922047B (zh) 一种图像传输系统及方法
US11303617B2 (en) Methods and apparatuses for oblivious transfer using trusted environment
CN110611670A (zh) 一种api请求的加密方法及装置
WO2016015222A1 (zh) 数据加密传输方法和装置
Ďurech et al. Security attacks to ZigBee technology and their practical realization
JP5174826B2 (ja) 圧縮されたecdsa署名
WO2016067524A1 (ja) 認証付暗号化装置、認証付復号装置、認証付暗号システム、認証付暗号化方法、プログラム
WO2018109906A1 (ja) メッセージ認証システム、装置及びメッセージ検証方法
EP2087635A2 (en) Processing method for message integrity with tolerance for non-sequential arrival of message data
US8122247B2 (en) Processing method for message integrity with tolerance for non-sequential arrival of message data
US20150341651A1 (en) Jpeg file format based encoding and decoding method in mobile apparatus and device thereof
CN110417804B (zh) 一种适于单片机实现的双向身份认证加密通信方法及系统
CN113517982B (zh) 口令的生成方法、口令的执行方法及终端
US20150086015A1 (en) Cryptographically Protected Redundant Data Packets
Belvin A secure text messaging protocol
CA2619811C (en) Signal watermarking in the presence of encryption
CN113383514A (zh) 用于在资源受限系统中认证消息的方法
JPWO2016067565A1 (ja) 情報処理システム、情報処理装置、情報処理方法、及び、プログラム
US9525674B2 (en) Method for the encryption of data

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2018556125

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16924093

Country of ref document: EP

Kind code of ref document: A1