CN113315844A - 文件加密传输方法、装置、设备和计算机可读存储介质 - Google Patents

文件加密传输方法、装置、设备和计算机可读存储介质 Download PDF

Info

Publication number
CN113315844A
CN113315844A CN202110670390.3A CN202110670390A CN113315844A CN 113315844 A CN113315844 A CN 113315844A CN 202110670390 A CN202110670390 A CN 202110670390A CN 113315844 A CN113315844 A CN 113315844A
Authority
CN
China
Prior art keywords
file
transmission
encrypted
client
blocks
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
Application number
CN202110670390.3A
Other languages
English (en)
Inventor
高晓鹏
孙志斌
冉丁
王勇
王天航
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Agricultural Bank of China
Original Assignee
Agricultural Bank of China
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Agricultural Bank of China filed Critical Agricultural Bank of China
Priority to CN202110670390.3A priority Critical patent/CN113315844A/zh
Publication of CN113315844A publication Critical patent/CN113315844A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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/0435Network 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 symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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/0442Network 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提供的一种文件加密传输方法、装置、设备和计算机可读存储介质,通过获取服务器发送的传输配置信息,所述传输配置信息包括加密算法、文件分割个数以及加密文件块的占比数,基于文件分割个数对原始文进行分割,并基于加密文件块的占比数,对部分分割后的文件块进行加密,并将带有多个所述加密文件块以及剩余未加密的文件块的传输文件发送至服务器,以使所述服务器根据所述传输文件和获取的客户机公钥对多个所述加密文件块进行解密,本发明通过对部分文件块进行加密的方式,减少了***资源消耗,减少了加解密时长、提高了传输效率。

Description

文件加密传输方法、装置、设备和计算机可读存储介质
技术领域
本发明涉及文件传输技术,尤其涉及一种文件加密传输方法、装置、设备和计算机可读存储介质。
背景技术
在目前的网络环境的文件传输过程中,存在被截获数据包,泄露传输信息的风险,所以通常情况下,对于重要文件会在发送前进行先整体加密再传输,接收方收到文件后解密后再使用。然而目前的文件加密传输方式通常为保证数据在网络中传输的安全性,在使用安全的文件传输协议(Secure File Transfer Protocol,简称SFTP)传输文件时,无论文件大小都进行加密后传输,当文件变大时大大影响传输的效率,会造成***资源消耗高和加解密时间长的问题。
发明内容
本发明提供一种文件加密传输方法、装置、设备和计算机可读存储介质,用以解决现有技术在对文件加密传输时需要对整个文件进行加解密,从而造成***资源消耗高、加解密时间长、传输效率低的问题。
一方面,本发明提供一种文件加密传输方法,应用于客户机,包括:
获取服务器发送的传输配置信息,所述传输配置信息包括加密算法、文件分割个数以及加密文件块的占比数;
根据所述文件分割个数对原始文件进行分割,以生成多个文件块,所述原始文件为未进行加密的文件;
根据所述加密文件块的占比数,从多个所述文件块中确定出多个待加密的文件块,并通过所述加密算法对多个所述待加密的文件块进行加密,以生成多个加密文件块;
将传输文件发送至所述服务器,以使所述服务器根据所述传输文件和获取的客户机公钥对多个所述加密文件块进行解密后,将文件传输完成信息发送给所述客户机,所述传输文件为带有多个所述加密文件块以及剩余未加密的文件块所组合的文件。
可选地,所述加密算法包括非对称加密算法和对称加密算法;
在所述根据所述文件分割个数对原始文件进行分割,以生成多个文件块之前,还包括:
基于所述传输配置信息,向所述服务器发起客户机文件传输任务,所述客户机文件传输任务为所述客户机向所述服务器发送文件的任务;
通过所述对称加密算法,根据原始文件对应的文件名信息和***时间,生成文件传输密钥。
可选地,所述传输配置信息包括服务器公钥;
在所述基于所述传输配置信息,向所述服务器发起客户机文件传输任务之前,还包括:
根据所述非对称加密算法以及所述服务器公钥,生成客户机公钥和客户机私钥,并将所述客户机公钥发送给所述服务器。
可选地,所述根据所述加密文件块的占比数,从多个所述文件块中确定出多个待加密的文件块,并通过所述加密算法对多个所述待加密的文件块进行加密,以生成多个加密文件块,包括:
根据所述加密文件块的占比数,从m个所述文件块中确定出n个待加密的文件块,并随机生成n个m以内的不重复编号数字,作为待加密的文件块的序号,其中,m表示为文件分割个数,n表示为待加密的文件块的个数,p表示为加密文件块的占比数,n表示m*p后取整得到的数值;
按照所述待加密的文件块的序号,通过所述对称加密算法和所述文件传输密钥对n个待加密的文件块进行加密,以生成n个加密文件块,且所述待加密的文件块的序号与所述加密文件块的序号相同。
可选地,所述将传输文件发送至所述服务器,以使所述服务器根据所述传输文件和获取的客户机公钥对多个所述加密文件块进行解密后,将文件传输完成信息发送给所述客户机,包括:
使用所述服务器公钥对所述文件传输密钥进行加密,生成加密的文件传输密钥;
将n个加密文件块的序号组成第一字符串,并通过非对称加密算法,采用所述服务器公钥对所述第一字符串进行加密,生成第二字符串;
将传输文件、所述加密的文件传输密钥以及所述第二字符串发送到所述服务器,以便所述服务器根据所述传输文件、所述客户机公钥、所述加密的文件传输密钥以及第二字符串对多个所述加密文件块进行解密后,将文件传输完成信息发送给所述客户机,所述传输文件为带有多个所述加密文件块以及剩余未加密的文件块所组合的文件。
可选地,在获取服务器发送的传输配置信息之前,还包括:
向服务器发送连接请求,所述连接请求包括所述客户机的地址信息,以使所述服务器通过所述地址信息与所述客户机建立通信连接。
另一方面,本发明提供一种文件传输方法,应用于服务器,包括:
向客户机发送传输配置信息,所述传输配置信息包括加密算法、文件分割个数以及加密文件块的占比数,以使所述客户机根据所述文件分割个数对原始文件进行分割,以生成多个文件块,所述原始文件为未进行加密的文件,根据所述加密文件块的占比数,从多个所述文件块中确定出多个待加密的文件块,并通过所述加密算法对多个所述待加密的文件块进行加密,以生成多个加密文件块;
获取所述客户机发送的传输文件,其中,所述传输文件为带有多个所述加密文件块以及剩余未加密的文件块所组合的文件;
根据所述传输文件和获取的客户机公钥对多个所述加密文件块进行解密,并将文件传输完成信息发送给所述客户机。
可选地,在所述向客户机发送传输配置信息之后,还包括:
接收所述客户机发起的客户机文件传输任务,所述客户机文件传输任务为所述客户机向所述服务器发送文件的任务;
可选地,所述配置信息包括服务器公钥,所述加密算法包括非对称加密算法和对称加密算法;
在所述接收所述客户机发起的客户机文件传输任务之前,还包括:
接收所述客户机发送的客户机公钥,所述客户机公钥是所述客户机根据所述非对称加密算法以及所述服务器公钥所生成的客户机公钥。
可选地,所述根据所述传输文件和获取的客户机公钥对多个所述加密文件块进行解密,并将文件传输完成信息发送给所述客户机,包括:
获取所述客户机发送的加密的文件传输密钥和第二字符串,其中,所述加密的文件传输密钥是所述客户机使用所述服务器公钥对预先生成的文件传输密钥进行加密后所生成的加密的文件传输密钥,所述第二字符串是所述客户机将多个加密文件块的序号组成第一字符串,并通过非对称加密算法,采用所述服务器公钥对所述第一字符串进行加密后所生成的第二字符串;
通过对称加密算法,根据所述传输文件、所述加密的文件传输密钥、所述第二字符串以及所述客户机公钥对多个所述加密文件块进行解密,以确定出所述传输文件对应的原始文件;
将文件传输完成信息发送给所述客户机。
可选地,在向客户机发送传输配置信息之前,还包括:
接收所述客户机发送的连接请求,所述连接请求包括所述客户机的地址信息;
基于所述地址信息与所述客户机完成连接。
另一方面,本发明提供一种文件加密传输装置,包括:
获取模块,用于获取服务器发送的传输配置信息,所述传输配置信息包括加密算法、文件分割个数以及加密文件块的占比数;
分割模块,用于根据所述文件分割个数对原始文件进行分割,以生成多个文件块,所述原始文件为未进行加密的文件;
生成模块,用于根据所述加密文件块的占比数,从多个所述文件块中确定出多个待加密的文件块,并通过所述加密算法对多个所述待加密的文件块进行加密,以生成多个加密文件块;
第一发送模块,用于将传输文件发送至所述服务器,以使所述服务器根据所述传输文件和获取的客户机公钥对多个所述加密文件块进行解密后,将文件传输完成信息发送给所述客户机,所述传输文件为带有多个所述加密文件块以及剩余未加密的文件块所组合的文件。
另一方面,本发明提供一种文件加密传输装置,包括:
第二发送模块,用于向客户机发送传输配置信息,所述传输配置信息包括加密算法、文件分割个数以及加密文件块的占比数,以使所述客户机根据所述文件分割个数对原始文件进行分割,以生成多个文件块,所述原始文件为未进行加密的文件,根据所述加密文件块的占比数,从多个所述文件块中确定出多个待加密的文件块,并通过所述加密算法对多个所述待加密的文件块进行加密,以生成多个加密文件块;
接收模块,用于获取所述客户机发送的传输文件,其中,所述传输文件为带有多个所述加密文件块以及剩余未加密的文件块所组合的文件;
所述第二发送模块,还用于根据所述传输文件和获取的客户机公钥对多个所述加密文件块进行解密,并将文件传输完成信息发送给所述客户机。
另一方面,本发明提供一种文件加密传输设备,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行上述的文件加密传输方法。
另一方面,本发明提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现上述的文件加密传输方法。
另一方面,本发明提供一种程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述的文件加密传输方法。
本发明提供的一种文件加密传输方法、装置、设备和计算机可读存储介质,通过获取服务器发送的传输配置信息,所述传输配置信息包括加密算法、文件分割个数以及加密文件块的占比数,基于文件分割个数对原始文进行分割,并基于加密文件块的占比数,对部分分割后的文件块进行加密,并将带有多个所述加密文件块以及剩余未加密的文件块的传输文件发送至服务器,以使所述服务器根据所述传输文件和获取的客户机公钥对多个所述加密文件块进行解密,本发明通过对部分文件块进行加密的方式,减少了***资源消耗,减少了加解密时长、提高了传输效率。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
图1为本发明实施例所提供的一种文件加密传输***的架构示意图;
图2a为本发明实施例提供的一种文件加密传输的应用场景示意图;
图2b为本发明实施例提供的一种文件加密传输的应用场景示意图;
图3为本发明实施例提供的一种文件加密传输方法的流程示意图;
图4为本发明实施例提供的另一种文件加密传输方法的流程示意图;
图5为本发明实施例提供的另一种文件加密传输方法的流程示意图;
图6为本发明实施例提供的另一种文件加密传输方法的流程示意图;
图7为本发明实施例提供的另一种文件加密传输方法的流程示意图;
图8为本发明实施例提供的一种文件加密传输装置的结构示意图;
图9为本发明实施例提供的另一种文件加密传输装置的结构示意图;
图10为本发明实施例提供的一种客户机的框图。
通过上述附图,已示出本发明明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本发明构思的范围,而是通过参考特定实施例为本领域技术人员说明本发明的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
首先对本发明所涉及的名词进行解释:
非对称加密算法:是指加密和解密使用不同密钥的加密算法,非对称加密算法也称为公私钥加密。例如,使用公钥对数据进行加密,只有用对应的私钥才能解密,其中,非对称加密算法包括RSA算法、DSA算法等,
对称加密算法:是指加密和解密使用相同密钥的加密算法,其中,对称加密算法包括DES算法、AES算法等
文件传输协议(File Transfer Protocol,简称FTP):使用TCP传输,是面向连接的传输,客户机在和服务器建立连接前要经过一个“三次握手”的过程,保证客户机与服务器之前的连接是可靠的,为数据传输提供可靠保证。
安全的文件传输协议(Secure File Transfer Protocol,简称SFTP):SFTP可以传输文件提供一种安全的加密方法,但是由于这种传输方式使用了加密解密技术,所以传输效率比普通的FTP传输要低得多。
文件分割:是指将某一大型文件分割为若干文件的方式。
图1为本发明实施例所提供的一种文件加密传输***的架构示意图,本发明提供的文件加密传输的方法,可以适用于图1。如图1所示,该文件加密传输***包括:客户机1和服务器2。需要说明的是,图1所示的文件加密传输***可以适用于不同的网络制式,例如,可以适用于全球移动通讯(Global System of Mobile communication,简称GSM)、码分多址(Code Division Multiple Access,简称CDMA)、宽带码分多址(Wideband CodeDivision Multiple Access,简称WCDMA)、时分同步码分多址(Time Division-Synchronous Code Division Multiple Access,简称TD-SCDMA)、长期演进(Long TermEvolution,简称LTE)***及未来的5G等网络制式。可选的,上述文件加密传输***可以为5G文件加密传输***中高可靠低时延通信(Ultra-Reliable and Low LatencyCommunications,URLLC)传输的场景中的***。
上述客户机可以是无线终端也可以是有线终端。无线终端可以是指向用户提供语音和/或其他业务数据连通性的设备,具有无线连接功能的手持式设备、或连接到无线调制解调器的其他处理设备。无线终端可以经无线接入网(Radio Access Network,简称RAN)与一个或多个核心网设备进行通信,无线终端可以是移动终端,如移动电话(或称为“蜂窝”电话)和具有移动终端的计算机,例如,可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语言和/或数据。再例如,无线终端还可以是个人通信业务(Personal Communication Service,简称PCS)电话、无绳电话、会话发起协议(Session Initiation Protocol,简称SIP)话机、无线本地环路(Wireless Local Loop,简称WLL)站、个人数字助理(Personal Digital Assistant,简称PDA)等设备。无线终端也可以称为***、订户单元(Subscriber Unit)、订户站(Subscriber Station),移动站(MobileStation)、移动台(Mobile)、远程站(Remote Station)、远程终端(Remote Terminal)、接入终端(Access Terminal)、用户终端(User Terminal)、用户代理(User Agent)、用户设备(User Device or User Equipment),在此不作限定。可选的,上述客户机还可以是智能手表、平板电脑等设备。
下面对文件加密传输的应用场景以及客户机进行文件加密传输的工作流程进行介绍:
图2a为本发明实施例提供的一种文件加密传输的应用场景示意图。如图2a所示,所述文件加密传输的过程涉及的设备包括:客户机1和服务器2。
本发明实施例中,作为一种可选的应用场景,客户机1用于向服务器发送传输文件,服务器2用于对传输文件进行解密,并将文件传输完成信息发送给客户机1。
具体地,客户机1通过获取服务器2发送的传输配置信息,所述传输配置信息包括加密算法、文件分割个数以及加密文件块的占比数,基于文件分割个数对原始文进行分割,并基于加密文件块的占比数,对部分分割后的文件块进行加密,并将带有多个所述加密文件块以及剩余未加密的文件块的传输文件发送至服务器2,所述服务器根据2所述传输文件和获取的客户机公钥对多个所述加密文件块进行解密,并将文件传输完成信息发送给客户机1。
图2b为本发明实施例提供的一种文件加密传输的应用场景示意图。如图2b所示,所述文件加密传输的过程涉及的设备包括:客户机1和服务器2。
作为另一种可选的应用场景,服务器2用于向客户机1发送传输文件,客户机1用于对传输文件进行解密,并将文件传输完成信息发送给服务器2。
具体地,服务器2基于自身的传输配置信息(所述传输配置信息包括加密算法、文件分割个数以及加密文件块的占比数)的文件分割个数对原始文进行分割,并基于加密文件块的占比数,对部分分割后的文件块进行加密,并将带有多个所述加密文件块以及剩余未加密的文件块的传输文件发送至客户机1,客户机1根据所述传输文件和获取的服务器公钥对多个所述加密文件块进行解密,并将文件传输完成信息发送给服务器2。
在上述两种方案中,本发明通过对部分文件块进行加密的方式,减少了***资源消耗,减少了加解密时长、提高了传输效率。下面以具体地实施例对本发明的技术方案以及本发明的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本发明的实施例进行描述。
图3为本发明实施例提供的一种文件加密传输方法的流程示意图,本实施例的方法可以由客户机执行。如图3所示,本实施例的方法,可以包括:
S101、获取服务器发送的传输配置信息,所述传输配置信息包括加密算法、文件分割个数以及加密文件块的占比数。
在该步骤中,传输配置信息为文件传输的初始设置信息,其中,传输配置信息除了包括加密算法、文件分割个数以及加密文件块的占比数之外,传输配置信息还可以包括服务器公钥等信息。具体地,加密算法包括非对称加密算法和对称加密算法。加密文件块的占比数为加密文件块的个数与文件分割个数之间的比值。
本发明实施例中,获取服务器发送的传输配置信息的方式,可通过向服务器发送连接请求,所述连接请求包括所述客户机的地址信息,以使所述服务器通过所述地址信息与所述客户机建立通信连接,并基于该通信连接获取服务器发送的传输配置信息。
S102、根据所述文件分割个数对原始文件进行分割,以生成多个文件块。
在该步骤中,所述原始文件为未进行加密的文件,本发明的原始文件可包括大型文件。文件分割个数为整数,例如,文件分割个数为98个。
本发明实施例中,例如以文件分割个数为98个为例,基于该文件分割个数对原始文件进行分割,生成98个文件块。
S103、根据所述加密文件块的占比数,从多个所述文件块中确定出多个待加密的文件块,并通过所述加密算法对多个所述待加密的文件块进行加密,以生成多个加密文件块。
在该步骤中,加密文件块的占比数为加密文件块的个数与文件分割个数之间的比值,占比数可为0-100%之间的任意数值。例如,以加密文件块的占比数为10%为例,则加密文件块的个数=文件分割个数*10%,且加密文件块的个数为整数。
本发明实施例中,加密算法包括对称加密算法。例如,以文件分割个数为98个,加密文件块的占比数为10%为例,则计算出的加密文件块的个数=文件分割个数*10%≈10个,通过对称加密算法对这10个待加密的文件块进行加密,生成10个加密文件块。
需要说明的是,本发明可以设置加密文件块的占比数的自定义配置,可以按照实际需要选择合适的加密文件块的占比数,从而提升了灵活性。
S104、将传输文件发送至所述服务器,以使所述服务器根据所述传输文件和获取的客户机公钥对多个所述加密文件块进行解密后,将文件传输完成信息发送给所述客户机。
在该步骤中,所述传输文件为带有多个所述加密文件块以及剩余未加密的文件块所组合的文件。
本发明实施例中,例如,在上述步骤生成了10个加密文件块,则将这10个加密文件块以及88个未加密的文件块所组合的文件作为传输文件,并将该传输文件发送至所述服务器,以使所述服务器根据所述传输文件和获取的客户机公钥对多个所述加密文件块进行解密后,将文件传输完成信息发送给所述客户机。
本发明实施例中通过将文件划分为多个文件块,并对部分文件块进行加密的方式,能够保证传输文件的安全性的同时,由于仅对部分文件块进行了加密因此服务器在相应解密时也仅需要对加密文件块进行解密,从而减少了***资源消耗和解密时长,并提高了传输效率。需要说明的是,即使第三方截获该传输文件,在没有对应的密钥的情况下,仅根据剩余未加密的文件块并无法得到原始文件,因此对部分文件块进行加密的方式相对于对整个文件进行加密的方式同样具有安全性。
本发明提供的一种文件加密传输方法的实施例中,通过获取服务器发送的传输配置信息,所述传输配置信息包括加密算法、文件分割个数以及加密文件块的占比数,基于文件分割个数对原始文进行分割,并基于加密文件块的占比数,对部分分割后的文件块进行加密,并将带有多个所述加密文件块以及剩余未加密的文件块的传输文件发送至服务器,以使所述服务器根据所述传输文件和获取的客户机公钥对多个所述加密文件块进行解密,本发明通过对部分文件块进行加密的方式,减少了***资源消耗,减少了加解密时长、提高了传输效率。
图4为本发明实施例提供的一种文件加密传输方法的流程示意图,本实施例的方法可以由客户机执行。如图4所示,本实施例的方法,可以包括:
S201、向服务器发送连接请求,所述连接请求包括所述客户机的地址信息,以使所述服务器通过所述地址信息与所述客户机建立通信连接。
本发明实施例中,具体地,客户机可通过文件传输协议(File TransferProtocol,简称FTP)向服务器发送连接请求。通过使用FTP协议,使得客户机在和服务器建立连接前要经过一个“三次握手”的过程,保证客户机与服务器之前的连接是可靠的,为文件传输提供可靠保证。建立通信连接的目的在于便于后续步骤客户机和服务器之间进行传输文件的发送和接收。
S202、获取服务器发送的传输配置信息,所述传输配置信息包括加密算法、文件分割个数以及加密文件块的占比数。
本发明实施例中,该步骤的执行过程可参见上述步骤S101,本发明实施例对此不再累述。
S203、根据所述非对称加密算法以及所述服务器公钥,生成客户机公钥和客户机私钥,并将所述客户机公钥发送给所述服务器。
在该步骤中,传输配置信息还包括服务器公钥,加密算法包括非对称加密算法。
本发明实施例中,将所述客户机公钥发送给所述服务器的目的在于,以便后续客户机对传输文件密钥、部分文件块使用客户机私钥进行加密,并将传输文件发送至服务器时,服务器能够基于客户机发送的客户机公钥对该传输文件进行解密。
S204、基于所述传输配置信息,向所述服务器发起客户机文件传输任务。
在该步骤中,所述客户机文件传输任务为所述客户机向所述服务器发送文件的任务,
本发明实施例中,步骤S204-步骤S208的执行过程即为客户机在该客户机文件传输任务中的执行过程。在另实施例中,步骤S404-步骤S408的执行过程即为客户机在该客户机文件传输任务中的执行过程。
S205、通过所述对称加密算法,根据原始文件对应的文件名信息和***时间,生成文件传输密钥。
在该步骤中,加密算法包括对称加密算法。
本发明实施例中,文件传输密钥用于对传输文件进行加密,通过生成文件传输密钥的目的在于保证该客户机文件传输任务中所对应要传输的文件在传输过程的安全性。
需要说明的是,通过在每次发送的文件都进行文件传输密钥生成和文件传输密钥进行加密传输,文件传输密钥只针对指定文件传输中一次性使用,增加了被破解的难度。
S206、根据所述文件分割个数对原始文件进行分割,以生成多个文件块,所述原始文件为未进行加密的文件。
本发明实施例中,该步骤的执行过程可参见上述步骤S102,本发明实施例对此不再累述。
S207、根据所述加密文件块的占比数,从多个所述文件块中确定出多个待加密的文件块,并通过所述加密算法对多个所述待加密的文件块进行加密,以生成多个加密文件块。
在该步骤中,加密文件块的占比数为加密文件块的个数与文件分割个数之间的比值。例如,以加密文件块的占比数为10%为例,则加密文件块的个数=文件分割个数*10%,且加密文件块的个数为整数。
本发明实施例中,步骤S207可具体包括:
S2071、根据所述加密文件块的占比数,从m个所述文件块中确定出n个待加密的文件块,并随机生成n个m以内的不重复编号数字,作为待加密的文件块的序号,其中,m表示为文件分割个数,n表示为待加密的文件块的个数,p表示为加密文件块的占比数,n表示m*p后取整得到的数值。
在该步骤中,待加密的文件块的个数(n)<文件分割个数(m)。
本发明实施例中,以m=98,p=10%为例,则待加密的文件块n=m*p≈10,即待加密的文件块为10个。由于待加密的文件块的序号为随机生成n个m以内的不重复编号数字,例如,待加密的文件块的序号可包括{1,5,10,20,24,28,30,45,70,89},即生成的序号在文件分割个数之内,待加密的文件块的序号可理解为,待加密的文件块包括第1个文件块、第5个文件块、第10个文件块、第20个文件块、第24个文件块、第28个文件块、第30个文件块、第45个文件块、第70个文件块以及第89个文件块。
S2072、按照所述待加密的文件块的序号,通过所述对称加密算法和所述文件传输密钥对n个待加密的文件块进行加密,以生成n个加密文件块,且所述待加密的文件块的序号与所述加密文件块的序号相同。
在该步骤中,加密算法包括对称加密算法。
本发明实施例中,通过对称加密算法对这10个待加密的文件块(第1个文件块、第5个文件块、第10个文件块、第20个文件块、第24个文件块、第28个文件块、第30个文件块、第45个文件块、第70个文件块以及第89个文件块)进行加密,生成10个加密文件块。而所述待加密的文件块的序号与所述加密文件块的序号相同,可理解为,即加密文件块包括第1个文件块、第5个文件块、第10个文件块、第20个文件块、第24个文件块、第28个文件块、第30个文件块、第45个文件块、第70个文件块以及第89个文件块。
需要说明的是,本发明通过采用文件分割和文件块的随机加密的方式,能够同时满足传输安全和效率的要求。
S208、将传输文件发送至所述服务器,以使所述服务器根据所述传输文件和获取的客户机公钥对多个所述加密文件块进行解密后,将文件传输完成信息发送给所述客户机。
在该步骤中,所述传输文件为带有多个所述加密文件块以及剩余未加密的文件块所组合的文件。
本发明实施例中,步骤S208可具体包括:
S2081、使用所述服务器公钥对所述文件传输密钥进行加密,生成加密的文件传输密钥。
本发明实施例中,S2081所采用的加密算法包括非对称加密算法。对所述文件传输密钥进行加密,能够保证文件传输密钥的安全性,并进一步提高整个文件加密传输过程的安全性。
S2082、将n个加密文件块的序号组成第一字符串,并通过非对称加密算法,采用所述服务器公钥对所述第一字符串进行加密,生成第二字符串。
本发明实施例中,对所述第一字符串进行加密,能够保证第一字符串的安全性,并进一步提高整个文件加密传输过程的安全性。
S2083、将传输文件、所述加密的文件传输密钥以及所述第二字符串发送到所述服务器,以便所述服务器根据所述传输文件、所述客户机公钥、所述加密的文件传输密钥以及第二字符串对多个所述加密文件块进行解密后,将文件传输完成信息发送给所述客户机。
本发明实施例中,客户机将传输文件、所述加密的文件传输密钥以及所述第二字符串发送到所述服务器之后,服务器首先基于自身的服务器私钥对所述加密的文件传输密钥以及所述第二字符串进行解密,得到文件传输秘钥和第一字符串,根据所述客户机公钥、文件传输秘钥以及第一字符串对多个所述加密文件块进行解密,获取多个解密文件块,再从传输文件中获取多个未加密的文件块,基于文件分割个数,将多个未加密的文件块和多个解密文件块进行合并,得到原始文件,最后将文件传输完成信息发送给所述客户机。
本发明提供的一种文件加密传输方法的实施例中,通过获取服务器发送的传输配置信息,所述传输配置信息包括加密算法、文件分割个数以及加密文件块的占比数,基于文件分割个数对原始文进行分割,并基于加密文件块的占比数,对部分分割后的文件块进行加密,并将带有多个所述加密文件块以及剩余未加密的文件块的传输文件发送至服务器,以使所述服务器根据所述传输文件和获取的客户机公钥对多个所述加密文件块进行解密,本发明通过对部分文件块进行加密的方式,减少了***资源消耗,减少了加解密时长、提高了传输效率,此外,本发明通过在连接过程中采用非对称加密算法,文件传输过程采用对称加密算法,充分发挥两类加密算法优势,确保文件数据和文件密钥传输的安全性。
图5为本发明实施例提供的一种文件加密传输方法的流程示意图,本实施例的方法可以由服务器执行。如图5所示,本实施例的方法,可以包括:
S301、接收所述客户机发送的连接请求,所述连接请求包括所述客户机的地址信息。
S302、基于所述地址信息与所述客户机完成连接。
本发明实施例中,建立通信连接的目的在于便于后续步骤客户机和服务器之间进行传输文件的发送和接收。
S303、接收所述客户机发起的客户机文件传输任务。
在该步骤中,所述客户机文件传输任务为所述客户机向所述服务器发送文件的任务,
本发明实施例中,步骤S303-步骤S307的执行过程即为服务器在该客户机文件传输任务中的执行过程。
S304、接收所述客户机发送的客户机公钥,所述客户机公钥是所述客户机根据所述非对称加密算法以及所述服务器公钥所生成的客户机公钥。
本发明实施例中,接收客户机公钥,以便后续对客户机发送的传输文件进行解密。
S305、向客户机发送传输配置信息,所述传输配置信息包括加密算法、文件分割个数以及加密文件块的占比数,以使所述客户机根据所述文件分割个数对原始文件进行分割,以生成多个文件块,所述原始文件为未进行加密的文件,根据所述加密文件块的占比数,从多个所述文件块中确定出多个待加密的文件块,并通过所述加密算法对多个所述待加密的文件块进行加密,以生成多个加密文件块。
本发明实施例中,客户机的执行过程可参见上述步骤S206-步骤S207。
S306、获取所述客户机发送的传输文件。
在该步骤中,所述传输文件为带有多个所述加密文件块以及剩余未加密的文件块所组合的文件。
本发明实施例中,与现有技术不同的地方在于,通过获取的传输文件包括多个所述加密文件块以及剩余未加密的文件块所组合的文件,而现有的传输文件是对原始文件整体加密后的文件。
S307、根据所述传输文件和所述客户机公钥对多个所述加密文件块进行解密,并将文件传输完成信息发送给所述客户机。
本发明实施例中,步骤S307可具体包括:
S3071、获取所述客户机发送的加密的文件传输密钥和第二字符串。
在该步骤中,所述加密的文件传输密钥是所述客户机使用所述服务器公钥对所述文件传输密钥进行加密后所生成的加密的文件传输密钥,所述第二字符串是所述客户机将多个加密文件块的序号组成第一字符串,并通过非对称加密算法,采用所述服务器公钥对所述第一字符串进行加密后所生成的第二字符串。
S3072、通过对称加密算法,根据所述传输文件、所述加密的文件传输密钥、所述第二字符串以及所述客户机公钥对多个所述加密文件块进行解密,以确定出所述传输文件对应的原始文件。
本发明实施例中,服务器首先基于自身的服务器私钥对所述加密的文件传输密钥以及所述第二字符串进行解密,得到文件传输秘钥和第一字符串,根据所述客户机公钥、文件传输秘钥以及第一字符串对多个所述加密文件块进行解密,获取多个解密文件块,再从传输文件中获取多个未加密的文件块,基于文件分割个数,将多个未加密的文件块和多个解密文件块进行合并,得到原始文件。
S3073、将文件传输完成信息发送给所述客户机。
本发明提供的一种文件加密传输方法的实施例中,通过获取服务器发送的传输配置信息,所述传输配置信息包括加密算法、文件分割个数以及加密文件块的占比数,基于文件分割个数对原始文进行分割,并基于加密文件块的占比数,对部分分割后的文件块进行加密,并将带有多个所述加密文件块以及剩余未加密的文件块的传输文件发送至服务器,以使所述服务器根据所述传输文件和获取的客户机公钥对多个所述加密文件块进行解密,本发明通过对部分文件块进行加密的方式,减少了***资源消耗,减少了加解密时长、提高了传输效率。
此外,图6为本发明实施例提供的另一种文件加密传输方法的流程示意图,本实施例的方法可以由客户机执行。如图6所示,本发明实施例的方法,可以包括:
S401、向服务器发送连接请求,所述连接请求包括所述客户机的地址信息,以使所述服务器通过所述地址信息与所述客户机建立通信连接。
本发明实施例中,该步骤的执行过程可参见上述步骤S201。
S402、向所述服务器发起服务器文件传输任务,以使服务器通过所述对称加密算法,根据原始文件对应的文件名信息和***时间,生成文件传输密钥;根据所述文件分割个数对原始文件进行分割,以生成多个文件块,所述原始文件为未进行加密的文件;根据所述加密文件块的占比数,从多个所述文件块中确定出多个待加密的文件块,并通过所述加密算法对多个所述待加密的文件块进行加密,以生成多个加密文件块;将传输文件发送至所述客户机。
在该步骤中,所述服务器文件传输任务为所述服务器向所述客户机发送文件的任务,
可理解为,与上述实施例的区别在于,步骤S204步骤S208的执行过程即为客户机在该客户机文件传输任务中的执行过程。而在本实施例中,步骤S402-步骤S403的执行过程即为客户机在该服务器文件传输任务中的执行过程。
S403、根据所述传输文件和获取的服务器公钥对多个所述加密文件块进行解密后,将文件传输完成信息发送给所述服务器。
本发明实施例中,具体地,客户机首先基于自身的客户机私钥对所述加密的文件传输密钥以及所述第二字符串进行解密,得到文件传输秘钥和第一字符串,根据获取的服务器公钥、文件传输秘钥以及第一字符串对多个所述加密文件块进行解密,获取多个解密文件块,再从传输文件中获取多个未加密的文件块,基于文件分割个数,将多个未加密的文件块和多个解密文件块进行合并,得到原始文件。
本发明实施例与上述实施例的区别在于上述实施例是客户机向服务器发送传输文件,由服务器执行文件分割、加解密、合并文件等操作。而本实施例是服务器向客户机发送传输文件,由客户机执行文件分割、加解密、合并文件等操作。
此外,图7为本发明实施例提供的另一种文件加密传输方法的流程示意图,本实施例的方法可以由服务器执行。如图7所示,本发明实施例的方法,可以包括:
S501、接收所述客户机发送的连接请求,所述连接请求包括所述客户机的地址信息。
本发明实施例中,该步骤可参见上述步骤301。
S502、基于所述地址信息与所述客户机完成连接。
本发明实施例中,该步骤可参见上述步骤302。
S503、获取传输配置信息,所述传输配置信息包括加密算法、文件分割个数以及加密文件块的占比数。
本发明实施例中,服务器从自身设备获取传输配置信息。
S504、根据所述非对称加密算法以及获取的客户机公钥,生成服务器公钥和服务器私钥,并将所述服务器公钥发送给所述客户机。
本发明实施例中,将所述服务器公钥发送给所述客户机的目的在于,以便后续服务器对传输文件密钥、部分文件块使用服务器私钥进行加密,并将传输文件发送至服务器时,服务器能够基于客户机发送的服务器公钥对该传输文件进行解密。
S505、接收所述客户机发起服务器文件传输任务。
在该步骤中,所述服务器文件传输任务为所述服务器向所述客户机发送文件的任务,
步骤S303-步骤307的执行过程即为客户机在该客户机文件传输任务中的执行过程。而在本实施例中,步骤S505-步骤S509的执行过程即为服务器在该服务器文件传输任务中的执行过程。
S506、通过所述对称加密算法,根据原始文件对应的文件名信息和***时间,生成文件传输密钥。
本发明实施例中,该步骤的执行过程可参见上述步骤S205。
S507、根据所述文件分割个数对原始文件进行分割,以生成多个文件块,所述原始文件为未进行加密的文件。
本发明实施例中,该步骤的执行过程可参见上述步骤S206。
S508、根据所述加密文件块的占比数,从多个所述文件块中确定出多个待加密的文件块,并通过所述加密算法对多个所述待加密的文件块进行加密,以生成多个加密文件块。
本发明实施例中,该步骤的执行过程可参见上述步骤S207。
S509、将传输文件发送至所述客户机,以使所述客户机根据所述传输文件和获取的服务器公钥对多个所述加密文件块进行解密后,将文件传输完成信息发送给所述服务器。
本发明实施例中,该步骤的执行过程可参见上述步骤S208。
本发明实施例与上述实施例的步骤S204步骤S208的区别在于上述实施例是客户机向服务器发送传输文件,由服务器执行文件分割、加解密、合并文件等操作。而本实施例是服务器向客户机发送传输文件,由客户机执行文件分割、加解密、合并文件等操作。
图8为本发明实施例提供的一种文件加密传输装置的结构示意图,如图7所示,所述文件加密传输装置1包括:
获取模块11,用于获取服务器发送的传输配置信息,所述传输配置信息包括加密算法、文件分割个数以及加密文件块的占比数;
分割模块12,用于根据所述文件分割个数对原始文件进行分割,以生成多个文件块,所述原始文件为未进行加密的文件;
生成模块13,用于根据所述加密文件块的占比数,从多个所述文件块中确定出多个待加密的文件块,并通过所述加密算法对多个所述待加密的文件块进行加密,以生成多个加密文件块;
第一发送模块14,用于将传输文件发送至所述服务器,以使所述服务器根据所述传输文件和获取的客户机公钥对多个所述加密文件块进行解密后,将文件传输完成信息发送给所述客户机,所述传输文件为带有多个所述加密文件块以及剩余未加密的文件块所组合的文件。
本发明实施例中,所述加密算法包括非对称加密算法和对称加密算法;该装置的所述第一发送模块14还用于基于所述传输配置信息,向所述服务器发起客户机文件传输任务,所述客户机文件传输任务为所述客户机向所述服务器发送文件的任务;
所述生成模块13还用于通过所述对称加密算法,根据原始文件对应的文件名信息和***时间,生成文件传输密钥。
本发明实施例中,所述传输配置信息包括服务器公钥;该装置的所述生成模块13还用于根据所述非对称加密算法以及所述服务器公钥,生成客户机公钥和客户机私钥,并将所述客户机公钥发送给所述服务器。
本发明实施例中,该装置的生成模块13具体用于根据所述加密文件块的占比数,从m个所述文件块中确定出n个待加密的文件块,并随机生成n个m以内的不重复编号数字,作为待加密的文件块的序号,其中,m表示为文件分割个数,n表示为待加密的文件块的个数,p表示为加密文件块的占比数,n表示m*p后取整得到的数值;
按照所述待加密的文件块的序号,通过所述对称加密算法和所述文件传输密钥对n个待加密的文件块进行加密,以生成n个加密文件块,且所述待加密的文件块的序号与所述加密文件块的序号相同。
本发明实施例中,该装置的第一发送模块14具体用于使用所述服务器公钥对所述文件传输密钥进行加密,生成加密的文件传输密钥;将n个加密文件块的序号组成第一字符串,并通过非对称加密算法,采用所述服务器公钥对所述第一字符串进行加密,生成第二字符串;将传输文件、所述加密的文件传输密钥以及所述第二字符串发送到所述服务器,以便所述服务器根据所述传输文件、所述客户机公钥、所述加密的文件传输密钥以及第二字符串对多个所述加密文件块进行解密后,将文件传输完成信息发送给所述客户机,所述传输文件为带有多个所述加密文件块以及剩余未加密的文件块所组合的文件。
本发明实施例中,该装置的所述第一发送模块14还用于向服务器发送连接请求,所述连接请求包括所述客户机的地址信息,以使所述服务器通过所述地址信息与所述客户机建立通信连接。
图9为本发明实施例提供的另一种文件加密传输装置的结构示意图,如图8所示,所述文件加密传输装置2包括:
第二发送模块21,用于向客户机发送传输配置信息,所述传输配置信息包括加密算法、文件分割个数以及加密文件块的占比数,以使所述客户机根据所述文件分割个数对原始文件进行分割,以生成多个文件块,所述原始文件为未进行加密的文件,根据所述加密文件块的占比数,从多个所述文件块中确定出多个待加密的文件块,并通过所述加密算法对多个所述待加密的文件块进行加密,以生成多个加密文件块;
接收模块22,用于获取所述客户机发送的传输文件,其中,所述传输文件为带有多个所述加密文件块以及剩余未加密的文件块所组合的文件;
所述第二发送模块21,还用于根据所述传输文件和获取的客户机公钥对多个所述加密文件块进行解密,并将文件传输完成信息发送给所述客户机。
本发明实施例中,该装置的接收模块22还用于接收所述客户机发起的客户机文件传输任务,所述客户机文件传输任务为所述客户机向所述服务器发送文件的任务。
本发明实施例中,所述配置信息包括服务器公钥,所述加密算法包括非对称加密算法和对称加密算法;该装置的接收模块22还用于接收所述客户机发送的客户机公钥,所述客户机公钥是所述客户机根据所述非对称加密算法以及所述服务器公钥所生成的客户机公钥。
本发明实施例中,该装置的第二发送模块21具体用于获取所述客户机发送的加密的文件传输密钥和第二字符串,其中,所述加密的文件传输密钥是所述客户机使用所述服务器公钥对预先生成的文件传输密钥进行加密后所生成的加密的文件传输密钥,所述第二字符串是所述客户机将多个加密文件块的序号组成第一字符串,并通过非对称加密算法,采用所述服务器公钥对所述第一字符串进行加密后所生成的第二字符串;通过对称加密算法,根据所述传输文件、所述加密的文件传输密钥、所述第二字符串以及所述客户机公钥对多个所述加密文件块进行解密,以确定出所述传输文件对应的原始文件;将文件传输完成信息发送给所述客户机。
本发明实施例中,该装置的接收模块22还用于接收所述客户机发送的连接请求,所述连接请求包括所述客户机的地址信息;基于所述地址信息与所述客户机完成连接。
图10为本发明实施例提供的一种客户机的框图,该设备的装置800可以包括以下一个或多个组件:处理组件802,存储器804,电源组件806,多媒体组件808,音频组件810,输入/输出(I/O)接口812,传感器组件814,以及通信组件816。
处理组件802通常控制装置800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。
存储器804被配置为存储各种类型的数据以支持在装置800的操作。这些数据的示例包括用于在装置800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件806为装置800的各种组件提供电力。电源组件806可以包括电源管理***,一个或多个电源,及其他与为装置800生成、管理和分配电力相关联的组件。
多媒体组件808包括在所述装置800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当装置800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜***或具有焦距和光学变焦能力。
音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(MIC),当装置800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。
I/O接口812为处理组件802和***接口模块之间提供接口,上述***接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件814包括一个或多个传感器,用于为装置800提供各个方面的状态评估。例如,传感器组件814可以检测到装置800的打开/关闭状态,组件的相对定位,例如所述组件为装置800的显示器和小键盘,传感器组件814还可以检测装置800或装置800一个组件的位置改变,用户与装置800接触的存在或不存在,装置800方位或加速/减速和装置800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件816被配置为便于装置800和其他设备之间有线或无线方式的通信。装置800可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理***的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件816还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现上述方法实施例的文件加密传输方法。例如包括指令的存储器804,上述指令可由装置800的处理器820执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
一种非临时性计算机可读存储介质,当该存储介质中的指令由客户机的处理器执行时,使得客户机能够执行上述客户机的文件加密传输方法。
本发明实施例还提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如上述的机器人定位方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本发明旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求书指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求书来限制。

Claims (16)

1.一种文件加密传输方法,其特征在于,应用于客户机,包括:
获取服务器发送的传输配置信息,所述传输配置信息包括加密算法、文件分割个数以及加密文件块的占比数;
根据所述文件分割个数对原始文件进行分割,以生成多个文件块,所述原始文件为未进行加密的文件;
根据所述加密文件块的占比数,从多个所述文件块中确定出多个待加密的文件块,并通过所述加密算法对多个所述待加密的文件块进行加密,以生成多个加密文件块;
将传输文件发送至所述服务器,以使所述服务器根据所述传输文件和获取的客户机公钥对多个所述加密文件块进行解密后,将文件传输完成信息发送给所述客户机,所述传输文件为带有多个所述加密文件块以及剩余未加密的文件块所组合的文件。
2.根据权利要求1所述的方法,其特征在于,所述加密算法包括非对称加密算法和对称加密算法;
在所述根据所述文件分割个数对原始文件进行分割,以生成多个文件块之前,还包括:
基于所述传输配置信息,向所述服务器发起客户机文件传输任务,所述客户机文件传输任务为所述客户机向所述服务器发送文件的任务;
通过所述对称加密算法,根据原始文件对应的文件名信息和***时间,生成文件传输密钥。
3.根据权利要求2所述的方法,其特征在于,所述传输配置信息包括服务器公钥;
在所述基于所述传输配置信息,向所述服务器发起客户机文件传输任务之前,还包括:
根据所述非对称加密算法以及所述服务器公钥,生成客户机公钥和客户机私钥,并将所述客户机公钥发送给所述服务器。
4.根据权利要求3所述的方法,其特征在于,所述根据所述加密文件块的占比数,从多个所述文件块中确定出多个待加密的文件块,并通过所述加密算法对多个所述待加密的文件块进行加密,以生成多个加密文件块,包括:
根据所述加密文件块的占比数,从m个所述文件块中确定出n个待加密的文件块,并随机生成n个m以内的不重复编号数字,作为待加密的文件块的序号,其中,m表示为文件分割个数,n表示为待加密的文件块的个数,p表示为加密文件块的占比数,n表示m*p后取整得到的数值;
按照所述待加密的文件块的序号,通过所述对称加密算法和所述文件传输密钥对n个待加密的文件块进行加密,以生成n个加密文件块,且所述待加密的文件块的序号与所述加密文件块的序号相同。
5.根据权利要求4所述的方法,其特征在于,所述将传输文件发送至所述服务器,以使所述服务器根据所述传输文件和获取的客户机公钥对多个所述加密文件块进行解密后,将文件传输完成信息发送给所述客户机,包括:
使用所述服务器公钥对所述文件传输密钥进行加密,生成加密的文件传输密钥;
将n个加密文件块的序号组成第一字符串,并通过非对称加密算法,采用所述服务器公钥对所述第一字符串进行加密,生成第二字符串;
将传输文件、所述加密的文件传输密钥以及所述第二字符串发送到所述服务器,以便所述服务器根据所述传输文件、所述客户机公钥、所述加密的文件传输密钥以及第二字符串对多个所述加密文件块进行解密后,将文件传输完成信息发送给所述客户机,所述传输文件为带有多个所述加密文件块以及剩余未加密的文件块所组合的文件。
6.根据权利要求1所述的方法,其特征在于,在获取服务器发送的传输配置信息之前,还包括:
向服务器发送连接请求,所述连接请求包括所述客户机的地址信息,以使所述服务器通过所述地址信息与所述客户机建立通信连接。
7.一种文件加密传输方法,其特征在于,应用于服务器,包括:
向客户机发送传输配置信息,所述传输配置信息包括加密算法、文件分割个数以及加密文件块的占比数,以使所述客户机根据所述文件分割个数对原始文件进行分割,以生成多个文件块,所述原始文件为未进行加密的文件,根据所述加密文件块的占比数,从多个所述文件块中确定出多个待加密的文件块,并通过所述加密算法对多个所述待加密的文件块进行加密,以生成多个加密文件块;
获取所述客户机发送的传输文件,其中,所述传输文件为带有多个所述加密文件块以及剩余未加密的文件块所组合的文件;
根据所述传输文件和获取的客户机公钥对多个所述加密文件块进行解密,并将文件传输完成信息发送给所述客户机。
8.根据权利要求7所述的方法,其特征在于,在所述向客户机发送传输配置信息之后,还包括:
接收所述客户机发起的客户机文件传输任务,所述客户机文件传输任务为所述客户机向所述服务器发送文件的任务。
9.根据权利要求8所述的方法,其特征在于,所述配置信息包括服务器公钥,所述加密算法包括非对称加密算法和对称加密算法;
在所述接收所述客户机发起的客户机文件传输任务之前,还包括:
接收所述客户机发送的客户机公钥,所述客户机公钥是所述客户机根据所述非对称加密算法以及所述服务器公钥所生成的客户机公钥。
10.根据权利要求9所述的方法,其特征在于,所述根据所述传输文件和获取的客户机公钥对多个所述加密文件块进行解密,并将文件传输完成信息发送给所述客户机,包括:
获取所述客户机发送的加密的文件传输密钥和第二字符串,其中,所述加密的文件传输密钥是所述客户机使用所述服务器公钥对预先生成的文件传输密钥进行加密后所生成的加密的文件传输密钥,所述第二字符串是所述客户机将多个加密文件块的序号组成第一字符串,并通过非对称加密算法,采用所述服务器公钥对所述第一字符串进行加密后所生成的第二字符串;
通过对称加密算法,根据所述传输文件、所述加密的文件传输密钥、所述第二字符串以及所述客户机公钥对多个所述加密文件块进行解密,以确定出所述传输文件对应的原始文件;
将文件传输完成信息发送给所述客户机。
11.根据权利要求7所述的方法,其特征在于,在向客户机发送传输配置信息之前,还包括:
接收所述客户机发送的连接请求,所述连接请求包括所述客户机的地址信息;
基于所述地址信息与所述客户机完成连接。
12.一种文件加密传输装置,其特征在于,包括:
获取模块,用于获取服务器发送的传输配置信息,所述传输配置信息包括加密算法、文件分割个数以及加密文件块的占比数;
分割模块,用于根据所述文件分割个数对原始文件进行分割,以生成多个文件块,所述原始文件为未进行加密的文件;
生成模块,用于根据所述加密文件块的占比数,从多个所述文件块中确定出多个待加密的文件块,并通过所述加密算法对多个所述待加密的文件块进行加密,以生成多个加密文件块;
第一发送模块,用于将传输文件发送至所述服务器,以使所述服务器根据所述传输文件和获取的客户机公钥对多个所述加密文件块进行解密后,将文件传输完成信息发送给所述客户机,所述传输文件为带有多个所述加密文件块以及剩余未加密的文件块所组合的文件。
13.一种文件加密传输装置,其特征在于,包括:
第二发送模块,用于向客户机发送传输配置信息,所述传输配置信息包括加密算法、文件分割个数以及加密文件块的占比数,以使所述客户机根据所述文件分割个数对原始文件进行分割,以生成多个文件块,所述原始文件为未进行加密的文件,根据所述加密文件块的占比数,从多个所述文件块中确定出多个待加密的文件块,并通过所述加密算法对多个所述待加密的文件块进行加密,以生成多个加密文件块;
接收模块,用于获取所述客户机发送的传输文件,其中,所述传输文件为带有多个所述加密文件块以及剩余未加密的文件块所组合的文件;
所述第二发送模块,还用于根据所述传输文件和获取的客户机公钥对多个所述加密文件块进行解密,并将文件传输完成信息发送给所述客户机。
14.一种文件加密传输设备,其特征在于,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如权利要求1至11任一项所述的文件加密传输方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1至11任一项所述的文件加密传输方法。
16.一种程序产品,其特征在于,包括计算机程序,该计算机程序被处理器执行时实现如权利要求1至11任一项所述的文件加密传输方法。
CN202110670390.3A 2021-06-17 2021-06-17 文件加密传输方法、装置、设备和计算机可读存储介质 Pending CN113315844A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110670390.3A CN113315844A (zh) 2021-06-17 2021-06-17 文件加密传输方法、装置、设备和计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110670390.3A CN113315844A (zh) 2021-06-17 2021-06-17 文件加密传输方法、装置、设备和计算机可读存储介质

Publications (1)

Publication Number Publication Date
CN113315844A true CN113315844A (zh) 2021-08-27

Family

ID=77379144

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110670390.3A Pending CN113315844A (zh) 2021-06-17 2021-06-17 文件加密传输方法、装置、设备和计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN113315844A (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102594840A (zh) * 2012-03-20 2012-07-18 广东凌康科技有限公司 远程数据储存保护方法
CN104205117A (zh) * 2014-04-10 2014-12-10 华为技术有限公司 设备文件的加解密方法及装置
CN104378422A (zh) * 2014-11-13 2015-02-25 中国联合网络通信有限公司保定市分公司 一种移动终端及其文件传输方法和***
CN105760781A (zh) * 2016-03-02 2016-07-13 四川师范大学 有序可推演大数据文件的存储方法、恢复方法和操作方法
CN105812383A (zh) * 2016-05-03 2016-07-27 江苏科技大学 基于多网盘分存的信息隐藏方法
CN109697194A (zh) * 2018-12-25 2019-04-30 杭州安恒信息技术股份有限公司 一种基于微服务的文件服务方法和***

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102594840A (zh) * 2012-03-20 2012-07-18 广东凌康科技有限公司 远程数据储存保护方法
CN104205117A (zh) * 2014-04-10 2014-12-10 华为技术有限公司 设备文件的加解密方法及装置
CN104378422A (zh) * 2014-11-13 2015-02-25 中国联合网络通信有限公司保定市分公司 一种移动终端及其文件传输方法和***
CN105760781A (zh) * 2016-03-02 2016-07-13 四川师范大学 有序可推演大数据文件的存储方法、恢复方法和操作方法
CN105812383A (zh) * 2016-05-03 2016-07-27 江苏科技大学 基于多网盘分存的信息隐藏方法
CN109697194A (zh) * 2018-12-25 2019-04-30 杭州安恒信息技术股份有限公司 一种基于微服务的文件服务方法和***

Similar Documents

Publication Publication Date Title
US11196553B2 (en) Command transmission method and apparatus, electronic device
EP3772700A1 (en) Method and device for encrypting model of neural network, and storage medium
KR101693130B1 (ko) 정보 인터랙션 방법 및 디바이스
US10019591B1 (en) Low-latency media sharing
CN107852326B (zh) 用于监视加密通信会话的方法、设备和计算机可读存储介质
CN109246110B (zh) 数据共享方法、装置及计算机可读存储介质
US10673611B2 (en) Data transmission method, device, and system
CN108900553B (zh) 一种通信方法、装置及计算机可读存储介质
CN113179555A (zh) 投屏方法、投屏设备、投屏***、电子设备、存储介质
CN113868505A (zh) 数据处理方法、装置、电子设备、服务器及存储介质
US9374559B1 (en) Low-latency media sharing
CN114885038B (zh) 一种加密协议转换方法、结果获取节点和隐私计算节点
CN113315844A (zh) 文件加密传输方法、装置、设备和计算机可读存储介质
CN110798830B (zh) 一种失联设备查找方法及设备
CN109104361B (zh) 即时通信方法、装置、电子设备及存储介质
JP6502955B2 (ja) ユーザー情報を取得する方法および装置、端末装置並びにサーバー
EP3683706A1 (en) Method and apparatus for encrypting data
CN110996088B (zh) 视频处理方法及相关装置
CN107318148B (zh) 无线局域网接入信息存储方法及装置
CN113225691B (zh) 音频处理方法、装置及存储介质
CN112055977B (zh) 业务的切片激活方法、业务的切片激活装置及存储介质
CN113812103B (zh) 管理消息帧传输方法、装置及存储介质
CN111062025B (zh) 应用数据处理方法及相关装置
CN114363888A (zh) 数据传输方法、装置、存储介质及电子设备
CN116167065A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20210827