基于进程的信息处理方法、装置及存储介质与流程

文档序号:20838831发布日期:2020-05-22 17:13阅读:193来源:国知局
基于进程的信息处理方法、装置及存储介质与流程

本申请涉及通信技术领域,尤其涉及一种基于进程的信息处理方法、装置及存储介质。



背景技术:

当前时代,移动互联网在带来灵活便捷的同时,也带来了信息安全的问题,用户个人信息和个人隐私的保护越来越重要。

目前,移动设备中安装有各种不同功能的应用,各类应用由于功能的差别,所具有的能力权限也有区别,其能力包括但不局限于:安装app、获取地理位置、获取通信录、进行系统相关设置等等,而提供这些能力的系统进程,通常在无需用户参与或知晓的情况下会自动启动,并非用户来控制。具体的,当某一安装应用需要这些系统进程提供隐私信息,或者不同安装应用的进程间需要进行信息传输时,可以先询问用户是否可以提供该权限,只有在用户允许的情况下,相应进程间才能进行信息传输,但是在传输过程中,终端中的流氓软件很容易截取传输信息,从而造成用户隐私信息泄露,安全性低。



技术实现要素:

本申请实施例提供一种基于进程的信息处理方法、装置及存储介质,能实现进程间信息的安全传输,避免信息泄露。

本申请实施例提供了一种基于进程的信息处理方法,包括:

获取信息发送指令,所述信息发送指令携带源进程获取的明文信息、源进程标识以及目标进程标识;

根据所述目标进程标识和源进程标识确定目标共享密钥;

根据所述目标共享密钥生成动态密码;

利用所述动态密码对所述待发送信息进行加密,得到密文信息;

将所述密文信息发送至所述目标进程标识对应的目标进程。

本申请实施例还提供了一种基于进程的信息处理装置,包括:

获取模块,用于获取信息发送指令,所述信息发送指令携带源进程获取的明文信息、源进程标识以及目标进程标识;

确定模块,用于根据所述目标进程标识和源进程标识确定目标共享密钥;

生成模块,用于根据所述目标共享密钥生成动态密码;

加密模块,用于利用所述动态密码对所述明文信息进行加密,得到密文信息;

发送模块,用于将所述密文信息发送至所述目标进程标识对应的目标进程。

其中,所述生成模块具体包括:

第一生成单元,用于根据所述目标共享密钥生成具有预设个字节的第一字符串,所述第一字符串为十六进制的字符串;

确定单元,用于根据所述第一字符串确定偏移位数;

提取单元,用于根据所述偏移位数从所述第一字符串中提取出基础字符串;

第二生成单元,用于根据所述基础字符串生成动态密码。

其中,所述第一生成单元具体用于:

获取当前时间戳、以及所述源进程标识对应的已计数时间戳和预设时间步数;

计算所述当前时间戳与已计数时间戳之差,得到差值;

计算所述差值与预设时间步数之商,得到商值;

利用预设哈希算法、所述商值和目标共享密钥生成具有预设个字节的第一字符串。

其中,所述第一生成单元具体用于:

获取所述源进程标识对应的已计数次数;

利用预设哈希算法、所述已计数次数和目标共享密钥生成具有预设个字节的第一字符串。

其中,所述确定单元具体用于:

选取所述第一字符串中的最后一个字节,作为目标字节;

对所述目标字节中的末尾字符进行十进制转换,得到偏移位数。

其中,所述第二生成单元具体用于:

将所述基础字符串进行十进制转换,得到数字串;

根据预设密码长度对所述数字串进行取模运算,得到动态密码。

其中,该信息处理装置还包括解密模块,用于:

当所述目标进程接收到所述密文信息时,根据所述目标进程标识和源进程标识确定所述目标共享密钥;

根据所述目标共享密钥生成所述动态密码;

利用所述动态密码对所述密文信息进行解密,以得到所述明文信息。

本申请实施例还提供了一种计算机可读存储介质,所述存储介质中存储有多条指令,所述指令适于由处理器加载以执行上述任一项基于进程的信息处理方法。

本申请提供的基于进程的信息处理方法、装置及存储介质,通过获取信息发送指令,该信息发送指令携带源进程获取的明文信息、源进程标识以及目标进程标识,并根据该目标进程标识和源进程标识确定目标共享密钥,之后根据该目标共享密钥生成动态密码,并利用该动态密码对该明文信息进行加密,得到密文信息,最后将该密文信息发送至该目标进程标识对应的目标进程,从而能在进程通信过程中,最大程度避免第三方软件对明文信息的窃取,提高通信安全性,可靠度高。

附图说明

下面结合附图,通过对本申请的具体实施方式详细描述,将使本申请的技术方案及其它有益效果显而易见。

图1为本申请实施例提供的基于进程的信息处理系统的应用场景示意图。

图2为本申请实施例提供的基于进程的信息处理方法的流程示意图。

图3为本申请实施例提供的权限请求界面的结构示意图。

图4为本申请实施例提供的基于进程的信息处理方法的另一流程示意图。

图5为本申请实施例提供的基于进程的信息处理流程的框架示意图。

图6为本申请实施例提供的wifi管家应用与王者荣耀应用的交互过程示意图。

图7为本申请实施例提供的基于进程的信息处理装置的结构示意图。

图8为本申请实施例提供的基于进程的信息处理装置的另一结构示意图。

图9为本申请实施例提供的电子设备的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请实施例提供一种基于进程的信息处理方法、装置及存储介质。

请参阅图1,图1为基于进程的信息处理系统的场景示意图,该基于进程的信息处理系统可以包括本申请实施例提供的任一种基于进程的信息处理装置,该基于进程的信息处理装置可以集成在电子设备,比如移动终端或服务器中。

该电子设备可以获取信息发送指令,该信息发送指令携带源进程获取的明文信息、源进程标识以及目标进程标识;根据该目标进程标识和源进程标识确定目标共享密钥;根据该目标共享密钥生成动态密码;利用该动态密码对该待发送信息进行加密,得到密文信息;将该密文信息发送至该目标进程标识对应的目标进程。

其中,进程标识是进程的唯一识别标识,电子设备中的每个进程都有自己的进程标识。源进程指发送信息的进程,目标进程指接收信息的进程,这两个进程通常属于不同应用。该目标共享密钥可以是提前存储好的,由于同一源进程可以向多个目标进程发送信息,同一目标进程也可以接收多个源进程发送的信息,不同源进程和目标进程之间的通信可以对应不同共享密钥,因此,可以提前将共享密钥与进程标识关联存储,当不同源进程向不同目标进程发送信息时,可以根据关联关系找到对应的共享密钥作为目标共享密钥。

譬如,在图1中,该电子设备可以是用户终端,该源进程可以为终端中采集地理位置信息(比如gps)的系统进程,该目标进程可以为终端中即时通讯应用的进程。当即时通讯应用具有获取终端地理位置信息的权限时,每当该源进程采集到gps信息,就会生成一个信息发送指令,终端系统内核会根据该发送指令先找到该源进程和目标进程对应的共享密钥,并根据该共享密钥生成动态密码,之后,利用该动态密码对该gps信息加密后发送给目标进程,从而即使在发送过程中被第三方软件拦截,由于不知道解密密码,第三方软件也很难得到原始gps信息,从而较好的保护了用户隐私。

如图2所示,图2是本申请实施例提供的基于进程的信息处理方法的流程示意图,该基于进程的信息处理方法具体流程可以如下:

s101.获取信息发送指令,该信息发送指令携带源进程获取的明文信息、源进程标识以及目标进程标识。

本实施例中,进程标识是进程的唯一识别标识,电子设备中的每个进程都有自己的进程标识,其中,源进程标识指发送信息的进程(也即本实施例中的源进程)的进程标识,目标进程标识指接收信息的进程(也即本实施例中的目标进程)的进程标识,这两个进程通常属于不同应用。该明文信息主要指源进程得到的原始信息,比如地理位置信息、网络速度信息、通讯录信息等等。

具体的,当电子设备中的应用在运行时,可以向用户询问是否为其赋予某些权限,而一旦用户赋予了权限,则该应用的运行进程会与提供该能力的进程进行信息交互,比如请参见图3,wifi管家应用首次在电子设备上运行时,可以生成一个权限请求界面,以请求用户为其提供终端定位权限,其中,该权限请求界面除了告知用户请求目的,还可以提供“不允许”和“允许”两个选择按钮,一旦用户选择了“允许”,则表示wifi管家应用被赋予了定位权限,之后,一旦采集地理位置信息的系统进程(也即源进程)获取到了地理位置信息,则会生成信息发送指令。

s102.根据该目标进程标识和源进程标识确定目标共享密钥。

本实施例中,该目标共享密钥可以是提前存储好的,由于同一源进程可以向多个目标进程发送信息,同一目标进程也可以接收多个源进程发送的信息,为提高安全性,同一源进程和不同目标进程之间的通信可以设置不同共享密钥,为此,可以提前将共享密钥与进程标识关联存储,当某个源进程向某个目标进程发送信息时,可以根据关联关系找到对应的共享密钥作为目标共享密钥。

s103.根据该目标共享密钥生成动态密码。

本实施例中,动态密码是指随着某一事件(密码被使用、一定的时间流逝等)的发生而重新生成的密码,其最大优点是防重复执行攻击,能很好地避免类似静态密码可能被暴力破解等的缺陷,提高信息传输的安全性。该动态密码的生成算法可以包括totp(time-basedone-timepasswordalgorithm)算法和hotp(hamc-basedone-timepasswordalgorithm)算法,或者其他可以生成动态密码的算法,其中,totp为基于事件计数的算法,totp是基于时间计数的算法。

例如,上述步骤s103具体可以包括:

s1031.根据该目标共享密钥生成具有预设个字节的第一字符串,该第一字符串为十六进制的字符串。

本实施例中,该第一字符串主要包括数字和/或符号,该预设个字节可以人为设定,比如20个字节。可以利用预设哈希算法来生成该第一字符串,该预设哈希函数可以包括hmac-sha-1、hmac-sha-256、hmac-sha-512和hmac-md5等,具体不做限定。

例如,当为totp算法时,该步骤s1031具体可以包括:

获取当前时间戳、以及该源进程标识对应的已计数时间戳和预设时间步数;

计算该当前时间戳与已计数时间戳之差,得到差值;

计算该差值与预设时间步数之商,得到商值;

利用预设哈希算法、该商值和目标共享密钥生成具有预设个字节的第一字符串。

本实施例中,可以分别在源进程和目标进程中设置一个时间计数器,其中,这两个时间计数器是同步运行的,它们具有相同的初始计数时间戳和预设时间步数,其中,该预设时间步数是指动态密码变化的间隔时长,比如预设时间步数为30s,就表示生成的动态密码每30秒变化一次,通常情况下,对于同步运行的两个时间计数器,每次动态密码变化时,计数时间戳彼此相同。

具体的,假设目标共享密钥为k,当前时间戳为t1,已计数时间戳为t2,预设时间步数为t,则商值c=(t1-t2)/t,之后,利用预设哈希算法对k和c进行处理,得到所需固定字节数的十六进制字符串。

例如,当为hotp算法时,该步骤s1031具体可以包括:

获取该源进程标识对应的已计数次数;

利用预设哈希算法、该已计数次数和目标共享密钥生成具有预设个字节的第一字符串。

本实施例中,可以分别在源进程和目标进程中设置一个事件计数器,其中,这两个事件计数器是同步运行的,在每次密码验证成功之后,这两个事件计数器的值都加1,以确保得到新的动态密码。

s1032.根据该第一字符串确定偏移位数。

例如,上述步骤s1032具体可以包括:

选取该第一字符串中的最后一个字节,作为目标字节;

对该目标字节中的末尾字符进行十进制转换,得到偏移位数。

本实施例中,一个字节通常等于8位二进制数,等于2位十六进制数,对于十六进制的第一字符串来说,该末尾字符相当于该第一字符串的最后一个字符,比如,若第一字符串的最后两个字符为5a时,相当于目标字节为5a,则末尾字符为a,偏移位数为a对应的十进制数10。

s1033.根据该偏移位数从该第一字符串中提取出基础字符串。

本实施例中,可以从十六进制的第一字符串中第偏移位数个字节开始,连续选取多个字节,该选取字节的数量可以根据动态密码的长度而定,比如对于六位数的动态密码,可以选取4个字节,之后将选取的字节作为基础字符串。

s1034.根据该基础字符串生成动态密码。

例如,上述步骤s1034具体可以包括:

将该基础字符串进行十进制转换,得到数字串;

根据预设密码长度对该数字串进行取模运算,得到动态密码。

本实施例中,该预设密码长度是人为设定的,比如6位或者8位,通常,长度越长,该密码破解难度越高。比如,若该基础字符串为50ef7f19,预设密码长度为6,则需先将50ef7f19转化为十进制数1357872921,之后对十进制数进行取模运算,也即1357872921mod10^6=872921,从而872921为最终生成的动态密码。

s104.利用该动态密码对该明文信息进行加密,得到密文信息。

本实施例中,该加密算法主要包括对称式加密算法,也即加密和解密使用同一个共享密钥,比如des(dataencryptionstandard,数据加密标准)算法、rc算法以及blowfish算法等。

s105.将该密文信息发送至该目标进程标识对应的目标进程。

本实施例中,在进程间通信过程中,通过生成动态密码,并利用动态密码对明文信息加密后再进行传输,可以最大程度避免第三方软件对明文信息的窃取,提高进程通信的安全性。

需要说明的是,对于目标进程接收到的密文信息,后续还涉及相应解密操作,也即,该基于进程的信息处理方法还包括:

当该目标进程接收到该密文信息时,根据该目标进程标识和源进程标识确定该目标共享密钥;

根据该目标共享密钥生成该动态密码;

利用该动态密码对该密文信息进行解密,以得到该明文信息。

本实施例中,对于对称式加密算法,其解密算法是加密算法的逆运算。具体的,每当有目标进程接收到源进程发送的密文信息时,可以先根据两者的进程标识获取相应的共享密钥,并采用类似上述步骤s103所示的方法再次生成一个动态密码,通常情况下,由于动态密码的基本认证原理是在认证双方(也即本实施例中的源进程和目标进程)共享密钥,并基于某一个事件计数或时间戳、以及同一加密算法对信息进行加密,故认证双方生成的动态密码通常是一样的,若存在不一样的情况,目标进程可以根据前一个事件计数或者前一计数时间戳来生成动态密钥。

由上述可知,本申请提供的基于进程的信息处理方法,通过获取信息发送指令,该信息发送指令携带源进程获取的明文信息、源进程标识以及目标进程标识,并根据该目标进程标识和源进程标识确定目标共享密钥,之后根据该目标共享密钥生成动态密码,并利用该动态密码对该明文信息进行加密,得到密文信息,最后将该密文信息发送至该目标进程标识对应的目标进程,从而能在进程通信过程中,最大程度避免第三方软件对明文信息的窃取,提高通信安全性,可靠度高。

根据上述实施例,以下将以该基于进程的信息处理方法应用于移动终端中为例进行详细说明。

请参见图4,图4是本申请实施例提供的基于进程的信息处理方法的流程示意图,该基于进程的信息处理方法具体流程可以如下:

s201.移动终端获取信息发送指令,该信息发送指令携带源进程获取的明文信息、源进程标识以及目标进程标识。

譬如,在生成信息发送指令之前,目标进程需要向用户请求源进程的信息获取权限(也即鉴权),请参见图5,该源进程为王者荣耀游戏的应用进程,该目标进程为wifi管家的应用进程,首先,在权限请求生成之前,移动终端需要进行一系列预处理,比如wifi管家应用为王者荣耀游戏应用申请license证书,并导入sdk(softwaredevelopmentkit,软件开发工具包)文件进行工程配置,之后对license进行配置。一切准备就绪后,当王者荣耀应用启动时,可以向用户显示一个权限请求界面,以提示用户是否授予权限,当用户选择是时,表示鉴权成功,此时,wifi管家应用才能调用该sdk文件与王者荣耀应用进行通信,比如请参见图6,在鉴权之后,王者荣耀应用从启动到开始游戏,再到游戏结束这个过程中,可以将自身运行状态、网络数据使用情况以及其他指定信息实时发送给wifi管家应用,也即王者荣耀应用只要获取到满足条件的明文信息,比如游戏开始指令、游戏结束指令、网络数据使用情况等,其均可以生成信息发送指令。

s202.移动终端根据该目标进程标识和源进程标识确定目标共享密钥。

譬如,一旦鉴权成功,可以立即为wifi管家应用和王者荣耀应用之间的通信关联一个共享密钥,该共享密钥可以是通过随机方式生成的,从而后续可以根据进程标识找到该关联的共享密钥。

s203.移动终端根据该目标共享密钥生成具有预设个字节的第一字符串,该第一字符串为十六进制的字符串。

譬如,可以采用hotp算法或者totp算法生成动态密钥,其中,当为totp算法时,该步骤s203具体可以包括:

获取当前时间戳、以及该源进程标识对应的已计数时间戳和预设时间步数;

计算该当前时间戳与已计数时间戳之差,得到差值;

计算该差值与预设时间步数之商,得到商值;

利用预设哈希算法、该商值和目标共享密钥生成具有预设个字节的第一字符串。

本实施例中,可以分别在源进程和目标进程中设置一个时间计数器,其中,这两个时间计数器是同步运行的,它们具有相同的初始计数时间戳和预设时间步数,其中,该预设时间步数是指动态密码变化的间隔时长,比如预设时间步数为30s,就表示生成的动态密码每30秒变化一次,通常情况下,对于同步运行的两个时间计数器,每次动态密码变化时,计数时间戳彼此相同。

具体的,假设目标共享密钥为k,当前时间戳为t1,已计数时间戳为t2,预设时间步数为t,则商值c=(t1-t2)/t,之后,利用预设哈希算法对k和c进行处理,得到所需固定字节数的十六进制字符串。

例如,当为hotp算法时,该步骤s203具体可以包括:

获取该源进程标识对应的已计数次数;

利用预设哈希算法、该已计数次数和目标共享密钥生成具有预设个字节的第一字符串。

本实施例中,可以分别在源进程和目标进程中设置一个事件计数器,其中,这两个事件计数器是同步运行的,在每次密码验证成功之后,这两个事件计数器的值都加1,以确保得到新的动态密码。

s204.移动终端选取该第一字符串中的最后一个字节,作为目标字节,之后对该目标字节中的末尾字符进行十进制转换,得到偏移位数。

譬如,该第一字符串可以是“1f8598690e02ca16618550ef7f19da8e945b555a”,由于一个字节等于2位十六进制数,故目标字节为“5a”,目标字节中的末尾字符为“a”,此时,对“a”进行十进制转换,得到10,也即偏移位数。

s205.移动终端根据该偏移位数从该第一字符串中提取出基础字符串。

s206.移动终端将该基础字符串进行十进制转换,得到数字串,并根据预设密码长度对该数字串进行取模运算,得到动态密码。

s207.移动终端利用该动态密码对该明文信息进行加密,得到密文信息,并将该密文信息发送至该目标进程标识对应的目标进程。

譬如,可以从第一字符串中第10个字节开始,选取4个连续字节,也即选取“50ef7f19”作为基础字符串,之后,若预设密码长度为6,则需先将50ef7f19转化为十进制数1357872921,之后对十进制数进行取模运算,也即1357872921mod10^6=872921,从而872921为最终生成的动态密码,之后可以利用des算法和该动态密码对明文信息进行加密,并将密文信息发送至wifi管家应用。

s208.当该目标进程接收到该密文信息时,移动终端根据该目标进程标识和源进程标识确定该目标共享密钥。

s209.移动终端根据该目标共享密钥生成该动态密码,并利用该动态密码对该密文信息进行解密,以得到该明文信息。

譬如,在wifi管家应用接收到密文信息时,在基于相同事件计数器或者时间计数器的基础上,可以采用同样的totp算法或者hotp算法生成该动态密码,之后利用加密算法的逆运算和该动态密码对密文信息进行解密,得到明文信息,从而实现进程间的安全通信。

需要说明的是,在该图6中,wifi管家应用在每次得到明文信息之后,其可以直接根据明文信息进行一些处理,比如控制王者荣耀应用的网速,或者将该明文信息上传至平台服务器进行其他处理,并向王者荣耀应用返回确认信息,以告知其成功完成此次数据传送,而在wifi管家应用与王者荣耀应用的通讯过程中,wifi管家应用可以时不时向王者荣耀应用发送心跳包,以告知王者荣耀应用其连接状态,王者荣耀应用接收到该心跳包之后,会先进行校验,校验成功后会返回一个确认信息,以保证wifi管家应用和王者荣耀应用能及时知悉对方的运行状态。

根据上述实施例所描述的方法,本实施例将从基于进程的信息处理装置的角度进一步进行描述,该基于进程的信息处理装置具体可以作为独立的实体来实现,也可以集成在电子设备中来实现。

请参阅图7,图7具体描述了本申请实施例提供的基于进程的信息处理装置,应用于电子设备,该基于进程的信息处理装置可以包括:获取模块10、确定模块20、生成模块30、加密模块40和发送模块50,其中:

(1)获取模块10

获取模块10,用于获取信息发送指令,该信息发送指令携带源进程获取的明文信息、源进程标识以及目标进程标识。

本实施例中,进程标识是进程的唯一识别标识,电子设备中的每个进程都有自己的进程标识,其中,源进程标识指发送信息的进程(也即本实施例中的源进程)的进程标识,目标进程标识指接收信息的进程(也即本实施例中的目标进程)的进程标识,这两个进程通常属于不同应用。该明文信息主要指源进程得到的原始信息,比如地理位置信息、网络速度信息、通讯录信息等等。

具体的,当电子设备中的应用在运行时,可以向用户询问是否为其赋予某些权限,而一旦用户赋予了权限,则该应用的运行进程会与提供该能力的进程进行信息交互,比如请参见图3,wifi管家应用首次在电子设备上运行时,可以生成一个权限请求界面,以请求用户为其提供终端定位权限,其中,该权限请求界面除了告知用户请求目的,还可以提供“不允许”和“允许”两个选择按钮,一旦用户选择了“允许”,则表示wifi管家应用被赋予了定位权限,之后,一旦采集地理位置信息的系统进程(也即源进程)获取到了地理位置信息,则会生成信息发送指令。

(2)确定模块20

确定模块20,用于根据该目标进程标识和源进程标识确定目标共享密钥。

本实施例中,该目标共享密钥可以是提前存储好的,由于同一源进程可以向多个目标进程发送信息,同一目标进程也可以接收多个源进程发送的信息,为提高安全性,同一源进程和不同目标进程之间的通信可以设置不同共享密钥,为此,可以提前将共享密钥与进程标识关联存储,当某个源进程向某个目标进程发送信息时,可以根据关联关系找到对应的共享密钥作为目标共享密钥。

(3)生成模块30

生成模块30,用于根据该目标共享密钥生成动态密码。

本实施例中,动态密码是指随着某一事件(密码被使用、一定的时间流逝等)的发生而重新生成的密码,其最大优点是防重复执行攻击,能很好地避免类似静态密码可能被暴力破解等的缺陷,提高信息传输的安全性。该动态密码的生成算法可以包括totp(time-basedone-timepasswordalgorithm)算法和hotp(hamc-basedone-timepasswordalgorithm)算法,或者其他可以生成动态密码的算法,其中,totp为基于事件计数的算法,totp是基于时间计数的算法。

例如,请参见图8,该生成模块30具体包括:

第一生成单元31,用于根据该目标共享密钥生成具有预设个字节的第一字符串,该第一字符串为十六进制的字符串。

本实施例中,该第一字符串主要包括数字和/或符号,该预设个字节可以人为设定,比如20个字节。可以利用预设哈希算法来生成该第一字符串,该预设哈希函数可以包括hmac-sha-1、hmac-sha-256、hmac-sha-512和hmac-md5等,具体不做限定。

例如,当为totp算法时,该第一生成单元31具体用于:

获取当前时间戳、以及该源进程标识对应的已计数时间戳和预设时间步数;

计算该当前时间戳与已计数时间戳之差,得到差值;

计算该差值与预设时间步数之商,得到商值;

利用预设哈希算法、该商值和目标共享密钥生成具有预设个字节的第一字符串。

本实施例中,可以分别在源进程和目标进程中设置一个时间计数器,其中,这两个时间计数器是同步运行的,它们具有相同的初始计数时间戳和预设时间步数,其中,该预设时间步数是指动态密码变化的间隔时长,比如预设时间步数为30s,就表示生成的动态密码每30秒变化一次,通常情况下,对于同步运行的两个时间计数器,每次动态密码变化时,计数时间戳彼此相同。

具体的,假设目标共享密钥为k,当前时间戳为t1,已计数时间戳为t2,预设时间步数为t,则商值c=(t1-t2)/t,之后,利用预设哈希算法对k和c进行处理,得到所需固定字节数的十六进制字符串。

例如,当为hotp算法时,该第一生成单元31具体用于:

获取该源进程标识对应的已计数次数;

利用预设哈希算法、该已计数次数和目标共享密钥生成具有预设个字节的第一字符串。

本实施例中,可以分别在源进程和目标进程中设置一个事件计数器,其中,这两个事件计数器是同步运行的,在每次密码验证成功之后,这两个事件计数器的值都加1,以确保得到新的动态密码。

确定单元32,用于根据该第一字符串确定偏移位数。

例如,该确定单元32具体用于:

选取该第一字符串中的最后一个字节,作为目标字节;

对该目标字节中的末尾字符进行十进制转换,得到偏移位数。

本实施例中,一个字节通常等于8位二进制数,等于2位十六进制数,对于十六进制的第一字符串来说,该末尾字符相当于该第一字符串的最后一个字符,比如,若第一字符串的最后两个字符为5a时,相当于目标字节为5a,则末尾字符为a,偏移位数为a对应的十进制数10。

提取单元33,用于根据该偏移位数从该第一字符串中提取出基础字符串。

本实施例中,可以从十六进制的第一字符串中第偏移位数个字节开始,连续选取多个字节,该选取字节的数量可以根据动态密码的长度而定,比如对于六位数的动态密码,可以选取4个字节,之后将选取的字节作为基础字符串。

第二生成单元34,用于根据该基础字符串生成动态密码。

例如,该第二生成单元34具体用于:

将该基础字符串进行十进制转换,得到数字串;

根据预设密码长度对该数字串进行取模运算,得到动态密码。

本实施例中,该预设密码长度是人为设定的,比如6位或者8位,通常,长度越长,该密码破解难度越高。比如,若该基础字符串为50ef7f19,预设密码长度为6,则需先将50ef7f19转化为十进制数1357872921,之后对十进制数进行取模运算,也即1357872921mod10^6=872921,从而872921为最终生成的动态密码。

(4)加密模块40

加密模块40,用于利用该动态密码对该明文信息进行加密,得到密文信息。

本实施例中,该加密算法主要包括对称式加密算法,也即加密和解密使用同一个共享密钥,比如des(dataencryptionstandard,数据加密标准)算法、rc算法以及blowfish算法等。

(5)发送模块50

发送模块50,用于将该密文信息发送至该目标进程标识对应的目标进程。

本实施例中,在进程间通信过程中,通过生成动态密码,并利用动态密码对明文信息加密后再进行传输,可以最大程度避免第三方软件对明文信息的窃取,提高进程通信的安全性。

需要说明的是,对于目标进程接收到的密文信息,后续还涉及相应解密操作,也即,在该图8中,该信息处理装置还包括解密模块60,用于:

当该目标进程接收到该密文信息时,根据该目标进程标识和源进程标识确定该目标共享密钥;

根据该目标共享密钥生成该动态密码;

利用该动态密码对该密文信息进行解密,以得到该明文信息。

本实施例中,对于对称式加密算法,其解密算法是加密算法的逆运算。具体的,每当有目标进程接收到源进程发送的密文信息时,可以先根据两者的进程标识获取相应的共享密钥,并采用类似上述步骤s103所示的方法再次生成一个动态密码,通常情况下,由于动态密码的基本认证原理是在认证双方(也即本实施例中的源进程和目标进程)共享密钥,并基于某一个事件计数或时间戳、以及同一加密算法对信息进行加密,故认证双方生成的动态密码通常是一样的,若存在不一样的情况,目标进程可以根据前一个事件计数或者前一计数时间戳来生成动态密钥。

具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。

由上述可知,本实施例提供的基于进程的信息处理装置,通过获取模块10获取信息发送指令,该信息发送指令携带源进程获取的明文信息、源进程标识以及目标进程标识,确定模块20根据该目标进程标识和源进程标识确定目标共享密钥,之后生成模块30根据该目标共享密钥生成动态密码,加密模块40利用该动态密码对该明文信息进行加密,得到密文信息,发送模块50将该密文信息发送至该目标进程标识对应的目标进程,从而能在进程通信过程中,最大程度避免第三方软件对明文信息的窃取,提高通信安全性,可靠度高。

相应的,本发明实施例还提供一种基于进程的信息处理系统,包括本发明实施例所提供的任一种基于进程的信息处理装置,该基于进程的信息处理装置可以集成在电子设备中。

其中,电子设备可以获取信息发送指令,该信息发送指令携带源进程获取的明文信息、源进程标识以及目标进程标识;根据该目标进程标识和源进程标识确定目标共享密钥;根据该目标共享密钥生成动态密码;利用该动态密码对该待发送信息进行加密,得到密文信息;将该密文信息发送至该目标进程标识对应的目标进程。

以上各个设备的具体实施可参见前面的实施例,在此不再赘述。

由于该基于进程的信息处理系统可以包括本发明实施例所提供的任一种基于进程的信息处理装置,因此,可以实现本发明实施例所提供的任一种基于进程的信息处理装置所能实现的有益效果,详见前面的实施例,在此不再赘述。

相应的,本发明实施例还提供一种电子设备,如图9所示,其示出了本发明实施例所涉及的电子设备的结构示意图,具体来讲:

该电子设备可以包括一个或者一个以上处理核心的处理器401、一个或一个以上计算机可读存储介质的存储器402、射频(radiofrequency,rf)电路403、电源404、输入单元405、以及显示单元406等部件。本领域技术人员可以理解,图9中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:

处理器401是该电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。可选的,处理器401可包括一个或多个处理核心;优选的,处理器401可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器401中。

存储器402可用于存储软件程序以及模块,处理器401通过运行存储在存储器402的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器402可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器402还可以包括存储器控制器,以提供处理器401对存储器402的访问。

rf电路403可用于收发信息过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器401处理;另外,将涉及上行的数据发送给基站。通常,rf电路403包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(sim)卡、收发信机、耦合器、低噪声放大器(lna,lownoiseamplifier)、双工器等。此外,rf电路403还可以通过无线通信与网络和其他设备通信。该无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(gsm,globalsystemofmobilecommunication)、通用分组无线服务(gprs,generalpacketradioservice)、码分多址(cdma,codedivisionmultipleaccess)、宽带码分多址(wcdma,widebandcodedivisionmultipleaccess)、长期演进(lte,longtermevolution)、电子邮件、短消息服务(sms,shortmessagingservice)等。

电子设备还包括给各个部件供电的电源404(比如电池),优选的,电源404可以通过电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源404还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。

该电子设备还可包括输入单元405,该输入单元405可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,在一个具体的实施例中,输入单元405可包括触敏表面以及其他输入设备。触敏表面,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面上或在触敏表面附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器401,并能接收处理器401发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面。除了触敏表面,输入单元405还可以包括其他输入设备。具体地,其他输入设备可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。

该电子设备还可包括显示单元406,该显示单元406可用于显示由用户输入的信息或提供给用户的信息以及电子设备的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元406可包括显示面板,可选的,可以采用液晶显示器(lcd,liquidcrystaldisplay)、有机发光二极管(oled,organiclight-emittingdiode)等形式来配置显示面板。进一步的,触敏表面可覆盖显示面板,当触敏表面检测到在其上或附近的触摸操作后,传送给处理器401以确定触摸事件的类型,随后处理器401根据触摸事件的类型在显示面板上提供相应的视觉输出。虽然在图9中,触敏表面与显示面板是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面与显示面板集成而实现输入和输出功能。

尽管未示出,电子设备还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,电子设备中的处理器401会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现各种功能,如下:

获取信息发送指令,该信息发送指令携带源进程获取的明文信息、源进程标识以及目标进程标识;

根据该目标进程标识和源进程标识确定目标共享密钥;

根据该目标共享密钥生成动态密码;

利用该动态密码对该明文信息进行加密,得到密文信息;

将该密文信息发送至该目标进程标识对应的目标进程。

该电子设备可以实现本发明实施例所提供的任一种基于进程的信息处理装置所能实现的有效效果,详见前面的实施例,在此不再赘述。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(rom,readonlymemory)、随机存取记忆体(ram,randomaccessmemory)、磁盘或光盘等。

以上对本发明实施例所提供的一种基于进程的信息处理方法、装置、存储介质和电子设备进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

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