用于管理移动计算设备上的软件应用程序的方法和系统的制作方法

文档序号:6479106阅读:191来源:国知局
专利名称:用于管理移动计算设备上的软件应用程序的方法和系统的制作方法
技术领域
本发明涉及用于管理移动计算设备上的软件应用程序的方法和系统。
背景技术
制定好了使用一次性密码(one time passwords,OTPs)以增强访问例如公司网络 的安全性。实现使用一次性密码(OTPs)的系统的最一般的方法是向每一个用户提供硬件 令牌,用户必须接通例如个人计算机(PC)的终端,其中所述个人计算机用于访问网络。令 牌包括硬件和软件,以及在每一次用户访问网络时生成唯一的密码。给这样的网络的每个 用户提供硬件令牌的成本和运销是巨大的。为了避免上述令牌的一些缺点,已经开发了这样的系统和方法,其在移动计算设 备上采用一次性密码安全应用程序。该一次性密码(OTP)应用程序使移动计算设备作为认 证令牌使用,等同于现在在其他系统中使用以得到安全网络的访问的专用认证令牌。已经确定需要远程地和安全地管理这些已经下载到移动计算设备上的OTP应用 程序。因此,本发明的目的是提供除了其他因素以外的用以管理在移动计算设备上采用 的一次性密码应用程序的方法和系统。

发明内容
根据本发明,提供了管理一次性密码安全软件应用程序的方法,所述一次性密码 安全软件应用程序在移动计算设备上采用,所述方法包括生成命令消息,该命令消息包括命令数据,其指定被移动计算设备所采用的一次性密码安全应用程序中执行的命 令的类型,以及唯一的识别码,以识别在其上执行命令的数据记录,或者识别在其上执行命令的 一次性密码算法及其相关的认证实体;以及传送命令消息到移动计算设备,以在移动计算设备上执行,从而管理一次性密码 安全软件应用程序。移动计算设备优选是移动电话、个人数字助理(PDA)或者其他具有无线连接的移 动计算设备。通过命令消息指定的命令的类型可以是,例如,更新或者增加与认证实体相关的 数据的命令,去除认证实体的命令,执行用于指定的认证实体的同步操作的命令,或者增 加、更新或删除与一次性密码安全应用程序相关的一般数据记录的命令。优选的,该方法可以进一步包括在传送之前加密命令消息。加密可以是对称或者非对称加密。命令消息通常从与经过唯一的识别码识别的认证实体相关的总控钥匙服务器 (turnkey server)传送。优选的,在命令消息被传送之前,在移动计算设备和认证实体之间存在信任关系。在将一次性密码安全应用程序安装到移动计算设备的过程中,可以建立在 移动计算设备和认证实体之间的所述信任关系。优选的,在与命令消息相关的认证实体和移动计算设备之间不存在信任关系的情 况下,可以从与被信任的认证实体相关的总控钥匙服务器传送命令消息,所述被信任的认 证实体与命令消息不相关。在一些情况下,可以首先将命令消息从与移动计算设备没有信任关系的总控钥匙 服务器传送到与移动计算设备具有信任关系的总控钥匙服务器。优选的,命令消息可以包括与总控钥匙服务器相关的安全密钥,其中所述总控钥 匙服务器与移动计算设备没有信任关系。加密命令消息的步骤可以包括经过第二通信信道将安全密钥传送到移动计算设 备的用户,其中所述安全密钥优选是PIN。加密命令消息的步骤可以进一步包括以现有共用的安全密钥加密命令消息,其中 所述共用的安全密钥在一次性密码安全软件应用程序的安装过程中被传送给移动计算设备。所述方法可以进一步包括在移动计算设备上接收命令消息以及执行该命令消息。执行命令消息的步骤可以进一步包括解密命令消息。所述方法可以进一步包括在安装一次性密码安全软件应用程序的过程中注册SMS 端口,以及传送一次性密码安全软件应用程序,所述一次性密码安全软件应用程序包括被 注册的SMS端口的远程管理模块。优选的,所述方法可以进一步包括从移动计算设备接收端口冲突消息,以响应将 一次性密码安全软件应用程序传送到注册的SMS端口,以及重新传送一次性密码安全软件 应用程序到移动计算设备的可选SMS端口。根据本发明的另一个方面,提供了管理一次性密码安全软件应用程序的系统,所 述一次性密码安全软件应用程序被移动计算设备所采用,所述系统包括与网络相关的认证实体的安全服务器,所述网络被移动计算设备通过使用一次性密码而访问;该系统可于生成命令消息,该命令消息包括命令数据,指定在移动计算设备上所采用的一次性密码安全应用程序中执行的命 令的类型,以及唯一的识别码,以识别在其上执行命令的数据记录,或者识别在其上执行命令的 一次性密码算法及其相关的认证实体;以及传送命令消息到移动计算设备,以在移动计算设备上执行,从而管理一次性密码 安全软件应用程序。安全服务器可以被配置为在注册过程中建立与认证实体的信任关系。安全服务器可以被进一步配置,通过首先从与第二网络相关的第二认证实体的第 二服务器接收命令消息而生成命令消息。


图1是根据本发明的管理用户的移动计算设备上的安全软件应用程序的系统的简化的示意图;图2是说明将一次性密码安全应用程序安装在移动计算设备上的安装过程的主 要步骤的流程图,所述一次性密码安全应用程序包括远程管理模块;图3到图6显示了命令消息、未加密命令消息,PIN加密命令消息和密钥加密命令 消息的示例性的具体实施方式
的结构;图7是说明源于不同的来源及其执行的命令消息的流程图;以及图8是说明队列中的命令执行的流程图。
具体实施例方式图1显示了管理用户的移动计算设备上的软件应用程序的系统的高度简化的示 意形式。对本发明而言,术语“移动计算设备”包括但不限于移动电话(包括蜂窝式电 话),个人数字助理(PDAs),智能电话(smartphones),膝上型电脑或者笔记本电脑,以及其 他类似设备。一般而言,这类设备具有包括显示器和键区(keypad)或键盘的用户接口,机 载处理器(onboard processor)以及软件,以及优选为无线的通信接口。本发明涉及远程和动态地管理在这种移动计算设备上的软件应用程序。这种应用 程序的一个例子是一次性密码(OTP)安全应用,并且下面的描述就基于该示例。在图1中,用户10具有移动计算设备12,显示为PDA。该设备12能够经过不同的 通信信道进行通信,例如,以包括SMS网关16的无限电话网络14发送推送SMS(短消息系 统)消息。在示例性实施例中,显示出用户10可能希望获得对于两个单独的网络18和20的 访问,这两个网络都分别作为认证实体(authenticationentities)。用户希望获得访问的 第一网络18包括总控钥匙服务器(turnkeyserver) 22、防火墙24以及管理员工作站26 (为 清楚起见网络的其他组件被省略),所述工作站通过管理员28操作。相似的,用户希望获得 访问的第二网络20包括总控钥匙服务器30、防火墙32以及管理员工作站34(为清楚起见 网络的其他组件被省略),所述工作站通过管理员36操作。在本发明所描述的实施例中,理想的是管理已经在用户10的移动计算设备12上 采用的软件应用程序,从而使网络18和20的管理员28和36添加、删除、修改数据,这能够 使安装在移动计算设备10中的软件作为认证令牌而操作。例如,在本发明的不同实施例 中,系统和方法允许在安全环境中的例如令牌同步、算法改变以及增加新的认证实体的操 作,而没有用户介入。如上文所述,被移动计算设备12所安装并采用的软件应用程序是一次性密码 (OTP)安全应用程序,其可以在使用如国际专利申请No.PCT/IB2008/051580,公开号为WO 2008/132670所描述的方法和系统的移动计算设备12上采用。该文件作为参考在此被引 用。被采用的OTP安全应用程序允许用户10经过作为认证令牌的移动计算设备12来访问 网络18。但是,应理解,认证令牌仅仅是移动计算设备12上所采用的软件应用程序。在一 个示例性实施例中,令牌提供管理模块,从而能够实现本发明,同时令牌还提供其他允许开 发和集成新模块(例如第三方的)在令牌中而无需显著的改变令牌本身的基于插拔的技术(plug-in-based technology) 0这些模块能够执行不同的操作。为了达成该目的,需要远 程和动态地访问与认证令牌(称为“通用数据记录”,general data records)的有关的数 据。在图1所示的示例性实施例中,网络或者认证实体18已经在移动计算设备12上 安装了 OTP安全应用程序。在安装过程中,管理员28已经捕获用户数据。同样,通过例如 向移动计算设备12下载安全密钥(security key),在网络或者认证实体18以及移动计算 设备12之间建立信任关系(trust relationship)。根据PCT/IB2008/051580的方法和系统,通过使用用户的另一个计算设备的单独 的同步调度(deployment)过程,在使用电子邮件消息得到安装过程中的安全性,所述电子 邮件作为向用户10的分发(distributing)邀请以采用安全软件应用程序以及对用户10 设置对网络进行访问的安全接入的机制。在安装过程中,不需要通过电子邮件向用户发送 安全密钥,以及在PCT/IB2008/051580的一些系统和方法的实施例中,安全性可以是通过 写作或者其他方式的言辞上的通信。重要的事情是信任关系已经存在于认证实体18和移 动计算设备(也称为认证令牌)12之间。应理解,在示例性实施例中,以及特别是在安全软件的安装过程中的所给予的关 注中,任何在OTP安全应用程序的管理中对移动计算设备12的传送都应当被保证安全。在图1所示的系统中,网络18的总控钥匙服务器22位于防火墙24之后,所述防 火墙24保护总控钥匙服务器22免受基于互联网的攻击。在一个示例性实施例中,作为认证令牌的移动计算设备12使用不同的OTP算法来 为其所支持的不同的认证实体的每一个生成一次性密码。例如,认证令牌将使用两个完全 不同的OTP算法来访问网络18和网络20( —旦将网络20增加为认证令牌的认证实体)。从而,OTP算法和认证实体形成移动计算设备12的唯一的对,以及所述对被唯一 的识别(ID)编号(例如认证实体ID)所标识。通过该认证实体ID,每个这样的对具有与其 相关的数据记录。被存储在移动计算设备12中的所述记录包括被OTP算法所使用的数据, 以生成用于专门的认证实体的OTP。正是这些被管理员28所管理的数据记录(也称为“认 证实体记录”)采用本发明的系统和方法,以允许OTP安全应用程序的远程管理。通过使用在认证实体18和移动计算设备12之间的“推送SMS (push SMS) ”技术, 即使当OTP安全应用程序在用户的移动计算设备12上没有被激活,也可以进行认证令牌的 远程管理和处理。根据PCT/IB2008/051580所描述的认证令牌的调度系统,定制的OTP应用程序被 发送到用户10的移动计算设备12中。这由流程2中的块40和块42显示。移动计算 设备12通常提供安装结果的反馈信息。并非所有的移动计算设备都可以提供OTP安全应用程序的远程管理所需要的必 要SMS库(library)(例如JSR120 无线消息API,或者JSR205 无线消息API 2. 0)。由此, 需要OTP安全应用程序的调度系统确定用户的移动计算设备12的制造和模型(如图2的 块44所示),以及然后通过确定移动计算设备12是否提供必要SMS库而确定专门的移动计 算设备12是否将支持远程管理(块46)。根据这一信息,定制的OTP安全应用程序被发送 给用户的移动计算设备12,如果专门的移动计算设备提供正确的SMS库,其中该应用程序 仅包括远程管理OTP安全应用程序的模块。如果移动计算设备12不提供所需的SMS库,被发送的定制的OTP安全应用程序将仅仅包括基本的特征,但不包括用于OTP安全应用程序 的远程管理的模块(见块48)。这样,通过在安装OTP安全应用程序之后使用从移动计算设备12向有关的总控钥 匙服务器发回的反馈信息,网络18或认证实体的管理员28能够确定哪一个用户具有支持 远程管理的认证令牌。移动计算设备12通常在移动计算设备12的专门端口收听包括命令消息的SMS消 息,以及当命令消息被接受时可以执行从认证令牌所接收的命令消息。在控制移动计算设备端口的使用以及避免通信中的冲突的努力中,互联网号码分 配机构(IANA)对特定的应用设定分配了移动计算设备的特定端口。但是,当开发通信策略 时,许多移动计算设备软件应用程序的开发者并没有考虑这些预先分配的端口,而本发明 中的系统必须应用特定的方法来解决该问题。根据这一点,在移动计算设备12上安装包括远程管理模块的OTP安全应用程序的 过程中,认证实体或网络18的总控钥匙服务器22选择并注册(register)推送SMS端口 (块50)。根据从移动计算设备12传送回的反馈信息(如图2中的块52所示),如果发生 端口冲突则信息被提供以确认端口注册以及通知总控钥匙服务器22 (块54)。总控钥匙服 务器22然后可以选择另一个端口,重试安装过程以及重复该过程直到找到自由端口。一旦 对移动计算设备的远程管理能力的调度成功(块56),总控钥匙服务器可以对特定用户显 示额外的远程管理选项(块58)。为了远程地和动态地管理在移动计算设备12上的OTP安全软件应用程序,在一个 示例性实施例中,特定网络认证实体的总控钥匙服务器,例如总控钥匙服务器22,生成经过 推送SMS技术发送到移动计算设备12的命令消息。命令消息通常包括指定要在移动计算设备12上的OTP安全软件应用程序中执行 的命的类型的命令数据,以及识别数据记录或者OTP算法以及与命令相关的认证实体的唯 一的识别码(identification code)。通过使用和执行这些传送的命令消息,总控钥匙服务器22可以控制移动计算设 备12作为认证令牌进行操作。不同的可用命令消息进一步允许更改(modification)在认 证令牌的数据存储中的记录。虽然命令消息基本的目的是远程管理认证令牌,但是应理解, 为了管理或控制令牌的一些方面,令牌本身的特定组件(component)也可以发出命令。命令消息的示例 增加/更新认证实体记录——该命令为特别的认证实体更新认证数据,或者如 果在管理作为认证令牌的移动计算设备的OTP安全应用程序中不存在该认证实体则增加 认证实体。 删除认证实体记录——该命令从管理作为认证令牌的移动计算设备的OTP安全 应用程序中删除识别的认证实体。 同步认证实体——该命令执行用于特别的认证实体的同步操作。 增加/更新数据记录——该命令更新或者增加一般数据记录。数据记录可以被 用于存储设置、用户数据或者需要被安全存储的任何其他形式的信息(包括插拔模块所需 的数据)。 删除数据记录——该命令删除一般数据记录。
根据可用的命令消息,可以通过特定的认证实体更新所使用的OTP算法,以增加 新的认证实体,以同步现有的认证实体,以及以增加或者删除移动令牌中的任意数据。从 而,该命令消息组足够灵活,以在OTP安全应用程序的远程管理中执行不同的任务,而不需 要对执行远程管理的系统做出任何修改。通过总控钥匙服务器生成的命令消息的一个示例性实施例的结构如图3所示。如 该图所示,命令消息通常至少包括命令识别(ID)编号60的字段(field)或者第一数据字 段62。其他四个数据字段64到70是可选的,并且他们的使用依赖于特定的命令类型。认证令牌使用命令ID字段60来确定哪些数据字段被包含于命令消息,以及他们 各自的数据类型是什么。命令ID是命令数据,其指定(specifiy)在移动计算设备上的一次性密码安全应 用程序中执行的命令的类型。不同命令ID的密钥的例子如下表所示
ID命令的类型1增加/更新认证实体2删除认证实体3同步认证实体4增加/更新数据记录5删除数据记录根据示例性实施例,可能包含于每一个命令消息中的实际数据(以及命令消息的 各个数据字段)如下所示1.增加/更新认证实体——增加新的认证实体到OTP令牌存储系统,· String Name (字符串名称)——将要增加的认证实体的描述性名称· long ID (长ID)——增加的实体的唯一的认证实体识别(ID)(也称为公司ID) (即,唯一的识别码)· int dataSize(int数据量)——实体的原始数据的大小· byte[Jdata——实体的原始数据,也称为实体数据组(data-set)。被相关的 OTP算法所使用,以及通常包括种(seed)以及迭代计数。2.删除认证实体——从OTP令牌存储系统中删除认证实体· long ID (长ID)——删除的实体/公司的唯一的认证实体ID或者公司ID (即, 唯一的识别码)3.同步公司——同步特定的认证实体· long companyID(长公司ID)——同步实体的唯一的认证实体ID ( S卩,唯一的识 别码)· String challenge (字符串质询)——当同步实体时通过OTP算法的质询 (challenge),该质询形成安全检测的一部分
4.增加/更新数据——增加一般数据记录到OTP令牌的数据存储· String Name (字符串名称)——将要增加的数据的描述#long ID (长ID)——数据的唯一的识别(ID)(即,唯一的识别码)。该ID被模 块使用以便访问数据,所述数据属于该模块。· int dataSizeGnt数据量)——数据的大小· byte [] data——实际数据,可以表现任何东西5.删除数据——从OTP令牌数据存储中删除一般数据· long ID (长ID)——删除一般数据记录的唯一 ID ( S卩,唯一的识别码)为了确保在远程管理移动计算设备上的OTP安全应用程序中保持充分的安全性, 命令消息可以在传送到移动计算设备12之前由总控钥匙服务器22加密。在一个示例性实施例中,系统和方法提供三个基本的命令安全等级,即未加密、 PIN加密以及密钥加密。对于每个命令安全等级而言,上述的命令消息被嵌入适合于特定的 命令安全等级的包装(wrapper)结构中。对于未加密命令消息而言,不执行安全特征,并且这些消息对于第三方观测者而 言是可读的。虽然这些命令消息不能被信任,但是,当修改OTP安全应用程序中的不重要的 数据时未加密的命令消息仍然是有用的。有利的,未加密的命令消息具有比加密的命令消 息更低的处理开销,因为在创建和执行未加密的命令消息时不需要执行加密/解密。现在讨论如图4所示的未加密的命令消息的包装结构的示例,确认命令字段72包 括识别整个命令结构的字节序列。在多个模块使用相同的通信信道的方案中该识别是有用 的,并且必须确定包装结构是否包括命令数据或其他数据。签名代码字段(Signing Code field) 74是单独的八位字节,其值为“00000000”,指示未加密的安全方案(scheme)用于命 令包装。在移动计算设备12接收命令消息的情况下,可以提示和/或通知移动计算设备12 的用户10执行管理命令。描述字段(Description field) 76在这种情况下可以被用于向 用户提供关于命令消息的性质的信息。命令数据字段(Command data field) 78包括要执行的实际命令,如图3所示。PIN加密命令使用预定的个人识别编号(PIN)来加密命令消息。该PIN可以是任 何任意的字节序列,并且通常可以被认证实体所使用,所述认证实体与OTP安全应用程序 或者用户的移动计算设备12所采用的移动令牌之间没有前面的信任关系。例如,管理员36 或网络20 (即认证实体)的总控钥匙服务器30可以经过第二安全通信信道将PIN传送到 用户10。当接收到命令包装,将向用户进行PIN提示。然后,该PIN被用于解密命令消息。这类命令包装的结构如图5所示,并且提供用于证实用户所输入的PIN的自包含 机制。确认命令字段(Confirm Command field)82、签名代码字段(Signing Code field)84 和描述字段(Description field)86与图4的相关描述相似。PIN检测1字段(PIN Checkl field) 88是任意选择的字节序列。PIN检测2字段(PIN Check2 field) 90是以PIN加密 PIN检测1的值的结果。当用户10输入PIN来解密命令包装时,PIN检测2字段90的值首 先被PIN解密,并且然后认证令牌确定该解密值是否对应PIN检测1字段88的值。如果这 两个匹配,就确定用户必须已经输入了正确的PIN,以及命令消息可以被解密。命令数据字段92包括要执行的实际命令,如图3所示。
密钥加密命令消息提供不需要用户介入的命令消息传送和执行的安全方法。如图 6所示,命令包装的基本命令结构与图5中的PIN加密命令结构基本上完全相同。命令消息 被字节序列加密,并且提供检测以证实解密过程。该命令包装在用于选取加密所用的字节序列以及包括用于认证实体ID的字段94 上不同。密钥签名(key-signed)命令消息在OTP安装应用程序的安装过程中,使用已经 已经安装在移动计算设备12上的OTP安全软件中的现有的共用对称(existing shared symmetric)密钥,而不是使用任意的字节序列作为加密密钥(例如,上面描述的PIN加密命 令消息)。由于认证令牌可以包括多个这样的用于不同认证实体的密钥,认证实体ID字段 94指出了哪一个共用的密钥被签名于命令消息。密钥加密命令结构使认证实体和安装的认证令牌有可能安全地发出新的命令消 息而无需用户输入PIN,所述认证实体与移动计算设备12具有信任关系。在使用非对称密钥的情况下,从给定认证实体发出的密钥签名命令消息被实体的 公共密钥签名,从而保证命令是合法的并且源自该实体。在一个示例性实施例中,上面描述 的PIN加密命令可以在使用非对称密钥之前用于首先安全地发送认证实体的公共密钥。对称与非对称加密之间的区别在于,对于对称加密而言,所有的加密命令消息将 也被移动认证令牌的公共密钥加密。如上文所述,当OTP安全应用程序初始安装以及被移 动计算设备所采用时,安全密钥可以被发出。虽然移动计算设备的处理需求在这一阶段禁止执行非对称加密方案,但是它是共 用密钥加密方案的逻辑延续。应理解,上述命令安全方案使认证实体能够与移动计算设备12建立信任关系。如上文所述,建立认证实体18或20与移动计算设备12之间的信任关系的简化方 法是向移动计算设备12的OTP安全应用程序发送共用密钥以及增加公司命令消息和以PIN 加密该消息。这一过程不需要认证实体与移动计算设备之间的任何类型的现有信任关系, 而其仅需要将PIN安全传送到用户。建立信任关系的方法等于如PCT/IB2008/051580所述的安装软件应用程序的方 法,因为使用分开的通信信道。例如,PIN加密命令内在的包括在应用程序源中,并且用户 还是需要输入PIN以建立信任关系。另一个认证实体可以遵从相同的过程来建立与用户移动令牌的信任关系。认证实 体可以创建新的命令消息,以PIN加密消息,并且然后使用分开的通信信道传送命令到用 户的认证令牌以及发送PIN到用户。但是,无论何时使用该方法,都需要认证实体首先证实PIN要传送的实体/用户实 际上就是合法用户,并且然后安全地将PIN传送给用户。应理解,这一安全传送的实质依赖于所使用的命令安全方案。如果使用对称加密, PIN需要保密以及不经修改地传送。如果使用非对称加密,那么认证实体需要传送其公共密 钥到用户的认证令牌,并且传送认证令牌的公共密钥到认证实体的总控钥匙服务器而无需 修改。在(对称和非对称)这两种情况下,每一次新的认证实体(例如网络20)想要建 立与移动计算设备12之间的信任关系都需要一定的努力。但是,通过使用认证令牌与其他 认证实体(例如网络18)之间的已经建立的信任关系将解决这一问题。
密钥签名/加密命令消息被设计为部分地绕开该问题。一旦诸如网络18的认 证实体已经建立起与认证令牌12之间的信任关系,第二认证实体(即与OTP安全应用程 序安装于其上的移动计算设备不具备信任关系的认证实体,例如网络20)可以发出被基本 (primary)认证实体的密钥(即具有信任关系的实体)签名的密钥签名命令消息。在对称加密的情况下,第二认证实体20将发送其内部命令消息到基本认证实体 18。然后,基本认证实体18将以它与认证令牌共用的安全密钥加密命令消息。应该理解, 这一操作需要第二认证实体20信任基本认证实体18,因为基本实体18将访问第二实体的 原始命令消息。相似的,基本认证实体18需要信任第二认证实体20,而第二认证实体将能 够通过基本实体18向认证令牌发出恶意命令消息。对于非对称加密而言,在一个示例性实施例中,基本认证实体18仅被用于向作为 认证令牌的移动计算设备发送第二实体的公共密钥,以及同时找回认证令牌的公共密钥。 认证实体之间的信任需求因此被显著降低,虽然两个实体还是需要彼此信任。一旦在未信任的第二实体与令牌之间已经建立了信任关系,实体从而能够反过来 作为在未来的认证令牌与其它未信任实体之间建立信任这些情况下的基本实体。根据上述内容,总控钥匙服务器安全地向认证令牌传送共用的安全密钥。该安全 密钥之后可以被用于加密任何未来的从总控钥匙服务器向用户的移动计算设备发送的命 令消息。一旦OTP安全应用程序在用户的移动计算设备12上被安装以及被激活,在认证令 牌与发出安装请求的总控钥匙服务器之间自动建立信任关系。总控钥匙服务器可以在这种 情况下创建密钥加密命令,该密钥加密命令将由移动令牌正确证实并被解密。由于OTP安全应用程序的基于插拔的设计,移动令牌可以潜在地具备同时执行的 一定数量的模块或者组件。这些组件如何进行相互作用通常是不明显的。为了确保一个组 件不发出对另一个组件产生不利影响的命令,在移动计算设备的认证令牌中执行命令队列 系统。任何移动令牌的组件可以选择直接执行命令或者将其加入命令队列。如果组件对 于立即执行特别命令的安全性并不确定,该命令被置于命令队列。在大多数情况下,命令源自收听引入的载有命令消息的SMS的SMS接收组件或者 模块。如前所述,任何其它组件也可以是命令消息的源,从而能够将命令注入命令队列。例 如,命令可以通过MMS和蓝牙发送,两者都具备其自有的处理引入数据的模块。图7显示了从不同的源接收的和置于队列系统中的命令消息的可能处理流程。命 令消息可以来自不同的源(由块100、102和104所示)以及这些命令消息然后被传送到各 自的模块用于处理和执行。通过块106和块108指示该处理,其中在块106中移动计算设 备12的SMS收听器接收命令,而在块108中蓝牙收听器接收命令。然后,移动计算设备中 的组件或模块处理相关命令(块110),但首先确定命令消息是否在现实被安全地执行(如 块112所示)。如果命令消息可以被立即执行,如块114所示,所述命令消息被发送给命令执行 组件而实时地执行。反之,命令消息被加入到命令队列以备以后执行(块116)。该队列机 制在非易失性移动计算设备存储器中存储队列(块118),从而当应用程序退出或用户的移 动计算设备关机时,命令不会丢失。
应该理解,下一次“安全时间”(如图7所示)仅发生在令牌应用下一次被启动 (launch)的时间。在这些情况下,在移动令牌的核心服务(例如其存储和加密组件)被初 始化之后、但是在已经开始执行由实时命令执行不利影响的不同的其他组件(例如,插拔 模块)之前,队列机制通常直接、顺序地执行在队列中的命令消息(块120)。当认证令牌开始时,队列系统需要找回存储的命令消息,因此需要访问存储系统。 但是,存储系统将通常被用户选择PIN加密。从而,队列系统可能需要等待用户输入PIN,并 因此在命令队列可以被从存储器载入之前对存储系统解锁。图8显示了在令牌关闭和重启 循环过程中命令的操作和命令队列。传送到移动计算设备的最常见的远程管理命令消息可能是令牌同步命令。令牌同 步命令通常通过认证实体的总控钥匙服务器、通过移动计算设备自身的用户,或者通过认 证实体的管理员,而自动初始化。令牌同步命令在下面详细描述,以便提供移动计算设备12 中的OTP安全应用程序的管理的特定示例。用户的移动认证令牌可以在不同的情况下漂流而不同步。例如,如果用户用令牌 产生若干OTP,然后不使用这些OTP中的任何一个用于认证实体的总控钥匙服务器中的认 证,认证令牌将不同步。检测不同步(out-of-sync)的令牌可能是复杂的,因为难以区分不同步OTP与只 是不正确的OTP。如果用户不成功地输入OTP —定的次数,很可能令牌不再和总控钥匙服务 器同步。管理OTP安全应用程序的问题在于决定输入了潜在的不同步OTP的用户是否是其 令牌不同步的合法用户,或者是否是尝试入侵用户账户的黑客。这样,需要在同步令牌之前 证实用户作为合法用户的身份。这一确定用户是合法用户还是黑客的过程应当优选无需使 用标准(自动模式)OTP机制而执行。根据示例性实施例,支持OTP认证的两个模式,即自动模式和质询模式,所述自动 模式(根据每一次修改的共用秘密)生成OTP的序列,而所述质询模式提供OTP以响应质 询。应理解,质询模式永远不会变得不同步。每个质询一定要对应专门的对话并从而也一 定要对应每一个OTP。在怀疑用户令牌变得不同步的情况下,可以执行下列两个可选项1.在用户令牌上执行远程同步操作,而不验证令牌是否实际上不同步。2.使用质询模式验证用户的身份,然后仅在用户身份不能正确验证的情况下执行 同步操作。这明显减少了执行非必要同步尝试的可能性,以及使黑客不可能强行(force) 同步。如果本发明的方法和系统被用于执行同步,那么就没有与非必需同步相关的安全 风险。唯一要考虑的是命令发送的管理费用和成本。不同的公司将执行其自有的涉及同步 标准的原则。根据上面详细描述的数据结构,通过总控钥匙服务器生成同步命令消息。然后,该 命令消息在选定的通信信道上(例如SMS)传送给移动计算设备的认证令牌。在接收到命 令消息的情况下,认证令牌根据上述的命令安全方案(例如,以必要安全密钥解密命令消 息)验证命令消息的合法性,以及进一步执行消息(通过下面详细描述的命令队列机制的 方式)从而以总控钥匙服务器同步认证令牌。
在同步过程中,OTP算法被传递质询代码,所述质询代码作为命令数据的一部分被 发送,并返回一些结果值。假定OTP算法使用质询以更新一些类型的内部迭代计数器(是 令牌上的所谓公司数据的一部分)。进一步假定结果值也可以在服务器上生成,所述服务器 初始发出同步请求。这样,可以通过将服务器结果值与令牌的结果值相匹配来证实令牌的 成功同步。本发明提供了一种方法和系统,其中由移动OTP令牌使用的算法以及由移动OTP 令牌支持的认证实体可以动态修改而无需软件改变令牌。相似的系统和方法可以用于执行 例行维护任务(例如令牌同步),而无需用户介入。根据本发明,通过OTP安全应用程序执 行的认证令牌下载到移动计算设备上而解决了与传统令牌相关的限制。该系统和方法进一步提供时间上的优点,即用户和管理员在OTP安全应用程序的 维护操作上所花费的时间被缩短。
权利要求
一种管理移动计算设备上所采用的一次性密码安全软件应用程序的方法,所述方法包括生成命令消息,该命令消息包括命令数据,其指定被所述移动计算设备所采用的所述一次性密码安全应用程序中执行的命令的类型,以及唯一的识别码,以识别在其上执行命令的数据记录,或者识别在其上执行命令的一次性密码算法及其相关的认证实体;以及传送所述命令消息到所述移动计算设备,以在所述移动计算设备上执行,从而管理所述一次性密码安全软件应用程序。
2.如权利要求1所述的方法,其中所述移动计算设备是移动电话、个人数字助理PDA或 者其他具有无线连接的移动计算设备。
3.如权利要求1或2所述的方法,其中通过所述命令消息指定的命令的类型是更新或 者增加与认证实体相关的数据的命令,删除所述认证实体的命令、执行用于所述认证实体 的同步操作的命令,或者增加、更新或删除与所述一次性密码安全应用程序相关的一般数 据记录的命令。
4.如权利要求1到3中任意一项所述的方法,其中该方法进一步包括在传送之前加密 所述命令消息。
5.如权利要求4所述的方法,其中所述加密是对称或者非对称加密。
6.如权利要求1到5中任意一项所述的方法,其中所述命令消息从与经过所述唯一的 识别码标识的所述认证实体相关的总控钥匙服务器传送。
7.如权利要求6所述的方法,其中在所述命令消息被传送之前,在所述移动计算设备 与所述认证实体之间存在信任关系。
8.如权利要求7所述的方法,其中在将所述一次性密码安全应用程序安装到所述移动 计算设备的过程中,已经在所述移动计算设备与所述认证实体之间建立了所述信任关系。
9.如权利要求1到5中任意一项所述的方法,其中所述方法进一步包括,如果在与所述 命令消息相关的所述认证实体以及所述移动计算设备之间不存在信任关系,则从与被信任 的认证实体相关的总控钥匙服务器传送所述命令消息,所述被信任的认证实体与所述命令 消息不相关。
10.如权利要求9所述的方法,其中所述方法包括首先从与所述移动计算设备没有信 任关系的总控钥匙服务器传送所述命令消息到与所述移动计算设备具有信任关系的总控 钥匙服务器。
11.如权利要求10所述的方法,其中所述命令消息包括与所述总控钥匙服务器相关的 安全密钥,其中所述总控钥匙服务器与所述移动计算设备没有信任关系。
12.如权利要求4所述的方法,其中加密所述命令消息的步骤包括经过第二通信信道 将安全密钥传送到所述移动计算设备的用户。
13.如权利要求13所述的的方法,其中所述安全密钥是PIN。
14.如权利要求4所述的方法,其中加密所述命令消息的步骤进一步包括以现有的共 用的安全密钥加密所述命令消息,所述现有的共用的安全密钥在所述一次性密码安全软件 应用程序的安装过程中被传送给所述移动计算设备。
15.如权利要求1到14中任意一项所述的方法,其中所述方法进一步包括在所述移动 计算设备处接收所述命令消息以及执行该命令消息从而管理所述一次性密码安全软件应 用程序。
16.如权利要求15所述的方法,其中执行所述命令消息的步骤可以包括解密所述命令消息。
17.—种管理移动计算设备所采用的一次性密码安全软件应用程序的系统,所述系统 包括与网络相关的认证实体的安全服务器,所述网络被所述移动计算设备通过使用一次性 密码而访问; 该系统用于生成命令消息,该命令消息包括命令数据,其指定被所述移动计算设备所采用的一次性密码安全应用程序中执行的命 令的类型,以及唯一的识别码,以识别在其上执行命令的数据记录,或者识别在其上执行命令的一次 性密码算法及其相关的认证实体;以及传送所述命令消息到所述移动计算设备,以在所述移动计算设备上执行,从而管理所 述一次性密码安全软件应用程序。
18.如权利要求17所述的系统,其中所述安全服务器被配置为在注册过程中建立与所 述认证实体的信任关系。
19.如权利要求18所述的系统,其中所述安全服务器被进一步配置为通过首先从与第 二网络相关的第二认证实体的第二服务器接收命令消息来生成所述命令消息。
全文摘要
本发明提供了一种用于管理在移动计算设备(12)上所采用的一次性密码安全软件应用程序的方法和系统。所述方法包括生成命令消息,该命令消息包括命令数据以及唯一的识别码,其中该命令数据指定在被移动计算设备所采用的一次性密码安全应用程序上执行的命令的类型,该识别码识别在其上执行命令的数据记录,或者识别在其上执行的一次性密码算法及其相关的认证实体。通过总控钥匙服务器(18)向移动计算设备(12)传送消息,用于在移动计算设备上执行,从而管理一次性密码安全软件应用程序。
文档编号G06F21/31GK101939746SQ200880119852
公开日2011年1月5日 申请日期2008年12月10日 优先权日2007年12月10日
发明者F·M·朱伯特 申请人:菲尔爱迪(私人)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1