CN111431728A - User group management method of distributed application program - Google Patents
User group management method of distributed application program Download PDFInfo
- Publication number
- CN111431728A CN111431728A CN202010239067.6A CN202010239067A CN111431728A CN 111431728 A CN111431728 A CN 111431728A CN 202010239067 A CN202010239067 A CN 202010239067A CN 111431728 A CN111431728 A CN 111431728A
- Authority
- CN
- China
- Prior art keywords
- user
- block
- target
- user group
- group
- 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.)
- Granted
Links
- 238000007726 management method Methods 0.000 title claims abstract description 27
- 238000000034 method Methods 0.000 claims description 47
- 230000008569 process Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000000977 initiatory effect Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/185—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0863—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
- Information Transfer Between Computers (AREA)
Abstract
The application discloses a user group management method and a user group management system for distributed application programs, which can divide different users into corresponding user groups according to a group password and pass keys of the user groups. And the user nodes are operated in all distributed application programs in the user group, are encrypted by the key, are recorded as a third target block and are stored in the distributed system. And under the condition that the third target block is detected, other user nodes in the user group decrypt the third target block through the operation key. Therefore, only the users of the user group can obtain the information of the user group without being disclosed to the outside.
Description
Technical Field
The present application relates to the field of block chain technologies, and in particular, to a method and a system for managing a user group of a distributed application.
Background
Distributed Application (DApp) is an internet Application that differs from traditional applications by: the DApp runs on a decentralized network, namely a block chain network, and the DApp can be completely controlled by nodes without centralization in the network; traditional applications are centralized and require a server to obtain data, process data, etc. Blockchains are the underlying environment for applications to run relative to DApp.
In some application scenarios, only a part of users are expected to participate, so that the users need to be classified into user groups. For example, a company may have A, B, C three departments, each of which is not intended to be open to other users when conducting lottery activities individually. Therefore, a user group management method of a distributed application is necessary to properly manage information of a user group.
Disclosure of Invention
The application provides a user group management method and a user group management system for distributed application programs, different users can be divided into corresponding user groups according to a group password, and third target blocks of all application operations in the user groups are recorded to be encrypted and decrypted through keys of the user groups, so that only the users of the user groups can obtain information of the user groups.
In a first aspect, a method for managing a user group of a distributed application is provided, including:
the target user node generates a first target block according to the operation of inputting the block password in the distributed application program;
under the condition that the first target block is detected, all user nodes in the distributed system acquire the block passwords from the first target block, and divide the target users into corresponding user groups according to the block passwords;
generating a second target block by the user nodes of the same user group in the distributed system according to the operation of confirming that the target user enters the user group, and storing the second target block in the distributed system;
and under the condition that the second target block is detected, the target user enters the user group to obtain operation keys of the user group, each user group corresponds to one operation key, and the operation keys can encrypt or decrypt any distributed application program operation performed in the user group.
In an optional implementation manner, any operation performed by the target user node in the distributed application program in the user group is recorded as a corresponding third target block after being encrypted by the operation key, and is stored in the distributed system.
In an optional implementation manner, in a case that the third target block is detected, other user nodes in the user group decrypt the third target block through the operation key to obtain the operation of the target user.
In an optional implementation manner, the dividing the target user into the corresponding user groups according to the group password includes, when the group password input by the target user is consistent with the entry password, dividing the target user into the user groups corresponding to the entry password, where each user group corresponds to only one entry password.
In an optional embodiment, before the target user node generates the first target block according to an operation of inputting a block password in the distributed application program, the method further includes: the target user node receives the block cipher transmitted from other user nodes.
In an optional embodiment, any operation performed by the target user node in the distributed application within the user group includes: the target user node initiates lottery drawing operation in the user group and outputs the number of winnings; the target user node randomly selects prize winning users from the user group according to the number of the prize winning users to form a prize winning list; and after being encrypted by the operation key, the prize winning list is recorded as a prize winning block and stored in the distributed system.
In an optional embodiment, in the case that the winning block is detected, all user nodes in the user group decrypt the winning block through the operation key to obtain the winning list.
In an optional embodiment, any operation performed by the target user node in the distributed application within the user group includes: the target user node initiates a lottery operation within the user group, the method further comprising: under the condition that the third target block is detected, all user nodes in the user group decrypt the third target block through the operation key to obtain the lottery drawing operation; and inputting the willing participation or the unwilling participation into the operation by all user nodes in the user group, recording the willing participation operation as a willingness block after the willing participation operation is encrypted by the operation key, and storing the willingness block in the distributed system.
In an optional implementation manner, in the case that the wish block is detected, the target user node decrypts the wish block by using the operation key to obtain the list of users willing to participate; the user node inputs the number of the winners, and randomly selects a winners list from the user list willing to participate according to the number of the winners; the prize winning list is recorded as a prize winning block after being encrypted by the operation key and is stored in the distributed system; and under the condition that the prize winning block is detected, all user nodes in the user group decrypt the prize winning block through the operation key to obtain the prize winning list.
In a second aspect, a user group management system for distributed applications is provided, including:
a target user node for: generating a first target block according to the operation of inputting a block password in a distributed application program, and storing the first target block in a distributed system; under the condition that the second target block is detected, the target user enters the user group to obtain an operation key of the user group;
all user nodes in the distributed system for: under the condition that the first target block is detected, the block password is obtained from the first target block, and the target users are divided into corresponding user groups according to the block password;
user nodes of a same user group in the distributed system, configured to: and generating a second target block according to the operation of confirming the target user to enter the user group, and storing the second target block in the distributed system.
In a third aspect, a computer storage medium is provided, which stores one or more instructions adapted to be loaded by a processor and to perform the steps of the first aspect and any possible implementation thereof.
The application discloses a user group management method and a user group management system for distributed application programs, which can divide different users into corresponding user groups according to a group password and pass keys of the user groups. And the user nodes are operated in all distributed application programs in the user group, are encrypted by the key, are recorded as a third target block and are stored in the distributed system. And under the condition that the third target block is detected, other user nodes in the user group decrypt the third target block through the operation key. Therefore, only the users of the user group can obtain the information of the user group without being disclosed to the outside.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments or the background art of the present application, the drawings required to be used in the embodiments or the background art of the present application will be described below.
Fig. 1A is a schematic structural diagram of a data sharing system according to an embodiment of the present application;
fig. 1B is a schematic structural diagram of a block chain according to an embodiment of the present disclosure;
fig. 1C is a schematic diagram of node interaction of a block chain according to an embodiment of the present disclosure;
fig. 2A is a schematic flowchart of a user group management method for a distributed application according to an embodiment of the present application;
fig. 2B is a schematic flowchart of another user group management method for a distributed application according to an embodiment of the present disclosure;
fig. 3A is a schematic flowchart of another user group management method for a distributed application according to an embodiment of the present disclosure;
fig. 3B is a schematic flowchart of another user group management method for a distributed application according to an embodiment of the present disclosure;
fig. 3C is a schematic structural diagram of a user group management system of a distributed application according to an embodiment of the present application;
fig. 4 is a schematic structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
In order to make the technical solutions of the present application better understood, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only a part of the embodiments of the present application, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
The terms "first," "second," and the like in the description and claims of the present application and in the above-described drawings are used for distinguishing between different objects and not for describing a particular order. Furthermore, the terms "include" and "have," as well as any variations thereof, are intended to cover non-exclusive inclusions. For example, a process, method, system, article, or apparatus that comprises a list of steps or elements is not limited to only those steps or elements listed, but may alternatively include other steps or elements not listed, or inherent to such process, method, article, or apparatus.
Reference herein to "an embodiment" means that a particular feature, structure, or characteristic described in connection with the embodiment can be included in at least one embodiment of the application. The appearances of the phrase in various places in the specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments mutually exclusive of other embodiments. It is explicitly and implicitly understood by one skilled in the art that the embodiments described herein can be combined with other embodiments.
Referring to the data sharing system shown in fig. 1A, the data sharing system 100 refers to a system for performing data sharing between nodes, the data sharing system may include a plurality of nodes 101, and the plurality of nodes 101 may refer to respective clients in the data sharing system. Each node 101 may receive input information while operating normally and maintain shared data within the data sharing system based on the received input information. In order to ensure information intercommunication in the data sharing system, information connection can exist between each node in the data sharing system, and information transmission can be carried out between the nodes through the information connection. For example, when any node in the data sharing system receives input information, other nodes in the data sharing system may acquire the input information according to a consensus algorithm, and store the input information as data in shared data, so that the data stored on all nodes in the data sharing system are consistent.
Each node in the data sharing system has a node identifier corresponding thereto, and each node in the data sharing system may store a node identifier of another node in the data sharing system, so that the generated block is broadcast to the other node in the data sharing system according to the node identifier of the other node in the following. Each node may maintain a node identifier list as shown in the following table, and store the node name and the node identifier in the node identifier list correspondingly. The node identifier may be an IP (Internet Protocol) address and any other information that can be used to identify the node, and table 1 only illustrates the IP address as an example.
Node name | Node identification |
Node 1 | 117.114.151.174 |
Node 2 | 117.116.189.145 |
… | … |
Node N | 119.123.789.258 |
Each node in the data sharing system stores one identical blockchain. The block chain is composed of a plurality of blocks, referring to fig. 1B, the block chain is composed of a plurality of blocks, the starting block includes a block header and a block main body, the block header stores an input information characteristic value, a version number, a timestamp and a difficulty value, and the block main body stores input information; the next block of the starting block takes the starting block as a parent block, the next block also comprises a block head and a block main body, the block head stores the input information characteristic value of the current block, the block head characteristic value of the parent block, the version number, the timestamp and the difficulty value, and the like, so that the block data stored in each block in the block chain is associated with the block data stored in the parent block, and the safety of the input information in the block is ensured.
For better explaining the method in the embodiment of the present application, referring to fig. 1C, fig. 1C is a schematic diagram of node interaction of a blockchain provided in the embodiment of the present application. As shown in fig. 1C, a plurality of user nodes may be disposed in the data sharing system to execute the user group management method of the distributed application program according to the present application. Each user node can be understood as a user side terminal, and a client of a distributed application program user is used, wherein the user node 1, the user node 2, the user node 3 and the user node 4 belong to members of a user group 1, and application operations performed in the user group 1 can only communicate with a key in the user group 1 for decryption and acquisition. For these application operations, the user nodes 5 and 6 not belonging to the user group 1 cannot be decrypted.
The embodiments of the present application will be described below with reference to the drawings.
Referring to fig. 2A, fig. 2A is a schematic flowchart illustrating a user group management method for a distributed application according to an embodiment of the present disclosure. The method can comprise the following steps:
201. and the target user node generates a first target block according to the operation of inputting the block password in the distributed application program.
In this embodiment, the user node may be a terminal (client) used by a user side. In particular implementations, the above-described terminals may also be referred to as terminal devices, including but not limited to other portable devices such as mobile phones, laptop computers, or tablet computers having touch-sensitive surfaces (e.g., touch screen displays and/or touch pads), which may implement location services and navigation functions through application programs. It should also be understood that in some embodiments, the device is not a portable communication device, but is a desktop computer having a touch-sensitive surface (e.g., a touch screen display and/or touchpad).
The block cipher may be a two-dimensional code or a numeric number, such as a common invitation code. The target user applies for entering the corresponding user group by inputting the group password, such as scanning an invitation code with a mobile phone, or directly inputting a number corresponding to the user group in the distributed application program.
In an optional implementation, before the target user node generates the first target tile, the method further includes: the target user node receives the block cipher transmitted from the other user nodes.
For example, as shown in FIG. 1C, user node 2 in user group 1 sends user node 6 an invitation code "123456" for user group 1 to invite user node 6 to user group 1. The user node 6 applies for entering the corresponding user group 1 by inputting the invitation code "123456" corresponding to the user group in the distributed application program.
202. And under the condition that the first target block is detected, all user nodes in the distributed system acquire the block passwords from the first target block, and divide the target users into corresponding user groups according to the block passwords.
In this document, a cipher is a sequence of symbols that conceals the actual content.
In an optional implementation manner, the dividing the target user into the corresponding user groups according to the group password includes, under the condition that the group password input by the target user is consistent with the entry password, dividing the target user into the user groups corresponding to the entry password, where each user group corresponds to only one entry password.
For example, as shown in fig. 1C, if the user node 1 inputs a group password "123456" in the distributed application, and the entry password corresponding to the user group 1 is "123456", the group password is the same as the entry password, and the user node 1 is divided into the user group 1.
203. And generating a second target block by the user nodes of the same user group in the distributed system according to the operation of confirming that the target user enters the user group, and storing the second target block in the distributed system.
In the embodiment of the application, other user nodes of the user group confirm the operation of the target user to enter the user group, namely, agree to the target user to enter the user group.
204. And under the condition that the second target block is detected, the target user enters the user group to obtain the operation keys of the user group, each user group corresponds to one operation key, and the operation keys can encrypt or decrypt any distributed application program operation performed in the user group.
In this document, a key is a parameter that is input in an algorithm that converts plaintext into ciphertext or converts ciphertext into plaintext. Therefore, the above-mentioned "operation key" is the user group
It is understood that by entering the block password, the target user may apply for entry into the corresponding user group. After receiving the request information and other user nodes in the user group input agreement information, the target user can enter the user group.
In an optional implementation, before the target user node generates the first target tile, the method further includes: the target user node receives the block cipher transmitted from the other user nodes.
In an optional implementation manner, the dividing the target user into the corresponding user groups according to the group password includes, under the condition that the group password input by the target user is consistent with the entry password, dividing the target user into the user groups corresponding to the entry password, where each user group corresponds to only one entry password.
As shown in fig. 2B, fig. 2B is a schematic flowchart of another user group management method for a distributed application according to an embodiment of the present disclosure. Compared to the method shown in fig. 2A, the method further includes:
205. any operation in the distributed application program performed by the target user node in the user group is recorded as a corresponding third target block after being encrypted by the operation key, and the third target block is stored in the distributed system.
206. And under the condition that the third target block is detected, other user nodes in the user group decrypt the third target block through the operation key to acquire the operation of the target user.
In one embodiment, any application operation in the user group may be encrypted or decrypted in the blockchain based on a form of Public Key (Public Key) and private Key (PrivateKey). The public key and the private key are a key pair (i.e. a public key and a private key) obtained through an algorithm, the public key is a public part of the key pair, and the private key is a non-public part. The public key is typically used to encrypt session keys, verify digital signatures, or encrypt data that can be decrypted with a corresponding private key. The key pair derived by such an algorithm is guaranteed to be unique worldwide. When using this key pair, if one of the keys is used to encrypt a piece of data, the other key must be used to decrypt the piece of data. For example, encrypting data with a public key necessitates decryption with the private key, and if encrypting with the private key, also must decrypt with the public key, otherwise decryption will not succeed.
It should be appreciated that since the blockchain is a decentralized, distributed database, each time data is processed, one of the servers in the blockchain network needs to be selected as an executor to process the data. The rule for selecting the server each time is a Consensus mechanism, which in the embodiment of the present application may be a workload certification mechanism (Proof of Work, POW), an equity certification mechanism (Proof of stamp, POS), a Ripple Consensus mechanism (Ripple Consensus), an authorized equity certification mechanism (DPOS), and the like, and is not limited herein.
It can be understood that the application discloses a user group management method and system for distributed application programs, which can divide different users into corresponding user groups according to a group password and pass keys of the respective user groups. And the user node is operated at all DApp in the user group, is encrypted by the key, is recorded as a third target block and is stored in the distributed system. And under the condition that the third target block is detected, other user nodes in the user group decrypt the third target block through the operation key. Therefore, only the users of the user group can obtain the information of the user group without being disclosed to the outside.
For example, as shown in fig. 1C, the user node 1, the user node 2, the user node 3, and the user node 4 belong to members of the user group 1, and application operations performed by them in the user group 1 can only communicate with a key in the user group 1 for decryption. For these application operations, the user nodes 5 and 6 not belonging to the user group 1 cannot be decrypted.
Fig. 3A is a flowchart illustrating another user group management method for a distributed application according to an embodiment of the present disclosure. The method can comprise the following steps:
301. and the target user node generates a first target block according to the operation of inputting the block password in the distributed application program, and stores the first target block in the distributed system.
The block cipher may be a two-dimensional code or a numeric number, such as a common invitation code. The target user applies for entering the corresponding user group by inputting the group password, such as scanning an invitation code with a mobile phone, or directly inputting a number corresponding to the user group in the distributed application program.
In an optional implementation, before the target user node generates the first target tile, the method further includes: the target user node receives the block cipher transmitted from the other user nodes.
For example, as shown in FIG. 1C, user node 2 in user group 1 sends user node 6 an invitation code "123456" for user group 1 to invite user node 6 to user group 1. The user node 6 applies for entering the corresponding user group 1 by inputting the invitation code "123456" corresponding to the user group in the distributed application program.
302. And under the condition that the first target block is detected, all user nodes in the distributed system acquire the block passwords from the first target block, and divide the target users into corresponding user groups according to the block passwords.
In this document, a cipher is a sequence of symbols that conceals the actual content.
In an optional implementation manner, the dividing the target user into the corresponding user groups according to the group password includes, under the condition that the group password input by the target user is consistent with the entry password, dividing the target user into the user groups corresponding to the entry password, where each user group corresponds to only one entry password.
For example, as shown in fig. 1C, if the user node 1 inputs a group password "123456" in the distributed application, and the entry password corresponding to the user group 1 is "123456", the group password is the same as the entry password, and the user node 1 is divided into the user group 1.
303. And generating a second target block by the user nodes of the same user group in the distributed system according to the operation of confirming that the target user enters the user group, and storing the second target block in the distributed system.
In the embodiment of the application, other user nodes of the user group confirm the operation of the target user to enter the user group, namely, agree to the target user to enter the user group.
304. And under the condition that the second target block is detected, the target user enters the user group to obtain the operation keys of the user group, each user group corresponds to one operation key, and the operation keys can encrypt or decrypt any distributed application program operation performed in the user group.
In this document, a key is a parameter that is input in an algorithm that converts plaintext into ciphertext or converts ciphertext into plaintext. Therefore, the above-mentioned "operation key" is the user group
305. And the target user node initiates lottery drawing operation in the user group, outputs the number of winners, records the user operation as a corresponding third target block after the user operation is encrypted by the operation key, and stores the third target block in the distributed system.
In this embodiment, the number of winning people may be a positive integer less than or equal to the number of user nodes in the user group.
306. And under the condition that the third target block is detected, other user nodes in the user group decrypt the third target block through the operation key to acquire the operation of the target user.
In this embodiment, the other user nodes in the user group decrypt the third target block through the operation key to obtain the operation of initiating the lottery of the target user.
307. And the target user node randomly selects the prize-winning users from the user group according to the number of the prize-winning people to form a prize-winning list.
308. And after being encrypted by the operation key, the prize winning list is recorded as a prize winning block and stored in the distributed system.
309. And under the condition that the prize winning block is detected, all user nodes in the user group decrypt the prize winning block through the operation key to obtain a prize winning list.
For example, as shown in fig. 1C, the user node 1 initiates a lottery operation in the user group 1, and the number of winners is 1; the user node 1 randomly selects 1 prize-winning user from the user group 1: the user node 3 forms a winning list. The prize winning list is recorded as a prize winning block after being encrypted by the operation key and is stored in the distributed system. And in the case that the winning block is detected, all the user nodes in the user group 1 decrypt the winning block through the operation key to obtain a winning list. In the whole process, only the user node in the user group 1 can decrypt the information of the third target block through the key to obtain the operation of initiating the lottery of the target user. This is not disclosed for both the customer node 5 and the customer node 6.
Fig. 3B is a flowchart illustrating another user group management method for a distributed application according to an embodiment of the present disclosure. The method can comprise the following steps:
361. and the target user node generates a first target block according to the operation of inputting the block password in the distributed application program, and stores the first target block in the distributed system.
The block cipher may be a two-dimensional code or a numeric number, such as a common invitation code. The target user applies for entering the corresponding user group by inputting the group password, such as scanning an invitation code with a mobile phone, or directly inputting a number corresponding to the user group in the distributed application program.
In an optional implementation, before the target user node generates the first target tile, the method further includes: the target user node receives the block cipher transmitted from the other user nodes.
For example, as shown in FIG. 1C, user node 2 in user group 1 sends user node 6 an invitation code "123456" for user group 1 to invite user node 6 to user group 1. The user node 6 applies for entering the corresponding user group 1 by inputting the invitation code "123456" corresponding to the user group in the distributed application program.
362. And under the condition that the first target block is detected, all user nodes in the distributed system acquire the block passwords from the first target block, and divide the target users into corresponding user groups according to the block passwords.
In this document, a cipher is a sequence of symbols that conceals the actual content.
In an optional implementation manner, the dividing the target user into the corresponding user groups according to the group password includes, under the condition that the group password input by the target user is consistent with the entry password, dividing the target user into the user groups corresponding to the entry password, where each user group corresponds to only one entry password.
For example, as shown in fig. 1C, if the user node 1 inputs a group password "123456" in the distributed application, and the entry password corresponding to the user group 1 is "123456", the group password is the same as the entry password, and the user node 1 is divided into the user group 1.
363. And generating a second target block by the user nodes of the same user group in the distributed system according to the operation of confirming that the target user enters the user group, and storing the second target block in the distributed system.
In the embodiment of the application, other user nodes of the user group confirm the operation of the target user to enter the user group, namely, agree to the target user to enter the user group.
364. And under the condition that the second target block is detected, the target user enters the user group to obtain the operation keys of the user group, each user group corresponds to one operation key, and the operation keys can encrypt or decrypt any distributed application program operation performed in the user group.
In this document, a key is a parameter that is input in an algorithm that converts plaintext into ciphertext or converts ciphertext into plaintext. Therefore, the above-mentioned "operation key" is the user group
365. And the target user node initiates lottery drawing operation in the user group, and the user operation is recorded as a corresponding third target block after being encrypted by the operation key and is stored in the distributed system.
366. And under the condition that the third target block is detected, other user nodes in the user group decrypt the third target block through the operation key to acquire the lottery drawing operation of the target user. All user nodes in the user group input the willingness to participate in or not to participate in the operation, the willingness to participate in the operation is recorded as a willingness block after being encrypted by an operation key, and the willingness block is stored in the distributed system.
367. And under the condition that the wish block is detected, the target user node decrypts the wish block through the operation key to obtain a user list willing to participate.
368. And inputting the number of the winners by the user node, and randomly selecting a winners list from the user list willing to participate according to the number of the winners.
369. The prize winning list is recorded as a prize winning block after being encrypted by the operation key and is stored in the distributed system.
370. And under the condition that the prize winning block is detected, all user nodes in the user group decrypt the prize winning block through the operation key to obtain a prize winning list.
Different from the previous embodiment, after the target user initiates the lottery operation, whether members in the user group are willing to participate or not is requested, and the winning user is drawn from the willing users.
For example, as shown in fig. 1C, the user node 1 initiates a lottery operation within the user group 1; the user nodes 2 and 3 in the user group 1 input the willingness to participate in the operation, and the user node 4 inputs the unwilling to participate in the operation, that is, the user node 4 refuses to participate in the lottery. After the number of winning people is 1, the user node 1 will randomly screen out a winning user between the user node 2 and the user node 3: such as the user node 3, forms a prize list. The prize winning list is recorded as a prize winning block after being encrypted by the operation key and is stored in the distributed system. And in the case that the winning block is detected, all the user nodes in the user group 1 decrypt the winning block through the operation key to obtain a winning list. In the whole process, only the user nodes in the user group 1 can decrypt the information of the operation block through the secret key to obtain the operation of initiating the lottery of the target user. This is not disclosed for both the customer node 5 and the customer node 6.
Based on the description of the embodiment of the user group management method of the distributed application program, the embodiment of the application also discloses a user group management system of the distributed application program. Referring to fig. 3C, the user group management system 300 includes:
a target user node 310 for: generating a first target block according to the operation of inputting the block cipher in the distributed application program, and storing the first target block in the distributed system; under the condition that the second target block is detected, the target user enters a user group to obtain an operation key of the user group;
all user nodes 320 in the distributed system for: under the condition that the first target block is detected, acquiring a block password from the first target block, and dividing target users into corresponding user groups according to the block password;
the user nodes 330 of the same user group in the distributed system are configured to: and generating a second target block according to the operation of confirming the target user to enter the user group, and storing the second target block in the distributed system.
According to an embodiment of the present application, each step involved in the methods shown in fig. 2A and fig. 2B may be performed by each node in the user group management system 300 shown in fig. 3C, and is not described herein again.
Based on the description of the method embodiment and the apparatus embodiment, an embodiment of the present application further provides a terminal, and in an embodiment, the terminal in the embodiment of the present application may be used to perform a series of processes, including a method that may be executed by a user node in the embodiments shown in fig. 2A and fig. 2B, and details are not repeated here.
Based on the description of the method embodiment and the device embodiment, the embodiment of the application further provides an electronic device. Referring to fig. 4, the electronic device 400 includes at least a processor 401, an input device 402, an output device 403, and a computer storage medium 404. The processor 401, input device 402, output device 403, and computer storage medium 404 within the terminal may be connected by a bus or other means.
A computer storage medium 404 may be stored in the memory of the terminal, said computer storage medium 404 being adapted to store a computer program comprising program instructions, said processor 401 being adapted to execute said program instructions stored by said computer storage medium 404. The processor 401 (or CPU) is a computing core and a control core of the terminal, and is adapted to implement one or more instructions, and in particular, is adapted to load and execute the one or more instructions so as to implement a corresponding method flow or a corresponding function; in one embodiment, the processor 401 described above in the embodiment of the present application may be configured to perform a series of processes, including a method executable by the user node in the embodiment shown in fig. 2A and fig. 2B, and the like.
An embodiment of the present application further provides a computer storage medium (Memory), where the computer storage medium is a Memory device in a terminal and is used to store programs and data. It is understood that the computer storage medium herein may include a built-in storage medium in the terminal, and may also include an extended storage medium supported by the terminal. The computer storage medium provides a storage space that stores an operating system of the terminal. Also stored in this memory space are one or more instructions, which may be one or more computer programs (including program code), suitable for loading and execution by processor 401. The computer storage medium may be a high-speed RAM memory, or may be a non-volatile memory (non-volatile memory), such as at least one disk memory; and optionally at least one computer storage medium located remotely from the processor.
In one embodiment, one or more instructions stored in a computer storage medium may be loaded and executed by processor 401 to perform the corresponding steps of the method in the above-described embodiments; in a specific implementation, one or more instructions in the computer storage medium may be loaded by the processor 401 and executed to perform any step of the user node execution method in the embodiment shown in fig. 2A and fig. 2B, which is not described herein again.
It can be clearly understood by those skilled in the art that, for convenience and brevity of description, the specific working processes of the above-described apparatuses and modules may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In the several embodiments provided in the present application, it should be understood that the disclosed system, apparatus and method may be implemented in other ways. For example, the division of the module is only one logical division, and other divisions may be possible in actual implementation, for example, a plurality of modules or components may be combined or integrated into another system, or some features may be omitted, or not performed. The shown or discussed mutual coupling, direct coupling or communication connection may be an indirect coupling or communication connection of devices or modules through some interfaces, and may be in an electrical, mechanical or other form.
Modules described as separate parts may or may not be physically separate, and parts displayed as modules may or may not be physical modules, may be located in one place, or may be distributed on a plurality of network modules. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the present embodiment.
The computer instructions may be stored on or transmitted from a website, computer, server, or data center via a wired (e.g., coaxial cable, fiber optic cable, digital subscriber line (DS L)) or wireless (e.g., infrared, wireless, microwave, etc.) manner to another website, computer, server, or data center.
Claims (10)
1. A user group management method for distributed application programs is characterized by comprising the following steps:
the target user node generates a first target block according to the operation of inputting the block password in the distributed application program;
under the condition that the first target block is detected, all user nodes in the distributed system acquire the block passwords from the first target block, and divide the target users into corresponding user groups according to the block passwords;
generating a second target block by the user nodes of the same user group in the distributed system according to the operation of confirming that the target user enters the user group, and storing the second target block in the distributed system;
and under the condition that the second target block is detected, the target user enters the user group to obtain operation keys of the user group, each user group corresponds to one operation key, and the operation keys can encrypt or decrypt any distributed application program operation performed in the user group.
2. The method of claim 1, further comprising:
any operation in the distributed application program performed by the target user node in the user group is recorded in a corresponding third target block after being encrypted by the operation key, and is stored in the distributed system.
3. The method of claim 2, further comprising:
and under the condition that the third target block is detected, other user nodes in the user group decrypt the third target block through the operation key to acquire the operation of the target user.
4. The method of claim 1,
the dividing the target users into corresponding user groups according to the block cipher comprises,
and under the condition that the block password input by the target user is consistent with the access password, dividing the target user into user groups corresponding to the access password, wherein each user group only corresponds to one access password.
5. The method of claim 1,
before the target user node generates the first target block according to the operation of inputting the block password in the distributed application program, the method further comprises the following steps:
the target user node receives the block cipher transmitted from other user nodes.
6. The method of claim 2,
any operation in the distributed application by the target user node within the user group, including:
the target user node initiates lottery drawing operation in the user group and outputs the number of winnings;
the method further comprises the following steps:
the target user node randomly selects prize winning users from the user group according to the number of the prize winning users to form a prize winning list;
and after being encrypted by the operation key, the prize winning list is recorded as a prize winning block and stored in the distributed system.
7. The method of claim 6, further comprising:
and under the condition that the prize winning block is detected, all user nodes in the user group decrypt the prize winning block through the operation key to obtain the prize winning list.
8. The method of claim 2,
any operation in the distributed application by the target user node within the user group, including:
the target user node initiates a lottery operation within the user group,
the method further comprises the following steps:
under the condition that the third target block is detected, all user nodes in the user group decrypt the third target block through the operation key to obtain the lottery drawing operation;
and inputting the willing participation or the unwilling participation into the operation by all user nodes in the user group, recording the willing participation operation as a willingness block after the willing participation operation is encrypted by the operation key, and storing the willingness block in the distributed system.
9. The method of claim 8, further comprising:
under the condition that the wish block is detected, the target user node decrypts the wish block through the operation key to obtain the user list willing to participate;
the user node inputs the number of the winners, and randomly selects a winners list from the user list willing to participate according to the number of the winners;
the prize winning list is recorded as a prize winning block after being encrypted by the operation key and is stored in the distributed system;
and under the condition that the prize winning block is detected, all user nodes in the user group decrypt the prize winning block through the operation key to obtain the prize winning list.
10. A user group management system for a distributed application, comprising:
a target user node for: generating a first target block according to the operation of inputting a block password in a distributed application program, and storing the first target block in a distributed system; under the condition that the second target block is detected, the target user enters the user group to obtain an operation key of the user group;
all user nodes in the distributed system for: under the condition that the first target block is detected, the block password is obtained from the first target block, and the target users are divided into corresponding user groups according to the block password;
user nodes of a same user group in the distributed system, configured to: and generating a second target block according to the operation of confirming the target user to enter the user group, and storing the second target block in the distributed system.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010239067.6A CN111431728B (en) | 2020-03-30 | 2020-03-30 | User group management method of distributed application program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010239067.6A CN111431728B (en) | 2020-03-30 | 2020-03-30 | User group management method of distributed application program |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111431728A true CN111431728A (en) | 2020-07-17 |
CN111431728B CN111431728B (en) | 2024-02-09 |
Family
ID=71549258
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010239067.6A Active CN111431728B (en) | 2020-03-30 | 2020-03-30 | User group management method of distributed application program |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111431728B (en) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107079059A (en) * | 2016-12-21 | 2017-08-18 | 深圳前海达闼云端智能科技有限公司 | Block chain storage method and device and node equipment |
CN109617699A (en) * | 2019-01-16 | 2019-04-12 | 北京沃东天骏信息技术有限公司 | A kind of key generation method, block chain network service platform and storage medium |
CN109743185A (en) * | 2019-03-19 | 2019-05-10 | 全链通有限公司 | Group communication method, block chain node and medium based on domain name block chain |
CN109981305A (en) * | 2019-03-19 | 2019-07-05 | 全链通有限公司 | Group communication method, equipment and computer readable storage medium |
CN110445627A (en) * | 2019-08-12 | 2019-11-12 | 腾讯科技(深圳)有限公司 | Group updating method, apparatus, computer equipment and computer storage medium |
CN110493039A (en) * | 2018-08-06 | 2019-11-22 | 腾讯科技(深圳)有限公司 | Device management method and equipment management system based on block chain |
CN110537355A (en) * | 2017-04-18 | 2019-12-03 | 区块链控股有限公司 | Consensus based on secure blockchains |
CN110555310A (en) * | 2018-06-01 | 2019-12-10 | 厦门本能管家科技有限公司 | private data secure storage and sharing method and device thereof |
WO2020022599A1 (en) * | 2018-07-27 | 2020-01-30 | 박기업 | Node group managing device and computing device for configuring group key-based dual signature transaction structure in blockchain network |
-
2020
- 2020-03-30 CN CN202010239067.6A patent/CN111431728B/en active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107079059A (en) * | 2016-12-21 | 2017-08-18 | 深圳前海达闼云端智能科技有限公司 | Block chain storage method and device and node equipment |
CN110537355A (en) * | 2017-04-18 | 2019-12-03 | 区块链控股有限公司 | Consensus based on secure blockchains |
CN110555310A (en) * | 2018-06-01 | 2019-12-10 | 厦门本能管家科技有限公司 | private data secure storage and sharing method and device thereof |
WO2020022599A1 (en) * | 2018-07-27 | 2020-01-30 | 박기업 | Node group managing device and computing device for configuring group key-based dual signature transaction structure in blockchain network |
CN110493039A (en) * | 2018-08-06 | 2019-11-22 | 腾讯科技(深圳)有限公司 | Device management method and equipment management system based on block chain |
CN109617699A (en) * | 2019-01-16 | 2019-04-12 | 北京沃东天骏信息技术有限公司 | A kind of key generation method, block chain network service platform and storage medium |
CN109743185A (en) * | 2019-03-19 | 2019-05-10 | 全链通有限公司 | Group communication method, block chain node and medium based on domain name block chain |
CN109981305A (en) * | 2019-03-19 | 2019-07-05 | 全链通有限公司 | Group communication method, equipment and computer readable storage medium |
CN110445627A (en) * | 2019-08-12 | 2019-11-12 | 腾讯科技(深圳)有限公司 | Group updating method, apparatus, computer equipment and computer storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN111431728B (en) | 2024-02-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6302592B2 (en) | Information processing apparatus, information processing method, and program | |
US10880732B2 (en) | Authentication of phone caller identity | |
US10073958B2 (en) | Security system for verification of user credentials | |
US11875607B2 (en) | Electronic voting system and control method | |
US20180205547A1 (en) | Method for providing security using secure computation | |
US8335925B2 (en) | Method and arrangement for secure authentication | |
US8984295B2 (en) | Secure access to electronic devices | |
CN111431713B (en) | Private key storage method and device and related equipment | |
CN101965574B (en) | Authentication information generation system, authentication information generation method and a client device | |
JP6709243B2 (en) | Information processing equipment | |
JPWO2008029723A1 (en) | Data usage management system | |
CN108199847B (en) | Digital security processing method, computer device, and storage medium | |
EP3185465A1 (en) | A method for encrypting data and a method for decrypting data | |
JP2022104802A (en) | Group service achieving method, device, apparatus and storage medium | |
CN108369614A (en) | User authen method and system for carrying out the process | |
CN111327426A (en) | Data sharing method and related device, equipment and system | |
CN111523142B (en) | Data processing method, device, electronic equipment and medium | |
JP6293245B1 (en) | Transaction mutual monitoring system with enhanced security | |
US11139969B2 (en) | Centralized system for a hardware security module for access to encryption keys | |
US20060129815A1 (en) | Generation of identities and authentication thereof | |
US20210248863A1 (en) | Method, system, and device for selecting a winner of a raffle based on content from raffle tickets | |
CN116566695A (en) | Encryption transmission method and system | |
CN111431728B (en) | User group management method of distributed application program | |
US11716331B2 (en) | Authentication method, an authentication device and a system comprising the authentication device | |
JP6627398B2 (en) | Proxy authentication device, proxy authentication method and proxy authentication program |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |