EP3298722A1 - Method for generating a secret or a key in a network - Google Patents

Method for generating a secret or a key in a network

Info

Publication number
EP3298722A1
EP3298722A1 EP16721133.3A EP16721133A EP3298722A1 EP 3298722 A1 EP3298722 A1 EP 3298722A1 EP 16721133 A EP16721133 A EP 16721133A EP 3298722 A1 EP3298722 A1 EP 3298722A1
Authority
EP
European Patent Office
Prior art keywords
subscriber
value sequence
sequence
value
transmission channel
Prior art date
Legal status (The legal status 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 status listed.)
Withdrawn
Application number
EP16721133.3A
Other languages
German (de)
French (fr)
Inventor
Timo Lothspeich
Andreas Mueller
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Publication of EP3298722A1 publication Critical patent/EP3298722A1/en
Withdrawn legal-status Critical Current

Links

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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0875Generation of secret information including derivation or calculation of cryptographic keys or passwords based on channel impulse response [CIR]
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these

Definitions

  • the present invention relates to a method for generating a secret, cryptographic key in a network, in particular the generation of a common, secret key in two participants of the network.
  • point-to-point connections are usually counted as networks and should also be addressed here with this term.
  • the two participants communicate via a shared transmission medium.
  • logical bit sequences (or, more generally, value sequences) are transmitted physically by means of corresponding transmission methods as signals or signal sequences.
  • the underlying communication system may e.g. be a CAN bus. This provides for transmission of dominant and recessive bits or correspondingly dominant and recessive signals, whereby a dominant signal or bit of a participant of the network intersperses against recessive signals or bits.
  • a state corresponding to the recessive signal adjusts itself to the transmission medium only if all participants involved provide a recessive signal for transmission or if all participants transmitting at the same time transmit a recessive signal level.
  • suitable cryptographic methods are usually used, which can generally be subdivided into two different categories: first, symmetric methods, in which the sender and receiver have the same cryptographic key, and, on the other hand, asymmetrical methods in which the sender uses the to be transferred with data the public key (that may also be known to a potential attacker) encrypted the recipient's key, but the decryption can only be done with the associated private key, which is ideally known only to the recipient.
  • asymmetric methods usually have a very high computational complexity.
  • resource constrained nodes such as e.g. Sensors, actuators, or similar, suitable, which usually have only a relatively low computing power and low memory and energy-efficient work, for example due to battery operation or the use of energy harvesting.
  • bandwidth available for data transmission making the replacement of asymmetric keys with lengths of 2048 bits or even more unattractive.
  • the non-prepublished DE 10 2015 207220 AI discloses a method for generating a shared secret or a secret symmetric key by means of public discussion between two communication participants.
  • the methods for generating a secret or a cryptographic key do not require any manual intervention and thus enable the automated establishment of secure communication relationships or links between two nodes.
  • the methods have a very low complexity, in particular with regard to the required hardware design, such as the required memory resources and computing power, and they are associated with a low energy and time requirements.
  • the procedures assume that subscribers in a network communicate with each other via a communication channel.
  • they transfer logical sequences of values (in the case of binary logic, bit sequences) with the aid of physical signals on the transmission channel.
  • the logical level is considered in the description above in the foli oenden.
  • the transferred, logical value sequences as well as their logical overlay are considered.
  • Subscribers of the network can thus first signals (for example, the logical bit "1" are assigned) and second signals (for example, the
  • the subscribers can detect the resulting superimposition on the communication channel the (largely) simultaneous transmission
  • 20 of two (independent) signals resulting signal on the communication channel in turn can be assigned to one (or more) specific logical value (or values).
  • the transmission must be largely synchronous in that the individual signals of a signal sequence are superimposed on the transmission medium, in particular that the signal corresponds to the nth logical value or bit of the first subscriber with the signal corresponding to the n -tenten logical value or bit of the second participant at least partially overlaid.
  • this superimposition should be sufficient for the subcontractors to be able to record the superimposition or to determine the corresponding superimposition value.
  • the superimposition can be determined by arbitration mechanisms or by physical signal superposition.
  • arbitration mechanism is meant, for example, the case where a node applies a recessive level. would like to, but detects a dominant level on the bus and thus omits the transmission. In this case, there is no physical interference between two signals, but only the dominant signal is seen on the transmission channel.
  • the participants can then generate a key that is secret to an outside attacker.
  • the reason for this is that the outside attacker who, for example, can hear the effective overall signals present on the shared transmission medium, only the
  • this method does not contain any test value errors or checksum errors (eg in the context of a cyclic redundancy check).
  • the message formats used provide for the transmission of appropriate test values or checksums.
  • at least one of the participating network participants transmits a test value sequence on the common communication channel - however, it does not generate this on the basis of the information (or value sequence) transmitted by it, but on the basis of the one on the connecting one
  • Communication channel detected overlay value sequence contributes to increasing the compatibility of this key establishment method with already available standard components (hardware / software, for example CAN controllers).
  • such a method makes it possible to check whether the detected or extracted raw information for the keys to be generated is identical (with a high degree of probability) to the participants involved, so that additional overhead may be necessary for a separate check one- can be saved.
  • the check can in particular be carried out by a participant comparing the detected test value sequence on the communication channel with the self-determined test value sequence.
  • test value sequence is preferably transmitted directly after the overlay value sequence if the transmitting subscribers are able to do so. Otherwise, in an alternative embodiment, the test value sequence can also be transmitted at a predetermined distance from the overlay value sequence. This variant has the advantage that the participants have more time to calculate the test value sequence and thus have fewer requirements for the design of the participants and the method is less error-prone.
  • the check value sequence (also visible to an attacker) should preferably not be used for its generation.
  • the method can be used in a network in which there is a dominant value (physically: a dominant signal) that prevails when only one subscriber applies it on the transmission channel and a recessive value (physically: a recessive signal ) which results on the transmission channel only if both or all participants transmit a recessive value.
  • a dominant value physically: a dominant signal
  • a recessive value physically: a recessive signal
  • the subscriber value sequences which are given largely simultaneously by the subscribers to the transmission channel, are generated in advance in the respective subscribers themselves with the aid of a random generator or pseudo-random generator. Since the resulting overlay sequence on the transmission channel can be accessible to a potential attacker, it is particularly advantageous for the security of the subsequent communication if the attacker has as difficult as possible to infer the individual value sequences of the participants, ie if they are local in the participants as well be generated randomly or at least pseudorandomly.
  • the methods described can be implemented particularly well in a CAN, TTCAN or CAN FD bus system. Here, a recessive bus level is replaced by a dominant bus level.
  • the superimposition of values or signals of the subscribers thus follows defined rules which the subscribers can use to derive information from the superimposed value or signal and the value or signal transmitted by them.
  • the methods are also well suited for other communication systems such as LIN and I2C.
  • the method can also be used, for example, in a network with on-off-keying amplitude shift keying.
  • the overlay is fixed by allowing the subscribers to be "transmission" and “no transmission” signals and the beat signal corresponding to the "transmission” signal when one or both of the subscribers transmits and corresponds to the "no transmission” signal, if both participants do not transfer.
  • a network or participant of a network is set up to do this by having electronic memory and computational resources to perform the steps of a corresponding method.
  • Subscriber or on the distributed memory resources of a network can also be stored a computer program that is configured to perform all the steps of a corresponding method when it is executed in the subscriber or in the network.
  • FIG. 1 schematically shows the structure of an exemplary, underlying communication system
  • FIG. 3 is a schematic illustration of exemplary signal sequences of two subscribers of a network and a resulting subsequence value sequence on a transmission channel between the subscribers,
  • FIG. 6 shows an exemplary sequence of a comparison between the detected and calculated test value sequence.
  • the present invention relates to a method for generating a shared secret or (secret) symmetric cryptographic key between two nodes of a communication system (participants of a network) communicating with each other via a shared medium (transmission channel of the network).
  • the generation or negotiation of the cryptographic keys is based on a public data exchange between the two participants, although a possible listening third party as an attacker is not or only very difficult to draw conclusions about the generated key. It is with the invention
  • a common secret is first established for this, which can be used to generate the key.
  • such a shared secret can in principle also be used for purposes other than cryptographic keys in the narrower sense, for example as a one-time pad.
  • the invention is suitable for a variety of wired or wireless as well as optical networks or communication systems, especially those in which the various participants communicate with each other via a linear bus and the media access to this bus using a bitwise bus arbitration.
  • This principle represents, for example, the basis of the widespread CAN bus.
  • Possible fields of application of the invention accordingly include, in particular, CAN-based vehicle networks as well as CAN-based networks in automation technology.
  • the present invention describes an approach with which automatically symmetric cryptographic keys can be generated in one, or in particular between two nodes of a network. This generation takes place by exploiting properties of the corresponding transfer layer. Unlike the usual approaches of "physical layer security" but not physical parameters of the transmission channel such as transmission strength are evaluated .. Rather, there is a public data exchange between the nodes involved, thanks to the characteristics of the communication system and / or the modulation method used a possible listening attacker no, or no sufficient conclusions on the negotiated key allows.
  • FIG. 1 The following is an arrangement as shown in FIG. 1 in the abstract.
  • different users 2, 3 and 4 can communicate with one another via a so-called shared transmission medium C, shared medium ") 10.
  • this corresponds to a shared one Transmission medium a linear bus (wired or optical) 30, as shown by way of example in Fig. 2.
  • the network 20 in FIG. 2 consists of just this linear bus 30 as a shared transmission medium (for example, as a wired transmission channel), nodes 21, 22 and 23, and (optional) bus terminations 31 and 32.
  • a dominant bit e.g., the logical bit '0'
  • a concurrently transmitted recessive bit e.g., the logical bit '1'
  • on-off-keying on-off-keying amplitude shift keying
  • a signal is transmitted, for example in the form of a simple carrier signal, in the other case (value 'Off' or '1') no signal is transmitted.
  • the state ' ⁇ ' is dominant while the state 'Off' is recessive.
  • Another example of a corresponding communication system that supports this distinction of dominant and recessive bits is a (wired or optical) system based on bitwise bus arbitration, such as that used in the CAN bus.
  • the basic idea here is also that if, for example, two nodes want to transmit a signal at the same time and one node transmits a '1', whereas the second node transmits a '0' which 'gains''0' (ie the dominant bit) ie, the signal level that can be measured on the bus corresponds to a logical '0' .
  • This mechanism is used in particular to resolve possible collisions, whereby priority messages (ie messages with a previous, dominant signal level) are transmitted by each node simultaneously monitors the signal level on the bus while transmitting its CAN identifier, if the node itself transmits a recessive bit but a dominant bit is detected on the bus, the corresponding node aborts its transmission attempt in favor of the higher priority message (with the earlier dominant bit
  • FIG. 3 shows, for example, how a subscriber 1 (T1) keeps the bit sequence 0, 1, 1, 0, 1 ready for transmission between the times t0 and t5 via the transmission channel.
  • Subscriber 2 (T2) keeps the bit sequence 0, 1, 0, 1, 1 ready for transmission between times t0 and t5 via the transmission channel.
  • bit string 0, 1, 0, 0, 1 will be seen on the bus (B) Only between times t1 and t2 and between t4 and t5, both subscriber 1 (T1) and subscriber 2 (T2) provide a recessive bit "1", so that only in this case does the logical AND operation result in a bit level of " 1 "on the bus (B) results.
  • the process for generating a symmetric key pair is started in step 41 by one of the two nodes involved in this example (subscriber 1 and subscriber 2). This can be done, for example, by sending a special message or a special message header.
  • Both subscriber 1 and subscriber 2 initially generate a bit sequence locally (ie internally and independently of one another) in step 42. Preferably, this bit sequence is at least twice, in particular at least three times as long as the common key desired as a result of the method.
  • the bit sequence is preferably generated in each case as a random or pseudo-random bit sequence, for example with the aid of a suitable random number generator or pseudo random number generator.
  • subscriber 1 and subscriber 2 transmit (largely) synchronously their respectively generated bit sequences over the divided transmission medium (using the transmission method with dominant and recessive bits, as already explained above).
  • Different possibilities for synchronizing the corresponding transmissions are conceivable.
  • either subscriber 1 or subscriber 2 could first send a suitable synchronization message to the respective other node and then start the transmission of the actual bit sequences after a certain period of time following the complete transmission of this message.
  • bit sequences of a subscriber generated in step 42 can also be transmitted to several messages distributed in step 43, for example if this necessitates the (maximum) sizes of the corresponding messages.
  • the transmission of the corresponding number of speaking large messages distributed bit sequences of the other subscriber turn (largely) synchronously.
  • the two bit sequences then overlap, whereby due to the previously required property of the system with the distinction of dominant and recessive bits, the individual bits of subscriber 1 and subscriber 2 result in an overlay, in the example mentioned de facto AND-linked. This results in a corresponding overlay on the transmission channel, which could detect, for example, a listening third party.
  • Both subscriber 1 and subscriber 2 detect during the transmission of their bit sequences of step 43 in a parallel step 44, the effective (overlaid) bit sequences S e ff on the shared transmission medium.
  • the effective (overlaid) bit sequences S e ff on the shared transmission medium.
  • this is usually done in conventional systems during the arbitration phase anyway.
  • both subscriber 1 and subscriber 2 also again (largely) synchronously transmit their initial bit sequences STI and ST2, but this time inverted.
  • the synchronization of the corresponding transmissions can again be realized exactly in the same way as described above.
  • the two sequences are then ANDed together again.
  • Subscribers 1 and 2 in turn determine the effective, superimposed bit sequences S e ff on the shared transmission medium.
  • Both subscriber 1 and subscriber 2 determine during the transmission of their now inverted bit sequences then again the effective, superimposed bit sequences on the shared transmission medium.
  • both nodes subscriber 1 and subscriber 2), as well as a possible attacker (eg subscriber 3) who overhears the communication on the shared transmission medium, thus know the effective, superimposed bit sequences S e ff and Seff '.
  • participant 1 still knows his initially generated, local bit sequence STI and participant 2 his initially generated, local bit sequence ST2.
  • subscriber 1 in turn does not know the initially generated, local bit sequence of subscriber 2 and subscriber 2 does not know the initially generated, local bit sequence of subscriber 1.
  • the detection of the overlay bit sequence again takes place during the transmission in step 46.
  • subscriber 1 and subscriber 2 can also send their inverted, local bit sequence directly with or directly after their original, local bit sequence, ie steps 45 and 46 take steps 43 and 44.
  • the original and the inverted bit sequences can be transmitted in a message, but also in separate messages as partial bit sequences.
  • step 47 subscriber 1 and 2 now associate each local (ie internal) the effective superimposed bit sequences (S e ff and S e ff '), in particular egg ⁇ ner logical ODE R- function.
  • the individual bits in the bit sequence (Sges) resulting from the ODE R operation now indicate whether the corresponding bits of STI and ST2 are identical or different. For example, if the nth bit within S tot is a '0', it means that the nth bit within S TI is inverse to the corresponding bit within S T2 . Similarly applies that when the n-th bit is within a Stotal, 1 ', the corresponding bits are identical ⁇ table within ⁇ ANCE and Sßob.
  • Subscriber 1 and subscriber 2 then cancel in step 48, based on the bit sequence S ges obtained from the ODE R combination, in their original, initial bit sequences S TI and S T2 all bits which are identical in both sequences. This consequently leads to correspondingly shortened bit sequences.
  • the shortened bit sequence which is present in this way in common, will now be activated locally by subscriber 1 and subscriber 2 in step 49 in a suitable manner. se prepared to generate the actually desired key of the desired length N. Again, there are a variety of ways that this treatment can be done. One possibility is to select N bits from the common truncated bit sequence, where it must be clearly defined which N bits are to be taken, eg simply by selecting the first N bits of the sequence. It is also possible to calculate a hash function via the shared, shortened bit sequence which provides a hash of length N. In general, the rendering can be done with any linear and nonlinear function that returns a N bit length bit sequence when applied to the co-present truncated bit sequence.
  • the mechanism of key generation from the common truncated bit sequence is preferably identical in both subscribers 1 and 2 and is performed accordingly in the same way.
  • a checksum could be calculated using the generated keys and exchanged between subscribers 1 and 2. If both checksums are not identical, then obviously something has failed. In this case, the described method for key generation could be repeated.
  • a whole series of resulting shortened bit sequences which are each present in the case of subscribers 1 and 2 can be generated, which are then combined into a single large sequence before the actual key is derived therefrom , If necessary, this can also be done adaptively. If, for example, the length of the common, shortened bit sequence is, for example, less than the desired key length N after a single pass through the described procedure, then one could, for example, generate further bits before the actual key derivation.
  • the generated symmetric key pair can be used by subscriber 1 and subscriber 2 in conjunction with established (symmetric) cryptographic methods, such as ciphers for data encryption.
  • a potential attacker eg subscriber 3 can listen to the public data transmission between subscriber 1 and subscriber 2 and thus gain knowledge of the effective, superposed bit sequences (S e ff and S e ff ') as described. The attacker then only knows which bits in the locally generated bit sequences of nodes 1 and 2 are identical and which are not. In addition, with the identical bits, the attacker can even determine whether it is a '1' or a '0'. For a complete knowledge of the resulting, shortened bit sequence (and thus the basis for key generation), however, he lacks the information about the non-identical bits. In order to further complicate the attacker possible attacks, is in a preferred
  • Variant additionally deleted in the original, locally generated bit sequences of the participants 1 and 2 identical bit values. This means that participant 3 has only information that is not used for key generation. Although he knows that correspondingly shortened bit sequences emerge from the different between the local bit sequences of the participants 1 and 2 participants bits. However, he does not know which bits have been sent by subscriber 1 and subscriber 2 respectively.
  • subscriber 1 and subscriber 2 also have the information about the locally generated bit sequence transmitted by them in each case.
  • the fact that the keys generated in subscribers 1 and 2 remain secret as a basis despite the public data transmission results from this information advantage over a subscriber 3 following only the public data transmission.
  • the messages to be transmitted are provided with a checksum or check value sequence (eg Cyclic Redundancy Checksum (CRC)), with the aid of which the receiver or receivers of a message can detect possible errors during transmission.
  • CRC Cyclic Redundancy Checksum
  • the actual lent message a corresponding checksum or sketch attached, in particular appended.
  • the checksum or check value sequence results as a function of the bits to be protected.
  • the checksum or test value sequence thus secures a part of the actual message or the complete actual message, wherein the checksum field or the field for the test value sequence itself can also be included in the determination of the checksum or test value sequence, but need not.
  • the checksum field (Cyclic Redundacy Checksum or CRC) has a length of 15 bits and protects the part of the CAN frame that extends from the start of frame bit to the last data bit of the data field.
  • CRC checksum or check value sequence
  • the checksum or check value sequence (C RC) essentially corresponds to the remainder of a polynomial division of the bit sequence to be protected with a special, predetermined generator polynomial. In the case of (standard) CAN (version 2.0), this generator polynomial is specified as follows:
  • the potential checksum errors using the described key generation methods are due to the fact that in these methods the effective bits or signal levels on the shared transmission medium in the simultaneous transmission of the first and second subscribers in step 43 depends on both subscribers , for example assuming a communication system with recessive bit, 1 'and dominant bit, 0' correspond at logical level of an AND operation of the two individual messages of the participants. Since in this case the logical AND connection of two checksums or test value sequences (eg CRCs) does not correspond to the correct checksum or test value sequence of the logical AND operation of the bit sequences underlying these checksums or test value sequences, the verification of the checksum field or of the The effective message check value field on the shared transmission medium will fail on a regular basis. This in turn can occur in certain communication systems when using standard hardware or
  • Both subscriber 1 and subscriber 2 could, depending on the communication system, possibly directly discard the effective message that results from the superimposition of the respectively transmitted individual messages on the shared transmission medium due to the faulty checksum or check value sequence, without the content evaluate. This would then make a key statement impossible according to the methods described. This case is particularly critical if the participants use standard components and frames with incorrect checksums or fürwertiques are immediately discarded by the hardware or low-level software, without a transfer and analysis of the content is done to downstream software or hardware components if necessary, implementing the actual functionality of the described methods for generating a key (eg in the case of a pure software solution).
  • the checksum consists of 2 bits, the first bit corresponding to the parity of all the odd digits of a bit sequence (ie bits 1, 3, 5, .9) and the second bit corresponding to the parity of all even digits of a bit sequence (ie bits 2, 4, 6, ).
  • Bit sequence of subscriber 1 including checksum:
  • subscriber 1 and subscriber 2 first determine or detect the effective bit sequence on the transmission channel (ie the pure information part of the above message without the underlined check bits). For this effective bit sequence, they then determine the correct checksum and append it directly to the effective bit sequence (ie the information part of the message). In this case follows:
  • both subscriber 1 and subscriber 2 each determine the effective bit sequence on the shared transmission medium.
  • the values determined in this case then form the basis for the generation of the actual, symmetrical cryptographic keys. If subscribers 1 and 2 detect different effective bit sequences (eg due to quantization or transmission errors), then the downstream derivative of the actual symmetric key fails because the underlying raw information is not identical. In a practical system, therefore, it should be advantageously checked whether such errors occurred and thus the derived keys are really symmetrical. This can also be done to some extent by the proposed method of checksum generation.
  • both participants verify that the checksums sent appended to the actual local bit strings match those that effectively build on the channel-forming checksums. That is, if user 1, for example, determines the checksum '0 1' based on the information bit sequence effectively being formed on the common transmission medium and transmits it immediately following that information bit sequence, that checksum should also be effectively formed on the transmission medium. This is not the case in particular if subscriber 1 transmits a recessive bit at one or more locations while Bob transmits a dominant bit at at least one of the locations and vice versa.
  • the key establishment process should either be aborted or restarted, or a so-called "information reconciliation” phase should be added, which can be used to correct any errors that might exist.
  • a corresponding "information reconciliation" protocol is this known from quantum cryptography CASCADE protocol.
  • both participants transmit the effective checksum on a CAN bus following the actual information part, they can only determine whether the other participant in an a particular location transmits a different checksum bit than itself if they themselves transmit a recessive bit.
  • one of the participants sends the checksum determined by him while the other participant can completely detect this checksum and then compare it with the locally determined (but not transmitted) checksum. If both of them do not match, then in this case the second participant would have to start a corresponding error handling since in this case the first participant initially has no possibility of detecting a possible error himself.
  • a subscriber may not be able to determine the checksum fast enough based on the information bit sequence that effectively builds on the shared transmission medium to be able to detect it quickly Connection to transfer. Possible reasons for this are, in particular, processing latencies in a subscriber. Therefore, it is possible to modify the method according to the invention as in the following third exemplary embodiment such that a time interval is provided between the propagation of the effective information bit sequence on which the checksums are based and the transmission of the checksums in order to obtain the checksum available To increase time.
  • both participants will now always determine the information bit sequences that effectively form on the channel. Since the subsequently to be transmitted additional bits are known to the two participants know Both participants already after the transmission of the actual information bit sequences the complete message on which the checksum should be based (ie consisting of information bits and additional bits) and thus can already begin with the calculation of the checksum for this complete message, while still the additional bits are transmitted.
  • the calculation of the checksum should then be completed so that it can be transmitted directly by both or one of the subscribers (corresponding to the first or the second embodiment).
  • a disadvantage of this embodiment is that with the additional bits, an additional overhead is generated. But just as described, the latency requirements for the signal processing of the involved participants can be reduced.
  • checksums are no longer considered, but simply rejected or cut off at the receiving end.
  • the presented methods represent an approach for the generation of symmetric, cryptographic keys between two nodes by exploiting properties of the physical layer.
  • the approach is particularly suitable for wired and optical communication systems, provided these 'on-off-keying' or a bitwise bus arbitration support (eg CAN, TTCAN, CAN-FD, LIN, I2C).
  • CAN e.g CAN, TTCAN, CAN-FD, LIN, I2C.
  • wireless, (radio based) communication systems preferably with a very short distance between transmitter and receiver and a possible direct line of sight, the approach can be used.
  • FIG. 6 shows an exemplary overall sequence of a method for generating a secret on the basis of a value sequence overlay and for checking the detected value sequence overlay on the basis of a detected test value sequence.
  • a first step 61 the method is started.
  • a second step 61 the method is started.
  • the steps for establishing a cryptographic secret in particular the (largely) synchronous superposition of value sequences by the two network subscribers and the safeguarding of the transmission by a test value sequence as described above, take place.
  • a third step 63 by at least one of the participating network subscribers nal resulting test value sequence detected.
  • the detected test value sequence is compared with a self-calculated (and possibly transmitted) test value sequence and checked for conformity.
  • step 64 branching is made from step 64 to step 65 and the method for checking the overlay value sequence based on test values is ended without a detected error.
  • An error handling can nevertheless occur in this case, provided that the other network participant detects a deviation and triggers the error handling accordingly.
  • step 64 If the detected and the self-calculated test value sequence do not match, a branch is made from step 64 to step 66.
  • step 66 the checking network subscriber sends an error message, in particular he notifies the second, also involved network subscriber.
  • both network participants can send a corresponding message (sequential or possibly superimposed) or only the node that sends them first.
  • Step 67 corresponds to a waiting time after which the process can be restarted by branching to step 61.
  • step 66 the notification of the respective communication partner.
  • the checking network subscriber sends a signal for this purpose-via the same communication system or another physical transmission path. For example, immediately after detecting the deviation, the checking network subscriber may begin to send a physical signal which is recognized by the participating communication partner (the second network subscriber) and signals the deviation. The detection of the physical signal may be based on the fact that it deliberately violates the specified frame format of the communication protocol used. In a CAN network, for example, an error frame (error frame) can be sent.
  • error frame error frame
  • the checking network subscriber can also (again via the transmission channel also used for the synchronous transmission of the value sequences or another communication system) send a dedicated message to the second network subscriber.
  • the message may include the check value calculated by the checking network subscriber and / or the check value received or detected by him on the transmission channel.
  • it is possible to send the result (X) of a function, for example a hash function, which depends on the test value (s): X f (CRCc a icuiated, CRCR eC eived). If the information about calculated and / or detected test value sequences is also transmitted, then it is possible for the communication partner to check whether the test value sequences calculated by the two network subscribers actually differ. If not, the second network participant could work towards the established secret despite the negative check by the first one
  • the message may also be provided as part of a message and, if appropriate, by intentionally not transmitting a designated signal, message or part of a message.
  • An automatic restart can also be initiated after a certain time has elapsed by the checking network subscriber.
  • the checking network subscriber can also use a communication confirmation provided according to the communication protocol used for the message to the second network subscriber. For example, he may refrain from sending an acknowledgment (acknowledgment) or transmit a negative acknowledgment (negative acknowledgment), thus indicating that the comparison or checking of the test value sequences has been negative.
  • the checking network subscriber may refrain from sending a dominant acknowledgment bit.
  • this method only leads to the desired success if there is no further active CAN node in the network.
  • the delay can occur until the beginning of the next bit time.
  • a delay can be provided even after the complete reception of the test value sequence. In this way, the network participants can check in a further step whether the calculated

Abstract

Disclosed is a method for generating a secret or a key in a network (20). The network (20) comprises at least a first subscriber (21) and a second subscriber (22) and a common transmission channel (30) between at least the first (21) and second subscribers (22). The first subscriber (21) can output at least a first value (1) and a second value (0) and the second subscriber (22) can output at least the first value (1) and the second value (0) on the transmission channel, the first subscriber (21) generating a first sequence of subscriber values and the second subscriber (22) generating a second sequence of subscriber values in order for the transmission to occur largely synchronously on the transmission channel (30); and the first subscriber (21) and the second subscriber (22) each generate a common secret or a common key, the first subscriber (21) doing so on the basis of information about the first sequence of subscriber values and on the basis of a sequence of superposed values resulting from a superposition of the second sequence of subscriber values onto the first sequence of subscriber values on the transmission channel (30), and the second subscriber (22) doing so on the basis of information about the second sequence of subscriber values and on the basis of the sequence of superposed values resulting from the superposition of the second sequence of subscriber values onto the first sequence of subscriber values on the transmission channel (30). At least the first subscriber (21) and the second subscriber (22) determine a sequence of test values in accordance with the resulting sequence of superposed values and output same on the transmission channel (30).

Description

Verfahren zur Erzeugung eines Geheimnisses oder Schlüssels in einem Netz- werk  A method for creating a secret or key in a network
Die vorliegende Erfindung betrifft ein Verfahren zur Erzeugung eines geheimen, kryptographischen Schlüssels in einem Netzwerk, insbesondere die Erzeugung eines gemeinsamen, geheimen Schlüssels in zwei Teilnehmern des Netzwerks. Auch Punkt-zu-Punkt-Verbindungen werden gewöhnlicher Weise zu den Netzwerken gezählt und sollen hier mit diesem Begriff ebenfalls adressiert sein. Dabei kommunizieren die beiden Teilnehmer über ein gemeinsam genutztes Übertra- gungsmedium. Hierbei werden logische Bitfolgen (bzw. allgemeiner: Wertfolgen) durch entsprechende Übertragungsverfahren als Signale bzw. Signalfolgen physikalisch übertragen. Das zugrundeliegende Kommunikationssystem kann z.B. ein CAN-Bus sein. Dieser sieht eine Übertragung dominanter und rezessiver Bits bzw. entsprechend dominanter und rezessiver Signale vor, wobei sich ein domi- nantes Signal bzw. Bit eines Teilnehmers des Netzwerks gegen rezessive Signale bzw. Bits durchsetzt. Ein Zustand entsprechend dem rezessiven Signal stellt sich auf dem Übertragungsmedium nur ein, wenn alle beteiligten Teilnehmer ein rezessives Signal zur Übertragung vorsehen bzw. wenn alle gleichzeitig sendenden Teilnehmer einen rezessiven Signalpegel übertragen. The present invention relates to a method for generating a secret, cryptographic key in a network, in particular the generation of a common, secret key in two participants of the network. Also point-to-point connections are usually counted as networks and should also be addressed here with this term. The two participants communicate via a shared transmission medium. In this case, logical bit sequences (or, more generally, value sequences) are transmitted physically by means of corresponding transmission methods as signals or signal sequences. The underlying communication system may e.g. be a CAN bus. This provides for transmission of dominant and recessive bits or correspondingly dominant and recessive signals, whereby a dominant signal or bit of a participant of the network intersperses against recessive signals or bits. A state corresponding to the recessive signal adjusts itself to the transmission medium only if all participants involved provide a recessive signal for transmission or if all participants transmitting at the same time transmit a recessive signal level.
Stand der Technik State of the art
Eine sichere Kommunikation zwischen verschiedenen Geräten wird in einer zunehmend vernetzten Welt immer wichtiger und stellt in vielen Anwendungsberei- chen eine wesentliche Voraussetzung für die Akzeptanz und somit auch den wirtschaftlichen Erfolg der entsprechenden Anwendungen dar. Dies umfasst - je nach Anwendung - verschiedene Schutzziele, wie beispielsweise die Wahrung der Vertraulichkeit der zu übertragenden Daten, die gegenseitige Authentifizierung der beteiligten Knoten oder die Sicherstellung der Datenintegrität. Secure communication between different devices is becoming more and more important in an increasingly networked world and is an essential prerequisite for the acceptance and thus economic success of the corresponding applications in many areas of application. This includes various protection goals, depending on the application maintaining the confidentiality of the data to be transferred, mutual authentication of the nodes involved, or ensuring data integrity.
Zur Erreichung dieser Schutzziele kommen üblicherweise geeignete kryptogra- phische Verfahren zum Einsatz, die man generell in zwei verschiedene Kategorien unterteilen kann: Zum einen symmetrische Verfahren, bei denen Sender und Empfänger über denselben kryptographischen Schlüssel verfügen, zum anderen asymmetrische Verfahren, bei denen der Sender die zu übertragenden Daten mit dem öffentlichen (d.h. auch einem potenziellen Angreifer möglicherweise bekannten) Schlüssel des Empfängers verschlüsselt, die Entschlüsselung aber nur mit dem zugehörigen privaten Schlüssel erfolgen kann, der idealerweise nur dem Empfänger bekannt ist. In order to achieve these protection goals, suitable cryptographic methods are usually used, which can generally be subdivided into two different categories: first, symmetric methods, in which the sender and receiver have the same cryptographic key, and, on the other hand, asymmetrical methods in which the sender uses the to be transferred with data the public key (that may also be known to a potential attacker) encrypted the recipient's key, but the decryption can only be done with the associated private key, which is ideally known only to the recipient.
Asymmetrische Verfahren haben unter anderem den Nachteil, dass sie in der Regel eine sehr hohe Rechenkomplexität aufweisen. Damit sind sie nur bedingt für ressourcenbeschränkte Knoten, wie z.B. Sensoren, Aktuatoren, o.ä., geeignet, die üblicherweise nur über eine relativ geringe Rechenleistung sowie gerin- gen Speicher verfügen und energieeffizient arbeiten sollen, beispielsweise aufgrund von Batteriebetrieb oder dem Einsatz von Energy Harvesting. Darüber hinaus steht oftmals nur eine begrenzte Bandbreite zur Datenübertragung zur Verfügung, was den Austausch von asymmetrischen Schlüsseln mit Längen von 2048 Bit oder noch mehr unattraktiv macht. One of the disadvantages of asymmetric methods is that they usually have a very high computational complexity. Thus, they are only conditionally for resource constrained nodes, such as e.g. Sensors, actuators, or similar, suitable, which usually have only a relatively low computing power and low memory and energy-efficient work, for example due to battery operation or the use of energy harvesting. In addition, there is often limited bandwidth available for data transmission, making the replacement of asymmetric keys with lengths of 2048 bits or even more unattractive.
Bei symmetrischen Verfahren hingegen muss gewährleistet sein, dass sowohl Empfänger als auch Sender über den gleichen Schlüssel verfügen. Das zugehörige Schlüsselmanagement stellt dabei generell eine sehr anspruchsvolle Aufgabe dar. Im Bereich des Mobilfunks werden Schlüssel beispielsweise mit Hilfe von SIM-Karten in ein Mobiltelefon eingebracht und das zugehörige Netz kann dann der eindeutigen Kennung einer SIM- Karte den entsprechenden Schlüssel zuordnen. Im Fall von Wireless LANs hingegen erfolgt üblicherweise eine manuelle Eingabe der zu verwendenden Schlüssel (in der Regel durch die Eingabe eines Passwortes) bei der Einrichtung eines Netzwerkes. Ein solches Schlüsselma- nagement wird allerdings schnell sehr aufwändig und impraktikabel wenn man eine sehr große Anzahl von Knoten hat, beispielsweise in einem Sensornetzwerk oder anderen Maschine-zu-Maschine-Kommunikationssystemen, z.B. auch CAN- basierten Fahrzeugnetzwerken. Darüber hinaus ist eine Änderung der zu verwendenden Schlüssel oftmals überhaupt nicht bzw. nur mit sehr großem Auf- wand möglich. For symmetric methods, however, it must be ensured that both the receiver and the transmitter have the same key. The associated key management generally represents a very demanding task. In the area of mobile telephony, for example, keys are inserted into a mobile telephone with the aid of SIM cards, and the associated network can then assign the corresponding key to the unique identifier of a SIM card. In the case of wireless LANs, on the other hand, a manual entry of the keys to be used (usually by entering a password) usually takes place when setting up a network. However, such key management quickly becomes very cumbersome and impractical if one has a very large number of nodes, for example in a sensor network or other machine-to-machine communication systems, e.g. also CAN-based vehicle networks. In addition, changing the keys to be used is often not possible or only possible with great effort.
Verfahren zur Absicherung von Sensordaten gegen Manipulation und die Sicherstellung einer Transaktionsauthentifizierung, z.B. in einem Kraftfahrzeugnetzwerk, mit Hilfe gängiger Verschlüsselungsverfahren sind z.B. in der DE Method for securing sensor data against tampering and ensuring transaction authentication, e.g. in a motor vehicle network, by means of common encryption methods, e.g. in the DE
102009002396 AI und in der DE 102009045133 AI offenbart. Seit einiger Zeit werden zudem unter dem Schlagwort„Physical Layer Security" neuartige Ansätze untersucht und entwickelt, mit Hilfe derer Schlüssel für symmetrische Verfahren automatisch auf der Grundlage physikalischer Eigenschaften der Übertragungskanäle zwischen den involvierten Knoten erzeugt werden können. Dabei nutzt man die Reziprozität und die inhärente Zufälligkeit dieser Übertragungskanäle aus. Insbesondere bei drahtgebundenen oder optischen Systemen ist dieser Ansatz oftmals allerdings nur bedingt geeignet, da entsprechende Kanäle üblicherweise nur eine sehr eingeschränkte zeitliche Variabilität aufweisen und ein Angreifer beispielsweise mit Hilfe einer Modellbildung relativ gut Rückschlüsse auf die Kanalparameter zwischen dem Sender und dem Empfänger ziehen kann. Derartige Verfahren für eine abgesicherte Kommunikation in einem verteilten System auf Basis von Kanaleigenschaften der verbundenen Einheiten sind beispielsweise in den nicht vorveröffentlichten Anmeldungen DE 10 2014 208975 AI sowie DE 10 2014 209042 AI beschrieben. 102009002396 AI and in DE 102009045133 AI discloses. For some time now, the term "physical layer security" has been used to investigate and develop novel approaches that can be used to automatically generate keys for symmetric algorithms based on physical properties of the transmission channels between the nodes involved, using reciprocity and the inherent However, in the case of wired or optical systems in particular, this approach is often only suitable to a limited extent since corresponding channels usually have only a very limited temporal variability and an attacker can draw conclusions about the channel parameters between the transmitter and the receiver relatively well, for example by means of modeling Such methods for secured communication in a distributed system based on channel characteristics of the connected units are not pre-published in, for example, US Pat DE Applicants DE 10 2014 208975 AI and DE 10 2014 209042 AI described.
Verfahren zur Prüfsummenberechnung beim Controller Area Network (CAN) und beim CAN-FD sind der DE 10 2011 080476 AI zu entnehmen. Methods for checksum calculation in the Controller Area Network (CAN) and CAN-FD can be found in DE 10 2011 080476 AI.
Die nicht vorveröffentlichte DE 10 2015 207220 AI offenbart ein Verfahren zur Erzeugung eines gemeinsamen Geheimnisses bzw. eines geheimen, symmetrischen Schlüssels mittels öffentlicher Diskussion zwischen zwei Kommunikationsteilnehmern. The non-prepublished DE 10 2015 207220 AI discloses a method for generating a shared secret or a secret symmetric key by means of public discussion between two communication participants.
Offenbarung der Erfindung Disclosure of the invention
Die Verfahren zur Generierung eines Geheimnisses bzw. eines kryptographi- schen Schlüssels erfordern keinerlei manuellen Eingriff und ermöglichen somit den automatisierten Aufbau sicherer Kommunikationsbeziehungen bzw. - Verbindungen zwischen zwei Knoten. Zudem weisen die Verfahren eine sehr geringe Komplexität auf, insbesondere hinsichtlich der erforderlichen Hardwareauslegung, wie z.B. der benötigten Speicherressourcen und Rechenleistung, und sie gehen mit einem geringen Energie- und Zeitbedarf einher. Darüber hinaus bieten die Verfahren sehr hohe Schlüsselgenerierungsraten bei gleichzeitig sehr kleiner Fehlerwahrscheinlichkeit. The methods for generating a secret or a cryptographic key do not require any manual intervention and thus enable the automated establishment of secure communication relationships or links between two nodes. In addition, the methods have a very low complexity, in particular with regard to the required hardware design, such as the required memory resources and computing power, and they are associated with a low energy and time requirements. In addition, offer the procedures very high key generation rates with simultaneously very small probability of error.
Dabei gehen die Verfahren davon aus, dass Teilnehmer in einem Netzwerk über 5 einen Kommunikationskanal miteinander kommunizieren. Sie übertragen dabei insbesondere logische Wertfolgen, (falls es sich um binäre Logik handelt, Bitfolgen) mit Hilfe von physikalischen Signalen auf dem Übertragungskanal. Auch wenn mögliche Überlagerungen auf dem Übertragungskanal durch die Signale, also auf der physikalischen Ebene, stattfinden, wird in der Beschreibung im Foli o genden vorranging die logische Ebene betrachtet. Es werden somit die übertragenen, logischen Wertfolgen sowie deren logische Überlagerung betrachtet. The procedures assume that subscribers in a network communicate with each other via a communication channel. In particular, they transfer logical sequences of values (in the case of binary logic, bit sequences) with the aid of physical signals on the transmission channel. Even if possible superimpositions take place on the transmission channel through the signals, that is to say on the physical level, the logical level is considered in the description above in the foli oenden. Thus, the transferred, logical value sequences as well as their logical overlay are considered.
Teilnehmer des Netzwerks können somit erste Signale (die beispielsweise dem logischen Bit„1" zugeordnet sind) und zweite Signale (die beispielsweise demSubscribers of the network can thus first signals (for example, the logical bit "1" are assigned) and second signals (for example, the
15 logischen Bit„0" zugeordnet sind) auf den Kommunikationskanal geben und resultierende Signale auf dem Kommunikationskanal detektieren. Übertragen nun zwei Teilnehmer (weitgehend) gleichzeitig jeweils eine Signalfolge, so können die Teilnehmer die daraus resultierende Überlagerung auf dem Kommunikationskanal detektieren. Das effektive, aus der (weitgehend) gleichzeitigen ÜbertragungIf two subscribers transmit (largely) one signal sequence at a time, the subscribers can detect the resulting superimposition on the communication channel the (largely) simultaneous transmission
20 zweier (unabhängiger) Signale resultierende Signal auf dem Kommunikationskanal lässt sich dann wiederum einem (oder mehreren) bestimmten logischen Wert (oder Werten) zuordnen. 20 of two (independent) signals resulting signal on the communication channel in turn can be assigned to one (or more) specific logical value (or values).
Die Übertragung muss dabei insofern weitgehend synchron sein, dass eine Über- 25 lagerung der einzelnen Signale einer Signalfolge auf dem Übertragungsmedium erfolgt, insbesondere, dass sich das Signal entsprechend dem n-ten logischen Wert bzw. Bit des ersten Teilnehmers mit dem Signal entsprechend dem n-ten logischen Wert bzw. Bit des zweiten Teilnehmers zumindest teilweise überlagert. Diese Überlagerung sollte jeweils dafür ausreichend lange sein, dass die Teil- 30 nehmer die Überlagerung erfassen bzw. den entsprechenden Überlagerungswert ermitteln können. In this case, the transmission must be largely synchronous in that the individual signals of a signal sequence are superimposed on the transmission medium, in particular that the signal corresponds to the nth logical value or bit of the first subscriber with the signal corresponding to the n -tenten logical value or bit of the second participant at least partially overlaid. In each case, this superimposition should be sufficient for the subcontractors to be able to record the superimposition or to determine the corresponding superimposition value.
Die Überlagerung kann dabei durch Arbitrierungsmechanismen oder durch physikalische Signalüberlagerung bestimmt sein. Mit Arbitrierungsmechanismus ist 35 beispielsweise der Fall gemeint, dass ein Knoten einen rezessiven Pegel anle- gen möchte, aber auf dem Bus einen dominanten Pegel detektiert und somit die Übertragung unterlässt. In diesem Fall kommt es zu keiner physikalischen Überlagerung zweier Signale, sondern es ist nur das dominante Signal auf dem Übertragungskanal zu sehen. The superimposition can be determined by arbitration mechanisms or by physical signal superposition. By arbitration mechanism is meant, for example, the case where a node applies a recessive level. would like to, but detects a dominant level on the bus and thus omits the transmission. In this case, there is no physical interference between two signals, but only the dominant signal is seen on the transmission channel.
Aus der resultierenden Wertfolge der Überlagerung und der eigenen Wertfolge können die Teilnehmer dann einen Schlüssel generieren, der einem außenstehenden Angreifer gegenüber geheim ist. Grund dafür ist, dass der außenstehende Angreifer, der beispielsweise die auf dem gemeinsam genutzten Übertra- gungsmedium anliegenden effektiven Gesamtsignale abhören kann, nur dieFrom the resulting value sequence of the overlay and its own value sequence, the participants can then generate a key that is secret to an outside attacker. The reason for this is that the outside attacker who, for example, can hear the effective overall signals present on the shared transmission medium, only the
Überlagerung der Wertfolgen sieht, aber nicht die Informationen über die einzelnen Wertfolgen der Teilnehmer hat. Damit verfügen die Teilnehmer über mehr Informationen, die sie gegenüber dem Angreifer zur Generierung eines geheimen Schlüssels nutzen können. Overlay the value sequences looks, but does not have the information about the individual value sequences of the participants. Thus, the participants have more information that they can use against the attacker to generate a secret key.
Im Rahmen eines solchen Verfahrens zur Generierung eines gemeinsamen Geheimnisses bzw. symmetrischer kryptographischer Schlüssel mittels öffentlicher Diskussion unter Ausnutzung von PHY-Layer-Eigenschaften soll nun sicher gestellt werden, dass dieses Verfahren keine Prüfwertfehler bzw. Prüfsummenfeh- ler (z.B. im Rahmen einer zyklischen Redundanzprüfung) hervorruft, sofern die verwendeten Nachrichtenformate die Übertragung entsprechender Prüfwerte bzw. Prüfsummen vorsehen. Dazu überträgt mindestens eines der beteiligten Netzwerkteilnehmer eine Prüfwertfolge auf dem gemeinsamen Kommunikationskanal - allerdings generiert er diese nicht auf Basis der von ihm übertragenen In- formationen (oder Wertfolge), sondern auf Basis der auf dem verbindendenIn the context of such a method for generating a shared secret or symmetric cryptographic key by means of public discussion using PHY-layer properties, it is now to be ensured that this method does not contain any test value errors or checksum errors (eg in the context of a cyclic redundancy check). provided that the message formats used provide for the transmission of appropriate test values or checksums. For this purpose, at least one of the participating network participants transmits a test value sequence on the common communication channel - however, it does not generate this on the basis of the information (or value sequence) transmitted by it, but on the basis of the one on the connecting one
Kommunikationskanal detektierten Überlagerungswertfolge. Dies trägt unter anderem dazu bei, die Kompatibilität dieses Schlüsseletablierungsverfahrens zu bereits heute verfügbaren Standardkomponenten (Hardware/Software, z.B. CAN- Controller) zu erhöhen. Communication channel detected overlay value sequence. Among other things, this contributes to increasing the compatibility of this key establishment method with already available standard components (hardware / software, for example CAN controllers).
Zusätzlich zur Vermeidung von Prüfwertfolgenfehlern bzw. Prüfsummenfehlern wird mit einem solchen Verfahren eine Überprüfung ermöglicht, ob die detektierten bzw. extrahierten Rohinformationen für die zu generierenden Schlüssel bei den involvierten Teilnehmern (mit hoher Wahrscheinlichkeit) identisch sind, so dass gegebenenfalls zusätzlicher Overhead für eine separate Überprüfung ein- gespart werden kann. Die Überprüfung kann insbesondere erfolgen, indem ein Teilnehmer die detektierte Prüfwertfolge auf dem Kommunikationskanal mit der selbst ermittelten Prüfwertfolge vergleicht. In addition to avoiding test value sequence errors or checksum errors, such a method makes it possible to check whether the detected or extracted raw information for the keys to be generated is identical (with a high degree of probability) to the participants involved, so that additional overhead may be necessary for a separate check one- can be saved. The check can in particular be carried out by a participant comparing the detected test value sequence on the communication channel with the self-determined test value sequence.
Die Prüfwertfolge wird vorzugsweise direkt nach der Überlagerungswertfolge übertragen, falls die übertragenden Teilnehmer hierzu in der Lage sind. Ansonsten kann in einer alternativen Ausgestaltung die Prüfwertfolge auch in einem vorbestimmten Abstand zur Überlagerungswertfolge übertragen werden. Diese Variante hat den Vorteil, dass die Teilnehmer mehr Zeit zur Berechnung der Prüfwertfolge haben und damit weniger Anforderungen an die Ausgestaltung der Teilnehmer bestehen und das Verfahren weniger fehleranfällig ist. The test value sequence is preferably transmitted directly after the overlay value sequence if the transmitting subscribers are able to do so. Otherwise, in an alternative embodiment, the test value sequence can also be transmitted at a predetermined distance from the overlay value sequence. This variant has the advantage that the participants have more time to calculate the test value sequence and thus have fewer requirements for the design of the participants and the method is less error-prone.
Um keine Schwächung des gemeinsamen Schlüssels zuzulassen, sollte die (auch für einen Angreifer sichtbare) Prüfwertfolge vorzugsweise zu dessen Generierung nicht herangezogen wird. In order not to allow weakening of the common key, the check value sequence (also visible to an attacker) should preferably not be used for its generation.
Besonders vorteilhaft kann das Verfahren in einem Netzwerk eingesetzt werden, in dem es einen dominanten Wert (physikalisch: ein dominantes Signal) gibt, der sich durchsetzt, wenn nur ein Teilnehmer ihn auf dem Übertragungskanal anlegt, und einen rezessiven Wert (physikalisch: ein rezessives Signal), der auf dem Übertragungskanal nur resultiert, wenn beide bzw. alle Teilnehmer einen rezessiven Wert übertragen. Aufgrund der hiermit klar vorgegebenen Überlagerungsregeln können die Teilnehmer eines solchen Netzwerks aus resultierenden Überlagerungsfolgen besonders einfach Informationen zur Schlüsselgenerierung ableiten. Particularly advantageously, the method can be used in a network in which there is a dominant value (physically: a dominant signal) that prevails when only one subscriber applies it on the transmission channel and a recessive value (physically: a recessive signal ) which results on the transmission channel only if both or all participants transmit a recessive value. Because of the clearly defined overlay rules, the subscribers of such a network can derive from the resulting overlay sequences particularly simple information for generating the key.
Die Teilnehmerwertfolgen, welche von den Teilnehmern weitgehend simultan auf den Übertragungskanal gegeben werden, werden im Vorfeld in den jeweiligen Teilnehmern selbst mit Hilfe eines Zufallsgenerators oder Pseudozufallsgenera- tors erzeugt. Da die resultierende Überlagerungsfolge auf dem Übertragungskanal einem potentiellen Angreifer zugänglich sein kann, ist es für die Sicherheit der späteren Kommunikation besonders vorteilhaft, wenn es der Angreifer möglichst schwer hat, auf die einzelnen Wertfolgen der Teilnehmer zu schließen, wenn diese also in den Teilnehmern lokal sowie zufällig oder zumindest pseudozufällig erzeugt werden. Die beschriebenen Verfahren sind besonders gut in einem CAN-, TTCAN- oder CAN-FD-Bussystem umzusetzen. Hier wird ein rezessiver Buspegel durch einen dominanten Buspegel verdrängt. Die Überlagerung von Werten bzw. Signalen der Teilnehmer folgt damit festgelegten Regeln, welche die Teilnehmer zur Ableitung von Informationen aus dem überlagerten Wert bzw. Signal und dem von ihnen übertragenen Wert bzw. Signal nutzen können. Auch für weitere Kommunikationssysteme wie LIN und I2C sind die Verfahren gut geeignet. The subscriber value sequences, which are given largely simultaneously by the subscribers to the transmission channel, are generated in advance in the respective subscribers themselves with the aid of a random generator or pseudo-random generator. Since the resulting overlay sequence on the transmission channel can be accessible to a potential attacker, it is particularly advantageous for the security of the subsequent communication if the attacker has as difficult as possible to infer the individual value sequences of the participants, ie if they are local in the participants as well be generated randomly or at least pseudorandomly. The methods described can be implemented particularly well in a CAN, TTCAN or CAN FD bus system. Here, a recessive bus level is replaced by a dominant bus level. The superimposition of values or signals of the subscribers thus follows defined rules which the subscribers can use to derive information from the superimposed value or signal and the value or signal transmitted by them. The methods are also well suited for other communication systems such as LIN and I2C.
Alternativ kann das Verfahren aber zum Beispiel auch in einem Netzwerk mit On- Off-Keying-Amplitudenumtastung eingesetzt werden. Hier ist ebenfalls die Überlagerung festgelegt, indem den Teilnehmern als Signale„Übertragung" und„keine Übertragung" zur Auswahl stehen und das Überlagerungssignal dem Signal „Übertragung" entspricht, wenn einer oder beide der Teilnehmer übertragen, und dem Signal„keine Übertragung" entspricht, wenn beide Teilnehmer nicht übertragen. Alternatively, however, the method can also be used, for example, in a network with on-off-keying amplitude shift keying. Here, too, the overlay is fixed by allowing the subscribers to be "transmission" and "no transmission" signals and the beat signal corresponding to the "transmission" signal when one or both of the subscribers transmits and corresponds to the "no transmission" signal, if both participants do not transfer.
Während das Verfahren für zwei Teilnehmer in einem Netzwerk beschrieben wurde, kann auch bereits durch einen Teilnehmer eines Netzwerks ein geheimerWhile the method has been described for two subscribers in a network, a subscriber to a network may already have a secret
Schlüssel aus einer eigenen Signalfolge und aus einer Überlagerung dieser mit der Signalfolge eines zweiten Teilnehmers abgeleitet werden. Ein Netzwerk oder ein Teilnehmer eines Netzwerks sind hierzu eingerichtet, indem sie über elektronische Speicher- und Rechenressourcen verfügen, die Schritte eines entspre- chenden Verfahrens auszuführen. Auf einem Speichermedium eines solchenKey from a separate signal sequence and from a superposition of these are derived with the signal sequence of a second participant. A network or participant of a network is set up to do this by having electronic memory and computational resources to perform the steps of a corresponding method. On a storage medium of such
Teilnehmers oder auf den verteilten Speicherressourcen eines Netzwerks kann auch ein Computerprogramm abgelegt sein, dass dazu eingerichtet ist, alle Schritte eines entsprechenden Verfahrens auszuführen, wenn es in dem Teilnehmer oder in dem Netzwerk abgearbeitet wird. Zeichnungen Subscriber or on the distributed memory resources of a network can also be stored a computer program that is configured to perform all the steps of a corresponding method when it is executed in the subscriber or in the network. drawings
Nachfolgend ist die Erfindung unter Bezugnahme auf die beiliegenden Zeichnungen und anhand von Ausführungsbeispielen näher beschrieben. Dabei zeigen The invention is described in more detail below with reference to the accompanying drawings and to exemplary embodiments. Show
Fig. 1 schematisch den Aufbau eines beispielhaften, zugrundeliegenden Kommunikationssystems, 1 schematically shows the structure of an exemplary, underlying communication system,
Fig. 2 schematisch einen linearen Bus als Beispiel eines zugrundeliegenden Kommunikationssystems, 2 schematically shows a linear bus as an example of an underlying communication system,
Fig. 3 schematisch beispielhafte Signalfolgen zweier Teilnehmer eines Netzwerks sowie eine resultierende Überlagerungswertfolge auf einem Übertragungskanal zwischen den Teilnehmern, 3 is a schematic illustration of exemplary signal sequences of two subscribers of a network and a resulting subsequence value sequence on a transmission channel between the subscribers,
Fig. 4 schematisch den Ablauf eines beispielhaften Verfahrens zur Schlüsselge- nerierung zwischen zwei Teilnehmern eines Netzwerks, 4 schematically shows the sequence of an exemplary method for generating a key between two subscribers of a network,
Fig. 5 ein CAN- Datentelegramm im so genannten Base Frame Format und 5 shows a CAN data telegram in the so-called base frame format and
Fig. 6 einen beispielhaften Ablauf eines Abgleichs zwischen detektierter und berechneter Prüfwertfolge. 6 shows an exemplary sequence of a comparison between the detected and calculated test value sequence.
Beschreibung der Ausführungsbeispiele Description of the embodiments
Die vorliegende Erfindung bezieht sich auf ein Verfahren zur Generierung eines gemeinsamen Geheimnisses bzw. (geheimer) symmetrischer kryptographischer Schlüssel zwischen zwei Knoten eines Kommunikationssystems (Teilnehmer eines Netzwerkes), die über ein gemeinsam genutztes Medium (Übertragungskanal des Netzwerks) miteinander kommunizieren. Die Generierung bzw. Aushandlung der kryptographischen Schlüssel basiert dabei auf einem öffentlichen Datenaustausch zwischen den zwei Teilnehmern, wobei es einem möglichen mithörenden Dritten als Angreifer aber dennoch nicht oder nur sehr schwer möglich ist, Rückschlüsse auf die generierten Schlüssel zu ziehen. Mit der Erfindung ist es somit möglich, zwischen zwei verschiedenen Teilnehmern eines Netzwerks vollständig automatisiert und sicher entsprechende symmetrische kryptographische Schlüssel zu etablieren, um darauf aufbauend dann bestimmte Sicherheitsfunktionen, wie z.B. eine Datenverschlüsselung, zu realisieren. Wie im Detail noch beschrieben wird hierzu zunächst ein gemeinsames Geheimnis etabliert, welches zur Schlüsselgenerierung herangezogen werden kann. Ein solches gemeinsames Geheimnis kann aber grundsätzlich auch zu anderen Zwecken als für kryptographische Schlüssel im engeren Sinne genutzt werden, z.B. als One-Time- Pad. The present invention relates to a method for generating a shared secret or (secret) symmetric cryptographic key between two nodes of a communication system (participants of a network) communicating with each other via a shared medium (transmission channel of the network). The generation or negotiation of the cryptographic keys is based on a public data exchange between the two participants, although a possible listening third party as an attacker is not or only very difficult to draw conclusions about the generated key. It is with the invention Thus, it is possible to fully automatically and securely establish appropriate symmetric cryptographic keys between two different subscribers of a network in order to then implement specific security functions, such as data encryption. As described in detail, a common secret is first established for this, which can be used to generate the key. However, such a shared secret can in principle also be used for purposes other than cryptographic keys in the narrower sense, for example as a one-time pad.
Die Erfindung eignet sich für eine Vielzahl drahtgebundener oder drahtloser sowie auch optischer Netzwerke bzw. Kommunikationssysteme, insbesondere auch solche, bei denen die verschiedenen Teilnehmer über einen linearen Bus miteinander kommunizieren und der Medienzugriff auf diesen Bus mithilfe einer bitweisen Bus-Arbitrierung erfolgt. Dieses Prinzip stellt beispielsweise die Grundlage des weit verbreiteten CAN-Busses dar. Mögliche Einsatzgebiete der Erfindung umfassen dementsprechend insbesondere auch CAN-basierte Fahrzeugnetzwerke sowie CAN-basierte Netzwerke in der Automatisierungstechnik. The invention is suitable for a variety of wired or wireless as well as optical networks or communication systems, especially those in which the various participants communicate with each other via a linear bus and the media access to this bus using a bitwise bus arbitration. This principle represents, for example, the basis of the widespread CAN bus. Possible fields of application of the invention accordingly include, in particular, CAN-based vehicle networks as well as CAN-based networks in automation technology.
Die vorliegende Erfindung beschreibt einen Ansatz, mit dem automatisiert symmetrische kryptographische Schlüssel in einem, bzw. insbesondere zwischen zwei Knoten eines Netzwerks generiert werden können. Diese Generierung erfolgt dabei unter Ausnutzung von Eigenschaften der entsprechenden Übertragungsschicht. Anders als bei den gängigen Ansätzen der„Physical Layer Security" werden dafür aber nicht physikalische Parameter des Übertragungskanals wie Übertragungsstärke etc. ausgewertet. Vielmehr gibt es dazu einen öffentlichen Datenaustausch zwischen den beteiligten Knoten, der dank der Eigenschaften des Kommunikationssystems und/oder des verwendeten Modulationsverfahrens einem möglichen lauschenden Angreifer keine, bzw. keine ausreichenden Rückschlüsse auf den daraus ausgehandelten Schlüssel ermöglicht. The present invention describes an approach with which automatically symmetric cryptographic keys can be generated in one, or in particular between two nodes of a network. This generation takes place by exploiting properties of the corresponding transfer layer. Unlike the usual approaches of "physical layer security" but not physical parameters of the transmission channel such as transmission strength are evaluated .. Rather, there is a public data exchange between the nodes involved, thanks to the characteristics of the communication system and / or the modulation method used a possible listening attacker no, or no sufficient conclusions on the negotiated key allows.
Im Folgenden wird eine Anordnung betrachtet, wie sie abstrakt in Fig. 1 dargestellt ist. Dabei können verschiedene Teilnehmer 2, 3 und 4 über ein so genanntes geteiltes Übertragungsmedium C,shared medium") 10 miteinander kommunizieren. In einer vorteilhaften Ausprägung der Erfindung entspricht dieses geteilte Ubertragungsmedium einem linearen Bus (drahtgebunden oder optisch) 30, wie er beispielhaft in Fig. 2 dargestellt ist. Das Netzwerk 20 in Fig. 2 besteht aus eben diesem linearen Bus 30 als geteiltes Übertragungsmedium (beispielsweise als drahtgebundener Übertragungskanal), Teilnehmern bzw. Knoten 21, 22 und 23 sowie (optionalen) Busterminierungen 31 und 32. The following is an arrangement as shown in FIG. 1 in the abstract. In this case, different users 2, 3 and 4 can communicate with one another via a so-called shared transmission medium C, shared medium ") 10. In an advantageous embodiment of the invention, this corresponds to a shared one Transmission medium a linear bus (wired or optical) 30, as shown by way of example in Fig. 2. The network 20 in FIG. 2 consists of just this linear bus 30 as a shared transmission medium (for example, as a wired transmission channel), nodes 21, 22 and 23, and (optional) bus terminations 31 and 32.
Im Folgenden wird für die Kommunikation zwischen den verschiedenen Knoten 21, 22 und 23 angenommen, dass sie durch die Unterscheidung von dominanten und rezessiven Werten gekennzeichnet ist. In diesem Beispiel werden als mögliche Wert die Bits„0" und„1" angenommen. Dabei kann ein dominantes Bit (z.B. das logische Bit ,0') ein gleichzeitig übertragenes rezessives Bit (z.B. das logische Bit ,1') quasi verdrängen bzw. überschreiben. In the following, communication between the various nodes 21, 22 and 23 is assumed to be characterized by the distinction between dominant and recessive values. In this example, the possible values are the bits "0" and "1". In this case, a dominant bit (e.g., the logical bit '0') may quasi supersede a concurrently transmitted recessive bit (e.g., the logical bit '1').
Ein Beispiel für ein solches Übertragungsverfahren ist das so genannte On-Off- Keying (On-Off-Keying-Amplitudenumtastung), bei dem genau zwei Übertra- gungszustände unterschieden werden: Im ersten Fall (Wert ,Οη', bzw.„0") wird ein Signal übertragen, beispielsweise in Form eines einfachen Trägersignals, im anderen Fall (Wert ,Off', bzw.„1") wird kein Signal übertragen. Der Zustand ,Οη' ist dabei dominant während der Zustand ,Off' rezessiv ist. An example of such a transmission method is the so-called on-off-keying (on-off-keying amplitude shift keying), in which exactly two transmission states are distinguished: in the first case (value, Οη ', or "0") If a signal is transmitted, for example in the form of a simple carrier signal, in the other case (value 'Off' or '1') no signal is transmitted. The state 'η' is dominant while the state 'Off' is recessive.
Ein weiteres Beispiel für ein entsprechendes Kommunikationssystem, das diese Unterscheidung von dominanten und rezessiven Bits unterstützt, ist ein (drahtgebundenes oder optisches) System basierend auf einer bitweisen Bus- Arbitrierung, wie sie beispielsweise beim CAN-Bus zum Einsatz kommt. Die Grundidee dabei besteht ebenfalls darin, dass wenn beispielsweise zwei Knoten gleichzeitig ein Signal übertragen wollen und der eine Knoten eine ,1' überträgt, wohingegen der zweite Knoten eine ,0' sendet, die ,0'„gewinnt" (also das dominante Bit), d.h. der Signalpegel, der auf dem Bus gemessen werden kann, entspricht einer logischen ,0'. Bei CAN wird dieser Mechanismus insbesondere zur Auflösung von möglichen Kollisionen benutzt. Dabei werden höherpriore Nachrichten (d.h. Nachrichten mit früherem, dominantem Signalpegel) vorrangig übertragen, indem jeder Knoten bei der Übertragung seines CAN-Identifiers bitweise gleichzeitig den Signalpegel auf dem Bus überwacht. Sofern der Knoten selbst ein rezessives Bit überträgt, aber auf dem Bus ein dominantes Bit detektiert wird, bricht der entsprechende Knoten seinen Übertragungsversuch zugunsten der höherprioren Nachricht (mit dem früheren dominanten Bit) ab. Another example of a corresponding communication system that supports this distinction of dominant and recessive bits is a (wired or optical) system based on bitwise bus arbitration, such as that used in the CAN bus. The basic idea here is also that if, for example, two nodes want to transmit a signal at the same time and one node transmits a '1', whereas the second node transmits a '0' which 'gains''0' (ie the dominant bit) ie, the signal level that can be measured on the bus corresponds to a logical '0' .This mechanism is used in particular to resolve possible collisions, whereby priority messages (ie messages with a previous, dominant signal level) are transmitted by each node simultaneously monitors the signal level on the bus while transmitting its CAN identifier, if the node itself transmits a recessive bit but a dominant bit is detected on the bus, the corresponding node aborts its transmission attempt in favor of the higher priority message (with the earlier dominant bit).
Die Unterscheidung von dominanten und rezessiven Bits erlaubt es, das geteilte Übertragungsmedium als eine Art binären Operator aufzufassen, der die verschiedenen Eingangsbits (=alle gleichzeitig übertragenen Bits) mit Hilfe einer logischen UND-Funktion miteinander verknüpft. The distinction between dominant and recessive bits makes it possible to interpret the shared transmission medium as a kind of binary operator that combines the various input bits (= all bits transmitted simultaneously) using a logical AND function.
In Fig. 3 ist beispielsweise dargestellt, wie ein Teilnehmer 1 (Tl) die Bitfolge 0, 1, 1, 0, 1 zur Sendung zwischen den Zeitpunkten tO und t5 über den Übertragungskanal bereit hält. Teilnehmer 2 (T2) hält die Bitfolge 0, 1, 0, 1, 1 zur Sendung zwischen Zeitpunkten tO und t5 über den Übertragungskanal bereit. Mit den oben beschriebenen Eigenschaften des Kommunikationssystems und unter der Annahme, dass es sich in diesem Beispiel bei dem Bitpegel„0" um das dominante Bit handelt, wird auf dem Bus (B) die Bitfolge 0, 1, 0, 0, 1 zu sehen sein. Nur zwischen den Zeitpunkten tl und t2 sowie zwischen t4 und t5 sehen sowohl Teilnehmer 1 (Tl) als auch Teilnehmer 2 (T2) ein rezessives Bit„1" vor, so dass nur hier die logische UND-Verknüpfung in einen Bitpegel von„1" auf dem Bus (B) resultiert. FIG. 3 shows, for example, how a subscriber 1 (T1) keeps the bit sequence 0, 1, 1, 0, 1 ready for transmission between the times t0 and t5 via the transmission channel. Subscriber 2 (T2) keeps the bit sequence 0, 1, 0, 1, 1 ready for transmission between times t0 and t5 via the transmission channel. With the above-described characteristics of the communication system and assuming that the bit level "0" in this example is the dominant bit, the bit string 0, 1, 0, 0, 1 will be seen on the bus (B) Only between times t1 and t2 and between t4 and t5, both subscriber 1 (T1) and subscriber 2 (T2) provide a recessive bit "1", so that only in this case does the logical AND operation result in a bit level of " 1 "on the bus (B) results.
Unter Ausnutzung dieser Eigenschaften des Übertragungsverfahrens des Kommunikationssystems kann eine Schlüsselgenerierung zwischen zwei Teilnehmern eines entsprechenden Netzwerks nun erfolgen, indem die Teilnehmer eine Überlagerung von Bitfolgen der beiden Teilnehmer auf dem Übertragungsmedium de- tektieren und aus dieser Information gemeinsam mit Informationen über die selbst gesendete Bitfolge einen gemeinsamen (symmetrischen), geheimen Schlüssel erzeugen. Taking advantage of these characteristics of the transmission method of the communication system, a key generation between two subscribers of a corresponding network can now take place in that the subscribers detect a superimposition of bit sequences of the two subscribers on the transmission medium and from this information share information about the self-transmitted bit sequence (symmetric), generate secret key.
Eine beispielhafte, besonders bevorzugte Realisierung wird im Folgenden an- hand von Fig. 4 erläutert. An exemplary, particularly preferred implementation will be explained below with reference to FIG. 4.
Der Prozess zur Generierung eines symmetrischen Schlüsselpaars wird in Schritt 41 von einem der in diesem Beispiel zwei beteiligten Knoten (Teilnehmer 1 und Teilnehmer 2) gestartet. Dies kann beispielsweise durch das Versenden einer speziellen Nachricht bzw. eines speziellen Nachrichtenheaders erfolgen. Sowohl Teilnehmer 1 als auch Teilnehmer 2 generieren in Schritt 42 zunächst lokal (d.h. intern und voneinander unabhängig) eine Bitsequenz. Vorzugsweise ist diese Bitfolge mindestens zweimal, insbesondere mindestens dreimal so lang wie der als Resultat des Verfahrens erwünschte gemeinsame Schlüssel. Die Bitfolge wird vorzugsweise jeweils als zufällige oder pseudozufällige Bitabfolge, beispielsweise mit Hilfe eines geeigneten Zufallszahlengenerators oder Pseudozu- fallszahlengenerators erzeugt. The process for generating a symmetric key pair is started in step 41 by one of the two nodes involved in this example (subscriber 1 and subscriber 2). This can be done, for example, by sending a special message or a special message header. Both subscriber 1 and subscriber 2 initially generate a bit sequence locally (ie internally and independently of one another) in step 42. Preferably, this bit sequence is at least twice, in particular at least three times as long as the common key desired as a result of the method. The bit sequence is preferably generated in each case as a random or pseudo-random bit sequence, for example with the aid of a suitable random number generator or pseudo random number generator.
Beispiel für lokale Bitfolgen der Länge 20 Bits: Example of local bit sequences of length 20 bits:
Erzeugte Bitsequenz von Teilnehmer 1:  Generated bit sequence of participant 1:
Su = 01001101110010110010  Su = 01001101110010110010
' Erzeugte Bitsequenz von Teilnehmer 2:  'Generated bit sequence of subscriber 2:
ST2 = 10010001101101001011 S T2 = 10010001101101001011
In einem Schritt 43 übertragen Teilnehmer 1 und Teilnehmer 2 zueinander (weitgehend) synchron ihre jeweils erzeugten Bitsequenzen über das geteilte Übertragungsmedium (unter Verwendung des Übertragungsverfahrens mit dominanten und rezessiven Bits, wie zuvor bereits erläutert). Dabei sind verschiedene Möglichkeiten zur Synchronisierung der entsprechenden Übertragungen denkbar. So könnte beispielsweise entweder Teilnehmer 1 oder Teilnehmer 2 zunächst eine geeignete Synchronisationsnachricht an den jeweils anderen Knoten senden und nach einer bestimmten Zeitdauer im Anschluss an die vollständige Übertragung dieser Nachricht dann die Übertragung der eigentlichen Bitsequenzen starten. Genauso ist es aber auch denkbar, dass von einem der beiden Knoten nur ein geeigneter Nachrichtenheader übertragen wird (z.B. ein CAN-Header bestehend aus Arbitrierungsfeld und Kontrollfeld) und während der zugehörigen Payload-Phase dann beide Knoten gleichzeitig ihre generierten Bitsequenzen (weitgehend) synchron übermitteln. In einer Variante des Verfahrens können die in Schritt 42 generierten Bitsequenzen eines Teilnehmers in Schritt 43 auch auf mehrere Nachrichten verteilt übertragen werden können, beispielsweise wenn dies die (Maximal-)Größen der entsprechenden Nachrichten erforderlich machen. Auch in dieser Variante erfolgt die Übertragung der auf entsprechend viele, ent- sprechend große Nachrichten verteilten Bitsequenzen des anderen Teilnehmers wiederum (weitgehend) synchron. In a step 43, subscriber 1 and subscriber 2 transmit (largely) synchronously their respectively generated bit sequences over the divided transmission medium (using the transmission method with dominant and recessive bits, as already explained above). Different possibilities for synchronizing the corresponding transmissions are conceivable. Thus, for example, either subscriber 1 or subscriber 2 could first send a suitable synchronization message to the respective other node and then start the transmission of the actual bit sequences after a certain period of time following the complete transmission of this message. Equally, however, it is also conceivable that only one suitable message header is transmitted by one of the two nodes (eg a CAN header consisting of arbitration field and control field) and during the associated payload phase then both nodes simultaneously (largely) transmit their generated bit sequences synchronously , In a variant of the method, the bit sequences of a subscriber generated in step 42 can also be transmitted to several messages distributed in step 43, for example if this necessitates the (maximum) sizes of the corresponding messages. In this variant as well, the transmission of the corresponding number of speaking large messages distributed bit sequences of the other subscriber turn (largely) synchronously.
Auf dem geteilten Übertragungsmedium überlagern sich die beiden Bitsequenzen dann, wobei aufgrund der zuvor geforderten Eigenschaft des Systems mit der Unterscheidung von dominanten und rezessiven Bits die einzelnen Bits von Teilnehmer 1 und Teilnehmer 2 eine Überlagerung ergeben, im genannten Beispiel de facto UND-verknüpft werden. Damit ergibt sich auf dem Übertragungskanal eine entsprechende Überlagerung, die beispielsweise ein mithörender dritter Teilnehmer detektieren könnte. On the shared transmission medium, the two bit sequences then overlap, whereby due to the previously required property of the system with the distinction of dominant and recessive bits, the individual bits of subscriber 1 and subscriber 2 result in an overlay, in the example mentioned de facto AND-linked. This results in a corresponding overlay on the transmission channel, which could detect, for example, a listening third party.
Beispiel einer Überlagerungs bitfolge für die obigen, lokalen Bitfolgen: Example of an overlay bit sequence for the above local bit sequences:
• Effektive Bitsequenz auf dem Übertragungskanal:  • Effective bit sequence on the transmission channel:
Seft = Su AND ST2 = 00000001100000000010 Seft = Su AND S T2 = 00000001100000000010
Sowohl Teilnehmer 1 als auch Teilnehmer 2 detektieren während der Übertragung ihrer Bitsequenzen des Schritts 43 in einem parallelen Schritt 44 die effektiven (überlagerten) Bitsequenzen Seff auf dem geteilten Übertragungsmedium. Für das Beispiel des CAN-Busses wird dies auch in konventionellen Systemen während der Arbitrierungsphase gewöhnlicherweise ohnehin gemacht. Both subscriber 1 and subscriber 2 detect during the transmission of their bit sequences of step 43 in a parallel step 44, the effective (overlaid) bit sequences S e ff on the shared transmission medium. For the example of the CAN bus, this is usually done in conventional systems during the arbitration phase anyway.
Für Systeme mit ,Οη-Off-Keying' (drahtlos, drahtgebunden oder optisch) ist dies entsprechend ebenfalls möglich. Der praktischen Realisierbarkeit kommt hierbei insbesondere zugute, dass bei einem solchen System der Zustand ,Οη' dominant und der Zustand ,Off' rezessiv ist (wie zuvor bereits erläutert). Folglich weiß ein Knoten auch ohne Messung, dass der effektive Zustand auf dem„Shared Medium" dominant ist sofern der Knoten selbst ein dominantes Bit gesendet hat. Hat ein Knoten hingegen ein rezessives Bit gesendet, kennt er den Zustand auf dem geteilten Übertragungsmedium zunächst nicht ohne Weiteres, allerdings kann er in diesem Fall durch eine geeignete Messung bestimmen, wie dieser aussieht. Da der Knoten selbst in diesem Fall nichts sendet, gibt es nämlich auch keine Probleme mit so genannter Selbstinterferenz, die speziell im Fall von drahtlosen Systemen ansonsten eine aufwändige Echokompensation erforderlich machen würde. In einem nächsten Schritt 45 übertragen sowohl Teilnehmer 1 als auch Teilnehmer 2 ebenfalls wieder (weitgehend) synchron ihre initialen Bitsequenzen STI und ST2, diesmal allerdings invertiert. Die Synchronisierung der entsprechenden Übertragungen kann dabei wieder genau auf dieselbe Art und Weise realisiert werden, wie oben beschrieben. Auf dem geteilten Kommunikationsmedium werden die beiden Sequenzen dann wieder miteinander UND-verknüpft. Teilnehmer 1 und 2 ermitteln wiederum die effektiven, überlagerten Bitsequenzen Seff auf dem geteilten Übertragungsmedium. This is likewise possible for systems with "η-off-keying" (wireless, wired or optical). In this case, the practical feasibility benefits in particular from the fact that in such a system the state 'η' is dominant and the state 'Off' is recessive (as already explained above). Consequently, even without measurement, a node knows that the effective state is dominant on the shared medium if the node itself has sent a dominant bit, but if a node has sent a recessive bit, it does not know the state on the shared transmission medium first Further, however, in this case he can determine by suitable measurement how it looks like, because, in this case, the node itself does not send anything, so there are no problems with so-called self-interference, which is a complex echo cancellation, especially in the case of wireless systems would require. In a next step 45, both subscriber 1 and subscriber 2 also again (largely) synchronously transmit their initial bit sequences STI and ST2, but this time inverted. The synchronization of the corresponding transmissions can again be realized exactly in the same way as described above. On the shared communication medium, the two sequences are then ANDed together again. Subscribers 1 and 2 in turn determine the effective, superimposed bit sequences S e ff on the shared transmission medium.
Beispiel für die obigen Bitfolgen: Example of the above bit sequences:
Invertierte Bitsequenz von Teilnehmer 1:  Inverted bit sequence of participant 1:
Sn = 10110010001101001101  Sn = 10110010001101001101
Invertierte Bitsequenz von Teilnehmer 2:  Inverted bit sequence of participant 2:
ST2' = 01101110010010110100 S T2 '= 01101110010010110100
' Effektive, überlagerte Bitsequenz auf dem Kanal:  'Effective, overlaid bit sequence on the channel:
Seff' = Sn AND ST2' = 00100010000000000100 Seff '= Sn AND S T2 ' = 00100010000000000100
Sowohl Teilnehmer 1 als auch Teilnehmer 2 ermitteln während der Übertragung ihrer nun invertierten Bitsequenzen dann wieder die effektiven, überlagerten Bitsequenzen auf dem geteilten Übertragungsmedium. Zu diesem Zeitpunkt kennen somit beide Knoten (Teilnehmer 1 und Teilnehmer 2), sowie auch ein möglicher Angreifer (z.B. Teilnehmer 3), der die Kommunikation auf dem geteilten Übertragungsmedium mithört, die effektiven, überlagerten Bitsequenzen Seff und Seff'. Im Gegensatz zum Angreifer bzw. dritten Teilnehmer kennt aber Teilnehmer 1 noch seine initial erzeugte, lokale Bitsequenz STI und Teilnehmer 2 seine initial erzeugte, lokale Bitsequenz ST2. Teilnehmer 1 wiederum kennt aber nicht die initial erzeugte, lokale Bitsequenz von Teilnehmer 2 und Teilnehmer 2 nicht die initial erzeugte, lokale Bitsequenz von Teilnehmer 1. Die Detektion der Überlagerungsbitfolge erfolgt wiederum während der Übertragung in Schritt 46. Both subscriber 1 and subscriber 2 determine during the transmission of their now inverted bit sequences then again the effective, superimposed bit sequences on the shared transmission medium. At this time, both nodes (subscriber 1 and subscriber 2), as well as a possible attacker (eg subscriber 3) who overhears the communication on the shared transmission medium, thus know the effective, superimposed bit sequences S e ff and Seff '. In contrast to the attacker or third participant, however, participant 1 still knows his initially generated, local bit sequence STI and participant 2 his initially generated, local bit sequence ST2. However, subscriber 1 in turn does not know the initially generated, local bit sequence of subscriber 2 and subscriber 2 does not know the initially generated, local bit sequence of subscriber 1. The detection of the overlay bit sequence again takes place during the transmission in step 46.
Alternativ zu dieser beispielhaften Ausführungsvariante können Teilnehmer 1 und Teilnehmer 2 ihre invertierte, lokale Bitfolge auch direkt mit bzw. direkt nach ihrer ursprünglichen, lokalen Bitfolge versenden, d.h. Schritte 45 und 46 erfolgen mit den Schritten 43 und 44. Die ursprüngliche und die invertierte Bitfolge können dabei in einer Nachricht, aber auch in separaten Nachrichten als Teil- Bitfolgen übermittelt werden. As an alternative to this exemplary embodiment, subscriber 1 and subscriber 2 can also send their inverted, local bit sequence directly with or directly after their original, local bit sequence, ie steps 45 and 46 take steps 43 and 44. The original and the inverted bit sequences can be transmitted in a message, but also in separate messages as partial bit sequences.
In Schritt 47 verknüpfen Teilnehmer 1 und Teilnehmer 2 nun jeweils lokal (also intern) die effektiven, überlagerten Bitfolgen (Seff und Seff') , insbesondere mit ei¬ ner logischen ODE R- Funktion. In step 47, subscriber 1 and 2 now associate each local (ie internal) the effective superimposed bit sequences (S e ff and S e ff '), in particular egg ¬ ner logical ODE R- function.
Beispiel für die obigen Bitfolgen:  Example of the above bit sequences:
Sges = Seff OR Seff' = 00100011100000000110 S g = Seff it Seff OR '= 00100011100000000110
Die einzelnen Bits in der aus der ODE R-Verknüpfung resultierenden Bitsequenz (Sges) geben nun an, ob die entsprechenden Bits von STI und ST2 identisch oder unterschiedlich sind. Ist das n-te Bit innerhalb von Sges beispielsweise eine ,0', so bedeutet dies, dass das n-te Bit innerhalb von STI invers zu dem entsprechenden Bit innerhalb von ST2 ist. Gleichermaßen gilt, dass wenn das n-te Bit innerhalb von Sges eine ,1' ist, die entsprechenden Bits innerhalb von SANce und Sßob iden¬ tisch sind. The individual bits in the bit sequence (Sges) resulting from the ODE R operation now indicate whether the corresponding bits of STI and ST2 are identical or different. For example, if the nth bit within S tot is a '0', it means that the nth bit within S TI is inverse to the corresponding bit within S T2 . Similarly applies that when the n-th bit is within a Stotal, 1 ', the corresponding bits are identical ¬ table within ŠANCE and Sßob.
Teilnehmer 1 und Teilnehmer 2 streichen daraufhin in Schritt 48 basierend auf der aus der ODE R-Verknüpfung erhaltenen Bitsequenz Sges in ihren ursprüngli- chen, initialen Bitsequenzen STI und ST2 alle Bits, die in beiden Sequenzen identisch sind. Dies führt folglich zu entsprechend verkürzten Bitsequenzen. Subscriber 1 and subscriber 2 then cancel in step 48, based on the bit sequence S ges obtained from the ODE R combination, in their original, initial bit sequences S TI and S T2 all bits which are identical in both sequences. This consequently leads to correspondingly shortened bit sequences.
Beispiel für die obigen Bitfolgen: Example of the above bit sequences:
Verkürzte Bitsequenz von Teilnehmer 1:  Abbreviated bit sequence of participant 1:
Su,v = 01011100101100  Su, v = 01011100101100
Verkürzte Bitsequenz von Teilnehmer 2:  Abbreviated bit sequence of participant 2:
ST2,v = 10100011010011 S T2 , v = 10100011010011
Die resultierenden, verkürzten Bitsequenzen STI.V und ST2,V sind nun gerade in- vers zueinander. Somit kann einer der beiden Teilnehmer durch Inversion seiner verkürzten Bitsequenz exakt diejenige verkürzte Bitsequenz ermitteln, wie sie im anderen Teilnehmer bereits vorliegt. The resulting, shortened bit sequences STI.V and ST2, V are now just inverse to each other. Thus, by inversion of its shortened bit sequence, one of the two subscribers can determine exactly the shortened bit sequence that already exists in the other subscriber.
Die dermaßen gemeinsam vorliegende, verkürzte Bitsequenz wird nun von Teil- nehmer 1 und Teilnehmer 2 in Schritt 49 jeweils lokal auf geeignete Art und Wei- se aufbereitet, um den eigentlich gewünschten Schlüssel der gewünschten Länge N zu generieren. Auch hierbei gibt es wieder eine Vielzahl von Möglichkeiten, wie diese Aufbereitung erfolgen kann. Eine Möglichkeit ist die Selektion von N Bits aus der gemeinsam vorliegenden, verkürzten Bitsequenz, wobei klar definiert sein muss, welche N Bits zu nehmen sind, z.B. indem einfach immer die ersten N Bits der Sequenz selektiert werden. Ebenfalls möglich ist die Berechnung einer Hashfunktion über die gemeinsam vorliegende, verkürzte Bitsequenz, die einen Hashwert der Länge N liefert. Ganz allgemein kann die Aufbereitung mit jeder beliebigen linearen und nichtlinearen Funktion erfolgen, die bei Anwendung auf die gemeinsam vorliegende, verkürzte Bitsequenz eine Bitsequenz der Länge N Bits zurückliefert. Der Mechanismus der Schlüsselerzeugung aus der gemeinsam vorliegenden, verkürzten Bitsequenz liegt vorzugsweise in beiden Teilnehmern 1 und 2 identisch vor und wird entsprechend auf die gleiche Weise durchgeführt. The shortened bit sequence, which is present in this way in common, will now be activated locally by subscriber 1 and subscriber 2 in step 49 in a suitable manner. se prepared to generate the actually desired key of the desired length N. Again, there are a variety of ways that this treatment can be done. One possibility is to select N bits from the common truncated bit sequence, where it must be clearly defined which N bits are to be taken, eg simply by selecting the first N bits of the sequence. It is also possible to calculate a hash function via the shared, shortened bit sequence which provides a hash of length N. In general, the rendering can be done with any linear and nonlinear function that returns a N bit length bit sequence when applied to the co-present truncated bit sequence. The mechanism of key generation from the common truncated bit sequence is preferably identical in both subscribers 1 and 2 and is performed accordingly in the same way.
Im Anschluss an die Schlüsselgenerierung kann ggf. noch verifiziert werden, dass die von Teilnehmer 1 und 2 generierten Schlüssel tatsächlich identisch sind. Dazu könnte beispielsweise eine Checksumme über die generierten Schlüssel berechnet und zwischen Teilnehmer 1 und 2 ausgetauscht werden. Sind beide Checksummen nicht identisch, so ist offensichtlich etwas fehlgeschlagen. In diesem Fall könnte das beschriebene Verfahren zur Schlüsselgenerierung wiederholt werden. Following the key generation, it may still be possible to verify that the keys generated by subscribers 1 and 2 are actually identical. For this purpose, for example, a checksum could be calculated using the generated keys and exchanged between subscribers 1 and 2. If both checksums are not identical, then obviously something has failed. In this case, the described method for key generation could be repeated.
In einer bevorzugten Variante des Verfahrens zur Schlüsselgenerierung können in verschiedenen Durchläufen zunächst auch eine ganze Reihe von resultierenden, bei Teilnehmer 1 und 2 jeweils vorliegenden, verkürzten Bitsequenzen erzeugt werden, die dann zu einer einzigen großen Sequenz kombiniert werden, bevor der eigentliche Schlüssel davon abgeleitet wird. Dies kann ggf. auch adaptiv erfolgen. Sollte nach dem einmaligen Durchlaufen der beschriebenen Prozedur z.B. die Länge der gemeinsamen, verkürzten Bitsequenz beispielsweise kleiner als die gewünschte Schlüssellänge N sein, so könnte man durch einen erneuten Durchlauf z.B. weitere Bits vor der eigentlichen Schlüsselableitung generieren. Das generierte, symmetrische Schlüsselpaar kann nun schließlich von Teilnehmer 1 und Teilnehmer 2 in Verbindung mit etablierten (symmetrischen) krypto- graphischen Verfahren, wie z.B. Chiffren zur Datenverschlüsselung, eingesetzt werden. In a preferred variant of the method for generating a key, in a number of passes, a whole series of resulting shortened bit sequences, which are each present in the case of subscribers 1 and 2, can be generated, which are then combined into a single large sequence before the actual key is derived therefrom , If necessary, this can also be done adaptively. If, for example, the length of the common, shortened bit sequence is, for example, less than the desired key length N after a single pass through the described procedure, then one could, for example, generate further bits before the actual key derivation. Finally, the generated symmetric key pair can be used by subscriber 1 and subscriber 2 in conjunction with established (symmetric) cryptographic methods, such as ciphers for data encryption.
Ein möglicher Angreifer (z.B. Teilnehmer 3) kann die öffentliche Datenübertragung zwischen Teilnehmer 1 und Teilnehmer 2 abhören und somit wie beschrieben Kenntnis der effektiven, überlagerten Bitfolgen (Seff und Seff') erlangen. Damit weiß der Angreifer dann allerdings nur, welche Bits in den lokal generierten Bitsequenzen von Teilnehmer 1 und 2 identisch sind und welche nicht. Bei den identischen Bits kann der Angreifer darüber hinaus sogar noch feststellen, ob es sich dabei um eine ,1' oder eine ,0' handelt. Für eine vollständige Kenntnis der resultierenden, verkürzten Bitfolge (und damit der Grundlage zur Schlüsselgene- rierung) fehlen ihm aber die Informationen über die nicht identischen Bits. Um dem Angreifer mögliche Angriffe weiter zu erschweren, wird in einer bevorzugtenA potential attacker (eg subscriber 3) can listen to the public data transmission between subscriber 1 and subscriber 2 and thus gain knowledge of the effective, superposed bit sequences (S e ff and S e ff ') as described. The attacker then only knows which bits in the locally generated bit sequences of nodes 1 and 2 are identical and which are not. In addition, with the identical bits, the attacker can even determine whether it is a '1' or a '0'. For a complete knowledge of the resulting, shortened bit sequence (and thus the basis for key generation), however, he lacks the information about the non-identical bits. In order to further complicate the attacker possible attacks, is in a preferred
Variante zusätzlich die in den ursprünglichen, lokal erzeugten Bitfolgen der Teilnehmer 1 und 2 identischen Bitwerte gelöscht. Damit verfügt Teilnehmer 3 nur über Informationen, die für die Schlüsselgenerierung gar nicht verwendet werden. Er weiß zwar, dass entsprechend verkürzte Bitfolgen aus den zwischen den lokalen Bitfolgen der Teilnehmer 1 und Teilnehmer 2 unterschiedlichen Bits hervorgehen. Er weiß aber nicht, welche Bits Teilnehmer 1 und Teilnehmer 2 jeweils gesendet haben. Variant additionally deleted in the original, locally generated bit sequences of the participants 1 and 2 identical bit values. This means that participant 3 has only information that is not used for key generation. Although he knows that correspondingly shortened bit sequences emerge from the different between the local bit sequences of the participants 1 and 2 participants bits. However, he does not know which bits have been sent by subscriber 1 and subscriber 2 respectively.
Teilnehmer 1 und Teilnehmer 2 haben zusätzlich zu der Information über die überlagerte Gesamt- Bitfolge noch die Information über die jeweils von ihnen gesendete, lokal generierte Bitfolge. Aus diesem Informationsvorsprung gegenüber einem lediglich der öffentlichen Datenübertragung folgenden Teilnehmer 3 rührt die Tatsache, dass die in Teilnehmer 1 und 2 generierten Schlüssel trotz der öffentlichen Datenübertragung als Grundlage geheim bleiben. In addition to the information about the superimposed overall bit sequence, subscriber 1 and subscriber 2 also have the information about the locally generated bit sequence transmitted by them in each case. The fact that the keys generated in subscribers 1 and 2 remain secret as a basis despite the public data transmission results from this information advantage over a subscriber 3 following only the public data transmission.
In vielen gängigen Kommunikationssystemen (z.B. CAN) sind die zu übertragenden Nachrichten mit einer Prüfsumme bzw. Prüfwertfolge versehen (z.B. Cyclic Redundancy Checksum (CRC)), mit deren Hilfe der oder die Empfänger einer Nachricht mögliche Fehler bei der Übertragung detektieren kann bzw. können. Bei einem typischen Aufbau eines solchen Nachrichtenrahmens wird der eigent- liehen Nachricht eine entsprechende Prüfsumme bzw. Prüfwertfolge beigefügt, insbesondere angehängt. Im Allgemeinen ergibt sich die Prüfsumme bzw. Prüfwertfolge als eine Funktion der abzusichernden Bits. Die Prüfsumme bzw. Prüfwertfolge sichert damit einen Teil der eigentlichen Nachricht oder die komplette eigentliche Nachricht ab, wobei das Prüfsummenfeld bzw. das Feld für die Prüfwertfolge selbst ebenfalls bei der Bestimmung der Prüfsumme bzw. Prüfwertfolge mit einbezogen werden kann, aber nicht muss. In many common communication systems (eg CAN), the messages to be transmitted are provided with a checksum or check value sequence (eg Cyclic Redundancy Checksum (CRC)), with the aid of which the receiver or receivers of a message can detect possible errors during transmission. In a typical structure of such a message frame, the actual lent message a corresponding checksum or Prüfwertfolge attached, in particular appended. In general, the checksum or check value sequence results as a function of the bits to be protected. The checksum or test value sequence thus secures a part of the actual message or the complete actual message, wherein the checksum field or the field for the test value sequence itself can also be included in the determination of the checksum or test value sequence, but need not.
Speziell für den Fall von CAN ist in Figur 5 ein Datentelegramm im so genannten Base Frame Format dargestellt. Das Prüfsummenfeld bzw. Prüfwertfolgenfeld (Cyclic Redundacy Checksum oder CRC) hat hierbei eine Länge von 15 Bits und sichert den Teil des CAN-Rahmes ab, der sich vom , Start of Frame'-Bit bis zum letzten Datenbit des ,Data Field' erstreckt. Speziell für den Fall einer zyklischen Redundanzprüfung entspricht die Prüfsumme bzw. Prüfwertfolge (C RC) im Wesentlichen dem Rest einer Polynomdivision der abzusichernden Bitsequenz mit einem speziellen, vorgegebenen Generatorpolynom. Im Fall von (Standard-) CAN (Version 2.0) ist dieses Generatorpolynom wie folgt spezifiziert: Especially in the case of CAN, a data telegram in the so-called base frame format is shown in FIG. The checksum field (Cyclic Redundacy Checksum or CRC) has a length of 15 bits and protects the part of the CAN frame that extends from the start of frame bit to the last data bit of the data field. Especially for the case of a cyclic redundancy check, the checksum or check value sequence (C RC) essentially corresponds to the remainder of a polynomial division of the bit sequence to be protected with a special, predetermined generator polynomial. In the case of (standard) CAN (version 2.0), this generator polynomial is specified as follows:
G(x =x15 + x14 + x10 + x8 + x1 + x4 + x3 + 1 G (x = x 15 + x 14 + x 10 + x 8 + x 1 + x 4 + x 3 + 1
Die damit erzielbare Hamming-Distanz beträgt h = 6, so dass maximal 5 Bitfehler sicher detektiert werden können. The achievable Hamming distance is h = 6, so that a maximum of 5 bit errors can be reliably detected.
Soll nun eines der vorgeschlagene Verfahren zur Generierung eines gemeinsa- men, geheimen Schlüssels zwischen zwei Teilnehmern eines Kommunikationssystems eingesetzt werden, bei dem eine Prüfsummenabsicherung bzw. Prüfwertabsicherung vorgesehen ist, so kann es bei der Verwendung von Standard- Nachrichtentypen zu entsprechenden Prüfsummen- bzw. Prüfwertfehlern kommen, im Fall von CAN z. B. zu einem„CRC-Error". Dies führt dann möglicher- weise dazu, dass die entsprechenden Nachrichten von den involvierten Teilnehmern verworfen werden oder von diesen oder anderen Teilnehmern spezielle Fehlernachrichten („Error Frames") gesendet werden. Anstelle der oder zusätzlich zu den Standard- Nachrichtentypen spezielle neue Nachrichtentypen einzuführen, soll insbesondere aus Kompatibilitätsgründen vermieden werden. Die potenziellen Prüfsummen- bzw. Prüfwert- Fehler bei Anwendung der beschriebenen Schlüsselgenerierungsverfahren liegen darin begründet, dass bei diesen Verfahren die effektiven Bits bzw. Signalpegel auf dem gemeinsam genutzten Übertragungsmedium bei der simultanen Übertragung des ersten und des zweiten Teilnehmers in Schritt 43 von beiden Teilnehmern abhängen, z.B. unter der Annahme eines Kommunikationssystems mit rezessivem Bit ,1' und dominantem Bit ,0' auf logischer Ebene einer UND-Verknüpfung der beiden Einzelnachrichten der Teilnehmer entsprechen. Da in diesem Fall die logische UND- Verknüpfung zweier Prüfsummen bzw. Prüfwertfolgen (z.B. CRCs) nicht der kor- rekten Prüfsumme bzw. Prüfwertfolge der logischen UND-Verknüpfung der diesen Prüfsummen bzw. Prüfwertfolgen zugrundeliegenden Bitsequenzen entspricht, würde die Überprüfung des Prüfsummenfeldes bzw. des Feldes für die Prüfwertfolge der effektiven Nachricht auf dem gemeinsam genutzten Übertragungsmedium regelmäßig fehlschlagen. Dies wiederum kann in bestimmten Kommunikationssystemen bei der Verwendung von Standard- Hardware bzw. -If one of the proposed methods for generating a common, secret key between two subscribers of a communication system is to be used in which checksum protection or check value protection is provided, then it can lead to corresponding checksum or check value errors when standard message types are used come, in the case of CAN z. This may then lead to the corresponding messages being rejected by the participants involved or specific error messages being sent by these or other users. Instead of introducing special new message types in addition to or in addition to the standard message types, it should be avoided, in particular for reasons of compatibility. The potential checksum errors using the described key generation methods are due to the fact that in these methods the effective bits or signal levels on the shared transmission medium in the simultaneous transmission of the first and second subscribers in step 43 depends on both subscribers , for example assuming a communication system with recessive bit, 1 'and dominant bit, 0' correspond at logical level of an AND operation of the two individual messages of the participants. Since in this case the logical AND connection of two checksums or test value sequences (eg CRCs) does not correspond to the correct checksum or test value sequence of the logical AND operation of the bit sequences underlying these checksums or test value sequences, the verification of the checksum field or of the The effective message check value field on the shared transmission medium will fail on a regular basis. This in turn can occur in certain communication systems when using standard hardware or
Software problematisch sein, unter anderem beispielsweise aus folgenden Gründen: Software can be problematic, for example for the following reasons:
1) Sowohl Teilnehmer 1 als auch Teilnehmer 2 könnten je nach Kommunikati- onssystem die effektive Nachricht, die sich aus der Überlagerung der jeweils gesendeten Einzelnachrichten auf dem gemeinsam genutzten Übertragungsmedium ausbildet, aufgrund der fehlerhaften Prüfsumme bzw. Prüfwertfolge ggf. direkt verwerfen, ohne den Inhalt auszuwerten. Dies würde dann eine Schlüsseletablie- rung gemäß den beschriebenen Verfahren unmöglich machen. Dieser Fall ist insbesondere dann kritisch, wenn die Teilnehmer Standardkomponenten einsetzen und Rahmen mit fehlerhaften Prüfsummen bzw. Prüfwertfolgen sofort von der Hardware bzw. Low- Level-Software verworfen werden, ohne dass eine Weitergabe und Auswertung des Inhalts an nachgeschaltete Software- bzw. Hardwarekomponenten erfolgt, die ggf. die eigentliche Funktionalität der beschriebe- nen Verfahren zur Schlüsselgenerierung implementieren (z.B. im Fall einer reinen Softwarelösung). 1) Both subscriber 1 and subscriber 2 could, depending on the communication system, possibly directly discard the effective message that results from the superimposition of the respectively transmitted individual messages on the shared transmission medium due to the faulty checksum or check value sequence, without the content evaluate. This would then make a key statement impossible according to the methods described. This case is particularly critical if the participants use standard components and frames with incorrect checksums or Prüfwertfolgen are immediately discarded by the hardware or low-level software, without a transfer and analysis of the content is done to downstream software or hardware components if necessary, implementing the actual functionality of the described methods for generating a key (eg in the case of a pure software solution).
2) Auch andere, nicht unmittelbar an der Schlüsseletablierung beteiligte Teilnehmer könnten detektieren, dass ein ungültiger Rahmen über das gemeinsam ge- nutzte Übertragungsmedium übertragen wird (im Sinne eines Rahmens mit un- gültiger Prüfsumme bzw. Prüfwertfolge), und je nach Kommunikationssystem infolgedessen eine spezielle Fehlernachricht an alle Teilnehmer senden, um dies den anderen Teilnehmern anzuzeigen und die Übertragung weiterer Nachrich- ten(-teile) gegebenenfalls abzubrechen. Dieser Fall wäre demzufolge selbst dann relevant, wenn Teilnehmer 1 und 2 über spezielle Hardware- bzw. Softwarekomponenten verfügen, die im Falle der Schlüsseletablierung auch mit einer Verletzung der Prüfsumme bzw. Prüfwertfolge der effektiven Nachrichten auf dem gemeinsam genutzten Übertragungsmedium zurechtkommen, die anderen Teilnehmer aber nicht. Auch in diesem Fall wäre der sinnvolle Einsatz der beschrie- benen Verfahren zur Schlüsselgenerierung nicht bzw. nur sehr eingeschränkt möglich. 2) Other subscribers not directly involved in the key establishment could also detect that an invalid frame is being transmitted via the shared transmission medium (in the sense of a frame with unobstructed transmission medium). Consequently, depending on the communication system, send a special error message to all subscribers in order to indicate this to the other subscribers and, if appropriate, to abort the transmission of further messages or sub-items. Consequently, this case would be relevant even if subscribers 1 and 2 have special hardware or software components which, in the case of key establishment, also cope with a violation of the checksum or check value sequence of the effective messages on the shared transmission medium, but the other subscribers Not. In this case too, the sensible use of the described methods for generating the key would not be possible or would only be possible to a very limited extent.
Um dies zu vermeiden, aber dennoch weitestgehend kompatibel mit bereits verfügbaren Transceivern und Controllern zu sein, wird im Folgenden ein Ansatz vorgeschlagen, der die beschriebenen Verfahren derart erweitert, dass Prüfsummen- bzw. Prüfwertfehler verhindert werden und sich somit die Kompatibilität dieser Schlüsseletablierungsverfahren zu bereits heute verfügbaren Systemen und Standardkomponenten (z.B. CAN) erhöht. Darüber hinaus kann diese Erweiterung gleichzeitig auch dafür verwendet werden, sicherzustellen, dass die Ro- hinformationen für die zu generierenden Schlüssel bei den involvierten Teilnehmern mit hoher Wahrscheinlichkeit identisch sind, so dass zusätzlicher Overhead für eine separate Überprüfung eingespart werden kann. In order to avoid this, but nevertheless to be as far as possible compatible with already available transceivers and controllers, an approach is proposed below that extends the described methods such that checksum or test value errors are prevented and thus the compatibility of these key establishment methods already today available systems and standard components (eg CAN) increased. In addition, this enhancement can also be used to ensure that the raw information for the keys to be generated is highly likely to be identical among the participants involved, so that additional overhead can be saved for a separate check.
Es wird vorgeschlagen, dass Teilnehmer 1 und Teilnehmer 2 nicht separat für die lokal erzeugten und übertragenen Bitsequenzen eine Prüfsumme bzw. Prüfwertfolge berechnen (und übertragen), sondern zunächst die eigentlichen Bitsequenzen synchron übertragen und die sich dabei einstellenden effektiven Signalpegel (= effektive Bits) auf dem gemeinsam genutzten Übertragungsmedium ermitteln. Dies muss im Rahmen des Schritts 44 ohnehin erfolgen. Daraufhin ermitteln bei- de Teilnehmer für die sich ergebende effektive Bitsequenz die dazu passendeIt is proposed that subscriber 1 and subscriber 2 do not separately calculate (and transmit) a checksum or test value sequence for the locally generated and transmitted bit sequences, but first transmit the actual bit sequences synchronously and the thereby adjusting effective signal levels (= effective bits) determine the shared transmission medium. This must be done in the context of step 44 anyway. Then, each participant determines the matching bit sequence for the resulting effective bit sequence
Prüfsumme bzw. Prüfwertfolge und übertragen diese dann wiederum gleichzeitig in einem vorgesehenen Feld. Im Fall von CAN (siehe Figur 5) könnten die lokal generierten (und im allgemeinen Fall unterschiedlichen) Bitsequenzen beispielsweise mit Hilfe des ,Data Fields' gleichzeitig übertragen werden und im sich un- mittelbar daran anschließenden , CRC-Feld würde dann dynamisch die Prüf- summe bzw. Prüfwertfolge übertragen werden, Teilnehmer 1 und Teilnehmer 2 jeweils basierend auf der effektiv auf dem CAN-Bus anliegenden Bitsequenz ermittelt haben. In der weiteren Beschreibung wird der Begriff Prüfsumme als Beispiel für eine Prüfwertfolge verwendet. Checksum or Prüfwertfolge and then transfer them again in a field provided. In the case of CAN (see FIG. 5), the locally generated (and generally different) bit sequences could be transmitted simultaneously, for example, using the 'data field', and the CRC field would then be dynamically linked to the test field. sum or test value sequence are transmitted, participants 1 and 2 have each determined based on the effective present on the CAN bus bit sequence. In the further description, the term checksum is used as an example of a test value sequence.
Beispiel: Example:
Zufällige, initiale Bitfolge von Teilnehmer 1: Random, initial bit sequence of participant 1:
011010110110101 011010110110101
Zufällige, initiale Bitfolge von Teilnehmer 2: Random, initial bit sequence of participant 2:
010100001111011 010100001111011
Es wird angenommen, dass die Prüfsumme aus 2 Bits besteht, wobei das erste Bit der Parität aller ungeraden Stellen einer Bitsequenz entspricht (also Bit 1, 3, 5, ....) und das zweite Bit entsprechend der Parität aller geraden Stellen einer Bitsequenz (also Bit 2, 4, 6, ...). It is assumed that the checksum consists of 2 bits, the first bit corresponding to the parity of all the odd digits of a bit sequence (ie bits 1, 3, 5, ....) and the second bit corresponding to the parity of all even digits of a bit sequence (ie bits 2, 4, 6, ...).
Für obiges Zahlenbeispiel erhielte man somit als lokale Prüfsummen für die lokalen Bitfolgen der Teilnehmer: For the above numerical example one would thus obtain as local checksums for the local bit sequences of the participants:
Prüfsumme der Bitfolge von Teilnehmer 1: 01 Checksum of the bit sequence of subscriber 1: 01
Prüfsumme der Bitfolge von Teilnehmer 2: 11 Checksum of the bit sequence of user 2: 11
Würden diese Prüfsummen jeweils einfach durch die Teilnehmer an die zugehörigen zufälligen Bitfolgen angehängt, so erhielte man folgende Nachrichten (die Prüfsummenbits sind jeweils unterstrichen): If these checksums were simply appended to the associated random bit sequences by the participants, the following messages would be obtained (the checksum bits are underlined in each case):
Bitfolge von Teilnehmer 1 inkl. Prüfsumme: Bit sequence of subscriber 1 including checksum:
01101011011010101 01101011011010101
Bitfolge von Teilnehmer 2 inkl. Prüfsumme: Bit sequence of participant 2 including checksum:
01010000111101111 Die effektive Bitsequenz auf dem Übertragungsmedium im Fall logischer UND- Verknüpfung der Einzelnachrichten sähe dann folgendermaßen aus: 01010000111101111 The effective bit sequence on the transmission medium in the case of logical ANDing of the individual messages would then look like this:
01000000011000101 01000000011000101
Die effektiven Prüfsummenbits sind dabei wieder unterstrichen. Würde man dagegen für die effektive Bitsequenz (ohne Prüfsumme) separat die korrekte Prüfsumme ermitteln, so würde man die Folge ,00' erhalten, die ganz offensichtlich nicht gleich den unterstrichenen Werten ,01' entspricht. Wie zuvor geschildert könnte dies dann zur Folge haben, dass die effektive Bitsequenz auf dem Übertragungsmedium verworfen wird und/oder manche Teilnehmer aufgrund der verletzten Prüfsumme eine spezielle Fehlernachricht senden. The effective checksum bits are underlined again. If, on the other hand, one were to separately determine the correct checksum for the effective bit sequence (without checksum), one would obtain the sequence '00', which obviously does not equal the underlined values '01'. As previously described, this could then result in the effective bit sequence being discarded on the transmission medium and / or some subscribers sending a special error message due to the violated checksum.
Mit dem vorgeschlagenen Verfahren zur Prüfsummenberechnung bestimmen bzw. detektieren Teilnehmer 1 und Teilnehmer 2 dagegen zunächst die effektive Bitfolge auf dem Übertragungskanal (also den reinen Informationsteil obiger Nachricht ohne die unterstrichenen Prüfbits). Für diese effektive Bitfolge ermitteln sie dann jeweils korrekte Prüfsumme hängen und diese unmittelbar an die effektive Bitfolge (also den Informationsteil der Nachricht) an. In diesem Fall ergibt sich somit: With the proposed method for checksum calculation, however, subscriber 1 and subscriber 2 first determine or detect the effective bit sequence on the transmission channel (ie the pure information part of the above message without the underlined check bits). For this effective bit sequence, they then determine the correct checksum and append it directly to the effective bit sequence (ie the information part of the message). In this case follows:
Tatsächlich gesendete Bitfolge von Teilnehmer 1, inklusive Prüfsumme (unterstrichen): Actually sent bit sequence of participant 1, including checksum (underlined):
01101011011010100  01101011011010100
Tatsächlich gesendete Bitfolge von Teilnehmer 2, inklusive Prüfsumme (unterstrichen): Actually sent bit sequence of participant 2, including checksum (underlined):
01010000111101100  01010000111101100
Effektive Bitfolge auf dem Medium, inklusive Prüfsumme (unterstrichen): Effective bit sequence on the medium, including checksum (underlined):
01000000011000100 01000000011000100
Die Prüfsummen der Einzelnachrichten der Teilnehmer 1 und 2 scheinen somit zunächst beim Senden falsch, sofern man sie auf die entsprechenden Einzelnachrichten bezieht. Dafür erhält man aber als Überlagerung der Prüfsummen auf dem Übertragungsmedium eine korrekte Prüfsumme für die sich effektiv auf dem gemeinsam genutzten Übertragungsmedium ausbildende Nachricht, so dass diese von keinem Teilnehmer verworfen wird und auch keine Fehlernachricht generiert wird. Mit diesem Vorgehen sind die tatsächlich gesendeten Nachrichten (inkl. Prüfsummen) der Teilnehmer 1 und 2 nicht mehr notwendigerweise invers zueinander sind, da die Prüfsumme einer invertierten Bitsequenz nicht zwingenderweise der inversen Prüfsumme der nicht-invertierten Bitsequenz entspricht. The checksums of the individual messages of the participants 1 and 2 thus seem wrong initially when sending, as long as they refer to the corresponding individual messages. But you get as a superposition of the checksums on the transmission medium, a correct checksum for effectively on the shared transmission medium training message so that it is discarded by any participant and also no error message is generated. With this procedure, the messages actually sent (including checksums) of the users 1 and 2 are no longer necessarily inverse to each other since the checksum of an inverted bit sequence does not necessarily correspond to the inverse checksum of the non-inverted bit sequence.
In Schritt 44 gemäß den oben dargestellten Verfahren ermitteln sowohl Teilnehmer 1 als auch Teilnehmer 2 jeweils die effektive Bitsequenz auf dem gemeinsam genutzten Übertragungsmedium. Die dabei ermittelten Werte stellen dann die Grundlage für die Erzeugung der eigentlichen, symmetrischen kryptographi- schen Schlüssel dar. Detektieren Teilnehmer 1 und 2 unterschiedliche effektive Bitsequenzen (z.B. aufgrund von Quantisierungs- bzw. Übertragungsfehler), so schlägt in der Regel auch die nachgeschaltete Ableitung der eigentlichen symmetrischen Schlüssel fehl, da die zugrundeliegenden Rohinformationen nicht identisch sind. In einem praktischen System sollte daher vorteilhafterweise überprüft werden, ob derartige Fehler aufgetreten und somit die abgeleiteten Schlüssel wirklich symmetrisch sind. Dies kann von dem vorgeschlagenen Verfahren zur Prüfsummen- Erzeugung bis zu einem gewissen Grad ebenfalls geleistet werden. In step 44 according to the methods presented above, both subscriber 1 and subscriber 2 each determine the effective bit sequence on the shared transmission medium. The values determined in this case then form the basis for the generation of the actual, symmetrical cryptographic keys. If subscribers 1 and 2 detect different effective bit sequences (eg due to quantization or transmission errors), then the downstream derivative of the actual symmetric key fails because the underlying raw information is not identical. In a practical system, therefore, it should be advantageously checked whether such errors occurred and thus the derived keys are really symmetrical. This can also be done to some extent by the proposed method of checksum generation.
Hierzu überprüfen beide Teilnehmer, ob die gesendeten Prüfsummen, die an die eigentlichen, lokalen Bitfolgen angehängt werden, mit denen sich effektiv auf dem Kanal ausbildenden Prüfsummen übereinstimmen. Das heißt, falls Teilnehmer 1 z.B. die Prüfsumme ,0 1' basierend auf der effektiv sich auf dem gemeinsamen Übertragungsmedium ausbildenden Informations-Bitsequenz bestimmt und direkt im Anschluss an diese Informations-Bitsequenz überträgt, sollte diese Prüfsumme sich auch effektiv auf dem Übertragungsmedium ausbilden. Dies ist insbesondere dann nicht der Fall, wenn Teilnehmer 1 an einer oder mehreren Stellen ein rezessives Bit überträgt während Bob an mindestens einer der Stellen ein dominantes Bit überträgt und vice versa. Ist diese Bedingung nicht erfüllt, so bedeutet dies mit hoher Wahrscheinlichkeit, dass Teilnehmer 1 und Teilnehmer 2 unterschiedliche Informations-Bitsequenzen detektiert haben (da eine Fehlberechnung oder Fehlübertragung der Prüfsummen bzw. eine Fehldetektion der im Vergleich zur Nachricht in der Regel recht kurzen effektiven Prüfsumme unwahrscheinlichere Fehlerquellen sind). In diesemTo do this, both participants verify that the checksums sent appended to the actual local bit strings match those that effectively build on the channel-forming checksums. That is, if user 1, for example, determines the checksum '0 1' based on the information bit sequence effectively being formed on the common transmission medium and transmits it immediately following that information bit sequence, that checksum should also be effectively formed on the transmission medium. This is not the case in particular if subscriber 1 transmits a recessive bit at one or more locations while Bob transmits a dominant bit at at least one of the locations and vice versa. If this condition is not met, this means with high probability that subscriber 1 and subscriber 2 have detected different information bit sequences (since a miscalculation or incorrect transmission of the checksums or a misdetection of the relatively short effective checksum compared to the message is less likely Sources of error are). In this
Fall sollte der Schlüsseletablierungsvorgang entweder abgebrochen bzw. neu gestartet werden oder es ist zusätzlich noch eine so genannte„Information Reconciliation"-Phase anzuschließen, mit der ggf. vorhandene Fehler korrigiert werden können. Ein Beispiel für ein entsprechendes„Information Reconciliation"- Protokoll ist das aus der Quantenkryptographie bekannte CASCADE-Protokoll. In this case, the key establishment process should either be aborted or restarted, or a so-called "information reconciliation" phase should be added, which can be used to correct any errors that might exist.An example of a corresponding "information reconciliation" protocol is this known from quantum cryptography CASCADE protocol.
Ist die obige Bedingung hingegen erfüllt, dann impliziert das, dass Alice und Bob mit hoher Wahrscheinlichkeit dieselben Informations-Bitsequenzen detektiert haben. Im allgemeinen Fall ist diese Wahrscheinlichkeit aber nie 100%, da es im- mer eine Restwahrscheinlichkeit gibt, dass man trotz möglicher Bitfehler in derOn the other hand, if the above condition is met, then it implies that Alice and Bob were most likely to have detected the same information bit sequences. In the general case, however, this probability is never 100%, since there is always a residual probability that despite possible bit errors in the
Informations-Bitsequenz dieselbe Prüfsumme erhält. Diese Restfehlerwahrscheinlichkeit kann aber je nach Systemauslegung in den meisten Fällen vernachlässigbar klein werden. In einer zweiten, abgewandelten Ausführungsform der Prüfsummenabsicherung überträgt lediglich einer der beteiligten Teilnehmer 1 und 2 die Prüfsumme für die effektiv sich auf dem Kanal ausbildende Bitsequenz in dem dafür vorgesehenen Teil des verwendeten Nachrichtenrahmens. Zur Festlegung, welcher der beteiligten Teilnehmer dies tun soll, sind wiederum verschiedene Optionen möglich. So könnte dies beispielsweise immer derjenige Teilnehmer sein, der die Schlüssel- etablierung initiiert oder nicht initiiert hat oder es könnte vorkonfiguriert werden. Information bit sequence receives the same checksum. However, this residual error probability can, depending on the system design, in most cases become negligibly small. In a second, modified embodiment of checksum protection, only one of the participating subscribers 1 and 2 transmits the checksum for the channel sequence that effectively forms on the channel in the part of the message frame used for this purpose. In order to determine which of the participants involved is to do so, different options are again possible. For example, this could always be the one who initiated or did not initiate the key establishment, or it could be preconfigured.
Wird nur die Übertragung der Prüfsumme auf einen Teilnehmer beschränkt, aber beide Teilnehmer 1 und 2 bestimmen bzw. berechnen die Prüfsumme, dann kann die zuvor beschriebene Restfehlerwahrscheinlichkeit, dass Teilnehmer 1 und Teilnehmer 2 unterschiedliche Informations-Bitsequenzen detektiert haben, aber dies über die Prüfsumme nicht feststellen können, für bestimmte Übertragungsysteme weiter reduziert werden. Übertragen z.B. auf einem CAN- Bus beide Teilnehmer die effektive Prüfsumme im Anschluss an den eigentlichen Informationsteil, können sie lediglich feststellen, ob der andere Teilnehmer an ei- ner bestimmte Stelle ein anderes Prüfsummenbit überträgt als sie selbst, wenn sie selbst ein rezessives Bit übertragen. Mit der beschriebenen Abwandlung hingegen sendet einer der Teilnehmer die von ihm ermittelte Prüfsumme während der andere Teilnehmer diese Prüfsumme komplett detektieren und dann mit der von ihm lokal ermittelten (aber nicht übertragenen) Prüfsumme vergleichen kann. Stimmen beide nicht überein, so müsste in diesem Fall der zweite Teilnehmer eine entsprechende Fehlerbehandlung starten, da der erste Teilnehmer in diesem Fall zunächst keinerlei Möglichkeit hat, einen möglichen Fehler selbst zu detektieren. If only the transmission of the checksum to a subscriber is limited, but both users 1 and 2 determine or calculate the checksum, then the previously described residual error probability that subscriber 1 and subscriber 2 have detected different information bit sequences, but not on the checksum can be further reduced for certain transmission systems. If, for example, both participants transmit the effective checksum on a CAN bus following the actual information part, they can only determine whether the other participant in an a particular location transmits a different checksum bit than itself if they themselves transmit a recessive bit. With the modification described, however, one of the participants sends the checksum determined by him while the other participant can completely detect this checksum and then compare it with the locally determined (but not transmitted) checksum. If both of them do not match, then in this case the second participant would have to start a corresponding error handling since in this case the first participant initially has no possibility of detecting a possible error himself.
In manchen Kommunikationssystemen bzw. mit manchen Hardware- bzw. Softwarekomponenten könnte es sein, dass ein Teilnehmer nicht in der Lage ist, die Prüfsumme basierend auf der effektiv sich auf dem gemeinsam genutzten Übertragungsmedium ausbildenden Informations- Bitsequenz schnell genug zu ermitteln, um sie unmittelbar im Anschluss daran zu übertragen. Mögliche Gründe hierfür sind insbesondere Verarbeitungslatenzen in einem Teilnehmer. Daher besteht die Möglichkeit, das erfindungsgemäße Verfahren wie im folgenden dritten Ausführungsbeispiel so abzuwandeln, dass zwischen der Ausbreitung der effektiven Informationsbitsequenz, die den Prüfsummen zugrunde liegt, und der Übertragung der Prüfsummen, ein Zeitabstand vorgesehen wird, um die zur Berechnung der Prüfsumme zur Verfügung stehende Zeit zu erhöhen. In some communications systems, or with some hardware or software components, a subscriber may not be able to determine the checksum fast enough based on the information bit sequence that effectively builds on the shared transmission medium to be able to detect it quickly Connection to transfer. Possible reasons for this are, in particular, processing latencies in a subscriber. Therefore, it is possible to modify the method according to the invention as in the following third exemplary embodiment such that a time interval is provided between the propagation of the effective information bit sequence on which the checksums are based and the transmission of the checksums in order to obtain the checksum available To increase time.
Nach der synchronen Übertragung der lokal erzeugten, zufälligen Informations- Bitsequenzen der Teilnehmer 1 und 2 können hierzu vorzugsweise noch ein paar zusätzliche Bits von beiden Teilnehmern übertragen werden, die z.B. vorher auf geeignete Art und Weise festgelegt sind (z.B. könnte einfach immer eine feste Bitfolge verwendet werden). Diese Zusatz-Bits müssen dabei im Gegensatz zu den eigentlichen Informations-Bitsequenzen in den weitgehend synchronen Übertragungen der beiden Teilnehmer identisch sein. Die Anzahl der einzufügenden Zusatz-Bits hängt von der benötigten zusätzlichen Zeit zur Ermittlung der Prüfsumme ab. After the synchronous transmission of the locally generated, random information bit sequences of the subscribers 1 and 2, a few additional bits may be transmitted by both subscribers, e.g. previously set appropriately (e.g., a fixed bit sequence could always be used). In contrast to the actual information bit sequences, these additional bits must be identical in the largely synchronous transmissions of the two subscribers. The number of additional bits to be inserted depends on the additional time required to determine the checksum.
Wie zuvor ermitteln nun beide Teilnehmer immer die effektiv sich auf dem Kanal ausbildenden Informations-Bitsequenzen. Da die im Anschluss daran zunächst zu übertragenden Zusatz-Bits den beiden Teilnehmern bekannt sind, kennen beide Teilnehmer bereits nach der Übertragung der eigentlichen Informations- Bitsequenzen die komplette Nachricht, auf der die Prüfsumme basieren soll, (also bestehend aus Informations-Bits und Zusatz-Bits) und können damit bereits mit der Berechnung der Prüfsumme für diese komplette Nachricht beginnen, während noch die Zusatz- Bits übertragen werden. As before, both participants will now always determine the information bit sequences that effectively form on the channel. Since the subsequently to be transmitted additional bits are known to the two participants know Both participants already after the transmission of the actual information bit sequences the complete message on which the checksum should be based (ie consisting of information bits and additional bits) and thus can already begin with the calculation of the checksum for this complete message, while still the additional bits are transmitted.
Im Anschluss an die Übertragung der Zusatz-Bits sollte die Berechnung der Prüfsumme dann abgeschlossen sein, so dass diese von beiden oder einem der Teilnehmer (entsprechend dem ersten oder dem zweiten Ausführungsbeispiel) direkt übertragen werden kann. Following the transmission of the additional bits, the calculation of the checksum should then be completed so that it can be transmitted directly by both or one of the subscribers (corresponding to the first or the second embodiment).
Ein Nachteil dieses Ausführungsbeispiels besteht darin, dass mit den Zusatz-Bits ein zusätzlicher Overhead generiert wird. Dafür können aber eben wie geschildert die Latenzanforderungen an die Signalverarbeitung der involvierten Teilnehmer reduziert werden. A disadvantage of this embodiment is that with the additional bits, an additional overhead is generated. But just as described, the latency requirements for the signal processing of the involved participants can be reduced.
Für die weitere Verarbeitung im Rahmen der Schlüsselgenerierung bzw. - etablierung werden die Prüfsummen nicht mehr weiter berücksichtigt, sondern vorher empfangsseitig einfach verworfen bzw. abgeschnitten. For further processing as part of the generation or establishment of the key, the checksums are no longer considered, but simply rejected or cut off at the receiving end.
Die vorgestellten Verfahren stellen einen Ansatz zur Generierung symmetrischer, kryptographischer Schlüssel zwischen zwei Knoten unter Ausnutzung von Eigenschaften der Bitübertragungsschicht dar. Der Ansatz eignet sich insbesondere für drahtgebundene und optische Kommunikationssysteme, sofern diese 'On-Off- Keying' bzw. eine bitweise Bus-Arbitrierung unterstützen (z.B. CAN, TTCAN, CAN-FD, LIN, I2C). Aber auch in drahtlosen, (funkbasierten) Kommunikationssystemen, vorzugsweise mit einer sehr kurzen Distanz zwischen Sender und Empfänger und einer möglichen direkten Sichtverbindung, kann der Ansatz verwendet werden. The presented methods represent an approach for the generation of symmetric, cryptographic keys between two nodes by exploiting properties of the physical layer. The approach is particularly suitable for wired and optical communication systems, provided these 'on-off-keying' or a bitwise bus arbitration support (eg CAN, TTCAN, CAN-FD, LIN, I2C). But also in wireless, (radio based) communication systems, preferably with a very short distance between transmitter and receiver and a possible direct line of sight, the approach can be used.
Grundsätzlich bieten sich für einen Einsatz alle Kommunikationssystemen an, die eine Unterscheidung von dominanten und rezessiven Bits (wie oben beschrieben) ermöglichen. Die hier beschriebenen Verfahren können damit bei einer Vielzahl von drahtlosen, drahtgebundenen und optischen Kommunikationssystemen eingesetzt werden kann. Besonders interessant ist der beschriebene An- satz dabei für die Maschine-zu-Maschine-Kommunikation, also für die Übertragung von Daten zwischen verschiedenen Sensoren, Aktuatoren, etc., die im Allgemeinen nur über sehr begrenzte Ressourcen verfügen und ggf. nicht mit vertretbarem Aufwand manuell im Feld konfiguriert werden können. In principle, all communication systems that allow a distinction between dominant and recessive bits (as described above) are suitable for use. The methods described herein can be used in a variety of wireless, wired and optical communication systems. Particularly interesting is the described This is for the machine-to-machine communication, ie for the transfer of data between different sensors, actuators, etc., which generally have only very limited resources and may not be manually configured in the field with reasonable effort.
Weitere Einsatzmöglichkeiten gibt es beispielsweise in der Heim- und Gebäudeautomatisierung, der Telemedizin, Car-to-X-Systemen oder der industriellen Automatisierungstechnik. Besonders interessant ist auch der Einsatz bei zukünftigen Kleinst-Sensoren mit Funkschnittstelle sowie in allen Anwendungsbereichen des CAN-Busses, d.h. insbesondere der Fahrzeugvernetzung oder der Automatisierungstechnik. Further application possibilities are, for example, in home and building automation, telemedicine, car-to-x systems or industrial automation technology. Of particular interest is the use in future miniature sensors with radio interface as well as in all application areas of the CAN bus, i. in particular vehicle networking or automation technology.
Wie zuvor beschrieben können die Prüfsummen bzw. Prüfwertfolgen durch die Netzwerkteilnehmer genutzt werden, um zu überprüfen, ob die gleiche Informa- tions- Bitsequenz auf dem Übertragungskanal detektiert wurde (was die Voraussetzung zur sicheren Etablierung eines gemeinsamen kryptografische Geheimnisses ist). Dabei ist allerdings nicht sichergestellt, dass beide beteiligten Netzwerkteilnehmer in jedem Szenario gleichermaßen in der Lage sind, die Abweichung vom individuell bestimmten Prüfwert zum vom Übertagungskanal zurück gelesenen Prüfwert zu erkennen. Insbesondere kann es vorkommen, dass einer der beteiligten Netzwerkteilnehmer eine Abweichung erkennt, der andere hingegen jedoch nicht. Daher wird für diese Fälle der Start einer entsprechenden Fehlerbehandlung vorgeschlagen. In Fig. 6 ist ein beispielhafter Gesamtablauf eines Verfahrens zur Generierung eines Geheimnisses auf Basis einer Wertfolgen-Überlagerung sowie zur Überprüfung der detektierten Wertfolgen-Überlagerung auf Basis einer detektierten Prüfwertfolge gezeigt. In einem ersten Schritt 61 wird das Verfahren gestartet. In einem zweiten SchrittAs described above, the checksums can be used by the network subscribers to check that the same information bit sequence has been detected on the transmission channel (which is the prerequisite for the secure establishment of a shared cryptographic secret). However, this does not ensure that both network participants involved in each scenario are equally able to recognize the deviation from the individually determined test value to the test value read back from the transmission channel. In particular, it may happen that one of the network participants involved detects a deviation, but the other does not. Therefore, the start of a corresponding error handling is proposed for these cases. FIG. 6 shows an exemplary overall sequence of a method for generating a secret on the basis of a value sequence overlay and for checking the detected value sequence overlay on the basis of a detected test value sequence. In a first step 61, the method is started. In a second step
62 erfolgen die Schritte zur Etablierung eines kryptografischen Geheimnisses, insbesondere die (weitgehend) synchrone Überlagerung von Wertfolgen durch die zwei Netzwerkteilnehmer und die Absicherung der Übertragung durch eine Prüfwertfolge wie zuvor beschrieben. In einem dritten Schritt 63 wird durch min- destens einen der beteiligten Netzwerkteilnehmer die auf dem Übertragungska- nal resultierende Prüfwertfolge detektiert. In einem vierten Schritt 64 wird die detektierte Prüfwertfolge mit einer selbst berechneten (und gegebenenfalls übertragenen) Prüfwertfolge verglichen und auf Übereinstimmung überprüft. 62, the steps for establishing a cryptographic secret, in particular the (largely) synchronous superposition of value sequences by the two network subscribers and the safeguarding of the transmission by a test value sequence as described above, take place. In a third step 63, by at least one of the participating network subscribers nal resulting test value sequence detected. In a fourth step 64, the detected test value sequence is compared with a self-calculated (and possibly transmitted) test value sequence and checked for conformity.
Stimmen die detektierte und die selbst berechnete Prüfwertfolge überein, so wird von Schritt 64 in Schritt 65 verzweigt und das Verfahren zur Überprüfung der Überlagerungswertfolge anhand von Prüfwerten wird ohne erkannten Fehler beendet. Eine Fehlerbehandlung kann in diesem Fall trotzdem auftreten, sofern nämlich der andere Netzwerkteilnehmer eine Abweichung detektiert und die Fehlerbehandlung entsprechend antriggert. If the detected and the self-calculated test value sequence match, then branching is made from step 64 to step 65 and the method for checking the overlay value sequence based on test values is ended without a detected error. An error handling can nevertheless occur in this case, provided that the other network participant detects a deviation and triggers the error handling accordingly.
Stimmen die detektierte und die selbst berechnete Prüfwertfolge nicht überein, so wird von Schritt 64 zu Schritt 66 verzweigt. In Schritt 66 sendet der überprüfende Netzwerkteilnehmer eine Fehlernachricht, insbesondere benachrichtigt er den zweiten, ebenfalls beteiligten Netzwerkteilnehmer. If the detected and the self-calculated test value sequence do not match, a branch is made from step 64 to step 66. In step 66, the checking network subscriber sends an error message, in particular he notifies the second, also involved network subscriber.
Wenn beide Netzwerkteilnehmer eine Abweichung detektieren, können beide eine entsprechende Nachricht schicken (sequentiell oder ggf. überlagernd) oder auch nur derjenige Knoten, der diese zuerst sendet. If both network participants detect a deviation, both can send a corresponding message (sequential or possibly superimposed) or only the node that sends them first.
Je nach Konfiguration kann das Verfahren dann von Schritt 66 in Schritt 65 verzweigt werden und damit beendet werden oder in Schritt 67 verzweigt werden. Schritt 67 entspricht einer Wartezeit, nach der durch eine Verzweigung auf Schritt 61 das Verfahren wieder gestartet werden kann. Depending on the configuration, the method can then be branched from step 66 in step 65 and thus terminated or branched in step 67. Step 67 corresponds to a waiting time after which the process can be restarted by branching to step 61.
Im Folgenden soll der Schritt 66, die Inkenntnissetzung des jeweiligen Kommunikationspartners, näher beleuchtet werden. Durch die Mitteilung der Nicht- Übereinstimmung des detektierten mit dem berechneten Prüfwert haben beide Kommunikationspartner den gleichen Kenntnisstand und können insbesondere auf eine Nutzung des etablierten, (vermeintlich) gemeinsamen Geheimnisses bzw. kryptographischen Schlüssels verzichten. In the following, the step 66, the notification of the respective communication partner, will be highlighted. By communicating the non-conformity of the detected with the calculated test value both communication partners have the same level of knowledge and can dispense in particular with a use of the established (supposedly) shared secret or cryptographic key.
Derjenige Netzwerkteilnehmer, der die Nicht-Übereinstimmung durch Überprüfung der Prüfwertfolgen festgestellt hat, hat hierbei verschiedene Möglichkeiten zur Information des zweiten Netzwerkteilnehmers. In einer ersten bevorzugten Ausgestaltung sendet der überprüfende Netzwerk- teilnehmer hierzu ein Signal - über das gleiche Kommunikationssystem oder einen anderen physikalischen Übertragungsweg. Zum Beispiel kann der überprü- fende Netzwerkteilnehmer direkt nach Erkennen der Abweichung damit beginnen, ein physikalisches Signal zu senden, das von dem beteiligten Kommunikationspartner (dem zweiten Netzwerkteilnehmer) entsprechend erkannt wird und die Abweichung signalisiert. Die Erkennung des physikalischen Signals kann darauf basieren, dass durch dieses das spezifizierte Rahmenformat des verwende- ten Kommunikationsprotokolls bewusst verletzt wird. In einem CAN-Netzwerk kann dazu bspw. ein Fehlerrahmen (Error Frame) gesendet werden. The network participant who has determined the non-conformity by checking the Prüfwertfolgen, this has various ways to inform the second network participant. In a first preferred embodiment, the checking network subscriber sends a signal for this purpose-via the same communication system or another physical transmission path. For example, immediately after detecting the deviation, the checking network subscriber may begin to send a physical signal which is recognized by the participating communication partner (the second network subscriber) and signals the deviation. The detection of the physical signal may be based on the fact that it deliberately violates the specified frame format of the communication protocol used. In a CAN network, for example, an error frame (error frame) can be sent.
Alternativ kann der überprüfende Netzwerkteilnehmer auch (wiederum über den auch zur synchronen Übertragung der Wertfolgen verwendeten Übertragungska- nal oder ein anderes Kommunikationssystem) eine dedizierte Nachricht an den zweiten Netzwerkteilnehmer senden. Die Nachricht kann den von dem überprüfenden Netzwerkteilnehmer berechneten und /oder den von ihm auf dem Übertragungskanal empfangenen bzw. detektierten Prüfwert beinhalten. Ebenenfalls möglich ist, das Ergebnis (X) einer Funktion, bspw. Hash- Funktion, zu senden, die von dem oder den Prüfwerten abhängt: X = f(CRCcaicuiated, CRCReCeived) . Wird die Information über berechnete und / oder detektierte Prüfwertfolgen mit übertragen, so ist es für den Kommunikationspartner möglich zu prüfen, ob sich die von den beiden Netzwerkteilnehmern berechneten Prüfwertfolgen tatsächlich unterscheiden. Falls nein, könnte der zweite Netzwerkteilnehmer darauf hinwirken, das etablierte Geheimnis trotz der negativen Überprüfung durch den erstenAlternatively, the checking network subscriber can also (again via the transmission channel also used for the synchronous transmission of the value sequences or another communication system) send a dedicated message to the second network subscriber. The message may include the check value calculated by the checking network subscriber and / or the check value received or detected by him on the transmission channel. If possible, it is possible to send the result (X) of a function, for example a hash function, which depends on the test value (s): X = f (CRCc a icuiated, CRCR eC eived). If the information about calculated and / or detected test value sequences is also transmitted, then it is possible for the communication partner to check whether the test value sequences calculated by the two network subscribers actually differ. If not, the second network participant could work towards the established secret despite the negative check by the first one
Netzwerkteilnehmer zu nutzen. (Dieser Fall kann z.B. auftreten, falls der Vergleich von detektierter und berechneter Prüfwertfolge durch den ersten Netzwerkteilnehmer oder seine Detektion der übertragenen Prüfwertfolge fehlerhaft waren.) Network participants to use. (This case may occur, for example, if the comparison of the detected and calculated test value sequence by the first network subscriber or his detection of the transmitted test value sequence were incorrect.)
Die Mitteilung kann auch als Teil einer Nachricht sowie gegebenenfalls durch gezieltes Nicht-Übertragen eines vorgesehenen Signals, einer Nachricht oder eines Teils einer Nachricht erfolgen. Auch kann durch den überprüfenden Netzwerkteilnehmer ein automatischer Restart nach Ablauf einer bestimmten Zeit initiiert werden. In einer weiteren alternativen Ausgestaltung kann der überprüfende Netzwerk- teilnehmer auch eine gemäß verwendetem Kommunikationsprotokoll vorgesehene Kommunikationsbestätigung zur Mitteilung an den zweiten Netzwerkteilneh- mer ausnutzen. Er kann z.B. darauf verzichten, eine Bestätigung (Acknowleg- ment) zu senden, oder eine negative Bestätigung (Negative Acknowledgment) übertragen, und damit mitteilen, dass der Vergleich bzw. die Überprüfung der Prüfwertfolgen negativ ausgefallen ist. Im Fall eines CAN-Netzwerks kann der überprüfende Netzwerkteilnehmer z.B. darauf verzichten, ein dominantes Ack- nowledgement-Bit zu senden. Dieses Verfahren führt jedoch nur dann sicher zum gewünschten Erfolg, wenn sich kein weiterer aktiver CAN- Knoten im Netzwerk befindet. The message may also be provided as part of a message and, if appropriate, by intentionally not transmitting a designated signal, message or part of a message. An automatic restart can also be initiated after a certain time has elapsed by the checking network subscriber. In a further alternative embodiment, the checking network subscriber can also use a communication confirmation provided according to the communication protocol used for the message to the second network subscriber. For example, he may refrain from sending an acknowledgment (acknowledgment) or transmit a negative acknowledgment (negative acknowledgment), thus indicating that the comparison or checking of the test value sequences has been negative. In the case of a CAN network, for example, the checking network subscriber may refrain from sending a dominant acknowledgment bit. However, this method only leads to the desired success if there is no further active CAN node in the network.
Je nach Eigenschaft des genutzten Kommunikationssystems kann es vorteilhaft sein, das für die Mitteilung verwendete Signal oder die hierzu verwendete Nachricht entweder direkt nach Erkennen der Abweichung zu senden oder das Senden geeignet zu verzögern. Die Verzögerung kann insbesondere bis zum Beginn der nächsten Bitzeit erfolgen. Alternativ kann eine Verzögerung auch bis nach dem kompletten Empfang der Prüfwertfolge vorgesehen werden. So können die Netzwerkteilnehmer in einem weiteren Schritt prüfen, ob sich die berechnetenDepending on the characteristic of the communication system used, it may be advantageous to send the signal used for the message or the message used for this purpose either directly after detection of the deviation or to delay the transmission suitably. In particular, the delay can occur until the beginning of the next bit time. Alternatively, a delay can be provided even after the complete reception of the test value sequence. In this way, the network participants can check in a further step whether the calculated
Prüfwertfolgen tatsächlich unterscheiden oder sich ggf. ein Übertragungsfehler während der Prüfwert- Übertragung ereignet hat. Actually distinguish test value sequences or possibly a transmission error occurred during the test value transmission.

Claims

Ansprüche claims
1. Verfahren zur Generierung eines Geheimnisses oder eines Schlüssels in einem Netzwerk (20), wobei das Netzwerk (20) mindestens einen ersten Teil- nehmer (21) und einen zweiten Teilnehmer (22) mit einem gemeinsamenA method of generating a secret or key in a network (20), wherein the network (20) comprises at least a first party (21) and a second party (22) having a common one
Übertragungskanal (30) zwischen mindestens dem ersten Teilnehmer (21) und dem zweiten Teilnehmer (22) aufweist, wobei der erste Teilnehmer (21) mindestens einen ersten Wert (1) und einen zweiten Wert (0) und der zweite Teilnehmer (22) mindestens den ersten Wert (1) und den zweiten Wert (0) auf den Übertragungskanal (30) geben können, wobei der erste TeilnehmerTransmission channel (30) between at least the first participant (21) and the second participant (22), wherein the first participant (21) at least a first value (1) and a second value (0) and the second participant (22) at least the first value (1) and the second value (0) on the transmission channel (30), wherein the first participant
(21) eine erste Teilnehmerwertfolge und der zweite Teilnehmer (22) eine zweite Teilnehmerwertfolge zur zueinander weitgehend synchronen Übertragung auf dem Übertragungskanal (30) veranlassen und wobei der erste Teilnehmer (21) auf Basis von Informationen über die erste Teilnehmerwertfolge sowie auf Basis einer aus einer Überlagerung der ersten Teilnehmerwertfolge mit der zweiten Teilnehmerwertfolge auf dem Übertragungskanal (30) resultierenden Überlagerungswertfolge und der zweite Teilnehmer (22) auf Basis von Informationen über die zweite Teilnehmerwertfolge sowie auf Basis der aus der Überlagerung der ersten Teilnehmerwertfolge mit der zweiten Teil- nehmerwertfolge auf dem Übertragungskanal (30) resultierenden Überlagerungswertfolge jeweils ein gemeinsames Geheimnis oder einen gemeinsamen Schlüssel generieren, dadurch gekennzeichnet, dass mindestens der erste Teilnehmer (21) oder der zweite Teilnehmer (22) eine Prüfwertfolge abhängig von der resultierenden Überlagerungswertfolge bestimmt und auf den Übertragungskanal (30) gibt. (21) a first subscriber value sequence and the second subscriber (22) cause a second subscriber value sequence for each other largely synchronous transmission on the transmission channel (30) and wherein the first subscriber (21) based on information about the first subscriber value sequence and based on one of a Superposition of the first subscriber value sequence with the second subscriber value sequence on the transmission channel (30) resulting superimposed value sequence and the second subscriber (22) based on information about the second subscriber value sequence and on the basis of the superposition of the first subscriber value sequence with the second subscriber value sequence on the transmission channel (30) each generate a shared secret or a common key, characterized in that at least the first participant (21) or the second participant (22) a Prüfwertfolge depending on the resulting overlay determined value sequence and on the transmission channel (30).
2. Verfahren nach Anspruch 1, wobei die Prüfwertfolge nach der Überlagerungswertfolge übertragen wird. 2. The method of claim 1, wherein the check value sequence is transmitted after the overlay value sequence.
3. Verfahren nach Anspruch 2, wobei die Prüfwertfolge direkt im Anschluss an die Überlagerungswertfolge übertragen wird. 3. The method of claim 2, wherein the Prüfwertfolge is transmitted directly after the overlay value sequence.
4. Verfahren nach Anspruch 2, wobei die Prüfwertfolge in einem Abstand zur Überlagerungswertfolge übertragen wird. 4. The method of claim 2, wherein the test value sequence is transmitted at a distance to the overlay value sequence.
5. Verfahren nach Anspruch 4, wobei der erste Teilnehmer (21) und der zweite Teilnehmer (22) eine bestimmte Zusatzwertfolge zwischen der Überlagerungswertfolge und der Prüfwertfolge übertragen, wobei die Zusatzwertfolge bei der Bestimmung der Prüfwertfolge berücksichtigt wird. 5. The method according to claim 4, wherein the first subscriber (21) and the second subscriber (22) transmit a specific additional value sequence between the superposition value sequence and the test value sequence, the additional value sequence being taken into account in the determination of the test value sequence.
6. Verfahren nach einem der vorangegangenen Ansprüche, wobei der erste Teilnehmer (21) und der zweite Teilnehmer (22) die Prüfwertfolge bestimmen und auf den Übertragungskanal geben und wobei der erste Teilnehmer (21) oder der zweite Teilnehmer (22) oder sowohl der erste Teilnehmer (21) als auch der zweite Teilnehmer (22) die resultierende Überlagerung der jeweiligen Prüfwertfolgen anhand der selbst übertragenen Prüfwertfolge daraufhin überprüfen, ob die Prüfwertfolge des ersten Teilnehmers (21) mit der Prüfwertfolge des zweiten Teilnehmers (22) übereinstimmt. 6. The method according to claim 1, wherein the first user and the second user determine the test value sequence and transmit to the transmission channel and wherein the first user or the second user or the first user Participants (21) and the second participant (22) check the resulting overlay of the respective Prüfwertfolgen based on the self-transmitted Prüfwertfolge then whether the Prüfwertfolge the first participant (21) with the Prüfwertfolge the second participant (22) matches.
7. Verfahren nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass der erste Teilnehmer (21) oder der zweite Teilnehmer (22) überprüfen, ob eine detektierte, übertragene Prüfwertfolge mit einer selbst berechneten Prüfwertfolge übereinstimmt, und im Fall einer mangelnden Übereinstimmung den jeweils anderen Teilnehmer (21, 22) über die mangelnde Übereinstimmung informiert, insbesondere über ein Signal oder eine Nachricht oder einen Teil einer Nachricht. 7. The method according to any one of claims 1 to 5, characterized in that the first participant (21) or the second participant (22) check whether a detected, transmitted Prüfwertfolge coincides with a self-calculated Prüfwertfolge, and in the case of a mismatch each other participants (21, 22) informed about the mismatch, in particular via a signal or a message or a part of a message.
8. Verfahren nach einem der Ansprüche 1 bis 3, wobei nur ein bestimmter Teilnehmer von dem ersten Teilnehmer (21) und dem zweiten Teilnehmer (22) die Prüfwertfolge auf den Übertragungskanal (30) gibt. 8. The method according to any one of claims 1 to 3, wherein only a specific subscriber from the first subscriber (21) and the second subscriber (22) the Prüfwertfolge on the transmission channel (30).
9. Verfahren nach Anspruch 4, wobei der bestimmte Teilnehmer derjenige ist, der die Schlüsselgenerierung initiiert, oder ein durch Konfiguration vorbestimmter Teilnehmer ist. The method of claim 4, wherein the particular subscriber is the one initiating the key generation or a subscriber designated by configuration.
10. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass sich auf dem Übertragungskanal ein Zustand entsprechend dem ersten Wert (1) einstellt, wenn sowohl der erste Teilnehmer (21) als auch der zweite Teilnehmer (22) eine Übertragung des ersten Werts (1) über den Übertragungskanal (30) veranlassen, und sich ein Zustand entsprechend dem zweiten Wert (0) einstellt, wenn der erste Teilnehmer (21) oder der zweite Teilnehmer (22) oder wenn sowohl der erste Teilnehmer (21) als auch der zweite Teilnehmer (22) eine Übertragung des zweiten Werts (0) über den Übertragungskanal (30) veranlassen. 10. The method according to claim 1, characterized in that on the transmission channel, a state corresponding to the first value (1) sets when both the first participant (21) and the second participant (22) a transmission of the first value (1) cause over the transmission channel (30), and a state corresponding to the second value (0) sets, if the first subscriber (21) or the second subscriber (22) or if both the first subscriber (21) and the second subscriber (22) cause a transmission of the second value (0) via the transmission channel (30).
11. Verfahren nach einem der vorangegangenen Ansprüche, dadurch gekennzeichnet, dass die erste Teilnehmerwertfolge in dem ersten Teilnehmer (21) und die zweite Teilnehmerwertfolge in dem zweiten Teilnehmer (22) lokal, insbesondere mit Hilfe eine Zufallsgenerators oder Pseudozufallsgenerators, erzeugt werden. 11. The method according to any one of the preceding claims, characterized in that the first subscriber value sequence in the first subscriber (21) and the second subscriber value sequence in the second subscriber (22) locally, in particular by means of a random number generator or pseudo-random generator generated.
12. Verfahren nach einem der vorangegangenen Ansprüche, dadurch gekennzeichnet, dass das Netzwerk (20) ein CAN-, TTCAN-, CAN-FD-, LIN oder I2C- Bussystem ist, dass der erste Wert (1) ein rezessiver Buspegel ist und dass der zweite Wert (0) ein dominanter Buspegel ist. 12. The method according to any one of the preceding claims, characterized in that the network (20) is a CAN, TTCAN, CAN FD, LIN or I2C bus system, that the first value (1) is a recessive bus level and that the second value (0) is a dominant bus level.
13. Verfahren nach einem der Ansprüche 1 bis 11, dadurch gekennzeichnet, dass in dem Netzwerk (20) eine On-Off-Keying-Amplitudenumtastung zur Datenübertragung vorgesehen ist. 13. The method according to any one of claims 1 to 11, characterized in that in the network (20) an on-off-keying Amplumestenumtastung is provided for data transmission.
14. Verfahren nach einem der vorangegangenen Ansprüche, dadurch gekennzeichnet, dass die Prüfwertfolge zur Generierung des gemeinsamen Geheimnisses oder des gemeinsamen Schlüssels nicht herangezogen wird. 14. The method according to any one of the preceding claims, characterized in that the test value sequence for generating the shared secret or the common key is not used.
15. Verfahren zur Generierung eines Schlüssels in einem ersten Teilnehmer (21) eines Netzwerks (20), wobei der erste Teilnehmer (21) dazu eingerichtet ist, über einen Übertragungskanal (30) von mindestens einem zweiten Teilnehmer (22) des Netzwerks (20) Informationen zu empfangen sowie Informationen an den zweiten Teilnehmer (22) zu übertragen, wobei der erste Teilneh- mer (21) dazu eingerichtet ist, mindestens einen ersten Wert (1) und einen zweiten Wert (0) auf den Übertragungskanal (30) zu geben und auf diesem detektieren zu können, wobei der erste Teilnehmer (21) eine erste Teilnehmerwertfolge für eine Übertragung weitgehend synchron zu einer Übertragung einer zweiten Teilnehmerwertfolge durch den zweiten Teilnehmer (22) auf dem Übertragungskanal (30) veranlasst und der erste Teilnehmer (21) ein Geheimnis oder einen Schlüssel generiert auf Basis von Informationen über die erste Teilnehmerwertfolge sowie auf Basis einer Überlagerungswertfolge, welche auf dem Übertragungskanal (30) aus der Überlagerung der ersten Teilnehmerwertfolge mit der zweiten Teilnehmerwertfolge resultiert, dadurch gekennzeichnet, dass mindestens der erste Teilnehmer (21) eine Prüfwertfolge abhängig von der resultierenden Überlagerungswertfolge bestimmt und auf den Übertragungskanal (30) gibt. 15. A method for generating a key in a first subscriber (21) of a network (20), wherein the first subscriber (21) is arranged to transmit via a transmission channel (30) from at least one second subscriber (22) of the network (20). Receiving information and transmitting information to the second subscriber (22), wherein the first subscriber (21) is arranged to give at least a first value (1) and a second value (0) to the transmission channel (30) and to be able to detect thereon, wherein the first subscriber (21) initiates a first subscriber value sequence for a transmission substantially synchronous with a transmission of a second subscriber value sequence by the second subscriber (22) on the transmission channel (30) and the first subscriber (21) Secret or a key generated on the basis of information about the first subscriber value sequence and on the basis of an overlay value sequence, which results on the transmission channel (30) from the superposition of the first subscriber value sequence with the second subscriber value sequence, characterized in that at least the first subscriber (21) a Determines the test value sequence depending on the resulting overlay value sequence and gives it to the transmission channel (30).
16. Netzwerk (20) mit mindestens einem ersten Teilnehmer (21) und einem zweiten Teilnehmer (22) und einem Übertragungskanal (30), über welchen der erste Teilnehmer (21) mit dem zweiten Teilnehmer (22) kommunizieren kann, dadurch gekennzeichnet, dass das Netzwerk (20) Mittel umfasst, alle Schritte eines Verfahren nach einem der Ansprüche 1 bis 15 durchzuführen. 16. Network (20) having at least a first subscriber (21) and a second subscriber (22) and a transmission channel (30) via which the first subscriber (21) can communicate with the second subscriber (22), characterized in that the network (20) comprises means to perform all the steps of a method according to any one of claims 1 to 15.
17. Vorrichtung, welche dazu eingerichtet ist, als Teilnehmer an einem Netzwerk (20) alle Schritte des Verfahrens nach Anspruch 15 durchzuführen. 17. Device which is set up to perform all the steps of the method according to claim 15 as a participant in a network (20).
18. Computerprogramm, welches dazu eingerichtet ist, alle Schritte eines der Verfahren nach einem der Ansprüche 1 bis 15 durchzuführen. 18. Computer program, which is adapted to perform all the steps of one of the methods according to one of claims 1 to 15.
19. Maschinenlesbares Speichermedium mit einem darauf gespeicherten Computerprogramm nach Anspruch 18. 19. A machine-readable storage medium with a computer program stored thereon according to claim 18.
EP16721133.3A 2015-05-22 2016-05-02 Method for generating a secret or a key in a network Withdrawn EP3298722A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102015209518 2015-05-22
DE102015220038.8A DE102015220038A1 (en) 2015-05-22 2015-10-15 A method of creating a secret or key in a network
PCT/EP2016/059725 WO2016188707A1 (en) 2015-05-22 2016-05-02 Method for generating a secret or a key in a network

Publications (1)

Publication Number Publication Date
EP3298722A1 true EP3298722A1 (en) 2018-03-28

Family

ID=57231312

Family Applications (1)

Application Number Title Priority Date Filing Date
EP16721133.3A Withdrawn EP3298722A1 (en) 2015-05-22 2016-05-02 Method for generating a secret or a key in a network

Country Status (4)

Country Link
EP (1) EP3298722A1 (en)
CN (1) CN107836095B (en)
DE (1) DE102015220038A1 (en)
WO (1) WO2016188707A1 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3326322B1 (en) 2015-07-17 2019-12-18 Robert Bosch GmbH Method and system for secure key generation over an insecure shared communication medium
DE102015219997B4 (en) 2015-10-15 2023-08-10 Robert Bosch Gmbh Method and device for generating a shared secret
DE102015219993B4 (en) 2015-10-15 2023-11-30 Robert Bosch Gmbh Method and device for generating a shared secret of a predetermined length
CN111247769B (en) 2017-08-29 2023-04-28 罗伯特·博世有限公司 Method and system for linear key agreement with forward confidentiality using an insecure shared communication medium
DE102018110252A1 (en) * 2018-04-27 2019-10-31 Infineon Technologies Ag Transceiver, system with transceivers and signal
CN110730067B (en) * 2019-09-06 2021-10-19 深圳开源互联网安全技术有限公司 Key generation method and device, computer readable storage medium and terminal equipment

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101288260A (en) * 2005-01-27 2008-10-15 美商内数位科技公司 Method and system for deriving an encryption key using jointrandomness not shared by others
US7783041B2 (en) * 2005-10-03 2010-08-24 Nokia Corporation System, method and computer program product for authenticating a data agreement between network entities
DE102009002396A1 (en) 2009-04-15 2010-10-21 Robert Bosch Gmbh Method for manipulation protection of a sensor and sensor data of the sensor and a sensor for this purpose
DE102009045133A1 (en) 2009-09-29 2011-03-31 Robert Bosch Gmbh Method for manipulation protection of sensor data and sensor for this purpose
DE102010042539B4 (en) * 2010-10-15 2013-03-14 Infineon Technologies Ag Data senders with a secure but efficient signature
US8401193B2 (en) * 2010-10-29 2013-03-19 Futurewei Technologies, Inc. System and method for securing wireless communications
DE102011080476A1 (en) 2011-08-05 2013-02-07 Robert Bosch Gmbh Method and apparatus for improving data transmission security in serial data transmission with flexible message size
EP2555466B1 (en) * 2011-08-05 2014-07-02 SELEX ES S.p.A. System for distributing cryptographic keys
DE102012215326A1 (en) * 2012-08-29 2014-03-06 Robert Bosch Gmbh Method for determining cryptographic key in network in area of mobile communication, involves determining channel information relative to transmission channel based on pilot signal and determining cryptographic key using channel information
CN103888251B (en) * 2014-04-11 2017-09-01 北京工业大学 A kind of method of virtual machine credible security in cloud environment
DE102015207220A1 (en) 2014-04-28 2015-10-29 Robert Bosch Gmbh A method of creating a secret or key in a network
DE102014209042A1 (en) 2014-05-13 2015-11-19 Robert Bosch Gmbh Method and device for generating a secret key
DE102014208975A1 (en) 2014-05-13 2015-11-19 Robert Bosch Gmbh A method for generating a key in a network and subscribers to a network and network
CN104010299B (en) * 2014-05-21 2016-12-28 中国人民解放军信息工程大学 Mobile communication session privacy Enhancement Method based on safety of physical layer

Also Published As

Publication number Publication date
DE102015220038A1 (en) 2016-11-24
CN107836095A (en) 2018-03-23
WO2016188707A1 (en) 2016-12-01
CN107836095B (en) 2021-08-31

Similar Documents

Publication Publication Date Title
EP3138258B1 (en) Method for generating a secret or a key in a network
EP3298722A1 (en) Method for generating a secret or a key in a network
DE102018003535A1 (en) Quick connect in wireless mesh networks with predetermined physical topologies
DE102012206529A1 (en) Method for operating broadcast-type wireless real-time transmission system, involves giving logical subsequent to one node if data transmission is possible with preset probability, and finding relay node if transmission is not possible
DE102016208451A1 (en) A method of creating a secret or key in a network
EP3363145B1 (en) Method and device for producing a common secret
WO2016188667A1 (en) Method for generating a secret or a key in a network
EP3363146B1 (en) Method for generating a key in a circuit assembly
WO2017064027A1 (en) Method for generating a secret or a key in a network
WO2017064124A1 (en) Circuit arrangement for producing a secret or a key in a network
DE102016208453A1 (en) A method of creating a secret or key in a network
DE102008009691A1 (en) Automation building method for exchanging data, involves transmitting signature block to operating time and management telegrams after transmitting telegrams from sensor, where block is evaluated by actuators with security implementation
WO2017064075A1 (en) Circuit arrangement for generating a secret or key in a network
WO2017064067A1 (en) Method for generating a key in a network and for activating the securing of communication in the network on the basis of the key
WO2017064025A1 (en) Method for generating a secret or a key in a network
DE102016208444A1 (en) A method of creating a secret or key in a network
EP3363144B1 (en) Method and apparatus for establishing a common secret
DE102016208449A1 (en) A method of creating a secret or key in a network
DE102016208445A1 (en) A method of creating a secret or key in a network
WO2017064129A1 (en) Method for generating a secret for a one-time encryption in a network
DE102016208442A1 (en) A method of creating a secret or key in a network
DE102015220045A1 (en) A method of creating a secret or key in a network
DE102016208448A1 (en) A method of creating a secret or key in a network
DE102015220024A1 (en) A method of creating a secret or key in a network
DE102015220014A1 (en) Method for generating a secret in a network

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20171222

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20180724