WO2019019936A1 - 一种文件传输方法、装置、设备和存储介质 - Google Patents
一种文件传输方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- WO2019019936A1 WO2019019936A1 PCT/CN2018/095873 CN2018095873W WO2019019936A1 WO 2019019936 A1 WO2019019936 A1 WO 2019019936A1 CN 2018095873 W CN2018095873 W CN 2018095873W WO 2019019936 A1 WO2019019936 A1 WO 2019019936A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- file
- information
- transmitted
- identification information
- verification
- 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.)
- Ceased
Links
Images
Classifications
-
- 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/12—Applying verification of the received information
-
- 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/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- 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
-
- 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
Definitions
- the present application relates to the field of computer technology, and in particular, to a file transmission method, a file transmission device, a terminal device, a server, a storage medium, and an operating system for a terminal device.
- Second pass is a “ignoring” upload method, which allows only one copy of the same file for different users, which not only avoids unnecessary file upload, but also reduces the bandwidth and storage cost of the server, and improves the user experience. . Therefore, in cloud storage systems, second pass is an essential feature.
- a second transmission mode is as follows:
- the server pre-calculates the md5 value of the stored file, thereby storing the correspondence between the stored file, its md5 value, and the file identifier.
- the client calculates the md5 value of the file to be transmitted before uploading the file, and then sends a data request carrying the md5 value to the server.
- the server detects whether the value of the md5 is the same as the value of the stored md5. If the value is the same, a new file identifier is created, and the newly created file identifier is associated with the md5 value and the corresponding file, and the newly created file identifier is returned to the client. Characterize that the file has been uploaded, thus enabling a quick upload of the file.
- the md5 value is a 32-character string.
- an attacker can enumerate all md5 values and then simulate the client to initiate a second-pass request, so that the attacker can also transmit the file in seconds without the file. And can obtain the corresponding file based on the file identifier returned by the server, etc., resulting in data leakage and affecting data security.
- the technical problem to be solved by the embodiments of the present application is to provide a file transmission method to improve data security.
- the embodiment of the present application further provides a file transmission device, a terminal device, a server, a storage medium, and an operating system, to ensure implementation and application of the foregoing method.
- the embodiment of the present application discloses a file transmission method, including: determining verification target information of a file to be transmitted according to an existing file, and transmitting the verification target information, wherein the file to be transmitted and the existing file are saved.
- the file is matched; the at least one piece of the identification information is obtained from the received verification information, the identification information is determined according to the verification target information; the identification information of the file to be transmitted is determined, and the corresponding file is Whether the identification information matches; after the confirmation identification information is matched, the information of the file to be transmitted is sent.
- the embodiment of the present application further discloses a file transmission method, including: receiving verification target information, wherein the verification target information is generated according to a saved file that matches a file to be transmitted; and determining the verification according to the verification target information. And generating at least one piece of identification information of the file to be transmitted, generating verification information according to the identification information, transmitting the verification information, and receiving information of the file to be transmitted.
- the embodiment of the present application further discloses a file transmission apparatus, including: a target sending module, configured to determine verification target information of a file to be transmitted according to a saved file, and send the verification target information, where the file to be transmitted is And the acquiring module is configured to obtain at least one identifier information in the to-be-transmitted file from the received verification information, where the identifier information is determined according to the verification target information, and the determining module is configured to determine the to-be-determined Whether the identification information of the transmission file matches the identification information of the corresponding file; the storage sending module is configured to send the information of the file to be transmitted after the confirmation identification information is matched.
- a target sending module configured to determine verification target information of a file to be transmitted according to a saved file, and send the verification target information, where the file to be transmitted is
- the acquiring module is configured to obtain at least one identifier information in the to-be-transmitted file from the received verification information, where the identifier information is determined according to the verification target information, and the determining
- the embodiment of the present application further discloses a file transmission apparatus, including: a receiving module, configured to receive verification target information, wherein the verification target information is generated according to a stored file that matches a file to be transmitted; and Determining the information of the transmission file; the verification information determining module is configured to determine at least one identification information of the file to be transmitted according to the verification target information, generate verification information according to the identification information, and send a verification module, configured to send the verification information.
- the embodiment of the present application also discloses a server, including: one or more processors; and one or more machine readable mediums on which instructions are stored, when executed by the one or more processors, The server performs the method as described in one or more of the embodiments of the present application.
- the embodiment of the present application also discloses one or more machine readable mediums having stored thereon instructions that, when executed by one or more processors, cause the server to perform the method as described in one or more of the embodiments of the present application. .
- the embodiment of the present application further discloses a terminal device, including: one or more processors; and one or more machine-readable media having instructions stored thereon, when executed by the one or more processors, The terminal device is caused to perform the method as described in one or more of the embodiments of the present application.
- the embodiment of the present application further discloses one or more machine readable mediums having stored thereon instructions that, when executed by one or more processors, cause the terminal device to perform one or more of the embodiments as described in the embodiments of the present application. method.
- the embodiment of the present application further discloses an operating system for a terminal device, including: a receiving unit, which receives verification target information, where the verification target information is generated according to a saved file that matches a file to be transmitted; and receives The information about the file to be transmitted; the verification unit determines at least one piece of identification information of the file to be transmitted according to the verification target information, and generates verification information according to the identification information; and the communication unit sends the verification information.
- the embodiments of the present application include the following advantages:
- the verification target information of the file to be transmitted may be determined according to the saved file, so that the terminal device may calculate at least one target in the file to be transmitted based on the verification target information.
- the identification information of the data the server further determines whether the identification information of the file to be transmitted matches the identification information of the corresponding file, and confirms that the file to be transmitted is stored in the terminal device after the identification information is matched, so the The information of the file to be transmitted, so that the verification information ensures that the file exists on both the server and the client, preventing the problem of forging information to steal the file, and ensuring the security of the information.
- FIG. 1 is a schematic diagram of a data transmission architecture of an embodiment of the present application.
- FIG. 2 is a flow chart of steps on a terminal device side in an embodiment of a file transmission method according to the present application
- FIG. 3 is a flow chart of steps on the server side in an embodiment of a file transfer method of the present application
- FIG. 4 is a schematic diagram of another data transmission architecture of an embodiment of the present application.
- FIG. 5 is a flowchart of steps on a terminal device side in another embodiment of a file transmission method according to the present application.
- FIG. 6 is a flow chart of steps on the server side in another embodiment of the file transmission method of the present application.
- FIG. 7 is a structural block diagram of an embodiment of a file transfer apparatus of the present application.
- FIG. 8 is a structural block diagram of another embodiment of a file transfer apparatus of the present application.
- FIG. 9 is a structural block diagram of an alternative embodiment of another file transfer device of the present application.
- FIG. 10 is a schematic structural diagram of hardware of a terminal device according to an embodiment of the present application.
- FIG. 11 is a schematic structural diagram of hardware of a terminal device according to another embodiment of the present disclosure.
- FIG. 12 is a schematic diagram of an operating system according to an embodiment of the present application.
- the terminal device refers to a device with an intelligent operating system, and the device can support functions in audio, video, data, and the like, including a smart mobile terminal, such as a smart phone, a tablet computer, a smart wearable device, or Smart TV, personal computer and other equipment.
- Intelligent operating systems such as YunOS, IOS, Android, etc.
- FIG. 1 a schematic diagram of data transmission interaction in an embodiment of the present application is shown.
- the data transmission system includes a terminal device 10 and a server 20.
- the user can interact with the server through an application such as a client in the terminal device to perform operations such as file uploading.
- the server 20 records the identification information of the file for the stored file, and the identifier information can uniquely represent one data content, that is, the identification information of different data is different, and the identification information of the matched data matches, and the matching includes the same. Therefore, for the file, the data content can be characterized by the file identification information, and the file identification information is also an identification information, the file identification information of the different files is different, and the file identification information of the matching file matches.
- the identification information can be calculated by using various algorithms, and each algorithm corresponds to one type of identification information, and the identification information obtained by the same algorithm can be compared with each other, and the identification information obtained by different algorithms is not comparable.
- the matching performed in the embodiment of the present application is a matching between the identification information obtained by the same algorithm and the file identification information.
- the identifier information includes: a message digest
- the file identifier information includes: a message digest
- the message digest is a unique fixed length value corresponding to a data (file), and is obtained by calculating a data file by a certain algorithm, once the data file is obtained.
- the message digest also changes, so it can also be viewed as a digital fingerprint of the data file that can be used to uniquely identify a data file.
- the server only stores one file, and the user who subsequently uploads the file can perform fast upload based on the second transmission function.
- the identification information such as a message digest
- the file data can be verified to ensure that the file exists locally on the terminal device, and Based on this, the second transmission function is provided to inform the corresponding terminal device that the file upload is successful. Therefore, based on the file confirmed by the server to store the file to be transferred, the file transfer verification can be implemented through the following interaction process:
- the server determines the verification target information of the to-be-transmitted file according to the saved file. For the file to be transferred that needs to be uploaded, the server confirms that the file to be transmitted matches the saved file (if there is a file with the same content as the data of the file to be transferred, that is, the file to be transferred is the same as the saved file), according to the saved file. Determining verification target information of the file to be transmitted, the verification target information is used to inform the terminal device of the target to be verified, such as data of the target area, an algorithm to be used, and the like.
- the server sends the verification target information.
- the terminal device determines at least one identifier information of the file to be transmitted according to the verification target information, and generates verification information according to the identifier information.
- the terminal device determines the target to be verified according to the verification target information, and therefore, the at least one identification information may be calculated according to the file to be transmitted, and the identification information may be calculated according to part of data in the file to be transmitted, such as data of the target area, and then according to the identification information. Generate verification information.
- the terminal device sends the verification information.
- the server acquires at least one identifier information in the file to be transmitted from the verification information.
- the server determines whether the identification information of the file to be transmitted matches the identification information of the corresponding file.
- the verification target information is determined according to the identification information of the saved file, thereby facilitating the matching between the identification information of the file to be transmitted and the identification information of the stored file.
- the server After confirming that the identifier information is matched, the server sends the information of the file to be transmitted.
- the information includes the storage information.
- the server fails to pass the verification, the file to be transmitted is not trusted, and the uploading of the file is ignored, and the response information of the transmission failure may be fed back, and then the terminal device may send the file to the server to upload files.
- the target to be transmitted in the file to be transmitted is determined based on the saved file, thereby obtaining at least one identification information in the file to be transmitted, and then determining the identifier of the file to be transmitted. Whether the information matches the identification information of the corresponding file, and the confirmation identification information is matched, that is, the file to be transmitted exists in the terminal device, and the terminal device is not required to send the file to be transmitted, and the information of the file to be transmitted can be sent to notify the file.
- the transmission is successful, so as to effectively prevent the forgery of the file based on the identification information, and ensure the security of the data.
- FIG. 2 a flow chart of steps on the server side in an embodiment of a file transfer method of the present application is shown.
- Step 202 Determine verification target information of the file to be transmitted according to the saved file, and send the verification target information.
- Step 204 Obtain at least one identifier information in the file to be transmitted from the received verification information.
- Step 206 Determine whether the identification information of the file to be transmitted matches the identification information of the corresponding saved file.
- step 208 If yes, go to step 208; if no, end the process.
- Step 208 After confirming that the identification information is matched, sending the information of the file to be transmitted.
- the server confirms that the to-be-transmitted file matches the saved file (if there is a file with the same content as the file to be transmitted, that is, the file to be transferred is the same as the saved file), the verification target information of the file to be transmitted can be determined according to the saved file. .
- the verification target information is used to notify the terminal device of the target to be verified, such as the data of the target area, the algorithm to be used, and the like, wherein the terminal device calculates the identification information of the file to be transmitted according to the verification target information, and the verification target information is based on the corresponding phase. Match the identification information of the saved file. Therefore, the terminal device can calculate at least one identifier information in the file to be transmitted according to the identifier information, and form the verification information, and then return to the server.
- the server correspondingly receives the verification information, and obtains at least one piece of the identification information in the file to be transmitted from the verification information, and then each identification information is matched with the corresponding identification information of the saved file, and if the identification information matches, Confirming that the file to be transmitted exists in the terminal device, and providing a second transmission function, so that the information of the file to be transmitted, for example, the storage information of the file to be transmitted, for example, the saved file, may be generated based on the storage record of the saved file.
- the storage address in the storage record as the storage address of the file to be transmitted, and the like, and then feed back the storage information to the terminal device to inform the terminal device that the file upload is successful, according to the storage information of the file in the server.
- FIG. 3 a flow chart of steps on the terminal device side in an embodiment of a file transmission method of the present application is shown.
- Step 302 Receive verification target information.
- Step 304 Determine at least one identifier information of the file to be transmitted according to the verification target information, and generate verification information according to the identifier information.
- Step 306 sending the verification information.
- Step 308 Receive information of the file to be transmitted.
- the server confirms that the to-be-transmitted file matches the saved file (if there is a file with the same content as the file to be transmitted, that is, the file to be transferred is the same as the saved file), the verification target information of the file to be transmitted can be determined according to the saved file. .
- the verification target information may determine at least one identification information of the file to be transmitted, that is, determine at least one target data to be verified in the file to be transmitted according to the verification information, and then calculate each target separately
- the identification information of the data is generated by using the obtained at least one identification information, and then the verification information is sent to the server.
- the server verifies the credibility of the file according to the verification information, that is, whether the identification information of the pre-stored file is matched according to the identification information, so as to verify whether the file to be transmitted is actually stored in the terminal device, and then confirm that the identification information matches and then considers the real storage.
- the file to be transmitted is sent, so that the information about the file to be transmitted can be sent.
- the terminal After receiving the information of the file to be transmitted, the terminal confirms that the file is successfully uploaded. When the file is needed, the file can be obtained from the server according to the information of the file to be transmitted. file.
- the server may determine the verification target information of the file to be transmitted according to the saved file, so that the terminal device may calculate, according to the verification target information, at least one target data in the file to be transmitted. Identifying information, the server re-determining whether the identification information of the file to be transmitted matches the identification information of the corresponding file, and confirming that the file to be transmitted is stored in the terminal device after the confirmation identification information is matched, so the transmission to be transmitted may be sent.
- the information of the file so that the verification information ensures that the file exists on both the server and the client, preventing the problem of forging information to steal the file and ensuring the security of the information.
- the embodiment may include two phases for the file transmission, and one phase is the query phase, which is used to query whether the file to be transmitted is a saved file in the server, and if it is a saved file, it may be executed.
- the second transmission function enters the second phase, that is, the second transmission phase.
- it can be verified whether the terminal device actually stores the file locally, and provides a second transmission function for the terminal device that actually exists the file, and notifies the uploading success.
- FIG. 4 another data transmission interaction diagram of an embodiment of the present application is shown.
- the terminal device generates file information according to the file to be transmitted.
- the file information is used to determine a saved file that matches the file to be transmitted, and the file information includes file identification information of the file to be transmitted.
- the terminal device sends file information of the file to be transmitted to the server.
- the server acquires at least one file identification information from the file information.
- the server determines, by the server, whether the file identifier information of the file to be transmitted matches the file identifier information of the saved file.
- the server sends a response message to notify the terminal device to upload the file; and at 412a, the terminal device uploads the file to the server.
- the server determines the verification target information of the file to be transmitted according to the saved file, and sends the verification target information.
- the terminal device determines at least one identifier information of the file to be transmitted according to the verification target information, and generates verification information according to the identifier information.
- the terminal device sends the verification information.
- the server acquires at least one identifier information in the file to be transmitted from the verification information.
- the server determines, by the server, whether the identifier information of the file to be transmitted matches the identifier information of the corresponding file.
- the verification target information is determined according to the identification information of the saved file, thereby facilitating the matching between the identification information of the file to be transmitted and the identification information of the stored file.
- the server After confirming that the identifier information is matched, the server generates storage information of the file to be transmitted, and sends the storage information. In addition, if the server verification fails, the file to be transmitted is not trusted, and the upload of the file is ignored, and the response information of the transmission failure may also be fed back. Thereafter, the terminal device may send the file to the server to upload the file.
- FIG. 5 a flow chart of steps on the terminal device side in another embodiment of the file transmission method of the present application is shown.
- Step 502 Calculate at least one file identification information of the file to be transmitted, and use at least one file identification information of the file to be transmitted as file information.
- Step 504 Send file information of the file to be transmitted.
- the at least one type of file identification information of the file to be transmitted may be calculated. If the file identification information is a message digest, the value of the message to be transmitted (Message-Digest Algorithm 5, message digest algorithm fifth edition) value, SHA ( At least one of the value of the Secure Hash Algorithm and the base64 value, the at least one file identification information of the file to be transmitted is used as the file information.
- the file size of the file to be transferred may also be obtained, and the file size of the file to be transferred is added to the file information.
- the file information includes file identification information and file size of the file to be transmitted, and the file identification information may be a message digest, and the message digest includes an md5 value, a SHA value, a base64 value, and the like.
- Terminal information such as a MAC address, user information such as a user identifier, and the like may also be carried in the file information.
- the file information is then sent to the server so that the server verifies whether the matching file is stored based on the file identification information and file size of the file.
- Step 506 receiving verification target information.
- the server determines that the file to be transmitted does not match the saved file, the response information of the uploaded file may be sent. After receiving the transmission response information indicating the uploaded file, the terminal device sends the file to be transmitted to the server. If the server determines that the file to be transmitted matches the stored file, the verification target information is generated and sent to the terminal device.
- the embodiment of the present application takes the server as an example to determine that the file to be transmitted matches the saved file.
- Step 508 Determine, according to the verification target information, that the file to be transmitted corresponds to at least one target area.
- Step 510 Calculate identification information of the target area corresponding data, and generate verification information according to the identification information.
- Step 512 Send the verification information to the server.
- the matching file is matched with the file to be transmitted in the server, and the verification target information is used to determine the verification data that is improved by the terminal device, such as determining the target area of the extraction target data to calculate the identification information. Therefore, after receiving the verification target information, the at least one target area may be determined according to the verification target information, the target data is respectively extracted from each target area of the file to be transmitted, and the identification information corresponding to each target data, such as a message digest, is calculated. Therefore, the identification information of one or more parts in the file to be transmitted is calculated, for example, the message digest is calculated by extracting 20 KB of data every 1024 KB.
- the area for calculating the identification information is an area in the server that matches the stored file and also the identification information, thereby facilitating the matching judgment of the server.
- the verification information may include more than one message digest, and more than one message digest may be calculated according to the non-contiguous target area corresponding data in the to-be-transmitted file. That is, when more than one target area is determined from the file to be transmitted, each target area is non-contiguous, and the obtained message digest is a message digest of non-contiguous data in the file to be transmitted.
- determining, according to the verification target information, that the file to be transmitted corresponds to at least one target area comprising: acquiring at least one data length and at least one offset from the verification target information; The offset and the data length determine the target area from the file to be transmitted.
- At least one data length and at least one offset may be obtained from the verification target information, where the data length is a data length of the target region of the message digest, and different target regions may be determined according to different data lengths, and the offset is used for Determining a starting position of the target area, determining a starting position of the target area based on the offset, determining a target area based on the ending position corresponding to the starting position according to the data length area, and extracting data from the target area The calculation of the identification information.
- the data length and the offset are more than one, the matching relationship between the data length and the offset can also be recorded in the verification target information, so that the target region can be accurately determined.
- an algorithm for calculating the identifier information may be determined, and the different identifier information is determined according to different algorithms, where the identifier information includes a message digest, and the message digest includes at least one of the following: md5 value, SHA Value, base64 value.
- the SHA value includes the message digests of the SHA family such as sha1, sha125, sha256, and sha512. Therefore, the above various message digests can be calculated by using corresponding algorithms, and matching judgments are performed between message digests of the same type.
- the verification target information includes: a channel identifier, where the channel identifier is an identifier of a corresponding channel between the server and the terminal device.
- the channel identifier is sessionId.
- the sessionId can be set to a string of 48 bits in length.
- the channel identification can resolve the creation time and expiration time of the transmission channel.
- the channel identifier also includes signature data to ensure the unforgeability of the transmission channel identifier, for example, the signature data is auth_md5 signed by the user key.
- the channel identifier determines, according to the channel identifier, whether the corresponding transmission channel is valid; and after determining that the transmission channel is valid, performing the step of sending the verification information. That is, according to the channel identifier, it is determined whether the corresponding transmission channel is valid, for example, whether the validity time is determined according to the creation time and the expiration time, and whether the signature data is correct according to the signature data. If the transmission channel is invalid, the message can be ignored or the server can be retransmitted; if the transmission channel is valid, the subsequent steps can be performed. Wherein, the validity of the transmission channel may be determined before calculating the message digest of the target data, or the validity of the transmission channel may be determined before the verification information is sent.
- Step 514 receiving the stored information.
- the server may generate a file identifier of the file to be transmitted, and determine storage information such as a corresponding storage address, and The storage information is fed back to the medium-view device to identify that the file to be transmitted is successfully transmitted, and the terminal device determines the file identifier and the storage address of the corresponding file according to the storage information, so as to facilitate subsequent acquisition.
- FIG. 6 a flow chart of steps on the server side in another embodiment of the file transfer method of the present application is shown.
- Step 602 Receive file information of the file to be transmitted, and obtain at least one file identification information from the file information.
- the server may receive the file information sent by the terminal device, where the file information may be used to notify the terminal device of the file to be uploaded, so the file identification information of the file to be transmitted may be obtained from the file information, and the file identification information may represent the file to be transmitted. Data content, and the file size of the file to be transmitted can be obtained from the file information.
- Step 604 Determine whether the file identification information of the file to be transmitted matches the file identification information of the saved file.
- the file identification information of the file to be transmitted can be matched with the file identification information of the stored file in the server. If yes, that is, the file identification information of the file to be transmitted matches the file identification information of the saved file, step 608 is performed; if not, the file identification information of the file to be transmitted does not match the file identification information of the saved file, and step 606 is performed. If the file identification information of the file to be transmitted is the same as the file identification information of the saved file, it can be confirmed that the file to be transmitted and the saved file are the same file, that is, have the same data content.
- Step 606 Generate and send a response message to inform the terminal device to upload the file.
- Step 608 Determine whether the file size of the file to be transmitted matches the file size of the corresponding matched file.
- step 610 After determining that the file identification information of the file to be transmitted matches the file identification information of the saved file, it may also be determined whether the file size of the saved file matching the file identification information matches the file size of the file to be transmitted. If yes, go to step 610; if no, go to step 606.
- Step 610 Determine, according to the identifier information corresponding to the saved file, the verification target information by using at least one identifier information corresponding to the target area.
- the terminal device can obtain the storage record or the storage information of the stored file, and determine the identification information corresponding to the saved file according to the storage information, and the identification information is calculated according to the data corresponding to the target area in the saved file, so the identifier information is calculated.
- the target area determines at least one target area in the file to be transmitted that needs to calculate the identification information, and obtains verification target information based on the at least one target area.
- the channel identifier of the transmission channel is obtained. For example, if session communication is used between the server and the terminal device, the channel identifier is sessionId, and the channel identifier is added to the verification target information.
- the storage record or the storage information of the saved file stores various information of the file, such as a storage address of the file, file identification information obtained by at least one algorithm, a file size, and identification information of data corresponding to at least one target area in the file.
- file identification information can uniquely represent the data content of a file
- each user can be assigned a file identifier, of course, all users can also The file identifier is shared, so the file identifier may also be recorded in the storage record or the storage information, and each user identifier corresponding to the file identifier may also be recorded.
- the file storage information is separated from the user data in the server, that is, the information of the file stored in the storage information of the file, such as the file identification information, the file size, and the identification information of the data corresponding to at least one target area in the file, is stored in the user data.
- the file identifier, the user identifier, the upload time, and the like, and the storage relationship between the user data and the file is mapped, so that the file can be found based on the file identifier, and the corresponding user can also be found based on the file identifier information.
- determining the verification target information by using the at least one identifier information corresponding to the target area including: determining an offset amount and a data length according to the at least one identifier information corresponding to the target area; The data length generates verification target information.
- the target area for which the identification information is calculated may be determined according to the saved file matching the file to be transmitted, so that at least one target area is selected to calculate the offset and the data length, and then the offset and the data length may be generated. Verify target information.
- Step 612 Send the verification target information.
- the verification target information can be sent to the server.
- Step 614 receiving verification information.
- the terminal device generates verification information according to the verification target information, and returns verification information to the server.
- the verification information includes channel identifiers and identification information of at least one target area corresponding data.
- Step 616 Obtain identification information of the target area corresponding data from the verification information.
- Step 618 Determine whether the identification information of the file to be transmitted matches the identification information of the corresponding file.
- step 620 Determining whether the identification information of the file to be transmitted matches the identification information of the corresponding file; if yes, that is, the identification information is matched, step 620 is performed; if not, the identification information does not match, the process may be ended, or steps may be performed. 606. Instruct the terminal device to upload a corresponding file.
- a replay attack occurs based on the channel identifier, thereby judging the validity of the transmission channel, that is, a valid channel identifier (such as sessionId) is marked as used on the server after being used, thereby encountering again After the same channel ID, the server will reject the request and prevent replay attacks due to interception of authentication information during transmission. If the transmission channel is invalid, the message can be ignored; if the transmission channel is valid, the subsequent steps can be performed.
- a valid channel identifier such as sessionId
- Step 620 Assign a file identifier to the file to be transmitted, and associate the file identifier with a storage record corresponding to the saved file.
- Step 622 Generate storage information of the file to be transmitted by using a file address and/or the file identifier in the storage record.
- Step 624 Send the stored information.
- a new file identifier may be generated according to the corresponding saved file, the file identifier is assigned to the file to be transmitted, and the file identifier is identified.
- the storage record is associated with the stored file, that is, the storage record is associated with the file identifier of the file to be uploaded by the terminal device. Therefore, the file address can be obtained from the storage record, and/or the file identifier is obtained, and the storage information of the file to be transmitted is generated by using the file address and/or the file identifier, and the storage information is returned to the terminal device.
- the terminal device is notified that the file upload is successful, and the second transmission function is completed.
- the message digest includes at least one of the following: an md5 value, a SHA value, and a base64 value.
- the SHA value includes the message digests of the SHA family such as sha1, sha125, sha256, and sha512.
- At least one message digest of the file to be transmitted may be carried in the file information in the query phase to determine the storage state of the file to be transmitted. That is, the file information in the query phase may be a combination of a message digest and a file size such as an md5 value, or a combination of two or more message digests, such as a combination of a md5 value and a sha1 value. Moreover, for the verification information, a message digest of the data corresponding to a target area in the file to be transmitted, such as an md5 value, may be calculated, and a message digest of the data of the plurality of non-contiguous target areas may also be calculated.
- the embodiment of the present application can use a message digest, a file size, and the like to uniquely determine a file, thereby querying whether a corresponding file is stored in the server. On this basis, the probability of an attacker falsifying information to steal files is greatly reduced.
- the message digest of the target area in the file is used as one of the criteria for judging the client's possession of the file, thereby preventing the second pass function from being provided when the client has no file, that is, the client is In the absence of a file, it is not possible to pass files in seconds to improve data security.
- the embodiment of the present application further provides a file transmission apparatus, which is applied to a server.
- FIG. 7 a structural block diagram of an embodiment of a file transmission apparatus of the present application is shown, which may specifically include the following modules:
- the target sending module 702 is configured to determine verification target information of the file to be transmitted according to the saved file, and send the verification target information, wherein the file to be transmitted matches the saved file.
- the obtaining module 704 is configured to obtain at least one identifier information in the file to be transmitted from the received verification information, where the identifier information is determined according to the verification target information.
- the determining module 706 is configured to determine whether the identification information of the file to be transmitted matches the identification information of the corresponding file.
- the storage sending module 708 is configured to send the information of the file to be transmitted after the confirmation identification information is matched.
- the server may determine the verification target information of the file to be transmitted according to the saved file, so that the terminal device may calculate, according to the verification target information, identification information of at least one target data in the file to be transmitted.
- the server further determines whether the identification information of the file to be transmitted matches the identification information of the corresponding file, and confirms that the file to be transmitted is stored in the terminal device after the confirmation identification information is matched, so the file to be transmitted may be sent.
- Information so that the verification information ensures that the file exists on both the server and the client, preventing the problem of forging information to steal the file and ensuring the security of the information.
- the identifier information includes: a message digest.
- the message digest includes at least one of the following: a message digest algorithm fifth version md5 value, a secure hash algorithm SHA value, and a base64 value.
- the target sending module 702 is configured to determine, according to the identifier information corresponding to the saved file, the verification target information by using at least one identifier information corresponding to the target area.
- the target sending module 702 is configured to determine an offset and a data length according to the at least one identifier information corresponding to the target area, and generate the verification target information by using the offset and the data length.
- the identifier information is generated according to data of a target area in the file to be transmitted. If the identifier information is more than one, each identifier information is determined according to the non-contiguous target area corresponding data in the file to be transmitted.
- the target sending module 702 is further configured to acquire a channel identifier of the transmission channel, and add a channel identifier of the transmission channel to the verification target information.
- the determining module 706 is further configured to determine, according to the channel identifier, whether the transmission channel is valid; if the transmission channel is valid, perform matching determination of the identifier information.
- the obtaining module 704 is further configured to receive the file information of the file to be transmitted, and obtain at least one file identification information from the file information.
- the determining module 706 is further configured to determine the file to be transmitted. Whether the file identification information matches the file identification information of the saved file; if the file identification information matches, it is confirmed that the file to be transmitted matches the stored file.
- the file information further includes: a file size of the file to be transmitted; the determining module 706 is further configured to determine, according to the file size of the file to be transmitted, whether the file size of the saved file that matches the file identification information matches If the file sizes match, it is confirmed that the file to be transferred matches the stored file.
- the information about the file to be transmitted includes the storage information of the file to be transmitted, and the storage sending module 708 is further configured to allocate a file identifier to the file to be transmitted, and corresponding to the file identifier and the saved file. Storing a record to establish an association relationship; generating, by using a file address and/or the file identifier in the storage record, storage information of the file to be transmitted
- the embodiment of the present application further provides a file transmission apparatus, which is applied to a terminal device.
- FIG. 8 a structural block diagram of another file transmission apparatus embodiment of the present application is shown, which may specifically include the following modules:
- the receiving module 802 is configured to receive verification target information, where the verification target information is generated according to a saved file that matches a file to be transmitted; and receiving information of the file to be transmitted.
- the verification information determining module 804 is configured to determine at least one piece of identification information of the file to be transmitted according to the verification target information, and generate verification information according to the identification information.
- the sending module 806 is configured to send the verification information.
- the server may determine the verification target information of the file to be transmitted according to the saved file, so that the terminal device may calculate, according to the verification target information, identification information of at least one target data in the file to be transmitted. And determining, by the server, the identifier information of the file to be transmitted, and the identifier information of the corresponding file, and confirming that the file to be transmitted is stored in the terminal device after the identifier information is matched, so that the file to be transmitted may be generated.
- the information is stored, so that the verification information ensures that the file exists on both the server and the client, preventing the problem of forging information to steal the file, and ensuring the security of the information.
- FIG. 9 there is shown a block diagram of an alternative embodiment of another file transfer device of the present application.
- the identifier information includes: a message digest.
- the message digest includes at least one of the following: a message digest algorithm fifth version md5 value, a secure hash algorithm SHA value, and a base64 value.
- the verification information determining module 804 includes: an area determining sub-module 8042 and a calculating sub-module 8044.
- the area determining sub-module 8042 is configured to determine, according to the verification target information, that the file to be transmitted corresponds to at least one target area.
- the calculation sub-module 8044 is configured to calculate identification information of the target area corresponding data.
- the area determining sub-module 8044 is configured to obtain at least one data length and at least one offset from the verification target information, and determine a target area from the to-be-transmitted file according to the offset and the data length.
- the verification target information includes: a channel identifier; the verification information determining module 804 is further configured to determine, according to the channel identifier, whether the corresponding transmission channel is valid; and after confirming that the transmission channel is valid, perform the sending of the verification information.
- each identification information is determined according to the non-contiguous target area corresponding data in the to-be-transmitted file.
- the device further includes:
- the file information determining module 808 is configured to generate file information of the file to be transmitted, and send file information of the file to be transmitted, wherein the file information is used to determine a saved file that matches the file to be transmitted.
- the file information determining module 808 is configured to calculate at least one file identification information of the file to be transmitted, and use at least one file identification information of the file to be transmitted as file information.
- the file information determining module 808 is further configured to obtain a file size of the file to be transmitted, and add a file size of the file to be transmitted to the file information.
- the message digest includes at least one of the following: an md5 value, a SHA value, and a base64 value.
- the SHA value includes the message digests of the SHA family such as sha1, sha125, sha256, and sha512.
- two or more message digests calculated by the file to be transmitted may be carried in the file information in the query phase to determine the storage state of the file to be transmitted. That is, the file information in the query phase may be a combination of message digest and file size such as md5 value, or a combination of two or more message digests, such as a combination of md5 value and sha1 value and other hash functions. And, for the second verification information, a message digest of one target area corresponding to the data to be transmitted, such as an md5 value, may be calculated, and a message digest of the plurality of non-contiguous target area corresponding data may also be calculated.
- the embodiment of the present application can use a message digest, a file size, and the like to uniquely determine a file, thereby querying whether a corresponding file is stored in the server. On this basis, the probability of an attacker falsifying information to steal files is greatly reduced.
- the message digest of the target area in the file is used as one of the criteria for judging the client's possession of the file, thereby preventing the second pass function from being provided when the client has no file, that is, the client is In the absence of a file, it is not possible to pass files in seconds to improve data security.
- the embodiment of the present application further provides a non-volatile readable storage medium, where the storage medium stores one or more programs, and when the one or more modules are applied to the terminal device, the terminal may be The device executes the instructions of the method steps in the embodiment of the present application.
- An optional embodiment comprising: one or more machine readable medium having stored thereon instructions that, when executed by one or more processors, cause the terminal device to perform one or more of the embodiments of the present application File transfer method.
- a further optional embodiment comprising: one or more machine readable medium having stored thereon instructions that, when executed by one or more processors, cause the server to perform one or more of the embodiments of the present application File transfer method.
- FIG. 10 is a schematic structural diagram of hardware of a device according to an embodiment of the present disclosure.
- the device may include various devices such as a server, a terminal device, and a temperature control device.
- the terminal device may include an input device 100, a processor 101, an output device 102, a memory 103, and at least one communication bus 104.
- Communication bus 104 is used to implement a communication connection between components.
- the memory 103 may include a high speed RAM memory, and may also include a non-volatile memory NVM, such as at least one disk memory, in which various programs may be stored for performing various processing functions and implementing the method steps of the present embodiment.
- the processor 101 may be, for example, a central processing unit (CPU), an application specific integrated circuit (ASIC), a digital signal processor (DSP), a digital signal processing device (DSPD), and programmable logic.
- CPU central processing unit
- ASIC application specific integrated circuit
- DSP digital signal processor
- DSPD digital signal processing device
- PLD device
- FPGA field programmable gate array
- controller controller
- microcontroller microprocessor, or other electronic component
- the input device 100 may include multiple input devices, for example, at least one of a user-oriented user interface, a device-oriented device interface, a software programmable interface, a camera, and a sensor.
- the device-oriented device interface may be a wired interface for data transmission between the device and the device, or may be a hardware insertion interface (for example, a USB interface, a serial port, etc.) for data transmission between the device and the device.
- the user-oriented user interface may be, for example, a user-oriented control button, a voice input device for receiving voice input, and a touch-sensing device for receiving a user's touch input (eg, a touch screen with touch sensing function, touch
- the programmable interface of the software may be, for example, an input for the user to edit or modify the program, such as an input pin interface or an input interface of the chip; optionally, the transceiver may have Radio frequency transceiver chip, baseband processing chip, and transceiver antenna for communication functions.
- An audio input device such as a microphone can receive voice data.
- Output device 102 can include output devices such as displays, stereos, and the like.
- the processor of the terminal device includes functions for executing the modules of the data processing device in each device.
- the specific functions and technical effects may be referred to the foregoing embodiments, and details are not described herein again.
- FIG. 11 is a schematic structural diagram of hardware of a terminal device according to another embodiment of the present disclosure.
- Figure 11 is a specific embodiment of the implementation of Figure 10.
- the terminal device of this embodiment includes a processor 111 and a memory 112.
- the processor 111 executes the computer program code stored in the memory 112 to implement the file transfer method of FIGS. 1 to 6 in the above embodiment.
- the memory 112 is configured to store various types of data to support operation at the terminal device. Examples of such data include instructions for any application or method operating on the terminal device, such as messages, pictures, videos, and the like.
- the memory 112 may include a random access memory (RAM), and may also include a non-volatile memory such as at least one disk storage.
- the processor 111 is disposed in the processing component 110.
- the terminal device may also include a communication component 113, a power component 114, a multimedia component 115, an audio component 116, an input/output interface 117, and/or a sensor component 118.
- the components and the like included in the terminal device are set according to actual requirements, which is not limited in this embodiment.
- Processing component 110 typically controls the overall operation of the terminal device.
- Processing component 110 may include one or more processors 111 to execute instructions to perform all or part of the steps of the above-described FIGS. 1 through 6.
- processing component 110 can include one or more modules to facilitate interaction between component 110 and other components.
- processing component 110 can include a multimedia module to facilitate interaction between multimedia component 115 and processing component 110.
- Power component 114 provides power to various components of the terminal device.
- Power component 114 can include a power management system, one or more power sources, and other components associated with generating, managing, and distributing power for the terminal devices.
- the multimedia component 115 includes a display screen between the terminal device and the user that provides an output interface.
- the display screen can include a liquid crystal display (LCD) and a touch panel (TP). If the display includes a touch panel, the display can be implemented as a touch screen to receive input signals from the user.
- the touch panel includes one or more touch sensors to sense touches, slides, and gestures on the touch panel. The touch sensor may sense not only the boundary of the touch or sliding action, but also the duration and pressure associated with the touch or slide operation.
- the audio component 116 is configured to output and/or input an audio signal.
- the audio component 116 includes a microphone (MIC) that is configured to receive an external audio signal when the terminal device is in an operational mode, such as a voice recognition mode.
- the received audio signal may be further stored in memory 112 or transmitted via communication component 113.
- audio component 116 also includes a speaker for outputting an audio signal.
- the input/output interface 117 provides an interface between the processing component 110 and the peripheral interface module, which may be a click wheel, a button, or the like. These buttons may include, but are not limited to, a volume button, a start button, and a lock button.
- Sensor assembly 118 includes one or more sensors for providing status assessment of various aspects to the terminal device.
- sensor component 118 can detect the on/off state of the terminal device, the relative positioning of the components, and the presence or absence of contact of the user with the terminal device.
- the sensor assembly 118 can include a proximity sensor configured to detect the presence of nearby objects without any physical contact, including detecting the distance between the user and the terminal device.
- the sensor assembly 118 can also include a camera or the like.
- the communication component 113 is configured to facilitate wired or wireless communication between the terminal device and other devices.
- the terminal device can access a wireless network based on a communication standard such as WiFi, 2G or 3G, or a combination thereof.
- the terminal device may include a SIM card slot for inserting the SIM card so that the terminal device can log into the GPRS network to establish communication with the server via the Internet.
- the communication component 113, the audio component 116, and the input/output interface 117 and the sensor component 118 involved in the embodiment of FIG. 11 can be implemented as an input device in the embodiment of FIG.
- a terminal device of this embodiment comprising: one or more processors; and one or more machine-readable media having stored thereon instructions, when executed by the one or more processors, The terminal device is caused to perform the method as described in one or more of the embodiments of the present application.
- a server of this embodiment comprising: one or more processors; and one or more machine-readable media having instructions stored thereon, when executed by the one or more processors, The server performs the method as described in one or more of the embodiments of the present application.
- the embodiment of the present application further provides an operating system for a terminal device.
- the operating system of the device includes: a receiving unit 1202, a verification unit 1204, and a communication unit 1206.
- the receiving unit 1202 receives the verification target information, wherein the verification target information is generated according to the stored file that matches the file to be transmitted; and receives the information of the file to be transmitted.
- the verification unit 1204 determines at least one identification information of the file to be transmitted according to the verification target information, and generates verification information according to the identification information.
- the communication unit 1006 transmits the verification information.
- the description is relatively simple, and the relevant parts can be referred to the description of the method embodiment.
- Embodiments of the present application are described with reference to flowcharts and/or block diagrams of methods, terminal devices (systems), and computer program products according to embodiments of the present application. It will be understood that each flow and/or block of the flowchart illustrations and/or FIG.
- These computer program instructions can be provided to a processor of a general purpose computer, special purpose computer, embedded processor or other programmable data processing terminal device to produce a machine such that instructions are executed by a processor of a computer or other programmable data processing terminal device
- Means are provided for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.
- the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing terminal device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
- the instruction device implements the functions specified in one or more blocks of the flowchart or in a flow or block of the flowchart.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
- Storage Device Security (AREA)
Abstract
本申请实施例提供了一种文件传输方法、装置、设备和存储介质,以提高数据的安全性。所述的方法包括:依据已存文件确定待传输文件的验证目标信息,并发送所述验证目标信息,其中,所述待传输文件与已存文件匹配;从接收的验证信息中获取所述待传输文件中的至少一个标识信息,所述标识信息依据所述验证目标信息确定;判断所述待传输文件的标识信息,与对应已存文件的标识信息是否匹配;在确认标识信息匹配后,发送所述待传输文件的信息。通过验证信息保证文件在服务器和客户端均存在,防止伪造信息窃取文件的问题,保证信息的安全。
Description
本申请要求2017年07月28日递交的申请号为201710628723.X、发明名称为“一种文件传输方法、装置、设备和存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请涉及计算机技术领域,特别是涉及一种文件传输方法、一种文件传输装置、一种终端设备、一种服务器、一种存储介质和一种用于终端设备的操作系统。
秒传是一种“忽略式”上传方式,它使得不同用户的相同文件只需存储一份,这不但避免了不必要的文件上传,而且降低了服务端的带宽和存储成本,同时提升了用户体验。因此,在云存储系统中,秒传是必不可少的功能。
一种秒传方式如下:服务器预先计算出已存文件的md5值,从而存储已存文件、其md5值和文件标识的对应关系。客户端在上传文件前计算待传输文件的md5值,然后发送携带md5值的数据请求给服务器。服务器检测该md5值与已存的md5值是否相同,若相同则新建一文件标识,将该新建的文件标识和md5值、对应已存文件建立对应关系,并返回新建的文件标识给客户端,表征该文件已上传,从而实现了文件的快速上传。
但是,md5值是32个字符的字符串,理论上,攻击者可以枚举所有的md5值,然后模拟客户端发起秒传请求,从而攻击者在不拥有文件的情况下也能秒传出文件,并且能够基于服务器回复的文件标识等获取到对应文件,导致数据泄露,影响数据安全。
发明内容
本申请实施例所要解决的技术问题是提供一种文件传输方法,以提高数据的安全性。
相应的,本申请实施例还提供了一种文件传输装置、一种终端设备、一种服务器、一种存储介质和一种操作系统,用以保证上述方法的实现及应用。
为了解决上述问题,本申请实施例公开了一种文件传输方法,包括:依据已存文件确定待传输文件的验证目标信息,并发送所述验证目标信息,其中,所述待传输文件与已存文件匹配;从接收的验证信息中获取所述待传输文件中的至少一个标识信息,所述标识信息依据所述验证目标信息确定;判断所述待传输文件的标识信息,与对应已存文 件的标识信息是否匹配;在确认标识信息匹配后,发送所述待传输文件的信息。
本申请实施例还公开了一种文件传输方法,包括:接收验证目标信息,其中,所述验证目标信息是依据与待传输文件匹配的已存文件生成的;依据所述验证目标信息确定所述待传输文件的至少一个标识信息,依据所述标识信息生成验证信息;发送所述验证信息;接收所述待传输文件的信息。
本申请实施例还公开了一种文件传输装置,包括:目标发送模块,用于依据已存文件确定待传输文件的验证目标信息,并发送所述验证目标信息,其中,所述待传输文件与已存文件匹配;获取模块,用于从接收的验证信息中获取所述待传输文件中的至少一个标识信息,所述标识信息依据所述验证目标信息确定;判断模块,用于判断所述待传输文件的标识信息,与对应已存文件的标识信息是否匹配;存储发送模块,用于在确认标识信息匹配后,发送所述待传输文件的信息。
本申请实施例还公开了一种文件传输装置,包括:接收模块,用于接收验证目标信息,其中,所述验证目标信息是依据与待传输文件匹配的已存文件生成的;以及,接收所述待传输文件的信息;验证信息确定模块,用于依据所述验证目标信息确定所述待传输文件的至少一个标识信息,依据所述标识信息生成验证信息;发送模块,用于发送所述验证信息。
本申请实施例还公开了一种服务器,包括:一个或多个处理器;和其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述服务器执行如本申请实施例中一个或多个所述的方法。
本申请实施例还公开了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得服务器执行如本申请实施例中一个或多个所述的方法。
本申请实施例还公开了一种终端设备,包括:一个或多个处理器;和其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述终端设备执行如本申请实施例中一个或多个所述的方法。
本申请实施例还公开了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得终端设备执行如本申请实施例中一个或多个所述的方法。
本申请实施例还公开了一种用于终端设备的操作系统,包括:接收单元,接收验证目标信息,其中,所述验证目标信息是依据与待传输文件匹配的已存文件生成的;及接收所述待传输文件的信息;验证单元,依据所述验证目标信息确定所述待传输文件的至少一个标识信息,依据所述标识信息生成验证信息;通信单元,发送所述验证信息。
与现有技术相比,本申请实施例包括以下优点:
在本申请实施例中,服务器确认待传输文件与已存文件匹配后,可依据已存文件确定待传输文件的验证目标信息,从而终端设备可基于验证目标信息计算,待传输文件中至少一个目标数据的标识信息,服务器再判断所述待传输文件的标识信息,与对应已存文件的标识信息是否匹配,在确认标识信息匹配后确认终端设备中存储有该待传输文件,因此可发送所述待传输文件的信息,从而通过验证信息保证文件在服务器和客户端均存在,防止伪造信息窃取文件的问题,保证信息的安全。
图1是本申请实施例的一种数据传输架构示意图;
图2是本申请的一种文件传输方法实施例中终端设备侧的步骤流程图;
图3是本申请的一种文件传输方法实施例中服务器侧的步骤流程图;
图4是本申请实施例的另一种数据传输架构示意图;
图5是本申请的另一种文件传输方法实施例中终端设备侧的步骤流程图;
图6是本申请的另一种文件传输方法实施例中服务器侧的步骤流程图;
图7是本申请一种文件传输装置实施例的结构框图;
图8是本申请另一种文件传输装置实施例的结构框图;
图9是本申请另一种文件传输装置可选实施例的结构框图;
图10是本申请一实施例提供的终端设备的硬件结构示意图;
图11是本申请另一实施例提供的终端设备的硬件结构示意图;
图12是本申请一实施例提供的操作系统示意图。
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
本申请实施例中,终端设备指的是具有智能操作系统的设备,这些设备可支持音频、视频、数据等方面的功能,包括智能移动终端如智能手机、平板电脑、智能穿戴设备,也可以是智能电视、个人计算机等设备。智能操作系统如YunOS、IOS、Android等。
参照图1,示出了本申请实施例的一种数据传输交互示意图。
该数据传输系统包括:终端设备10和服务器20。用户可在终端设备中通过客户端等应用与服务器交互,执行文件上传等操作。
其中,服务器20对于存储的文件,可记录该文件的标识信息,该标识信息可唯一表征一个数据内容,即不同数据的标识信息不同,相匹配数据的标识信息相匹配,该相匹配包括相同。因此对于文件可通过文件标识信息表征其数据内容,文件标识信息也是一种标识信息,不同文件的文件标识信息不同,相匹配文件的文件标识信息相匹配。其中,标识信息可通过多种算法计算得到,每一种算法对应一种类型的标识信息,同种算法得到的标识信息之间可互相比较,不同算法得到的标识信息之间不具有可比性,即本申请实施例中所执行的匹配是针对同一种算法得到标识信息之间,以及文件标识信息之间的匹配。标识信息包括:消息摘要,文件标识信息包括:消息摘要,该消息摘要(Message Digest)是唯一对应一个数据(文件)的固定长度的值,是通过一定的算法计算数据文件得到的,一旦数据文件发生变更,则消息摘要也会发生变更,因此也可看作是数据文件的数字指纹,可用于唯一标识一个数据文件。
因此当不同用户向服务器上传系统文件时,服务器只存储一份文件即可,后续上传该文件的用户即可基于秒传功能实现快速上传。但是为了防止攻击者通过伪造标识信息(如消息摘要)的方式窃取文件,本实施例在确认服务器端已存储该文件的基础上,可通过文件数据的验证来确保终端设备本地存在文件,并在此的基础上提供秒传功能,告知对应终端设备文件上传成功。因此在服务器确认存储与待传输文件相匹配的文件基础上,文件传输验证可通过如下交互过程实现:
102、服务器确认待传输文件与已存文件匹配后,依据已存文件确定待传输文件的验证目标信息。对于需要上传的待传输文件,服务器确认该待传输文件与已存文件匹配(如存在与待传输文件数据内容相同的文件,即待传输文件与已存文件相同后),可依据该已存文件确定待传输文件的验证目标信息,该验证目标信息用于告知终端设备需要验证的目标,如目标区域的数据、需要使用的算法等。
104、服务器发送所述验证目标信息。
106、终端设备依据所述验证目标信息确定所述待传输文件的至少一个标识信息,依据所述标识信息生成验证信息。终端设备依据所述验证目标信息确定需要验证的目标,因此可依据待传输文件计算至少一个标识信息,该标识信息可依据待传输文件中的部分数据如目标区域的数据计算得到,然后依据标识信息生成验证信息。
108、终端设备发送所述验证信息。
110、服务器从验证信息中获取所述待传输文件中的至少一个标识信息。
112、服务器判断所述待传输文件的标识信息,与对应已存文件的标识信息是否匹配。验证目标信息依据已存文件的标识信息确定,从而便于待传输文件的标识信息和已存文件的标识信息之间的匹配。
114、服务器在确认标识信息匹配后,发送所述待传输文件的信息。该信息包括存储信息,此外,若服务器验证不通过,即待传输文件不可信,也忽略该对该文件的上传,也可反馈传输失败的响应信息,此后终端设备可发送给文件给服务器,以上传文件。
从而在确认待传输文件与已存文件匹配的情况下,基于已存文件确定待传输文件中需要验证的目标,从而获取待传输文件中的至少一个标识信息,再判断所述待传输文件的标识信息,与对应已存文件的标识信息是否匹配,确认标识信息匹配即终端设备中存在该待传输文件,则无需终端设备发送该待传输文件,即可发送所述待传输文件的信息,告知文件传输成功,从而基于标识信息有效的防止伪造文件的问题,保证数据的安全。
参照图2、示出了本申请的一种文件传输方法实施例中服务器侧的步骤流程图。
步骤202,依据已存文件确定待传输文件的验证目标信息,并发送所述验证目标信息。
步骤204,从接收的验证信息中获取所述待传输文件中的至少一个标识信息。
步骤206,判断所述待传输文件的标识信息,与对应已存文件的标识信息是否匹配。
若是,执行步骤208;若否,结束该流程。
步骤208,在确认标识信息匹配后,发送所述待传输文件的信息。
服务器确认该待传输文件与已存文件匹配(如存在与待传输文件数据内容相同的文件,即待传输文件与已存文件相同后),可依据该已存文件确定待传输文件的验证目标信息。该验证目标信息用于告知终端设备需要验证的目标,如目标区域的数据、需要使用的算法等,其中,终端设备依据验证目标信息计算待传输文件的标识信息,该验证目标信息是依据对应相匹配已存文件的标识信息确定的。因此终端设备可依据标识信息计算待传输文件中的至少一个标识信息,构成验证信息后返回给服务器。
服务器对应可接收验证信息,并从验证信息中获取所述待传输文件中的至少一个标识信息,然后将每个标识信息分别与已存文件的对应标识信息进行匹配,若各标识信息均匹配,则确认终端设备中存在该待传输文件,可为其提供秒传功能,因此可所述待传输文件的信息,例如基于已存文件的存储记录生成待传输文件的存储信息,例如将已存文件的存储记录中的存储地址,作为待传输文件的存储地址等,然后将存储信息反馈给 终端设备,以告知终端设备文件上传成功,依据该文件在服务器中的存储信息等。
参照图3、示出了本申请的一种文件传输方法实施例中终端设备侧的步骤流程图。
步骤302,接收验证目标信息。
步骤304,依据所述验证目标信息确定所述待传输文件的至少一个标识信息,依据所述标识信息生成验证信息。
步骤306,发送所述验证信息。
步骤308,接收所述待传输文件的信息。
服务器确认该待传输文件与已存文件匹配(如存在与待传输文件数据内容相同的文件,即待传输文件与已存文件相同后),可依据该已存文件确定待传输文件的验证目标信息。终端设备接收验证目标信息后,可所述验证目标信息确定所述待传输文件的至少一个标识信息,即依据验证信息确定所述待传输文件中需要验证的至少一个目标数据,然后分别计算各目标数据的标识信息,采用得到的至少一个标识信息生成验证信息,再发送验证信息给服务器。服务器依据验证信息检验文件的可信度,即依据标识信息确定与预存文件的标识信息是否匹配,以此来验证终端设备中是否真实存储了该待传输文件,再确认标识信息匹配后认为真实存储了该待传输文件,因此可发送所述待传输文件的信息,终端接收该待传输文件的信息后确认文件上传成功,后续需要该文件时,可依据所述待传输文件的信息从服务器获取该文件。
综上所述,服务器确认待传输文件与已存文件匹配后,可依据已存文件确定待传输文件的验证目标信息,从而终端设备可基于验证目标信息计算,待传输文件中至少一个目标数据的标识信息,服务器再判断所述待传输文件的标识信息,与对应已存文件的标识信息是否匹配,在确认标识信息匹配后确认终端设备中存储有该待传输文件,因此可发送所述待传输文件的信息,从而通过验证信息保证文件在服务器和客户端均存在,防止伪造信息窃取文件的问题,保证信息的安全。
为了提高秒传功能的安全性,本实施例对于文件传输可包含两个阶段,一个阶段是查询阶段,用于查询待传输文件是否是服务器中已存文件,若为已存文件,则可执行秒传功能,进入第二个阶段即秒传阶段,为了保证文件的安全,可验证终端设备本地是否真实存储该文件,对于真实存在文件的终端设备提供秒传功能,通知其上传成功。
参照图4,示出了本申请实施例的另一种数据传输交互示意图。
402、终端设备依据待传输文件生成文件信息。
所述文件信息用于确定与所述待传输文件匹配的已存文件,所述文件信息包括所述 待传输文件的文件标识信息。
404、终端设备发送待传输文件的文件信息给服务器。
406、服务器从所述文件信息中获取至少一个文件标识信息。
408、服务器判断所述待传输文件的文件标识信息,与已存文件的文件标识信息是否匹配。
410a、若文件标识信息不匹配,服务器发送响应信息告知终端设备上传文件;在412a、终端设备上传文件给服务器。
410b、若文件标识信息匹配,服务器依据已存文件确定待传输文件的验证目标信息,并发送所述验证目标信息。
412b、终端设备依据所述验证目标信息确定所述待传输文件的至少一个标识信息,依据所述标识信息生成验证信息。终端设备发送所述验证信息。
414、服务器从验证信息中获取所述待传输文件中的至少一个标识信息。
416、服务器判断所述待传输文件的标识信息,与对应已存文件的标识信息是否匹配。验证目标信息依据已存文件的标识信息确定,从而便于待传输文件的标识信息和已存文件的标识信息之间的匹配。
418、服务器在确认标识信息匹配后,生成所述待传输文件的存储信息,并发送所述存储信息。此外,若服务器验证不通过,即待传输文件不可信,也忽略该对该文件的上传,也可反馈传输失败的响应信息,此后终端设备可发送给文件给服务器,以上传文件。
参照图5,示出了本申请的另一种文件传输方法实施例中终端设备侧的步骤流程图。
步骤502,计算所述待传输文件的至少一个文件标识信息,将所述待传输文件的至少一种文件标识信息作为文件信息。
步骤504,发送待传输文件的文件信息。
其中,可计算所述待传输文件的至少一种文件标识信息,如文件标识信息为消息摘要,则可计算待传输文件的(Message-Digest Algorithm 5,消息摘要算法第五版)值、SHA(Secure Hash Algorithm,安全哈希算法)值、base64值中的至少一种,将所述待传输文件的至少一种文件标识信息作为文件信息。还可获取待传输文件的文件大小,在所述文件信息中添加所述待传输文件的文件大小。即文件信息包括待传输文件的文件标识信息和文件大小,该文件标识信息可为消息摘要,消息摘要包括md5值、SHA值、base64值等。还可在文件信息中携带终端信息如MAC地址、用户信息如用户标识等。然后将文件信息发送给服务器,以使服务器基于文件的文件标识信息和文件大小验证是否以存 储了相匹配的文件。
步骤506,接收验证目标信息。
若服务器判断待传输文件与已存文件不匹配,则可发送上传文件的响应信息,终端设备在接收到指示上传文件的传输响应信息后,发送待传输文件给服务器。若服务器判断待传输文件与已存文件匹配,则生成验证目标信息并发送给终端设备。本申请实施例以服务器判断待传输文件与已存文件匹配为例。
步骤508,依据所述验证目标信息,确定所述待传输文件对应至少一个目标区域。
步骤510,计算所述目标区域对应数据的标识信息,依据所述标识信息生成验证信息。
步骤512,发送所述验证信息给服务器。
本实施例以服务器中已存文件与待传输文件匹配为例,该验证目标信息用于确定终端设备提高的验证数据,如确定提取目标数据的目标区域来计算标识信息。因此在接收到验证目标信息后,可依据该验证目标信息确定至少一个目标区域,从所述待传输文件的各目标区域中分别提取目标数据,计算各目标数据对应的标识信息如消息摘要。因此计算待传输文件中一个或多个部分的标识信息,例如每隔1024KB提取20KB的数据计算消息摘要。该计算标识信息的区域是服务器中对应相匹配的已存文件也计算了标识信息的区域,从而便于服务器的匹配判断。本申请实施例中,验证信息可包括多于一个消息摘要,则多于一个消息摘可依据所述待传输文件中非连续的目标区域对应数据计算得到。即从待传输文件中确定多于一个目标区域时,各目标区域为非连续的,从而得到的消息摘要是待传输文件中非连续数据的消息摘要。
其中,一个可选实施例中,依据所述验证目标信息,确定所述待传输文件对应至少一个目标区域,包括:从验证目标信息中获取至少一个数据长度和至少一个偏移量;依据所述偏移量和数据长度,从所述待传输文件中确定目标区域。即可从验证目标信息中获取至少一个数据长度和至少一个偏移量,数据长度为需要计算消息摘要目标区域的数据长度,依据数据长度的不同可确定不同大小的目标区域,偏移量用于确定目标区域的起始位置,则可基于偏移量确定目标区域的起始位置,基于数据长度区域该起始位置对应的终止位置,从而确定出目标区域,再从该目标区域中提取数据进行标识信息的计算。其中,当数据长度和偏移量均多于一个时,验证目标信息中还可记录数据长度和偏移量之间的匹配关系,从而能够准确的确定目标区域。
本申请实施例中,在确定出目标区域后,还可确定计算标识信息的算法,不同标识 信息依据不同算法确定,其中,标识信息包括消息摘要,消息摘要包括以下至少一种:md5值、SHA值、base64值。其中,SHA值包括sha1,sha125,sha256,sha512等SHA家族的消息摘要。因此对于上述各种消息摘要可采取相应的算法计算得到,相同类型的消息摘要之间进行匹配判断。
本申请一个可选实施例中,所述验证目标信息包括:通道标识,该传道标识为服务器和终端设备通信对应通道的标识,例如在服务器和终端设备间建立会话session,则通道标识为sessionId,可将该sessionId设置为一个长度为48位的字符串。从通道标识可以解析出该传输通道的创建时间和过期时间。此外,通道标识中还包括签名数据来保证传输通道标识的不可伪造性,例如签名数据为经用户密钥签名的auth_md5。则可依据所述通道标识判断对应的传输通道是否有效;在判断传输通道有效后,执行发送所述验证信息的步骤。即依据该通道标识判断对应的传输通道是否有效,例如依据创建时间、过期时间判断是否在有效时间内,又如依据签名数据判断是否是正确的等。若传输通道无效则可忽略该消息或告知服务器重新传输;若传输通道有效则可进行后续的步骤。其中,可在计算目标数据的消息摘要前判断传输通道的有效性,或者在发送所述验证信息前判断传输通道的有效性。
步骤514,接收存储信息。
服务器判断验证信息通过校验后,即待传输文件的标识信息和已存文件中对应标识信息匹配后,服务器可生成该待传输文件的文件标识,并确定相应的存储地址等存储信息,将该存储信息反馈给中观设备,来标识该待传输文件传输成功,终端设备依据该存储信息确定对应文件的文件标识、存储地址等信息,便于后续获取。
参照图6、示出了本申请的另一种文件传输方法实施例中服务器侧的步骤流程图。
步骤602,接收所述待传输文件的文件信息,从所述文件信息中获取至少一个文件标识信息。
服务器可接收终端设备发送的文件信息,该文件信息可告知终端设备要上传的文件,因此可从该文件信息中获取所述待传输文件的文件标识信息,该文件标识信息可表征待传输文件的数据内容,并可从文件信息中获取所述待传输文件的文件大小。
步骤604,判断所述待传输文件的文件标识信息,与已存文件的文件标识信息是否匹配。
然后可采用该待传输文件的文件标识信息与服务器中已存文件的文件标识信息进行 匹配。若是,即待传输文件的文件标识信息与已存文件的文件标识信息匹配,执行步骤608;若否,即待传输文件的文件标识信息与已存文件的文件标识信息不匹配,执行步骤606。其中,若待传输文件的文件标识信息和已存文件的文件标识信息相同,则可确认待传输文件和该已存文件为相同文件,即具有相同的数据内容。
步骤606,生成并发送响应信息告知终端设备上传文件。
步骤608,判断所述待传输文件的文件大小,与对应匹配的已存文件的文件大小是否相匹配。
判断待传输文件的文件标识信息与已存文件的文件标识信息相匹配后,还可判断该文件标识信息相匹配的已存文件的文件大小和待传输文件的文件大小是否相匹配。若是,执行步骤610;若否,执行步骤606。
步骤610,依据所述已存文件对应的标识信息,采用至少一个标识信息对应目标区域确定验证目标信息。
从而终端设备可获取已存文件的存储记录或存储信息,依据该存储信息确定该已存文件对应的标识信息,该标识信息依据已存文件中目标区域对应的数据计算得到,因此计算标识信息的目标区域确定待传输文件中需要计算标识信息的至少一个目标区域,基于该至少一个目标区域得到验证目标信息。并且可获取传输通道的通道标识,如服务器和终端设备之间采用会话(session)通信,则通道标识为sessionId,在验证目标信息中添加该通道标识。
其中,已存文件的存储记录或存储信息中存储有文件的各种信息,如文件的存储地址、至少一种算法得到的文件标识信息、文件大小、文件中至少一个目标区域对应数据的标识信息等,此外,由于文件标识信息可唯一表征一个文件的数据内容,因此在不同用户存储有相同文件(即相同数据内容的文件)时,为每个用户可分配一个文件标识,当然所有用户也可共享该文件标识,因此在存储记录或存储信息中还可记录文件标识,也可记录与文件标识对应的各用户标识。或者,在服务器中将文件存储信息和用户数据分离,即文件的存储信息中存储文件的信息,如文件标识信息、文件大小、文件中至少一个目标区域对应数据的标识信息,在用户数据中存储:文件标识、用户标识、上传时间等,将该用户数据和文件的存储信息建立映射关系,从而基于文件标识可查找到该文件,基于文件标识信息也可查找到对应的用户。
本申请一个可选实施例中,采用至少一个标识信息对应目标区域确定验证目标信息,包括:依据所述至少一个标识信息对应目标区域,确定偏移量和数据长度;采用所述偏 移量和数据长度生成验证目标信息。即可依据与待传输文件相匹配的已存文件,确定其计算有标识信息的各目标区域,从而中选取至少一个目标区域计算偏移量和数据长度,然后可采用偏移量和数据长度生成验证目标信息。
步骤612,发送所述验证目标信息。
可发送验证目标信息给服务器。
步骤614,接收验证信息。
终端设备依据验证目标信息生成验证信息,并返回验证信息给服务器。其中,验证信息包括通道标识和至少一个目标区域对应数据的标识信息。
步骤616,从所述验证信息中获取目标区域对应数据的标识信息。
步骤618,判断所述待传输文件的标识信息,与对应已存文件的标识信息是否匹配。
从所述验证信息中获取通道标识和目标区域对应数据的标识信息,然后采用依据所述传输通道标识和所述目标区域对应数据的消息摘要进行待传输文件可信度的检验,若两者均通过校验确认可信,否则不可信。
可判断所述待传输文件的标识信息,与对应已存文件的标识信息是否匹配;若是,即标识信息匹配,执行步骤620;若否,即标识信息不匹配,可结束该流程,或者执行步骤606,指示终端设备上传对应文件。
一个可选实施例中,即依据所述通道标识判断对应的传输通道是否有效;在判断传输通道有效后,执行发送所述验证信息的步骤。即依据该通道标识判断对应的传输通道是否有效,例如依据创建时间、过期时间判断是否在有效时间内,又如依据签名数据判断是否是正确的等。并且还可基于通道标识判断是否出现重放攻击,从而判断传输通道的有效性,即一个有效的通道标识(如sessionId)在被使用后,会在服务端被标记为已使用,从而再遇到相同的通道标识后,服务端会拒绝这个请求,防止由于验证信息在发送过程中被截取到而导致出现重放攻击。若传输通道无效则可忽略该消息;若传输通道有效则可进行后续的步骤。
步骤620,为所述待传输文件分配文件标识,并将所述文件标识和所述已存文件对应存储记录建立关联关系。
步骤622,采用所述存储记录中的文件地址和/或所述文件标识,生成所述待传输文件的存储信息。
步骤624,发送所述存储信息。
在确认待传输文件可信,即通道标识有效,且标识信息匹配后,可依据对应相同的 已存文件生成一个新的文件标识,将该文件标识分配给所述待传输文件,并将文件标识和所述已存文件对应存储记录建立关联关系,即该存储记录对应关联了终端设备要上传文件的文件标识。从而可从所述存储记录中获取文件地址,和/或,获取该文件标识,采用文件地址和/或所述文件标识,生成所述待传输文件的存储信息返回该存储信息给终端设备,以告知终端设备文件上传成功,完成秒传功能。
本申请实施例中,消息摘要包括以下至少一种:md5值、SHA值、base64值。其中,SHA值包括sha1,sha125,sha256,sha512等SHA家族的消息摘要。
因此一个可选实施例中,在查询阶段可在文件信息中携带待传输文件计算的至少一种的消息摘要,来进行待传输文件对应存储状态的判断。即在查询阶段文件信息可为md5值等消息摘要和文件大小的组合,也可为两种或以上的消息摘要的组合,如md5值和sha1值等散列函数的组合。并且,对于验证信息,可计算待传输文件中一个目标区域对应数据的消息摘要如md5值,也可以计算多个不连续的目标区域对应数据的消息摘要。
综上,本申请实施例可采用消息摘要、文件大小等多种因素来唯一确定一个文件,从而查询服务器中是否存储有对应文件。在此基础上,大大降低了攻击者伪造信息窃取文件的几率。
其次,在秒传阶段,通过文件中,目标区域的消息摘要作为判断客户端拥有该文件的判断标准之一,防止了在客户端没有文件的情况下为其提供秒传功能,即客户端在没有文件的情况下无法秒传文件,提高数据的安全性。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。
本申请实施例还提供了一种文件传输装置,应用于服务器。
参照图7,示出了本申请一种文件传输装置实施例的结构框图,具体可以包括如下模块:
目标发送模块702,用于依据已存文件确定待传输文件的验证目标信息,并发送所述验证目标信息,其中,所述待传输文件与已存文件匹配。
获取模块704,用于从接收的验证信息中获取所述待传输文件中的至少一个标识信息,所述标识信息依据所述验证目标信息确定。
判断模块706,用于判断所述待传输文件的标识信息,与对应已存文件的标识信息是否匹配。
存储发送模块708,用于在确认标识信息匹配后,发送所述待传输文件的信息。
综上,服务器确认待传输文件与已存文件匹配后,可依据已存文件确定待传输文件的验证目标信息,从而终端设备可基于验证目标信息计算,待传输文件中至少一个目标数据的标识信息,服务器再判断所述待传输文件的标识信息,与对应已存文件的标识信息是否匹配,在确认标识信息匹配后确认终端设备中存储有该待传输文件,因此可发送所述待传输文件的信息,从而通过验证信息保证文件在服务器和客户端均存在,防止伪造信息窃取文件的问题,保证信息的安全。
其中,所述标识信息包括:消息摘要。所述消息摘要包括以下至少一种:消息摘要算法第五版md5值、安全哈希算法SHA值、base64值。
所述目标发送模块702,用于依据所述已存文件对应的标识信息,采用至少一个标识信息对应目标区域确定验证目标信息。
所述目标发送模块702,用于依据所述至少一个标识信息对应目标区域,确定偏移量和数据长度;采用所述偏移量和数据长度生成验证目标信息。
其中,所述标识信息依据所述待传输文件中目标区域的数据生成。若所述标识信息多于一个,则各标识信息依据所述待传输文件中非连续的目标区域对应数据计算确定。
所述目标发送模块702,还用于获取传输通道的通道标识,在所述验证目标信息中添加所述传输通道的通道标识。
所述判断模块706,还用于依据所述通道标识,判断是否所述传输通道是否有效;若所述传输通道有效,执行所述标识信息的匹配判断。
其中,所述获取模块704,还用于接收所述待传输文件的文件信息,从所述文件信息中获取至少一个文件标识信息;所述判断模块706,还用于判断所述待传输文件的文件标识信息,与已存文件的文件标识信息是否匹配;若文件标识信息匹配,则确认所述待传输文件和所述已存文件匹配。
所述文件信息还包括:所述待传输文件的文件大小;所述判断模块706,还用于判断所述待传输文件的文件大小,与文件标识信息匹配的已存文件的文件大小是否相匹配;若文件大小相匹配,则确认所述待传输文件和所述已存文件匹配。
所述待传输文件的信息包括所述待传输文件的存储信息,所述存储发送模块708,还用于为所述待传输文件分配文件标识,并将所述文件标识和所述已存文件对应存储记 录建立关联关系;采用所述存储记录中的文件地址和/或所述文件标识,生成所述待传输文件的存储信息
本申请实施例还提供了一种文件传输装置,应用于终端设备。
参照图8,示出了本申请另一种文件传输装置实施例的结构框图,具体可以包括如下模块:
接收模块802,用于接收验证目标信息,其中,所述验证目标信息是依据与待传输文件匹配的已存文件生成的;以及,接收所述待传输文件的信息。
验证信息确定模块804,用于依据所述验证目标信息确定所述待传输文件的至少一个标识信息,依据所述标识信息生成验证信息。
发送模块806,用于发送所述验证信息。
综上,服务器确认待传输文件与已存文件匹配后,可依据已存文件确定待传输文件的验证目标信息,从而终端设备可基于验证目标信息计算,待传输文件中至少一个目标数据的标识信息,服务器再判断所述待传输文件的标识信息,与对应已存文件的标识信息是否匹配,在确认标识信息匹配后确认终端设备中存储有该待传输文件,因此可生成所述待传输文件的存储信息,从而通过验证信息保证文件在服务器和客户端均存在,防止伪造信息窃取文件的问题,保证信息的安全。
参照图9,示出了本申请另一种文件传输装置可选实施例的结构框图。
其中,所述标识信息包括:消息摘要。所述消息摘要包括以下至少一种:消息摘要算法第五版md5值、安全哈希算法SHA值、base64值。
验证信息确定模块804,包括:区域确定子模块8042和计算子模块8044。
区域确定子模块8042,用于依据所述验证目标信息,确定所述待传输文件对应至少一个目标区域。
计算子模块8044,用于计算所述目标区域对应数据的标识信息。
所述区域确定子模块8044,用于从验证目标信息中获取至少一个数据长度和至少一个偏移量;依据所述偏移量和数据长度,从所述待传输文件中确定目标区域。
所述验证目标信息包括:通道标识;所述验证信息确定模块804,还用于依据所述通道标识,判断对应的传输通道是否有效;在确认传输通道有效后,执行所述验证信息的发送。
其中,若所述验证信息包括多于一个标识信息,则各标识信息依据所述待传输文件中非连续的目标区域对应数据计算确定。
所述的装置还包括:
文件信息确定模块808,用于生成所述待传输文件的文件信息,并发送待传输文件的文件信息,其中,所述文件信息用于确定与所述待传输文件匹配的已存文件。
所述文件信息确定模块808,用于计算所述待传输文件的至少一个文件标识信息,将所述待传输文件的至少一种文件标识信息作为文件信息。
所述文件信息确定模块808,还用于获取所述待传输文件的文件大小,在所述文件信息中添加所述待传输文件的文件大小。
本申请实施例中,消息摘要包括以下至少一种:md5值、SHA值、base64值。其中,SHA值包括sha1,sha125,sha256,sha512等SHA家族的消息摘要。
因此一个可选实施例中,在查询阶段可在文件信息中携带待传输文件计算的两种或以上的消息摘要,来进行待传输文件对应存储状态的判断。即在查询阶段文件信息可为md5值等消息摘要和文件大小的组合,也可为两种或以上的消息摘要的组合,如md5值和sha1值其他散列函数的组合。并且,对于第二验证信息,可计算待传输文件中1个目标区域对应数据的消息摘要如md5值,也可以计算多个不连续的目标区域对应数据的消息摘要。
综上,本申请实施例可采用消息摘要、文件大小等多种因素来唯一确定一个文件,从而查询服务器中是否存储有对应文件。在此基础上,大大降低了攻击者伪造信息窃取文件的几率。
其次,在秒传阶段,通过文件中,目标区域的消息摘要作为判断客户端拥有该文件的判断标准之一,防止了在客户端没有文件的情况下为其提供秒传功能,即客户端在没有文件的情况下无法秒传文件,提高数据的安全性。
本申请实施例还提供了一种非易失性可读存储介质,该存储介质中存储有一个或多个模块(programs),该一个或多个模块被应用在终端设备时,可以使得该终端设备执行本申请实施例中各方法步骤的指令(instructions)。
一个可选实施例中,包括:一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得终端设备执行本申请实施例中一个或多个所述的文件传输方法。
另一个可选实施例中,包括:一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得服务器执行本申请实施例中一个或多个所述的文件传输方法。
图10为本申请一实施例提供的设备的硬件结构示意图。该设备可包括服务器、终端设备、温度控制设备等各种设备。如图10所示,该终端设备可以包括输入设备100、处理器101、输出设备102、存储器103和至少一个通信总线104。通信总线104用于实现元件之间的通信连接。存储器103可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器,存储器103中可以存储各种程序,用于完成各种处理功能以及实现本实施例的方法步骤。
可选的,上述处理器101例如可以为中央处理器(Central Processing Unit,简称CPU)、应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,该处理器101通过有线或无线连接耦合到上述输入设备100和输出设备102。
可选的,上述输入设备100可以包括多种输入设备,例如可以包括面向用户的用户接口、面向设备的设备接口、软件的可编程接口、摄像头、传感器中至少一种。可选的,该面向设备的设备接口可以是用于设备与设备之间进行数据传输的有线接口、还可以是用于设备与设备之间进行数据传输的硬件插入接口(例如USB接口、串口等);可选的,该面向用户的用户接口例如可以是面向用户的控制按键、用于接收语音输入的语音输入设备以及用户接收用户触摸输入的触摸感知设备(例如具有触摸感应功能的触摸屏、触控板等);可选的,上述软件的可编程接口例如可以是供用户编辑或者修改程序的入口,例如芯片的输入引脚接口或者输入接口等;可选的,上述收发信机可以是具有通信功能的射频收发芯片、基带处理芯片以及收发天线等。麦克风等音频输入设备可以接收语音数据。输出设备102可以包括显示器、音响等输出设备。
在本实施例中,该终端设备的处理器包括用于执行各设备中数据处理装置各模块的功能,具体功能和技术效果参照上述实施例即可,此处不再赘述。
图11为本申请另一实施例提供的终端设备的硬件结构示意图。图11是对图10在实现过程中的一个具体的实施例。如图11所示,本实施例的终端设备包括处理器111以及存储器112。
处理器111执行存储器112所存放的计算机程序代码,实现上述实施例中图1至图6的文件传输方法。
存储器112被配置为存储各种类型的数据以支持在终端设备的操作。这些数据的示例包括用于在终端设备上操作的任何应用程序或方法的指令,例如消息,图片,视频等。 存储器112可能包含随机存取存储器(random access memory,简称RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
可选地,处理器111设置在处理组件110中。该终端设备还可以包括:通信组件113,电源组件114,多媒体组件115,音频组件116,输入/输出接口117和/或传感器组件118。终端设备具体所包含的组件等依据实际需求设定,本实施例对此不作限定。
处理组件110通常控制终端设备的整体操作。处理组件110可以包括一个或多个处理器111来执行指令,以完成上述图1至图6方法的全部或部分步骤。此外,处理组件110可以包括一个或多个模块,便于处理组件110和其他组件之间的交互。例如,处理组件110可以包括多媒体模块,以方便多媒体组件115和处理组件110之间的交互。
电源组件114为终端设备的各种组件提供电力。电源组件114可以包括电源管理系统,一个或多个电源,及其他与为终端设备生成、管理和分配电力相关联的组件。
多媒体组件115包括在终端设备和用户之间的提供一个输出接口的显示屏。在一些实施例中,显示屏可以包括液晶显示器(LCD)和触摸面板(TP)。如果显示屏包括触摸面板,显示屏可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。
音频组件116被配置为输出和/或输入音频信号。例如,音频组件116包括一个麦克风(MIC),当终端设备处于操作模式,如语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器112或经由通信组件113发送。在一些实施例中,音频组件116还包括一个扬声器,用于输出音频信号。
输入/输出接口117为处理组件110和外围接口模块之间提供接口,上述外围接口模块可以是点击轮,按钮等。这些按钮可包括但不限于:音量按钮、启动按钮和锁定按钮。
传感器组件118包括一个或多个传感器,用于为终端设备提供各个方面的状态评估。例如,传感器组件118可以检测到终端设备的打开/关闭状态,组件的相对定位,用户与终端设备接触的存在或不存在。传感器组件118可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在,包括检测用户与终端设备间的距离。在一些实施例中,该传感器组件118还可以包括摄像头等。
通信组件113被配置为便于终端设备和其他设备之间有线或无线方式的通信。终端设备可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个实施例中,该终端设备中可以包括SIM卡插槽,该SIM卡插槽用于插入SIM卡,使得终 端设备可以登录GPRS网络,通过互联网与服务器建立通信。
由上可知,在图11实施例中所涉及的通信组件113、音频组件116以及输入/输出接口117、传感器组件118均可以作为图10实施例中的输入设备的实现方式。
在本实施例的一种终端设备中,包括:一个或多个处理器;和,其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述终端设备执行如本申请实施例中一个或多个所述的方法。
在本实施例的一种服务器中,包括:一个或多个处理器;和,其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述服务器执行如本申请实施例中一个或多个所述的方法。
本申请实施例还提供一种用于终端设备的操作系统,如图12所示,该设备的操作系统包括:接收单元1202、验证单元1204和通信单元1206。
接收单元1202,接收验证目标信息,其中,所述验证目标信息是依据与待传输文件匹配的已存文件生成的;及接收所述待传输文件的信息。
验证单元1204,依据所述验证目标信息确定所述待传输文件的至少一个标识信息,依据所述标识信息生成验证信息。
通信单元1006,发送所述验证信息。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方 框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的一种文件传输方法、一种文件传输装置、一种终端设备、一种存储介质、一种操作系统,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (33)
- 一种文件传输方法,其特征在于,包括:依据已存文件确定待传输文件的验证目标信息,并发送所述验证目标信息,其中,所述待传输文件与已存文件匹配;从接收的验证信息中获取所述待传输文件中的至少一个标识信息,所述标识信息依据所述验证目标信息确定;判断所述待传输文件的标识信息,与对应已存文件的标识信息是否匹配;在确认标识信息匹配后,发送所述待传输文件的信息。
- 根据权利要求1所述的方法,其特征在于,所述标识信息包括:消息摘要。
- 根据权利要求2所述的方法,其特征在于,所述消息摘要包括以下至少一种:消息摘要算法第五版md5值、安全哈希算法SHA值、base64值。
- 根据权利要求1所述的方法,其特征在于,所述依据已存文件确定待传输文件的验证目标信息,包括:依据所述已存文件对应的标识信息,采用至少一个标识信息对应目标区域确定验证目标信息。
- 根据权利要求1所述的方法,其特征在于,采用至少一个标识信息对应目标区域确定验证目标信息,包括:依据所述至少一个标识信息对应目标区域,确定偏移量和数据长度;采用所述偏移量和数据长度生成验证目标信息。
- 根据权利要求4或5所述的方法,其特征在于,所述标识信息依据所述待传输文件中目标区域的数据生成。
- 根据权利要求6所述的方法,其特征在于,若所述标识信息多于一个,则各标识信息依据所述待传输文件中非连续的目标区域对应数据计算确定。
- 根据权利要求1所述的方法,其特征在于,还包括:获取传输通道的通道标识,在所述验证目标信息中添加所述传输通道的通道标识。
- 根据权利要求8所述的方法,其特征在于,还包括:依据所述通道标识,判断是否所述传输通道是否有效;若所述传输通道有效,执行所述标识信息的匹配判断步骤。
- 根据权利要求1所述的方法,其特征在于,还包括:接收所述待传输文件的文件信息,从所述文件信息中获取至少一个文件标识信息;判断所述待传输文件的文件标识信息,与已存文件的文件标识信息是否匹配;若文件标识信息匹配,则确认所述待传输文件和所述已存文件匹配。
- 根据权利要求10所述的方法,其特征在于,所述文件信息还包括:所述待传输文件的文件大小;所述判断文件标识信息匹配之后,还包括:判断所述待传输文件的文件大小,与文件标识信息匹配的已存文件的文件大小是否相匹配;若文件大小相匹配,则确认所述待传输文件和所述已存文件匹配。
- 根据权利要求1所述的方法,其特征在于,所述待传输文件的信息包括:所述待传输文件的存储信息,所述的方法还包括:为所述待传输文件分配文件标识,并将所述文件标识和所述已存文件对应存储记录建立关联关系;采用所述存储记录中的文件地址和/或所述文件标识,生成所述待传输文件的存储信息。
- 一种文件传输方法,其特征在于,包括:接收验证目标信息,其中,所述验证目标信息是依据与待传输文件匹配的已存文件生成的;依据所述验证目标信息确定所述待传输文件的至少一个标识信息,依据所述标识信息生成验证信息;发送所述验证信息;接收所述待传输文件的信息。
- 根据权利要求13所述的方法,其特征在于,所述标识信息包括:消息摘要。
- 根据权利要求14所述的方法,其特征在于,所述消息摘要包括以下至少一种:消息摘要算法第五版md5值、安全哈希算法SHA值、base64值。
- 根据权利要求13所述的方法,其特征在于,所述依据所述验证目标信息确定所述待传输文件的至少一个标识信息,包括:依据所述验证目标信息,确定所述待传输文件对应至少一个目标区域;计算所述目标区域对应数据的标识信息。
- 根据权利要求16所述的方法,其特征在于,依据所述验证目标信息,确定所述待传输文件对应至少一个目标区域,包括:从验证目标信息中获取至少一个数据长度和至少一个偏移量;依据所述偏移量和数据长度,从所述待传输文件中确定目标区域。
- 根据权利要求13所述的方法,其特征在于,所述验证目标信息包括:通道标识;所述的方法还包括:依据所述通道标识,判断对应的传输通道是否有效;在确认传输通道有效后,执行发送所述验证信息的步骤。
- 根据权利要求16或17所述的方法,其特征在于,若所述验证信息包括多于一个标识信息,则各标识信息依据所述待传输文件中非连续的目标区域对应数据计算确定。
- 根据权利要求13所述的方法,其特征在于,还包括:生成所述待传输文件的文件信息,并发送待传输文件的文件信息,其中,所述文件信息用于确定与所述待传输文件匹配的已存文件。
- 根据权利要求20所述的方法,其特征在于,所述生成所述待传输文件的文件信息,包括:计算所述待传输文件的至少一个文件标识信息,将所述待传输文件的至少一种文件标识信息作为文件信息。
- 根据权利要求21所述的方法,其特征在于,还包括:获取所述待传输文件的文件大小,在所述文件信息中添加所述待传输文件的文件大小。
- 一种文件传输装置,其特征在于,包括:目标发送模块,用于依据已存文件确定待传输文件的验证目标信息,并发送所述验证目标信息,其中,所述待传输文件与已存文件匹配;获取模块,用于从接收的验证信息中获取所述待传输文件中的至少一个标识信息,所述标识信息依据所述验证目标信息确定;判断模块,用于判断所述待传输文件的标识信息,与对应已存文件的标识信息是否匹配;存储发送模块,用于在确认标识信息匹配后,发送所述待传输文件的信息。
- 根据权利要求23所述的装置,其特征在于,所述标识信息包括:消息摘要。
- 根据权利要求23所述的装置,其特征在于,所述获取模块,还用于接收所述待传输文件的文件信息,从所述文件信息中获取至少一个文件标识信息;所述判断模块,还用于判断所述待传输文件的文件标识信息,与已存文件的文件标识信息是否匹配;若文件标识信息匹配,则确认所述待传输文件和所述已存文件匹配。
- 一种文件传输装置,其特征在于,包括:接收模块,用于接收验证目标信息,其中,所述验证目标信息是依据与待传输文件匹配的已存文件生成的;以及,接收所述待传输文件的信息;验证信息确定模块,用于依据所述验证目标信息确定所述待传输文件的至少一个标识信息,依据所述标识信息生成验证信息;发送模块,用于发送所述验证信息。
- 根据权利要求26所述的装置,其特征在于,所述标识信息包括:消息摘要。
- 根据权利要求26所述的装置,其特征在于,还包括:文件信息确定模块,用于生成所述待传输文件的文件信息,并发送待传输文件的文件信息,其中,所述文件信息用于确定与所述待传输文件匹配的已存文件。
- 一种服务器,其特征在于,包括:一个或多个处理器;和其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述服务器执行如权利要求1-12中一个或多个所述的方法。
- 一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得服务器执行如权利要求1-12中一个或多个所述的方法。
- 一种终端设备,其特征在于,包括:一个或多个处理器;和其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述终端设备执行如权利要求13-22中一个或多个所述的方法。
- 一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得终端设备执行如权利要求13-22中一个或多个所述的方法。
- 一种用于终端设备的操作系统,其特征在于,包括:接收单元,接收验证目标信息,其中,所述验证目标信息是依据与待传输文件匹配的已存文件生成的;及接收所述待传输文件的信息;验证单元,依据所述验证目标信息确定所述待传输文件的至少一个标识信息,依据所述标识信息生成验证信息;通信单元,发送所述验证信息。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201710628723.XA CN109309651B (zh) | 2017-07-28 | 2017-07-28 | 一种文件传输方法、装置、设备和存储介质 |
| CN201710628723.X | 2017-07-28 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2019019936A1 true WO2019019936A1 (zh) | 2019-01-31 |
Family
ID=65041045
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2018/095873 Ceased WO2019019936A1 (zh) | 2017-07-28 | 2018-07-17 | 一种文件传输方法、装置、设备和存储介质 |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN109309651B (zh) |
| WO (1) | WO2019019936A1 (zh) |
Cited By (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112464264A (zh) * | 2020-12-04 | 2021-03-09 | 深信服科技股份有限公司 | 一种信息传输方法、系统及计算机可读存储介质 |
| CN112769883A (zh) * | 2019-11-01 | 2021-05-07 | 科美诊断技术股份有限公司 | 一种耗材数据的上传方法及装置 |
| CN112804312A (zh) * | 2020-12-31 | 2021-05-14 | 上海掌门科技有限公司 | 文件上传方法、设备以及计算机可读介质 |
| CN112988427A (zh) * | 2021-04-14 | 2021-06-18 | 深圳证券交易所 | 数据交换方法、设备及介质 |
| CN113132462A (zh) * | 2021-03-15 | 2021-07-16 | 深圳震有科技股份有限公司 | 一种5g虚拟化网元的文件数据传输方法、系统及终端设备 |
| CN113467825A (zh) * | 2021-06-30 | 2021-10-01 | 完美世界(北京)软件科技发展有限公司 | Ipa数据展示系统及其方法、装置、设备及计算机可读介质 |
| CN114615259A (zh) * | 2022-04-07 | 2022-06-10 | 百富计算机技术(深圳)有限公司 | 文件传输方法、装置及终端设备 |
| CN115396423A (zh) * | 2022-07-29 | 2022-11-25 | 五八同城信息技术有限公司 | 文件传输方法、装置、电子设备及存储介质 |
| CN120602476A (zh) * | 2025-08-05 | 2025-09-05 | 海马云(天津)信息技术有限公司 | 远程文件快速同步方法与装置 |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN111368341A (zh) * | 2020-03-07 | 2020-07-03 | 郑州美林通科技股份有限公司 | 电子阅卷自助服务方法与系统 |
| CN113971289B (zh) | 2020-07-08 | 2025-09-30 | 蚂蚁区块链科技(上海)有限公司 | 区块链一体机的可信启动方法及装置 |
| CN112491812B (zh) * | 2020-07-08 | 2022-03-01 | 支付宝(杭州)信息技术有限公司 | 区块链一体机的哈希更新方法及装置 |
| CN112738249B (zh) * | 2020-12-30 | 2023-11-21 | 平安证券股份有限公司 | 基于量化交易的文件上传方法、装置、设备及存储介质 |
| CN114172890B (zh) * | 2021-11-03 | 2024-02-27 | 阿里巴巴(中国)有限公司 | 文件秒传处理方法、装置、存储介质及电子设备 |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20060101220A1 (en) * | 2004-11-08 | 2006-05-11 | Cohn Jeremy A | Apparatus and method to validate the configuration of an information storage and retrieval system |
| CN103269302A (zh) * | 2012-12-07 | 2013-08-28 | 北京奇虎科技有限公司 | 用于即时通信的共享文件管理方法和系统 |
| CN104602102A (zh) * | 2014-07-24 | 2015-05-06 | 腾讯科技(北京)有限公司 | 视频截取内容的传输响应方法、装置、服务器和系统 |
Family Cites Families (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3865775B2 (ja) * | 1995-04-11 | 2007-01-10 | キネテック インコーポレイテッド | データ処理システムにおけるデータの識別 |
| JP4765482B2 (ja) * | 2005-08-25 | 2011-09-07 | 富士ゼロックス株式会社 | 文書管理システム、文書管理プログラム及び文書管理方法 |
| CN101202624B (zh) * | 2007-12-24 | 2010-10-13 | 北京创毅视讯科技有限公司 | 一种文件传输的方法及系统 |
| CN101882216B (zh) * | 2009-05-08 | 2012-11-21 | 成都市华为赛门铁克科技有限公司 | 构建数据指纹的方法、装置及电子设备 |
| CN102325016A (zh) * | 2011-10-18 | 2012-01-18 | 深圳市融创天下科技股份有限公司 | 一种建立数据通道的请求和应答方法、系统和终端设备 |
| CN102684827B (zh) * | 2012-03-02 | 2015-07-29 | 华为技术有限公司 | 数据处理方法及数据处理设备 |
| CN104410692B (zh) * | 2014-11-28 | 2019-03-22 | 上海爱数信息技术股份有限公司 | 一种用于重复文件上传的方法和系统 |
| CN104980482B (zh) * | 2014-12-24 | 2019-09-13 | 深圳市腾讯计算机系统有限公司 | 文件发送方法及装置、文件接收方法及装置 |
| CN104883385B (zh) * | 2015-03-31 | 2019-02-12 | 小米科技有限责任公司 | 富媒体文件传输方法及装置 |
| CN104935650B (zh) * | 2015-06-03 | 2019-01-04 | 南京传唱软件科技有限公司 | 文件传输方法、系统及装置 |
| CN106603614A (zh) * | 2015-10-20 | 2017-04-26 | 北京国双科技有限公司 | 文件传输方法和装置 |
| CN106101291A (zh) * | 2016-08-26 | 2016-11-09 | 苏州蓝海彤翔系统科技有限公司 | 一种传输文件的方法、系统、服务器及客户端 |
-
2017
- 2017-07-28 CN CN201710628723.XA patent/CN109309651B/zh not_active Expired - Fee Related
-
2018
- 2018-07-17 WO PCT/CN2018/095873 patent/WO2019019936A1/zh not_active Ceased
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20060101220A1 (en) * | 2004-11-08 | 2006-05-11 | Cohn Jeremy A | Apparatus and method to validate the configuration of an information storage and retrieval system |
| CN103269302A (zh) * | 2012-12-07 | 2013-08-28 | 北京奇虎科技有限公司 | 用于即时通信的共享文件管理方法和系统 |
| CN104602102A (zh) * | 2014-07-24 | 2015-05-06 | 腾讯科技(北京)有限公司 | 视频截取内容的传输响应方法、装置、服务器和系统 |
Cited By (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112769883A (zh) * | 2019-11-01 | 2021-05-07 | 科美诊断技术股份有限公司 | 一种耗材数据的上传方法及装置 |
| CN112464264A (zh) * | 2020-12-04 | 2021-03-09 | 深信服科技股份有限公司 | 一种信息传输方法、系统及计算机可读存储介质 |
| CN112464264B (zh) * | 2020-12-04 | 2023-12-29 | 深信服科技股份有限公司 | 一种信息传输方法、系统及计算机可读存储介质 |
| CN112804312B (zh) * | 2020-12-31 | 2023-06-30 | 上海掌门科技有限公司 | 文件上传方法、设备以及计算机可读介质 |
| CN112804312A (zh) * | 2020-12-31 | 2021-05-14 | 上海掌门科技有限公司 | 文件上传方法、设备以及计算机可读介质 |
| CN113132462A (zh) * | 2021-03-15 | 2021-07-16 | 深圳震有科技股份有限公司 | 一种5g虚拟化网元的文件数据传输方法、系统及终端设备 |
| CN112988427A (zh) * | 2021-04-14 | 2021-06-18 | 深圳证券交易所 | 数据交换方法、设备及介质 |
| CN112988427B (zh) * | 2021-04-14 | 2024-03-01 | 深圳证券交易所 | 数据交换方法、设备及介质 |
| WO2023273116A1 (zh) * | 2021-06-30 | 2023-01-05 | 完美世界(北京)软件科技发展有限公司 | Ipa数据展示系统及其方法、装置、设备及计算机可读介质 |
| CN113467825A (zh) * | 2021-06-30 | 2021-10-01 | 完美世界(北京)软件科技发展有限公司 | Ipa数据展示系统及其方法、装置、设备及计算机可读介质 |
| CN114615259A (zh) * | 2022-04-07 | 2022-06-10 | 百富计算机技术(深圳)有限公司 | 文件传输方法、装置及终端设备 |
| CN115396423A (zh) * | 2022-07-29 | 2022-11-25 | 五八同城信息技术有限公司 | 文件传输方法、装置、电子设备及存储介质 |
| CN120602476A (zh) * | 2025-08-05 | 2025-09-05 | 海马云(天津)信息技术有限公司 | 远程文件快速同步方法与装置 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN109309651A (zh) | 2019-02-05 |
| CN109309651B (zh) | 2021-12-28 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2019019936A1 (zh) | 一种文件传输方法、装置、设备和存储介质 | |
| US11055392B2 (en) | Proximity unlock and lock operations for electronic devices | |
| JP6374010B2 (ja) | 情報交信方法、装置および電子機器 | |
| US10200257B2 (en) | Indirect device communication | |
| US9563764B2 (en) | Method and apparatus for performing authentication between applications | |
| WO2018177124A1 (zh) | 业务处理方法、装置、数据共享系统及存储介质 | |
| CN104125067B (zh) | 绑定账号与令牌密钥的方法、装置 | |
| WO2018214777A1 (zh) | 一种数据通信方法、装置、设备和存储介质 | |
| WO2017041599A1 (zh) | 业务处理方法及电子设备 | |
| WO2017177383A1 (zh) | 一种远程管理方法及设备 | |
| US10439809B2 (en) | Method and apparatus for managing application identifier | |
| CN103914520B (zh) | 数据查询方法、终端设备和服务器 | |
| WO2014111022A1 (zh) | 一种移动终端用户信息的显示方法、移动终端和服务系统 | |
| CN108234124B (zh) | 身份验证方法、装置与系统 | |
| WO2017206524A1 (zh) | 电子设备控制方法、终端和控制系统 | |
| CN104994098A (zh) | 文件传输方法以及相关装置和传输系统 | |
| CN106713127B (zh) | 即时聊天记录的获取及处理方法和装置 | |
| WO2015085664A1 (zh) | 一种同步方法及终端、服务器 | |
| WO2016011739A1 (zh) | 防伪验证方法、装置和系统 | |
| CN111431724B (zh) | 数据传输方法、装置及电子设备 | |
| CN109995821A (zh) | 文件上传的方法及系统、客户端、服务器、对象存储系统 | |
| CN106878324A (zh) | 短信认证方法、短信认证服务器及终端 | |
| CN108696361B (zh) | 智能卡的配置方法、生成方法及装置 | |
| CN108702606A (zh) | 一种无线通信的握手方法及设备 | |
| US9667424B2 (en) | Methods and apparatuses for binding token key to account |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 18837303 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 18837303 Country of ref document: EP Kind code of ref document: A1 |