Method for detecting fraudulent frame sent over an in-vehicle network system
US-2016205194-A1 · Jul 14, 2016 · US
US9729535B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9729535-B2 |
| Application number | US-201514669301-A |
| Country | US |
| Kind code | B2 |
| Filing date | Mar 26, 2015 |
| Priority date | Oct 2, 2014 |
| Publication date | Aug 8, 2017 |
| Grant date | Aug 8, 2017 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A method of transmitting K messages using divided message authentication codes (MACs) in a controller area network (CAN) includes: generating a MAC using a first message and a specific MAC, performing a first operation with respect to j using j-th messages subsequent to the first message and a second MAC part of the generated MAC, performing a second operation with respect to j using a result of the performed first operation and a j-th subblock subsequent to a first MAC subblock among K MAC subblocks obtained by dividing a first MAC part of the generated MAC, transmitting the first message along with the first MAC subblock, and transmitting K-1 j-th messages in an order of j, each of the j-th messages being transmitted along with a j-th result of the performed second operation.
Opening claim text (preview).
What is claimed is: 1. A method of transmitting K messages to a receiver using divided message authentication codes (MACs) in a controller area network (CAN), the method comprising: generating, by a controller including a memory and a processor, a MAC using a MAC generating algorithm shared in advance with the receiver and a session key, wherein a first message and a specific MAC are input to the MAC generation algorithm; performing, by the controller, a first operation with respect to j using j-th messages subsequent to the first message and a second MAC part of the generated MAC; performing, by the controller, a second operation with respect to j using a result of the performed first operation and a j-th subblock subsequent to a first MAC subblock among K MAC subblocks obtained by dividing a first MAC part of the generated MAC; transmitting, by the controller, the first message along with the first MAC subblock to the reciever; and transmitting, by the controller, K-1 j-th messages in an order of j to the receiver, wherein each of the j-th messages is transmitted along with a j-th result of the performed second operation, and wherein j and K are natural numbers, and 0<j <K. 2. The method according to claim 1 , further comprising storing, by the controller, a K-th MAC subblock of the first MAC part as a specific MAC for generating MACs corresponding to K subsequent messages. 3. The method according to claim 2 , wherein the performing of the second operation includes performing, by the controller, an exclusive OR (XOR) operation between the acquired lower bits and the j-th subblock with respect to j. 4. The method according to claim 1 , wherein the performing of the first operation includes: dividing, by the controller, each of the j-th messages into subblocks corresponding in number to a second value obtained by dividing a number obtained by subtracting a first value, which is a bit size of each MAC subblock, from 64 by the first value; dividing, by the controller, the second MAC part into subblocks corresponding in number to the second value; summing, by the controller, results of multiplying each of the divided subblocks of the j-th messages and each of the divided subblocks of the second MAC part, which are located in the same order; and acquiring, by the controller, lower bits of a number corresponding to the first value. 5. The method according to claim 1 , wherein the specific MAC is a K-th MAC subblock of the first MAC part of a MAC corresponding to previously transmitted K messages. 6. A controller for transmitting messages to a receiver using divided message authentication codes (MACs) in a controller area network (CAN), the controller comprising: a memory configured to store program instructions; and a processor configured to execute the stored program instructions, which when executed cause the processor to operate as: a message management module configured to generate K messages; an authentication module configured to: i) generate a MAC using a MAC generation algorithm shared in advance with the receiver and a session key, wherein a first message of the K messages and a specific MAC are input to the MAC generation algorithm, ii) perform a first operation with respect to j using j-th messages subsequent to the first message and a second MAC part of the generated MAC, and iii) perform a second operation with respect to j using a result of the performed first operation and a j-th subblock subsequent to a first MAC subblock among K MAC subblocks obtained by dividing a first MAC part of the generated MAC; and a transceiver module configured to transmit the first message along with the first MAC subblock to the receiver and to transmit K-1 j-th messages in an order of j to the receiver, wherein the transceiver module transmits each of the j-th messages along with a j-th result of the performed second operation, and wherein j and K are natural numbers, and 0<j<K. 7. The controller according to claim 6 , wherein the authentication module is further configured to store a K-th MAC subblock of the first MAC part as a specific MAC for generating MACs corresponding to K subsequent messages. 8. The controller according to claim 6 , wherein the authentication module is further configured to: i) divide each of the j-th messages into subblocks corresponding in number to a second value obtained by dividing a number obtained by subtracting a first value, which is a bit size of each MAC subblock, from 64 by the first value, ii) divide the second MAC part into subblocks corresponding in number to the second value, ii) sum results of multiplying each of the divided subblocks of the j-th messages and each of the divided subblocks of the second MAC part, which are located in the same order, and iv) acquire lower bits of a number corresponding to the first value, upon performing the first operation. 9. The controller according to claim 7 , wherein the authentication module is further configured to perform an exclusive OR (XOR) operation between the acquired lower bits and the j-th subblock with respect to j. 10. The controller according to claim 6 , wherein the specific MAC is a K-th MAC subblock of the first MAC part of a MAC corresponding to previously transmitted K messages. 11. A method of receiving K messages from a sender using divided message authentication codes (MACs) in a controller area network (CAN), the method comprising: receiving, by a controller including a memory and a processor, a first message and MAC data corresponding to the first message from the sender; generating, by the controller, a MAC using a MAC generation algorithm shared in advance with the sender and a session key, wherein the first message and a specific MAC are input to the MAC generation algorithm; dividing by the controller, a first MAC part of the generated MAC into K MAC subblocks; comparing, by the controller, a first MAC subblock among the K MAC subblocks to the MAC data corresponding to the first message; determining, by the controller, a temporary authentication state when the first MAC subblock is equal to the MAC data; and determining, by the controller, authentication failure when the first MAC subblock is not equal to the MAC data. 12. The method according to claim 11 , further comprising: receiving, by the controller, j-th messages subsequent to the first message in an order of j; performing, by the controller, a first operation with respect to j using the j-th messages and a second MAC part of the generated MAC; performing, by the controller, a second operation with respect to j using a result of the performed first operation and a j-th subblock subsequent to the first MAC subblock among the K MAC subblocks divided from the first MAC part of the generated MAC; sequentially comparing, by the controller, a j-th result of the performed second operation to j-th MAC data received along with each j-th message, with respect to j; and determining, by the controller, a final authentication state when MAC data received along with a most recent message and a last result of the performed second operation are equal to the sequentially compared result. 13. The method according to claim 12 , further comprising storing, by the controller, a K-th MAC subblock of the first MAC part as a specific MAC for generating MACs corresponding to K subsequent messages. 14. The method according to claim 12 , wherein the performing of the first operation includes: dividing, by the controller, each of the j-th messages into subblocks corresponding in number to a second value obtained by dividing a number obtained by subtracting a first value, which is
received data contents, e.g. message integrity · CPC title
specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks · CPC title
for authentication of entities (cryptographic mechanisms or cryptographic arrangements for entity authentication H04L9/32) · CPC title
at the data link layer · CPC title
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} · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.