1.一种客户端证书认证方法,其特征在于,由服务器执行,所述方法包括:接收客户端发送的认证请求,所述认证请求包括:认证参数、服务过期时间、客户端当前时间和第一验证码,所述认证参数包括客户名称、序列号、业务标识、型号和版本中的至少一个,所述第一验证码是所述客户端根据第一密钥和所述客户端当前时间生成的,所述第一密钥是由证书授权中心根据所述认证参数和所述服务过期时间生成的;
获取所述服务器收到所述认证请求时的系统时间;
采用所述服务过期时间和所述认证参数生成第二密钥,生成所述第二密钥采用的算法与所述证书授权中心生成所述第一密钥的算法相同;
采用所述第二密钥和所述客户端当前时间生成第二验证码,生成所述第二验证码采用的算法与所述客户端生成所述第一验证码的算法相同;
比较所述第二验证码与所述第一验证码是否相同;
如果所述第二验证码与所述第一验证码相同,根据所述第二密钥和所述系统时间生成第三验证码,生成所述第三验证码采用的算法与所述客户端生成所述第一验证码的算法相同;
比较所述第三验证码与所述第一验证码是否相同;
如果所述第三验证码与所述第一验证码相同,判定所述客户端认证结果为成功。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第二密钥和所述客户端当前时间生成第二验证码,包括:判断所述客户端当前时间所在的时间窗口;
确定所述时间窗口内的第一时间T;
采用code=genCode(Key,T)计算所述第二验证码,其中,code为所述第二验证码,所述genCode算法为验证码生成算法,Key为所述第二密钥。
3.根据权利要求1所述的方法,其特征在于,在所述根据所述服务过期时间和所述认证参数生成第二密钥之前,还包括:确定出所述系统时间未超过所述服务过期时间。
4.根据权利要求1所述的方法,其特征在于,如果所述第三验证码与所述第一验证码不相同,所述方法还包括:以所述系统时间所在的时间窗口为基准,在预定范围内移动所述时间窗口;
采用所述第二密钥和移动后的时间窗口生成第四验证码;
比较所述第四验证码与所述第一验证码是否相同;
如果所述第四验证码与所述第一验证码相同,判断所述客户端认证结果为成功。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:将认证结果返回给所述客户端。
6.根据权利要求5所述的方法,其特征在于,当所述认证结果为成功时,所述认证结果包括所述系统时间与所述客户端当前时间的时间差值。
7.一种客户端证书认证方法,其特征在于,由客户端执行,所述方法包括:获取第一密钥,以及服务过期时间和认证参数,所述认证参数包括客户名称、序列号、业务标识、型号和版本中的至少一个,所述第一密钥是由证书授权中心根据所述认证参数和所述服务过期时间生成的;
采用所述第一密钥和所述客户端当前时间生成第一验证码;
生成认证请求,并将所述认证请求发送给服务器,所述认证请求携带:所述认证参数、所述服务过期时间、所述客户端当前时间和所述第一验证码。
8.根据权利要求7所述的方法,其特征在于,所述采用所述第一密钥和所述客户端当前时间生成第一验证码,包括:判断所述客户端当前时间所在的时间窗口;
确定所述时间窗口内的第一时间T;
采用code=genCode(Key,T)计算所述第一验证码,其中,code为所述第一验证码,所述genCode算法为验证码生成算法,Key为所述第一密钥。
9.根据权利要求7所述的方法,其特征在于,所述将所述认证请求发送给服务器之后,所述方法还包括:接收所述服务器发送的认证结果。
10.根据权利要求9所述的方法,其特征在于,当所述认证结果为成功时,所述认证结果包括所述服务器接收到所述认证请求时的系统时间与所述客户端当前时间的时间差值。
11.一种服务器,其特征在于,所述服务器包括:
接收模块,用于接收客户端发送的认证请求,所述认证请求包括:认证参数、服务过期时间、客户端当前时间和第一验证码,所述认证参数包括客户名称、序列号、业务标识、型号和版本中的至少一个,所述第一验证码是所述客户端根据第一密钥和所述客户端当前时间生成的,所述第一密钥是由证书授权中心根据所述认证参数和所述服务过期时间生成的;
获取模块,用于获取所述服务器收到所述认证请求时的系统时间;
处理模块,用于采用所述服务过期时间和所述认证参数生成第二密钥,采用所述第二密钥和所述客户端当前时间生成第二验证码,生成所述第二密钥采用的算法与所述证书授权中心生成所述第一密钥的算法相同,生成所述第二验证码采用的算法与所述客户端生成所述第一验证码的算法相同;
比较所述第二验证码与所述第一验证码是否相同,如果所述第二验证码与所述第一验证码相同,根据所述第二密钥和所述系统时间生成第三验证码,比较所述第三验证码与所述第一验证码是否相同,如果所述第三验证码与所述第一验证码相同,判定所述客户端认证结果为成功,生成所述第三验证码采用的算法与所述客户端生成所述第一验证码的算法相同。
12.根据权利要求11所述的服务器,其特征在于,所述处理模块,包括:判断单元,用于判断所述客户端当前时间所在的时间窗口;
查找单元,用于确定所述时间窗口内的第一时间T;
计算单元,用于采用code=genCode(Key,T)计算所述第二验证码,其中,code为所述第二验证码,所述genCode算法为验证码生成算法,Key为所述第二密钥。
13.根据权利要求11所述的服务器,其特征在于,所述处理模块,还用于在所述根据所述服务过期时间和所述认证参数生成第二密钥之前,确定出所述系统时间未超过所述服务过期时间。
14.根据权利要求11所述的服务器,其特征在于,所述处理模块,还用于当所述第三验证码与所述第一验证码不相同时,以所述系统时间所在的时间窗口为基准,在预定范围内移动所述时间窗口;采用所述第二密钥和移动后的时间窗口生成第四验证码;比较所述第四验证码与所述第一验证码是否相同;如果所述第四验证码与所述第一验证码相同,判断所述客户端认证结果为成功。
15.根据权利要求11所述的服务器,其特征在于,所述服务器还包括:发送模块,用于将认证结果返回给所述客户端。
16.一种客户端,其特征在于,所述客户端包括:
获取模块,用于获取第一密钥,以及服务过期时间和认证参数,所述认证参数包括客户名称、序列号、业务标识、型号和版本中的至少一个,所述第一密钥是由证书授权中心根据所述认证参数和所述服务过期时间生成的;
处理模块,用于采用所述第一密钥和所述客户端当前时间生成第一验证码;
生成认证请求,所述认证请求携带:所述认证参数、所述服务过期时间、所述客户端当前时间和所述第一验证码;
发送模块,用于将将所述认证请求发送给服务器。
17.根据权利要求16所述的客户端,其特征在于,所述处理模块,包括:判断单元,用于判断所述客户端当前时间所在的时间窗口;
查找单元,用于确定所述时间窗口内的第一时间T;
计算单元,用于采用code=genCode(Key,T)计算所述第一验证码,其中,code为所述第一验证码,所述genCode算法为验证码生成算法,Key为所述第一密钥。
18.根据权利要求16所述的客户端,其特征在于,所述客户端还包括:接收模块,用于接收所述服务器发送的认证结果。
19.一种客户端证书认证系统,其特征在于,所述客户端系统:证书授权中心、如权利要求11~15任一项所述的服务器和如权利要求16~18任一项所述的客户端,所述证书授权中心用于计算第一密钥,并发送给所述客户端。