CN116155480A - 临床试验的远程监查方法及装置、电子设备、存储介质 - Google Patents
临床试验的远程监查方法及装置、电子设备、存储介质 Download PDFInfo
- Publication number
- CN116155480A CN116155480A CN202310132840.2A CN202310132840A CN116155480A CN 116155480 A CN116155480 A CN 116155480A CN 202310132840 A CN202310132840 A CN 202310132840A CN 116155480 A CN116155480 A CN 116155480A
- Authority
- CN
- China
- Prior art keywords
- client
- server
- encryption
- remote
- network card
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0442—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0625—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation with splitting of the data block into left and right halves, e.g. Feistel based algorithms, DES, FEAL, IDEA or KASUMI
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/88—Medical equipments
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Storage Device Security (AREA)
Abstract
本公开实施例是关于一种临床试验的远程监查方法及装置、电子设备、存储介质,涉及计算机技术领域,该临床试验的远程监查方法包括:构建客户端与服务器进行通信连接的虚拟隧道;对所述虚拟隧道对应的客户端和服务器进行隧道权限认证,并在认证通过的情况下确定所述虚拟隧道对应的客户端和服务器之间的加密密钥;响应于所述客户端发送的远程监查请求,在所述虚拟隧道中通过所述加密密钥传输所述远程监查请求对应的响应数据。本公开实施例中的技术方案,能够提高远程监查的安全性。
Description
技术领域
本公开涉及计算机技术领域,具体而言,涉及一种临床试验的远程监查方法、临床试验的远程监查装置、电子设备以及计算机可读存储介质。
背景技术
在医疗场景中,可以对临床试验进行远程监查,以保证对临床试验的有效监查。
相关技术中,医院发布外网远程监查服务地址,任何用户通过访问该网址进行远程监查,安全性较低。并且,系统数据可能会受到攻击,从而导致数据泄露,数据传输的可靠性较差。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供一种临床试验的远程监查方法及装置、电子设备、存储介质,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的远程监查安全性较差的问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的第一方面,提供一种临床试验的远程监查方法,包括:构建客户端与服务器进行通信连接的虚拟隧道;对所述虚拟隧道对应的客户端和服务器进行隧道权限认证,并在认证通过的情况下确定所述虚拟隧道对应的客户端和服务器之间的加密密钥;响应于所述客户端发送的远程监查请求,在所述虚拟隧道中通过所述加密密钥传输所述远程监查请求对应的响应数据。
在本公开的一种示例性实施例中,所述对所述虚拟隧道对应的客户端和服务器进行隧道权限认证,并在认证通过的情况下确定所述虚拟隧道对应的客户端和服务器之间的加密密钥,包括:接收所述客户端发送的多个加密算法;将从所述多个加密算法中选择的目标加密算法,以及服务器的证书返回至客户端,其中所述证书包括所述服务器的公钥;在所述客户端对所述服务器的证书验证通过的情况下,确定所述服务器对客户端的认证结果;若所述认证结果为认证通过,确定所述客户端和所述服务器之间的加密密钥。
在本公开的一种示例性实施例中,所述确定所述虚拟隧道对应的客户端和服务器之间的加密密钥,包括:接收由客户端发送且基于所述服务器的公钥对随机密码串进行加密得到的加密信息,并将所述加密信息确定为所述虚拟隧道对应的所述客户端和所述服务器之间的加密密钥;其中,所述随机密码串与所述客户端的计算机标识序列相关联。
在本公开的一种示例性实施例中,在确定所述客户端和所述服务器之间的加密密钥之后,所述方法还包括:获取客户端的网卡密钥和服务器的网卡密钥;基于所述服务器的网卡密钥,接收基于客户端发送的所有握手消息对应的第一消息认证码;基于所述客户端的网卡密钥,将服务器的所有握手消息的第二消息认证码发送至所述客户端。
在本公开的一种示例性实施例中,所述获取客户端的网卡密钥和服务器的网卡密钥,包括:根据客户端的随机数以及所述客户端的网卡确定所述客户端的网卡密钥;根据服务器的随机数以及所述服务器的网卡确定所述服务器的网卡密钥。
在本公开的一种示例性实施例中,根据客户端的随机数以及所述客户端的网卡确定所述客户端的网卡密钥,包括:将所述客户端的随机数进行加密得到加密结果,并将所述加密结果与所述客户端的网卡进行组合得到所述客户端的网卡密钥;或将所述客户端的随机数与所述客户端的网卡进行组合,得到所述客户端的网卡密钥。
在本公开的一种示例性实施例中,所述在所述虚拟隧道中通过所述加密密钥传输所述远程监查请求对应的响应数据,包括:在所述虚拟隧道中,接收所述客户端通过加密密钥对所述远程监查请求进行加密得到的第一加密信息;所述服务器通过所述加密密钥对所述第一加密信息对应的响应数据进行加密得到第二加密信息,并将所述第二加密信息发送至所述客户端。
在本公开的一种示例性实施例中,所述方法还包括:在所述客户端执行远程监查的过程中,对远程监查的记录信息进行监控;若根据所述记录信息确定所述客户端存在异常行为,对所述异常行为进行预警。
在本公开的一种示例性实施例中,所述对远程监查的记录信息进行监控,包括:对所述远程监查的行为信息以及虚拟隧道的隧道信息进行监控;其中,所述行为信息包括键盘使用信息、粘贴信息、剪切信息、屏幕信息中的一种或多种。
根据本公开的第二方面,提供一种临床试验的远程监查装置,包括:虚拟隧道构建模块,用于构建客户端与服务器进行通信连接的虚拟隧道;权限认证模块,用于对所述虚拟隧道对应的客户端和服务器进行隧道权限认证,并在认证通过的情况下,确定所述虚拟隧道对应的客户端和服务器之间的加密密钥;请求响应模块,用于响应于所述客户端发送的远程监查请求,在所述虚拟隧道中通过所述加密密钥传输所述远程监查请求对应的响应数据。
根据本公开的第三方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述第一方面的临床试验的远程监查方法及其可能的实现方式。
根据本公开的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面的临床试验的远程监查方法及其可能的实现方式。
本公开实施例中提供的临床试验的远程监查方法、临床试验的远程监查装置、电子设备以及计算机可读存储介质中,一方面,通过用于进行通信连接的虚拟隧道,在认证通过的情况下,在虚拟隧道中通过加密密钥传输远程监查请求对应的响应数据。通过虚拟隧道对数据进行加密传输,使得被破解的可能性较低,避免了数据泄露的问题,提高了数据传输的安全性和可靠性。另一方面,由于只有认证通过的客户端才能够通过虚拟隧道对服务器进行远程监查,避免了任意设备均可连接服务器而导致的非可信设备登录的问题,提高了访问设备的安全性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示意性示出本公开实施例中一种临床试验的远程监查方法的示意图;
图2示意性示出本公开实施例中确定加密密钥的流程示意图;
图3示意性示出本公开实施例中进行隧道权限认证的示意图;
图4示意性示出本公开实施例中进行加密传输的示意图;
图5示意性示出本公开实施例中通过虚拟隧道进行远程监查的流程示意图;
图6示意性示出本公开实施例中一种临床试验的远程监查装置的框图;
图7示意性示出本公开实施例中电子设备的框图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
相关技术中,由于各种原因导致临床监查员无法进入医院进行临床试验的现场监查,因此可通过远程监查方案来协助进行临床试验监查。相关技术中,可直接通过公网网页进行访问,临床监查员直接通过网页进行系统登录,在线查看受试者的EHR(electronichealth record,网络电子健康档案)信息,以进行远程监查。
上述方式中,医院发布外网远程监查服务地址,任何人都可以进行访问,安全性极低。系统非关键数据允许在外网使用,容易受到不法攻击;如果访问的网络被安装了代理极有可能变成敏感信息泄露,安全隐患较大。没有对访问设备的安全限制,任何设备都可登录,无法辨别是否为可信设备,账号在不良设备登录后,容易被木马盗取,并且可能暴露敏感信息。没有审计机制,因为所有人公用网络端口,流量不可控,访问内容不可控。无法控制临床监查员对敏感数据的复制,下载等保存敏感数据的行文,发生数据泄露无法追溯。
为了解决相关技术中的技术问题,本公开实施例中提供了一种临床试验的远程监查方法,可以应用于通过虚拟隧道对服务器进行远程监查的应用场景。
需要说明的是,本公开实施例所提供的临床试验的远程监查方法可以由客户端来执行,也可以由服务器来执行,此处以由服务器执行临床试验的远程监查方法为例进行说明。图1中示意性示出了临床试验的远程监查方法的流程图,主要包括以下步骤:
在步骤S110中,构建客户端与服务器进行通信连接的虚拟隧道;
在步骤S120中,对所述虚拟隧道对应的客户端和服务器进行隧道权限认证,并在认证通过的情况下,确定所述虚拟隧道对应的客户端和服务器之间的加密密钥;
在步骤S130中,响应于所述客户端发送的远程监查请求,在所述虚拟隧道中通过所述加密密钥传输所述远程监查请求对应的响应数据。
本公开实施例中的技术方案,可以应用于客户端对服务器进行远程监控的场景中。具体地,可以在客户端与服务器之间建立虚拟隧道。在确定虚拟隧道对应的客户端和服务器权限认证通过后,可以确定客户端与服务器之间的加密密钥。在接收到客户端发送的远程监查请求时,可在虚拟隧道中通过加密密钥对远程监查请求对应的响应数据进行传输。
本公开实施例中,一方面,通过用于进行通信连接的虚拟隧道,在客户端和服务器认证通过的情况下,在虚拟隧道中通过加密密钥传输远程监查请求对应的响应数据。通过虚拟隧道对数据进行加密传输,使得被破解的可能性较低,因此提高了数据传输的安全性和可靠性。另一方面,由于只有认证通过的客户端才能够通过虚拟隧道对服务器进行远程监查,避免了任意设备均可连接而导致的非可信设备登录的问题,提高了访问设备的安全性,并且由于是通过虚拟隧道进行连接,提高了访问设备以及访问内容的可控性。
接下来,参考图1对本公开实施例中的临床试验的远程监查方法的具体步骤进行详细说明。
在步骤S110中,构建客户端与服务器进行通信连接的虚拟隧道。
本公开实施例中,客户端可以为任意类型的能够用于执行远程控制的设备,例如可以为能够用于远程监查的电脑、手机或者是其他类型设备。远程监查可以为任意场景的远程监查,场景类型可以根据实际需求进行确定,例如可以为医院的临床试验或者是其他需要监查的场景等等,此处以医院的临床试验为例进行说明。
虚拟隧道可以用于在客户端与服务器之间进行通信连接。客户端可以为CRA(Clinical Research Associate,临床监查员)客户端,服务器可以为待监查对象所使用的服务器。待监查对象可以根据应用场景而确定,例如待监查对象可以为医疗机构内的网络电子健康档案,也可以为其他类型的内容,此处以待监查对象为医疗机构内的网络电子健康档案为例进行说明。医疗机构可以为任意类型的医疗机构,例如医院、社区医院或者是诊所等等。基于此,服务器可以为部署在医疗机构的内部服务器。
虚拟隧道是网络基础设置在网络之间传递数据的方式,数据在虚拟隧道的两个端点之间通过网络进行路由,数据在网络上传递时所经历的逻辑路径称为虚拟隧道。虚拟隧道远程监查技术的原理在于:每个用户对应一个私钥,私钥的生成必须和用户的客户端进行绑定。用户登录系统同时,先建立虚拟隧道。虚拟隧道建立后,所有的远程监查网络流量都通过加密的形式经过虚拟隧道,形成点对点的数据传输。使用隧道技术传递可以是不同协议的数据包,隧道协议将这些其他协议的数据包重新封装在新的包头中发送。
对于用户而言,在登录系统的同时,首先需要建立用户所使用的客户端与服务器之间进行通信连接的虚拟隧道,以便于后续通过虚拟隧道传输数据。
在一些实施例中,可以通过配置虚拟隧道接口的方式来构建客户端与服务器之间的虚拟隧道。示例性地,系统底层可以配置客户端的接口的IP地址以及到对端(服务器)的静态路由,从而保证客户端和服务器两端路由可达,即保证CRA客户端和医疗机构的远程监查服务器两端路由可达。建立虚拟隧道可以包括以下步骤:
配置IPSec安全提议,定义IPSec的保护方法。配置安全框架,并引用安全提议和IKE对等体,确定对何种数据流采取何种保护方法。在VTunnel接口上应用安全框架,使接口具有IPSec的保护功能。配置VTunnel接口的转发路由,将需要IPSec保护的数据流引到VTunnel接口。
其中,IPSec指的是三层隧道协议。当隧道模式使用IPsec时,其只为通讯提供封装。使用IPSec隧道模式主要是为了与其他不支持IPSec上的L2TP或者PPTP VPN隧道技术的路由器、网关或终端系统之间的互相操作。
虚拟隧道服务允许参与建立的院外授权访问点使用预设的私钥、第三方证书、或者用户名/密码来进行身份验证。它能在各种操作系统上(例如Linux、windonw、MacOS)运行。虚拟隧道技术基于流行的SSL协议,提供了数据私密性、端点验证、信息完整性。SSL协议由多个子协议组成,其中两个主要的子协议是握手协议和记录协议,以通过对称加密和非对称加密相结合的方式进行数据的交换。
需要说明的是,每个客户端都可以采用相同的方式,独立建立与服务器之间的虚拟隧道,以便于通过虚拟隧道来实现每个客户端对服务器的独立远程监查。
接下来,在步骤S120中,对所述虚拟隧道对应的客户端和服务器进行隧道权限认证,并在认证通过的情况下确定所述虚拟隧道对应的客户端和服务器之间的加密密钥。
本公开实施例中,与服务器进行通信的客户端可以为认证通过或者是具备权限的终端设备,例如认证通过的电脑。由于只有认证通过的授权设备才可以进行登录,进而通过虚拟隧道对服务器进行远程监查,因此避免了相关技术中存在的账号滥用以及非法设备登录的问题,提高了设备使用的安全性。
隧道权限认证,用于确定客户端是否有权限通过虚拟隧道访问对应的服务器,或者是确定客户端是否通过认证。此外,还可以对服务器的证书进行认证,从而得到客户端和服务器的认证结果。认证结果可以为认证通过或者是认证未通过。认证结果不同,则对客户端使用不同的方式进行处理。对于客户端而言,可在建立虚拟隧道时进行一次隧道权限认证即可,而不需要进行多次隧道权限认证。
进一步地,如果认证结果为认证通过,则可以确定客户端和服务器之间的加密密钥,进而使得客户端和服务器通过加密密钥在虚拟隧道中进行数据传输以便于进行远程监查。如果认证结果为认证未通过,则确定客户端无法通过虚拟隧道对服务器进行远程监查。
在一些实施例中,在构建虚拟隧道之后,可以对虚拟隧道对应的客户端和服务器进行隧道权限认证。示例性地,首先可以对服务器进行隧道权限认证。具体地,客户端可以将自身所支持的多个加密算法发送至服务器,服务器可以从多个加密算法中随机选择一种作为目标加密算法。并且,服务器可以将自身的证书发送至客户端,以使得客户端对服务器的证书进行验证。对于客户端而言,可以验证服务器的证书的合法性,例如可以通过证书中的签名等参数来进行验证该证书是否属于服务器本身,还可以验证该证书的有效期等等。
在确定客户端对服务器的证书验证通过的情况下,服务器可进一步对客户端进行认证,以得到对客户端的认证结果。示例性地,服务器可以将自身的证书发送至客户端,证书中包含了服务器的公钥。因此客户端可以从证书中抽取服务器的公钥,并使用该公钥生成一个随机密码串,并基于服务器的公钥对该随机密码串进行加密得到一个加密信息。进一步地,客户端可以将加密信息发送至服务器,以使服务器基于加密信息对客户端进行认证。示例性地,服务器可以确定加密信息是否属于根据服务器的公钥加密得到来确定认证结果,如果加密信息是根据服务器的公钥加密得到,则认为认证结果为认证通过;如果加密信息不是根据服务器的公钥加密得到,则认为认证结果为认证未通过,此时客户端和服务器完全建立信任,完成对客户端和服务器的隧道权限认证的过程。
进一步地,在认证结果为认证通过的情况下,可以确定虚拟隧道对应的客户端和服务器之间的加密密钥。图2中示意性示出了确定加密密钥的流程图,参考图2中所示,主要包括以下步骤:
在步骤S210中,接收由客户端发送且基于所述服务器的公钥对随机密码串进行加密得到的加密信息;
在步骤S220中,将所述加密信息确定为所述虚拟隧道对应的所述客户端和所述服务器之间的加密密钥。
示例性地,客户端可以从服务器发送的证书中抽取服务器的公钥。所述随机密码串与所述客户端的计算机标识序列相关联。示例性地,随机密码串可以根据客户端的计算机标识序列而确定。例如,可根据公钥或者是其它合适的加密算法对计算机标识序列进行加密得到随机密码串,只要随机密码串与客户端的计算机标识序列相关即可。
计算机标识序列指的是通过算法关联计算机CPU、内存、硬盘、系统等硬件参数生成的唯一标识序列。每个客户端都存在唯一对应的计算机标识序列。示例性地,可以将客户端的硬件参数进行存储,并对其进行MD5加密生成一个字符串,MD5加密时的key值即为计算机标识序列。硬件参数可以包括但不限于CPU、内存、硬盘、系统等等。基于此,每个客户端关联的计算机标识序列不同,根据计算机标识序列生成的随机密码串也不同,根据公钥对随机密码串生成的加密密钥也不同。在一些实施例中,对于客户端而言,可以认为是通过服务器的公钥和客户端的计算机标识序列进行加密密钥的生成,以使得加密密钥与客户端本身的硬件参数关联。由于加密密钥由客户端本身的硬件参数而确定,因此破解的可能性较小,从而提高了客户端的安全性。
在确定客户端与服务器之间的加密密钥之后,可以确定客户端的网卡密钥和服务器对应的网卡密钥,以基于各自的网卡密钥确定接收消息以及确定进行交互的客户端和服务器到底是哪一个。网卡密钥可以为虚拟网卡,用于表示客户端的坐标或地址。虚拟网卡可以为对客户端的网卡进行调整得到,且虚拟网卡与客户端的网卡不同,但是虚拟网卡能够与客户端的网卡一一对应。
网卡指的是MAC(Media Access Control Address)地址,即硬件地址。该硬件地址在网卡出厂时确定,可通过在设备管理器中进行修改而调整。MAC是用来完成消息来源正确性鉴别,防止数据被篡改或非法用户窃入的数据。每个客户端的网卡是独立码,但是客户端的网卡可能被篡改为新的MAC地址。
为了提高安全性,本公开实施例中,客户端可以确定自身的网卡密钥,服务器可以确定自身的网卡密钥。示例性地,对于客户端而言,可根据客户端的随机数以及所述客户端的网卡确定所述客户端的网卡密钥。随机数是用于描述客户端的计算机标识序列的随机数。客户端的随机数指的是根据客户端的计算机标识序列生成的随机数,用于唯一标识一个客户端,且不同客户端的随机数不同。除此之外,随机数可用于表示当前交互过程与上次交互过程是不同的交互过程,并且相同加密算法不同时刻产生的随机数可以相同或不同,以提高安全性和随机性。
基于此,可以将客户端产生的随机数以及客户端的网卡进行结合,得到客户端的网卡密钥。示例性地,可以将所述客户端的随机数进行加密得到加密结果,并将所述加密结果与所述客户端的网卡进行组合得到所述客户端的网卡密钥。例如,可以使用加密算法对客户端的随机数进行加密得到加密结果,加密算法可以为任意合适的加密算法,例如可以为根据公钥生成的随机密码串等等。进一步可以将加密结果与客户端本身的真实的网卡进行组合得到虚拟网卡,以将虚拟网卡作为客户端的网卡密钥。此处的进行组合可以包括相加或拼接等等。
除此之外,也可以不对客户端的随机数进行加密处理,直接将客户端的随机数与客户端的网卡进行组合得到客户端的网卡密钥。即,直接将客户端的随机数与客户端的网卡进行相加或者是拼接等等。
类似地,对于服务器而言,可根据服务器的随机数以及所述服务器的网卡确定所述服务器的网卡密钥。具体地,可以将服务器的随机数进行加密得到加密结果,并将所述加密结果与服务器的网卡进行组合得到所述服务器的网卡密钥。也可以直接将服务器的随机数与服务器的网卡进行组合,得到服务器的网卡密钥。
在获取到客户端的网卡密钥以及服务器的网卡密钥之后,能够确定需要连接的客户端和服务器。基于此,可基于服务器的网卡密钥确定需要连接的服务器,服务器可以接收客户端发送的所有握手消息的第一消息认证码。握手消息可以包括但不限于建立连接的时间、网卡地址、IP地址等信息。第一消息认证码指的是握手消息对应的MAC值。
MAC值就是消息验证码(Message Authentication Code),是一种与密钥相关的单向散列函数,它能够验证消息是来自发送者发送的,正确的没有被篡改过的。具体做法是:客户端对所有握手消息进行MAC运算,得到第一消息认证码,即MAC值。MAC值可以通过以下方式计算得到:一、可以利用已有的加密算法,如DES(Data Encryption Standard)等直接对握手消息进行加密处理;二、使用专门的MAC算法,例如HMAC(Hash-based MessageAuthentication Code,哈希运算消息认证码),其基于MD5(MD5 Message-DigestAlgorithm,MD5信息摘要算法)或者SHA-1(Secure Hash Algorithm 1,安全散列算法1),在计算散列值时将密钥和数据同时作为输入,并采用了二次散列迭代的方式来计算客户端的所有握手消息的第一消息认证码。并且,可以将第一消息认证码发送至服务器。
类似地,可以对服务器的所有握手消息进行MAC运算,得到服务器的所有握手消息的第二消息认证码,即MAC值,并将第二消息认证码发送至客户端。生成第二消息认证码的方式与上述生成第一消息认证码的方式相同,因此此处不再赘述。
图3中示意性示出了进行隧道权限认证的流程图,参考图3中所示,主要包括以下步骤:
步骤S301,CRA客户端将它所支持的加密算法列表连同一个密钥产生过程用作输入的随机数发送给服务器。
其中,加密算法列表中可以包含多个加密算法。随机数可以根据客户端的计算机标识序列生成,且不同客户端对应的随机数不同,即随机数可以用于唯一表示客户端。相同客户端不同时刻产生的随机数可以不同,以提高密钥产生过程的安全性和随机性。
步骤S302,服务器从加密算法列表的内容中选择一种加密算法作为目标加密算法,并将其连同一份包含服务器公钥的证书发回给客户端。
其中,该证书除了服务器的公钥之外,还包含了用于认证目的的服务器标识,服务器同时还提供了一个作为密钥产生过程部分输入的随机数。对于服务器而言,可以从多个加密算法中随机选择一个加密算法作为目标加密算法,也可以根据实际需求进行选择,此处不做限定。服务器提供的该随机数可以与CRA客户端生成的随机数不同,该随机数可以为一个密码。服务器将该随机数发送至客户端,以使得客户端在根据这个随机数请求服务器时,认为该请求是有效的,从而便于客户端和服务器之间进行通信。
步骤S303,客户端对服务器发送的证书进行验证,并抽取服务器的公钥。然后,客户端再产生一个随机密码串,并使用服务器的公钥对该随机密码串进行加密得到加密信息。最后,客户端将加密信息发送给服务器。
即,客户端可以根据证书中包含的认证目的的服务器标识,以及真实的认证目的的服务器标识进行对比,对服务器发送的证书进行验证,以确定是否为真实的认证目的的服务器本身的证书。在服务器的证书验证通过后,客户端随机产生一个随机密码串,具体可以根据客户端的计算机标识序列产生一个随机密码串,例如可以根据服务器的公钥对客户端的计算机标识序列进行加密得到一个随机密码串。进一步利用从证书抽取出来的服务器的公钥对该随机密码串进行加密,得到加密信息。并将加密信息发送至服务器。在将加密信息发送至服务器后,客户端可以将加密信息作为客户端与服务器之间的加密密钥。示例性地,由于事先确定好了目标加密算法,因此可以确定与目标加密算法一起使用的加密密钥。
步骤S304,客户端与服务器端根据客户端对应的标识与服务器的随机数独立计算出加密和MAC密钥。
其中,客户端对应的标识指的是客户端根据计算机标识序列生成的随机数。加密和MAC密钥指的是网卡密钥,即虚拟网卡。此处服务器的随机数可以为一个密码,用于确定客户端发送的请求的有效性,且该随机数与客户端的随机数不同。
步骤S305,客户端将所有握手消息的第一消息认证码(MAC值)发送给服务器。具体可以基于服务器的网卡密钥,接收客户端对所有握手消息进行MAC运算,得到的第一消息认证码。
步骤S306,服务器将所有握手消息的第二消息认证码(MAC值)发送给客户端。具体可以通过服务器对所有握手消息进行MAC运算,得到第二消息认证码,并基于客户端的网卡密钥将第二消息认证码发送至客户端。
本公开实施例中,客户端将它所支持的加密算法列表中包含的多个加密算法,连同一个密钥产生过程用作输入的随机数发送给服务器。服务器从加密算法列表的多个加密算法中选择一种加密算法作为目标加密算法,并将其连同一份包含服务器公钥的证书发回给客户端。服务器同时还提供了一个作为密钥产生过程部分输入的随机数。客户端对服务器发送的证书进行验证,并抽取服务器的公钥。然后,客户端再基于公钥和客户端的计算机标识序列产生一个随机密码串,并使用服务器的公钥对该随机密码串进行加密得到加密信息。最后,客户端将加密信息发送给服务器,并将加密信息作为客户端与服务器之间的加密密钥。在客户端和服务器认证通过后,可以确定客户端和服务器之间协商好的加密密钥和加密算法等信息。
在客户端将加密信息发送至服务器之后,可使用网卡密钥确定用于交互的客户端和服务器。客户端可以将所有握手消息的第一消息认证码发送给服务器。握手消息指的是建立连接时发送的所有交互消息。第一消息认证码可以为客户端发送的所有握手消息的MAC值。类似地,服务器也可以将所有握手消息进行MAC运算得到第二消息认证码,并将第二消息认证码发送至客户端,以实现客户端与服务器之间的通信连接。本公开实施例中,通过发送第一消息认证码和第二消息认证码,能够防止握手本身被篡改,能够避免非认证客户端连接的情况,因此提高了客户端和服务器通信的安全性。
在此过程结束时,客户端与服务器已就需要使用的加密算法达成一致,并拥有了一组与使用的加密算法一起使用的加密密钥。具体地,可以将目标加密算法确定为客户端和服务器协商好的加密算法,与此同时还可以确定与目标加密算法一起使用的加密密钥,加密密钥即为公钥对随机密码串进行加密得到的加密信息。基于此,通过上述步骤S301至步骤S306执行完隧道权限验证过程,客户端已知服务器发送数据的加密密钥,服务器已知客户端发送数据的加密密钥,并且可以确定双方使用的加密算法,进而可以使用双方协商确定好的加密密钥和加密算法,在虚拟隧道中进行数据传输,以便于实现远程监查。
需要说明的是,在客户端与服务器进行连接时,只需要在首次连接的过程执行上述步骤S301至步骤S306所述的隧道权限认证过程,即只执行一次即可,而在后续的连接过程中无需进行隧道权限认证过程。
在步骤S130中,响应于所述客户端发送的远程监查请求,在所述虚拟隧道中通过所述加密密钥传输所述远程监查请求对应的响应数据。
本公开实施例中,在确定客户端与服务器之间的加密密钥后,客户端可以向服务器发送远程监查请求。此处的远程监查请求可以为用于表示远程监查的指令,其中可以包含远程监查需要针对的对象以及所要监查的内容。所要监查的内容可以为要监查的项目以及要监查的时间段等等。例如,远程监查请求可以为用于获取对象A在时刻1的电子健康数据的请求。
客户端可以将远程监查请求通过加密密钥进行加密得到第一加密信息,即通过客户端根据公钥以及计算机标识序列计算得到的加密密钥进行加密,并通过建立的虚拟隧道将第一加密信息加密传输至服务器。服务器在接收到远程监查请求对应的第一加密信息后,可以生成与远程监查请求对应的响应数据,并且通过加密密钥对响应数据进行加密得到第二加密信息,即通过抽取出的服务器的加密密钥对响应数据进行加密得到第二加密信息,服务器的加密密钥可以为公钥。进一步可以将第二加密信息通过建立的虚拟隧道加密传输至客户端,以通过虚拟隧道完成客户端与服务器之间的远程监查。
需要说明的是,由于加密密钥与客户端本身相关,因此不同客户端与服务器之间的加密密钥可能不同,从而保证数据的安全性。
举例而言,参考图4中所示,客户端A向服务器发送的远程监查请求1为“获取对象1的电子健康数据”,可以对客户端A发送的远程监查请求按照客户端A与服务器之间的加密密钥进行加密得到字符串1,并将字符串1传输至服务器。服务器可以生成字符串1的响应数据,并将响应数据按照客户端A与服务器之间的加密密钥进行加密得到字符串2传输至客户端A。客户端B向服务器发送的远程监查请求2为“获取对象1的电子健康数据”,可以对客户端B发送的远程监查请求,按照客户端B与服务器之间的加密密钥进行加密得到字符串3,并将字符串3传输至服务器。服务器可以生成字符串3的响应数据,并将响应数据按照客户端B与服务器之间的加密密钥进行加密得到字符串4传输至客户端B。
本公开实施例中,通过构建的虚拟隧道,对远程监查请求以及与远程监查请求对应的响应数据使用加密密钥进行加密后再进行传输,即使有攻击者在网络中转设置了代理,拦截到的数据只是一串加密后的密文,而且密文和客户端本身的硬件参数相关,因此在不知道客户端的硬件参数的情况下破解密文的可能性较小,因此提高了数据传输的安全性。并且,虚拟隧道传输过程中的加密压缩,有效提高了网络利用率,提高网络传输速度。
除此之外,在使用远程监查的过程中,可对客户端的远程监查的记录信息进行监控。记录信息可以为远程监查的所有历史信息,可以包括但不限客户端的行为信息以及虚拟隧道的隧道信息。行为信息可以用于表示用户在客户端上执行过的任意行为的记录。行为信息可以包括键盘使用信息、粘贴信息、剪切信息、屏幕信息中的一种或多种。键盘使用信息可以为对键盘上按键的使用情况(例如使用了哪些按键以及按键的使用频率)、剪切信息可以表示剪切的内容以及剪切位置、粘贴信息可以表示粘贴的内容以及粘贴位置、屏幕信息可以为客户端的屏幕上的显示内容。在监控行为信息时,还可以监控行为信息发生的时间以及发生的次数等具体情况。行为信息可以通过客户端的设备部件来显示,例如可以通过屏幕、剪切板、粘贴板、键盘等来显示。
虚拟隧道的隧道信息可以为虚拟隧道内包含的客户端的数量、每个虚拟隧道内的流量情况、每个虚拟隧道内发出的远程监查请求的数量以及发出的请求内容中的一种或多种。
通过对虚拟隧道内的远程监查的记录信息进行监控,能够识别出异常行为。异常行为例如可以为数据复制、数据下载等等。示例性地,可根据剪切内容和粘贴内容等识别出数据复制的异常行为。根据虚拟隧道的流量信息识别出数据下载的异常行为。当识别出异常行为时,可以对异常行为进行预警。示例性地,可提供一个提示信息进行预警,或者是对异常行为进行区别性显示,此处不做具体限定。
本公开实施例中,可有效的监控客户端在使用远程监查过程中,进行数据复制、数据下载等异常行为的记录,避免了发生数据泄露的行为,可以快速进行追溯,提高了远程监查的可靠性和安全性。
图5中示意性示出了通过虚拟隧道进行远程监查的示意图,参考图5中所示,主要包括以下过程:院外客户端首先进行虚拟隧道认证。院内服务器可通过其中包含的虚隧道认证服务对客户端进行隧道权限认证。在客户端和服务器的认证结果为认证通过时,院内服务器可通过审计服务对构建的虚拟隧道的隧道信息进行监控。示例性地,可监控当前时刻虚拟隧道内存在的客户端的数量、每个虚拟隧道的流量情以及每个虚拟隧道内的请求等。接下来,客户端可以发送在线进行远程监查的远程监查请求,并且可以将远程监查请求使用客户端与服务器之间的加密密钥进行加密,并通过虚拟隧道发送至院内服务器。院内服务器可以接收客户端发送的远程监查请求以获取远程监查请求对应的响应数据。进一步可以将响应数据使用客户端与服务器之间的加密密钥进行加密,并通过虚拟隧道进行加密传输至客户端,以完成客户端对服务器的远程监查。监查过程必须在认证通过的客户端上进行,且需要经过虚拟隧道进行数据传输以实现远程监查。
需要说明的是,在临床试验的监查过程中,远程监查可以与现场监查相结合来对临床试验进行监查。临床试验中可能涉及到数据,还有知情同意书的远程监查、数据安全性等多方面的问题。因此可以通过远程监查去发现其中存在的风险点,从而来决定现场监查的频率,以指导临床试验的准确进行。
本公开实施例中提供的技术方案,通过用于进行通信连接的虚拟隧道,在客户端和服务器认证通过的情况下,在虚拟隧道中通过客户端与服务器之间的加密密钥传输远程监查请求对应的响应数据。通过虚拟隧道对数据进行加密传输,使得被破解的可能性较低,利用隧道加密性保证了数据传输过程的安全性,保证不会因为网络传输过程中泄露隐私,因此提高了数据传输的安全性和可靠性。由于只有认证通过的客户端才能够通过虚拟隧道对服务器进行远程监查,避免了任意设备均可连接而导致的非可信设备登录的问题,有效避免了账号滥用的问题,提高了访问设备的安全性,同时也保证账号安全。虚拟隧道技术审计功能,记录了CRA客户端可能存在的泄露隐私数据的操作行为,便于问题追溯以及实现行为定位功能。
本公开实施例中提供了一种临床试验的远程监查装置,参考图6中所示,该临床试验的远程监查装置600可以包括:
虚拟隧道构建模块601,用于构建客户端与服务器进行通信连接的虚拟隧道;
权限认证模块602,用于对所述虚拟隧道对应的客户端和服务器进行隧道权限认证,并在认证通过的情况下,确定所述虚拟隧道对应的客户端和服务器之间的加密密钥;
请求响应模块603,用于响应于所述客户端发送的远程监查请求,在所述虚拟隧道中通过所述加密密钥传输所述远程监查请求对应的响应数据。
在本公开的一种示例性实施例中,所述对所述虚拟隧道对应的客户端和服务器进行隧道权限认证,并在认证通过的情况下确定所述虚拟隧道对应的客户端和服务器之间的加密密钥,包括:接收所述客户端发送的多个加密算法;将从所述多个加密算法中选择的目标加密算法,以及服务器的证书返回至客户端,其中所述证书包括所述服务器的公钥;在所述客户端对所述服务器的证书验证通过的情况下,确定所述服务器对客户端的认证结果;若所述认证结果为认证通过,确定所述客户端和所述服务器之间的加密密钥。
在本公开的一种示例性实施例中,所述确定所述虚拟隧道对应的客户端和服务器之间的加密密钥,包括:接收由客户端发送且基于所述服务器的公钥对随机密码串进行加密得到的加密信息,并将所述加密信息确定为所述虚拟隧道对应的所述客户端和所述服务器之间的加密密钥;其中,所述随机密码串与所述客户端的计算机标识序列相关联。
在本公开的一种示例性实施例中,在确定所述客户端和所述服务器之间的加密密钥之后,所述方法还包括:获取客户端的网卡密钥和服务器的网卡密钥;基于所述服务器的网卡密钥,接收基于客户端发送的所有握手消息对应的第一消息认证码;基于所述客户端的网卡密钥,将服务器的所有握手消息的第二消息认证码发送至所述客户端。
在本公开的一种示例性实施例中,所述获取客户端的网卡密钥和服务器的网卡密钥,包括:根据客户端的随机数以及所述客户端的网卡确定所述客户端的网卡密钥;根据服务器的随机数以及所述服务器的网卡确定所述服务器的网卡密钥。
在本公开的一种示例性实施例中,根据客户端的随机数以及所述客户端的网卡确定所述客户端的网卡密钥,包括:将所述客户端的随机数进行加密得到加密结果,并将所述加密结果与所述客户端的网卡进行组合得到所述客户端的网卡密钥;或将所述客户端的随机数与所述客户端的网卡进行组合,得到所述客户端的网卡密钥。
在本公开的一种示例性实施例中,所述在所述虚拟隧道中通过所述加密密钥传输所述远程监查请求对应的响应数据,包括:在所述虚拟隧道中,接收所述客户端通过的所述加密密钥对所述远程监查请求进行加密得到的第一加密信息;所述服务器通过所述加密密钥对所述第一加密信息对应的响应数据进行加密得到第二加密信息,并将所述第二加密信息发送至所述客户端。
在本公开的一种示例性实施例中,所述方法还包括:在所述客户端执行远程监查的过程中,对远程监查的记录信息进行监控;若根据所述记录信息确定所述客户端存在异常行为,对所述异常行为进行预警。
在本公开的一种示例性实施例中,所述对远程监查的记录信息进行监控,包括:对所述远程监查的行为信息以及虚拟隧道的隧道信息进行监控;其中,所述行为信息包括键盘使用信息、粘贴信息、剪切信息、屏幕信息中的一种或多种。
需要说明的是,上述临床试验的远程监查装置中各模块的具体细节已经在对应的临床试验的远程监查方法中进行了详细描述,因此此处不再赘述。
本公开的示例性实施方式还提供一种电子设备。该电子设备可以是上述客户端,也可以是服务器。一般的,该电子设备可以包括处理器与存储器,存储器用于存储处理器的可执行指令,处理器配置为经由执行可执行指令来执行上述临床试验的远程监查方法。
下面参照图7来描述根据本公开的这种实施方式的电子设备700。图7显示的电子设备700仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图7所示,电子设备700以通用计算设备的形式表现。电子设备700的组件可以包括但不限于:上述至少一个处理单元710、上述至少一个存储单元720、连接不同系统组件(包括存储单元720和处理单元710)的总线730以及显示单元740。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元710执行,使得所述处理单元710执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。例如,所述处理单元710可以执行如图1中所示的步骤。
存储单元720可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)7201和/或高速缓存存储单元7202,还可以进一步包括只读存储单元(ROM)7203。
存储单元720还可以包括具有一组(至少一个)程序模块7205的程序/实用工具7204,这样的程序模块7205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线730可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速接口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备700也可以与一个或多个外部设备800(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备700交互的设备通信,和/或与使得该电子设备700能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口750进行。并且,电子设备700还可以通过网络适配器760与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器760通过总线730与电子设备700的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备700使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
在本公开的实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。
根据本公开的实施方式的用于实现上述方法的程序产品,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
此外,上述附图仅是根据本公开实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限。
Claims (12)
1.一种临床试验的远程监查方法,其特征在于,包括:
构建客户端与服务器进行通信连接的虚拟隧道;
对所述虚拟隧道对应的客户端和服务器进行隧道权限认证,并在认证通过的情况下确定所述虚拟隧道对应的客户端和服务器之间的加密密钥;
响应于所述客户端发送的远程监查请求,在所述虚拟隧道中通过所述加密密钥传输所述远程监查请求对应的响应数据。
2.根据权利要求1所述的临床试验的远程监查方法,其特征在于,所述对所述虚拟隧道对应的客户端和服务器进行隧道权限认证,并在认证通过的情况下确定所述虚拟隧道对应的客户端和服务器之间的加密密钥,包括:
接收所述客户端发送的多个加密算法;
将从所述多个加密算法中选择的目标加密算法,以及服务器的证书返回至客户端,其中所述证书包括所述服务器的公钥;
在所述客户端对所述服务器的证书验证通过的情况下,确定所述服务器对客户端的认证结果;
若所述认证结果为认证通过,确定所述客户端和所述服务器之间的加密密钥。
3.根据权利要求2所述的临床试验的远程监查方法,其特征在于,所述确定所述虚拟隧道对应的客户端和服务器之间的加密密钥,包括:
接收由客户端发送且基于所述服务器的公钥对随机密码串进行加密得到的加密信息,并将所述加密信息确定为所述虚拟隧道对应的所述客户端和所述服务器之间的加密密钥;
其中,所述随机密码串与所述客户端的计算机标识序列相关联。
4.根据权利要求1所述的临床试验的远程监查方法,其特征在于,在确定所述虚拟隧道对应的客户端和服务器之间的加密密钥之后,所述方法还包括:
获取客户端的网卡密钥和服务器的网卡密钥;
基于所述服务器的网卡密钥,接收基于客户端发送的所有握手消息对应的第一消息认证码;
基于所述客户端的网卡密钥,将服务器的所有握手消息的第二消息认证码发送至所述客户端。
5.根据权利要求4所述的临床试验的远程监查方法,其特征在于,所述获取客户端的网卡密钥和服务器的网卡密钥,包括:
根据客户端的随机数以及所述客户端的网卡确定所述客户端的网卡密钥;
根据服务器的随机数以及所述服务器的网卡确定所述服务器的网卡密钥。
6.根据权利要求5所述的临床试验的远程监查方法,其特征在于,根据客户端的随机数以及所述客户端的网卡确定所述客户端的网卡密钥,包括:
将所述客户端的随机数进行加密得到加密结果,并将所述加密结果与所述客户端的网卡进行组合得到所述客户端的网卡密钥;或
将所述客户端的随机数与所述客户端的网卡进行组合,得到所述客户端的网卡密钥。
7.根据权利要求1所述的临床试验的远程监查方法,其特征在于,所述在所述虚拟隧道中通过所述加密密钥传输所述远程监查请求对应的响应数据,包括:
在所述虚拟隧道中,接收所述客户端通过加密密钥对所述远程监查请求进行加密得到的第一加密信息;
所述服务器通过所述加密密钥对所述第一加密信息对应的响应数据进行加密得到第二加密信息,并将所述第二加密信息发送至所述客户端。
8.根据权利要求1所述的临床试验的远程监查方法,其特征在于,所述方法还包括:
在所述客户端执行远程监查的过程中,对远程监查的记录信息进行监控;
若根据所述记录信息确定所述客户端存在异常行为,对所述异常行为进行预警。
9.根据权利要求8所述的临床试验的远程监查方法,其特征在于,所述对远程监查的记录信息进行监控,包括:
对所述远程监查的行为信息以及虚拟隧道的隧道信息进行监控;
其中,所述行为信息包括键盘使用信息、粘贴信息、剪切信息、屏幕信息中的一种或多种。
10.一种临床试验的远程监查装置,其特征在于,包括:
虚拟隧道构建模块,用于构建客户端与服务器进行通信连接的虚拟隧道;
权限认证模块,用于对所述虚拟隧道对应的客户端和服务器进行隧道权限认证,并在认证通过的情况下确定所述虚拟隧道对应的客户端和服务器之间的加密密钥;
请求响应模块,用于响应于所述客户端发送的远程监查请求,在所述虚拟隧道中通过所述加密密钥传输所述远程监查请求对应的响应数据。
11.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1-9任意一项所述的临床试验的远程监查方法。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-9任意一项所述的临床试验的远程监查方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310132840.2A CN116155480A (zh) | 2023-02-06 | 2023-02-06 | 临床试验的远程监查方法及装置、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310132840.2A CN116155480A (zh) | 2023-02-06 | 2023-02-06 | 临床试验的远程监查方法及装置、电子设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116155480A true CN116155480A (zh) | 2023-05-23 |
Family
ID=86373225
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310132840.2A Pending CN116155480A (zh) | 2023-02-06 | 2023-02-06 | 临床试验的远程监查方法及装置、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116155480A (zh) |
-
2023
- 2023-02-06 CN CN202310132840.2A patent/CN116155480A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9954687B2 (en) | Establishing a wireless connection to a wireless access point | |
CN109088889B (zh) | 一种ssl加解密方法、系统及计算机可读存储介质 | |
JP5860815B2 (ja) | コンピューターポリシーを施行するためのシステムおよび方法 | |
CN101227468B (zh) | 用于认证用户到网络的方法、设备和系统 | |
WO2019020051A1 (zh) | 一种安全认证的方法及装置 | |
CN105072125B (zh) | 一种http通信系统及方法 | |
JP2016063533A (ja) | 電子取引用のネットワーク認証方法 | |
CN105359486A (zh) | 使用代理安全访问资源 | |
CN110198297B (zh) | 流量数据监控方法、装置、电子设备及计算机可读介质 | |
CN111130799B (zh) | 一种基于tee进行https协议传输的方法及系统 | |
US20170070486A1 (en) | Server public key pinning by url | |
JP5827724B2 (ja) | データを入力する方法と装置 | |
CN109040055A (zh) | 使用国产密码实现Web安全访问的方法 | |
US12107956B2 (en) | Information processing device, information processing method, and non-transitory computer readable storage medium | |
JP3833652B2 (ja) | ネットワークシステム、サーバ装置、および認証方法 | |
CN113630412B (zh) | 资源下载方法、资源下载装置、电子设备以及存储介质 | |
CN114125027A (zh) | 一种通信建立方法、装置、电子设备及存储介质 | |
CN110166471A (zh) | 一种Portal认证方法及装置 | |
CN109495458A (zh) | 一种数据传输的方法、系统及相关组件 | |
CN102629928A (zh) | 一种基于公共密钥的互联网彩票系统安全链路实施方法 | |
KR101836211B1 (ko) | 전자 기기 인증 매니저 장치 | |
CN110830507B (zh) | 资源访问方法、装置、电子设备及系统 | |
CN115801252A (zh) | 一种结合量子加密技术的安全云桌面系统 | |
KR101881279B1 (ko) | 보안 소켓 계층 통신을 이용하는 패킷을 검사하는 방법 | |
CN116155480A (zh) | 临床试验的远程监查方法及装置、电子设备、存储介质 |
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 |