操作意图识别方法及其系统
技术领域
本发明涉及信息处理识别技术领域,尤其涉及一种操作意图识别方法及其系统。
背景技术
随着科学技术的不断发展,计算机网络、智能设备等高科技正不断进入并改变人类的生活。传统的接触式的生活场景,例如沟通交流、支付、开关电器、解锁等操作正在逐渐往网络化方向发展,即操作方在不需要接触被操作方实体的情况下也能完成对应动作。
然而在接触式交互场景网络化的进程中,不可避免的会出现一个问题:如何确认操作指令确实由操作方,且出于操作方的意图发出。接触式交互场景中,由于所有的操作必须“接触”才能完成,故操作方的身份和操作意图不存在问题,例如在面对面的支付场景中,支付方可以清晰的知道被支付方的身份,同时,支付方也是有意图执行支付动作。但是在网络化交互场景中,被操作方无法确认操作方的身份,也无法确信操作方是否有发起操作的意图。通常的解决方案是,引入一个可信的第三方对双方身份进行验证。以支付场景为例,银行或交易平台就作为可信的第三方来验证支付方和被支付方的身份信息。但是这种解决方案依然存在被冒充合法指令的情况,因为第三方也无法对操作指令的意图进行甄别,造成操作方或者被操作方的损失。
在公开号为CN104935550A的中国专利公开文件中,提出了一种融合计算机、网络和生物技术为一体的智能化电子商务用户管理系统技术及运行方法,把来自于用户本身的生物信息直接应用于网络用户的身份识别和支付验证操作,虽然可以防止用户自身的账户被他人非法操作,但无法识别出操作指令是否是出于用户自身的意图发出的,即有可能用户是在他人的胁迫下进行操作的。
发明内容
本发明所要解决的技术问题是:提供一种操作意图识别方法及其系统,可对操作方及其操作意图进行识别,保证安全性。
为了解决上述技术问题,本发明采用的技术方案为:一种操作意图识别方法,包括:
接收操作方的身份信息和第一机器编码;
根据所述身份信息和第一机器编码,生成对应所述操作方的身份识别密钥,并进行存储;
接收操作方发出的指令映射请求和操作方输入的第二机器编码,所述指令映射请求包括预设的被操作方、预设的第三机器编码和预设的字符组合;
根据所述身份识别密钥、第二机器编码和第三机器编码,加密得到加密键;
将所述第二机器编码作为加密因子,对所述预设的字符组合进行加密,得到加密值;
关联所述加密键和加密值,得到对应所述身份识别密钥的加密指令映射,并进行存储;
重复执行所述接收操作方发出的指令映射请求和操作方输入的第二机器编码至所述得到对应所述身份识别密钥的加密指令映射的步骤,得到对应所述身份识别密钥的加密指令映射集合;
接收操作方输入的第四机器编码;
根据所述第四机器编码和身份识别密钥,加密得到一加密键;
根据所述一加密键,在所述加密指令映射集合中进行匹配;
若匹配成功,获取所述一加密键对应的加密值;
接收操作方输入的第五机器编码;
使用所述第五机器编码对所述加密值进行解密;
若解密成功,接收并执行所述操作方发送的操作指令。
本发明还涉及一种操作意图识别系统,包括:
第一接收模块,用于接收操作方的身份信息和第一机器编码;
第一生成模块,用于根据所述身份信息和第一机器编码,生成对应所述操作方的身份识别密钥,并进行存储;
第二接收模块,用于接收操作方发出的指令映射请求和操作方输入的第二机器编码,所述指令映射请求包括预设的被操作方、预设的第三机器编码和预设的字符组合;
第一加密模块,用于根据所述身份识别密钥、第二机器编码和第三机器编码,加密得到加密键;
第二加密模块,用于将所述第二机器编码作为加密因子,对所述预设的字符组合进行加密,得到加密值;
关联模块,用于关联所述加密键和加密值,得到对应所述身份识别密钥的加密指令映射,并进行存储;
第一执行模块,用于重复执行所述接收操作方发出的指令映射请求和操作方输入的第二机器编码至所述得到对应所述身份识别密钥的加密指令映射的步骤,得到对应所述身份识别密钥的加密指令映射集合;
第三接收模块,用于接收操作方输入的第四机器编码;
第三加密模块,用于根据所述第四机器编码和身份识别密钥,加密得到一加密键;
匹配模块,用于根据所述一加密键,在所述加密指令映射集合中进行匹配;
第一获取模块,用于若匹配成功,获取所述一加密键对应的加密值;
第四接收模块,用于接收操作方输入的第五机器编码;
解密模块,用于使用所述第五机器编码对所述加密值进行解密;
第二执行模块,用于若解密成功,接收并执行所述操作方发送的操作指令。
本发明的有益效果在于:通过生成身份识别密钥,可对操作方进行识别,防止被他人非法操作;通过生成对应所述身份识别密钥的加密指令映射集合,可对操作方的操作意图进行识别,保证向被操作方发出的指令都是可信有效的,可避免因身份丢失而被他人非法发出仿冒操作指令,导致的操作方或者被操作方的损失;同时,具有普遍适用性,即可接受任何输入设备输入的机器编码,也可以适配不同被操作方的目标系统操作信号;具有物理安全性,不依赖于某个特定的系统或者硬件设备,冒用操作方操作非常困难,但是操作方要恢复操作却十分容易。
附图说明
图1为本发明一种操作意图识别方法的流程图;
图2为本发明实施例一的方法流程图;
图3为本发明实施例二步骤S3的方法流程图;
图4为本发明实施例二步骤S7的方法流程图;
图5为本发明实施例二步骤S12的方法流程图;
图6为本发明一种操作意图识别系统的结构示意图;
图7为本发明实施例四的系统结构示意图。
标号说明:
1、第一接收模块;2、第一生成模块;3、第二接收模块;4、第一加密模块;5、第二加密模块;6、关联模块;7、第一执行模块;8、第三接收模块;9、第三加密模块;10、匹配模块;11、第一获取模块;12、第四接收模块;13、解密模块;14、第二执行模块;15、判断模块;16、第二获取模块;17、第三执行模块;
21、第一组合单元;22、第一加密单元;23、第一存储单元;
41、第二组合单元;42、第二加密单元;
91、第三组合单元;92、第三加密单元。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图详予说明。
本发明最关键的构思在于:生成对应操作方的身份识别密钥和加密指令映射集合,实现对操作方及其操作意图的验证识别。
请参阅图1,一种操作意图识别方法,包括:
接收操作方的身份信息和第一机器编码;
根据所述身份信息和第一机器编码,生成对应所述操作方的身份识别密钥,并进行存储;
接收操作方发出的指令映射请求和操作方输入的第二机器编码,所述指令映射请求包括预设的被操作方、预设的第三机器编码和预设的字符组合;
根据所述身份识别密钥、第二机器编码和第三机器编码,加密得到加密键;
将所述第二机器编码作为加密因子,对所述预设的字符组合进行加密,得到加密值;
关联所述加密键和加密值,得到对应所述身份识别密钥的加密指令映射,并进行存储;
重复执行所述接收操作方发出的指令映射请求和操作方输入的第二机器编码至所述得到对应所述身份识别密钥的加密指令映射的步骤,得到对应所述身份识别密钥的加密指令映射集合;
接收操作方输入的第四机器编码;
根据所述第四机器编码和身份识别密钥,加密得到一加密键;
根据所述一加密键,在所述加密指令映射集合中进行匹配;
若匹配成功,获取所述一加密键对应的加密值;
接收操作方输入的第五机器编码;
使用所述第五机器编码对所述加密值进行解密;
若解密成功,接收并执行所述操作方发送的操作指令。
从上述描述可知,本发明的有益效果在于:可对操作方进行识别,防止被他人非法操作;可对操作方的操作意图进行识别,保证向被操作方发出的指令都是可信有效的,可避免因身份丢失而被他人非法发出仿冒操作指令,导致的操作方或者被操作方的损失。
进一步地,所述“根据所述身份信息和第一机器编码,生成对应所述操作方的身份识别密钥,并进行存储”具体为:
组合所述操作方的身份信息和第一机器编码,得到第一组合;
使用加密算法,将所述第一组合加密成预设的第一长度值,得到对应所述操作方的身份识别密钥;
存储所述身份识别密钥。
进一步地,所述“根据所述身份识别密钥、第二机器编码和第三机器编码,加密得到加密键”具体为:
组合所述身份识别密钥、第二机器编码和第三机器编码,得到第二组合;
使用加密算法,将所述第二组合加密成预设的第二长度值,得到加密键。
进一步地,所述“根据所述第四机器编码和身份识别密钥,加密得到一加密键”具体为:
组合所述第四机器编码和身份识别密钥,得到第三组合;
使用加密算法,将所述第三组合加密成预设的第三长度值,得到一加密键。
由上述描述可知,通过加密,可进一步提高安全性。
进一步地,所述“接收操作方发出的指令映射请求和操作方输入的第二机器编码”之前,进一步包括:
判断是否存在对应所述身份识别密钥的加密指令映射集合;
若存在,获取所述加密指令映射集合;
若不存在,执行所述接收操作方发出的指令映射请求和操作方输入的第二机器编码的步骤。
由上述描述可知,若被操作方已存储有对应操作方的加密指令映射集合,则可直接获取,提高效率。
请参照图6,本发明还提出一种操作意图识别系统,包括:
第一接收模块,用于接收操作方的身份信息和第一机器编码;
第一生成模块,用于根据所述身份信息和第一机器编码,生成对应所述操作方的身份识别密钥,并进行存储;
第二接收模块,用于接收操作方发出的指令映射请求和操作方输入的第二机器编码,所述指令映射请求包括预设的被操作方、预设的第三机器编码和预设的字符组合;
第一加密模块,用于根据所述身份识别密钥、第二机器编码和第三机器编码,加密得到加密键;
第二加密模块,用于将所述第二机器编码作为加密因子,对所述预设的字符组合进行加密,得到加密值;
关联模块,用于关联所述加密键和加密值,得到对应所述身份识别密钥的加密指令映射,并进行存储;
第一执行模块,用于重复执行所述接收操作方发出的指令映射请求和操作方输入的第二机器编码至所述得到对应所述身份识别密钥的加密指令映射的步骤,得到对应所述身份识别密钥的加密指令映射集合;
第三接收模块,用于接收操作方输入的第四机器编码;
第三加密模块,用于根据所述第四机器编码和身份识别密钥,加密得到一加密键;
匹配模块,用于根据所述一加密键,在所述加密指令映射集合中进行匹配;
第一获取模块,用于若匹配成功,获取所述一加密键对应的加密值;
第四接收模块,用于接收操作方输入的第五机器编码;
解密模块,用于使用所述第五机器编码对所述加密值进行解密;
第二执行模块,用于若解密成功,接收并执行所述操作方发送的操作指令。
进一步地,所述第一生成模块包括:
第一组合单元,用于组合所述操作方的身份信息和第一机器编码,得到第一组合;
第一加密单元,用于使用加密算法,将所述第一组合加密成预设的第一长度值,得到对应所述操作方的身份识别密钥;
第一存储单元,用于存储所述身份识别密钥。
进一步地,所述第一加密模块包括:
第二组合单元,用于组合所述身份识别密钥、第二机器编码和第三机器编码,得到第二组合;
第二加密单元,用于使用加密算法,将所述第二组合加密成预设的第二长度值,得到加密键。
进一步地,所述第三加密模块包括:
第三组合单元,用于组合所述第四机器编码和身份识别密钥,得到第三组合;
第三加密单元,用于使用加密算法,将所述第三组合加密成预设的第三长度值,得到一加密键。
进一步地,还包括:
判断模块,用于判断是否存在对应所述身份识别密钥的加密指令映射集合;
第二获取模块,用于若存在,获取所述加密指令映射集合;
第三执行模块,用于若不存在,执行所述接收操作方发出的指令映射请求和操作方输入的第二机器编码的步骤。
实施例一
请参照图2,本发明的实施例一为:一种操作意图识别方法,包括如下步骤:
S1:预设可维护的、有限长度的、可穷举的机器编码集合和字符组合集合,所述机器编码集合中包含所有被操作方可接受的机器编码,所述字符组合集合中包含所有被操作方可接受的字符组合;可选的,所述机器编码,指国际通用的,具有采集动作行为并转换为机器编码的功能,例如键盘、鼠标、语音识别装置、动作识别装置等输入设备产生的机器编码数据,如448、4488、442、500、200、11011000、S9fn8G03p等;所述字符组合,指由一个或多个国际通用的字符集编码组成的字符串,字符集包括但不限于ASCII编码、GBK编码、Unicode编码、UTF-8编码、Base64编码等通用字符集,如F1、F2、F3、F4、500、200、A、10111100101001等;被操作方,如ATM键盘能接受的字符组合及其含义如表1所示。
被操作方可接受的字符组合 |
字符组合对应的含义 |
F1 |
查询全部余额 |
F2 |
查询部分余额 |
F3 |
取现 |
F4 |
取现并报警 |
500 |
数字500 |
200 |
数字200 |
表1
S2:接收操作方的身份信息和第一机器编码;所述身份信息包括姓名、身份证号等,所述第一机器编码由操作方的一串动作序列转换而成。
S3:根据所述身份信息和第一机器编码,生成对应所述操作方的身份识别密钥,并进行存储。
S4:判断是否存在对应所述身份识别密钥的加密指令映射集合,若是,执行步骤S5,若否,则需生成新的加密指令映射集合,执行步骤S6。
S5:获取所述加密指令映射集合,执行步骤S11。
S6:接收操作方发出的指令映射请求和操作方输入的第二机器编码,所述指令映射请求包括预设的被操作方、预设的第三机器编码和预设的字符组合;所述第二机器编码可以表征操作方的意图;部分预设的第三机器编码、预设的字符组合和输入的第二机器编码的组合如表2所示;例如,预设的被操作方为ATM键盘,预设的第三机器编码为“448”,预设的字符组合为“F1”,操作方输入的第二机器编码为“123”。
第三机器编码 |
字符组合 |
第二机器编码 |
448 |
F1 |
123 |
448 |
F2 |
321 |
442 |
F3 |
335 |
442 |
F4 |
3355 |
500 |
500 |
335 |
200 |
200 |
335 |
表2
S7:根据所述身份识别密钥、第二机器编码和第三机器编码,加密得到加密键;即将身份识别密钥、“123”和“448”进行加密,得到加密键。
S8:将所述第二机器编码作为加密因子,对所述预设的字符组合进行加密,得到加密值;即将“123”作为加密因子,使用对称加密算法对“F1”进行加密,得到加密值。
S9:关联所述加密键和加密值,得到对应所述身份识别密钥的加密指令映射,并进行存储;也就是说,一个加密指令映射包含了一个加密键及其对应的加密值;部分加密指令映射及其对应的含义如表3所示,其中,对应的含义可根据所述预设的字符组合及表1得到。
表3
S10:判断加密指令映射集合是否构建完成,若是,则得到加密指令映射集合,执行步骤S11,若否,则重复执行步骤S6-S9。
S11:接收操作方输入的第四机器编码;所述第四机器编码用于识别操作指令。
S12:根据所述第四机器编码和身份识别密钥,加密得到一加密键。
S13:根据所述一加密键,在所述加密指令映射集合中进行匹配。
S14:判断是否可以匹配到对应的加密值,若是,执行步骤S15,若否,则结束流程。
S15:获取所述一加密键对应的加密值。
S16:接收操作方输入的第五机器编码;所述第五机器编码,用于识别操作方意图。
S17:使用所述第五机器编码对所述加密值进行解密。
S18:判断是否解密成功,若是,执行步骤S19,若否,则结束流程。
S19:被操作方接收并执行所述操作方发送的操作指令;解密成功,即可得到一字符组合,被操作方将解密得到的字符组合转换为银行系统所使用的通信代码,然后接收操作方发送的操作指令,并根据所述操作指令,执行对应的操作。
可选地,操作方向被操作方发送操作指令时,将操作指令转换为可直接被被操作方识别的信号。
本实施例可对操作方进行识别,防止被他人非法操作;可对操作方的操作意图进行识别,保证向被操作方发出的指令都是可信有效的,可避免因身份丢失而被他人非法发出仿冒操作指令,导致的操作方或者被操作方的损失;同时,具有普遍适用性,即可接受任何输入设备输入的机器编码,也可以适配不同被操作方的目标系统操作信号;具有物理安全性,不依赖于某个特定的系统或者硬件设备,冒用操作方操作非常困难,但是操作方要恢复操作却十分容易。
实施例二
本实施例是实施例一中步骤S3、S7和S12的进一步拓展,相同之处不再累述。
请参照图3,步骤S3包括如下步骤:
S31:组合所述操作方的身份信息和第一机器编码,得到第一组合。
S32:使用加密算法,将所述第一组合加密成预设的第一长度值,得到对应所述操作方的身份识别密钥;优选地,所述加密算法为MD5算法。
S33:存储所述身份识别密钥。
请参照图4,步骤S7包括如下步骤:
S71:组合所述身份识别密钥、第二机器编码和第三机器编码,得到第二组合;
S72:使用加密算法,将所述第二组合加密成预设的第二长度值,得到加密键;优选地,所述加密算法为MD5算法。
请参照图5,步骤S12包括如下步骤:
S121:组合所述第四机器编码和身份识别密钥,得到第三组合。
S122:使用加密算法,将所述第三组合加密成预设的第三长度值,得到一加密键;优选地,所述加密算法为MD5算法。
实施例三
本实施例为上述实施例的具体实现方式。
用户在正常状况下使用ATM机查询全部余额,并取现¥500的流程如下:
用户输入个人信息;
ATM机获取用户的加密指令映射集合;
用户输入445+123,由于不存在“445+123”对应的指令,ATM键盘不对此指令做出响应;
用户输入448+123,在加密指令映射集合中匹配“448+123”,得到对应的加密值“F1”(经过“123”加密过),通过“123”对“F1”进行解密,解密成功,ATM键盘向ATM机发出指令:“显示全部余额”;
ATM机收到指令,显示出用户全部余额¥5000;
用户输入442+338,由于不存在“442+338”对应的指令,ATM键盘不对此指令做出响应;
用户输入442+335,在加密指令映射集合中匹配“442+335”,得到对应的加密值“F3”(经过“335”加密过),通过“335”对“F3”进行解密,解密成功,ATM键盘向ATM机发出指令:“取现”;
ATM机收到指令,提示用于输入取现金额;
用户输入500+335,在加密指令映射集合中匹配“500+335”,得到对应的加密值“数字500”(经过“335”加密过),通过“335”对“数字500”解密,解密成功,ATM键盘向ATM机发出指令:“数字500”;
ATM机接收到指令,出钞¥500。
进一步地,当用户受到威胁,要求其取出所有账户现金的情况下,可采用下述流程:
用户输入个人信息;
ATM机获取用户的加密指令映射集合;
用户输入448+321,在加密指令映射集合中匹配“448+321”,得到对应的加密值“F2”(经过“321”加密过),通过“321”对“F2”进行解密,解密成功,ATM键盘向ATM机发出指令:“显示部分余额”;
ATM机收到指令,显示出用户部分余额¥200(其全部余额为¥5000);
用户输入442+3355,在加密指令映射集合中匹配“442+3355”,得到对应的加密值“F4”(经过“3355”加密过),通过“3355”对“F4”进行解密,解密成功,ATM键盘向ATM机发出指令:“取现并报警”;
ATM机收到指令,提示用于输入取现金额;
用户输入200+335,在加密指令映射集合中匹配“200+335”,得到对应的加密值“数字200”(经过“335”加密过),通过“335”对“数字200”解密,解密成功,ATM键盘向ATM机发出指令:“数字200”;
ATM机接收到指令,出钞¥200并报警。
通过本实施例,当用户被胁迫时,可以有效减少个人财产损失。
实施例四
请参照图7,本实施例是对应上述实施例的一种操作意图识别系统,包括:
第一接收模块1,用于接收操作方的身份信息和第一机器编码;
第一生成模块2,用于根据所述身份信息和第一机器编码,生成对应所述操作方的身份识别密钥,并进行存储;
第二接收模块3,用于接收操作方发出的指令映射请求和操作方输入的第二机器编码,所述指令映射请求包括预设的被操作方、预设的第三机器编码和预设的字符组合;
第一加密模块4,用于根据所述身份识别密钥、第二机器编码和第三机器编码,加密得到加密键;
第二加密模块5,用于将所述第二机器编码作为加密因子,对所述预设的字符组合进行加密,得到加密值;
关联模块6,用于关联所述加密键和加密值,得到对应所述身份识别密钥的加密指令映射,并进行存储;
第一执行模块7,用于重复执行所述接收操作方发出的指令映射请求和操作方输入的第二机器编码至所述得到对应所述身份识别密钥的加密指令映射的步骤,得到对应所述身份识别密钥的加密指令映射集合;
第三接收模块8,用于接收操作方输入的第四机器编码;
第三加密模块9,用于根据所述第四机器编码和身份识别密钥,加密得到一加密键;
匹配模块10,用于根据所述一加密键,在所述加密指令映射集合中进行匹配;
第一获取模块11,用于若匹配成功,获取所述一加密键对应的加密值;
第四接收模块12,用于接收操作方输入的第五机器编码;
解密模块13,用于使用所述第五机器编码对所述加密值进行解密;
第二执行模块14,用于若解密成功,接收并执行所述操作方发送的操作指令。
所述第一生成模块2包括:
第一组合单元21,用于组合所述操作方的身份信息和第一机器编码,得到第一组合;
第一加密单元22,用于使用加密算法,将所述第一组合加密成预设的第一长度值,得到对应所述操作方的身份识别密钥;
第一存储单元23,用于存储所述身份识别密钥。
所述第一加密模块4包括:
第二组合单元41,用于组合所述身份识别密钥、第二机器编码和第三机器编码,得到第二组合;
第二加密单元42,用于使用加密算法,将所述第二组合加密成预设的第二长度值,得到加密键。
所述第三加密模块9包括:
第三组合单元91,用于组合所述第四机器编码和身份识别密钥,得到第三组合;
第三加密单元92,用于使用加密算法,将所述第三组合加密成预设的第三长度值,得到一加密键。
还包括:
判断模块15,用于判断是否存在对应所述身份识别密钥的加密指令映射集合;
第二获取模块16,用于若存在,获取所述加密指令映射集合;
第三执行模块17,用于若不存在,执行所述接收操作方发出的指令映射请求和操作方输入的第二机器编码的步骤。
综上所述,本发明提供的一种操作意图识别方法及其系统,可对操作方进行识别,防止被他人非法操作;可对操作方的操作意图进行识别,保证向被操作方发出的指令都是可信有效的,可避免因身份丢失而被他人非法发出仿冒操作指令,导致的操作方或者被操作方的损失;同时,具有普遍适用性,即可接受任何输入设备输入的机器编码,也可以适配不同被操作方的目标系统操作信号;具有物理安全性,不依赖于某个特定的系统或者硬件设备,冒用操作方操作非常困难,但是操作方要恢复操作却十分容易。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。