CN112257086B - User privacy data protection method and electronic equipment - Google Patents

User privacy data protection method and electronic equipment Download PDF

Info

Publication number
CN112257086B
CN112257086B CN202011145160.7A CN202011145160A CN112257086B CN 112257086 B CN112257086 B CN 112257086B CN 202011145160 A CN202011145160 A CN 202011145160A CN 112257086 B CN112257086 B CN 112257086B
Authority
CN
China
Prior art keywords
user
application
information
encryption
data
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.)
Active
Application number
CN202011145160.7A
Other languages
Chinese (zh)
Other versions
CN112257086A (en
Inventor
魏天武
杨帅麒
雷准富
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huayun data holding group Co., Ltd
Original Assignee
Huayun Data Holding Group Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huayun Data Holding Group Co ltd filed Critical Huayun Data Holding Group Co ltd
Priority to CN202011145160.7A priority Critical patent/CN112257086B/en
Publication of CN112257086A publication Critical patent/CN112257086A/en
Application granted granted Critical
Publication of CN112257086B publication Critical patent/CN112257086B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures

Abstract

The invention provides a user privacy data protection method and electronic equipment, wherein the method comprises the following steps: acquiring user information and/or attribute information of hardware equipment responding to the user information; encrypting the user information and/or the attribute information once to determine a public key and returning the public key to the client; and performing secondary encryption on the public key to determine a private key, determining a corresponding random value i according to an application attribute corresponding to an application responding to user operation in the server, and storing a part of character strings of the private key into a resource file of the application running at the client after partially replacing the part of character strings of the private key by using the random value i. According to the invention, as the random value i generated by the server is randomly generated, even if an illegal user knows a specific encryption method, the user privacy data cannot be reversely decoded through code logic, so that the protection of the user privacy data is effectively realized, the calculation overhead and the storage overhead of the server are reduced, and the user experience is improved.

Description

User privacy data protection method and electronic equipment
Technical Field
The invention relates to the technical field of data encryption, in particular to a user privacy data protection method and electronic equipment.
Background
Mobile terminal devices embedded with various applications (programs) and the popularization of the applications (programs), the mobile terminal devices based on an operating system such as an Android platform have been related to various fields, such as digital televisions, smart phones, television set-top boxes, and the like, and APPs (applications/applications) corresponding to the mobile terminal devices are also endless.
For example, various mobile terminal devices and application software based on the Android platform can know code logic and user information through reverse cracking means. For example, an apk is firstly decompressed by using an apktool tool, then an android optimized dex file is converted into java class by using a dex2jar tool, and finally java code in the class is viewed by using a jd-gui tool. Therefore, various user information in the Android platform-based mobile terminal device and the application program, such as a user name, a password, a software version, a historical browsing trace, collection information and the like, are all at risk of being reversely cracked, so that the user information is seriously threatened. Therefore, it is very important to protect and encrypt the user information of the user in the mobile terminal device and the application program based on the Android platform.
Although the Android platform has a relatively standard security mechanism, such as an application layer reference signature mechanism and an application authority control mechanism, the security of the program is protected; the kernel layer isolates resources of different processes through a sandbox mechanism, and assists a unique memory management mechanism, an interprocess communication mechanism and the like. However, due to the factors such as the openness of the Android itself and the openness of the popularization, the Android platform has certain disadvantages in the aspects of the self architecture, the security mechanism of the architecture, the operation mode of the platform, and the like, and once the problems are utilized by an attacker, the benefits of the user are damaged.
Aiming at various risks and threats faced by APK application in an Android platform, a plurality of counter measures and protection methods appear in the market, and the applicant discloses a data encryption method through Chinese invention patent with the retrieval and the publication number of CN 109858203A. This prior art has adopted technologies such as dex encryption, so reinforcement to carry out whole protection to APK simultaneously, but this prior art mainly decrypts through customization Android system. In addition, protection methods such as code obfuscation, dex shell adding, integrity checking and the like are provided. With the continuous upgrading of attack software, the attack software continuously permeates to the bottom layer, and a plurality of key services are transferred to the bottom layer. Therefore, the possibility of being cracked still exists by simply adopting the method of encrypting the local equipment and the server. Meanwhile, the data encryption method in the prior art excessively depends on the server, and frequently requesting the server to perform encryption and decryption on the private data or access information data of the user results in excessively high computational overhead of the server, excessive garbage files remaining in a storage system of the server and occupation of a physical memory and/or a virtual memory of the server.
In view of the above, there is a need to improve a method for protecting user privacy data in an application based on an operating system such as Android or ISO or an electronic device including the application in the prior art, so as to solve the above problems.
Disclosure of Invention
The invention aims to disclose a user privacy data protection method and electronic equipment, which are used for preventing the electronic equipment based on operating systems such as Android and the like and applications running in the electronic equipment from being reversely cracked, and solving the problem that a secret key is invalid after local equipment and a server side are cracked in the traditional encryption method, so that the safety of user privacy data is improved, and meanwhile, the calculation overhead and the storage overhead of the server side are reduced.
In order to achieve one of the above objects, the present invention provides a method for protecting user privacy data, comprising the following steps:
s1, acquiring user information and/or attribute information of hardware equipment responding to the user information;
s2, encrypting the user information and/or the attribute information once to determine a public key and returning the public key to the client;
s3, carrying out secondary encryption on the public key to determine a private key, determining a corresponding random value i according to the application attribute corresponding to the application responding to the user operation in the server, and storing a part of character strings of the private key in a resource file of the application running at the client after carrying out partial replacement on the part of character strings of the private key by using the random value i.
As a further development of the invention, the random value i consists of at least one pair of consecutive and paired numbers;
each pair of numbers respectively comprises position confusion information for replacing part of character strings in the private key and numerical value confusion information for changing ascii values of the replaced character strings in the private key.
As a further improvement of the present invention, the random value i is generated in a random manner at least by the application attribute corresponding to the application responding to the user operation by the server.
As a further improvement of the invention, the application attribute corresponding to the application responding to the user operation is composed of one or more of an application version number, an application name, application developer information, an installation package size or an application installation date corresponding to the application responding to the user operation.
As a further improvement of the present invention, the step S3 specifically includes:
performing secondary encryption on the public key to determine a private key, determining a corresponding random value i according to an application attribute corresponding to an application responding to user operation in the server, modifying part of character strings in the private key according to the position confusion information and the numerical value confusion information by using the random value i, and storing the modified part of character strings in a resource file of the application running in the client; wherein the content of the first and second substances,
the position obfuscation information determines positioning information for replacing a part of character strings in the private key by using a random value i, and the numerical value obfuscation information determines that the replaced character strings in the private key are modified by using the random value i to change information of ascii values.
As a further improvement of the present invention, the method for protecting user privacy data further comprises:
a user sends a strategy that logarithm and/or partial digit pairs of paired data of a random value i generated by a server in a random mode are set to be null to the server at a client;
before the public key is encrypted for the second time in the step S3 to determine the private key, a dialog event that the user has issued the policy is triggered and verified in the client, and the public key is encrypted for the second time to determine the private key only after the content input in the dialog conforms to the policy.
As a further improvement of the invention, the primary encryption and the secondary encryption adopt MD5 encryption, RSA encryption, DEA encryption, DSA encryption, dongle encryption, ABE encryption, IDEA encryption, ECC encryption, soft digital certificate encryption or hard digital certificate encryption;
and the resource file of the application is mounted in the res directory path in the client.
As a further improvement of the present invention, the user information is a password, a verification code, entity data, a text, a function, user biometric tag data or trace generated by a user operation on the android application and/or hardware;
the user operation comprises registration, verification, login, logout, access request initiation, response data receiving, character/character string filling in a dialog box, e-mail receiving/sending, file/data downloading, file/data uploading or browsing;
the user biological label data comprises face data, fingerprint data, iris atlas data or voiceprint atlas data.
As a further improvement of the present invention, the attribute information of the hardware device is described by one or more of a name of the hardware device, a product model of the hardware device, an IMEI of the hardware device, an MEID of the hardware device, a baseband version, a kernel version, a MAC, an Android _ id of the hardware device, a mobile phone number bound to the hardware device, an id card attribute bound to the hardware device, CPU description information of the hardware device, storage device description information of the hardware device, memory description information of the hardware device, a motherboard name of the hardware device, a user privacy policy, an instant messaging account number, a digital signature certificate of the hardware device, or a UI version.
As a further improvement of the invention, the hardware equipment is embedded and operated in one or more of an Android system, an IOS system, a Linux system, a Unix system or a Windows system.
As a further improvement of the invention, when the resource file of the application is started, the private key obtained by the secondary encryption is created and positioned in an encrypted database file configured in the resource file of the running application, and the sensitive data of the user is stored through the encrypted database file; the sensitive data comprises one or any combination of a user name, a password, an application version, historical browsing traces of the application by the application or collection information of the application.
Based on the same inventive concept, the present application further discloses an electronic device, comprising:
a processor, a memory, and
a computer program stored in the memory and configured to be executed by the processor;
the processor, when executing the computer program, performs the steps in the method for protecting user private data as described in any one of the above.
Compared with the prior art, the invention has the beneficial effects that:
in the application, a corresponding random value i is determined according to an application attribute corresponding to an application responding to user operation in a server, partial character strings of a private key are stored in a resource file of the application running at a client after partial replacement is carried out on the partial character strings of the private key by using the random value i, therefore, when the keywords reflecting the user privacy data are reversely cracked by the cracking tool, because the random value i generated by the server is randomly generated, even if an illegal user knows a specific encryption method, the illegal user cannot reversely break various user privacy data such as user names, passwords, software versions, historical browsing traces, collection information and the like through code logic, therefore, the corresponding relation between the private key and the public key after partial character strings are replaced cannot be determined, so that the reverse cracking difficulty of a conventional cracking tool is thoroughly avoided, and the protection of the private data of the user is effectively realized;
meanwhile, the safety and reliability of various application/running application electronic devices serving as the server are ensured, the calculation overhead and the storage overhead of the server are reduced, and the user experience is improved.
Drawings
FIG. 1 is a general flow chart of a method for protecting user privacy data according to the present invention;
FIG. 2 is a topological diagram of a server and a client operating the method for protecting user privacy data disclosed in FIG. 1;
FIG. 3 is an example of a random value i comprising five sets of digit pairs consisting of position obfuscation information and numerical obfuscation information;
FIG. 4 is an example of a random value i comprising four sets of digit pairs consisting of position obfuscation information and numerical obfuscation information;
FIG. 5 is an example of the position confusion information and numerical confusion information in the third set of digit pairs of FIG. 4 being set to a null random value i;
fig. 6 is an example of a dialog event triggering verification in the client that the user has issued the policy before the public key is twice encrypted to determine the private key in step S3;
fig. 7 is a schematic diagram illustrating a change process of a secret key in an entire process of implementing a method for protecting user private data according to the present invention;
FIG. 8 is a topological diagram of a user privacy data protection apparatus for implementing a user privacy data protection method according to the present invention;
FIG. 9 is a schematic diagram of the user privacy data protection apparatus shown in FIG. 8 deployed at a client and a server respectively;
FIG. 10 is a topology diagram of an electronic device of the present invention.
Detailed Description
The present invention is described in detail with reference to the embodiments shown in the drawings, but it should be understood that these embodiments are not intended to limit the present invention, and those skilled in the art should understand that functional, methodological, or structural equivalents or substitutions made by these embodiments are within the scope of the present invention.
Term "Applications of": computer programs that respond to various requests initiated by a user and have the same meaning as APPs, plug-ins, software systems, etc.
Term "Third party": independent of the body of the legitimate user (including the developer, the specific application or the legitimate user of the electronic device), this body can be a hacker of an illegal hacking application or an unauthorized application developer or based on theft, picking up of electronic devices, etc.
In the examples, the term "Third party"and term"Illegal subject"has equivalent meaning and all are equal to"Legal subject"are mutually opposite concepts. "Legal subjectA subject based on legitimate use may be understood as a subject having legitimate authorization for a particular application or electronic device running the application. For example: zhang three is a legal subject for the apple mobile phone which runs the IOS operating system and is purchased by Zhang three, Li four is an illegal subject for the mobile phone which runs the Android operating system and is stolen/invaded by Li four, and Wang five is a program of Android application developed by Zhao sixWhen the code is reversely decoded, Wangwei is a non-legal subject, and Zhao Liu is a legal subject.
Term "And/or"includes three cases, e.g.," A and/or B "includes three cases, the first case includes only feature A, the second case includes only feature B, and the third case includes both feature A and feature B.
Symbol'/": or, for example, "A/B" means A or B, and A and B are parallel equivalents.
The applicant explains the detailed implementation process of the present invention by using several embodiments described below.
The first embodiment is as follows:
referring to fig. 1, 2 and 7, a method for protecting user privacy data includes the following steps S1 to S3.
First, step S1 is performed to acquire user information and/or attribute information of a hardware device responding to the user information.
In this embodiment, the user information and/or the hardware device responding to the user information may be partially or entirely executed in the client 80 in fig. 2, or may be executed in another client that establishes a communication connection with the client 80 in a wired manner or a wireless manner, or may be executed together as a whole. The client 80 and the server 10 are relative concepts, and serve as an initiator for sending an access request to the server 10 and the server 10 serves as a responder for responding the access request, respectively, as a hardware device (i.e., a local device) that has an application and/or runs the application.
One or more applications are deployed in the client 80 or embedded in a hardware device (e.g., a smartphone) running the applications. In the embodiment, an example of deploying an Android device 20 (a subset of applications and/or hardware devices) in the client 80 is illustrated. A UI21 is embedded in the Android device 20 and serves as a visual interface for a user (a legal subject or an illegal subject) to input instructions to the Android device 20. The Android device 20 is a hardware device based on an Android operating system, and may be regarded as an electronic device running the Android operating system.
Specifically, in this embodiment, the user information is a password, an authentication code, entity data, text, a function, and user biometric tag data or trace generated by a user operation on the android application and/or the hardware device. Wherein the user operation includes registering, authenticating, logging in, logging out, initiating an access request, receiving response data, filling characters/character strings into a dialog box, receiving/sending an e-mail, downloading files/data, uploading files/data, or browsing. Meanwhile, the user bio-tag data includes face data, fingerprint data, iris atlas data, or voiceprint atlas data.
For example, an android application may form an input device (e.g., a camera, a fingerprint sensor, a microphone for entering voiceprint data, etc.) that inputs or captures a user's user biometric tag data to enter the user biometric tag data and to be interbound with the underlying code of the application/hardware device embedded in which the application is running. When a user starts a certain application (for example, a Paibao APP) on an android mobile phone, the user identity can be verified or whether the payment is authorized legally or not can be confirmed through one or a combination of several of fingerprint data, face data or voiceprint data.
When a legal user operates the smartphone (i.e., the lower concept of the electronic device), the legal user clicks the icon of the "pay for treasure", starts a specific application interface of the "pay for treasure", and starts specific operations, such as a request operation for paying a water fee and an operation for verifying fingerprint data when paying a fee. The user biometric tag data such as the fingerprint data is data generated by user operation on the android-based application and/or the hardware device, and the object to be protected in this embodiment is sensitive data and private data generated by user operation on the android-based application and/or the hardware device, and is obfuscated by means of primary encryption (to determine the public key 31), secondary encryption (to determine the private key 32) and insertion of the random value i, and a new private key 33 is regenerated and stored in a persistent storage device such as the database 30 of the client 80, and the new private key 33 is stored in the persistent storage device. The database 30 may also be configured as non-volatile memory, such as NVDIMMs or NAND storage.
In the present embodiment, the terms "first encryption" and "second encryption" refer to first encryption processing and second encryption processing respectively executed by a specific encryption algorithm used. Specifically, the operation of the primary encryption is performed by the primary encryption device 101 in fig. 9, the operation of the secondary encryption is performed by the secondary encryption device 201 in fig. 9, the random value i is performed by the random value i generation device 102, and the random value i generation device 102 contains a random function rand () whose application attribute corresponding to the application of the response user operation is used as the input of the random function rand ().
The applicant indicates that, although the following embodiments and examples of the random value i shown in fig. 3 to 5 are described below, the number pair included in the random value i may also be a character pair composed of one character and a number. The characters may be of a special type of @,%, &, alphabet, tab character, latin alphabet, hiragana or katakana and conform to the us standard code specification for information exchange, for example, the random value i may be: # -4- @ -1-% -38. "#", "@" and "%" all have different ascii values in the computer coding system, so the obfuscation operations of adding 4, adding 1 and adding 38 to the ascii value of the character string at the corresponding position in the private key 32 through # -4- @ -1-% -38 can be respectively performed to generate a new private key 33.
Specifically, in this embodiment, the primary encryption and the secondary encryption are MD5 encryption, RSA encryption, DEA encryption, DSA encryption, dongle encryption, ABE encryption, IDEA encryption, ECC encryption, soft digital certificate encryption, or hard digital certificate encryption. The resource files of the application are mounted on the res directory path in the client 80. In the present embodiment, the applicant exemplifies that the first encryption uses MD5 encryption, and the second encryption is RSA encryption. For example, the resource file may be a file under the res path in an Android application, which contains a string.
The MD5 encryption algorithm is irreversible, the original data (namely the public key) cannot be restored by the private key encrypted by the MD5, the encryption validity verification principle is that the original data of a user is processed by the MD5 encryption algorithm and then compared with the encrypted ciphertext encrypted by the same algorithm, and the encryption method has the advantages that anyone cannot modify the encrypted ciphertext, and the security is extremely high. However, under the support of high-performance hardware (such as a hardware decryption card) or a software platform (such as a big data distributed computing platform), the encryption mode of the MD5 still has the possibility of being cracked.
The attribute information of the hardware device comprises the name of the hardware device (such as Huawei Kirin 990), the product model of the hardware device (YAL-AL10), the IMEI (international mobile equipment identity) of the hardware device, the MEID (mobile equipment identity) of the hardware device, the baseband version (21C20B379S000C000) of the hardware device, the kernel version (4.14.116Android @ localhost #1Tue Aug 416:55:26CST 2020), the MAC (08:1E:20:0A:8C:6D), the Android _ id (when the hardware device is started for the first time, the Android operating system randomly generates a 64-bit number and stores the number in the form of a 16-system character string, the 16-system character string and the Android _ id), a mobile phone number (138 XXXXXX 8888) bound with the hardware device, the attribute of an identification card bound with the hardware device, the CPU description information (910990K) of the hardware device, and the storage device description information of the hardware device, The method comprises the following steps of describing one or more of memory description information of the hardware equipment, a mainboard name of the hardware equipment, a user privacy policy, an instant messaging account (such as a nailing account, a WeChat account, a QQ account and the like), a digital signature certificate of the hardware equipment or a UI version (Magic UI 3.1.0) together. Specifically, in this embodiment, the hardware device is embedded and operates one or more of an Android system, an IOS system, a Linux system, a Unix system, or a Windows system, and is capable of independently responding to an access request initiated by a user to the server 10, receiving the random value i sent by the server 10, and performing an encryption operation.
As shown in fig. 7 and 9, step S2 is then performed to encrypt the user information and/or the attribute information once to determine the public key and return it to the client 80. Specifically, after the server 10 in fig. 2 obtains the user information in the client 80 and/or the attribute information of the hardware device responding to the user information, the MD5 algorithm is used to perform a first encryption process on the user information obtained from the client 80 and/or the attribute information of the hardware device responding to the user information, so as to determine a public key, and store the public key in the server 10. The user information and/or the attribute information are individually or collectively push-input to the input 200 of the primary encryption device 101 and the random value i generation device 102, and the primary encryption device 101 and the random value i generation device 102 generate the random value i and the public key 31, respectively.
Finally, step S3 is executed to perform secondary encryption on the public key to determine the private key, determine the corresponding random value i according to the application attribute corresponding to the application responding to the user operation in the server 10, and store the partial character string of the private key in the resource file of the application running in the client 80 after partially replacing the partial character string with the random value i.
The random value i is generated by the server 10, and the application attribute corresponding to the application responding to the user operation is composed of one or more of an application version number (Aliwang 9.12.11), an application name (Paibao), application developer information, an installation package size, or an application installation date corresponding to the application responding to the user operation. The random value i is generated by the server 10 according to the random function rand (), and the basis/logic of the generation of the random value i is that the application attribute corresponding to the application responding to the user operation is determined by one or more of the application version number, the application name, the application developer information, the installation package size or the application installation date corresponding to the application responding to the user operation.
In the present embodiment, the operation process of secondarily encrypting the public key 31 to determine the private key 32 (i.e., the new private key 32 in fig. 7) is preferably performed in the Android device 20 of the server 80, thereby reducing the computation overhead, the storage overhead, and the network transmission overhead of the server 10. In particular, the above-mentioned determination of the generation basis is determined according to one or more application attributes and can be arbitrarily selected in the client 80 according to the user, so that the rule or rule that the server 10 finally grabs and generates the random value i at a later stage is unknown to the illegal user, thereby resulting in that the new private key 33 (shown in fig. 7) obtained after the secondary encryption is subjected to the random value i, and the illegal user is basically impossible to reversely parse through a cracking tool or an ultra-strong hardware decryption card.
In this embodiment, the random value i is composed of at least one pair of consecutive and paired numbers. Each pair of numbers respectively comprises position confusion information for replacing part of character strings in the private key and numerical value confusion information for changing ascii values of the replaced character strings in the private key. The random value i is generated in a random manner by at least the server 80 from the application attribute corresponding to the application responding to the user operation. The application responding to the user operation is located at the client 80.
Referring to fig. 3, the random value i is composed of five number pairs, i.e., a first number pair 7-5, a second number pair 13-2, a third number pair 34-5, a fourth number pair 73-4, and a fifth number pair 118-4. Referring to fig. 4, the random value i is composed of four sets of number pairs, i.e. a first set of number pairs 7-5, a second set of number pairs 13-2, a third set of number pairs 34-5, and a fourth set of number pairs 73-4, but of course, the random value i may also be composed of only one pair of number pairs, e.g. the first set of number pairs 7-5.
The generation logic of the random value i generated by the server 10 is random, and the user privacy data such as the user name, the password, the software version, the historical browsing trace and the collection information can not be reversely decoded through the code logic and/or the business logic contained in the client 80; more importantly, personalized and randomized data, namely the application version number, the application name, the application developer information, the installation package size or the application installation date, are added to the server 10 in the process of generating the random value i, so that an illegal user can hardly reversely break various user privacy data such as a user name, a password, a software version, historical browsing traces, collection information and the like for code logic and/or service logic contained in the android device 20 in the client 80 through a conventional breaking tool.
According to the method for protecting the user privacy data, disclosed by the embodiment, an illegal user cannot determine the corresponding relation between a new private key 33 obtained by replacing part of a character string and a public key 31 obtained based on primary encryption and further a private key 32 obtained by using secondary encryption, so that the difficulty in reverse cracking of the user privacy data such as passwords, verification codes, entity data, texts, functions, user biological label data or traces and the like generated by user operation on android applications and/or hardware equipment through a conventional cracking tool is thoroughly avoided, and the user privacy data are effectively protected.
In particular, the applicant indicates that in the present embodiment, the step S3 is specifically as follows: performing secondary encryption on the public key to determine a private key, determining a corresponding random value i according to an application attribute corresponding to an application responding to user operation in the server 10, modifying part of character strings in the private key according to the position obfuscating information and the numerical obfuscating information by using the random value i, and storing the modified part of character strings in a resource file of the application running in the client 80; the position confusion information determines positioning information for replacing part of character strings in the private key by using a random value i, and the numerical value confusion information determines that the replaced character strings in the private key are modified by using the random value i to change information of ascii values.
The random value i is composed of two parts, one is the position of the replaced character (i.e., position confusion information) and the other is the changed value of the replaced character ascii (numerical confusion information), which are spliced with each other by "-". First, the position of the character to be replaced in the private key generated by the secondary encryption in the whole private key is found to obtain an ascii code of the character, and after the corresponding ascii value is increased or decreased, a new character string of the private key 33 is generated and stored, which is specifically shown in fig. 7. Of course, the numeric confusion information may be that the ascii value at the replaced character position is increased, the ascii value at the replaced character position is decreased, or even that the ascii value at the replaced character position is not changed, and the string at the corresponding position in the private key obtained by the secondary encryption is positioned by the digit pair of the other pair of the random value i and the ascii value of the string at the determined position is changed.
Referring to fig. 2 again, when the resource file of the application is started, the private key obtained by the secondary encryption is created and located in an encrypted database file configured in the resource file of the running application, and the sensitive data of the user is stored through the encrypted database file; the sensitive data comprises one or any combination of a user name, a password, an application version, historical browsing traces of the application by the application or collection information of the application. The encrypted database file is saved to the database 30.
The applicant describes in more detail the whole process of fig. 7 of how to form the public key, the private key, the random value i and the replaced private key by the following specific examples.
First, the server 10 generates a random value function (i.e., rand () function) by applying a corresponding version to each of the versions, where the random value function includes: (1) the random value i and (2) the public key are stored in the server 10.
(1) The random value i generated by the server 10 is as follows:
7-5-13-2-34-5-73-4-118-4 (shown in figure 3), or 7-5-13-2-34-5-73-4 (shown in figure 4). In the present embodiment, the random value i of 7-5-13-2-34-5-73-4-118-4 is taken as an example for further explanation.
(2) The public key 31 generated by the server 10 is as follows:
48-12613448136942-12272-122-913111503-126115048-1261102-126110-58078-9119-5343-8623124-2043-8943-45336622-31-120-9268-46-120973-64127-1-2704050972888-12598-4829288-128-37459-956503927121-56-112110-8410554121-10-11488-28109-27-23-112120-65-7228-7616103109-61-8623-104-102-75-47-38101-58-9342-30-402941-52-341633-195-8665-46-11562-1065481-9467-20-98-29-69117-6749-110768147-672657579397460-12-1193-115-104-4673110546772792-90-4935-108109112-113-51-25-38209012560062-94-57-123-12296-30-797192-50125-9513-9413-120-8460-92-107-7-102-5711046973-11799105-26253340267790-5476-55-29-67111-8919102-113-6853-82610012728-1361-62-112-38-15-50-22-8889-103-11012356-19119-20-1732-338-72621111688-1580-44-104-1663-12713-87439230-74-97-1058762-3123101。
(3) a private key 32 generated by the public key 31 through the secondary encryption operation is stored in the client 80 running the Android platform, and the private key 32 is specifically as follows:
48-1264-6821048136942-12272-122-913111504-1264-9048-1264-942102-126110-58078-9119-5343-8623124-2043-8943-45336622-31-120-9268-46-120973-64127-1-2704050972888-12598-4829288-128-37459-956503927121-56-112110-8410554121-10-11488-28109-27-23-112120-65-7228-7616103109-61-8623-104-102-75-47-38101-58-9342-30-402941-52-341633-195-8665-46-11562-1065481-9467-20-98-29-69117-6749-110768147-672657579397460-12-1193-115-104-4673110546772792-90-4935-108109112-113-51-25-38209012560062-94-57-123-12296-30-797192-50125-9513-9413-120-8460-92-107-7-102-5711046973-11799105-26253340267790-5476-55-29-67111-8919102-113-6853-82610012728-1361-62-112-38-15-50-22-8889-103-11012356-19119-20-1732-338-72621111688-1580-44-104-1663-12713-87439230-74-97-1058762-31231012-1261096-43-3-56-31-7-89-9968103-12873-5552-111-55-1146110-12012511012388-76-464939104-41-651633-77-124-3511768-11210-25-57173032100-7176-60-69197-8073-109232377-31807270982667-72-72-10710765-2126-105873126-56-109-123-10-82111-107-9720102119-10315-6811878-123-110203124-75-796-661679-74-128105-4359-93-114-19-68-76-607096-122-89-1055565-691127-43108541-6846741-24-848664-31-2754-37-9718-371119103106-1141055-67-1399-48-441512342-47-1104219-39-108-1021195791-3011231-3743477-7583-29108-92-51-3974-18-73-17-9111-11781-88-71387919-81127-69122-6337-28-90-102-1-16-103-927538711211489-814119-94-7025-2-7-33-86118-7189026692-37-84127943-70-5182-18-4010-9245106587-61-45-39-71-2812-127-1270-16-54126-94-2218485112-1640117-5398-115-19-1052123-79-1010376-6763-573-123853-27121379110-17-8424-43121-20-4-88197981-97-26423-9868-90121-68-5045-12117-350621183084-3649668-11585-12-91-126-20697835-3661-83-495973-96-605935-56-126-2771-11447-110-96-11127-784618-1174106-41-114-65-110-59-3-489319-10817-43-12-23-13-106-59104-5269-91108172-127-1270-46-127-21250101-12687-125-2469133-93-392882-88-447041-9917-13893518-81-110111-9553-14-64-91-54475670-821376120-114-81-52-109-91-103-48-11097-18745669-75-1233234-855145-49-25-105-7-1017943105-39107-67108115-71118-401273-102-1201179-63122-945-11134117-31-61-11776-1231-6312252-20-1156158118-12-62503720843712716-9529-22-108-34124101-88-105-47-62-75-472-127-128116109-27103-40-91-27-9894-70-7969-85-1794-9356118-119-2122512-5743116-122-77-309033-99-41-1-456610-526101-11017-11344-748251-6792-4657109-87-59-94-1203128-125253226-8553-2154-1237486112-18-105-8367-93-117829-89-12372-125-23105362588-12122-53-40-102-90-283897-93-37-73459444-72-4811232100-1-11894-3561161181593-6675-11109-68-52-100-9560-120-1112-127-12811725329-112-4954-70721084-1712-65-1286210528-47568693-79102-108-2521-75-28-41-125-19-26-93-109-107-20-6612182-56-619452277-50-767-28389-93-208511349-11210087-28-7611127-29108126-5914614828105-610933-46-6311393361161223-32-15103-827358122-40-246970111-6210963-10135101-10911-6065-9-4346-33-6311945-124-11983-106-72-81395259-72-108-511460-1272-127-12848-117701-12-120-48-122828647119-841-7-34-14-69-44108-124-29-50-79-11836-96-76-20338231747-22-65-35111-46-4546-522-1144891-63-17-12091799016778045-62-117-10398-66-110100-4111582888112610456-1981-28-561754-4316-72-586366-111-80-106-4516-23581-77-26-5093-559719-21-36-2583102-64-100-30-2621-5532-6742-853-121-59-33113-52-62-578310963-3279-47。
secondly, in the code development (forming an executable program) of the Android application/Android-based hardware device, keywords or sensitive data (such as "submit order (Commit _ bill)" in the following text) which embody user private data exist in a plaintext manner, as shown below:
<resources>
< string name >
</resources>
The "submit order" is encrypted by the public key (i.e., once encryption is performed) to obtain the following values:
-112-967512712733-466681-25-49125-221938-111126-10621-71-151-109741194212380-34-8-112-62106-121-17-2265-374370892913-1101071172684-1278558643835-5839839373107-14369-34350-9-664-78-115537859-59-48-97-93-90118-7395114-1896124-18111-109-119-227100230-100-118098-2530-110-9614-25-602747-98-19-6925-30-4427-13-23-6795-105-13-31-6-4495-12535-80657-86-77-125-8722-5-80-22-472-6117-1038243-18605955106-122-9-9-116-40-10-25-38-653-3563255985-92-95-1568-1897-1-694370-105105-1535510912690-117475242184117-118-47346368123-227110-45283-81981-58-112-1514-101-14560011158-87-74-89886-8258-112123-10915-90-85714-79-16-65113291176650-97-123-88-89-96106110034106-102-46119-122-3792114。
then, by adding 5 to the ascii value of the 7 th-digit string, adding 2 to the ascii value of the 13 th-digit string, adding 5 to the ascii value of the 34 th-digit string, adding 4 to the ascii value of the 73 th-digit string, and adding 4 to the ascii value of the 118 th-digit string (i.e., after partial replacement of part of the string of the private key with the random value i), a new value (i.e., a new private key 33) is obtained as follows:
-112-9;7512714733-466681-25-491252221938-111126-10621-71-151-109741194216380-34-8-112-62106-121-17-2265-374370892913-5101071172684-1278558643835-5839839373107-14369-34350-9-664-78-115537859-59-48-97-93-90118-7395114-1896124-18111-109-119-227100230-100-118098-2530-110-9614-25-602747-98-19-6925-30-4427-13-23-6795-105-13-31-6-4495-12535-80657-86-77-125-8722-5-80-22-472-6117-1038243-18605955106-122-9-9-116-40-10-25-38-653-3563255985-92-95-1568-1897-1-694370-105105-1535510912690-117475242184117-118-47346368123-227110-45283-81981-58-112-1514-101-14560011158-87-74-89886-8258-112123-10915-90-85714-79-16-65113291176650-97-123-88-89-96106110034106-102-46119-122-3792114)。
the new ascii value (i.e., the new private key 32 corresponding to the ascii value formed by partially replacing the partial character string of the private key with the random value i) is stored in the Android item (source code) of the Android device 20 in the client 80, as follows:
<resources>
<stringname="commit_bill">-112-9;7512714733-466681-25-491252221938-111126-10621-71-151-109741194216380-34-8-112-62106-121-17-2265-374370892913-5101071172684-1278558643835-5839839373107-14369-34350-9-664-78-115537859-59-48-97-93-90118-7395114-1896124-18111-109-119-227100230-100-118098-2530-110-9614-25-602747-98-19-6925-30-4427-13-23-6795-105-13-31-6-4495-12535-80657-86-77-125-8722-5-80-22-472-6117-1038243-18605955106-122-9-9-116-40-10-25-38-653-3563255985-92-95-1568-1897-1-694370-105105-1535510912690-117475242184117-118-47346368123-227110-45283-81981-58-112-1514-101-14560011158-87-74-89886-8258-112123-10915-90-85714-79-16-65113291176650-97-123-88-89-96106110034106-102-46119-122-3792114</string>
</resources>。
thirdly, when the android application of the client 80 runs, the android application acquires the ascii value of the random value i (7-5-13-2-34-5-73-4-118-4) generated by the server 10 by requesting the server 10, and acquires the character string corresponding to the commit _ bill submitted by the user in the UI21 of the client 80 in the client 80, as follows:
-112-9;7512714733-466681-25-491252221938-111126-10621-71-151-109741194216380-34-8-112-62106-121-17-2265-374370892913-5101071172684-1278558643835-5839839373107-14369-34350-9-664-78-115537859-59-48-97-93-90118-7395114-1896124-18111-109-119-227100230-100-118098-2530-110-9614-25-602747-98-19-6925-30-4427-13-23-6795-105-13-31-6-4495-12535-80657-86-77-125-8722-5-80-22-472-6117-1038243-18605955106-122-9-9-116-40-10-25-38-653-3563255985-92-95-1568-1897-1-694370-105105-1535510912690-117475242184117-118-47346368123-227110-45283-81981-58-112-1514-101-14560011158-87-74-89886-8258-112123-10915-90-85714-79-16-65113291176650-97-123-88-89-96106110034106-102-46119-122-3792114)。
the original encryption string (i.e. the character string of the public key formed in the server 10 based on one-time encryption) is obtained by using the random value i, which is specifically as follows:
-112-967512712733-466681-25-49125-221938-111126-10621-71-151-109741194212380-34-8-112-62106-121-17-2265-374370892913-1101071172684-1278558643835-5839839373107-14369-34350-9-664-78-115537859-59-48-97-93-90118-7395114-1896124-18111-109-119-227100230-100-118098-2530-110-9614-25-602747-98-19-6925-30-4427-13-23-6795-105-13-31-6-4495-12535-80657-86-77-125-8722-5-80-22-472-6117-1038243-18605955106-122-9-9-116-40-10-25-38-653-3563255985-92-95-1568-1897-1-694370-105105-1535510912690-117475242184117-118-47346368123-227110-45283-81981-58-112-1514-101-14560011158-87-74-89886-8258-112123-10915-90-85714-79-16-65113291176650-97-123-88-89-96106110034106-102-46119-122-3792114。
finally, the new private key 32 saved in the encrypted so file of the client 80 running the application is decrypted to obtain "order submission", and finally displayed in a control in the android application, that is, the key information dynamic loading display area 211 in fig. 2. It should be noted that, in this embodiment, the client 80 in fig. 2 may be a physical device (for example, a PC, a smart phone running an IOS system or an Android system), or may be a virtual device running in the physical device (for example, a virtual machine VM). The Android device 20 is configured and operated in the client 80, and forms a UI21 for the user to initiate an access request and display verification information and/or trigger a dialog box 212 for verifying that the user has issued the policy, which is specifically shown in fig. 6.
In the embodiment, an illegal user who wants to reverse crack wants to locate the location where the "submitted order" (commit _ bill) is obtained, needs to obtain a private key stored in an encrypted so file in the application, and needs to know a random value i generated by the server 10; the Android software version or the application version (namely, a lower concept of the application attribute corresponding to the application responding to the user operation) is controlled (for example, the upgrading of the application version or the degradation of the application version and other various application attributes are increased), so that the random value i is continuously changed, the difficulty of reverse cracking of a third party (namely, an illegal user) on Android application-based electronic equipment and Android software (or IOS software) is invisibly increased, the information security of the user and the security of user behaviors are thoroughly ensured, and the difficulty of reverse cracking of hardware equipment/electronic equipment of Android (IOS) software/running Android (IOS) software by conventional cracking tools (for example, Jadx, Andriod Killer, APKTool and the like) is thoroughly avoided; particularly, various user privacy data such as user names, passwords, software versions, historical browsing traces, collection information and the like can be effectively avoided being reversely cracked through code logic and/or business logic.
It should be noted that, in the present embodiment, the term "User information"refers to user privacy data and sensitive data such as data, text, functions or traces generated by various operations (including but not limited to registration, verification, login, logout, initiating an access request, receiving response data, filling characters into a dialog box, sending an email, downloading files/data, uploading files/data, browsing behavior, and the like) of a user on hardware equipment (or electronic equipment) which runs all applications and/or runs applications developed by a system such as an android system/IOS system/Linux system, and the like, so that the safety of the user using various applications such as android software/IOS software or the electronic equipment running various applications such as android software and the like is ensured, and the protection of the user privacy data is greatly improved.
In this implementation, the operation of the secondary encryption is to convert string into ascii, and store the new private key 33 of the finally partially replaced character string into string. The new private key 32 stored in the encrypted so file of the client 80 running the application is decrypted to obtain a 'submit order', and finally displayed in a control in the android application, that is, the key information dynamic loading display area 211 in fig. 2, the random value i which has been sent to the server 10 can be displayed in the key information dynamic loading display area 211 of the client 80 by the user, and the random value i and the new private key 33 stored in the local database 30 of the client 80 are decrypted by converting ascii into string, so that a decrypted character string is obtained, and the decrypted character string is displayed in the UI 21.
Meanwhile, in this embodiment, since the private keys with relatively large number and data amount are stored in the server 80, and are further specifically stored in a cache or a persistent storage device (e.g., a Flash memory) of the server 80, the security of (local) data of the server 80 is ensured, and the data storage pressure of the server 10 on the private key 31 is greatly relieved, and the private keys stored among the clients 80 logically in a discrete topology structure are isolated from each other, and the operation of requesting the server 10 to generate the random value i needs only one time, so that the security and reliability of various applications/application running devices serving as the server 80 are ensured, the calculation overhead and the storage overhead of the server 10 are reduced, and the user experience is improved. Meanwhile, in this embodiment, since the new private key 33 is determined according to the private key 32, and the private key 32 is determined according to the application attribute corresponding to the application responding to the user operation in the client 80, even if the database 30 in the client 80 is cracked or exposed to an illegal user, the illegal user cannot reversely crack the business logic and the user privacy data of each user in each application/hardware device including the application through the keywords or sensitive data (for example, "submit order") included in the resource file of the application in the client 80.
Example two:
referring to fig. 5 and fig. 6, this embodiment discloses a modification of the method for protecting user privacy data. Compared with the user privacy data protection method disclosed in the first embodiment, the main difference of the present embodiment is that, in the present embodiment, the user privacy data protection method further includes: the user issues a policy in which the logarithm and/or partial number pair of the pair data of the random value i generated by the server 10 in a random manner is set to be null at the client 80 to the server 10, and before secondarily encrypting the public key to determine the private key at step S3, a dialog event (see dialog 212 in fig. 6) that verifies that the user has issued the policy is triggered at the client 80, and only after the content input in the dialog 212 of the UI21 conforms to the policy, the public key 31 is secondarily encrypted to determine the private key 32, and after determining the private key 32, the position of the replaced character (i.e., position confusion information) and the replaced character ascii variation value (numerical confusion information) included in the random value i are confused with the random value i generated by the server 10 at the client 80 using the random value i generated by the server 10. The dialog box 212 is used to verify in the client 80 that the user (legitimate user) has issued a policy that generates the random value i.
In this embodiment, the second encryption is ABE encryption.
Based on an Attribute-Based Encryption mechanism (ABE), in the ABE Encryption, a trusted authority issues a user private key for the user according to an Attribute set of the user, and a ciphertext is related to the Attribute set. The ABE encryption takes the attribute as a public key, so that a flexible access control strategy can be expressed, and the processing overhead of an encryption node (such as a client 80) and the overhead of network bandwidth for transmitting shared data are remarkably reduced, so that the ABE encryption has wide application prospects in the fields of fine-grained access control, one-way broadcasting, group key management, privacy protection and the like.
In this embodiment, the strategy of setting the logarithm and/or partial number pair of paired data of the random value i to be null refers to: the position obfuscation information and/or the numerical obfuscation information in one or more pairs of the number pairs in the random value i is set to 0, and preferably both the position obfuscation information and the numerical obfuscation information in one or more pairs of the number pairs are set to 0. Specifically, as shown in fig. 5, the random value i includes a first set of digit pairs 7-5, a second set of digit pairs 13-2, a third set of digit pairs 0-0, and a fourth set of digit pairs 73-4. In particular, the random value i can be formed in a manner of 7-5-13-2-34-0-73-4, that is, the third group of digit pairs of the random value i is 34-0, which means that the ascii value of the character string corresponding to the 34 th digit in the third group of digit pairs is neither increased nor decreased, and the setting logic is only known and set by a legal user, and the illegal user cannot know whether the legal user sets few groups of digit pairs or the group of digit pairs in which the legal user sets the confusion value information to 0.
The setting of both the position confusion information and the numerical value confusion information to 0 means that a part of the character string in the private key (new private key 33) generated by the secondary encryption is not replaced and is popped up in the dialog 212 "Please enter a preset null number Character pair"dialog box 212, any illegal user who wants to crack the application, because he or she cannot know which digit pair has the position confusion information and the numerical confusion information set to 0, only has a right answerOnly the legal user knows which preset number is set to be 0 for both the position obfuscation information and the numerical value obfuscation information, so once an illegal user fills the input contents such as the number "3" or "1" in the dialog box 212, the private key of the replaced partial character string cannot be broken, and the protection capability and the anti-cracking capability of the user privacy data protection method on the user privacy data are further improved.
The technical solutions of the same parts of the method for protecting user privacy data shown in this embodiment and the first embodiment are shown in the first embodiment and will not be described herein again.
Example three:
referring to fig. 8 and fig. 9, a user privacy data protection method according to the present invention is disclosed based on the present embodiment, and a specific implementation of a user privacy data protection apparatus 300 is also disclosed in the present embodiment.
The user privacy data protection apparatus 300 includes: the primary encryption device 101 and the random value i generation device 102 are deployed in the server 10, and the secondary encryption device 201 and the database 30 are deployed in an application/hardware device running an application (for example, the hardware device may be the Android device 20) of the client 80. The database 30 is a MySQL database or a NoSQL database, and is preferably a distributed time sequence database based on an RRD storage engine, which retains the advantages of an RRD and has the requirements of availability and data consistency of a distributed system; the distributed time sequence database based on the RRD storage engine has better expandability and disaster recovery.
A specific implementation process of a user privacy data protection method executed by the user privacy data protection apparatus 300 disclosed in this embodiment is shown in the first embodiment and/or the second embodiment, and is not described herein again.
Example four:
based on the technical solutions included in the embodiments of the first to third embodiments of the method and the apparatus for protecting user privacy data, the present embodiment also discloses a specific embodiment of the electronic device 100.
Referring to fig. 10, the present embodiment discloses an electronic device 100, including: a processor 51, a memory 52 and a computer program stored in the memory 52 and configured to be executed by the processor 51, the processor 51 when executing the computer program performing the steps of a method for protecting user privacy data according to an embodiment one.
Specifically, the memory 52 is composed of a plurality of storage units, i.e., a storage unit 521 to a storage unit 52i, wherein the parameter i is a positive integer greater than or equal to two. The processor 51 and the memory 52 both have access to a system bus 53. The type of the system bus 53 is not limited to a specific type, I2C bus, SPI bus, SCI bus, PCI-e bus, ISA bus, etc., and can be modified according to the specific type and application requirements of the electronic device 500. The system bus 53 is not the point of the invention of the present application and is not set forth herein.
It should be noted that the storage unit 52 in this embodiment may be a physical storage unit, so that the electronic device 100 is understood as a physical computer or a computer cluster or a cluster server; meanwhile, the storage unit 52 may also be a virtual storage unit, for example, a virtual storage space formed by a bottom layer virtualization technology based on a physical storage device, so as to configure the electronic device 100 as a virtual device such as a virtual server or a virtual cluster, or to understand the electronic device 100 as a PC, a tablet computer, a smartphone, a smart wearable electronic device, a physical cluster or a data center.
Please refer to the technical solutions of the first to third embodiments, which are similar to the technical solutions of the same parts of the electronic device 100 shown in the present embodiment and the first to third embodiments, and will not be described herein again.
The various illustrative logical blocks, or elements, described in connection with the embodiments disclosed herein may be implemented or performed with a general purpose processor, a digital signal processor, an Application Specific Integrated Circuit (ASIC), a field programmable gate array or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general-purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a digital signal processor and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a digital signal processor core, or any other similar configuration.
The above-listed detailed description is only a specific description of a possible embodiment of the present invention, and they are not intended to limit the scope of the present invention, and equivalent embodiments or modifications made without departing from the technical spirit of the present invention should be included in the scope of the present invention.
It will be evident to those skilled in the art that the invention is not limited to the details of the foregoing illustrative embodiments, and that the present invention may be embodied in other specific forms without departing from the spirit or essential attributes thereof. The present embodiments are therefore to be considered in all respects as illustrative and not restrictive, the scope of the invention being indicated by the appended claims rather than by the foregoing description, and all changes which come within the meaning and range of equivalency of the claims are therefore intended to be embraced therein. Any reference sign in a claim should not be construed as limiting the claim concerned.
Furthermore, it should be understood that although the present description refers to embodiments, not every embodiment may contain only a single embodiment, and such description is for clarity only, and those skilled in the art should integrate the description, and the embodiments may be combined as appropriate to form other embodiments understood by those skilled in the art.

Claims (10)

1. A method for protecting user privacy data is characterized by comprising the following steps:
s1, acquiring user information and/or attribute information of hardware equipment responding to the user information;
s2, encrypting the user information and/or the attribute information once to determine a public key and returning the public key to the client;
s3, carrying out secondary encryption on the public key to determine a private key, determining a corresponding random value i according to application attributes corresponding to the application responding to the user operation in the server, modifying part of character strings in the private key by using the random value i according to the position confusion information and the numerical value confusion information, and storing the modified part of character strings in the private key in a resource file of the application running at the client; wherein the content of the first and second substances,
the position obfuscation information determines positioning information for replacing part of character strings in the private key by using a random value i, and the numerical value obfuscation information determines that the replaced character strings in the private key are modified by using the random value i to change information of ascii values;
the random value i consists of at least one pair of consecutive and paired numbers;
each pair of numbers respectively comprises position confusion information for replacing part of character strings in the private key and numerical value confusion information for changing ascii values of the replaced character strings in the private key.
2. The method according to claim 1, wherein the random value i is generated in a random manner at least by an application attribute corresponding to an application operated by the server in response to the user.
3. The method according to claim 1, wherein the application attribute corresponding to the application responding to the user operation is one or more of an application version number, an application name, application developer information, an installation package size, and an application installation date corresponding to the application responding to the user operation.
4. The method of claim 1, wherein the method further comprises:
a user sends a strategy that logarithm and/or partial digit pairs of paired data of a random value i generated by a server in a random mode are set to be null to the server at a client;
before the public key is encrypted for the second time in the step S3 to determine the private key, a dialog event that the user has issued the policy is triggered and verified in the client, and the public key is encrypted for the second time to determine the private key only after the content input in the dialog conforms to the policy.
5. The method according to any one of claims 1 to 4, wherein the primary encryption and the secondary encryption employ MD5 encryption, RSA encryption, DEA encryption, DSA encryption, dongle encryption, ABE encryption, IDEA encryption, ECC encryption, soft digital certificate encryption, or hard digital certificate encryption;
and the resource file of the application is mounted in the res directory path in the client.
6. The method for protecting user private data according to claim 5, wherein the user information is a password, a verification code, entity data, text, a function, user biometric tag data or trace generated by a user operation on an android application and/or hardware;
the user operation comprises registration, verification, login, logout, access request initiation, response data receiving, character/character string filling in a dialog box, e-mail receiving/sending, file/data downloading, file/data uploading or browsing;
the user biological label data comprises face data, fingerprint data, iris atlas data or voiceprint atlas data.
7. The method according to claim 5, wherein the attribute information of the hardware device is described by one or more of a name of the hardware device, a product model of the hardware device, an IMEI of the hardware device, an MEID of the hardware device, a baseband version of the hardware device, a kernel version, an MAC, an Android _ id, a mobile phone number bound to the hardware device, an identity card attribute bound to the hardware device, CPU description information of the hardware device, storage device description information of the hardware device, memory description information of the hardware device, a motherboard name of the hardware device, a user privacy policy, an instant messaging account, a digital signature certificate of the hardware device, or a UI version.
8. The method for protecting user private data according to claim 7, wherein the hardware device is embedded and runs one or more of an Android system, an IOS system, a Linux system, a Unix system, or a Windows system.
9. The method for protecting user private data according to claim 5, wherein when the resource file of the application is started, the private key obtained by the secondary encryption is created and located in an encrypted database file configured in the resource file for running the application, and the sensitive data of the user is saved through the encrypted database file; the sensitive data comprises one or any combination of a user name, a password, an application version, historical browsing traces of the application by the application or collection information of the application.
10. An electronic device, comprising:
a processor, a memory, and
a computer program stored in the memory and configured to be executed by the processor;
the processor, when executing the computer program, performs the steps in the method for protecting user private data of any of claims 1 to 9.
CN202011145160.7A 2020-10-23 2020-10-23 User privacy data protection method and electronic equipment Active CN112257086B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011145160.7A CN112257086B (en) 2020-10-23 2020-10-23 User privacy data protection method and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011145160.7A CN112257086B (en) 2020-10-23 2020-10-23 User privacy data protection method and electronic equipment

Publications (2)

Publication Number Publication Date
CN112257086A CN112257086A (en) 2021-01-22
CN112257086B true CN112257086B (en) 2022-02-01

Family

ID=74263592

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011145160.7A Active CN112257086B (en) 2020-10-23 2020-10-23 User privacy data protection method and electronic equipment

Country Status (1)

Country Link
CN (1) CN112257086B (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113268769A (en) * 2021-05-25 2021-08-17 平安普惠企业管理有限公司 Method, system and storage medium for processing biological characteristic data based on random confusion
CN113630387B (en) * 2021-07-21 2023-04-07 北京景安云信科技有限公司 Method for realizing user name and password replacement in MySQL protocol authentication process based on proxy
CN114070568A (en) * 2021-11-04 2022-02-18 北京百度网讯科技有限公司 Data processing method and device, electronic equipment and storage medium
CN114489839B (en) * 2022-01-12 2023-08-01 海南车智易通信息技术有限公司 Method and device for loading configuration data on page and server
CN115277074B (en) * 2022-06-21 2024-03-19 网思科技股份有限公司 Encryption and decryption method, device, equipment and storage medium
CN115242553B (en) * 2022-09-21 2023-01-06 航天宏图信息技术股份有限公司 Data exchange method and system supporting safe multi-party calculation

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106572076A (en) * 2016-09-27 2017-04-19 山东浪潮商用系统有限公司 Web service access method, client side and server side
US10397207B1 (en) * 2017-07-17 2019-08-27 Amazon Technologies, Inc. Automatic credential rotation

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106572076A (en) * 2016-09-27 2017-04-19 山东浪潮商用系统有限公司 Web service access method, client side and server side
US10397207B1 (en) * 2017-07-17 2019-08-27 Amazon Technologies, Inc. Automatic credential rotation

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
一种利用属性加密进行身份认证的隐私保护方案;郑芳等;《网络安全技术与应用》;20200215(第02期);全文 *
加密强度可定制的新型文本加解密算法;姜文超等;《计算机科学与探索》;20161031(第09期);全文 *
字符型密码随机加密与解密算法的设计与实现;崔艳荣;《计算机工程与设计》;20130316(第03期);全文 *

Also Published As

Publication number Publication date
CN112257086A (en) 2021-01-22

Similar Documents

Publication Publication Date Title
CN112257086B (en) User privacy data protection method and electronic equipment
US10721080B2 (en) Key-attestation-contingent certificate issuance
CN110113167B (en) Information protection method and system of intelligent terminal and readable storage medium
KR100996784B1 (en) Saving and retrieving data based on public key encryption
CN112074836A (en) Apparatus and method for protecting data through trusted execution environment
KR101067399B1 (en) Saving and retrieving data based on symmetric key encryption
Altuwaijri et al. Android data storage security: A review
US9652276B2 (en) Hypervisor and virtual machine protection
CN109412812B (en) Data security processing system, method, device and storage medium
KR20130114726A (en) System and method for tamper-resistant booting
CN111666564B (en) Application program safe starting method and device, computer equipment and storage medium
CN101199159A (en) Secure boot
CN113841145A (en) Lexus software in inhibit integration, isolation applications
CN108335105B (en) Data processing method and related equipment
CN108229144B (en) Verification method of application program, terminal equipment and storage medium
JP6756056B2 (en) Cryptographic chip by identity verification
CN110765470A (en) Method and device for realizing safety keyboard, computer equipment and storage medium
US20190354697A1 (en) System and method for securing data in a storage medium
EP3298529B1 (en) Electronic device and method in an electronic device
CN109891823B (en) Method, system, and non-transitory computer readable medium for credential encryption
US20180198618A1 (en) Apparatus and method for providing secure execution environment for mobile cloud
CN112862484A (en) Secure payment method and device based on multi-terminal interaction
US20240113898A1 (en) Secure Module and Method for App-to-App Mutual Trust Through App-Based Identity
CN114244620A (en) Board card network access verification method and device and board card control center
CN113595731A (en) Protection method and device for shared link and computer readable storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20210128

Address after: No. 6 Science and Education Software Park, Binhu District, Wuxi City, Jiangsu Province

Applicant after: Huayun data holding group Co., Ltd

Address before: No. 6 Science and Education Software Park, Binhu District, Wuxi City, Jiangsu Province

Applicant before: Huayun data holding group Co., Ltd

Applicant before: Shanghai Shengshi Dalian automobile service Co.,Ltd.

GR01 Patent grant
GR01 Patent grant