身份验证方法和系统转让专利

申请号 : CN202011299368.4

文献号 : CN112104675B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 段毅袁强

申请人 : 深圳市房多多网络科技有限公司

摘要 :

本发明实施例涉及安全技术领域,公开了一种身份验证方法和系统,该方法通过服务器对第一客户端获取的第一语音信息进行验证,生成语音认证凭证,所述第一客户端将所述语音认证凭证播放给第二客户端,所述第二客户端在对语音认证凭证进行验证的同时,通过对第一语音信息、语音认证凭证和第三语音信息对应的用户账户信息进行校验,确保了带看流程的发起人、语音认证凭证对应的用户账户以及实际到场的带看人员的一致性,避免了人员不一致造成的系统管理混乱。

权利要求 :

1.一种身份验证方法,其特征在于,所述方法包括:

第一客户端向服务器发送身份验证请求,所述身份验证请求中包括第一客户端获取的第一语音信息;

所述服务器根据预先存储的语音信息与用户账户信息对应关系表,对所述第一语音信息进行验证,若验证通过,则根据所述第一语音信息生成语音认证凭证,将所述语音认证凭证返回给所述第一客户端;所述服务器根据所述第一语音信息获取第二客户端信息,并向所述第二客户端发送身份验证通知消息,所述身份验证通知消息包括第一客户端用户账户信息;

所述第一客户端向所述第二客户端播放所述语音认证凭证,所述第二客户端采集所述语音认证凭证,并将所述语音认证凭证发送给所述服务器;

所述服务器根据所述语音认证凭证对所述第一语音信息进行验证,若验证通过,则向所述第二客户端发送所述第一语音信息对应的第一客户端用户账户信息;

所述第二客户端判断服务器返回的所述第一客户端用户账户信息与所述身份验证通知消息中包括的第一客户端用户账户信息是否一致,并显示身份验证结果。

2.如权利要求1所述的身份验证方法,其特征在于,所述语音信息与用户账户信息对应关系表包括多条语音信息对应的声纹信息与所述用户账户信息的对应关系;

所述服务器根据预先存储的语音信息与用户账户信息对应关系表,对所述第一语音信息进行验证,包括:所述服务器根据所述第一语音信息获取所述第一语音信息的声纹信息;

判断所述声纹信息与所述语音信息与用户账户信息对应关系表中预先存储的声纹信息的相似度是否大于预设第一阈值;

若所述声纹信息的相似度大于预设第一阈值,则将所述声纹信息对应的用户账户信息确定为目标用户账户信息;

若所述目标用户账户信息对应的相似度大于预设第一阈值的声纹信息的条数大于预设第二阈值,则确定所述第一语音信息存在对应的用户账户信息,则验证通过。

3.如权利要求1所述的身份验证方法,其特征在于,所述根据所述第一语音信息生成语音认证凭证,包括:对所述第一语音信息进行调制生成第二语音信息,所述第二语音信息与所述第一语音信息的频率不同。

4.如权利要求3所述的身份验证方法,其特征在于,所述第一客户端在初始化时,与所述服务器交换预设的加密秘钥;

所述第一客户端向所述第二客户端播放所述语音认证凭证,进一步包括:所述第一客户端根据所述加密秘钥对所述语音认证凭证进行加密,将加密后的语音认证凭证播放给所述第二客户端。

5.如权利要求4所述的身份验证方法,其特征在于,所述第二客户端在初始化时,与所述服务器交换预设的加密秘钥;

所述第二客户端采集所述语音认证凭证,并将所述语音认证凭证发送给所述服务器,进一步包括:所述第二客户端根据所述加密秘钥对采集到的语音认证凭证进行解密,并将解密后的语音认证凭证发送给所述服务器。

6.如权利要求1所述的身份验证方法,其特征在于,所述服务器预存有语音内容与目标客户端对应关系表;

所述服务器根据所述第一语音信息获取第二客户端信息,包括:

所述服务器对所述第一语音信息进行分析,获取所述第一语音信息的语音内容;根据所述语音内容和目标客户端对应关系表,获取第二客户端信息。

7.如权利要求1所述的身份验证方法,其特征在于,所述第二客户端判断服务器返回的所述第一客户端用户账户信息与所述身份验证通知消息中包括的第一客户端用户账户信息是否一致,并显示身份验证结果,进一步包括:所述第二客户端获取第三语音信息,并将所述第三语音信息发送给所述服务器;

所述服务器根据预先存储的语音信息与用户账户信息对应关系表,获取所述第三语音信息对应的用户账户信息,并将所述第三语音信息对应的用户账户信息发送给所述第二客户端;

所述第二客户端判断所述第三语音信息对应的用户账户信息与所述第一客户端用户账户信息是否一致。

8.一种身份验证系统,其特征在于,所述系统包括:第一客户端、第二客户端和服务器;

所述第一客户端用于向服务器发送身份验证请求,所述身份验证请求中包括第一客户端获取的第一语音信息和第二客户端用户账户信息;并用于接收所述服务器发送的身份验证通知消息;

所述服务器用于根据预先存储的语音信息与用户账户信息对应关系表,对所述第一语音信息进行验证,若验证通过,则根据所述第一语音信息生成语音认证凭证;将所述语音认证凭证返回给所述第一客户端,并向所述第二客户端发送身份验证通知消息,所述身份验证通知消息包括第一客户端用户账户信息;

所述第二客户端用于采集第一客户端播放的语音认证凭证,并将所述语音认证凭证发送给所述服务器;

所述服务器还用于根据所述语音认证凭证对所述第一语音信息进行验证,若验证通过,则向所述第二客户端发送所述第一语音信息对应的第一客户端用户账户信息;

所述第二客户端还用于判断所述服务器返回的所述第一客户端用户账户信息与所述身份验证通知消息中包括的第一客户端用户账户信息是否一致,并显示身份验证结果。

9.如权利要求8所述的身份验证系统,其特征在于,所述第一客户端还用于在初始化时,与所述服务器交换预设的加密秘钥;并根据所述加密秘钥对所述语音认证凭证进行加密,将加密后的语音认证凭证播放给所述第二客户端;

所述第二客户端还用于在初始化时,与所述服务器交换预设的加密秘钥;并根据所述加密秘钥对采集到的语音认证凭证进行解密,并将解密后的语音认证凭证发送给所述服务器。

10.如权利要求8所述的身份验证系统,其特征在于,

所述第二客户端还用于获取第三语音信息,并将所述第三语音信息发送给所述服务器;

所述服务器还用于根据预先存储的语音信息与用户账户信息对应关系表,获取所述第三语音信息对应的用户账户信息,并将所述第三语音信息对应的用户账户信息发送给所述第二客户端;

所述第二客户端判断所述第三语音信息对应的用户账户信息与所述第一客户端用户账户信息是否一致。

说明书 :

身份验证方法和系统

技术领域

[0001] 本发明实施例涉及安全认证技术领域,具体涉及一种身份认证方法和系统。

背景技术

[0002] 目前在房地产领域,经纪人发起带看客户流程后,项目经理和经纪人往往互相不认识,在双方见面以后,需要确认是否是预约的经纪人和项目经理。目前,对经纪人的带看确认有扫描二维码确认等方式,二维码流行的起来的原因是,将信息以图形图像的方式表达,用户通过“扫一扫”即可非常便捷的完成通信。
[0003] 但是,本申请人在研究中发现,由于看房时,环境比较复杂,光线条件不好,特别是对于一些没有经过装修的房屋,光线都比较暗,采用“扫一扫”的方式进行确认,对光线及距离有较强依赖问题。

发明内容

[0004] 鉴于上述问题,本发明实施例提供了一种身份验证方法和系统,用于解决现有技术中存在的问题。
[0005] 根据本发明实施例的一个方面,提供了一种身份验证方法,所述方法包括:
[0006] 第一客户端向服务器发送身份验证请求,所述身份验证请求中包括第一客户端获取的第一语音信息;
[0007] 所述服务器根据预先存储的语音信息与用户账户信息对应关系表,对所述第一语音信息进行验证,若验证通过,则根据所述第一语音信息生成语音认证凭证,将所述语音认证凭证返回给所述第一客户端;所述服务器根据所述第一语音信息获取第二客户端信息,并向所述第二客户端发送身份验证通知消息,所述身份验证通知消息包括第一客户端用户账户信息;
[0008] 所述第一客户端向所述第二客户端播放所述语音认证凭证,所述第二客户端采集所述语音认证凭证,并将所述语音认证凭证发送给所述服务器;
[0009] 所述服务器根据所述语音认证凭证对所述第一语音信息进行验证,若验证通过,则向所述第二客户端发送所述第一语音信息对应的第一客户端用户账户信息;
[0010] 所述第二客户端判断服务器返回的所述第一客户端用户账户信息与所述身份验证通知消息中包括的第一客户端用户账户信息是否一致,并显示身份验证结果。
[0011] 进一步的,所述语音信息与用户账户信息对应关系表包括多条语音信息对应的声纹信息与所述用户账户信息的对应关系;
[0012] 所述服务器根据预先存储的语音信息与用户账户信息对应关系表,对所述第一语音信息进行验证,包括:
[0013] 所述服务器根据所述第一语音信息获取所述第一语音信息的声纹信息;
[0014] 判断所述声纹信息与所述语音信息与用户账户信息对应关系表中预先存储的声纹信息的相似度是否大于预设第一阈值;
[0015] 若所述声纹信息的相似度大于预设第一阈值,则将所述声纹信息对应的用户账户信息确定为目标用户账户信息;
[0016] 若所述目标用户账户信息对应的相似度大于预设第一阈值的声纹信息的条数大于预设第二阈值,则确定所述第一语音信息存在对应的用户账户信息,则验证通过。
[0017] 进一步的,所述根据所述第一语音信息生成语音认证凭证,包括:
[0018] 对所述第一语音信息进行调制生成第二语音信息,所述第二语音信息与所述第一语音信息的频率不同。
[0019] 进一步的,所述第一客户端在初始化时,与所述服务器交换预设的加密秘钥;
[0020] 所述第一客户端向所述第二客户端播放所述语音认证凭证,进一步包括:
[0021] 所述第一客户端根据所述加密秘钥对所述语音认证凭证进行加密,将加密后的语音认证凭证播放给所述第二客户端。
[0022] 进一步的,所述第二客户端在初始化时,与所述服务器交换预设的加密秘钥;
[0023] 所述第二客户端采集所述语音认证凭证,并将所述语音认证凭证发送给所述服务器,进一步包括:
[0024] 所述第二客户端根据所述加密秘钥对采集到的语音认证凭证进行解密,并将解密后的语音认证凭证发送给所述服务器。
[0025] 进一步的,所述服务器预存有语音内容与目标客户端对应关系表;
[0026] 所述服务器根据所述第一语音信息获取第二客户端信息,包括:
[0027] 所述服务器对所述第一语音信息进行分析,获取所述第一语音信息的语音内容;根据所述语音内容和目标客户端对应关系表,获取第二客户端信息。
[0028] 进一步的,所述第二客户端判断服务器返回的所述第一客户端用户账户信息与所述身份验证通知消息中包括的第一客户端用户账户信息是否一致,并显示身份验证结果,进一步包括:
[0029] 所述第二客户端获取第三语音信息,并将所述第三语音信息发送给所述服务器;
[0030] 所述服务器根据预先存储的语音信息与用户账户信息对应关系表,获取所述第三语音信息对应的用户账户信息,并将所述第三语音信息对应的用户账户信息发送给所述第二客户端;
[0031] 所述第二客户端判断所述第三语音信息对应的用户账户信息与所述第一客户端用户账户信息是否一致。
[0032] 本申请实施例还提出了一种身份验证系统,所述系统包括:第一客户端、第二客户端和服务器;
[0033] 所述第一客户端用于向服务器发送身份验证请求,所述身份验证请求中包括第一客户端获取的第一语音信息和第二客户端用户账户信息;并用于接收所述服务器发送的身份验证通知消息;
[0034] 所述服务器用于根据预先存储的语音信息与用户账户信息对应关系表,对所述第一语音信息进行验证,若验证通过,则根据所述第一语音信息生成语音认证凭证;将所述语音认证凭证返回给所述第一客户端,并向所述第二客户端发送身份验证通知消息,所述身份验证通知消息包括第一客户端用户账户信息;
[0035] 所述第二客户端用于采集第一客户端播放的语音认证凭证,并将所述语音认证凭证发送给所述服务器;
[0036] 所述服务器还用于根据所述语音认证凭证对所述第一语音信息进行验证,若验证通过,则向所述第二客户端发送所述第一语音信息对应的第一客户端用户账户信息;
[0037] 所述第二客户端还用于判断所述服务器返回的所述第一客户端用户账户信息与所述身份验证通知消息中包括的第一客户端用户账户信息是否一致,并显示身份验证结果。
[0038] 进一步的,所述第一客户端还用于在初始化时,与所述服务器交换预设的加密秘钥;并根据所述加密秘钥对所述语音认证凭证进行加密,将加密后的语音认证凭证播放给所述第二客户端;
[0039] 所述第二客户端还用于在初始化时,与所述服务器交换预设的加密秘钥;并根据所述加密秘钥对采集到的语音认证凭证进行解密,并将解密后的语音认证凭证发送给所述服务器。
[0040] 进一步的,所述第二客户端还用于获取第三语音信息,并将所述第三语音信息发送给所述服务器;
[0041] 所述服务器还用于根据预先存储的语音信息与用户账户信息对应关系表,获取所述第三语音信息对应的用户账户信息,并将所述第三语音信息对应的用户账户信息发送给所述第二客户端;
[0042] 所述第二客户端判断所述第三语音信息对应的用户账户信息与所述第一客户端用户账户信息是否一致。
[0043] 本申请实施例通过服务器对第一客户端获取的第一语音信息进行验证,生成语音认证凭证,所述第一客户端将所述语音认证凭证播放给第二客户端,所述第二客户端在对语音认证凭证进行验证的同时,还对发起验证请求的用户账户和语音认证凭证对应的用户账户是否一致进行判断,从而避免身份验证错误。
[0044] 上述说明仅是本发明实施例技术方案的概述,为了能够更清楚了解本发明实施例的技术手段,而可依照说明书的内容予以实施,并且为了让本发明实施例的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。

附图说明

[0045] 附图仅用于示出实施方式,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0046] 图1示出了本发明实施例提供的身份验证方法的流程示意图;
[0047] 图2示出了本发明另一实施例提供的身份验证方法信令交互示意图;
[0048] 图3示出了本发明实施例提供的身份验证系统结构示意图。

具体实施方式

[0049] 下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。
[0050] 目前在房地产领域,为了方便对经纪人以及对房产交易过程进行管理,地产公司都有自己的IT管理系统,每个经纪人都有唯一的用户账户用于记录自己的交易活动,通过IT系统的实施大大方便了经纪人的操作,比如:某个经纪人需要带客户去看房,该经纪人会在IT系统中发起带看流程,带看流程会根据带看房屋的位置信息安排对应的客户经理进行现场接待,该客户经理一般对房屋的状况都比较了解,同时也可能是唯一一个有该房屋钥匙的人员,经纪人通过发起看房预约流程,系统自动为其分配最合适的客户经理进行现场接待,大大提高了看房的效率。由于是线上预约,往往经纪人和项目经理都不熟悉,而且同一个房屋往往会有多家房产公司进行交易,所以,需要确认是否是同一个房产公司的,避免公司之间恶性竞争。而且,现有的带看确认方式很容易产生人员的混乱,比如:不用经纪人之间交换账户、不用经纪人之间交换带看凭证以及带看发起人和实际带看人不一致等等,带来了管理的混乱,本申请实施例就是在该种场景下实施的。
[0051] 为了解决上述提到的带看发起人、账户使用人和实际带看人不一致的问题,本申请实施例提出了一种身份验证方法,如图1所示,示出了本发明实施例提出的身份验证方法的流程图,该方法由安装有客户端APP的终端以及运行该APP服务端程序的服务器共同执行,本申请中,将用户使用客户端APP的一方称为客户端,将运行APP服务端程序的一方称为服务器,所述服务器为通常所使用的服务器,往往部署在中心机房或者云端服务器。如图1所示,该方法包括以下步骤:
[0052] 步骤101:第一客户端向服务器发送身份验证请求,所述身份验证请求中包括第一客户端获取的第一语音信息。
[0053] 所述第一客户端可以理解为有带客户看房需求的经纪人,其通过安装在手机或其他移动终端上的客户端APP,发起客户带看流程。
[0054] 经纪人通过语音发起客户带看流程,比如:经纪人点击第一客户端的启动按钮,输入第一语音信息“我想去看XX小区楼盘”,第一客户端将所述第一语音信息发送给服务器,使所述服务器能够进行身份验证。
[0055] 在本步骤中,为了使经纪人能够非常方便的发起带看流程,不需要输入过多的信息,所述经纪人只需要进行语音录入即可,不需要选择楼盘信息、不需要选择项目经理信息等,简化了操作。
[0056] 步骤102:所述服务器根据预先存储的语音信息与用户账户信息对应关系表,对所述第一语音信息进行验证,若验证通过,则根据所述第一语音信息生成语音认证凭证,将所述语音认证凭证返回给所述第一客户端;所述服务器根据所述第一语音信息获取第二客户端信息,并向所述第二客户端发送身份验证通知消息,所述身份验证通知消息包括第一客户端用户账户信息。
[0057] 所述服务器预先存储有语音信息与用户账户信息对应关系表,所述对应关系表包括声纹信息与用户账户的对应关系,声纹信息对于用户来说是唯一的。所述语音信息与用户账户信息对应关系表可以为用户在设立用户账户时,根据系统要求,由用户录入语音信息,系统根据录入的语音信息,提取的声纹信息建立的声纹信息和用户账户的对应关系。为了更进一步提高准确性,本申请实施例提到的对应关系表,也可以包括在后续使用过程中,逐步积累起来的声纹信息和用户账户信息的对应关系,这样在所述对应关系表中,会存在多条语音信息对应的声纹信息与同一个用户账户信息的对应关系,当然,所述多条语音信息对应的声纹信息可能会有不同,但相似度肯定是比较高的,从而避免了由于声纹检测误差,而造成的误判,这样更加全面。
[0058] 所述服务器在获取到第一语音信息后,首选根据所述第一语音信息获取所述第一语音信息的声纹信息,判断所述声纹信息与所述语音信息与用户账户信息对应关系表中预先存储的声纹信息的相似度是否大于预设第一阈值;若所述声纹信息的相似度大于预设第一阈值,则将所述声纹信息对应的用户账户信息确定为目标用户账户信息。由于在所述语音信息与用户账户对应关系表中,有可能存在同一个用户账户对应多个声纹信息的情况,为了增加判断的准确性,本申请实施例会对所有声纹信息进行判断,然后获取相似度高于第一阈值的所有用户账户信息,若所述目标用户账户信息对应的相似度大于预设第一阈值的声纹信息的条数大于预设第二阈值,则确定所述目标用户账户为第一语音信息对应的用户账户信息,从而确定所述第一语音信息存在对应的用户账户信息,则验证通过。本申请实施例通过这种方式,增加了通过语音进行判断的准确性,避免了误判。
[0059] 当所述服务器对所述第一语音信息验证通过后,则根据所述第一语音信息生成语音认证凭证,所述生成语音认证凭证为所述服务器对所述第一语音信息进行调制生成第二语音信息,所述第二语音信息与所述第一语音信息的频率不同。由于在实际使用中,环境噪声对人发出的声音影响较大,会影响判断的准确性,在本申请中,通过将获取到的第一语音信息进行调制,将第一语音信息从第一频段调整到第二频段,使其判断区别与环境造成的影响,从而能够避免环境造成对第一语音造成的影响,提高了识别的准确性。调整完成后,所述服务器将所述语音认证凭证反馈给第一客户端,以便使所述第一客户端能够播放给所述第二客户端。
[0060] 同时,由于所述服务器通过直接对第一语音信息进行分析来确定第一语音信息对应的用户账户信息,从而可以避免用户在使用第一客户端时,必须首先进行账号登录的烦恼。服务器会根据用户的语音直接获取用户的账户并进行流程发起,简化了用户的操作。
[0061] 同时,进一步的,为了使经纪人发起带看流程更加方便,在步骤101中,经纪人只需要输入语音信息即可。在本步骤中,当所述服务器对所述第一语音信息验证通过后,则需要判断所述经纪人需要带看的楼盘信息以及该楼盘信息对应的项目经理信息等。因此,所述服务器需要对所述第一语音信息进行分析,获取所述第一语音信息的语音内容,根据所述服务器上预先存储的语音内容和目标客户对应关系表,从而获取第二客户端信息,即获取楼盘对应的项目经理信息,比如:在服务器上预先存储有楼盘和项目经理信息“XX小区,项目经理ID:123,项目经理姓名:张三,电话:13XXXX”,则所述服务器根据获取的第一语音信息提取出所述经纪人要带看的小区为“XX小区”后,则从所述语音内容和目标客户对应关系表中确定第二客户端信息为“项目经理ID:123,项目经理姓名:张三,电话:13XXXX”。本申请实施例通过这种方式,简化了经纪人发起带看流程的操作。
[0062] 当所述服务器对所述第一语音信息验证通过,并且获取到第二客户端信息时,则所述服务器向所述第二客户端发送身份验证通知消息,在所述身份验证通知消息中,包括了所述第一客户端用户账户信息,用于通知第二客户端是用户通过第一客户端用户账户发起的流程。所述第二客户端接收到第一客户端发起的带看消息后,进行带看确认,表明可以接待经纪人发起的带看申请。
[0063] 步骤103:所述第一客户端向所述第二客户端播放所述语音认证凭证,所述第二客户端采集所述语音认证凭证,并将所述语音认证凭证发送给所述服务器;
[0064] 当经纪人带着客户去到带看楼盘的现场时,所述经纪人通过第一客户端向项目经理的第二客户端播放所述语音认证凭证,所述第二客户端采集所述语音认证凭证,并将所述语音认证凭证发送给所述服务器。在实际操作中,由于所述语音认证凭证为经过服务器调制以后的语音,对客户来说,其播放过程完全没有任何感知,不需要经理人和项目经理进行扫码等任何操作,在客户无感的情况下完成。
[0065] 步骤104:所述服务器根据所述语音认证凭证对所述第一语音信息进行验证,若验证通过,则向所述第二客户端发送所述第一语音信息对应的第一客户端用户账户信息;
[0066] 所述服务器接收到第二客户端发送的语音认证凭证后,首先将所述语音认证凭证从第二语音信息解调为第一语音信息,然后,根据第一语音信息获取所述第一语音信息对应的声纹信息,根据所述声纹信息查询所述服务器预先存储的语音信息与用户账户信息对应关系表,从而获取第一语音信息对应的用户账户信息。所述根据声纹信息查询服务器预先存储的语音信息与用户账户信息对应关系表与步骤102中的查询方式相同,在此不再赘述。
[0067] 当所述服务器对所述语音认证凭证验证通过后,则向所述第二客户端发送所述第一语音信息对应的第一客户端用户账户信息。
[0068] 步骤105:所述第二客户端判断服务器返回的所述第一客户端用户账户信息与所述身份验证通知消息中包括的第一客户端用户账户信息是否一致,并显示身份验证结果;
[0069] 为了更加准确的对所述第一客户端进行身份验证,避免只依靠语音认证凭证进行验证造成的验证不准确,造成多个经纪人和多个项目经理之间产生身份验证错误,本申请实施例还进一步对服务器返回的所述第一客户端用户账户信息和所述身份验证通知消息中包括对第一客户端用户账户信息是否一致进行判断,即对带看流程发起人对应的用户账户信息和语音认证凭证对应的用户账户信息进行判断,如果一致,则说明验证通过,如果不一致,则验证不通过,避免了仅仅依靠语音认证凭证进行验证造成的经纪人和项目经理之间的身份验证错误。
[0070] 综上所述,本申请实施例通过服务器对第一客户端获取的第一语音信息进行验证,生成语音认证凭证,所述第一客户端将所述语音认证凭证播放给第二客户端,所述第二客户端在对语音认证凭证进行验证的同时,还对发起验证请求的用户账户和语音认证凭证对应的用户账户是否一致进行判断,从而避免身份验证错误。
[0071] 进一步的,为了增加系统的安全性,避免伪造的语音认证凭证通过验证,本申请实施例进一步提出,所述第一客户端在初始化时,与所述服务器交换预设的加密秘钥;所述第一客户端接收到所述服务器发送的语音认证凭证后,采用所述加密秘钥对所述语音认证凭证进行加密,向所述第二客户端播放所述语音认证凭证。同样的,所述第二客户端在初始化时,与所述服务器交换预设的加密秘钥;所述第二客户端根据所述加密秘钥对采集到的语音认证凭证进行解密,并将解密后的语音认证凭证发送给所述服务器。本申请实施例通过对所述语音认证凭证进行加密,确保了所述语音认证凭证的安全,防止所述语音认证凭证被伪造。当然,需要指出的是,所述针对语音认证凭证的加密或解密,也可以在所述服务器上进行,所述服务器在生成语音认证凭证后,对所述语音认证凭证加密和解密,然后再发送给所述第一客户端和第二客户端,这样可以减少所述第一客户端和第二客户端的操作难度。
[0072] 进一步的,由于在实际的带看流程中,存在经纪人A发起的带看流程,但是却由经纪人B带客户看,B采用A的账户进行认证,造成实际带看人和流程发起人不一致,为了避免这种情况的发生,本申请实施例还提出了一种身份验证方法,即在上述身份验证方法的基础上,当经纪人和项目经理见面后,所述第二客户端获取第三语音信息,所述第三语音信息为现场带看经纪人的语音;所述第二客户端将获取的第三语音信息发送给服务器,所述服务器根据预先存储的语音信息与用户账户信息对应关系表,获取所述第三语音信息对应的用户账户信息,并将所述第三语音信息对应的用户账户信息发送给所述第二客户端;所述第二客户端判断所述第三语音信息对应的用户账户信息与所述第一客户端用户账户信息是否一致,如果一致,则说明现场带看的经纪人与发起带看流程的经纪人是一致的,否则,则说明两者不一致。其中,所述第三语音信息可以为发起带看流程的经纪人随机说的话,也可以是经纪人阅读所述第二客户端预设的文字所发出的声音,在这里不做赘述。因此,本申请实施例通过将现场采集第三语音信息与对语音认证凭证相结合,进行验证,保证了实际带看人和带看流程发起人的一致,使管理更加规范,系统记录更加准确。
[0073] 综上所述,本申请实施例通过对第一语音信息、语音认证凭证和第三语音信息对应的用户账户信息进行校验,确保了带看流程的发起人、语音认证凭证对应的用户账户以及实际到场的带看人员的一致性,避免了人员不一致造成的系统管理混乱。
[0074] 如图2所示,为本发明实施例提出的身份验证方法的信令图,所述信令图包括第一客户端、服务器和第二客户端,具体的信令流程包括:
[0075] 201:获取第一语音信息;
[0076] 所述第一客户端获取经纪人的第一语音信息。
[0077] 202:第一客户端发起身份验证请求;
[0078] 第一客户端向服务器发起身份验证请求,所述身份验证请求中包括第一语音信息。
[0079] 203:进行身份验证;
[0080] 所述服务器根据所述第一语音信息提取对应的声纹信息,根据所述声纹信息从预设的语音信息与用户账户信息对应关系表中获取对应的用户账户信息,如果获取成功,则确认验证通过;所述服务器根据所述语音信息生成语音认证凭证。
[0081] 204:身份验证请求响应消息;
[0082] 所述服务器向所述第一客户端发送身份验证请求响应消息,所述身份验证请求响应消息中包含语音认证凭证。
[0083] 205:发送身份验证通知消息;
[0084] 所述服务器向第二客户端发送身份验证通知消息,所述身份验证通知消息中包含有所述服务器获取的第一客户端用户账户信息。
[0085] 206:第二客户端进行确认;
[0086] 第二客户端接收到服务器发送的身份验证通知消息后,进行确认,即所述项目经理确认所述经纪人是否可以带看,如果可以带看,则向第一客户端发送确认消息,如果不可以带看,则拒绝。
[0087] 207:播放语音认证凭证;
[0088] 第一客户端向第二客户端播放语音认证凭证。
[0089] 208:向服务器发送身份验证确认消息;
[0090] 所述第二客户端采集到第一客户端播放的语音认证凭证后,将所述语音认证凭证包含在所述身份验证确认消息中,发送给所述服务器。
[0091] 209:所述服务器对所述语音认证凭证进行身份验证;
[0092] 所述服务器根据所述语音认证凭证获取声纹信息,并根据所述声纹信息从预先存储的语音与用户账户对应关系表中,获取对应的用户账户信息。
[0093] 如果能找到对应的用户账户信息,则确认验证通过。
[0094] 210:身份验证确认响应消息;
[0095] 所述身份验证确认响应消息包括对所述语音认证凭证进行验证的结果,同时,还包括有所述语音认证凭证对应的用户账户信息。
[0096] 211:判断用户信息是否一致;
[0097] 所述第二客户端在接收到对所述语音认证凭证验证通过的消息后,进一步,对所述包含在身份验证通知消息中的第一客户端用户账户信息和所述包含在身份验证确认响应消息中的第一客户端用户账户信息是否一致进行判断。
[0098] 如果一致,则确认发起认证流程的用户账户信息与所述语音认证凭证对应的用户账户信息一致,则确认验证通过。
[0099] 212:获取第三语音信息;
[0100] 所述第二客户端获取第三语音信息,所述第三语音信息为现场的带看经纪人发出的声音。
[0101] 213:身份验证确认消息;
[0102] 所述第二客户端向所述服务器发送身份验证确认消息,所述身份验证确认消息中包括第三语音信息;
[0103] 214:所述服务器对所述第三语音信息进行验证
[0104] 所述服务器对所述第三语音信息进行分析,提取其所包含的声纹信息,并根据所述声纹信息从预先存储的声音与用户账户对应关系表中查询所述第三语音消息对应的用户账户信息。
[0105] 215:向第三客户端发送身份验证确认响应消息;
[0106] 所述服务器向所述第三客户单发送身份验证确认响应消息,所述身份验证确认响应消息中包括身份验证的结果,以及所述第三语音信息对应的用户账户信息。
[0107] 216:判断用户信息是否一致;
[0108] 所述第二客户端判断所述第三语音信息对应的用户账户信息与所述语音认证凭证对应的用户账户信息是否一致,如果一致,则验证通过,否则,则验证失败。
[0109] 综上所述,本申请实施例通过对第一语音信息、语音认证凭证和第三语音信息对应的用户账户信息进行校验,确保了带看流程的发起人、语音认证凭证对应的用户账户以及实际到场的带看人员的一致性,避免了人员不一致造成的系统管理混乱。
[0110] 进一步的,本申请实施例还提出了一种身份验证系统,如图3所示,所述系统包括第一客户端、第二客户端和服务器。
[0111] 所述第一客户端用于向服务器发送身份验证请求,所述身份验证请求中包括第一客户端获取的第一语音信息和第二客户端用户账户信息;并用于接收所述服务器发送的身份验证通知消息;所述服务器用于根据预先存储的语音信息与用户账户信息对应关系表,对所述第一语音信息进行验证,若验证通过,则根据所述第一语音信息生成语音认证凭证;将所述语音认证凭证返回给所述第一客户端,并向所述第二客户端发送身份验证通知消息,所述身份验证通知消息包括第一客户端用户账户信息;所述第二客户端用于采集第一客户端播放的语音认证凭证,并将所述语音认证凭证发送给所述服务器;所述服务器还用于根据所述语音认证凭证对所述第一语音信息进行验证,若验证通过,则向所述第二客户端发送所述第一语音信息对应的第一客户端用户账户信息;所述第二客户端还用于判断所述服务器返回的所述第一客户端用户账户信息与所述身份验证通知消息中包括的第一客户端用户账户信息是否一致,并显示身份验证结果。
[0112] 通过上述身份验证系统,通过服务器对第一客户端获取的第一语音信息进行验证,生成语音认证凭证,所述第一客户端将所述语音认证凭证播放给第二客户端,所述第二客户端在对语音认证凭证进行验证的同时,还对发起验证请求的用户和语音认证凭证对应的用户是否一致进行判断,从而避免身份验证错误。
[0113] 进一步的,所述服务器存储的语音信息与用户账户信息对应关系表包括多条语音信息对应的声纹信息与所述用户账户信息的对应关系;所述服务器还用于根据所述第一语音信息获取所述第一语音信息的声纹信息;判断所述声纹信息与所述语音信息与用户账户信息对应关系表中预先存储的声纹信息的相似度是否大于预设第一阈值;若所述声纹信息的相似度大于预设第一阈值,则将所述声纹信息对应的用户账户信息确定为目标用户账户信息;若所述目标用户账户信息对应的相似度大于预设第一阈值的声纹信息的条数大于预设第二阈值,则确定所述第一语音信息存在对应的用户账户信息,则验证通过。
[0114] 所述服务器还用于对所述第一语音信息进行调制生成第二语音信息,所述第二语音信息与所述第一语音信息的频率不同,以使所述第二语音信息的频率区别与环境噪音,避免造成干扰。
[0115] 进一步的,所述第一客户端在初始化时,与所述服务器交换预设的加密秘钥;所述第一客户端根据所述加密秘钥对所述语音认证凭证进行加密,将加密后的语音认证凭证播放给所述第二客户端。
[0116] 进一步的,所述第二客户端在初始化时,与所述服务器交换预设的加密秘钥;所述第二客户端根据所述加密秘钥对采集到的语音认证凭证进行解密,并将解密后的语音认证凭证发送给所述服务器。
[0117] 进一步的,所述服务器预存有语音内容与目标客户端对应关系表;所述服务器还用于对所述第一语音信息进行分析,获取所述第一语音信息的语音内容;根据所述语音内容和目标客户端对应关系表,获取第二客户端信息。
[0118] 进一步的,所述第二客户端还用于获取第三语音信息,并将所述第三语音信息发送给所述服务器;所述服务器根据预先存储的语音信息与用户账户信息对应关系表,获取所述第三语音信息对应的用户账户信息,并将所述第三语音信息对应的用户账户信息发送给所述第二客户端;所述第二客户端判断所述第三语音信息对应的用户账户信息与所述第一客户端用户账户信息是否一致。
[0119] 综上可知,本申请实施例通过对第一语音信息、语音认证凭证和第三语音信息对应的用户账户信息进行校验,确保了带看流程的发起人、语音认证凭证对应的用户账户以及实际到场的带看人员的一致性,避免了人员不一致造成的系统管理混乱。
[0120] 本发明实施例还提供了一种计算机程序,所述计算机程序可被处理器调用使所述第一客户端、第二客户端和服务器执行上述任意方法实施例中的身份验证方法。
[0121] 本发明实施例提供了一种计算机程序产品,计算机程序产品包括存储在计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当程序指令在计算机上运行时,使得所述计算机执行上述任意方法实施例中的身份验证方法。
[0122] 在此提供的算法或显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明实施例也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
[0123] 在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
[0124] 类似地,应当理解,为了精简本发明并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明实施例的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。
[0125] 本领域技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
[0126] 应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。上述实施例中的步骤,除有特殊说明外,不应理解为对执行顺序的限定。