许可证认证系统以及认证方法

文档序号:6592736阅读:299来源:国知局
专利名称:许可证认证系统以及认证方法
技术领域
本发明涉及许可证认证系统(license authentication system)以及认证方法, 尤其涉及仅可以利用事先被赋予了使用权的数量的应用程序的许可证认证系统以及认证 方法。
背景技术
以往,通过许可证(license)赋予者向每个使用者发行序列号,在应用程序的安 装时或应用程序启动时,使使用者输入所发行的序列号来进行认证,由此赋予了应用程序 的使用权。这种情况下的应用程序中包含确认所输入的序列号是由许可证赋予者发行的序 列号的逻辑,由此防止了应用程序的不正当利用。所述那样的基于序列号的使用权的赋予具有以下问题多人轮流使用同一序列号 来使用应用程序,或者序列号被不正当者偷看并使用等。作为解决这样的问题的技术,已知如下方法利用通过使用因特网来确认应用程 序的使用状况的方法。该方法的前提是经由因特网将用户的PC和许可证赋予者的服务器 连接,可以相互进行通信。该方法中,通过使用序列号而成为可以利用的应用程序定期地向 服务器发送用户信息、序列号和利用环境信息(0S、IP地址、设备结构信息等),服务器管理 每个用户的使用权数,检查与定期发送来的使用信息的一致性。该方法由此可以发现应用 程序的不正当利用,并根据需要限制利用或停止使用。所述方法,若未在因特网上连接用户的PC,则无法发现不正当利用,另外无法进行 具有正规使用权的用户的使用。因此,例如在专利文献1等中记载并提出了利用便携电话 来进行应用程序的使用权以及使用状况的确认的技术。该专利文献1中记载的现有技术, 对于未与因特网连接的PC,将使用者持有的便携电话用作中继器,经由便携电话将PC与服 务器连接,由此可以从服务器进行应用程序的使用权的赋予或使用状况的确认。专利文献1 特开2006-309720号公报

发明内容
把所述便携电话用作中继器,从服务器进行应用程序的使用权的赋予或使用状况 的确认的现有技术,在便携电话进行中继时,利用便携电话的无线通信与因特网连接。但 是,当用户的PC所放置的场所在便携电话能够通信的区域外,或者在国外等进行利用的情 况下,无法与因特网连接,因此具有无法利用的问题。本发明的目的在于,解决所述现有技术的问题,提供一种许可证认证系统以及认 证方法,其能够对要在处于无法与进行应用程序认证的服务器通信的状况的客户机PC上 安装的应用程序进行认证。通过本发明如下实现所述目的提供一种在客户机PC中安装应用程序时的许可 证认证系统,其中,具有与所述客户机PC连接并能够通信,并且经由无线线路与服务器连 接并能够通信的便携终端。所述服务器具备发行与要在所述客户机PC中安装的应用程序对应的临时使用权的临时使用权发行单元;发行正式使用权的正式使用权发行单元。所述 便携终端具备从服务器取得由所述服务器发行的临时使用权和正式使用权并进行保持的 单元;向所述客户机PC提供从所述服务器取得的临时使用权和正式使用权的单元。所述客 户机PC具备根据使用权的种类限制应用程序的使用的许可证认证单元;在通过临时使用 权进行了认证的状态下请求正式使用权的单元。所述便携终端,在获得要在所述客户机PC 中安装的应用程序时,取得并保持由所述服务器发行的临时使用权,在所述客户机PC安装 应用程序时,通过所述保持的临时使用权进行临时的许可证认证,使得能够在客户机PC中 利用应用程序。此后,所述便携终端移动到能够与服务器通信的区域中,从服务器取得正式 使用权并进行保持,在从所述客户机PC发出基于正式使用权的许可证认证请求时,通过所 述保持的正式使用权进行正式的许可证认证。 根据本发明,不需要新的服务器等,仅通过在Web浏览器程序和Web服务器程序中 追加功能,就能够对要在处于无法与进行应用程序的认证的服务器通信的状况的客户机PC 中安装的应用程序进行认证。


图1是表示本发明的一个实施方式的许可证认证系统的结构的框图。
图2是表示客户机PC的结构的框图。
图3是表示便携终端的结构的框图。
图4是表示便携终端具有的许可证列表的结构的图。
图5是表示便携终端具有的密钥列表的结构的图。
图6是表示服务器的结构的框图。
图7是表示服务器具有的应用程序列表的结构的图。
图8是表示服务器具有的许可证管理表的结构的图。
图9是说明本发明的实施方式的许可证认证系统全体的处理动作的流程图。
图10是说明图9的步骤902的处理中的用于取得临时许可证的便携终端的许可
证取得程序和服务器的许可证发行程序的处理动作的流程图。图11是说明图9的步骤903、904的处理中的客户机PC的应用程序安装程序、便 携终端的许可证管理程序和服务器的许可证登录程序的处理动作的流程图。图12是说明图9的步骤901的处理中的服务器的安装生成程序607的处理动作 的细节的流程图。图13是说明图11所示的流程的步骤1104中的向便携终端的许可证列表的登录 处理的细节的流程图。图14是说明图11所示的流程的步骤1105中的应答数据生成处理的细节的流程 图。图15是说明图11所示的流程中的步骤1107中的接收到的应答数据的确认处理 的细节的流程图。图16是说明图11所示的流程的步骤1109中的便携终端的许可证管理程序向服 务器发送许可证认证所需的登录数据的处理的细节的流程图。图17是说明图11所示的流程的步骤1110中的服务器的许可证登录程序在许可证管理表中登录登录数据的处理的细节的流程图。图18是说明图11所示的流程的步骤1112中的便携终端的许可证管理程序把从 服务器接收到的加密密钥登录在许可证列表中的处理的细节的流程图。图19是说明图11所示的流程的步骤1114中的便携终端的许可证管理程序对从 客户机PC接收到的再认证请求返回加密密钥的处理的细节的流程图。图20是说明图11所示的流程的步骤1115中的客户机PC的应用程序安装程序进 行从便携终端接收到的加密密钥的确认的处理的细节的流程图。符号说明101 客户机 PC ;102 便携终端;103 服务器;104 因特网;201,301,601 =CPU ; 202,302,602 存储器;203,303,603 通信部;204、304、604 输入部;205、305、605 输出 部;206 应用程序安装程序;207,311 总线;208,310,612 存储部;209,609 共享机密信 息 B ;210 应用程序 ID ;211 密钥;212 随机数;213,313,615 加密模块;214,314,616 散列函数模块;306 许可证管理程序;307 许可证取得程序;308 许可证列表;309 密钥 列表;312 用户ID ;315,617 共享机密种子;606 许可证发行程序;607 安装生成程序; 608 许可证登录程序;610 应用程序列表;611许可证管理表;614 应用程序安装模块
具体实施例方式以下,通过附图更详细地说明本发明的许可证认证系统的实施方式。以下说明的 本发明的实施方式的许可证认证系统,被设置在利用应用程序的客户机PC无法与用于许 可证认证的服务器进行通信的环境中,在这种客户机PC中安装在记录介质等中存储的应 用程序时,可以使用由利用客户机PC的用户持有的便携电话、PHS等便携终端,进行针对要 在客户机PC中安装的应用程序的认证。图1是表示本发明的一个实施方式的许可证认证系统的结构的框图。本发明的实施方式的许可证认证系统如图1所示,由作为用户使用的台式PC或 笔记本PC等信息处理设备的客户机PC101、作为便携电话或PHS等用户本人持有的信息处 理设备的便携终端102、作为台式PC或刀片PC等信息处理设备的服务器103、和因特网104 构成。客户机PClOl是仅在公司内部或自己家中等利用的PC,因此假定不与因特网104连 接地被利用。便携终端102或服务器103可以经过由公共线路网或无线通信网等构成的因 特网104进行数据通信。在因特网104上连接了多个与便携终端102或服务器103相同的 设备。便携终端102通过电波与因特网104连接,因此在电波状态差的场所无法访问因特 网 104。图2是表示客户机PClOl的结构的框图。图2所示的客户机PClOl由进行程序的 执行的CPU201、载入程序或数据的存储器202、与其它信息处理设备进行数据交换的通信 部203、进行命令或数据的输入的输入部204、输出系统的状态等的输出部205、HDD等存储 部208通过总线207连接而构成。在存储部208中存储了 应用程序安装程序206、加密模 块213、散列函数(hash fimcti0n)214。该应用程序安装程序206保持有共享机密信息 B209、应用ID210、密钥211、随机数212等。在前文中,通信部203具有利用无线LAN、Bluetooth、红外线等进行与便携终端 102之间的数据通信的功能。输入部204是键盘、鼠标、手写笔输入、声音输入、按钮、转轮(jog dial)、十字键等输入单元。输出部205是显示器、打印机、声音等输出单元。应用程序 安装程序206是安装由服务器103生成的新应用程序的程序。共享机密信息B209、应用程 序ID210、密钥211、随机数212是在处理过程中由应用程序安装程序206保持的数据。加 密模块213是进行基于DES或AES等公共密钥加密的加密处理或解密处理的模块。散列函 数模块214是进行MD5或SHAl等单向函数的计算处理的模块。在客户机PC101、便携终端 102和服务器103之间存储了预先决定的同一方式的加密模块213或散列函数模块214。图3是表示便携终端102的结构的框图。进行程序的执行的CPU301、载入程序或 数据的存储器302、与其它信息处理设备进行数据交换的通信部303、进行命令或数据的输 入的输入部304、输出系统的状态等的输出部305、R0M等存储部310通过总线311连接,构 成了便携终端102。在前文中,在存储部310中存储了许可证管理程序306、许可证取得程序307、许可 证列表308、密钥列表(key list) 309、用户ID312、加密模块313、散列函数模块314、共享机 密禾中子(shared secret seeds) 315 等。通信部303具有利用无线LAN、Bluetooth、红外线等进行与客户机PClOl之间的 数据通信的功能、经由因特网104进行与服务器103之间的数据通信的功能。许可证管理 程序306是代替服务器103来对要在客户机PClOl中安装的应用程序进行许可证认证的程 序。许可证取得程序307是从服务器103取得要在客户机PClOl中安装的应用程序的许可 证认证信息的程序。许可证列表308中存储了许可证认证信息。密钥列表309存储了可用 于由许可证管理程序306提供许可证的密钥关联信息。用户ID312是在处理的过程中由便 携终端102保持的数据。共享机密种子315是仅与服务器103之间预先共享的秘密数据。
图4表示便携终端102具有的许可证列表308的结构。许可证列表308把项目编 号401、应用程序类别402、利用应用程序ID403、密钥404、共享机密信息A405的组作为一 个记录,存储了多个记录而构成。项目编号401是唯一地决定列表内的记录的识别符。应用 程序类别402是识别可以被提供许可证的应用程序的种类的识别符。利用应用程序ID403 是识别被提供许可证的应用程序的识别符。密钥404是在提供许可证时所利用的密钥信 息。共享机密信息A405是仅与服务器103共享的秘密信息。图5表示便携终端102具有的密钥列表309的结构。密钥列表309把项目编号 501、密钥502、加密密钥种子503、使用标志504的组作为一个记录,存储了多个记录而构 成。项目编号501是唯一地决定列表内的记录的识别符。密钥502是在提供许可证时所利 用的密钥信息。加密密钥种子503是与密钥502相关联的加密信息。使用标志504表示对 应的记录的密钥信息的使用状态。“0”是未使用,“ 1”是使用。图6是表示服务器103的结构的框图。进行程序的执行的CPTO01、载入程序或数 据的存储器602、与其它信息处理设备之间进行数据交换的通信部603、进行命令或数据的 输入的输入部604、输出系统的状态等的输出部605、存储部612通过总线613连接而构成 服务器103。在前文中,在存储部612中存储了 许可证发行程序606、安装生成程序607、许可 证登录程序608、共享机密信息B609、应用程序列表610、许可证管理表611、应用程序安装 模块614、加密模块615、散列函数模块616、共享机密种子617。通信部603具有利用有线、无线LAN、Bluetooth等经由因特网104进行与客户机101之间的数据通信的功能。许可证发行程序606是向便携终端102提供服务器103生成 的应用程序安装程序的许可证认证信息等的程序。安装生成程序607是生成要导入客户机 PClOl的应用程序的安装程序的程序。许可证登录程序608是进行在客户机PClOl中安装 的应用程序的许可证认证或许可证安装状况的登录等的程序。共享机密信息B609是在与 客户机PClOl之间共享的秘密数据。应用程序列表610存储了服务器103可以进行许可证 认证的应用程序的种类。许可证管理表611存储了被提供许可证的用户或应用程序、许可 证认证状况等信息。应用程序安装模块614是执行应用程序安装程序的许可证认证处理的 模块。加密模块615、散列函数模块616如已经说明的那样,在客户机PClOl和便携终端102 和服务器103之间存储了预先决定的同一方式的模块。共享机密种子617是仅与便携终端 102之间预先共享的秘密数据。图7表示服务器103具有的应用程序列表610的结构。应用程序列表610把项目 编号701、应用程序类别702、模块存储场所703的组作为一个记录,存储了多个记录而构 成。项目编号701是唯一地决定列表内的记录的识别符。应用程序类别702是识别可以进 行许可证认证的应用程序的种类的识别符。模块存储场所703表示存储了每种应用程序的 执行模块的场所(目录名或URL等)。此外,预先准备了各执行模块。图8表示服务器103具有的许可证管理表611的结构。许可证管理表611把项目 编号801、用户ID802、许可证应用程序803、应用程序ID804、密钥805、共享机密信息A806 的组作为一个记录,存储了多个记录而构成。项目编号801是唯一地决定表内的记录的识 别符。用户ID802是被提供了许可证的用户的识别符。许可证应用程序803是被提供许可 证的应用程序的种类。应用程序ID804是唯一地识别被提供了许可证的应用程序的识别 符。密钥805是在对许可证进行认证时使用的信息。共享机密信息A806是与便携终端102 之间共享的秘密数据。图9是说明本发明的实施方式的许可证认证系统全体的处理动作的流程图,接下 来对其进行说明。(1)许可证管理者向用户提供针对应用程序的许可证,生成为了认证而需要的应 用程序的安装程序。因此,首先,许可证管理者启动服务器103的安装生成程序607,生成 可以导入客户机PClOl的应用程序安装程序。所生成的应用程序安装程序包含应用程序本 身,被存储在记录介质等中,或者通过下载到顾客的便携终端102中等方式被分配。参照图 12所示的流程,在后面描述该处理的细节(步骤901)。(2)使用客户机PC的用户,当购买了存储在记录介质等中来分配的应用程序安装 程序时,在将该应用程序安装在客户机PClOl中时,或者在安装了应用程序后为了接受针 对应用程序的许可证的认证时,移动到可以在自身持有的便携终端102和服务器103之间 进行通信的场所。然后,用户将便携终端102与服务器103连接,启动便携终端上的许可证 取得程序304,从服务器103取得必要的应用程序的临时许可证信息。参照图10所示的流 程图,在后面描述该处理的细节(步骤902)。(3)此后,用户为了可以在客户机PClOl中利用在安装的应用程序安装程序中包 含的应用程序,将便携终端102和客户机PClOl连接。由此,客户机PClOl取得应用程序的 许可证。这种情况下的许可证是临时许可证。参照图11所示的流程图,在后面描述该处理 的细节(步骤903)。
(4)此后,用户为了将应用程序导入客户机PC101,启动在步骤901中生成并提供 的应用程序安装程序,应用程序安装程序利用便携终端102进行许可证认证。参照图11所 示的流程图,在后面描述该处理的细节(步骤904)。图12是说明图9的步骤901中的处理,即服务器103的安装生成程序607的处理 动作的细节的流程图,接下来对其进行说明。(1)安装生成程序607,首先在输出部605上显示通过图7说明的应用程序列表 610的应用程序类别702,并且取得由许可证管理者指定的应用程序类别。在此,假定由许 可证管理者指定了要生成安装程序的应用程序的应用程序类别(步骤1201、1202)。(2)接着,安装生成程序607从应用程序列表610中检索与在步骤1202的处理中 取得的应用程序类别对应的模块存储场所703的项目,取得作为该场所的模块的应用程序 (步骤 1203)。(3)根据在步骤1203的处理中取得的模块、应用程序安装模块614和共享机密信 息B609,生成应用程序安装程序(步骤1204)。图10是说明在图9的步骤902的处理中的、用于取得临时许可证的便携终端102 的许可证取得程序307和服务器103的许可证发行程序606的处理动作的流程图,接下来 对其进行说明。(1)当开始处理时,便携终端102的许可证取得程序307向服务器103的许可证发 行程序606发送应用程序列表请求。取得该应用程序列表请求的许可证发行程序606,返回 应用程序列表610的应用程序类别702的全部项目(步骤1001、1002)。(2)许可证取得程序307取得在步骤1002中返回的应用程序类别702的项目,将 这些项目显示在输出部305上,让用户选择,取得由用户指定的应用程序类别(步骤1003、 1009)。(3)许可证取得程序307确认在用户ID312中是否登录了数据,在没有用户ID312 的登录时,新生成用户ID (步骤1010、1011)。(4)在步骤1010的确认中,在有用户ID312的情况下,将该用户ID作为用户 ID312,在步骤1011中新生成了用户ID的情况下,将该用户ID作为用户ID312,将在步骤 1009中取得的应用程序类别和用户ID312作为许可证取得请求,发送给服务器103的许可 证发行程序606 (步骤1004)。(5)服务器103的许可证发行程序606,当取得许可证取得请求时,在许可证管理 表611中生成新的记录,将接收到的许可证取得请求的应用程序类别和用户ID登录在所生 成的记录的用户ID802和许可证应用程序803的项目中(步骤1005)。(6)许可证发行程序606生成随机数A和随机数B,通过加密模块615和共享机密 信息B609对生成的随机数A进行加密,同时根据生成的随机数A和散列函数模块616计算 散列值(步骤1012 1014)。(7)此后,许可证发行程序606将共享机密种子617与步骤1012中生成的随机数 B连接,将通过散列函数模块616计算出的结果登录在通过步骤1003的处理而生成的新记 录的共享机密信息A806的项目中(步骤1015)。(8)然后,许可证发行程序606把步骤1012的处理中生成的随机数B、步骤1013的 处理中加密后的加密数据、步骤1014的处理中计算出的散列值、和步骤1005的处理中接收到的应用程序类别作为许可证信息,返回便携终端102的许可证取得程序307 (步骤1006)。(9)便携终端102的许可证取得程序307将公共机密种子315和接收到的许可证 信息的随机数B连接,通过散列函数模块314计算散列值(步骤1016)。(10)此后,许可证取得程序307在许可证列表308中追加新的记录,将许可证信息 的应用程序类别和步骤1016的处理中计算出的散列值登录在应用程序类别402和共享机 密信息A405的项目中(步骤1007)。(11)然后,许可证取得程序307在密钥列表309中追加新的记录,将许可证信息的 散列值和加密数据登录在密钥502和加密密钥种子503的项目中。另外,在使用标志504 的项目中设定“0”(步骤1017)。(12)许可证取得程序307确认是否有来自用户的许可证追加请求,若有追加请 求,则返回从步骤1003开始的处理,继续处理,若没有追加请求,则结束在此的处理(步骤 1008)。图11是说明图9的步骤903、904的处理中的客户机PClOl的应用程序安装程序 206和便携终端102的许可证管理程序306和服务器103的许可证登录程序608的处理动 作的流程图,接下来对其进行说明。(1)当用户启动客户机PClOl的应用程序安装程序206时,应用程序安装程序206 生成应用程序ID和随机数,并将它们登录在应用程序ID210和随机数212中。在此,利用 日期时间或客户机PClOl固有的信息等来生成应用程序ID(步骤1101、1117)。(2)另一方面,启动便携终端102的许可证管理程序306,与客户机PClOl的应用 程序安装程序206连接(步骤1102)。(3)客户机PClOl的应用程序安装程序206,把在步骤1117中登录的应用程序 ID210和随机数212发送给便携终端102的许可证管理程序306 (步骤1103)。(4)许可证管理程序306把从客户机PClOl接收到的应用程序ID和随机数登录在 许可证列表308中。通过图13所示的流程,在后面描述该处理的细节(步骤1104)。(5)接着,许可证管理程序306生成应答数据。通过图14所示的流程,在后面描述 该处理的细节(步骤1105)。(6)便携终端102的许可证管理程序306,把在步骤1105的处理中生成的应答数 据和密钥列表309内的加密密钥种子返回客户机PClOl (步骤1106)。(7)客户机PClOl的应用程序安装程序206接收应答数据,进行接收到的应答数据 的确认,安装应用程序,并临时许可用户使用应用程序模块。通过图15所示的流程,在后面 描述应答数据的确认处理的细节(步骤1107、1108)。通过图11说明此前的处理,是图9所示的流程的步骤903中的处理的细节。(8)在此,用户持有便携终端102移动到能够进行便携电话的通信的区域,将便携 终端102和服务器103连接。便携终端102的许可证管理程序306能够进行与服务器103 之间的通信,因此把许可证认证所需的登录数据发送到服务器103的许可证登录程序608。 通过图16所示的流程,在后面描述在此的处理的细节(步骤1109)。(9)服务器103的许可证登录程序608接收来自便携终端102的登录数据,将接收 到的登录数据登录在许可证管理表611中。通过图17所示的流程,在后面描述在此的处理 的细节(步骤1110)。
(10)接着,许可证登录程序608通过共享机密信息B609和加密模块615,对在后 述的图17的流程的步骤1705的处理中解密后的密钥数据进行加密,然后,通过在步骤1702 中检索出的对象记录的共享机密信息A806的项目和加密模块615进行加密,将其设为加密 密钥(步骤1111)。(11)接着,许可证登录程序608把步骤1110的处理中接收到的登录数据的应用 程序ID和步骤1111的处理中加密后的加密密钥,发送给便携终端102的许可证管理程序 306 (步骤 1118)。(12)便携终端102的许可证管理程序306,当接收加密密钥时,在许可证列表308 的密钥404中登录接收到的加密密钥。通过图18所示的流程,在后面描述在此的处理的细 节(步骤1112)。(13)在所述步骤1108的处理中,应用程序安装程序206检测出被临时许可利用的 应用程序模块从临时许可的时刻经过了一定时间、或者达到一定的启动次数。在这种情况 下,一般,应用程序变得不能使用。在这种状态下,当将客户机PClOl和便携式终端102连接 时,便携终端102的许可证管理程序306启动,与应用程序安装程序206连接(步骤1119)。(14)客户机PC的应用程序安装程序206,当进行与便携终端102的连接时,作为 许可证的再认证请求把应用程序ID210发送给许可证管理程序306 (步骤1113)。(15)便携终端的许可证管理程序306,对于接收到的再认证请求返回加密密钥。 通过图19所示的流程,在后面描述在此的处理的细节(步骤1114)。(16)应用程序安装程序206进行从便携终端102接收到的加密密钥的确认,若得 到确认,则许可用户利用应用程序模块。通过图19所示的流程,在后面描述在此的加密密 钥的确认处理的细节(步骤1115、1116)。通过图11说明的步骤1109以后的处理,是图9所示的流程的步骤904中的处理 的细节。在通过图11说明的处理中,在针对应用程序的许可证被正式认证后,在进行定期 进行的针对该应用程序的继续使用的认证的情况下,也利用步骤1119以后的处理。图13是说明图11所示的流程中的步骤1104中向便携终端102的许可证列表的 登录处理的细节的流程图,接下来对其进行说明。(1)便携终端102的许可证管理程序306,首先把许可证列表308的先头记录作为 检索开始位置,检索应用程序类别402和从客户机PC接收到的应用程序类别相同的记录, 判定是否有相同的记录,在没有相同的记录的情况下,意味着未赋予许可证等错误,结束在 此的处理(步骤1301、1302)。(2)在步骤1302的检索、判定的处理中发现相同的记录时,确认在检索出的对象 记录的应用程序ID的项目中是否已经登录了数据,在已经登录了数据的情况下,由于已经 登录了应用程序ID,因此把该记录的下一记录即剩余记录的先头设定为检索开始位置,返 回从步骤1302开始的处理,继续处理(步骤1303、1304)。(3)在步骤1303的确认中,在许可证列表308的对象记录的应用程序ID的项目中 未登录数据的情况下,在检索出的对象记录的应用程序ID的项目中登录接收到的应用程 序ID,进入图11的步骤1105的处理(步骤1305)。图14是说明图11所示的流程中的步骤1105中的应答数据的生成处理的细节的流程图,接下来对其进行说明。(1)便携终端102的许可证管理程序306,首先从密钥列表309中检索使用标志 504的项目为“0”的记录,在使用标志504的项目为“0”的记录不存在时,无法继续认证操 作,因此,向输出部305输出错误消息,结束处理(步骤1401、1406)。(2)在步骤1401的检索中存在使用标志504的项目为“0”的记录时,取得检索出 的对象记录的加密密钥种子503的项目,把连接在步骤1104的处理中接收到的随机数和在 步骤1401中检索出的对象记录的密钥502的项目的值而得到的数据作为输入,把通过散列 函数模块314计算出的结果作为认证散列值进行计算(步骤1402、1403)。(3)接着,便携终端102的许可证管理程序306,在步骤1401的处理中检索出的对 象记录的使用标志504的项目中设定“1”,根据步骤1401的处理中检索出的对象记录的加 密密钥种子503的项目和步骤1403中计算出的认证散列值生成应答数据,进入图11的步 骤1106的处理(步骤1404、1405)。图15是说明图11所示的流程中的步骤1107中的接收到的应答数据的确认处理 的细节的流程图,接下来对其进行说明。(1)客户机PClOl的应用程序安装程序206,通过共享机密信息B209和加密模块 213,对从便携终端102接收到的应答数据的加密密钥种子进行解密(步骤1501)。(2)接下来,应用程序安装程序206在散列函数模块214中输入在步骤1501的处 理解密后的数据来计算散列值,同时将随机数212和计算出的散列值连接,将其输入散列 函数模块214,计算确认用认证散列值(步骤1502、1503)。(3)然后,比较在步骤1502的处理中计算出的应答数据的认证散列值和在步骤 1503的处理中计算出的确认用认证散列值,判定两个值是否相同(步骤1504)。(4)在步骤1504的判定中两个散列值相同时,把在步骤1502中计算出的散列值登 录在密钥211中,进入图11的步骤1108的处理,当两个散列值不同时,无法继续认证操作, 因此向输出部205输出错误消息,结束处理(步骤1505、1506)。图16是说明图11所示的流程中的步骤1109中便携终端102的许可证管理程序 306把在许可证认证时需要的登录数据发送给服务器103的处理的细节的流程图,接下来 对其进行说明。(1)便携终端102的许可证管理程序306,首先把密钥列表309的先头记录设为检 索开始位置,检索密钥列表309的使用标志504的项目为“0”的记录,判定是否存在对应的 记录(步骤1601、1602)。(2)在步骤1602的检索、判定的处理中发现使用标志504的项目为“0”的记录时, 取得在步骤1602的处理中检索出的对象记录的密钥502的项目(步骤1603)。(4)检索许可证列表308的密钥404的项目与步骤1603的处理中取得的密钥相同 的记录,判定是否存在对应的记录,当不存在对应的记录时,无法继续认证操作,因此向输 出部305输出错误消息,结束处理(步骤1604、1610)。(5)在步骤1604的检索、判定中存在对应的记录时,取得在步骤1604的处理中检 索出的对象记录的应用程序类别402、利用应用程序ID403和共享机密信息A405的项目 (步骤 1605)。(6)接着,通过在步骤1605的处理中取得的共享机密信息A405和加密模块313,对步骤1603的处理中取得的密钥进行解密(步骤1606)。(7)把在步骤1605的处理中取得的应用程序ID和应用程序类别、在步骤1606的 处理中加密后的密钥、用户ID312汇总为登录数据,发送到服务器103的许可证登录程序 608 (步骤 1607)。(8)此后,把进行了此前的处理的密钥列表309的记录的下一记录即剩余的记录 的先头设定为检索开始位置,返回从步骤1602开始的处理,继续处理(步骤1608)。(9)在步骤1602的检索、判定中,当密钥列表309的使用标志504的项目为“0”的 记录不存在时,判定作为步骤1602中的检索结果而检索出的对象记录是否存在一个以上。 此外,假定在进行前文所述的处理的过程中,通过未图示的处理对检索出的对象记录(使 用标志504的项目为“0”的记录)的数量进行计数(步骤1609)。(10)在步骤1609的判定中不存在对象记录时,结束处理,当存在对象记录时,进 入图11的步骤1110的处理。图17是说明图11所示的流程中的步骤1110中的服务器103的许可证登录程序 608将登录数据登录在许可证管理表611中的处理的细节的流程图,接下来对其进行说明。(1)服务器103的许可证登录程序608,首先把许可证管理表611的先头记录设为 检索开始位置,检索许可证管理表611的用户ID802的项目和从便携终端102接收到的登 录数据的用户ID相同的记录,在未发现相同的记录时,许可证认证失败,因此结束处理(步 骤 1701、1702、1707)。(2)在步骤1702的检索中发现用户ID—致的记录时,确认步骤1702的处理中检 索出的对象记录的许可证应用程序803的项目与接收到的登录数据的应用程序类别是否 相同(步骤1703)。(3)在步骤1703的确认中,当许可证应用程序803的项目与接收到的登录数据的 应用程序类别相同时,确认是否在步骤1702的处理中检索出的对象记录的密钥805中登录 了数据(步骤1704)。(4)在步骤1704的确认中,未在对象记录的密钥805的项目中登录了数据时,通过 步骤1702的处理中检索出的对象记录的共享机密信息A806的项目和加密模块615,对从便 携终端102接收到的登录数据的密钥进行解密(步骤1705)。(5)此后,在步骤1702的处理中检索出的对象记录的密钥805和应用程序ID804 的项目中,登录在步骤1705中解密后的数据和接收到的登录数据的应用程序ID,进入图11 的步骤1111的处理(步骤1706)。(6)在步骤1703的确认中,当许可证应用程序803的项目与接收到的登录数据的 应用程序类别不相同时,或者在步骤1704的确认中在对象记录的密钥805中已登录数据 时,把许可证管理表611的与进行了前面所述的处理的下一记录对应的检索先头记录,作 为检索开始位置,返回从步骤1702开始的处理,继续处理(步骤1708)。图18是说明图11所示的流程中的步骤1112中的便携终端102的许可证管理程序 306把从服务器103接收到的加密密钥登录在许可证列表308中的处理的细节的流程图,接 下来对其进行说明。(1)便携终端102的许可证管理程序306检索许可证列表308的利用应用程序 ID403的项目和接收到的应用程序ID相同的记录,判定是否存在相同的记录,当不存在相
12同的记录时,许可证认证失败,因此在输出部305上显示认证失败消息,结束处理(步骤 1801,1806)。(2)在步骤1801的检索、判定中,当许可证列表308中存在与接收到的应用程序 ID相同的记录时,取得在步骤1801的处理中检索出的对象记录的密钥404的项目,从密钥 列表309中删除密钥列表309的密钥502的项目和从许可证列表308取得的密钥相同的记 录(步骤 1802、1803)。(3)通过在步骤1801中检索出的对象记录的共享机密信息A405和加密模块313, 对从服务器103接收到的加密密钥进行解密,把将步骤1801的处理中检索出的对象记录的 密钥404的项目替换为所述解密后的数据(步骤1804、1805)。图19是说明图11所示的流程中的步骤1114中的便携终端102的许可证管理程 序306对于从客户机PClOl接收到的再认证请求返回加密密钥的处理的细节的流程图,接 下来对其进行说明。(1)便携终端102的许可证管理程序306检索许可证列表308的利用应用程序 ID403的项目与从客户机PC接收到的应用程序ID相同的记录,判定是否存在对象记录。在 该判定中不存在对象记录时,许可证认证失败,因此结束处理(步骤1901、1903)。(2)在步骤1901的检索、判定中,在许可证列表308中存在与从客户机PC接收到 的应用程序ID相同的记录时,把在步骤1901的处理中检索出的对象记录的密钥404的项 目返回客户机PClOl的应用程序安装程序206,进入图11的步骤1115的处理(步骤1902)。图20是说明图11所示的流程中的步骤1115中的客户机PClOl的应用程序安装 程序206进行从便携终端102接收到的加密密钥的确认处理的细节的流程图,接下来对其 进行说明。(1)客户机PClOl的应用程序安装程序206,通过共享机密信息B209和加密模块 213,对从便携终端102接收到的加密密钥进行解密(步骤2001)。(2)接着,比较在步骤2001中处理中解密后的加密密钥和本PC内的密钥211,在 不同的情况下,许可证认证失败,因此结束处理,在密钥一致的情况下,进入图11的步骤 1116 的处理(步骤 2002、2003)。
1权利要求
一种在客户机PC中安装应用程序时的许可证认证系统,其特征在于,该许可证认证系统具有与所述客户机PC连接并能够通信、并且经由无线线路与服务器连接并能够通信的便携终端,所述服务器具备发行与要在所述客户机PC中安装的应用程序对应的临时使用权的临时使用权发行单元;发行正式使用权的正式使用权发行单元,所述便携终端具备从服务器取得由所述服务器发行的临时使用权和正式使用权并进行保持的单元;向所述客户机PC提供从所述服务器取得的临时使用权和正式使用权的单元,所述客户机PC具备根据使用权的种类限制应用程序的使用的许可证认证单元;在通过临时使用权进行了认证的状态下请求正式使用权的单元,所述便携终端,在获得要在所述客户机PC中安装的应用程序时,取得并保持由所述服务器发行的临时使用权,在所述客户机PC安装应用程序时,通过所述保持的临时使用权进行临时的许可证认证,使得能够在客户机PC中利用应用程序,此后,所述便携终端移动到能够与服务器通信的区域中,从服务器取得正式使用权并进行保持,在从所述客户机PC发出基于正式使用权的许可证认证请求时,通过所述保持的正式使用权进行正式的许可证认证。
2.根据权利要求1所述的许可证认证系统,其特征在于,所述便携终端通过正式使用权进行正式的许可证认证,关于在继续使用应用程序时定 期进行的针对该应用程序的继续使用的认证,在能够与服务器通信的区域中从服务器取得 继续使用权并进行保持,在从所述客户机PC发出基于继续使用权的许可证认证请求时,通 过所述保持的继续使用权进行许可证认证。
3.一种在客户机PC中安装应用程序时的许可证认证方法,其特征在于,具有与所述客户机PC连接并能够通信、并且经由无线线路与服务器连接并能够通信 的便携终端,所述服务器具备发行与要在所述客户机PC中安装的应用程序对应的临时使用权的 临时使用权发行单元;发行正式使用权的正式使用权发行单元,所述便携终端具备从服务器取得由所述服务器发行的临时使用权和正式使用权并进 行保持的单元;向所述客户机PC提供从所述服务器取得的临时使用权和正式使用权的单 元,所述客户机PC具备根据使用权的种类限制应用程序的使用的许可证认证单元;在通 过临时使用权进行了认证的状态下请求正式使用权的单元,所述便携终端,在获得要在所述客户机PC中安装的应用程序时,取得并保持由所述服 务器发行的临时使用权,在所述客户机PC安装应用程序时,通过所述保持的临时使用权进 行临时的许可证认证,使得能够在客户机PC中利用应用程序,此后,所述便携终端移动到能够与服务器通信的区域中,从服务器取得正式使用权并 保持,在从所述客户机PC发出基于正式使用权的许可证认证请求时,通过所述保持的正式 使用权进行正式的许可证认证。
全文摘要
本发明提供一种许可证认证系统以及认证方法,其能够对要在处于无法与进行应用程序的认证的服务器进行通信的状况的客户机PC中安装的应用程序进行认证。便携终端,代替服务器来进行针对要在客户机PC中安装的应用程序的许可证认证,提供临时使用权(步骤1101~1108),在临时使用期间,便携终端代替客户机PC来进行正式的许可证认证来获得正式的使用权,并将该使用权信息传送给客户机PC(步骤1109~1116)。
文档编号G06F21/22GK101925910SQ200980102740
公开日2010年12月22日 申请日期2009年1月20日 优先权日2008年1月22日
发明者堤俊之 申请人:日立软件工程株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1