CN111641559A - Block chain-based multi-person session data transmission method and system and computer equipment - Google Patents
Block chain-based multi-person session data transmission method and system and computer equipment Download PDFInfo
- Publication number
- CN111641559A CN111641559A CN202010321568.9A CN202010321568A CN111641559A CN 111641559 A CN111641559 A CN 111641559A CN 202010321568 A CN202010321568 A CN 202010321568A CN 111641559 A CN111641559 A CN 111641559A
- Authority
- CN
- China
- Prior art keywords
- session
- node
- task
- data
- block chain
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/123—Evaluation of link metrics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/16—Multipoint routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
Abstract
The application relates to a block chain-based multi-person session data transmission method, a system and computer equipment. The method comprises the following steps: a block link point in a block link network receives a session request; generating a data transmission task corresponding to the session request, and broadcasting the data transmission task to the block chain network; the broadcasted data transmission task is used for indicating the block chain network to determine an optimal transmission path corresponding to the data transmission task through a consensus algorithm; when session data corresponding to the data transmission task are received, determining a next task participation node according to the optimal transmission path; and transmitting the session data to the next task participating node to instruct the next task participating node to continue transmitting the session data according to the optimal transmission path. By adopting the method, the data security of multi-person conversation can be improved.
Description
Technical Field
The present application relates to the field of internet technologies, and in particular, to a method, a system, and a computer device for transmitting data of a multi-user session based on a block chain.
Background
With the continuous development of internet technology, multi-person conversations based on the internet appear, and two or more individuals or groups in different positions can realize instant interaction and communication through the multi-person conversations, so that cross-region communication is realized. The related data of the multi-person session may include confidential content, and thus how to ensure the security of the related data of the multi-person session is a concern.
At present, a session system is usually set up and operated by a service provider, and a software or hardware terminal is provided for a user to use, and the user participates in a multi-person session through the terminal. However, in this session mode, the related data related to the multi-person session is transmitted through the centralized server of the service provider, and due to the rapid development of technologies such as big data, artificial intelligence, and hacking technology, and the limited security guarantee capability of the service provider, the security of data transmission is reduced, so that there is a problem that the data security of the multi-person session is low.
Disclosure of Invention
In view of the foregoing, there is a need to provide a method, a system and a computer device for data transmission based on block chain for multi-person conversation, which can improve the data security of multi-person conversation.
A multi-person session data transmission method based on a block chain is applied to a block chain node in a block chain network, and the method comprises the following steps:
receiving a session request;
generating a data transmission task corresponding to the session request, and broadcasting the data transmission task to the block chain network; the broadcasted data transmission task is used for indicating the block chain network to determine an optimal transmission path corresponding to the data transmission task through a consensus algorithm;
when session data corresponding to the data transmission task are received, determining a next task participation node according to the optimal transmission path;
and transmitting the session data to the next task participating node to instruct the next task participating node to continue transmitting the session data according to the optimal transmission path.
In one embodiment, the step of determining, by the blockchain network through a consensus algorithm, an optimal transmission path corresponding to the data transmission task includes:
determining, by each blockchain node in the blockchain network, a candidate transmission path corresponding to the data transmission task according to the data transmission task and node state data of each blockchain node in the blockchain network;
and screening the optimal transmission path corresponding to the data transmission task from the candidate transmission paths by the block chain network through a consensus algorithm.
In one embodiment, the determining, according to the data transmission task and node state data of each blockchain node in the blockchain network, a candidate transmission path corresponding to the data transmission task includes:
determining the geographic position of each session terminal according to the data transmission task;
determining a directed weight graph according to the node state data of each blockchain node in the blockchain network and the geographic position of the session terminal; the directed weight graph comprises each block chain link point in the block chain network and a session terminal node corresponding to the session terminal;
and determining a candidate transmission path corresponding to the data transmission task according to the determined directed weight graph.
In one embodiment, the determining a directed weight graph according to the node state data of each blockchain node in the blockchain network and the geographic location of the session terminal includes:
calculating the distance score between each block chain node and each other block chain node in the block chain network according to the node state data of each block chain node in the block chain network;
calculating the distance score between each block chain node in the block chain network and the session terminal node corresponding to each session terminal according to the node state data of each block chain node in the block chain network and the geographic position of the session terminal;
and taking each block chain link point and each session terminal node in the block chain network as nodes of a directed negative weight graph, and taking the distance scores as weights between two corresponding nodes to construct the directed negative weight graph.
In one embodiment, the screening, by the blockchain network through a consensus algorithm, an optimal transmission path corresponding to the data transmission task from the candidate transmission paths includes:
and each block chain node in the block chain network acquires a candidate transmission path determined by each block chain node in the block chain network for the data transmission task, and determines the candidate transmission path with the ratio larger than a preset ratio threshold value in the acquired candidate transmission paths as an optimal transmission path.
In one embodiment, the generating a data transmission task corresponding to the session request includes:
carrying out validity verification on the session request;
when the authentication is passed, recording the authentication time of the session request;
signing the session request and the verification time through a private key of the block chain node to obtain signature data;
and generating a data transmission task carrying the session request, the verification time, the signature data and the node certificate of the blockchain node.
In one embodiment, the broadcasted data transmission task is further configured to instruct the blockchain network to generate a task key corresponding to the data transmission task; the session data is encrypted through the task key;
the transmitting the session data to the next task participating node to instruct the next task participating node to continue transmitting the session data according to the optimal transmission path includes:
when the next task participating node is a session terminal node, the session terminal node decrypts the session data according to the task key and displays the decrypted session data;
and when the next task participating node is a block chain node, the block chain node continuously transmits the session data according to the optimal transmission path.
In one embodiment, the step of generating, by the blockchain network, a task key corresponding to the data transmission task includes:
after determining an optimal transmission path corresponding to the data transmission task, each block chain node in the block chain network acquires a time stamp determined by the optimal transmission path, a node certificate corresponding to each block chain node in the optimal transmission path, and a user certificate of each session user involved in the data transmission task, and
and generating a task key corresponding to the data transmission task according to the acquired determining timestamp, the node certificate and the user certificate.
In one embodiment, the session request is generated by an operation management platform; the step of generating the session request by the operation management platform includes:
the operation management platform receives an initial session request sent by a session terminal; the initial session request is triggered and generated by the session terminal when the session initiation operation of multiple persons is detected;
the operation management platform determines session users according to the initial session request, and inquires the geographic position corresponding to each session user;
and the operation management platform generates a session request carrying the user identifier and the geographic position of each session user.
In one embodiment, the generating, by the operation management platform, a session request carrying the user identifier and the geographic location of each session user includes:
after the operation management platform determines the request data, signing the request data through a private key of the operation management platform to obtain signed data; the request data comprises a user identification and a geographic position of each session user;
and the operation management platform generates a session request carrying the signature data, the request data and a platform certificate of the operation management platform.
In one embodiment, the method further comprises:
and after the data transmission task is completed, each block chain node in the block chain network determines the reward resource distributed by each block chain node in the optimal transmission path, and updates the account resource in the node account of the corresponding block chain node according to the determined reward resource.
In one embodiment, the method further comprises:
each blockchain node in the blockchain network acquires a corresponding first transaction from a blockchain according to a task identifier corresponding to the data transmission task when acquiring a task ending instruction corresponding to the data transmission task, performs validity check on the task ending instruction according to the first transaction, and broadcasts a validity check result to the blockchain network;
the block chain network performs consensus on the legality checking result determined by each block chain node through a consensus algorithm to obtain a legality checking result finally corresponding to the task ending instruction, generates a second transaction corresponding to the data transmission task when the obtained legality checking result is a checking pass, and writes the second transaction into the block chain; the second transaction comprises the task completion condition of the data transmission task and the task identifier;
and each blockchain node in the blockchain network acquires the second transaction from the blockchain, and determines the task completion condition of the data transmission task according to the second transaction.
In one embodiment, the generating step of the first transaction includes:
after determining the optimal transmission path corresponding to the data transmission task through a consensus algorithm, the block chain network generates a first transaction carrying the data transmission task and the corresponding task identifier, the optimal transmission path, and the consensus algorithm identifier corresponding to the consensus algorithm, and writes the generated first transaction into the corresponding block chain.
A blockchain-based multi-person session data transmission system, the system comprising: a block chain network; the blockchain network comprises a plurality of blockchain nodes;
the block chain node is used for receiving a session request; generating a data transmission task corresponding to the session request, and broadcasting the data transmission task to the block chain network; the broadcasted data transmission task is used for indicating the block chain network to determine an optimal transmission path corresponding to the data transmission task through a consensus algorithm;
the block chain node is further configured to determine a next task participating node according to the optimal transmission path when session data corresponding to the data transmission task is received; and transmitting the session data to the next task participating node to instruct the next task participating node to continue transmitting the session data according to the optimal transmission path.
A computer device comprising a memory storing a computer program and a processor implementing the steps of the above method embodiments when executing the computer program.
A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out the steps of the above-mentioned method embodiments.
When a user requests to initiate a multi-user session, a block chain link point of a session request is received in a block chain network, a corresponding data transmission task is generated based on the session request, and a corresponding optimal transmission path is determined by the block chain network according to the generated data transmission task through a consensus algorithm, so that when the block chain node in the block chain network receives session data corresponding to the data transmission task, a next task participating node is determined according to the optimal transmission path corresponding to the data transmission task, and the session data is transmitted to the next task participating node to instruct the next task participating node to continue to transmit the session data according to the optimal transmission path until the session transmission data is transmitted to a corresponding session user, so as to realize the session data transmission of the multi-person session. Therefore, the optimal transmission path of the data transmission task is dynamically determined by adopting a consensus algorithm through the block chain network, and the conference data is transmitted through the task participation nodes in the optimal transmission path, so that the data transmission safety can be improved under the condition of ensuring the data transmission efficiency, and the data safety of multi-person conversation can be improved.
Drawings
FIG. 1a is a diagram of an application environment of a block chain-based multi-session data transmission method in an embodiment;
FIG. 1b is a diagram of an application environment of a data transmission method for multi-person conversation based on block chain in another embodiment;
FIG. 2 is a flowchart illustrating a block chain-based multi-person session data transmission method according to an embodiment;
fig. 3 is a flowchart illustrating a method for data transmission based on a blockchain multi-person session in another embodiment;
fig. 4 is a schematic diagram illustrating multi-session data transmission based on a blockchain network according to an embodiment;
FIG. 5 is an architecture diagram for implementing a multi-person conversation over a blockchain network in one embodiment;
FIG. 6 is a diagram illustrating an internal structure of a computer device according to an embodiment.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more apparent, the present application is described in further detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the present application and are not intended to limit the present application.
Fig. 1a is a diagram of an application environment of a block chain-based multi-person session data transmission method in an embodiment. Referring to fig. 1, the block chain-based multi-person conversation data transmission method is applied to a block chain-based multi-person conversation data transmission system. The blockchain-based multi-person session data transmission system includes a blockchain network 110. The blockchain network 110 includes a plurality of blockchain nodes 112, and data can be transmitted between each two blockchain nodes.
Fig. 1b is a diagram of an application environment of a data transmission method based on a blockchain for a multi-person conversation in another embodiment. Referring to fig. 1b, the system for transmitting multi-person session data based on a blockchain to which the method for transmitting multi-person session data based on a blockchain is applied includes a blockchain network 110, a session terminal 120, and an operation management platform 130. The session terminal 120, the operation management platform 130 and the blockchain network 110 communicate with each other through the network. The blockchain network 110 includes a plurality of blockchain nodes 112, between which data can be transmitted. The operation management platform 130 corresponds to at least one server. The session terminal 120 may be, but is not limited to, various personal computers, notebook computers, smart phones, tablet computers, and portable wearable devices, and the server may be implemented by a stand-alone server or a server cluster composed of a plurality of servers.
In an embodiment, as shown in fig. 2, a method for transmitting data based on a blockchain multi-person session is provided, which is described by taking the application of the method to a blockchain node in a blockchain network in fig. 1a as an example, and includes the following steps:
step 202, a session request is received.
The session request is a request for triggering initiation of a multi-person session, and is used for indicating a block chain link point in a block chain network to determine an optimal transmission path of multi-person session data, so that the multi-person session data is transmitted based on the determined optimal transmission path, and therefore the multi-person session is achieved.
Specifically, the session terminal detects a multi-person session initiation operation triggered by a session initiator in real time, determines session users according to the detected session initiation operation when the multi-person session initiation operation is detected, generates an initial session request carrying a user identifier of each determined session user, and sends the initial session request to an operation management platform. The operation management platform determines session users according to the received initial session request, locally inquires the geographic position corresponding to each session user, generates a session request carrying the user identifier and the geographic position of each session user, and sends the generated session request to any blockchain node in the blockchain network.
It is to be understood that a session user includes the session initiator and one or more other session participants. The geographic location of the user refers to the geographic location where the session user is currently located. The geographic location may be characterized by location coordinates, such as latitude and longitude coordinates, or by administrative area names, such as the XX city XX zone, or the XX city XX street XX number. When the geographic position of the session user changes, the geographic position of the corresponding user in the operation management platform is correspondingly updated.
In one embodiment, the operation management platform further queries a user certificate corresponding to each session user according to the initial session request, and generates a session request carrying a user identifier, a user certificate, and a geographic location of the user of each session user. The user certificate is a certificate which is generated when the session user registers and can be used for verifying the identity of the user, and specifically may be a certificate which is generated and issued by a certificate authority for the session user.
In one embodiment, the initial session request further carries one or more of session start time, session name, session pre-estimated duration, session end time, session related documents, session data resolution, session data encoding format, random noise, and the like. The session start time refers to a time when a multi-person session is started, and the session end time refers to a time when the multi-person session is ended. The session estimated time length refers to the maximum estimated time length of the multi-person session. Correspondingly, the operation management platform further includes the data included in the initial session request in the session request generated for the initial session request.
In one embodiment, the multi-person session may be a multi-person video session, a multi-person voice session, or a multi-person text session.
In one embodiment, after determining request data carried by a session request according to a session request generation manner provided in one or more embodiments, an operation management platform signs the determined request data through a private key of the operation management platform to obtain signature data, and generates a session request carrying the request data, the signature data, and a platform certificate corresponding to the operation management platform, so that a blockchain node receiving the session request in a blockchain network can verify the signature data based on the platform certificate, and determine reliability of the request data and the session request according to a verification result.
In one embodiment, a multi-person session refers to a multi-person conference, i.e., a cloud conference. Correspondingly, the multi-person video session is a multi-person video conference or a cloud video conference, the multi-person audio session is a multi-person audio conference or a cloud audio conference, the multi-person text session is a multi-person text conference or a cloud text conference, the session user is a participant user, the session starting time is the conference starting time, the session name is the conference name, the session estimated time is the conference estimated time, the session ending time is the conference ending time, the session related documents are the conference related documents, the session data resolution is the session data resolution, and the session data encoding format is the conference data encoding format.
Step 204, generating a data transmission task corresponding to the session request, and broadcasting the data transmission task to the block chain network; and the broadcasted data transmission task is used for indicating the block chain network to determine the optimal transmission path corresponding to the data transmission task through a consensus algorithm.
The data transmission task is a task for appointing to transmit multi-person session data, and each multi-person session can correspond to one data transmission task. The data transfer task specifies session users participating in the multi-person session, and the geographic location of each session user. The optimal transmission path is a path which is most suitable for transmitting multi-person session data corresponding to the data transmission task. The optimal transmission path comprises one or more blockchain nodes in the blockchain network and a session terminal node corresponding to each session user.
Specifically, the blockchain link point receiving the session request in the blockchain network generates a corresponding data transmission task according to the received session request, and broadcasts the generated data transmission task to the blockchain network. And each blockchain node of the data transmission task is acquired in the blockchain network, and based on the data transmission task, an optimal transmission path corresponding to the data transmission task is determined through a preset consensus algorithm, so that corresponding multi-person session data is transmitted through the optimal transmission path in the multi-person session process corresponding to the data transmission task.
In one embodiment, the block chain nodes in the block chain network that receive the session request verify the validity of the received session request, and package the session request into a corresponding data transmission task after the validity verification is passed. The step of validating the validity of the session request comprises: and verifying whether the certificate authority corresponding to the user certificate of each session user is consistent with a preset certificate authority. The preset certificate authority may specifically be a certificate authority corresponding to a node certificate of a blockchain node in the blockchain network. The validity verification can also comprise verifying whether the format of the request parameter in the session request is a preset format, and can also comprise verifying corresponding signature data based on the platform certificate in the session request. It is to be understood that the packaging of the session request into a data transmission task may specifically refer to the packaging of data in the session request into a data transmission task.
In one embodiment, when the validity of the session request passes verification, the block link point records verification time, signs the verified session request and the verification time through a private key of the block link point to obtain signature data, and generates a data transmission task carrying the session request, the verification time, the signature data, and a node certificate of the block link point. It is to be understood that the data transmission task may also be understood as a transaction proposal generated for the session request, and the transaction proposal may further include a corresponding transaction identifier, where the transaction identifier may be obtained by performing a hash calculation on data in the transaction proposal.
In one embodiment, the data transfer task corresponds to a task identifier, which may be generated by a block link node that receives the session request, when the data transfer task is generated, or may be generated by the operation management platform when the session request is generated based on the initial session request.
In one embodiment, the consensus algorithm based on which the blockchain network determines the optimal transmission path corresponding to the data transmission task may be, but is not limited to, a Raft (consistency algorithm) and a PBFT (Practical Byzantine fault tolerance algorithm).
In one embodiment, after determining an optimal transmission path corresponding to a data transmission task through a consensus algorithm, a blockchain network generates a first transaction carrying the data transmission task, a task identifier corresponding to the data transmission task, the optimal transmission path, and a consensus algorithm identifier corresponding to the consensus algorithm, and writes a block including the first transaction into a blockchain. The first transaction may further include candidate transmission paths corresponding to the data transmission tasks. And writing the first transaction into a block chain so as to ensure the traceability of relevant data in the first transaction. In this way, each block link point in the block chain network can determine whether the block link point has the authority to transmit the session data corresponding to the data transmission task by inquiring the first transaction from the block chain network, and the block link point having the authority to transmit the session data can determine the next task participating node based on the optimal transmission path in the first transaction. Furthermore, the optimal transmission path in the first transaction recorded in the blockchain can be used as a certificate or basis for resource allocation for the data transmission task.
And step 206, when receiving the session data corresponding to the data transmission task, determining a next task participating node according to the optimal transmission path.
Wherein the session data is data collected and transmitted during a multi-person session.
Specifically, in the multi-person conversation process of the multi-person conversation established based on the conversation request, each conversation terminal involved in the multi-person conversation collects the conversation data of the corresponding conversation user in real time, and transmits the collected conversation data to the next task participating node determined by the optimal transmission path, so that the next task participating node transmits the received conversation data to the next task participating node determined by the optimal transmission path. It is understood that the next task participating node is relative to the task participating node that currently acquires the session data and performs the transmission operation on the session data. The task participating nodes of the corresponding data transmission tasks and the connection relation or the data transmission dependency relation among the task participating nodes are appointed in the optimal transmission path, namely the last task participating node and/or the next task participating node of each task participating node are/is appointed.
In one embodiment, each session terminal corresponds to one session terminal node in the optimal transmission path, each session terminal node is a start node or an end node in the optimal transmission path, a next task participating node of each session terminal node in the optimal transmission path is a block link node of an uploading node serving as corresponding session data, and a previous task participating node of each session terminal node in the optimal transmission path is a block link node of a downloading node serving as corresponding session data. It can be understood that the upload node and the download node corresponding to each session terminal node are the same block link node, and the functions of the block link node are distinguished only based on the transmission direction of the session data.
In one embodiment, after determining an optimal transmission path corresponding to a multi-person session, the blockchain network sends the optimal transmission path to an operation management platform, and the operation management platform determines an upload node/download node corresponding to each session terminal involved in the multi-person session and corresponding node network information according to the optimal transmission path, and feeds back the determined node network information to the corresponding session terminal, so that the session terminal transmits session data acquired by itself to the corresponding upload node according to the received node network information, and instructs the upload node to continue to transmit the session data to a next task participating node according to the optimal transmission path.
In one embodiment, after each task participating node in the optimal transmission path receives session data sent by a previous task participating node, a next task participating node of the optimal transmission path is determined according to the optimal transmission path, so that the received session data is transmitted to the next task participating node.
In one embodiment, when the task participating node receiving the session data is a blockchain node, the blockchain node acquires an optimal transmission path corresponding to the session data from a blockchain, and determines a next task participating node based on the optimal transmission path. It can be understood that each blockchain node in the optimal transmission path may obtain a corresponding optimal transmission path from the blockchain in advance, so that when receiving the corresponding session data, the next task participating node can be determined based on the obtained optimal transmission path in advance.
In one embodiment, each session terminal collects session data in real time and periodically sends the collected session data to the next task participating node according to a preset period. The preset period can be customized, such as 6 seconds. It is understood that, in order to ensure the real-time transmission of the session data, the preset period may be set to any value less than 10 seconds.
And step 208, transmitting the session data to the next task participating node so as to instruct the next task participating node to continue transmitting the session data according to the optimal transmission path.
Specifically, after determining the next task participating node according to the corresponding optimal transmission path, the task participating node that currently receives the session data transmits the session data to the next task participating node. And after receiving the session data, the next task participating node is used as the task participating node which currently receives the session data, transmits the received session data to the next task participating node determined by the optimal transmission path, and so on, transmits the session data according to the optimal transmission path until the next task participating node which receives the session data is a session terminal node, so that the session data collected by one session terminal is transmitted to another session terminal according to the corresponding optimal transmission path.
In one embodiment, when a task participating node currently receiving session data and a next task participating node of the task participating node in an optimal transmission path are all blockchain nodes, the task participating node currently receiving the session data transmits the session data to the next task participating node through a pre-established data transmission channel. A safe data transmission channel is pre-established between any two blockchain nodes in the blockchain network, and the session data is transmitted through the data transmission channel, so that the transmission safety of the session data can be improved.
In one embodiment, when the number of conversation persons in a multi-person conversation is more than two, an optimal transmission path exists between any two conversation users, and when a conversation terminal corresponding to one conversation user collects conversation data, the conversation terminal transmits the conversation data to the next task participating node according to the optimal transmission path between the conversation user and each other conversation user, so as to instruct each next task participating node to continue to transmit the conversation data according to the corresponding optimal transmission path, so that the conversation data transmission between the multi-person conversation is realized.
The above multi-person conversation data transmission method based on the block chain, when the user requests to initiate the multi-person conversation, the block chain nodes in the block chain network which receive the session request generate corresponding data transmission tasks based on the session request, and the block chain network transmits the tasks according to the generated data transmission tasks, and determining the corresponding optimal transmission path through a consensus algorithm, so that when the blockchain nodes in the blockchain network receive the session data corresponding to the data transmission task, determining a next task participating node according to the optimal transmission path corresponding to the data transmission task, transmitting session data to the next task participating node, and instructing the next task participating node to continue to transmit the session data according to the optimal transmission path until the session transmission data are transmitted to the corresponding session user, so as to realize the session data transmission of the multi-person session. Therefore, the optimal transmission path of the data transmission task is dynamically determined by adopting a consensus algorithm through the block chain network, and the conference data is transmitted through the task participation nodes in the optimal transmission path, so that the data transmission safety can be improved under the condition of ensuring the data transmission efficiency, and the data safety of multi-person conversation can be improved.
In one embodiment, the step of determining, by the blockchain network, an optimal transmission path corresponding to the data transmission task through a consensus algorithm includes: determining a candidate transmission path corresponding to the data transmission task by each block chain node in the block chain network according to the data transmission task and the node state data of each block chain node in the block chain network; and the block chain network screens the optimal transmission path corresponding to the data transmission task from the candidate transmission paths through a consensus algorithm.
Wherein the node state data is data for characterizing the state of the blockchain node. The node state data may specifically include a CPU utilization rate, a memory surplus rate, a network uplink bandwidth surplus, a network downlink bandwidth surplus, and a geographical location of the node, and may further include a current task number and/or a current task identifier set. The CPU usage may specifically refer to a CPU usage per unit time, for example, 1 minute. The remaining memory rate is the percentage of the total memory remaining. The geographic location of a node refers to the geographic location of a blockchain node. The current task number refers to the number of data transmission tasks currently undertaken by the block link node. The current task identifier set is a set formed by task identifiers of data transmission tasks currently undertaken by the block link points.
Specifically, after the data transmission task is obtained, each blockchain node in the blockchain network obtains current node state data of each blockchain node in the blockchain network, determines a candidate transmission path corresponding to the data transmission task according to the obtained data transmission task and the node state data of each blockchain node, and broadcasts the determined candidate transmission path to the blockchain network. And each block chain node in the block chain network determines an optimal transmission path corresponding to the corresponding data transmission task from the plurality of candidate transmission paths according to the candidate transmission path determined by the block chain node and the candidate transmission paths broadcasted by each other block chain node in the block chain network.
In one embodiment, each blockchain node in the blockchain network calculates a candidate transmission path corresponding to the data transmission task and broadcasts the candidate transmission path calculated by itself to other blockchain nodes, so that each blockchain node can obtain a candidate transmission path set corresponding to the data transmission task, and the candidate transmission path set includes candidate transmission paths respectively calculated by each blockchain node, so that each blockchain node in the blockchain network can screen out the same optimal transmission path from the candidate transmission path set in the same screening manner, and the same optimal transmission path is used as the optimal transmission path corresponding to the data transmission task. The candidate transmission path determined by each block chain node may be understood as that the block chain node is based on the data transmission task and the node state data of each block chain node acquired by itself, and the candidate transmission path (that is, the optimal transmission path) determined by each block chain node may be different, so that the optimal transmission path finally corresponding to the data transmission task is screened out from the optimal transmission paths individually determined by each block chain node through a consensus algorithm, that is, each block chain node in the block chain network achieves consensus on the optimal transmission path finally corresponding to the data transmission task.
In one embodiment, each blockchain node in the blockchain network determines a path identifier corresponding to a candidate transmission path corresponding to a data transmission task after determining the candidate transmission path, and a node list including each task participating node in the candidate transmission path, obtains transmission path parameters including the path identifier and the node list, and a task identifier or a transaction identifier corresponding to the data transmission task, signs the transmission path parameters through a private key of the blockchain node to obtain signature data, obtains transmission path data carrying the transmission path parameters, the signature data, and a node certificate of the blockchain node, and further broadcasts the transmission path data to other blockchain nodes, wherein the transmission path data corresponds to the candidate transmission path, so that the other blockchain nodes can verify the corresponding transmission path parameters based on the signature data and the node certificate in the transmission path data, and restoring the candidate transmission path based on the transmission path parameter passed by the check. It is to be understood that the transmission path parameter may further include generation timestamps of the candidate transmission paths, so as to check whether the generation time of the corresponding candidate transmission paths meets a time check condition based on the generation timestamps, where the time check condition is, for example, that a time difference between the generation timestamps of the candidate transmission paths generated by each blockchain node for the same data transmission task is smaller than a preset time threshold, which is, for example, 2 seconds.
In one embodiment, after determining an optimal transmission path corresponding to a data transmission task through a consensus algorithm, a blockchain network generates a task key corresponding to the data transmission task based on the optimal transmission path, generates a first transaction carrying the data transmission task and the corresponding optimal transmission path, a consensus algorithm identifier and the task key, and writes a block including the first transaction into a blockchain. The first transaction may further include each candidate transmission path or candidate transmission path data corresponding to the data transmission task. And writing a first transaction carrying a data transmission task and a corresponding optimal transmission path, a consensus algorithm identifier and a task key into a block chain so as to ensure the traceability and reliability of related data in the first transaction.
In one embodiment, each blockchain node in the blockchain network periodically acquires node state data of the blockchain node according to a preset period, and broadcasts the acquired node state data to the blockchain network, so that each blockchain node in the blockchain network can dynamically acquire state data of other blockchain nodes. The preset period refers to a time interval between two adjacent block chain nodes to acquire and broadcast node state data of the block chain nodes, and can be defined by user according to actual requirements, such as 1 minute. It can be understood that each block link point can sign its own node state data by its own private key to obtain signature data, and broadcast the node state data, the signature data, and its own node certificate to other block link nodes, so that other block link points verify the reliability of the node state data based on the signature data and the node certificate.
In the above embodiment, the candidate transmission paths are respectively determined for the same data transmission task through each blockchain node in the blockchain network, and the optimal transmission path is screened from the multiple candidate transmission paths corresponding to the data transmission task through the consensus algorithm, so that the consistency and accuracy of the optimal transmission path can be improved. Moreover, when determining the candidate transmission path, each blockchain node considers the node state data of each blockchain node to realize load balancing among the blockchain nodes.
In one embodiment, determining a candidate transmission path corresponding to a data transmission task according to the data transmission task and node state data of each blockchain node in a blockchain network includes: determining the geographic position of each session terminal according to the data transmission task; determining a directed weight graph according to the node state data of each blockchain node in the blockchain network and the geographic position of the session terminal; the directed weighted graph comprises session terminal nodes corresponding to each block chain node and the session terminal in the block chain network; and determining a candidate transmission path corresponding to the data transmission task according to the determined directed weight graph.
Specifically, each block chain node in the block chain network determines a session terminal related to a multi-person session according to a data transmission task and the current geographic position of each session terminal, determines each block chain node and each other block chain node and a path score between session terminal nodes corresponding to each session terminal according to node state data of each block chain node in the block chain network and the geographic position of each session terminal, constructs a directed negative weight graph according to the determined path scores and the block chain nodes or session terminal nodes related to each path score, and determines a candidate transmission path between the two session terminal nodes according to the directed negative weight graph by taking one session terminal node as a path starting point and the other session terminal node as a path ending point. Each block link point determines corresponding candidate transmission paths according to the above manner for any two session terminal nodes corresponding to the same data transmission task, and thus the number of candidate transmission paths determined by each block link point for each data transmission task is determined by the session terminal node corresponding to the data transmission task, that is, the number of session persons participating in the session of the corresponding multiple persons.
For example, assuming that the number of conversation persons in a multi-person conversation is 2, each segment link point only needs to determine one candidate transmission path for the multi-person conversation, so as to transmit conversation data between the two conversation users. Assuming that the number of conversation persons in a multi-person conversation is 3, each blockchain node needs to determine three candidate transmission paths for the multi-person conversation so as to be respectively used for transmitting conversation data between two corresponding conversation users, thereby realizing the three-person conversation. By analogy, assuming that the number of sessions of the multi-person session is 4, each blockchain node needs to determine six candidate transmission paths, which is not illustrated herein.
In one embodiment, the data transmission task includes a session terminal identifier corresponding to each session user in the corresponding multi-person session and a geographic location corresponding to each session terminal identifier, so that the session terminal involved in the multi-person session and the geographic location of each session terminal can be determined by analyzing the data transmission task by the block chain node. Or, the data transmission task includes a geographical location and a session terminal identifier corresponding to each session user in the multi-person session, so that the blockchain node may determine the geographical location of the session user as the geographical location of the corresponding session terminal based on the data transmission task.
In one embodiment, each blockchain node in the blockchain network determines a path score between each blockchain node and each other blockchain node and session terminal node according to a first preset mapping relationship and a second preset mapping relationship according to the determined path score after determining the path score between each blockchain node and each other blockchain node and session terminal node according to node state data of each blockchain node in the blockchain network and the geographic position of each session terminal, and constructs a directed negative weight graph according to the distance scores. The first preset mapping relationship is, for example, a path fraction (CPU dominant frequency, a + memory capacity, memory surplus rate, b + network uplink bandwidth surplus, c + network downlink bandwidth surplus, d + (100-node spacing), e + (100-current task number), f, where a, b, c, d, e, and f are weights and may be customized according to actual situations, for example, a is 0.05, b is 0.1, c is 0.2, d is 0.25, e is 0.3, and f is 0.1. The node distance refers to a distance between a block chain node and any other block chain node or session terminal node, and can be specifically determined according to a geographic position of the block chain node and a geographic position of the corresponding block chain node or session terminal node. The second predetermined mapping relationship is, for example, a distance score of 100 — a path score, which indicates that the larger the path score between nodes is, the smaller the corresponding distance score is. The network uplink bandwidth surplus, the network downlink bandwidth surplus, the node distance and the like can be used for representing the network delay among all the nodes.
After calculating the path score corresponding to each block link point in the block chain network, taking each block link point in the block chain network and each session terminal node corresponding to the data transmission task as a node of a directed negative weight graph, taking the distance score between the block link point and other block link points or session terminal nodes as the weight between the corresponding nodes in the directed negative weight graph, constructing the directed negative weight graph, and searching the shortest path between any two session terminal nodes from the directed negative weight graph through a preset path search algorithm to be used as a candidate transmission path between the two session terminal nodes. It will be appreciated that the candidate transmission path is the best transmission path currently determinable for the two session terminal nodes based on the directed weight graph. In the directed negative weight graph, a plurality of connection paths between any two session terminal nodes are provided, each connection path comprises at least one block chain node, the total distance score of the connection path can be obtained according to the distance score between two adjacent nodes in each node forming each connection path, and the connection path with the minimum total distance score in the plurality of connection paths is determined as the shortest path between the two session terminal nodes. A preset path search algorithm such as Floyd-Warshall algorithm (freouard algorithm, an algorithm for calculating the shortest path between two points). Thus, the optimal transmission path dynamically determined according to the above manner can realize load balancing among the link points of each block by considering the current load of each link node of the block link network.
For example, suppose that three connection paths including connection path 1, connection path 2 and connection path 3 exist between session terminal nodes a and B, connection path 1 includes session terminal nodes a and B and blockchain nodes 1 and 2, connection path 2 includes session terminal nodes a and B and blockchain node 1, connection path 3 includes session terminal nodes a and B and blockchain node 2, the distance scores between blockchain node 1 and session terminal node a, session terminal node B and blockchain node 2 are 12, 11 and 4 respectively, the distance scores between blockchain node 2 and session terminal node a and session terminal node B are 16 and 6 respectively, the distance total score corresponding to connection path 1 is 12+4+6 ═ 22, the distance total score corresponding to connection path 2 is 12+11 ═ 33, the distance total score corresponding to connection path 3 is 16+6 ═ 32, thus, the connection path 1 with the smallest total distance score is determined as the shortest path between the session terminal nodes a and B, that is, the candidate transmission path between the session terminal nodes a and B. It should be noted that the above examples are only for illustration and are not intended to be limiting, for example, the connection paths between two session terminal nodes may be more, and the number of blockchain nodes in each connection path may also be more.
In the above embodiment, each block link point determines a directed negative weight graph including session terminal nodes corresponding to the session terminals and each block link node based on the current node state data of each block link point and the geographic location of each session terminal, and determines the candidate transmission path according to the directed negative weight graph. In this way, when determining the candidate transmission path, the accuracy of the candidate transmission path can be improved by considering the current node state data of each block link point and the current geographical position of each session terminal, so that the accuracy of the optimal transmission path can be improved.
In one embodiment, the method for screening an optimal transmission path corresponding to a data transmission task from candidate transmission paths through a consensus algorithm in a blockchain network includes: each block chain node in the block chain network acquires a candidate transmission path determined by each block chain node in the block chain network for a data transmission task, and determines the candidate transmission path with the ratio larger than a preset ratio threshold value in the acquired candidate transmission paths as an optimal transmission path.
The preset ratio threshold is a basis or condition for screening an optimal transmission path from a plurality of candidate transmission paths corresponding to the data transmission task, and may be specifically defined by a user, for example, half or half.
Specifically, each blockchain node in the blockchain network determines a candidate transmission path corresponding to the data transmission task at the blockchain node, after receiving the candidate transmission paths determined and broadcasted by each other blockchain node in the blockchain network for the data transmission task, that is, after obtaining a plurality of candidate transmission paths corresponding to the data transmission task, clustering the candidate transmission paths, calculating the ratio of the number of the candidate transmission paths in each cluster category in the total number of the candidate transmission paths, determining the calculated ratio as the ratio corresponding to the candidate transmission paths in the cluster category, and comparing the occupation ratio corresponding to each candidate transmission path with a preset occupation ratio threshold respectively, and determining the candidate transmission path with the occupation ratio larger than the preset occupation ratio threshold as an optimal transmission path. It can be understood that the candidate transmission paths in each cluster category are consistent, that is, the connection relationships between the nodes included in the candidate transmission paths are consistent.
In an embodiment, after determining the occupation ratio corresponding to each candidate transmission path according to the above manner, each blockchain node screens a candidate transmission path with the largest occupation ratio from the multiple candidate transmission paths, and compares the occupation ratio of the screened candidate transmission path with a preset occupation ratio threshold. And when the ratio of the screened candidate transmission path is greater than a preset ratio threshold, determining the candidate transmission path as an optimal transmission path. And when the ratio of the screened candidate transmission paths is smaller than or equal to a preset ratio threshold, each block chain node respectively re-determines the candidate transmission paths corresponding to the data transmission tasks according to the process, and screens the optimal transmission paths from the re-determined candidate transmission paths until the optimal transmission paths corresponding to the data transmission tasks can be screened. It is understood that, when the occupation ratio of the screened candidate transmission path is equal to the preset occupation ratio threshold value and the occupation ratios of other respective candidate transmission paths are smaller than the occupation ratio of the screened candidate transmission path, the screened candidate transmission path may also be determined as the optimal transmission path.
In one embodiment, if the number of sessions in the multi-person session is more than two, each block node has more than one candidate transmission path determined for the data transmission task of the multi-person session, that is, corresponding candidate transmission paths are determined for any two session users in the multi-person session. In this way, each blockchain node in the blockchain network acquires the candidate transmission paths respectively determined by each blockchain node for any two session users in the multi-user session, and respectively analyzes the acquired candidate transmission paths according to the session user objects, so as to respectively determine the optimal transmission path between any two session users according to the above manner.
In the above embodiment, each block chain node selects more than half of the candidate transmission paths from the multiple candidate transmission paths corresponding to the data transmission task as the optimal transmission paths corresponding to the data transmission task, so that each block chain link point in the block chain network achieves consensus on the optimal transmission path of the data transmission task, and thus the accuracy of the optimal transmission path can be improved.
In one embodiment, the broadcasted data transmission task is further configured to instruct the blockchain network to generate a task key corresponding to the data transmission task; encrypting the session data through the task key; step 208, comprising: when the next task participating node is a session terminal node, the session terminal node decrypts the session data according to the task key and displays the decrypted session data; and when the next task participating node is the block chain node, the block chain node continuously transmits the session data according to the optimal transmission path.
The task key is a key used for encrypting session data corresponding to the data transmission task, and may specifically be a symmetric key.
Specifically, after determining an optimal transmission path corresponding to a data transmission task, each blockchain node in the blockchain network determines a task key corresponding to the data transmission task. And the block chain network sends the optimal transmission path and the task key corresponding to the data transmission task to the operation management platform, so that the node network information of the task key and the uploading node/downloading node corresponding to each session terminal is sent to the corresponding session terminal through the operation management platform. Each session terminal collects session data in real time, encrypts the collected session data through a corresponding task key, and transmits the encrypted session data to the next task participating node. And when the next task participating node is a session terminal node, the session terminal corresponding to the session terminal node determines a corresponding task key according to the task identifier corresponding to the session data, decrypts the session data through the task key to obtain decrypted session data, and displays the decrypted session data to a corresponding session user. And when the next task participating node is a block chain node, the block chain node transmits the received session data to the next task participating node per se according to the optimal transmission path, and continuously executes the operation aiming at the next task participating node until the session data is transmitted to the corresponding session terminal according to the optimal transmission path.
In one embodiment, when the next task participating node is a session terminal node, the session terminal corresponding to the session terminal node displays the session data to the corresponding session user according to the data form of the decrypted session data. For example, when the decrypted session data is text data, the text data is displayed through the display screen, when the decrypted session data is video data, the video data is played through the display screen, and when the decrypted session data is audio data, the voice data is played through the voice playing device. A voice playing device such as a speaker.
In one embodiment, after determining an optimal transmission path corresponding to a data transmission task, each blockchain node in a blockchain network determines a time stamp for determining the optimal transmission path, a node certificate corresponding to each blockchain link in the optimal transmission path, and a user certificate of each session user involved in the data transmission task, and generates a task key corresponding to the data transmission task according to each determined node certificate, user certificate, and the determined time stamp. And each block chain link point can specifically splice the node certificate, the user certificate and the determined timestamp in sequence according to a preset sequence to obtain a corresponding task key.
In one embodiment, after determining an optimal transmission path and a task key corresponding to a data transmission task, a blockchain network sends the optimal transmission path and the task key to an operation management platform through any blockchain node in the blockchain network. For example, the optimal transmission path and the task key may be fed back to the operation management platform through the block link point receiving the corresponding session request.
In the above embodiment, the session data is transmitted through the blockchain link points, the session data is transmitted based on the pre-established secure data transmission channel between the blockchain nodes in the blockchain network, so that the transmission security of the session data can be improved, and the session data is encrypted and transmitted through the task key, so that the transmission security of the session data can be further improved.
In an embodiment, the above method for transmitting data based on a multi-person session by using a block chain further includes: and after the data transmission task is completed, each block chain node in the block chain network determines the reward resource distributed by each block chain node in the optimal transmission path, and updates the account resource in the node account of the corresponding block chain node according to the determined reward resource.
The completion of the data transmission task means that the session data transmission of the multi-person session is completed, that is, the multi-person session is finished. The rewarded resources refer to resources rewarded for data transmission tasks assumed by the blockchain nodes during the multi-person session. Because the session data transmitted by the blockchain nodes consumes the network resources of the blockchain nodes, after the data transmission task is completed, corresponding reward resources are allocated to the network resources consumed by each blockchain node during the task transmission, and more blockchain nodes can be stimulated to compete for the transmission of the session data. The node account is an account corresponding to a blockchain node, and may specifically be a blockchain address of a blockchain link point in a blockchain network, where each blockchain node corresponds to a blockchain address in the blockchain network, and the blockchain address is used for storing account resources of the blockchain node.
In one embodiment, after the data transmission task is determined to be completed, each blockchain node in the blockchain network determines the reward resource allocated to each blockchain node in the optimal transmission path according to the total amount of the reward resource corresponding to the data transmission task and the blockchain link point in the corresponding optimal transmission path in a preset resource allocation manner, and dynamically updates the account resource in the node account of the blockchain node according to the reward resource allocated to each blockchain node. The preset resource allocation manner may be that the total amount of the bonus resources is divided equally among the block link points participating in the data transmission task, for example, the total amount of the bonus resources is 100, and if there are N block link points participating in the data transmission task, the bonus resources allocated to each of the N block link points are all 100/N. It will be appreciated that since the server needs to maintain the operations management platform, the total amount of rewarded resources can also be shared between the server and the block link points participating in the data transfer task. In this way, the block link points use the free network resources to undertake the data transmission task, and can acquire the corresponding rewarding resources.
In one embodiment, each blockchain node in the blockchain network acquires a corresponding first transaction from the blockchain according to a task identifier corresponding to a task ending instruction when acquiring the task ending instruction corresponding to the data transmission task, verifies the validity of the task ending instruction according to the first transaction, and broadcasts a validity verification result to each other blockchain node in the blockchain network. And the block chain network performs consensus on the legality checking results respectively determined by the block chain link points through a consensus algorithm to obtain a legality checking result finally corresponding to the task ending instruction, generates a second transaction corresponding to the corresponding data transmission task when the final legality checking result passes, and writes the block carrying the second transaction into the block chain. The second transaction comprises the task completion condition and the corresponding task identifier of the data transmission task, and also comprises the transaction identifier of the first transaction corresponding to the data transmission task, and also comprises key information and the like generated in the multi-person conversation process. It is to be understood that the second transaction may include at least one of a task identifier corresponding to the data transmission task and a transaction identifier corresponding to the corresponding first transaction. In this way, each blockchain node can acquire a second transaction corresponding to the data transmission task from the blockchain, and determine whether to execute a subsequent rewarding resource allocation operation according to the task completion condition in the second transaction. The task completion condition comprises data transmission task completion and data transmission task incompletion.
It can be understood that the task ending instruction may be triggered by any session user in the multi-person session through the corresponding session terminal, or may be triggered by the operation management platform or each blockchain node when the session duration of the multi-person session reaches the session pre-estimated duration specified by the session request.
In one embodiment, the first transaction or the second transaction further records an incentive resource allocation condition of each blockchain node participating in the data transmission task and a node account of each blockchain node, so that each blockchain node in the blockchain network allocates an incentive resource according to the incentive resource allocation condition recorded in the first transaction or the second transaction after determining that the data transmission task is completed, and dynamically updates an account resource in the corresponding node account. Or the total amount of the reward resources corresponding to the data transmission task and a preset resource allocation mode are recorded in the first transaction or the second transaction, so that each block chain node can allocate the total amount of the reward resources to the corresponding block chain node according to the preset resource allocation mode.
In one embodiment, when the multi-person session is a multi-person conference, the key information in the second transaction includes one or more of conference voting results, check-in results of participating users, hash values of conference summary, session data total amount, actual session duration and the like.
In one embodiment, in one or more of the above embodiments, session activities of session users are recorded on a blockchain, so that integrity of user data can be ensured, session data is transmitted through a secure data transmission channel between blockchain nodes in a blockchain network, so that security of the session data can be improved, and session data is encrypted and transmitted through a task key dynamically determined for a data transmission task, so that security of the session data can be further improved, that is, security of the user data can be further improved. Further, the denial of service generally can only attack a small number of servers, and the distributed blockchain network includes a large number of blockchain nodes, so that even if a small number of blockchain nodes are attacked, other blockchain nodes can still continue to provide services, and therefore, the risk of denial of service attack can be effectively reduced by transmitting session data and storing related data through the distributed blockchain network. And recording corresponding first transaction and second transaction in the block chain aiming at the data transmission task, so as to be used as the basis and the certificate for the reward resource distribution of the block chain link points participating in the data transmission task after the data transmission task is completed.
In the above embodiment, after the data transmission task undertaken by the block link point is completed, the corresponding reward resource is acquired to implement flow sharing of the block chain, and the corresponding reward resource can be acquired by sharing the idle flow, so that more block link points can be attracted to participate in competitive picking of the data transmission task, and the more block link points participate in task competition, the more candidate transmission paths corresponding to the data transmission task are increased, and the more optimal transmission paths finally screened out based on the increased number of candidate transmission paths are also optimized, thereby improving the transmission efficiency of the session data.
In one embodiment, the blockchain nodes in the blockchain network correspond to enterprises, and each enterprise may correspond to one or more blockchain nodes in the blockchain network, that is, each enterprise owns one or more blockchain nodes. The more the corresponding block chain nodes of the enterprise are, the more the enterprise is easy to take the advantages in task taking and take more data transmission tasks, so that the session data transmission service can be provided for more session users. The enterprise having the blockchain node in the blockchain node can utilize the hardware and bandwidth free resources of the blockchain node to provide session data transmission service for other enterprises and obtain reward resources from the hardware and bandwidth free resources while providing session data transmission service for session users in the enterprise. Accordingly, an enterprise provided with the session data transmission service can complete multi-person sessions by means of the block link points of other enterprises by only paying a small amount of reward resource sum to the block link points for transmitting session data for the enterprise.
As shown in fig. 3, in an embodiment, a method for transmitting data in a multi-person session based on a blockchain is provided, and is applied to a blockchain node in a blockchain network, where the method specifically includes the following steps:
step 302, a session request is received.
Step 304, generating a data transmission task corresponding to the session request, and broadcasting the data transmission task to the block chain network; and the broadcasted data transmission task is used for indicating the block chain network to determine an optimal transmission path corresponding to the data transmission task through a consensus algorithm and generating a task key corresponding to the data transmission task.
Step 306, when receiving the session data corresponding to the data transmission task, determining a next task participating node according to the optimal transmission path; the session data is encrypted by the task key.
And 308, when the next task participating node is the session terminal node, the session terminal node decrypts the session data according to the task key and displays the decrypted session data.
And step 310, when the next task participating node is a block chain node, the block chain node continuously transmits the session data according to the optimal transmission path.
In step 312, after the data transmission task is completed, each blockchain node in the blockchain network determines the reward resource allocated to each blockchain node in the optimal transmission path, and updates the account resource in the node account of the corresponding blockchain node according to the determined reward resource.
In the above embodiment, the optimal transmission path corresponding to the data transmission task is dynamically determined by the block chain network according to the data transmission task corresponding to the session request, so as to achieve load balancing among the link points of each block, and since the optimal transmission path corresponding to each data transmission task is dynamically determined, the flexibility and unpredictability of the optimal transmission path are increased, the security of the session data can be improved by transmitting the corresponding session data through the optimal transmission path, and the security of the session data can be further improved by transmitting the session data based on the secure data transmission channel between the block chain nodes in the block chain network. Furthermore, the security of the session data can be further improved by encrypting and transmitting the session data through the task key, and the transmission efficiency of the session data can be improved while the security of the session data is improved by transmitting the session data according to the dynamically determined optimal transmission path. And after the data transmission task is completed, corresponding reward resources are distributed to the block chain link points participating in the data transmission task, so that the co-established shared session network based on the block chain can be realized.
It can be understood that, in the existing block chain network, the block chain link points mainly participate in calculation, pit excavation and the like, the hardware resources of the block chain nodes are used, and the network resources of the block chain nodes are wasted in an idle mode.
Fig. 4 is a schematic diagram illustrating a principle of multi-person session data transmission based on a blockchain network in an embodiment. Taking a multi-person session as an example of a multi-person conference, as shown in fig. 4, there are 4 participating users participating in the multi-person conference, where the 4 participating users belong to different geographical locations, and the optimal transmission path between any two participating users in the 4 participating users is determined according to the above manner, and the data transmission path between two adjacent task participating nodes in the optimal transmission path can be shown by a double-arrow line shown in fig. 4. It should be noted that the number of participating users, the geographic locations of the participating users, and the number of blockchain nodes in the optimal transmission path between any two participating users shown in fig. 4 are only examples, and are not limited to specific examples, for example, the number of blockchain nodes in the optimal transmission path is 3.
In one embodiment, the multi-person session implemented based on the blockchain network in the above embodiments may be understood as a distributed shared cloud session. If the multi-person session is a multi-person session or a cloud session, the distributed shared cloud session is also a distributed shared cloud conference.
Fig. 5 is an architecture diagram for implementing a multi-person session based on a blockchain network in one embodiment. As shown in fig. 5, each blockchain node in the blockchain network may be deployed in a distributed manner, and each blockchain node may serve as a service node to provide session data transmission service for the session user, so that the blockchain nodes in the blockchain network may be understood as distributed service nodes. Key data of a multi-person session may be stored in a blockchain to ensure data security. The session initiator can initiate a session request through the operation management platform, and an enterprise administrator can manage session users and multi-person sessions in the enterprise through the operation management platform. After a multi-person session is established based on the blockchain network, session users of the multi-person session can acquire session data through respective session terminals and send the acquired session data to corresponding uploading nodes in the blockchain network, or session data acquired and sent by other session terminals are acquired from corresponding downloading nodes in the blockchain network and the acquired session data are displayed to corresponding session users. As shown in fig. 5, the architecture diagram of the multi-user session implemented based on the blockchain network includes two roles, namely, a shared cloud session facilitator and an enterprise user, where the shared cloud session facilitator is responsible for maintaining the blockchain network and the operation management platform, and the enterprise user performs a distributed cloud session with the operation management platform through the blockchain network.
It should be understood that although the various steps in the flow charts of fig. 2-3 are shown in order as indicated by the arrows, the steps are not necessarily performed in order as indicated by the arrows. The steps are not performed in the exact order shown and described, and may be performed in other orders, unless explicitly stated otherwise. Moreover, at least some of the steps in fig. 2-3 may include multiple steps or multiple stages, which are not necessarily performed at the same time, but may be performed at different times, which are not necessarily performed in sequence, but may be performed in turn or alternately with other steps or at least some of the other steps.
In one embodiment, as shown in fig. 1a, there is provided a block chain based multi-person session data transmission system, comprising: a blockchain network 110; blockchain network 110 includes a plurality of blockchain nodes 112;
a blockchain node 112 for receiving a session request; generating a data transmission task corresponding to the session request, and broadcasting the data transmission task to the blockchain network 110; a broadcasted data transmission task, configured to instruct the blockchain network 110 to determine, through a consensus algorithm, an optimal transmission path corresponding to the data transmission task; when session data corresponding to a data transmission task are received, determining a next task participating node according to the optimal transmission path; and transmitting the session data to the next task participating node so as to instruct the next task participating node to continue transmitting the session data according to the optimal transmission path.
In one embodiment, the blockchain network 110 is configured to determine, through each blockchain node 112, a candidate transmission path corresponding to the data transmission task according to the data transmission task and the node status data of each blockchain node in the blockchain network; and screening the optimal transmission path corresponding to the data transmission task from the candidate transmission paths through a consensus algorithm.
In one embodiment, the block chain node 112 is further configured to determine a geographic location of each session terminal according to the data transmission task; determining a directed weight graph according to the node state data of each blockchain node in the blockchain network and the geographic position of the session terminal; the directed weighted graph comprises session terminal nodes corresponding to each block chain node and the session terminal in the block chain network; and determining a candidate transmission path corresponding to the data transmission task according to the determined directed weight graph.
In one embodiment, the block node 112 is further configured to acquire candidate transmission paths determined by each block node in the block chain network for the data transmission task, and determine a candidate transmission path with a ratio greater than a preset ratio threshold value among the acquired candidate transmission paths as an optimal transmission path.
In one embodiment, the broadcasted data transmission task is further configured to instruct the blockchain network to generate a task key corresponding to the data transmission task; encrypting the session data through the task key; when the next task participating node is a session terminal node, the session terminal node decrypts the session data according to the task key and displays the decrypted session data; when the next task participating node is the blockchain node 112, the blockchain node 112 is also used for continuing to transmit the session data according to the optimal transmission path.
In one embodiment, the blockchain node 112 is further configured to determine, after the data transmission task is completed, the reward resource allocated to each blockchain node in the optimal transmission path, and update the account resource in the node account of the corresponding blockchain node according to the determined reward resource.
For specific limitations of the block chain-based multi-person session data transmission system, reference may be made to the above limitations of the block chain-based multi-person session data transmission method, which is not described herein again.
In one embodiment, a computer device is provided, which may be a blockchain node, the internal structure of which may be as shown in fig. 6. The computer device includes a processor, a memory, and a network interface connected by a system bus. Wherein the processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device comprises a nonvolatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program, and a database. The internal memory provides an environment for the operation of an operating system and computer programs in the non-volatile storage medium. The database of the computer equipment is used for storing the optimal transmission path corresponding to the data transmission task. The network interface of the computer device is used for communicating with an external terminal through a network connection. The computer program is executed by a processor to implement a blockchain based multi-person session data transmission method.
Those skilled in the art will appreciate that the architecture shown in fig. 6 is merely a block diagram of some of the structures associated with the disclosed aspects and is not intended to limit the computing devices to which the disclosed aspects apply, as particular computing devices may include more or less components than those shown, or may combine certain components, or have a different arrangement of components.
In one embodiment, a computer device is provided, comprising a memory and a processor, the memory having stored therein a computer program, the processor implementing the steps of the above-described method embodiments when executing the computer program.
In an embodiment, a computer-readable storage medium is provided, on which a computer program is stored, which computer program, when being executed by a processor, carries out the steps of the above-mentioned method embodiments.
It will be understood by those skilled in the art that all or part of the processes of the methods of the embodiments described above can be implemented by hardware related to instructions of a computer program, which can be stored in a non-volatile computer-readable storage medium, and when executed, can include the processes of the embodiments of the methods described above. Any reference to memory, storage, database or other medium used in the embodiments provided herein can include at least one of non-volatile and volatile memory. Non-volatile memory may include Read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical storage, or the like. Volatile Memory can include Random Access Memory (RAM) or external cache Memory. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM), among others.
The technical features of the above embodiments can be arbitrarily combined, and for the sake of brevity, all possible combinations of the technical features in the above embodiments are not described, but should be considered as the scope of the present specification as long as there is no contradiction between the combinations of the technical features.
The above examples only express several embodiments of the present application, and the description thereof is more specific and detailed, but not construed as limiting the scope of the invention. It should be noted that, for a person skilled in the art, several variations and modifications can be made without departing from the concept of the present application, which falls within the scope of protection of the present application. Therefore, the protection scope of the present patent shall be subject to the appended claims.
Claims (16)
1. A method for transmitting data of multi-person session based on block chain is applied to block chain nodes in a block chain network, and the method comprises the following steps:
receiving a session request;
generating a data transmission task corresponding to the session request, and broadcasting the data transmission task to the block chain network; the broadcasted data transmission task is used for indicating the block chain network to determine an optimal transmission path corresponding to the data transmission task through a consensus algorithm;
when session data corresponding to the data transmission task are received, determining a next task participation node according to the optimal transmission path;
and transmitting the session data to the next task participating node to instruct the next task participating node to continue transmitting the session data according to the optimal transmission path.
2. The method according to claim 1, wherein the step of determining, by the blockchain network, the optimal transmission path corresponding to the data transmission task through a consensus algorithm includes:
determining, by each blockchain node in the blockchain network, a candidate transmission path corresponding to the data transmission task according to the data transmission task and node state data of each blockchain node in the blockchain network;
and screening the optimal transmission path corresponding to the data transmission task from the candidate transmission paths by the block chain network through a consensus algorithm.
3. The method according to claim 2, wherein the determining the candidate transmission path corresponding to the data transmission task according to the data transmission task and the node status data of each blockchain node in the blockchain network comprises:
determining the geographic position of each session terminal according to the data transmission task;
determining a directed weight graph according to the node state data of each blockchain node in the blockchain network and the geographic position of the session terminal; the directed weight graph comprises each block chain link point in the block chain network and a session terminal node corresponding to the session terminal;
and determining a candidate transmission path corresponding to the data transmission task according to the determined directed weight graph.
4. The method of claim 3, wherein determining the directed weight graph according to the node state data of each blockchain node in the blockchain network and the geographic location of the session terminal comprises:
calculating the distance score between each block chain node and each other block chain node in the block chain network according to the node state data of each block chain node in the block chain network;
calculating the distance score between each block chain node in the block chain network and the session terminal node corresponding to each session terminal according to the node state data of each block chain node in the block chain network and the geographic position of the session terminal;
and taking each block chain link point and each session terminal node in the block chain network as nodes of a directed negative weight graph, and taking the distance scores as weights between two corresponding nodes to construct the directed negative weight graph.
5. The method according to claim 2, wherein the screening, by the blockchain network, the optimal transmission path corresponding to the data transmission task from the candidate transmission paths through a consensus algorithm includes:
and each block chain node in the block chain network acquires a candidate transmission path determined by each block chain node in the block chain network for the data transmission task, and determines the candidate transmission path with the ratio larger than a preset ratio threshold value in the acquired candidate transmission paths as an optimal transmission path.
6. The method of claim 1, wherein generating the data transmission task corresponding to the session request comprises:
carrying out validity verification on the session request;
when the authentication is passed, recording the authentication time of the session request;
signing the session request and the verification time through a private key of the block chain node to obtain signature data;
and generating a data transmission task carrying the session request, the verification time, the signature data and the node certificate of the blockchain node.
7. The method of claim 1, wherein the broadcasted data transmission task is further configured to instruct the blockchain network to generate a task key corresponding to the data transmission task; the session data is encrypted through the task key;
the transmitting the session data to the next task participating node to instruct the next task participating node to continue transmitting the session data according to the optimal transmission path includes:
when the next task participating node is a session terminal node, the session terminal node decrypts the session data according to the task key and displays the decrypted session data;
and when the next task participating node is a block chain node, the block chain node continuously transmits the session data according to the optimal transmission path.
8. The method according to claim 7, wherein the step of generating the task key corresponding to the data transmission task by the blockchain network comprises:
after determining an optimal transmission path corresponding to the data transmission task, each block chain node in the block chain network acquires a time stamp determined by the optimal transmission path, a node certificate corresponding to each block chain node in the optimal transmission path, and a user certificate of each session user involved in the data transmission task, and
and generating a task key corresponding to the data transmission task according to the acquired determining timestamp, the node certificate and the user certificate.
9. The method of claim 1, wherein the session request is generated by an operations management platform; the step of generating the session request by the operation management platform includes:
the operation management platform receives an initial session request sent by a session terminal; the initial session request is triggered and generated by the session terminal when the session initiation operation of multiple persons is detected;
the operation management platform determines session users according to the initial session request, and inquires the geographic position corresponding to each session user;
and the operation management platform generates a session request carrying the user identifier and the geographic position of each session user.
10. The method of claim 9, wherein the operation management platform generates a session request carrying the user identifier and the geographic location of each session user, and comprises:
after the operation management platform determines the request data, signing the request data through a private key of the operation management platform to obtain signed data; the request data comprises a user identification and a geographic position of each session user;
and the operation management platform generates a session request carrying the signature data, the request data and a platform certificate of the operation management platform.
11. The method according to any one of claims 1 to 10, further comprising:
and after the data transmission task is completed, each block chain node in the block chain network determines the reward resource distributed by each block chain node in the optimal transmission path, and updates the account resource in the node account of the corresponding block chain node according to the determined reward resource.
12. The method of claim 11, further comprising:
each blockchain node in the blockchain network acquires a corresponding first transaction from a blockchain according to a task identifier corresponding to the data transmission task when acquiring a task ending instruction corresponding to the data transmission task, performs validity check on the task ending instruction according to the first transaction, and broadcasts a validity check result to the blockchain network;
the block chain network performs consensus on the legality checking result determined by each block chain node through a consensus algorithm to obtain a legality checking result finally corresponding to the task ending instruction, generates a second transaction corresponding to the data transmission task when the obtained legality checking result is a checking pass, and writes the second transaction into the block chain; the second transaction comprises the task completion condition of the data transmission task and the task identifier;
and each blockchain node in the blockchain network acquires the second transaction from the blockchain, and determines the task completion condition of the data transmission task according to the second transaction.
13. The method of claim 12, wherein the step of generating the first transaction comprises:
after determining the optimal transmission path corresponding to the data transmission task through a consensus algorithm, the block chain network generates a first transaction carrying the data transmission task and the corresponding task identifier, the optimal transmission path, and the consensus algorithm identifier corresponding to the consensus algorithm, and writes the generated first transaction into the corresponding block chain.
14. A blockchain-based multi-person session data transmission system, the system comprising: a block chain network; the blockchain network comprises a plurality of blockchain nodes;
the block chain node is used for receiving a session request; generating a data transmission task corresponding to the session request, and broadcasting the data transmission task to the block chain network; the broadcasted data transmission task is used for indicating the block chain network to determine an optimal transmission path corresponding to the data transmission task through a consensus algorithm;
the block chain node is further configured to determine a next task participating node according to the optimal transmission path when session data corresponding to the data transmission task is received; and transmitting the session data to the next task participating node to instruct the next task participating node to continue transmitting the session data according to the optimal transmission path.
15. A computer device comprising a memory and a processor, the memory storing a computer program, characterized in that the processor realizes the steps of the method of any one of claims 1 to 13 when executing the computer program.
16. A computer-readable storage medium, on which a computer program is stored, which, when being executed by a processor, carries out the steps of the method of any one of claims 1 to 13.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010321568.9A CN111641559B (en) | 2020-04-22 | 2020-04-22 | Block chain-based multi-person session data transmission method and system and computer equipment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010321568.9A CN111641559B (en) | 2020-04-22 | 2020-04-22 | Block chain-based multi-person session data transmission method and system and computer equipment |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111641559A true CN111641559A (en) | 2020-09-08 |
CN111641559B CN111641559B (en) | 2022-02-15 |
Family
ID=72328860
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010321568.9A Active CN111641559B (en) | 2020-04-22 | 2020-04-22 | Block chain-based multi-person session data transmission method and system and computer equipment |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111641559B (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113572646A (en) * | 2021-07-28 | 2021-10-29 | 上海欧冶金融信息服务股份有限公司 | Star networking method and system suitable for block chain node external network deployment |
CN113726758A (en) * | 2021-08-25 | 2021-11-30 | 百保(上海)科技有限公司 | Data privacy calculation method and system based on block chain |
CN115145931A (en) * | 2021-03-30 | 2022-10-04 | 中国电信股份有限公司 | Network resource interaction method, network generation method and system and network element |
US20230224305A1 (en) * | 2022-01-12 | 2023-07-13 | At&T Intellectual Property I, L.P. | Methods, systems, and devices for verifying a location of a communication device |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109951389A (en) * | 2019-03-06 | 2019-06-28 | 篱笆墙网络科技有限公司 | Storage method of the block chain from chain data, device, equipment and storage medium |
CN109981739A (en) * | 2019-02-25 | 2019-07-05 | 平安科技(深圳)有限公司 | Session data processing method, device, equipment and medium based on block chain |
CN109995857A (en) * | 2019-03-21 | 2019-07-09 | 北京京东尚科信息技术有限公司 | A kind of resource access method, server and computer storage medium |
US20190288850A1 (en) * | 2016-08-12 | 2019-09-19 | ALTR Solutions, Inc. | Decentralized database optimizations |
CN110392898A (en) * | 2018-12-28 | 2019-10-29 | 阿里巴巴集团控股有限公司 | It is delivered using the transaction accelerated in node accelerating region block chain network |
CN110475232A (en) * | 2018-05-09 | 2019-11-19 | 厦门本能管家科技有限公司 | It is a kind of based on bluetooth, the block chain network transmission method of NFC, AIRDROP and system |
CN110557359A (en) * | 2018-06-01 | 2019-12-10 | 厦门本能管家科技有限公司 | Block chain based message communication method and device |
CN110581763A (en) * | 2018-06-09 | 2019-12-17 | 成都零光量子科技有限公司 | Quantum key service block chain network system |
-
2020
- 2020-04-22 CN CN202010321568.9A patent/CN111641559B/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190288850A1 (en) * | 2016-08-12 | 2019-09-19 | ALTR Solutions, Inc. | Decentralized database optimizations |
CN110475232A (en) * | 2018-05-09 | 2019-11-19 | 厦门本能管家科技有限公司 | It is a kind of based on bluetooth, the block chain network transmission method of NFC, AIRDROP and system |
CN110557359A (en) * | 2018-06-01 | 2019-12-10 | 厦门本能管家科技有限公司 | Block chain based message communication method and device |
CN110581763A (en) * | 2018-06-09 | 2019-12-17 | 成都零光量子科技有限公司 | Quantum key service block chain network system |
CN110392898A (en) * | 2018-12-28 | 2019-10-29 | 阿里巴巴集团控股有限公司 | It is delivered using the transaction accelerated in node accelerating region block chain network |
CN109981739A (en) * | 2019-02-25 | 2019-07-05 | 平安科技(深圳)有限公司 | Session data processing method, device, equipment and medium based on block chain |
CN109951389A (en) * | 2019-03-06 | 2019-06-28 | 篱笆墙网络科技有限公司 | Storage method of the block chain from chain data, device, equipment and storage medium |
CN109995857A (en) * | 2019-03-21 | 2019-07-09 | 北京京东尚科信息技术有限公司 | A kind of resource access method, server and computer storage medium |
Non-Patent Citations (2)
Title |
---|
N. DAVEZE; R. DUBAELE; J. HOKAYEM; M. NUSSBAUM; F. CARVALHAIS SA: "Block-Chain-Based Personal Data Hosting", 《 2018 IEEE 9TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING AND SERVICE SCIENCE (ICSESS)》 * |
葛泽烽,徐欣: "区块链技术在企业即时通信系统中的应用", 《软件导刊》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115145931A (en) * | 2021-03-30 | 2022-10-04 | 中国电信股份有限公司 | Network resource interaction method, network generation method and system and network element |
CN113572646A (en) * | 2021-07-28 | 2021-10-29 | 上海欧冶金融信息服务股份有限公司 | Star networking method and system suitable for block chain node external network deployment |
CN113572646B (en) * | 2021-07-28 | 2024-04-02 | 上海欧冶金诚信息服务股份有限公司 | Star networking method and system suitable for deployment of block chain node external network |
CN113726758A (en) * | 2021-08-25 | 2021-11-30 | 百保(上海)科技有限公司 | Data privacy calculation method and system based on block chain |
US20230224305A1 (en) * | 2022-01-12 | 2023-07-13 | At&T Intellectual Property I, L.P. | Methods, systems, and devices for verifying a location of a communication device |
US12052264B2 (en) * | 2022-01-12 | 2024-07-30 | At&T Intellectual Property I, L.P. | Methods, systems, and devices for verifying a location of a communication device |
Also Published As
Publication number | Publication date |
---|---|
CN111641559B (en) | 2022-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111641559B (en) | Block chain-based multi-person session data transmission method and system and computer equipment | |
US11272569B2 (en) | System and method for sharing multi-access edge computing resources in a wireless network | |
CN110263908B (en) | Federal learning model training method, apparatus, system and storage medium | |
Ni et al. | Providing task allocation and secure deduplication for mobile crowdsensing via fog computing | |
CN113204787B (en) | Block chain-based federated learning privacy protection method, system, device and medium | |
Huang et al. | Resource allocation and consensus on edge blockchain in pervasive edge computing environments | |
CN108769230B (en) | Transaction data storage method, device, server and storage medium | |
Huang et al. | Resource allocation and consensus of blockchains in pervasive edge computing environments | |
Hamdaoui et al. | IoTShare: A blockchain-enabled IoT resource sharing on-demand protocol for smart city situation-awareness applications | |
CN109359978B (en) | Intelligent contract trading method and system based on block chain network | |
CN103931160B (en) | Declare in point-to-point content distribution system that the content of peer-to-peer possesses checking | |
Xu et al. | Game theoretical secure caching scheme in multihoming edge computing-enabled heterogeneous networks | |
US20230037932A1 (en) | Data processing method and apparatus based on blockchain network, and computer device | |
KR102230471B1 (en) | Method of generating group proof for efficient transaction on blockchain network | |
CN108521590A (en) | A kind of method and system preventing false video data relaying | |
WO2017173966A1 (en) | Recording control method and device | |
Kumar et al. | An altruism‐based trust‐dependent message forwarding protocol for opportunistic networks | |
Li et al. | EdgeWatch: Collaborative investigation of data integrity at the edge based on blockchain | |
CN110460471B (en) | Super node election method, device and storage medium | |
Ramani et al. | Rapid establishment of transient trust for ndn-based vehicular networks | |
CN113282418A (en) | Model aggregation processing method and device | |
KR20220088747A (en) | Prevents data manipulation and protects user privacy when measuring accurate location events | |
CN111858540B (en) | Weighted distributed data storage method, system and storage medium | |
Hassija et al. | A blockchain based framework for secure data offloading in tactile Internet environment | |
CN111866993A (en) | Wireless local area network connection management method, device, software program and 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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |