A data processing method, apparatus, device, and medium

CN116992417BActive Publication Date: 2026-10-27SHANDONG NUCLEAR POWER CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202311106921.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-08-30
Publication Date
2026-10-27
Estimated Expiration
2043-08-30

AI Technical Summary

Technical Problem

[0003]目前的人力资源管理方法中,用户登录后即可查看上传的关键岗位人员信息及相关其资料,存在信息易泄露,信息安全性较差的缺陷

Benefits of technology

[0019]本发明实施例通过获取待上传数据和待上传数据所属用户的当前登录信息;查询用户的历史登录信息;其中,历史登录信息对应的登录时间在当前登录信息对应的登录时间之前;根据历史登录信息和当前登录信息,确定待上传数据的目标加密算法以及加密密钥;采用目标加密算法和加密算法对待上传数据进行加密,得到目标数据。本发明实施例的技术方案,根据用户的历史登录信息和当前登录信息确定待上传数据的加密算法和加密密钥,以对待上传数据进行加密,相较于现有技术中采用固定密钥和固定算法进行加密的方法,提高了待上传数据的加密的灵活性和多样性,提高了待上传数据的破解难度,进而提高了待上传数据的安全性。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116992417B_ABST
    Figure CN116992417B_ABST
Patent Text Reader

Abstract

The application discloses a data processing method and device, equipment and medium, and relates to the technical field of human resource management. The method comprises the following steps: acquiring to-be-uploaded data and current login information of a user to whom the to-be-uploaded data belongs; querying historical login information of the user; wherein the login time corresponding to the historical login information is before the login time corresponding to the current login information; determining a target encryption algorithm and an encryption key of the to-be-uploaded data according to the historical login information and the current login information; and encrypting the to-be-uploaded data by using the target encryption algorithm and the encryption algorithm to obtain target data. According to the technical scheme of the embodiment of the application, the encryption algorithm and the encryption key are determined according to the historical login information and the current login information of the user, so that the to-be-uploaded data is encrypted, the flexibility of the encryption of the to-be-uploaded data is improved, and the security of the to-be-uploaded data is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of human resource management technology, and in particular to a data processing method, apparatus, equipment and medium. Background Technology

[0002] Human resources determine a company's talent pool. Through human resource management, a large number of high-quality talents can be selected and provided to the company, ensuring its development and competitiveness in the industry.

[0003] Current human resource management methods allow users to view uploaded information on key personnel and related data after logging in, which has drawbacks such as easy information leakage and poor information security. Summary of the Invention

[0004] This invention provides a data processing method, apparatus, device, and medium to improve the security of data to be uploaded.

[0005] In a first aspect, the present invention provides a data processing method, comprising:

[0006] Retrieve the data to be uploaded and the current login information of the user to whom the data belongs;

[0007] Query a user's historical login information; the login time corresponding to the historical login information must be before the login time corresponding to the current login information.

[0008] Based on historical login information and current login information, determine the target encryption algorithm and encryption key for the data to be uploaded;

[0009] The target encryption algorithm and the encryption algorithm are used to encrypt the data to be uploaded to obtain the target data.

[0010] Secondly, the present invention also provides a data processing method apparatus, comprising:

[0011] The current information acquisition module is used to acquire the data to be uploaded and the current login information of the user to whom the data to be uploaded belongs;

[0012] The historical information query module is used to query a user's historical login information; the login time corresponding to the historical login information is before the login time corresponding to the current login information.

[0013] The key determination module is used to determine the target encryption algorithm and encryption key for the data to be uploaded based on historical login information and current login information.

[0014] A data encryption module is used to encrypt the data to be uploaded using a target encryption algorithm and an encryption algorithm to obtain the target data. Thirdly, embodiments of the present invention also provide an electronic device, including:

[0015] At least one processor; and

[0016] A memory that is communicatively connected to at least one processor; wherein

[0017] The memory stores instructions that can be executed by at least one processor, which enables the at least one processor to perform the data processing method provided in any embodiment of the present invention.

[0018] Fourthly, embodiments of the present invention also provide a computer-readable storage medium storing computer instructions that are used to cause a processor to execute and implement the data processing method of any embodiment of the present invention.

[0019] This invention provides an embodiment that obtains the data to be uploaded and the current login information of the user to whom the data belongs; queries the user's historical login information, wherein the login time corresponding to the historical login information is before the login time corresponding to the current login information; determines the target encryption algorithm and encryption key for the data to be uploaded based on the historical login information and the current login information; and encrypts the data to be uploaded using the target encryption algorithm and the encryption algorithm to obtain the target data. This technical solution, by determining the encryption algorithm and encryption key for the data to be uploaded based on the user's historical login information and current login information, and encrypting the data to be uploaded, improves the flexibility and diversity of encryption for the data to be uploaded compared to the existing method of using a fixed key and fixed algorithm, increases the difficulty of cracking the data to be uploaded, and thus improves the security of the data to be uploaded.

[0020] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of the present invention, nor is it intended to limit the scope of the invention. Other features of the invention will become readily apparent from the following description. Attached Figure Description

[0021] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0022] Figure 1 This is a flowchart of a data processing method provided according to Embodiment 1 of the present invention;

[0023] Figure 2 This is a flowchart of a data processing method provided according to Embodiment 2 of the present invention;

[0024] Figure 3AThis is a flowchart of a data processing method provided according to Embodiment 3 of the present invention;

[0025] Figure 3B This is a schematic diagram of the structure of a human resource management system according to Embodiment 3 of the present invention;

[0026] Figure 4 This is a schematic diagram of the structure of a data processing device according to Embodiment 4 of the present invention;

[0027] Figure 5 This is a schematic diagram of the structure of an electronic device that implements the data processing method of the present invention. Detailed Implementation

[0028] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.

[0029] It should be noted that the terms "first" and "second," etc., in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover a non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0030] The acquisition, storage, and application of current login information and other related information in the technical solutions of this invention comply with the provisions of relevant laws and regulations and do not violate public order and good morals.

[0031] Example 1

[0032] Figure 1 This is a flowchart of a data processing method provided in Embodiment 1 of the present invention. This embodiment is applicable to the case of data encryption. The method can be executed by a data processing method apparatus, which can be implemented in hardware and / or software and specifically configured in an electronic device, such as a server.

[0033] See Figure 1 The data processing method shown includes:

[0034] S101. Obtain the data to be uploaded and the current login information of the user to whom the data to be uploaded belongs.

[0035] In this embodiment, the data to be uploaded can be data to be uploaded to an information management platform for storage. The present invention does not limit the information management platform; for example, it can be a human resources management platform, a business management platform, or a project management platform. The current login information can be the user's current login information. Login information can be information associated with the user's login, such as, but not limited to, login time, login location, login device, and login method.

[0036] It should be noted that obtaining a user's current login information includes, after authorization by the user, obtaining the current login information of the user to whom the data to be uploaded belongs.

[0037] S102. Query the user's historical login information; wherein the login time corresponding to the historical login information is before the login time corresponding to the current login information.

[0038] In this embodiment, the historical login information can be the login time corresponding to the historical login information that is before the login time corresponding to the current login information. That is, the historical login information can be the login information of the user's last login when the current login is made.

[0039] In one specific implementation, when a user logs into the information management platform for the first time with a preset password, the platform can only respond to the user's password change request, allowing the user to modify the preset password. After the password is changed, the platform will log the user out. Subsequent logins with the modified password will allow the platform to respond to the user's data upload requests, meaning the login operation corresponding to the current login information is at least a second login.

[0040] S103. Based on historical login information and current login information, determine the target encryption algorithm and encryption key for the data to be uploaded.

[0041] In this embodiment, the target encryption algorithm can be the encryption algorithm used to encrypt the data to be uploaded. The encryption key can be the key used when encrypting the data to be uploaded. Specifically, a certain algorithm is used to determine the target encryption algorithm and encryption key for the data to be uploaded based on historical login information and current login information.

[0042] S104. Use the target encryption algorithm and the encryption algorithm to encrypt the data to be uploaded to obtain the target data.

[0043] In this embodiment, the target data is the data obtained after encrypting the data to be uploaded. In one specific embodiment, after obtaining the target data, the target data is uploaded to the information management platform.

[0044] Optionally, after obtaining the target data, the process may also include: obtaining the block identifier of the user login information block from the blockchain; generating a user data block based on the block identifier of the user login information block and the target data, and adding it to the blockchain.

[0045] Here, the blockchain can be the blockchain belonging to the information management platform. The user login information block can be a block in the blockchain that records the user's current login information. The user data block can be a block that records the target data. Specifically, the target data is stored in the block body of the user data block; the block identifier of the user data block is generated based on the user login information block identifier and the target data, thus obtaining the complete user data block.

[0046] In one optional embodiment, the block identifier can be a hash value. That is, the block identifier hash value of the user login information block is obtained, and the block identifier hash value and the target data are merged to obtain merged data; a hash operation is performed on the merged data, and the resulting hash value is used as the block identifier of the user data block.

[0047] It is understandable that by adopting the above technical solution, a user data block is generated based on the block identifier of the user login information block and the target data, and added to the blockchain to store the target data in the data block. Furthermore, the user data block is connected after the user login information block, which can improve the anti-tampering capability of the target data and enhance the security of the target data.

[0048] In one optional embodiment, the block identifier of the user data block and the storage location of the target data in the information management platform are obtained; an index relationship between the block identifier of the user data block and the storage location of the target data in the information management platform is established. Further, it is verified whether a user login information block exists before each user data block; if it exists, the verification passes; otherwise, the verification fails. The user data blocks that fail verification are designated as illegal user data blocks, and based on the block identifier of the illegal user data block and the index relationship between the block identifier of the user data block and the storage location of the target data in the information management platform, the storage location of the illegal data corresponding to the illegal user data block in the information management platform is determined, prompting administrators to delete the illegal data at that storage location.

[0049] In an optional embodiment, the target data can be decrypted to obtain the data to be uploaded. This decryption operation includes: obtaining the upload time of the target data and the user who uploaded the target data; querying all login information of the uploading user; determining, based on the upload time of the target data, the login information whose corresponding login time is before the upload time of the target data and is closest to the upload time as the current login information at the time of target data upload; determining, based on the historical login information at the time of target data upload, the target encryption algorithm and encryption key used to generate the target data; and decrypting the target data using the decryption algorithm and encryption algorithm corresponding to the target encryption algorithm to obtain the data to be uploaded.

[0050] This invention provides an embodiment that obtains the data to be uploaded and the current login information of the user to whom the data belongs; queries the user's historical login information, wherein the login time corresponding to the historical login information is before the login time corresponding to the current login information; determines the target encryption algorithm and encryption key for the data to be uploaded based on the historical login information and the current login information; and encrypts the data to be uploaded using the target encryption algorithm and the encryption algorithm to obtain the target data. This technical solution, by determining the encryption algorithm and encryption key for the data to be uploaded based on the user's historical login information and current login information, and encrypting the data to be uploaded, improves the flexibility and diversity of encryption for the data to be uploaded compared to the existing method of using a fixed key and fixed algorithm, increases the difficulty of cracking the data to be uploaded, and thus improves the security of the data to be uploaded.

[0051] Example 2

[0052] Figure 2 This is a flowchart of a data processing method provided in Embodiment 2 of the present invention. The present invention is an optimization and improvement based on the technical solution of the above embodiments.

[0053] Furthermore, the step of "determining the target encryption algorithm and encryption key for the data to be uploaded based on historical login information and current login information" is refined into "determining the target encryption algorithm for the data to be uploaded from candidate encryption algorithms based on the current login time and historical login time; converting the current login IP address to an integer to obtain the current address count, and converting the historical login IP address to an integer to obtain the historical address count; converting the current login device identifier to an integer to obtain the current identifier count, and converting the current login device identifier to an integer to obtain the historical identifier count; and determining the encryption key based on the preset key, the current address count, the historical address count, the current identifier count, and the historical identifier count," to improve the operations for determining the target encryption algorithm and the encryption key.

[0054] It should be noted that for any parts not described in detail in the embodiments of the present invention, please refer to the description in the foregoing embodiments.

[0055] See Figure 2 The data processing method shown includes:

[0056] S201. Obtain the data to be uploaded and the current login information of the user to whom the data to be uploaded belongs.

[0057] S202. Query the user's historical login information; wherein the login time corresponding to the historical login information is before the login time corresponding to the current login information.

[0058] S203. Based on the current login time and historical login time, determine the target encryption algorithm for the data to be uploaded from the candidate encryption algorithms.

[0059] In this embodiment, the current login time can be the login time when the user is currently logged in. The historical login time can be the login time when the user last logged in before the current login. The candidate encryption algorithm can be an algorithm used to encrypt the data. Specifically, a certain algorithm is used to determine the target encryption algorithm for the data to be uploaded from the candidate encryption algorithms based on the current login time and the historical login time.

[0060] Optionally, based on the current login time and historical login time, the target encryption algorithm for the data to be uploaded is determined from the candidate encryption algorithms, including: converting the current login time into an integer to obtain the current time number; converting the historical login time into an integer to obtain the historical time number; adding the current time number and the historical time number to obtain the time sum; taking the modulo of the time sum with the number of candidate encryption algorithms; and selecting the target encryption algorithm from the candidate encryption algorithms based on the modulo result.

[0061] Here, the current time is the current login time in integer form. The historical time is the historical login time in integer form. The sum of the times is the result of adding the current time and the historical time. Specifically, based on the correlation between candidate encryption algorithms and candidate modulo results, the candidate encryption algorithm that matches the modulo result of the sum of the times divided by the number of candidate encryption algorithms is selected as the target encryption algorithm.

[0062] Understandably, by adopting the above technical solution, the target encryption algorithm can be determined from the candidate encryption algorithms based on the current login time and historical login time. This allows the target encryption algorithm to change according to the login time of the user to whom the data to be uploaded belongs. Compared with the existing technology that uses a fixed encryption algorithm to encrypt data, this improves the flexibility of the encryption algorithm and thus enhances the security of the data to be uploaded.

[0063] S204. Convert the current login IP (Internet Protocol) address to an integer to obtain the current address count, and convert the historical login IP addresses to integers to obtain the historical address count.

[0064] In this embodiment, the current login IP address can be the user's IP address during the current login. The current address count is the current login IP address in integer form. The historical login IP address can be the user's login information from their previous login. The historical address count is the historical login IP address in integer form.

[0065] S205. Convert the current logged-in device identifier to an integer to obtain the current identifier count, and convert the historical logged-in device identifier to an integer to obtain the historical identifier count.

[0066] In this embodiment, the current login device identifier can be the device identifier (Identity Document, ID) of the user's device during the current login. The current identifier count is the current login device identifier in integer form. The historical login device identifier can be the identifier of the login device of the user's previous login. The historical identifier count is the historical login device identifier in integer form.

[0067] S206. Determine the encryption key based on the preset key, the current number of addresses, the historical number of addresses, the current number of identifiers, and the historical number of identifiers.

[0068] In this embodiment, the preset key can be set independently by technicians based on actual needs or practical experience, and this invention does not limit this. Specifically, a certain algorithm is used to determine the encryption key based on the preset key, the current number of addresses, the historical number of addresses, the current number of identifiers, and the historical number of identifiers.

[0069] Optionally, an encryption key is determined based on a preset key, the current number of addresses, the historical number of addresses, the current number of identifiers, and the historical number of identifiers. This includes: taking the modulo of the historical number of addresses with the length of the preset key to obtain first position information; encoding the current number of addresses to obtain a first encoding result; adding the first encoding result to the preset key based on the first position information to obtain an auxiliary key; taking the modulo of the historical number of identifiers with the length of the auxiliary key to obtain second position information; encoding the current number of identifiers to obtain a second encoding result; and adding the second encoding result to the auxiliary key based on the second position information to obtain the encryption key.

[0070] The first position information can be used to represent the position of the first encoded result in the preset key. The first encoded result is the encoded current address number. The auxiliary key can be a preset key with the first encoded result added. The second position information can be used to represent the position of the second encoded result in the auxiliary key. The second encoded result is the encoded current identifier number.

[0071] In this embodiment, a preset encoding algorithm is used to encode the current address number, converting the numeric current address number into a string form to obtain the first encoding result; a preset encoding algorithm is also used to encode the current identifier number, converting the numeric current identifier number into a string form to obtain the second encoding result. It should be noted that the encoding algorithm can be any existing technology, and this invention does not limit it.

[0072] It is understandable that by adopting the above technical solution, the first encoding result corresponding to the current address number is added to the preset key based on the first location information determined by the historical address number and the preset key; and the second encoding result corresponding to the current identifier number is added to the auxiliary key based on the second location information determined by the historical identifier number and the auxiliary key, thus obtaining the encryption key. This can improve the complexity and diversity of the encryption key, and compared with the existing technology that uses a fixed key to encrypt data, it can improve the security of the data to be uploaded.

[0073] S207. Use the target encryption algorithm and the encryption algorithm to encrypt the data to be uploaded to obtain the target data.

[0074] The technical solution of this invention determines the target encryption algorithm for the data to be uploaded from candidate encryption algorithms based on the current login time and historical login time; converts the current login IP address to an integer to obtain the current address count, and converts the historical login IP address to an integer to obtain the historical address count; converts the current login device identifier to an integer to obtain the current identifier count, and converts the historical login device identifier to an integer to obtain the historical identifier count; and determines the encryption key based on a preset key, the current address count, the historical address count, the current identifier count, and the historical identifier count. This technical solution determines the target encryption algorithm based on the current login time and historical login time, and determines the encryption key based on the preset key, the current address count, the historical address count, the current identifier count, and the historical identifier count, so that the target encryption algorithm changes with the login time, and the encryption key changes with the login IP address and login device identifier. Compared with the prior art using a fixed encryption algorithm and encryption key, this improves the security of the data to be uploaded.

[0075] Example 3

[0076] Figure 3A This is a flowchart of a data processing method provided in Embodiment 3 of the present invention. The present invention is an optimization and improvement based on the technical solutions of the above embodiments.

[0077] Furthermore, the process of "obtaining the data to be uploaded and the current login information of the user to whom the data belongs" is refined into "querying the block identifier of the user login token block and the block identifier of the user login information block from the blockchain; generating an auxiliary block identifier based on the user's alternative login information, the block identifier of the user login token block, and the alternative login information; verifying whether the auxiliary block identifier and the block identifier of the user login information block are consistent; if the auxiliary block identifier and the block identifier of the user login information block are consistent, obtaining the data to be uploaded and using the alternative login information as the current login information; if the auxiliary block identifier and the block identifier of the user login information block are inconsistent, generating a first alarm message to notify the administrator of the login information anomaly," thus improving the operation for determining the data to be uploaded and the current login information.

[0078] It should be noted that for any parts not described in detail in the embodiments of the present invention, please refer to the description in the foregoing embodiments.

[0079] See Figure 3A The data processing method shown includes:

[0080] S301. From the blockchain, query the block identifier of the user login token block and the block identifier of the user login information block.

[0081] In this embodiment, the user login token block can be a block that records the user's login token. The user login information block can be a block that records the user's login information. A block identifier is used to uniquely identify the corresponding block.

[0082] In one optional embodiment, upon user login and with user authorization, the system obtains the user's identity feature information, such as facial features, fingerprint features, or iris features. Based on the user's identity feature information, it matches the corresponding login token and uploads the login token to the blockchain. The blockchain creates a user login token block for the login token and uses the hash value of the login token as the block identifier. After the user successfully logs in using the login token, the login information for this successful login is uploaded to the blockchain. The blockchain creates a user login information block for the login information and generates a block identifier for the user login information block based on the block identifier of the user login token block and the login information.

[0083] Optionally, query the blockchain for the block identifier of the user login token block and the block identifier of the user login information block, including: verifying in the blockchain whether a user login token block exists before the user login information block; if a user login token block exists before the user login information block, obtaining the block identifier of the user login token block and the block identifier of the user login information block; if no user login token block exists before the user login information block, generating a second alarm message to notify administrators of the login token anomaly.

[0084] The second alarm message is used to alert administrators that the login token is abnormal.

[0085] Understandably, the above technical solution verifies whether a user login token block exists before the user login information block to determine whether the user has logged in with a matching login token. If no user login token block exists before the user login information block, meaning the user logged in without a login token, the user is considered an unauthorized user. This prompts administrators to take action to prevent the encryption and storage of data selected by unauthorized users, thereby improving the accuracy of the target data.

[0086] S302. Generate an auxiliary block identifier based on the user's alternative login information and the block identifier of the user login token block and the alternative login information.

[0087] In this embodiment, the alternative login information can be the login information corresponding to the user's current login. The auxiliary block identifier can be a block identifier used to verify the block identifier of the user login information block. Specifically, the block identifier of the user login token block and the alternative login information are merged, and a hash operation is performed on the merged result. The resulting hash value is used as the auxiliary block identifier.

[0088] S303. Verify whether the block identifier of the auxiliary block and the block identifier of the user login information block are consistent.

[0089] S304. If the auxiliary block identifier and the user login information block identifier are the same, obtain the data to be uploaded and use the alternative login information as the current login information.

[0090] S305. If the auxiliary block identifier and the user login information block identifier are inconsistent, a first alarm message is generated to notify the administrator of the login information abnormality.

[0091] In this embodiment, the first alarm information may be used to notify administrators of abnormal login information.

[0092] S306. Query the user's historical login information; wherein the login time corresponding to the historical login information is before the login time corresponding to the current login information.

[0093] S307. Based on historical login information and current login information, determine the target encryption algorithm and encryption key for the data to be uploaded.

[0094] S308. The target encryption algorithm and the encryption algorithm are used to encrypt the data to be uploaded to obtain the target data.

[0095] Optional, Figure 3B This is a structural diagram of a human resource management system. For example... Figure 3B As shown in the diagram, the system includes a login module, a token sending module, a blockchain, and a human resources management platform. The human resources management platform comprises a learning module, a planning module, a permissions management module, a confidential files module, and a business classification module. The business classification module includes payroll management, recruitment, labor relations, and attendance units.

[0096] The login module is used to obtain a login token that matches the user's identity information from the token sending module, so that the user can log in to the human resources management platform, and send the login token to the blockchain for storage; after the user successfully logs in, the login information is sent to the blockchain for storage.

[0097] The token sending module is used to identify the user's identity features and determine the login token that matches the user's identity features.

[0098] The learning module is used to provide learning functions of the human resource management platform to logged-in users;

[0099] The planning module is used to analyze information such as project progress, talent reserves, and professional needs, and to determine the human resource needs plan for the next cycle.

[0100] The access control module is used to assign operation permissions of the human resources management platform to logged-in users based on their job nature.

[0101] The confidential file module is used to obtain the data to be uploaded and the current login information of the user to whom the data belongs; query the user's historical login information; determine the target encryption algorithm and encryption key for the data to be uploaded based on the historical login information and the current login information; encrypt the data to be uploaded using the target encryption algorithm and the encryption algorithm to obtain the target data, and store the target data.

[0102] The payroll management unit is used to manage employee compensation.

[0103] The recruitment unit is used to obtain recruitment information, modify recruitment information, send interview information, and store recruitment and interview information.

[0104] The labor relations unit, after user authorization, stores employees' labor contract information and reminds relevant personnel seven days before the expiration of the employee's labor contract;

[0105] The attendance unit provides viewable employee attendance data.

[0106] The blockchain is used to generate user login token blocks for login tokens, user login information blocks for current login information, and user data blocks for target data.

[0107] This invention, in its embodiments, queries the blockchain for the block identifier of the user login token block and the block identifier of the user login information block. Based on the user's alternative login information, and using both the block identifier of the user login token block and the alternative login information, an auxiliary block identifier is generated. The consistency between the auxiliary block identifier and the block identifier of the user login information block is verified. If the auxiliary block identifier and the block identifier of the user login information block are consistent, the data to be uploaded is obtained, and the alternative login information is used as the current login information. If the auxiliary block identifier and the block identifier of the user login information block are inconsistent, a first alarm message is generated to notify administrators of the login information anomaly. This technical solution, by generating an auxiliary block identifier based on the block identifier of the user login token block and the alternative login information, and verifying the consistency between the auxiliary block identifier and the block identifier of the user login information block, ensures the accuracy of the login information recorded in the user login information block of the blockchain. When the login information is correct, the data to be uploaded is obtained, and the alternative login information is used as the current login information, thus improving the accuracy of the data to be uploaded and the current login information.

[0108] Example 4

[0109] Figure 4 This is a schematic diagram of a data processing method apparatus provided in Embodiment 4 of the present invention. This embodiment of the present invention is applicable to situations involving data encryption. The apparatus can execute a data processing method, which can be implemented in hardware and / or software. The apparatus can be configured in an electronic device, such as a server.

[0110] See Figure 4 The data processing method apparatus shown includes a current information acquisition module 401, a historical information query module 402, a key determination module 403, and a data encryption module 404, wherein...

[0111] The current information acquisition module 401 is used to acquire the data to be uploaded and the current login information of the user to whom the data to be uploaded belongs;

[0112] The historical information query module 402 is used to query a user's historical login information; wherein, the login time corresponding to the historical login information is before the login time corresponding to the current login information;

[0113] The key determination module 403 is used to determine the target encryption algorithm and encryption key of the data to be uploaded based on historical login information and current login information;

[0114] The data encryption module 404 is used to encrypt the data to be uploaded using the target encryption algorithm and the encryption algorithm to obtain the target data.

[0115] This invention, through a current information acquisition module, obtains the data to be uploaded and the current login information of the user to whom the data belongs; through a historical information query module, it obtains the user's historical login information, wherein the login time corresponding to the historical login information is before the login time corresponding to the current login information; through a key determination module, it determines the target encryption algorithm and encryption key for the data to be uploaded based on the historical login information and the current login information; through a data encryption module, it encrypts the data to be uploaded using the target encryption algorithm and the encryption algorithm to obtain the target data. The technical solution of this invention, by determining the encryption algorithm and encryption key for the data to be uploaded based on the user's historical login information and current login information, and encrypting the data to be uploaded, improves the flexibility and diversity of encryption of the data to be uploaded compared to the existing technology that uses a fixed key and a fixed algorithm, increases the difficulty of cracking the data to be uploaded, and thus improves the security of the data to be uploaded.

[0116] Optionally, in this device, the current login information includes the current login time, the current login IP address, and the current login device identifier; the historical login information includes the historical login time, the historical login IP address, and the historical login device identifier.

[0117] Key determination module 403 includes:

[0118] The algorithm determination unit is used to determine the target encryption algorithm for the data to be uploaded from the candidate encryption algorithms based on the current login time and historical login time.

[0119] The address number determination unit is used to convert the current login IP address into an integer to obtain the current address number, and to convert the historical login IP address into an integer to obtain the historical address number;

[0120] The identifier number determination unit is used to convert the current login device identifier number into an integer to obtain the current identifier number, and to convert the historical login device identifier number into an integer to obtain the historical identifier number;

[0121] The key determination unit is used to determine the encryption key based on the preset key, the current number of addresses, the historical number of addresses, the current number of identifiers, and the historical number of identifiers.

[0122] Optionally, the algorithm determination unit is specifically used for:

[0123] Convert the current login time to an integer to get the current time count;

[0124] Convert the historical login times to integers to get the historical time count;

[0125] Add the current time count to the historical time count to get the total time count;

[0126] Take the modulo of the sum of the times with the number of candidate encryption algorithms;

[0127] Based on the modulo result, the target encryption algorithm is selected from the candidate encryption algorithms.

[0128] Optionally, a key determination unit is specifically used for:

[0129] The first location information is obtained by taking the modulo of the number of historical addresses with the length of the preset key;

[0130] Encode the current address number to obtain the first encoding result;

[0131] Based on the first position information, the first encoding result is added to the preset key to obtain the auxiliary key;

[0132] The second position information is obtained by taking the modulo of the length of the auxiliary key with the number of historical identifiers.

[0133] Encode the current number of identifiers to obtain the second encoding result;

[0134] Based on the second position information, the second encoding result is added to the auxiliary key to obtain the encryption key.

[0135] Optionally, the current information acquisition module 401 includes:

[0136] The block identifier query unit is used to query the block identifier of the user login token block and the block identifier of the user login information block from the blockchain.

[0137] The auxiliary identifier generation unit is used to generate an auxiliary block identifier based on the user's alternative login information and the block identifier of the user login token block and the alternative login information.

[0138] The identifier verification unit is used to verify whether the block identifier of the auxiliary block and the block identifier of the user login information block are consistent;

[0139] The information acquisition unit is used to acquire the data to be uploaded if the auxiliary block identifier and the user login information block identifier are consistent, and to use the alternative login information as the current login information.

[0140] The alarm information generation unit is used to generate a first alarm message if the auxiliary block identifier and the user login information block are inconsistent, so as to prompt the administrator that the login information is abnormal.

[0141] Optional, the block identifier query unit is specifically used for:

[0142] In a blockchain, does a user login token block exist before the user login information block is verified?

[0143] If a user login token block exists before the user login information block, then obtain the block identifier of the user login token block and the block identifier of the user login information block.

[0144] If a user login token block does not exist before the user login information block, a second alarm message is generated to notify administrators of an anomaly in the information management platform.

[0145] Optionally, the device may also include:

[0146] The block identifier acquisition module is used to obtain the block identifier of the user login information block from the blockchain;

[0147] The block generation module is used to generate user data blocks based on the block identifier and target data of the user login information block, and add them to the blockchain.

[0148] The data processing method apparatus provided in the embodiments of the present invention can execute the data processing method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects for executing the data processing method.

[0149] Example 5

[0150] Figure 5A schematic diagram of an electronic device 500 that can be used to implement embodiments of the present invention is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the invention described and / or claimed herein.

[0151] like Figure 5 As shown, the electronic device 500 includes at least one processor 501 and a memory, such as a read-only memory (ROM) 502 or a random access memory (RAM) 503, communicatively connected to the at least one processor 501. The memory stores computer programs executable by the at least one processor. The processor 501 can perform various appropriate actions and processes based on the computer program stored in the ROM 502 or loaded into the RAM 503 from storage unit 508. The RAM 503 can also store various programs and data required for the operation of the electronic device 500. The processor 501, ROM 502, and RAM 503 are interconnected via a bus 504. An input / output (I / O) interface 505 is also connected to the bus 504.

[0152] Multiple components in electronic device 500 are connected to I / O interface 505, including: input unit 506, such as keyboard, mouse, etc.; output unit 507, such as various types of monitors, speakers, etc.; storage unit 508, such as disk, optical disk, etc.; and communication unit 509, such as network card, modem, wireless transceiver, etc. Communication unit 509 allows electronic device 500 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.

[0153] Processor 501 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 501 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. Processor 501 performs the various methods and processes described above, such as data processing methods.

[0154] In some embodiments, the data processing method may be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 508. In some embodiments, part or all of the computer program may be loaded and / or mounted on electronic device 500 via ROM 502 and / or communication unit 509. When the computer program is loaded into RAM 503 and executed by processor 501, one or more steps of the data processing method described above may be performed. Alternatively, in other embodiments, processor 501 may be configured to perform the data processing method by any other suitable means (e.g., by means of firmware).

[0155] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.

[0156] Computer programs used to implement the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when executed by the processor, the computer programs cause the functions / operations specified in the flowcharts and / or block diagrams to be performed. The computer programs may be executed entirely on a machine, partially on a machine, or as a standalone software package, partially on a machine and partially on a remote machine, or entirely on a remote machine or server.

[0157] In the context of this invention, a computer-readable storage medium can be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, apparatus, or device. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination thereof. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.

[0158] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the electronic device. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).

[0159] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or computing systems that include middleware components (e.g., application servers), or computing systems that include frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), blockchain networks, and the Internet.

[0160] A computing system can include clients and servers. Clients and servers are generally geographically separated and typically interact via communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a hosting product within the cloud computing service system. It addresses the shortcomings of traditional physical hosts and VPS (Virtual Private Server) services, such as high management difficulty and weak business scalability.

[0161] It should be understood that the various forms of processes shown above can be used, with steps reordered, added, or deleted. For example, the steps described in this invention can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this invention can be achieved, and this is not limited herein.

[0162] The specific embodiments described above do not constitute a limitation on the scope of protection of this invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this invention should be included within the scope of protection of this invention.

Claims

1. A data processing method, characterized in that, The method includes: Obtain the data to be uploaded and the current login information of the user to whom the data to be uploaded belongs; Query the user's historical login information; wherein the login time corresponding to the historical login information is before the login time corresponding to the current login information; Based on the historical login information and the current login information, determine the target encryption algorithm and encryption key for the data to be uploaded; The target encryption algorithm and the encryption algorithm are used to encrypt the data to be uploaded to obtain the target data; The current login information includes the current login time, the current login IP address, and the current login device identifier; the historical login information includes the historical login time, the historical login IP address, and the historical login device identifier. The step of determining the target encryption algorithm and encryption key for the data to be uploaded based on the historical login information and the current login information includes: Based on the current login time and historical login time, determine the target encryption algorithm for the data to be uploaded from the candidate encryption algorithms; Convert the current login IP address to an integer to get the current address count, and convert the historical login IP addresses to integers to get the historical address count; Convert the current logged-in device ID to an integer to obtain the current ID count, and convert the historical logged-in device IDs to integers to obtain the historical ID count; The encryption key is determined based on the preset key, the current number of addresses, the historical number of addresses, the current number of identifiers, and the historical number of identifiers; The step of determining the encryption key based on the preset key, the current address count, the historical address count, the current identifier count, and the historical identifier count includes: The first location information is obtained by taking the modulo of the number of historical addresses with the length of the preset key; The current address count is encoded to obtain a first encoding result; Based on the first location information, the first encoding result is added to the preset key to obtain the auxiliary key; The second location information is obtained by taking the modulo of the length of the auxiliary key with the number of historical identifiers. The current identifier number is encoded to obtain a second encoding result; Based on the second location information, the second encoding result is added to the auxiliary key to obtain the encryption key.

2. The method according to claim 1, characterized in that, The step of determining the target encryption algorithm for the data to be uploaded from candidate encryption algorithms based on the current login time and historical login time includes: Convert the current login time to an integer to get the current time count; Convert the historical login times to integers to get the historical time count; Add the current time count to the historical time count to get the total time count; Take the modulo of the sum of the time values ​​with the number of candidate encryption algorithms; Based on the modulus result, a target encryption algorithm is selected from the candidate encryption algorithms.

3. The method according to claim 1, characterized in that, The process of obtaining the data to be uploaded and the current login information of the user to whom the data belongs includes: From the blockchain, query the block identifier of the user login token block and the block identifier of the user login information block; Based on the user's alternative login information, and based on the block identifier of the user login token block and the alternative login information, an auxiliary block identifier is generated; Verify whether the auxiliary block identifier and the block identifier of the user login information block are consistent; If the auxiliary block identifier and the block identifier of the user login information block are the same, the data to be uploaded is obtained, and the alternative login information is used as the current login information; If the auxiliary block identifier and the user login information block identifier are inconsistent, a first alarm message is generated to notify the administrator of the login information anomaly.

4. The method according to claim 3, characterized in that, The step of retrieving the block identifier of the user login token block and the block identifier of the user login information block from the blockchain includes: In a blockchain, does a user login token block exist before the user login information block is verified? If a user login token block exists before the user login information block, then obtain the block identifier of the user login token block and the block identifier of the user login information block. If a user login token block does not exist before the user login information block, a second alarm message is generated to alert administrators that the login token is abnormal.

5. The method according to claim 1, characterized in that, After obtaining the target data, the following is also included: Obtain the block identifier of the user login information block from the blockchain; Based on the block identifier of the user login information block and the target data, a user data block is generated and added to the blockchain.

6. A data processing apparatus, characterized in that, The device includes: The current information acquisition module is used to acquire the data to be uploaded and the current login information of the user to whom the data to be uploaded belongs; The historical information query module is used to query the user's historical login information; wherein the login time corresponding to the historical login information is before the login time corresponding to the current login information; The key determination module is used to determine the target encryption algorithm and encryption key of the data to be uploaded based on the historical login information and the current login information; The data encryption module is used to encrypt the data to be uploaded using the target encryption algorithm and the encryption algorithm to obtain the target data; The current login information includes the current login time, the current login IP address, and the current login device identifier; the historical login information includes the historical login time, the historical login IP address, and the historical login device identifier. The key determination module includes: The algorithm determination unit is used to determine the target encryption algorithm for the data to be uploaded from the candidate encryption algorithms based on the current login time and historical login time. The address number determination unit is used to convert the current login IP address into an integer to obtain the current address number, and to convert the historical login IP address into an integer to obtain the historical address number; The identifier number determination unit is used to convert the current login device identifier number into an integer to obtain the current identifier number, and to convert the historical login device identifier number into an integer to obtain the historical identifier number; The key determination unit is used to determine the encryption key based on the preset key, the current number of addresses, the historical number of addresses, the current number of identifiers, and the historical number of identifiers; The key determination unit is specifically used for: The current address count is encoded to obtain a first encoding result; Based on the first location information, the first encoding result is added to the preset key to obtain the auxiliary key; The second location information is obtained by taking the modulo of the length of the auxiliary key with the number of historical identifiers. The current identifier number is encoded to obtain a second encoding result; Based on the second location information, the second encoding result is added to the auxiliary key to obtain the encryption key.

7. An electronic device, characterized in that, The electronic device includes: At least one processor; and A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that can be executed by the at least one processor, the computer program being executed by the at least one processor to enable the at least one processor to perform the data processing method according to any one of claims 1-5.

8. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions that cause a processor to execute the data processing method according to any one of claims 1-5.

Citation Information

Patent Citations

  • Data processing method, terminal, communication device and data processing system

    CN106685948A

  • Identity authentication method, system and device based on block chain and storage medium

    CN116248368A