Intraoral scanning device and communication method of intraoral scanning device

By implementing security measures such as authentication message verification and key selection in intra-orient scanning devices, the security challenges existing in the device in wireless communication are solved, and protection against unauthorized access and data theft is achieved.

CN119836801APending Publication Date: 2025-04-153SHAPE AS
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202380047756.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2022-06-17
Filing Date
2023-06-16
Publication Date
2025-04-15

AI Technical Summary

Technical Problem

Existing in-port scanning devices have security challenges in wireless communications and are vulnerable to unauthorized access, replay attacks, battery exhaustion attacks, and eavesdropping.

Method used

By implementing appropriate security measures in the intra-orbit scanning device, including the processing unit configured to receive and verify authentication messages, selecting the appropriate intra-orbit scanning device key, verifying client device data, and termination of the session if necessary.

Benefits of technology

It effectively reduces the risk of third-party accessing intra-port scanning devices, prevents unauthorized modifications and data theft, and improves the security and robustness of the device.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119836801A_ABST
    Figure CN119836801A_ABST
Patent Text Reader

Abstract

In accordance with an embodiment, a method and a handheld intraoral scanning device are disclosed. The intraoral scanning device may include a processing unit configured to process intraoral scanning data of a patient and provide 2D image data and / or 3D image data; a wireless interface configured to transmit the 2D image data and / or the 3D image data; and a memory. The processing unit may be configured to: receive a link request for a session via the wireless interface; obtaining a session identifier; a link response is transmitted via the wireless interface that includes an intra-oral scanning device identifier and the session identifier. Further, the processing unit may be configured to: receive, via the wireless interface, an authentication message comprising an authentication key identifier and client device data; selecting an intraoral scan device key from a plurality of intraoral scan device keys in the memory unit based on the authentication key identifier; validating the client device data based on the selected intra-oral scanning device key; and terminating the session if the verification fails.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of intraoral scanning devices, and in particular to intraoral scanning device security. An intraoral scanning device and method for secure intraoral scanning device communication are disclosed. Background Art

[0002] The functionality of intraoral scanning devices has become increasingly advanced. Wireless communications between intraoral scanning devices and external devices, such as clinic computers, scanning computers, dental software on computers, and custom computers have been developed. Typically, the wireless communication interface of intraoral scanning devices uses an interface based on open standards. However, this presents many challenges in terms of security. Intraoral scanning devices can assume that any incoming data is legitimate and can allow memory to be written or changed by unauthorized parties. Any such attack could result in malfunction of the intraoral scanning device, or a battery drain attack.

[0003] However, the intraoral scanning device is a small device with strict constraints in terms of computing power, memory space, etc. Therefore, the device communicating with the intraoral scanning device cannot use the off-the-shelf security algorithms and protocols, otherwise there is a risk of, for example, draining the battery of the intraoral scanning device or reducing the functionality of the intraoral scanning device, rendering the intraoral scanning almost useless.

[0004] Existing intraoral scanning devices are part of a service infrastructure that includes intraoral scanning devices, scanning software for specific services, and communications between service providers. Services may, for example, include manufacturing braces, retainers, crowns, implants, braces, night guards, and the like. In order to improve the availability of such infrastructure to dentists, minimal interaction between the infrastructure and the dentist is required. One way to achieve this is by applying wireless communication between the intraoral scanning device and an external computer that is connected to a server that can forward intraoral scan data to a service provider. The patient's scan data may be characterized as personal information, and therefore, any risk of a third party stealing or destroying at least the scan data needs to be minimized. The scan data is characterized as personal information, and in some cases, other types of personal information are associated with the scan data (such as age, gender, location address, personal security number, etc.). In this example, the security of wireless communications in the service infrastructure needs to be improved. Summary of the invention

[0005] One aspect of the present disclosure is to reduce the risk of a third party accessing any part of an intra-oral scanning device.There is a need for an intra-oral scanning device that is able to prevent unauthorized modifications to the intra-oral scanning device and its operation.

[0006]

[0013] It is an additional aspect of the present disclosure to provide intra-oral scanning devices and methods that seek to mitigate, alleviate, or eliminate the possibility of third parties stealing and / or destroying patient personal information.

[0007] Yet another aspect of the present disclosure is to improve the security of intra-oral scanning devices. That is, the intra-oral scanning devices disclosed herein are robust to security threats, vulnerabilities, and attacks by implementing appropriate security measures and countermeasures (such as security mechanisms) to prevent threats and attacks. The present disclosure relates to an intra-oral scanning device that is robust to replay attacks, unauthorized access, battery depletion attacks, eavesdropping, and man-in-the-middle attacks.

[0008] Still another aspect of the present disclosure is to provide an intra-oral scanning device with the ability to protect unauthorized parties from accessing it and protect its communications from modification attacks and replay attacks while minimizing the computational overhead and power consumption of the intra-oral scanning device. In addition, the present disclosure provides a scalable security architecture.

[0009] According to this aspect, an intraoral scanning device is disclosed, which is configured to acquire intraoral scanning data from a three-dimensional dental object during a scanning session. The intraoral scanning device may include: a processing unit configured to process the patient's intraoral scanning data and provide 2D image data and / or 3D image data; a wireless interface configured to transmit the 2D image data and / or 3D image data; and a memory. The processing unit may be configured to: receive a link request for a session via the wireless interface; obtain a session identifier; and transmit a link response including the intraoral scanning device identifier and the session identifier via the wireless interface. In addition, the processing unit may be configured to: receive an authentication message including an authentication key identifier and client device data via the wireless interface; select an intraoral scanning device key from a plurality of intraoral scanning device keys in the memory unit based on the authentication key identifier; verify the client device data based on the selected intraoral scanning device key; and terminate the session if the verification fails.

[0010] According to this aspect, a method for configuring an intra-oral scanning device, the intra-oral scanning device may include: a processing unit configured to process intra-oral scan data of a patient and provide 2D image data and / or 3D image data; a memory unit; and a wireless interface configured to transmit 2D images and / or 3D images. The method may include: receiving a link request for a session via the wireless interface; obtaining a session identifier; transmitting a link response including the intra-oral scanning device identifier and the session identifier via the wireless interface; receiving an authentication message including an authentication key identifier and client device data via the wireless interface; selecting an intra-oral scanning device key from a plurality of intra-oral scanning device keys based on the authentication key identifier; verifying the client device data based on the selected intra-oral scanning device key; and terminating the session if the verification fails.

[0011] According to this aspect, an intraoral scanning device for acquiring intraoral scan data from a three-dimensional dental object during a scanning session is disclosed. The intraoral scanning device may include: a processing unit configured to process the intraoral scan data of a patient and provide 2D image data and / or 3D image data; a wireless interface configured to transmit the 2D image data and / or 3D image data; and a memory. The processing unit may be configured to: receive a connection request for a session via the wireless interface; obtain a session identifier; and transmit a connection response including the intraoral scanning device identifier and the session identifier via the wireless interface. In addition, the processing unit may be configured to: receive an authentication message including an authentication key identifier and client device data via the wireless interface; select an intraoral scanning device key from a plurality of intraoral scanning device keys in the memory unit based on the authentication key identifier; verify the client device data based on the selected intraoral scanning device key; and terminate the session if the verification fails.

[0012] An intraoral scanning device is a handheld scanning device used to scan the inside of a patient's oral cavity. The intraoral scanning device differs from other types of dental scanning devices in that the intraoral scanning device is a handheld scanning device that can be easily operated by a user with one hand and has no wired connection to any external device during scanning of the inside of a patient's oral cavity. Therefore, the only attack that the intraoral scanning device may suffer is via a wireless interface.

[0013] The disclosed method and intraoral scanning device provide secure configuration of the intraoral scanning device, such as secure access to the memory of the intraoral scanning device. An advantage of the present disclosure is that the intraoral scanning device can only be configured or updated by an authorized party. Therefore, the disclosed intraoral device has the advantage of detecting and preventing any modification by an unauthorized party. The intraoral scanning device disclosed herein is advantageously protected from attacks (such as spoofing attacks, man-in-the-middle attacks, and / or replay attacks).

[0014] The intraoral scanning device is a key element to provide the required level of security for wireless communications in a service infrastructure that contains at least the intraoral scanning device and the scanning computer or dental software on the computer. It is not possible for a third party to attack the wireless communications, since such a person would need to have the intraoral scanning device physically in their hands. It would not even be sufficient to be able to access the scanning computer or the dental software.

[0015] The methods disclosed herein provide for secure configuration and / or updating of intraoral scanning devices.

[0016] The present disclosure provides improved security for intraoral scanning devices. Security includes assessing threats, vulnerabilities, and attacks, and developing appropriate security measures and countermeasures to protect against threats and attacks.

[0017] The intraoral scanning device includes a processing unit. The processing unit may be configured to process intraoral scan data of the patient and provide 2D image data and / or 3D image data. The 2D image data and / or 3D image data may contain information about the patient's oral anatomical structure, such as teeth, gums, bone levels, and / or information about diagnostic indicators, such as caries, bone loss, gingivitis, gum recession, periodontitis, bone loss, cracks, and bite.

[0018] The 2D image data and / or the 3D image data may be image data configured to be visualized on a display in 2D or 3D, respectively.

[0019] As used herein, the term "certificate" refers to a data structure that enables verification of its source and content (such as verification of the legitimacy and / or authenticity of its source and content). A certificate can be configured to provide content associated with a certificate holder by the issuer of the certificate. The certificate includes a digital signature that enables the recipient of the certificate to verify or authenticate the certificate content and source. The certificate may include one or more identifiers and / or key materials (such as one or more cryptographic keys (e.g., intraoral scanning device keys)) to enable secure communication in an intraoral scanning device system. Therefore, the certificate allows authentication, non-repudiation and / or integrity protection of the source and content. The certificate may also include a validity period, one or more algorithm parameters and / or an issuer. Certificates may include digital certificates, public key certificates, attribute certificates and / or authorization certificates.

[0020] As used herein, the term "key" refers to a cryptographic key (i.e., a piece of data (e.g., a string, a parameter) that determines the functional output of a cryptographic algorithm). For example, during encryption, a key allows plaintext to be converted to ciphertext, and vice versa during decryption. The key can also be used to verify digital signatures and / or message authentication codes MAC. When the same key is used for both encryption and decryption, the key is typically referred to as a symmetric key. In asymmetric keying or public key keying, the key material is a key pair, typically referred to as a private key-public key pair (including a public key and a private key). In an asymmetric or public key cryptosystem (such as the Rivest Shamir Adelman (RSA) cryptosystem and the elliptic curve cryptosystem (ECC)), the public key is used for encryption and / or signature verification, while the private key is used for decryption and / or signature generation. The intraoral scanning device key can be a key material that allows one or more symmetric keys to be derived (such as a session key and / or a certificate key for intraoral scanning device communication). For example, during manufacturing, the intraoral scanning device key can be stored in a memory unit of the intraoral scanning device. The intraoral scanning device key may include key material for deriving a symmetric key. The intra-oral scanning device key includes, for example, an Advanced Encryption Standard (AES) key (such as an AES-128 bit key).

[0021] As used herein, the term "identifier" refers to a piece of data that is used to identify (such as for classification) and / or uniquely identify. An identifier may be in the form of a word, number, letter, symbol, list, array, or any combination thereof. For example, an identifier that is a number may be in the form of an integer (such as an unsigned integer uint (such as an array of unsigned integers) having a length of, for example, 8 bits, 16 bits, 32 bits, etc.).

[0022] The term "client device" as used herein refers to a device capable of communicating with an intraoral scanning device. A client device may refer to a computing device that acts as a client. A client device may include a custom device, a repeater, a tablet computer, a personal computer, an application running on a personal computer or tablet computer, and / or a USB dongle plugged into a personal computer.

[0023] The present disclosure relates to an intraoral scanning device. The intraoral scanning device may include: a processing unit configured to process intraoral scanning data of a patient and provide 2D image data and / or 3D image data; a memory unit; and a wireless interface. The memory unit may include a removable data memory unit and a non-removable data memory unit (including but not limited to a read-only memory (ROM), a random access memory (RAM), etc.). The memory unit may have an intraoral scanning device certificate stored thereon. The memory unit may store the intraoral scanning device certificate at a memory address of the memory unit and / or in a memory cell of the memory unit (such as in a designated memory cell and / or at a designated address). The wireless interface may include a wireless transceiver, which is configured, for example, for wireless communication in a frequency range from 2.4 GHz to 2.5 GHz, 2.4 GHz to 5 GHz, approximately 2.45 GHz, or approximately 5 GHz. In one or more exemplary intraoral scanning devices, the wireless interface is configured to communicate (such as wireless communication) with a client device or an intraoral scanning device, wherein the client device or the intraoral scanning device respectively includes a wireless transceiver configured to receive and / or transmit data. The processing unit may be configured to receive a link request for a session via the wireless interface; and obtain a session identifier, for example, in response to the link request. The wireless interface may be configured to receive a link request for a session from a client device. The processing unit may be configured to obtain a session identifier, such as by generating a random number or a pseudo-random number. The processing unit may be configured to store the session identifier in a memory unit. The memory unit may be configured to store the session identifier at a memory address of the memory unit and / or in a memory cell of the memory unit (such as in a specified memory cell and / or at a specified address). The link request may include an authentication key identifier and / or an authentication type identifier to permit the intraoral scanning device to perform the link request and the authentication of the client device sending the link request at this early stage. This may provide a certain degree of access control.

[0024] The processing unit may be configured to transmit a link response including an intra-oral scanning device identifier and a session identifier via the wireless interface. The processing unit may be configured to generate a link response by including the session identifier and the intra-oral scanning device identifier in the link response. The intra-oral scanning device identifier may refer to a unique identifier of the intra-oral scanning device. The intra-oral scanning device identifier may be included in an intra-oral scanning device certificate. The wireless interface may be configured to transmit the link response to, for example, a client device.

[0025] The processing unit may be configured to receive an authentication message including an authentication key identifier and client device data via the wireless interface. For example, the wireless interface may be configured to receive an authentication message from a client device. For example, the intraoral scanning device receives an authentication message from a client device in order to establish a communication session. The client device data may include a client device certificate (encrypted or unencrypted), customization data, intraoral scanning device operating parameters and / or firmware data. For example, the authentication message may include an authentication key identifier in plain text. The authentication key identifier indicates an intraoral scanning device key, i.e., an intraoral scanning device key stored in a memory unit of the intraoral scanning device, for example as part of an intraoral scanning device certificate.

[0026] The intraoral scanning device operating parameters may correspond to settings of the handheld intraoral scanning device (settings involving image sensors, light projectors, wireless interfaces, scanning sequences of the handheld intraoral scanning device, etc.). The scanning sequence corresponds to scanning of the patient's jaw with the handheld intraoral scanning device, and the handheld intraoral scanning device is configured in real time to determine and transmit 3D image data based on intraoral scanning data acquired by the image sensor of the handheld intraoral scanning device during the scanning sequence.

[0027] Furthermore, the intraoral scanning device operating parameters relate to power management settings, configuration of a user interface of the intraoral scanning device and / or settings of an optical unit of the intraoral scanning device.

[0028] The handheld intraoral scanning device may include a user interface, which may include at least one touch sensor, at least one touch button, at least one light emitting diode, a tactile sensor and / or an accelerometer. The handheld intraoral scanning device may include a motion sensor configured to sense the movement of the handheld intraoral scanning device. The handheld intraoral scanning device is configured to wirelessly communicate with an external device connected to a display. The cursor on the display can move around based on the motion signal provided to the external device by the motion sensor. The user can navigate the cursor on the display by moving the handheld intraoral scanning device. The session data may include setting updates related to the motion sensor of the handheld intraoral scanning device, and the customization data may include settings for customizing the user interface of the handheld intraoral scanning device, which may involve graphic settings of a graphical user interface on the display. For example, when the handheld intraoral scanning device is connected to an external device, the handheld intraoral scanning device forwards the customization grouping to the external device via a wireless interface, and then the external device is configured to change the graphic settings based on the customization grouping. The customization grouping can be updated by the customization data provided by the session data.

[0029] The firmware data may include updates to the handheld intraoral scanning device that improve the functionality and features of the device.

[0030] The processing unit may be configured to select an intra-oral scanning device key from a plurality of intra-oral scanning device keys in the memory unit based on the authentication key identifier and optionally other identifiers. When the authentication key identifier is acceptable to the intra-oral scanning device based on the intra-oral scanning device key identifier stored by the intra-oral scanning device, the processing unit may be configured to select the intra-oral scanning device key indicated by the authentication key identifier and use the selected intra-oral scanning device key as a key material for protecting the session. The processing unit may be configured to select the intra-oral scanning device key from a plurality of intra-oral scanning device keys in the memory unit based on the authentication key identifier and the authentication type identifier.

[0031] The authentication type identifier may be received by the intra-oral scanning device in plain text and / or as a client device type identifier in a client device certificate (encrypted or decrypted). For example, the processing unit may be configured to select the authentication key identifier and the intra-oral scanning device key indicated by the authentication type identifier.

[0032] The processing unit may be configured to verify the client device data based on the selected intra-oral scanning device key; and if the verification fails, terminate the session. Verifying the client device data may be based on the intra-oral scanning device certificate or at least a portion thereof. Verifying the client device data based on the selected intra-oral scanning device key may include verifying the integrity of the client device data based on the selected intra-oral scanning device key (such as verifying a MAC and / or digital signature included in the client device data). Verifying the client device data based on the selected intra-oral scanning device key may include decrypting the client device data (e.g., the client device certificate) using the selected intra-oral scanning device key (as a key material for deriving a decryption key or as a decryption key) when the encrypted client device data is received. Verifying the client device data based on the selected intra-oral scanning device key may include verifying the client device data (e.g., the decrypted client device certificate) by comparing the received client device data with data stored in the memory unit. The client device data may include a client device certificate (such as an encrypted client device certificate), an authentication key identifier, and / or an authentication type identifier. The client device may be assigned a client device certificate. A client device certificate refers to a certificate generated by, for example, a device that manufactures the client device and assigned to the client device.

[0033] The client device certificate may include a certificate type identifier. The certificate type identifier may indicate a certificate type from a variety of certificate types (such as an intraoral scanning device series certificate type, an intraoral scanning device certificate type, a firmware certificate type, a research and development certificate type, a client device certificate type). The intraoral scanning device may use the certificate type identifier to identify what type of certificate it receives, stores and / or retrieves. The client device certificate may include a version identifier indicating a data format version of the certificate. The intraoral scanning device may be configured to use the certificate type identifier and / or version identifier to determine what type of data the certificate includes and what type of data is included in a field of the certificate. For example, the intraoral scanning device determines what field of the certificate includes a digital signature and / or which public key is needed to verify the digital signature based on the certificate type identifier and / or version identifier. It is conceivable that there is a one-to-one mapping between a certificate type identifier and a public-private key pair.

[0034] The client device certificate may include a signing device identifier. A signing device identifier refers to a unique identifier that identifies a device (such as a manufacturing device, e.g., an integrated circuit card, a smart card, a hardware security module) that has signed the client device certificate. The signing device identifier may, for example, include a media access control, MAC, address and / or serial number of the signing device. The signing device identifier optionally allows, for example, an intra-oral scanning device to determine whether the signing device is blacklisted, and thereby reject certificates signed by the blacklisted signing device.

[0035] The client device certificate may include one or more hardware identifiers (such as a first hardware identifier and / or a second hardware identifier). The hardware identifier may identify a piece of hardware included in the client device (such as a radio chip included in the client device or a digital signal processor of the client device). The hardware identifier may be stored in a register of the piece of hardware included in the intraoral scanning device during the manufacture of the hardware. The hardware identifier may include a serial number, a media access control, a MAC, an address, a chip identifier, or any combination thereof. The client device certificate may include a client device type identifier. The client device type identifier may indicate the type to which the client device belongs. The client device may be attributed to a client device type corresponding to a model, class, or type of the client device (such as a customized type (e.g., a computer product model, class, or type configured for a customized intraoral scanning device, a USB dongle product model, class, or type configured for a customized intraoral scanning device)).

[0036] The client device certificate may include a client device identifier. The client device identifier refers to an identifier that identifies the client device. The client device identifier may include, for example, a media access control, MAC, an address of the client device, and / or a serial number of the client device.

[0037] The client device certificate may include a client device key identifier. The client device key identifier may indicate a client device key used as key material for protecting communications with external parties (such as communications with an intra-oral scanning device). In one or more exemplary client device certificates, the client device certificate includes a Bluetooth address or an IP address of the client device.

[0038] The client device certificate includes a digital signature. The digital signature enables proof or verification of the authenticity of the intraoral scanning device certificate (such as verifying the legitimacy of the signer). The digital signature is optionally generated by a manufacturing device using a client device customized private key. The intraoral scanning device can be configured to verify the digital signature of the client device certificate when receiving a (encrypted or unencrypted) client device certificate including a digital signature (i.e., receiving an authentication message including an encrypted client device certificate, and obtaining a decrypted version of the client device certificate). The digital signature can be verified by the intraoral scanning device using the corresponding client device customized public key. If the digital signature is not successfully verified using the so-called public key, the intraoral scanning device can ignore the client device certificate and / or terminate normal operation. This can provide the advantage that the intraoral scanning device rejects client device certificates that have been tampered with or received from an unauthenticated party. Therefore, communication with the intraoral scanning device can be robust against counterfeiting, modification and spoofing attacks.

[0039] The authentication message may include an authentication type identifier. The selection of an intraoral scanning device key from a plurality of intraoral scanning device keys may be based on the authentication type identifier. The authentication type identifier may indicate a client device type identifier and / or a certificate type identifier (e.g., an (encrypted) client device certificate). The client device may be attributed to a client device type corresponding to a model, category, or type of the client device (such as a customized type (e.g., a computer product model, category, or type configured for a customized intraoral scanning device, a USB dongle product model, category, or type configured for a customized intraoral scanning device)). The client device type identifier may refer to an identifier indicating the client device type. The client device type identifier may uniquely identify the client device type. The client device type identifier may identify the type to which the client device belongs. The client device type identifier may be included in a client device certificate. The intraoral scanning device may be configured to select an intraoral scanning device key corresponding to the authentication type identifier and / or the authentication key identifier.

[0040] Customizing the intraoral scanning device means that the customized portion of the memory may be in read and / or write mode. Customizing the intraoral scanning device means that the firmware portion of the memory is write protected. The customized portion of the memory may include setting data (such as power management settings, configuration of a user interface of the intraoral scanning device and / or settings of an optical unit of the intraoral scanning device).

[0041] The optical unit may include one or more light projectors, one or more optical components, and one or more image sensors.

[0042] The user interface of the intraoral scanning device may include at least one touch sensor, at least one touch button, at least one light emitting diode, a tactile sensor and / or an accelerometer.

[0043] The client device data may include customization data including setting data (such as power management settings, configuration of the user interface of the intraoral scanning device, and / or settings of the optical unit of the intraoral scanning device). The client device data may include improved feature updates, new feature updates related to the operating software system, FPGA or other electronic / digital hardware of the intraoral scanning device.

[0044] The client device data may include an encrypted client device certificate; and the processing unit may be configured to generate a certificate key based on the selected intra-oral scan device key and / or session identifier. Verifying the client device data may include decrypting the encrypted client device certificate with the certificate key to obtain a decrypted version of the encrypted client device certificate. The encrypted client device certificate may be generated by the client device using an encryption algorithm and the certificate key.

[0045] The intraoral scanning device may be configured to decrypt the encrypted client device certificate using a certificate key, a public secret, and / or an intraoral scanning device key. The certificate key may be based on a public secret and / or a certificate value. The intraoral scanning device may be configured to obtain and / or generate a public secret based on an intraoral scanning device key, such as a selected intraoral scanning device key. For example, in order to generate a public secret based on the intraoral scanning device key, the intraoral scanning device may retrieve the intraoral scanning device key from a memory unit and / or an intraoral scanning device certificate from the memory unit, the intraoral scanning device certificate including the intraoral scanning device key to be used to derive the public secret. The intraoral scanning device may be configured to store the public secret in the memory unit so as to retrieve the public secret from the memory unit, for example, when needed.

[0046] An intraoral scanning device configured to receive client device data or link requests can be scheduled for a specific time of the day when the intraoral scanning device is not used. The schedule can be determined by the processing unit based on the historical usage time of the intraoral scanning device and a machine learning model. The machine learning model receives a timestamp from a clock in the intraoral scanning device and inputs information about when the intraoral scanning device is used in a scanning session. The machine learning model contains a training data set that contains the historical usage time of the intraoral scanning device in the scanning session. Based on the machine learning model and the timestamp defining the time of the day, the processing unit will know when to be configured to receive client device data. The advantage of this scheduling is that valid authentication mode requests will not interfere with the dentist's work using the intraoral scanning device. In addition, when placed in a customized mode, the intraoral scanning device can be programmed to perform time-consuming updates within (one or more) specific time periods. For example, updates that last for more than 30 minutes will be automatically scheduled to be performed within a time period of more than 30 minutes in which the intraoral scanning device is not used (such as outside of working hours or during a dentist / clinic break).

[0047] The processing unit may be configured to place the intra-oral scanning device in the requested mode if authentication of the mode request is successful and if the timestamp is within the time period. The timestamp is generated by a clock of the intra-oral scanning device and received by the processing unit.

[0048] The processing unit may include a machine learning model including a training data set including historical data relating to when the intra-oral scanning device was used in a scanning session, and wherein the machine learning model receives a timestamp from a clock in the intra-oral scanning device and inputs information about when the intra-oral scanning device was used in a scanning session, and the processing unit may then be configured to receive a link request or client device data based on an output of the machine learning model. The output of the machine learning model is a trigger for the processing unit to know when it is in a state to receive link requests and client device data.

[0049] The intra-oral scanning device may be configured to generate a common secret based on the session identifier using the processing unit and store the common secret in the memory unit. For example, the intra-oral scanning device may generate a common secret based on the intra-oral scanning device key (e.g., the selected intra-oral scanning device key) and the session identifier. The intra-oral scanning device may generate the common secret CS, for example, as follows:

[0050] CS=hash(HD_KEY,S_ID),

[0051] Where hash is a hash function, HD_KEY is a (selected) intra-oral scanning device key and S_ID is a session identifier. The session identifier may be generated by the intra-oral scanning device upon receiving a link request. The session identifier may include a random number or a pseudo-random number of a defined length. The public secret may be used as a certificate key in one or more exemplary intra-oral scanning devices.

[0052] The certificate key may be generated based on the public secret, for example by performing a hash function on the public secret and / or the certificate value. The intra-oral scanning device may then generate the certificate key, for example as follows:

[0053] C_KEY=hash(CS,C_VAL),

[0054] Where hash is a hash function, CS is a public secret and C_VAL is a certificate value. The certificate value can be a predefined value or a string (such as "certificate").

[0055] In one or more exemplary intra-oral scanning devices, a certificate key may be optionally generated by performing a hash function on an intra-oral scanning device key and a session identifier. The intra-oral scanning device may use the certificate key generated by the intra-oral scanning device to decrypt the encrypted client device certificate (part of the client device data) and obtain a decrypted version of the client device certificate. The intra-oral scanning device may verify the contents of the decrypted version of the client device certificate.

[0056] In one or more exemplary intra-oral scanning devices, verifying the client device data includes determining whether the authentication key identifier matches a client device key identifier of the client device certificate, and if a mismatch is determined, then verification fails.

[0057] The intra-oral scanning device may be configured to verify that the authentication key identifier matches a corresponding client device key identifier included in the client device certificate. The intra-oral scanning device may be configured to verify that the value of the authentication key identifier is equal to the value of the client device key identifier included in the client device certificate. For example, the intra-oral scanning device may be configured to verify that the authentication key identifier matches the corresponding client device key identifier included in a decrypted version of the client device certificate. In one or more exemplary intra-oral scanning devices, verifying the client device data includes determining whether a client device type identifier of the client device certificate is valid, and if the client device type identifier of the client device certificate is invalid, the verification fails. For example, the intra-oral scanning device may be configured to verify that the authentication type identifier matches the corresponding client device type identifier included in the decrypted version of the client device certificate.

[0058] In one or more exemplary intra-oral scanning devices, determining whether a client device type identifier of a client device certificate is valid includes determining whether the client device type identifier is blacklisted, wherein if the client device type identifier is blacklisted (e.g., appears on a list of blacklisted client device types), the client device type is invalid. In one or more exemplary intra-oral scanning devices, determining whether a client device type identifier of a client device certificate is valid includes determining whether the client device type identifier is allowed, wherein if the client device type identifier is allowed (e.g., appears on a list of allowed client device types), the client device type is valid. For example, the client device type identifier of a client device may be valid if the authentication type identifier matches a corresponding client device type identifier included in a decrypted version of the client device certificate.

[0059] In one or more exemplary intraoral scanning devices, verifying the client device data includes verifying the digital signature of the client device certificate, and if the digital signature is not verified, the verification fails. For example, the client device data includes a digital signature attached to the client device data to protect the integrity of the client device data. Verifying the digital signature includes, for example, calculating a comparison result based on the digital signature and the corresponding client device public key and comparing the comparison result with the received client device data / client device certificate. The corresponding client device public key can be retrieved by the intraoral scanning device from a memory unit, a remote data storage unit, and / or a server device. When the digitally signed client device public key power is the same as the received client device data, the digital signature can be verified as valid, or the verification is successful.

[0060] In one or more exemplary intraoral scanning devices, the client device certificate includes a signature device identifier and / or a client device identifier. The client device identifier refers to an identifier that identifies the client device. The client device identifier may, for example, include a media access control, a MAC, an address of the client device, and / or a serial number of the client device. The intraoral scanning device may be configured to verify the client device data by determining whether the signature device identifier and / or the client device identifier are valid. For example, the intraoral scanning device may be configured to determine whether the signature device identifier is valid by verifying that the signature device identifier is not blacklisted. For example, the intraoral scanning device may be configured to determine whether the client device identifier is valid by verifying that the client device identifier is not blacklisted. The client device identifier allows, for example, the intraoral scanning device to identify the client device among multiple client devices. If the signature device identifier and / or the client device identifier are invalid, the verification fails. For example, if the intraoral scanning device determines that the signature device identifier and / or the client device identifier are blacklisted, the signature device identifier and / or the client device identifier are invalid and the verification fails.

[0061] In one or more exemplary intraoral scanning devices, the processing unit may be configured to receive additional authentication messages. The additional authentication message may include client device data and / or an authentication device identifier. The authentication device identifier may refer to an identifier that enables authentication of the client device (such as a client device identifier included in the authentication message). For example, the authentication device identifier includes a serial number, a media access control, a MAC, an address, or any combination thereof. The intraoral scanning device may be configured to verify the authentication message and authenticate the client device that sent the authentication message. The processing unit may be configured to obtain a public secret from a memory unit based on the authentication device identifier. The memory unit may have a client device identifier associated with a public secret stored thereon. The processing unit may then be configured to retrieve the corresponding public secret based on the authentication device identifier. For example, a public secret has been generated and stored in an initial round of authentication of a returned client device. Therefore, once the client device is authenticated, the processing unit can retrieve the corresponding public secret. This provides faster subsequent authentication and avoids having to regenerate a public secret for calculating an additional certificate key, and thereby saves corresponding power consumption. The processing unit may be configured to generate an additional certificate key from the public secret; and verify the client device data based on the additional certificate key. For example, the processing unit may generate an additional certificate key by calculating a hash value based on a public secret and a certificate value. As described above, the processing unit may be configured to verify the client device data based on the additional certificate key by verifying the integrity of the client device data (such as verifying the MAC and / or digital signature of the client device data). The processing unit is configured to verify the client device data based on the additional certificate key by decrypting the client device data using the additional certificate key (as a decryption key) when receiving the encrypted client device data. The processing unit is configured to verify the client device data by verifying the content of the client device data. The processing unit may be configured to verify the client device data based on the additional certificate key by comparing the client device data with the data stored in the memory unit.

[0062] In one or more exemplary intraoral scanning devices, the processing unit may be configured to generate an offline session key based on a public secret and a session identifier, and the processing unit may be configured to communicate with a client device using the offline session key. The offline session key may be used to protect offline communications between the intraoral scanning device and the client device. Offline communications refer to communications that do not involve any other network devices (e.g., server devices). Generating the offline session key may include generating the offline key based on the public secret (e.g., performing a hash function of the public secret and the offline value), and calculating the offline session key based on the offline key and the session identifier (e.g., performing a hash function of the offline key and the session identifier). The offline session key is used by the intraoral scanning device and the client device to protect (e.g., encrypt) intraoral scanning device data transmitted between the intraoral scanning device and the client device.

[0063] In one or more exemplary intraoral scanning devices, the authentication message includes an authentication token identifier, and the processing unit may be configured to store the authentication token identifier in a memory unit and link the authentication token identifier with a public secret. The authentication token identifier may indicate that token-based authentication is enabled at the intraoral scanning device, i.e., when the intraoral scanning device receives the authentication token identifier from the authenticated client device, the intraoral scanning device may enable token-based authentication in future communications with the same client by storing, for example, an indicator such as a flag associated with the public secret and the client device. For example, the intraoral scanning device receiving the authentication token identifier may be configured to instruct the processing unit to enable token-based authentication by storing and / or linking the token identifier with a public secret generated for the same client device (such as by storing and / or linking the token identifier with the public secret and the client device identifier of the same client device in, for example, a table). The token identifier and token-based authentication may be used for intraoral scanning device management, such as grouping intraoral scanning devices within a dental clinic, and permitting further customization with minimal or no user physical interaction / intervention, as well as potentially simpler and faster client device authentication. The client device securely accesses a data store in which the token identifier is securely stored, for example, in a first session, and retrieves credentials and key material in a subsequent session to perform token-based authentication. In this way, for example, any client device in a dental clinic can perform updates of an intraoral scanning device in a secure manner using token-based authentication.

[0064] In one or more exemplary intraoral scanning devices, the processing unit may be configured to receive a further authentication message, the further authentication message including client device data, an authentication type identifier, an authentication key identifier, and / or an authentication session token identifier. The further authentication message may include an authentication device identifier. The processing unit may be configured to find a public secret of a client device type identifier and / or a client device identifier linked to a client device that sent the further authentication message in a memory unit based on locating a stored client device type identifier corresponding to the authentication type identifier and / or locating a stored client device identifier corresponding to the authentication device identifier. The processing unit may be configured to: obtain a public secret based on the authentication type identifier; generate a token key based on the public secret; and generate a session token identifier based on the token key and the session identifier. The processing unit may have generated a public secret in an earlier session with the client device to, for example, establish a certificate key and may have stored the public secret and linked the public secret to the client device type identifier and / or the client device identifier. The processing unit may then be configured to obtain a public secret based on an authentication type identifier and / or authentication client identifier corresponding to the stored client device type identifier and / or client device identifier. The processing unit may be configured to generate a token key by performing a hash function on the public secret and a token value (such as a predefined arbitrary string or a predefined arbitrary value). The processing unit may be configured to generate a session token identifier based on the token key and the session identifier by generating a session identifier and performing a hash function on the token key and the session identifier. The processing unit may be configured to verify the authentication session token identifier based on the session token identifier. The processing unit may be configured to verify the authentication session token identifier by comparing the authentication session token identifier with the generated session token identifier. For example, if the processing unit determines that the authentication session token identifier matches the generated session token identifier, the verification is successful, and the processing unit may proceed without physical intervention by the user and continue to verify the client device data provided in further authentication messages. The client device data may include a client device certificate. The intraoral scanning device may verify the client device certificate (and / or check against a blacklist) to allow any customization or update. A verified authentication token identifier may, for example, be used to indicate to the intra-oral scanning device that the client device holds a previous shared token key and is therefore allowed to precisely customize the intra-oral scanning device without physical user intervention of the intra-oral scanning device.

[0065] In one or more exemplary intraoral scanning devices, the processing unit may be configured to generate a session key based on a session identifier and an intraoral scanning device key, and the processing unit may be configured to receive and authenticate session data based on the session key. Generating the session key based on the session identifier and the intraoral scanning device key may include calculating the session key by generating a public secret based on the intraoral scanning device key and the session identifier, and optionally generating a hash value of the public secret and the session value, the generated hash value corresponding to the session key. For example, the processing unit may be configured to authenticate session data based on the session key by verifying a MAC generated with the session key and / or by decrypting the session data with the session key. The present disclosure relates to a method for operating an intraoral scanning device (such as a method for controlling the communication of an intraoral scanning device, such as a method for enabling secure intraoral scanning device communication), the intraoral scanning device comprising a processing unit configured to process intraoral scanning data of a patient and provide 2D image data and / or 3D image data, a memory unit, and a wireless interface. The method includes receiving a link request for a session via a wireless interface. The link request may include an authentication key identifier and / or an authentication type identifier to permit the intra-oral scanning device to perform the link request and the authentication of the client device sending the link request at this early stage. This can provide a certain degree of access control. The method includes, for example, obtaining a session identifier with an intra-oral scanning device. Obtaining the session identifier may include generating a session identifier such as by generating a random number or a pseudo-random number. For example, the processing unit 4 generates a random number or a pseudo-random number of a predetermined length (e.g., 16 bytes, 32 bytes, 64 bytes, etc.) for use as a session identifier. Obtaining the session identifier may include retrieving the session identifier from a memory unit. The method may include storing the session identifier in the memory unit. For example, storing the session identifier in the memory unit includes storing the session identifier at a memory address of the memory unit, and / or in a memory cell of the memory unit (such as in a specified memory cell and / or at a specified address).

[0066] The method includes transmitting, via the wireless interface, a link response including an intra-oral scanning device identifier and a session identifier. Transmitting the link response may include generating the link response by including the session identifier and the intra-oral scanning device identifier and transmitting the link response generated thereby to, for example, a client device.

[0067] The method includes receiving an authentication message via a wireless interface. The authentication message includes an authentication key identifier and client device data. The method may include receiving an authentication message from a client device via a wireless interface. For example, an intraoral scanning device receives an authentication message from a client device to establish a communication session. The client device data may include a client device certificate, customization data, intraoral scanning device operating parameters, and / or firmware data. The authentication key identifier may be an identifier used to verify whether the client device provides an authentication key identifier that is acceptable to the intraoral scanning device.

[0068] The method includes selecting an intra-oral scanning device key from a plurality of intra-oral scanning device keys in a memory unit based on an authentication key identifier. When the authentication key identifier matches an intra-oral scanning device key identifier maintained by the intra-oral scanning device and / or indicates an intra-oral scanning device key of the intra-oral scanning device, the processing unit may be configured to use the authentication key identifier as a key identifier to indicate which intra-oral scanning device key is to be used as a key material in the session. The selection of the intra-oral scanning device key from a plurality of intra-oral scanning device keys in the memory unit may be based on the authentication key identifier and an authentication type identifier. The authentication type identifier may be received by the intra-oral scanning device in plain text and / or as a client device type identifier in a client certificate (encrypted or decrypted). For example, the processing unit selects the authentication key identifier and the intra-oral scanning device key indicated by the authentication type identifier.

[0069] The method includes verifying the client device data based on a selected intra-oral scanning device key. Verifying the client device data may be based on an intra-oral scanning device certificate or at least a portion thereof. In addition, the method includes terminating the session if the verification fails. Verifying the client device data based on the selected intra-oral scanning device key may include verifying the integrity of the client device data based on the selected intra-oral scanning device key (such as verifying a MAC and / or digital signature included in the client device data). Verifying the client device data based on the selected intra-oral scanning device key may include decrypting the client device data using the selected intra-oral scanning device key (as key material for deriving a decryption key or as a decryption key) when the encrypted client device data is received. Verifying the client device data based on the selected intra-oral scanning device key may include verifying the client device data by comparing the received client device data (e.g., the decrypted client device certificate) with data stored in a memory unit. For example, if the integrity of the client device data is detected to be compromised by, for example, verifying a MAC or digital signature, if the decryption fails, and / or if a comparison of the received client device data with the data stored in the memory unit shows a mismatch, then the verification fails.

[0070] The authentication message optionally includes an authentication type identifier. The authentication type identifier may indicate a client device type identifier and / or a certificate type identifier. Selecting an intra-oral scanning device key from a plurality of intra-oral scanning device keys may be based on the authentication type identifier. Selecting an intra-oral scanning device key may be based on the authentication type identifier provided in the authentication message and / or the verified authentication key identifier.

[0071] The client device data may include a client device certificate (such as an encrypted client device certificate), an authentication key identifier, and / or an authentication type identifier.The client device may be assigned a client device certificate.

[0072] The method may include generating a certificate key based on a selected intra-oral scanning device key and / or a session identifier; and verifying the client device data may include decrypting the encrypted client device certificate with the certificate key to obtain a decrypted version of the encrypted client device certificate. Decrypting the encrypted client device certificate with the certificate key may include: decrypting the encrypted client device certificate with the certificate key, a public secret and / or an intra-oral scanning device key, such as generating the certificate key based on the public secret; and processing the encrypted client certificate using the decryption function and the certificate key. The certificate key may be based on the public secret and / or the certificate value. Generating the certificate key may include obtaining or generating a public secret based on the selected intra-oral scanning device key. For example, generating a public secret based on the intra-oral scanning device key includes retrieving an intra-oral scanning device certificate from a memory unit, the intra-oral scanning device certificate including the selected intra-oral scanning device key, and / or retrieving the selected intra-oral scanning device key from a memory unit. The method may include generating a public secret based on a session identifier and / or an intra-oral scanning device key. For example, generating a public secret CS based on the selected intra-oral scanning device key and a session identifier, for example, as follows:

[0073] CS=hash(HD_KEY,S_ID),

[0074] Where hash is a hash function, HD_KEY is a selected intra-oral scanning device key and S_ID is a session identifier. The session identifier may include a random number or a pseudo-random number of a defined length. The public secret may be used as a certificate key in one or more exemplary intra-oral scanning devices. The intra-oral scanning device may be configured to store the public secret in a memory unit so as to retrieve the public secret from the memory unit, for example, when needed.

[0075] Generating the certificate key may include performing a hash function on the public secret and / or the certificate value. The intra-oral scanning device may then generate the certificate key, for example as follows:

[0076] C_KEY=hash(CS,C_VAL),

[0077] Where hash is a hash function, CS is a public secret and C_VAL is a certificate value. The certificate value can be a predefined value or a string (such as "certificate").

[0078] In one or more exemplary methods, generating the certificate key includes performing a hash function on the intra-oral scanning device key and the session identifier. In other words, the public secret can be used as the certificate key if the client device also uses the public secret as the certificate key to encrypt the client device certificate.

[0079] Verifying the client device data may include decrypting the encrypted client device certificate using a certificate key generated by the intra-oral scanning device and obtaining a decrypted version of the client device certificate.

[0080] In one or more exemplary methods, verifying the client device data may include verifying the contents of a decrypted version of the client device certificate. For example, verifying the client device data includes determining whether the authentication key identifier matches the client device key identifier of the client device certificate, and if a mismatch is determined, then verification fails.

[0081] In one or more exemplary methods, verifying the client device data includes determining whether a client device type identifier of the client device certificate is valid, and if the client device type identifier of the client device is not valid, then the verification fails. For example, the authentication type identifier is sent in plain text in the authentication message, and the authentication type identifier sent in plain text is valid if the authentication type identifier matches a corresponding client device type identifier included in a decrypted version of the client device certificate. For example, determining whether the client device type identifier of the client device certificate is valid may include determining whether the client device type identifier of the client device certificate is included in a list of authorized client devices.

[0082] In one or more exemplary methods, determining whether the client device type identifier of the client device certificate is valid includes determining whether the client device type identifier is blacklisted, wherein if the client device type identifier is blacklisted (e.g., appears on a list of blacklisted client device types), the client device type is invalid. In one or more exemplary methods, determining whether the client device type identifier of the client device certificate is valid includes determining whether the client device type identifier is allowed, wherein if the client device type identifier is allowed (e.g., appears on a list of allowed or authorized client device types), the client device type is valid.

[0083] In one or more exemplary methods, verifying the client device data includes verifying a digital signature of the client device certificate, and if the digital signature is not verified, the verification fails. For example, the client device data includes a digital signature attached to the client device data to protect the integrity of the client device data. Verifying the digital signature includes, for example, calculating a comparison result based on the digital signature and a corresponding public key and comparing the comparison result with the received client device data. The digital signature can be verified as valid, or the verification will succeed when the public key power of the digital signature is the same as the received client device data.

[0084] In one or more exemplary methods, the client device certificate includes a signed device identifier and / or a client device identifier, and verifying the client device data includes determining whether the signed device identifier and / or the client device identifier is valid, and wherein verification fails if the client device identifier and / or the signed device identifier of the client device is not valid.

[0085] In one or more exemplary methods, determining whether the client device identifier of the client device certificate is valid includes determining whether the client device identifier is blacklisted, wherein if the client device identifier is blacklisted (e.g., appears on a list of blacklisted client devices), then the client device identifier is invalid. In one or more exemplary methods, determining whether the client device identifier of the client device certificate is valid includes determining whether the client device identifier is allowed, wherein if the client device identifier is allowed (e.g., appears on a list of allowed or authorized client devices), then the client device type is valid.

[0086] In one or more exemplary methods, the method includes receiving an additional authentication message including client device data and / or an authentication device identifier. The method may also include: obtaining a public secret from a memory unit based on the authentication device identifier; generating an additional certificate key from the public secret; and verifying the client device data based on the additional certificate key.

[0087] In one or more exemplary methods, the method includes generating an offline session key based on a common secret and a session identifier, and communicating with a client device using the offline session key.

[0088] In one or more exemplary methods, the method includes receiving a further authentication message, the further authentication message including client device data, an authentication type identifier, an authentication key identifier, and / or an authentication session token identifier. The further authentication message may include an authentication device identifier. The method may include finding or determining a public secret of a client device type identifier and / or a client device identifier linked to a client device that sent the further authentication message in a memory unit based on locating a stored client device type identifier corresponding to the authentication type identifier and / or locating a stored client device identifier corresponding to the authentication device identifier. The method may include: obtaining a public secret based on the authentication type identifier; generating a token key based on the public secret; and generating a session token identifier based on the token key and the session identifier. The processing unit may have generated a public secret in an earlier session with the client device to, for example, establish a certificate key and may have stored the public secret and linked the public secret to the client device type identifier and / or the client device identifier. The method may include obtaining a public secret based on the authentication type identifier and / or the authentication client identifier corresponding to the stored client device type identifier and / or the client device identifier. The method may include generating a token key by performing a hash function on a public secret and a token value (such as a predefined arbitrary string or a predefined arbitrary value). The method may include generating a session token identifier by generating a session identifier, and generating a session token identifier based on the token key and the session identifier by performing a hash function on the token key and the session identifier. The method may include verifying the authentication session token identifier based on the session token identifier. The method may include verifying the authentication session token identifier by comparing the authentication session token identifier with the generated session token identifier. For example, if it is determined that the authentication session token identifier matches the generated session token identifier, the verification is successful, and the processing unit may continue without physical user intervention and continue to verify the client device data provided in the further authentication message. The client device data may include a client device certificate. The intra-oral scanning device may verify the client device certificate (and check against a blacklist) to allow any customization. The verified authentication token identifier may, for example, be used to indicate to the intra-oral scanning device that the client device holds a previous shared token key and is therefore allowed to accurately customize the intra-oral scanning device without physical user intervention of the intra-oral scanning device.

[0089] In one or more exemplary methods, the method includes generating a session key based on the session identifier and the intra-oral scanning device key, and receiving and authenticating session data based on the session key.

[0090] Client device with certificate and related methods:

[0091] Aspects of the present disclosure are to provide client devices and methods that seek to mitigate, alleviate or eliminate one or more of the above-mentioned deficiencies and disadvantages in the art, either singly or in any combination.

[0092] Another aspect of the present disclosure is to improve the security of wireless communications with an intra-oral scanning device to protect the intra-oral scanning device from potential attacks (such as an improved client device and a method of communicating with an intra-oral scanning device with improved security thereof).

[0093] There is a need for client devices and methods that provide improved security for intra-oral scanning device communications. In addition, there is a need for devices and methods that reduce the risk of intra-oral scanning and intra-oral scanning functionality being compromised by a third party.

[0094] According to these aspects, a client device for intraoral scanning device communication is disclosed. The client device may include a processing unit, a memory unit, and a wireless interface. The memory unit may have a client device key (such as at least one client device key) and / or a client device certificate stored thereon. The processing unit may be configured to: receive a connection response (e.g., including an intraoral scanning device identifier) ​​via the wireless interface; generate one or more keys (e.g., including a certificate key) based on the intraoral scanning device identifier and / or the client device key; obtain an authentication message based on the certificate key and / or the client device certificate. Obtaining the authentication message may optionally include generating and / or obtaining an encrypted client device certificate by, for example, encrypting the client device certificate with a certificate key, and optionally including the encrypted client device certificate in the authentication message. The processing unit may be configured to transmit the authentication message via the wireless interface.

[0095] The processing unit may be configured to obtain the session identifier. Generating the one or more keys may include generating an intra-oral scanning device key based on the intra-oral scanning device identifier and the client device key, and may also include generating a common secret based on the intra-oral scanning device key and the session identifier.

[0096] The certificate key can be based on the public secret and the certificate value.

[0097] Generating one or more keys may include generating a session key based on the intra-oral scanning device identifier, the session identifier, and the client device key.The processing unit may be configured to transmit the session key to the customization device.

[0098] The session key can be based on a public secret and a session value.

[0099] The processing unit may be further configured to include an authentication key identifier indicating the client device key in the authentication message.

[0100] The processing unit may also be configured to include an authentication type identifier in the authentication message.

[0101] Client device certificates can include one or more of the following:

[0102] Certificate type identifier;

[0103] Signature device identifier;

[0104] Client device type identifier;

[0105] Client device identifier;

[0106] Client device key identifier;

[0107] One or more hardware identifiers; and

[0108] Digital signature.

[0109] According to these aspects, a method of operating a client device for intra-oral scanning device communications is disclosed, the client device including a memory unit having a client device key (such as at least one client device key) and / or a client device certificate stored thereon. The method includes: receiving a connection response via a wireless interface, for example including an intra-oral scanning device identifier; generating one or more keys (for example including a certificate key) based on the intra-oral scanning device identifier and / or the client device key; and obtaining an authentication message based on the certificate key and / or the client device certificate. Obtaining the authentication message optionally includes, for example, generating an encrypted client device certificate by encrypting the client device certificate with the certificate key, and optionally including the encrypted client device certificate in the authentication message. The method includes transmitting the authentication message via the wireless interface.

[0110] The method may include obtaining a session identifier, and wherein generating one or more keys may include generating an intra-oral scanning device key based on the intra-oral scanning device identifier and a client device key, and generating a common secret based on the intra-oral scanning device key and the session identifier.

[0111] The certificate key may be based on the public secret and the certificate value, or the method may include basing the certificate key on the public secret and the certificate value.

[0112] Generating one or more keys may include generating a session key based on the intra-oral scanning device identifier, the session identifier, and the client device key. The method may also include transmitting the session key to the customization device.

[0113] The session key may be based on the common secret and the session value, or the method may include basing the session key on the common secret and the session value.

[0114] Obtaining the authentication message may include including in the authentication message an authentication key identifier indicative of a client device key.

[0115] Obtaining the authentication message may include including an authentication type identifier in the authentication message.

[0116] Advantageously, the method and intra-oral scanning device enable an intra-oral scanning device manufacturer to control client device access to the intra-oral scanning device and / or enable version control in client device access.

[0117] The disclosed method and apparatus provide an extensible security architecture with improved security for an intraoral scanning device system. The disclosed client device and method support the intraoral scanning device against attacks (such as unauthorized access or control of the intraoral scanning device) while still allowing legitimate parties (such as client devices) access (such as for customization purposes, update purposes, maintenance purposes). The client device and method allow the intraoral scanning device to open a session only with an authenticated party (such as an authenticated customized device, an authenticated accessory device, an authenticated external device, and / or an authenticated server). This can provide robustness against impersonation and masquerade attacks, battery drain attacks, man-in-the-middle attacks, and / or replay attacks. In addition, the need to update and / or exchange keys in the event that keys have been compromised at the client device has been reduced and simplified.

[0118] The processing unit can be configured to process the received 2D image data and / or 3D image data for the purpose of visualizing the data on a display for designing dental attachments (such as aligners, retainers, crowns, implants, braces, night guards, etc.) and / or for providing diagnostic data.

[0119] The 2D image data and / or the 3D image data may be image data configured to be visualized on a display in 2D or 3D, respectively.

[0120] The term "client device" as used herein refers to a device that communicates with an intraoral scanning device. A client device may refer to a computing device that acts as a client. Client devices may include customized devices, handheld devices, repeaters, tablet computers, personal computers, mobile phones, and / or USB dongles that are plugged into personal computers. The client device may control the operation of the intraoral scanning device by sending customization data, intraoral scanning device operating parameters, and / or firmware data. The disclosed client device and method support the intraoral scanning device against attacks (such as unauthorized access or control of the intraoral scanning device) while still allowing legitimate parties (such as client devices) access (such as for customization purposes, update purposes, maintenance purposes).

[0121] The intraoral scanning device may operate in one or more modes. The one or more modes may include a first mode and / or a second mode. The one or more modes may include a third mode and / or a fourth mode. The one or more modes may include a default mode.

[0122] The client device may include a memory unit and a wireless interface connected to the processing unit, respectively. The wireless interface may include a wireless transceiver, which is configured, for example, to perform wireless communication in a frequency range from 2.4 GHz to 2.5 GHz, 2.4 GHz to 5 GHz, about 2.45 GHz, or about 5 GHz. The wireless transceiver may be a Bluetooth transceiver, a Bluetooth low energy transceiver, or a wireless fidelity (WIFI) transceiver. The wireless interface may form a connection to one or more other devices, such as a computer and / or a scanning computer and / or a tablet computer and / or a smart phone.

[0123] In an embodiment, the wireless interface is configured for communication (such as wireless communication) with an intra-oral scanning device comprising a wireless transceiver.

[0124] The processing unit may be configured to send a session request for a session to the intraoral scanning device via a wireless interface. The processing unit may be configured to receive a session response from the intraoral scanning device via the wireless interface (e.g., receive a session response from the intraoral scanning device and / or a session key device). The session response may include an intraoral scanning device identifier or an identifier derived therefrom. In an exemplary client device, the client device may receive the intraoral scanning device identifier during pairing of the client device and the intraoral scanning device. Therefore, the processing unit includes, for example, a receiving / sending unit configured to send data (such as a session request) and / or receive data (such as a session response) via the wireless interface. The processing unit may be configured to obtain a session key based on, for example, a session response (such as extracting a session key from or based on the session response). Therefore, the processing unit includes an acquirer. The processing unit may retrieve a session key from, for example, a key library stored in a memory unit. The processing unit may be configured to obtain a session key, wherein obtaining the session key may include establishing a connection to the session key device via the wireless interface. The processing unit may send a session key request to a session key device (such as a session key server) via a wireless interface (e.g., via a wireless communication link established between the client device and the session key device via the wireless interface). The processing unit may receive a session key response from the session key device via the wireless interface, and may determine a session key based on the session key response.

[0125] The session response may include an intra-oral scanning device identifier. The intra-oral scanning device identifier may include a hardware number of the intra-oral scanning device and / or a serial number of the intra-oral scanning device. The client device may retrieve the session key from the session key device by providing the intra-oral scanning device identifier to the session key device (e.g., as part of a session key request) and requesting a session key or an intra-oral scanning device key from the session key device and / or requesting the session key device to decrypt the session response and / or the session key.

[0126] In one or more exemplary client devices, a processing unit configured to obtain a session key may be configured to: establish a connection to a session key device via a wireless interface; send a session key request to the session key device via the wireless interface; receive a session key response from the session key device via the wireless interface; and determine the session key based on the session key response. The session key request may include an intra-oral scan device identifier. The connection to the session key device may be a secure connection over a network, such as including private and / or public networks.

[0127] The session key means may be a custom accessory device; wherein the custom accessory device optionally includes a storage device containing a list configured to provide a session key and / or a session key response based on a session key request.

[0128] The processing unit may be configured to determine intraoral scanning device data. Thus, the processing includes, for example, a determiner. The intraoral scanning device data includes, for example, firmware, customization data, and / or intraoral scanning device operating parameters. The customization data may, for example, be setting data of the intraoral scanning device (such as power management settings, configuration settings, configuration of a user interface of the intraoral scanning device, and / or settings of an optical unit of the intraoral scanning device). Firmware may refer to a computer program provided by a manufacturer of the intraoral scanning device and to be installed on the intraoral scanning device to control the intraoral scanning device. For example, firmware is to be installed to upgrade the operation and capabilities of the intraoral scanning device.

[0129] The optical unit may include one or more light projectors, one or more optical components, and one or more image sensors.

[0130] The user interface of the intraoral scanning device may include at least one touch sensor, at least one touch button, at least one light emitting diode, a tactile sensor and / or an accelerometer.

[0131] The session response may include an encrypted session key.The processing unit may be configured to determine the session key by retrieving the session key from the session key response.

[0132] In one or more exemplary client devices, determining the session key includes retrieving the intra-oral scanning device key from the session key response or from the memory unit and decrypting the encrypted session key based on the intra-oral scanning device key. Alternatively, determining the session key may include decrypting the encrypted session key with a global key. For example, the global key is a key common to a group of client devices. The processing unit may be configured to retrieve the intra-oral scanning device key from the session key response and decrypt the encrypted session key based on the intra-oral scanning device key. The processing unit may include a decryption / encryption unit. For example, the intra-oral scanning device key may be a symmetric key or a public key of a private key-public key pair. The intra-oral scanning device key may include an AES-128-bit key as a symmetric key. Using a symmetric key as an intra-oral scanning device key provides the advantage of being able to use a hardware accelerator. The intra-oral scanning device key may include a public key of a private key-public key pair (such as a public key of a private key-public key pair of an authorized publisher of the session key (such as a client device or a session key device)).

[0133] The processing unit may be configured to determine the session key by including decrypting the encrypted session key with the global key, i.e., determining the session key may include decrypting the encrypted session key with the global key. The global key may be, for example, a symmetric key or a public key of a private key-public key pair. The session key may conform to an encryption standard (such as the Advanced Encryption Standard, AES, RSA cryptosystem, triple data encryption algorithm).

[0134] The processing unit may be configured to generate session data based on the session key and the intraoral scanning device data, for example including a message authentication code. Therefore, the processing unit may include a generator. The processing unit may generate a message authentication code based on the session key and the intraoral scanning device data. The message authentication code may be included in the session data. The processing unit may be configured to generate session data based on the intraoral scanning device key. The processing unit may be configured to digitally sign the intraoral scanning device data (such as digitally signing the intraoral scanning device data using a private key of a client device and / or a group of client devices). The processing unit may be configured to digitally sign the intraoral scanning device data using a private key obtained from a session key device (e.g., as part of a session key response). The processing unit may generate a digital signature using a signature generation function and the private key of the client device and attach the digital signature to the session data. The intraoral scanning device may then verify the digital signature when receiving the session data. If the digital signature is not successfully verified using the so-called public key of the client device, the intraoral scanning device may ignore the session data and / or terminate the session. This may provide the advantage that the client device supports the intra-oral scanning device in rejecting session data that has been tampered with or received from an unauthenticated party and that communications with the intra-oral scanning device may therefore be robust against impersonation and spoofing attacks.

[0135] The processing unit may be configured to send the session data to the intra-oral scanning device via the wireless interface, for example using the receiving / transmitting unit. The session data may include intra-oral scanning device data encrypted with the session key. To encrypt the session data with the session key, the client device may utilize any of the above encryption standards.

[0136] The present disclosure relates to improving the security of intra-oral scanning device communications. That is, the client devices disclosed herein enable intra-oral scanning device communications that are robust to security threats, vulnerabilities, and attacks by implementing appropriate security measures and countermeasures (such as security mechanisms) to prevent threats and attacks. The present disclosure relates to intra-oral scanning device communications that are robust to replay attacks, unauthorized access, battery drain attacks, and man-in-the-middle attacks.

[0137] As used herein, the term "intraoral scanning device" refers to a device configured to acquire intraoral scan data from a three-dimensional dental object during a scanning session.

[0138] As used herein, the term "certificate" refers to a data structure that enables verification of its source and content (such as verification of the legitimacy and / or authenticity of its source and content). A certificate is configured to provide content associated with a certificate holder by the issuer of the certificate. The certificate includes a digital signature that enables the recipient of the certificate to verify or authenticate the certificate content and source. The certificate may include one or more identifiers and / or key materials (such as one or more cryptographic keys (e.g., intraoral scanning device keys)) to enable secure communication in an intraoral scanning device system. Therefore, the certificate allows authentication, non-repudiation and / or integrity protection of the source and content. The certificate may also include a validity period, one or more algorithm parameters and / or an issuer. A certificate may include a digital certificate, a public key certificate, an attribute certificate and / or an authorization certificate. Examples of certificates are X.509 certificates, secure / multipurpose Internet mail extensions (S / MIME) certificates and / or transport layer security (TLS) certificates.

[0139] As used herein, the term "key" refers to a cryptographic key (i.e., a piece of data (e.g., a string, a parameter) that determines the functional output of a cryptographic algorithm). For example, during encryption, a key allows plaintext to be converted to ciphertext, and vice versa during decryption. The key can also be used to verify digital signatures and / or message authentication codes MAC. When the same key is used for both encryption and decryption, the key is typically referred to as a symmetric key. In asymmetric or public key cryptography, the key material is a key pair, typically referred to as a private key-public key pair (including a public key and a private key). In an asymmetric or public key cryptosystem (such as the Rivest Shamir Adelman (RSA) cryptosystem), the public key is used for encryption and / or signature verification, while the private key is used for decryption and / or signature generation. The intraoral scanning device key can be a key material that allows one or more symmetric keys to be derived (such as a session key and / or a certificate key for intraoral scanning device communication). For example, during manufacturing, the intraoral scanning device key can be stored in a memory unit of the intraoral scanning device. The intraoral scanning device key may include key material for deriving a symmetric key. The intra-oral scanning device key includes, for example, an Advanced Encryption Standard (AES) key (such as an AES-128 bit key).

[0140] As used herein, the term "identifier" refers to a piece of data that is used to identify (such as for classification) and / or uniquely identify. An identifier may be in the form of a word, number, letter, symbol, list, array, or any combination thereof. For example, an identifier that is a number may be in the form of an integer (such as an unsigned integer unit (such as an array of unsigned integers) having a length of, for example, 8 bits, 16 bits, 32 bits, etc.).

[0141] A client device for communicating with an intraoral scanning device for an intraoral scanning device is disclosed. The term "client device" as used herein refers to a device capable of communicating with an intraoral scanning device. A client device may refer to a computing device that acts as a client. The client device may include a customized device, a handheld device, a repeater, a tablet computer, a personal computer, an application running on a personal computer or a tablet computer, or a mobile phone and / or a USB dongle plugged into a personal computer. The client device may be attributed to a client device type indicated by a client device type identifier, the client device type corresponding to, for example, a model, category or type of the client device (such as a customized type (e.g., a tablet computer product model, category or type for a customized intraoral scanning device, a USB dongle product model, category or type for a customized intraoral scanning device)). The client device may be configured to control the operation of the intraoral scanning device by sending customized data, intraoral scanning device operating parameters and / or firmware data.

[0142] The client device includes a memory unit and a wireless interface connected to the processing unit respectively. The memory unit may include a removable data memory unit and a non-removable data memory unit (including but not limited to a read-only memory (ROM), a random access memory (RAM), etc.). A client device certificate is stored on the memory unit. The memory unit may store the client device certificate and / or the client device key at a memory address of the memory unit and / or in a memory cell of the memory unit (such as in a specified memory cell and / or at a specified address). The wireless interface may include a wireless transceiver, which is configured, for example, to perform wireless communication in a frequency range from 2.4 GHz to 2.5 GHz. The wireless interface may include one or more connectors for connecting to another device (e.g., a customized device). The connector may be a standard connector, such as a USB connector (USB 2.0 Standard-A, USB 2.0 Standard-B, Micro-A USB, Micro-B USB, Mini-AUSB, Mini-B USB or other). The connector may be a proprietary connector used by a manufacturer of personal electronic devices. The wireless interface may be configured to communicate (such as wireless communication) with an intraoral scanning device including a wireless transceiver.

[0143] The client device certificate may include a certificate type identifier. The certificate type identifier may indicate a certificate type among a plurality of certificate types, such as an intraoral scanning device series certificate type, an intraoral scanning device certificate type, a firmware certificate type, a research and development certificate type, and / or a client device certificate type. The intraoral scanning device and / or the client device may use the certificate type identifier to identify what type of certificate the intraoral scanning device receives, stores, authenticates, and / or retrieves. The client device certificate may include a version identifier indicating a data format version of the certificate. The intraoral scanning device may use the certificate type identifier and / or version identifier of the client device certificate to determine what type of data the client device certificate includes and / or what type of data is included in a field of the client device certificate. For example, the intraoral scanning device may determine what field of the client device certificate includes a digital signature and / or which public key is needed to verify the digital signature of the client device certificate based on the certificate type identifier and / or version identifier. It is conceivable that there is a one-to-one mapping between a certificate type identifier and a public-private key pair.

[0144] The client device certificate may include a signing device identifier. A signing device identifier refers to a unique identifier that identifies a device (such as a manufacturing device, e.g., an integrated circuit card, a smart card, a hardware security module) that has signed the client device certificate. The signing device identifier may, for example, include a media access control, MAC, address of the signing device, and / or a serial number of the signing device. The signing device identifier may allow, for example, an intra-oral scanning device to determine whether the signing device is, for example, blacklisted, and therefore reject a certificate signed by a signing device that is blacklisted, e.g., due to theft or other sabotage.

[0145] The client device certificate may include a client device type identifier. The client device type identifier may indicate the type of the client device among a plurality of client device types (such as a model, category or type of the client device, a USB dongle product model, category or type used to customize the intra-oral scanning device). The intra-oral scanning device may use the client device type identifier to identify what type of client device the intra-oral scanning device is communicating with. The client device type identifier may enable the intra-oral scanning device to select a set of keys from a plurality of key groups in the intra-oral scanning device. Respective key groups in the intra-oral scanning device may be used by corresponding different types of client devices.

[0146] The client device certificate may include a client device identifier. The client device identifier may be based on one or more hardware identifiers of one or more hardware components / modules of the client device.

[0147] The client device certificate may include a client device key identifier. The client device key identifier indicates a client device key.

[0148] The client device certificate may include one or more hardware identifiers (e.g., a first hardware identifier and / or a second hardware identifier). The hardware identifier may identify a piece of hardware included in the client device (such as a radio chip included in the client device or a digital signal processor of the client device). The (one or more) hardware identifiers may be stored in a register of the piece of hardware included in the client device during the manufacture of the hardware. The hardware identifier may include a serial number of the hardware, a chip identifier, or any combination thereof. A client device that receives or retrieves a client device certificate including a hardware identifier from a memory unit may verify the client device certificate by comparing its stored hardware identifier with a corresponding hardware identifier included in the client device certificate. Such verification may be performed when the client device certificate is retrieved from the memory unit (such as when the client device is started or powered on). The client device certificate may include, for example, one or more Bluetooth addresses assigned by the manufacturer during manufacturing.

[0149] The client device certificate may include a user identifier (e.g., in the form of a username). The client device certificate with the user identifier may facilitate the use of a general purpose device (such as a tablet computer) as a client device, for example, by implementing user authentication / key generation / encryption at a remote server device controlled, for example, by the intra-oral scanning device manufacturer.

[0150] The client device certificate may include a digital signature. The digital signature enables proof or verification of the authenticity of the client device certificate (such as verifying the legitimacy of the signer). The digital signature is optionally generated by a manufacturing device using a client device series private key when manufacturing the client device. The digital signature may be verified by an intraoral scanning device and / or a customization device using a corresponding client device series public key. If the digital signature is not successfully verified using the so-called public key, the intraoral scanning device may ignore the client device certificate and / or terminate normal operation. This may provide the advantage that the intraoral scanning device rejects client device certificates that have been tampered with or received from an unauthenticated party. Therefore, communications with the intraoral scanning device may be robust against impersonation, modification, and spoofing attacks.

[0151] The processing unit is configured to receive a connection response including an intra-oral scanning device identifier via the wireless interface. The connection response may be generated and / or sent by the intra-oral scanning device. The processing unit is configured to generate one or more keys, for example, based on the intra-oral scanning device identifier and / or the client device key. Generating the one or more keys may include generating a public secret based on the client device key. Generating the one or more keys may include generating an intra-oral scanning device key based on the intra-oral scanning device identifier and / or the client device key (e.g., including performing a hash function). For example, the intra-oral scanning device key IOS_KEY may be given as:

[0152] IOS_KEY=hash(IOS_ID,CD_KEY),

[0153] Where hash is a hash function, IOS_ID is the intra-oral scanning device identifier and CD_KEY is the client device key.

[0154] By generating and / or using a common secret, the need to exchange keys is avoided. In addition, if the common secret is based on the intra-oral scanning device identifier (the client device key is different from the intra-oral scanning device key), the client device key cannot be derived from the intra-oral scanning device key used by the intra-oral scanning device. This greatly reduces the risk of client device key leakage.

[0155] The one or more keys generated based on the intra-oral scanning device identifier and / or the client device key may be based on a common secret.

[0156] The certificate key may be based on a public secret and / or a certificate value. The certificate value may be a predefined value or string (such as "certificate"). The certificate key may be generated by performing a hash function on the public secret and / or certificate value. For example, the certificate key C_KEY may be given as:

[0157] C_KEY=hash(CS,C_VAL),

[0158] Where hash is the hash function, CS is the public secret and C_VAL is the certificate value.

[0159] Generating one or more keys may include generating a session key. The session may be different from the certificate key. The session key may be based on the intraoral scanning device identifier. The session key may be based on the session identifier. The session key may be based on the client device key. The processing unit may be configured to transmit the session key to the customized device. When configured to operate as a customized device, the client device may be configured to perform customized communications with the intraoral scanning device based on the session key. The session key may be based on a public secret and / or a session value. The session value may be a predefined value or string (such as "session"). The session key may be generated by performing a hash function on the public secret and / or session value. For example, the session key S_KEY may be given as:

[0160] S_KEY=hash(CS,S_VAL),

[0161] Where hash is a hash function, CS is a public secret and S_VAL is a session value. Session-specific communications are enabled by generating a session key based on the session identifier and the public secret.

[0162] The processing unit is configured to obtain an authentication message based on the certificate key and / or the client device certificate. Obtaining the authentication message may include including the client device certificate in the authentication message.

[0163] The processing unit may be configured to include, in the authentication message, an authentication key identifier, for example, indicating a client device key. The authentication key identifier may indicate or match a client device key identifier of a client device certificate. The authentication message including the authentication key identifier indicating the client device key enables the intra-oral scanning device to select an appropriate intra-oral scanning device key from a plurality of intra-oral scanning device keys, for example, to generate or select a common secret. Subsequently, the intra-oral scanning device may generate a certificate key for decrypting the encrypted client device certificate in the intra-oral scanning device.

[0164] The processing unit may be configured to include an authentication type identifier in the authentication message. The authentication type identifier may indicate or match a client device type identifier and / or a certificate type identifier of a client device certificate. When the intra-oral scanning device includes a plurality of intra-oral scanning device key groups, the authentication message including the authentication type identifier may enable the intra-oral scanning device to select an intra-oral scanning device key from a selected set of intra-oral scanning device keys. Additionally or alternatively, the intra-oral scanning device may be configured to process the authentication message in a different manner based on the authentication type identifier. Thus, the intra-oral scanning device may be able to select an appropriate authentication message processing scheme.

[0165] The method includes receiving a connection response, for example, from an intra-oral scanning device via a wireless interface. The connection response may include an intra-oral scanning device identifier. The method includes generating and / or obtaining one or more keys, for example, based on the intra-oral scanning device identifier and / or a client device key. Generating one or more keys may include generating a public secret based on the client device key. The one or more keys may include a certificate key.

[0166] The method includes generating and / or obtaining an authentication message based on a certificate key and / or a client device certificate. Obtaining and / or generating an authentication message may include generating an encrypted client device certificate with a client device by encrypting the client device certificate with a certificate key and optionally including the encrypted client device certificate in the authentication message. Obtaining and / or generating an authentication message may include, for example, obtaining an encrypted client device certificate from a memory unit and / or a server device. Obtaining an encrypted client device certificate may include transmitting a certificate request to a server device. In response, the server device generates and transmits a certificate response including an encrypted client device certificate (the client device certificate has been encrypted with a certificate key). The client device receives a certificate response with the encrypted client device certificate and includes the encrypted client device certificate in the authentication message. Therefore, obtaining an encrypted client device certificate may include receiving a certificate response including an encrypted client device certificate from a server device. Obtaining an authentication message may include including the client device certificate in the authentication message.

[0167] The method includes transmitting an authentication message via a wireless interface to, for example, an intra-oral scanning device.

[0168] The method may include obtaining a session identifier, for example, by receiving a session identifier from an intra-oral scanning device. The connection response may include the session identifier. Generating one or more keys may include generating an intra-oral scanning device key based on the intra-oral scanning device identifier and the client device key. For example, the intra-oral scanning device key IOS_KEY may be given as:

[0169] IOS_KEY=hash(IOS_ID,CD_KEY),

[0170] Where hash is a hash function, IOS_ID is the intra-oral scanning device identifier and CD_KEY is the client device key.

[0171] Generating one or more keys may include generating a common secret. The common secret may be based on the intra-oral scanning device key and / or the session identifier. The common secret may be based on the intra-oral scanning device identifier. The intra-oral scanning device key and / or the client device key may be used as the common secret. For example, the common secret CS may be given as:

[0172] CS=hash(IOS_KEY,S_ID),

[0173] Where hash is a hash function, IOS_KEY is an intra-oral scanning device key and S_ID is a session identifier. Generating one or more keys may include generating one or more keys based on a common secret.

[0174] In this method, the certificate key can be based on a public secret and / or a certificate value. The certificate value can be a predefined value or string (such as "certificate"). Generating the certificate key can include performing a hash function on the public secret and / or the certificate value. For example, the certificate key C_KEY can be given as:

[0175] C_KEY=hash(CS,C_VAL),

[0176] Where hash is the hash function, CS is the public secret and C_VAL is the certificate value.

[0177] Generating one or more keys may include generating a session key. The session key may be different from a certificate key. The session key may be based on an intra-oral scanning device identifier. The session key may be based on a session identifier. The session key may be based on a client device key. The method may include transmitting the session key to a customization device. The method may include performing customized communications with the intra-oral scanning device based on the session key.

[0178] In this method, the session key can be based on a public secret and / or a session value. The session value can be a predefined value or string (such as "session"). Generating the session key can include performing a hash function on the public secret and / or the session value. For example, the session key S_KEY can be given as:

[0179] S_KEY=hash(CS,S_VAL),

[0180] Where hash is a hash function, CS is a public secret and S_VAL is a session value. Session-specific communications are enabled by generating a session key based on the session identifier and the public secret.

[0181] Communication with the intra-oral scanning device based on a public secret unique to the intra-oral scanning device (e.g., the public secret is based on the intra-oral scanning device identifier and / or the session identifier) ​​provides intra-oral scanning device-specific communication. Therefore, other intra-oral scanning devices cannot process / understand authentication messages for the specific intra-oral scanning device.

[0182] In the method, generating the authentication message may include including an authentication key identifier in the authentication message. The authentication key identifier may indicate or match a client device key identifier of the client device certificate. The authentication message including the authentication key identifier indicating the client device key enables the intra-oral scanning device to select an appropriate intra-oral scanning device key from a plurality of intra-oral scanning device keys, for example, to generate or select a common secret. Subsequently, the intra-oral scanning device may generate a certificate key for decrypting the encrypted client device certificate in the intra-oral scanning device, for example, based on the selected intra-oral scanning device key.

[0183] In the method, generating an authentication message may include including an authentication type identifier in the authentication message. The authentication type identifier may indicate or match a client device type identifier and / or a certificate type identifier of a client device certificate. When the intraoral scanning device includes multiple intraoral scanning device key groups, the authentication message including the authentication type identifier may enable the intraoral scanning device to select an intraoral scanning device key from a selected set of intraoral scanning device keys. In addition or alternatively, the intraoral scanning device may be configured to process the authentication message in different manners based on the authentication type identifier. Therefore, the intraoral scanning device may be able to select an appropriate authentication message processing scheme based on the authentication type identifier. The authentication type identifier may be a client device type identifier of a client device certificate.

[0184] In an exemplary method or exemplary client device, the common secret CS may be given as:

[0185] CS=hash(CD_KEY,S_ID),

[0186] Where hash is a hash function, CD_KEY is the client device key and S_ID is the session identifier. BRIEF DESCRIPTION OF THE DRAWINGS

[0187] Various aspects of the present disclosure may be best understood from the following detailed description in conjunction with the accompanying drawings. For clarity, the drawings are schematic and simplified and they only show details that improve the understanding of the claims, while other details are omitted. Throughout the text, the same reference numerals are used for the same or corresponding parts. The various features of each aspect may each be combined with any or all features of the other aspects. These and other aspects, features and / or technical effects will be apparent from and explained with reference to the illustrations described below, in which:

[0188] Figure 1 A system including an intraoral scanning device is shown;

[0189] Figure 2 An exemplary intraoral scanning device is shown;

[0190] Figure 3A An example of a client device certificate key is shown;

[0191] Figure 3B An exemplary intraoral scanning device certificate is shown;

[0192] Figure 4 shows an exemplary sequence diagram;

[0193] Figure 5 An exemplary flow chart illustrating a method;

[0194] Figure 6 Schematically illustrating an exemplary architecture according to the present disclosure;

[0195] Figure 7 schematically illustrates an exemplary client device;

[0196] Figure 8 schematically illustrating an exemplary client device certificate;

[0197] Fig. 9 schematically illustrating an exemplary client device certificate;

[0198] Fig.10 schematically illustrating an exemplary signaling diagram;

[0199] Fig.11 schematically illustrating an exemplary signaling diagram;

[0200] Fig.12 schematically illustrating an exemplary signaling diagram;

[0201] Fig.13 a flow chart schematically illustrating an exemplary method; and

[0202] Fig.14 An exemplary signaling diagram is schematically illustrated. DETAILED DESCRIPTION

[0203] The specific embodiments described below in conjunction with the accompanying drawings are intended to serve as a description of various configurations. The specific embodiments contain specific details for the purpose of providing a thorough understanding of various concepts. However, it is apparent to those skilled in the art that these concepts can be practiced without these specific details. Several aspects of devices, systems, media, programs, and methods are described by various blocks, functional units, modules, components, circuits, steps, processes, algorithms, etc. (collectively referred to as "elements"). Depending on the specific application, design constraints, or other reasons, these elements can be implemented using electronic hardware, computer programs, or any combination thereof.

[0204] The electronic hardware may include microprocessors, microcontrollers, digital signal processors (DSPs), field programmable gate arrays (FPGAs), programmable logic devices (PLDs), gated logic, discrete hardware circuits, and other appropriate hardware configured to perform the various functions described throughout this disclosure. Computer programs should be broadly construed to mean instructions, instruction sets, codes, code segments, program codes, programs, subroutines, software modules, applications, software applications, software packages, routines, subroutines, objects, executable programs, threads of execution, procedures, functions, etc., whether referred to as software, firmware, middleware, microcode, hardware description language, or otherwise.

[0205] The scanning for providing intraoral scan data can be performed by a dental scanning system, which can include an intraoral scanning device (such as the TRIOS series scanner from 3Shape A / S). The dental scanning system can include wireless capabilities provided by a wireless network unit. The intraoral scanning device can adopt scanning principles such as triangulation-based scanning, confocal scanning, focused scanning, ultrasonic scanning, x-ray scanning, stereoscopic vision, motion recovery structure, optical coherence tomography OCT, or any other scanning principle. In an embodiment, the intraoral scanning device operates by projecting a pattern and translating the focus plane along the optical axis of the intraoral scanning device and capturing multiple 2D images at different focus plane positions, so that each captured 2D image series corresponding to each focus plane forms a stack of 2D images. The acquired 2D image is also referred to herein as an original 2D image, where original in this context means that the image has not been image processed. The focus plane position is preferably moved along the optical axis of the scanning system so that for a given view of the object (i.e., for a given arrangement of the scanning system relative to the object), the 2D images captured at multiple focus plane positions along the optical axis form a stack of the 2D images (also referred to herein as sub-scans). After moving the intraoral scanning device relative to the object or imaging the object in different views, a stack of new 2D images of the view can be captured. The focus plane position can be changed by means of at least one focusing element (e.g., moving the focusing lens). The intraoral scanning device generally moves and tilts during the scanning session so that at least some of the sub-scan groups overlap at least partially to enable stitching in post-processing. The result of the stitching is a digital 3D representation of the surface that is larger than the surface that can be captured by a single sub-scan, that is, larger than the field of view of the 3D scanning device. Stitching (also called registration) is performed by identifying overlapping areas of the 3D surface in each sub-scan and converting the sub-scans to a common coordinate system so that the overlapping areas match to ultimately produce a digital 3D model. For this purpose, an iterative closest point (ICP) algorithm can be used. Another example of an intraoral scanning device is a triangulation scanner, in which a time-varying pattern is projected onto a dental object, and a sequence of images of different pattern configurations is acquired by one or more cameras positioned at an angle relative to the projection unit.

[0206] The intraoral scanning device includes one or more light projectors configured to generate an illumination pattern to be projected onto a three-dimensional dental object during a scanning session. (One or more) light projectors preferably include a light source, a mask having a spatial pattern, and one or more lenses (such as a collimating lens or a projection lens). The light source can be configured to generate light of a single wavelength or a combination of wavelengths (monochromatic or polychromatic). The combination of wavelengths can be generated by using a light source configured to generate light including different wavelengths (such as white light). Alternatively, (one or more) light projectors can include multiple light sources (such as LEDs), which respectively generate light of different wavelengths (such as red, green, and blue), and the light of different wavelengths can be combined to form light including different wavelengths. Therefore, the light generated by the light source can be defined by a wavelength that defines a specific color, or by a range of different wavelengths that define a combination of colors (such as white light). In an embodiment, the intraoral scanning device includes a light source configured to excite a fluorescent material of a tooth to obtain fluorescent data from a dental object. Such a light source can be configured to generate a narrow range of wavelengths. In another embodiment, the light from the light source is infrared (IR) light that can penetrate dental tissue. The (one or more) light projectors can be a DLP projector using a micromirror array for generating a time-varying pattern, or a diffractive optical element (DOF), or a backlit mask projector in which a light source is placed behind a mask having a spatial pattern, whereby the light projected on the surface of the dental object is patterned. The backlit mask projector can include a collimating lens for collimating light from the light source, the collimating lens being placed between the light source and the mask. The mask can have a checkerboard pattern so that the generated illumination pattern is a checkerboard pattern. Alternatively, the mask can have other patterns (such as lines or dots, etc.).

[0207] The intraoral scanning device preferably also includes an optical component for directing light from the light source to the surface of the dental object. The specific arrangement of the optical component depends on whether the intraoral scanning device is a focused scanning device, a scanning device using triangulation, or any other type of scanning device. The same applicant further describes a focused scanning device in EP 2 442 720 B1, the entire content of which is incorporated herein by reference.

[0208] Using the optical components of the intraoral scanning device, light reflected from the dental object in response to the illumination of the dental object is directed toward (one or more) image sensors. The (one or more) image sensors are configured to generate multiple images based on the incident light received from the illuminated dental object. The image sensor can be a high-speed image sensor (such as an image sensor configured to acquire images with an exposure of less than 1 / 1000 seconds or a frame rate of more than 250 frames per second (fps)). As an example, the image sensor can be a rolling shutter (CCD) or a global shutter sensor (CMOS). The (one or more) image sensor can be a monochrome sensor that includes a color filter array (such as a Bayer filter and / or additional filters) that can be configured to substantially remove one or more color components from the reflected light before the reflected light is converted into an electrical signal and retain only other components that have not been removed. For example, such additional filters can be used to remove a portion of the white light spectrum (such as a blue component) and retain only the red component and the green component in the signal generated in response to the excitation fluorescent material of the tooth.

[0209] The network unit may be configured to connect the dental scanning system to a network including a plurality of network elements, the plurality of network elements including at least one network element configured to receive the processed data. The network unit may include a wireless network unit. The wireless network unit may be configured to wirelessly connect the dental scanning system to a network including a plurality of network elements, the plurality of network elements including at least one network element configured to receive the processed data.

[0210] The dental scanning system preferably also includes a processor configured to generate scan data (such as intraoral scan data) by processing a two-dimensional (2D) image acquired by the intraoral scanning device. The processor may be part of the intraoral scanning device. As an example, the processor may include a field programmable gate array (FPGA) and / or an advanced RISC machine (ARM) processor located on the intraoral scanning device. The scan data includes information related to a three-dimensional dental object. The scan data may include any of the following: a 2D image, a 3D point cloud, depth data, texture data, intensity data, color data, and / or a combination thereof. As an example, the scan data may include one or more point clouds, each of which includes a set of 3D points describing a three-dimensional dental object. As another example, the scan data may include an image, each image including image data described, for example, by image coordinates and a timestamp (x, y, t), wherein the depth information may be inferred from the timestamp. The (one or more) image sensors of the intraoral scanning device may acquire multiple original 2D images of the dental object in response to irradiating the object using one or more light projectors. Multiple original 2D images may also be referred to herein as stacks of 2D images. The 2D image can then be provided as an input to a processor that processes the 2D image to generate scan data. The processing of the 2D image can include a step of determining which portion of each of the 2D images is focused in order to infer / generate depth information from the image. The depth information can be used to generate a 3D point cloud including, for example, a set of 3D points in a space described by Cartesian coordinates (x, y, z). The 3D point cloud can be generated by a processor or another processing unit. Each 2D / 3D point can also include a timestamp indicating when the 2D / 3D point was recorded, i.e., which image in the stack of 2D images the point originated from. The timestamp is related to the z coordinate of the 3D point, i.e., the z coordinate can be inferred from the timestamp. Therefore, the output of the processor is scan data, and the scan data can include image data and / or depth data, for example, described by image coordinates and timestamps (x, y, t), or alternatively described as (x, y, z). In addition to scan data, the intraoral scanning device can be configured to transmit other types of data. Examples of data include 3D information, texture information such as infrared (IR) images, fluorescent images, reflectance color images, X-ray images, and / or combinations thereof.

[0211] Figure 1 Exemplary equipment that may be used to manufacture, maintain, and / or operate the intraoral scanning device 2 is shown. Figure 1 An exemplary system 1 and an intraoral scanning device 2 are shown. The system 1 may include one or more of a manufacturing device 12, a client device 10, and a server device 16 for manufacturing, maintaining, and / or operating the intraoral scanning device 2 in connection with processing intraoral scan data of a patient and providing 2D image data and / or 3D image data.

[0212] The manufacturing device 12 may be configured to perform any of the steps of the method for manufacturing an intraoral scanning device. The manufacturing device 12 may be configured to generate an intraoral scanning device certificate including at least one of an intraoral scanning device identifier and a generated intraoral scanning device key. The manufacturing device 12 may be configured to transmit the intraoral scanning device certificate to the intraoral scanning device. The manufacturing device 12 may include a processing element (such as a processor and a memory)

[0213] The intraoral scanning device 2 is configured to perform intraoral scanning data and provide 2D image data and / or 3D image data based on the processed intraoral scanning data. The intraoral scanning device 2 can be configured to communicate with the manufacturing device 12 using, for example, a wireless communication link 23 (such as a unidirectional wireless communication link or a bidirectional wireless communication link). The wireless communication link can be carried over a short-range communication system (such as WIFI, Bluetooth, or Bluetooth low energy).

[0214] The intraoral scanning device 2 may be configured to connect to the client device 10 via a wireless communication link 21, such as a bidirectional wireless communication link. The wireless communication link 21 may be carried over a short-range communication system, such as WIFI, Bluetooth, or Bluetooth low energy. The intraoral scanning device 2 may be configured to connect to the client device 10 over a network. The client device 10 may allow remote updates (such as firmware updates, customization updates, debugging updates) to the intraoral scanning device, wherein the dispenser is connected to the intraoral scanning device via the user's client device 10. The client device 10 may include a computing device acting as a client, such as a customization device 14 (such as a handheld device, a repeater, a tablet computer, a clinic computer, and / or a USB dongle plugged into a personal computer). The processing unit / intraoral scanning device is configured to: receive a link request for a session via an interface; and obtain a session identifier. For example, the interface of the intraoral scanning device 2 is configured to receive a link request from the client device 10 via the communication link 21. For example, the intraoral scanning device 2 receives a link request from the client device 10 to establish a communication session. The processing unit of the intra-oral scanning device is configured to transmit a link response including the intra-oral scanning device identifier and the session identifier via the interface. The processing unit of the intra-oral scanning device is configured to receive an authentication message including the authentication key identifier and the client device data via the interface (e.g., received from the client device 10 via the communication link 21).

[0215] The client device 10 may be configured to communicate with the server device 16 via a communication link 24, such as a bidirectional communication link. The communication link 24 may be a wired link and / or a wireless communication link. The communication link 24 may include a network, such as the Internet.

[0216] For maintenance and update purposes, the client device 10 may be configured to communicate with a server device 16. The server device 16 may include a computing device configured to act as a server, i.e., to serve requests from the client device 10 and / or from the intraoral scanning device 2. The server device 16 may be controlled by the intraoral scanning device manufacturer. The server device 16 may be configured to communicate with the manufacturing device 12 via a communication link 22 for manufacturing maintenance and / or operational purposes. The server device 16 and the manufacturing device 12 may be located at the same location and / or form one entity for manufacturing maintenance and / or operational purposes of the intraoral scanning device 2.

[0217] Figure 2 An exemplary intraoral scanning device 2 is shown. The intraoral scanning device 2 includes a processing unit 4, a memory unit 6, and a wireless interface 8. The intraoral scanning device 2 includes a processing unit 4, which is configured to process the patient's intraoral scan data and provide 2D image data and / or 3D image data. The wireless interface 8 includes a wireless transceiver, for example, configured to perform wireless communication in a frequency range from 2.4 GHz to 2.5 GHz, 2.4 GHz to 5 GHz, about 2.45 GHz, or about 5 GHz. The wireless interface 8 is optionally configured to perform wireless communication with a manufacturing device 12. The processing unit 4 can be configured to provide 2d image data and / or 3D image data based on the intraoral scan data according to data received during manufacturing and / or updating (such as a custom update, a firmware update, or a debugging update). The intraoral scanning device optionally includes a light projector 220 and an image sensor 230. The light projector includes at least one or more light emitting diodes and / or one or more infrared light sources for emitting light patterns to a patient's three-dimensional dental object 290 or a wax model 290 as a replica of the patient's dental object. The image sensor 230 receives reflected light from the dental object 290, and the image sensor 230 converts the reflected light into intraoral scan data. The processing unit 4 is then configured to process the intraoral scan data into 2D image data and / or 3D image data. The image data is then forwarded to the wireless interface 8, which transmits the data to an external device.

[0218] The processing unit 4 is configured to: receive a link request for a session via the wireless interface 8; and obtain a session identifier. Therefore, the processing unit 4 includes, for example, an obtaining unit 41 configured to obtain a session identifier. An example of the obtaining unit 41 includes a random number or pseudo-random number generator. The wireless interface is configured to receive a link request for a session from the client device 10. The processing unit 4 is configured to obtain the session identifier, such as by generating a random number or a pseudo-random number. The processing unit 4 is configured to store the session identifier in the memory unit 6. The memory unit 6 can be configured to store the session identifier at a memory address of the memory unit and / or in a memory cell of the memory unit (such as in a specified memory cell and / or at a specified address). The link request may include an authentication key identifier and / or an authentication type identifier to permit the intra-oral scanning device 2 to perform the link request and the authentication of the client device 10 sending the link request at this early stage. This can provide a certain degree of access control.

[0219] The processing unit 4 is configured to transmit a link response including the intra-oral scanning device identifier and the session identifier via the wireless interface 8. The processing unit 4 may be configured to generate the link response by including the session identifier and the intra-oral scanning device identifier in the link response. The intra-oral scanning device identifier may refer to a unique identifier of the intra-oral scanning device 2 (such as a serial number, a MAC address, and / or a hardware identifier of the intra-oral scanning device 2). The wireless interface 8 is configured to transmit the link response to, for example, the client device 10.

[0220] The processing unit 4 is configured to receive an authentication message including an authentication key identifier and client device data via the wireless interface 8. For example, the wireless interface 8 can be configured to receive an authentication message from a client device 10. For example, the intraoral scanning device 2 receives an authentication message from the client device 10 in order to establish a communication session. The client device data may include a client device certificate (encrypted or unencrypted), customization data, intraoral scanning device operating parameters and / or firmware data. For example, the authentication message may include an authentication key identifier in plain text. The authentication key identifier may indicate an intraoral scanning device key. The processing unit 4 that processes the authentication key identifier is configured to verify the authentication key identifier, for example by comparing the authentication key identifier with an intraoral scanning device key identifier, for example, stored in the memory unit 6, and determine that the authentication key identifier is acceptable if the authentication key identifier is, for example, equal to or higher than the stored intraoral scanning device key identifier.

[0221] The processing unit 4 is configured to select an intra-oral scanning device key from a plurality of intra-oral scanning device keys in the memory unit 6 based on the authentication key identifier. Therefore, the processing unit 4 includes, for example, a selection unit 42, which is configured to select the intra-oral scanning device key based on the authentication key identifier. When the authentication key identifier is acceptable to the intra-oral scanning device 2 based on the intra-oral scanning device key identifier held by the intra-oral scanning device 2, the processing unit 4 is configured to select the intra-oral scanning device key indicated by the authentication key identifier, and use the selected intra-oral scanning device key as a key material for protecting the session. Optionally, the processing unit 4 can be configured to select the intra-oral scanning device key from a plurality of intra-oral scanning device keys in the memory unit 6 based on the authentication key identifier and the authentication type identifier. The authentication type identifier can be included in the authentication message and received by the intra-oral scanning device 2 in plain text, and / or as a client device type identifier (encrypted or decrypted) in the client certificate. For example, the processing unit 4 can be configured to select the authentication key identifier and the intra-oral scanning device key indicated by the authentication type identifier.

[0222] The processing unit 4 is configured to verify the client device data based on the selected intra-oral scanning device key; and if the verification fails, the session is terminated. For example, the processing unit 4 is configured to verify the client device data based on the selected intra-oral scanning device key by verifying the integrity of the client device data (such as verifying the MAC and / or digital signature of the client device data) based on the selected intra-oral scanning device key. The processing unit 4 is configured to decrypt the client device data using the selected intra-oral scanning device key (as a key material for deriving a decryption key or as a decryption key) when receiving the encrypted client device data, and verify the client device data based on the selected intra-oral scanning device key by verifying the content of the decrypted client device data. The processing unit 4 can be configured to verify the client device data based on the selected intra-oral scanning device key by comparing the decrypted client device data with the data stored in the memory unit 6. The client device data can include a client device certificate (such as an encrypted client device certificate), an authentication key identifier, and / or an authentication type identifier. The client device 10 can be assigned a client device certificate. The client device certificate refers to a certificate generated by, for example, the manufacturing device 12 and assigned to the client device. Figure 3A An example of a client device certificate is shown in . Processing unit 4 may be configured to generate a certificate key based on the selected intra-oral scan device key and / or session identifier. Verifying the client device data may include decrypting the encrypted client device certificate with the certificate key to obtain a decrypted version of the encrypted client device certificate.

[0223] The processing unit 4 may be configured to verify the client device data by determining whether the authentication key identifier matches the client device key identifier of the (decrypted) client device certificate, and if a mismatch is determined, then the verification fails.

[0224] In one or more exemplary intraoral scanning devices, the processing unit 4 is configured to verify the client device data by determining whether the client device type identifier of the client device certificate is valid, and if the client device type identifier of the client device is invalid, the verification fails. The processing unit 4 is configured to verify the client device data by verifying the digital signature of the client device certificate included in the client device data, and if the digital signature is not verified, the verification fails.

[0225] The processing unit 4 may be configured to verify the client device data by determining whether the signing device identifier and / or the client device identifier is valid (eg, not blacklisted).

[0226] In one or more exemplary intra-oral scanning devices, processing unit 4 is configured to generate an offline session key based on the public secret and the session identifier, and processing unit 4 is configured to communicate with the client device using the offline session key.

[0227] In one or more exemplary intra-oral scanning devices, the authentication message 421 includes an authentication token identifier, and the processing unit 4 is configured to store the authentication token identifier in the memory unit 6 and link the authentication token identifier with the public secret. The authentication token identifier may indicate that token-based authentication is enabled at the intra-oral scanning device 2, i.e., when the intra-oral scanning device receives the authentication token identifier from the authenticated client device 10, the intra-oral scanning device may enable token-based authentication in future communications with the same client device 10 by storing, for example, an indicator such as a flag associated with the public secret and the client device. For example, the intra-oral scanning device 2 receiving the authentication token identifier may be configured to instruct the processing unit 4 to enable token-based authentication by storing and / or linking the token identifier with the public secret generated for the same client device 10 (such as by storing and / or linking the token identifier with the public secret and the client device identifier of the same client device in, for example, a table).

[0228] In the intra-oral scanning device 2, the processing unit 4 is configured to generate a session key based on the session identifier and the intra-oral scanning device key, and the processing unit 4 is configured to receive and authenticate session data based on the session key.

[0229] In one or more exemplary intraoral scanning devices, the processing unit 4 is configured to receive an additional authentication message via the wireless interface 8. The additional authentication message includes the client device data and the authentication device identifier. The processing unit 4 can be configured to obtain a public secret from the memory unit 6 based on the authentication device identifier. The processing unit 4 can be configured to: generate an additional certificate key from the public secret; and verify the client device data based on the additional certificate key.

[0230] Figure 3A An exemplary client device certificate 106 is shown. The client device data may include the client device certificate 106 and / or the encrypted client device certificate 106A. The client device 10 may be assigned the client device certificate 106. The client device certificate 106 refers to a certificate generated by, for example, the manufacturing device 12 and assigned to the client device 10. The encrypted client device certificate 106A may be generated by the client device 10 using an encryption algorithm and a certificate key.

[0231] The client device certificate 106 includes a certificate type identifier 130A. The certificate type identifier 130A may indicate a certificate type among a plurality of certificate types, such as an intraoral scanning device family certificate type, an intraoral scanning device certificate type, a firmware certificate type, a research and development certificate type, a client device certificate type. The certificate type identifier 130A may be used by the intraoral scanning device 2 to identify what type of certificate it receives, stores and / or retrieves and to act accordingly. The client device certificate 106 may include a version identifier 132 that indicates a data format version of the client device certificate 106. The intraoral scanning device 2 may be configured to use the certificate type identifier 130A and / or the version identifier 132 to determine what type of data the certificate includes, and / or what type of data is included in a field of the certificate. For example, the intraoral scanning device 2 determines what field of the certificate 106 includes the digital signature 113A, and / or which public key is needed to verify the digital signature 113A, based on the certificate type identifier 130A and / or the version identifier 132. It is contemplated that there is a one-to-one mapping between the certificate type identifier 130A and the public-private key pair. It is contemplated that the intra-oral scanning device 2 obtains the corresponding public key (such as retrieving the corresponding public key from the memory unit 6, a remote data storage), and / or receives the corresponding public key from the client device 10 and / or the server device 16. The client device certificate 106 may include a signing device identifier 136A. The signing device identifier 136A refers to a unique identifier that identifies a device (such as the client device 10, the server device 16, an integrated circuit card, a smart card, and / or a hardware security module thereof) that has signed the client device certificate 106, such as during the manufacture of the client device. The signing device identifier 136A may, for example, include a media access control, MAC, an address of the signing device, and / or a serial number of the signing device. The signing device identifier 136A allows, for example, the intra-oral scanning device 2 to determine whether the signing device is, for example, blacklisted, and thereby rejects a certificate signed by a blacklisted signing device. The client device certificate 106 may include one or more hardware identifiers, such as the first hardware identifier 148A and the second hardware identifier 150. The hardware identifiers 148A, 150 may identify a piece of hardware included in the client device 10, such as a radio chip included in the client device 10 and / or a digital signal processor of the client device 10. The hardware identifier(s) may be stored in a register of the piece of hardware included in the intra-oral scanning device during the manufacture of the hardware. The hardware identifier(s) may include a serial number, a media access control, a MAC, an address, a chip identifier, or any combination thereof.

[0232] In one or more exemplary client device certificates, the client device certificate 106 includes a client device type identifier 156. The client device type identifier 156 may indicate the type to which the client device belongs. The client device certificate 106 may include a client device identifier 158. The client device certificate may include a client device key identifier 159. The client device key identifier 159 may indicate a client device key used as key material to protect communications with external parties.

[0233] In one or more exemplary client device certificates, the client device certificate 106 includes a Bluetooth address or an IP address (when the wireless communication is based on WIFI) 160 of the client device.

[0234] The client device certificate 106 includes a digital signature 113A. The digital signature 113A enables proof or verification of the authenticity of the client device certificate (such as verifying the legitimacy of the signer). The digital signature 113A is optionally generated by the manufacturing device 12 using a client device customized private key. The intraoral scanning device 2 can be configured to verify the digital signature 113A when receiving a client device certificate including the digital signature 113A (i.e., receiving an authentication message including an encrypted client device certificate, and obtaining a decrypted version of the client device certificate 106B). The digital signature 113A can be verified by the intraoral scanning device 2 using, for example, a corresponding client device customized public key stored in the memory unit 6. If the digital signature 113A is not successfully verified using the so-called public key, the intraoral scanning device 2 can ignore the client device certificate 106 (and the authentication message) and / or terminate normal operation / session. This can provide the advantage that the intraoral scanning device 2 rejects a client device certificate 106 (and the authentication message) that has been tampered with or received from an unauthenticated party. Therefore, communication with the intra-oral scanning device 2 can be robust against impersonation, modification and spoofing attacks.

[0235] Figure 3B An exemplary intra-oral scanning device certificate 100 is shown. The intra-oral scanning device certificate 100 includes an intra-oral scanning device identifier 112, at least one intra-oral scanning device key identifier (including a first intra-oral scanning device key identifier 114 indicating an intra-oral scanning device key), and one or more intra-oral scanning device keys. The intra-oral scanning device identifier 112 may refer to a unique identifier or a pseudo-unique identifier. The first intra-oral scanning device key identifier 114 indicates the first intra-oral scanning device key(s) of the intra-oral scanning device certificate. For example, the first intra-oral scanning device key identifier 114 may indicate or point to an intra-oral scanning device key (e.g., a first primary intra-oral scanning device key 115A) of a first group 115 of intra-oral scanning device keys (115A, 115B, 115C, 115D) of the intra-oral scanning device certificate.

[0236] The intra-oral scanning device certificate 100 optionally includes at least four sets of intra-oral scanning device keys to enable secure and different communications with at least four different client devices / client device types.

[0237] The intra-oral scan device certificate 100 includes a first set 115 of intra-oral scan device keys including a first primary intra-oral scan device key 115A. The at least one intra-oral scan device key identifier includes a first intra-oral scan device key identifier 114 indicating a first set 115 of intra-oral scan device keys 115A, 115B, 115C, 115D. The first set 115 of intra-oral scan device keys includes, for example, a first primary key 115A, a first secondary key 115B, a first tertiary key 115C, and a first quaternary key 115D that are specific to protecting communications to and from a first client device or a first client device type. For example, the first set 115 of intra-oral scan device keys may be a set of intra-oral scan device keys 115A, 115B, 115C, 115D for protecting communications of intra-oral scan device data with a first client device.

[0238] The plurality of intra-oral scan device keys may include a second group 117 of intra-oral scan device keys (including a second primary intra-oral scan device key 117A, a second secondary intra-oral scan device key 117B, a second tertiary intra-oral scan device key 117C, and / or a second quaternary intra-oral scan device key 117D). The at least one intra-oral scan device key identifier includes a second intra-oral scan device key identifier 116 indicating an intra-oral scan device key of the second group 117 of intra-oral scan device keys 117A, 117B, 117C, 117D. The intra-oral scan device is configured to communicate with one or more client devices (such as a first client device and / or a second client device). For each client device or client device type configured to communicate with the intra-oral scan device, the intra-oral scan device certificate optionally includes a group of intra-oral scan device keys configured to enable secure communication with the specific client device or client device type, and an intra-oral scan device key identifier indicating which intra-oral scan device keys are part of the intra-oral scan device certificate. The intra-oral scanning device certificate may include a third group 119 of intra-oral scanning device keys (including a third primary intra-oral scanning device key 119A, a third secondary intra-oral scanning device key 119B, a third tertiary intra-oral scanning device key 119C, and / or a third quaternary intra-oral scanning device key 119D). The at least one intra-oral scanning device key identifier includes a third intra-oral scanning device key identifier 118 indicating an intra-oral scanning device key of the third group 119 of intra-oral scanning device keys. The intra-oral scanning device certificate 100 may include a fourth group of intra-oral scanning device keys (including a fourth primary intra-oral scanning device key (not shown)). The at least one intra-oral scanning device key identifier includes a quaternary intra-oral scanning device key identifier indicating an intra-oral scanning device key in the fourth group of intra-oral scanning device keys. The intra-oral scanning device 2 may be configured to select a group of intra-oral scanning device keys based on a client device or a type of client device connected to the intra-oral scanning device, and select an intra-oral scanning device key from the group of intra-oral scanning device keys selected based on an intra-oral scanning device key identifier associated with the selected group of intra-oral scanning devices.

[0239] The intra-oral scanning device certificate 100 optionally includes a certificate type identifier 130B. The certificate type identifier 130B indicates that the intra-oral scanning device certificate 100 is an intra-oral scanning device certificate (e.g., selected from a plurality of certificate types, such as an intra-oral scanning device series certificate type, an intra-oral scanning device certificate type, a firmware certificate type, a research and development certificate type, and a client device certificate type). The certificate type identifier 130B can be used to enable the intra-oral scanning device 2 to identify what type of certificate it receives, stores, authenticates, and / or retrieves. The intra-oral scanning device certificate 100 may include a version identifier that indicates a data format version of the intra-oral scanning device certificate. The intra-oral scanning device 2 may use the certificate type identifier 130B and / or the version identifier to determine what type of data the intra-oral scanning device certificate 100 includes and what type of data is included in a field of the intra-oral scanning device certificate 100. For example, the intra-oral scanning device 2 may determine what field of the certificate includes a digital signature 113B and which public key is needed to verify the digital signature 113B based on the certificate type identifier 130B and / or the version identifier. It is contemplated that there is a one-to-one mapping between the certificate type identifier 130B and the public-private key pair used to generate the digital signature 113B. The intraoral scanning device certificate 100 may include a length identifier indicating the length of the intraoral scanning device certificate 100 (eg, in bits, bytes).

[0240] The intra-oral scanning device certificate 100 optionally includes a signing device identifier 136B. The signing device identifier 136B refers to a unique identifier that identifies a device (such as a manufacturing device 12, such as an integrated circuit card, a smart card, a hardware security module included in the manufacturing device 12) that has signed the intra-oral scanning device certificate 100. The signing device identifier 136B may, for example, include a media access control, MAC, an address of the signing device, a serial number. The signing device identifier 136B allows, for example, the intra-oral scanning device 2 to determine whether the signing device is, for example, blacklisted, and thereby reject the intra-oral scanning device certificate 100 signed by the blacklisted signing device.

[0241] The intraoral scanning device certificate 100 optionally includes one or more hardware identifiers (including a first hardware identifier 148B and / or a second hardware identifier (not shown)). The first hardware identifier 148B can identify a piece of hardware included in the intraoral scanning device 2 (such as the processing unit 4, a radio chip included in the intraoral scanning device 2, a digital signal processor of the intraoral scanning device 2). The first hardware identifier 148B can also be stored in a register of the piece of hardware included in the intraoral scanning device 2 during the manufacture of the piece of hardware. The first hardware identifier 148B can include a serial number, a media access control, a MAC, an address, a chip identifier, or any combination thereof. The intraoral scanning device certificate 100 can include the first hardware identifier 148B, the second hardware identifier, and / or the third hardware identifier. For example, the first hardware identifier 148B may provide a first intra-oral scanning device specific value present in a register of a hardware module (e.g., a processing unit or a radio chip) of the intra-oral scanning device 2, while the second hardware identifier may provide a second intra-oral scanning device specific value present in a register of a hardware module of the intra-oral scanning device 2, and the third hardware identifier may provide a third hardware module identifier (e.g., a processing unit identifier, a DSP identifier). Upon receiving an intra-oral scanning device certificate 100 including the first hardware identifier 148B, the intra-oral scanning device 2 may verify the intra-oral scanning device certificate 100 by comparing its stored hardware identifier with the first hardware identifier 148B included in the received intra-oral scanning device certificate 100. In this way, the intra-oral scanning device 2 may determine whether the received intra-oral scanning device certificate is intended for the intra-oral scanning device 2, and reject the received intra-oral scanning device certificate if the stored and received hardware identifiers do not match.

[0242] The intra-oral scanning device certificate 100 optionally includes a client device type authorization identifier 144. The client device type may include a model, class, or type of the client device (such as a tablet computer product model, class, or type, a USB dongle product model, class, or type). The client device type authorization identifier 144 is an identifier of an authorized client device type (such as an identifier of a client device type that the intra-oral scanning device 2 can authorize for communication (such as for customization, maintenance, and / or operation)). The client device type authorization identifier 144 is, for example, a bit field indicating the client device types that the intra-oral scanning device 2 should allow customization of.

[0243] The intraoral scanning device certificate 100 optionally includes a token parameter 146. The token parameter 146 indicates whether token-based authentication is to be enabled. For example, if the token parameter 146 is set to 0, token-based authentication of the client device will not be enabled by the intraoral scanning device 2 and the intraoral scanning device 2 will use a combination of a client device type identifier and / or a client device identifier (such as a serial number) to perform authentication of the client device 10. If, for example, the token parameter 146 is set to 1, token-based authentication of the client device will be enabled by the intraoral scanning device 2 (i.e., the intraoral scanning device 2 authenticates the client device 10 (such as based on a token received from the client device 10)). The intraoral scanning device 2 can also derive a session-specific token based on the received token parameter 146, which is used to accept a connection to the client device 10, for example, without user intervention.

[0244] The intraoral scanning device certificate 100 includes one or more of a hardware platform identifier 138, a software platform identifier 140, and / or a certificate timestamp 142. The hardware platform identifier 138 may identify a hardware platform (such as an operable intraoral scanning device hardware platform, i.e., a hardware platform on which the intraoral scanning device certificate may be used). The software platform identifier 140 may identify a series of software platforms on which the intraoral scanning device certificate is configured to operate. The certificate timestamp 142 refers to a timestamp of production or manufacture of the intraoral scanning device certificate 100 (such as a timestamp of the manufacturing device 12 indicating the moment when the intraoral scanning device certificate 100 has been generated). The certificate timestamp 142 may be in the form of, for example, hours, minutes, dates, months, and years.

[0245] The intraoral scanning device certificate includes a digital signature 113B and / or a MAC. The digital signature 113B enables proof or verification of the authenticity of the intraoral scanning device certificate 100 (such as verifying the legitimacy of the signer (for example, whether the signer is a legitimate manufacturing device)). The digital signature 113B is generated by the manufacturing device 12 using the device series private key during the manufacture of the intraoral scanning device. Then, for example, when receiving the intraoral scanning device certificate 100 including the digital signature 113B, the intraoral scanning device 2 or the processing unit 4 can verify the digital signature 113B. The digital signature 113B can be verified by the intraoral scanning device 2 using the corresponding device series public key. If the digital signature 113B is not successfully verified using the so-called public key, the intraoral scanning device can ignore the intraoral scanning device certificate 100 and / or terminate normal operation.

[0246] Figure 4An exemplary sequence diagram 400 involving an intra-oral scanning device 2 and a client device 10 is shown. The client device 10 may include a customization device 14. The intra-oral scanning device 2 receives a link request or message 411 for a session from the client device 10 via the wireless interface 8. When the client device 10 includes the customization device 14, the customization device 14 may generate a link request 410, which is transmitted by the client device 10 as a link request 411. The intra-oral scanning device 2 obtains the session identifier 180, such as generating the session identifier 180. The intra-oral scanning device 2 generates a link response 412 including the intra-oral scanning device identifier 112 and / or the session identifier 180 and transmits the link response 412 to the client device 10. When the client device 10 includes the customization device 14, the customization device 10 may receive the link response 412 via the client device 10. The client device 10 generates an authentication message 421 and transmits the authentication message 421 to the intra-oral scanning device 2. The intra-oral scanning device 2 receives the authentication message 421 from the client device 10. The authentication message 421 includes the authentication key identifier 166, the optional authentication type identifier 168, and the client device data 109. The client device data 109 includes the encrypted client device certificate 106A or the client device certificate 106. Any of the client device type identifier 156, the client device identifier 158, and the user identifier may be included in the encrypted client device certificate 106A. Any of the client device identifier, the client device type identifier 156, and / or the user identifier may be included in the authentication message 421 in plain text form, or as part of the (plain) client device certificate 106. When the client device 10 includes the customization device 14, the customization device 14 may generate the authentication message 420, which is transmitted by the client device 10 as the authentication message 421.

[0247] Optionally, the intra-oral scanning device 2 is configured to verify the authentication message 421 by verifying the content, source and / or integrity of the authentication message 421. For example, the intra-oral scanning device 2 verifies whether the received value of the received authentication key identifier 166 is higher than or equal to the intra-oral scanning device key identifier included in the intra-oral scanning device certificate 100 (and / or the latest value stored by the intra-oral scanning device 2 as the intra-oral scanning device key identifier in, for example, a flash memory). If the intra-oral scanning device 2 determines that the received value of the received authentication key identifier 166 is higher than or equal to the intra-oral scanning device key identifier, then the authentication continues, otherwise the session is terminated immediately (with an appropriate error code). This prevents the intra-oral scanning device 2 from communicating with expired / revoked client devices.

[0248] For example, the intra-oral scanning device 2 determines the type of the client device based on the authentication type identifier. The intra-oral scanning device 2 selects an intra-oral scanning device key from a plurality of intra-oral scanning device keys based on the authentication type identifier 168 and / or the authentication key identifier 166. For example, the intra-oral scanning device 2 identifies the intra-oral scanning device key corresponding to the received authentication key identifier 166. The intra-oral scanning device 2 uses the identified intra-oral scanning device key and the session identifier 180 (e.g., a 16-byte random number) sent to the client device 10 in the link response 412 to derive a certificate key (such as calculating a public secret from which the certificate key can be derived).

[0249] Using the certificate key, the intra-oral scanning device 2 decrypts the encrypted client device certificate 106A. The intra-oral scanning device 2 can then verify that the certificate type identifier 130A included in the decrypted client device certificate 106B corresponds to the entitlement certificate 106B. The intra-oral scanning device 2 can then verify that the authentication type identifier 168 received in plain text matches the client device type identifier 156 in the decrypted certificate 106B. The intra-oral scanning device 2 can then verify that the authentication key identifier 166 received in plain text matches the client device key identifier 159 in the decrypted certificate 106B, and can further evaluate whether the authentication key identifier 166 and / or the client device key identifier 159 indicates an intra-oral scanning device key identifier (such as the first intra-oral scanning device key identifier 114) held by the intra-oral scanning device 2. The intra-oral scanning device 2 can then verify that the version identifier 132 in the decrypted certificate 106B is supported by the intra-oral scanning device 2. The intra-oral scanning device 2 may then verify that the authentication type identifier 168 or the client device type identifier 156 received in plain text is listed in the client device type authorization identifier 144 of the stored intra-oral scanning device certificate 100. The intra-oral scanning device 2 may then verify that the authentication type identifier 168 or the client device type identifier 156 associated with the first hardware identifier 148A, 150 received in plain text is not blacklisted. The signing device identifier 136A is verified not to be listed on the blacklist. The intra-oral scanning device 2 may then verify the digital signature 113A of the client device certificate 106B using the matching public key.

[0250] When the authentication message 421 and / or verification is successfully authenticated, the intra-oral scanning device 2 may send an authentication response 422 to the client device 10 , and when the client device 10 includes a customization device 14 , the client device 10 may forward the authentication response 422 to the customization device 14 .

[0251] The communication channel is now open and secure. The client device 10 or the customization device 14 can send intraoral scanning device data 430 (such as intraoral scanning device data 430 in a session protected by a session key) to the intraoral scanning device 2 via the client device 10. The intraoral scanning device data 430 includes, for example, firmware, customization data, and / or intraoral scanning device operating parameters. The customization data may be, for example, data generated by the customization device 14 used by a dentist. The customization data may include setting data (such as power management settings, configuration of the user interface of the intraoral scanning device, and / or settings of the optical unit of the intraoral scanning device). Firmware may refer to a computer program provided by the manufacturer of the intraoral scanning device and to be installed on the intraoral scanning device 2 to control the intraoral scanning device 2. For example, firmware is to be installed to upgrade the operation and capabilities of the intraoral scanning device 2.

[0252] For example, when the client device 10 is reconnected to the intraoral scanning device 2, the processing unit 4 may be configured to receive an additional authentication message 440 via the interface 8. The additional authentication message 440 includes the client device data 110 and the authentication device identifier 169. The processing unit 4 may be configured to verify the authentication message 440 and authenticate the client device that sent the authentication message 440. The processing unit 4 may be configured to obtain a public secret from the memory unit 6 based on the authentication device identifier 169. The memory unit 6 may have a client device identifier 158 associated with a corresponding public secret stored thereon for the authenticated client device 10. The processing unit 4 may then be configured to retrieve the corresponding public secret based on the authentication device identifier 169. For example, the public secret has been generated and stored in the initial round of authentication of the returned client device 10. Therefore, once the client device 10 is authenticated, the processing unit 4 can retrieve the corresponding public secret from the memory unit 6. This provides faster subsequent authentications and avoids having to regenerate the public secret for calculating the additional certificate key, and thereby saves corresponding power consumption. The processing unit 4 may be configured to generate an additional certificate key from the public secret, and to verify the client device data 110 based on the additional certificate key. For example, the processing unit 4 generates the additional certificate key by calculating a hash value based on the public secret and the certificate value. As described above, the processing unit 4 may be configured to verify the client device data 110 based on the additional certificate key by verifying the integrity of the client device data 110 (such as verifying the MAC and / or digital signature of the client device data 110). The processing unit 4 is configured to verify the client device data 110 based on the additional certificate key when receiving the encrypted client device data 110 by decrypting the client device data 110 using the additional certificate key (as a decryption key). The processing unit 4 is configured to verify the client device data 110 by verifying the content of the client device data 110. The processing unit 4 may be configured to verify the client device data by comparing the client device data 110 with the data stored in the memory unit 6. The client device data 110 may include a client device certificate 106 (such as an encrypted client device certificate 106A).

[0253] The processing unit 4 may be configured to receive a further authentication message 450 comprising the client device data 110 and the authentication token identifier 167. The processing unit 4 is configured to: obtain a public secret from the memory unit 6 based on the authentication token identifier 167; generate a token key from the public key.

[0254] In one or more exemplary intra-oral scanning devices, the processing unit 4 is configured to receive a further authentication message 450, the further authentication message 450 including the client device data 110, the authentication type identifier 168, the authentication key identifier 166, and / or the authentication session token identifier 167. The further authentication message may include the authentication device identifier 169. The processing unit 4 may be configured to find a common secret in the memory unit 6 that is linked to the client device type identifier and / or the client device identifier of the client device 10 that sent the further authentication message 450 based on locating a stored client device type identifier corresponding to the authentication type identifier 168 and / or locating a stored client device identifier corresponding to the authentication device identifier 169. The processing unit 4 may be configured to: obtain the common secret based on the authentication type identifier 168; generate a token key based on the common secret; and generate a session token identifier based on the token key and the session identifier. The processing unit 4 may have generated a public secret in an earlier session with the client device 10, for example to establish a certificate key and may have stored the public secret and linked the public secret to the client device type identifier and / or the client device identifier. The processing unit 4 may then be configured to obtain the public secret based on the authentication type identifier 168 and / or the authentication client identifier 169 corresponding to the stored client device type identifier and / or the client device identifier. The processing unit 4 may be configured to generate a token key by performing a hash function on the public secret and a token value (e.g., a predefined arbitrary string or a predefined arbitrary value). The processing unit 4 may be configured to generate a session token identifier based on the token key and the session identifier by generating a session identifier and performing a hash function on the token key and the session identifier. The processing unit 4 may be configured to verify the authentication session token identifier based on the session token identifier. The processing unit 4 may be configured to verify the authentication session token identifier by comparing the authentication session token identifier 167 with the generated session token identifier. For example, if the processing unit determines that the authentication session token identifier 167 matches the generated session token identifier, then the authentication is successful, and the processing unit 4 can proceed without physical intervention by the user and continue to verify the client device data 110 provided in the further authentication message 450. The client device data 110 may include a client device certificate, which may be verified in accordance with the present disclosure.

[0255] Figure 5A flow chart of an exemplary method 500 of operating an intra-oral scanning device 2 is shown. The intra-oral scanning device 2 comprises: a processing unit 4 configured to process intra-oral scan data and provide image data; a memory unit 6; and a wireless interface 8. The method 500 comprises receiving a link request for a session from S1 via the wireless interface 8. The link request may comprise an authentication key identifier 166 and / or an authentication type identifier 168 to allow the intra-oral scanning device 2 to perform the link request and authentication of the client device 10 sending the link request at this early stage. This may provide a degree of access control.

[0256] The method 500 includes obtaining an S2 session identifier 180, for example, using an intra-oral scanning device. Obtaining the S2 session identifier 180 may include generating the session identifier 180, such as by generating a random number or a pseudo-random number. For example, the processing unit 4 generates a random number or a pseudo-random number of a predetermined length (e.g., 16 bits, 32 bits, 64 bits, etc.) to be used as the session identifier 180. Obtaining the S2 session identifier 180 may include retrieving the session identifier 180 from a memory unit. The method 500 may include storing the session identifier 180 in the memory unit 6. For example, storing the session identifier 180 in the memory unit 6 includes storing the session identifier 180 at a memory address of the memory unit 6, and / or in a memory cell of the memory unit 6 (such as in a specified memory cell and / or at a specified address).

[0257] Method 500 includes transmitting S3 a link response including intra-oral scanning device identifier 112 and session identifier 180 via interface 8. Transmitting S3 a link response may include generating a link response by including session identifier 180 and intra-oral scanning device identifier 112 and transmitting the thus generated link response to, for example, client device 10.

[0258] The method 500 includes receiving an S4 authentication message via the interface 8. The authentication message includes the authentication key identifier 166 and the client device data 109. The method 500 may include receiving the authentication message 421 from the client device 10 via the wireless interface 8. For example, the intraoral scanning device 2 receives the authentication message 421 from the client device 10 in order to establish a communication session. The client device data 109 may include a client device certificate (such as an unencrypted client device certificate 106 or an encrypted client device certificate 106A, customization data, intraoral scanning device operating parameters, and / or firmware data). The authentication key identifier 166 may be an identifier that can be used to verify whether the client device 10 uses a client device key that can be accepted by the intraoral scanning device 2.

[0259] The method 500 includes selecting an S5 intra-oral scan device key from a plurality of intra-oral scan device keys in the memory unit 6 (e.g., within or among a first set 115 of intra-oral scan device keys, a second set 116 of intra-oral scan device keys, etc.) based on an authentication key identifier 166. When the authentication key identifier 166 matches an intra-oral scan device key identifier (such as a first intra-oral scan device key identifier 114 maintained by the intra-oral scan device 2), the processing unit 4 may be configured to use the authentication key identifier 166 as a key identifier to indicate which intra-oral scan device key is to be used as key material in the session. The selection of the S5 intra-oral scan device key from the plurality of intra-oral scan device keys in the memory unit may be based on the authentication key identifier 166 and / or an authentication type identifier 168. The authentication type identifier 168 may be received by the intra-oral scan device 2 in plain text as part of the authentication message 421, and / or as a client device type identifier 156 (encrypted or decrypted) in the client device certificate 106. For example, selecting S5 includes selecting the intra-oral scanning device key indicated by the authentication key identifier 166 and the authentication type identifier 168 .

[0260] The method 500 includes verifying S6 the client device data 109 based on the selected intra-oral scan device key and terminating the S7 session if the verification fails. Verifying the S6 client device data 109 based on the selected intra-oral scan device key may include verifying the integrity of the client device data 109 based on the selected intra-oral scan device key (such as verifying a MAC and / or digital signature included in the client device data 109). Verifying the S6 client device data 109 based on the selected intra-oral scan device key may include decrypting the client device data 109 using the selected intra-oral scan device key (as key material for deriving a decryption key or as a decryption key) when the encrypted client device data 109 is received. Verifying the S6 client device data 109 based on the selected intra-oral scan device key may include verifying the client device data 109 by comparing the received client device data 109 with data stored in a memory unit. For example, if the integrity of the client device data 109 is detected to be compromised by, for example, verifying a MAC or digital signature, if decryption fails, and / or if a comparison of the received client device data 109 (when decrypted, if the client device data includes encrypted data, such as an encrypted client device certificate) with data stored in a memory unit (e.g., an intraoral scanning device certificate) reveals a mismatch or indicates a compromise, then authentication fails and the session is terminated.

[0261] The authentication message optionally includes an authentication type identifier 168. The authentication type identifier may indicate the client device type identifier 156 and / or the certificate type identifier 130 (e.g., contained in the client device data (encrypted)). The selection of the S5 intra-oral scan device key from the plurality of intra-oral scan device keys may be based on the authentication type identifier 168. The selection of the S5 intra-oral scan device key may be based on the authentication type identifier 168 and / or the authentication key identifier 166 provided in the authentication message 421.

[0262] The client device data 109 may include the client device certificate 106 or the encrypted client device certificate 106A, the authentication key identifier 166, and / or the authentication type identifier 168. The method 500 may include generating an S8 certificate key based on the selected intra-oral scanning device key and / or the session identifier 180; and verifying the S6 client device data 109 may include decrypting the encrypted client device certificate 106A with the certificate key to obtain a decrypted version 106B of the encrypted client device certificate 106A. Decrypting the encrypted client device certificate 106A with the certificate key may include: decrypting the encrypted client device certificate 106A with the certificate key, the public secret, and / or the intra-oral scanning device key, such as generating the certificate key based on the public secret; and processing the encrypted client device certificate 106A using the decryption function and the certificate key. The certificate key may be based on the public secret and / or the certificate value. Generating the certificate key may include obtaining or generating the public secret based on the selected intra-oral scanning device key. For example, generating a common secret based on the intra-oral scanning device key includes retrieving the intra-oral scanning device certificate 100 from the memory unit 6, the intra-oral scanning device certificate 100 including the selected intra-oral scanning device key, and / or retrieving the selected intra-oral scanning device key from the memory unit 6. The method may include generating a common secret based on the session identifier 180 and / or the selected intra-oral scanning device key (e.g., the first primary intra-oral scanning device key 115A). For example, generating a common secret CS based on the selected intra-oral scanning device key and the session identifier 180, for example, as follows:

[0263] CS=hash(HD_KEY,S_ID),

[0264] Where hash is a hash function, HD_KEY is a selected intra-oral scanning device key and S_ID is a session identifier 180. The session identifier 180 may include a random number or a pseudo-random number of a defined length. In one or more exemplary methods, the public secret may be used as a certificate key. The method 500 may include storing the public secret in the memory unit 6 so as to retrieve the public secret from the memory unit 6, for example, when needed.

[0265] Generating the certificate key may include performing a hash function on the public secret and / or the certificate value. Generating the certificate key may be performed, for example, as follows:

[0266] C_KEY=hash(CS,C_VAL),

[0267] Where hash is a hash function, CS is a public secret and C_VAL is a certificate value. The certificate value can be a predefined value or a string (such as the string "certificate").

[0268] In one or more exemplary methods, generating the certificate key includes performing a hash function on the intra-oral scan device key (e.g., the first primary intra-oral scan device key 115A) and the session identifier 180. In other words, the public secret may be used as the certificate key if the client device also uses the public secret as the certificate key to encrypt the client device certificate 106.

[0269] Verifying S6 the client device data 109 may include decrypting the encrypted client device certificate 106A using a certificate key generated by the intra-oral scanning device 2 and obtaining a decrypted version 106B of the encrypted client device certificate 106A.

[0270] In one or more exemplary approaches, verifying the S6 client device data 109 may include verifying the contents of a decrypted version 106B of the encrypted client device credential 106A, for example, based on an intra-oral scan of the device credential or at least a portion thereof.

[0271] For example, verifying S6 (with an intra-oral scanning device) the client device data 109 includes determining whether the authentication key identifier 166 matches the client device key identifier 159 of the client device certificate 106, and if a mismatch is determined, then verification fails.

[0272] In one or more exemplary methods, verifying S6 the client device data 109 includes determining whether the client device type identifier 156 of the client device certificate 106 or 106B is valid, and if the client device type identifier 156 of the client device certificate 106 or 106B is not valid, then the verification fails. For example, the authentication type identifier 168 is sent in plain text form in the authentication message 421, and the authentication type identifier 168 sent in plain text form is valid if the authentication type identifier 168 matches the corresponding client device type identifier 156 included in the decrypted version 106B of the client device certificate 106. For example, determining whether the client device type identifier 156 of the client device certificate 106 is valid includes determining whether the client device type identifier 156 of the client device certificate 106 is included in a list of authorized client devices stored in the memory unit 6 and / or retrieved from a remote data store.

[0273] In one or more exemplary methods, verifying S6 the client device data 109 includes verifying the digital signature 113A of the client device certificate 106, 106B, and if the digital signature is not verified, the verification fails. For example, the client device data 109 includes a digital signature 113A contained in the client device data 109 or attached to the client device data 109 to protect the integrity of the client device data 109. Verifying the digital signature 113A includes, for example, calculating a comparison result based on the digital signature 113A and a corresponding client device public key and comparing the comparison result with the received client device data 109. Verifying the digital signature 113A may include retrieving the corresponding client device public key from the memory unit 6 and / or a remote data store. The digital signature 113A is verified to be valid, or the verification is successful when the corresponding client device public key power of the digital signature 113A is the same as the received client device data 109.

[0274] In one or more exemplary methods, the client device certificate 106 includes the signed device identifier 136A and / or the client device identifier 158, and verifying the S6 client device data 109 includes determining whether the signed device identifier 136A and / or the client device identifier 158 of the client device certificate 106 or 106B is valid, and wherein if the client device identifier 158 and / or the signed device identifier 136A is not valid, the verification fails.

[0275] In one or more exemplary methods, method 500 includes receiving an additional authentication message 440 including client device data 110 and authentication device identifier 169. The method may also include: obtaining a public secret from memory unit 6 based on authentication device identifier 169; generating an additional certificate key from the public secret; and verifying client device data 110 based on the additional certificate key.

[0276] In one or more exemplary methods, the method 500 includes generating an offline session key based on the common secret and the session identifier 180 , and communicating with the client device 10 using the offline session key.

[0277] In one or more exemplary methods (method 500), the authentication message 421 includes an authentication token identifier, and the method 500 includes storing the authentication token identifier in the memory unit 6 and linking the authentication token identifier with the public secret.

[0278] In one or more exemplary methods, the method 500 includes receiving a further authentication message 450, the further authentication message 450 including the client device data 110, the authentication type identifier 168, the authentication key identifier 166, and / or the authentication session token identifier 167. The method 500 may include: obtaining a public secret based on the authentication type identifier 168; generating a token key based on the public secret; and generating a session token identifier based on the token key and the session identifier. The method 500 may include verifying the authentication session token identifier 167 based on the session token identifier.

[0279] In one or more exemplary methods, the method 500 includes generating a session key based on the session identifier 180 and the intra-oral scanning device key, and receiving and authenticating session data (eg, the intra-oral scanning device data 430) based on the session key.

[0280] XXXXXXXc

[0281] Figure 6 An exemplary architecture having an exemplary device that may be used to manufacture, maintain, and / or operate an intra-oral scanning device 2 according to the present disclosure is schematically illustrated. Figure 6 An exemplary system 1 and an intraoral scanning device 2 are shown. The system 1 may include one or more of a manufacturing device 12, a client device 10, and a server device 16 for manufacturing, maintaining, and / or operating the intraoral scanning device 2 in connection with an intraoral scanning session (such as for customizing the intraoral scanning device and / or for updating intraoral scanning device parameters).

[0282] The client device 10 may be configured to perform any action of the method disclosed herein. The client device 10 may include a processing element (such as a processor and a memory) configured to perform any step of the method disclosed herein. The intraoral scanning device 2 may be configured to acquire intraoral scanning data from a three-dimensional dental object during a scanning session. The intraoral scanning device 2 may be configured to communicate with the client device 10 using, for example, a communication link 21. The communication link 21 may be a wireless communication link. The communication link 21 may be a single-hop communication link or a multi-hop communication link. The wireless communication link may be carried on a short-range communication system (such as Bluetooth, Bluetooth low energy, IEEE 802.11). The intraoral scanning device 2 may be configured to receive an intraoral scanning device certificate from the manufacturing device 12 via a communication link 23 and store the intraoral scanning device certificate in a memory unit included in the intraoral scanning device 2. Alternatively or additionally, the manufacturing device 12 may store the intraoral scanning device certificate in a memory unit of the intraoral scanning device. The intraoral scanning device 2 may be configured to be connected to the client device 10 on a network. The client device 10 can allow remote customization of the intraoral scanning device 2, wherein the dispenser is connected to the intraoral scanning device via the client device 10. The client device 10 may include a computing device acting as a client, such as a customization device 14 (such as a handheld device, a repeater, a tablet computer, a personal computer, and / or a USB dongle inserted into a personal computer). The client device 10 may be configured to communicate with the server device 16 via a communication link 24 (such as a two-way communication link). The communication link 24 may be a wireless communication link. The communication link 24 may include a network (such as the Internet). For maintenance and updating purposes, the client device 10 may be configured to communicate with the server device 16. The server device 16 may include a computing device configured to act as a server, that is, to serve requests from the client device 10 and / or from the intraoral scanning device 2. The server device 16 may be controlled by the intraoral scanning device manufacturer. The server device 16 may be configured to communicate with the manufacturing device 12 via a communication link 22 for manufacturing maintenance and / or operational purposes. The server device 16 and the manufacturing device 12 may be located at the same location and / or form one entity for manufacturing, maintenance and / or operational purposes of the intra-oral scanning device 2 .

[0283] Figure 7An exemplary client device 10 is schematically illustrated. The client device 10 includes a processing unit 4, a memory unit 6, and a wireless interface 8. The wireless interface 8 includes a wireless transceiver, which is configured, for example, for wireless communication in a frequency range from 2.4 GHz to 2.5 GHz. The wireless interface 8 is configured to communicate (such as wired communication and / or wireless communication) with the intraoral scanning device 2 and / or the server device. The memory unit 6 has a client device key 182 and client device certificates 106, 107 stored thereon. The processing unit 4 is configured to receive a connection response including an intraoral scanning device identifier via the wireless interface 8, and optionally obtain a session identifier, for example as part of the connection response. A connection response containing both a session identifier and an intraoral scanning device identifier reduces the risk of attacker intervention. In addition, the number of connection responses from the intraoral scanning device is reduced, thereby reducing the power consumption of the intraoral scanning device. The processing unit 4 is configured to generate one or more keys including a certificate key based on the intraoral scanning device identifier and / or the session identifier. The processing unit 4 is configured to optionally generate one or more keys including a certificate key based on the client device key. In the client device 10 shown, the certificate key is generated by executing one or more hash functions. For example, the certificate key C_KEY can be given as:

[0284] C_KEY=hash(CS,C_VAL),

[0285] Where hash is a hash function, CS is a public secret and C_VAL is a certificate value (e.g., a predefined value or string, such as "certificate"). In the exemplary client device 10, the public secret CS is based on the intra-oral scan device key and the session identifier, for example, given as:

[0286] CS=hash(IOS_KEY,S_ID),

[0287] Where hash is a hash function, IOS_KEY is the intra-oral scanning device key and S_ID is the session identifier. The intra-oral scanning device key IOS_KEY is based on the intra-oral scanning device identifier and the client device key, for example, given as:

[0288] IOS_KEY=hash(IOS_ID,CD_KEY),

[0289] Where hash is a hash function, IOS_ID is the intra-oral scanning device identifier and CD_KEY is the client device key.

[0290] The certificate value may be a predefined value or string (such as "certificate"). Generating the certificate key may include performing a hash function on the public secret and / or the certificate value. For example, the certificate key C_KEY may be given as:

[0291] C_KEY=hash(CS,C_VAL),

[0292] Where hash is the hash function, CS is the public secret and C_VAL is the certificate value.

[0293] The processing unit 4 is configured to obtain an authentication message based on the certificate key and the client device certificate. Obtaining the authentication message includes generating an encrypted client device certificate by encrypting the client device certificate with the certificate key and including the encrypted client device certificate in the authentication message. Obtaining the authentication message includes including an authentication key identifier and / or an authentication type identifier in the authentication message. The authentication key identifier is a copy of the client device key identifier or at least indicates the client device key identifier. The authentication type identifier is a copy of the client device type identifier or at least indicates the client device type identifier. Using (one or more) authentication identifiers (such as the authentication key identifier and / or the authentication type identifier) ​​in the authentication message enables the intra-oral scanning device to select appropriate key materials to decrypt the encrypted client device certificate and / or check whether the authentication message is generated by an outdated client device. In addition, the processing unit 4 is configured to transmit the authentication message to the intra-oral scanning device via the wireless interface 8.

[0294] In the exemplary processing unit 4, generating one or more keys includes generating a session key based on the intra-oral scanning device identifier, the session identifier and the client device key, and wherein the processing unit is optionally configured to transmit the session key to the customized device. When the client device 10 includes a customized device, the session key is used to communicate data with the intra-oral scanning device.

[0295] Figure 8 An exemplary client device certificate 106 is schematically illustrated. The client device certificate 106 includes a client device identifier 158 and a client device key identifier 159. The client device identifier 158 enables the intra-oral scanning device to check whether the client device has been blacklisted. The client device key identifier 159 indicates the client device key (stored in the memory unit) used to generate the certificate key. The client device key identifier 159 of the client device certificate enables the intra-oral scanning device to check the validity of the authentication key identifier of the authentication message.

[0296] The client device certificate 106 includes a digital signature 113 and / or a MAC. The digital signature 113 enables proof or verification of the authenticity of the client device certificate 106 (such as verifying the legitimacy of the signer (e.g., whether the signer is a legitimate manufacturing device)). The digital signature 113 is generated during manufacturing, for example, using a device family private key during manufacturing of the client device. When receiving the client device certificate 100 including the digital signature 113, the client device 10 or the processing unit 4 can verify the digital signature 113. The digital signature 113 can be verified by the client device 10 and / or the intraoral scanning device using the corresponding device family public key (e.g., selected according to the certificate type identifier). If the digital signature 113 is not successfully verified using the so-called public key, the client device 10 can terminate normal operation.

[0297] The client device certificate 106 includes a certificate type identifier 130. The certificate type identifier 130 indicates that the client device certificate 106 is a client device certificate (e.g., selected from a plurality of certificate types, such as an intra-oral scanning device family certificate type, an intra-oral scanning device certificate type, a firmware certificate type, an access rights certificate type, and a client device certificate type). The certificate type identifier 130 may be used to enable the intra-oral scanning device 2 to identify what type of certificate it receives, stores, authenticates, and / or retrieves. The client device certificate 106 may include a version identifier 132 that indicates a data format version of the client device certificate 106. The intra-oral scanning device 2 may use the certificate type identifier 130 and / or the version identifier 132 to determine what type of data the client device certificate 106 includes and / or what type of data is included in a field of the client device certificate 106. For example, the intra-oral scanning device may determine what field of the client device certificate includes the digital signature 113, and which public key of a plurality of public keys is to be used to verify the digital signature 113, based on the certificate type identifier 130 and / or the version identifier 132. It is contemplated that there is a one-to-one mapping between the certificate type identifier 130 and the public-private key pair used to generate the digital signature 113. The intra-oral scanning device certificate 106 may include a length identifier 134 that indicates the length of the client device certificate 106.

[0298] The client device certificate 106 optionally includes a signing device identifier 136. The signing device identifier 136 refers to a unique identifier that identifies a device (such as an integrated circuit card, smart card, hardware security module included in or connected to a manufacturing device) that has signed the client device certificate 106. The signing device identifier 136 may, for example, include a media access control, MAC, address and / or serial number of the signing device. The signing device identifier 136 allows, for example, the intra-oral scanning device 2 to determine whether the signing device of the client device certificate is, for example, blacklisted, and thereby reject client device certificates 106 signed by blacklisted signing devices.

[0299] The client device certificate 106 optionally includes one or more hardware identifiers (including a first hardware identifier 148 and / or a second hardware identifier 150). The hardware identifiers 148, 150 may respectively identify a piece of hardware included in the client device 10 (such as a processing unit 4 or a radio chip included in the wireless interface 4). The first hardware identifier 148 and / or the second hardware identifier 150 may also be stored in a register of the piece of hardware included in the client device 10 during the manufacture of the piece of hardware. The first hardware identifier 148 and / or the second hardware identifier 150 may include a serial number, a media access control, a MAC, an address, a chip identifier, or any combination thereof. For example, the first hardware identifier 148 may provide a first client device-specific value present in a register of a hardware module (e.g., a processing unit or a radio chip) of the client device 10, while the second hardware identifier may provide a second client device-specific value present in a register of a hardware module of the client device 10.

[0300] The client device certificate 106 includes a client device type identifier 156. The client device type identifier 156 indicates the type of the client device among a plurality of client device types, such as a model, class, or type of the client device, such as a custom type (e.g., a tablet computer product model, class, or type for a custom intra-oral scanning device, a USB dongle product model, class, or type for a custom intra-oral scanning device). Optionally, the client device certificate 106 includes a Bluetooth address 160, or at least a portion thereof, assigned by a manufacturer during manufacturing, for example. For example, for a second generation client device certificate, it is contemplated that one or more fields and / or identifiers are appended to the client device certificate.

[0301] Fig. 9An exemplary client device certificate 107 is schematically illustrated. The client device certificate 107 includes a certificate type identifier 130, an optional version identifier 132, an optional length identifier 134, and an optional signing device identifier 136, as described above for the client device certificate 106. The client device certificate 107 includes a client device type identifier 156, a client device identifier 158, a client device key identifier 159, and a user identifier 162. The user identifier 162 may be in the form of a user name. The client device certificate 107 with the user identifier 162 may facilitate the use of a general purpose device (such as a tablet computer) as a client device, such as by implementing user authentication / key generation / certificate encryption / decryption on a remote server device (such as a server device 16 controlled by an intraoral scanning device manufacturer).

[0302] Fig.10An exemplary signaling diagram 400 involving an intra-oral scanning device 2 and a client device 10 is schematically illustrated. The client device 10 may include a customization device 14 or be connected to a customization device 14. The client device 10 transmits a connection request or message 411 to the intra-oral scanning device 2. When the client device 10 includes the customization device 14, the customization device 14 may generate a connection request 410, which is transmitted by the client device 10 as a connection request 411. When the client device 10 is connected to the customization device 14, the customization device 14 may generate a connection request 410, which is forwarded by the client device 10 as a connection request 411. The intra-oral scanning device 2 returns a connection response 412 which is received by the client device 10. The client device 10 may forward the connection response 412 to the customization device 14. The connection response 412 includes the intra-oral scanning device identifier 112 and / or the session identifier 180. The client device 10 generates one or more keys including a certificate key based on the intra-oral scanning device identifier 112 and / or the session identifier 180 received in the connection response and the client device key 182 stored in the memory unit. The client device 10 obtains an authentication message 421 based on the certificate key and the client device certificate 106 and transmits the authentication message 421 to the intra-oral scanning device 2. The authentication message 421 includes an encrypted client device certificate 106A. The encrypted client device certificate 106A is generated by encrypting the client device certificate 106 with the certificate key. The authentication message 421 includes an authentication key identifier 166 indicating the client device key 182 and / or an authentication type identifier 168 indicating the client device type identifier 156. When the authentication message 421 and / or verification are successfully authenticated, the client device 10 can receive an authentication response 422 from the intra-oral scanning device 2. The client device 10 can forward the authentication response 422 to the customization device 14. The communication channel is now open and secure. The client device 10 or the customization device 14 may send intraoral scanning device data 430 to the intraoral scanning device 2 via the client device 10. The intraoral scanning device data 430 may include one or more of firmware, customization data, and / or intraoral scanning device operating parameters. The intraoral scanning device operating parameters may include volume control parameters, modes, and / or program control parameters. Firmware may refer to a computer program provided by the intraoral scanning device manufacturer and to be installed on the intraoral scanning device 2 to control the intraoral scanning device 2. For example, firmware is to be installed to upgrade the operation and capabilities of the intraoral scanning device 2. The client device 10 may transmit an authentication message 424 including a session key 188 to the customization device 14. The session key may be used to perform secure data communications 430 with the intraoral scanning device 2.

[0303] Fig.11 An exemplary signaling diagram 400A is schematically illustrated, wherein the client device certificate 106 is included in the authentication message 421 .

[0304] Fig.12 An exemplary signaling diagram 400B is schematically illustrated, wherein the encrypted client device certificate 107A is included in the authentication message 421 .

[0305] Fig.13 A flow chart schematically illustrates an exemplary method 500 of operating a client device for intra-oral scanning device communications. The client device includes a memory unit having a client device key and a client device certificate stored thereon. The method includes: receiving S1 a connection response including an intra-oral scanning device identifier via a wireless interface; generating S2 one or more keys including a certificate key based on the intra-oral scanning device identifier and the client device key; obtaining S3 an authentication message based on the certificate key and the client device certificate; and transmitting S4 an authentication message via the wireless interface. Obtaining S3 the authentication message includes generating S31 an encrypted client device certificate by encrypting the client device certificate with the certificate key and including the encrypted client device certificate in the authentication message. The method 500 includes obtaining S11 a session identifier as part of the connection response. Generating S2 one or more keys includes generating S21 an intra-oral scanning device key based on the intra-oral scanning device identifier and the client device key, and generating S22 a public secret based on the intra-oral scanning device key and the session identifier. The certificate key is based on the public secret and the certificate value. Generating S2 one or more keys optionally includes generating S23 a session key based on the intraoral scanning device identifier, the session identifier and the client device key. The method may include transmitting S5 the session key to the customized device. In method 500, the session key is based on the public secret and the session value. Obtaining S3 an authentication message includes including S32 an authentication key identifier indicating the client device key in the authentication message and / or including S33 an authentication type identifier in the authentication message.

[0306] Fig.14An exemplary signaling diagram 400C is schematically illustrated, wherein obtaining an authentication message includes obtaining an encrypted client device certificate from a server device. The client device 10 transmits a certificate request 416 to the server device 16. The certificate request 416 includes the intra-oral scanning device identifier 112 and the session identifier 180. The server device 16 obtains the client device certificate 107 from its memory unit, calculates a certificate key and a session key based on the intra-oral scanning device identifier 112 and the session identifier 180, and encrypts the client device certificate 107. The server device generates a certificate response 418 and transmits the certificate response 418 to the client device 10. The certificate response 418 includes the encrypted client device certificate 107A, the authentication type identifier 168, the authentication key identifier 166, the client device identifier 158, and the session key 188. The client device receives the certificate response 418 with the encrypted client device certificate 107A and includes the encrypted client device certificate in the authentication message. Therefore, obtaining an encrypted client device certificate may include receiving a certificate response including an encrypted client device certificate from the server device. Alternatively, if Fig.14 As shown, the client device may be configured to perform a login process that includes transmitting a login request 426 that includes the user identifier 162 and the password 164. The server device 16 validates the login request 426 and returns a login response 428 upon acceptance.

[0307] Although some embodiments have been described and shown in detail, the present disclosure is not limited to such details, but can also be implemented in other ways within the scope of the subject matter defined in the appended claims. In particular, it should be understood that other embodiments can be utilized and structural and functional modifications can be made without departing from the scope of the present invention.

[0308] Benefits, other advantages, and solutions to problems have been described herein for specific embodiments. However, benefits, advantages, solutions to problems, and any (one or more) parts / (one or more) units that may cause any benefit, advantage, or solution to appear or become more significant should not be interpreted as key, essential, or necessary features or parts / elements of any or all claims or the present invention. Therefore, the scope of the present invention is limited only by the appended claims, wherein, unless explicitly stated, references to singular parts / units / elements are not intended to mean "one and only one", but "one or more". A claim can refer to any of the preceding claims, and "any" is understood to mean "any one or more" in the preceding claims.

[0309] Structural features of the apparatus described above in the detailed description and / or in the claims can be combined with steps of the method when appropriately replaced by corresponding processes.

[0310] As used, the singular forms "a", "an", and "the" are intended to include the plural forms as well (i.e., have the meaning of "at least one"), unless expressly stated otherwise. It will also be understood that the terms "includes", "comprises", "including", and / or "comprising", when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and / or parts, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, parts, and / or combinations thereof. It will also be understood that, unless expressly stated otherwise, when an element is referred to as being "connected" or "coupled" to another element, the element may be directly connected or coupled to the other element, but there may also be intermediate elements. In addition, "connected" or "coupled" as used herein may include wireless connections or couplings. As used herein, the term "and / or" includes any and all combinations of one or more of the associated listed items. Unless expressly stated otherwise, the steps of any disclosed method are not limited to the exact order described herein.

[0311] It should be understood that throughout this specification, references to "one embodiment" or "embodiment" or "aspect" or features included as "possible" mean that the specific features, structures or characteristics described in conjunction with this embodiment are included in at least one embodiment of the present disclosure. In addition, in one or more embodiments of the present disclosure, the specific features, structures or characteristics may be appropriately combined. The previous description is provided to enable those skilled in the art to practice the various aspects described herein. Various modifications to these aspects will be apparent to those skilled in the art and the general principles defined herein may be applied to other aspects.

[0312] The claims are not intended to be limited to the aspects shown herein, but are to be accorded the full scope consistent with the claim language, wherein, unless otherwise specifically stated, elements referred to in the singular are not intended to mean "one and only one," but rather "one or more." Unless expressly stated otherwise, the term "some" refers to one or more.

[0313] Project List:

[0314] 1. A client device (10) configured to communicate with an intra-oral scanning device, the client device (10) comprising:

[0315] a wireless interface (8) configured to receive 2D image data and / or 3D image data from an intraoral scanning device,

[0316] · Memory unit (6);

[0317] a processing unit (4) configured to process the received 2D image data and / or 3D image data;

[0318] The memory unit (6) has a client device key (182) and a client device certificate (106, 107) stored thereon,

[0319] The processing unit (4) is configured as follows:

[0320] Receiving a connection response (412) including an intraoral scanning device identifier (112) via the wireless interface (8);

[0321] generating one or more keys, including a certificate key, based on the intra-oral scanning device identifier (112) and the client device key (182);

[0322] Obtaining an authentication message (424) based on the certificate key and the client device certificate (106, 107); and

[0323] • Transmitting the authentication message (424) via the wireless interface (8).

[0324] 2. A client device according to item 1, and wherein the processing unit (4) is configured to obtain a session identifier (180), and wherein generating one or more keys includes generating an intra-oral scanning device key based on the intra-oral scanning device identifier (112) and the client device key (182), and generating a common secret based on the intra-oral scanning device key and the session identifier (180).

[0325] 3. A client device according to item 2, wherein the certificate key is based on the public secret and the certificate value.

[0326] 4. A client device according to any one of items 2 to 3, and wherein generating one or more keys includes generating a session key (188) based on the intra-oral scanning device identifier (112), the session identifier (180) and the client device key (182), and wherein the processing unit (4) is configured to transmit the session key (188) to the customized device (14).

[0327] 5. A client device according to item 4, wherein the session key (188) is based on a public secret and a session value.

[0328] 6. The client device according to any of the preceding items, wherein the processing unit (4) is configured to include an authentication key identifier (166) indicating the client device key (182) in the authentication message (424).

[0329] 7. The client device according to any of the preceding items, wherein the processing unit (4) is configured to include an authentication type identifier (168) in the authentication message (424).

[0330] 8. The client device according to any of the preceding clauses, wherein the client device certificate (106, 107) comprises one or more of the following:

[0331] Certificate type identifier (130);

[0332] Signature device identifier (136);

[0333] Client device type identifier (156);

[0334] Client device identifier (158);

[0335] Client device key identifier (159);

[0336] One or more hardware identifiers (148); and

[0337] Digital signature (113).

[0338] 9. A method of operating a client device for intra-oral scanning device communications, the client device comprising a memory unit (6) having a client device key (182) and a client device certificate (106, 107) stored thereon, the method comprising:

[0339] · receiving (S1) via the wireless interface a connection response (412) including an intra-oral scanning device identifier (112);

[0340] generating (S2) one or more keys including a certificate key based on the intra-oral scanning device identifier (112) and the client device key (182);

[0341] obtaining (S3) an authentication message (424) based on the certificate key and the client device certificate (106, 107), and

[0342] · Transmitting (S4) the authentication message (424) via the wireless interface (8).

[0343] 10. According to the method described in item 9, the method includes obtaining (S11) a session identifier (180), and wherein generating (S2) one or more keys includes generating (S21) an intra-oral scanning device key based on the intra-oral scanning device identifier (112) and the client device key (182), and generating (S22) a public secret based on the intra-oral scanning device key and the session identifier (180).

[0344] 11. A method according to item 10, wherein the certificate key is based on the public secret and the certificate value.

[0345] 12. A method according to any one of items 10 to 11, wherein generating (S2) one or more keys includes generating (S23) a session key (188) based on the intraoral scanning device identifier (112), the session identifier (180) and the client device key (182), and wherein the method includes transmitting (S5) the session key (188) to the customized device (14).

[0346] 13. A method according to item 12, wherein the session key (188) is based on the public secret and a session value.

[0347] 14. A method according to any one of items 9 to 13, wherein obtaining (S3) the authentication message (424) includes including (S32) an authentication key identifier (166) indicating the client device key (182) in the authentication message (424).

[0348] 15. A method according to any one of items 9 to 14, wherein obtaining (S3) the authentication message (424) comprises including (S33) an authentication type identifier (168) in the authentication message (424).

Claims

1. A handheld intraoral scanning device (2) configured to acquire intraoral scan data from a three-dimensional dental object during a scanning session, the intraoral scanning device comprising: A processing unit (2) configured to process the intraoral scan data of the patient and provide 3D image data; a wireless interface (4) configured to transmit said 3D image data; and Memory unit (6), Characterized in that the processing unit (4) can be configured as: Receiving a link request (410, 411) for a session via the wireless interface (8), and wherein the session corresponds to accessing a memory unit (6) of the handheld intraoral scanning device (2); Obtaining a session identifier (180); transmitting, via the wireless interface (8), a link response (412) comprising an intra-oral scanning device identifier (112) and the session identifier (180); receiving, via the wireless interface (180), an authentication message (420, 421) comprising an authentication key identifier (166) and client device data (109); selecting an intra-oral scanning device key from a plurality of intra-oral scanning device keys in the memory unit (6) based on the authentication key identifier (166); · verifying the client device data based on the selected intra-oral scan device key (109); and If authentication fails, the session is terminated.

2. The handheld intra-oral scanning device of claim 1, wherein the authentication message (420, 421) includes an authentication type identifier (168), and wherein selecting the intra-oral scanning device key from a plurality of intra-oral scanning device keys is based on the authentication type identifier (168).

3. A handheld intraoral scanning device according to any one of claims 1 to 2, wherein the client device data (109) includes an encrypted client device certificate (106); and wherein the processing unit (4) is capable of being configured to generate a certificate key based on a public secret; and wherein verifying the client device data (109) includes decrypting the encrypted client device certificate (106A) with the certificate key to obtain a decrypted version (106B) of the encrypted client device certificate.

4. The handheld intra-oral scanning device of claim 3, wherein the common secret is based on a selected intra-oral scanning device key and / or the session identifier (180).

5. A handheld intraoral scanning device according to any one of claims 3 to 4, wherein verifying the client device data (109) includes determining whether the authentication key identifier (166) matches the client device key identifier (159) of the client device certificate (106), and wherein if a mismatch is determined, verification fails.

6. A handheld intraoral scanning device according to any one of claims 3 to 5, wherein verifying the client device data (109) includes determining whether a client device type identifier (156) of the client device certificate (106) is valid, and wherein if the client device type identifier (156) of the client device certificate (106) is invalid, verification fails.

7. The handheld intraoral scanning device according to any one of claims 3 to 6, wherein verifying the client device data (109) comprises verifying a digital signature of the client device certificate (106), and wherein verification fails if the digital signature is not verified.

8. A handheld intraoral scanning device according to any one of claims 3 to 7, wherein the client device certificate (106) includes a signature device identifier and / or a client device identifier (158), and wherein verifying the client device data (109) includes determining whether the signature device identifier and / or the client device identifier (158) is valid, and wherein if the client device identifier (158) and / or the signature device identifier of the client device (10) is invalid, the verification fails.

9. The handheld intraoral scanning device according to any one of claims 3 to 8, wherein the processing unit (4) is configurable to receive an additional authentication message (440) comprising the client device data (109) and the authentication device identifier (169), wherein the processing unit (4) is configurable to: obtaining the common secret from the memory unit (6) based on the authentication device identifier (169); generating an additional certificate key from the public key; and · Authenticating the client device data based on the additional certificate key (109).

10. The handheld intraoral scanning device according to claim 9, wherein the processing unit (4) is configured to generate an offline session key based on the public secret and the session identifier (180), and wherein the processing unit (4) is configured to communicate with the client device (10) using the offline session key.

11. A handheld intraoral scanning device according to any one of claims 3 to 10, wherein the authentication message (420, 421) includes an authentication token identifier, and wherein the processing unit is capable of being configured to store the authentication token identifier in the memory unit and link the authentication token identifier with the public secret.

12. The handheld intraoral scanning device according to any one of claims 3 to 11, wherein the processing unit (4) is configurable to receive a further authentication message (450), the further authentication message comprising client device data (109), an authentication type identifier (168), an authentication key identifier (166) and / or an authentication session token identifier (167), wherein the processing unit (4) is configurable to: · obtaining a common secret based on the authentication type identifier (168); Generate a token key based on the public secret; generating a session token identifier based on the token key and the session identifier; and • Verifying the authentication session token identifier based on the session token identifier (167).

13. A handheld intraoral scanning device according to any one of the preceding claims, wherein the processing unit (4) is capable of being configured to generate a session key based on the session identifier (180) and the intraoral scanning device key, and wherein the processing unit (4) is capable of being configured to receive and authenticate session data based on the session key.

14. A method (500) of operating a handheld intraoral scanning device (2) for acquiring intraoral scan data from a three-dimensional dental object during a scanning session, the intraoral scanning device comprising: a processing unit (2) configured to process the intraoral scan data of the patient and provide 2D image data and / or 3D image data; A memory unit (6); and a wireless interface (4), which is configured to transmit the 2D image data and / or the 3D image data, characterized in that the method comprises the following steps: Receiving (A1) a link request for a session via the wireless interface (8), and wherein the session corresponds to accessing a memory unit (6) of the handheld intraoral scanning device (2); Obtaining (A2) a session identifier (180); transmitting (A3) via the wireless interface a link response including the intra-oral scanning device identifier (112) and the session identifier (180); receiving (A4) via the wireless interface (8) an authentication message (420, 421) comprising an authentication key identifier (166) and client device data (109); · selecting (A5) an intra-oral scanning device key from a plurality of intra-oral scanning device keys based on the authentication key identifier (166); · verifying (A6) the client device data (109) based on the selected intra-oral scan device key; and If the authentication fails, the session is terminated (A7).

15. The method of claim 14, wherein the authentication message (420, 421) includes an authentication type identifier (166), and wherein selecting the intra-oral scanning device key from a plurality of intra-oral scanning device keys is based on the authentication type identifier (168).

Citation Information

Patent Citations

  • Focus scanning apparatus

    EP2442720B1