验证方法和验证系统以及相关设备与流程

文档序号:12890012阅读:151来源:国知局
验证方法和验证系统以及相关设备与流程

本发明涉及信息安全技术领域,特别涉及一种验证方法和验证系统以及验码端设备和生成端设备。



背景技术:

随着互联网技术的发展,利用手机等设备进行网上支付也越来越普遍。一次一密技术常用于网上支付例如条码支付、手机宝令等场景来确保支付的安全性。

当前一次一密技术的一种主要生成方式是基于时间信息生成摘要,生成端基于当前时间生成摘要并对摘要进行签名,验码端基于收到签名信息的时间生成摘要对签名信息进行验签。如果用户手机客户端被破解,则非法用户也可以通过认证,给合法用户造成损失。



技术实现要素:

本发明所要解决的一个技术问题是:提高利用一次一密技术进行验证的安全性。

根据本发明的一个方面,提供的一种验证方法,包括:验码端设备接收生成端设备发送的签名信息,签名信息为生成端设备根据用户当前地理位置、预设基准位置和距离步长生成第一摘要,并对第一摘要进行签名后生成的;验码端设备对签名信息进行解签名得到第一摘要;验码端设备根据有效地理位置、预设基准位置和距离步长生成第二摘要,并将第二摘要与第一摘要进行比对,如果一致,则验签通过。

根据本发明的第二个方面,提供的一种验证方法,包括:生成端设备获取用户当前地理位置;生成端设备根据用户当前地理位置、预设基准位置和距离步长生成第一摘要;生成端设备对第一摘要进行签名, 并将签名信息发送至验码端设备,以便验码端设备对签名信息进行验签。

根据本发明的第三个方面,提供的一种验码端设备,包括:签名信息接收单元,用于接收生成端设备发送的签名信息,签名信息为生成端设备根据用户当前地理位置、预设基准位置和距离步长生成第一摘要,并对第一摘要进行签名后生成的;解签名单元,用于对签名信息进行解签名得到第一摘要;摘要生成单元,用于根据有效地理位置、预设基准位置和距离步长生成第二摘要;验签单元,用于将第二摘要与第一摘要进行比对,如果一致,则验签通过。

根据本发明的第四个方面,提供的一种用于签名的生成端设备,包括:地理位置获取单元,用于获取用户当前地理位置;摘要生成单元,用于根据用户当前地理位置、预设基准位置和距离步长生成第一摘要;签名单元,用于对第一摘要进行签名得到签名信息;签名信息发送单元,用于将签名信息发送至验码端设备,以便验码端设备对签名信息进行验签。

根据本发明的第五个方面,提供的一种验证系统,包括:前述任一个实施例中的验码端设备以及前述任一个实施例中的生成端设备。

本发明通过在验码端设备预设有效地理位置,生成端设备利用当前地理位置生成摘要并对摘要进行签名,验码端设备利用有效地理位置生成摘要进行验签,在有效地理位置一定范围内的当前地理位置对应的签名信息才会被成功验签,设定该有效地理位置的合法用户的生成端设备才会通过认证,而非法用户难以获知该有效地理位置,在其他区域使用不会通过认证,因此在很大程度上提高了利用一次一密技术进行验证的安全性。通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技 术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1示出本发明的一个实施例的验证系统的结构示意图。

图2示出本发明的一个实施例的验证方法的流程示意图。

图3示出本发明的一个实施例的验码端设备的结构示意图。

图4示出本发明的一个实施例的用于签名的生成端设备的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为了提升利用一次一密技术进行验证的安全性,提出本方案。下面结合各实施例及其附图描述本发明的方案。

图1为本发明验证系统的一个实施例的结构图,如图1中所示,本发明的验证系统10包括生成端设备和验码端设备,生成端设备按照一定的算法生成原始摘要并对原始摘要进行签名,验码端设备按照相应的算法生成摘要,并与解签名后得到的原始摘要进行比对,如果一致,则验签通过,否则,验签失败。

下面结合图2对本发明的验证过程进行描述。

图2为本发明验证方法一个实施例的流程图。如图2所示,该实施例的方法包括:

步骤s202,生成端设备获取用户当前地理位置。

其中,生成端设备例如是手机等设备,但不限于所举示例,可以通过例如gps定位等方式获取用户当前地理位置,用户当前地理位置可以采用例如经度、纬度的表示方式。

步骤s204,生成端设备根据用户当前地理位置、预设基准位置和 距离步长生成第一摘要,并对第一摘要进行签名生成签名信息。

其中,预设基准位置例如为城市中心点,可以采用经度、纬度的表示方式。生成端设备例如利用私钥对第一摘要进行签名生成签名信息。

步骤s206,生成端设备将签名信息发送至验码端设备,相应的,验码端设备接收生成端设备发送的签名信息。

其中,生成端设备对签名信息以及用户相关信息例如用户账号信息进行例如对称加密后发送至验码端设备,对称加密算法例如为fpe算法(formatpreserveencryption,格式保留加密)。

步骤s208,验码端设备对签名信息进行解签名得到第一摘要。

其中,验码端设备例如使用公钥对签名信息进行解签名。

步骤s210,验码端设备根据有效地理位置、预设基准位置和距离步长生成第二摘要,并将第二摘要与第一摘要进行比对,如果一致,则验签通过,否则验签失败。

其中,有效地理位置例如可以是合法用户初始设置并发送至验码端设备进行保存的一个或多个地理位置,可以采用经度、纬度的表示方式。有效地理位置例如可以设置为用户办公地点、家庭住址等。如果存在多个有效地理位置,验码端设备需要根据每一个有效地理位置生成一次第二摘要,得到多个第二摘要,将多个第二摘要分别与第一摘要进行对比,只要一次比对成功则验签通过。

上述实施例通过在验码端设备预设有效地理位置,生成端设备利用当前地理位置生成摘要并对摘要进行签名,验码端设备利用有效地理位置生成摘要进行验签,在有效地理位置一定范围内的当前地理位置对应的签名信息才会被成功验签,设定该有效地理位置的合法用户的生成端设备才会通过认证,而非法用户难以获知该有效地理位置,在其他区域使用不会通过认证,因此在很大程度上提高了利用一次一密技术进行验证的安全性。

本发明针对生成端设备如何生成第一摘要以及验码端设备如何生成第二摘要进行验签,还提供以下几种实施方式:

实施方式一

生成端设备根据用户当前地理位置与预设基准位置的矢量差除以距离步长的比值生成第一摘要;相应的,验码端设备根据有效地理位置与预设基准位置的矢量差除以距离步长的比值生成第二摘要。

例如,当前地理位置的矢量用经度和纬度表示为(x,y),预设基准位置的矢量用经度和纬度表示为(x0,y0),两者的矢量差即为(x-x0,y-y0)。

在一个实施例中,第一摘要与第二摘要例如分别根据totp(基于时间的一次性密码算法)计算获得。totp采用如下公式:

totp=truncate(hmac-sha-1(k,(t-t0)/x))

其中,truncate表示将hmac-sha-1值转换为totp值的函数,hmac-sha-1是一种哈希算法,k为共享密钥,t表示当前时间戳,t0为基准时间戳,x为时间步长。例如,生成端设备将其中的时间参数(t-t0)/x替换为用户当前地理位置与预设基准位置的矢量差除以距离步长(例如为l)的比值计算获得第一摘要,即验证端设备将其中的时间参数(t-t0)/x替换为有效地理位置(例如为)与预设基准位置的矢量差除以距离步长的比值计算获得第二摘要,即

此外,通过设置距离步长,使得用户在有效地理位置附近(步长范围内)移动都可以通过认证。

实施方式二

生成端设备根据用户当前地理位置与预设基准位置的距离除以距离步长的比值生成第一摘要;相应的,验码端设备根据有效地理位置与预设基准位置的距离除以距离步长的比值生成第二摘要。

在一个实施例中,第一摘要与第二摘要例如分别根据totp计算获得。参考实施方式一中的实施例,生成端设备将计算公式中的时间参数(t-t0)/x替换为用户当前地理位置与预设基准位置的距离(例如用l-l0表示)除以距离步长的比值计算获得第一摘要,即(l-l0)/l;验证端设备将计算公式中的时间参数(t-t0)/x替换为有效地理位置与预设基准位置的距离(例如用ln-l0表示)除以距离步长的比值计算获得第二摘要,即(ln-l0)/l。

由于采用矢量表示地理位置,能够更加准确的表示地理位置,实施方式一相对于实施方式二能够进一步提高一次一密的安全性。

实施方式三

生成端设备根据第一比值与第二比值生成第一摘要,第一比值为用户当前地理位置与预设基准位置的矢量差除以距离步长的比值,第二比值为生成端设备当前时间戳与预设基准时间戳的差值除以时间步长的比值。相应的,验码端设备根据第三比值与第四比值生成第二摘要,第三比值为有效地理位置与预设基准位置的矢量差除以距离步长的比值,第四比值为验码端设备当前时间戳与预设基准时间戳的差值除以时间步长的比值。

在一个实施例中,第一摘要与第二摘要例如分别根据totp计算获得。参考实施方式一的实施例,第一比值为第二比值为(t-t0)/x,t0可以是预设的任意时间,也可以为1970年1月1日(00:00:00gmt),由于时间参数(t-t0)/x通常量化为16位的16进制数,并且通常情况下前8位均为0,生成端设备可以将第一比值量化为8位16进制数来取代时间参数的前8位空闲位。当然,生成端设备也可以将第一比值量化为任意位数,如果时间参数的空闲位数不够也可以相应的调整t0和x来减少时间参数的有效位数,例如将x增大或将t0设置为最近的时间。同理,验证端设备可以将第三比值量化为n位整数,代替第四比值的前n位空闲位生成第二摘要。生成端设备和验证端设备的量化方式相同。

实施方式四

生成端设备根据第一比值与第二比值生成第一摘要,第一比值为用户当前地理位置与预设基准位置的距离除以距离步长的比值,第二比值为生成端设备当前时间戳与预设基准时间戳的差值除以时间步长的比值。相应的,验码端设备根据第三比值与第四比值生成第二摘要,第三比值为有效地理位置与预设基准位置的距离除以距离步长的比值,第四比值为验码端设备当前时间戳与预设基准时间戳的差值除以时间步长的比值。

在一个实施例中,第一摘要与第二摘要例如分别根据totp计 算获得。参考实施方式二的实施例,第一比值为(l-l0)/l,第二比值为(t-t0)/x,例如,可以将第一比值量化为n位整数,代替第二比值的前n位空闲位生成第一摘要,同理,可以将第三比值量化为n位整数,代替第四比值的前n位空闲位生成第二摘要。

由于采用矢量表示地理位置,能够更加准确的表示地理位置,实施方式三相对于实施方式四能够进一步提高一次一密的安全性。

实施方式三相对于实施方式一,实施方式四相对于实施方式二由于同时利用地理位置以及时间信息生成摘要,更能够提高一次一密的安全性。

本发明还提供一种验码端设备,下面结合图3进行描述。

图3为本发明验码端设备一个实施例的结构图。如图3所示,该验码端设备30包括:

签名信息接收单元302,用于接收生成端设备发送的签名信息,签名信息为生成端设备根据用户当前地理位置、预设基准位置和距离步长生成第一摘要,并对第一摘要进行签名后生成的。

解签名单元304,用于对签名信息进行解签名得到第一摘要。摘要生成单元306,用于根据有效地理位置、预设基准位置和距离步长生成第二摘要。

验签单元308,用于将第二摘要与第一摘要进行比对,如果一致,则验签通过。

摘要生成单元306,可以被配置通过以下几种不同的实现方式生成第二摘要:

当第一摘要为生成端设备根据用户当前地理位置与预设基准位置的距离除以距离步长的比值生成的情况下,摘要生成单元306,用于根据有效地理位置与预设基准位置的矢量差除以距离步长的比值生成第二摘要;

或者,

当第一摘要为生成端设备根据用户当前地理位置与预设基准位置的距离除以距离步长的比值生成的情况下,摘要生成单元306,用于根据有效地理位置与预设基准位置的距离除以距离步长的比值生成第 二摘要。

或者,

当第一摘要为生成端设备根据第一比值与第二比值生成的情况下,第一比值为用户当前地理位置与预设基准位置的矢量差除以距离步长的比值,第二比值为生成端设备当前时间戳与预设基准时间戳的差值除以时间步长的比值,摘要生成单元306,用于根据第三比值与第四比值生成第二摘要,第三比值为有效地理位置与预设基准位置的矢量差离除以距离步长的比值,第四比值为验码端设备当前时间戳与预设基准时间戳的差值除以时间步长的比值;

或者,

当第一摘要为生成端设备根据第一比值与第二比值生成的情况下,第一比值为用户当前地理位置与预设基准位置的距离除以距离步长的比值,第二比值为生成端设备当前时间戳与预设基准时间戳的差值除以时间步长的比值,摘要生成单元306,用于根据第三比值与第四比值生成第二摘要,第三比值为有效地理位置与预设基准位置的距离除以距离步长的比值,第四比值为验码端设备当前时间戳与预设基准时间戳的差值除以时间步长的比值。

本发明还提供一种用于签名的生成端设备,下面结合图4进行描述。

图4为本发明于签名的生成端设备一个实施例的结构图。如图4所示,该生成端设备40包括:

地理位置获取单元402,用于获取用户当前地理位置;

摘要生成单元404,用于根据用户当前地理位置、预设基准位置和距离步长生成第一摘要;

签名单元406,用于对第一摘要进行签名得到签名信息;

签名信息发送单元408,用于将签名信息发送至验码端设备,以便验码端设备对签名信息进行验签。。

摘要生成单元404,可以被配置通过以下几种不同的实现方式生成第一摘要:

摘要生成单元404,用于根据用户当前地理位置与预设基准位置 的矢量差除以距离步长的比值生成第一摘要;

或者,

摘要生成单元404,用于根据用户当前地理位置与预设基准位置的距离除以距离步长的比值生成第一摘要。

或者,

密摘要生成单元404,用于根据第一比值与第二比值生成第一摘要,第一比值为用户当前地理位置与预设基准位置的矢量差除以距离步长的比值,第二比值为生成端设备当前时间戳与预设基准时间戳的差值除以时间步长的比值;

或者,

摘要生成单元404,用于根据第一比值与第二比值生成第一摘要,第一比值为用户当前地理位置与预设基准位置的距离除以距离步长的比值,第二比值为生成端设备当前时间戳与预设基准时间戳的差值除以时间步长的比值。

上述图3或图4对应的实施例中第一摘要与第二摘要例如根据totp计算获得。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1