Generally speaking, users can comment on messages on message boards. Now, let's think about this question: Who owns the data property rights of the comments? In fact, before thinking about this problem, we need to figure out what data property rights are. Data property right is a proof of ownership based on data sovereignty, and it is the ownership of data property. In other words, our review data may be valuable in the future. For example, a writer who won the Nobel Prize for Literature in the future once published very philosophical comment data on our message board. Many people want to ask for high price for such comment data. Now, it seems that we can answer the previous question: the data property rights of comments should belong to the commenter himself. However, we seem to have forgotten a premise: comments are secondary creations based on comments. In this way, it is acceptable that the data property rights of the comments belong to the creators of the comments. Therefore, there is no hard and fast rule for the division of data property rights of comments. The data property rights of comments can belong to the commenter, the commenter, the DAO organization, or even the smart contract (all human beings).
Starting from the question in the previous section, we can make a further illusion: if at some point in the future, the valuable comment data needs to complete the transfer of property rights with the participation and authorization of multiple parties, and the stakeholders will This transaction is concluded by signing a contract. At this time, the property rights of the comment data are transferred to the new owner. At the same time, the signed contract also creates a new data property right, which belongs to the multiple parties who signed the contract. owner. Therefore, we can find that the property rights of data show a pyramid structure with the passage of time and the change of data exchange patterns.
For the pyramid model of data property rights, we summarize four processing methods:
-
Private computing: only one Owner This is the most common situation, which means that the data ownership of the DEC computing process is fully private, usually private and not suitable for disclosure. Local computing running on legacy devices today falls into this category. The reading of the input named data, the calculation, and the saving of the result named data can be completed in a single machine, without relying on the information of other people in the network.
-
Re-creation calculation: there are multiple Owners This is independent authoring based on old data. Represents secondary processing based on other people's information to obtain an exclusive exclusive content. This is the predominant form of public information existence on the Internet. Today's traditional Internet content generation falls into this category, and CYFS's ObjectLink can reliably rely on existing content.
-
Data exchange calculation: there are a limited number of Owners This is the general form of DEC and represents the collaborative construction of new information by multiple people. For example, to modify a three-party contract, as long as the three parties who signed the contract agree, the content of the contract can be modified to a new version. In fact, most of the human needs for trusted computing should fall into this category, which is also the fundamental reason for the existence of consortium chains. The calculation result of DEC only needs to be verified by the property rights co-owner of the data, and does not need to be recognized by other nodes in the network. This kind of calculation can be better realized is the primary design goal of the CYFS authorized data network.
-
Consensus calculation: there are infinitely many Owners Property rights belong to all human beings, and its modification needs to be approved by the entire network. At this time, DEC is equivalent to a smart contract. A typical example of an account balance, whose data property belongs to the entire network. The current on-chain data stored on the blockchain is this kind of data, which is very important, but only a small part of human data. We should not blindly put all data on the blockchain.
A data exchange contract can be defined with the following formula:
{S} = Fn({D}) where:
{D} is the set of known named data
Fn is a named function, also known as a data exchange contract
{S} is the set of result named data, representing the result of Fn running with {D} as the parameter.
We can use the triple (Fn,{D},{S}) to describe a completed data exchange contract.
There are 2 concepts to explain here:
- Named data: Name the data to get the ID of the named data (the name of the data), which can be regarded as a general method of encapsulating arbitrary data into a trusted envelope.
- Named Function: A "Pure Function" in FP (Functional Programming): that is, all states of a running dependency come from its input parameters.
Through the definition of named data and named function, we further abstract the basic working principle of the data exchange contract: a set of definite data to determine property rights, after a definite calculation, a new set of definite data to determine property rights is obtained. The calculation process is Verifiable, tampering with calculation results can be found. The process of obtaining a new set of named data through calculation from a set of existing named data is the data exchange process.
Here are 2 concepts explained first:
- Comment group: A collection of group members who have a list of comments. In terms of design, there are two options. One is the global speech management DAO. There is an algorithm in the DAO that randomly assigns an editorial group to have this comment list. The other is the smart contract, which has this list of comments by presetting an editorial group in the contract code.
- Consensus calculation: The calculation process carried out in decentralized nodes to reach consensus. The main form is to sign the data object through each node. As long as the signed ratio is greater than or equal to the specified ratio (consensus rate) of the nodes to complete the signature, it is considered a consensus.
We stipulate that any comment must be signed by all team members before reaching consensus, that is, the consensus rate is 1. Therefore, a comment requires 3 steps to achieve consensus within the comment group:
- Create a new comment object and sign it yourself;
- Save your signed comment object in the
comment voting list
and notify other team members; - After the group member receives the comment object, verify that they have signed it:
- If you do not sign yourself, verify the voter rate after signing it yourself. If the voting rate reaches the consensus rate, it means that the comment object at this time has reached a consensus. Save the comment object to the
comment list
, delete the comment object corresponding to thecomment voting list
, and notify other team members. If the vote does not reach the consensus rate, save the comment object to thecomment vote list
and notify other group members. - If you have already signed your name, verify the voting rate. If the voting rate reaches the consensus rate, it means that the comment object at this time has reached a consensus. Save the comment object to the
comment list
and delete the correspondingcomment voting list
Comment object. If the vote does not reach the consensus rate, judge whether the signature rate of the current comment object is greater than the signature rate of the comment object corresponding to thecomment voting list
, if it is greater, replace the comment object of thecomment voting list
, if it is less than or equal to ignore it .
- If you do not sign yourself, verify the voter rate after signing it yourself. If the voting rate reaches the consensus rate, it means that the comment object at this time has reached a consensus. Save the comment object to the
To prevent security risks such as DDos attacks, whether DAOs or smart contracts are used, defensive coding and thorough testing are recommended.
In the new consensus process, we mainly make Call calls to the specified consensus interface. The permission control here can refer to the content of adding cross-zone Call permission to the message board
that I learned earlier.