技术领域
[0001] 本公开涉及一种包括服务器设备和口内扫描设备系统的牙科系统,其中该口内扫描设备系统包括口内扫描设备和外部设备。具体而言,本公开涉及一种用于确保包括口内扫描设备的牙科系统的附属外部设备上的用户应用程序的安全通信的设备、以及一种确保包括口内扫描设备的牙科系统的附属外部设备上的用户应用程序的安全通信的方法。
相关背景技术
[0002] 口内扫描设备的功能变得越来越先进。口内扫描设备与外部设备(例如临床计算机、扫描计算机、计算机上的牙科软件和定制计算机)之间的无线通信已经得到发展。通常,口内扫描设备的无线通信接口使用基于开放标准的接口。但是,这在安全性方面提出了许多挑战。口内扫描设备可以假定任何输入的数据是合法的,并且可以允许由未授权方写入或改变存储器。任何这样的攻击都可能导致口内扫描设备的故障,或者发生电池耗尽攻击。
[0003] 但是,口内扫描设备是一种在计算能力、存储空间等方面有严格的限制的小型设备。因此,与口内扫描设备通信的设备不能使用现成的安全算法和协议,这存在诸如耗尽口内扫描设备电池或降低口内扫描设备功能等风险,使得口内扫描几乎无用。
[0004] 现有的口内扫描设备是服务基础设施的一部分,该服务基础设施包括口内扫描设备、用于特定服务的扫描软件和服务提供商之间的通信。服务例如可以包括制造矫正器、保持器、牙冠、植入体、牙套、护口器等。为了提高这种基础设施对牙医的可用性,需要基础设施与牙医之间的最基本交互。实现这一点的一种方式是通过在口内扫描设备与外部计算机之间应用无线通信,该外部计算机连接至能够将口内扫描数据转发给服务提供商的服务器。可以将患者的扫描数据表征为个人信息,因此,需要最大限度地降低第三方窃取或破坏至少扫描数据等的任何风险。扫描数据表征为个人信息,并且,在一些情况下,将其它类型的个人信息(例如年龄、性别、位置地址、个人安全号码等)与扫描数据相关联。在这个例子中,需要提高服务基础设施中的无线通信的安全性。
具体实施方式
[0062] 下面结合附图阐述的详细说明旨在作为对各种配置的说明。该详细说明包括有助于透彻理解各种概念的具体细节。对本领域技术人员来说显而易见的是,无需这些具体细节即可实践这些概念。设备、系统、介质、程序和方法的多个方面通过各种块、功能单元、模块、部件、电路、步骤、过程、算法等(统称为“元素”)说明。根据特定应用、设计约束或其它原因,这些元件可以使用电子硬件、计算机程序或它们的任何组合来实现。
[0063] 电子硬件可以包括微处理器、微控制器、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)、门控逻辑、分立硬件电路以及被配置成执行在本公开中说明的各种功能的其它适当硬件。计算机程序应被广义地解释为指令、指令集、代码、代码段、程序代码、程序、子程序、软件模块、应用程序、软件应用程序、软件包、例程、子例程、对象、可执行程序、执行线程、过程、函数等,无论是被称为软件、固件、中间件、微码、硬件描述语言还是其它。
[0064] 用于提供口内扫描数据的扫描可以由牙齿扫描系统执行,该牙齿扫描系统可以包括口内扫描设备,例如来自3Shape A/S的TRIOS系列扫描仪。牙齿扫描系统可以包括由无线网络单元提供的无线能力。口内扫描设备可以采用扫描原理,例如基于三角测量的扫描、共焦扫描、聚焦扫描、超声波扫描、X射线扫描、立体视觉、运动结构、光学相干断层扫描(OCT)或任何其它扫描原理。在一个实施方式中,通过投射图案和沿着口内扫描设备的光轴平移焦平面并且在不同的焦平面位置捕获多个二维图像来操作口内扫描设备,使得与每个焦平面对应的每个捕获的二维图像系列形成一叠二维图像。所获得的二维图像在本文中也被称为原始二维图像,其中原始在本文中意味着图像没有经过图像处理。优选沿着扫描系统的光轴移动焦平面位置,使得在沿着光轴的多个焦平面位置处捕获的二维图像形成针对所述对象的给定视图(即,针对扫描系统相对于对象的给定布置)的所述一叠二维图像(在本文中也被称为子扫描)。在相对于对象移动口内扫描设备或者以不同视图对对象成像之后,可以捕获该视图的新的一叠二维图像。可以借助于至少一个聚焦元件(例如移动的聚焦透镜)来改变所述焦平面位置。通常在扫描会话期间移动和倾斜口内扫描设备,使得至少一些子扫描的组至少部分地重叠,以便能够在后处理中进行拼接。拼接的结果是比单次子扫描能够捕获的表面大(即,比三维扫描设备的视场大)的表面的数字三维表示。拼接(又称为配准)的工作原理是识别各个子扫描中的三维表面的重叠区域,并将子扫描转换至公共坐标系,使得重叠区域匹配,最终产生数字三维模型。可以为此目的使用迭代最近点(ICP)算法。口内扫描设备的另一个实例是三角测量扫描仪,其中时变图案被投影到牙科对象上,并且不同图案配置的图像序列由相对于投光器单元成角度地布置的一个或多个摄像头获取。
[0065] 口内扫描设备包括一个或多个投光器,该投光器被配置成在扫描期间生成要投射到三维牙科对象上的照明图案。(一个或多个)投光器优选包括光源、具有空间图案的掩模、以及一个或多个透镜,例如准直透镜或投影透镜。光源可以被配置成生成单一波长或组合波长(单色或多色)的光。可以使用光源来产生波长的组合,所述光源被配置成产生包括不同波长的光(例如白光)。替代地,(一个或多个)投光器可以包括多个光源,例如分别产生不同波长(例如红色、绿色和蓝色)的光的LED,所述光可以被组合以形成包括不同波长的光。因此,由光源产生的光可以由限定特定颜色的波长限定,或者由限定颜色的组合(例如白光)的不同波长的范围限定。在一个实施方式中,口内扫描设备包括被配置成激发牙齿的荧光材料以从牙科对象获得荧光数据的光源。这种光源可以被配置成产生窄范围的波长。在另一个实施方式中,来自光源的光是能够穿透牙齿组织的红外(IR)光。(一个或多个)投光器可以是使用微镜阵列生成时变图案的DLP投光器,或者是衍射光学元件(DOF),或者是背光掩模投光器,其中光源被放置在具有空间图案的掩模后面,由此投射在牙科对象的表面上的光被图案化。背光掩模投光器可以包括用于准直来自光源的光的准直透镜,所述准直透镜被放置在光源与掩模之间。掩模可以具有棋盘图案,使得生成的照明图案是棋盘图案。
替代地,掩模可以具有其它图案,例如线或小点等。
[0066] 口内扫描设备优选还包括用于将来自光源的光向牙科对象的表面引导的光学部件。光学部件的具体布置取决于口内扫描设备是聚焦扫描设备、使用三角测量的扫描设备还是任何其它类型的扫描设备。同一申请人在EP 2 442 720B1中进一步说明了一种聚焦扫描设备,该申请的全部内容通过引用并入本文。
[0067] 使用口内扫描设备的光学部件,将响应于对牙科对象的照射而从牙科对象反射的光向(一个或多个)图像传感器引导。(一个或多个)图像传感器被配置成基于从被照射的牙科对象接收的入射光生成多个图像。图像传感器可以是高速图像传感器,例如被配置成以短于1/1000秒的曝光或超过250帧/秒(fps)的帧速率获取图像的图像传感器。例如,图像传感器可以是滚动快门(CCD)或全局快门传感器(CMOS)。(一个或多个)图像传感器可以是包括色彩过滤器阵列的单色传感器,该色彩过滤器阵列例如是可以被配置成在反射光被转换为电信号之前从反射光实质性地消除一种或多种颜色成分并且仅保留其它未被消除的成分的拜耳过滤器和/或另外的过滤器。例如,这种另外的过滤器可以用于从响应于牙齿的激发荧光材料生成的信号,消除白光光谱的某一部分(例如蓝色成分),并且仅保留红色和绿色成分。
[0068] 网络单元可以被配置成将牙齿扫描系统连接至包括多个网络元件的网络,该多个网络元件包括被配置成接收经过处理的数据的至少一个网络元件。网络单元可以包括无线网络单元。无线网络单元被配置成将牙齿扫描系统无线地连接至包括多个网络元件的网络,所述多个网络元件包括至少一个被配置成接收经过处理的数据的网络元件。
[0069] 牙齿扫描系统优选还包括处理器,该处理器被配置成通过处理由口内扫描设备获取的二维(2D)图像生成扫描数据(例如口内扫描数据)。该处理器可以是口内扫描设备的一部分。例如,该处理器可以包括位于口内扫描设备上的现场可编程门阵列(FPGA)和/或高级RISC计算机(ARM)处理器。扫描数据包括与三维牙科对象相关的信息。扫描数据可以包括以下信息中的任何一种:二维图像、三维点云、深度数据、纹理数据、强度数据、颜色数据和/或它们的组合。例如,扫描数据可以包括一个或多个点云,其中每个点云包括描述三维牙科对象的一组三维点。作为另一个例子,扫描数据可以包括图像,每个图像包括图像数据,例如由图像坐标和时间标记(x,y,t)描述的图像数据,其中深度信息可以从时间标记推断出来。口内扫描设备的(一个或多个)图像传感器可以响应于使用一个或多个投光器照射牙科对象,而获取所述对象的多个原始二维图像。该多个原始二维图像在本文中也可以被称为一叠二维图像。随后可以将二维图像作为输入提供给处理器,该处理器处理二维图像以生成扫描数据。二维图像的处理可以包括确定每个二维图像的哪一部分处于焦点的步骤,以从图像推断/生成深度信息。深度信息可用于生成包括空间中的一组三维点的三维点云,例如由笛卡尔坐标(x,y,z)描述的三维点云。三维点云可以由处理器或另一个处理单元生成。每个二维/三维点还可以包括时间戳,该时间戳指示二维/三维点何时被记录,即该点源自所述一叠二维图像中的哪个图像。时间戳与三维点的Z坐标相关联,即,可以从时间戳推断出Z坐标。因此,处理器的输出是扫描数据,并且该扫描数据可以包括图像数据和/或深度数据,例如由图像坐标和时间戳(x,y,t)描述的或者以其它方式描述为(x,y,z)的图像数据和/或深度数据。除了扫描数据之外,口内扫描设备可以被配置成发送其它类型的数据。数据的例子包括三维信息、纹理信息,例如红外(IR)图像、荧光图像、反射彩色图像、X射线图像和/或它们的组合。
[0070] 图1示出了示例性的牙科系统2。牙科系统2包括服务器设备4和口内扫描设备系统6,该口内扫描设备系统6包括口内扫描设备8和外部设备10。外部设备10是被配置成与口内扫描设备8无线通信的平板电脑。用户应用程序12安装在外部设备10上。用户应用程序可以用于控制口内扫描设备8。在一个或多个示例性的用户应用程序中,用户应用程序12被配置成将固件、口内扫描设备操作参数和/或定制数据(例如口内扫描设备设置)传送至口内扫描设备。
[0071] 口内扫描设备操作参数可以与手持式口内扫描设备的设置对应,该设置涉及图像传感器、投光器、无线接口、手持式口内扫描设备的扫描序列等的设置。扫描序列与用手持口内扫描设备对患者的下颌进行扫描对应,而手持口内扫描设备被配置成,基于在扫描序列期间由手持口内扫描设备的图像传感器获取的口内扫描数据,实时地确定和发送三维图像数据。
[0072] 此外,口内扫描设备操作参数涉及电源管理设置、口内扫描设备的用户界面的配置和/或口内扫描设备的光学单元的设置。
[0073] 手持口内扫描设备可以包括用户界面,该用户界面可以包括至少一个触摸传感器、至少一个触摸按钮、至少一个发光二极管、触觉传感器和/或加速度计。手持口内扫描设备可以包括运动传感器,该运动传感器被配置成感测手持口内扫描设备的运动。手持口内扫描设备被配置成与连接至显示器的外部设备无线通信。显示器上的光标可以基于由运动传感器提供给外部设备的运动信号四处移动。用户能够通过移动手持口内扫描设备导航显示器上的光标。会话数据可以包括与手持口内扫描设备的运动传感器相关的设置更新,定制数据可以包括用于定制手持口内扫描设备的用户界面的设置,这可以涉及显示器上的图形用户界面的图形设置。例如,当手持口内扫描设备连接至外部设备时,手持口内扫描设备通过无线接口将定制包转发给外部设备,然后外部设备被配置成基于定制包改变图形设置。定制包可以通过由会话数据提供的定制数据更新。
[0074] 固件数据可以包括对手持式口内扫描设备的更新,该更新改进设备的功能和特征。
[0075] 服务器设备4和/或用户应用程序12可以被配置成执行在本文中公开的方法的任何动作。口内扫描设备8可以被配置成从三维牙科对象290获取口内扫描数据,并处理患者的口内扫描数据,并且提供二维图像数据和/或三维图像数据。口内扫描设备8被配置成,例如使用无线通信链路20,与外部设备10/用户应用程序12通信。第一通信链路20可以是单跳通信链路或多跳通信链路。第一通信链路20可以由诸如蓝牙、蓝牙低功耗或WIFI等短程通信系统承载。
[0076] 外部设备10/用户应用程序12被配置成经由第二通信链路22通过网络(例如互联网和/或移动电话网络)连接至服务器设备4。服务器设备4可以由口内扫描设备制造商控制。口内扫描设备8包括天线24和耦接至天线4以用于接收/发送包括第一通信链路20的无线通信的无线电收发器26。口内扫描设备8包括被配置成将光发射到牙科对象290上的投光器34,并且设备8包括被配置成接收牙科对象的反射光的摄像头28。口内扫描设备8包括连接至处理器32的存储器单元29,其中口内扫描设备设置存储在存储器单元中。
[0077] 口内扫描设备2包括处理器32,该处理器32连接至收发器26、投光器34和摄像头28,用于接收和处理口内扫描数据。处理器32被配置成处理口内扫描数据并提供二维图像数据和/或三维图像数据。
[0078] 外部设备10包括处理单元36、存储器单元38和无线接口40。用户应用程序12安装在外部设备10的存储器单元38中,并被配置成确保用户应用程序的安全通信,其中确保用户应用程序的安全通信包括从服务器设备4获得询问数据;向口内扫描设备8发送包括询问数据的询问请求;从口内扫描设备8接收包括响应数据的询问响应;并且将响应数据发送至服务器设备4。
[0079] 图2示出了牙科系统2的实体4、8、12之间的示例性序列图100,示出了为包括口内扫描设备的牙科系统的外部设备上的用户应用程序确保安全通信的示例性方法。确保用户应用程序的安全通信包括在服务器设备4中获得询问数据。该方法包括在询问消息104中将询问数据102从服务器设备4发送至用户应用程序12。用户应用程序12接收询问数据,并从用户应用程序12向口内扫描设备8发送包含询问数据102的询问请求106。口内扫描设备8基于询问数据和可选的口内扫描设备的口内扫描设备标识符生成响应数据,并将询问响应108发送至用户应用程序12,用户应用程序从口内扫描设备8接收包含响应数据110的询问响应108。用户应用程序在响应消息112中将响应数据110转发至服务器设备4,服务器设备4基于询问数据验证响应数据110,并且,若验证响应数据110成功,则批准服务器设备4中的用户应用程序12。
[0080] 可选地,所述方法包括从用户应用程序12向服务器设备发送对询问数据的请求114,例如如果满足第一批准标准。在所示的牙科系统中,若用户应用程序已经第一次启动或者用户应用程序已经被更新,则满足第一批准标准。在服务器设备4中对询问数据的请求(即,在服务器设备中满足第一批准标准)的接收触发用户应用程序的安全通信。服务器设备4被配置成确定是否满足批准标准,并且服务器设备4被配置成,若满足批准标准,则发起用户应用程序的安全通信。服务器设备中的批准标准包括第一批准标准和可选的第二批准标准。若用户应用程序在某个时间段(例如14天)内未被批准,则满足第二批准标准。因此,第二批准标准可以基于指示用户应用程序的最后批准时间的批准时间戳。若满足第一批准标准或第二批准标准,则满足批准标准。
[0081] 图3示出了为包括口内扫描设备的牙科系统的外部设备上的用户应用程序确保安全通信的示例性方法的流程图。在方法200中,确保用户应用程序的安全通信包括在服务器设备中获得202询问数据;将询问数据从服务器设备发送204至用户应用程序;从用户应用程序向口内扫描设备发送206包含询问数据的询问请求;从口内扫描设备接收208包含响应数据的询问响应;并且将响应数据从用户应用程序转发209至服务器设备。方法200包括基于询问数据在服务器设备中验证210响应数据;并且,若验证响应数据成功214,则在服务器设备中批准212用户应用程序。可选地,所述方法包括确定216在服务器设备中是否满足批准标准,并且,若满足批准标准,则开始获得202询问数据。若是这样,则所述方法发起或开始确保用户应用程序的安全通信。
[0082] 图4示出了示例性服务器设备,其用于确保包括口内扫描设备8的牙科系统2的外部设备上的用户应用程序的安全通信。服务器设备4包括处理单元250、存储器单元252(例如包含数据库)和接口254。服务器设备4被配置成批准用户应用程序,其中批准用户应用程序包括获得询问数据,例如利用获得模块202a获得。获得询问数据包括生成询问数据,例如基于默认询问值和/或时间戳生成询问数据。询问数据具有16字节的长度。服务器设备被配置成经由接口254在询问消息中将询问数据发送至外部设备的用户应用程序,例如利用发送模块204a发送,并且经由接口254从用户应用程序接收包含响应数据的响应消息,例如通过接收模块256接收。服务器设备被配置成,例如通过验证模块210a,基于询问数据和/或口内扫描设备标识符验证响应数据,例如响应数据的响应值。服务器设备可以包括硬件安全模块,该硬件安全模块例如作为验证模块210a的一部分,它被配置成验证响应数据/响应值。若响应数据被验证,则服务器设备被配置成批准用户应用程序,例如使用批准模块212a批准。验证响应数据可选地包括计算询问数据并基于计算的询问数据验证响应数据。计算询问数据作为响应数据验证的一部分,它消除了对服务器设备中的存储器和存储询问数据的需求。验证响应数据包括验证响应数据的响应值,例如基于询问数据和/或响应数据的口内扫描设备标识符来验证。在服务器设备中验证响应数据可以包括验证响应数据的校验和值。
[0083] 服务器设备4可选地被配置成经由接口254从用户应用程序接收对询问数据的请求,并且在从用户应用程序接收到对询问数据的请求时发起用户应用程序的安全通信。此外,服务器设备4可选地被配置成确定是否满足基于最后批准时间戳的第二批准标准;并且,若满足第二批准标准,例如若用户应用程序在特定时间段(例如14天)内未被批准,则发起对用户应用程序的批准。
[0084] 服务器设备4可以被布置成执行如本文所公开的牙科系统的外部设备上的用户应用程序的安全通信的方法的至少一部分。服务器设备或处理单元250还可以包括许多可选的功能模块,例如被配置成执行步骤202的获得模块202a、被配置成执行步骤204的发送模块204a、被配置成接收响应消息的接收模块256、被配置成执行步骤210的验证模块210a以及被配置成执行步骤212的批准模块212a中的任何一个。一般来说,每个功能模块可以用硬件或软件实现。
[0085] 图6是客户端特定的口内扫描设备服务访问控制的示意图。本发明致力于以高效的方式在口内扫描设备上实现这种客户端特定的口内扫描服务访问。
[0086] 图7是被配置成从三维牙科对象290获取口内扫描数据的口内扫描设备10的一个实例的框图。口内扫描设备10包括无线接口20,该无线接口20被配置成与客户端设备40交换数据,例如用于接收或发送定制数据、更新数据、调试数据。
[0087] 根据一个实例,无线接口20可以是蓝牙接口,优选地是蓝牙低功耗(BTLE)接口,或者是WIFI接口。
[0088] 口内扫描设备10包括用于控制口内扫描设备10的操作的控制单元38和存储器36,该控制单元38作用于处理单元14和收发器28,该存储器36用于存储口内扫描设备10的操作所需的数据和无线接口20的操作所需的数据(例如配对/网络数据)。
[0089] 在图5的实例中,口内扫描设备10包括被配置成向牙科对象发射光的投光器、被配置成接收来自牙科对象的反射光的摄像头、被配置成处理口内扫描数据并提供将经由无线接口20转发的二维图像数据和/或三维图像数据的处理单元14。
[0090] 本公开的口内扫描设备服务访问控制概念包括以下主要方面:定义多个口内扫描设备服务,每个服务具有特定的关键程度,并且根据口内扫描设备服务的关键程度为每个口内扫描设备服务分配一安全级别,该安全级别是从多个层级结构的安全级别中选择的。
[0091] 在图14中,示出了安全级别在以下意义上是层级结构的:对最高安全级别的访问包括对所有较低安全级别的访问,即,对最关键的服务的访问包括对所有较低安全级别服务的访问,一直到最不关键的服务。
[0092] 此外,定义多种授权方法,并且将至少一种授权方法分配给每个安全级别,使得分配给某个安全级别的(一种或多种)授权方法中的每一种不同于分配给其它安全级别的授权方法,其中每种授权方法用于授权客户端访问被分配有相应安全级别的(一个或多个)口内扫描设备服务。
[0093] 在图15中示意性地示出了这种分配的一个实例,其中第一安全级别(与例如固件更新对应)被分配有第一授权方法,例如经由口内扫描设备信任的实体进行授权,第二安全级别(例如与定制过程对应)被分配有第二授权方法,例如经由第一用户手势进行授权,并且第三安全级别(例如与远程控制访问对应)被分配有第三授权方法,例如经由不同于第一用户手势的第二用户手势进行授权。
[0094] 授权至少包括客户端认证符和授予客户端设备的最高安全级别,其中有权访问某一安全级别(作为相应授权方法的结果)的客户端也有权访问低于该级别的所有安全级别。至少一种授权方法可以允许用户自主授予授权,而不涉及口内扫描设备信任的第三方实体;这种自主授权包括在口内扫描设备自身上或与口内扫描设备通信的外部设备上执行动作,尤其是通过特定的用户手势执行。
[0095] 授予的授权被存储在口内扫描设备上,以便允许在运行期间在口内扫描设备上实施访问控制,而不需要第三方实体,例如远程服务器上的用户账户。
[0096] 一旦口内扫描设备从客户端设备接收到口内扫描设备服务访问请求,就开始口内扫描设备服务访问的运行时实施。一旦基于存储的相应客户端设备的客户端认证符对客户端设备进行了认证,就将与客户端请求的口内扫描设备服务相关联的安全级别与根据存储的客户端设备的授权授予客户端设备的最高安全级别进行比较,其中,若所授予的安全级别不是至少与所请求的口内扫描设备服务相关联的安全级别一样高,则口内扫描设备拒绝访问所请求的口内扫描设备服务。若授予的安全级别至少与所请求的口内扫描设备服务相关联的安全级别一样高,则口内扫描设备通常将允许访问所请求的口内扫描设备服务。
[0097] 授权方法的实例如下:通过特定用户手势授权、通过预定义的共享密钥授权、通过口内扫描设备信任的第三方实体授权以及通过默认授权。
[0098] 当使用不同的用户手势进行授权时,用户例如可以使用第一手势向定制站(在这种情况下,用户可以是牙医或操作员)授予对口内扫描设备的完全访问权,而另一个手势可以用于授予对口内扫描设备的受限的一组服务(例如仅由定制数据组成)的访问权。用户可以响应于来自客户端的授权请求执行授权手势,同时口内扫描设备向用户通知收到授权请求。若用户决定授予所请求的授权,用户将执行相应的手势。优选地,用户在向请求的客户端设备授权之前对其进行认证。通知可以向用户指示客户端设备请求了哪些权限;这样的通知可以通过口内扫描设备的用户界面出现。用户界面可以包括振动器、一个或多个LED或数字显示器。在图8中示出了这样的授权方法,该方法涉及用户18、客户端设备40和口内扫描设备10。口内扫描设备10从客户端设备40接收401授权请求,并且口内扫描设备10经由客户端设备40向用户18发送402授权请求通知402。然后,用户通过向口内扫描设备10转发手势404来认证403发出请求的客户端设备,并且口内扫描设备基于手势授予405授权。该手势可以是对客户端设备40的用户界面的输入。
[0099] 替代地,用户可以首先执行授权手势502,从而使口内扫描设备进入接受来自任何客户端的授权请求的状态。优选地,在进入该状态时,口内扫描设备10向用户告知在此状态下将向请求501授权的客户端设备分配哪些权限。然后用户可以使得503期望的客户端设备向口内扫描设备发送504授权请求,由此口内扫描设备通知505用户授权成功;这种通知可以向用户告知哪个客户端已经被有效地授予了授权,使得用户可以在意识到向错误的客户端授予了授权的情况下撤销授权。在图9中示出了这种授权方法的一个实例。
[0100] 根据另一个实例,在无线连接的情况下,例如在客户端设备与口内扫描设备之间使用蓝牙协议或WIFI协议连接的情况下,配对/连接过程(向无线连接至口内扫描设备的设备授权)和客户端设备的授权(即,分配使用口内扫描设备上的一组服务的权限)可以被合并成一个程序,正如用户所看到的。在这种情况下,相同的用户手势可以同时用于配对/连接过程和用于权限分配(即,用于授权过程)。替代地,配对/连接手势可以不同于授权手势。
[0101] 根据一个实例,授权手势可以在客户端设备40或口内扫描设备10的用户界面上执行。例如,长按口内扫描设备的按钮和短按口内扫描设备的按钮可以用作不同的手势来授予不同的授权(即,分配不同的权限组)。
[0102] 根据另一组授权方法,授权可以包括通过共享密钥授权,其中共享密钥与安全级别之一相关联,共享密钥被存储在口内扫描设备上,并被提供给至少一个客户端设备,并且其中若客户端设备向口内扫描设备出示其知道共享密钥的有效证据,则该客户端设备被授予所请求的安全级别。在这种情况下,不同的权限组(即,不同的授权)可以与例如在制造时存储在口内扫描设备中的不同密钥值相关联。向客户端设备分发共享密钥的问题可以通过不同的方式解决,例如:(1)若客户端处于口内扫描设备制造商的完全控制之下(例如它是制造商所拥有的云服务),则可以直接将共享密钥提供给客户端设备;以及(2)若客户端是定制站,则在制造商成功认证和授权定制者时,可以向该客户端提供共享密钥。若共享密钥对于口内扫描设备不是唯一的,而是对于所有设备都是相同的(从安全的角度来看,这是一个很弱的方案),则这些密钥可以与客户端安装包一起分发。
[0103] 例如,为了实现对口内扫描设备的完全访问,定制站必须向口内扫描设备证明它知道第一密钥。
[0104] 客户端可以通过使用不同的方法向口内扫描设备证明其知道密钥,例如,可以通过保证机密性的通信信道(例如加密的蓝牙或WIFI链接)以明文形式传送密钥,或者客户端和口内扫描设备可以使用加密的询问‑响应协议。
[0105] 另一组授权方法是通过可信任的实体进行授权。在这种情况下,使用授权服务向口内扫描设备客户端设备授权,该授权服务是被口内扫描设备所信任的实体,其中希望访问口内扫描设备服务的客户端设备从授权服务请求所希望的访问,例如经由用户在授权服务处的登录来请求。若授权服务决定向客户端设备授予所请求的授权,则它向客户端设备发出令牌,该令牌可以包含所授予的一组权限。为了获得所请求的口内扫描设备服务访问权,客户端设备随后将令牌出示给口内扫描设备,若口内扫描设备成功地认证了由可信任的授权服务发出的令牌,则向客户端设备授予所请求的权限组。
[0106] 由于这种方法容易受到重放攻击,因此可以使用更高级的替代方法,其中口内扫描设备向客户端设备发出‘令牌’。客户端设备向授权服务提供令牌,授权服务(1)对令牌进行签名(所谓的随机数);并且(2)产生和签署将由客户端设备和口内扫描设备使用的共享密钥(即,在它们之间建立信任关系)。然后授权服务以保密的方式将签署的令牌和密钥分发给客户端设备和口内扫描设备。通常,这是通过客户端设备完成的。因此,首先向客户端设备提供签署的令牌‑密钥对的两个加密副本。一个副本被加密,使得只有客户端设备能够将其解密。
[0107] 另一个副本被加密,使得只有口内扫描设备能够将其解密。客户端设备为自己提取其副本,并将另一个副本转发给口内扫描设备。口内扫描设备验证授权服务签名,并且,若授权服务签名有效则接受共享密钥(该共享密钥可以被用作客户端认证符)。在客户端与授权服务之间的信道的机密性和完整性得不到保证的情况下,客户端也会这样做。
[0108] 例如,若授权服务可以将某个人(通常经由用户登录)认证为牙医,该牙医被授权对特定的口内扫描设备进行定制,则授权服务向这个人发放第一令牌,以授予对口内扫描设备的完全访问权。若授权服务可以将某个人认证为口内扫描设备的拥有者/最终用户(经由用户登录到授权服务),则授权服务向这个人发放第二令牌,以授予一组有限的权限,这组权限例如仅足以向口内扫描设备发送遥控命令,但不能改变其定制参数。
[0109] 授权服务与口内扫描设备之间的信任关系例如可以基于对称加密法建立,该对称加密法使用在授权服务与口内扫描设备之间预先共享的密钥(例如,可以在制造口内扫描设备时提供共享密钥);优选地,共享密钥对于每个口内扫描设备是唯一的。
[0110] 图10和图11示出了信任关系的建立的一个实例,其中图10所示的步骤在图11所示的步骤之前执行,该实例涉及牙医18、客户端设备(例如定制站42)、口内扫描设备10和制造商授权服务46。在图10中,牙医18正在登录701客户端设备42或安装在客户端设备上的应用程序,并且用户名和密码正在被经由客户端设备42转发702至口内扫描设备10,而口内扫描设备10将访问令牌转发703至客户端设备42,该访问令牌包含与牙医是否被成功授权相关的信息。客户端设备42向牙医通知704登录是否成功。
[0111] 在图11所示的消息交换之前,客户端通过图10所示的步骤向授权服务46认证自身。在步骤801中,客户端设备42向口内扫描设备10请求授权。在步骤802中,从口内扫描设备10向客户端设备42发送随机数和口内扫描设备ID;可以使用在口内扫描设备10与授权服务46之间预先共享的密钥加密该消息,该密钥可以是共享密钥或公开密钥。在步骤803中,客户端设备向授权服务46发送授权请求,该授权清楚包含随机数、口内扫描设备ID、客户端设备ID和所请求的安全级别,由此授权服务46检查客户端的访问权限(步骤804)并且向客户端设备42发送包含客户端认证符的授权许可(步骤805)。假设客户端设备42与授权服务46之间的信道是保密和完整的。在步骤806中,授权服务46向口内扫描设备发送授权许可确认消息,该消息包含随机数、口内扫描设备ID、客户端设备ID、请求的安全级别和客户端认证符。授权服务46使用在口内扫描设备与授权服务46之间预先共享的密钥或者通过授权服务46的私有密钥,认证该消息。如果不能保证信道的保密性,那么可以使用口内扫描设备与授权服务46之间预先共享的密钥或者使用口内扫描设备在步骤802的消息内提供的临时密钥,来加密该消息(在这种情况下,步骤802的消息也必须是加密的)。可以将步骤806的消息“直接地”或通过客户端设备42发送至口内扫描设备10。客户端设备ID、安全级别和认证符(共享密钥)可以存储807在口内扫描设备10上。
[0112] 因此,可以基于公开密钥加密来建立信任关系,其中授权服务拥有私有密钥,并且口内扫描设备知道对应的公开密钥(例如,该公开密钥可以存储在口内扫描设备内的写保护存储器中);优选地,对于口内扫描设备,公开密钥/私有密钥对是唯一的;替代地,对于所有或一组口内扫描设备,公开密钥/私有密钥对可以是相同的。
[0113] 令牌可以是由授权服务颁发给客户端的数字证书,其中该数字证书可以用授权服务的私有密钥签署,并且其中口内扫描设备可以使用公开密钥来确认证书的签名,以便验证证书。在成功验证时,口内扫描设备可以将证书安装在其写保护存储器中。证书可以是标准格式的,并且可以包含证书颁发给其的目标客户端设备的认证符、由客户端设备生成并提供给授权服务的客户端公开密钥、以及授予客户端设备的安全级别。客户端私有密钥由客户端设备作为秘密存储。随后,口内扫描设备可以使用客户端公开密钥来认证客户端设备,和/或口内扫描设备可以将其用于任何其它需要加密保护的通信机密性和完整性的目的,例如用于密钥分发。
[0114] 可以通过通信网络(例如互联网)提供授权服务;尤其是,可以在由口内扫描设备的制造商运营的服务器上实现授权服务。
[0115] 除了到目前为止说明的授权方法之外,授权可以是默认发生的,其中口内扫描设备无条件地向任何请求授权的客户端分配给定的最低安全级别;这适用于非关键的口内扫描设备服务,例如与口内扫描数据的获取和口内扫描数据的处理无关的设置。
[0116] 如上文所述,成功授权的结果是客户端认证符和授予客户端的最高安全级别。优选地,客户端认证符包含在客户端与口内扫描设备之间共享的密钥。根据一个实例,可以通过密码协议(例如Diffie‑Hellman)确立共享密钥。替代地,如图8和图9中的消息序列图所示例性示出的,在授权过程中,可以通过授权服务在客户端设备与口内扫描设备之间确立共享秘密(即,共享密钥)。根据另一个替代方案,如果基础通信信道确保机密性和完整性,那么可以由客户端设备生成共享密钥,并将其明文传送至口内扫描设备(或者反之亦然)。密钥可以是共享密钥或私有密钥/公开密钥对。
[0117] 以后,如果基础通信信道经过不可信任的实体,例如互联网(例如在口内扫描设备的远程定制更新、固件更新、调试期间的情况),那么客户端认证符的共享密钥(该共享密钥要区与相对于授权方法提到的共享密钥区分开)可以用于实现客户端设备与口内扫描设备之间的通信的端到端安全(即,机密性和完整性)。
[0118] 如上文所述的类似方法和机制可以用于撤销先前授予的对口内扫描设备服务的授权。
[0119] 只有在口内扫描设备能够成功认证客户端时,它才开始接受来自客户端设备的服务请求。
[0120] 如果客户端设备与口内扫描设备之间的基础通信信道保证机密性和完整性,那么可以将在授权期间确立的共享密钥通过明文方式从客户端传送901至口内扫描设备,以便认证902客户端设备。认证响应903被转发至客户端设备42,以通知认证是否成功。在图12中示出了这种认证的一个实例,该实例涉及客户端设备42和口内扫描设备10。如果客户端设备42与口内扫描设备10之间的通信信道保证完整性但不保证机密性,那么在加密询问‑响应协议中使用在授权期间确立的共享密钥。在图13中示出这种认证的一个实例。在步骤1001中,客户端设备请求1001对口内扫描设备10的询问,并且口内扫描设备10生成随机数(即,询问),该随机数然后被转发1003至客户端设备42。客户端设备通过转发由口内扫描设备10验证1005的随机生成的数字来回复1004询问,并通知1006验证是否成功。
[0121] 在这两种情况下,客户端认证只需要执行一次(例如在建立链接时),就能实现永久认证。但是,如果客户端设备与口内扫描设备之间的通信信道不能保证完整性,那么必须对客户端的每个单个的服务请求进行认证(即,只有一次性认证);这可以通过诸如消息认证码(MAC)或数字签名等已知的加密技术来实现。“永久”并不一定意味着认证只进行一次并且永远有效。相反,认证是在每个会话开始时执行的(假设通道的机密性和完整性)。例如,其可以在每次智能电话通过蓝牙或WIFI重新连接至口内扫描设备时执行,但是也可以更频繁地执行认证,例如对于应用层上的每个逻辑上独立的交互(即,会话)。
[0122] 某些(非关键的)服务请求可能不需要预先客户端认证,因此将总是被口内扫描设备接受(这与上述的“默认认证”对应)。
[0123] 如上文所述,一旦口内扫描设备成功认证了客户端设备,并且发现授予客户端设备的安全级别至少与服务请求相关联的安全级别一样高,则口内扫描设备通常允许访问所请求的口内扫描设备服务。
[0124] 优选地,安全级别由数值表示,数值的顺序与安全级别的层级相关。例如,表示安全级别的数值越高,安全级别就越高。根据一个实例,可以在口内扫描设备上存储调用调度表,用于将客户端设备能够调用的每个口内扫描设备服务分配给安全级别之一。
[0125] 根据一个实例,可以通过白名单(列出客户端能够访问的所有服务/安全级别)或通过黑名单(即,列出客户端设备不能访问的所有服务/安全级别)表示某个客户端设备能够访问的安全级别(以及与该安全级别相关联的口内扫描设备服务)。
[0126] 根据一个实例,可以基于客户端设备能够访问的最高安全级别对客户端设备进行分组,并为每个组分配该组的客户端设备能够访问的相应的最高安全级别,其中如果与所请求的口内扫描设备服务相关联的安全级别不高于该组客户端设备的安全级别,那么口内扫描设备允许访问所请求的口内扫描设备服务,否则口内扫描设备拒绝访问该服务。
[0127] 客户端设备可以包括诸如定制站、诊所计算机、平板电脑、测试系统、维修和服务站等设备、以及在这些设备上运行的应用程序。
[0128] 本公开提供多种益处;例如,由于认证方法包括通过用户手势认证,因此用户保持对其口内扫描设备的客户端设备访问的控制。此外,本公开保护口内扫描设备在配对期间免受中间人攻击,同时仍然能够以仅需要少量口内扫描设备资源的方式实现访问控制。
[0129] 虽然详细说明并示出了一些实施方式,但是本公开不限于这些细节,在所附权利要求中限定的主题的范围内,也可以按其它方式实施本发明。尤其是,应理解,可以利用其它实施方式,并且可以进行结构和功能修改,而不会脱离本发明的范围。
[0130] 本发明的益处、其它优点和问题的解决方案在本文中是参照具体实施方式说明的。但是,这些益处、优点、问题的解决方案、以及可能带来任何益处、优点或解决方案或使其变得更加明显的任何部件/单元不应被理解为是任何或所有权利要求或本发明的关键、必要或本质特征或者部件/元件。因此,本发明的范围仅受所附权利要求的限制,在所附权利要求中,除非另行明确声明,否则对单数形式的部件/单元/元件的指代并非意图表示“一个且仅有一个”,而是表示“一个或多个”。一项权利要求可以引用任何前述权利要求,并且“任何”应理解为意指“任何一项或多项”前述权利要求。
[0131] 详细说明和/或权利要求中的上述设备的结构特征在被相应的过程适当地替代时可以与所述方法的步骤相结合。
[0132] 如本文中所用的单数形式“一”、“一个”和“该”也意图包括复数形式(即,具有“至少一个”的含义),除非另外明确声明。还应理解,当在本说明书中使用时,术语“包括”、“包含”及其语法变化形式指存在所述的特征、整数、步骤、操作、元件和/或部件,但不排除存在或添加一个或多个其它特征、整数、步骤、操作、元件、部件和/或它们的组。还应理解,当一个元件被称为“连接”或“耦接”至另一个元件时,它可以被直接连接或耦接至另一个元件,但是也可以存在中间元件,除非另外明确声明。此外,如本文中所用的“连接”或“耦接”可以包括无线连接或耦接。如本文中所用的术语“和/或”包括一个或多个相关的所列项目的任何和所有组合。任何公开的方法的步骤不限于本文中所述的确切顺序,除非另有明确声明。
[0133] 应理解,在本说明书中对被包含为“可能”的“一个实施方式”或“实施方式”或“一个方面”或特征的指代意味着结合该实施方式说明的特定特征、结构或特性被包含在本公开的至少一个实施方式中。此外,在本公开的一个或多个实施方式中,特定的特征、结构或特性可以适当地组合。提供前面的说明是为了使本领域技术人员能够实践在本文中说明的各个方面。所属领域的技术人员很容易明白对这些方面的各种修改,并且在本文中限定的一般原理可以适用于其它方面。
[0134] 权利要求不限于在本文中所示的方面,而是符合与权利要求的语言一致的完整范围,其中,除了特别声明之外,以单数形式对元素的指代并非意图表示“一个且仅一个”,而是表示“一个或多个”。除了特别说明之外,术语“一些”指一个或多个。
[0135] 项目列表:
[0136] 1.一种控制客户端设备(42)对口内扫描设备(10)的服务的访问的方法,所述方法包括以下步骤:
[0137] ·通过向口内扫描设备(10)提供客户端设备认证符,来请求客户端设备(42)对口内扫描设备(10)的服务的访问;
[0138] ·基于由口内扫描设备(10)对所提供的客户端设备认证符的确认来认证客户端设备(42);
[0139] 其特征在于:
[0140] ·在成功认证后,将与客户端设备(42)所请求的服务相关联的安全级别与由口内扫描设备(10)分配给客户端设备(42)的最高安全级别进行比较,其中所述安全级别选自多个层级结构的安全级别,以及
[0141] ·若所请求的安全级别低于或等于分配给客户端设备(42)的最高安全级别,则准许客户端设备(42)访问口内扫描设备(10)的服务。
[0142] 2.根据项目1所述的方法,其中提供客户端设备认证符包括向每个客户端设备(42)授予授权,并将授予客户端设备(42)的口内扫描设备(10)服务授权存储在口内扫描设备(10)上;其中若分配给客户端设备(42)的安全级别不是至少与服务请求相关联的安全级别一样高,则口内扫描设备(10)拒绝访问所请求的口内扫描设备服务,其中授权至少包括客户端设备认证符和分配给客户端设备(42)的最高安全级别,并且其中被授权访问某一安全级别的客户端设备也被授权访问低于该安全级别的所有安全级别。
[0143] 3.根据项目2所述的方法,还包括:定义多种授权方法,并且将至少一种授权方法分配给每个安全级别,使得分配给某个安全级别的每种授权方法不同于分配给其它安全级别的授权方法,其中每种授权方法用于授予客户端设备(42)访问分配有相应安全级别的(一个或多个)口内扫描设备服务的授权。
[0144] 4.根据项目3所述的方法,其中至少一种授权方法允许用户通过在口内扫描设备(10)上或在与口内扫描设备(10)通信的外部设备上执行动作来自主地授予授权,而不涉及另外的设备。
[0145] 5.根据项目4所述的方法,其中所述授权方法包括由用户在口内扫描设备(10)的用户界面上或在与口内扫描设备(10)通信的外部设备(例如计算机)上执行至少一个选择性手势。
[0146] 6.根据项目5所述的方法,其中所述外部设备被口内扫描设备(10)信任。
[0147] 7.根据项目5和6之一所述的方法,其中所述授权方法包括由用户执行的多个手势,其中每个手势专用于一个不同的安全级别。
[0148] 8.根据项目5至7之一所述的方法,其中所述用户手势是响应于由口内扫描设备(10)从客户端设备(42)接收的授权请求而被执行的。
[0149] 9.根据项目8所述的方法,其中所述客户端设备(42)在执行用户手势之前由用户认证。
[0150] 10.根据项目8和9之一所述的方法,其中所述口内扫描设备(10)向用户提供关于口内扫描设备(10)接收到授权请求的触觉或视觉/光学通知,该通知包含关于客户端设备(42)请求访问的(一个或多个)安全级别的信息。
[0151] 11.根据项目5至7之一所述的方法,其中所述用户手势是响应于用户从客户端设备(42)接收的授权请求而执行的,其中所述用户手势使得口内扫描设备(10)进入授权接受状态,在该状态中,口内扫描设备(10)接受来自任何客户端设备(42)的授权请求,并且其中用户然后使得客户端设备(42)向口内扫描设备(10)发送授权请求。
[0152] 12.根据项目11所述的方法,其中所述口内扫描设备(10)在处于授权接受状态时向用户通知关于在授权接受状态下请求授权的客户端设备(42)能够访问的安全级别。
[0153] 13.根据项目11和12之一所述的方法,其中所述口内扫描设备(10)向用户通知授权已经被授予以及已经向哪个客户端设备(42)授予了授权。
[0154] 14.根据项目13所述的方法,其中所述口内扫描设备(10)使得用户能够在授权的授予通知之后的给定时间段内,撤回所授予的授权。
[0155] 15.根据项目11至14之一所述的方法,其中有多个不同的用户手势,每个用户手势使口内扫描设备(10)进入具有不同的最高可访问安全级别的不同授权接受状态。
[0156] 16.根据项目3至15之一所述的方法,其中所述授权方法包括由授权服务(46)授权,其中所述客户端设备向授权服务(46)标识其自身,并向授权服务(46)请求对访问至少一个口内扫描设备服务的授权,其中授权服务(46)基于客户端设备的身份决定授予还是拒绝所请求的授权,其中授权服务(46)在授予所请求的授权时向客户端设备(42)发出包含客户端设备(42)能够访问的最高安全级别的令牌,其中客户端设备将令牌出示给口内扫描设备(10),其中在口内扫描设备(10)与授权服务(46)之间建立信任关系,并且其中口内扫描设备(10)在成功认证令牌是由授权服务(46)发出的时将所请求的授权授予客户端设备。
[0157] 17.根据项目16所述的方法,其中所述令牌是由授权服务(46)颁发给客户端设备(42)的数字证书。
[0158] 18.根据前述项目之一所述的方法,其中所述客户端设备认证符包含在客户端设备(42)与口内扫描设备(10)之间共享的密钥。
[0159] 19.根据前述项目之一所述的方法,其中所述安全级别由数值表示,该数值的顺序与安全级别的层级相关。
[0160] 20.根据前述项目之一所述的方法,其中在口内扫描设备(10)上存储调用调度表,用于将客户端设备(42)能够调用的每个口内扫描设备服务分配给安全级别之一。
[0161] 21.根据前述项目之一所述的方法,其中基于客户端设备(42)能够访问的最高安全级别对客户端设备(42)进行分组,并为每个组分配该组客户端设备(42)能够访问的相应的更高的最高安全级别,并且其中若与所请求的口内扫描设备服务相关联的安全级别高于该组客户端设备(42)的安全级别,则口内扫描设备(10)拒绝访问所请求的口内扫描设备服务。
[0162] 22.根据前述项目之一所述的方法,其中所述口内扫描设备(10)被配置成在扫描会话期间从三维牙科对象获取口内扫描数据,并且所述口内扫描设备包括处理单元,所述处理单元被配置成处理口内扫描数据并提供二维图像数据和/或三维图像数据。