# US 2021/0344503 A1 · Slave device and computer readable medium

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2021/0344503 A1
- Document ID: US20210344503A1
- Status: Published application
- Kind: A1
- Application number: 17/375,611
- Filed: 2021-07-14
- Published: 2021-11-04
- Earliest claimed: 2019-03-01
- Assignees: Mitsubishi Electric Corporation
- Applicants: Mitsubishi Electric Corporation
- Inventors: Koki IGAWA
- Web page: https://patentgrep.com/patent/US20210344503A1

## CPC

- H04L 9/3242: {involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC}
- H04L 9/0618: {Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation}
- H04L 12/28: characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks] (wireless communication networks H04W {; arrangements for dividing the transmission path H04W40/00})
- H04L 61/00: Network arrangements, protocols or services for addressing or naming
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A reception unit (221) receives a frame destined for a master located on an upstream side from a slave located on a downstream side. Using a received message authentication code, which is a message authentication code included in the received frame, a concatenation relay unit (230) calculates an intermediate computation result of the received message authentication code. The concatenation relay unit concatenates transmission data, which is to be transmitted to the master, to a transmission data string included in the received frame. The concatenation relay unit calculates a message authentication code for a concatenated transmission data string, using the intermediate computation result. A transmission unit (224) transmits a frame including the concatenated transmission data string and also including the message authentication code calculated using the intermediate computation result, instead of the received message authentication code, to the upstream side.

## Claims

### Claim 1

A slave device comprising:
processing circuitry to:
receive a frame destined for a master located on an upstream side from a slave located on a downstream side;
calculate an intermediate computation result, using a received message authentication code, which is a message authentication code included in the received frame, the intermediate computation result being obtained by computing a part of a computation expression for calculating the received message authentication code;
concatenate transmission data, which is to be transmitted to the master, to a transmission data string included in the received frame;
calculate a message authentication code for a concatenated transmission data string, using the intermediate computation result;
determine whether data concatenation is allowed, based on a transmission source address of the received frame; and
transmit a frame including the concatenated transmission data string and including the message authentication code calculated using the intermediate computation result, in place of the received message authentication code, to the upstream side when it is determined that data concatenation is allowed, and transmit the received frame to the upstream side when it is determined that data concatenation is not allowed.

### Claim 2 (depends on 1)

The slave device according to claim 1,
wherein an applicable address is set in the slave device as a transmission source address of a frame for which data concatenation is allowed, and
wherein the processing circuitry determines that data concatenation is allowed when the transmission source address of the received frame matches the applicable address.

### Claim 3 (depends on 2)

The slave device according to claim 2,
wherein the slave device is one slave of a plurality of slaves that constitute a control system together with the master,
wherein the plurality of slaves are segmented into one or more slave groups, and
wherein the applicable address is an address of a slave adjacent, in a slave group to which the slave device belongs, to the slave device on the downstream side of the slave device.

### Claim 4 (depends on 3)

The slave device according to claim 3,
wherein a time required for a frame to reach the master from a most downstream slave in each slave group is less than a constraint time required of the control system.

### Claim 5 (depends on 4)

The slave device according to claim 4,
wherein the master segments the plurality of slaves into the one or more slave groups based on the constraint time, and sets the applicable address in the slave device by communicating with the slave device.

### Claim 6 (depends on 1)

The slave device according to claim 1,
wherein a message authentication code for each frame is a value calculated by a message authentication code algorithm based on a block cipher, and
wherein the processing circuitry performs a decryption operation performed on the received message authentication code using a common key that is same as a key used in the computation expression, and performs an exclusive OR operation on a value obtained by the decryption operation and a subkey corresponding to the common key, so as to calculate a value obtained by the exclusive OR operation as the intermediate computation result.

### Claim 7 (depends on 2)

The slave device according to claim 2,
wherein a message authentication code for each frame is a value calculated by a message authentication code algorithm based on a block cipher, and
wherein the processing circuitry performs a decryption operation performed on the received message authentication code using a common key that is same as a key used in the computation expression, and performs an exclusive OR operation on a value obtained by the decryption operation and a subkey corresponding to the common key, so as to calculate a value obtained by the exclusive OR operation as the intermediate computation result.

### Claim 8 (depends on 3)

The slave device according to claim 3,
wherein a message authentication code for each frame is a value calculated by a message authentication code algorithm based on a block cipher, and
wherein the processing circuitry performs a decryption operation performed on the received message authentication code using a common key that is same as a key used in the computation expression, and performs an exclusive OR operation on a value obtained by the decryption operation and a subkey corresponding to the common key, so as to calculate a value obtained by the exclusive OR operation as the intermediate computation result.

### Claim 9 (depends on 4)

The slave device according to claim 4,
wherein a message authentication code for each frame is a value calculated by a message authentication code algorithm based on a block cipher, and
wherein the processing circuitry performs a decryption operation performed on the received message authentication code using a common key that is same as a key used in the computation expression, and performs an exclusive OR operation on a value obtained by the decryption operation and a subkey corresponding to the common key, so as to calculate a value obtained by the exclusive OR operation as the intermediate computation result.

### Claim 10 (depends on 5)

The slave device according to claim 5,
wherein a message authentication code for each frame is a value calculated by a message authentication code algorithm based on a block cipher, and
wherein the processing circuitry performs a decryption operation performed on the received message authentication code using a common key that is same as a key used in the computation expression, and performs an exclusive OR operation on a value obtained by the decryption operation and a subkey corresponding to the common key, so as to calculate a value obtained by the exclusive OR operation as the intermediate computation result.

### Claim 11

A non-transitory computer readable medium storing a slave program for causing a computer to execute:
a reception process of receiving a frame destined for a master located on an upstream side from a slave located on a downstream side;
an intermediate-computation-result calculation process of calculating an intermediate computation result, using a received message authentication code, which is a message authentication code included in the received frame, the intermediate computation result being obtained by computing a part of a computation expression for calculating the received message authentication code;
a transmission data concatenation process of concatenating transmission data, which is to be transmitted to the master, to a transmission data string included in the received frame;
a message authentication code calculation process of calculating a message authentication code for a concatenated transmission data string, using the intermediate computation result;
a concatenation determination process of determining whether data concatenation is allowed, based on a transmission source address of the received frame; and
a transmission process of transmitting a frame including the concatenated transmission data string and including the message authentication code calculated using the intermediate computation result, instead of the received message authentication code, to the upstream side when it is determined that data concatenation is allowed, and transmitting the received frame to the upstream side when it is determined that data concatenation is not allowed.
