# US 2014/0192978 A1 · System and method for secure communication of components inside self-service automats

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

- Number: US 2014/0192978 A1
- Document ID: US20140192978A1
- Status: Published application
- Kind: A1
- Application number: 14/202,664
- Filed: 2014-03-10
- Published: 2014-07-10
- Earliest claimed: 2008-12-09
- Assignees: Wincor Nixdorf International GmbH
- Applicants: Wincor Nixdorf International GmbH
- Inventors: Volker KRUMMEL; Michael NOLTE; Matthias RUNOWSKI; Johannes BLOEMER
- Web page: https://patentgrep.com/patent/US20140192978A1

## CPC

- H04L 9/0861: {Generation of secret information including derivation or calculation of cryptographic keys or passwords}
- G06F 21/606: {by securing the transmission between two devices or processes}
- G06F 21/72: in cryptographic circuits
- G06Q 20/3823: {combining multiple encryption tools for a transaction}
- G06Q 20/3829: {involving key management}
- G07F 19/20: {Automatic teller machines [ATMs]}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G07F: COIN-FREED OR LIKE APPARATUS (coin sorting G07D3/00; coin testing G07D5/00; {handling coins or paper currencies apart from payment activated apparatus G07D; payment architectures, schemes or protocols G06Q20/00})

## Abstract

Method to secure the communication of components within self-service automats that are linked to each other by a bus system, having a transmitter and a receiver, characterized in that data are exchanged as tupels (C,A,R,N,Z) on the transport layer of the bus system where C are the message data M encrypted with an encryption key, A are the message data M authenticated with an authentication key, R represents the role of a component on the bus system of active or passive participants, N represents a message counter, Z represents a session counter.

## Claims

### Claim 1

A method for securing communication of components inside a self-service automat that are connected to each other by a bus system, with a transmitter and a receiver, comprising:
exchanging data as tuples (C,A,R,N,Z, {circumflex over (N)}, {circumflex over (Z)}) between the transmitter and the receiver on a transport layer of the bus system, wherein:
C are message data M encrypted with an encryption key;
A are message data M authenticated with an authentication key;
R represents a participant role of a component on the bus system of active or passive participants;
N represents a message counter;
Z represents a session counter;
{circumflex over (N)} is a message counter for Δ-last messages N; and
{circumflex over (Z)} is a last session counter for Δ-last messages.

### Claim 2 (depends on 1)

The method of claim 1, wherein the session counters Z and {circumflex over (Z)} are configured to change the encryption key for different sessions; and
wherein for each session the session counter {circumflex over (Z)} for Δ-last messages is considered and the session counter Z is not considered.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
allowing Δ-last messages to be lost during the exchanging the data without informing an application layer;
transmitting from the transmitter to the receiver a pair ({circumflex over (Z)}, {circumflex over (N)}) as a current session counter; and
upon the exchanging the data, enabling a check at the receiver.

### Claim 4 (depends on 1)

The method of claim 1, wherein the encryption key and the authentication key are a common key K, securely filed in the components, that was generated at the time of production and assembly of the self-service automat on a basis of certificates from a public key infrastructure (PKI).

### Claim 5 (depends on 4)

The method of claim 4, wherein the common key K is stored in a Trusted Platform Module (TPM).

### Claim 6 (depends on 1)

The method of claim 1, wherein A:=Auth[KauthR,N,M,|M|], where KRauth is the result of a key generation procedure using a common key K.

### Claim 7 (depends on 1)

The method of claim 1, further comprising:
determining, while transmitting from the transmitter to the receiver, whether the message counter N is less than a maximum message counter Nmax; and
upon the determining whether N is less than Nmax, if N is less than Nmax, setting N:=N+1.

### Claim 8 (depends on 1)

The method of claim 1, further comprising:
determining while transmitting from the transmitter to the receiver, whether Z is less than a maximum session number Zmax;
determining whether N is less than a maximum message number Nmax;
comparing a tuple ({circumflex over (Z)},{circumflex over (N)}) to a tuple ( Z, N), wherein {circumflex over (Z)} is a session number for Δ-last messages, {circumflex over (N)} is a message number for Δ-last messages, {circumflex over (Z)} is a last session counter, and N is a last message counter;
generating, based on the comparing, an error if more than Δ messages have been lost;
decrypting message data, based on the comparing, if not more than Δ messages have been lost; and
upon decrypting the message data, authenticating the message data.

### Claim 9 (depends on 8)

The method of claim 8, further comprising:
decrypting the message data based on a KauthR and C, wherein KauthR is a result of a key generation procedure using a common key K;
comparing A to an authentication value A′ at the receiver, wherein A′ is determined based on KverR, N, the decrypted message data, and |C|, wherein KverR is a result of a key generation procedure using a common key K; and
authenticating the decrypted message data, based on the comparing of A to A′, if A is equal to A′.

### Claim 10 (depends on 1)

The method of claim 1, wherein the self-service automat is an automated banking machine.

### Claim 11 (depends on 1)

The method of claim 1, wherein C:=ENC[KencR,Z,N,M], where KencR is the result of a key generation procedure using a common key K.

### Claim 12 (depends on 1)

The method of claim 1, wherein the bus system is a universal serial bus (USB).

### Claim 13

A system for securing communication of components inside self-service automats comprising:
a plurality of components, inside a self-service automat, including a first component and a second component, the first component being a transmitter in communication with the second component, being a receiver, wherein the first and second components are on a bus system having a transport layer;
a plurality of configured computing units, including a first computing unit in communication with the first component and a second computing unit in communication with the second component; and
wherein data are exchanged between the first component and the second component on the transport layer of the bus system as tuples (C,A,R,N, {circumflex over (N)}, {circumflex over (Z)}); and
wherein:
C are message data M encrypted with an encryption key;
A are message data M authenticated with an authentication key;
R represents a participant role of a component on the bus system, R includes active and passive;
N represents a message counter;
Z represents a session counter;
{circumflex over (N)} is a message counter for Δ-last messages N; and
{circumflex over (Z)} is a last session counter for Δ-last messages.

### Claim 14 (depends on 13)

The system of claim 13, wherein the session counters Z and {circumflex over (Z)} are configured to change the encryption key for different sessions; and
wherein for each session the session counter {circumflex over (Z)} for Δ-last messages is considered and the session counter Z is not considered.

### Claim 15 (depends on 13)

The system of claim 13, further comprising:
a means for allowing the Δ-last messages to be lost in a transmission, from the first component to the second component, without informing an application layer above, wherein the first component transmits a current session counter pair (N, Z) and a pair ({circumflex over (N)},{circumflex over (Z)}) so that a check is enabled at the receiver.

### Claim 16 (depends on 15)

The system of claim 15, further comprising:
a means for generating and securely filing a common key K during the production and assembly of the self-service automat on the basis of certificates from a public key infrastructure (PKI), wherein a calculating unit uses the common key K for at least one of authentication and encryption.

### Claim 17 (depends on 16)

The system of claim 16, further comprising a Trusted Platform Module (TPM) in which the common key K is filed.

### Claim 18 (depends on 16)

The system of claim 16, wherein the calculating unit determines at least one of A and C; and
wherein A:=Auth[KauthR,N,M,|M|], where KauthR is a result of a secure authentication calculation using the common key K, and C:=ENC[KencR,Z,N,M] where KencR, is a result of a secure encryption calculation using the common key K.

### Claim 19 (depends on 13)

The system of claim 13, wherein the first computing unit determines whether the message counter N is less than a maximum message counter Nmax, and upon determining whether N is less than Nmax, the first computing unit sets N:=N+1.

### Claim 20 (depends on 13)

The system of claim 13, wherein the second computing unit:
determines whether Z is less than a maximum session counter Zmax;
determines whether N is less than a maximum message counter Nmax;
compares a tuple ({circumflex over (Z)},{circumflex over (N)}) to a tuple ( Z, N), wherein {circumflex over (Z)} is the session counter for Δ-last messages, {circumflex over (N)} is the message counter for Δ-last messages, Z is a last session counter, and N is a last message counter;
generates, based on the comparison, an error if more than Δ messages have been lost;
decrypts message data, based on the comparison, if not more than Δ messages have been lost; and
upon the decryption of the message data, authenticates the decrypted message data.

### Claim 21 (depends on 20)

The system of claim 20, wherein the second computing unit decrypts the message data based on KdecR and C, where KdecR is a result of a key generation procedure using a common key K.

### Claim 22 (depends on 13)

The system of claim 13, wherein the self-service automat is an automated teller machine (ATM).

### Claim 23 (depends on 13)

The system of claim 13, wherein the bus system is a universal serial bus (USB) with wired or wireless operation.

### Claim 24 (depends on 21)

The system of claim 21, wherein the second computing unit authenticates the decrypted message data, based on a comparison of A and A′, if A is equal to A′, wherein A′ is determined based on KverR, N, the decrypted message data, and |C|, wherein KverR is a result of a key generation procedure using a common key K.

### Claim 25 (depends on 13)

The system of claim 13, further comprising means for exchanging data as tuples (C,A,R,N, {circumflex over (N)}, {circumflex over (Z)}) between the first component and the second component on the transport layer of the bus system.
