CN115765981A - 一种可信网络通信方法、装置 - Google Patents
一种可信网络通信方法、装置 Download PDFInfo
- Publication number
- CN115765981A CN115765981A CN202211197644.5A CN202211197644A CN115765981A CN 115765981 A CN115765981 A CN 115765981A CN 202211197644 A CN202211197644 A CN 202211197644A CN 115765981 A CN115765981 A CN 115765981A
- Authority
- CN
- China
- Prior art keywords
- user
- network communication
- pin code
- trusted
- communication device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
本申请提供一种可信网络通信方法、装置,用于可信网络通信装置与应用终端之间的通信,所述方法包括:存储用户PIN码和用户数字证书;当所述可信网络通信装置与所述应用终端连接时,通过所述用户PIN码对用户私钥权限进行认证,认证成功后通过所述可信网络通信装置提供可信密码计算;通过网络协议栈,实现所述可信网络通信装置与应用终端的可信网络通信。通过一种可以移动/便携的可信终端密码计算与网络通信装置,在应用运行的物理计算环境以外的物理可信计算装置为应用提供安全的密码基础计算服务和安全的网络通信服务,并且可以不受固定的应用运行环境限制。
Description
技术领域
本发明涉及可信计算领域,具体涉及一种可信网络通信方法、装置。
背景技术
IT业界从1999年开始,就有一个由Intel、IBM、HP、Microsoft、 Compaq发起的TCPA(Trusted Computing Platform Alliance)组织在推动构建一个可信赖的计算环境。
早在2000年伊始,我国就开始关注可信计算,并进行了立项、研究,和国外不同,我国在可信计算上走的是先引进技术后自主研发、先产品化后标准化的跨越式发展。2004年,武汉瑞达生产了中国第一款 TPM,之后联想、长城等基于TPM生产了可信PC。2005年1月,全国信息安全标准化技术委员会成立了可信计算工作小组(WGI),先后研制制定了可信密码模块(TCM)、可信主板、可信网络联接等多项标准规范。我国出现了一系列的可信计算产品。
不过目前PC终端存在大量的老旧设备,这些老旧设备中基本没有安全芯片,应用程序的计算环境在安全等级高的场景下,无法确保安全可信,存在风险威胁。另一方面如果更换这些设备则需要大量资金,造成资源浪费。例如windows11***升级就需要CPU具有TPM模块,以至于大量的设备无法升级到该***。另一方面,在安全领域需要自主可控,安全的钥匙需要掌握在自己手中。
发明内容
本申请旨在提供一种可信网络通信方法、装置,通过一种可以移动/便携的可信终端密码计算与网络通信装置,在应用运行的物理计算环境以外的物理可信计算装置为应用提供安全的密码基础计算服务和安全的网络通信服务,并且可以不受固定的应用运行环境限制。
根据本申请的一方面,提出一种可信网络通信方法,用于可信网络通信装置与应用终端之间的通信,所述方法包括:
存储用户PIN码和用户数字证书;
当所述可信网络通信装置与所述应用终端连接时,通过所述用户PIN 码对用户私钥权限进行认证,认证成功后通过所述可信网络通信装置提供可信密码计算;
通过网络协议栈,实现所述可信网络通信装置与应用终端的可信网络通信。
根据一些实施例,所述方法包括:
所述存储用户PIN码和用户数字证书,包括:
创建用户的SM2密钥对并存储,所述SM2密钥对包括签名密钥对和加密密钥对,所述签名密钥对包括签名私钥,所述加密密钥对包括加密私钥,并存储。
根据一些实施例,所述方法包括:
所述存储用户PIN码和用户数字证书,还包括:
获取用户的自签名的公钥证书或第三方可信证书机构签发的公钥证书,并存储。
根据一些实施例,所述方法包括:
所述当所述可信网络通信装置与所述应用终端连接时,对用户私钥权限进行认证,认证成功后通过所述可信网络通信装置提供可信密码计算,包括:
提示用户输入PIN码;
在用户输入正确的PIN码后,将用户的所述签名私钥、待签名数据做为输入参数进行密码计算。
根据一些实施例,所述方法包括:
所述当所述可信网络通信装置与所述应用终端连接时,对用户私钥权限进行认证,认证成功后通过所述可信网络通信装置提供可信密码计算,包括:
提示用户输入PIN码;
在用户输入正确的PIN码后,将用户的所述加密私钥、待解密数据做为输入参数进行密码计算。
根据一些实施例,所述方法包括:
所述通过网络协议栈,实现所述应用终端的可信网络通信,包括:
通过可信网络通信装置的网络协议栈使用所述密钥对与所述公钥证书与所述应用服务端建立国密SSL双向认证。
根据一些实施例,所述方法包括:
所述通过网络协议栈,实现所述应用终端的可信网络通信,包括:
将待发送数据放入所述可信网络通信装置的网络协议栈中;
将所述待发送数据通过所述可信网络通信装置的输入接口发送至所述可信网络通信装置的国密SSL协议栈中进行发送;
通过所述国密SSL协议栈将所述待发送数据发送至所述应用服务端。
根据一些实施例,所述方法包括:
所述通过网络协议栈,实现所述应用终端的可信网络通信,还包括:
通过所述国密SSL协议栈将收到的所述应用服务端返回的数据由所述可信网络通信装置的输出接口发送至所述网络协议栈中;
通过所述网络协议栈将收到的返回数据返回给所述应用终端。
根据一些实施例,所述方法还包括:
采用二级PIN码机制对用户密钥进行保护,实现密钥的安全存储,包括:将所述PIN码分为用户PIN码和设备PIN码,设备PIN码与所述可信网络通信装置的序列号对应,存放在所述可信网络通信装置的安全存储区中;
将所述设备PIN码作为SM4算法密钥对所述用户PIN码进行加密,加密后的用户PIN码存放在所述可信网络通信装置的安全存储区中;
将所述用户PIN码作为SM4算法密钥对用户的所述SM2密钥对中的 SM2私钥进行加密,并存放在所述可信网络通信装置的安全存储区中。
根据一些实施例,所述方法还包括:
当用户需要使用所述私钥时,需要输入所述用户PIN码解出用户的所述SM2私钥;
当用户忘记PIN码时,通过所述设备PIN码解密出所述用户PIN码,再用所述用户PIN码解密出用户的所述SM2私钥,使用新的用户PIN码加密所述SM2私钥,再用所述设备PIN码加密新的用户PIN码,并存放在所述可信网络通信装置的安全存储区中。
根据本申请的另一方面,提供一种可信网络通信装置,用于和所述应用终端连接,实现可信网络通信方法,包括:
存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法中任一项所述的方法。
根据本申请的另一方面,提供一种计算机程序产品,包括计算机程序或指令,该计算机程序或指令被处理器执行时实现上述方法中任一项所述的方法。
根据本申请示例实施例,通过移动/便携可信密码服务或网络通信装置对使用者身份进行认证并提供需要的可信密码计算,然后在有网络通信的需求下,通过自身的网络协议栈,实现可信网络通信。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本申请。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。
图1示出根据本申请示例实施例的可信网络通信方法流程图。
图2示出根据本申请示例实施例的可信网络组网原理图。
图3示出根据本申请示例实施例的网络通信与可信通信流程图。
图4示出根据本申请示例实施例的现有网络通信方式与使用本装置后的通信方式对比图。
图5示出根据本申请示例实施例的用户密钥保护示意图。
图6示出根据本申请示例实施例的可信网络通信装置的框图。
具体实施方式
现在将参考附图更全面地描述示例实施例。然而,示例实施例能够以多种形式实施,且不应被理解为限于在此阐述的实施例;相反,提供这些实施例使得本申请将全面和完整,并将示例实施例的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本申请的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本申请的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本申请的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
应理解,虽然本文中可能使用术语第一、第二、第三等来描述各种组件,但这些组件不应受这些术语限制。这些术语乃用以区分一组件与另一组件。因此,下文论述的第一组件可称为第二组件而不偏离本申请概念的教示。如本文中所使用,术语“及/或”包括相关联的列出项目中的任一个及一或多者的所有组合。
本领域技术人员可以理解,附图只是示例实施例的示意图,附图中的模块或流程并不一定是实施本申请所必须的,因此不能用于限制本申请的保护范围。
现有技术中没有发现相关解决方案,目前市面上的都是基于可信密码模块(TCMTrusted Cryptography Module)的可信计算平台(TCP Trusted Computing Platform)的相关方案与产品,该技术需要与应用的运行环境紧耦合,即将应用与设备进行了锚定。如果后续需要增加运行设备,则必须与之前锚定的设备一致或兼容,存在较大的约束性。
应用程序的网络通信也主要依赖原有计算环境中的网络协议中栈,同样暴露在非可信的威胁环境中,存在安全风险。
本发明主要解决应用与可信计算环境相结合的问题,现实场景中存在大量老旧的终端设备,老旧终端设备并没有TCM等可信计算模块。而全面更换则需要大量资金,造成不必要的资源浪费。新购满足条件的设备可能在后续扩容中存在TCM兼容性问题,以及面临需要应用来进行适配等问题。
在涉及到网络通信时,应用层运行环境需要对网络可信环境进行检查或对开发人员在安全方面具有较高的行业知识要求,而在现实中很难满足上述,这样就扩大了攻击面,造成安全隐患。
本发明通过移动/便携可信密码服务或网络通信装置对使用者身份进行认证并提供需要的可信密码计算,然后在有网络通信的需求下,通过自身的网络协议栈,实现可信网络通信。再结合国密数字证书认证技术,可以避免在高安全性场景下装置盗用问题,从而满足了应用的可信密码计算和可信网络通信需求。
本发明则通过移动/便携方式将密码计算服务与网络通信与应用运行设备进行解耦,从而增强了可信计算环境与应用相结合的易用性和通用性。
本发明用到的术语如下。
SSL(Secure Socket Layer安全套接层):SSL位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持。SSL协议可分为两层: SSL记录协议(SSL RecordProtocol):它建立在可靠的传输协议(如 TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。 SSL握手协议(SSL Handshake Protocol):它建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。
TCM(Trusted Cryptography Module可信密码模块):是可信计算平台的硬件模块,为可信计算平台提供密码运算功能。
TCP(Trusted computing Platform可信任计算平台):通过一定程度的硬件安全来保证平台和平台上运行的分布式应用程序的安全。主要有两种实现方式:安全协处理器(安全协处理器是与主处理器相独立的,负责安全计算的);可信任平台模块。
PIN(Personal Identification Number个人识别号码):源于电信名词,本意是指个人SIM卡识别密码,现泛指设备需要对个人进行识别的密码。
SM2(SM2 Cryptographic Algorithm):SM2密码算法,GB/T 32918 定义的一种椭圆曲线密码算法,其密钥长度为256比特,由国家密码管理局发布。
SM4(SM4 Algorithm):SM4密码算法,一种分组密码算法,分组长度128比特,密钥长度128比特。GB/T32907定义的一种分组密码算法,由国家密码管理局发布。
以下结合附图对本申请的示例实施例进行说明。
图1示出根据本申请示例实施例的可信网络通信方法流程图。
参见图1,在S101,存储用户PIN码和用户数字证书。
本申请通过一种方便移动并方便携带的外置装置,可称为可信网络通信装置,通过将通信协议栈(例如USB)转换成装置协议,并根据应用的业务需求确保其在密码计算、密钥存储和网络通信方面的安全可信。
本装置在初始化时需要用户填入信息生成证书请求,借助第三方证书签发机构签发个人证书,通过数字证书技术能锚定使用者,使本装置同时具有身份识别功能,应用可通过该功能实现相关的审计功能。
根据一些实施例,对可信网络通信装置本身进行初始化,主要目的是创建个人签名密钥对(例如SM2)和加密密钥对(例如SM2)、设置使用内部私钥时的PIN码和获取自签名或第三方可信证书机构签发的公钥证书。即该移动装置与用户本人进行绑定,可以由用户携带,解决目前类似与设备硬件紧耦合,更换设备即需要重新走一遍初始化创建密钥对的流程。
可信网络通信装置的初始化流程主要包括:设置用户PIN码、申请并导入个人证书,具体流程可包括如下步骤。
步骤A:用户通过装置的终端管理程序进行装置初始化,并按提示输入用户PIN码,该PIN码作为签名私钥和加密私钥的权限认证码,同时设置PIN码找回安全问题与答案。
步骤B:用户通过装置的终端管理程序创建SM2密钥对,并选择由装置生成自签名证书(跳至流程C)还是由第三方可信证书机构签发证书(跳至流程D)。
步骤C:用户选择自签名证书,由装置自身签发公钥证书,并根据需求可以通过装置的终端管理程序进行下载,流程结束。
步骤D:用户选择由第三方可信证书机构签发证书,装置生成证书请求并下载为文件,用户将该文件提交至第三方可信证书机构签发公钥证书。
步骤E:用户将第三方可信证书机构签发的公钥证书通过装置的终端管理程序导入到装置中进行存储,后续可以根据需求下载该证书,流程结束。
利用本装置可以移动与便携的特性和用户的PIN码机制与数字证书体系,可以实现装置与使用人员身份的一对一绑定,进一步提高了审计功能的可信度。
在S103,当所述可信网络通信装置与所述应用终端连接时,通过所述用户PIN码对用户私钥权限进行认证,认证成功后通过所述可信网络通信装置提供可信密码计算。
PIN码作为SM4密钥用于对私钥的权限认证以保护用户私钥;涉及到私钥密码计算的时候需要用户输入PIN码。
根据一些实施例,应用端可通过安装可信网络通信终端SDK与可信网络通信装置建立连接;再通过装置终端SDK调用需要的密码运算API。
用户输入正确的PIN码后才能执行密码计算,并获取结果,可信密码计算包括签名计算和解密计算。例如由终端SDK弹出PIN码界面,提示用户输入PIN码;PIN码认证通过后,进行签名计算时,可信网络通信装置会将用户签名私钥、待签名数据做为输入参数进行密码计算,输出加签后的数据;进行解密计算时,装置会将用户加密私钥、待解密数据做为输入参数进行密码计算,输出解密后的数据原文。
可信网络通信装置通过应用运行和计算环境以外的可信计算环境进行密码计算,使得应用运行的非可信计算环境中潜在的威胁程序无法跟踪密码算法从而获取到算法密钥,缩小了攻击面,提高了端点安全。
在S105,通过网络协议栈,实现所述可信网络通信装置与应用终端的可信网络通信。
根据一些实施例,通过可信网络通信装置的网络协议栈使用SM2 密钥对与公钥证书与应用服务端建立国密SSL双向认证。这里的认证是基于国密SSL双向协议来实现的用户身份认证。可包含如下流程。
应用客户端与应用服务端确认对称加密算法;
应用服务端发送服务端公钥证书给应用客户端,客户端对该证书进行有效性验证;
应用客户端生成对称密钥并用客户端私钥(这里就是装置中的签名私钥,所以这里会让用户输入PIN码)进行签名和用服务端公钥进行加密,然后与客户端公钥证书(这里就是装置中的签名公钥证书)一起发送到应用服务端。
应用服务端对公钥证书进行证书的相关验证(这里就是对用户身份的认证)以及对签名的对称密钥进行解密并验签,认证通过后完成使用对称密钥和相应对称密码算法对通信数据进行加密,建立可信的网络通信。
根据一些实施例,应用客户端通过装置终端SDK启用网络通信功能;终端SDK弹出PIN码界面,提示用户输入PIN码;用户输入正确的PIN码后,网络通信模块通过自身网络协议栈使用用户SM2私钥与公钥证书与应用服务端建立国密SSL双向认证的通信通道,即使用国家密码管理局认可的SSL双向认证的通信通道。
根据一些实施例,可信通信通道建立之后,应用客户端可调用装置终端侧SDK提供的网络协议栈,将需要发送的网络数据放入栈中;装置终端侧SDK将待发送数据通过装置的输入接口发送至装置里的国密 SSL协议栈中进行发送;国密SSL协议栈将收到的返回数据通过装置的输出接口发送至装置终端侧SDK中的网络协议栈中;装置终端侧SDK中的网络协议栈中将收到的数据返回给应用客户端。
通过以上过程可实现对整个数据通道进行加密保护,通过可信网络通信装置内置网络通信协议栈避免了非可信计算环境中的威胁攻击。
图2示出根据本申请示例实施例的可信网络组网原理图。
参见图2,认证模块的作用就是在用户使用可信网络通信装置(即图中的移动/便携可信密码服务&网络服务装置)内部密钥时提供认证服务,具体体现为PIN码认证。认证通过后,可以使用装置内部密钥(例如 SM2私钥)进行密码运算。
应用可以是C/S架构或者B/S架构,如果是C/S架构的应用,左边的应用可以理解为客户端,右边为服务端;如果是B/S架构的应用,左边的应用可以理解为浏览器中的Web应用,右边为Web服务端。
应用通过装置终端SDK与可信网络通信装置建立连接,并通过装置终端SDK调用需要的密码运算API。如果涉及到装置内部密钥的密码计算,则由终端SDK弹出PIN码界面,提示用户输入PIN码;用户输入正确的 PIN码后才能执行密码计算,并获取结果,否则提示异常,流程结束。
在PIN码认证通过后,可信网络通信装置的网络通信模块通过自身网络协议栈使用用户SM2私钥与公钥证书与应用服务端建立国密SSL双向认证。
图3示出根据本申请示例实施例的网络通信与可信通信流程图。
参见图3,可信网络通信装置和应用端之间的可信通道建立流程和可信通信流程如下。
应用通过装置终端SDK启用网络通信功能。
终端SDK弹出PIN码界面,提示用户输入PIN码。可以缓存PIN码,可以避免每次需要用户输入PIN码,用户输入正确的PIN码后会缓存一定的时间,在有效时间内,就不需要用户再次输入PIN码。
用户输入正确的PIN码后,网络通信模块通过自身网络协议栈使用用户私钥与公钥证书与应用服务端建立国密SSL双向认证通道。
应用调用装置终端侧SDK提供的网络协议栈,将需要发送的网络数据放入栈中。
装置终端侧SDK将待发送数据通过装置的输入接口发送至装置里的国密SSL协议栈中进行发送,发送至应用服务端。
国密SSL协议栈将收到的从应用服务端的返回数据通过装置的输出接口发送至装置终端侧SDK中的网络协议栈中。
装置终端侧SDK中的网络协议栈中将收到的数据返回给应用终端。
使用本装置后的通信方式与现有网络通信方式对比如图4所示。
本装置通过内置的网络通信协议栈对应用的网络数据进行组包,并依托于内置的算法服务完成国密SSL协议的握手与通信,与应用服务端构建了安全可信的通信加密隧道,避免了非可信计算环境中可能存在的威胁程序对国密SSL协议的跟踪实现对通信数据的嗅探。
图5示出根据本申请示例实施例的用户密钥保护示意图。
参见图5,PIN码可分为用户PIN码和设备PIN码,设备PIN码与装置序列号一一对应,存放在装置内的安全存储区中,并由装置厂商在出厂时备份保管。设备PIN码作为SM4算法密钥对用户PIN码进行加密,加密后的用户PIN码存放在装置安全存储区中。
用户PIN码可作为SM4算法密钥对用户注册时产生的SM2私钥进行加密存储。当用户需要使用私钥时,需要输入PIN码解出用户个人SM2私钥。
当用户忘记PIN码时可以通过设备PIN码重置用户PIN码,即用设备 PIN码解密出用户PIN码,用户PIN码再解密出用户SM2私钥,用新的用户PIN码加密SM2私钥,同时再用设备PIN码加密新的用户PIN码。
本装置通过将密钥安全存储在应用运行和计算环境以外的可信计算环境中确保密钥不会泄漏,通过装置PIN码进行访问控制,能有效的避免装置被盗用的情况。
采用二级PIN码机制对用户SM2密钥进行保护,实现了密钥的安全存储,同时可以支持PIN的修改与找回操作,利用国密双数字证书体系能最大程度的保障应用加密业务数据的找回。
本发明可以让密码运算始终在可信计算环境中执行,减少了终端计算环境对内置TCM硬件模块依赖,相应降低了终端采购成本;通过本装置内部实现的网络通信协议栈,可以有效的降低非可信计算环境中的威胁软件嗅探,缩小了攻击面,提高了网络通信安全;同时利用本装置可以移动与便携特性和用户的PIN码机制与数字证书体系,可以实现装置与使用人员身份的一对一绑定,进一步提高了审计功能的可信度。综上所述,本装置可以通过较低成本在终端侧有效的提升应用***的密码应用安全。
应清楚地理解,本申请描述了如何形成和使用特定示例,但本申请不限于这些示例的任何细节。相反,基于本申请公开的内容的教导,这些原理能够应用于许多其它实施例。
本领域技术人员可以理解实现上述实施例的全部或部分步骤被实现为由CPU执行的计算机程序。在该计算机程序被CPU执行时,执行本申请提供的上述方法所限定的上述功能的程序可以存储于一种计算机可读存储介质中,该存储介质可以是只读存储器,磁盘或光盘等。
此外,需要注意的是,上述附图仅是根据本申请示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
通过对示例实施例的描述,本领域技术人员易于理解,根据本申请实施例的可信网络通信的方法至少具有以下优点中的一个或多个。
根据示例实施例,通过通过终端侧计算环境外置可移动/便携式可信计算环境装置提供密码运算的可信计算环境,减少了终端侧内置 TCM硬件模块的依赖。
根据示例实施例,通过外置可移动/便携式可信计算环境装置自带的网络协议栈,通信中的国密SSL协议握手、通信等步骤都在可信计算环境中,降低了恶意程序嗅探可能性,保护了通信安全。
根据示例实施例,采用二级PIN码机制对用户SM2密钥进行保护,实现了密钥的安全存储,同时可以支持PIN的修改与找回操作,利用国密双数字证书体系能最大程度的保障应用加密业务数据的找回。
图6示出根据本申请示例实施例的可信网络通信装置的框图。
装置执行与前面提供的方法类似的功能,其他功能可参见前面的描述,此处不再赘述。
下面参照图6来描述根据本申请的这种实施方式的电子设备200。图6显示的电子设备200仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图6所示,电子设备200以通用计算设备的形式表现。电子设备 200的组件可以包括但不限于:至少一个处理单元210、至少一个存储单元220、连接不同***组件(包括存储单元220和处理单元210)的总线230、显示单元240等。
其中,存储单元存储有程序代码,程序代码可以被处理单元210执行,使得处理单元210执行本说明书描述的根据本申请各种示例性实施方式的方法。
存储单元220可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)2201和/或高速缓存存储单元2202,还可以进一步包括只读存储单元(ROM)2203。
存储单元220还可以包括具有一组(至少一个)程序模块2205的程序/实用工具2204,这样的程序模块2205包括但不限于:操作***、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线230可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、***总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备200也可以与一个或多个外部设备300(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备 200交互的设备通信,和/或与使得该电子设备200能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口250进行。并且,电子设备200 还可以通过网络适配器260与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器260 可以通过总线230与电子设备200的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备200使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、 RAID***、磁带驱动器以及数据备份存储***等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。根据本申请实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是 CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本申请实施方式的上述方法。
软件产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本申请操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如 Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
本领域技术人员可以理解上述各模块可以按照实施例的描述分布于装置中,也可以进行相应变化唯一不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
以上具体地示出和描述了本申请的示例性实施例。应可理解的是,本申请不限于这里描述的详细结构、设置方式或实现方法;相反,本申请意图涵盖包含在所附权利要求的精神和范围内的各种修改和等效设置。
Claims (12)
1.一种可信网络通信方法,用于可信网络通信装置与应用终端之间的通信,其特征在于,所述方法包括:
存储用户PIN码和用户数字证书;
当所述可信网络通信装置与所述应用终端连接时,通过所述用户PIN码对用户私钥权限进行认证,认证成功后通过所述可信网络通信装置提供可信密码计算;
通过网络协议栈,实现所述可信网络通信装置与应用终端的可信网络通信。
2.根据权利要求1所述的方法,其特征在于,所述存储用户PIN码和用户数字证书,包括:
创建用户的SM2密钥对并存储,所述SM2密钥对包括签名密钥对和加密密钥对,所述签名密钥对包括签名私钥,所述加密密钥对包括加密私钥。
3.根据权利要求2所述的方法,其特征在于,所述存储用户PIN码和用户数字证书,还包括:
获取用户的自签名的公钥证书或第三方可信证书机构签发的公钥证书,并存储。
4.根据权利要求3所述的方法,其特征在于,所述当所述可信网络通信装置与所述应用终端连接时,通过所述用户PIN码对用户私钥权限进行认证,认证成功后通过所述可信网络通信装置提供可信密码计算,包括:
提示用户输入PIN码;
在用户输入正确的PIN码后,将用户的所述签名私钥、待签名数据做为输入参数进行密码计算。
5.根据权利要求4所述的方法,其特征在于,所述当所述可信网络通信装置与所述应用终端连接时,通过所述用户PIN码对用户私钥权限进行认证,认证成功后通过所述可信网络通信装置提供可信密码计算,包括:
提示用户输入PIN码;
在用户输入正确的PIN码后,将用户的所述加密私钥、待解密数据做为输入参数进行密码计算。
6.根据权利要求3所述的方法,其特征在于,所述通过网络协议栈,实现所述可信网络通信装置与应用终端的可信网络通信,包括:
通过可信网络通信装置的网络协议栈使用所述密钥对与所述公钥证书与应用服务端建立国密SSL双向认证。
7.根据权利要求6所述的方法,其特征在于,所述通过网络协议栈,实现所述可信网络通信装置与应用终端的可信网络通信,包括:
将待发送数据放入所述可信网络通信装置的网络协议栈中;
将所述待发送数据通过所述可信网络通信装置的输入接口发送至所述可信网络通信装置的国密SSL协议栈中进行发送;
通过所述国密SSL协议栈将所述待发送数据发送至所述应用服务端。
8.根据权利要求7所述的方法,其特征在于,所述通过网络协议栈,实现所述可信网络通信装置与应用终端的可信网络通信,还包括:
通过所述国密SSL协议栈将收到的所述应用服务端返回的数据由所述可信网络通信装置的输出接口发送至所述网络协议栈中;
通过所述网络协议栈将收到的返回数据返回给所述应用终端。
9.根据权利要求2所述的方法,其特征在于,所述存储用户PIN码和用户数字证书,还包括:
采用二级PIN码机制对用户密钥进行保护,实现密钥的安全存储,包括:将所述PIN码分为用户PIN码和设备PIN码,设备PIN码与所述可信网络通信装置的序列号对应,存放在所述可信网络通信装置的安全存储区中;
将所述设备PIN码作为SM4算法密钥对所述用户PIN码进行加密,加密后的用户PIN码存放在所述可信网络通信装置的安全存储区中;
将所述用户PIN码作为SM4算法密钥对用户的所述SM2密钥对中的SM2私钥进行加密,并存放在所述可信网络通信装置的安全存储区中。
10.根据权利要求9所述的方法,其特征在于,所述存储用户PIN码和用户数字证书,还包括:
当用户需要使用所述私钥时,需要输入所述用户PIN码解出用户的所述SM2私钥;
当用户忘记PIN码时,通过所述设备PIN码解密出所述用户PIN码,再用所述用户PIN码解密出用户的所述SM2私钥,使用新的用户PIN码加密所述SM2私钥,再用所述设备PIN码加密新的用户PIN码,并存放在所述可信网络通信装置的安全存储区中。
11.一种可信网络通信装置,用于和所述应用终端连接,实现可信网络通信方法,其特征在于,包括:
存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述权利要求1-10中任一项所述的方法。
12.一种非瞬时性计算机可读存储介质,其上存储有计算机可读指令,当所述计算机可读指令被处理器执行时,使得所述处理器执行如权利要求1-10中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211197644.5A CN115765981A (zh) | 2022-09-29 | 2022-09-29 | 一种可信网络通信方法、装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211197644.5A CN115765981A (zh) | 2022-09-29 | 2022-09-29 | 一种可信网络通信方法、装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115765981A true CN115765981A (zh) | 2023-03-07 |
Family
ID=85350618
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211197644.5A Pending CN115765981A (zh) | 2022-09-29 | 2022-09-29 | 一种可信网络通信方法、装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115765981A (zh) |
-
2022
- 2022-09-29 CN CN202211197644.5A patent/CN115765981A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10491379B2 (en) | System, device, and method of secure entry and handling of passwords | |
JP6612322B2 (ja) | データ処理方法およびデータ処理装置 | |
CN101350723B (zh) | 一种USB Key设备及其实现验证的方法 | |
CN108566381A (zh) | 一种安全升级方法、装置、服务器、设备和介质 | |
US8495383B2 (en) | Method for the secure storing of program state data in an electronic device | |
WO2021219086A1 (zh) | 基于区块链的数据传输方法和*** | |
EP2728908B1 (en) | Telecommunications chip card | |
CN106936588B (zh) | 一种硬件控制锁的托管方法、装置及*** | |
KR102013983B1 (ko) | 애플리케이션 무결성 인증 방법 및 인증 서버 | |
WO2023029447A1 (zh) | 模型保护方法、装置、设备、***以及存储介质 | |
JP7309261B2 (ja) | 生体決済機器の認証方法、生体決済機器の認証装置、コンピュータ機器、及びコンピュータプログラム | |
CN112232814A (zh) | 支付密钥的加密和解密方法、支付认证方法及终端设备 | |
CN111143856A (zh) | 一种plc远程固件升级***及方法 | |
CN111008094A (zh) | 一种数据恢复方法、设备和*** | |
US10635826B2 (en) | System and method for securing data in a storage medium | |
KR20070059891A (ko) | 어플리케이션 인증 보안 시스템 및 그 인증 보안 방법 | |
KR101711024B1 (ko) | 부정조작방지 장치 접근 방법 및 그 방법을 채용한 단말 장치 | |
CN114885326A (zh) | 一种银行移动作业安全防护方法、装置和存储介质 | |
CN117063174A (zh) | 用于通过基于app的身份的app间相互信任的安全模块及方法 | |
CN115765981A (zh) | 一种可信网络通信方法、装置 | |
CN107862209B (zh) | 一种文件加解密方法、移动终端和具有存储功能的装置 | |
JP6779702B2 (ja) | プログラムを保護する方法 | |
Dhanasekaran et al. | Payment security mechanism of intelligent mobile terminal | |
CN116304999A (zh) | 一种基于非对称加密和对称加密的工控软件安全授权方法 | |
KR100480377B1 (ko) | 스마트 카드를 이용한 네트워크 전용장치의 환경설정 및인증방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |