《一种服务程序的验证方法及装置.pdf》由会员分享,可在线阅读,更多相关《一种服务程序的验证方法及装置.pdf(18页珍藏版)》请在专利查询网上搜索。
1、10申请公布号CN104219052A43申请公布日20141217CN104219052A21申请号201410419318322申请日20140822H04L9/3220060171申请人小米科技有限责任公司地址100085北京市海淀区清河中街68号华润五彩城购物中心二期13层72发明人姜伟张明冬舒真才74专利代理机构北京弘权知识产权代理事务所普通合伙11363代理人逯长明许伟群54发明名称一种服务程序的验证方法及装置57摘要本公开是关于一种服务程序的验证方法及装置,该方法包括接收到服务程序发送的获取预设信息的网络请求和服务程序的标识;提取网络请求中的源端口号;确定与源端口号对应的进程标识。
2、;确定进程标识对应的当前启动路径;确定预先与服务程序的标识建立对应关系的目标启动路径;在当前启动路径与目标启动路径相同时,将预设信息发送给服务程序。由于服务程序的标识与目标启动路径预先建立过对应关系,如果当前启动路径与目标启动路径相同,说明该服务程序的当前启动路径与该服务程序的标识是相匹配的,所以认为该服务程序为合法程序,并将预设信息发送给该服务程序。因此,本公开提供的方案可以提高对服务程序的验证准确度,从而保证预设信息的安全。51INTCL权利要求书3页说明书11页附图3页19中华人民共和国国家知识产权局12发明专利申请权利要求书3页说明书11页附图3页10申请公布号CN104219052A。
3、CN104219052A1/3页21一种服务程序的验证方法,其特征在于,包括接收到服务程序发送的获取预设信息的网络请求和所述服务程序的标识;提取所述网络请求中的源端口号;确定与所述源端口号对应的进程标识;确定所述进程标识对应的当前启动路径;确定预先与所述服务程序的标识建立对应关系的目标启动路径;在所述当前启动路径与所述目标启动路径相同时,将所述预设信息发送给所述服务程序。2根据权利要求1所述的服务程序的验证方法,其特征在于,所述方法还包括确定所述进程标识对应的当前运行账户;确定预先与所述服务程序的标识建立对应关系的目标运行账户;判断所述当前运行账户与所述目标运行账户是否相同;在所述当前运行账户。
4、与所述目标运行账户相同时,执行所述确定所述进程标识的当前启动路径的步骤;在所述当前运行账户与所述目标运行账户不同时,输出运行账户不匹配的信息。3根据权利要求2所述的服务程序的验证方法,其特征在于,所述方法还包括确定所述进程标识对应的当前日志文件标识;确定预先与所述服务程序的标识建立对应关系的目标日志文件标识;判断所述当前日志文件标识与所述目标日志文件标识是否相同;在所述当前日志文件标识与所述目标日志文件标识相同时,执行所述确定所述进程标识对应的当前运行账户的步骤;在所述当前日志文件标识与所述目标日志文件标识不同时,输出日志文件标识不匹配的信息。4根据权利要求3所述的服务程序的验证方法,其特征在。
5、于,所述方法还包括判断所述服务程序的标识是否有权限获取所述预设信息;在所述服务程序的标识有权限获取所述预设信息时,执行所述确定所述进程标识对应的当前日志文件标识的步骤;在所述服务程序的标识没有权限获取所述预设信息时,输出没有权限获取所述预设信息的提示信息。5根据权利要求1所述的服务程序的验证方法,其特征在于,所述方法还包括判断是否存储有所述服务程序的标识;在存储有所述服务程序的标识时,执行所述提取所述网络请求中的源端口号的步骤;在未存储有所述服务程序的标识时,输出所述服务程序的标识不匹配的信息。6根据权利要求1所述的服务程序的验证方法,其特征在于,所述方法还包括获取含有所述预设信息的加密文件,。
6、所述加密文件为通过预设加密算法对所述预设信息进行加密生成;利用预设解密算法对所述加密文件进行解密生成所述预设信息。7一种服务程序的验证装置,其特征在于,包括接收模块,用于接收到服务程序发送的获取预设信息的网络请求和所述服务程序的标权利要求书CN104219052A2/3页3识;提取模块,用于提取所述网络请求中的源端口号;第一确定模块,用于确定与所述源端口号对应的进程标识;第二确定模块,用于确定所述进程标识对应的当前启动路径;第三确定模块,用于确定预先与所述服务程序的标识建立对应关系的目标启动路径;发送模块,用于在所述当前启动路径与所述目标启动路径相同时,将所述预设信息发送给所述服务程序。8根据。
7、权利要求7所述的服务程序的验证装置,其特征在于,所述装置还包括第四确定模块,用于确定所述进程标识对应的当前运行账户;第五确定模块,用于确定预先与所述服务程序的标识建立对应关系的目标运行账户;第一判断模块,用于判断所述当前运行账户与所述目标运行账户是否相同;第一执行模块,用于在所述当前运行账户与所述目标运行账户相同时,执行所述第二确定模块;在所述当前运行账户与所述目标运行账户不同时,输出运行账户不匹配的信息。9根据权利要求8所述的服务程序的验证装置,其特征在于,所述装置还包括第六确定模块,用于确定所述进程标识对应的当前日志文件标识;第七确定模块,用于确定预先与所述服务程序的标识建立对应关系的目标。
8、日志文件标识;第二判断模块,用于判断所述当前日志文件标识与所述目标日志文件标识是否相同;第二执行模块,用于在所述当前日志文件标识与所述目标日志文件标识相同时,执行所述第四确定模块;在所述当前日志文件标识与所述目标日志文件标识不同时,输出日志文件标识不匹配的信息。10根据权利要求9所述的服务程序的验证装置,其特征在于,所述装置还包括第三判断模块,用于判断所述服务程序的标识是否有权限获取所述预设信息;第三执行模块,用于在所述服务程序的标识有权限获取所述预设信息时,执行所述第六确定模块;在所述服务程序的标识没有权限获取所述预设信息时,输出没有权限获取所述预设信息的提示信息。11根据权利要求7所述的服。
9、务程序的验证装置,其特征在于,所述装置还包括第四判断模块,用于判断是否存储有所述服务程序的标识;第四执行模块,用于在存储有所述服务程序的标识时,执行所述提取模块;在未存储有所述服务程序的标识时,输出所述服务程序的标识不匹配的信息。12根据权利要求7所述的服务程序的验证装置,其特征在于,所述装置还包括获取模块,用于获取含有所述预设信息的加密文件,所述加密文件为通过预设加密算法对所述预设信息进行加密生成;解密模块,用于利用预设解密算法对所述加密文件进行解密生成所述预设信息。13一种服务程序的验证装置,其特征在于,包括处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为接收到服务程序发。
10、送的获取预设信息的网络请求和所述服务程序的标识;权利要求书CN104219052A3/3页4提取所述网络请求中的源端口号;确定与所述源端口号对应的进程标识;确定所述进程标识对应的当前启动路径;确定预先与所述服务程序的标识建立对应关系的目标启动路径;在所述当前启动路径与所述目标启动路径相同时,将所述预设信息发送给所述服务程序。权利要求书CN104219052A1/11页5一种服务程序的验证方法及装置技术领域0001本发明涉及通信技术领域,更具体的说,涉及服务程序的验证方法及装置。背景技术0002目前,由于数据库中经常存储有用户隐私信息或财务关键数据等重要私密信息,所以为了保证数据库中信息的安全,。
11、通常需要提供指定用户名和密码才能够访问数据库中的信息。为了提高访问数据库的效率,通常采用预先编辑好的服务程序来获取指定用户名和密码,以使服务程序能够利用该指定用户名和密码访问数据库,在服务程序访问数据库中的信息后,它便可以利用数据库中的信息进行后续的分析、统计或计算等操作。0003数据库的指定用户名和密码通常存储在终端内,为了避免非法服务程序获取访问数据库的指定用户名和密码,终端会对每个获取指定用户名和密码的服务程序进行验证,以判断该服务程序是否为合法服务程序,终端的验证过程如下首先,运行在终端内的服务程序会向终端发送获取访问数据库的指定用户名和密码的指令,并将服务程序的名称发送给终端;其次,。
12、终端在接收到服务程序的名称后,终端会在合法服务程序的名称列表中查找该服务程序的名称;最后,如果终端在合法服务程序的名称列表中查找到该服务程序的名称,那么终端会认为该服务程序为合法服务程序,并将访问数据库的指定用户名和密码发送给该服务程序,如果终端在合法服务程序的名称列表中无法查找到该服务程序的名称,那么终端会认为该服务程序为非法服务程序,并拒绝将访问数据库的指定用户名和密码发送给该服务程序。0004在研究和实践过程中,发明人发现上述相关的验证技术至少存在以下问题0005上述相关的验证技术能够根据服务程序的名称来判断出该服务程序为合法服务程序还是非法服务程序。但是,如果非法服务程序将真实的名称伪。
13、装成合法服务程序的名称,那么终端就会将非法服务程序误认为是合法服务程序,终端会将访问数据库的指定用户名和密码发送给该非法服务程序,所以上述相关的验证技术的验证准确度相对较低,也就无法保证预设信息的安全。例如,终端内预先存储有合法服务程序的名称列表,该名称列表中包括名称A、名称B和名称C,假设非法服务程序的名称为D,由于非法服务程序通过某种非法手段得知合法服务程序的名称列表中的名称,所以非法服务程序可以将真实的名称D伪装成名称A,在非法服务程序将名称A发送给终端以后,终端会认为该非法服务程序为合法服务程序,从而将访问数据库的指定用户名和密码发送给该非法服务程序。0006因此,如何提供一种验证准确。
14、度更高的验证方法,以保证预设信息的安全,成为目前亟需解决的问题。发明内容0007为克服相关技术中存在的问题,本公开提供一种服务程序的验证方法及装置,以提高对服务程序的验证准确度,从而保证预设信息的安全。0008根据本公开实施例的第一方面,提供一种服务程序的验证方法,包括说明书CN104219052A2/11页60009接收到服务程序发送的获取预设信息的网络请求和所述服务程序的标识;0010提取所述网络请求中的源端口号;0011确定与所述源端口号对应的进程标识;0012确定所述进程标识对应的当前启动路径;0013确定预先与所述服务程序的标识建立对应关系的目标启动路径;0014在所述当前启动路径与。
15、所述目标启动路径相同时,将所述预设信息发送给所述服务程序。0015可选的,所述方法还包括0016确定所述进程标识对应的当前运行账户;0017确定预先与所述服务程序的标识建立对应关系的目标运行账户;0018判断所述当前运行账户与所述目标运行账户是否相同;0019在所述当前运行账户与所述目标运行账户相同时,执行所述确定所述进程标识的当前启动路径的步骤;0020在所述当前运行账户与所述目标运行账户不同时,输出运行账户不匹配的信息。0021可选的,所述方法还包括0022确定所述进程标识对应的当前日志文件标识;0023确定预先与所述服务程序的标识建立对应关系的目标日志文件标识;0024判断所述当前日志文。
16、件标识与所述目标日志文件标识是否相同;0025在所述当前日志文件标识与所述目标日志文件标识相同时,执行所述确定所述进程标识对应的当前运行账户的步骤;0026在所述当前日志文件标识与所述目标日志文件标识不同时,输出日志文件标识不匹配的信息。0027可选的,所述方法还包括0028判断所述服务程序的标识是否有权限获取所述预设信息;0029在所述服务程序的标识有权限获取所述预设信息时,执行所述确定所述进程标识对应的当前日志文件标识的步骤;0030在所述服务程序的标识没有权限获取所述预设信息时,输出没有权限获取所述预设信息的提示信息。0031可选的,所述方法还包括0032判断是否存储有所述服务程序的标识。
17、;0033在存储有所述服务程序的标识时,执行所述提取所述网络请求中的源端口号的步骤;0034在未存储有所述服务程序的标识时,输出所述服务程序的标识不匹配的信息。0035可选的,所述方法还包括0036获取含有所述预设信息的加密文件,所述加密文件为通过预设加密算法对所述预设信息进行加密生成;0037利用预设解密算法对所述加密文件进行解密生成所述预设信息。0038根据本公开实施例的第二方面,提供一种服务程序的验证装置,包括0039接收模块,用于接收到服务程序发送的获取预设信息的网络请求和所述服务程序说明书CN104219052A3/11页7的标识;0040提取模块,用于提取所述网络请求中的源端口号;。
18、0041第一确定模块,用于确定与所述源端口号对应的进程标识;0042第二确定模块,用于确定所述进程标识对应的当前启动路径;0043第三确定模块,用于确定预先与所述服务程序的标识建立对应关系的目标启动路径;0044发送模块,用于在所述当前启动路径与所述目标启动路径相同时,将所述预设信息发送给所述服务程序。0045可选的,所述装置还包括0046第四确定模块,用于确定所述进程标识对应的当前运行账户;0047第五确定模块,用于确定预先与所述服务程序的标识建立对应关系的目标运行账户;0048第一判断模块,用于判断所述当前运行账户与所述目标运行账户是否相同;0049第一执行模块,用于在所述当前运行账户与所。
19、述目标运行账户相同时,执行所述第二确定模块;在所述当前运行账户与所述目标运行账户不同时,输出运行账户不匹配的信息。0050可选的,所述装置还包括0051第六确定模块,用于确定所述进程标识对应的当前日志文件标识;0052第七确定模块,用于确定预先与所述服务程序的标识建立对应关系的目标日志文件标识;0053第二判断模块,用于判断所述当前日志文件标识与所述目标日志文件标识是否相同;0054第二执行模块,用于在所述当前日志文件标识与所述目标日志文件标识相同时,执行所述第四确定模块;在所述当前日志文件标识与所述目标日志文件标识不同时,输出日志文件标识不匹配的信息。0055可选的,所述装置还包括0056第。
20、三判断模块,用于判断所述服务程序的标识是否有权限获取所述预设信息;0057第三执行模块,用于在所述服务程序的标识有权限获取所述预设信息时,执行所述第六确定模块;在所述服务程序的标识没有权限获取所述预设信息时,输出没有权限获取所述预设信息的提示信息。0058可选的,所述装置还包括0059第四判断模块,用于判断是否存储有所述服务程序的标识;0060第四执行模块,用于在存储有所述服务程序的标识时,执行所述提取模块;在未存储有所述服务程序的标识时,输出所述服务程序的标识不匹配的信息。0061可选的,所述装置还包括0062获取模块,用于获取含有所述预设信息的加密文件,所述加密文件为通过预设加密算法对所述。
21、预设信息进行加密生成;0063解密模块,用于利用预设解密算法对所述加密文件进行解密生成所述预设信息。0064根据本公开实施例的第三方面,提供另一种服务程序的验证装置,包括说明书CN104219052A4/11页80065处理器;0066用于存储处理器可执行指令的存储器;0067其中,所述处理器被配置为0068接收到服务程序发送的获取预设信息的网络请求和所述服务程序的标识;0069提取所述网络请求中的源端口号;0070确定与所述源端口号对应的进程标识;0071确定所述进程标识对应的当前启动路径;0072确定预先与所述服务程序的标识建立对应关系的目标启动路径;0073在所述当前启动路径与所述目标启。
22、动路径相同时,将所述预设信息发送给所述服务程序。0074本公开的实施例提供的技术方案可以包括以下有益效果服务程序在发送网络请求时需要使用一个源端口号,而该源端口号当前只能被该服务程序独占,所以可以确定出与该源端口号对应的进程标识,并且可以确定出该进程标识对应的当前启动路径,当前启动路径也即为该服务程序的启动路径。由于服务程序的标识与目标启动路径预先建立过对应关系,如果当前启动路径与目标启动路径相同,说明该服务程序的当前启动路径与该服务程序的标识是相匹配的,所以认为该服务程序为合法程序,并将预设信息发送给该服务程序。因此,本公开提供的方案可以提高对服务程序的验证准确度,从而保证预设信息的安全。0。
23、075应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。附图说明0076此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。0077图1是根据一示例性实施例示出的一种服务程序的验证方法的流程图。0078图2是根据一示例性实施例示出的一种服务程序的验证装置的示意图。0079图3是根据一示例性实施例示出的一种服务程序的验证装置的框图。具体实施方式0080这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描。
24、述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。0081实施例一0082图1是根据一示例性实施例示出的一种服务程序的验证方法的流程图,如图1所示,图1所示的服务程序的验证方法可以用于终端中。本公开提供的服务程序的验证方法可以提高对服务程序的验证准确度,从而保证预设信息的安全。该方法包括以下步骤。0083在步骤S11中,接收到服务程序发送的获取预设信息的网络请求和服务程序的标识。说明书CN104219052A5/11页90084其中,本公开提供的方法可以应用在终端内。在终端接收到服务程序发送的获取预设信息的网。
25、络请求和服务程序的标识时,终端并不知道该服务程序是否为合法服务程序,在通过后续步骤验证出该服务程序为合法服务程序时,则将预设信息发送给该服务程序。0085另外,预设信息即为敏感信息,例如,预设信息可以为访问数据库的用户名和密码。当然,预设信息也可以为其他种类的敏感信息。0086服务程序可以为通过某种编程语言编写的程序,服务程序被预制在终端内,用于获取到终端内的预设信息,并且利用该预设信息去实现其他的功能,例如,服务程序可以为利用JAVA面向对象程序设计语言进行编写的程序,用于获取终端内用户名和密码,并且利用该用户名和密码去访问数据库,从而获取数据库中的信息。0087网络请求可以为TCPTRAN。
26、SMISSIONCONTROLPROTOCOL,传输控制协议请求,当然,也可以为其他类型的请求。但是,网络请求中需要包含有源端口号,以便于后续步骤能够通过源端口号来确定出进程标识。0088服务程序的标识可以为预先给服务程序设定的名称,例如,预先给服务程序设定的名称为A,那么名称A便是服务程序的标识;服务程序的标识还可以为预先给服务程序设定的编号,例如,预先给服务程序设定的编号为1001,那么编号1001便是服务程序的标识。0089在步骤S12中,提取网络请求中的源端口号。0090其中,通常情况下,网络请求中会包含源端口号和目的端口号等相关信息,所以终端可以提取出网络请求的源端口号。例如,网络请。
27、求为TCP请求,终端可以提取出TCP请求中的源端口号。0091另外,在服务程序发送网络请求时,服务程序需要使用一个端口号作为网络请求中的源端口号。由于服务程序使用的端口号只能被该服务程序独占,所以终端在网络请求中提取出来的源端口号即为服务程序当前正在使用的端口号。0092在步骤S13中,确定与源端口号对应的进程标识。0093其中,由于当前存在一个进程用来执行服务程序,被服务程序占用的源端口号相当于被该进程所占用,而且每个进程均有唯一一个进程标识,所以终端可以确定出与源端口号对应的进程标识。0094在步骤S14中,确定进程标识对应的当前启动路径。0095其中,该当前启动路径指的是服务程序的启动路。
28、径。在大多数终端的操作系统中,都可以通过进程标识来查询当前启动路径,例如,在WINDOWS或LINUX等操作系统上,均可以通过进程标识来查询当前启动路径。0096在步骤S15中,确定预先与服务程序的标识建立对应关系的目标启动路径。0097其中,终端预先确定出服务程序的标识对应的目标启动路径,并预先建立该服务程序的标识与目标启动路径的对应关系,所以终端可以确定出预先与服务程序的标识建立对应关系的目标启动路径。0098在步骤S16中,在当前启动路径与目标启动路径相同时,将预设信息发送给服务程序。0099其中,虽然服务程序可以伪装它的标识,但是终端查询到的当前运行路径是该服务程序的真实的运行路径,当。
29、前运行路径是服务程序无法伪装的,所以终端可以将当前运说明书CN104219052A6/11页10行路径与预先存储的目标运行路径进行比较,在当前启动路径与目标启动路径相同时,才说明该服务程序没有伪装它的标识,且该服务程序为合法服务程序,终端才会将预设信息发送给该服务程序;在当前启动路径与目标启动路径不同时,说明该服务程序伪装了它的标识,且该服务程序为非法服务程序,终端便不会将预设信息发送给该服务程序。0100在图1所示的实施例中,服务程序在发送网络请求时需要使用一个源端口号,而该源端口号当前只能被该服务程序独占,所以可以确定出与该源端口号对应的进程标识,并且可以确定出该进程标识对应的当前启动路径。
30、,当前启动路径也即为该服务程序的启动路径。由于服务程序的标识与目标启动路径预先建立过对应关系,如果当前启动路径与目标启动路径相同,说明该服务程序的当前启动路径与该服务程序的标识是相匹配的,所以认为该服务程序为合法程序,并将预设信息发送给该服务程序。因此,本公开提供的方案可以提高对服务程序的验证准确度,从而保证预设信息的安全。0101为了更好的说明图1所示的方法,下面通过例子来进行说明0102例如,假设终端为电脑,服务程序预制在电脑内,用于获取电脑内的预设信息A。首先,服务程序会向电脑发送获取预设信息A的TCP请求和服务程序的标识B。然后,电脑在接收到TCP请求和服务程序的标识B时,会提取TCP。
31、请求中的源端口号C,并确定出与源端口号C对应的进程标识D,再确定出进程标识D对应的当前启动路径E。电脑在确定出当前启动路径E以后,会确定出预先与服务程序的标识B建立对应关系的目标启动路径F,此时,电脑会判断当前启动路径E与目标启动路径F是否相同,如果电脑判断出当前启动路径E与目标启动路径F相同,那么说明服务程序没有伪装它的标识B,并且该服务程序为合法服务程序,电脑会将预设信息A发送给该服务程序;如果电脑判断出当前启动路径E与目标启动路径F不同,说明该服务程序伪装了它的标识B,且该服务程序为非法服务程序,电脑便不会将预设信息A发送给该服务程序。0103在本公开的一个可选的实施例中,在步骤S14之。
32、前,在步骤S13之后,本公开提供的方法还可以包括以下步骤确定进程标识对应的当前运行账户;确定预先与服务程序的标识建立对应关系的目标运行账户;判断当前运行账户与目标运行账户是否相同;在当前运行账户与目标运行账户相同时,执行步骤S14;在当前运行账户与目标运行账户不同时,输出运行账户不匹配的信息。这样做的目的是,为了避免非法人员恶意的控制服务程序获取预设信息。终端需要根据进程标识确定出登录终端的当前运行账户,只有在当前运行账户与预先存储的正确的目标运行账户相同时,终端才会执行后续步骤,进而判断服务程序是否合法;在当前运行账户与预先存储的正确的目标运行账户不同时,终端便会认为该服务程序不合法,并且不。
33、会执行后续步骤,也就不会给该服务程序发送预设信息。0104例如,假设终端为电脑,服务程序预制在电脑内,用于获取电脑内的预设信息A,用户通过当前运行账户X登录的电脑。首先,服务程序会向电脑发送获取预设信息A的TCP请求和服务程序的标识B。然后,电脑在接收到TCP请求和服务程序的标识B时,会提取TCP请求中的源端口号C,并确定出与源端口号C对应的进程标识D。此时,电脑可以通过进程标识D来确定出登录电脑的当前运行账户X,并确定预先与服务程序的标识D建立对应关系的目标运行账户Y,电脑会判断当前运行账户X与目标运行账户Y是否相同,在当前运行账户X与目标运行账户Y不同时,则电脑认为用户登录的当前运行账户X。
34、为非法的账户,电脑不会执行后续步骤;在当前运行账户X与目标运行账户Y相同时,则电脑认为用户登录的当说明书CN104219052A107/11页11前运行账户X为合法的账户,电脑会再确定出进程标识D对应的当前启动路径E。电脑在确定出当前启动路径E以后,会确定出预先与服务程序的标识B建立对应关系的目标启动路径F,此时,电脑会判断当前启动路径E与目标启动路径F是否相同,如果电脑判断出当前启动路径E与目标启动路径F相同,那么说明服务程序没有伪装它的标识B,并且该服务程序为合法服务程序,电脑会将预设信息A发送给该服务程序;如果电脑判断出当前启动路径E与目标启动路径F不同,说明该服务程序伪装了它的标识B,。
35、且该服务程序为非法服务程序,电脑便不会将预设信息A发送给该服务程序。0105在本公开的一个可选的实施例中,在步骤S14之前,在步骤S13之后,本公开提供的方法还可以包括以下步骤确定进程标识对应的当前日志文件标识;确定预先与服务程序的标识建立对应关系的目标日志文件标识;判断当前日志文件标识与目标日志文件标识是否相同;在当前日志文件标识与目标日志文件标识相同时,执行确定进程标识对应的当前运行账户的步骤;在当前日志文件标识与目标日志文件标识不同时,输出日志文件标识不匹配的信息。确定进程标识对应的当前运行账户;确定预先与服务程序的标识建立对应关系的目标运行账户;判断当前运行账户与目标运行账户是否相同;。
36、在当前运行账户与目标运行账户相同时,执行步骤S14;在当前运行账户与目标运行账户不同时,输出运行账户不匹配的信息。这样做的目的是,在某些情况下,进程标识对应的当前运行账户与服务程序的标识对应的目标运行账户相同,而且,进程标识对应的当前运行路径与服务程序的标识对应的目标运行路径也相同,但是,该服务程序仍然有可能是非法程序。因为在当前运行账户和当前运行路径均合法的情况下,非法的服务程序可能会存储在当前运行路径下,所以在当前运行账户和当前运行路径均合法的情况下,并不能说明该服务程序即为合法的服务程序,该服务程序也有可能为非法的服务程序,所以本公开可以通过判断进程标识对应的当前日志文件标识与目标日志文。
37、件标识是否相同,来确定该服务程序是否合法。0106例如,假设终端为电脑,服务程序预制在电脑内,用于获取电脑内的预设信息A,用户通过当前运行账户X登录的电脑。首先,服务程序会向电脑发送获取预设信息A的TCP请求和服务程序的标识B。然后,电脑在接收到TCP请求和服务程序的标识B时,会提取TCP请求中的源端口号C,并确定出与源端口号C对应的进程标识D。此时,电脑可以通过进程标识D来确定进程标识D对应的当前日志文件标识E,并确定出预先与服务程序的标识B建立对应关系的目标日志文件标识F,电脑会判断当前日志文件标识E与目标日志文件标识F是否相同,在当前日志文件标识E与目标日志文件标识F不同时,则电脑认为服。
38、务程序所写的日志文件的当前日志文件标识E不正确,说明该服务程序为非法的服务程序,电脑不会执行后续步骤,仅会输出日志文件标识不匹配的提示信息。在当前日志文件标识E与目标日志文件标识F相同时,则电脑认为服务程序所写的日志文件的当前日志文件标识E是正确的,说明该服务程序有可能为合法的服务程序,所以电脑便会执行后续判断该服务程序的当前运行账户和当前运行路径是否合法的步骤。0107在本公开的一个可选的实施例中,在步骤S14之前,在步骤S13之后,本公开提供的方法还可以包括以下步骤判断服务程序的标识是否有权限获取预设信息;在服务程序的标识有权限获取预设信息时,执行确定进程标识对应的当前日志文件标识的步骤;。
39、在服务程序的标识没有权限获取预设信息时,输出没有权限获取预设信息的提示信息。确定进程标识对应的当前日志文件标识;确定预先与服务程序的标识建立对应关系的目标日志文说明书CN104219052A118/11页12件标识;判断当前日志文件标识与目标日志文件标识是否相同;在当前日志文件标识与目标日志文件标识相同时,执行确定进程标识对应的当前运行账户的步骤;在当前日志文件标识与目标日志文件标识不同时,输出日志文件标识不匹配的信息。确定进程标识对应的当前运行账户;确定预先与服务程序的标识建立对应关系的目标运行账户;判断当前运行账户与目标运行账户是否相同;在当前运行账户与目标运行账户相同时,执行步骤S14;。
40、在当前运行账户与目标运行账户不同时,输出运行账户不匹配的信息。这样做的目的是,终端内预先存储有服务程序的标识与预设信息的对应关系,但是服务程序的标识可能会对应有多个预设信息,每个与该服务程序的标识对应的预设信息均会设置有一个权限标识,该权限标识用于说明该服务程序的标识是否有权限获取该预设信息。如果终端检测到服务程序的标识根本就没有获取预设信息的权限,那么终端根本就不需要再判断该服务程序是否为合法的服务程序,会直接输出没有权限获取预设信息的提示信息,并不会执行后续的判断步骤;如果终端检测到服务程序的标识具有获取预设信息的权限,那么终端便会执行后续判断该服务程序是否为合法的服务程序的步骤。0108。
41、例如,假设终端为电脑,服务程序预制在电脑内,用于获取电脑内的预设信息A,电脑内存储有与服务程序的标识B对应的多个预设信息,这些与服务程序的标识B对应的预设信息包括预设信息A、预设信息C和预设信息D,但是,电脑判断出该服务程序的标识B仅有权限获取预设信息C,没有权限获取预设信息A和预设信息D,那么电脑便不会继续执行后续步骤,仅会输出没有权限获取预设信息的提示信息。0109又如,假设终端为电脑,服务程序预制在电脑内,用于获取电脑内的预设信息A,电脑内存储有与服务程序的标识B对应的多个预设信息,这些与服务程序的标识B对应的预设信息包括预设信息A、预设信息C和预设信息D,此时,电脑判断出该服务程序的标。
42、识B拥有权限获取预设信息A、预设信息C和预设信息D,那么电脑便会执行后续判断该服务程序是否为合法的服务程序的步骤。0110在本公开的一个可选的实施例中,在步骤S12之前,在步骤S11之后,本公开提供的方法还可以包括以下步骤判断是否存储有服务程序的标识;在存储有服务程序的标识时,执行步骤S12;在未存储有服务程序的标识时,输出服务程序的标识不匹配的信息。这样做的目的是,如果终端内未存储有该服务程序的标识,那么说明该服务程序为非法的服务程序,所以终端无需继续执行后续的步骤;如果终端内存储有该服务程序的标识,那么说明该服务程序有可能为合法的服务程序,所以终端便会执行后续判断该服务程序是否为合法的服务。
43、程序的步骤。0111在本公开的一个可选的实施例中,在步骤S11之前,本公开提供的方法还可以包括以下步骤获取含有预设信息的加密文件,加密文件为通过预设加密算法对预设信息进行加密生成;利用预设解密算法对加密文件进行解密生成预设信息。这样做的目的是,为了提高传输预设信息的安全性,终端可以获取含有预设信息的加密文件,在获取到该加密文件以后,终端可以利用预设解密算法对加密文件进行解密生成预设信息。其中,预设加密算法和预设解密算法可以为非对称加密RSA算法生成的公钥和私钥。0112实施例二0113图2是根据一示例性实施例示出的一种服务程序的验证装置的示意图。本公开提供的服务程序的验证装置可以提高对服务程序。
44、的验证准确度,从而保证预设信息的安全。说明书CN104219052A129/11页13参照图2,该装置包括接收模块11、提取模块12、第一确定模块13、第二确定模块14、第三确定模块15和发送模块16。其中0114接收模块11,用于接收到服务程序发送的获取预设信息的网络请求和服务程序的标识;0115提取模块12,用于提取网络请求中的源端口号;0116第一确定模块13,用于确定与源端口号对应的进程标识;0117第二确定模块14,用于确定进程标识对应的当前启动路径;0118第三确定模块15,用于确定预先与服务程序的标识建立对应关系的目标启动路径;0119发送模块16,用于在当前启动路径与目标启动路。
45、径相同时,将预设信息发送给服务程序。0120在本公开的一个可选的实施例中,该装置还可以包括以下模块第四确定模块,用于确定进程标识对应的当前运行账户;第五确定模块,用于确定预先与服务程序的标识建立对应关系的目标运行账户;第一判断模块,用于判断当前运行账户与目标运行账户是否相同;第一执行模块,用于在当前运行账户与目标运行账户相同时,执行第二确定模块14;在当前运行账户与目标运行账户不同时,输出运行账户不匹配的信息。0121在本公开的一个可选的实施例中,该装置还可以包括以下模块第六确定模块,用于确定进程标识对应的当前日志文件标识;第七确定模块,用于确定预先与服务程序的标识建立对应关系的目标日志文件标。
46、识;第二判断模块,用于判断当前日志文件标识与目标日志文件标识是否相同;第二执行模块,用于在当前日志文件标识与目标日志文件标识相同时,执行第四确定模块;在当前日志文件标识与目标日志文件标识不同时,输出日志文件标识不匹配的信息。0122在本公开的一个可选的实施例中,该装置还可以包括以下模块第三判断模块,用于判断服务程序的标识是否有权限获取预设信息;第三执行模块,用于在服务程序的标识有权限获取预设信息时,执行第六确定模块;在服务程序的标识没有权限获取预设信息时,输出没有权限获取预设信息的提示信息。0123在本公开的一个可选的实施例中,该装置还可以包括以下模块第四判断模块,用于判断是否存储有服务程序的。
47、标识;第四执行模块,用于在存储有服务程序的标识时,执行提取模块12;在未存储有服务程序的标识时,输出服务程序的标识不匹配的信息。0124在本公开的一个可选的实施例中,该装置还可以包括以下模块获取模块,用于获取含有预设信息的加密文件,加密文件为通过预设加密算法对预设信息进行加密生成;解密模块,用于利用预设解密算法对加密文件进行解密生成预设信息。0125关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。0126实施例三0127图3是根据一示例性实施例示出的一种服务程序的验证装置800的框图。例如,装置800可以是移动电话,计算机。
48、,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。0128参照图3,装置800可以包括以下一个或多个组件处理组件802,存储器804,电说明书CN104219052A1310/11页14源组件806,多媒体组件808,音频组件810,输入/输出I/O的接口812,传感器组件814,以及通信组件816。0129处理组件802通常控制装置800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组。
49、件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。0130存储器804被配置为存储各种类型的数据以支持在装置800的操作。这些数据的示例包括用于在装置800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器SRAM,电可擦除可编程只读存储器EEPROM,可擦除可编程只读存储器EPROM,可编程只读存储器PROM,只读存储器ROM,磁存储器,快闪存储器,磁盘或光盘。0131电源组件806为装置800的各种组件。
50、提供电力。电源组件806可以包括电源管理系统,一个或多个电源,及其他与为装置800生成、管理和分配电力相关联的组件。0132多媒体组件808包括在所述装置800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器LCD和触摸面板TP。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当装置800处于操作模式,如拍摄模式。