EP4087184B1 - Method for authenticating interactions independent of a system time, and device for carrying out this method and flame monitor comprising such a device - Google Patents
Method for authenticating interactions independent of a system time, and device for carrying out this method and flame monitor comprising such a device Download PDFInfo
- Publication number
- EP4087184B1 EP4087184B1 EP22171481.9A EP22171481A EP4087184B1 EP 4087184 B1 EP4087184 B1 EP 4087184B1 EP 22171481 A EP22171481 A EP 22171481A EP 4087184 B1 EP4087184 B1 EP 4087184B1
- Authority
- EP
- European Patent Office
- Prior art keywords
- totp
- accordance
- authentication
- hash value
- authenticating device
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 91
- 230000003993 interaction Effects 0.000 title claims description 20
- YSMRWXYRXBRSND-UHFFFAOYSA-N TOTP Chemical compound CC1=CC=CC=C1OP(=O)(OC=1C(=CC=CC=1)C)OC1=CC=CC=C1C YSMRWXYRXBRSND-UHFFFAOYSA-N 0.000 claims description 113
- 238000005259 measurement Methods 0.000 claims description 5
- 238000012544 monitoring process Methods 0.000 claims description 5
- 238000012360 testing method Methods 0.000 claims description 2
- 238000009434 installation Methods 0.000 claims 1
- 230000004044 response Effects 0.000 description 51
- 238000004422 calculation algorithm Methods 0.000 description 19
- 230000008569 process Effects 0.000 description 13
- 238000004364 calculation method Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 7
- 230000001360 synchronised effect Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- 238000013475 authorization Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000002485 combustion reaction Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005670 electromagnetic radiation Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000007788 liquid Substances 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0853—Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/321—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
- H04L9/3213—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/34—User authentication involving the use of external additional devices, e.g. dongles or smart cards
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/33—User authentication using certificates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/42—User authentication using separate channels for security data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/554—Detecting local intrusion or implementing counter-measures involving event detection and direct action
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
- G06F21/6263—Protecting personal data, e.g. for financial or medical purposes during internet communication, e.g. revealing personal data from cookies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
- H04L63/0846—Network architectures or network communication protocols for network security for authentication of entities using passwords using time-dependent-passwords, e.g. periodically changing passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3234—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3297—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
Definitions
- the invention relates to a method for the authentication of interactions in microcontrollers and/or FPGAs (Field Programmable Gate Array) independent of a system time. based devices or devices, in particular in embedded (engl .: “embedded”) systems, and a device for performing this method and a flame detector with such a device.
- FPGAs Field Programmable Gate Array
- authentication is regularly required for security reasons in order to grant access to a requesting device and, for example, to grant corresponding authorizations on a certifying device.
- Authentication i.e. the request for a registration with the assertion of an identity
- subsequent authentication i.e. a check and validation of the assertion of the identity received
- Authentication is the verification of an entity that it is actually who it claims to be. This proof should be able to confirm or check the identity.
- two-factor authentication or often also referred to as two-factor authentication (“2FA” for short)
- the security of the respective digital access is increased by another factor.
- 2FA thus refers to the proof of identity of a user using the combination of two different and, in particular, independent authentication components or factors. Typical examples are bank card plus PIN for ATMs, fingerprint plus access code in buildings, or password and transaction number (TAN) for online banking. If access to a system cannot be regulated and limited by other measures, 2FA should always be used for security reasons.
- the present invention is about embedded systems that are used specifically to measure and record data or to control other components or systems.
- An “embedded system” is understood to be a microcontroller system or an FPGA system that performs a dedicated task, is embedded or integrated into a surrounding system and interacts with or through this system. It serves in particular to measure, record and forward data or is used to control actuators, components or systems.
- a sensor for flow measurement it is used, for example, on gas pipelines in extremely harsh environments and under very difficult operating conditions. For example, this can be a minimum temperature of -30°C or a maximum temperature of +100°C.
- Real-time capability can also be important for controlling the flow, for example to control valves accordingly. Constant movement, vibrations and other physical disturbances must also be taken into account for use, as must error-free operation despite electromagnetic interference pulses, for example.
- a permanent connection e.g. data connections for monitoring or synchronization
- a flame monitor serves to monitor the presence of a flame, for example at least in a partial area of a combustion chamber.
- An essential part of a flame monitor is a flame sensor for detecting a physical variable of a flame, in particular an intensity of electromagnetic radiation, and generating an associated electrical sensor signal.
- German patent application DE102019106528 is further state of the art.
- the requesting device makes a request for access (e.g., a resource) from the notarizing device.
- the certifying device checks the information from the requesting device for validity. If the check is positive, authentication is issued, otherwise access is denied.
- OTP stands for "One-time Password”.
- a one-time password or one-time password is a password used for authentication or authorization. Each one-time password should only be valid for a single use and therefore should not be used a second time.
- the challenge-response method (translated as a request-response method ) is a secure authentication method for a participant based on knowledge.
- one participant presents a task ( challenge ) that the other must solve ( response ) in order to prove that he knows certain information (e.g. the algorithm used or a shared secret) without admitting this information himself transfer.
- certain information e.g. the algorithm used or a shared secret
- This is a protection against the specific information (eg a password) being overheard by attackers on the line.
- a command line interface accepts commands to a computer program in the form of lines of text.
- IT is the common term for the full range of information processing technologies, including software, hardware, communication technologies and related services. In general, IT does not include embedded technologies that generate data for business use.
- Operational Technology is hardware and software that detects or causes change through direct monitoring and/or control of physical devices, facilities, processes and events.
- a Message Authentication Code (MAC; German: "Message Authentication Code”) is used to obtain certainty about the origin of data or messages and to check their integrity.
- MAC algorithms require two input parameters, first the data to be protected and second a secret key. The MAC algorithms calculate a checksum from both, the message authentication code.
- a keyed-hash message authentication code (HMAC) is a message authentication code (MAC) whose construction is based on a cryptographic hash function, such as the Secure Hash Algorithm (SHA), and a secret key. The combination is called HMAC-SHA1, where the number 1 stands for the variant of the cryptographic hash function used.
- truncation is the limitation of the number of digits to the right of the decimal point. Here it means shortening the length of a given output value.
- a truncated value is therefore a value that has been shortened in length.
- the number of OTP token digits describes the number of digits and thus the length that a calculated OTP token must have.
- the OTP method is one of the most commonly used methods for 2FA.
- a shared secret (OTP key) between the user's device and the authenticating device is required to log the user in using cryptographic algorithms and a counter that increments with each login attempt.
- This counter must always be in the synchronized range on both the authenticating device and the requesting device of the user, because only then can a resulting calculation of a common token (e.g. 6-8 OTP token digits) be recognized as valid .
- a common token e.g. 6-8 OTP token digits
- the problem with the HOTP procedure is that the counters of both devices, i.e. the requesting and the authenticating device, must always be within a predefined range of one another. If a HOTP generator is used for multiple authenticating devices, the counter on the requesting device increments at a different interval than on the authenticating devices.
- a requesting device can therefore only ever be used to access one authenticating device. It is therefore not possible to use a single HOTP key for authentication at multiple authenticating devices. This means that, for example, for a requesting device to access several hundred authenticating devices, several hundred HOTP keys must also be used and managed, since the counter values for each HOTP key can differ from one another.
- a shared secret (OTP key) between the user's device and the authenticating device is required using cryptographic algorithms and the current, shared time of the authenticating and requesting device to log in the user. This time must always be synchronous on both the authenticating device and the requesting device of the user in order to recognize a resulting calculation of a common token (e.g. 6-8 OTP token digits, cyclically changing) as valid. If a TOTP generator is used for registration, it must be ensured that all devices involved use the same time for calculation. Especially in the industrial environment (sensors, actuators, controllers), time synchronization is rare and sometimes not provided at all or even impossible.
- time stamps used by the requesting and authenticating device deviate from each other within the tolerated TOTP time interval, i.e. the specified period of validity of a TOTP token, the more difficult it is to register, since the acceptance window for the TOTP token is getting smaller and smaller. If the deviation is greater than the TOTP time interval, registration is no longer possible. If a TOTP procedure is aimed at, it is imperative that there is a synchronized time on both devices, both on the requesting and on the authenticating device.
- the challenge-response method is a generally accepted method that serves the use cases and scenarios that users who cannot use a synchronized authentication system are provided with an asynchronous variant of an authentication system.
- Such a challenge-response mode for authentication is known.
- OCRA the manufacturer-specific, proprietary challenge-response procedure is applied in a uniform, standardized and therefore also manufacturer-independent way.
- the use of countless, manufacturer-specific implementations and the waiver of the standardized solution using OCRA is probably the reason why there are no hardware dongles for the OCRA process on the market that allow automated use.
- a requesting device 10 communicates with a notarizing device 30.
- the requesting device 10 has an interface to which an OCRA generator 2 is connected in terms of hardware or implemented in terms of software.
- the notarizing device 30 has an identical OCRA generator 1 from the same manufacturer.
- a shared secret S is stored in the requesting device 10 and in the authenticating device 30 .
- This shared secret S is stored in the OCRA generator 2 in the requesting device 10 and in the OCRA generator 1 in the authenticating device 30 .
- the requesting device 10 sends an authentication request OCRA to the authenticating device 30 via a communication channel (step 1).
- the authenticating device 30 then generates a random value as predefinable information R (step 2).
- This information R is then transmitted to the requesting device 10 (step 3).
- the requesting device 10 then submits an OCRA request with the information R to the OCRA generator 2 (step 4).
- the query is forwarded to the OCRA generator 2 so that the O'CRA response to the predefinable information R can be calculated there (step 5).
- the requesting device 10 receives the calculated O'CRA response from the OCRA generator 2 (step 6).
- This O'CRA response is then transmitted to the notarizing device 30 (step 7).
- the notarizing device 30 itself calculates an OCRA response.
- This OCRA response is based on the predeterminable information R generated in step 2, ie the previously generated random value (step 8).
- the notarizing device 30 compares the received O'CRA response to the self-calculated OCRA response (step 9).
- the authenticating device 30 transmits the status of the authentication process, whether it was successful or failed, to the requesting device 10 (step 10). If the authentication process was successful, i.e. the O'CRA response was identical to the OCRA response, an interaction requested by the requesting device 10 is carried out, otherwise it is blocked.
- the present invention is based on the object of specifying a method and a device for authentication that is independent of a system time and which enables interactions in microcontroller-based and/or FPGA-based devices or devices and in particular in embedded systems and/or flame monitors.
- the aim of the invention is also to provide a device for carrying out such a method and to provide a flame detector with such a device.
- An apparatus for carrying out the method is the subject of claim 12.
- a flame detector according to the present invention is the subject of claim 14.
- the method according to the invention therefore provides the following for the authentication of interactions in microcontroller- and/or FPGA-based devices or devices, in particular embedded systems and/or flame monitors, independent of a system time: It is carried out in a requesting device and in a certifying device a cryptographic hash value, which can also be in truncated form, is calculated in accordance with a common shared secret used by both devices and in both devices in a TOTP module working according to the TOTP method. Instead of a system time, the TOTP modules are supplied with predeterminable information for calculating the respective hash value in such a way that the predeterminable information (e.g. a random value) is generated or provided by the authenticating device and transmitted to the requesting device when the requesting device requests it becomes.
- predeterminable information e.g. a random value
- the TOTP module assigned to the requesting device is a hardware dongle that can be externally plugged into the requesting device. Provision can be made for the authentication procedure to be started automatically when the hardware dongle is plugged in.
- the interactions mentioned can be, for example, configuration, update, parameterization, input, measurement, switching, monitoring and/or control functions in devices or facilities based on microcontrollers and/or FPGAs.
- At least one of the TOTP modules is realized as a software implementation directly in the requesting device and/or authenticating device.
- a software implementation is preferably implemented in the authenticating device.
- the access data can be stored on a wireless or wired chip unit, in particular a smart card or a USB module.
- the information that can be specified is a random value which, in one embodiment, can be selected from a specified list of values.
- the invention also claims independent protection for a flame arrester. Because a particularly suitable field of application of the method according to the invention is that it can be used with sensors, in particular with flame detectors.
- the method according to the invention can also be used advantageously in other sensor systems, such as flow sensors, level sensors, etc.
- a device for carrying out the method is characterized as follows:
- a microcontroller and/or FPGA-based device such as a flame monitor, is provided for the authentication of interactions independently of a system time, in which in each case in a requesting device and in a certifying
- a cryptographic hash value device which can optionally be in truncated form, can be calculated in accordance with a shared secret used by both devices and in both devices in a TOTP module that works according to the TOTP method, with the TOTP - Modules instead of a system time a predetermined information for calculating the respective hash value can be supplied.
- Such a device can particularly preferably be embodied in an embedded system.
- the present invention avoids the problems mentioned in the HOTP, TOTP and OCRA methods in a simple manner in that the known TOTP method with its disclosed TOTP algorithm is used, but instead of the system time required for this, predeterminable information, in particular a predeterminable random value, is used. Thus, advantageously, no proprietary algorithms are used.
- a commercially available hardware dongle which can be embodied, for example, as a USB stick or smart card or the like, is used with the TOTP algorithm.
- the hardware dongle must allow the time to be used to be set manually.
- this hardware dongle receives an adapted transfer value in the form of predeterminable information (e.g. random value) instead of the system time stamp.
- the method according to the invention enables authentication on a terminal that is independent of the system time stamp.
- a single hardware dongle can be used for authentication on multiple end devices, ie authenticating devices.
- a Nitrokey Pro 2 or OnlyKey is a USB security module for processing specific cryptographic tasks. This can be used, among other things, for the administration and use of OTP keys. Up to 24 OTP keys can be managed simultaneously on the Nitrokey Pro 2. These are stored in so-called slots. When requesting a TOTP token, the slot is specified. Depending on the selected slot, the associated OTP key used for TOTP token generation. This TOTP token is then returned.
- FIG. 1 The flowchart shown shows an example of a possible process for authenticating interactions in a microcontroller- and/or FPGA-based device or device, as can be used in embedded systems and/or flame detectors in particular. It is essential that this method for authentication is carried out with a conventional TOTP module, but is independent of a system time as required.
- the TOTP module can be implemented in software in the device or device or plugged into the device or device as a hardware dongle.
- the advantages of the authentication method according to the invention become clear on the basis of the representation of the principle mode of operation of the authentication method.
- Only the requesting device 10 and the authenticating device 30 need to know a common shared secret S, preferably stored.
- This shared secret S is preferably stored in a non-readable manner.
- predeterminable information R e.g. a generated random value or a random value from a list
- R′TOTP a truncated hash value
- the authenticating device 30 which also knows the predeterminable information as required, calculates its own truncated hash value RTOTP using the TOTP module 32 present there. If the two truncated hash values match, the authentication via the TOTP modules 12, 32 is successful.
- a specific exemplary embodiment of the method according to the invention is illustrated using a sensor such as a flow sensor used in a flow measurement pipeline.
- a sensor such as a flow sensor used in a flow measurement pipeline.
- another sensor in particular a flame detector or the like, could also be a possible application in which the method according to the invention is used.
- a flame monitor is used, for example, to detect whether there is a flame in a burner or not.
- the flow sensor in order to be able to correctly bill the amount of liquid passed through, the flow sensor must be correctly configured and calibrated. A manipulated calibration or flow measurement can cause considerable economic damage. To do this, it is imperative to secure access to the flow sensor and only allow authorized persons.
- the block diagram of a flow sensor device shows figure 2 . It shows a flow sensor 50 which, for example, is mounted directly on a pipeline (not shown) in order to record the flow rate there. Away from this, for example in a control center of a waterworks, there is a terminal 52 or a PC, via which a connection to the flow sensor can be established wirelessly (for example a WLAN connection). At Terminal 52 there is a slot for this, into which a hardware dongle 54 with an integrated TOTP generator can be plugged in by an operator.
- the user or the operator does not log on to the terminal 52, but the user logs on directly to the flow sensor 50 using the method according to the invention.
- the flow sensor 50 itself is the authenticating device and the terminal 52 is the requesting device within the meaning of the present invention device.
- the service technician has access to the terminal 52 and inserts a hardware dongle 54 configured for the respective flow sensor 50 into the terminal 52 .
- the terminal 52 now establishes a connection to the flow sensor 50, preferably after a previous request for a PIN from the user for the hardware dongle 54. Only when the previously stored, common shared secret S is known on both sides and the RTOTP token is therefore calculated identically on both sides, can the user register from the terminal 52 and thus configure or calibrate the flow sensor 50 .
- the RTOTP token is calculated on the part of the terminal 52 in the hardware dongle 54 plugged in there.
- no fixed assignment of a specific terminal 52 to a flow sensor 50 is necessary.
- the loss or theft of the terminal 52 is also not a critical incident, since no authentication data for logging on to the flow sensor 50 can be stolen and therefore no unauthorized configuration of the flow sensor 50 is possible with the terminal 52 alone.
- a sequential check of the further availability of the hardware dongle 54 at the sensor terminal 52 can also ensure that a configuration/calibration is only possible when the hardware dongle 54 is plugged in. If the hardware dongle 54 is removed, the user is logged off from the flow sensor 50.
- the flow sensor 50 communicates wirelessly or by wire with a terminal 52 into which a hardware dongle 54 of a user or user 56 can be plugged.
- This hardware dongle 54 has an internal TOTP generator in which a shared secret S is stored.
- This shared secret S is also stored in the flow sensor 50 .
- the flow sensor 50 also has an internal TOTP generator that is implemented in the form of a TOTP module that can be implemented in software.
- a first step 300 the user 56 inserts his hardware dongle 54 into the sensor terminal 52 .
- a configuration command is sent to the sensor terminal 52 in a subsequent step 302 .
- the sensor terminal 52 waits for such a configuration command.
- the sensor terminal 52 sends an authentication request to the flow sensor 50.
- an RTOTP request is generated in the flow sensor 50 and the sensor terminal 52 is queried. This request is awaited in step 310 in the sensor terminal 52 .
- the sensor terminal 52 In the RTOTP request from the flow sensor 50 to the sensor terminal 52 , information R that is provided in the flow sensor 50 and that can be specified as a random value, for example, or can be derived from a previously stored list of values, is communicated to the sensor terminal 52 .
- the sensor terminal 52 learns the predefinable information R for the later calculation of an associated hash value or truncated hash value.
- the sensor terminal 52 sends an RTOTP request to the hardware dongle 54, in which the predefinable information R is made available to the TOTP generator in the hardware dongle 54 as a fictitious time stamp.
- step 3 additional authentication is carried out with the hardware dongle.
- the user 56 must identify himself as an authorized person on the hardware dongle by entering a PIN. This is done in step 314.
- the user is prompted to enter a PIN. Instead of such a PIN entry, it is also possible to insert a smart card, it may be necessary to place a finger on a suitable fingerprint sensor or similar.
- step 316 the user 56 enters a PIN.
- the hardware dongle 54 waits for this input in step 318 . As soon as the PIN has been entered by the user 56, it is checked in step 320 whether the PIN input was correct or not.
- step 322 If the PIN input was not correct, an error message occurs in step 322, which is transmitted from the hardware dongle 54 to the sensor terminal 52. If, on the other hand, the PIN input in step 320 was correct, in step 324 the truncated hash value R′TOTP is calculated. This value is transmitted to the sensor terminal 52 in step 324 . There, in step 326, the R'TOTP response is awaited.
- the sensor terminal 52 determines in step 328 whether an error message or an R'TOTP response was previously received in step 326 . If an error message has been received, an error message occurs in a subsequent step 330 and a configuration or a reading of the flow sensor 50 is blocked.
- step 328 If, on the other hand, it has been recognized in step 328 that there is no error message but rather an R'TOTP response has been received, then in a subsequent step 332 this R'TOTP response is sent to the flow sensor 50 .
- An internal calculation of a separate truncated hash value RTOTP has previously taken place in the flow sensor 50 in an internal calculation step 309 .
- a conventional TOTP generator is used in the flow sensor 50, which, instead of a time stamp, is provided with exactly that predeterminable information R that was previously also sent to the sensor terminal 52 in step 308.
- a truncated hash value RTOTP is calculated from this.
- step 334 the R'TOTP response from the sensor terminal 52 is awaited.
- step 336 the R'TOTP response from the sensor terminal 53 is compared there in step 336 with the calculated RTOTP value according to step 309 in the flow sensor 50. This comparison takes place in step 336.
- a decision is then made in step 338 as to whether or not the comparison of the two values was correct. If the comparison in step 338 shows that the two values are not correct, an error is sent to the sensor terminal 52 in step 340 .
- step 342 the sensor terminal 52 waits for a response from the flow sensor 50. If, on the other hand, the comparison is positive, i.e. the values R'TOTP calculated in the sensor terminal 52 and RTOTP calculated in the flow sensor 50 are identical, then in the Step 344 communicated to the sensor terminal 52 a confirmation of the authentication, ie a correct authentication.
- step 346 a decision is made as to whether the authentication was successful or not. This takes place in step 346. If the authentication of the truncated hash values R'TOTP and RTOTP was not successful, an error is displayed and step 330 is jumped to. However, if the authentication of the truncated hash values was successful, in step 348 a configuration command is sent to the flow sensor 50, which in step 350 waits for this. In step 352, the configuration command is triggered in the flow sensor 50 and, if necessary, it is signaled that a positive authentication has taken place. If this is the case, the user 56 can den Read out the flow sensor 50, configure it, provide it with a new update, parameterize it and so on.
- a crane controller 72 of a crane unit 70 (for example a loading bridge or a lattice boom crane) is presented.
- the method according to the invention for authentication is again used.
- the crane unit 70 is controlled by radio. Only trained and authorized personnel may have access to the storage location of a remote control of the crane control 72. Only this authorized personnel also has access to the hardware dongle 74 belonging to the crane unit 70. It is a prerequisite that a common shared secret S is stored in the crane unit 70 and in the hardware dongle 74.
- the risk of a radio-based authentication attack on the control of the crane unit 70 can also be greatly reduced by a second authentication factor since no static authentication data is used.
- the crane driver 76 does not log on to the remote control of the crane controller 70. Instead, the remote control authenticates itself to the crane unit 70 using the method according to the invention. For this purpose, the crane driver 76 has access to the remote control and inserts a hardware Dongle 74 into the remote control of the crane control 72. The remote control establishes a connection to the crane unit 70 via the method according to the invention. Only when the shared secret S is known on both sides and the RTOTP response is therefore calculated identically on both sides can the remote control of the crane controller 70 be registered and thus the crane unit controlled. The RTOTP response is calculated on the part of the remote control in the hardware dongle 74, which must be plugged into the remote control.
- a sequential check of the continued availability of the hardware dongle 74 on the remote control can also ensure that crane control is only possible if the hardware dongle 74 is plugged into the remote control. If the hardware dongle 74 is removed, the remote control logs off from the crane unit 70, preferably automatically. If the crane operator 76 takes a break, for example, he takes the hardware dongle 74 with him. Unauthorized operation of the crane unit 70 is therefore no longer possible, even with unprotected access to the remote control of the crane control 72.
- FIG 5 the flow chart of an authentication of a crane operator 76 on a crane unit 70 is shown over time.
- the crane driver 76 is supposed to control the crane unit 70 via a crane controller 72 .
- the crane controller 72 is equipped with a hardware dongle 74 that represents a physical and physical authorization code for an authorized crane operator 76 .
- a TOTP module in the form of a TOTP generator is integrated in the hardware dongle 74 .
- a shared secret S is stored in the hardware dongle 74 . This shared secret S is also stored in the crane unit 70 .
- a TOTP generator is also integrated in the crane unit 70 .
- step 700 the crane operator 76 plugs the hardware dongle of the crane controller 72 into the crane controller 72, e.g. B. the one for it provided remote control, a.
- step 702 the crane driver 76 then sends a control command to the crane controller 72.
- step 704 the crane controller 72 waits for such a control command.
- step 706 the crane controller 72 sends an authentication request to the crane unit 70.
- step 708 a so-called RTOTP request is generated by providing specified information R, which is randomly generated, for example, or can be taken from a list of values.
- This predeterminable information R is transmitted back to the crane controller 72 in the form of an RTOTP request, which waits for this in step 710 .
- an inquiry is generated in the crane controller 72 from this inquiry and the transmitted predeterminable information R, which inquiry is sent to the hardware dongle 74 as an RTOTP inquiry.
- an R'TOTP response is then generated in the hardware dongle 74 using the predefinable information R in the TOTP generator there and sent to the crane controller 72, which in step 760 waits for such a response.
- the crane controller 72 sends this R'TOTP response, i.e. a truncated hash value, to the crane unit 70.
- step 720 the crane unit 70 waits for such a response from the crane controller 72. Before that, in the crane unit 70 an RTOTP response has been calculated in step 709 in the TOTP generator there using the aforementioned predeterminable information R. This is again a truncated hash value.
- step 722 the value RTOTP of the crane unit 70 and the received value R'TOTP of the crane controller 72 or the hardware dongle 74 connected there are compared.
- step 724 the result of the comparison from step 722 is determined. If the comparison does not yield a matching result, in step 726 an error is sent to the crane controller 52, which in step 728 responds to a Crane unit 70 response awaits.
- step 730 a result of the authentication is awaited and in step 732 an error is displayed, which signals that the comparison between the truncated hash values R'TOTP and RTOTP brought a negative result. Control of the crane unit 70 has failed and is blocked. A corresponding display can take place in step 732 .
- step 724 If, on the other hand, the comparison in step 722 yields a match, the comparison in step 724 signals a positive result.
- step 740 an acknowledgment is sent that the comparison of R'TOTP and RTOTP yielded a matching result.
- this positive result in step 740 is communicated to the crane control 72 , which in step 730 recognizes a successful authentication and in step 742 sends a control command to the crane unit 70 .
- step 744 the crane unit 70 waits for such a control command.
- step 746 the crane unit 70 then executes the control command desired by the user 76.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
Description
Die Erfindung betrifft ein Verfahren zur von einer Systemzeit unabhängigen Authentifizierung von Interaktionen in Mikrocontroller- und/oder FPGA (englisch: Field Programmable Gate Array; deutsch: im Feld (also vor Ort, beim Kunden) programmierbare (Logik-)Gatter-Anordnung)-basierenden Geräten oder Vorrichtungen, insbesondere in eingebetteten (engl.: "embedded") Systemen, sowie eine Vorrichtung zur Durchführung dieses Verfahrens und einen Flammenwächter mit einer derartigen Vorrichtung.The invention relates to a method for the authentication of interactions in microcontrollers and/or FPGAs (Field Programmable Gate Array) independent of a system time. based devices or devices, in particular in embedded (engl .: "embedded") systems, and a device for performing this method and a flame detector with such a device.
Bei Interaktionen von miteinander kommunizierenden Geräten wird regelmäßig aus Sicherheitsgründen eine Authentisierung benötigt, um einem anfragenden Gerät Zugriff zu gewähren und beispielsweise entsprechende Berechtigungen auf einem beglaubigenden Gerät zu erteilen. Eine Authentisierung, also die Anfrage einer Anmeldung mit der Behauptung einer Identität, mit anschließender Authentifizierung, d.h. einer Überprüfung und Validierung der Behauptung der erhaltenen Identität, trägt maßgeblich zur Absicherung eines digitalen Zugangs bei.In the case of interactions between devices communicating with one another, authentication is regularly required for security reasons in order to grant access to a requesting device and, for example, to grant corresponding authorizations on a certifying device. Authentication, i.e. the request for a registration with the assertion of an identity, with subsequent authentication, i.e. a check and validation of the assertion of the identity received, contributes significantly to securing digital access.
Die Authentisierung stellt also den Nachweis einer Entität dar, dass diese tatsächlich diejenige ist, die sie vorgibt zu sein. Mittels dieses Nachweises soll die Identität bestätigt bzw. geprüft werden können. Im Falle einer sogenannten Zwei-Faktor-Authentisierung oder häufig auch als Zwei-Faktor-Authentifizierung (kurz "2FA" bezeichnet), wird die Sicherheit des jeweiligen digitalen Zugangs um einen weiteren Faktor erhöht. "2FA" bezeichnet damit den Identitätsnachweis eines Nutzers mittels der Kombination zweier unterschiedlicher und insbesondere unabhängiger Authentisierungs-Komponenten bzw. Faktoren. Typische Beispiele sind Bankkarte plus PIN beim Geldautomaten, Fingerabdruck plus Zugangscode in Gebäuden, oder Passwort und Transaktionsnummer (TAN) beim Online-Banking. Sofern der Zugang zu einem System nicht durch andere Maßnahmen geregelt und limitiert werden kann, sollte aus Sicherheitsgründen immer eine 2FA angewendet werden.Authentication is the verification of an entity that it is actually who it claims to be. This proof should be able to confirm or check the identity. In the case of a so-called two-factor authentication or often also referred to as two-factor authentication (“2FA” for short), the security of the respective digital access is increased by another factor. "2FA" thus refers to the proof of identity of a user using the combination of two different and, in particular, independent authentication components or factors. Typical examples are bank card plus PIN for ATMs, fingerprint plus access code in buildings, or password and transaction number (TAN) for online banking. If access to a system cannot be regulated and limited by other measures, 2FA should always be used for security reasons.
Im IT-Umfeld sind diese beiden Methoden bereits seit Jahren etabliert. Im Embedded-Umfeld jedoch ist auch aktuell häufig nur die Abfrage eines einzelnen gemeinsamen Geheimnisses (z.B. Passwort) die einzige Absicherung für den Zugriff auf ein System. Durch die immer komplexer werdenden industriellen Systeme und die nahtlose Anbindung an bestehende IT-Systeme, muss auch im Embedded-Umfeld diesbezüglich nachgebessert und angepasst werden.In the IT environment, these two methods have been established for years. In the embedded environment, however, the query of a single common secret (e.g. password) is often the only protection for access to a system. Due to the increasingly complex industrial systems and the seamless connection to existing IT systems, improvements and adjustments must also be made in the embedded environment.
Bei dieser Anpassung sollten gängige und etablierte Prozesse und Algorithmen, welche im IT-Umfeld bereits etabliert sind, angewendet werden, um einheitlich und kompatibel zu anderen Bereichen zu sein. Dies ist im Embedded-Umfeld aber nicht immer möglich, da z.B. nicht ausreichend Ressourcen zur Verfügung stehen, oder aber die, in beispielsweise der IT üblichen, Ausgangssituationen sich zu stark von denen im Embedded-Umfeld unterscheiden. Entsprechend sind Adaptionen dieser Prozesse notwendig, um bei einer Verbindung von IT und OT die Cyber Security zu gewährleisten.With this adjustment, common and established processes and algorithms, which are already established in the IT environment, should be used in order to be uniform and compatible with other areas. However, this is not always possible in the embedded environment, because, for example, there are not enough resources available, or the initial situations, which are common in IT, for example, differ too much from those in the embedded environment. Accordingly, adaptations of these processes are necessary in order to ensure cyber security when IT and OT are combined.
Im Gegensatz zu herkömmlichen Prozessoren, die in Destop-Computern, Servern, Smartphones oder Tablets verbaut werden, geht es bei der vorliegenden Erfindung um eingebettete Systeme, die ganz gezielt zur Messung und Erfassung von Daten dienen bzw. zur Steuerung von anderen Komponenten oder Systemen.In contrast to conventional processors that are built into desktop computers, servers, smartphones or tablets, the present invention is about embedded systems that are used specifically to measure and record data or to control other components or systems.
Als "Embedded System" (deutsch: "eingebettetes System") versteht man dabei ein Microcontrollersystem oder ein FPGA-System, das eine fest zugeordnete Aufgabe erfüllt, in ein umgebendes System eingebettet bzw. integriert ist und mit diesem bzw. durch dieses System interagiert. Es dient dabei insbesondere der Messung, Erfassung und Weiterleitung von Daten bzw. wird es zur Steuerung von Aktoren, Komponenten oder Systemen eingesetzt.An "embedded system" is understood to be a microcontroller system or an FPGA system that performs a dedicated task, is embedded or integrated into a surrounding system and interacts with or through this system. It serves in particular to measure, record and forward data or is used to control actuators, components or systems.
Diese eingebetteten Systeme, also Microcontroller- oder FPGA-basierenden Geräte und Einrichtungen, haben oftmals, verglichen mit ihren leistungsstarken Gegenstücken aus dem IT-Umfeld, weniger Rechenressourcen und noch häufiger eine nur sehr begrenzte Stromversorgung. Das Umfeld, in denen diese Tätigkeiten durchgeführt werden, ist oftmals weit entfernt von den idealen Betriebsbedingungen für elektronische Komponenten und wird "Embedded"-Umfeld genannt.These embedded systems, i.e. microcontroller or FPGA-based devices and facilities, often have fewer computing resources and even more often only a very limited power supply compared to their powerful counterparts from the IT environment. The environment in which these activities are performed is often far from the ideal operating conditions for electronic components and is called an "embedded" environment.
Nimmt man das Beispiel eines Sensors zur Durchflussmessung, wird dieser z.B. an Gas-Pipelines in extrem rauen Umgebungen und unter sehr schwierigen Betriebsbedingungen verwendet. Dies kann beispielsweise eine Mindesttemperatur von -30°C oder eine Maximaltemperatur von +100°C sein. Zur Regelung des Durchflusses kann zudem eine Echtzeitfähigkeit wichtig sein, um beispielsweise Ventile entsprechend zu steuern. Auch ständige Bewegung, Erschütterungen und andere physikalische Störgrößen müssen für den Einsatz genauso berücksichtigt werden, wie ein fehlerfreier Betrieb trotz z.B. elektromagnetischer Störimpulse. Hinzu kommt, dass oftmals keine Möglichkeit der ständigen Verbindung (beispielsweise Datenverbindungen zur Überwachung oder Synchronisation) zu solch einem Gerät besteht. Selbst eine ständige, stabile Energieversorgung ist oftmals nicht sichergestellt. Entsprechendes gilt auch bei Flammenwächtern. Ein Flammenwächter dient der Überwachung des Vorhandenseins einer Flamme, z.B. mindestens in einem Teilbereich einer Brennkammer. Wesentlicher Bestandteil eines Flammenwächters ist dabei ein Flammensensor zum Erfassen einer physikalischen Größe einer Flamme, insbesondere einer Intensität elektromagnetischer Strahlung und Erzeugen eines zugehörenden elektrischen Sensorsignals.If you take the example of a sensor for flow measurement, it is used, for example, on gas pipelines in extremely harsh environments and under very difficult operating conditions. For example, this can be a minimum temperature of -30°C or a maximum temperature of +100°C. Real-time capability can also be important for controlling the flow, for example to control valves accordingly. Constant movement, vibrations and other physical disturbances must also be taken into account for use, as must error-free operation despite electromagnetic interference pulses, for example. In addition, there is often no possibility of a permanent connection (e.g. data connections for monitoring or synchronization) to such a device. Even a constant, stable energy supply is often not assured. The same applies to flame detectors. A flame monitor serves to monitor the presence of a flame, for example at least in a partial area of a combustion chamber. An essential part of a flame monitor is a flame sensor for detecting a physical variable of a flame, in particular an intensity of electromagnetic radiation, and generating an associated electrical sensor signal.
Dennoch ist es auch im Embedded-Umfeld, insbesondere im Umfeld derartiger Sensoren, notwendig, Sicherheitsmechanismen vorzusehen, so dass nur berechtigte Zugriffe auf solche Systeme von außen möglich sind. Allerdings stellt der Mangel an Ressourcen, das schwierige Einsatzumfeld und ggf. fehlende Anbindung an Rechenzentren und Server für die Hersteller eine neue, hohe Herausforderung dar.Nevertheless, it is also necessary in the embedded environment, in particular in the environment of such sensors, to provide security mechanisms so that only authorized access to such systems from the outside is possible. However, the lack of resources, the difficult operating environment and possibly the lack of connection to data centers and servers represent a new, major challenge for the manufacturers.
Die deutsche Patentanmeldung
Bevor hier näher auf die vorliegende Erfindung eingegangen wird, ist es aber notwendig, zunächst einige nachfolgend benutzte Begriffe kurz zu erläutern.Before the present invention is discussed in more detail here, however, it is necessary to first briefly explain some of the terms used below.
Das anfragende Gerät stellt eine Anfrage auf Zugriff (beispielsweise einer Ressource) des beglaubigenden Gerätes.The requesting device makes a request for access (e.g., a resource) from the notarizing device.
Das beglaubigende Gerät überprüft die Angabe des anfragenden Gerätes auf Validität. Bei positiver Prüfung wird eine Authentifizierung ausgesprochen, andernfalls wird der Zugriff abgelehnt.The certifying device checks the information from the requesting device for validity. If the check is positive, authentication is issued, otherwise access is denied.
OTP steht für "One-time-Password" (zu Deutsch: Einmalpasswort). Ein Einmalkennwort oder Einmalpasswort ist ein Kennwort zur Authentifizierung oder auch Autorisierung. Jedes Einmalkennwort sollte nur für eine einmalige Verwendung gültig sein und sollte daher kein zweites Mal benutzt werden.OTP stands for "One-time Password". A one-time password or one-time password is a password used for authentication or authorization. Each one-time password should only be valid for a single use and therefore should not be used a second time.
Das Challenge-Response-Verfahren (übersetzt etwa Aufforderung-Antwort-Verfahren) ist ein sicheres Authentifizierungs-verfahren eines Teilnehmers auf Basis von Wissen. Hierbei stellt ein Teilnehmer eine Aufgabe (engl. challenge), die der andere lösen muss (engl. response), um zu beweisen, dass er eine bestimmte Information (z.B. den verwendeten Algorithmus oder ein Shared-Secret) kennt, ohne diese Information selbst zu übertragen. Dies ist ein Schutz dagegen, dass die bestimmte Information (z.B. ein Passwort) von Angreifern auf der Leitung mitgehört werden kann.The challenge-response method (translated as a request-response method ) is a secure authentication method for a participant based on knowledge. Here, one participant presents a task ( challenge ) that the other must solve ( response ) in order to prove that he knows certain information (e.g. the algorithm used or a shared secret) without admitting this information himself transfer. This is a protection against the specific information (eg a password) being overheard by attackers on the line.
Eine Kommandozeilenschnittstelle (CLI) nimmt Befehle an ein Computerprogramm in Form von Textzeilen entgegen.A command line interface (CLI) accepts commands to a computer program in the form of lines of text.
"IT" ist der gebräuchliche Begriff für das gesamte Spektrum von Technologien zur Informationsverarbeitung, einschließlich Software, Hardware, Kommunikationstechnologien und zugehörige Dienstleistungen. Im Allgemeinen umfasst die IT keine eingebetteten (Embedded) Technologien, die Daten für den Unternehmensgebrauch erzeugen."IT" is the common term for the full range of information processing technologies, including software, hardware, communication technologies and related services. In general, IT does not include embedded technologies that generate data for business use.
Operationelle Technologie (OT) ist Hard- und Software, die durch die direkte Überwachung und/oder Steuerung von physikalischen Geräten, Anlagen, Prozessen und Ereignissen eine Veränderung feststellt oder bewirkt.Operational Technology (OT) is hardware and software that detects or causes change through direct monitoring and/or control of physical devices, facilities, processes and events.
Ein Message Authentication Code (MAC; deutsch: "Nachrichtenauthentifizierungscode") dient dazu, Gewissheit über den Ursprung von Daten oder Nachrichten zu erhalten und ihre Integrität zu überprüfen. MAC-Algorithmen erfordern zwei Eingabeparameter, erstens die zu schützenden Daten und zweitens einen geheimen Schlüssel. Die MAC-Algorithmen berechnen aus beidem eine Prüfsumme, den Message Authentication Code. Ein Keyed-Hash Message Authentication Code (HMAC) ist ein Message Authentication Code (MAC), dessen Konstruktion auf einer kryptografischen Hash-Funktion, wie beispielsweise dem Secure Hash Algorithm (SHA), und einem geheimen Schlüssel basiert. Die Kombination wird als HMAC-SHA1 bezeichnet, wobei die Zahl 1 für die verwendete Variante der kryptografischen Hash-Funktion steht.A Message Authentication Code (MAC; German: "Message Authentication Code") is used to obtain certainty about the origin of data or messages and to check their integrity. MAC algorithms require two input parameters, first the data to be protected and second a secret key. The MAC algorithms calculate a checksum from both, the message authentication code. A keyed-hash message authentication code (HMAC) is a message authentication code (MAC) whose construction is based on a cryptographic hash function, such as the Secure Hash Algorithm (SHA), and a secret key. The combination is called HMAC-SHA1, where the
In der Mathematik und Informatik versteht man unter Trunkierung die Begrenzung der Anzahl der Stellen rechts vom Dezimalpunkt. Hier bedeutet dies die Kürzung der Länge eines gegebenen Ausgabewertes. Ein trunkierter Wert ist demnach ein in seiner Länge gekürzter Wert.In mathematics and computer science, truncation is the limitation of the number of digits to the right of the decimal point. Here it means shortening the length of a given output value. A truncated value is therefore a value that has been shortened in length.
Die Anzahl der OTP-Token-Digits beschreibt die Anzahl der Ziffern und somit die Länge, die ein berechneter OTP-Token aufweisen muss.The number of OTP token digits describes the number of digits and thus the length that a calculated OTP token must have.
Derzeit sind unterschiedliche Verfahren zur Authentifizierung bekannt und gebräuchlich. Das OTP-Verfahren ist dabei eines der am häufigsten eingesetzten Verfahren für eine 2FA. Für das OTP-Verfahren gibt es insbesondere drei gängige Möglichkeiten der Umsetzung.Various authentication methods are currently known and used. The OTP method is one of the most commonly used methods for 2FA. In particular, there are three common implementation options for the OTP process.
Ein gemeinsames Geheimnis (OTP-Schlüssel) zwischen dem Gerät des Benutzers und dem beglaubigenden Gerät wird mittels kryptographischer Algorithmen und einem Zähler, der sich bei jedem Anmeldeversuch erhöht, zur Anmeldung des Benutzers benötigt.A shared secret (OTP key) between the user's device and the authenticating device is required to log the user in using cryptographic algorithms and a counter that increments with each login attempt.
Dieser Zähler muss sich, sowohl auf dem beglaubigenden Gerät als auch auf dem anfragenden Gerät des Benutzers immer im synchronisierten Bereich befinden, denn nur dann kann eine daraus resultierende Berechnung eines gemeinsamen Tokens (z.B. 6-8 OTP-Token-Digits) als gültig anerkannt werden.This counter must always be in the synchronized range on both the authenticating device and the requesting device of the user, because only then can a resulting calculation of a common token (e.g. 6-8 OTP token digits) be recognized as valid .
Problematisch beim HOTP-Verfahren ist, dass die Zähler beider Geräte, also des anfragenden und des beglaubigenden Gerätes, immer in einem vordefinierten Bereich zueinander liegen müssen. Wird ein HOTP-Generator für mehrere beglaubigende Geräte genutzt, erhöht sich der Zähler auf dem anfragenden Gerät in einem anderen Intervall als auf den beglaubigenden Geräten.The problem with the HOTP procedure is that the counters of both devices, i.e. the requesting and the authenticating device, must always be within a predefined range of one another. If a HOTP generator is used for multiple authenticating devices, the counter on the requesting device increments at a different interval than on the authenticating devices.
- Drei beglaubigende Geräte (A, B, C)
- Ein anfragendes Gerät
- Three authenticating devices (A, B, C)
- A requesting
Ein Synchronhalten des Zählers des anfragenden Gerätes zu dem Zähler der beglaubigenden Geräte ist nicht möglich, sie "driften" mit jeder neuen Anmeldung weiter auseinander.Keeping the counter of the requesting device synchronized with the counter of the authenticating devices is not possible, they "drift" further apart with each new registration.
Ein anfragendes Gerät kann somit immer nur für den Zugang zu einem beglaubigenden Gerät genutzt werden. Die Verwendung eines einzelnen HOTP-Schlüssels für die Authentisierung an mehreren beglaubigenden Geräten ist damit nicht möglich. Dies bedeutet, dass z.B. für ein anfragendes Gerät zum Zugriff auf mehrere hundert beglaubigende Geräte auch mehrere hundert HOTP-Schlüssel genutzt und verwaltet werden müssen, da sich für jeden HOTP-Schlüssel die Zähler-Werte voneinander unterscheiden können.A requesting device can therefore only ever be used to access one authenticating device. It is therefore not possible to use a single HOTP key for authentication at multiple authenticating devices. This means that, for example, for a requesting device to access several hundred authenticating devices, several hundred HOTP keys must also be used and managed, since the counter values for each HOTP key can differ from one another.
Ein gemeinsames Geheimnis (OTP-Schlüssel) zwischen dem Gerät des Benutzers und dem beglaubigenden Gerät wird mittels kryptographischer Algorithmen und der aktuellen, gemeinsamen Zeit des beglaubigenden und anfragenden Gerätes, zur Anmeldung des Benutzers benötigt. Diese Zeit muss sowohl auf dem beglaubigenden Gerät als auch auf dem anfragenden Gerät des Benutzers immer synchron sein, um eine daraus resultierende Berechnung eines gemeinsamen Tokens (z.B. 6-8 OTP-Token-Digits, zyklisch wechselnd) als gültig zu erkennen. Wird ein TOTP-Generator für die Anmeldung genutzt, muss sichergestellt sein, dass alle involvierten Geräte zwingend dieselbe Zeit zur Berechnung nutzen. Gerade im industriellen Umfeld (Sensoren, Aktoren, Steuerungen) ist eine Zeitsynchronisation aber selten und stellenweise überhaupt nicht vorgesehen oder gar unmöglich. Je weiter die, jeweils von dem anfragenden und beglaubigenden Gerät, verwendeten Zeitstempel, von denen die TOTP-Tokens abgeleitet werden, innerhalb des tolerierten TOTP-Zeitintervalls, also der festgelegten Gültigkeitsdauer eines TOTP-Tokens, voneinander abweichen, desto schwieriger wird eine Anmeldung, da das Akzeptanzfenster für den TOTP-Token immer kleiner wird. Ist die Abweichung größer als das TOTP-Zeitintervall, so ist keine Anmeldung mehr möglich. Wird also ein TOTP-Verfahren angestrebt, muss zwingend eine synchronisierte Zeit auf beiden Geräten sowohl auf dem anfragenden als auch beglaubigenden Gerät vorliegen.A shared secret (OTP key) between the user's device and the authenticating device is required using cryptographic algorithms and the current, shared time of the authenticating and requesting device to log in the user. This time must always be synchronous on both the authenticating device and the requesting device of the user in order to recognize a resulting calculation of a common token (e.g. 6-8 OTP token digits, cyclically changing) as valid. If a TOTP generator is used for registration, it must be ensured that all devices involved use the same time for calculation. Especially in the industrial environment (sensors, actuators, controllers), time synchronization is rare and sometimes not provided at all or even impossible. The more the time stamps used by the requesting and authenticating device, from which the TOTP tokens are derived, deviate from each other within the tolerated TOTP time interval, i.e. the specified period of validity of a TOTP token, the more difficult it is to register, since the acceptance window for the TOTP token is getting smaller and smaller. If the deviation is greater than the TOTP time interval, registration is no longer possible. If a TOTP procedure is aimed at, it is imperative that there is a synchronized time on both devices, both on the requesting and on the authenticating device.
Das Challenge-Response-Verfahren ist eine allgemein akzeptierte Methode, welche den Anwendungsfällen und Szenarien dient, dass Benutzer, die kein synchronisiertes Authentifizierungssystem verwenden können, eine asynchrone Variante eines Authentifizierungssystems zur Verfügung gestellt bekommen. Ein solcher Challenge-Response-Modus zur Authentifizierung ist bekannt. Mehrere Hersteller bieten bereits Software-Anwendungen und Hardware-Geräte an, die ein Challenge-Response-Verfahren implementieren - aber jeder von ihnen verwendet nachteiliger Weise herstellerspezifische, proprietäre Algorithmen. Durch die Nutzung von OCRA wird das herstellerspezifische, proprietär umgesetzte Challenge-Response-Verfahren auf eine einheitliche, standardisierte und somit auch Herstellerübergreifendes Art angewandt. Die Verwendung der unzähligen, herstellerspezifischen Umsetzungen und der Verzicht auf die standardisierte Lösung mittels OCRA dürfte der Grund dafür sein, dass keine Hardware-Dongles für das OCRA-Verfahren im Markt verfügbar sind, die eine automatisierte Nutzung zulassen. Proprietäre Varianten sind hingegen weiterhin gängig. Somit setzt die Verwendung eines Challenge-Response-Verfahrens mittels Hardware-Dongles eine feste Bindung und eine damit verknüpfte Abhängigkeit eines Dongles an einen speziellen Hersteller voraus, was in den Systemen mit Komponenten verschiedenster Hersteller dem Einsatz von Hardware-Dongles für das OCRA-Verfahren entgegensteht.The challenge-response method is a generally accepted method that serves the use cases and scenarios that users who cannot use a synchronized authentication system are provided with an asynchronous variant of an authentication system. Such a challenge-response mode for authentication is known. Several manufacturers already offer software applications and hardware devices that implement a challenge-response method - but each of them disadvantageously uses manufacturer-specific, proprietary algorithms. By using OCRA, the manufacturer-specific, proprietary challenge-response procedure is applied in a uniform, standardized and therefore also manufacturer-independent way. The use of countless, manufacturer-specific implementations and the waiver of the standardized solution using OCRA is probably the reason why there are no hardware dongles for the OCRA process on the market that allow automated use. Proprietary variants, on the other hand, are still common. Thus, the use of a challenge-response procedure using hardware dongles requires a fixed connection and the associated dependency of a dongle on a specific manufacturer, which in systems with components from a wide variety of manufacturers precludes the use of hardware dongles for the OCRA procedure .
Anhand von
Dabei kommuniziert ein anfragendes Gerät 10 mit einem beglaubigenden Gerät 30. Das anfragende Gerät 10 verfügt über eine Schnittstelle, an die ein OCRA-Generator 2 hardwaremäßig angeschlossen oder softwaremäßig implementiert ist. Das beglaubigende Gerät 30 weist einen identischen OCRA-Generator 1 des gleichen Herstellers auf. Um ein Authentifizierungsverfahren zwischen dem anfragenden Gerät 10 und dem beglaubigenden Gerät 30 durchzuführen, ist in dem anfragenden Gerät 10 und in dem beglaubigenden Gerät 30 jeweils ein Shared-Secret S abgespeichert. Im anfragenden Gerät 10 ist dieses Shared-Secret S in dem OCRA-Generator 2 und im beglaubigenden Gerät 30 im OCRA-Generator 1 gespeichert.In this case, a requesting
Folgende Verfahrensschritte werden durchgeführt. Das anfragende Gerät 10 stellt über einen Kommunikationskanal eine Authentifizierungs-Anfrage OCRA an das beglaubigende Gerät 30 (Schritt 1). Das beglaubigende Gerät 30 generiert dann einen Zufallswert als vorgebbare Information R (Schritt 2). Diese Information R wird dann an das anfragende Gerät 10 übertragen (Schritt 3). Das anfragende Gerät 10 stellt anschließend eine OCRA-Anfrage mit der Information R an den OCRA-Generator 2 (Schritt 4). Die Anfrage wird an den OCRA-Generator 2 weitergegeben, damit dort die O'CRA-Antwort zu der vorgebbaren Information R berechnet werden kann (Schritt 5). Das anfragende Gerät 10 erhält die errechnete O'CRA-Antwort des OCRA-Generators 2 (Schritt 6). Diese O'CRA-Antwort wird anschließend an das beglaubigende Gerät 30 übertragen (Schritt 7). Für die Durchführung des Vergleichs der empfangenen O'CRA-Antwort berechnet das beglaubigende Gerät 30 selbst eine OCRA-Antwort. Diese OCRA-Antwort basiert auf der in Schritt 2 erzeugten vorgebbaren Information R, also dem zuvor erzeugten Zufallswert (Schritt 8).The following process steps are carried out. The requesting
Anschließend vergleicht das beglaubigende Gerät 30 die empfangene O'CRA-Antwort mit der selbst berechneten OCRA-Antwort (Schritt 9). Das beglaubigende Gerät 30 überträgt den Status des Authentifizierungsvorgangs, ob dieser erfolgreich war oder fehlgeschlagen ist, an das anfragende Gerät 10 (Schritt 10). War der Authentifizierungsvorgang erfolgreich, d.h. die O'CRA-Antwort mit der OCRA-Antwort identisch, wird eine vom anfragenden Gerät 10 angefragte Interaktion durchgeführt, andernfalls gesperrt.The notarizing
Problematisch bei diesem bekannten OCRA-Verfahren ist jedoch, wie oben erwähnt, dass die Hersteller regelmäßig ganz eigene, herstellerspezifische und damit proprietäre Algorithmen zur Durchführung eines Challenge-Response-Verfahrens einsetzen und deshalb die Anwender gezwungen sind immer Challenge-Response-Generatoren gleicher Hersteller zu verwenden, was einer breiten und massenhaften Einsatzmöglichkeit des OCRA- Authentifizierungsverfahrens zuwiderläuft.However, as mentioned above, the problem with this known OCRA method is that the manufacturers regularly use their own, manufacturer-specific and thus proprietary algorithms to carry out a challenge-response method and the users are therefore always forced to use challenge-response generators from the same manufacturer use, which runs counter to a broad and mass application of the OCRA authentication method.
Der vorliegenden Erfindung liegt die Aufgabe zu Grunde, ein Verfahren und eine Vorrichtung anzugeben für eine von einer Systemzeit unabhängigen Authentifizierung, welche Interaktionen in auf Microcontroller- und/oder FPGA-basierenden Geräten oder Vorrichtungen und insbesondere in eingebetteten Systemen und/oder Flammenwächtern ermöglicht. Darüber hinaus ist es Ziel der Erfindung, auch eine Vorrichtung zur Durchführung eines solchen Verfahrens bereitzustellen und einen Flammenwächter mit einer derartigen Vorrichtung zur Verfügung zu stellen.The present invention is based on the object of specifying a method and a device for authentication that is independent of a system time and which enables interactions in microcontroller-based and/or FPGA-based devices or devices and in particular in embedded systems and/or flame monitors. In addition, the aim of the invention is also to provide a device for carrying out such a method and to provide a flame detector with such a device.
Diese Aufgabe wird gelöst durch ein Verfahren mit den Merkmalen des Anspruchs 1.This object is achieved by a method having the features of
Weiterbildungen dieses Verfahrens sind Gegenstand der Unteransprüche 1 bis 11.Developments of this method are the subject of
Eine Vorrichtung zur Durchführung des Verfahrens ist Gegenstand des Anspruchs 12. Ein Flammenwächter gemäß der vorliegenden Erfindung ist Gegenstand des Anspruchs 14.An apparatus for carrying out the method is the subject of
Das erfindungsgemäße Verfahren sieht also zur von einer Systemzeit unabhängigen Authentifizierung von Interaktionen in auf Microcontroller- und/oder FPGA- basierenden Geräten oder Vorrichtungen, insbesondere eingebetteten Systemen und/oder Flammenwächtern, folgendes vor: Es wird jeweils in einem anfragenden Gerät und in einem beglaubigenden Gerät ein kryptographischer, Hash-Wert, der auch in trunkierter Form vorliegen kann, nach Maßgabe eines von beiden Geräten benutzten, gemeinsamen Shared-Secrets und einem in beiden Geräten in einem nach dem TOTP-Verfahren arbeitenden TOTP-Modul errechnet. Dabei wird den TOTP-Modulen anstelle einer Systemzeit eine vorgebbare Information zur Berechnung des jeweiligen Hash-Wertes zugeführt und zwar derart, dass die vorgebbare Information (z.B. ein Zufallswert) vom beglaubigenden Gerät erzeugt oder bereitgestellt und bei einer Anfrage des anfragenden Gerätes dem anfragenden Gerät übermittelt wird. Dort wird es dann dem dortigen TOTP-Modul zur Berechnung eines eigenen Hash-Wertes zugeführt und der dann dort errechnete Hash-Wert zu dem beglaubigenden Gerät übertragen. Bei einer Übereinstimmung dieses vom beglaubigenden Gerät empfangenen Hash-Wertes mit dem im beglaubigenden Gerät mit der vorgegebenen Information errechneten Hash-Wertes ist eine erfolgreiche Authentifizierung durchgeführt und die Interaktion wird freigeben. Andernfalls wird die Interaktion bei einer Nichtübereinstimmung gesperrt.The method according to the invention therefore provides the following for the authentication of interactions in microcontroller- and/or FPGA-based devices or devices, in particular embedded systems and/or flame monitors, independent of a system time: It is carried out in a requesting device and in a certifying device a cryptographic hash value, which can also be in truncated form, is calculated in accordance with a common shared secret used by both devices and in both devices in a TOTP module working according to the TOTP method. Instead of a system time, the TOTP modules are supplied with predeterminable information for calculating the respective hash value in such a way that the predeterminable information (e.g. a random value) is generated or provided by the authenticating device and transmitted to the requesting device when the requesting device requests it becomes. There it is then fed to the local TOTP module to calculate its own hash value and the hash value calculated there is then transmitted to the authenticating device. If this hash value received from the authenticating device matches the hash value calculated in the authenticating device using the specified information, successful authentication has been carried out and the interaction is released. Otherwise, if there is a mismatch, the interaction will be blocked.
In einer bevorzugten Ausführungsform der Erfindung ist das dem anfragenden Gerät zugeordnete TOTP-Modul ein in das anfragende Gerät von extern einsteckbarer Hardware-Dongle. Dabei kann vorgesehen werden, dass mit dem Einstecken des Hardware-Dongles die Authentifizierungsprozedur selbsttätig gestartet wird.In a preferred embodiment of the invention, the TOTP module assigned to the requesting device is a hardware dongle that can be externally plugged into the requesting device. Provision can be made for the authentication procedure to be started automatically when the hardware dongle is plugged in.
Die erwähnten Interaktionen können in auf Microcontroller und/oder FPGA's basierenden Geräten oder Einrichtungen z.B. Konfigurations-, Update-, Parametrierungs-, Eingabe-, Mess-, Schalt-, Überwachungs- und/oder Steuerungsfunktionen sein.The interactions mentioned can be, for example, configuration, update, parameterization, input, measurement, switching, monitoring and/or control functions in devices or facilities based on microcontrollers and/or FPGAs.
In einer anderen Weiterbildung der Erfindung kann vorgesehen werden, dass zumindest eines der TOTP-Module als Softwareimplementierung unmittelbar im anfragenden Gerät und/oder beglaubigenden Gerät als realisiert ist. Vorzugsweise ist eine solche Softwareimplementierung im beglaubigenden Gerät realisiert.In another development of the invention, it can be provided that at least one of the TOTP modules is realized as a software implementation directly in the requesting device and/or authenticating device. Such a software implementation is preferably implemented in the authenticating device.
Darüber hinaus ist es möglich, dass zur Realisierung einer 2FA eine Vorab-Authentifizierungsanfrage mit vorgegebenen Zugangsdaten vom anfragenden Gerät an das beglaubigende Gerät gestellt oder dort direkt eingegeben wird und nur bei einer hierbei erfolgreichen Validitätsprüfung eine weitere Authentifizierungsanfrage ermöglicht wird.In addition, it is possible that, in order to implement a 2FA, a preliminary authentication request with specified access data is sent from the requesting device to the authenticating device or is entered directly there and a further authentication request is only made possible if the validity check is successful.
Es liegt auch im Rahmen der vorliegenden Erfindung, dass als Zugangsdaten ein Passwort und/oder ein Nutzername und/oder ein Zertifikat verwendet werden. Dabei können die Zugangsdaten auf einer drahtlos oder drahtgebunden arbeitenden Chipeinheit, insbesondere einer Smartcard oder einem USB-Modul, gespeichert sein.It is also within the scope of the present invention for a password and/or a user name and/or a certificate to be used as access data. The access data can be stored on a wireless or wired chip unit, in particular a smart card or a USB module.
In einer Weiterbildung der Erfindung ist vorgesehen, dass die vorgebbare Information ein Zufallswert ist, der in einer Ausgestaltung aus einer vorgegebenen Liste von Werten ausgewählt werden kann.In a further development of the invention, it is provided that the information that can be specified is a random value which, in one embodiment, can be selected from a specified list of values.
Zudem ist es möglich, dass ein und dasselbe Shared-Secret zur Authentifizierung von mehreren anfragenden Geräten verwendet wird.It is also possible for one and the same shared secret to be used for authentication by multiple requesting devices.
Die Erfindung beansprucht auch unabhängigen Schutz für einen Flammenwächter. Denn ein besonders geeignetes Anwendungsfeld des erfindungsgemäßen Verfahrens ist, dass dieses bei Sensoren, insbesondere bei Flammenwächtern eingesetzt werden kann.The invention also claims independent protection for a flame arrester. Because a particularly suitable field of application of the method according to the invention is that it can be used with sensors, in particular with flame detectors.
Das erfindungsgemäße Verfahren kann auch bei anderen Sensorsystemen vorteilhaft eingesetzt werden, wie z.B. bei Durchflusssensoren, Füllstandsensoren usw..The method according to the invention can also be used advantageously in other sensor systems, such as flow sensors, level sensors, etc.
Eine erfindungsgemäße Vorrichtung zur Durchführung des Verfahrens zeichnet sich wie folgt aus: Es ist eine Microcontroller und/oder FPGA basierende Vorrichtung, wie beispielsweise ein Flammenwächter, zur von einer Systemzeit unabhängigen Authentifizierung von Interaktionen vorgesehen, bei welcher jeweils in einem anfragenden Gerät und in einem beglaubigenden Gerät ein kryptographischer, Hash-Wert, der optional in trunkierter Form vorliegen kann, nach Maßgabe eines von beiden Geräten benutzten, gemeinsamen Shared-Secrets und einem in beiden Geräten in einem nach dem TOTP-Verfahren arbeitenden TOTP-Modul errechenbar ist, wobei den TOTP-Modulen anstelle einer Systemzeit eine vorgebbare Information zur Berechnung des jeweiligen Hash-Wertes zuführbar ist. Dies erfolgt derart, dass die vorgebbare Information vom beglaubigenden Gerät erzeugbar oder bereitstellbar und bei einer Anfrage des anfragenden Gerätes dem anfragenden Gerät übermittelbar ist, wo sie dann dem dortigen TOTP-Modul zur Berechnung eines Hash-Wertes zuführbar und der dann dort errechnete Hash-Wert zu dem beglaubigenden Gerät übertragbar ist, und dass bei einer Übereinstimmung dieses vom beglaubigenden Gerät empfangbaren Hash-Wertes mit einem im beglaubigenden Gerät mit der vorgebbaren Information errechneten Hash-Wertes eine erfolgreiche Authentifizierung durchführbar ist und die Interaktion freigebbar und andernfalls bei einer Nichtübereinstimmung sperrbar ist.A device according to the invention for carrying out the method is characterized as follows: A microcontroller and/or FPGA-based device, such as a flame monitor, is provided for the authentication of interactions independently of a system time, in which in each case in a requesting device and in a certifying A cryptographic hash value device, which can optionally be in truncated form, can be calculated in accordance with a shared secret used by both devices and in both devices in a TOTP module that works according to the TOTP method, with the TOTP - Modules instead of a system time a predetermined information for calculating the respective hash value can be supplied. This is done in such a way that the information that can be specified can be generated or made available by the authenticating device and when there is a request from the requesting device can be transmitted to the requesting device, where it can then be fed to the local TOTP module for calculating a hash value and the hash value calculated there can be transmitted to the authenticating device, and that if this hash value, which can be received from the authenticating device, matches a hash value calculated in the authenticating device with the predefinable information, successful authentication can be carried out and the interaction can be released and otherwise blocked in the event of a mismatch.
Besonders bevorzugt kann eine solche Vorrichtung in einem eingebetteten System ausgebildet sein.Such a device can particularly preferably be embodied in an embedded system.
Die vorliegende Erfindung vermeidet die genannten Probleme bei den Verfahren HOTP, TOTP und OCRA in einfacher Weise dadurch, dass das bekannte TOTP-Verfahren mit seiner offengelegten TOTP-Algorithmik zwar eingesetzt, anstelle der dafür notwendigen Systemzeit jedoch eine vorgebbare Information, insbesondere ein vorgebbarer Zufallswert, Verwendung findet. Es werden somit vorteilhafterweise keine proprietären Algorithmen verwendet.The present invention avoids the problems mentioned in the HOTP, TOTP and OCRA methods in a simple manner in that the known TOTP method with its disclosed TOTP algorithm is used, but instead of the system time required for this, predeterminable information, in particular a predeterminable random value, is used. Thus, advantageously, no proprietary algorithms are used.
In einer bevorzugten Ausführungsform der Erfindung wird ein kommerziell verfügbarer Hardware-Dongle, der z.B. als USB-Stick oder Smartcard oder Ähnliches ausbildet sein kann, mit TOTP-Algorithmus eingesetzt. Der Hardware-Dongle muss dabei ein manuelles Setzen der an sich zu verwendenden Zeit zulassen. Dieser Hardware-Dongle bekommt erfindungsgemäß einen angepassten Übergabewert in Form einer vorgebbaren Information (z.B. Zufallswert) anstatt des Systemzeitstempels.In a preferred embodiment of the invention, a commercially available hardware dongle, which can be embodied, for example, as a USB stick or smart card or the like, is used with the TOTP algorithm. The hardware dongle must allow the time to be used to be set manually. According to the invention, this hardware dongle receives an adapted transfer value in the form of predeterminable information (e.g. random value) instead of the system time stamp.
Embedded Geräte besitzen, wie oben beschrieben, häufig nur eine limitierte Systemleistung und ebenfalls ist häufig kein synchronisierter Systemzeitstempel verfügbar. Das erfindungsgemäße Verfahren dagegen ermöglicht eine Systemzeitstempel-unabhängige Authentifizierung auf einem Endgerät. Dabei kann ein einzelner Hardware-Dongle für die Authentifizierung an mehreren Endgeräten, d.h. beglaubigenden Geräte, verwendet werden.As described above, embedded devices often only have a limited system performance and there is often no synchronized system timestamp available. The method according to the invention, on the other hand, enables authentication on a terminal that is independent of the system time stamp. A single hardware dongle can be used for authentication on multiple end devices, ie authenticating devices.
In Tests konnte die Realisierbarkeit des erfindungsgemäßen Verfahrens bereits nachgewiesen werden. Dabei wurde eine Umsetzung des TOTP-Verfahrens und einem manuellen Setzen der Zeit mit zwei unterschiedlichen TOTP-fähigen Hardware-Dongles von zwei unterschiedlichen Hardwareherstellern geprüft. Als Beispiel sind hier der Hardware-Dongles "Nitrokey Pro 2" (siehe https://shop.nitrokey.com/de DE/shop/product/nk-pro-2-nitrokey-pro-2-3) und der "OnlyKey" (siehe https://onlykey.io/de genannt ). Über deren CLI-Schnittstelle kann durch einen Befehl ein Wert (üblicherweise ein Zeitwert) als Eingabe zur Generierung eines TOTP-Tokens an den TOTP-Generator übergeben werden. Die beiden genannten Hardware-Dongles dienen lediglich als Beispiel. Eine Umsetzung des erfindungsgemäßen Verfahrens ist mit jedem beliebigen Hardware- oder Software-Generator für TOTP-Tokens realisierbar, sofern dort ein manuelles Setzen der Zeit zur Berechnung des TOTP-Tokens möglich ist.The feasibility of the method according to the invention has already been demonstrated in tests. An implementation of the TOTP procedure and a manual setting of the time with two different TOTP-capable hardware dongles from two different hardware manufacturers was tested. As an example, here are the hardware dongles "
Bei einem Nitrokey Pro 2 oder OnlyKey handelt es sich um ein USB-Security Modul zur Verarbeitung spezifischer kryptographischer Aufgaben. Dieses kann unter anderem für die Verwaltung und Verwendung von OTP-Schlüsseln genutzt werden. Auf dem Nitrokey Pro 2 können bis zu 24 OTP-Schlüssel gleichzeitig verwaltet werden. Diese werden in sogenannten Slots gespeichert. Bei der Anfrage eines TOTP-Tokens wird der Slot angegeben. Abhängig von dem gewählten Slot wird der dazugehörige OTP-Schlüssel für die TOTP-Token-Erzeugung verwendet. Dieses TOTP-Token wird dann zurückgegeben.A
Die vorliegende Erfindung wird nachfolgend anhand von Ausführungsbeispielen und Flussdiagrammen näher erläutert. Es zeigen:
Figur 1- einen prinzipiellen Ablauf des erfindungsgemäßen Verfahrens,
Figur 2- ein Blockschaltbild einer Durchflusssensoreinrichtung,
Figur 3- ein beispielhaftes Ablaufdiagramm eines Authentifizierungsverfahrens für einen Durchflusssensor gemäß
Figur 2 , Figur 4- ein Blockschaltbild einer Kransteuerung,
Figur 5- ein beispielhaftes Ablaufdiagramm eines Authentifizierungsverfahrens für eine Kransteuerung gemäß Figur 4, und
Figur 6- den bereits eingangs beschriebenen, prinzipiellen Ablauf eines bekannten OCRA-Authentifizierungsverfahrens.
- figure 1
- a basic sequence of the method according to the invention,
- figure 2
- a block diagram of a flow sensor device,
- figure 3
- an exemplary flow chart of an authentication method for a flow sensor according to FIG
figure 2 , - figure 4
- a block diagram of a crane control,
- figure 5
- an exemplary flow chart of an authentication method for a crane controller according to FIG. 4, and
- figure 6
- the basic process of a known OCRA authentication method already described at the beginning.
Das in
Dabei kann das TOTP-Modul in die Vorrichtung oder das Gerät softwaremäßig implementiert sein oder als Hardware-Dongle in das Gerät oder die Vorrichtung eingesteckt sein.The TOTP module can be implemented in software in the device or device or plugged into the device or device as a hardware dongle.
Das in
Der zeitliche Verlauf des Authentifizierungsverfahrens in Figur 1 stellt sich folgendermaßen dar:
Dabei wird vorausgesetzt, dass ein anfragendes Gerät 10 mit einem beglaubigenden Gerät 30 kommuniziert. Das anfragende Gerät 10 verfügt hierbei über eine Schnittstelle, an die ein sogenannter TOTP-Generator 12 angeschlossen werden kann. Dieser TOTP-Generator 12 kann beispielsweise in einem Hardware-Dongle realisiert sein. Im Allgemeinen ist ein solcher Hardware-Dongle als USB-Stick ausgebildet. Das beglaubigende Gerät 30 weist ebenfalls einen TOTP-Generator 32 auf. Dieser ist vorzugsweise softwaremäßig in das beglaubigende Gerät 30 implementiert. Um ein Authentifizierungsverfahren zwischen dem anfragenden Gerät 10 und dem beglaubigenden Gerät 30 durchzuführen, ist in dem anfragenden Gerät 10 und in dem beglaubigenden Gerät 30 jeweils ein sogenanntes Shared-Secret S abgespeichert. Im anfragenden Gerät 10 ist dieses Shared-Secret S vorzugsweise in dem ansteckbaren TOTP-Generator 12, also vorzugsweise in dem erwähnten Hardware-Dongle, gespeichert. Folgende Verfahrensschritte werden durchgeführt.
- 1a (nur A) - Authentifizierungs-Anfrage des anfragenden Geräts 10 mit Zugangsdaten:
Das anfragende Gerät 10 stellt über einen beliebigen Kommunikationskanal, der drahtgebunden oder drahtlos ausgebildet sein kann, eine Authentifizierungs-Anfrage andas beglaubigende Gerät 30. Ebenfalls ist eine Authentifizierungs-Anfrage via Direkteingabe, z.B. über eine Tastatur oder einen Bildscanner oder Ähnlichemam beglaubigenden Gerät 30 möglich. Die Authentifizierungs-Anfrage beinhaltet Zugangsdaten Z, z.B. aber nicht darauf begrenzt: ein Passwort, Nutzername und Passwort, Zertifikat oder Smart-card usw.. - 1b (nur A) - Prüfung der Zugangsdaten des anfragenden Geräts 10:
Das beglaubigende Gerät 30 prüft die Validität der erhaltenen Zugangsdaten Z. - 1 (nur B) - Authentifizierungs-Anfrage des anfragenden Geräts:
Das anfragende Gerät 10 stellt über einen beliebigen Kommunikationskanal, der ebenfalls drahtgebunden oder drahtlos sein kann, eine Authentifizierungs-Anfrage TOTP andas beglaubigende Gerät 30. Ebenfalls ist eine Authentifizierungs-Anfrage via Direkteingabeam beglaubigenden Gerät 30 möglich. - 2 - Erzeugung der vorgebbaren Information R auf dem beglaubigenden Gerät:
Das beglaubigende Gerät 30 generiert eine vorgebbare Informationen R, z. B. einen Zufallswert, im Wertebereich des TOTP-Verfahrens. Anstatt der Generierung einer vorgebbaren Information R können ebenfalls vordefinierte, andere Informationen, z.B. Zahlenwerte aus einer Liste genutzt werden. Eine Kombination aus Beidem ist ebenso möglich. - 3 - Übertragung der vorgebbaren Information R zum anfragenden Gerät 10:
Die vorgebbare Information R muss, über einen beliebigen Kommunikationskanal andas anfragende Gerät 10 übertragen werden. Dies kann über eine Antwort auf die Authentifizierungs-Anfrage oder mit einer eigenen Anfrage andas anfragende Gerät 10 umgesetzt werden. Ebenso ist eine optische Ausgabe aufdem beglaubigenden Gerät 30 möglich. Diese mussdem anfragenden Gerät 10 durch Eingabe oder Abscannen übergeben werden. - 4 - Anfrage an den TOTP-Generator des anfragenden Gerätes 10:
Das anfragende Gerät 10 stellt eine TOTP-Anfrage mit der vorgebbaren Information R (RTOTP-Anfrage) als fiktiven Zeitstempel an den TOTP-Generator 12. Die Anfrage wird an einen extern durch Einstecken in einen entsprechenden Steckanschluss indas anfragende Gerät 10 angebundenen TOTP-Generator 12, insbesondere einen Hardware-Dongle, weitergegeben. Anstelle eines einsteckbaren Hardware-Dongles kann der TOTP-Algorithmus im anfragenden Gerät 10 auch mittels einer Software-Implementierung realisiert sein. - 5 - Berechnung des R'TOTP
Durchführung der TOTP Berechnung mit der vorgebbaren Information R auf dem TOTP-Generator 12 entsprechend der Anfrage. Diese Berechnung kann von dem Hardware-Dongle oder einer Software-Implementierung umgesetzt werden. - 6 - Antwort des TOTP-Generators 12:
Das anfragende Gerät 10 erhält die R'TOTP-Antwort des TOTP-Generators 12. Das im TOTP-Generator 12 errechnete Ergebnis ist ein Hash-Wert, der als trunkierter Hash-Wert R'TOTP andas anfragende Gerät 10 weitergegeben wird. - 7 - Übertragung der R'TOTP-Antwort zum beglaubigenden Gerät 30:
Die R'TOTP-Antwort muss, über einen beliebigen Kommunikationskanal andas beglaubigende Gerät 30 übertragen werden. Ebenso ist eine direkte Eingabe der R'TOTP-Antwortam beglaubigenden Gerät 30 möglich, sofern keine Verbindung zwischen anfragendem Gerät 10 und beglaubigendem Gerät 30 besteht. - 8 - Berechnung des Vergleichswerts auf dem beglaubigenden Gerät 30:
Für die Durchführung des Vergleichs der empfangenen R'TOTP-Antwort mussdas beglaubigende Gerät 30 selbst ebenfalls eine RTOTP-Antwort basierend auf zuvor erzeugter vorgebbarer Information R berechnen. Die Berechnung des Vergleichswerts kann zu einem beliebigen Zeitpunkt nach Schritt 2 und vor Schritt 9 durchgeführt werden. - 9 - Vergleich der RTOTP-Antworten:
Abschließend mussdas beglaubigende Gerät 30 die empfangene R'TOTP-Antwort mit der selbst berechneten RTOTP-Antwort vergleichen. Nur wenn diese identisch sind, ist die Prüfung der R'TOTP-Antwort erfolgreich. - 10 - Übertragung vom Authentifizierungsstatus:
Das beglaubigende Gerät 30 überträgt den Status des Authentifizierungsvorgangs, ob dieser erfolgreich war oder fehlgeschlagen ist, andas anfragende Gerät 10.- Der Authentifizierungsvorgang ist erfolgreich, wenn die Prüfung der RTOTP-
Antwort aus Schritt 9 erfolgreich war und bei Option A zusätzlich die Prüfung der Validität der Zugangsdaten Z ergeben hat, dass die Zugangsdaten valide sind. War der gesamte Authentifizierungsvorgang erfolgreich, wird die angefragte Interaktion durchgeführt, andernfalls nicht freigegeben und gesperrt.
It is assumed that a requesting
- 1a (A only) - authentication request from the requesting
device 10 with access data:
The requestingdevice 10 sends an authentication request to the notarizingdevice 30 via any communication channel, which can be wired or wireless. There is also an authentication request via direct input, e.g. via a keyboard or an image scanner or the like on the notarizingdevice 30 possible. The authentication request includes access data Z, e.g. but not limited to: a password, username and password, certificate or smart card, etc. - 1b (A only) - Checking the access data of the requesting device 10:
The authenticatingdevice 30 checks the validity of the access data Z received. - 1 (B only) - authentication request from the requesting device:
The requestingdevice 10 sends an authentication request TOTP to the authenticatingdevice 30 via any communication channel, which can also be wired or wireless. An authentication request via direct entry at the authenticatingdevice 30 is also possible. - 2 - Generation of the predeterminable information R on the authenticating device:
The authenticatingdevice 30 generates a predetermined information R, z. B. a random value in the value range of the TOTP procedure. Instead of generating predeterminable information R, other predefined information, for example numerical values from a list, can also be used be used. A combination of both is also possible. - 3 - Transmission of the predeterminable information R to the requesting device 10:
The information R that can be specified must be transmitted to the requestingdevice 10 via any communication channel. This can be implemented via a response to the authentication request or with a separate request to the requestingdevice 10. Optical output on the notarizingdevice 30 is also possible. This must be passed to the requestingdevice 10 by entering or scanning. - 4 - Request to the TOTP generator of the requesting device 10:
The requestingdevice 10 makes a TOTP request with the predefinable information R (RTOTP request) as a fictitious time stamp to theTOTP generator 12. The request is connected to an external TOTP generator by plugging it into a corresponding plug-in connection in the requestingdevice 10 12, in particular a hardware dongle. Instead of a hardware dongle that can be plugged in, the TOTP algorithm can also be implemented in the requestingdevice 10 by means of a software implementation. - 5 - Calculation of the R'TOTP
Implementation of the TOTP calculation with the predeterminable information R on theTOTP generator 12 according to the request. This calculation can be performed by the hardware dongle or a software implementation. - 6 -
TOTP Generator 12 Response:
The requestingdevice 10 receives the R'TOTP response from theTOTP generator 12. The result calculated in theTOTP generator 12 is a hash value which is forwarded to the requestingdevice 10 as a truncated hash value R'TOTP. - 7 - Transmission of the R'TOTP response to the notarizing device 30:
The R'TOTP response must be transmitted to the notarizingdevice 30 over any communication channel. A direct input of the R'TOTP answer on the authenticatingdevice 30 is also possible if there is no connection between the requestingdevice 10 and the authenticatingdevice 30 . - 8 - Calculation of the comparison value on the notarizing device 30:
In order to carry out the comparison of the received R'TOTP response, the authenticatingdevice 30 itself must also calculate an RTOTP response based on predeterminable information R generated beforehand. The comparison value can be calculated at any time afterstep 2 and beforestep 9. - 9 - Comparison of RTOTP responses:
Finally, the notarizingdevice 30 must compare the received R'TOTP response with the self-calculated RTOTP response. The check of the R'TOTP response is only successful if these are identical. - 10 - Transmission of authentication status:
- The authenticating
device 30 transmits the status of the authentication process, whether it was successful or failed, to the requestingdevice 10. - The authentication process is successful if the check of the RTOTP response from
step 9 was successful and, in the case of option A, the check of the validity of the access data Z has also shown that the access data are valid. If the entire authentication process was successful, the requested interaction is carried out, otherwise not released and blocked.
- The authenticating
Anhand der Darstellung der prinzipiellen Wirkungsweise des erfindungsgemäßen Authentifizierungsverfahrens werden dessen Vorteile klar. Es muss lediglich beim anfragenden Gerät 10 und bei dem beglaubigendem Gerät 30 ein gemeinsames Shared-Secret S bekannt, vorzugsweise gespeichert, sein. Dieses Shared-Secret S ist dabei vorzugsweise nicht auslesbar abgelegt. Des Weiteren wird eine vorgebbare Information R, z.B. ein generierter Zufallswert oder ein Zufallswert aus einer Liste, beim anfragenden Gerät 10 eingegeben und mit einem herkömmlichen TOTP-Generator 12 in einen trunkierten Hash-Wert R'TOTP umgerechnet. Das beglaubigende Gerät 30, das die vorgebbare Information voraussetzungsgemäß ebenfalls kennt, errechnet seinerseits mit dem dort vorhandenen TOTP-Modul 32 einen eigenen trunkierten Hash-Wert RTOTP. Bei Übereinstimmung der beiden trunkierten Hash-Werte ist die Authentifizierung über die TOTP-Module 12, 32 erfolgreich.The advantages of the authentication method according to the invention become clear on the basis of the representation of the principle mode of operation of the authentication method. Only the requesting
Anhand der
Bei solchen Sensoren ist es zwingend erforderlich, dass nur geschultes und berechtigtes Personal Zugriff auf diese Sensoren haben. Dies gilt insbesondere für die Wartung, Überwachung, Parametrisierung, Konfiguration, das Updaten und das Steuern dieser Sensoren. Das erfindungsgemäße Verfahren ist hier bestens geeignet.With such sensors, it is imperative that only trained and authorized personnel have access to these sensors. This applies in particular to the maintenance, monitoring, parameterization, configuration, updating and control of these sensors. The method according to the invention is ideally suited here.
Um z.B. eine korrekte Abrechnung der durchgeleiteten Flüssigkeitsmenge durchführen zu können, muss der Durchflusssensor korrekt konfiguriert und kalibriert sein. Eine manipulierte Kalibrierung bzw. Durchflussmessung kann erheblichen wirtschaftlichen Schaden verursachen. Hierfür ist es zwingend notwendig, den Zugriff auf den Durchflusssensor abzusichern und nur dazu berechtigten Personen zu erlauben.For example, in order to be able to correctly bill the amount of liquid passed through, the flow sensor must be correctly configured and calibrated. A manipulated calibration or flow measurement can cause considerable economic damage. To do this, it is imperative to secure access to the flow sensor and only allow authorized persons.
Das Blockschaltbild einer Durchflusssensoreinrichtung zeigt
Im genannten Beispiel erfolgt keine Anmeldung des Anwenders oder der Bedienperson am Terminal 52, sondern eine Anmeldung des Anwenders über das erfindungsgemäße Verfahren direkt an dem Durchflusssensor 50. Dabei stellt der Durchflusssensor 50 selbst im Sinne der vorliegenden Erfindung das beglaubigende Gerät und das Terminal 52 das anfragende Gerät dar. Der Servicetechniker hat Zugriff auf das Terminal 52 und steckt einen für den jeweiligen Durchflusssensor 50 konfigurierten Hardware-Dongle 54 in das Terminal 52 ein. Das Terminal 52 baut nun, vorzugsweise nach einer vorherigen Abfrage einer PIN des Anwenders für den Hardware-Dongle 54 eine Verbindung zum Durchflusssensor 50 auf. Nur wenn das zuvor gespeicherte, gemeinsame Shared-Secret S auf beiden Seiten bekannt ist und somit der RTOTP-Token auf beiden Seiten identisch berechnet wird, kann eine Anmeldung des Anwenders aus Terminal 52 und somit eine Konfiguration bzw. Kalibrierung des Durchflusssensors 50 erfolgen.In the example mentioned, the user or the operator does not log on to the terminal 52, but the user logs on directly to the
Die Berechnung des RTOTP-Tokens erfolgt dabei auf Seiten des Terminals 52 im dort eingesteckten Hardware-Dongle 54. Entsprechend ist also keine feste Zuweisung eines bestimmten Terminals 52 an einen Durchflusssensor 50 notwendig. Auch ist ein Abhandenkommen bzw. Diebstahl des Terminals 52 kein kritischer Vorfall, da dabei keinerlei Authentifizierungsdaten zur Anmeldung am Durchflusssensor 50 entwendet werden können und somit keine unerlaubte Konfiguration des Durchflusssensors 50 allein mit dem Terminal 52 möglich ist.The RTOTP token is calculated on the part of the terminal 52 in the
Über eine sequenzielle Prüfung der weiteren Verfügbarkeit des Hardware-Dongles 54 am Sensorterminal 52 kann zudem gewährleistet werden, dass eine Konfiguration/Kalibrierung nur möglich ist, wenn der Hardware-Dongle 54 eingesteckt ist. Wird der Hardware-Dongle 54 entfernt, erfolgt eine Abmeldung des Anwenders vom Durchflusssensor 50.A sequential check of the further availability of the
Legt der Anwender beispielsweise eine Pause ein, nimmt er den Hardware-Dongle 54 mit. Eine unberechtigte Konfiguration ist somit auch bei ungeschütztem Zugriff auf das Terminal 52 nicht möglich. Allerdings ist ein unbefugter Zugriff zum Hardware-Dongle 54 zu vermeiden. Somit wird ein physikalischer und physischer Schlüssel in Form des Hardware-Dongles 54 zur Anmeldung an einer digitalen Schnittstelle genutzt.If the user takes a break, for example, he takes the
Der Funktionsablauf im Einzelnen stellt sich anhand von
In
Es wird angenommen, dass der Anwender 56 Daten aus dem Durchflusssensor 50 auslesen will. Hierfür muss sich der Anwender 56 legitimieren, dass er für dieses Auslesen auch berechtigt ist. Hierfür dient das bereits erfindungsgemäße Authentifizierungsverfahren.It is assumed that the
In einem ersten Schritt 300 steckt der Anwender 56 seinen Hardware-Dongle 54 in das Sensorterminal 52 ein. Beim Einstecken dieses Hardware-Dongle 54 wird in einem darauffolgenden Schritt 302 ein Konfigurationsbefehl an das Sensorterminal 52 gesandt. Das Sensorterminal 52 wartet im Schritt 304 auf einen solchen Konfigurationsbefehl. Sobald dieser Konfigurationsbefehl eingegangen ist, sendet im Schritt 306 das Sensorterminal 52 eine Authentisierungsanfrage an den Durchflusssensor 50. Im Schritt 308 wird im Durchflusssensor 50 eine RTOTP-Anfrage erzeugt und das Sensorterminal 52 angefragt. Im Sensorterminal 52 wird auf diese Anfrage im Schritt 310 gewartet. Bei der RTOTP-Anfrage vom Durchflusssensor 50 zum Sensorterminal 52 wird eine im Durchflusssensor 50 bereitgestellte vorgebbare Information R, die beispielsweise als Zufallswert generiert oder aus einer zuvor abgelegten Liste von Werten abgeleitet sein kann, dem Sensorterminal 52 mitgeteilt. Im Schritt 310 erfährt also das Sensorterminal 52 die vorgebbare Information R für die spätere Berechnung eines zugehörenden Hash-Wertes bzw. trunkierten Hash-Wertes. Im darauffolgenden Schritt 312 stellt das Sensorterminal 52 eine RTOTP-Anfrage an den Hardware-Dongle 54, bei dem als fiktiver Zeitstempel die vorgebbare Information R dem TOTP-Generator im Hardware-Dongle 54 zur Verfügung gestellt wird.In a
Um das Authentifizierungsverfahren noch sicherer zu gestalten, wird gemäß
Das Sensorterminal 52 stellt im Schritt 328 fest, ob zuvor im Schritt 326 eine Fehlermeldung oder eine R'TOTP-Antwort eingegangen ist. Ist eine Fehlermeldung eingegangen, erfolgt in einem darauffolgenden Schritt 330 eine Fehlermeldung und ein Konfigurieren beziehungsweise ein Auslesen des Durchflusssensors 50 wird blockiert.The
Ist dagegen im Schritt 328 erkannt worden, dass keine Fehlermeldung vorliegt, sondern eine R'TOTP-Antwort eingegangen ist, so wird in einem darauffolgenden Schritt 332 diese R'TOTP-Antwort an den Durchflusssensor 50 gesendet. Im Durchflusssensor 50 hat zuvor in einem internen Rechenschritt 309 eine interne Berechnung eines eigenen trunkierten Hash-Wertes RTOTP stattgefunden. Hierfür wird ein herkömmlicher TOTP-Generator im Durchflusssensor 50 eingesetzt, dem anstelle eines Zeitstempels genau diejenige vorgebbare Information R zur Verfügung gestellt wird, die zuvor im Schritt 308 auch an das Sensorterminal 52 gesandt wurde. Im TOTP-Generator des Durchflusssensors 50 wird hieraus ein trunkierter Hash-Wert RTOTP berechnet. Im Schritt 334 wird auf die R'TOTP-Antwort des Sensorterminals 52 gewartet. Sobald eine solche R'TOTP-Antwort vom Sensorterminal 52 beim Durchflusssensor 50 eingeht, wird dort im Schritt 336 die R'TOTP-Antwort des Sensorterminals 53 mit dem berechneten RTOTP-Wert gemäß Schritt 309 im Durchflusssensor 50 verglichen. Dieser Vergleich findet im Schritt 336 statt. Anschließend erfolgt im Schritt 338 eine Entscheidung, ob der Vergleich der beiden Werte korrekt war oder nicht. Ergibt der Vergleich in Schritt 338, dass die beiden Werte nicht korrekt sind, wird im Schritt 340 ein Fehler an das Sensorterminal 52 gesandt. Im Schritt 342 wartet hierfür das Sensorterminal 52 auf eine Antwort vom Durchflusssensor 50. Ist dagegen der Vergleich positiv, das heißt, dass die Werte R'TOTP, berechnet im Sensorterminal 52, und RTOTP, berechnet im Durchflusssensor 50, identisch sind, so wird im Schritt 344 an das Sensorterminal 52 eine Bestätigung der Authentifizierung, das heißt eine korrekte Authentifizierung, mitgeteilt.If, on the other hand, it has been recognized in
Im Sensorterminal 52 wird abhängig von dem Vergleichsergebnis im Schritt 338 entschieden, ob die Authentifizierung erfolgreich war oder nicht. Dies erfolgt im Schritt 346. War die Authentifizierung der trunkierten Hash-Werte R'TOTP und RTOTP nicht erfolgreich, wird ein Fehler angezeigt und auf den Schritt 330 gesprungen. War die Authentifizierung der trunkierten Hash-Werte jedoch erfolgreich, wird im Schritt 348 ein Konfigurationsbefehl an den Durchflusssensor 50 gesandt, der im Schritt 350 hierauf wartet. Im Schritt 352 wird im Durchflusssensor 50 der Konfigurationsbefehl ausgelöst und gegebenenfalls signalisiert, dass eine positive Authentifizierung erfolgt ist. Ist dies der Fall, kann der Anwender 56 den Durchflusssensor 50 auslesen, konfigurieren, mit einem neuen Update versehen, parametrieren und so weiter.In the
Wenngleich im Zusammenhang mit
In einem zweiten Ausführungsbeispiel, das in den
Folgende Bedingungen sollen in diesem Ausführungsbeispiel gelten. Die Steuerung der Kraneinheit 70 erfolgt per Funk. Es darf nur geschultes und berechtigtes Personal zum Aufbewahrungsort einer Fernbedienung der Kransteuerung 72 Zugang haben. Nur dieses berechtigte Personal hat auch Zugriff auf den zur Kraneinheit 70 gehörenden Hardware-Dongle 74. Voraussetzungsgemäß ist, dass in der Kraneinheit 70 und im Hardware-Dongle 74 ein gemeinsames Shared-Secret S gespeichert ist.The following conditions should apply in this exemplary embodiment. The
Üblicherweise erfolgt eine Anmeldung eines Bedieners immer mit einer Interaktion zwischen Mensch und Maschine. Dies ist häufig fehleranfällig oder wird vom Menschen unsicher umgesetzt. So erfolgt zum Beispiel keine Abmeldung am System, wenn eine Bedienung für eine kurze Zeit unterbrochen wird. Ähnlich wie an einem Windows-PC, an dem man beim Verlassen des Arbeitsplatzes eine Bildschirmsperre aktiviert, kann durch eine einfach zu verwendende Authentifizierungsmaßnahme die Cyber Security im Betrieb einer Kraneinheit, die ein Embedded-Umfeld darstellt, deutlich erhöht werden.Typically, an operator always logs on with an interaction between man and machine. This is often error-prone or is implemented unsafely by humans. For example, there is no logout from the system if an operation is interrupted for a short time. Similar to on a Windows PC, on which a screen lock is activated when leaving the workplace, the cyber security in the operation of a crane unit, which represents an embedded environment, can be significantly increased by an easy-to-use authentication measure.
Auch kann das Risiko eines funkbasierten Authentifizierungsangriffs auf die Steuerung der Kraneinheit 70 durch einen zweiten Authentifizierungsfaktor stark reduziert werden, da keine statischen Authentifizierungsdaten verwendet werden.The risk of a radio-based authentication attack on the control of the
Im vorliegenden Bespiel erfolgt keine Anmeldung des Kranführers 76 an der Fernbedienung der Kransteuerung 70. Vielmehr authentifiziert sich die Fernbedienung über das erfindungsgemäße Verfahren an der Kraneinheit 70. Hierfür hat der Kranführer 76 Zugriff auf die Fernbedienung und steckt einen für die jeweilige Kraneinheit 70 konfigurierten Hardware-Dongle 74 in die Fernbedienung der Kransteuerung 72 ein. Die Fernbedienung baut über das erfindungsgemäße Verfahren eine Verbindung zur Kraneinheit 70 auf. Nur wenn das Shared-Secret S auf beiden Seiten bekannt ist und somit die RTOTP-Antwort auf beiden Seiten identisch berechnet wird, kann eine Anmeldung der Fernbedienung der Kransteuerung 70 und somit eine Steuerung der Kraneinheit erfolgen. Die Berechnung der RTOTP-Antwort erfolgt dabei auf Seiten der Fernbedienung im Hardware-Dongle 74, das in die Fernbedienung eingesteckt werden muss. Entsprechend ist keine feste Zuweisung einer bestimmten Fernbedienung an eine Kraneinheit 70 notwendig. Auch ist ein Abhandenkommen bzw. Diebstahl der Fernbedienung kein kritischer Vorfall mehr, da keinerlei Authentifizierungsdaten zur Anmeldung an einer Kraneinheit 70 in der Fernbedienung vorhanden sind und somit keine böswillige Steuerung einer Kraneinheit mehr möglich ist. Allerdings muss auf den Hardware-Dongle 74 geachtet bzw. dessen Verlust vermieden werden.In the present example, the
Über eine sequenzielle Prüfung der weiteren Verfügbarkeit des Hardware-Dongles 74 an der Fernbedienung kann zudem gewährleistet werden, dass eine Kransteuerung nur möglich ist, wenn der Hardware-Dongle 74 in die Fernbedienung gesteckt ist. Wird der Hardware-Dongle 74 entfernt, erfolgt vorzugsweise automatisiert eine Abmeldung der Fernsteuerung von der Kraneinheit 70. Legt der Kranführer 76 beispielsweise eine Pause ein, nimmt er den Hardware-Dongle 74 mit. Eine unberechtigte Bedienung der Kraneinheit 70 ist somit, auch bei ungeschütztem Zugriff auf die Fernbedienung der Kransteuerung 72, nicht mehr möglich.A sequential check of the continued availability of the
In
Der Kranführer 76 steckt im Schritt 700 den Hardware-Dongle der Kransteuerung 72 an die Kransteuerung 72, z. B. die dafür vorgesehene Fernbedienung, ein. Darauf sendet im Schritt 702, der Kranführer 76 einen Steuerbefehl an die Kransteuerung 72. Im Schritt 704 wartet die Kransteuerung 72 auf einen solchen Steuerbefehl. Im darauffolgenden Schritt 706 sendet die Kransteuerung 72 eine Authentifizierungsanfrage an die Kraneinheit 70. Dort wird im Schritt 708 eine sogenannte RTOTP-Anfrage erzeugt, indem eine vorgegebene Information R, die beispielsweise zufällig generiert oder aus einer Liste von Werten entnommen werden kann, bereitgestellt wird. Diese vorgebbare Information R wird in Form einer RTOTP-Anfrage an die Kransteuerung 72 zurückübertragen, welche hierauf im Schritt 710 wartet. Im Schritt 712 wird in der Kransteuerung 72 aus dieser Anfrage und der übertragenen vorgebbaren Information R eine Anfrage erzeugt, welche als RTOTP-Anfrage an den Hardware-Dongle 74 gesandt wird. Im Schritt 714 wird im Hardware-Dongle 74 dann unter Verwendung der vorgebbaren Information R im dortigen TOTP-Generator eine R'TOTP-Antwort erzeugt und an die Kransteuerung 72 gesandt, die im Schritt 760 auf eine solche Antwort wartet. Im darauffolgenden Schritt 718 sendet die Kransteuerung 72 diese R'TOTP-Antwort, das heißt einen trunkierten Hash-Wert, an die Kraneinheit 70. Die Kraneinheit 70 wartet im Schritt 720 auf eine solche Antwort von der Kransteuerung 72. Zuvor ist in der Kraneinheit 70 in dem dortigen TOTP-Generator unter Verwendung der erwähnten vorgebbaren Information R im Schritt 709 eine RTOTP-Antwort errechnet worden. Dabei handelt es sich wiederum um einen trunkierten Hash-Wert. Im Schritt 722 erfolgt ein Vergleich des Wertes RTOTP der Kraneinheit 70 und des empfangenen Wertes R'TOTP der Kransteuerung 72 beziehungsweise des dort angeschlossenen Hardware-Dongles 74. Im Schritt 724 wird das Ergebnis des Vergleichs aus Schritt 722 ermittelt. Ergibt der Vergleich kein übereinstimmendes Ergebnis, wird im Schritt 726 ein Fehler an die Kransteuerung 52 gesendet, die im Schritt 728 auf eine Antwort der Kraneinheit 70 wartet. Zugleich wird im Schritt 730 auf ein Ergebnis der Authentifizierung gewartet und im Schritt 732 ein Fehler angezeigt, der signalisiert, dass der Vergleich zwischen den trunkierten Hash-Werten R'TOTP und RTOTP ein negatives Ergebnis brachte. Eine Steuerung der Kraneinheit 70 ist fehlgeschlagen und ist blockiert. Eine entsprechende Anzeige kann im Schritt 732 erfolgen.In
In
Ergibt dagegen der Vergleich im Schritt 722 eine Übereinstimmung, so wird bei dem Vergleich im Schritt 724 ein positives Ergebnis signalisiert. Im Schritt 740 wird eine Bestätigung gesendet, dass der Vergleich von R'TOTP und RTOTP ein übereinstimmendes Ergebnis brachte. Dieses positive Ergebnis im Schritt 740 wird einerseits der Kransteuerung 72 mitgeteilt, welche im Schritt 730 eine erfolgreiche Authentifizierung erkennt und im Schritt 742 einen Steuerbefehl an die Kraneinheit 70 sendet. Im Schritt 744 wartet die Kraneinheit 70 auf einen solchen Steuerbefehl. Im Schritt 746 führt die Kraneinheit 70 dann den vom Anwender 76 gewünschten Steuerbefehl aus.If, on the other hand, the comparison in
Im Gegensatz zum Ausführungsbeispiel von
- 11
- OCRA-GeneratorOCRA generator
- 22
- OCRA-GeneratorOCRA generator
- 1010
- anfragendes Gerätrequesting device
- 1212
- TOTP-GeneratorTOTP generator
- 3030
- beglaubigendes Gerätnotarizing device
- 3232
- TOTP-GeneratorTOTP generator
- 5050
- Durchflusssensorflow sensor
- 5252
- Terminalterminal
- 5454
- Hardware-Donglehardware dongle
- 5656
- Anwenderuser
- 7070
- Kraneinheitcrane unit
- 7272
- Kransteuerungcrane control
- 7474
- Hardware-Donglehardware dongle
- 7676
- Bediener, Kranführeroperator, crane driver
- SS
- Shared-Secretshared secret
- ZZ
- Zugangsdatenaccess data
- RR
- Vorgebbare Informationen, ZufallswertSpecifiable information, random value
- OCRAOCRA
-
OCRA-Antwort im beglaubigenden Gerät 30OCRA response in notarizing
device 30 - O'CRAO'CRA
-
O'CRA-Antwrot im anfragenden Gerät 10O'CRA response in requesting
device 10 - RTOTPRTOTP
-
Hash-Wert im beglaubigenden Gerät 30,hash value in the notarizing
device 30, - R'TOTPR'TOTP
-
Hash-Wert im anfragenden Gerät 10,hash value in the requesting
device 10, - ( 1a )-(1a)-
- ( 10 ) Schritte( 10 ) steps
- 300-352300-352
- Schrittesteps
- 700-746700-746
- Schrittesteps
Claims (14)
- Method for a system time independent authentication of interactions in microcontroller-based and/or FPGA-based devices or systems, in particular embedded systems and/or flame monitors, in which, in each one of a requesting device (10) and an authenticating device (30), a cryptographic hash-value (R'TOTP, RTOTP) is calculated in accordance with one of mutually shared secrets (S) used by both devices (10, 30) and in a TOTP module (12, 32) operating in accordance with a TOTP method in both devices (10, 30), wherein, instead of a system time, a specifiable information (R) is provided to the TOTP modules (12, 32) for calculating the respective hash value (R'TOTP, RTOTP), such that the specifiable information (R) is generated or provided by the authenticating device (30) and, upon request of the requesting device (10) or by means of a direct input into the authenticating device (30), is transferred to the requesting device (10), where it is then provided to the TOTP module operating there for calculating a hash value and the hash value (R'TOTP) calculated there is transmitted to the authenticating device (30), and in that, if this hash value (R'TOTP) received from the authenticating device (30) matches the hash value (RTOTP) calculated in the authenticating device (30) using the specified information (R), a successful authentication is carried out and the interaction is allowed which, if there is no match, will otherwise be blocked.
- Method in accordance with claim 1,
characterized in that a hardware dongle, which can be externally plugged into the requesting device (10), is employed as the TOTP module (12) assigned to the receiving device (10). - Method in accordance with claim 1 or 2,
characterized in that the hash value (R'TOTP, RTOTP) is provided as a truncated hash value. - Method in accordance with claim 1,
characterized in that at least one of the TOTP modules (12, 32) is realized as a software implementation directly in the requesting device (10) and/or the authenticating device (30). - Method in accordance with claim 1,
characterized in that, for the realization of a 2FA, a preliminary authentication request having specified access data (Z) is sent from the requesting device (10) to the authenticating device (30), or is directly input into it, allowing, in the case of a successful validity test, an authentication request. - Method in accordance with claim 5,
characterized in that a password and/or a user name and/or a certificate is (are) used as access data. - Method in accordance with claim 5,
characterized in that the access data (Z) are stored on a chip unit which operates wirelessly or wire-based, in particular, on a smart card or a USB module. - Method in accordance with any of claims 1 to 7,
characterized in that the specifiable information (R) is a random value which is generated by the authenticating device (30) or is selected from a specified list of values. - Method in accordance with any of claims 1 to 7,
characterized in that one and the same shared secret (S) is used by numerous requesting devices (10) for authentication. - Method in accordance with any of claims 1 to 9,
characterized in that interactions in devices or systems based on microcontrollers and/or FPGAs such as, for example, flame monitors, are configuration, update, parameterization, measurement, service, switching, monitoring and/or control functions in industrial installations. - Method in accordance with any of claims 1 to 10,
characterized in that the method is carried out in a microcontroller and/or an FPGA of a flame monitor. - Microcontroller and/or FPGA based device for a system time independent authentication of interactions in microcontroller-based and/or FPGA-based devices or systems, in particular embedded systems and/or flame monitors, in which, in each one of a requesting device (10) and an authenticating device (30), a cryptographic hash-value (R'TOTP, RTOTP) can be calculated in accordance with one of mutually shared secrets (S) used by both devices (10, 30) and in a TOTP module (12, 32) operating in accordance with a TOTP method in both devices (10, 30), wherein, instead of a system time, a specifiable information (R) can be provided to the TOTP modules (12, 32) for calculating the respective hash value (R'TOTP, RTOTP), such that the specifiable information (R) can be generated or provided by the authenticating device (30) and, upon request of the requesting device (10) or by means of a direct input into the authenticating device (30), can be transferred to the requesting device (10), where it then can be provided to the TOTP module operating there for calculating a hash value and the hash value (R'TOTP) calculated there can be transmitted to the authenticating device (30), and in that, if this hash value (R'TOTP) received from the authenticating device (30) matches the hash value (RTOTP) calculated in the authenticating device (30) using the specified information (R), a successful authentication can be carried out and the interaction can be allowed which, if there is no match, can otherwise be blocked.
- Device in accordance with claim 12,
characterized in that the device is an embedded system. - Flame monitor
characterized by a device in accordance with either of claims 12 or 13, in particular characterized in that it comprises a microcontroller and/or FPGA based system in accordance with either of claims 12 or 13 for a system time independent authentication of interactions.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102021112041.1A DE102021112041A1 (en) | 2021-05-07 | 2021-05-07 | Method for authentication of interactions independent of a system time and device for carrying out this method and flame monitor with a dear-like device |
Publications (2)
Publication Number | Publication Date |
---|---|
EP4087184A1 EP4087184A1 (en) | 2022-11-09 |
EP4087184B1 true EP4087184B1 (en) | 2023-05-24 |
Family
ID=81580193
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP22171481.9A Active EP4087184B1 (en) | 2021-05-07 | 2022-05-03 | Method for authenticating interactions independent of a system time, and device for carrying out this method and flame monitor comprising such a device |
Country Status (5)
Country | Link |
---|---|
US (1) | US12093361B2 (en) |
EP (1) | EP4087184B1 (en) |
JP (1) | JP2022173055A (en) |
CN (1) | CN115314212A (en) |
DE (1) | DE102021112041A1 (en) |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7930554B2 (en) * | 2007-05-31 | 2011-04-19 | Vasco Data Security,Inc. | Remote authentication and transaction signatures |
US9053304B2 (en) * | 2012-07-13 | 2015-06-09 | Securekey Technologies Inc. | Methods and systems for using derived credentials to authenticate a device across multiple platforms |
US10270748B2 (en) * | 2013-03-22 | 2019-04-23 | Nok Nok Labs, Inc. | Advanced authentication techniques and applications |
US9305298B2 (en) * | 2013-03-22 | 2016-04-05 | Nok Nok Labs, Inc. | System and method for location-based authentication |
US10574692B2 (en) * | 2016-05-30 | 2020-02-25 | Christopher Nathan Tyrwhitt Drake | Mutual authentication security system with detection and mitigation of active man-in-the-middle browser attacks, phishing, and malware and other security improvements |
KR102017758B1 (en) * | 2016-07-11 | 2019-10-21 | 한국전자통신연구원 | Health device, gateway device and method for securing protocol using the same |
US10769635B2 (en) * | 2016-08-05 | 2020-09-08 | Nok Nok Labs, Inc. | Authentication techniques including speech and/or lip movement analysis |
US10091195B2 (en) * | 2016-12-31 | 2018-10-02 | Nok Nok Labs, Inc. | System and method for bootstrapping a user binding |
US10136322B2 (en) * | 2017-04-21 | 2018-11-20 | Kirio Inc. | Anonymous authentication system |
US11831409B2 (en) * | 2018-01-12 | 2023-11-28 | Nok Nok Labs, Inc. | System and method for binding verifiable claims |
US20190289017A1 (en) * | 2018-03-14 | 2019-09-19 | Ca, Inc. | Time and location based authentication credentials |
US10819706B2 (en) * | 2018-07-09 | 2020-10-27 | Igt | System, apparatus and method for facilitating remote gaming communications in a venue |
US11190511B2 (en) * | 2019-01-29 | 2021-11-30 | Salesforce.Com, Inc. | Generating authentication information independent of user input |
-
2021
- 2021-05-07 DE DE102021112041.1A patent/DE102021112041A1/en active Pending
-
2022
- 2022-02-02 JP JP2022014837A patent/JP2022173055A/en active Pending
- 2022-03-25 US US17/704,108 patent/US12093361B2/en active Active
- 2022-04-29 CN CN202210466657.1A patent/CN115314212A/en active Pending
- 2022-05-03 EP EP22171481.9A patent/EP4087184B1/en active Active
Also Published As
Publication number | Publication date |
---|---|
DE102021112041A1 (en) | 2022-11-10 |
CN115314212A (en) | 2022-11-08 |
US20220358200A1 (en) | 2022-11-10 |
JP2022173055A (en) | 2022-11-17 |
EP4087184A1 (en) | 2022-11-09 |
US12093361B2 (en) | 2024-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE60223129T2 (en) | METHOD AND SYSTEM FOR SECURING A COMPUTER NETWORK AND PERSONAL IDENTIFICATION DEVICE USED FOR CONTROLLING NETWORK COMPONENT ACCESS | |
EP2856437B1 (en) | Method and device for control of a lock mechanism using a mobile terminal | |
DE69312328T2 (en) | SYSTEM AND METHOD FOR CHANGING THE KEY OR PASSWORD IN A COMMUNICATION NETWORK WITH KEY DISTRIBUTION | |
EP2859705B1 (en) | Authorising a user by means of a portable communications terminal | |
DE102014112611A1 (en) | Method for authenticating at least one first unit to at least one second unit | |
EP3582033B1 (en) | Method for securely operating a field device | |
EP3327679A1 (en) | Method for access control of a group of persons using multiple readers and multiple tokens | |
EP3422628B1 (en) | Method, safety device and safety system | |
DE102014101495A1 (en) | Method of access to a physically secure rack and computer network infrastructure | |
WO2018157960A1 (en) | Method and system for activating a user access to a server coupled to an embedded system | |
EP3935808B1 (en) | Cryptographically protected provision of a digital certificate | |
DE102017111939A1 (en) | Method for secure communication with a field device of process measuring technology and a corresponding field measuring device of process measuring technology | |
EP3465513B1 (en) | User authentication by means of an id token | |
EP2548358B1 (en) | Method for dynamically authorizing a mobile communication device | |
EP3312692B1 (en) | Operating device for a measuring device | |
WO2014131557A1 (en) | Generating a key using biometric data, and a puf | |
EP2996299B1 (en) | Method and assembly for authorising an action on a self-service system | |
EP3647887A1 (en) | Method and apparatus for the transmission of an access token for access to a field device used in the processing industry | |
EP4087184B1 (en) | Method for authenticating interactions independent of a system time, and device for carrying out this method and flame monitor comprising such a device | |
DE102016120306A1 (en) | Method and system for activating at least one operating / parameterizing function of a field device of automation technology | |
WO2023217645A1 (en) | Secured access system | |
EP3734478A1 (en) | Method for allocating certificates, management system, use of same, technical system, system component and use of identity provider | |
DE102009058516A1 (en) | Apparatus and method for granting access rights to a maintenance functionality | |
DE102018102608A1 (en) | Method for user management of a field device | |
DE102015221372A1 (en) | Method for activating a configuration mode of a device |
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 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
17P | Request for examination filed |
Effective date: 20220930 |
|
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 |
|
GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: GRANT OF PATENT IS INTENDED |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: G06F 21/62 20130101ALI20221212BHEP Ipc: G06F 21/55 20130101ALI20221212BHEP Ipc: G06F 21/31 20130101ALI20221212BHEP Ipc: G06F 21/60 20130101ALI20221212BHEP Ipc: G06F 21/32 20130101ALI20221212BHEP Ipc: H04L 9/40 20220101AFI20221212BHEP |
|
INTG | Intention to grant announced |
Effective date: 20230103 |
|
GRAS | Grant fee paid |
Free format text: ORIGINAL CODE: EPIDOSNIGR3 |
|
GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE PATENT HAS BEEN GRANTED |
|
AK | Designated contracting states |
Kind code of ref document: B1 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 |
|
REG | Reference to a national code |
Ref country code: GB Ref legal event code: FG4D Free format text: NOT ENGLISH |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: EP |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R096 Ref document number: 502022000018 Country of ref document: DE |
|
REG | Reference to a national code |
Ref country code: AT Ref legal event code: REF Ref document number: 1570240 Country of ref document: AT Kind code of ref document: T Effective date: 20230615 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R082 Ref document number: 502022000018 Country of ref document: DE Representative=s name: WESTPHAL, MUSSGNUG & PARTNER PATENTANWAELTE MI, DE |
|
REG | Reference to a national code |
Ref country code: IE Ref legal event code: FG4D Free format text: LANGUAGE OF EP DOCUMENT: GERMAN |
|
REG | Reference to a national code |
Ref country code: LT Ref legal event code: MG9D |
|
REG | Reference to a national code |
Ref country code: NL Ref legal event code: MP Effective date: 20230524 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20230524 Ref country code: PT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20230925 Ref country code: NO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20230824 Ref country code: NL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20230524 Ref country code: ES Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20230524 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: RS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20230524 Ref country code: PL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20230524 Ref country code: LV Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20230524 Ref country code: LT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20230524 Ref country code: IS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20230924 Ref country code: HR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20230524 Ref country code: GR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20230825 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: FI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20230524 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20230524 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SM Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20230524 Ref country code: SK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20230524 Ref country code: RO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20230524 Ref country code: EE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20230524 Ref country code: DK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20230524 Ref country code: CZ Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20230524 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R097 Ref document number: 502022000018 Country of ref document: DE |
|
PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
26N | No opposition filed |
Effective date: 20240227 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20230524 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20230524 Ref country code: IT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20230524 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: IE Payment date: 20240517 Year of fee payment: 3 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: DE Payment date: 20240625 Year of fee payment: 3 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: FR Payment date: 20240522 Year of fee payment: 3 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: BE Payment date: 20240521 Year of fee payment: 3 |