多层级数据加密与解密系统及其方法

文档序号:7917160阅读:308来源:国知局
专利名称:多层级数据加密与解密系统及其方法
技术领域
本发明涉及一种多层级数据加密与解密系统及其加密与解密方法。
背景技术
近年来,由于无线传输技术的进步及无线节点具有无线与易布建等特 性,使得各式无线传输技术广泛应用于各种数据传输上,例如无线感测网
路(Wireless Sensor Network, WSN ) 、 Zigbee、蓝牙等。以无线感测网路为
控、环境物染的监控、工地(如捷运工地)的安全监控等。为了确保被监 控场所物件的安全,无线感测器会不断将所测得的物件状态回报予系统的 中控中心,使用者可通过连结至中控中心下载相关数据以进行被监测物件 的监控。
在无线传输环境中,数据的安全保护是相当重要的课题。因此,在无 线传输环境中所传递的数据一般都会以金钥进行加密以避免未授权使用者 存取此数据。然而,在多人使用的系统中,每一使用者有权读取的数据会 有所不同。因此, 一般会以多把金钥来分别加密属于不同等级的数据,并 且使用者可依据所拥有的金钥来解密被授权可读取的数据。在此类系统中, 使用者必须管理多把金钥,因此当数据所分的等级愈多层时,使用者所需 管理的金钥数目亦会增加,由此会造成金钥管理上的不便。
此外,为避免已解除授权的使用者继续使用曾经所拥有的金钥存取数 据或者新授权使用者在未被授权下存取先前所加密的数据, 一般的作法会 以时间为基础更新金钥。也就是说,此类系统会在不同时间使用不同的金 钥来加密数据,以达到向前(forward)与向后(backward)的数据安全保护。然 而,在此种加密机制中系统必须在所有加密数据的加密装置与使用者的使 用者终端的间进行时间同步,以确保加密装置与使用者终端使用正确的金 钥加密数据与解密数据。此时间同步的动作往往会造成系统运作上的负荷。 再者,由于在不同时间是使用不同金钥加密,因此使用者所需拥有的金钥
8会包括除了依数据等级区分的金钥外还包括依时间区分的金钥,因此更增 加使用者管理多把金钥的负担。
为解决上述问题,美国专利公开号第2002/0191796号将数据区分为依 序的多个数据区块,并且在加密数据区块时会将用以加密下 一数据区块的 金钥与此数据区块一起加密,因此当使用者以前一把金钥解密数据区块时 可获取解密下 一笔数据区块的金钥,以达到向前(forward)与向后(backward) 的数据安全保护的目的。

发明内容
本发明提供一种多层级数据加密与解密方法,其能够管控不同使用者 权限所能读取的数据。
本发明提出 一种多层级数据加密方法,此方法包括将欲被加密的数据 对应多个层级分隔成多个子数据区块,其中每一层级对应至少 一使用者。 此方法也包括依椐每一层级的层级生成金钥与时间金钥来产生每一层级的 加密金钥,以及以每一层级的加密金钥分别地加密属于每一层级的子数据 区块,
钥与时间金钥所产生, 生,其中时间种子是依据不同的加密时段定期地更新。
本发明提出 一种多层级数据解密方法,此方法包括将对应使用者的层 级及其他被授权可读取层级且对应加密时段的已加密子数据区块传送给使 用者。此方法也包括使用者依据此层级及其他被授权可读取层级的层级生 成金钥与时间金钥来产生此层级及其他被授权可读取层级的加密金钥,并 且以此层级及其他被授权可读取层级的加密金钥分别地解密对应使用者的 层级及其他被授权可读取层级的已加密子数据区块,其中下层级的层级生 成金钥与时间金钥是根据上层级的层级生成金钥与时间金钥所产生,并且 时间金钥是根据对应已加密子数据区块的时间种子与时间生成金钥所产 生,其中时间种子是依据不同的加密时段定期地更新。
本发明提出 一种多层级数据加密系统,其包括数据伺服器与至少 一加 密模块。数据伺服器用以将多个使用者分组为多个层级,并且产生时间生 成金钥、时间种子与每一层级的层级生成金钥,其中数据伺服器会依据不层级的层级生成金钥。加密模块用以接收时间生成金钥、时间种子与每一 层级的层级生成金钥,将欲被加密的数据对应这些层级分隔成多个子数据 区块,依据每一层级的层级生成金钥与时间金钥来产生每一层级的加密金 钥并且使用每一层级的加密金钥分别地加密属于每一层级的子数据区块,
级的时间金钥产生下层级的时间金钥。
本发明提出 一种多层级数据解密系统,其包括数据伺服器与解密模块。 数据伺服器储存多个已加密子数据区块。解密模块用以从数据伺服器中读 取对应使用者的层级及其他被授权可读取层级且对应加密时段的已加密子 数据区块,依据此层级与其他被授权可读取层级的层级生成金钥与时间金 钥来产生此层级与其他被授权可读取层级的加密金钥,并且以此层级与其 他被授权可读取层级的加密金钥解密已加密子数据区块,其中下层级的层
其中数据伺服器会根据对应所述已加密子数据区块的时间种子与时间生成 金钥产生与提供对应此层级与加密时段的时间金钥给解密模块,其中时间 种子是依据不同的加密时段所产生。
下层级的层级生成金钥与时间金钥的金钥产生机制。
为使本发明的上述特征和优点能更明显易懂,下文特举较佳实施例, 并结合附图详细说明如下。


图1是根据本发明范例实施例绘示多层级数据加密与解密系统的概要 方块图。
图2是根据本发明范例实施例绘示多层级数据加密方法的流程图。
图3是根据本发明范例实施例绘示多层级数据解密方法的流程图。
附图符号说明
1:第一无线感测器 2:第二无线感测器 3:第三无线感测器4:中控装置 5:使用者终端
100:多层级数据加密与解密系统
110:第一加密模块
120:第二加密模块
130:第三加密模块
140:数据伺服器
150:解密模块
S201、 S203、 S205、 S207、 S209、 S211:多层级数据加密的步骤 S301、 S303、 S305、 S307、 S309、 S3U、 S313、 S315:多层级数据解 密的步骤
具体实施例方式
本发明所提出的加密方法是将需加密的数据依不同层级(即不同使用者 群组)分隔成不同子数据区块,并且以依据每一层级的层级生成金钥与时间 金钥所产生的每一层级的加密金钥来加密属于不同层级的子数据区块,其 中产生时间金钥的时间种子会依据不同的加密时段而不同,由此可使属于 不同层级的使用者群组可依其授权等级存取数据并且能够达成向前与向后 的数据安全保护。特别是,在产生金钥的过程中下层级的层级生成金钥与
减少使用者所需管理的金钥数目。以下将以范例实施例并结合附图详细说 明本发明。
图1是根据本发明范例实施例绘示多层级数据加密与解密系统的概要 方块图。
请参照图1,多层级数据加密与解密系统100包括第一加密模块110、 第二加密模块120、第三加密模块130以及数据伺服器140。在本范例实施 例中,多层级数据加密与解密系统100是架构在一无线感测网路(Wirdess Sensor Network, WSN)上,因此第一加密模块110、第二加密模块120、第三 加密模块130是分别地配置在第一无线感测器1、第二无线感测器2与第三 无线感测器3等装置节点上,且数据伺服器140是配置在此无线感测网路 上的中控装置4上。在此第一无线感测器l、第二无线感测器2、第三无线感测器3与中控装置4所建构的无线感测网路中,第一无线感测器l、第二 无线感测器2与第三无线感测器3会搜集所配置地点附近的相关数据(例如 影像),并且分别地通过第一加密模块110、第二加密模块120、第三加密模 块130加密后传送至中控装置4储存,使用者可通过网路连接至中控装置4 读取所储存的记录。无线感测网路的运作方式为本领域技术人员所熟悉, 在此不再详细描述。然而,必须了解的是本发明不限于架构在无线感测网 路中,多层级数据加密与解密系统100亦可架构于Zigbee、蓝牙等无线环 境中或者亦可架构于有线传输的网路环境中。
数据伺服器140会储存由第一无线感测器1、第二无线感测器2与第三 无线感测器3传送至中控装置4的已加密数据。数据伺服器140可以是一 般具有数据储存媒体的数据处理装置。例如,数据伺服器140包括一数据 库以管理所储存的数据。
特别是,数据伺服器140会将授权可使用的使用者分组为多个层级来 分级管理,以使得每一层级的使用者所能够读取的数据会有所限制。具体 来说,较上层级的使用者被授权可读取的数据较完整,较下层级的使用者 所能读取的数据会较受到限制。也就是说,分组为较上层级的使用者是具 有较高权限的使用者,分組为较下层级的使用者是具有较低权限的使用者, 较高权限的使用者可读取分级上授权给较低权限者读取的数据,但较低权 限者无法读取分级上授权给较高权限者才被授权可读取的数据。
为对上述不同层级的使用者进行读取权限的限制,数据伺服器140会 为每一层级产生每一层级所属的层级生成金钥以对每一层级的数据进行加
以达到分级管制的目的。
在本发明一范例实施例中,例如数据伺服器MO会将使用者ll、使用 者12与使用者13分组为3个层级,其中使用者11属于具最高权限的第一 层级,使用者12属于具次高权限的第二层级,并且使用者13属于最低权 限的第三层级。
数据伺服器140会以一随机方式产生属于最高层级的使用者的群组金 钥K,,然后通过单向散列函数链(one-wayhashchain)的第三函数来依序产生 第二层级的群组金钥K2与第三层级的群组金钥K3,如下式所示
Kl:H"(K)其中H为散列函数且L为2 ~ 3的整数。在本范例实施例中第三函数是 以散列函数来产生第二层级的群组金钥K2与第三层级的群组金钥K3,但必 须了解的是本发明不限于此,在本发明另一实施例中各种加密函数、XOR 函数或任何其他适合的函数皆可用作为第三函数。
的后,数据伺服器140会将每一层级的群组金钥(K!,K2,Kd分别地与加 密模块的识别码(例如,在本范例实施例中假设第一无线感测器1、第二无 线感测器2与第三无线感测器3的识别码分别为ID1、 ID2与ID3)来以第二 函数产生用于每一加密模块的每一层级的层级生成金钥(KB賜,L, n=l ~3, L=l~3},在本实施例中是以加密函数作为第二函数,如下式所示
KBIDn,L=Enc(KL,IDn)
其中Enc为加密函数,且L表示层级。
在本范例实施例中,加密函数为一符合先进加密标准(Advanced Encryption Standard, AES)的加密函数,然而必须了解是本发明不限于此,任 何适合的加密函数皆可应用于本发明,例如数据加密标准(Data Encryption Standard, DES)函数。除此之外,在本发明另一实施例中,第二函数亦可使 用散列函数、XOR函数或其他适当的函数来实作。
值得一提的是,本实施例中以无线感测器的识别码作为产生层级生成 金钥的参数之一是因为本实施例中会针对每一无线感测器提供不同的层级 生成金钥。然而,在另一实施例中,在不考虑多个无线感测器或每一无线 感测器都使用相同层级生成金钥的情况下,亦可直接使用群组金钥作为层 级生成金钥。
除了上述层级生成金钥,数据伺服器140亦会产生时间生成金钥与时 间种子。时间生成金钥与时间种子是用于产生每一加密时段的时间金钥。 在本实施例中,在每一加密时段中会使用不同的时间金钥,其可使所加密 的数据具有向前(forward)与向后(backward)的数据安全保护,以避免已解除 授权的使用者继续使用曾经拥有的金钥存取数据或者新授权使用者在未授 权下存取先前加密的数据。
例如,数据伺服器140会以自身所拥有的主要金钥MK与无线感测器 的识别码以第六函数来产生时间生成金钥rrMKron, n=l~3},在本范例实 施例中第六函数是以加密函数来实作,如下式所示
TMKIDn =Enc(MK,IDn)其中Enc为加密函数。在本范例实施例中,加密函数为一先进加密标
准(Advanced Encryption Standard, AES)加密函数,然而必须了解是本发明不 限于此,任何适合的加密函数皆可应用于本发明,例如数据加密标准(Data Encryption Standard, DES)函数。除此之外,在本发明另一实施例中,第六函 数亦可使用散列函数、XOR函数或其他适当的函数来实作。
类似地,本范例实施例中以无线感测器的识别码作为产生时间生成金 钥的参数之一是因为本实施例中会针对每一无线感测器提供不同的时间生 成金钥。然而,在另一实施例中,在不考虑多个无线感测器或者每一无线 感测器都使用相同时间生成金钥的情况下,亦可直接使用主要金钥MK作 为时间生成金钥。
在本发明另一实施例中,数据伺服器140会为每一使用者产生使用者 金钥,并且在给予使用者所属的群组金钥时同时给予使用者的使用者金钥 以作为使用者登入数据伺服器140的身份识别之用。例如,使用者ll的使 用者金钥UKp使用者12的使用者金钥UK2与使用者13的使用者金钥UK3 分别是以数据伺服器的主要金钥MK和使用者11的使用者识别码UID,、使 用者12的使用者识别码UID2与使用者13的使用者识别码UID3来以加密 函数所实作的第八函数来产生(即,UK「Enc(MK,UIDi),其中i为1~3)。类 似地,在本发明另一实施例中,第八函数亦可使用散列函数、XOR函数或 其他适当的函数来实作。
在本发明另一实施例中,数据伺服器140的主要金钥MK是以一随机 方式来产生。此外,数据伺服器140会针对不同加密时段T产生不同的时 间种子SeedT,例如以日期、时间等作为时间种子的产生参数。在本范例实 施例中,是依据主要金钥MK与目前日期以加密函数所实作的第七函数产 生出目前加密时段T的时间种子SeedT。类似地,在本发明另一实施例中, 第七函数亦可使用散列函数、XOR函数或其他适当的函数来实作。
如上所述,第一加密模块U0、第二加密模块120与第三加密模块130 是用以加密第一无线感测器1、第二无线感测器2与第三无线感测器3所传 送的数据。第一加密模块110、第二加密模块120与第三加密模块130具有 相同的结构与功能,在此以第一加密模块110进行说明。
第一加密模块110会从数据伺服器140中接收时间生成金钥TMKID1、 时间种子SeedT与每一层级的层级生成金钥(KBnM,L, L=l 3},其中L表示层级。特别是,在本范例实施例中,数据伺服器140会在每一段时间间隔
时广播新的时间种子SeedT给第一加密模块110、第二加密模块120与第三 加密模块130,以使第一加密模块IIO、第二加密模块120与第三加密模块 130可依据新的时间种子与时间生成金钥来产生目前加密时段T的时间金 钥。例如,第一加密模块110接收到目前加密时段的时间种子SeedT时会 使用第四函数来产生在目前加密时段中第 一层级的时间金钥TKID,,t,在本 范例实施例中第四函数是以散列函数来实作,如下式所示
TKiD1,T=H(TMKID1, SeedT)
其中H为散列函数。
特别是,第一加密模块110会依据时间生成金钥TMKID1与该时间种子 SeedT产生第 一层级的时间金钥TKID1,T,并且以单向散列函数链依序产生第 二层级与第三层级的时间金钥。也就是,第一加密模块UO会根据第一层级 的时间金铜TKID1,T以散列函数所实作的第五函数来产生第二层级的时间金 钥H(TKID1,T),最后再根据第二层级的时间金钥产生第三层级的时间金钥 H(H(TKID1,T))。在本范例实施例中第四与第五函数是以散列函数来实作,但 必须了解的是本发明不限于此,在本发明另 一 实施例中各种加密函数、XOR 函数或任何其他适合的函数皆可用来产生时间金钥。
第一加密模块110亦会将欲传送的数据对应使用者的层级分隔成多个 子数据区块。例如,在本范例实施例中第一加密模块110会将数据以使用 者所分组的3个层级来分割为对应的子数据区块M1、 M2与M3,其中属于 第一层级的使用者是被授权可读取子数据区块M1、 M2与M3,属于第二层 级的使用者是被授权可读取子数据区块与M2与M3,并且属于第三层级的 使用者是被授权可读取子数据区块M3 。
此外,第一加密模块110会依据所接收到的每一层级的层级生成金钥 以及依据新种子所产生的时间金钥来产生每一层级的加密金钥。例如,在 本范例实施例中第一加密模块110会使用每一层级的层级生成金钥与目前 的时间金钥以第一函数来产生每一层级的加密金钥(KEID1,L,T, L=l~3},在 本范例实施例中第 一 函数是以散列函数来实作,如下式所示
KEiD1,l,t=H(KBIDn,L, HL '(TKid1,t))
其中H为散列函数,且L为层级。在本范例实施例中是以散列函数来 产生加密金钥,但必须了解的是本发明不限于此,在本发明另一实施例中
15各种加密函数、XOR函数或任何其他适合的函数皆可用来产生加密金钥。
第一加密模块110会使用上述所产生的每一层级的加密金钥{ KEID1,L,T, L=l 3}分别地加密子数据区块Ml 、 M2与M3以产生已加密子数据区块C1 、 C2与C3。
值得一提的是,在另一实施例中,倘若第一加密模块110未接收到新 的时间种子而以旧的时间种子产生时间金钥,并且以旧的时间金钥所产生 的加密金钥来加密子数据区块时,则数据伺服器140会在收到已加密数据 区块后确认所使用的时间种子,并且记录非使用正确时间种子所加密的子 数据区块,由此提供后续解密的参考。此外,当发生第一加密模块110未 使用正确的时间种子时,数据伺服器140会再次广播目前所使用的时间种 子给第一加密模块110。
在本发明一范例实施例中,多层级数据加密与解密系统100也包括解 密模块150。在加密才莫块110、 120与130完成子^:据区块的加密,并且所 加密的数据由无线感测器1、 2与3传送至中控装置4的数据伺服器140并 储存的后,使用者11、使用者12或使用者13可通过配置在使用者终端5 的解密才莫块150来读取储存在数据伺服器140中的已加密的子数据区块。 在本实施例中,使用者终端5是通过一有线网路连接至中控装置4。然而, 必须了解的是本发明不限于此,在本发明另一实施例中使用者终端5是通 过一无线网路连接至中控装置4。
解密模块150是用以从数据伺服器140中读取对应使用者(例如,使用 者11、使用者12或使用者13)的层级及其他被授权可读取层级且对应加密 时段的已加密子数据区块。具体来说,在本范例实施例中如上所述较高权 限的使用者可读取分级上授权给较低权限者读取的数据,而较低权限者无 法读取分级上授权给较高权限者才读取的数据,因此数据伺服器140会在 使用使用者金钥确认使用者的身份后依据使用者所属的层级提供相对应被 授权可读取层级的数据。
例如,在本范例实施例中,使用者12通过使用者终端5输入使用者金 钥UI(2来请求读取于加密时段T由第一无线感测器1所已加密的子数据区 块时。由于使用者12属于第二层级,因此数据伺服器140会提供对应第二 层级与第三层级的已加密子数据区块(例如,子数据区块C2与C3)给使用者 终端5的解密模块150。在本发明范例实施例中,数据伺服器140会产生对应使用者所属的层
级的时间金钥,并与已加密子数据区块一起传送给使用者终端5的解密模 块150。例如,数据伺服器140会依据对应所传送已加密子数据区块的时间 种子与时间生成金钥以散列函数来产生最上层级的时间金钥,并且以单向 散列函数链产生对应使用者所属的层级的时间金钥。
解密模块150会依据使用者被授权可读取的层级的层级生成金钥与时 间金钥来产生使用者被授权可读取层级(即第二层级与第三层级)的加密金 钥,并且这些加密金钥来解密所接收的已加密子数据区块。特别是,解密
成金钥与时间金钥。
例如,以上述使用者12通过使用者终端5输入使用者金钥UK2来请求 读取于加密时段T由第一无线感测器1所已加密的子数据区块为例,解密 模块150会依据使用者12的群组金钥K2以及加密所接收的子数据区块的加 密模块(即第一无线感测器l)的识别码IDl来产生第二层级的层级生成金钥 KBID1,2。此外,解密模块150会使用使用者12的群组金钥K2以散列函数来 产生群组金钥K3,并且依据群组金钥K3以及第 一无线感测器1的识别码ID1 来产生第三层级的层级生成金钥KBID1,3。同时,解密模块150会依据从数 据伺服器140中所接收对应使用者12所属的层级(即第二层级)的时间金钥 H(TK咖,T)来产生第三层级的时间金钥H(H(TKID1,T))。基此,解密模块150 会依据使用者12被授权可读取的层级(即第二层级与第三层级)的层级生成 金钥与时间金钥来产生使用者被授权可读取层级的加密金钥。
图2是根据本发明范例实施例绘示多层级数据加密的流程图,并且图3 是根据本发明范例实施例绘示多层级数据解密方法的流程图。
为了方便说明图2与图3的步骤,以下将以一完整的加密与解密范例 来详细描述本范例实施例的加密与解密流程。在此范例中,第一无线感测 器1会将时段T所感测的数据传送给中控装置4,并且之后使用者12请求 从中控装置4中读取于时段T中第一无线感测器1所感测的数据。
请参照图2,在步骤S201中第一无线感测器1的第一加密模块110会 将所感测的数据对应使用者的层级分隔成子数据区块M1、 M2与M3。
在步骤S203中第一加密模块110会根据目前的时间种子SeedT来产生 最上层级(即第一层级)的时间金钥,并且以单向散列函数(即,第四函数)链依序产生第二层级与第三层级的时间金钥,其中数据伺服器140会定期的 广播目前时段的时间种子。
接着,在步骤S205中第一加密模块IIO会依据每一层级的层级生成金 钥与时间金钥来产生每一层级的加密金钥,其中数据伺服器140会根据上 层级的层级生成金钥来产生下层级的层级生成金钥,层级生成金钥的产生 方式已详细描述如上,在此不再重复说明。
在步骤S207中,第一加密模块IIO会以每一层级的加密金钥加密属于 每一层级的子数据区块。
最后,在步骤S209中第一无线感测器模块1会将已加密的子数据区块 Cl、 C2与C3传递给中控装置4,并且在步骤S211中数据伺服器140会储 存这些已加密的子数据区块C1、 C2与C3。
值得一提的是,在多层级数据加密与解密系统100初始化时,数据伺 服器140会将每一无线感测器的加密模块加密数据所需使用的层级生成金 钥与时间生成金钥会传递至每一无线感测器,并且的后会由数据伺服器140 定期地广播新的时间种子,由此每一无线感测器的加密模块可依据上述方 式产生加密数据所需的加密金钥。
接着,请参照图3,在步骤S301中使用者12通过配置解密模块150的 使用者终端请求读取第一无线感测器1于加密时段T所感测的已加密子数 据区块。
在步骤S303中依据使用者12的使用者金钥涯2验证使用者12的身份, 并且确认使用者12所属的层级。
倘若在步骤S303中,判断验证失败时,则结束多层级数据解密的程序。 倘若在步骤S303中判断验证成功时,则在步骤S305中数据伺服器140会 动态地计算出加密时段T所使用的时间种子,以主要金钥与第一无线感测 器1的识别码ID1动态地计算出时间生成金钥,依据时间生成金钥与时间 种子以散列函数(即,第四函数)动态地计算出第一层级的时间金钥,并且以 单向散列函数(即,第五函数)链计算出使用者12所属层级的时间金钥。
在步骤S307中数据伺服器140会将对应使用者12被授权可读取的层 级且对应加密时段T的已加密子数据区块传递至解密模块150。同时,在步 骤S309中数据伺服器140会将使用者12所属层级的时间金钥传送给解密 模块150。在本发明另一实施例中,使用者12所属层级的时间金钥亦可以使用者金钥UK2加密后再传送。
的后,在步骤S311中,解密模块150会依据使用者12(即第二层级)的 群组金钥以散列函数(即,第三函数)来产生第三层级的群组金钥,并且依据 第二层级与第三层级的群组金钥通过第二函数来产生第二层级与第三层级 的层级生成金钥。并且在步骤S313中解密模块150会依据使用者12所属 层级的时间金钥以散列函数(即,第五函数)产生第三层级的时间金钥。
最后,在步骤S315中解密模块150会依据使用者12被授权可读取的 层级(即,第二与第三层级)的层级生成金钥与时间金钥以第一函数来分别地 解密对应的已加密子数据区块。
必须了解的是,在本范例实施中是分别地使用散列函数与加密函数来 实作第一至第七函数以产生使用者金钥、群组金钥、主要金钥、时间种子、 时间生成金钥、层级生成金钥与加密金钥,然而在不违背本发明精神下任 何适合的函数皆可应用于本发明。
综上所述,本发明使用分层级的方式加密数据,由此较高权限的使用 者可读取分级上授权给较低权限者读取的数据,但较低权限者无法读取分 级上授权给较高权限者才读取的数据。此外,本发明使用以时间种子来更 新的时间金钥,使得所加密的数据具有向前与向后的安全保护,并且不需 要进行时间的同步,因此降低加密系统运算的复杂度。再者,本发明是根
金钥产生下层级的时间金钥来产生每一层级的层级生成金钥与时间金钥, 由此降低装置所管理的金钥数,减轻装置的运算负担。
虽然本发明已以较佳实施例揭示如上,然其并非用以限定本发明,本 领域的技术人员在不脱离本发明的精神和范围的前提下可作若干的更动与 润饰,因此本发明的保护范围以本发明的权利要求为准。
权利要求
1.一种多层级数据加密方法,包括将欲被加密的数据对应多个层级分隔成多个子数据区块,其中每一层级对应至少一使用者;依据每一层级的层级生成金钥与时间金钥来产生每一层级的加密金钥;以及以所述层级的加密金钥分别地加密属于所述层级的子数据区块,其中下层级的层级生成金钥与时间金钥是根据上层级的层级生成金钥与时间金钥所产生,并且所述时间金钥是根据一时间生成金钥与一时间种子所产生,其中该时间种子是依据不同的加密时段定期地更新。
2. 如权利要求1所述的多层级数据加密方法,其中依据每一层级的层级 生成金钥与时间金钥来产生每一层级的加密金钥的步骤包括使用 一第 一函 数来产生每一层级的加密金钥。
3. 如权利要求2所述的多层级数据加密方法,还包括 依据每一层级的群组金钥与执行加密所述子数据区块的 一 装置节点的识别码通过一第二函数来产生每一层级生成金钥,并且依据上层级的群组 金钥通过一第三函数来产生下层级的群组金钥,其中最上层级的群组金钥 是以一随机方式来产生;以及依据该时间生成金钥与该时间种子通过一第四函数来产生最上层级的 时间金钥,并且依据上层级的时间金钥以通过第五函数来产生下层级的时 间金钥。
4. 如权利要求3所述的多层级数据加密方法,还包括依据一主要金钥与 该装置节点的识别码通过一第六函数来产生该时间生成金钥。
5. 如权利要求4所述的多层级数据加密方法,还包括依据该主要金钥与 对应该加密时段的识别符以 一第七函数来产生该时间种子。
6. 如权利要求4所述的多层级数据加密方法,还包括以一随机方式来产 生该主要金钥。
7. 如权利要求5所述的多层级数据加密方法,还包括分别地以该主要金 钥与所述使用者的识别码以一第八函数来产生所述使用者的使用者金钥。
8. 如权利要求7所述的多层级数据加密方法,其中该第一函数、该第二函数、该第三函数、该第四函数、该第五函数、该第六函数、该第七函数与该第八函数分别地包括一加密函数、 一散列函数或一 XOR函数。
9. 如权利要求8所述的多层级数据加密方法,其中该加密函数包括一符 合先进加密标准的加密函数或一符合数据加密标准的函数。
10. 如权利要求1所述的多层级数据加密方法,还包括记录未使用最新 更新的该时间种子所加密的所述子数据区块。
11. 一种多层级数据解密方法,包括将对应 一使用者的层级及其他被授权可读取层级且对应 一加密时段的 已加密子数据区块传送给该使用者;该使用者依据该层级及该其他被授权可读取层级的层级生成金钥与时 间金钥来产生该层级及该其他被授权可读取层级的加密金钥;以及以该层级及该其他被授权可读取层级的加密金钥分别地解密对应该使 用者的层级及其他被授权可读取层级的已加密子数据区块,与时间金钥所产生,并且所述时间金钥是根据对应所述已加密子数据区块 的一时间种子与一时间生成金钥所产生,其中该时间种子是依据不同的加 密时段定期地更新。
12. 如权利要求11所述的多层级数据解密方法,其中依据该层级及该其 他被授权可读取层级的层级生成金钥与时间金钥来产生该层级及该其他被 授权可读取层级的加密金钥的步骤包括使用一第一函数来产生该层级及该 其他被授权可读取层级的加密金钥。
13. 如权利要求12所述的多层级数据解密方法,还包括 将该层级及该其他被授权可读取层级的时间金钥提供给该使用者,其中最上层级的时间金钥是依据该时间生成金钥与该时间种子通过一第四函来产生;以及该使用者依据该层级及该其他被授权可读取层级的群组金钥与加密所 述已加密子数据区块的一装置节点的识别码通过一第二函数来产生该层级 及该其他被授权可读取层级的层级生成金钥,其中该使用者依据该层级的群组金钥通过一第三函数来产生该其他被授权可读取层级的群组金钥。
14. 如权利要求13所述的多层级数据解密方法,还包括依据一主要金钥与该装置节点的识别码通过一 第六函数产生该时间生成金钥。
15. 如权利要求14所述的多层级数据解密方法,还包括依据该主要金钥 与对应该加密时段的识别符通过一第七函数产生该时间种子。
16. 如权利要求14所述的多层级数据解密方法,还包括以一随机方式产 生该主要金钥。
17. 如权利要求15所述的多层级数据解密方法,还包括依据该使用者的 使用者金钥验证该使用者的身份,其中该使用者的使用者金钥是依据该主 要金钥与该使用者的识别码通过一第八函数所产生。
18. 如权利要求17所述的多层级数据解密方法,其中该第一函数、该第 二函数、该第三函数、该第四函数、该第五函数、该第六函数、该第七函 数与该第八函数分别地包括一加密函数、 一散列函数或一 XOR函数。
19. 如权利要求18所述的多层级数据解密方法,其中该加密函数包括一 符合先进加密标准的加密函数或 一符合数据加密标准的函数。
20. 如权利要求11所述的多层级数据解密方法,还包括确认所述已加密 子数据区块是否是以对应该加密时段的时间种子来加密。
21. —种多层级数据加密系统,包括一数据伺服器,用以将多个使用者分组为多个层级,并且产生一时间 生成金钥、 一时间种子与每一层级的层级生成金钥,其中该数据伺服器会钥产生下层级的层级生成金钥;以及至少一加密模块,用以接收该时间生成金钥、该时间种子与每一层级 的层级生成金钥,将欲被加密的数据对应所述层级分隔成多个子数据区块, 依据每一层级的层级生成金钥与时间金钥来产生每一层级的加密金钥并且 使用所述层级的加密金钥分别地加密属于所述层级的子数据区块,其中该层级的时间金钥产生下层级的时间金钥。
22. 如权利要求21所述的多层级数据加密系统,其中该加密模块还包括 依据每一层级的层级生成金钥与时间金钥使用 一第一函数来产生每一层级 的加密金钥。
23. 如权利要求21所述的多层级数据加密系统,其中该数据伺服器会储 存该加密模块所加密的所述子数据区块。
24. 如权利要求22所述的多层级数据加密系统,其中该数据伺服器会以 一随机方式来产生最上层级的群组金钥,依据上层级的群组金钥通过一第 二函数来产生下层级的群组金钥,并且依据每一层级的群组金钥与该加密 模块的识别码通过一第三函数来产生每一层级生成金钥,以及该加密模块会依据该时间生成金钥与该时间种子以通过第四函数来产 生最上层级的时间金钥,并且依据上层级的时间金钥通过一第五函数来产 生下层级的时间金钥。
25. 如权利要求24所述的多层级数据加密系统,其中该数据伺服器会依 据一主要金钥与配置该加密模块的装置节点的识别码通过一第六函数来产 生该时间生成金钥。
26. 如权利要求25所述的多层级数据加密系统,其中该数据伺服器会依 据该主要金钥与对应该加密时段的识别符以 一 第七函数来产生该时间种 子。
27. 如权利要求25所述的多层级数据加密系统,其中该数据伺服器以一 随机方式来产生该主要金钥。
28. 如权利要求26所述的多层级数据加密系统,其中该数据伺服器分别 地以该主要金钥与所述使用者的识别码以 一第八函数来产生所述使用者的 使用者金钥。
29. 如权利要求28所述的多层级数据加密系统,其中该第一函数、该第 二函数、该第三函数、该第四函数、该第五函数、该第六函数、该第七函 数与该第八函数分别地包括一加密函数、 一散列函数或一 XOR函数。
30. 如权利要求29所述的多层级数据加密系统,其中该加密函数包括一 符合先进加密标准的加密函数或一符合数据加密标准的函数。
31. 如权利要求21所述的多层级数据加密系统,该数据伺服器会记录未 使用最新更新的该时间种子所加密的所述子数据区块。
32. —种多层级数据解密系统,包括 一数据伺服器,储存多个已加密子数据区块;以及一解密模块,用以从该数据伺服器中读取对应 一使用者的层级及其他 被授权可读取层级且对应 一加密时段的已加密子数据区块,依据该层级与 该其他被授权可读取层级的层级生成金钥与时间金钥来产生该层级与该其 他被授权可读取层级的加密金钥,并且以该层级与该其他被授权可读取层级的加密金钥解密所述已加密子数据区块,其中下层级的层级生成金钥与其中该数据伺服器会根据对应所述已加密子数据区块的 一 时间种子与 一时间生成金钥产生与提供对应该层级与该加密时段的时间金钥给该解密 模块,其中该时间种子是依据不同的加密时段所产生。
33. 如权利要求32所述的多层级数据解密系统,其中该解密模块还包括 依据该层级与该其他被授权可读取层级的层级生成金钥与时间金钥使用一 第一函数来产生该层级及该其他被授权可读取层级的加密金钥。
34. 如权利要求33所述的多层级数据解密系统,其中该数据伺服器会依 据该时间生成金钥与该时间种子通过一第四函数来产生最上层级的时间金 钥,并且通过一第五函数产生对应该层级的时间金钥。
35. 如权利要求34所述的多层级数据解密系统,其中该解密模块会依据 该层级的时间金钥通过该第五函数产生该其他被授权可读取层级的时间金 钥;以及该解密模块会依据该层级及该其他被授权可读取层级的群组金钥与加 密所述已加密子数据区块的一装置节点的识别码通过一第二函数来产生该 层级及该其他被授权可读取层级的层级生成金钥,其中该其他被授权可读 取层级的群组金钥是依据该层级的群组金钥通过一第三函数来产生。
36. 如权利要求35所述的多层级数据解密系统,其中该数据伺服器会依 据一主要金钥与该装置节点的识別码通过一第六函数来产生该时间生成金 钥。
37. 如权利要求36所述的多层级数据解密系统,其中该数据伺服器会依 据该主要金钥与对应该加密时段的识別符通过一第七函数来产生该时间种 子。
38. 如权利要求36所述的多层级数据解密系统,其中该数据伺服器的金 钥产生单元会以一随机方式来产生该主要金钥。
39. 如权利要求37所述的多层级数据解密系统,其中该数据伺服器会依 据该使用者的使用者金钥验证该使用者的身份,其中该使用者的使用者金 钥是依据该主要金钥与该使用者的识别码通过一第八函数所产生。
40. 如权利要求39所述的多层级数据解密系统,其中该第一函数、该第 二函数、该第三函数、该第四函数、该第五函数、该第六函数、该第七函数与该第八函数分别地包括一加密函数、 一散列函数或一 XOR函数。
41 .如权利要求40所述的多层级数据解密系统,其中该加密函数包括一符合先进加密标准的加密函数或 一符合数据加密标准的函数。
42.如权利要求32所述的多层级数据解密系统,其中该数据伺服器会确认所述已加密子数据区块是否是以对应该加密时段的时间种子来加密。
全文摘要
本发明提出一种多层级数据加解密系统与方法,此加密方法包括将数据对应使用者的层级分隔成多个子数据区块。此方法也包括依据每一层级的层级生成金钥与时间金钥来产生每一层级的加密金钥,以及以每一层级的加密金钥分别地加密属于每一层级的子数据区块,其中下层级的层级生成金钥与时间金钥是根据上层级的层级生成金钥与时间金钥所产生,并且时间金钥是根据时间生成金钥与时间种子所产生,其中时间种子是依据不同的加密时段定期地更新。因此,能够在管控不同使用者的读取权限且具向前与向后的数据安全下减少使用者所需管理的金钥数目。
文档编号H04L9/32GK101635623SQ20081013371
公开日2010年1月27日 申请日期2008年7月25日 优先权日2008年7月25日
发明者邓博元, 黄士一 申请人:财团法人工业技术研究院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1