Event-based permissioned blockchain off-chain data construction device and method
The event-based off-chain data formation system addresses scalability and data exposure issues in permissioned blockchains by collecting and classifying events outside the blockchain, enhancing data tracking and querying performance.
Patent Information
- Authority / Receiving Office
- KR · KR
- Patent Type
- Patents
- Current Assignee / Owner
- PUSAN NAT UNIV IND UNIV COOPERATION FOUND
- Filing Date
- 2023-09-19
- Publication Date
- 2026-07-21
AI Technical Summary
Permissioned blockchains face challenges in data retrieval and tracking performance due to internal data access mechanisms, and off-chain solutions can lead to scalability issues and exposure of sensitive data.
An event-based permissioned blockchain off-chain data formation apparatus and method that collects and processes events outside the blockchain using an event handling system to form off-chain data, classifying it into time, spatial, participant, and transaction data for improved querying and tracking.
Enhances data tracking and querying performance by collecting and processing events to form off-chain data, improving scalability and reducing data exposure while maintaining data integrity and reliability.
Smart Images

Figure 112023103713712-PAT00002_ABST
Abstract
Description
Technology Field
[0001] The present invention relates to an event-based permissioned blockchain off-chain data formation apparatus and method, which collects and processes events occurring in the execution environment of a permissioned blockchain by an event handling system to form off-chain data that improves the data tracking and querying performance of the permissioned blockchain. Background Technology
[0002] Publication No. 2021-0133289 (2021.11.05) "Data Extraction from Permissioned Blockchain"
[0003] Publication No. 2021-0133289 includes a set of machine-executable instructions configured such that an ETL (Extract-Transform-Load) device exists in a permissioned blockchain in the form of an ETL peer within the blockchain, the ETL device detects an event occurring within the permissioned blockchain, executes ETL code to extract data, the ETL code extracts an event representing the detected event, transforms the extracted event to conform to the logical structure of an external data structure, and loads it into the external data structure.
[0004] Publication No. 2021-0140962 (2021.11.23) "Blockchain data recording method and apparatus thereof"
[0005] Publication No. 2021-0140962 describes a blockchain data recording device that processes data according to the content, attributes, size, and record type of the data target, comprising a request collector that receives a data recording request from a client, a blockchain transaction processor that analyzes and classifies the received data target according to its characteristics, an off-chain handler that stores the data off-chain and on-chain respectively according to the processing result, and an on-chain handler.
[0006] Blockchain has the disadvantage of low data retrieval and tracking performance because it performs data access through connections between blocks generated in the data storage and retrieval mechanism.
[0007] In addition, in the case of open blockchains, processing speeds are slow, and there is a concern that sensitive data, such as that in supply chains and finance, may be exposed due to transparency.
[0008] Permissioned blockchains and off-chain solutions can be utilized to overcome this.
[0009] Permissioned blockchain is a technology in which only authorized users can perform transactions on the blockchain. The application of permissioned blockchain is cost-effective because only authenticated participants can interact, and it can improve confidentiality by reducing data exposure.
[0010] Off-chain refers to a method of processing data outside the blockchain, and the application of off-chain can reduce the load on permissioned blockchains associated with data processing and storage.
[0011] Existing permissioned blockchains generate data intended for off-chain use within the blockchain, which limits scalability and requires significant resources to maintain.
[0012] Therefore, there is an urgent need for the emergence of a new model that generates off-chain data capable of improving data tracking and retrieval performance in permissioned blockchains. The problem to be solved
[0013] The present invention provides an event-based permissioned blockchain off-chain data formation apparatus and method that forms off-chain data to be utilized off-chain through an event handling system located outside the permissioned blockchain.
[0014] In addition, embodiments of the present invention aim to form off-chain data that improves the data tracking and querying performance of a permissioned blockchain by collecting and processing events occurring in the execution environment of a permissioned blockchain through an event handling system. means of solving the problem
[0015] An event-based permissioned blockchain off-chain data formation device according to one embodiment of the present invention may include an event handling system located outside the permissioned blockchain, collecting events from the permissioned blockchain, and classifying the events to form off-chain data.
[0016] In addition, an event-based permissioned blockchain off-chain data formation method according to an embodiment of the present invention may be configured to include: a step of collecting events from a permissioned blockchain in an event handling system located outside the permissioned blockchain; and a step of classifying the events to form off-chain data in the event handling system. Effects of the invention
[0017] According to one embodiment of the present invention, an event-based permissioned blockchain off-chain data formation device and method can be provided, which forms off-chain data to be utilized off-chain through an event handling system located outside the permissioned blockchain.
[0018] In addition, according to one embodiment of the present invention, events occurring in the execution environment of a permissioned blockchain are collected and processed by an event handling system to form off-chain data that improves the data tracking and querying performance of the permissioned blockchain. Brief explanation of the drawing
[0019] FIG. 1 is a block diagram illustrating the configuration of an event-based permissioned blockchain off-chain data formation device according to an embodiment of the present invention. FIG. 2 is a diagram illustrating a structure for forming off-chain data according to the present invention. Figure 3 is a diagram illustrating a structure for collecting events. Figure 4 is a sequence diagram of off-chain data. FIG. 5 is a figure showing an example of a used car transaction according to the present invention. Figure 6 is a figure showing the structure of the data for used car trading of Figure 5. FIG. 7a is a diagram illustrating a vehicle sales dashboard and specifications. Figure 7b is a figure illustrating a vehicle sales event reception log. Figure 7c is a figure illustrating a query log for forming off-chain data of vehicle sales. Figure 8a is a diagram illustrating a vehicle lookup dashboard. Figure 8b is a diagram illustrating a vehicle lookup query in off-chain data. Figure 9a is a diagram illustrating a vehicle purchase dashboard and specifications. Figure 9b is a figure illustrating a vehicle purchase event reception log. Figure 9c is a figure illustrating a query log for forming off-chain data for vehicle purchases. Figure 10a is a figure illustrating the schedule adjustment event reception log. Figure 10b is a figure illustrating a schedule adjustment off-chain data formation query log. Figure 11a is a figure illustrating the log of receiving schedule adjustment acceptance events. Figure 11b is a figure illustrating the off-chain data formation query log for schedule adjustment acceptance. FIG. 12 is a flowchart illustrating an event-based permissioned blockchain off-chain data formation method according to an embodiment of the present invention. Specific details for implementing the invention
[0020] Hereinafter, embodiments are described in detail with reference to the attached drawings. However, various modifications may be made to the embodiments, and thus the scope of the patent application is not limited or restricted by these embodiments. It should be understood that all modifications, equivalents, and substitutions to the embodiments are included within the scope of the rights.
[0021] The terms used in the embodiments are for illustrative purposes only and should not be interpreted as intended to be limiting. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this specification, terms such as "comprising" or "having" are intended to indicate the existence of the features, numbers, steps, actions, components, parts, or combinations thereof described in the specification, and should be understood as not precluding the existence or addition of one or more other features, numbers, steps, actions, components, parts, or combinations thereof.
[0022] Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as generally understood by those skilled in the art to which the embodiments pertain. Terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with their meaning in the context of the relevant technology, and should not be interpreted in an ideal or overly formal sense unless explicitly defined in this application.
[0023] In addition, when describing with reference to the attached drawings, identical components are assigned the same reference numeral regardless of drawing symbols, and redundant descriptions thereof are omitted. In describing the embodiments, if it is determined that a detailed description of related prior art could unnecessarily obscure the essence of the embodiments, such detailed description is omitted.
[0024] FIG. 1 is a block diagram illustrating the configuration of an event-based permissioned blockchain off-chain data formation device according to an embodiment of the present invention.
[0025] Referring to FIG. 1, an event-based permissioned blockchain off-chain data forming device (hereinafter abbreviated as ‘permissioned blockchain off-chain data forming device’, 100) according to one embodiment of the present invention may be configured to include an event handling system (110).
[0026] A permissioned blockchain off-chain data formation device (100) collects events from the permissioned blockchain (120) through an event handling system (110) located outside the permissioned blockchain (120). That is, the event handling system (110) monitors the permissioned blockchain (120) from the outside, and when an event occurs in the permissioned blockchain (120), it can collect it.
[0027] In collecting events, the event handling system (110) can subscribe to events to be collected and can collect the subscribed and classified events by retrieving them from a permissioned blockchain (120) on a regular or real-time basis.
[0028] Additionally, the event handling system (110) classifies the events to form off-chain data. That is, the event handling system (110) can create off-chain data by classifying the collected events into defined classification attributes outside the permissioned blockchain (120).
[0029] Additionally, the event handling system (110) can store the formed off-chain data in a subsequent off-chain database (130) to prepare for a future request for inquiry into the off-chain data from a user (buyer).
[0030] The event handling system (110) may include an event collector (111), a data classifier (112), and an off-chain processor (113).
[0031] The event collector (111) collects events occurring in the permissioned blockchain (120) from the permissioned blockchain (120). That is, the event collector (111) can play the role of selecting and collecting events that occur in the permissioned blockchain (120).
[0032] In collecting events, the event collector (111) can collect transaction events and block events that occur in association with the smart contract constituting the permissioned blockchain (120).
[0033] Here, the transaction event occurs when a transaction is executed in the smart contract and may include at least information regarding the transaction processing result, asset transfer, and state change.
[0034] Additionally, a block event occurs as the transaction is blocked and committed to the permissioned blockchain (120), and may include at least information regarding the current block hash value, the previous block hash value, and the block height.
[0035] For the selective collection of events by subscription, the permissioned blockchain (120) may include an event hub (121) for subscribing to and registering the event, located within the permissioned blockchain (120). That is, the permissioned blockchain (120) may be designed to include an event hub (121) that performs 'subscription' to specify the event to be collected and 'registration' to collect the generated event.
[0036] The above event collector (111) can subscribe to the event to be collected in the event hub (121), and can collect the event by accessing the event hub (121) at a prescribed collection time after the event generated in relation to the smart contract constituting the permissioned blockchain (120) is registered in the event hub (121).
[0037] The event hub (121) registers events such as transaction events and block events generated by smart contracts in the permissioned blockchain (120), and can distinguish among these events subscribed to by the event collector (111).
[0038] The event collector (111) can subscribe to the events to be collected in advance through the event hub (121), and when the time for collection arrives, it can access the event hub (121) and collect the events that are categorized as subscriptions.
[0039] In one embodiment, the event hub (121) can receive the name of the event from the event collector (111).
[0040] Afterward, the event hub (121) can distinguish among the registered events an event tagged with a smart contract name or event name that matches the name, thereby allowing the distinguished event to be collected by the event collector (111) accessed at the time of collection.
[0041] For example, when the event name 'OO used car' is entered from the event collector (111), the event hub (121) can receive the 'OO used car'.
[0042] Additionally, the event hub (121) can register transaction events and block events generated by smart contracts in a permissioned blockchain (120), and distinguish events tagged with a smart contract name or event name that matches the name of the subscribed event, 'OO Automobile Used Car'.
[0043] In the example described above, the event hub (121) can distinguish between the event 'OO Car Used Car Discount Notice' tagged with a smart contract name that matches the name of the subscribed event 'OO Car Used Car' and the event 'Chuseok Used Car Lowest Price Event' tagged with an event name.
[0044] Afterwards, the event collector (111) can access the event hub (121) at a specific collection point (e.g., 24 hours after subscription) to collect the distinguished events.
[0045] The data classifier (112) forms the off-chain data by classifying the collected events into time data, spatial data, participant data, and transaction data according to classification attributes. That is, the data classifier (112) can perform the role of classifying collected events, such as transaction events and block events, into time data, spatial data, participant data, and transaction data based on the classification attributes (time / space / participant / transaction) each possesses.
[0046] In the example of the commercial description in which events such as ‘OO Motors Used Car Discount Notice’ and ‘Chuseok Used Car Lowest Price Event’ are collected, the data classifier (112) can form off-chain data by classifying the event ‘OO Motors Used Car Discount Notice’ into time data ‘2023.09.28~30’, space data ‘XX Used Car Store’, participant data ‘OO Motors Used Dealer’, and transaction data ‘20 million won range sedan used car’ based on classification attributes (time / space / participant / transaction).
[0047] The off-chain processor (113) stores the off-chain data in memory within the off-chain database (130), which is distinguished in correspondence with the classification attribute. That is, the off-chain processor (113) can perform the role of maintaining the formed off-chain data in memory within the off-chain database (130) according to each classification attribute.
[0048] In the example described above, the off-chain database (130) may be designed to include multiple memories corresponding to each of the classification attributes (time / space / participant / transaction).
[0049] The off-chain processor (113) can store time data '2023.09.28~30' in a memory corresponding to time within the off-chain database (130), store space data 'XX used store' in a memory corresponding to space, store participant data 'OO used car dealer' in a memory corresponding to participant, and store transaction data 'used sedan in the 20 million won range' in a memory corresponding to transaction.
[0050] According to an embodiment, the event handling system (110) can provide a lookup service for off-chain data to a buyer based on off-chain data stored in an off-chain database (130).
[0051] When a query request is received from an application, the data classifier (112) can identify the classification attributes of the off-chain data for which the query request was made.
[0052] For example, when a query 'purchase of a used car in the 20 million won range' is entered from an application, the data classifier (112) can identify the classification attribute 'transaction' of the off-chain data requested for query based on the query.
[0053] The off-chain processor (113) can search for the off-chain data requested for lookup in memory within the off-chain database (130), which is distinguished in correspondence with the identified classification attribute, and transmit it to the application.
[0054] In the example described above for identifying the classification attribute 'transaction' of off-chain data, the off-chain processor (113) can search for transaction data 'used sedan in the 20 million won range' in memory corresponding to the transaction within the off-chain database (130) and transmit it to the application as a response to the inquiry.
[0055] According to one embodiment of the present invention, an event-based permissioned blockchain off-chain data formation device and method can be provided, which forms off-chain data to be utilized off-chain through an event handling system located outside the permissioned blockchain.
[0056] In addition, according to one embodiment of the present invention, events occurring in the execution environment of a permissioned blockchain are collected and processed by an event handling system to form off-chain data that improves the data tracking and querying performance of the permissioned blockchain.
[0057] The permissioned blockchain off-chain data forming device (100) of the present invention can form off-chain data by collecting and processing events occurring in the execution environment of a permissioned blockchain through an event handling system.
[0058] The event handling system may be composed of an event collector that receives events occurring in a permissioned blockchain, a data classifier that classifies the collected events into time data, spatial data, participant data, and transaction data, and an off-chain processor that issues a command to store the classified data as off-chain data in an off-chain database.
[0059] The data classifier can classify data into time data, spatial data, participant data, and transaction data by reflecting the characteristics of a permissioned blockchain.
[0060] An off-chain database can store classification data as off-chain data in separate memory by reflecting classification attributes.
[0061] Off-chain databases can structure off-chain data and maintain consistency, and allow searching based on the type and category of specific classification attributes instead of searching the entire off-chain data.
[0062] A permissioned blockchain off-chain data forming device (100) can form off-chain data classified according to the event collection structure and data characteristics in a permissioned blockchain.
[0063] It is expected that the management and analysis of data generated in the execution environment of a permissioned blockchain can be improved by the permissioned blockchain off-chain data formation device (100).
[0064] Publication No. 2021-0133289 and the present invention are similar in that they process events generated in a permissioned blockchain and store them in an off-chain database.
[0065] Publication number 2021-0133289 has a closed nature and may cause additional load on the network because it performs internal network operations by extracting, transforming, and loading events by peer nodes within a permissioned blockchain.
[0066] In contrast, the permissioned blockchain off-chain data formation device (100) can perform collection, classification, and storage functions through an external blockchain system.
[0067] Therefore, the present invention has advantages in terms of scalability and openness because the data processing system exists externally, so no load is generated within the network, and it can be configured by integrating with third-party libraries.
[0068] Publication No. 2021-0140962 presents a method and apparatus for recording blockchain data.
[0069] Publication No. 2021-0140962 and the present invention are similar in that data is classified by an external system (device) to form off-chain data.
[0070] Publication number 2021-0140962 classifies and stores data as on-chain (blockchain) or off-chain data based on a threshold value defined in the system (device) when a request to record blockchain data is made.
[0071] On the other hand, the permissioned blockchain off-chain data formation device (100) has a difference in that it stores off-chain data through an event when a request from the blockchain is successfully executed and data is recorded on-chain.
[0072] In other words, public number 2021-0140962 has the potential for unverified data to be stored off-chain.
[0073] However, the present invention has the advantage of maintaining the data integrity and reliability of the blockchain by classifying data that has undergone the verification step of the blockchain by events and storing it off-chain.
[0074] FIG. 2 is a diagram illustrating a structure for forming off-chain data according to the present invention.
[0075] The permissioned blockchain off-chain data forming device (100) according to the present invention can form and store off-chain data through an event handling system located between the permissioned blockchain and the off-chain database, as shown in FIG. 2.
[0076] A permissioned blockchain off-chain data formation device (100) can form off-chain data by collecting and classifying transaction events and block events from a permissioned blockchain through an event handling system, and can store each of the formed off-chain data in a designated memory within an off-chain database.
[0077] Events occur in the execution environment of a permissioned blockchain and can be classified into transaction events and block events.
[0078] Transaction events occur when a transaction is executed in a smart contract and contain information such as transaction processing results, asset transfers, and state changes.
[0079] Block events occur when a block is created and contain information such as the current block hash value, the previous block hash value, and the block height.
[0080] An event handling system can form off-chain data by collecting events from a permissioned blockchain and classifying and processing the collected events.
[0081] The event handling system is linked to a permissioned blockchain and an off-chain database and can be composed of an event collector, a data classifier, and an off-chain processor.
[0082] An event collector can collect events occurring on a permissioned blockchain.
[0083] The data classifier can form off-chain data that classifies collected events into time data, spatial data, participant data, and transaction data.
[0084] The off-chain processor can execute commands to store off-chain data into memory within the off-chain database according to classification attributes (time, space, participants, transaction).
[0085] Figure 3 is a diagram illustrating a structure for collecting events.
[0086] As shown in Fig. 3, a permissioned blockchain can be designed to include an event hub for subscribing to and registering events.
[0087] Smart contracts and on-chain within a permissioned blockchain can register the events they generate to the event hub.
[0088] The event collector of the event handling system can subscribe to events it wants to collect in the event hub.
[0089] Event registration and event subscription can be performed based on the Event Hub.
[0090] Smart contracts can register transaction events that occur upon creation to the event hub by distinguishing them by name.
[0091] Transaction events must be registered in the Event Hub when writing the smart contract.
[0092] For example, assuming there is a function in Smart Contract A that manages sales, a library that registers transaction events to an event hub can be applied to that function.
[0093] On-chain can automatically register block events generated when building a permissioned blockchain to the event hub without separate configuration.
[0094] In other words, event registration can refer to registering events generated from smart contracts and on-chain to the event hub.
[0095] Additionally, event subscription is a setting of events that the event collector of the event handling system wants to collect among the events registered in the event hub, and can be performed based on smart contract name / event name.
[0096] The Event Hub can distinguish events among the registered events that have names matching the smart contract name / event name of the subscribed event.
[0097] When the time for collection arrives, the event collector can access the event hub and collect the categorized events.
[0098] In summary, smart contracts and on-chain systems register generated transaction and block events in the event hub, the event hub distinguishes between the registered transaction and block events and those subscribed to by event collectors, and event collectors can access the event hub at the time of collection to collect the distinguished events.
[0099] The permissioned blockchain off-chain data forming device (100) of the present invention collects events through the interaction of a smart contract, on-chain, event hub, and event handling system, thereby not requiring an application or user to perform additional actions to generate events when requesting a transaction.
[0100] Off-chain databases can store off-chain data classified into time data, spatial data, participant data, and transaction data.
[0101] The classification of off-chain data applicable to permissioned blockchains is as shown in [Table 1].
[0102]
[0103] The event handling system can process collected events to form off-chain data.
[0104] Figure 4 is a sequence diagram of off-chain data.
[0105] In the process of forming off-chain data, at step 401, the application may request a transaction on a permissioned blockchain.
[0106] In step 402, the permissioned blockchain can respond to the application with the transaction result.
[0107] In step 403, the permissioned blockchain can notify the occurrence of block events and transaction events through an event handling system.
[0108] In step 404, the event handling system can collect and preprocess events by an event collector.
[0109] In step 405, the event handling system can classify events by a data classifier.
[0110] In step 406, the event handling system can form off-chain data by an off-chain processor and store it in an off-chain database.
[0111] In step 407, the off-chain database can respond to the event handling system with the result of storing the off-chain data.
[0112] In the process of querying off-chain data, at step 411, the application may request data querying from the event handling system.
[0113] In step 412, the event handling system can classify the query data by the data classifier.
[0114] In step 413, the event handling system can form an off-chain data query by an off-chain handler and transmit it to an off-chain database.
[0115] In step 414, the off-chain database can respond with results for the off-chain data query.
[0116] In step 415, the event handling system can respond to the application with the results of the data query.
[0117] Figure 4 illustrates the off-chain data formation and retrieval procedures during the flow of off-chain data.
[0118] In the diagram of Fig. 4, the application may refer to a service utilizing blockchain technology.
[0119] The flow of off-chain data formation may correspond to the top of the sequence diagram in Fig. 4.
[0120] Applications can request transactions on a permissioned blockchain.
[0121] If the requested transaction is appropriate, the permissioned blockchain forms the transaction into a block and generates block events and transaction events.
[0122] At this time, the event handling system collects events by an event collector and can classify and form events into off-chain data by a data classifier and an off-chain processor.
[0123] The query flow of off-chain data may correspond to the bottom of the sequence diagram in Fig. 4.
[0124] The application can retrieve information through the event handling system.
[0125] The data classifier of an event handling system can classify the data required for querying based on the requested information.
[0126] Afterwards, the off-chain processor can form and execute a complex query based on the classified data to respond with the query results.
[0127] In addition, the application can query and retrieve off-chain data directly from the off-chain database under authorized conditions.
[0128] FIG. 5 is a figure showing an example of a used car transaction according to the present invention.
[0129] In Step 501, the seller can upload the vehicle to a permissioned blockchain.
[0130] A permissioned blockchain can trigger an event by creating a transaction regarding an uploaded vehicle.
[0131] The event handling system can collect, classify, and process generated events to form off-chain data, and then store it in an off-chain database.
[0132] In step 502, the buyer can search for the vehicle they wish to purchase by retrieving off-chain data stored in the off-chain database.
[0133] In step 503, the buyer can request to purchase the vehicle through a permissioned blockchain for the vehicle they have looked up.
[0134] In step 504, the seller can request the permissioned blockchain to schedule a meeting with the seller for the purchase of the vehicle.
[0135] In step 505, the buyer may accept a request for schedule adjustment on the permissioned blockchain, if they determine that the requested schedule adjustment is appropriate.
[0136] The event handling system can form off-chain data by collecting events generated according to asynchronous transactions requested on a permissioned blockchain.
[0137] The event handling system stores the generated off-chain data in an off-chain database, thereby enabling the buyer to directly query the off-chain database when querying the vehicle.
[0138] Figure 6 is a figure showing the structure of the data for used car trading of Figure 5.
[0139] Figure 6 shows an example of data summarizing the contents entered in the application for transfer of registration and the certificate of transfer of vehicle.
[0140] The event handling system can collect data such as that shown in Fig. 6 through events and classify each field of the data into time data (uploadDate), spatial data (id), participant data (assignor, assignee), and transaction data (transactionDetails) to form off-chain data.
[0141] FIG. 7a is a diagram illustrating a vehicle sales dashboard and specifications.
[0142] Figure 7b is a figure illustrating a vehicle sales event reception log.
[0143] Figure 7c is a figure illustrating a query log for forming off-chain data of vehicle sales.
[0144] Regarding vehicle uploading, the seller can upload the used vehicle they wish to sell.
[0145] The dashboard and specifications for the sale of used vehicles are as shown in Fig. 7a.
[0146] As the relevant specification is reflected, the logs received and processed by the event handling system are as shown in FIGS. 7b and FIGS. 7c.
[0147] Figures 7a, 7b, and 7c correspond to the off-chain data formation flow of Figure 4.
[0148] Figure 7a may correspond to the transaction request step through the application.
[0149] When a successful commit to the blockchain is made according to the sales statement, block events and transaction events may occur.
[0150] Figure 7b may correspond to the event collection stage of an event handling system.
[0151] The event handling system can receive SellVehicle events according to the specifications entered by the seller.
[0152] Among the information included in the event, uploadDate, which indicates the vehicle upload time, and transactionState, which indicates the transaction status, can be added to the event as the sales request is committed to the blockchain.
[0153] The data classifier of an event handling system can classify received events.
[0154] FIG. 7c may correspond to the off-chain data formation step of an event handling system.
[0155] In the event handling system, for the case of vehicle sales, since a new vehicle is uploaded and does not exist in the database, an INSERT query can be executed.
[0156] Figure 8a is a diagram illustrating a vehicle lookup dashboard.
[0157] Figure 8b is a diagram illustrating a vehicle lookup query in off-chain data.
[0158] In vehicle lookup, sellers can search for cars they wish to purchase through the dashboard.
[0159] Used vehicle search can be performed through interaction with an off-chain database.
[0160] Vehicle data can be retrieved through search filters based on data classification in the off-chain database.
[0161] The search results appearing on the dashboard are as shown in Fig. 8a, and the query statement generated by the vehicle search is as shown in Fig. 8b.
[0162] Figures 8a and 8b may correspond to the off-chain data lookup flow of Figure 4.
[0163] Figure 8a may correspond to the step of requesting data lookup through an application.
[0164] The application can perform vehicle lookup requests based on model name, seller, upload date, price, and mileage using search filters.
[0165] Figure 8b may correspond to the off-chain data query step of the event handling system.
[0166] The event handling system can search for model name, upload date, price, and mileage, and perform SELECT queries on time data and transaction data.
[0167] Figure 9a is a diagram illustrating a vehicle purchase dashboard and specifications.
[0168] Figure 9b is a figure illustrating a vehicle purchase event reception log.
[0169] Figure 9c is a figure illustrating a query log for forming off-chain data for vehicle purchases.
[0170] In purchasing a vehicle, the buyer can send a purchase request through the vehicle information on the dashboard.
[0171] The dashboard and specifications for the sale of used vehicles are as shown in Fig. 9a.
[0172] As the relevant specification is reflected, the logs received and processed by the event handling system are as shown in FIGS. 9b and FIGS. 9c.
[0173] Figures 9a, 9b, and 9c may correspond to the off-chain data formation flow of Figure 4.
[0174] Figure 9a may correspond to the transaction request step through the application.
[0175] When a successful commit is made to the blockchain according to the purchase specification, block events and transaction events occur.
[0176] Figure 9b may correspond to the event collection stage of an event handling system.
[0177] The event handling system can receive BuyVehicle events according to the specifications entered by the seller.
[0178] The purchase specifications can be configured by adding the assignee, payment date, vehicle delivery date, and vehicle delivery location to the information uploaded at the time of sale.
[0179] The data classifier of an event handling system can classify received events.
[0180] FIG. 9c may correspond to the off-chain data formation step of an event handling system.
[0181] In the case of vehicle purchase, the event handling system can perform UPDATE queries because it is formed by adding purchase information to the data uploaded according to the sales statement.
[0182] Figure 10a is a figure illustrating the schedule adjustment event reception log.
[0183] Figure 10b is a figure illustrating a schedule adjustment off-chain data formation query log.
[0184] In the case of a schedule adjustment request, the event handling system can adjust transactions between sellers and buyers, and can update off-chain data through transaction adjustment.
[0185] The reception and processing of events following transaction adjustment are as shown in FIG. 10a and FIG. 10b.
[0186] FIGS. 10a and FIGS. 10b may correspond to the off-chain data formation flow of FIG. 4.
[0187] Figure 10a may correspond to the event collection stage of an event handling system.
[0188] The event handling system can receive a CompromiseTransaction event that adjusts the vehicle delivery date based on a buyer adjustment request from the user.
[0189] The event handling system can change the vehicle delivery date from 2023-07-20 10:00 to 2023-07-21 10:00 in accordance with the adjustment request.
[0190] Figure 10b may correspond to the off-chain data formation step of an event handling system.
[0191] The event handling system can perform an UPDATE query because it updates some information of existing data, just like a vehicle purchase.
[0192] Figure 11a is a figure illustrating the log of receiving schedule adjustment acceptance events.
[0193] Figure 11b is a figure illustrating the off-chain data formation query log for schedule adjustment acceptance.
[0194] Regarding the acceptance of a mediation request, the event handling system can conclude a transaction when a mediation request for a transaction between a seller and a buyer is accepted.
[0195] The reception and processing of events following the acceptance of transaction adjustment are as shown in FIG. 11a and FIG. 11b.
[0196] Figures 11a and 11b may correspond to an off-chain data formation flow.
[0197] Figure 11a may correspond to the event collection stage of an event handling system.
[0198] The event handling system can receive a CompromiseTransaction event that accepts an adjustment based on a buyer's request.
[0199] The event handling system can change the transaction status to SoldOut upon a reconciliation request, and since the transaction has been executed, the transactionDate can also be updated to the time of transaction execution.
[0200] Figure 11b may correspond to the off-chain data formation step of an event handling system.
[0201] The event handling system can execute a transaction upon acceptance of the adjustment, and can perform an UPDATE query as some information in the existing data is updated.
[0202] Hereinafter, FIG. 12 describes in detail the workflow of a permissioned blockchain off-chain data forming device (100) according to embodiments of the present invention.
[0203] FIG. 12 is a flowchart illustrating an event-based permissioned blockchain off-chain data formation method according to an embodiment of the present invention.
[0204] The event-based permissioned blockchain off-chain data formation method according to the present embodiment can be performed by a permissioned blockchain off-chain data formation device (100).
[0205] A permissioned blockchain off-chain data formation device (100) collects events from the permissioned blockchain through an event handling system located outside the permissioned blockchain. That is, the event handling system monitors the permissioned blockchain from the outside, and when an event occurs in the permissioned blockchain, it can collect it.
[0206] In terms of event collection, the event handling system can subscribe to events to be collected and can retrieve and collect the subscribed and classified events from a permissioned blockchain on a regular or real-time basis.
[0207] In addition, the event handling system classifies the aforementioned events to form off-chain data. That is, the event handling system can create off-chain data by classifying collected events into defined classification attributes outside the permissioned blockchain.
[0208] In addition, the event handling system stores the generated off-chain data in a downstream off-chain database to prepare for future query requests for off-chain data from users (buyers).
[0209] Specifically, in the event collector of the event handling system, events occurring in the permissioned blockchain are collected from the permissioned blockchain (1210). Step (1210) may be a process of selecting and collecting events that occurred in the permissioned blockchain by the event collector.
[0210] In collecting events, the event collector can collect transaction events and block events generated in association with smart contracts constituting the permissioned blockchain.
[0211] Here, the transaction event occurs when a transaction is executed in the smart contract and may include at least information regarding the transaction processing result, asset transfer, and state change.
[0212] Additionally, a block event occurs as the transaction is blocked and committed to the permissioned blockchain, and may include at least information regarding the current block hash value, the previous block hash value, and the block height.
[0213] For the selective collection of events by subscription, the permissioned blockchain may include an event hub for subscribing to and registering the events, located within the permissioned blockchain. That is, the permissioned blockchain may be designed to include an event hub that performs 'subscription' to specify the events to be collected and 'registration' to gather the events that occur.
[0214] The above event collector subscribes to the event to be collected in the above event hub, and can access the above event hub and collect the event at a prescribed collection time after the event generated in relation to the smart contract constituting the above permissioned blockchain is registered in the above event hub.
[0215] The event hub registers events such as transaction events and block events generated by smart contracts in a permissioned blockchain, and can distinguish among them the events subscribed to by the event collector.
[0216] The event collector can subscribe to events to be collected in the event hub in advance, and when the time for collection arrives, it can access the event hub and collect the events classified as subscriptions.
[0217] In one embodiment, the event hub can subscribe to the name of the event from the event collector.
[0218] Subsequently, the above event hub can distinguish among the above registered events an event tagged with a smart contract name or event name that matches the above name, thereby allowing the distinguished event to be collected by the event collector accessing at the time of collection.
[0219] For example, as the event name 'OO Car Used Car' is entered from the event collector, the event hub can subscribe to 'OO Car Used Car'.
[0220] In addition, the event hub registers transaction events and block events generated by smart contracts on a permissioned blockchain, and can distinguish events tagged with a smart contract name or event name that match the name of the subscribed event, 'OO Used Cars'.
[0221] In the example described above, the event hub can distinguish between the event 'OO Car Used Car Discount Notice' tagged with a smart contract name that matches the name of the subscribed event 'OO Car Used Car', and the event 'Chuseok Used Car Lowest Price Event' tagged with an event name.
[0222] Afterwards, the event collector can access the event hub at a specific collection point (e.g., 24 hours after subscription) to collect the aforementioned distinguished events.
[0223] Additionally, in the data classifier of the event handling system, the collected events are classified into time data, spatial data, participant data, and transaction data according to classification attributes to form the off-chain data (1220). Step (1220) may be a process of classifying collected events, such as transaction events and block events, into time data, spatial data, participant data, and transaction data based on classification attributes (time / space / participant / transaction) held by the data classifier.
[0224] In the example of a commercial description in which events such as 'OO Motors Used Car Discount Notice' and 'Chuseok Used Car Lowest Price Event' are collected, the data classifier can form off-chain data by classifying the event 'OO Motors Used Car Discount Notice' into time data '2023.09.28~30', space data 'XX Used Car Store', participant data 'OO Motors Used Dealer', and transaction data 'Used Sedan in the 20 Million Won Range' based on classification attributes (time / space / participant / transaction).
[0225] Next, the off-chain data is stored in memory within the off-chain database, which is distinguished in correspondence with the classification attribute, in the off-chain processor of the event handling system (1230). Step (1230) may be a process of maintaining the off-chain data formed by the off-chain processor in memory within the off-chain database for each classification attribute.
[0226] In the example described above, the off-chain database may be designed to include multiple memories corresponding to each classification attribute (time / space / participant / transaction).
[0227] The off-chain processor can store time data '2023.09.28~30' in memory corresponding to time within the off-chain database, store spatial data 'XX Used Store' in memory corresponding to space, store participant data 'OO Used Car Dealer' in memory corresponding to participant, and store transaction data 'Used Sedan in the 20 Million Won Range' in memory corresponding to transaction.
[0228] According to an embodiment, the event handling system can provide a lookup service for off-chain data to a buyer based on off-chain data stored in an off-chain database.
[0229] When a query request is input from an application, the data classifier can identify the classification attributes of the off-chain data for which the query request was made.
[0230] For example, when a query 'purchase of a used car in the 20 million won range' is entered from an application, the data classifier can identify the classification attribute 'transaction' of the requested off-chain data based on the query.
[0231] The off-chain processor can search for the off-chain data requested for query in memory within the off-chain database, which is distinguished in correspondence with the identified classification attribute, and transmit it to the application.
[0232] In the example described above for identifying the classification attribute 'transaction' of off-chain data, the off-chain processor can search for transaction data 'used sedan in the 20 million won range' in memory corresponding to the transaction within the off-chain database and deliver it to the application as a response to the query.
[0233] According to one embodiment of the present invention, an event-based permissioned blockchain off-chain data formation device and method can be provided, which forms off-chain data to be utilized off-chain through an event handling system located outside the permissioned blockchain.
[0234] In addition, according to one embodiment of the present invention, events occurring in the execution environment of a permissioned blockchain are collected and processed by an event handling system to form off-chain data that improves the data tracking and querying performance of the permissioned blockchain.
[0235] The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc., either alone or in combination. The program instructions recorded on the medium may be those specifically designed and configured for the embodiment, or they may be those known and available to those skilled in the art of computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes; optical recording media such as CD-ROMs and DVDs; magneto-optical media such as floptical disks; and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, and flash memory. Examples of program instructions include machine code, such as that generated by a compiler, as well as high-level language code that can be executed by a computer using an interpreter, etc. The hardware devices described above may be configured to operate as one or more software modules to perform the operation of the embodiment, and vice versa.
[0236] Software may include computer programs, code, instructions, or a combination of one or more of these, and may configure a processing unit to operate as desired or command the processing unit independently or collectively. Software and / or data may be permanently or temporarily embodied in any type of machine, component, physical device, virtual equipment, computer storage medium or device, or transmitted signal wave so as to be interpreted by the processing unit or to provide instructions or data to the processing unit. Software may be distributed over networked computer systems and may be stored or executed in a distributed manner. Software and data may be stored on one or more computer-readable recording media.
[0237] Although the embodiments have been described above with reference to the limited drawings, those skilled in the art can apply various technical modifications and variations based on the above. For example, suitable results may be achieved even if the described techniques are performed in a different order than described, and / or if the components of the described system, structure, device, circuit, etc. are combined or assembled in a form different from described, or replaced or substituted by other components or equivalents.
[0238] Therefore, other implementations, other embodiments, and equivalents to the claims also fall within the scope of the claims set forth below. Explanation of the symbols
[0239] 100: Permissioned blockchain off-chain data formation device 110 : Event Handling System 111 : Event Collector 112 : Data Classifier 113 : Off-chain Processor 120 : Permissioned Blockchain 121 : Event Hub 130 : Off-chain database
Claims
Claim 1 A permissioned blockchain off-chain data forming device comprising: an event collector located outside of a permissioned blockchain and collecting events occurring in the permissioned blockchain from the permissioned blockchain; an event handling system that classifies the collected events to form off-chain data; wherein the event collector subscribes to events to be collected from outside the permissioned blockchain to an event hub located inside the permissioned blockchain, and, as an event occurring in relation to a smart contract constituting the permissioned blockchain is registered in the event hub, accesses the event hub at a prescribed collection time to collect the events. Claim 2 In claim 1, the event handling system further comprises: a data classifier that forms the off-chain data by classifying the collected events into time data, spatial data, participant data, and transaction data according to classification attributes; and an off-chain processor that stores the off-chain data in memory within an off-chain database, which is distinguished in correspondence with the classification attributes, thereby forming a permissioned blockchain off-chain data formation device. Claim 3 A permissioned blockchain off-chain data forming device according to claim 1, wherein the event collector collects transaction events and block events generated in association with a smart contract constituting the permissioned blockchain, the transaction event occurs when a transaction is performed in the smart contract and includes at least information regarding the transaction processing result, asset transfer, and state change, and the block event occurs as the transaction is blocked and committed to the permissioned blockchain and includes at least information regarding the current block hash value, previous block hash value, and block height. Claim 4 delete Claim 5 A permissioned blockchain off-chain data forming device according to claim 1, wherein the event hub receives the name of the event from the event collector and distinguishes among the registered events an event tagged with a smart contract name or event name that matches the name, thereby enabling the distinguished event to be collected by the event collector accessed at the time of collection. Claim 6 A permissioned blockchain off-chain data forming device according to paragraph 2, wherein when a query request is input from an application, the data classifier identifies the classification attribute of the off-chain data for which the query was requested, and the off-chain processor searches for the off-chain data for which the query was requested in memory within the off-chain database, which is distinguished in correspondence with the identified classification attribute, and transmits it to the application. Claim 7 A method for forming off-chain data in a permissioned blockchain, comprising: a step of subscribing to an event to be collected from outside the permissioned blockchain to an event hub located inside the permissioned blockchain in an event collector of an event handling system located outside the permissioned blockchain; a step of collecting the event by accessing the event hub at a prescribed collection time in the event collector, as an event generated in relation to a smart contract constituting the permissioned blockchain is registered in the event hub; and a step of classifying the event to form off-chain data in the event handling system. Claim 8 A method for forming permissioned blockchain off-chain data according to claim 7, further comprising: a step of forming off-chain data by classifying the collected events into time data, spatial data, participant data, and transaction data according to classification attributes in a data classifier of the event handling system; and a step of storing the off-chain data in a memory within an off-chain database distinguished in correspondence with the classification attributes in an off-chain processor of the event handling system. Claim 9 A method for forming off-chain data of a permissioned blockchain according to claim 7, wherein the collecting step comprises collecting transaction events and block events generated in association with a smart contract constituting the permissioned blockchain, wherein the transaction event occurs when a transaction is performed in the smart contract and includes at least information regarding the transaction processing result, asset transfer, and state change, and the block event occurs as the transaction is blocked and committed to the permissioned blockchain and includes at least information regarding the current block hash value, previous block hash value, and block height. Claim 10 delete Claim 11 A permissioned blockchain off-chain data formation method according to claim 7, wherein the event hub receives the name of the event from the event collector and distinguishes among the registered events an event tagged with a smart contract name or event name that matches the name, thereby allowing the distinguished event to be collected by the event collector accessing at the time of collection. Claim 12 A method for forming permissioned blockchain off-chain data according to claim 8, further comprising: a step of identifying a classification attribute of the off-chain data requested for inquiry in the data classifier when a query request is input from an application; and a step of searching for the off-chain data requested for inquiry in the memory within the off-chain database, which is distinguished in correspondence with the identified classification attribute in the off-chain processor, and transmitting it to the application. Claim 13 A computer-readable recording medium having a program for executing any one of the methods of paragraphs 7 through 9, paragraph 11, and paragraph 12.