首页> 中国专利> 基于单向杂凑函数的记录系统与方法

基于单向杂凑函数的记录系统与方法

摘要

本发明公开了一种基于单向杂凑函数的记录系统与方法。在系统中包括使用者终端、中心服务器、以及验证服务器,而所述方法如下:使用者终端记载记录文件并初始化信息认证金钥及映像码。当验证服务器向使用者终端要求对应操作历程的记录单元时,使用者终端利用单向杂凑函数计算检验值,并回传检验值及映像码序列。验证服务器再通过中心服务器验证检验值及映像码序列的正确性。中心服务器通过单向杂凑函数验算映像码序列经杂凑计算所得相等于检验值,以验证使用者终端的记录文件未遭受修改。

著录项

  • 公开/公告号CN101527631A

    专利类型发明专利

  • 公开/公告日2009-09-09

    原文格式PDF

  • 申请/专利权人 财团法人工业技术研究院;

    申请/专利号CN200810083603.7

  • 发明设计人 林之寅;

    申请日2008-03-04

  • 分类号H04L9/32;H04L29/06;G06F21/00;

  • 代理机构北京律诚同业知识产权代理有限公司;

  • 代理人梁挥

  • 地址 台湾省新竹县

  • 入库时间 2023-12-17 22:40:15

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-03-01

    未缴年费专利权终止 IPC(主分类):H04L9/32 授权公告日:20110706 终止日期:20180304 申请日:20080304

    专利权的终止

  • 2011-07-06

    授权

    授权

  • 2009-11-04

    实质审查的生效

    实质审查的生效

  • 2009-09-09

    公开

    公开

说明书

技术领域

本发明涉及一种维护记录系统与方法,且特别是一种基于单向杂凑函数的记录系统与方法。

背景技术

记录机制(Logging Mechanism)是用以记录各类系统的使用历程,例如计算机系统、应用系统或网络系统等,所述记录机制所记录的内容包括如系统内部的程序启动与执行记录、使用者登录记录、供稽核用系统应用程序活动记录、或是供系统安全返回的使用历程记录、应用程序操作记录、与外部组件或服务器互动记录,或是使用者对于某种服务的使用历程记录。以电子商务层面来看,使用者对于某种服务(影音或软件服务)的操作历程记录可用以作为计价收费的基础,或用以供服务商分析使用者行为的信息来源。因此,确保记录的安全性及可信赖度,将影响该记录的可利用性。一个安全的记录当包括以下特性:

一、一个安全的记录必须提供验证关于该记录内所有事件的正确性。

二、当系统被攻击入侵后,记录亦可能遭攻击者取得并窜改为不真实的记录。因此,一个安全记录机制必须确保系统遭入侵之前的记录完整性及正确性。

三、不管系统发生错误或遭受入侵攻击而使记录遗失或遭受窜改,一个安全记录机制必须要能逐一侦测前述记录的异动状态。

目前,多项用以保护记录的完整性及正确性的技术被提出,例如已公开的美国发明专利US5978475揭露利用单向杂凑函数(one-way hash function)、加密、签章等技术达到保护记录的协议。然而,此篇专利所揭技术需对记录事件的内容进行加密、签章,第三方服务器需要保有事件的全部内容。若记录的事件内容为验证服务器端所不欲公布的信息(例如验证服务器为银行A所有,而第三方服务器为银行B所有,若事件内容牵涉到银行A的营运机密时,自当不欲将事件内容公开于银行B的第三方服务器),则采用US5978475专利的技术来保护记录完整性自当不适合。另外US5978475专利所揭技术涉及内文加解密,其步骤繁杂、系统运算量大,致使验证方需较高运算效能才能执行。综上,目前提出的保护记录的完整性、正确性的技术,尚存在步骤繁杂、实作不易、系统运算量繁重不均等缺陷。

发明内容

鉴于上述保护记录完整性、正确性等问题,本发明在于提出一种基于单向杂凑函数的记录系统,验证方(验证服务器)藉由第三方(中心服务器)检验被验证方(使用者终端)的记录,以确保记录未受变更、窜改,为了便于理解,在下文中所称的「记录文件」则是此处所称「记录」的具体存在形式,特此说明。

本发明的另一实施范例,在于提出一种基于单向杂凑函数的记录方法,被验证方(使用者终端)与第三方(中心服务器)交换记录文件中每笔记录单元以单向杂凑函数计算杂凑值(映像码),当验证方(验证服务器)对被验证方进行验证时,验证方向被验证方取得杂凑链(映像码序列)后,再藉由第三方协助验证杂凑链为完整有效,以达确保记录的完整性与正确性。

本发明的系统的一实施例包括使用者终端、中心服务器、以及验证服务器。使用者终端记载记录文件,并初始化信息认证金钥(message authentication codekey,MAC key)及映像码(image0);中心服务器在系统初始时接收并储存信息认证金钥,并在进行纪录的验证操作时协助验证前述使用者终端的记录文件的完整性与正确性;验证服务器传送事件验证要求给使用者终端,并利用单向杂凑函数及中心服务器协助验证使用者终端传回的事件验证响应,以验证使用者终端的记录文件未遭受修改。

其中,使用者终端接收到事件验证要求后,依据事件验证要求新增一则记录单元于所持有的记录文件,更新信息认证金钥,并利用单向杂凑函数与信息认证金钥计算相应于此新增的记录单元的检验值,并依据此检验值及映像码序列(亦即由所有记录单元的映像码所集合成的序列)产生事件验证响应。验证服务器利用单向杂凑函数检验回传的映像码序列的正确性,并将接收的检验值及映像码序列传送到中心服务器。中心服务器利用既存的信息认证金钥与与映像码序列通过单向杂凑函数计算得到最新的信息认证金钥,再据的检验接收的检验值与映像码序列的正确性,若映像码序列经杂凑计算所得相等于检验值,则回传并记录验证成功的信息。

依照本发明的实施例所述的基于单向杂凑函数的记录系统,其中记录文件包含多个记录单元,每一记录单元所记载的内容包含事件序号、时间戳记、事件内容、以及映像码。

依照本发明的实施例所述的基于单向杂凑函数的记录系统是依据该映像码序列及时间戳记与事件内容。

依照本发明的较佳实施例所述的基于单向杂凑函数的记录系统,其中使用者终端于记载新增的记录单元后,利用最后记载的记录单元的映像码利用信息认证码函数更新信息认证金钥。

依照本发明的实施例所述的基于单向杂凑函数的记录系统,当使用者终端关闭记录文件时,则使用者终端依据当时的信息认证金钥以单向杂凑函数计算新的检验值,并删除所有的信息认证金钥。

本发明的基于单向杂凑函数的记录方法,其较佳实施例包括以下步骤:首先,使用者终端记载记录文件,并初始化信息认证金钥及映像码,并将产生的初始的信息认证金钥安全地传送到中心服务器(步骤a)。接着,使用者终端依据操作历程新增一则记录单元,并更新记录文件与信息认证金钥(步骤b)。之后,使用者终端接收验证服务器传送的事件验证要求,并以单向杂凑函数计算出检验值(步骤c)。然后,验证服务器接收检验值及映像码序列,并利用单向杂凑函数检验相应事件验证要求的映像码的正确性,并将接收的检验值及映像码序列传送到中心服务器(步骤d)。最后,中心服务器利用既存的信息认证金钥与与映像码序列通过单向杂凑函数计算得到最新的信息认证金钥,再据之检验前述检验值与映像码序列的正确性,若映像码序列经杂凑计算所得相等于检验值,则回传并记录验证成功的信息(步骤e)。

依照本发明的实施例所述的基于单向杂凑函数的记录方法,其中前述步骤(b)更包括:依据使用者终端运作时的时间产生记录单元,并记载此记录单元于记录文件尾端。另外,所述记录单元包括事件序号、时间戳记、事件内容、以及映像码。

依照本发明的实施例所述的基于单向杂凑函数的记录方法,其中步骤(b)更包括更新映像码,此映像码是依据映像码序列及时间戳记与事件内容以单向杂凑函数产生。

依照本发明的实施例所述的基于单向杂凑函数的记录方法,其中映像码序列系由该些记录单元的该映像码组成。

依照本发明的实施例所述的基于单向杂凑函数的记录方法,其中使用者终端于记载新增的记录单元后,利用最后记载的记录单元的映像码利用信息认证码函数更新信息认证金钥。

依照本发明的实施例所述的基于单向杂凑函数的记录方法,其中步骤(c)更包括以下子步骤:首先,依据事件验证要求产生新的记录单元,并记载新的记录单元于记录文件;接着,更新信息认证金钥;然后,利用单向杂凑函数计算检验值,并将检验值、事件验证要求所欲验证的记录单元、初始的映像码,以及映像码序列传送至验证服务器。

依照本发明的较佳实施例所述的基于单向杂凑函数的记录方法,其中步骤(d)所述的利用单向杂凑函数检验相应事件验证要求的映像码的正确性的步骤进一步包括以下子步骤:首先,分别将事件验证要求所欲验证的多个事件的事件序号、时间戳记、事件内容、及相应之映像码序列代入单向杂凑函数运算;接着,比对运算结果是否与所欲验证的事件的映像码相符,并记录比对结果。

依照本发明的实施例所述的基于单向杂凑函数的记录方法,使用者终端于关闭记录文件时,依据当时的信息认证金钥,以单向杂凑函数计算新的检验值,并删除所有的信息认证金钥。

由上所述,本发明的基于单向杂凑函数的记录系统及方法,使用者终端于新增一笔相应一操作历程的记录单元时,利用单向杂凑函数产生该记录单元的映像码。当验证服务器欲向使用者终端验证某笔记录单元时,使用者终端利用单向杂凑函数计算检验值,并回传记录单元、检验值、及记载的映像码序列以作为事件验证的响应。验证服务器通过中心服务器,以验证检验值及映像码序列的正确性,故可确保使用者终端记录中的每一笔记录单元未受变更,并侦测出恶意入侵者的窜改记录。

有关本发明的详细技术手段及其它实施例,兹配合图示说明如下,其内容足以使任何熟悉相关技术的人了解本发明的技术内容并据以实施,且根据本说明书所揭露的内容及附图,任何熟悉相关技术的人可轻易地理解本发明相关之目的及优点。然而本发明的概念亦可用于其它范围。以下列举的实施例仅用于说明本发明的目的与执行方法,并非用以限制其范围。

附图说明

图1为基于单向杂凑函数的记录系统架构之示意图;

图2为基于单向杂凑函数的记录方法流程之示意图;

图3为基于单向杂凑函数的记录系统执行时序之示意图。

【主要组件符号说明】

110  使用者终端

120  验证服务器

130  中心服务器

具体实施方式

图1为基于单向杂凑函数的记录系统架构的示意图。请参照图1,所述基于单向杂凑函数的记录系统用来记载计算机系统的运作记录,并确保系统发生错误或遭受系统入侵时,可判断记录是否已遭受修改或是更动。在本实施例,基于单向杂凑函数的记录系统包括以下构件:使用者终端110、验证服务器120、以及中心服务器130。使用者终端110可例如为一般的个人计算机(PC)、数字个人助理(PDA)等具运算能力的电子装置,其记载一记录文件,并能初始化信息认证金钥及映像码。在此记录文件中包含多个记录单元,使用者终端110进行操作时(包括接受联机请求、或联机到任一服务器等网络操作),就会产生一笔相应的记录单元,记录单元的内容包括有事件序号(event number)、时间戳记(timestamp)、事件内容、及映像码。中心服务器130的角色则是用来验证电子装置中的记录是否遭受更改。中心服务器130接收并储存信息认证金钥(message authentication code key,MAC key),并协助验证使用者终端110记载的记录文件的完整性与正确性。验证服务器120,则用以验证使用者终端110所记载的任意记录单元的正确性,以确保记录单元未被更改。验证服务器120传送一事件验证要求给使用者终端110,验证服务器120利用单向杂凑函数并通过中心服务器130的帮助,协同验证使用者终端110传回的事件验证响应,以验证使用者终端110的记录文件是否遭受修改。

验证服务器120传送一事件验证要求给使用者终端110以验证某几笔记录单元的真伪。当使用者终端110接收此事件验证要求时,使用者终端110依据事件验证要求新增一记录单元于记录文件,并利用单向杂凑函数计算检验值,并依据检验值及映像码序列产生事件验证响应。验证服务器120接收此事件验证响应后,利用单向杂凑函数检验回传的映像码序列的正确性,并将接收的检验值及映像码序列传送到中心服务器130协同验证。其中,所述映像码序列所指为记录中记载的多笔记录单元的映像码的集合。中心服务器利用既存的信息认证金钥与映像码序列通过单向杂凑函数计算得到最新的信息认证金钥,再据之检验检验值与映像码序列的正确性,若映像码序列经杂凑计算所得相等于检验值,则回传并记录验证成功的信息。

在本实施例,使用者终端110的记录包括多笔记录单元,其一实施例表示如下:

LOG=<

r0={0,timestamp0,event0,81f0ed1f953ad513b7d06db2efbd1f15}

… 

r23={23,timestamp23,event23,6bc80b081f0ed1f15aa632c24af55a53}

r24={24,timestamp24,event24,9e355c8faff2cf70e173aeffb2efba41}

r25={25,timestamp25,event25,8a912a97953c542d6bc0094b824b55d4}

r26={26,timestamp26,event26,69c6353b0b07bc917f6a6b64b36570d9}

r27={27,timestamp27,event27,216ac14ad513b7d06dddc5dd71f0de2}

...>

使用者终端110初始化时,一并初始信息认证金钥及映像码,使用者终端110可依据时间、依据该机器的硬件信息(如网络卡号等)以安全杂凑函数,例如信息认证码函数(message authentication code function)初始信息认证金钥并保持其机密性,之后再利用此信息认证金钥以杂凑函数产生映像码。在本实施例,映像码是利用所称的单向杂凑函数产生,其关系式表示如下:

映像码i=单向杂凑函数(映像码0||映像码1||...||映像码i-1||Si||时间戳记i||事件内容i);

其中,Si为记录中第i个事件序号,例如记录中的第1个记录单元及代表其为第1个发生的事件,其事件序号即表为1。事件内容i为记录中所载的第i个事件,所记载内容不限定需加密后以密文方式传送、记载。举例来说,若为商业交易记录,记录中包含如客户、交易款项等视为机密的内文,则此笔记录单元的事件内容则可通过加密技术转为密文再行记录。时间戳记i为记录中所载的第i个事件发生时的时间,时间戳记格式在此不限定其范围。映像码i则为记录中第i个事件序号的映像码。

另外,当使用者终端110产生一笔新的记录单元以记载于记录文件时,使用者终端110进一步利用最后记载的记录单元中的映像码来更新信息认证金钥,其关系式表示如下:

信息认证金钥i=信息认证码函数(信息认证金钥i-1,映像码i);

当中的映像码i为新增的记录单元;信息认证金钥i-1为更新前的信息认证金钥;信息认证金钥i为更新后的信息认证金钥;信息认证金钥i产生后,信息认证金钥i-1便由使用者终端之中完全消去删除;而信息认证码函数则为计算信息认证金钥的安全数学函数。

当使用者终端110关闭记录文件时,依据当时的信息认证金钥以单向杂凑函数计算新的检验值,并删除所有的信息认证金钥。

图2为基于单向杂凑函数的记录方法流程的示意图。请参照图2,本发明的基于单向杂凑函数的记录方法,包括以下步骤:首先,使用者终端记载记录文件,并初始化信息认证金钥及映像码,并将产生的初始的信息认证金钥安全地传送到中心服务器(步骤S210)。接着,使用者终端依据操作历程新增一则记录单元,并更新记录文件与信息认证金钥(步骤S220)。之后,使用者终端接收验证服务器传送的事件验证要求,并以单向杂凑函数计算出检验值(步骤S230)。然后,验证服务器接收检验值及映像码序列,并利用单向杂凑函数检验相应事件验证要求的映像码的正确性,并将接收的检验值及映像码序列传送到中心服务器(步骤S240)。最后,中心服务器利用既存的信息认证金钥与与映像码序列通过单向杂凑函数计算得到最新的信息认证金钥,再据之检验前述检验值与映像码序列的正确性,若映像码序列经杂凑计算所得相等于检验值,则回传并记录验证成功的信息(步骤S250)。

在本实施例,当执行步骤S220时,更依据使用者终端运作时间产生记录单元,并附加于记录文件的最后一笔记录单元之后(记录文件尾端),使记录中的各笔记录单元有时间相依性。前述的步骤S230进一步包括:先依据事件验证要求产生新的记录单元,并记载新的记录单元于记录文件;之后,再更新信息认证金钥;然后,再利用单向杂凑函数计算检验值,并传送检验值、事件验证要求所欲验证的事件所相应的记录单元、初始的映像码、以及映像码序列给验证服务器。另外,步骤S240所述的利用该单向杂凑函数检验相应事件验证要求的映像码之正确性的步骤包括:先分别将事件验证要求所欲验证的多个事件的事件序号、时间戳记、事件内容、及相应之映像码序列代入单向杂凑函数运算;之后再比对运算结果是否与所欲验证的事件的映像码相符,并记录比对结果。

为清楚说明前述的基于单向杂凑函数的记录方法的实施流程,以下进一步佐以图示说明。图3为基于单向杂凑函数的记录系统执行时序的示意图。请参照图3,使用者终端110进行初始化动作,并将产生的初始的信息认证金钥安全地传送到中心服务器130。中心服务器130接收并储存信息认证金钥。验证服务器120传送一事件验证要求给使用者终端,例如传送检验第24、25号事件,以验证记录中第24、25个记录单元的真伪。当使用者终端110接收此事件验证要求时即进行事件验证要求处理程序。使用者终端110先将接收的事件验证要求视为一个新事件,并产生新的记录单元(在本实施例,新的记录单元为第29个记录单元),其可记录为r29=<S29,Timestamp29,event29,image29>;之后再计算第29个记录单元所对应的信息认证金钥δ29,并利用此信息认证金钥δ29通过单向杂凑函数计算检验值。使用者终端110于计算前述的检验值后,产生事件验证响应,其包含检验值、第24个记录单元、第25个记录单元、第29个记录单元、第1个映像码、映像码序列(格式例如为<S1,T1,image1>、...、<S28,T28,image28>,其中S为事件序号、T为该事件发生时间、image为映像码)。当验证服务器120接收此事件验证响应后,执行事件验证响应处理程序,验证服务器120利用单向杂凑函数验证第29个映像码、第24个映像码、第25个映像码是否有效(亦即利用与使用者终端110相同的单向杂凑函数验证产生的映像码是否为有效映像码)。若映像码无效,则表示接收的记录单元为错误数据,并断定该使用者终端110为伪装者或意图窜改者。若映像码有效,则验证服务器120再将接收的检验值及映像码序列传送到中心服务器130,藉由中心服务器130协助确认使用者终端110的记录是否因发生系统错误或因被黑客入侵而被更改。中心服务器130的验证程序如下:首先,中心服务器130利用接收自验证服务器120的映像码序列与既存的信息认证金钥递归地计算得到最新的信息认证金钥,例如第29个信息认证金钥,并经杂凑计算检验值,并比对计算所得的检验值是否与接收的检验值相等,若相等则回传并记录验证成功之信息给验证服务器,以完成记录验证;若不相等则回传记录验证失败的信息给验证服务器120,以供验证服务器120判断该使用者终端110的记录已遭修改(窜改)。

虽然本发明已以一较佳实施例揭露如上,然其并非用以限定本发明,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号