Block chain system, and data storage method and apparatus
A data storage device and data storage technology, applied in transmission systems, database indexes, digital transmission systems, etc., can solve the problems of inconsistent docking protocols and low convenience, and achieve the effect of improving convenience and security.
Active Publication Date: 2017-08-04
ADVANCED NEW TECH CO LTD
5 Cites 82 Cited by
AI-Extracted Technical Summary
Problems solved by technology
However, the docking protocols of each alliance blockchain network are not consistent. If multiple businesses generated by non-node entities belong to different business fields, then ...
Abstract
The embodiment of the invention discloses a block chain system, and a data storage method and apparatus. The block chain system comprising a configuration center, a non-consensus subsystem and a plurality of consensus subsystems is established, wherein the non-consensus subsystem comprises a plurality of non-consensus nodes, each consensus subsystem comprises a plurality of consensus nodes, moreover, each consensus subsystem is equivalent to an alliance block chain containing the plurality of consensus nodes, and this means that the consensus subsystems can be separately applied to consensus verification of different service fields. On one hand, only the consensus nodes are responsible for the consensus verification, and the non-consensus nodes beyond the consensus subsystems cannot participate in the consensus verification of the alliance block chain network, thereby improving the security of the block chain network; and on the other hand, the configuration center can dock the alliance block chains, non-consensus bodies (the non-consensus nodes) beyond the alliance block chain network only need to dock with the configuration center instead of separately docking a plurality of alliance block chains according to different docking protocols, thereby improving the convenience of the block chain network.
Application Domain
Digital data protectionSpecial data processing applications +2
Technology Topic
Chain systemChain network +2
Image
Examples
- Experimental program(1)
Example Embodiment
[0042] The embodiments of the present application provide a blockchain network, data storage method and device.
[0043] In order to enable those skilled in the art to better understand the technical solutions in this application, the following will clearly and completely describe the technical solutions in the embodiments of this application with reference to the drawings in the embodiments of this application. Obviously, the described The embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in this application, all other embodiments obtained by those of ordinary skill in the art without creative work should fall within the protection scope of this application.
[0044] As mentioned earlier, in practical applications, there are two main application forms of blockchain networks, namely, public blockchain networks and alliance blockchain networks. The identity of each node in the public blockchain network is not restricted, and any subject (individual or unit) can become a node in the public blockchain network and participate in the consensus verification of business requests. Since the public blockchain network is truly decentralized and fully open, hackers have the opportunity to control most nodes and make illegal business requests pass verification. In addition, any subject can view all business data stored on the public chain. These business data often involve the privacy of nodes and non-node subjects. Even if the business data is encrypted, there is a risk of being cracked.
[0045] It is worth noting that the blockchain managed by the blockchain network is a "shared ledger". Accordingly, the alliance blockchain network manages one alliance blockchain, and the public blockchain network manages a public blockchain.
[0046] Each node in the alliance blockchain network is a pre-designated authority. For example, the nodes in the alliance blockchain network in the financial field can be Industrial and Commercial Bank of China, Construction Bank, People's Bank of China, China Securities Regulatory Commission, and China Banking Regulatory Commission. This characteristic of the alliance blockchain network determines that hackers have no opportunity to participate in consensus verification, nor do they have the opportunity to view the business data stored on the alliance blockchain. In this way, the security of the blockchain network is greatly improved. However, because the nodes in an alliance blockchain network are often authoritative organizations in a certain business field, the alliance blockchain network can only provide external verification services for business requests in a specific business field. Non-node entities often need to spend a lot of cost to connect with alliance blockchain networks in different business areas, which is very inconvenient.
[0047] For this reason, the technical solution claimed by this application proposes a blockchain system in which a configuration center is set up in the system. The configuration center provides a standard protocol for docking. On the one hand, it is docked with non-node entities and can accept non-nodes. The subject's business request, on the other hand, is connected to each alliance blockchain network, and the received business request can be forwarded to the corresponding alliance blockchain network for verification according to its corresponding business field.
[0048] The blockchain system in the technical solution claimed by this application can incorporate the existing independently operated alliance blockchain networks and non-node entities that require various consensus verification services into a unified system architecture. Provide a docking standard protocol for each alliance blockchain network and each non-node subject, and even include various verification services in the entire society in the blockchain system, and each member of the society can become the block The nodes in the chain system (do not need to be responsible for consensus verification), and business requests generated in all aspects of life and work of each member can be verified in the blockchain system.
[0049] Figure 1a It is a schematic diagram of a blockchain system provided by an embodiment of the present application. Such as figure 2 As shown, the blockchain system includes a configuration center, a non-consensus subsystem, and several consensus subsystems. Among them, the non-consensus subsystem can correspond to each non-node subject, taking each non-node subject as each non-consensus node included in the non-consensus subsystem; it can also correspond to a public blockchain network, and the non-consensus nodes included in the non-consensus subsystem actually The above is the node in the public blockchain network, but each non-consensus node does not participate in the consensus verification function and can only submit business requests; and each consensus subsystem is equivalent to an alliance blockchain network, and each consensus The consensus nodes included in the subsystem are actually nodes in the alliance blockchain network corresponding to the consensus subsystem; as for the business requests initiated by each non-consensus node, they will be uniformly deployed by the configuration center and will correspond to business requests in different business areas Forward to the corresponding consensus subsystem (that is, to forward to the corresponding alliance blockchain network).
[0050] In fact, when the consensus verification system of the entire society is based on the blockchain system, each alliance blockchain network can be regarded as a service station that provides services for each member of the society. For each member of the society, its In social activities, there are often many business requests arising from life or work and span multiple business fields, and the blockchain system can provide a one-stop service for the social members. In addition, the business data stored on the blockchain system also covers all aspects of social activities of each member of the society, including the financial, medical, education, insurance, shopping, property liquidation, and administration, justice, and execution of social members. field. These business data can be used as high-precision big data and further used to build a credit system for the entire society.
[0051] The technical solutions provided by the embodiments of the present application will be described in detail below with reference to the accompanying drawings.
[0052] Figure 1a It is a schematic diagram of a blockchain system provided by an embodiment of the present application, including:
[0053] Non-consensus subsystem 101, configuration center 102, several consensus subsystems 103;
[0054] The non-consensus subsystem 101 includes multiple non-consensus nodes, and each consensus subsystem includes multiple consensus nodes;
[0055] The non-consensus node sends a service request to the configuration center 102;
[0056] The configuration center 102 receives the service request sent by the non-consensus subsystem, determines the consensus subsystem corresponding to the service request according to the service data contained in the service request, and forwards the service request Give the determined consensus subsystem 103;
[0057] The consensus subsystem 103 receives the service request forwarded by the configuration center, and sends the service request to each consensus node in the consensus subsystem 103 for consensus verification; if it passes the verification, it is based on the service The corresponding block is requested to be generated and stored in the alliance blockchain corresponding to the consensus subsystem 103.
[0058] The consensus subsystem 103 is further configured to, if the verification is passed, send the block corresponding to the service request to the non-consensus subsystem 101;
[0059] The non-consensus subsystem 101 receives the block, and stores the block in the public blockchain corresponding to the non-consensus subsystem 101.
[0060] The consensus subsystem 103 is further configured to generate a business summary corresponding to the block according to the business data corresponding to the block, and send the business summary to the non-consensus subsystem 101;
[0061] The non-consensus subsystem 101 stores the business summary in the public blockchain for query by non-consensus nodes.
[0062] The non-consensus subsystem 101 also includes:
[0063] The data browser 1011 receives a query request for business data sent by the non-consensus node, and determines the query authority of the non-consensus node according to the query request; and returns the query authority to the non-consensus node according to the query authority. The business data corresponding to the query authority.
[0064] The data browser 1011 obtains the business data corresponding to the query authority from the consensus subsystem 103 corresponding to the query request according to the query authority, and returns the obtained business data to the non-consensus node.
[0065] In the existing blockchain network, nodes are members of the blockchain network. Nodes can participate in the consensus verification of business requests, can also query the blocks stored on the blockchain network (that is, on the shared ledger), and can also query the business data corresponding to each block. The service request includes service data, and the node or non-node subject can submit the service request, request the blockchain network to perform consensus verification on the service request, and verify whether the service data of the service request is legal.
[0066] Wherein, the business data is business data generated by a node or a non-node subject, including the digital signature, identification, account address, etc. of the node or non-node subject, and also includes items that the node or non-node subject requests verification. These items to be verified vary with different business areas. For example, node A transfers 500 yuan to node B. In order to make node B believe that it has transferred the money, node A submits a business request. The business data contained in the business request includes: The account address of node A, the account address of node B, "A transfers 500 yuan to B", then each node in the blockchain network needs to verify whether the account of A has decreased by 500 yuan, and whether the account of B has increased 500 RMB from A's account.
[0067] It is worth noting that in the field of blockchain technology, each node performs consensus verification on business requests according to the consensus algorithm, and the blockchain network has the right to access the privacy of each node’s account and transaction records for verification. Test. There is no difference between the consensus verification process in the embodiment of this application and the existing consensus verification process, and therefore will not be repeated in the subsequent description.
[0068] In the existing blockchain network, because the number of business requests that require consensus verification is huge, it is usually done once for a batch of business requests within a period of time or a batch of business requests that reach the threshold. Consensus verification to improve efficiency. Then, if the verification of this batch of business requests is passed, a block corresponding to the batch of verification requests is generated and stored in the blockchain (that is, stored in the shared ledger). The node can query the business data corresponding to a certain block to verify whether the block has been tampered with.
[0069] In the embodiment of this application, the consensus node is not functionally different from the nodes in the alliance blockchain network. A consensus subsystem corresponds to an alliance blockchain network (including the alliance blockchain), and each consensus The node corresponds to an authority and participates in consensus verification. The non-consensus node can be the non-node subject described in the background art. In this system, the non-node subject can be given the identity of the node, but the non-consensus node cannot participate in the consensus verification; of course, the non-consensus node can also It is a node in a public blockchain network, so that the non-consensus subsystem corresponds to a public blockchain network. These non-consensus nodes cannot participate in consensus verification in the application scenario of this application. In the application of this application In the scenario, consensus verification is executed by each consensus node included in the consensus subsystem.
[0070] However, in other scenarios other than the application scenario of this application, the non-consensus node may perform consensus verification. For example, the non-consensus node may be a node in the Bitcoin application scenario, which is based on the workload proof algorithm. The circulation of coins is verified by consensus. As mentioned earlier, based on this system, the entire society can be integrated into a unified credit system. When the non-consensus subsystem corresponds to a public blockchain network, the public blockchain network only needs to be connected to the system, not It will affect the original operation of the public blockchain network.
[0071] Further, the non-consensus subsystem in this system can also correspond to multiple public blockchain networks, but in this system, the nodes contained in these multiple public blockchain networks are all non-consensus nodes, and non-consensus subsystems It does not care which public blockchain network these non-consensus nodes originally belonged to.
[0072] In the embodiment of this application, the configuration center provides a standard protocol for docking externally. Specifically, each alliance blockchain network can develop a client with a built-in standard protocol according to the application programming interface (API) provided by the configuration center to connect with the configuration center , Become a consensus subsystem. In addition, any subject can connect to the configuration center and become a non-consensus node. Specifically, for individuals or individuals, they can install a client with a built-in docking standard protocol on the terminal, and then they can submit business requests through the client at any time; for enterprises, especially those that provide services to users, they can Connect its application with the configuration center. When it provides services to users, it can submit the business request corresponding to this service for the corresponding consensus subsystem to conduct consensus verification.
[0073] For example, Mr. Zhang is a philanthropist who often sponsors poor students. He is very concerned about the whereabouts of every donation he donated and whether it has been implemented in the hands of every poor student. Then, Mr. Zhang can apply to become a non-consensus node and install a payment application with a built-in docking labeling protocol. Every time Mr. Zhang donates a donation, the consensus subsystem of the corresponding public welfare field will conduct a consensus verification on the donation. , To ensure that the money donated by Mr. Zhang is remitted to the account of the designated poor student. Mr. Zhang can then check the blocks deposited in the alliance blockchain to confirm that the business has not been tampered with.
[0074] For example, the client of an e-commerce platform can have a built-in docking standard protocol to connect with the configuration center. When a user makes a purchase on the e-commerce platform, the e-commerce platform requests a consensus on whether the goods purchased by the user are genuine and whether the user Consensus verification is carried out on matters such as payment success and feedback to users.
[0075] For example, ordinary individuals can become non-consensus nodes. When two non-consensus nodes transfer money, one of the non-consensus nodes can initiate a business request, requesting the alliance blockchain network corresponding to the payment field to perform consensus verification for this transfer, and Record the block corresponding to this transfer on the alliance blockchain.
[0076] In short, under the architecture of this system, the application scenarios are very rich. Individuals can become non-consensus nodes and request verification of various events generated by them. Enterprises can become non-consensus nodes and enhance users' trust in it.
[0077] In the embodiment of the present application, when the non-consensus subsystem corresponds to a public blockchain network, the generated block corresponding to the business request can also be sent to the non-consensus subsystem, so that the non-consensus subsystem The system deposits the received blocks into the public blockchain. In this way, each non-consensus node can conveniently view the time chain of the occurrence of each business without requesting the consensus subsystem to query each block.
[0078] Further, in order to make it easier for non-consensus nodes to query the business requests that have been verified by consensus, they can summarize the business data corresponding to the generated block, generate business summary, and send the business summary to the non-consensus subsystem, non-consensus sub-system. The system can store the business summary on the public chain. In this way, non-consensus nodes can query the business summary to meet the query requirements in the usual sense. At the same time, non-consensus nodes cannot view the completed business data, which prevents some private data from being used by criminals. It can be said that by sending the block and business summary to the non-consensus subsystem for storage, it not only ensures that the consensus subsystem will not face the danger of intrusion, but also realizes the openness of the blockchain network.
[0079] In the embodiment of the present application, the non-consensus subsystem may also include a data browser. The function of the data browser is to provide data query and authority management functions for each non-consensus node. As mentioned earlier, the block and business summary are sent to the non-consensus subsystem for storage. In general, non-consensus nodes can find out whether the consensus verification has passed by querying the block and business summary stored on the public chain. What is the information about what matters. Sometimes, if a non-consensus node suspects that a block has been tampered with, it must be determined by querying the business data corresponding to the block, or if a non-consensus node needs to prove its credit to other non-consensus nodes, then Need to show some detailed business data to other non-consensus nodes. However, if non-consensus nodes directly view all business data stored on the alliance blockchain, the security risk is greater. Therefore, the data browser can perform query authority management for each non-consensus node.
[0080] Of course, the architecture of the blockchain system in the technical solution claimed by this application is relatively flexible, and the data manager may not be built in the non-consensus subsystem, but in the configuration center or with the configuration center. , Non-consensus subsystem, consensus subsystem level. In short, regardless of the location of the data browser in the system, it can provide data query services to non-consensus nodes and manage query permissions.
[0081] Specifically, the query authority of a non-consensus node can be determined in the following manner: for each non-consensus node, the type of the non-consensus node is determined; according to the type of the non-consensus node, the query authority is assigned to the non-consensus node.
[0082] Wherein, the type of the non-consensus node may be an individual, an enterprise, a regulatory agency, etc., or may have different credit levels such as high credit, medium credit, and low credit. In short, the types of non-consensus nodes can be divided according to actual conditions, and this application does not limit this.
[0083] For example, for an enterprise-type non-consensus node, its query authority can be business data generated by all users it serves; for ordinary individuals, its query authority can only be business data related to themselves; for regulatory agencies In other words, the query authority can be all business data.
[0084] In the embodiment of this application, the query request for business data sent by the non-consensus node can carry a block, indicating that the non-consensus node wants to query the business data corresponding to the block, and can also carry the identity of the non-consensus node. The non-consensus node wants to query business data within the scope of its own query authority.
[0085] When the data browser receives a query request for business data sent by a non-consensus node, it will verify the query authority of the non-consensus node. When the non-consensus node does not have the corresponding query authority (if it is not authorized to query a certain Business data corresponding to each block), the query request will be rejected. If the non-consensus node has the corresponding query authority, it can obtain the query authority corresponding to the query authority from the consensus subsystem corresponding to the query request according to the query authority Business data, returning the acquired business data to the non-consensus node.
[0086] Further, the data browser can determine the business data that the non-consensus node can query according to the determined query authority, and then obtain the business data from the corresponding consensus subsystem; or directly send the determined query authority to the corresponding consensus Subsystem, the consensus subsystem returns corresponding business data according to the query authority.
[0087] in Figure 1a In the block chain system shown, a block chain system including a configuration center, a non-consensus subsystem, and several consensus subsystems is established. The non-consensus subsystem includes multiple non-consensus nodes, and each consensus subsystem includes There are multiple consensus nodes, and each consensus subsystem corresponds to a consortium blockchain network containing the multiple consensus nodes, which also means that each consensus subsystem can verify the consensus of different business fields. In this way, each consensus node in the consensus subsystem is responsible for consensus verification, and each non-consensus node in the non-consensus subsystem can send a business request to the configuration center, and the configuration center will determine the consensus in a specific business field based on the business data contained in the business request Subsystem, the consensus subsystem performs consensus verification on business requests. Through the embodiments of this application, on the one hand, only consensus nodes are responsible for consensus verification, and non-consensus nodes outside of each consensus subsystem cannot participate in the consensus verification of the alliance blockchain network, which improves the security of the blockchain network; On the one hand, the configuration center can connect to various alliance blockchain networks, and non-consensus entities (non-consensus nodes) outside the alliance blockchain network only need to connect with the configuration center, and do not need to connect to multiple alliance areas according to different docking protocols. Block chain network docking, which improves the convenience of the block chain network.
[0088] In addition, it is worth emphasizing that the function of the configuration center can be limited to determining the corresponding consensus subsystem according to the business request, and can also be used as an intermediary for data interaction between the consensus subsystem and the non-consensus subsystem. That is to say, the consensus subsystem and the non-consensus subsystem may not go through the configuration center for data interaction (such as sending blocks, business summary, business data, etc.), but based on a specific routing protocol, such as Figure 1b Shown.
[0089] figure 2 It is a flowchart of a data storage method provided by an embodiment of the present application, including the following steps:
[0090] S201: The non-consensus subsystem sends a service request to the configuration center.
[0091] The embodiments of this application and Figure 1a The block chain system shown is an embodiment based on the same inventive concept. For the explanation of related concepts, please refer to the Figure 1a Explanation of the blockchain system shown.
[0092] In the embodiment of the present application, it may specifically be that a certain non-consensus node included in the non-consensus subsystem sends a service request to the configuration center.
[0093] S202: The configuration center determines the consensus subsystem corresponding to the service request according to the service request.
[0094] S203: The configuration center forwards the service request to the determined consensus subsystem.
[0095] The configuration center may receive services sent multiple times by multiple non-consensus nodes, and for each service request, forward the service request to the corresponding consensus subsystem for consensus verification.
[0096] The configuration center can be used as an intermediary for data interaction between the consensus subsystem and the non-consensus subsystem (such as sending blocks, business summary, querying business data, etc.) in the subsequent steps, or it may not act as an intermediary. The consensus subsystem and the non-consensus subsystem directly exchange data.
[0097] S204: The consensus subsystem performs consensus verification on the service request.
[0098] When the consensus subsystem performs consensus verification on the business request, it actually sends the business request to each consensus node included in it for consensus verification. The consensus algorithm on which each consensus node conducts consensus verification can be a Byzantine fault-tolerant algorithm or other consensus algorithms without limitation.
[0099] S205: After the verification is passed, the consensus subsystem generates a corresponding block according to the business request and stores it in the alliance blockchain corresponding to the consensus subsystem, and generates a business summary corresponding to the block.
[0100] After the verification is passed, the consensus subsystem will generate the corresponding block according to the business request. In fact, the corresponding block is generated according to a batch of business requests including the business request, as explained above. No longer.
[0101] S206: The consensus subsystem sends the block corresponding to the service request and the service summary to the non-consensus subsystem.
[0102] S207: The non-consensus subsystem stores the block in the corresponding public blockchain.
[0103] S208: The non-consensus subsystem sends an acquisition request for business data to the consensus subsystem.
[0104] In the embodiment of the present application, it may be the acquisition request sent by the non-consensus subsystem to the consensus subsystem, and specifically may be the data browser included in the non-consensus subsystem sending the acquisition request to the consensus subsystem.
[0105] When the acquisition request includes the query authority of a non-consensus node, the consensus subsystem may determine the business data corresponding to the query authority from the business data stored in the non-consensus subsystem according to the query authority. Wherein, the query authority is determined by the non-consensus subsystem according to a query request for service data sent by the non-consensus node.
[0106] When the acquisition request includes an identification list of business data, the consensus subsystem may return the corresponding business data to the non-consensus subsystem according to the identification list.
[0107] S209: Return the business data corresponding to the acquisition request to the non-consensus subsystem.
[0108] by figure 2 The data storage method shown can prevent non-consensus nodes outside the consensus subsystem from freely querying business data, and can uniformly deploy business requests submitted by non-consensus nodes, thereby improving the convenience of the blockchain network.
[0109] based on figure 2 For the data storage method shown, the embodiment of the present application also provides a data storage device, such as image 3 As shown, the blockchain system includes a configuration center, a non-consensus subsystem, and a number of such devices. The non-consensus subsystem includes multiple non-consensus nodes. Each device includes multiple consensus nodes. The device includes:
[0110] The receiving module 301 receives a service request forwarded by the configuration center, where the service request includes service data;
[0111] The verification module 302 sends the service request to each consensus node in the consensus subsystem for consensus verification;
[0112] The storage module 303, if it passes the verification, generates a corresponding block according to the service request and stores it in the alliance blockchain corresponding to the consensus subsystem.
[0113] The device further includes: a sending module 304, if the verification is passed, the block corresponding to the service request is sent to the non-consensus subsystem, so that the non-consensus subsystem stores the block in the store. The public blockchain corresponding to the non-consensus subsystem.
[0114] The device further includes: a generating module 305, if the consensus nodes reach a legal consensus on the business request, generate a business summary corresponding to the block according to the business data corresponding to the block; The summary is sent to the non-consensus subsystem, so that the non-consensus subsystem stores the business summary in the public blockchain for the non-consensus node to query.
[0115] The device further includes: a business data management module 306, which receives an acquisition request for business data sent by the non-consensus subsystem; according to the acquisition request, returns the business data corresponding to the acquisition request to the non-consensus subsystem .
[0116] The acquisition request includes a query authority of a non-consensus node, and the query authority is determined by the non-consensus subsystem according to a query request for business data sent by the non-consensus node;
[0117] The business data management module 306 determines the business data corresponding to the query authority from the business data stored in the non-consensus subsystem according to the query authority.
[0118] based on figure 2 For the data storage method shown, the embodiment of the present application also provides a data storage device, such as Figure 4 As shown, the blockchain system includes the device, a non-consensus subsystem, and several consensus subsystems. The non-consensus subsystem includes a plurality of non-consensus nodes, each consensus subsystem includes a plurality of consensus nodes, and the device includes :
[0119] The receiving module 401 receives the service request sent by the non-consensus subsystem, where the service request includes service data;
[0120] The determining module 402 determines the consensus subsystem corresponding to the business request according to the business data included in the business request;
[0121] The forwarding module 403 forwards the business request to the determined consensus subsystem, so that the consensus subsystem performs a consensus verification on the business request, and stores the block corresponding to the business request that passes the verification in the store. The alliance block chain corresponding to the consensus subsystem.
[0122] based on figure 2 For the data storage method shown, the embodiment of the present application also provides a data storage device, such as Figure 5 As shown, the blockchain system includes a configuration center, the device, and several consensus subsystems. The device includes multiple non-consensus nodes, and each consensus subsystem includes multiple consensus nodes. The device includes:
[0123] The sending module 501 sends a service request to the configuration center, where the service request includes service data, so that the configuration center forwards the service request to the consensus subsystem corresponding to the service data according to the service data.
[0124] The device further includes: a first storage module 502, which receives the block sent by the consensus subsystem; and stores the block in the public blockchain corresponding to the non-consensus subsystem.
[0125] The device also includes: a second storage module 503 that receives the business summary corresponding to the block sent by the consensus subsystem; stores the business summary in the public blockchain for query by non-consensus nodes .
[0126] The device further includes: a query module 504, which receives a query request for service data sent by the non-consensus node, and determines the query authority of the non-consensus node according to the query request; The non-consensus node returns the business data corresponding to the query authority.
[0127] The query authority of non-consensus nodes is determined in the following way:
[0128] For each non-consensus node, determine the type of the non-consensus node;
[0129] According to the type of the non-consensus node, the query authority is allocated to the non-consensus node.
[0130] The query module 504 obtains the business data corresponding to the query authority from the consensus subsystem corresponding to the query request according to the query authority, and returns the obtained business data to the non-consensus node.
[0131] In the 1990s, the improvement of a technology can be clearly distinguished between hardware improvements (for example, improvements in circuit structures such as diodes, transistors, switches, etc.) and software improvements (improvements in method flow). However, with the development of technology, the improvement of many methods and procedures can be regarded as the direct improvement of the hardware circuit structure. Designers almost always get the corresponding hardware circuit structure by programming the improved method flow into the hardware circuit. Therefore, it cannot be said that the improvement of a method flow cannot be realized by hardware entity modules. For example, a Programmable Logic Device (PLD) (such as a Field Programmable Gate Array (FPGA)) is such an integrated circuit whose logic function is determined by the user's programming of the device. It is programmed by the designer to "integrate" a digital system on a PLD without requiring the chip manufacturer to design and manufacture a dedicated integrated circuit chip. Moreover, nowadays, instead of manually making integrated circuit chips, this kind of programming is mostly realized by using "logic compiler" software, which is similar to the software compiler used in program development and writing, but before compilation The original code must also be written in a specific programming language, this is called Hardware Description Language (Hardware Description Language, HDL), and HDL is not only one, but there are many, such as ABEL (Advanced Boolean Expression Language) , AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, RHDL (RubyHardware Description Language), etc. The most commonly used at present are VHDL (Very-High-Speed Integrated Circuit Hardware Description Language) and Verilog. It should also be clear to those skilled in the art that only a little logic programming of the method flow in the above-mentioned hardware description languages and programming into an integrated circuit can easily obtain the hardware circuit that implements the logic method flow.
[0132] The controller can be implemented in any suitable manner. For example, the controller can take the form of, for example, a microprocessor or a processor and a computer-readable medium storing computer-readable program codes (such as software or firmware) executable by the (micro)processor. , Logic gates, switches, application specific integrated circuits (ASIC), programmable logic controllers and embedded microcontrollers. Examples of controllers include but are not limited to the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20 and Silicone Labs C8051F320, the memory controller can also be implemented as part of the memory control logic. Those skilled in the art also know that in addition to implementing the controller in a purely computer-readable program code manner, it is entirely possible to program the method steps to make the controller use logic gates, switches, application specific integrated circuits, programmable logic controllers and embedded The same function can be realized in the form of a microcontroller, etc. Therefore, such a controller can be regarded as a hardware component, and the devices included in it for implementing various functions can also be regarded as a structure within the hardware component. Or even, the device for realizing various functions can be regarded as both a software module for realizing the method and a structure within a hardware component.
[0133] The technical carriers involved in the payment in the embodiments of this application may include, for example, Near Field Communication (NFC), WIFI, 3G/4G/5G, POS machine swiping technology, QR code scanning technology, and barcode scanning technology. , Bluetooth, infrared, Short Message Service (SMS), Multimedia Message Service (MMS), etc.
[0134] The systems, devices, modules or units explained in the above embodiments may be implemented by computer chips or entities, or implemented by products with certain functions. A typical implementation device is a computer. Specifically, the computer may be, for example, a personal computer, a laptop computer, a cell phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or Any combination of these devices.
[0135] For the convenience of description, when describing the above device, the functions are divided into various units and described separately. Of course, when implementing this application, the functions of each unit can be implemented in the same one or more software and/or hardware.
[0136] Those skilled in the art should understand that the embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the present invention may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present invention may be in the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.
[0137] The present invention is described with reference to flowcharts and/or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and/or block in the flowchart and/or block diagram, and the combination of processes and/or blocks in the flowchart and/or block diagram can be implemented by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing equipment to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing equipment can be generated It is a device that realizes the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.
[0138] These computer program instructions can also be stored in a computer-readable memory that can guide a computer or other programmable data processing equipment to work in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture including the instruction device. The device implements the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.
[0139] These computer program instructions can also be loaded on a computer or other programmable data processing equipment, so that a series of operation steps are executed on the computer or other programmable equipment to produce computer-implemented processing, so as to execute on the computer or other programmable equipment. The instructions provide steps for implementing functions specified in a flow or multiple flows in the flowchart and/or a block or multiple blocks in the block diagram.
[0140] In a typical configuration, the computing device includes one or more processors (CPU), input/output interfaces, network interfaces, and memory.
[0141] The memory may include non-permanent memory in a computer readable medium, random access memory (RAM) and/or non-volatile memory, such as read only memory (ROM) or flash memory (flash RAM). Memory is an example of computer readable media.
[0142] Computer-readable media includes permanent and non-permanent, removable and non-removable media, and information storage can be realized by any method or technology. The information can be computer-readable instructions, data structures, program modules, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, CD-ROM, digital versatile disc (DVD) or other optical storage, Magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media can be used to store information that can be accessed by computing devices. According to the definition in this article, computer-readable media does not include transitory media, such as modulated data signals and carrier waves.
[0143] It should also be noted that the terms "include", "include" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or equipment including a series of elements not only includes those elements, but also includes Other elements that are not explicitly listed, or include elements inherent to the process, method, commodity, or equipment. If there are no more restrictions, the element defined by the sentence "including a..." does not exclude the existence of other identical elements in the process, method, commodity or equipment that includes the element.
[0144] Those skilled in the art should understand that the embodiments of the present application may be provided as methods, systems or computer program products. Therefore, this application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, this application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.
[0145] This application may be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform specific tasks or implement specific abstract data types. This application can also be practiced in distributed computing environments. In these distributed computing environments, remote processing devices connected through a communication network perform tasks. In a distributed computing environment, program modules can be located in local and remote computer storage media including storage devices.
[0146] The various embodiments in this specification are described in a progressive manner, and the same or similar parts between the various embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, as for the system embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and for related parts, please refer to the part of the description of the method embodiment.
[0147] The above descriptions are only examples of this application and are not intended to limit this application. For those skilled in the art, this application can have various modifications and changes. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of this application shall be included in the scope of the claims of this application.
PUM


Description & Claims & Application Information
We can also present the details of the Description, Claims and Application information to help users get a comprehensive understanding of the technical details of the patent, such as background art, summary of invention, brief description of drawings, description of embodiments, and other original content. On the other hand, users can also determine the specific scope of protection of the technology through the list of claims; as well as understand the changes in the life cycle of the technology with the presentation of the patent timeline. Login to view more.
Similar technology patents
Foodstuff monitoring method and device
Owner:XIAOMI INC
Cookie-based secure single sign-on method and unified authentication service system thereof
Owner:SICHUAN CHANGHONG ELECTRIC CO LTD
Method, device and system for carrying out service access control on third-party application
Owner:ALIBABA GRP HLDG LTD
Multifunctional carry-on power supply
Owner:NANKAI UNIV
Classification and recommendation of technical efficacy words
- Improve convenience
- improve security
Method for implementing a navigation key function in a mobile communication terminal based on fingerprint recognition
Owner:SAMSUNG ELECTRONICS CO LTD
Image display method and apparatus
Owner:LG ELECTRONICS INC
Voice control method and device
Owner:LE SHI ZHI XIN ELECTRONICS TECH TIANJIN
Continuously operable seat-reclining device for vehicles
Owner:DAS CO LTD
Application operation method and device and mobile terminal
Owner:NUBIA TECHNOLOGY CO LTD
Pesticide micro-capsule granules and preparation method thereof
Owner:联合国南通农药剂型开发中心 +1
Method for achieving user authentication by utilizing camera
Owner:湖北微模式科技发展有限公司
Signing and decrypting method and system applied to cloud computing and based on SM2 algorithm
Owner:INST OF INFORMATION ENG CAS
NFC (near field communication) mobile terminal and payment method
Owner:守望者科技(北京)有限公司