一种生成传输密钥的装置及方法

文档序号:7747688阅读:105来源:国知局
专利名称:一种生成传输密钥的装置及方法
技术领域
本发明涉及网络安全技术领域,尤其涉及一种生成传输密钥的装置及方法,生成的传输密钥配合对称加密算法,可以实现安全的加密数据传输。
背景技术
高涉密级行业经常涉及大量的私密信息传输场景,需要使用安全传输协议和安全 网络环境。在使用安全传输协议和安全网络环境的同时,目前广泛应用的是对称密码加密 方法来传输私密信息,比如3DES等。在使用对称加密方法时,生成传输密钥的算法是实现的核心;而如何生成与保存 传输密钥则是加密方法安全强度和实现性能的根本保证。一个好的密钥实现方案,应该具 备以下特点保证传输过程中密钥完全保密,能够便捷的及时更新密钥,能够抵御常见的攻 击方法等。目前的大多密钥传输系统,采用了各种各样的安全传输算法和通讯通道以及协商 机制,但是都基于一个共同点需要事先产生一个密钥,同时此密钥需要保存在双方服务器 一定长的时间用于后续应用。一旦在这段时间内被攻击者获取到密钥,后续通讯内容就完 全暴露了,所以,为了避免这种风险,大多数密钥传输系统都要求周期更换密钥以尽可能的 减少暴露后带来的损失。但是这种做法必定不能完全规避风险,而且更换一次密钥需要重 新生成、协商以及传输过程,太过频繁会很大程度的提高实现成本。

发明内容
(一)要解决的技术问题有鉴于此,本发明的主要目的在于提供一种生成传输密钥的装置及方法,以提高 传输密钥的安全性,降低基于对称加密算法传输系统的密钥被破解或窃取的风险。( 二 )技术方案为达到上述目的,本发明提供了一种生成传输密钥的装置,该装置包括通过网络 相互耦合连接的密钥控件派发装置1、信息发送装置2和信息接收装置3,其中密钥控件派发装置1,是作为通讯双方的信息发送装置2和信息接收装置3的第三 方,产生密钥控件和密钥控件信息,该密钥控件包含有交互密钥生成算法和传输密钥生成 算法,将该密钥控件信息添加到该密钥控件,并发送给信息发送装置2和信息接收装置3 ;信息发送装置2和信息接收装置3,均是一个web服务器,接收由密钥控件派发装 置1发送的密钥控件,分别根据密钥控件中被添加的控件信息对所接收的密钥控件进行认 证,并分别利用密钥控件中的交互密钥生成算法生成控件生成各自的交互密钥,再使用校 验码、时间戳以及认证信息组成交互密钥信息包,然后将所述交互密钥信息包传输给对方, 在分别收到对方的交互密钥信息包后,利用本地私钥和接收到的对方的交互密钥,通过调 用传输密钥生成控件中的传输密钥生成算法生成各自的传输密钥,该两个传输密钥相等; 最后,各自利用生成的传输密钥对需要传输的信息进行加解密。
上述方案中,所述密钥控件派发装置1包括相互连接的控件信息生成单元11和密 钥控件生成单元12,其中控件信息生成单元11,产生密钥控件信息,该密钥控件信息至少包括安全控制 ID、版本号和控件使用期限。密钥控件生成单元12,抽用各种算法生成密钥控件,该密钥控件包括交互密钥生 成算法控件和传输密钥生成算法控件。上述方案中,所述信息发送装置2或信息接收装置3均包括私钥生成单元201、交互密钥生成单元202、传输密钥生成单元203、签名信息认证单元204、校验码认证单元205、 时间戳校验单元206、数据保存清理单元207、信息发送单元208和主控单元209,且私钥生 成单元201、交互密钥生成单元202、传输密钥生成单元203、签名信息认证单元204、校验码 认证单元205、时间戳校验单元206、数据保存清理单元207和信息发送单元208均连接于 主控单元209。上述方案中,所述主控单元209接收来自密钥控件派发装置1的数据,并协调内部 私钥生成单元201、交互密钥生成单元202、传输密钥生成单元203、签名信息认证单元204、 校验码认证单元205、时间戳校验单元206、数据保存清理单元207和信息发送单元208完 成密钥生成、交互以及认证工作。上述方案中,所述私钥生成单元201生成本地私钥,并提供给主控单元209,作为 交互密钥生成单元的输入。上述方案中,所述交互密钥生成单元202从主控单元209接收密钥控件派发装置 1发送来的交互密钥生成控件F(X),将所述私钥生成单元201生成的本地私钥作为输入,生 成交互密钥。上述方案中,所述传输密钥生成单元203从主控单元209接收密钥控件派发装置 1发送来的交互密钥生成控件G (X,Y),利用对方装置发送来的已生成的对方交互密钥和本 地私钥信息,生成传输密钥。上述方案中,所述签名信息认证单元204验证交互信息中的签名数据,密钥控制 派发装置1在提供两种密钥生成控件时均加入了控件信息,签名信息认证单元204使用公 知的密钥控件派发装置的签名公钥对两种加密后的密钥生成控件进行解密,只有来自合法 密钥控制派发装置的控件才可以解出正确明文,解出明文后首先验证身份ID是否正确,然 后判断当前日期是否在控件有效范围内,最后获取版本信息用作后续交互确认控件一致 性。上述方案中,所述签名信息认证单元204进一步在向对方装置发送交互密钥前, 先使用自身的签名私钥对交互密钥信息包进行加密,在接收到对方的交互密钥信息包之后 才能使用公知的对方签名公钥解密交互信息包,然后交由主控单元209分发处理。上述方案中,所述校验码认证单元205调用自身包含的某种校验码算法对已生成 的交互密钥信息包增加检验码信息,以保证形成更安全的交互密钥信息包,其中校验码认 证单元205包含有多种校验码算法,该校验码算法至少是CRC校验算法或奇偶校验算法。上述方案中,所述校验码认证单元205进一步从主控单元209接收对方装置发送 来的交互密钥信息包,并对其校验码进行验证。上述方案中,所述时间戳认证单元206认证密钥交互传输包是否已经失效,并根据包内时间戳信息与各自系统的本地时间进行比较,判断是否超时以防止简单的重放攻击。上述方案中,所述数据保存清理单元207保存密钥交互期间的临时数据以及交互 结束后的数据清理工作。上述方案中,所述数据保存清理单元207还包括一个对称加密模块,所述主控单 元209将临时数据存入本单元之前,首先通过该对称加密模块调用主控单元209的签名密 钥对临时信息进行加密,以密文模式放入数据保存清理单元进行安全的存储,当其他单元 需要调用临时信息时先通过该对称加密模块解密密文,从而获取明文信息交付其他单元使用。上述方案中,所述信息发送单元208从主控单元209获取待发送的交互密钥信息 包。为达到上述目的,本发明还提供了一种生成传输密钥的方法,该方法包括密钥控件派发装置1产生密钥控件和密钥控件信息,将该密钥控件信息添加到该 密钥控件,并将形成的密钥控件发送给信息发送装置2和信息接收装置3 ;信息发送装置2和信息接收装置3接收该密钥控件,分别根据密钥控件中被添加 的控件信息对所接收的密钥控件进行认证;信息发送装置2和信息接收装置3分别生成各自的交互密钥,再使用校验码、时间 戳以及认证信息组成交互密钥信息包,然后将该交互密钥信息包传输给对方;在信息发送装置2和信息接收装置3分别收到对方的交互密钥信息包后,利用本 地私钥和接收到的对方的交互密钥,通过调用传输密钥生成控件中的传输密钥生成算法生 成各自的传输密钥,该两个传输密钥相等。上述方案中,所述密钥控件派发装置1产生密钥控件和密钥控件信息,并对产生 的密钥控件进行加密,包括密钥控件派发装置1产生密钥控件和密钥控件信息,该密钥控 件包含有交互密钥生成算法和传输密钥生成算法,将该密钥控件信息添加到该密钥控件, 并使用签名私钥对添加了密钥控件信息的交互密钥生成算法和传输密钥生成算法进行加密。上述方案中,所述信息发送装置2和信息接收装置3分别生成各自的交互密钥,再 使用校验码、时间戳以及认证信息组成交互密钥信息包,包括信息发送装置2和信息接收 装置3分别在本地生成私钥,并分别利用密钥控件中的交互密钥生成算法生成各自的交互 密钥,再使用校验码、时间戳以及认证信息组成交互密钥信息包。上述方案中,该方法在生成各自的传输密钥后还包括信息发送装置2和信息接 收装置3各自利用生成的传输密钥对需要传输的信息进行加解密。(三)有益效果从上述技术方案可以看出,本发明提供的这种生成传输密钥的装置及方法,可以 广泛用于使用对称密钥加密算法交互细密信息的应用场景,实现安全的密钥交互,其优点 体现在如下方面1、防截取攻击在交互信道,即使攻击者截获了交互密钥Ka和Kb,但是,因为各自 的随机密钥a,b是不再网络中通讯的,攻击者无法获取。同时进一步保证F(X) =Y算法是 不可逆的,则a和b也无法通过计算获得,可以保证传输密钥K的安全。
2、密钥更换由于双方的随机密钥a和b都是每次交互前随机生成的,也就使得实际的交互密钥或者传输密钥每次也都是随机变化的,从而避免了密钥长时间使用带来的泄 漏风险。3、防重放,防阻塞通过将交互密钥组成信息包,添加校验码和时间戳可以起到防 重放防阻塞的作用。


图1是本发明提供的生成传输密钥装置的结构示意图;图2是密钥控件派发装置的结构示意图;图3是信息发送装置和信息接收装置的结构示意图;图4是依照本发明第一个实施例生成传输密钥的方法流程图;图5是依照本发明第二个实施例生成传输密钥的方法流程图;图6是交互密钥信息包的结构示意图。
具体实施例方式为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照 附图,对本发明进一步详细说明。本发明的技术核心是,传输密钥是由通讯双方根据本方产生的私钥和对方传输过 来的交互密钥,通过第三方派发的传输密钥生成算法共同生成,即使对方传输过来的交互 密钥在网络中被截取也无法单独生成传输密钥,所述第三方派发的传输密钥生成算法使得 双方使用的算法一致,并且在双方本地生成的传输密钥相等,从而达到对称加密算法的效 果。双方的本地私钥通过随机生成,使用一次就失效,保证了传输密钥即使被窃取或破解也 不会对下一次传输造成影响。传输密钥生成算法由第三方派发,对于通讯双方透明且一致, 可以是每次重新派发,或者是定期、不定期派发,还可以是随机派发,进一步提升交互密钥 和传输密钥的安全。图1是本发明提供的生成传输密钥装置的结构示意图,该装置包含密钥控件派发 装置1、信息发送装置2和信息接收装置3,且密钥控件派发装置1、信息发送装置2和信息 接收装置3通过网络相互耦合连接。所述密钥控件派发装置1是通讯双方公认的第三方,可以是一个PC服务器或主 机,用于产生密钥控件和密钥控件信息(密钥控件包括交互密钥生成算法控件和传输密钥 生成算法控件,密钥控件信息包括安全控制ID、版本号和控件使用期限等),将该密钥控件 信息添加到该密钥控件,形成包含有交互密钥生成算法以及传输密钥生成算法的密钥控 件,然后发送给信息发送装置2和信息接收装置3。如图2所示,图2是密钥控件派发装置的结构示意图。密钥控件派发装置1包括 控件信息生成单元11和密钥控件生成单元12。所述控件信息生成单元11用于产生密钥控 件信息,该密钥控件信息包括安全控制ID、版本号和控件使用期限等。所述密钥控件生成单 元12,用于抽用各种算法生成密钥控件,该密钥控件包括交互密钥生成算法控件和传输密 钥生成算法控件。所述信息发送装置2和信息接收装置3,均可以是一个web服务器,用于接收由密钥控件派发装置1发送的密钥控件,分别根据密钥控件中被添加的控件信息对所接收的密 钥控件进行认证,并分别利用密钥控件中的交互密钥生成算法生成各自的交互密钥,再使 用校验码、时间戳以及认证信息组成交互密钥信息包,以保证所交互的密钥信息的完整性 和准确性,然后将所述交互密钥信息包传输给对方。所述交互密钥信息包组成见图6。
信息发送装置2和信息接收装置3在分别收到对方的交互密钥信息包后,对信息 包数据合法性进行认证,认证通过后利用本地私钥和接收到的对方的交互密钥,通过调用 传输密钥生成控件中的传输密钥生成算法生成各自的传输密钥,该两个传输密钥相等。最 后,信息发送装置2和信息发送装置3利用生成的传输密钥对需要传输的信息进行加解密。图3是信息发送装置和信息接收装置的结构示意图,信息发送装置2和信息接收 装置3均包含私钥生成单元201、交互密钥生成单元202、传输密钥生成单元203、签名信息 认证单元204、校验码认证单元205、时间戳校验单元206、数据保存清理单元207、信息发送 单元208和主控单元209。所述主控单元209用于接收来自密钥控件派发装置1的数据,并协调内部各功能 单元完成密钥生成、交互以及认证等工作。所述私钥生成单元201,用于生成本地私钥,并提供给主控单元209,作为交互密 钥生成单元的输入。例如,该单元内部在符合密钥强度的数值区间中可随机产生一个密钥 数值,即私钥,并提供给主控单元209,同时将这个私钥加入作废列表,后续不再使用,且作 废列表定期清空。所述交互密钥生成单元202 负责从主控单元209接收密钥控件派发装置1发送 来的交互密钥生成控件F (X),将上述私钥生成单元201生成的本地私钥作为输入,生成交 互密钥。所述传输密钥生成单元203 负责从主控单元209接收密钥控件派发装置1发送 来的交互密钥生成控件G (X,Y),利用对方装置发送来的已生成的对方交互密钥和本地私钥 信息,从而生成传输密钥。所述签名信息认证单元204 用于验证交互信息中的签名数据,密钥控制派发装 置1在提供两种密钥生成控件时,均加入了控件信息,签名信息认证单元204使用公知的密 钥控件派发装置的签名公钥对两种加密后的密钥生成控件进行解密,只有来自合法密钥控 制派发装置的控件才可以解出正确明文,解出明文后首先验证身份ID是否正确,然后判断 当前日期是否在控件有效范围内,最后获取版本信息用作后续交互确认控件一致性。同时,所述签名信息认证单元204还负责在向对方装置发送交互密钥前,先使用 自身的签名私钥对交互密钥信息包进行加密,从而在接收到对方的交互密钥信息包之后才 能使用公知的对方签名公钥解密交互信息包,然后交由主控单元209分发处理。所述校验码认证单元205 包含有多种校验码算法,所述校验码算法可以是CRC校 验算法,奇偶校验算法等。该单元负责调用某种校验码算法对已生成的交互密钥信息包增 加检验码信息以保证形成更安全的交互密钥信息包;进一步,所述校验码认证单元205还 负责从主控单元209接收对方装置发送来的交互密钥信息包,并对其校验码进行验证。所述时间戳认证单元206 用于认证密钥交互传输包是否已经失效,并根据包内 时间戳信息与各自系统的本地时间进行比较,判断是否超时以防止重放攻击。所述数据保存清理单元207 用于保存密钥交互期间的临时数据以及进行交互结束后的数据清理工作;进一步,数据保存清理单元207还可以增加一个简单的对称加密模 块,主控单元209将临时数据存入本单元之前,首先通过所述对称加密模块调用主控单元 的签名密钥将临时信息进行加密,以密文模式放入数据保存清理单元进行安全的存储,当 其他单元需要调用临时信息时需要先通过此对称加密模块解密密文,从而获取明文信息, 才能交付其他单元使用。此装置可以保证每次使用的私钥、交互密钥以及传输密钥的安全 性,防止在应用过程中被窃取。所述信息发送单元208 用于从主控单元209获取待发送的交互密钥信息包。基于图1至图3所示的生成传输密钥的装置,本发明还提供了一种生成传输密钥的方法,该方法包括以下步骤步骤1 密钥控件派发装置1产生密钥控件和密钥控件信息,将该密钥控件信息添 加到该密钥控件,并将形成的密钥控件发送给信息发送装置2和信息接收装置3 ;步骤2 信息发送装置2和信息接收装置3接收该密钥控件,分别根据密钥控件中 被添加的控件信息对所接收的密钥控件进行认证;步骤3 信息发送装置2和信息接收装置3分别生成各自的交互密钥,再使用校验 码、时间戳以及认证信息组成交互密钥信息包,然后将该交互密钥信息包传输给对方;步骤4 在信息发送装置2和信息接收装置3分别收到对方的交互密钥信息包后, 利用本地私钥和接收到的对方的交互密钥,通过调用传输密钥生成控件中的传输密钥生成 算法生成各自的传输密钥,该两个传输密钥相等。其中,步骤1中所述密钥控件派发装置1产生密钥控件和密钥控件信息,并对产生 的密钥控件进行加密,包括密钥控件派发装置1产生密钥控件和密钥控件信息,该密钥控 件包含有交互密钥生成算法和传输密钥生成算法,将该密钥控件信息添加到该密钥控件, 并使用签名私钥对添加了密钥控件信息的交互密钥生成算法和传输密钥生成算法进行加
Γ t [ O步骤3中所述信息发送装置2和信息接收装置3分别生成各自的交互密钥,再使 用校验码、时间戳以及认证信息组成交互密钥信息包,包括信息发送装置2和信息接收装 置3分别在本地生成私钥,并分别利用密钥控件中的交互密钥生成算法生成各自的交互密 钥,再使用校验码、时间戳以及认证信息组成交互密钥信息包。 另外,该方法在步骤4生成各自的传输密钥后还包括信息发送装置2和信息接收 装置3各自利用生成的传输密钥对需要传输的信息进行加解密。下面结合图4和图5对本发明提供的生成传输密钥的方法做进一步的详细说明。图4是依照本发明第一个实施例生成传输密钥的方法流程图,本实施例以一个简 单的交互作为例子,双方指的是信息发送装置2和信息接收装置3,其具体步骤如下步骤401 提出操作请求;步骤402 密钥控件派发装置1调用控件信息生成单元11,生成包括安全控制ID、 版本号和控件使用期限的控件信息,并调用密钥控件生成单元12,选取两种密钥生成控件 算法,例如F(X) =64X*G(X,Y) =X*Y,分别生成交互密钥生成控件和传输密钥生成控件, 再将控件信息加至已生成上述两种密钥生成控件,然后加上密钥控件派发装置1的私钥进 行签名,最终形成密钥生成控件信息包,派发至信息发送装置2和信息接收装置3 ;所述的 控件信息包括安全控制ID,例如“NCAA. Ltd. co.安全部”、版本号,例如“2. 0. 3”、控件使用期限,例如“2009-12-01 to 2010-02-01”;步骤403 双方主控单元209调用各自的签名信息认证单元204,分别根据密钥控 件派发装置1派发的密钥控件信息包根据已知的密钥控件派发装置1的公钥在本地进行解 密,获取控件认证信息,所述已获取控件认证信息包括安全控制ID“NCAA. Ltd. CO.安全部”、 版本号 “2. 0.3”、控件使用期限 “2009-12-01 to 2010-02-01”;步骤404 双方主控单元209对所述控件认证信息进行合法性校验,通过验证安全 控制ID确认接收到的信息是否为已约定的第三方ID内容、通过验证控件使用期限确认各 自装置本地的系统时间是否在接收到的控件使用期限之内;若验证通过,则进入步骤406, 若验证未通过,交易中断,进入步骤405 ;步骤405 交易中断,校验未通过一方的主控单元209调用信息发送单元208向密 钥控件派发装置发出重新发送的通知,结束;步骤406 验证通过,信息发送装置2的主控单元209调用信息发送单元208向信 息接收装置3发起密钥交互请求;步骤406在验证通过后还包括双方主控单元209调用数 据保存清理单元204,用于保存接收到的控件信息包中的密钥控件算法信息,以保证信息的 安全性;步骤407 信息接收装置3确认接收到的请求,并与信息发送装置2建立SSL连 接;步骤408 双方SSL连接建立后,对控件版本信息进行交互;步骤409 双方验证交互的版本信息是否一致,若一致,则验证通过,进行下一步; 若不一致,则交易中断,双方通知各自主控单元209联系密钥控件派发装置1进行重发,结 束;步骤410 —致性验证通过后,双方主控单元209分别调用各自私钥生成单元201 生成本地私钥,此实例中取私钥数值分别为a = 923和b = 672,主控单元209再分别调用 数据保存清理单元207以保证随机密钥a和b保存到本单元的安全区域内从而保证私钥的 安全性;步骤411 双方主控单元209分别调用数据保存清理单元204中的交互密钥算 法控件,使用控件中的算法F(X) = 64*X,根据已经生成的本地私钥分别生成各自的交 互密钥数Ka = 64*a = 59072和Kb = 64*b = 43008,再调用交互密钥生成单元202,将 时间戳添加至交互密钥Ka和Kb,然后调用校验码认证单元205,使用其中的“奇偶校验 算法”生成校验码,以一方为例将Ka= 59072和时间戳200912122048各位相加求和,5 +9+0+7+2+2+0+0+9+1+2+1+2+2+0+4+8 = 54,是偶数所以其奇偶校验码为0,同理可以计 算出另一方奇偶校验码为1,最后再补充控件版本信息组成各自的密钥交互信息包A = 59027 I 200912122048 | 0 | 2. 0. 3 和 B = 43008 | 200912122048 111 2. 0. 3,最后对各自的信息包 进行签名;步骤412 双方主控单元209调用各自信息发送单元208,并通过已建立的SSL通信连接对密钥交互信息包明文数据进行交换;步骤413 双方主控单元209调用数据保存清理单元将接收到的对方交互信息包 明文数据进行存储以保证信息的安全性,再在本地对密钥交互信息进行解密从而获取交互 信息包中密文数据;
步骤414 双方主控单元209分别调用各自校验码认证单元205和时间戳校验单 元206对保存在数据保存清理单元207的密文数据进行奇偶校验和时间戳校验,校验通过 则进行下一步交易,若校验未通过,则调用信息发送单元208联系密钥控件派发装置1进行 重发,结束;进一步的,所述步骤414中的奇偶校验具体步骤为双方主控单元209调用校验码 认证单元205按照步骤411所述奇偶校验方法对接收到的数据进行奇偶校验,通过后主控 单元209再调用时间戳校验单元206对密钥交互信息包的时间戳200912122048与当前系 统时间进行比较,若时间戳所示时间大于当前系统时间1分钟以上则判断为超时,拒绝进一步交易;步骤415 双方主控单元209调用数据保存清理单元207,从中取出各自的私钥a =923和b = 672,以及对方传输过来的交互密钥,调用传输密钥生成控件203,例如G (X,Y) =X*Y算出最终的传输密钥K,此实施例中K = a*Kb = 923*43008 = 39696384和K = b*Ka =672*59072 = 39696384 ;步骤416 双方主控单元209分别调用数据发送单元208,用所述步骤415中生成 的传输密钥将需要传输的数据进行加密后发送给信息接受装置3 ;步骤417:结束。图5是依照本发明第二个实施例生成传输密钥的方法流程图。本实施例以另一种 算法Diffie-Hellman (简称DH算法——一种公开的非对称加密算法,属于公钥密码体制) 进一步说明本发明生成传输密钥的方法。同上述第一个实施例,双方指的是信息发送装置 2和信息接收装置3,其具体包括以下步骤步骤501 提出操作请求;步骤502 密钥控件派发装置1调用控件信息生成单元11,生成包括安全控制ID、版本号和控件使用期限的控件信息,并调用密钥控件生成单元12,选取两种密钥 生成控件算法,例如F(X) = gx mod n(l < g< n,且g和η需为较大的质数)和G(X, Y) =Yx mod n,分别生成交互密钥生成控件和传输密钥生成控件,再将控件信息加至已 生成上述两种密钥生成控件,然后加上密钥控件派发装置1的私钥进行签名,最终形成 密钥生成控件信息包,派发至信息发送装置2和信息接收装置3 ;所述的控件信息包括 安全控制ID,例如“FIFA. ACCA. COM. hk.,,、版本号,例如“V+2. 7. 0,,、控件使用期限,例如 “2010-01-28to2010-02-10”。步骤503 双方主控单元209调用各自的签名信息认证单元204,分别根据密钥控件派发装置1派发的密钥控件信息包根据已知的密钥控件派发装置1的公钥在本地进行解 密,获取控件认证信息,所述已获取控件认证信息包括安全控制ID“FIFA. ACCA. COM. hk”、版 本号 “V+2. 7. 0”、控件使用期限 “2010-01-28to2010-02-10,,;步骤504 双方主控单元209对所述控件认证信息进行合法性校验,通过验证安全控制ID确认接收到的信息是否为已约定的第三方ID内容、通过验证控件使用期限确认各 自装置本地的系统时间是否在接收到的控件使用期限之内;若验证通过,则进入步骤506, 若验证未通过,交易中断,进入步骤505 ;步骤505 交易中断,校验未通过一方的主控单元209调用信息发送单元208向密 钥控件派发装置发出重新发送的通知,结束;
步骤506 验证通过,信息发送装置2的主控单元209调用信息发送单元208向信 息接收装置3发起密钥交互请求;步骤506在验证通过后还包括双方主控单元209调用数 据保存清理单元204,用于保存接收到的控件信息包中的密钥控件算法信息,以保证信息的 安全性;步骤507 信息接收装置3确认接收到的请求,并与信息发送装置2建立SSL连 接;步骤508 双方SSL连接建立后,对控件版本信息进行交互;步骤509 双方验证交互的版本信息是否一致,若一致,则验证通过,进行下一步; 若不一致,则交易中断,双方通知各自主控单元209联系密钥控件派发装置1进行重发,结 束;步骤510 —致性验证通过后,双方主控单元209分别调用各自私钥生成单元201 生成本地私钥,此实例中取私钥数值分别为a = e和b = f,主控单元209再分别调用数据 保存清理单元207以保证随机密钥a和b保存到本单元的安全区域内从而保证私钥的安全 性;步骤511 双方主控单元209分别调用数据保存清理单元204中的交互密钥算法 控件,使用控件中的算法F(X) = gx mod n(l < g < n,且g和η需为较大的质数),根据已 经生成的本地私钥分别生成各自的交互密钥数Ka = ge mod n和Kb = gf mod n,再调用交 互密钥生成单元202,将时间戳添加至交互密钥Ka和Kb,然后调用校验码认证单元205,使 用其中的任意一种校验码生成算法生成校验码,最后再补充控件版本信息组成各自的密钥 交互信息包 A = ge mod η | 201001051357 11 和 B = gf mod η | 201001051357 | 0,最后对各自 的信息包进行签名;步骤512 双方主控单元209调用各自信息发送单元208,并通过已建立的SSL通 信连接对密钥交互信息包明文数据进行交换;步骤513 双方主控单元209调用数据保存清理单元将接收到的对方交互信息包 明文数据进行存储以保证信息的安全性,再在本地对密钥交互信息进行解密从而获取交互 信息包中密文数据;步骤514 双方主控单元209分别调用各自校验码认证单元205和时间戳校验单 元206对保存在数据保存清理单元207的密文数据进行奇偶校验和时间戳校验,校验通过 则进行下一步交易,若校验未通过,则调用信息发送单元208联系密钥控件派发装置1进行 重发,结束;进一步的,所述步骤514所述奇偶校验具体步骤为双方主控单元209调用校验码 认证单元205按照步骤511所述奇偶校验方法对接收到的数据进行奇偶校验,通过后主控 单元209再调用时间戳校验单元206对密钥交互信息包的时间戳201001051357与当前系 统时间进行比较,若时间戳所示时间大于当前系统时间1分钟以上则判断为超时,拒绝进
一步交易;步骤515 双方主控单元209调用数据保存清理单元207,从中取出各自的私钥a =e和b = f,以及对方传输过来的交互密钥,调用传输密钥生成控件203,例如G (X,Y) = Yx mod n,算出最终的传输密钥K,此实施例中K = [Kb]a mod η = [gf mod n]e mod η = (gf) emod n, = gf*emod η 禾口 K = [Kjb modn = [ge mod n]f mod η = (ge)fmod n, = ge*fmod η ;
步骤516 双方主控单元209分别调用数据发送单元208,用所述步骤417中生成 的传输密钥将需要传输的数据进行加密后发送给信息接受装置3 ; 步骤517:结束。以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详 细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡 在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保 护范围之内。
权利要求
一种生成传输密钥的装置,其特征在于,该装置包括通过网络相互耦合连接的密钥控件派发装置(1)、信息发送装置(2)和信息接收装置(3),其中密钥控件派发装置(1),是作为通讯双方的信息发送装置(2)和信息接收装置(3)的第三方,产生密钥控件和密钥控件信息,该密钥控件包含有交互密钥生成算法和传输密钥生成算法,将该密钥控件信息添加到该密钥控件,并发送给信息发送装置(2)和信息接收装置(3);信息发送装置(2)和信息接收装置(3),均是一个web服务器,接收由密钥控件派发装置(1)发送的密钥控件,分别根据密钥控件中被添加的控件信息对所接收的密钥控件进行认证,并分别利用密钥控件中的交互密钥生成算法生成各自的交互密钥,再使用校验码、时间戳以及认证信息组成交互密钥信息包,然后将所述交互密钥信息包传输给对方,在分别收到对方的交互密钥信息包后,利用本地私钥和接收到的对方的交互密钥,通过调用传输密钥生成控件中的传输密钥生成算法生成各自的传输密钥,该两个传输密钥相等;最后,各自利用生成的传输密钥对需要传输的信息进行加解密。
2.根据权利要求1所述的生成传输密钥的装置,其特征在于,所述密钥控件派发装置 (1)包括相互连接的控件信息生成单元(11)和密钥控件生成单元(12),其中控件信息生成单元(11),产生密钥控件信息,该密钥控件信息至少包括安全控制ID、 版本号和控件使用期限。密钥控件生成单元(12),抽用各种算法生成密钥控件,该密钥控件包括交互密钥生成 算法控件和传输密钥生成算法控件。
3.根据权利要求1所述的生成传输密钥的装置,其特征在于,所述信息发送装置(2) 或信息接收装置(3)均包括私钥生成单元(201)、交互密钥生成单元(202)、传输密钥生成 单元(203)、签名信息认证单元(204)、校验码认证单元(205)、时间戳校验单元(206)、数据 保存清理单元(207)、信息发送单元(208)和主控单元(209),且私钥生成单元(201)、交互 密钥生成单元(202)、传输密钥生成单元(203)、签名信息认证单元(204)、校验码认证单元 (205)、时间戳校验单元(206)、数据保存清理单元(207)和信息发送单元(208)均连接于主 控单元(209)。
4.根据权利要求3所述的生成传输密钥的装置,其特征在于,所述主控单元(209)接 收来自密钥控件派发装置(1)的数据,并协调内部私钥生成单元(201)、交互密钥生成单元 (202)、传输密钥生成单元(203)、签名信息认证单元(204)、校验码认证单元(205)、时间戳 校验单元(206)、数据保存清理单元(207)和信息发送单元(208)完成密钥生成、交互以及 认证工作。
5.根据权利要求3所述的生成传输密钥的装置,其特征在于,所述私钥生成单元(201) 生成本地私钥,并提供给主控单元(209),作为交互密钥生成单元的输入。
6.根据权利要求3所述的生成传输密钥的装置,其特征在于,所述交互密钥生成单元(202)从主控单元(209)接收密钥控件派发装置(1)发送来的交互密钥生成控件F(X)Jf 所述私钥生成单元(201)生成的本地私钥作为输入,生成交互密钥。
7.根据权利要求3所述的生成传输密钥的装置,其特征在于,所述传输密钥生成单元(203)从主控单元(209)接收密钥控件派发装置(1)发送来的交互密钥生成控件G(X,Y), 利用对方装置发送来的已生成的对方交互密钥和本地私钥信息,生成传输密钥。
8.根据权利要求3所述的生成传输密钥的装置,其特征在于,所述签名信息认证单元 (204)验证交互信息中的签名数据,密钥控制派发装置(1)在提供两种密钥生成控件时均 加入了控件信息,签名信息认证单元(204)使用公知的密钥控件派发装置的签名公钥对两 种加密后的密钥生成控件进行解密,只有来自合法密钥控制派发装置的控件才可以解出正 确明文,解出明文后首先验证身份ID是否正确,然后判断当前日期是否在控件有效范围 内,最后获取版本信息用作后续交互确认控件一致性。
9.根据权利要求8所述的生成传输密钥的装置,其特征在于,所述签名信息认证单元(204)进一步在向对方装置发送交互密钥前,先使用自身的签名私钥对交互密钥信息包进 行加密,在接收到对方的交互密钥信息包之后才能使用公知的对方签名公钥解密交互信息 包,然后交由主控单元(209)分发处理。
10.根据权利要求3所述的生成传输密钥的装置,其特征在于,所述校验码认证单元(205)调用自身包含的某种校验码算法对已生成的交互密钥信息包增加检验码信息,以保 证形成更安全的交互密钥信息包,其中校验码认证单元(205)包含有多种校验码算法,该 校验码算法至少是CRC校验算法或奇偶校验算法。
11.根据权利要求10所述的生成传输密钥的装置,其特征在于,所述校验码认证单元(205)进一步从主控单元(209)接收对方装置发送来的交互密钥信息包,并对其校验码进 行验证。
12.根据权利要求3所述的生成传输密钥的装置,其特征在于,所述时间戳认证单元(206)认证密钥交互传输包是否已经失效,并根据包内时间戳信息与各自系统的本地时间 进行比较,判断是否超时以防止简单的重放攻击。
13.根据权利要求3所述的生成传输密钥的装置,其特征在于,所述数据保存清理单元(207)保存密钥交互期间的临时数据以及交互结束后的数据清理工作。
14.根据权利要求13所述的生成传输密钥的装置,其特征在于,所述数据保存清理单 元(207)还包括一个对称加密模块,所述主控单元(209)将临时数据存入本单元之前,首先 通过该对称加密模块调用主控单元(209)的签名密钥对临时信息进行加密,以密文模式放 入数据保存清理单元进行安全的存储,当其他单元需要调用临时信息时先通过该对称加密 模块解密密文,从而获取明文信息交付其他单元使用。
15.根据权利要求3所述的生成传输密钥的装置,其特征在于,所述信息发送单元(208)从主控单元(209)获取待发送的交互密钥信息包。
16.一种生成传输密钥的方法,应用于权利要求1所述的传输密钥生成装置,其特征在 于,该方法包括密钥控件派发装置(1)产生密钥控件和密钥控件信息,将该密钥控件信息添加到该密 钥控件,并将形成的密钥控件发送给信息发送装置(2)和信息接收装置(3);信息发送装置(2)和信息接收装置(3)接收该密钥控件,分别根据密钥控件中被添加 的控件信息对所接收的密钥控件进行认证;信息发送装置(2)和信息接收装置(3)分别生成各自的交互密钥,再使用校验码、时间 戳以及认证信息组成交互密钥信息包,然后将该交互密钥信息包传输给对方;在信息发送装置(2)和信息接收装置(3)分别收到对方的交互密钥信息包后,利用本 地私钥和接收到的对方的交互密钥,通过调用传输密钥生成控件中的传输密钥生成算法生成各自的传输密钥,该两个传输密钥相等。
17.根据权利要求16所述生成传输密钥的方法,其特征在于,所述密钥控件派发装置 (1)产生密钥控件和密钥控件信息,并对产生的密钥控件进行加密,包括密钥控件派发装置(1)产生密钥控件和密钥控件信息,该密钥控件包含有交互密钥生 成算法和传输密钥生成算法,将该密钥控件信息添加到该密钥控件,并使用签名私钥对添 加了密钥控件信息的交互密钥生成算法和传输密钥生成算法进行加密。
18.根据权利要求16所述生成传输密钥的方法,其特征在于,所述信息发送装置(2)和 信息接收装置(3)分别生成各自的交互密钥,再使用校验码、时间戳以及认证信息组成交 互密钥信息包,包括信息发送装置(2)和信息接收装置(3)分别在本地生成私钥,并分别利用密钥控件中 的交互密钥生成算法生成各自的交互密钥,再使用校验码、时间戳以及认证信息组成交互 jS、朗{曰息包ο
19.根据权利要求16所述生成传输密钥的方法,其特征在于,该方法在生成各自的传 输密钥后还包括信息发送装置(2)和信息接收装置(3)各自利用生成的传输密钥对需要传输的信息进 行加解密。
全文摘要
本发明公开了一种生成传输密钥的装置及方法。传输密钥是由通讯双方根据本方产生的私钥和对方传输过来的交互密钥,通过第三方派发的传输密钥生成算法共同生成,即使对方传输过来的交互密钥在网络中被截取也无法单独生成传输密钥,所述第三方派发的传输密钥生成算法使得双方使用的算法一致,并且在双方本地生成的传输密钥相等,从而达到对称加密算法的效果。双方的本地私钥通过随机生成,使用一次就失效,保证了传输密钥即使被窃取或破解也不会对下一次传输造成影响。传输密钥生成算法由第三方派发,对于通讯双方透明且一致,可以是每次重新派发,或者是定期、不定期派发,还可以是随机派发,进一步提升交互密钥和传输密钥的安全。
文档编号H04L29/06GK101807997SQ20101016221
公开日2010年8月18日 申请日期2010年4月28日 优先权日2010年4月28日
发明者赵晖 申请人:中国工商银行股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1