CN112114872A - Method, apparatus and storage medium for controlling operation of block chain - Google Patents

Method, apparatus and storage medium for controlling operation of block chain Download PDF

Info

Publication number
CN112114872A
CN112114872A CN202011098194.5A CN202011098194A CN112114872A CN 112114872 A CN112114872 A CN 112114872A CN 202011098194 A CN202011098194 A CN 202011098194A CN 112114872 A CN112114872 A CN 112114872A
Authority
CN
China
Prior art keywords
protocol
blockchain
new
block chain
participant
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202011098194.5A
Other languages
Chinese (zh)
Other versions
CN112114872B (en
Inventor
曹珍富
张华君
董晓蕾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Peng Cheng Laboratory
Original Assignee
Peng Cheng Laboratory
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Peng Cheng Laboratory filed Critical Peng Cheng Laboratory
Priority to CN202011098194.5A priority Critical patent/CN112114872B/en
Publication of CN112114872A publication Critical patent/CN112114872A/en
Application granted granted Critical
Publication of CN112114872B publication Critical patent/CN112114872B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention discloses a method, equipment and a storage medium for controlling the operation of a block chain, wherein the method comprises the following steps: judging whether the block chain meets a global unified updating condition; if the block chain does not meet the global unified updating condition, continuing to operate the block chain by using the current block chain protocol; and if the block chain meets the global unified updating condition, updating the current block chain protocol to be a new block chain protocol, and operating with the new block chain protocol. The technical problem of inconsistent protocol versions caused by forking in block chain upgrading in the prior art is solved, and the technical effect of consistent protocol versions is achieved.

Description

Method, apparatus and storage medium for controlling operation of block chain
Technical Field
The present invention relates to a block chain, and more particularly, to a method, apparatus, and storage medium for controlling operation of a block chain.
Background
Most blockchain protocols are designed to run for long periods of time, even permanently. This long run is not only because the designer wishes the log (or consensus data) in the protocol to remain growing, but often because the security of the protocol is likely to rely on this long run. However, this presents a problem. In such a long-time operation situation, if the cryptographic component in the protocol is discovered to be a security hole, or the protocol itself no longer meets the needs of the scenario, the protocol needs a method for upgrading on the fly.
For a running blockchain protocol, if there are two honest participants who have differences in their eyes in the current log of the system, we call forking.
The existing block chain upgrading technology mainly comprises two types: hard fork upgrade and soft fork upgrade. If an upgrade necessarily results in forking, we call a hard fork upgrade. If one may cause a fork, we call a soft fork upgrade.
The soft fork upgrading is not easy to cause system splitting, but the application range is limited, and upgrading of a plurality of functions cannot be completed by using the soft fork upgrading. The hard fork upgrade can meet the upgrade requirements of most functions. But hard fork upgrades easily result in system splits.
Disclosure of Invention
The embodiments of the present application provide a method, an apparatus, and a storage medium for controlling operation of a block chain, so as to solve a problem of inconsistent protocol versions caused by forking in upgrading the block chain in the prior art, and achieve consistent protocol versions.
The embodiment of the application provides a method for controlling the operation of a block chain, which comprises the following steps:
judging whether the block chain meets a global unified updating condition;
if the block chain does not meet the global unified updating condition, continuing to operate the block chain by using the current block chain protocol;
and if the block chain meets the global unified updating condition, updating the current block chain protocol to be a new block chain protocol, and operating with the new block chain protocol.
In one embodiment, the determining whether the blockchain satisfies the global unified update condition includes:
it is determined whether the current blockchain protocol is expired.
In one embodiment, the method further comprises the following steps:
setting an ideal alarm clock function for the block chain;
when any participant initializes, the ideal alarm clock function is invoked, setting a uniform expiration time for the participant's instance of the blockchain protocol that is based on the current blockchain protocol.
In one embodiment, the ideal alarm clock function obtains a globally synchronized time via a satellite navigation system or a secure network time service protocol.
In one embodiment, the continuing to run the blockchain in the current protocol or the new blockchain protocol includes:
when a new participant initializes, reviewing a blockchain protocol of the new participant;
and if the blockchain protocol of the new participant is the same as the current blockchain protocol, adding the new participant into the participant set.
In one embodiment, the continuing to run the blockchain in the current protocol or the new blockchain protocol includes:
when an expansion request of any participant is received, acquiring a block carried in the expansion request;
and if the participant sending the expansion request is from the existing participant set and the request is legal, adding the block into the block chain.
In one embodiment, the continuing to run the blockchain in the current protocol or the new blockchain protocol includes:
when receiving a log reading request of any participant, judging whether the participant sending the log reading request comes from an existing participant set;
and if so, acquiring the latest log according to the current time and sending the latest log to the participant sending the log reading request.
In one embodiment, the updating the current blockchain protocol to be a new blockchain protocol includes:
reading a current consensus chain;
calling a new protocol generation method contained in the current block chain protocol, and generating a new block chain protocol code by taking the current consensus chain as a parameter;
replacing the current blockchain protocol instance with the new blockchain protocol instance;
wherein, the new blockchain protocol instance comprises a new expiration time set for the new blockchain protocol instance and a new protocol production method.
Embodiments of the present application also provide a computer-readable storage medium, on which a program for controlling operations of a block chain is stored, where the program for controlling operations of a block chain, when executed by a processor, implements the steps of the method for controlling operations of a block chain as described above.
The embodiment of the present application further provides an apparatus, where the apparatus includes a memory, a processor, and a program for controlling a chain of blocks, where the program is stored in the memory and is executable on the processor, and when the processor executes the program for controlling a chain of blocks, the steps of the method for controlling a chain of blocks as described above are implemented.
The technical scheme of the method, the device and the storage medium for controlling the operation of the block chain provided in the embodiment of the application at least has the following technical effects:
because the global unified updating condition of the block chain protocol is set, the version of the block chain protocol is forcibly updated after the condition is met, and the old version fails. Thereby realizing protocol version consistency. The security of the participants who do not update the protocol cannot be guaranteed at all, and the motivation of the participants for updating the protocol is increased.
Drawings
Fig. 1 is a flowchart of a method for controlling the operation of a block chain according to a first embodiment of the present application;
FIG. 2 is a flowchart of a method for controlling the operation of a blockchain according to a second embodiment of the present application;
FIG. 3 is a flow chart of a method for updating a blockchain protocol according to the present application;
fig. 4 is a device structure diagram of an operation control block chain operation method according to an embodiment of the present application.
The implementation, functional features and advantages of the objects of the present invention will be further explained with reference to the accompanying drawings.
Detailed Description
The traditional upgrading method of the block chain protocol is divided into hard fork upgrading and soft fork upgrading.
In a hard fork upgrade, parts of the blocks generated by the new version protocol appear to be illegal to parties using the old version. If there are any participants that refuse to upgrade their agreement, the participant population will split. The logs maintained by the system are different in the eyes of participants using the new version and participants using the old version. The most typical hard splits are ETH and ETC at Etherlands.
In soft fork upgrades, the old version of software will recognize the blocks of the new version, but the new version will not recognize all the blocks of the old version. Thus, if most participants adopt the new version at the same time, the upgrade is not forked. Because, in this case, there is only one legal chain in the system, i.e., a chain generated by a new version. The chain is also legitimate from the perspective of the old version participants. However, if most people refuse to use new versions of software, this upgrade method still causes forking to occur. Because most people in the system agree that the legitimate chain is now of the old version, and this is likely to be illegal in the view of the new version.
The essential difference between hard forking and soft forking is that in hard forking upgrade, the old and new versions of the protocol are two-way unacknowledged. In soft fork upgrades, this disagreement is one-way. Although soft fork upgrade reduces the probability of system splitting, it is only necessary to convince most of the participants to upgrade together before forking, but this upgrade technique cannot solve all the upgrade problems. Such as the well-known problem of bitcoin expansion. The bitcoin specifies that a block is 1MB at the maximum. If this restriction is to be modified, increasing the block size, soft forking cannot be achieved. For another example, if we find that SHA-256 (a hash function used in bitcoin) has a security problem and needs to modify the hash function used in the bitcoin protocol, then the upgrade cannot be implemented by soft forking either. Since these upgraded blocks produced by the new version are certainly not legitimate as seen in the old version.
In order to solve the problem of inconsistent protocol versions caused by forking in upgrading of a block chain protocol in the prior art, whether a block chain meets a global unified updating condition or not is judged; if the block chain does not meet the global unified updating condition, continuing to operate the block chain by using the current block chain protocol; and if the block chain meets the global unified updating condition, updating the current block chain protocol to be a new block chain protocol, and operating with the new block chain protocol. Because the global unified updating condition of the block chain protocol is set, the version of the block chain protocol is forcibly updated after the condition is met, and the old version fails. Thereby realizing protocol version consistency. The security of the participants who do not update the protocol cannot be guaranteed at all, and the motivation of the participants for updating the protocol is increased.
In order to better understand the above technical solutions, exemplary embodiments of the present application will be described in more detail below with reference to the accompanying drawings. While exemplary embodiments of the present application are shown in the drawings, it should be understood that the present application may be embodied in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.
As shown in fig. 1, in a first embodiment of the present application, a method for controlling a block chain operation specifically includes the following steps:
step S110, determine whether the current blockchain protocol satisfies the global unified update condition. If the global unified update condition is not satisfied, execute step S120: continuing to run the blockchain with the current blockchain protocol, otherwise executing step S130: and updating the current blockchain protocol into a new blockchain protocol and operating with the new blockchain protocol.
In this embodiment, it is determined whether a global unified update condition is satisfied in an operation mode of a conventional blockchain, and the global unified update condition is used as a standard for updating a blockchain protocol. The global unified updating condition is that for any participant, a global unified parameter is adopted to judge whether the same condition is met, and the global unified parameter is not changed by the characteristics of the participant. In one embodiment, the global unified parameter is a global time. That is, whether to update the blockchain protocol may be determined by determining whether the global time reaches a certain deadline. In other embodiments, other global uniformity parameters may also be considered, such as the length of the blockchain. As long as the global uniformity parameter can maintain global uniformity.
Since the blockchain protocol does not require that the privacy of the data must be protected, it can be assumed in the security analysis of the present embodiment that all inputs and outputs are forwarded to the attacker. I.e. the operation messages of any participant are forwarded to the attacker. When the updating condition is met, the original block chain protocol is invalid, and the block chain operation of the participator which does not update the block chain protocol is very easy to be controlled by an attacker.
Therefore, in the method of this embodiment, the global unified update condition is set to uniformly update the blockchain protocols of all the participants when the global unified parameter meets the condition, so that the situation of forking of the blockchain protocols does not occur. And secondly, the failure of the original protocol after upgrading is ensured, the risk of being attacked is borne by using the original protocol, and the power of a participant for updating the block chain protocol is increased.
As shown in fig. 2, in one embodiment, global time is employed to determine whether to update the blockchain protocol. The method specifically comprises the following steps S210-S250:
step S210, an ideal alarm clock function is set for the blockchain.
The ideal alarm clock function may be a function in the blockchain protocol. Its function is to accept as input a future time at which to issue a reminder. The specific mode can be that when the future time is received, a planning task which can send out a reminder is set. The ideal alarm clock function may be added to the blockchain protocol used.
In order to ensure the uniformity of the global time, the ideal alarm clock function can obtain the global synchronous time through a satellite navigation system (such as a GPS system) or a secure network time service protocol, or other modes capable of giving the global synchronous time.
It is understood that in the blockchain protocol, a time for appointing upgrade may be preset. When the participant uses the blockchain protocol for initialization, the expiration time can be set by the ideal alarm clock function. The setting mode can be that a specific date and time, a time interval and the like are specified.
Step S220, when any participant initializes, the ideal alarm function is invoked, and a unified expiration time based on the current blockchain protocol is set for the instance of the blockchain protocol of the participant.
For any participant, an encoded current phase protocol and an instance of the current protocol are stored locally. When initialized, the ideal alarm clock function may be invoked to initialize a unified expiration time based on the current blockchain protocol.
In step S230, it is determined whether the current blockchain protocol is expired. If not, go to step S240: continuing to run the blockchain with the current blockchain protocol, otherwise, executing step S250: and updating the current blockchain protocol into a new blockchain protocol and operating with the new blockchain protocol.
In this embodiment, an ideal alarm clock function is used to set global time for the blockchain, and whether the global time expires is used as a condition for updating the blockchain protocol, so that the system reminding function can be simply implemented by calling a planning task of the system.
In the above embodiment, as shown in fig. 3, the following steps S310 to S340 may be adopted to update the current blockchain protocol to be a new blockchain protocol.
Step S310: reading the current consensus chain.
The blockchain adopts a consensus mechanism to ensure that all participants can obtain the same legal data, and any tampering with the blockchain will not conform to the consensus mechanism and thus will not be approved. When the consensus chain is the current time, i.e. the time when the blockchain protocol needs to be updated, all the participants obtain the consensus shared data.
Step S320: and calling a new protocol generation method contained in the current block chain protocol, and generating a new block chain protocol code by taking the current consensus chain as a parameter. In the embodiments of the present application, a method for generating a new blockchain protocol is provided in a blockchain protocol, and the method for generating a new blockchain protocol may generate a new blockchain protocol using a consensus chain as a parameter. It will be appreciated that the generation method is also included in the new blockchain protocol.
Step S330: replacing the current blockchain protocol instance with the new blockchain protocol instance. After the new blockchain protocol is generated, the current blockchain protocol is replaced and fails. The new blockchain protocol instance comprises a new expiration time set for the new blockchain protocol instance and a new protocol production method.
The ideal alarm clock function described above may be invoked to set a new expiration time for the new blockchain protocol.
The method for updating the block chain protocol is included in the block chain protocol, so that the effective continuation of the protocol updating can be kept. And the consistency of the execution result can be ensured by taking the consensus chain as a parameter.
In the above embodiment, whether operating with the current blockchain protocol or the new blockchain protocol, the following common operations of the blockchain may be included: initializing, expanding a block chain, and reading a log.
Initialization:
when a new participant initializes, the blockchain protocol of the new participant is considered. The new participant may be any node on the network that is conditioned to run the blockchain service. When it wants to become a node on a blockchain, the node can be created by running a program of the corresponding blockchain and access the blockchain network. The blockchain program carries the corresponding blockchain protocol.
And if the blockchain protocol of the new participant is the same as the current blockchain protocol, adding the new participant into the participant set. Namely, the blockchain network judges whether the protocol of the new node is consistent with that of the blockchain network, and if so, the new node can be added into the blockchain network.
Expanding a block chain:
when an expansion request of any participant is received, acquiring a block carried in the expansion request. After becoming a node on the blockchain network, the participant will be able to add new blocks to the set of blocks in the blockchain.
And if the participant sending the expansion request comes from the participant set and the request is legal, namely the request accords with the protocol rule, adding the block into the block chain. I.e., a node in the blockchain network can extend the set of blocks in the blockchain.
Reading a log:
when a read log request of any participant is received, whether the participant sending the read log request is from a participant set is judged. And if so, acquiring the latest log according to the current time and sending the latest log to the participant sending the log reading request.
The above embodiments thus all fulfill the requisite functions of a block chain and have the following properties.
Non-authentication: the participation in the protocol can be started at any time, regardless of the user. As long as he has the same protocol code pi as the other users. Of course, if he does not have the same protocol code as the other users, the system does not guarantee any security for him, i.e. all his outputs may be controlled by the attacker at this time.
Consistency: at the same time t, different participants in the system read the log, and the resulting output L is the same.
Non-tamper-proof property: once a participant in the system reads the log L, the header of the log L' read by all participants later must be the same as L.
The growth performance is as follows: any participant can add a new tile to the tile set through an extension message to achieve the purpose of extending the tile chain.
To further illustrate the above method of running a blockchain, the following ideal functional definitions of blockchains are proposed for proving the security of blockchains in protocols:
definition 1: the function of the block chain with dead time.
Setting the latest read log L, the time T of the read operation, the set of blocks B, and the encoded protocolPi, initial set of participantsPThe identification code sid of the protocol instance.
Firstly, when the current time t is less than or equal to E:
1) when receiving (init, sid, pi') from the new participant P, this message is forwarded to the attacker, adding P to the attacker if pi = piP. I.e. the party P performs an initialization (init) of the protocol instance (the instance identification code is sid), which has a protocol pi'.
2) When a message (expand, sid, B) is received from any participant P, this message is forwarded to the attacker and tile B is added to the set B of tiles. I.e. the participant P is extended (expanded) with a protocol instance (instance id sid), which carries the block b.
3) When a message (read, sid) is received from any participant P, this message is forwarded to the attacker, if P ∉PThe attacker decides to output; otherwise, let t be the current time:
a) if T = T, the (readed, sid, L) is output to the participant P. Namely, the participant P reads the log by using the protocol instance (the instance identifier is sid), the current time T is the reading operation time T, and the log is the log at the time T.
b) If t is>T, calculationL'=π.ext(L,B,t) Is provided withL = L||L', T = T, and outputs (readed, sid, L) to P. Namely, the participant P reads the log with the protocol instance (the instance id is sid), and the current time T is after the reading operation time T, a new log needs to be acquired and replaced. And sets the read operation time T as the current time T.
And secondly, when the current time t is larger than E, working according to the instruction of an attacker.
Wherein the content of the first and second substances,extis a log extraction function included in the encoded blockchain protocol. It is a deterministic function (non-random function) that has different definitions under different blockchain systems. It determines the specific use of this blockchain system.
Definition 2: ideal alarm clockF AL
When receiving a message (alarm, sid, T) from participant P, a scheduling task is set: and outputs (alarm, sid) to P at time T.
Definition 3: constant pi. U:
the agreed upgrade time for this protocol contained in the blockchain protocol pi.
Definition 4: the function pi.new
The new protocol extraction function contained in the block chain protocol pi. The consensus block L is input and this function outputs the new protocol π'. The new protocol extraction method may use the first legal blockchain protocol code included in the consensus blockchain, or may use other suitable methods. The protocol needs to be established according to actual needs during operation.
Definition 5: scalable blockchain protocol piU
The participant P locally saves an encoded current protocol pi and an instance I of the current protocol.
When an input (init, sid, pi) is received, setting I to pi instance and inputting (init, sid, pi) to I and (alarm, sid, pi. U) to IF AL. I.e. instance I calls the ideal alarm clock function at initializationF AL
When input (expand, sid, b) is received, it is input to I.
When an input (read, sid) is received, it is input to I, and the output of I is output.
When receivingF ALAnd (alarm, sid) is returned, and (read, sid) is input to I to obtain a current consensus chain L, and a new protocol pi' = pi is obtained.new(L), then set pi = pi ', set I to an instance of pi ', and input (init, sid, pi ') to I.
Definition 6: the functionality of the blockchain may be upgraded.
Setting during initialization: the last read log L, the time T of the read operation, the set B of blocks, the encoded current protocol pi, the initial set of participantsPAnd the time of the next update U = pi.
Once (init, sid, pi ') is received from the new participant P, the message is forwarded to the attacker, and if pi = pi', P is addedP
Secondly, when receiving a message (expanded, sid, B) from any participant P, forwarding the message to the attacker, and adding the block B to the set B of blocks.
Thirdly, when receiving the message (read, sid) from P, forwarding the message to the attacker if P ∉PThe attacker decides to output; otherwise, let t be the current time:
1) if T = T, the (readed, sid, L) is output to P.
2) If t is>T, calculationL'=π.ext(L,B,t) Is provided withL=L||L', T = T, and outputs (readed, sid, L) to P.
Fourthly, at the time U, the time of the operation,
1) if U ≠ T, calculateL'=π.ext(L,B,U) Is provided withL=L||L',T=U。
2) Calculate pi' = pi.new(L), pi = pi ', U = pi'. U is set.
In the above definition, after the protocol upgrade time, if the current protocol version is not upgraded to a new version, all operations are decided by an attacker. Before the time of protocol upgrade, the protocol version is correct, and even if forwarded to an attacker, the blockchain still realizes its existing functions (including initialization, expansion, log reading, etc.). Therefore, the embodiment ensures the uniform upgrade of the protocol version through the global uniform update condition, and can ensure the safety of the block chain.
Based on the same inventive concept, an embodiment of the present application further provides a computer-readable storage medium, where a program for controlling a chain of blocks to run is stored, and when the program for controlling the chain of blocks to run is executed by a processor, the processes of the above method for controlling the chain of blocks to run are implemented, and the same technical effects can be achieved, and are not described herein again to avoid repetition.
Since the computer-readable storage medium provided in the embodiments of the present application is a computer-readable storage medium used for implementing the method in the embodiments of the present application, based on the method described in the embodiments of the present application, those skilled in the art can understand the specific structure and modification of the computer-readable storage medium, and thus details are not described herein. Any computer-readable storage medium that can be used with the methods of the embodiments of the present application is intended to be within the scope of the present application.
Based on the same inventive concept, an embodiment of the present application further provides an apparatus, where the apparatus includes a memory, a processor, and a program that is stored in the memory and is executable on the processor and controls a blockchain operation, and when the processor executes the program that is executable on the blockchain, each process of the method embodiment for controlling a blockchain operation is implemented, and the same technical effect can be achieved, and is not described herein again to avoid repetition.
As shown in fig. 4, the apparatus may include:
an input device 410, a device for inputting data and information to the smart device. Is a bridge for smart devices to communicate with users or other devices. The input device 410 is one of the primary devices for information exchange between a user and an intelligent system. Keyboards, mice, cameras, scanners, light pens, handwriting input pads, joysticks, voice input devices, etc., all belong to the input devices. The input device 410 is a device for human or external interaction with the apparatus 400, for inputting raw data and a program for processing the data into the apparatus 400. The intelligent device can receive various data, which can be numerical data or various non-numerical data, such as graphics, images, sounds and the like, and can be input into the intelligent device through different types of input devices for storage, processing and output.
The output device 420 is a terminal device capable of an intelligent hardware system, and is used for receiving output display, printing, sound, peripheral device operation control and the like of intelligent device data. Various calculation result data or information are also expressed in the form of numbers, characters, images, sounds, and the like. Common output devices include displays, printers, plotters, video output systems, voice output systems, magnetic recording devices, and the like.
The apparatus 400 further comprises as shown in fig. 4: at least one processor 440, memory 430.
Processor 440 may be an integrated circuit chip having signal processing capabilities. In implementation, the steps of the above method may be performed by integrated logic circuits of hardware or instructions in the form of software in the processor 440. The processor 440 may be a general purpose processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), an off-the-shelf programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components. The various methods, steps and logic blocks disclosed in the embodiments of the present invention may be implemented or performed. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like. The software module may be located in ram, flash memory, rom, prom, or eprom, registers, etc. storage media as is well known in the art. The storage medium is located in the memory 430, and the processor 440 reads the information in the memory 430 and performs the steps of the above method in combination with the hardware thereof.
It will be appreciated that memory 430 in embodiments of the invention may be either volatile memory or nonvolatile memory, or may include both volatile and nonvolatile memory. The non-volatile Memory may be a Read Only Memory (ROM), a Programmable ROM (PROM), an Erasable PROM (EPROM), an Electrically Erasable PROM (EEPROM), or a flash Memory. Volatile Memory can be Random Access Memory (RAM), which acts as external cache Memory. By way of illustration and not limitation, many forms of RAM are available, such as Static random access memory (Static RAM, SRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic random access memory (Synchronous DRAM, SDRAM), Double Data Rate Synchronous Dynamic random access memory (ddr Data Rate SDRAM, ddr SDRAM), Enhanced Synchronous SDRAM (ESDRAM), synchlronous SDRAM (SLDRAM), and Direct Rambus RAM (DRRAM). The memory 430 of the systems and methods described in connection with the embodiments of the invention is intended to comprise, without being limited to, these and any other suitable types of memory.
Since the device provided in the embodiment of the present application is a device used for implementing the method in the embodiment of the present application, a person skilled in the art can understand the specific structure and the deformation of the device based on the method described in the embodiment of the present application, and thus details are not described here. All the devices adopted in the method of the embodiment of the present application belong to the protection scope of the present application.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
It should be noted that in the claims, any reference signs placed between parentheses shall not be construed as limiting the claim. The word "comprising" does not exclude the presence of elements or steps not listed in a claim. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. The invention may be implemented by means of hardware comprising several distinct elements, and by means of a suitably programmed computer. In the unit claims enumerating several means, several of these means may be embodied by one and the same item of hardware. The usage of the words first, second and third, etcetera do not indicate any ordering. These words may be interpreted as names.
While preferred embodiments of the present invention have been described, additional variations and modifications in those embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including preferred embodiments and all such alterations and modifications as fall within the scope of the invention.
It will be apparent to those skilled in the art that various changes and modifications may be made in the invention without departing from the invention
With clear spirit and scope. Thus, if such modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include such modifications and variations.

Claims (10)

1. A method of controlling blockchain operation, the method comprising:
judging whether the block chain meets a global unified updating condition;
if the block chain does not meet the global unified updating condition, continuing to operate the block chain by using the current block chain protocol;
and if the block chain meets the global unified updating condition, updating the current block chain protocol to be a new block chain protocol, and operating with the new block chain protocol.
2. The method according to claim 1, wherein the determining whether the blockchain satisfies a global unified update condition includes:
it is determined whether the current blockchain protocol is expired.
3. The method of controlling blockchain operation according to claim 2, further comprising:
setting an ideal alarm clock function for the block chain;
when any participant initializes, the ideal alarm clock function is invoked, setting a uniform expiration time for the participant's instance of the blockchain protocol that is based on the current blockchain protocol.
4. The method of claim 3, wherein the ideal alarm clock function obtains a globally synchronized time via a satellite navigation system or a secure network time service protocol.
5. The method of claim 1, wherein the continuing to run the blockchain in the current protocol or the new blockchain protocol comprises:
when a new participant initializes, reviewing a blockchain protocol of the new participant;
and if the blockchain protocol of the new participant is the same as the current blockchain protocol, adding the new participant into the participant set.
6. The method of claim 1, wherein the continuing to run the blockchain in the current protocol or the new blockchain protocol comprises:
when an expansion request of any participant is received, acquiring a block carried in the expansion request;
and if the participant sending the expansion request is from the existing participant set and the request is legal, adding the block into the block chain.
7. The method of claim 1, wherein the continuing to run the blockchain in the current protocol or the new blockchain protocol comprises:
when receiving a log reading request of any participant, judging whether the participant sending the log reading request comes from an existing participant set;
and if so, acquiring the latest log according to the current time and sending the latest log to the participant sending the log reading request.
8. The method of claim 3, wherein updating the current blockchain protocol to a new blockchain protocol comprises:
reading a current consensus chain;
calling a new protocol generation method contained in the current block chain protocol, and generating a new block chain protocol code by taking the current consensus chain as a parameter;
replacing the current blockchain protocol instance with the new blockchain protocol instance;
wherein, the new blockchain protocol instance comprises a new expiration time set for the new blockchain protocol instance and a new protocol production method.
9. A computer-readable storage medium, on which a program for controlling the operation of a blockchain is stored, characterized in that the program for controlling the operation of a blockchain realizes the method according to any one of claims 1 to 8 when executed by a processor.
10. An apparatus for controlling blockchain operations, comprising a memory, a processor, and a program for controlling blockchain operations, stored in the memory and executable on the processor, wherein the processor implements the method of any of claims 1 to 8 when executing the program for controlling blockchain operations.
CN202011098194.5A 2020-10-14 2020-10-14 Method, apparatus and storage medium for controlling operation of blockchain Active CN112114872B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011098194.5A CN112114872B (en) 2020-10-14 2020-10-14 Method, apparatus and storage medium for controlling operation of blockchain

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011098194.5A CN112114872B (en) 2020-10-14 2020-10-14 Method, apparatus and storage medium for controlling operation of blockchain

Publications (2)

Publication Number Publication Date
CN112114872A true CN112114872A (en) 2020-12-22
CN112114872B CN112114872B (en) 2023-09-26

Family

ID=73793917

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011098194.5A Active CN112114872B (en) 2020-10-14 2020-10-14 Method, apparatus and storage medium for controlling operation of blockchain

Country Status (1)

Country Link
CN (1) CN112114872B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113438109A (en) * 2021-06-23 2021-09-24 预言机(重庆)科技有限公司 Block chain protocol upgrading method and system based on network nodes

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107153560A (en) * 2017-05-25 2017-09-12 微梦创科网络科技(中国)有限公司 Version upgrading method, server and system
CN109992285A (en) * 2019-04-02 2019-07-09 杭州秘猿科技有限公司 Block chain code block standalone upgrade method, apparatus and electronic equipment
US20190236606A1 (en) * 2018-01-31 2019-08-01 Salesforce.Com, Inc. Systems, methods, and apparatuses for implementing a virtual chain model for distributed ledger technologies in a cloud based computing environment
CN110268691A (en) * 2017-02-07 2019-09-20 微软技术许可有限责任公司 Alliance's block chain network with verified block chain and common recognition agreement
CN111367621A (en) * 2020-03-06 2020-07-03 深圳市网心科技有限公司 Intelligent contract timing processing method, block chain node and storage medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110268691A (en) * 2017-02-07 2019-09-20 微软技术许可有限责任公司 Alliance's block chain network with verified block chain and common recognition agreement
CN107153560A (en) * 2017-05-25 2017-09-12 微梦创科网络科技(中国)有限公司 Version upgrading method, server and system
US20190236606A1 (en) * 2018-01-31 2019-08-01 Salesforce.Com, Inc. Systems, methods, and apparatuses for implementing a virtual chain model for distributed ledger technologies in a cloud based computing environment
CN109992285A (en) * 2019-04-02 2019-07-09 杭州秘猿科技有限公司 Block chain code block standalone upgrade method, apparatus and electronic equipment
CN111367621A (en) * 2020-03-06 2020-07-03 深圳市网心科技有限公司 Intelligent contract timing processing method, block chain node and storage medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113438109A (en) * 2021-06-23 2021-09-24 预言机(重庆)科技有限公司 Block chain protocol upgrading method and system based on network nodes
CN113438109B (en) * 2021-06-23 2022-06-07 预言机(重庆)科技有限公司 Block chain protocol upgrading method and system based on network nodes

Also Published As

Publication number Publication date
CN112114872B (en) 2023-09-26

Similar Documents

Publication Publication Date Title
JP6896942B2 (en) Blockchain-based transaction processing methods and devices, as well as electronic devices
KR102327574B1 (en) Blockchain-based transaction processing method and device
JP6929497B2 (en) Cross-blockchain interaction methods, devices, systems, and electronic devices
US10790971B1 (en) Preventing misrepresentation of input data by participants in a secure multi-party computation
CN107392623B (en) Service execution method and device
WO2019218816A1 (en) Block chain-based service data processing method and apparatus, and electronic device and storage medium
US8195124B2 (en) Apparatus and methods for managing time sensitive application privileges on a wireless device
US20190149321A1 (en) Authenticating chaincode to chaincode invocations of a blockchain
US11729007B2 (en) Methods and apparatus to manage timing in a blockchain network
US8005118B2 (en) Method and apparatus for implementing secure clock in device having no internal power source
US10754976B2 (en) Configuring image as private within storage container
US11568402B2 (en) Decentralized out-of-band accelerated blockchain transaction processing
WO2021031905A1 (en) Data management method, apparatus, device and system and computer-readable storage medium
TWI706362B (en) Data processing method, device and server based on blockchain
CN114172662A (en) Block chain external data acquisition method and device
WO2021102691A1 (en) Resource subscription method and apparatus, computer device, and storage medium
CN112114872B (en) Method, apparatus and storage medium for controlling operation of blockchain
CN108092947B (en) Method and device for identity authentication of third-party application
CN105210039A (en) Terminal and method for synchronizing application thereof
CN107256151B (en) Page rendering processing method and device and terminal
CN114553786A (en) Network request fusing method and device, computer equipment and storage medium
CN114979234A (en) Session control sharing method and system in distributed cluster system
CN109783156B (en) Application starting control method and device
CN112416619A (en) Interface configuration method, equipment, terminal and storage medium
CN114554579B (en) Application control method, device, electronic equipment and computer readable storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant