一种验证客户端合法性的方法和装置制造方法及图纸

技术编号:17413814 阅读:68 留言:0更新日期:2018-03-07 09:33
本发明专利技术提供一种验证客户端合法性的方法和装置。方法包括:在接收到客户端发送的连接请求时,获取所述客户端的端口信息;根据所述端口信息获取所述客户端的应用信息;判断所述应用信息是否为预先存储的合法应用信息;若是则确定所述客户端合法。本发明专利技术在接收到客户端发送的连接请求后,并不是直接与客户端进行信息交互,而是根据端口信息获取客户端的应用信息,对该客户端的应用信息合法性进行验证,在验证客户端的应用信息合法时确定客户端合法。由于端口信息的唯一性、无法冒仿性,保证了本发明专利技术依据端口信息获取到的客户端的应用信息也是唯一确定、无法冒仿,确保了根据客户端的应用信息来验证客户端的合法性的准确性和安全性。

A method and device to verify the client's legitimacy

【技术实现步骤摘要】
一种验证客户端合法性的方法和装置
本专利技术涉及计算机领域,更具体地说,涉及一种验证客户端合法性的方法和装置。
技术介绍
目前,当客户端访问服务器时,服务器需要对客户端的合法性进行验证,在验证合法时允许客户端访问,在验证不合法时拒绝客户端访问。目前服务端验证客户端的合法性主要通过信息交互的方式来确认,如:服务端向客户端发送加密数据;客户端接收到加密数据之后进行解密并将解密得到的数据反馈给服务端;服务端确认解密数据准确时确定客户端合法。而在计算机领域,用于解密数据的验证信息很容易被恶意客户端窃取,因此,现有的该种验证客户端合法性的方式仍然存在安全隐患。
技术实现思路
有鉴于此,本专利技术提供一种验证客户端合法性的方法和装置,以解决现有技术中验证客户端合法性不准确导致存在安全隐患的问题。本专利技术的一方面,提供一种验证客户端合法性的方法,包括:在接收到客户端发送的连接请求时,获取所述客户端的端口信息;根据所述端口信息获取所述客户端的应用信息;判断所述应用信息是否为预先存储的合法应用信息;若是则确定所述客户端合法。优选地,所述获取所述客户端的端口信息包括:调用accept函数获取所述客户端的套接字Socket;根据所述Socket获取所述客户端对应的端口信息。优选地,所述根据所述端口信息获取所述客户端的应用信息,包括:获取所述客户端的端口对应的协议文件;根据所述客户端的端口从所述协议文件保存的端口与用户标识符UID的对应关系中,获取所述客户端的UID;根据所述客户端的UID获取所述客户端的应用信息。优选地,所述应用信息包括应用名PackageName和签名信息,所述根据所述客户端的UID获取所述客户端的应用信息,包括:根据所述客户端的UID获取所述客户端的PackageName;根据所述客户端的PackageName获取所述客户端的签名信息;判断所述应用信息是否为预先存储的合法应用信息,包括:判断所述客户端的PackageName和签名信息是否均为预先存储的合法信息,若是则确定所述客户端的应用信息为预先存储的合法应用信息。优选地,前述方法还包括:当判断所述应用信息不为预先存储的合法应用信息,则确定所述客户端不合法。本专利技术另一方面,提供一种验证客户端合法性的装置,包括:接收模块,用于接收客户端发送的连接请求;第一获取模块,用于在所述接收模块接收到客户端发送的连接请求时,获取所述客户端的端口信息;第二获取模块,用于根据所述端口信息获取所述客户端的应用信息;判断模块,用于判断所述应用信息是否为预先存储的合法应用信息;第一确定模块,用于当所述判断模块判断所述应用信息为预先存储的合法应用信息时,确定所述客户端合法。优选地,所述第一获取模块包括:第一获取子模块,用于调用accept函数获取所述客户端的套接字Socket;第二获取子模块,用于根据所述Socket获取所述客户端对应的端口信息。优选地,所述第二获取模块包括:第三获取子模块,用于获取所述客户端的端口对应的协议文件;第四获取子模块,用于根据所述客户端的端口从所述协议文件保存的端口与用户标识符UID的对应关系中,获取所述客户端的UID;第五获取子模块,用于根据所述客户端的UID获取所述客户端的应用信息。优选地,所述应用信息包括应用名PackageName和签名信息;所述第五获取子模块具体用于:根据所述客户端的UID获取所述客户端的PackageName;并根据所述客户端的PackageName获取所述客户端的签名信息;所述判断模块具体用于:判断所述客户端的PackageName和签名信息是否均为预先存储的合法信息,若是则确定所述客户端的应用信息为预先存储的合法应用信息。优选地,所述装置还包括:第二确定模块,用于当所述判断模块判断所述应用信息不为预先存储的合法应用信息时,确定所述客户端不合法。本专利技术技术方案,在接收到客户端发送的连接请求后,并不是直接与客户端进行信息交互,而是通过获取到客户端的端口信息之后,根据端口信息获取客户端的应用信息,对该客户端的应用信息合法性进行验证,在验证客户端的应用信息合法时确定客户端合法,由于端口信息的唯一性、无法冒仿性,保证了本专利技术依据端口信息获取到的客户端的应用信息也是唯一确定、无法冒仿,因此确保了根据客户端的应用信息来验证客户端的合法性的准确性,克服了现有技术验证客户端合法性不准确而导致存在安全隐患的问题。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本专利技术提供的验证客户端合法性的方法流程图之一;图2为本专利技术提供的获取客户端的端口信息的方法流程图;图3为本专利技术提供的获取所述客户端的应用信息的方法流程图;图4为本专利技术提供的验证客户端合法性的方法的流程图之二;图5为本专利技术提供的验证客户端合法性的装置的结构示意图;图6为本专利技术中第一获取模块的结构示意图;图7为本专利技术中第二获取模块的结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术提供的验证客户端合法性的方法可以被智能设备所执行,所述智能设备可以包括手机、便携式笔记本电脑等。为了便于描述,本专利技术下述实施例均以手机为例进行说明。本专利技术实施例中的一个应用场景可以是:在同一个终端设备的操作系统中,一个应用程序APP,在接收到该操作系统里的其他应用程序APP发起的连接请求时,该应用程序APP对前述其他用用程序APP的合法性进行验证。例如,在该应用程序APP中预先创建有本地Sever(即本地服务器),由该本地服务器监听其他APP的客户端发起的连接请求,根据以下图1所示的方法对该客户端的合法性进行验证。请参阅图1,其示出了本专利技术提供的一种验证客户端合法性的方法的流程图,方法包括:步骤101,在接收到客户端发送的连接请求时,获取所述客户端的端口信息。在本专利技术实际应用过程中,终端设备的系统存储安装有多个应用程序,每个应用程序在终端设备的系统中运行时,系统都会为其分配一个唯一的端口信息,即系统中不可能同时出现相同的端口信息。具体在本专利技术中,当某个应用程序,例如应用程序A处于运行状态中时,用户通过应用程序A中的相关链接向应用程序B的本地服务器发送连接请求;本地服务器接收到客户端发送的连接请求后,可以通过终端设备的系统获取到应用程序A的客户端的端口信息。其中具体的,本专利技术获取客户端的端口信息可以采用如下方式实现,如图2所示的步骤1011-步骤1012:步骤1011,调用accept函数获取所述客户端的Socket(套接字)。步骤1012,根据所述Socket获取所述客户端对应的端口信息。即本专利技术通过调用accept函数获取客户端的Socket,然后通过Socket(如Socket类的getPort函数)获取到客户端对应的端口信息。本专利技术实施例还可提供另一种获本文档来自技高网...
一种验证客户端合法性的方法和装置

【技术保护点】
一种验证客户端合法性的方法,其特征在于,包括:在接收到客户端发送的连接请求时,获取所述客户端的端口信息;根据所述端口信息获取所述客户端的应用信息;判断所述应用信息是否为预先存储的合法应用信息;若是则确定所述客户端合法。

【技术特征摘要】
1.一种验证客户端合法性的方法,其特征在于,包括:在接收到客户端发送的连接请求时,获取所述客户端的端口信息;根据所述端口信息获取所述客户端的应用信息;判断所述应用信息是否为预先存储的合法应用信息;若是则确定所述客户端合法。2.根据权利要求1所述的方法,其特征在于,所述获取所述客户端的端口信息包括:调用accept函数获取所述客户端的套接字Socket;根据所述Socket获取所述客户端对应的端口信息。3.根据权利要求1所述的方法,其特征在于,所述根据所述端口信息获取所述客户端的应用信息,包括:获取所述客户端的端口对应的协议文件;根据所述客户端的端口从所述协议文件保存的端口与用户标识符UID的对应关系中,获取所述客户端的UID;根据所述客户端的UID获取所述客户端的应用信息。4.根据权利要求3所述的方法,其特征在于,所述应用信息包括应用名PackageName和签名信息,所述根据所述客户端的UID获取所述客户端的应用信息,包括:根据所述客户端的UID获取所述客户端的PackageName;根据所述客户端的PackageName获取所述客户端的签名信息;判断所述应用信息是否为预先存储的合法应用信息,包括:判断所述客户端的PackageName和签名信息是否均为预先存储的合法信息,若是则确定所述客户端的应用信息为预先存储的合法应用信息。5.根据权利要求1~4任一项所述的方法,其特征在于,还包括:当判断所述应用信息不为预先存储的合法应用信息,则确定所述客户端不合法。6.一种验证客户端合法性的装置,其特征在于,包括:接收模块,用于接收客户端发送的连接请求;第一获取模块...

【专利技术属性】
技术研发人员:盛振华
申请(专利权)人:高德信息技术有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1