Educational resource sharing method and device
By clustering and converting multi-party secure computing into two-party secure computing, the method enhances the efficiency of educational resource sharing in the Internet + education field.
Patent Information
- Application Number
- CN202411348820.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-26
- Publication Date
- 2024-12-20
- Estimated Expiration
- 2044-09-26
AI Technical Summary
Existing educational resource sharing methods in the Internet + education field suffer from low efficiency due to the need for multiple parties in traditional multi-party secure computing, leading to inefficiencies.
The method involves clustering computing nodes based on location information to form three node clusters, splitting each cluster into a first node and multiple second nodes, performing multi-party secure computing within these clusters, and then converting the process into secure two-party computing to reduce the number of nodes involved, thereby enhancing efficiency.
This approach reduces the number of nodes required for secure computing and improves the efficiency of educational resource sharing by leveraging the higher efficiency of two-party secure computing.
Smart Images

Figure CN119172052A_ABST
Abstract
Description
Technical Field
[0001] The present application mainly relates to the field of blockchain technology, and specifically to a method and device for sharing educational resources. Background Art
[0002] Internet + education is a new form of education that combines Internet technology with the field of education. Users can obtain educational resources of interest from the educational resource platform, realizing the sharing of educational resources through intelligent interconnection. However, personal information may be leaked when sharing resources. Most existing technologies use multi-party secure computing to solve the problem of information leakage, but traditional multi-party secure computing with more than two parties requires the participation of multiple parties, resulting in low efficiency.
[0003] That is, the efficiency of the educational resource sharing method in the prior art is low. Summary of the invention
[0004] The present application provides an educational resource sharing method and device, aiming to solve the problem of low efficiency of educational resource sharing methods in the prior art.
[0005] In a first aspect, the present application provides an educational resource sharing method, the educational resource sharing method comprising:
[0006] Clustering each computing node based on the node location information of each computing node in the blockchain system to obtain three node clusters;
[0007] Split each node cluster into a first node and multiple second nodes;
[0008] If it is the first node, it performs multi-party secure computing with multiple second nodes in the node cluster based on their respective private educational resource data to obtain first multi-party secure computing information of the node cluster, and obtains three first multi-party secure computing information of the three node clusters;
[0009] Dividing the three node clusters into two first node clusters and one second node cluster;
[0010] If the node itself is the first node in the first node cluster, obtain a second multi-party secure computing information sent by the first node in the second node cluster, wherein the first node in the second node cluster splits the first multi-party secure computing information of the second node cluster into two second multi-party secure computing information and sends them to the first nodes in the two first node clusters respectively;
[0011] Generate first security information based on the second multi-party secure computing information and the first multi-party secure computing information of the same;
[0012] Performing secure two-party computing with the first node of another first node cluster based on the first security information and the second security information of the first node of another first node cluster to obtain the secure two-party computing result, wherein the second security information is determined by another first node based on the first multi-party secure computing information of another first node and the second multi-party secure computing information obtained by another first node;
[0013] The secure two-party computing result is broadcasted so that each computing node in the blockchain system obtains the secure two-party computing result, wherein the secure two-party computing result includes summary data of private educational resource data of each computing node in the blockchain system.
[0014] In a second aspect, the present application provides an educational resource sharing device, the educational resource sharing device comprising:
[0015] A clustering unit, used to cluster each computing node based on the node location information of each computing node in the blockchain system to obtain three node clusters;
[0016] A splitting unit, used for splitting each node cluster into a first node and a plurality of second nodes;
[0017] A first computing unit, configured to, if it is the first node, perform multi-party secure computing with a plurality of second nodes in the node cluster based on their respective private educational resource data to obtain first multi-party secure computing information of the node cluster, and obtain three first multi-party secure computing information of the three node clusters;
[0018] A division unit, used for dividing the three node clusters into two first node clusters and one second node cluster;
[0019] an acquiring unit, configured to acquire, if the first node is the first node in the first node cluster, a second multi-party secure computing information sent by the first node in the second node cluster, wherein the first node in the second node cluster splits the first multi-party secure computing information of the second node cluster into two second multi-party secure computing information and sends them to the first nodes in the two first node clusters respectively;
[0020] a generating unit, configured to generate first security information based on the second multi-party secure computing information and the first multi-party secure computing information thereof;
[0021] a second computing unit, configured to perform secure two-party computing with the first node of another first node cluster based on the first security information and second security information of the first node of another first node cluster, to obtain the secure two-party computing result, wherein the second security information is determined by another first node based on first multi-party secure computing information of another first node and second multi-party secure computing information acquired by another first node;
[0022] A broadcast unit is used to broadcast the secure two-party computing result so that each computing node in the blockchain system obtains the secure two-party computing result, and the secure two-party computing result includes summary data of private educational resource data of each computing node in the blockchain system.
[0023] In a third aspect, the present application provides a computer device, the computer device comprising:
[0024] one or more processors;
[0025] Memory; and
[0026] One or more applications, wherein the one or more applications are stored in the memory and configured to be executed by the processor to implement the educational resource sharing method described in any one of the first aspects.
[0027] In a fourth aspect, the present application provides a computer-readable storage medium, which stores a plurality of instructions, wherein the instructions are suitable for loading by a processor to execute the steps in the educational resource sharing method described in any one of the first aspects.
[0028] The present application provides an educational resource sharing method and device, the educational resource sharing method comprising: clustering each computing node based on the node position information of each computing node in the blockchain system to obtain three node clustering clusters; splitting each node clustering cluster into a first node and multiple second nodes; if it is the first node, performing multi-party secure computing with multiple second nodes in the node clustering cluster based on their own private educational resource data to obtain first multi-party secure computing information of the node clustering cluster, and obtaining three first multi-party secure computing information of the three node clustering clusters; dividing the three node clustering clusters into two first node clustering clusters and one second node clustering cluster; if it is the first node in the first node clustering cluster, obtaining a second multi-party secure computing information sent by the first node of the second node clustering cluster, wherein the first node of the second node clustering cluster sends the second node clustering information to the second node clustering cluster. The first multi-party secure computing information of the cluster is split into two second multi-party secure computing information and sent to the first nodes in the two first node clustering clusters respectively; the first security information is generated based on the second multi-party secure computing information and the first multi-party secure computing information of the cluster itself; the secure two-party computing is performed with the first node of another first node clustering cluster based on the first security information and the second security information of the first node of another first node clustering cluster, and the secure two-party computing result is obtained, wherein the second security information is determined by another first node according to the first multi-party secure computing information of another first node and the second multi-party secure computing information obtained by another first node; the secure two-party computing result is broadcasted so that the computing node in each blockchain system obtains the secure two-party computing result, and the secure two-party computing result includes the summary data of the private educational resource data of each computing node in the blockchain system. The present application selects 3 nodes from the clustered 3 node clusters for secure computing, and converts the traditional multi-party secure computing into two-party secure computing, which reduces the number of nodes for secure computing on the one hand, and with the help of the high efficiency of two-party secure computing, can improve the efficiency of the educational resource sharing method. BRIEF DESCRIPTION OF THE DRAWINGS
[0029] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For those skilled in the art, other drawings can be obtained based on these drawings without creative work.
[0030] Figure 1 A schematic diagram of a scenario of an educational resource sharing system provided in an embodiment of the present application;
[0031] Figure 2 It is a flowchart of an embodiment of the educational resource sharing method provided in the embodiments of the present application;
[0032] Figure 3It is a schematic diagram of the structure of an embodiment of an educational resource sharing device provided in an embodiment of the present application;
[0033] Figure 4 It is a schematic diagram of the structure of an embodiment of a computer device provided in the embodiments of the present application. DETAILED DESCRIPTION
[0034] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of this application.
[0035] In the description of the present application, it should be understood that the terms "center", "longitudinal", "lateral", "length", "width", "thickness", "up", "down", "front", "back", "left", "right", "vertical", "horizontal", "top", "bottom", "inside", "outside" and the like indicate positions or positional relationships based on the positions or positional relationships shown in the accompanying drawings, which are only for the convenience of describing the present application and simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and therefore cannot be understood as a limitation on the present application. In addition, the terms "first" and "second" are used only for descriptive purposes, and cannot be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Therefore, the features defined as "first" and "second" may explicitly or implicitly include one or more features. In the description of the present application, the meaning of "multiple" is two or more, unless otherwise clearly and specifically defined.
[0036] In this application, the word "exemplary" is used to mean "used as an example, illustration, or description." Any embodiment described in this application as "exemplary" is not necessarily to be construed as being preferred or advantageous over other embodiments. The following description is given to enable any technician in the field to implement and use the present application. In the following description, details are listed for the purpose of explanation. It should be understood that a person of ordinary skill in the art can recognize that the present application can be implemented without using these specific details. In other instances, well-known structures and processes will not be elaborated in detail to avoid obscuring the description of the present application with unnecessary details. Therefore, the present application is not intended to be limited to the embodiments shown, but is consistent with the widest scope consistent with the principles and features disclosed in the present application.
[0037] The embodiments of the present application provide a method and device for sharing educational resources, which are described in detail below.
[0038] See also Figure 1 , Figure 1 A schematic diagram of a scenario of an educational resource sharing system provided in an embodiment of the present application, wherein the educational resource sharing system may include a blockchain system and a user terminal, wherein a user initiates a video resource acquisition request through the user terminal, and wherein the blockchain system includes a plurality of network-connected computing nodes. The computing node may be a computer device, wherein an educational resource sharing device is integrated.
[0039] In the embodiments of the present application, the computer device may be an independent server, or a server network or server cluster composed of servers. For example, the computer device described in the embodiments of the present application includes but is not limited to a computer, a network host, a single network server, a plurality of network server sets or a cloud server composed of a plurality of servers. The cloud server is composed of a large number of computers or network servers based on cloud computing.
[0040] In the embodiment of the present application, the above-mentioned computer device may be a general-purpose computer device or a special-purpose computer device. In a specific implementation, the computer device may be a desktop computer, a portable computer, a network server, a PDA (Personal Digital Assistant), a mobile phone, a tablet computer, a wireless terminal device, a communication device, an embedded device, etc. This embodiment does not limit the type of computer device.
[0041] It should be noted that Figure 1 The scenario diagram of the educational resource sharing system shown is merely an example. The educational resource sharing system and scenario described in the embodiment of the present application are intended to more clearly illustrate the technical solution of the embodiment of the present application, and do not constitute a limitation on the technical solution provided in the embodiment of the present application. Ordinary technicians in this field can know that with the evolution of the educational resource sharing system and the emergence of new business scenarios, the technical solution provided in the embodiment of the present application is also applicable to similar technical problems.
[0042] First, an educational resource sharing method is provided in an embodiment of the present application, and the educational resource sharing method includes: clustering each computing node based on the node position information of each computing node in the blockchain system to obtain three node clustering clusters; splitting each node clustering cluster into a first node and multiple second nodes; if it is the first node, then performing multi-party secure computing with multiple second nodes in the node clustering cluster based on their own private educational resource data to obtain first multi-party secure computing information of the node clustering cluster, and obtaining three first multi-party secure computing information of the three node clustering clusters; dividing the three node clustering clusters into two first node clustering clusters and one second node clustering cluster; if it is the first node in the first node clustering cluster, then obtaining a second multi-party secure computing information sent by the first node of the second node clustering cluster, wherein the first node of the second node clustering cluster sends the second node to the first node of the second node clustering cluster. The first multi-party secure computing information of the cluster is split into two second multi-party secure computing information and sent to the first nodes in the two first-node clusters respectively; the first security information is generated based on the second multi-party secure computing information and its own first multi-party secure computing information; based on the first security information and the second security information of the first node of another first-node cluster, a secure two-party computing is performed with the first node of another first-node cluster to obtain a secure two-party computing result, wherein the second security information is determined by the other first node based on the first multi-party secure computing information of the other first node and the second multi-party secure computing information obtained by the other first node; the secure two-party computing result is broadcasted so that each computing node in the blockchain system obtains the secure two-party computing result, and the secure two-party computing result includes the summary data of the private education resource data of each computing node in the blockchain system.
[0043] like Figure 2 As shown, Figure 2 : is a flow chart of an embodiment of the educational resource sharing method provided in the embodiment of the present application, and the educational resource sharing method comprises the following steps:
[0044] 201. Cluster each computing node based on the node location information of each computing node in the blockchain system to obtain three node clustering clusters.
[0045] The node location information can be used to calculate the longitude and latitude of the node.
[0046] In the embodiment of the present application, each computing node is clustered based on the node location information of each computing node in the blockchain system to obtain three node clustering clusters, including:
[0047] (1) The node location information of N computing nodes in the blockchain system is randomly divided into K location information sets, where each location information set contains N / K node location information.
[0048] The blockchain system includes N computing nodes.
[0049] (2) Cluster the K location information sets respectively to obtain three second location information clusters in each location information set.
[0050] Specifically, three nodes with three node position information are randomly obtained from the position information set as three cluster center nodes, and a corresponding cluster node set is established for each cluster center node.
[0051] The node similarity of two nodes corresponding to any two node position information in the position information set is calculated respectively. In a specific implementation, the node feature information of the two nodes is converted into feature vectors and the cosine similarity is calculated to obtain the node similarity of any two nodes in the position information set.
[0052] The node corresponding to each node position information in the position information set is determined as the node to be assigned, and the three node similarities between the node to be assigned and the three cluster center nodes are obtained. The node to be assigned is placed in the cluster node set corresponding to the cluster center node corresponding to the largest node similarity among the three node similarities, and three cluster node sets are obtained.
[0053] The average value of the node feature information of the cluster node set is calculated to obtain the cluster node centroid of the cluster node set, and 3 cluster node centroids are obtained.
[0054] Calculate the deviation parameters between the 3 cluster node centroids and the 3 cluster center nodes.
[0055] Specifically, the node similarity between the cluster node centroid and each cluster center node is calculated, and the cluster center node with the largest node similarity with the cluster node centroid is determined as the neighborhood node of the cluster node centroid. The difference between the cluster node centroid and the neighborhood nodes is determined based on the node similarity between the cluster node centroid and the corresponding neighborhood nodes, wherein the greater the node similarity between the cluster node centroid and the neighborhood nodes, the smaller the difference between the cluster node centroid and the neighborhood nodes. The sum of the differences corresponding to the centroids of each cluster node is determined as the deviation parameter.
[0056] When the deviation parameter is greater than the preset parameter value, the centroids of the three cluster nodes are updated to new three-node cluster center nodes, and new three cluster node sets and new deviation parameters corresponding to the new three-node cluster center nodes are obtained. When the new deviation parameter is not greater than the preset parameter value, the new three cluster node sets are determined as three second location information clusters.
[0057] (3) Determine each second location information cluster as a target location information cluster, and calculate the information cluster similarity between the target location information cluster and the second location information clusters in the K location information sets.
[0058] Specifically, the similarity between the cluster average vector of the target position information cluster and the cluster average vector of the second position information cluster is calculated; the similarity between the cluster average vector of the target position information cluster and the cluster average vector of the second position information cluster is determined as the information cluster similarity between the target position information cluster and the second position information cluster.
[0059] (4) The second location information clusters with the greatest similarity to the target location information cluster in each location information set are merged to obtain the first location information cluster corresponding to the target location information cluster, and to obtain three first location information clusters corresponding to the three second location information clusters.
[0060] (5) Multiple computing nodes corresponding to multiple node location information in the first location information cluster are determined as a node clustering cluster, and three node clustering clusters are obtained.
[0061] 202. Split each node cluster into a first node and multiple second nodes.
[0062] In the embodiment of the present application, each node cluster is split into a first node and multiple second nodes, including:
[0063] (1) Obtain the mutual trust scores and communication speeds between multiple computing nodes in a node cluster.
[0064] 1-1, any two computing nodes are determined as the third node and the fourth node.
[0065] In an embodiment of the present application, a first correct vote ratio of the number of correct votes when the third node participates in the consensus voting within the first historical time period is obtained, wherein when the voting choice of the node when participating in the consensus voting is the same as the consensus voting result, it is determined that the node voted correctly.
[0066] The first historical time period may be a historical week or three days, etc.
[0067] For example, multiple nodes in a blockchain system vote, and there are three voting results, namely voting result A, voting result B, and voting result C. Among them, node A's voting choice is voting result A. Multiple nodes in the blockchain system reach a consensus on voting result A. The consensus voting result is voting result A, and node A votes correctly.
[0068] 1-2, obtain the second correct vote ratio of the correct votes of the fourth node when participating in the consensus voting in the first historical time period.
[0069] 1-3, obtain the first voting rate of the third node voting for the fourth node when the historical consensus is reached.
[0070] Among them, the first voting rate is the ratio of the number of votes cast by the third node for the fourth node when the consensus was reached historically to the total number of votes cast by the third node when the consensus was reached historically.
[0071] For example, if the third node voted 10 times in total when reaching consensus historically, and 5 of them voted for the fourth node, the first voting rate of the third node is 50%.
[0072] 1-4, get the second voting rate of the fourth node voting for the third node when the historical consensus is reached.
[0073] In an embodiment of the present application, the first voting rate and the second voting rate are weightedly summed based on the first correct vote ratio and the second correct vote ratio to obtain a mutual trust score between the third node and the fourth node, and to obtain a mutual trust score between multiple computing nodes in the node cluster.
[0074] Specifically, the calculation consensus of the trust score Zij is as follows:
[0075] .
[0076] Among them, Zij is the trust score between the i-th computing node and the j-th computing node. Qij is the first correct vote ratio when the i-th computing node is the third node and the j-th computing node is the fourth node. Qji is the second correct vote ratio when the i-th computing node is the third node and the j-th computing node is the fourth node. Lij is the first voting rate when the i-th computing node is the third node and the j-th computing node is the fourth node; Lji is the second voting rate when the i-th computing node is the third node and the j-th computing node is the fourth node.
[0077] (2) The average trust value and the average first communication speed of each computing node in the computing node cluster are calculated. The average trust value of the computing node is the average value of the trust scores between other nodes and the computing node, and the average first communication speed of the computing node is the average value of the communication speed between the computing node and other nodes.
[0078] (3) Obtain the data size of the private educational resource data of each computing node in the node cluster.
[0079] (4) Determine the priority parameter of the computing node based on the average trust value of the computing node, the average first communication speed, and the data volume, wherein the larger the average trust value of the computing node, the larger the priority parameter of the computing node; the larger the average first communication speed of the computing node, the larger the priority parameter of the computing node; and the larger the data volume of the computing node, the larger the priority parameter of the computing node.
[0080] In the embodiment of the present application, the average trust value of the computing node, the first communication average speed and the data volume are normalized to obtain a trust normalization value, a communication normalization value and a data volume normalization value. The priority parameter is determined based on the trust normalization value, the communication normalization value and the data volume normalization value.
[0081] Specifically, the calculation formula of the priority parameter Y is as follows:
[0082]
[0083] Among them, Y is the priority parameter, X1 is the trust normalized value, T1 is the communication normalized value, S1 is the data volume normalized value, a, b, c are the weights of the trust normalized value, communication normalized value and data volume normalized value.
[0084] (5) The computing node with the largest priority parameter in the node cluster is determined as the first node, and the other computing nodes are determined as the second nodes.
[0085] 203. If it is the first node, it performs multi-party security computing with multiple second nodes in the node cluster based on their respective private educational resource data to obtain first multi-party security computing information of the node cluster and obtain three first multi-party security computing information of the three node clusters.
[0086] Secure multi-party computation (SMC) is a collaborative computing problem that solves the privacy protection problem among a group of mutually distrusting parties. SMC must ensure the independence of inputs and the correctness of calculations, while not leaking input values to other members participating in the calculation.
[0087] The first multi-party secure computing information is summary data of private educational resource data on the first node and multiple second nodes in the node cluster.
[0088] 204. Divide the three node clusters into two first node clusters and one second node cluster.
[0089] In the embodiment of the present application, the priority parameter of the first node in each node cluster is obtained, the communication speed between the first nodes in each node cluster is obtained, the second average communication speed of the first node is determined based on the average value of the communication speed between the other two first nodes and the first node, the second average communication speed of each first node is obtained, the cluster screening parameter is determined based on the priority parameter of the first node in each node cluster, the second average communication speed of the first node in each node cluster, and the amount of information of the first multi-party secure computing information of each node cluster, the node cluster with the largest cluster screening parameter is determined as the second node cluster, and the other two node clusters are determined as the first node cluster. Among them, the larger the priority parameter of the first node in the node cluster, the larger the cluster screening parameter; the larger the second average communication speed of the first node in the node cluster, the larger the cluster screening parameter; the smaller the amount of information of the first multi-party secure computing information of the node cluster, the larger the cluster screening parameter.
[0090] 205. If the node itself is the first node in the first node cluster, obtain a second multi-party secure computing information sent by the first node in the second node cluster.
[0091] The first node of the second node cluster splits the first multi-party secure computing information of the second node cluster into two second multi-party secure computing information and sends them to the first nodes in the two first node clusters respectively.
[0092] In the embodiment of the present application, obtaining a second multi-party secure computing information sent by the first node of the second node cluster includes:
[0093] (1) Obtain the communication speed and trust score between the two first nodes of the two first node clusters and the first node of the second node cluster.
[0094] (2) Determine the transmission ratio parameters of the two first nodes of the two first node clusters based on the communication speed and trust score between the two first nodes of the two first node clusters and the first node of the second node cluster.
[0095] Among them, the greater the communication speed between the first node of the first node cluster and the first node of the second node cluster, the greater the transmission ratio parameter, and the greater the communication speed between the first node of the first node cluster and the first node of the second node cluster, the greater the transmission ratio parameter.
[0096] (3) Sending the transmission ratio parameters of the two first nodes of the two first node clustering clusters to the first node of the second node clustering cluster, obtaining one second multi-party security computing information that matches its own transmission ratio parameter from the two second multi-party security computing information split by the first node of the second node clustering cluster, wherein the first node of the second node clustering cluster splits the first multi-party security computing information based on the two transmission ratio parameters to obtain two second multi-party security computing information, and the ratio of the data volume of the two second multi-party security computing information is the ratio of the two transmission ratio parameters.
[0097] For example, if the transmission ratio parameters of the first nodes of the two first node clusters are 40% and 60%, then the first node of the second node cluster splits the first multi-party secure computing information into two second multi-party secure computing information at a ratio of 40%:60%, and the data volume ratio of the two second multi-party secure computing information is 4:6.
[0098] For example, the first multi-party secure computation information of the three first nodes are respectively x, y, and z. The first node of the second node cluster splits its own first multi-party secure computation information z into two second multi-party secure computation information z1 and z2.
[0099] 206. Generate first security information based on the second multi-party secure computation information and the first multi-party secure computation information of the device.
[0100] In the embodiment of the present application, the first security information is generated based on the second multi-party secure computing information and the own private educational resource data, including:
[0101] (1) Obtain the tripartite security function constructed by the three first nodes.
[0102] For example, the three-party security function constructed by the three first nodes is f(x, y, z).
[0103] (2) constructing a first two-party security function and a second two-party security function based on the three-party security function and the first node in another first node cluster, wherein the three-party security function is a composite function of the first two-party security function and the second two-party security function.
[0104] The first nodes in the two first node clusters construct a first two-party security function h and a second two-party security function g based on the three-party security function f(x, y, z), wherein the three-party security function f(x, y, z) is a composite function of the first two-party security function h and the second two-party security function g.
[0105] (3) Calculate the first multi-party security calculation information and the second multi-party security calculation information based on the first two-party security function to obtain first security information.
[0106] Among them, the first multi-party security computing information of the first node in the first node cluster is x, and the second multi-party security computing information obtained is z1. Based on the first two-party security function h, the first multi-party security computing information and the second multi-party security computing information are calculated to obtain the first security information h(x, z1).
[0107] 207 . Perform secure two-party computing with the first node of another first node cluster based on the first security information and the second security information of the first node of another first node cluster to obtain a secure two-party computing result.
[0108] The second security information is determined by another first node according to the first multi-party secure computation information of another first node and the second multi-party secure computation information obtained by another first node. Another first node performs computation based on the first two-party secure function h to obtain the second security information h(y, z2).
[0109] In the embodiment of the present application, a secure two-party calculation is performed on the first security information and the second security information based on the second two-party security function to obtain a secure two-party calculation result.
[0110] In a specific embodiment, it is determined whether the node is selected as a circuit establishment node; if the node is selected as a circuit establishment node, a two-party calculation obfuscation circuit is established based on a second two-party security function g; a truth table of the two-party calculation obfuscation circuit and the first security information is sent to another first node; and a secure two-party calculation result is obtained after another first node executes the two-party calculation obfuscation circuit based on the second security information. The two-party calculation obfuscation circuit is a Yao circuit.
[0111] Furthermore, if it is determined that itself has not been selected as a circuit establishment node, the two-party calculation obfuscation circuit and the truth table of the second security information established by another first node are obtained; based on the two-party calculation obfuscation circuit, the truth table of the second security information and the first security information, a secure two-party calculation result is obtained and sent to another first node.
[0112] Specifically, the second two-party security function g establishes a two-party calculation obfuscation circuit, and sends the truth table of the two-party calculation obfuscation circuit and the first security information h(x, z1) to another first node; the other first node obtains the secure two-party calculation result based on the two-party calculation obfuscation circuit, the truth table of the first security information h(x, z1) and the second security information h(y, z2) and sends it to the first node, and obtains the secure two-party calculation result sent by the other first node after executing the two-party calculation obfuscation circuit. The secure two-party calculation result is R, R = g(h(x, z1), h(y, z2)).
[0113] 208. Broadcast the secure two-party computing result so that each computing node in the blockchain system obtains the secure two-party computing result, and the secure two-party computing result includes the summary data of the private educational resource data of each computing node in the blockchain system.
[0114] Broadcast the secure two-party computation result R in the blockchain system.
[0115] Further, educational resource sharing methods include:
[0116] (1) When receiving the target user’s video resource acquisition request, it reaches a consensus on the video resource acquisition request with each computing node in the node cluster where it is located.
[0117] Specifically, the target user sends a video resource acquisition request to a node in the blockchain system.
[0118] In this embodiment, the user's video resource acquisition request depends on the educational resources that the user wants to learn. For example, the user's resource request is to learn C language, learn Solidworks, and learn Java language.
[0119] (2) When the computing nodes in the node cluster to which it belongs reach a consensus on the video resource acquisition request, the target video file that matches the resource request is obtained from the secure two-party calculation results.
[0120] (3) Analyze the response operation information made by the target user to the target video file.
[0121] In one embodiment, the response operation information is used for operations performed on the target video file, including but not limited to pause, fast forward, rewind, adjust speed, etc.
[0122] (4) Obtain target questionable knowledge points that the target user may have questions about based on the response operation information, wherein, if it is detected that the target user has repeatedly rewinded from the current playback node to the already played node, then obtain multiple knowledge point information covered between the already played node and the current playback node, and use the obtained multiple knowledge point information as the target questionable knowledge points; if it is detected that the target user has turned on the note-taking function, then obtain the note information recorded by the target user; parse the note information to obtain the target questionable knowledge points that the target user may have questions about.
[0123] In one embodiment, if it is detected that the user repeatedly watches a certain video segment, the user may have questions about the video segment.
[0124] In one embodiment, the associated file may be a video file, a document file, or a presentation file, etc. There may be multiple associated files. When there are multiple associated files, they are displayed in a list format. Specifically, the associated files may be sorted according to the depth of the explanation. The more superficial the explanation, the more it is placed at the front, which is suitable for entry-level users; the more in-depth the explanation, the more it is placed at the back, which is suitable for users with a certain foundation. The reason for this sorting is to facilitate users to understand the corresponding knowledge points step by step to avoid difficulty in learning. Users can selectively learn associated files according to their own situation.
[0125] In one embodiment, if it is detected that the target user has repeatedly rewinded from the current playback node to the already played node, multiple knowledge point information covered between the already played node and the current playback node is obtained, and the obtained multiple knowledge point information is used as the target questionable knowledge points; if it is detected that the target user has turned on the note function, the note information recorded by the target user is obtained; the note information is parsed to obtain the target questionable knowledge points that the target user may have questions about.
[0126] In one embodiment, a video segment between a played node and a currently played node is obtained, and the video segment is parsed to obtain knowledge points covered by the video segment.
[0127] In one embodiment, the target video file may be analyzed and sorted in advance to establish an association relationship between time periods and knowledge points. The time periods corresponding to the played nodes and the current played node are obtained, and the corresponding knowledge points are determined according to the obtained time periods and the association relationship.
[0128] In order to facilitate users to take notes, in one embodiment, a "note recording button" is also displayed on the interface where the target video file is located. In this case, after the user turns on the "note recording button", a recording window will pop up, and the user can record the learning situation in the recording window. In this case, the response operation includes the recording operation performed by the user, and the text content corresponding to the recording operation is parsed to obtain the target questionable knowledge points that the user may have questions about. For example, if a question mark "?" is added after a certain text, it means that the text at that place is a target questionable knowledge point that the user may have questions about.
[0129] In one embodiment, there may be two areas in the recording window, one of which is used to record the user's summary experience, content that the user believes needs special attention, etc.; the other area is used to record knowledge points that the user does not understand well. If the content recorded in the other area can be obtained, the target questionable knowledge points that the user may have questions about can be obtained.
[0130] Furthermore, if it is detected that the target user has turned on the note function, the note information recorded by the target user is obtained; the note information is parsed to obtain the target questionable knowledge point that the target user may have questions about. At least one associated file corresponding to the questionable knowledge point is obtained, and a web link of the at least one associated file is inserted into the questionable knowledge point. If a trigger operation of the user clicking the web link is received, the corresponding associated file is displayed.
[0131] (5) Obtain at least one associated file corresponding to the target questionable knowledge point from the secure two-party calculation result, pop up an associated window, and display the at least one associated file in a list form in the associated window.
[0132] In an embodiment of the present application, at least one associated file corresponding to the target questionable knowledge point is obtained from the secure two-party calculation result, and an associated window pops up, and at least one associated file is displayed in a list form during the associated playback, so that the user can choose whether to learn at least one associated file according to his or her own learning situation, wherein the associated window can be moved and does not cover the target video file being played.
[0133] In one embodiment, the associated window can be a window established based on the electron framework, on which the associated file can be displayed or played, and the associated window can respond to mouse clicks, drags, and other actions. Among them, electron (formerly Atom Shell) is a cross-platform desktop application development tool developed by GitHub, which supports the development of desktop applications using Web technologies. It allows the use of Node.js and Chromium to complete the development of desktop applications, and has been used by multiple open source Web applications for front-end and back-end development. Electron is equivalent to a browser shell, which can embed web page programs into the shell and package web pages into a program running on the desktop, which is generally referred to as software.
[0134] In one embodiment, if the associated file is a video file, the user can choose whether to play the corresponding video file to understand the questionable knowledge point. If the associated file is a document file, the user can choose whether to display the corresponding document file, and the content related to the questionable knowledge point is marked in the document file to facilitate the user to quickly extract information.
[0135] In the embodiment of the present application, obtaining at least one associated file corresponding to the target questionable knowledge point from the secure two-party calculation result includes:
[0136] (1) Obtaining historical file selection information of multiple users in a second historical time period, wherein the historical file selection information includes questionable knowledge points and corresponding associated files.
[0137] For example, the historical file selection information includes the questionable knowledge points and the corresponding associated files, which are the questionable knowledge points determined historically and the associated files selected by the user based on the questionable knowledge points history.
[0138] (2) Users whose historical file selection information includes the target questionable knowledge point are identified as candidate users.
[0139] (3) Determine a first file similarity between any two associated files among the plurality of associated files based on the historical file selection information.
[0140] First, any two of the plurality of associated files are respectively determined as a first target associated file and a second target associated file. For example, a first target associated file A and a second target associated file B are obtained from the plurality of associated files.
[0141] Next, the number of first users who have selected the first target-related file, the number of second users who have selected the second target-related file, and the number of third users who have selected both the first target-related file and the second target-related file are determined based on the historical file selection information.
[0142] Get the number of first users N who have selected the first target associated file A A , obtain the number of second users N who have selected the second target associated file B B , obtain the number of third users N who have selected both the first target associated file and the second target associated file AB .
[0143] Next, the first associated file similarity between the first target associated file and the second target associated file is determined based on the first user number, the second user number, the third user number and the total number of users in the second historical time period, and the first associated file similarity between any two associated files in the plurality of associated files is obtained.
[0144] In a specific embodiment, the first associated file similarity between the first target associated file A and the second target associated file B is , the first number of users N A , the number of second users N B , the number of third users N AB , the total number of users N satisfies the relationship shown in the formula,
[0145]
[0146] By determining any two associated files among the multiple associated files as the first target associated file A and the second target associated file B, the first associated file similarity between any two associated files among the multiple associated files can be obtained.
[0147] (4) Grouping the multiple associated files selected by the target user and the multiple associated files selected by the candidate users to obtain multiple associated file groups, wherein the associated file group includes an associated file selected by the target user and an associated file selected by the candidate user.
[0148] (5) Determine the group similarity corresponding to each associated file group based on the first associated file similarity of two associated files in each associated file group.
[0149] First, two associated files in the target associated file group are respectively determined as a third target associated file and a fourth target associated file, wherein the target associated file group is any one of a plurality of associated file groups.
[0150] Next, the first associated file similarities between the third target associated file and other associated files in the plurality of associated files are obtained to obtain the plurality of first associated file similarities corresponding to the third target associated file.
[0151] The third target associated file is I, and the multiple associated files in the second historical time period are A, B...N. Then the similarity between the third target associated file and the first associated file of other associated files in the multiple associated files can be obtained by using the formula. For example, the similarity between the third target associated file I and the first associated file of associated file A is .
[0152] Then, the similarities of multiple first associated files corresponding to the third target associated file can be obtained, which are , … .
[0153] Then, a similarity feature vector of the third target associated file is determined based on the similarities of the plurality of first associated files corresponding to the third target associated file.
[0154] Specifically, the similarity feature vector of the third target associated file As shown in the following formula,
[0155] .
[0156] Based on the same principle, the similarity feature vector of the fourth target associated file is calculated.
[0157] Finally, the second associated file similarity between the third target associated file and the fourth target associated file is determined based on the similarity feature vector of the third target associated file and the similarity feature vector of the fourth target associated file.
[0158] Specifically, the cosine similarity between the similarity feature vector of the third target associated file and the similarity feature vector of the fourth target associated file is determined as the second associated file similarity between the third target associated file and the fourth target associated file.
[0159] Finally, the second associated file similarity between the third target associated file and the fourth target associated file is determined as the group similarity of the target associated file group, and the group similarity of each associated file group is obtained.
[0160] (6) Obtain the weight coefficient of the group similarity corresponding to each associated file group.
[0161] First, the first user-associated file similarity between the target user and the fifth target-associated file is obtained, where the fifth target-associated file is an associated file in the associated file group corresponding to the target user.
[0162] In a specific embodiment, obtaining the first user-associated file similarity between the target user and the fifth target-associated file includes: respectively obtaining multiple first-associated file similarities between multiple associated files selected by the target user and the fifth target-associated file; obtaining the proportion of the number of selections of each associated file by the target user in the second historical time period; and performing weighted averaging on the multiple first-associated file similarities between the multiple associated files selected by the target user and the fifth target-associated file based on the proportion of the number of selections to obtain the first user-associated file similarity.
[0163] Then, the second user associated file similarity between the candidate user and the sixth target associated file is obtained, where the sixth target associated file is an associated file in the associated file group corresponding to the candidate user.
[0164] In a specific embodiment, obtaining the second user-associated file similarity between the candidate user and the sixth target associated file includes: respectively obtaining multiple first associated file similarities between multiple associated files selected by the candidate user and the sixth target associated file; obtaining the proportion of the number of selections of each associated file by the candidate user in the second historical time period; and performing weighted averaging of the multiple first associated file similarities between the multiple associated files selected by the candidate user and the sixth target associated file based on the proportion of the number of selections to obtain the second user-associated file similarity.
[0165] Finally, the weight coefficient of the grouping similarity is determined based on the first user-associated file similarity and the second user-associated file similarity. In a specific embodiment, the weight coefficient of the grouping similarity is the product of the first user-associated file similarity and the second user-associated file similarity.
[0166] (7) Based on the weight coefficients of the similarities of each group, the group similarities of each associated file group are weighted averaged to obtain the user similarity between the target user and the candidate users.
[0167] (8) Determine the multiple associated files selected by a preset number of candidate users ranked in descending order of user similarity for the target questionable knowledge point as at least one target associated file corresponding to the target questionable knowledge point.
[0168] The number of preset users is less than the number of candidate users.
[0169] In order to better implement the educational resource sharing method in the embodiment of the present application, on the basis of the educational resource sharing method, the embodiment of the present application also provides an educational resource sharing device, such as Figure 3 As shown, the educational resource sharing device includes:
[0170] A clustering unit 401 is used to cluster each computing node based on the node location information of each computing node in the blockchain system to obtain three node clusters;
[0171] A splitting unit 402 is used to split each node cluster into a first node and a plurality of second nodes;
[0172] The first computing unit 403 is configured to, if it is the first node, perform multi-party secure computing with multiple second nodes in the node cluster based on their respective private educational resource data to obtain first multi-party secure computing information of the node cluster, and obtain three first multi-party secure computing information of the three node clusters;
[0173] A division unit 404 is used to divide the three node clusters into two first node clusters and one second node cluster;
[0174] The acquiring unit 405 is configured to acquire, if the first node is the first node in the first node cluster, a second multi-party secure computing information sent by the first node in the second node cluster, wherein the first node in the second node cluster splits the first multi-party secure computing information of the second node cluster into two second multi-party secure computing information and sends them to the first nodes in the two first node clusters respectively;
[0175] A generating unit 406, configured to generate first security information based on the second multi-party secure computing information and the first multi-party secure computing information thereof;
[0176] A second computing unit 407 is configured to perform a secure two-party computing with the first node of another first node cluster based on the first security information and the second security information of the first node of another first node cluster to obtain the secure two-party computing result, wherein the second security information is determined by another first node based on the first multi-party secure computing information of another first node and the second multi-party secure computing information obtained by another first node;
[0177] The broadcast unit 408 is used to broadcast the secure two-party computing result so that each computing node in the blockchain system obtains the secure two-party computing result, and the secure two-party computing result includes the summary data of the private educational resource data of each computing node in the blockchain system.
[0178] The embodiment of the present application further provides a computer device, which integrates any one of the educational resource sharing devices provided in the embodiment of the present application, and the computer device includes:
[0179] one or more processors;
[0180] Memory; and
[0181] One or more applications, wherein the one or more applications are stored in a memory and configured to be executed by a processor to execute the steps of the educational resource sharing method in any of the above-mentioned educational resource sharing method embodiments.
[0182] like Figure 4 As shown, it shows a schematic diagram of the structure of the computer device involved in the embodiment of the present application, specifically:
[0183] The computer device may include components such as a processor 601 with one or more processing cores, a memory 602 with one or more computer-readable storage media, a power supply 603, and an input unit 604. Those skilled in the art will appreciate that the computer device structure shown in the figure does not constitute a limitation on the computer device, and may include more or fewer components than shown in the figure, or group certain components, or arrange the components differently. Among them:
[0184] The processor 601 is the control center of the computer device. It uses various interfaces and lines to connect various parts of the entire computer device. By running or executing software programs and / or modules stored in the memory 602, and calling data stored in the memory 602, it executes various functions of the computer device and processes data, thereby monitoring the computer device as a whole. Optionally, the processor 601 may include one or more processing cores; the processor 601 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc. Preferably, the processor 601 may integrate an application processor and a modem processor, wherein the application processor mainly processes the operating system, user interface and application programs, etc., and the modem processor mainly processes wireless communications. It is understandable that the above-mentioned modem processor may not be integrated into the processor 601.
[0185] The memory 602 can be used to store software programs and modules. The processor 601 executes various functional applications and data processing by running the software programs and modules stored in the memory 602. The memory 602 may mainly include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required for at least one function (such as a sound playback function, an image playback function, etc.), etc.; the data storage area may store data created according to the use of the computer device, etc. In addition, the memory 602 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other volatile solid-state storage devices. Accordingly, the memory 602 may also include a memory controller to provide the processor 601 with access to the memory 602.
[0186] The computer device also includes a power supply 603 for supplying power to various components. Preferably, the power supply 603 can be logically connected to the processor 601 through a power management system, so as to manage charging, discharging, and power consumption through the power management system. The power supply 603 can also include any components such as one or more DC or AC power supplies, recharging systems, power failure detection circuits, power converters or inverters, and power status indicators.
[0187] The computer device may further include an input unit 604, which may be used to receive input digital or character information and generate keyboard, mouse, joystick, optical or trackball signal input related to user settings and function control.
[0188] Although not shown, the computer device may further include a display unit, etc., which will not be described in detail herein. Specifically in this embodiment, the processor 601 in the computer device will load the executable files corresponding to the processes of one or more application programs into the memory 602 according to the following instructions, and the processor 601 will run the application programs stored in the memory 602, thereby realizing various functions, as follows:
[0189] Based on the node position information of each computing node in the blockchain system, each computing node is clustered to obtain three node clustering clusters; each node clustering cluster is split into a first node and multiple second nodes; if it is the first node, it performs multi-party secure computing with multiple second nodes in the node clustering cluster based on their own private educational resource data to obtain the first multi-party secure computing information of the node clustering cluster, and obtains three first multi-party secure computing information of the three node clustering clusters; the three node clustering clusters are divided into two first node clustering clusters and one second node clustering cluster; if it is the first node in the first node clustering cluster, it obtains a second multi-party secure computing information sent by the first node of the second node clustering cluster, wherein the first node of the second node clustering cluster splits the first multi-party secure computing information of the second node clustering cluster into Two second multi-party secure computing information are sent to the first nodes in the two first node clusters respectively; first security information is generated based on the second multi-party secure computing information and its own first multi-party secure computing information; secure two-party computing is performed with the first node of another first node cluster based on the first security information and the second security information of the first node of another first node cluster to obtain a secure two-party computing result, wherein the second security information is determined by the other first node based on the first multi-party secure computing information of the other first node and the second multi-party secure computing information obtained by the other first node; the secure two-party computing result is broadcasted so that each computing node in the blockchain system obtains the secure two-party computing result, and the secure two-party computing result includes summary data of private educational resource data of each computing node in the blockchain system.
[0190] A person of ordinary skill in the art will appreciate that all or part of the steps in the various methods of the above embodiments may be completed by instructions, or by controlling related hardware through instructions. The instructions may be stored in a computer-readable storage medium and loaded and executed by a processor.
[0191] To this end, the embodiment of the present application provides a computer-readable storage medium, which may include: a read-only memory (ROM), a random access memory (RAM), a disk or an optical disk, etc. A computer program is stored thereon, and the computer program is loaded by a processor to execute the steps in any educational resource sharing method provided in the embodiment of the present application. For example, the computer program loaded by the processor can execute the following steps:
[0192] Based on the node position information of each computing node in the blockchain system, each computing node is clustered to obtain three node clustering clusters; each node clustering cluster is split into a first node and multiple second nodes; if it is the first node, it performs multi-party secure computing with multiple second nodes in the node clustering cluster based on their own private educational resource data to obtain the first multi-party secure computing information of the node clustering cluster, and obtains three first multi-party secure computing information of the three node clustering clusters; the three node clustering clusters are divided into two first node clustering clusters and one second node clustering cluster; if it is the first node in the first node clustering cluster, it obtains a second multi-party secure computing information sent by the first node of the second node clustering cluster, wherein the first node of the second node clustering cluster splits the first multi-party secure computing information of the second node clustering cluster into Two second multi-party secure computing information are sent to the first nodes in the two first node clusters respectively; first security information is generated based on the second multi-party secure computing information and its own first multi-party secure computing information; secure two-party computing is performed with the first node of another first node cluster based on the first security information and the second security information of the first node of another first node cluster to obtain a secure two-party computing result, wherein the second security information is determined by the other first node based on the first multi-party secure computing information of the other first node and the second multi-party secure computing information obtained by the other first node; the secure two-party computing result is broadcasted so that each computing node in the blockchain system obtains the secure two-party computing result, and the secure two-party computing result includes summary data of private educational resource data of each computing node in the blockchain system.
[0193] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, please refer to the detailed description of other embodiments above, and will not be repeated here.
[0194] In specific implementation, the above units or structures can be implemented as independent users, or can be arbitrarily grouped and implemented as the same or several users. The specific implementation of the above units or structures can refer to the previous method embodiments and will not be repeated here.
[0195] The specific implementation of the above operations can be found in the previous embodiments, which will not be described in detail here.
[0196] The above is a detailed introduction to an educational resource sharing method and device provided in an embodiment of the present application. Specific examples are used in this article to illustrate the principles and implementation methods of the present application. The description of the above embodiments is only used to help understand the method of the present application and its core idea; at the same time, for technical personnel in this field, according to the idea of the present application, there will be changes in the specific implementation method and application scope. In summary, the content of this specification should not be understood as a limitation on the present application.
Claims
1. A method for sharing educational resources, characterized in that: Applied to a blockchain system, the blockchain system includes a plurality of network-connected computing nodes, and the educational resource sharing method includes: Clustering each computing node based on the node location information of each computing node in the blockchain system to obtain three node clusters; Split each node cluster into a first node and multiple second nodes; If it is the first node, it performs multi-party secure computing with multiple second nodes in the node cluster based on their respective private educational resource data to obtain first multi-party secure computing information of the node cluster, and obtains three first multi-party secure computing information of the three node clusters; Dividing the three node clusters into two first node clusters and one second node cluster; If the node itself is the first node in the first node cluster, obtain a second multi-party secure computing information sent by the first node in the second node cluster, wherein the first node in the second node cluster splits the first multi-party secure computing information of the second node cluster into two second multi-party secure computing information and sends them to the first nodes in the two first node clusters respectively; Generate first security information based on the second multi-party secure computing information and the first multi-party secure computing information of the same; Performing secure two-party computing with the first node of another first node cluster based on the first security information and the second security information of the first node of another first node cluster to obtain the secure two-party computing result, wherein the second security information is determined by another first node based on the first multi-party secure computing information of another first node and the second multi-party secure computing information obtained by another first node; The secure two-party computing result is broadcasted so that each computing node in the blockchain system obtains the secure two-party computing result, wherein the secure two-party computing result includes summary data of private educational resource data of each computing node in the blockchain system.
2. The educational resource sharing method according to claim 1, characterized in that: The step of splitting each node cluster into a first node and a plurality of second nodes comprises: Obtaining mutual trust scores and communication speeds between multiple computing nodes in the node cluster; Calculate the average trust value and the first average communication speed of each computing node in the node cluster, the average trust value of the computing node is the average value of the trust scores between other nodes and the computing node, and the first average communication speed of the computing node is the average value of the communication speed between the computing node and other nodes; Obtaining the data volume of the private educational resource data of each computing node in the node cluster; Determine the priority parameter of the computing node based on the average trust value, the first communication average speed, and the data volume of the computing node, wherein the larger the average trust value of the computing node, the larger the priority parameter of the computing node, the larger the first communication average speed of the computing node, the larger the priority parameter of the computing node, and the larger the data volume of the computing node, the larger the priority parameter of the computing node; The computing node with the largest priority parameter in the node cluster is determined as the first node, and the other computing nodes are determined as the second nodes.
3. The educational resource sharing method according to claim 2, characterized in that: The obtaining of mutual trust scores and communication speeds between multiple computing nodes in the node cluster includes: Determine any two of the computing nodes as a third node and a fourth node; Obtaining a first correct vote number ratio of the correct vote number when the third node participates in the consensus voting within the first historical time period, wherein when the voting choice of the node when participating in the consensus voting is the same as the consensus voting result, it is determined that the node voted correctly; Obtaining a second correct vote ratio of the correct votes cast by the fourth node when participating in consensus voting within the first historical time period; Obtaining a first voting rate of the third node voting for the fourth node when consensus is reached historically; Obtaining a second voting rate of the fourth node voting for the third node when consensus is reached historically; Based on the first correct vote ratio and the second correct vote ratio, the first voting rate and the second voting rate are weightedly summed to obtain a mutual trust score between the third node and the fourth node, and to obtain a mutual trust score between multiple computing nodes in the node cluster.
4. The educational resource sharing method according to claim 3, characterized in that: The educational resource sharing method comprises: When a video resource acquisition request of a target user is obtained, consensus is reached on the video resource acquisition request with each computing node in the node cluster where the computing node is located; When each computing node in the node cluster where the computing node is located reaches a consensus on the video resource acquisition request, a target video file matching the resource request is acquired from the secure two-party computing result; Parsing the response operation information made by the target user with respect to the target video file; Obtain target doubtful knowledge points that the target user may have doubts about according to the response operation information, wherein, if it is detected that the target user rewinds from the current playback node to the already played node multiple times, then obtain multiple knowledge point information covered between the already played node and the current playback node, and use the obtained multiple knowledge point information as target doubtful knowledge points; if it is detected that the target user has turned on the note function, then obtain the note information recorded by the target user; parse the note information to obtain target doubtful knowledge points that the target user may have doubts about; At least one associated file corresponding to the target questionable knowledge point is obtained from the secure two-party calculation result, and an associated window is popped up, in which the at least one associated file is displayed in a list form.
5. The educational resource sharing method according to claim 4, characterized in that: The obtaining at least one associated file corresponding to the target questionable knowledge point from the secure two-party calculation result includes: Acquiring historical file selection information of multiple users in a second historical time period, wherein the historical file selection information includes questionable knowledge points and corresponding associated files; Determine users whose historical file selection information includes the target questionable knowledge point as candidate users; Determine a first file similarity between any two associated files in the plurality of associated files based on the historical file selection information; Grouping the multiple associated files selected by the target user and the multiple associated files selected by the candidate users to obtain multiple associated file groups, wherein the associated file groups include an associated file selected by the target user and an associated file selected by the candidate user; Determine the group similarity corresponding to each associated file group based on the first associated file similarity of two associated files in each associated file group; Obtaining weight coefficients of group similarities corresponding to each of the associated file groups; Based on the weight coefficient of each group similarity, the group similarity of each associated file group is weighted averaged to obtain the user similarity between the target user and the candidate user; A plurality of associated files selected by a preset number of candidate users ranked in descending order of user similarity for a target questionable knowledge point are determined as at least one target associated file corresponding to the target questionable knowledge point.
6. The educational resource sharing method according to claim 5, characterized in that: The method of determining the first file similarity between any two associated files among the plurality of associated files based on the historical file selection information comprises: Determine any two of the multiple associated files as first target associated files and second target associated files respectively; Determine, based on the historical file selection information, the number of first users who have selected the first target-associated file, the number of second users who have selected the second target-associated file, and the number of third users who have selected both the first target-associated file and the second target-associated file; Determine the first associated file similarity between the first target associated file and the second target associated file based on the first user number, the second user number, the third user number and the total number of users in the second historical time period, and obtain the first file similarity between any two associated files in the multiple associated files.
7. The educational resource sharing method according to claim 6, characterized in that: The generating first security information based on the second multi-party secure computing information and the first multi-party secure computing information of the device itself comprises: Obtaining the three-party security functions constructed by the first three nodes; Constructing a first two-party security function and a second two-party security function based on the three-party security function and the first node in another first node cluster, wherein the three-party security function is a composite function of the first two-party security function and the second two-party security function; The first multi-party secure computation information and the second multi-party secure computation information are calculated based on the first two-party secure function to obtain the first security information.
8. An educational resource sharing device, characterized in that: Applied to a blockchain system, the blockchain system includes a plurality of network-connected computing nodes, and the educational resource sharing device includes: A clustering unit, used to cluster each computing node based on the node location information of each computing node in the blockchain system to obtain three node clusters; A splitting unit, used for splitting each node cluster into a first node and a plurality of second nodes; A first computing unit, configured to, if it is the first node, perform multi-party secure computing with a plurality of second nodes in the node cluster based on their respective private educational resource data to obtain first multi-party secure computing information of the node cluster, and obtain three first multi-party secure computing information of the three node clusters; A division unit, used for dividing the three node clusters into two first node clusters and one second node cluster; an acquiring unit, configured to acquire, if the first node is the first node in the first node cluster, a second multi-party secure computing information sent by the first node in the second node cluster, wherein the first node in the second node cluster splits the first multi-party secure computing information of the second node cluster into two second multi-party secure computing information and sends them to the first nodes in the two first node clusters respectively; a generating unit, configured to generate first security information based on the second multi-party secure computing information and the first multi-party secure computing information thereof; a second computing unit, configured to perform secure two-party computing with the first node of another first node cluster based on the first security information and second security information of the first node of another first node cluster, to obtain the secure two-party computing result, wherein the second security information is determined by another first node based on first multi-party secure computing information of another first node and second multi-party secure computing information acquired by another first node; A broadcast unit is used to broadcast the secure two-party computing result so that each computing node in the blockchain system obtains the secure two-party computing result, and the secure two-party computing result includes summary data of private educational resource data of each computing node in the blockchain system.
9. A computer device, characterized in that: The computer device comprises: one or more processors; Memory; and One or more applications, wherein the one or more applications are stored in the memory and configured to be executed by the processor to implement the educational resource sharing method according to any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that: A computer program is stored thereon, and the computer program is loaded by a processor to execute the steps of the educational resource sharing method described in any one of claims 1 to 7.
Citation Information
Patent Citations
Safety calculation method and device, node and storage medium
CN112527898A
Data broadcasting method in block chain system, node and block chain system
CN115174573A
Method and device for transmitting data among multi-party secure computing systems
CN116192372A
Block chain-based power data sharing method and device
CN117640248A
Data fusion method and system for distributed sensor network
WO2022100191A1
