一种安全输入法的文本处理方法、装置和系统与流程

文档序号:12789467阅读:325来源:国知局
一种安全输入法的文本处理方法、装置和系统与流程

本发明涉及信息安全技术领域,尤其涉及一种安全输入法的文本处理方法、装置和系统。



背景技术:

随着移动互联网的发展,文本通信成为人们重要的沟通方式,但是智能设备和传输通道本身并不安全,人们的聊天信息、短信信息、电子邮件信息都面临被木马盗取或者黑客拦截的可能,时常出现用户在网络通信内容中包含的银行账号、登录密码等信息被恶意第三方截获而给用户造成重大损失的情况。针对用户资金安全和隐私信息会面临重大威胁的问题。

目前,有部分通信软件,比如微信,会对自身通信信息进行加密传输,但这种方式只适用于这些特定的通信软件之间的信息传输,加解密能力只限定在应用内部,比如微信客户端对微信客户端,并不能保证智能设备中通过其他应用软件信息传输的安全,比如安卓系统中的短信应用,并没有加密功能。此外,在这种方式下,用户的通信信息对通信软件运营商来说是可见的,一旦通信软件运营商疏于管理,内部员工完全有可能通过非法方式获取用户的通信信息。且这种方式都是由通信软件以软件加解密方式实现,很容易被恶意软件攻克。



技术实现要素:

本发明期望提供一种安全输入法的文本处理方法、装置和系统,能够在保证输入法的文本加解密安全性和用户使用方便性的前提下,简化了密钥管理并保证密钥存储和传输的安全性。

本发明实施例的技术方案是这样实现的:

本发明实施例提供了一种安全输入法的文本处理方法,该方法包括:

注册安全域,获取所述安全域标识;

申请并获取所述安全域对应的对称密钥;

使用所述对称密钥对用户输入的明文进行加密;

将加密得到的密文与所述安全域标识一同输出。

上述方案中,所述使用所述对称密钥对用户输入的明文进行加密包括:

每次使用所述对称密钥对用户输入的明文进行加密时,随机生成一初始向量,并使用所述初始向量参与密码运算;

相应的,所述将加密得到的密文与所述安全域标识一同输出包括:

将加密得到的密文、所述安全域标识和所述密文对应的初始向量一同输出。

上述方案中,所述方法还包括:

获取密文和该密文对应的第一安全域标识;

当所述第一安全域标识与本地的第二安全域标识相同时,使用所述第二对称密钥对所述密文进行解密,获得解密后的明文并输出;

当所述第一安全域标识与所述第二安全域标识不同时,将所述密文发送至安全管理平台,由所述安全管理平台解密密文后再使用所述第二安全域对应的第二对称密钥加密,再由所述安全管理平台将所述第二安全域标识对应的密文返回,之后使用所述第二对称密钥解密所述安全管理平台返回的密文,获得解密后的明文并输出。

上述方案中,当存在与密文对应的初始向量时,所述方法还包括:

获取密文和该密文对应的第一安全域标识的同时,还获取所述密文对应的初始向量;

使用所述初始向量参与解密运算。

上述方案中,所述申请并获取所述安全域对应的对称密钥包括:

使用安全硬件对获取到的对称密钥进行签名验证。

上述方案中,所述方法还包括:

使用安全硬件注册安全域、获取所述安全域对应的对称密钥。

本发明实施例还提供一种安全输入法的文本处理装置,所述装置包括:安全域注册模块、对称密钥获取模块、明文加密模块以及密文输出模块;其中,

安全域注册模块,用于注册安全域,获取所述安全域标识;

对称密钥获取模块,用于申请并获取所述安全域对应的对称密钥;

明文加密模块,用于使用所述对称密钥对用户输入的明文进行加密;

密文输出模块,用于将加密得到的密文与所述安全域标识一同输出。

上述方案中,所述装置还包括:

密文获取模块,用于获取密文和该密文对应的第一安全域标识;

同域解密模块,用于当所述第一安全域标识与本地的第二安全域标识相同时,使用所述第二对称密钥对所述密文进行解密,获得解密后的明文并输出;

异域解密模块,用于当所述第一安全域标识与所述第二安全域标识不同时,将所述密文发送至安全管理平台,由所述安全管理平台解密密文后再使用所述第二对称密钥加密,再由所述安全管理平台将所述第二安全域标识对应的密文返回,之后使用所述第二对称密钥解密所述安全管理平台返回的密文,获得解密后的明文并输出。

上述方案中,所述装置还包括:

安全硬件,用于使用非对称密码算法进行注册安全域、获取所述安全域对应的对称密钥。

上述方案中,所述安全硬件由智能卡、声波卡/Key、蓝牙卡/Key、嵌入式 安全元件或者智能可穿戴装置实现。

本发明实施例提供一种安全输入法的文本处理系统,该系统包括:上述任意一种安全输入法的文本处理装置和安全管理平台;其中,

所述安全管理平台,用于创建和管理安全域,为安全输入法的文本处理装置分配安全域,向文本处理装置下发安全域标识和对应的对称密钥;并用于将文本处理装置发送的异域密文转换为所述文本处理装置的同域密文后返回。

本发明技术方案的有益效果在于:利用一种安全输入法的文本处理装置,包括:安全域注册模块、对称密钥获取模块、明文加密模块以及密文输出模块,通过使用安全输入法注册安全域,获取所述安全域标识;申请并获取所述安全域对应的对称密钥;使用所述对称密钥对用户输入的明文进行加密;将加密得到的密文与所述安全域标识一同输出,能够在保证输入法的文本加解密安全性和用户使用方便性的前提下,简化了密钥管理并保证密钥存储和传输的安全性。

附图说明

图1为本发明实施例提供的安全输入法的文本处理方法的实现流程示意图;

图2为本发明实施例提供的安全输入法的文本处理装置的组成结构示意图;

图3为本发明实施例1的结构示意图。

具体实施方式

为了更清楚地说明本发明实施例和技术方案,下面将结合附图及实施例对本发明的技术方案进行更详细的说明,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明的实施例,本领域普通技术人员在不付出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范 围。

在本发明实施例中,系统提供一种安全输入法,该安全输入法除了具有普通输入法的基础功能以外,还提供安全输入模式,在安全模式下,在安全输入法内部对用户输入的明文进行加密,主要包括:使用第一编辑区接收用户输入的明文;将所述明文交由加解密模块进行加密,获取加密后的密文;按照预设规则对所述密文进行格式化,返回格式化密文。而当用户希望解密密文时,安全输入法在内部解密后显示明文,主要包括:接收用户选定的格式化密文;

将所述选定的格式化密文交由所述加解密模块进行解密,获取解密后明文;

显示所述解密后明文。如此,实现了明文不出输入法,增加了对用户输入信息的安全保护。

针对这样的安全输入法,如何更安全的对安全输入法的文本进行加密解密处理,是个关键问题。为了进一步加强安全输入法的安全性,本发明实施例提供一种安全输入法的文本处理系统,该系统包括安全管理平台和安全输入法的文本处理装置;其中,所述安全管理平台用于创建和管理安全域,为安全输入法的文本处理装置分配安全域,向文本处理装置下发安全域标识和对应的对称密钥;并用于将文本处理装置发送的异域密文转换为所述文本处理装置的同域密文后返回。

图1为本发明实施例提供的安全输入法的文本处理方法的实现流程示意图,如图1所示,该方法包括:

步骤101,注册安全域,获取所述安全域标识;

具体的,安全输入法需要向安全管理平台注册安全域,获取自身所在安全域标识;

步骤102,申请并获取所述安全域对应的对称密钥;

具体的,安全输入法申请并获取所述安全域对应的对称密钥;同一安全域中所有安全输入法使用相同的对称密钥;

步骤103,使用所述对称密钥对用户输入的明文进行加密;

具体的,安全输入法通过第一编辑区接收到的明文传输至加解密模块,交由加解密模块进行加密;

进一步的,每次使用所述对称密钥对用户输入的明文进行加密时,随机生成一初始向量,并使用所述初始向量参与密码运算;

相应的,所述将加密得到的密文与所述安全域标识一同输出包括:

将加密得到的密文、所述安全域标识和所述密文对应的初始向量一同输出;

步骤104,将加密得到的密文与所述安全域标识一同输出;

具体的,待加解密模块完成加密后,安全输入法在从加解密模块获取加密后的密文;并将加密得到的密文与所述安全域标识一同输出;使用安全输入法安全模式输入的应用程序或者用户,将加密得到的密文与所述安全域标识一同传输、保存、复制或删除。

当需要对密文进行解密时,所述安全输入法获取密文和该密文对应的第一安全域标识;

当所述第一安全域标识与本地的第二安全域标识相同时,使用所述第二对称密钥对所述密文进行解密,获得解密后的明文并输出;

当所述第一安全域标识与所述第二安全域标识不同时,将所述密文发送至安全管理平台,由所述安全管理平台解密密文后再使用所述第二对称密钥加密,再由所述安全管理平台将所述第二安全域标识对应的密文返回,之后使用所述第二对称密钥解密所述安全管理平台返回的密文,获得解密后的明文并输出。

进一步的,当存在与密文对应的初始向量时,即在加密时有初始向量参与密码运算,则所述安全输入法获取密文和该密文对应的第一安全域标识的同时, 还获取所述密文对应的初始向量;

使用所述初始向量参与解密运算。

进一步的,所述申请并获取所述安全域对应的对称密钥包括:使用安全硬件对获取到的对称密钥进行签名验证。

进一步的,所述安全输入法使用安全硬件注册安全域、获取所述安全域对应的对称密钥。

使用上述实施例提供的安全输入法的文本处理方法,在保证输入法的文本加解密安全性和用户使用方便性的前提下,简化了密钥管理并保证密钥存储和传输的安全性。

图2是本发明实施例提供的安全输入法的文本处理装置的组成结构示意图,如图2所示,该文本处理装置包括:安全域注册模块201、对称密钥获取模块202、明文加密模块203以及密文输出模块203;其中,

安全域注册模块201,用于注册安全域,获取所述安全域标识;

对称密钥获取模块202,用于申请并获取所述安全域对应的对称密钥;

明文加密模块203,用于使用所述对称密钥对用户输入的明文进行加密;

密文输出模块204,用于将加密得到的密文与所述安全域标识一同输出。

进一步的,所述装置还包括:

密文获取模块,用于获取密文和该密文对应的第一安全域标识;

同域解密模块,用于当所述第一安全域标识与本地的第二安全域标识相同时,使用所述第二对称密钥对所述密文进行解密,获得解密后的明文并输出;

异域解密模块,用于当所述第一安全域标识与所述第二安全域标识不同时,将所述密文发送至安全管理平台,由所述安全管理平台解密密文后再使用所述第二对称密钥识加密,再由所述安全管理平台将所述第二安全域标识对应的密 文返回,之后使用所述第二对称密钥解密所述安全管理平台返回的密文,获得解密后的明文并输出。

进一步的,所述装置还包括:

安全硬件,用于使用非对称密码算法进行注册安全域、获取所述安全域对应的对称密钥。

进一步的,所述安全硬件由智能卡、声波卡/Key、蓝牙卡/Key、嵌入式安全元件或者智能可穿戴装置实现。

这里,所述智能卡可以是SIM(Subscriber Identity Module客户识别模块)卡或SD卡(Secure Digital Memory Card,安全数字存储卡)等,智能可穿戴装置可以是智能手环、智能手表等。而SIM卡可以是标准SIM卡、USIM(Universal Subscriber Identity Module,全球用户识别)卡、UIM(User Identify Module,用户识别模块)卡、MicroSIM卡、NanoSIM卡等各种形态和尺寸的通信卡。SD卡可以是标准SD卡、miniSD卡等各种形态和尺寸的安全数据卡。

具体来说,当安全硬件由智能卡实现时,加密和解密过程由智能卡中的安全芯片完成。

进一步的,为了更好的保证输入法的安全性,对于使用对称算法对文本的加密解密过程也可以由上述安全硬件来完成。

这里,上述非对称密码算法包括但不限于RSA、ECC、SM2、SM9等非对称密码算法,上述对称密码算法包括但不限于3DES、AES、SM1、SM4、SM7等对称密码算法。

上述各个模块及各个单元在实际应用中,均可由位于安全输入法的文本处理装置的中央处理器(CPU)、微处理器(MPU)、数字信号处理器(DSP)、或现场可编程门阵列(FPGA)实现。

本发明还提供一种安全输入法的文本处理系统,该系统包括上述任一项所述的安全输入法的文本处理装置和安全管理平台;其中,

所述安全管理平台,用于创建和管理安全域,为安全输入法的文本处理装置分配安全域,向文本处理装置下发安全域标识和对应的对称密钥;并用于将文本处理装置发送的异域密文转换为所述文本处理装置的同域密文后返回。

这里,所述安全管理平台可以是独立运行的服务器平台,也可以是运行于业务系统服务器上的一项系统管理服务功能。

实施例1:

附图3为本发明实施例1的结构示意图,如图3所示,所述安全输入法包括基本功能和密钥管理组成。基本功能承接了用户与所有应用进行文本输入的入口,并调用安全硬件装置完成所述安全输入法的文本加、解密功能。与传统输入法不同的是,安全输入法会缓存用户编辑的文本,等到用户确认文本正确之后,触发加密输出按钮,调用安全硬件装置功能进行加密,并把密文输出到目标应用的输入框中。

此外,基本功能负责识别剪贴板中的输入法密文并在用户粘贴时进行自动解密;密钥管理分别与系统平台和安全硬件装置交互,完成密钥管理相关功能。

安全硬件装置是具有唯一标识(ID)和具有对称与非对称加解密能力的硬件模块,并具有产生真随机数、生成和存储对称与非对称密钥的功能。

安全管理平台负责维护和管理安全输入法安全硬件装置及其相关密钥。如维护安全硬件装置注册信息,接收和保存安全硬件装置上传的公钥TermPubKey,生成所述对称密钥K,使用安全硬件装置的公钥TermPubKey加密所述对称密钥K后,下发给安全硬件装置。

所述用于安全输入法的密钥管理方法和系统,其密钥管理的基本工作过程包括三个方面:安全硬件装置注册、输入法密钥申请(密钥的产生与注入)、输入法加解密(密钥的使用)。

具体说明如下:

安全硬件装置注册:

安全硬件装置注册包括,利用安全硬件装置生成公私钥对(TermPubKey/TermPrvKey),将私钥TermPrvKey保存在安全硬件装置内,将安全硬件装置标识ID与其公钥TermPubKey一起,通过安全通道发送给安全管理平台进行注册,安全管理平台负责维护和管理安全输入法安全硬件装置信息(如ID、TermPubKey等),并将所述安全硬件装置归属到一个指定的安全域(以DID标识该安全域),同一安全域中所有安全硬件装置使用相同的密钥K,不同安全域中的安全硬件装置使用不同的密钥K。所述安全通道可以是在安全硬件装置的生产阶段或发行阶段使用的专用系统、专用工具、虚拟专用网络(VPN)等。

除了注册阶段创建和分配的安全域,也可以在应用需要的任何时候,由安全管理平台为安全硬件装置创建一个或多个新的安全域,同一安全域中所有安全硬件装置使用相同的密钥K,不同安全域中的安全硬件装置使用不同的密钥K。

输入法密钥申请(密钥的产生与注入):

(1)安全硬件装置采用自己的私钥TermPrvKey对安全硬件装置标识ID进行签名,然后将ID和签名一起,通过密钥管理子模块发送给安全管理平台;

(2)安全管理平台认证安全硬件装置的合法性,生成和下发安全输入法加密密钥K:

安全管理平台检查安全硬件装置ID是否已在安全管理平台上注册,若已注册则采用其对应的TermPubKey对ID签名进行验证,如果已注册且ID签名验证通过,则安全硬件装置认证通过;

安全管理平台生成对称加密密钥K,并将密钥K与申请密钥的安全硬件装置的相关信息(ID、TermPubKey)进行关联,即,为该安全硬件装置分配一个与其安全域对应的对称密钥K。所述对称密钥K,可由安全管理平台临时或事先产生和保存,在安全输入法的安全硬件装置进行密钥申请时,安全管理平台为其分配密钥K;

安全管理平台使用TermPubKey作为密钥对K进行非对称加密运算得到K的密文K’,然后将K’发送给安全硬件装置,进一步的,安全管理平台使用自己的私钥PlatPrvKey对K’进行签名,然后将K’和K’的签名一起发送给安全硬件装置;

(3)输入法密钥注入:

输入法密钥管理子模块将接收到的K’传递给安全硬件装置,安全硬件装置使用自己的私钥TermPrvKey对接收到的密文K’进行非对称解密运算得到密钥K,安全硬件装置保存密钥K;或者,输入法密钥管理子模块将接收到的K’和K’的签名一起传递给安全硬件装置,安全硬件装置首先使用安全管理平台的公钥PlatPubKey对K’的签名进行验证,若验证通过,则说明K’为管理平台所签发,然后安全硬件装置再使用自己的私钥TermPrvKey对接收到的密文K’进行非对称解密运算得到密钥K,安全硬件装置保存密钥K。

输入法加解密(密钥的使用):

完成密钥配置后,安全输入法就可以使用安全硬件装置中的密钥K对输入法处理的文本进行加解密操作了。

安全输入法中的安全硬件装置使用自己的密钥K对输入法处理的文本进行加密操作;

进一步的,安全输入法中的安全硬件装置在使用自己的密钥K对输入法处理的文本进行加密操作时,还使用一个初始向量IV参与密码运算,使得安全输入法对相同文本每次加密的结果都不相同,进一步提高文本的安全性。所述初始向量IV由安全硬件装置产生的真随机数构成,与密文绑定在一起,随密文数据一起传输、保存、复制或删除;

进一步的,除IV外,随密文数据一起传输、保存、复制或删除的,还包括安全硬件装置所在安全域的标识DID。

安全输入法中的安全硬件装置进行解密时,若判断密文所带安全域标识DID与本安全域标识相同,说明该密文是本安全域的安全硬件装置所产生的,则安全输入法通过安全硬件装置使用自己的密钥K解密得到明文;否则,当安全输入法进行解密时,若判断密文所带安全域标识(记为DIDb)与本安全域标 识(记为DIDa)不同,说明该密文(记为Cb)是由非本安全域的安全硬件装置所产生的,则安全输入法通过密钥管理子模块将密文Cb提交给安全管理平台,安全管理平台使用该密文Cb所属安全域DIDb的密钥(记为Kb)进行解密得到明文(记为P),然后使用安全域DIDa的密钥Ka对明文P进行加密,得到密文Ca,最后把加密得到的密文Ca返回给安全输入法,安全输入法再通过安全硬件装置使用自己的密钥Ka解密得到明文P;

进一步的,安全管理平台在使用安全域DIDa的密钥Ka对明文P进行加密得到密文Ca时,还使用一个初始向量IV2参与密码运算,使得安全管理平台对相同明文P每次加密的结果都不相同,进一步提高文本的安全性。所述初始向量IV2由安全管理平台或者与安全管理平台连接的可信硬件产生的真随机数构成,与密文Ca绑定在一起,随密文数据Ca一起返回给安全输入法,安全输入法再通过安全硬件装置使用自己的密钥Ka解密得到明文P。

本实施例的安全输入法的文本处理装置的各个模块对应执行上述安全输入法的文本处理方法实施例所描述的步骤,因此具有相同的有益效果。另外,应该理解到,以上所描述的文本处理装置的实施方式仅仅是示意性的,所描述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。另外,模块相互之间的耦合或通信连接可以是通过一些接口,也可以是电性或其它的形式。

上述各个功能模块作为文本处理装置的组成部分,可以是或者也可以不是物理框,既可以位于一个地方,也可以分布到多个网络单元上,既可以采用硬件的形式实现,也可以采用软件功能框的形式实现。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和 硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

再次说明,以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,例如各实施例之间技术特征的相互结合,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

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