RU2735156C1 - Способ и устройство для отправки информации о транзакциях и для проверки консенсуса - Google Patents

Способ и устройство для отправки информации о транзакциях и для проверки консенсуса Download PDF

Info

Publication number
RU2735156C1
RU2735156C1 RU2019119564A RU2019119564A RU2735156C1 RU 2735156 C1 RU2735156 C1 RU 2735156C1 RU 2019119564 A RU2019119564 A RU 2019119564A RU 2019119564 A RU2019119564 A RU 2019119564A RU 2735156 C1 RU2735156 C1 RU 2735156C1
Authority
RU
Russia
Prior art keywords
consensus
consensus node
transaction information
information
node
Prior art date
Application number
RU2019119564A
Other languages
English (en)
Inventor
Нин Ли
Original Assignee
Алибаба Груп Холдинг Лимитед
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 Алибаба Груп Холдинг Лимитед filed Critical Алибаба Груп Холдинг Лимитед
Application granted granted Critical
Publication of RU2735156C1 publication Critical patent/RU2735156C1/ru

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1675Temporal synchronisation or re-synchronisation of redundant processing components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3821Electronic credentials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Accounting & Taxation (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Retry When Errors Occur (AREA)

Abstract

Изобретение относится к вычислительной технике. Технический результат заключается в повышении точности результата проверки консенсуса узлов консенсуса. Компьютерно-реализуемый способ для отправки информации о транзакциях, в котором получают, посредством первого узла консенсуса, информацию о транзакциях; отправляют информацию о транзакциях на второй узел консенсуса; получают уведомление о несостоятельности проверки консенсуса от второго узла консенсуса, при этом уведомление о несостоятельности проверки консенсуса содержит идентификатор информации у информации о транзакциях, при этом уведомление о несостоятельности проверки консенсуса указывает на то, что по меньшей мере часть информации о транзакциях отсутствует в совокупности транзакций второго узла и что проверка информации о транзакциях завершена неудачей; и в ответ на определение того, что совокупность транзакций первого узла консенсуса хранит информацию о транзакциях, которая соответствует идентификатору информации, содержащемуся в уведомлении о несостоятельности проверки консенсуса, повторно отправляют, посредством первого узла консенсуса, информацию о транзакциях, которая соответствует идентификатору информации, на второй узел консенсуса. 3 н. и 17 з.п. ф-лы, 5 ил.

Description

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
Настоящая заявка относится к области техники связанных распределенных реестров (блокчейн) и, в частности, к способу и устройству для отправки информации о транзакциях и для проверки консенсуса.
УРОВЕНЬ ТЕХНИКИ
В области техники связанных распределенных реестров, узел связанных распределенных реестров, ответственный за выполнение проверки консенсуса над транзакциями, упоминается как узел консенсуса.
На фазе проверки консенсуса, узлу консенсуса, который инициирует проверку консенсуса, необходимо упаковывать информацию о транзакциях у транзакций, сформированных в течение периода времени, в предварительно обработанный блок и отправлять предварительно обработанный блок на другой узел консенсуса для проверки консенсуса, и другой узел консенсуса проверяет, включает ли в себя совокупность транзакций другого узла консенсуса всю информацию от транзакции из предварительно обработанного блока. Результат проверки состоит в том, что проверка консенсуса преуспевает, если совокупность транзакций включает в себя всю информацию о транзакциях из предварительно обработанного блока. Результат проверки состоит в том, что проверка консенсуса не удается, если совокупность транзакций не включает в себя всю информацию о транзакциях из предварительно обработанного блока. Впоследствии, узлы консенсуса достигают консенсуса, что информация о транзакциях в предварительно обработанном блоке действительна или недействительна, на основании результатов проверки узлов консенсуса над предварительно обработанным блоком и используют консенсус в результате выполнения проверки консенсуса узлами консенсуса над предварительно обработанным блоком. Поэтому, необходимо гарантировать, что информация о транзакциях, хранимая в совокупности транзакций узлов консенсуса, непротиворечива, чтобы сделать результат проверки консенсуса узлов консенсуса как можно более точным.
На фазе обработки транзакции, что касается разных транзакций, каждый узел консенсуса может служить в качестве узла обработки транзакции (который упоминается ниже как обрабатывающий узел) для получения информации о транзакциях у транзакции. Применительно к транзакции, необходимо, чтобы обрабатывающий узел, который соответствует транзакции, отправлял информацию о транзакциях на каждый другой узел консенсуса, и другой узел консенсуса, который принимает информацию о транзакциях, сохраняет информацию о транзакциях в совокупности транзакций другого узла консенсуса. Узлы консенсуса поддерживают непротиворечивую информацию о транзакциях, которая хранится в совокупностях транзакций узлов консенсуса, посредством такого способа.
Однако, так как нарушения нормального режима сети всегда неизбежны, нестабильность сети часто приводит к нестабильности передачи информации между узлами консенсуса, и некоторым узлам консенсуса может не удаваться принимать отправленную информацию. Например, обрабатывающий узел отправляет информацию о транзакциях на другие узлы консенсуса. Если происходит нарушение нормального режима сети, информация о транзакциях, отправленная обрабатывающим узлом на другие узлы консенсуса, может не быть принята всеми другими узлами консенсуса. Следовательно, информация о транзакциях, хранимая в совокупностях транзакций узлов консенсуса, не может сохранять непротиворечивость, тем самым, снижая точность результата проверки консенсуса узлов консенсуса.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Варианты осуществления настоящей заявки предусматривают способ и устройство для отправки информации о транзакциях и для проверки консенсуса, чтобы ослабить проблему, что точность результата проверки консенсуса узлов консенсуса снижается при использовании существующего способа для отправки информации о транзакциях и выполнения проверки консенсуса.
Для ослабления предыдущей технической проблемы, варианты осуществления настоящей заявки реализованы, как изложено ниже:
Вариант осуществления настоящей заявки предусматривает способ для отправки информации о транзакциях, где способ включает в себя следующее: получение, посредством узла консенсуса, информации о транзакциях; отправку информации о транзакциях на другой узел консенсуса; и повторно отправляют информацию о транзакциях на основании уведомления о несостоятельности проверки консенсуса при приме уведомления о несостоятельности проверки консенсуса, которое отправлено другим узлом консенсуса, и которое содержит идентификатор информации у информации о транзакциях.
Вариант осуществления настоящей заявки предусматривает способ для проверки консенсуса, где способ включает в себя следующее: прием, посредством узла консенсуса, предварительно обработанного блока, отправленного другим узлом консенсуса; выполнение проверки консенсуса над предварительно обработанным блоком на основании информации о транзакциях, хранимой в совокупности транзакций, и информации о транзакциях, включенной в предварительно обработанный блок; и в процессе проверки консенсуса, если определено, что по меньшей мере одного фрагмента информации о транзакциях, включенной в предварительно обработанный блок, не существует в совокупности транзакций, определение идентификатора информации у информации о транзакциях, отсутствующей в совокупности транзакций, в информации о транзакциях, включенной в предварительно обработанный блок, и отправку уведомления о несостоятельности проверки консенсуса, которое включает в себя идентификатор информации, на другие узлы консенсуса.
Вариант осуществления настоящей заявки предусматривает устройство для отправки информации о транзакциях, где устройство включает в себя следующее: модуль сбора данных, выполненный с возможностью получать информацию о транзакциях; первый модуль отправки, выполненный с возможностью отправлять информацию о транзакциях на другой узел консенсуса; и второй модуль отправки, выполненный с возможностью повторно отправлять информацию о транзакциях на основании уведомления о несостоятельности проверки консенсуса при приеме уведомления о несостоятельности проверки консенсуса, которое отправлено другим узлом консенсуса, и которое включает в себя идентификатор информации у информации о транзакциях.
Вариант осуществления настоящей заявки предусматривает устройство для проверки консенсуса, где устройство включает в себя следующее: модуль приема, выполненный с возможностью принимать предварительно обработанный блок, отправленный другим узлом консенсуса; модуль проверки консенсуса, выполненный с возможностью выполнять проверку консенсуса над предварительно обработанным блоком на основании информации о транзакциях, хранимой в совокупности транзакций, и информации о транзакциях, включенной в предварительно обработанный блок; и модуль отправки, выполненный с возможностью: в процессе проверки консенсуса, если определено, что по меньшей мере одного фрагмента информации о транзакциях, включенной в предварительно обработанный блок, не существует в совокупности транзакций, определять идентификатор информации у информации о транзакциях, отсутствующей в совокупности транзакций, в информации о транзакциях, включенной в предварительно обработанный блок, и отправлять уведомление о несостоятельности проверки консенсуса, которое включает в себя идентификатор информации, на другие узлы консенсуса.
Из технических решений, предусмотренных в предыдущих вариантах осуществления настоящей заявки, может быть видно, что, в вариантах осуществления настоящей заявки, если другому узлу консенсуса не удается принять информацию о транзакциях, отправленную обрабатывающим узлом на фазе обработки транзакции, другой узел консенсуса может отправлять уведомление о несостоятельности проверки консенсуса, которое включает в себя идентификатор консенсуса у информации о транзакциях, на обрабатывающий узел на фазе проверки консенсуса, если другой узел консенсуса определяет, что информации о транзакциях, включенной в предварительно обработанный блок, не существует в совокупности транзакций другого узла консенсуса, так что обрабатывающий узел повторно отправляет информацию о транзакциях на другой узел консенсуса. Согласно вариантам осуществления настоящей заявки, может быть в как можно большей степени гарантировано, что информация о транзакциях, хранимая в совокупности транзакций узлов консенсуса, непротиворечива и, таким образом, не снижается точность результата проверки консенсуса узлов консенсуса.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Чтобы яснее описать технические решения в вариантах осуществления настоящей заявки или в существующей технологии, нижеследующее кратко описывает прилагаемые чертежи, необходимые для описания вариантов осуществления или существующей технологии. Очевидно, что прилагаемые чертежи в нижеследующем описании показывают всего лишь некоторые варианты осуществления настоящей заявки, и рядовой специалист в данной области техники, кроме того, может получить другие чертежи из этих прилагаемых чертежей без творческих усилий.
Фиг. 1 - блок-схема последовательности операций способа, иллюстрирующая способ для отправки информации о транзакциях, согласно варианту осуществления настоящей заявки;
фиг. 2 - принципиальная схема, иллюстрирующая надежный механизм на фазе обработки транзакции, согласно варианту осуществления настоящей заявки;
фиг. 3 - блок-схема последовательности операций способа, иллюстрирующая способ для проверки консенсуса, согласно варианту осуществления настоящей заявки;
фиг. 4 - принципиальная схема, иллюстрирующая устройство для отправки информации о транзакциях, согласно варианту осуществления настоящей заявки; и
фиг. 5 - принципиальная схема, иллюстрирующая устройство для проверки консенсуса, согласно варианту осуществления настоящей заявки.
ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ
Варианты осуществления настоящей заявки предусматривают способ и устройство для отправки информации о транзакциях и для проверки консенсуса.
Чтобы побудить специалиста в данной области техники лучше понимать технические решения из настоящей заявки, нижеследующее ясно и полно описывает технические решения в вариантах осуществления настоящей заявки со ссылкой на прилагаемые чертежи в вариантах осуществления настоящей заявки. Очевидно, что описанные варианты осуществления являются всего лишь некоторыми, но не всеми из вариантов осуществления настоящей заявки. Все другие варианты осуществления, полученные рядовым специалистом в данной области техники на основании вариантов осуществления настоящей заявки без творческих усилий, будут подпадать под объем защиты настоящей заявки.
Технические решения, предусмотренные в вариантах осуществления настоящей заявки, подробно описаны ниже со ссылкой на прилагаемые чертежи.
Фиг. 1 - блок-схема последовательности операций способа, иллюстрирующая способ для отправки информации о транзакциях, согласно варианту осуществления настоящей заявки. Способ включает в себя следующие этапы:
S101. Узел консенсуса получает информацию о транзакциях.
В данном варианте осуществления настоящей заявки, информацией о транзакциях могут быть все подробности, вовлеченные в транзакцию, такие как адрес счета, сумма транзакции и тип транзакции.
На фазе обработки транзакции, узел консенсуса служит в качестве обрабатывающего узла и может принимать информацию о транзакциях, отправленную клиентским устройством. Клиентское устройство может быть клиентским устройством узла связанных распределенных реестров, которое участвует в транзакции. Безусловно, узел консенсуса может инициировать транзакцию самостоятельно и формировать информацию о транзакциях по транзакциях.
Ради легкости описания, узел обработки, описанный ниже, является узлом консенсуса, который обрабатывает транзакцию на фазе обработки, и является основной частью исполнения данного варианта осуществления настоящей заявки.
S102. Отправить информацию о транзакциях на другой узел консенсуса.
После получения информации о транзакциях, обрабатывающий узел сохраняет информацию о транзакциях в совокупности транзакций обрабатывающего узла и отправляет информацию о транзакциях на другой узел консенсуса, так чтобы другой узел консенсуса сохранял информацию о транзакциях в совокупности транзакций другого узла консенсуса после приема информации о транзакциях. Затем, на фазе проверки консенсуса, каждый узел консенсуса может проверять предварительно обработанный блок, определяя, включает ли в себя информация о транзакциях, хранимая в совокупности транзакций узла консенсуса, всю информацию о транзакциях из предварительно обработанного блока.
Другой узел консенсуса является узлом консенсуса, иным чем обрабатывающий узел. Совокупностью транзакций является база данных, используемая для хранения информации о транзакциях. Каждый узел консенсуса имеет свою собственную совокупность транзакций. Совокупность транзакции может быть построена в памяти узла консенсуса или внешней памяти узла консенсуса.
Стоит подчеркнуть, что каждый узел консенсуса может выполнять многозадачную обработку, то есть, одновременно обрабатывать транзакцию A и участвовать в проверке консенсуса над предварительно обработанным блоком (который не включает в себя транзакцию A), который включает в себя пакет информации о транзакциях. До тех пор, пока вычислительных возможностей достаточно, узел консенсуса может одновременно обрабатывать разные транзакции или выполнять проверку консенсуса с помощью множества процессов.
В данном варианте осуществления настоящей заявки, чтобы подробно описать, каким образом в как можно большей степени гарантировать, что каждый другой узел консенсуса принимает информацию о транзакциях у транзакции, фаза обработки транзакции и фаза проверки консенсуса описаны относительно информации о транзакциях одной и той же транзакции.
В данном варианте осуществления настоящей заявки, узел консенсуса может создавать порожденный поток операций для каждого другого узла консенсуса и отправлять информацию о транзакциях на другой узел консенсуса с помощью порожденного потока операций. Узел консенсуса может отправлять информацию о транзакциях с помощью порожденного потока операций, пользуясь технологии асинхронного вызова. После того, как информация о транзакциях отправлена, порожденный поток операций отменяется независимо от того, может ли другой узел консенсуса принять информацию о транзакциях. В качестве альтернативы, узел консенсуса может отправлять информацию о транзакциях, пользуясь технологией асинхронного вызова. После отправки информации о транзакциях, узел консенсуса продолжает использовать порожденный поток операций для ожидания приема ответного сигнала, возвращенного другим узлом консенсуса, после того, как другой узел консенсуса принимает информацию о транзакциях.
S103. Повторно отправить информацию о транзакциях на основании уведомления о несостоятельности проверки консенсуса при приеме уведомления о несостоятельности проверки консенсуса, которое отправлено другим узлом консенсуса, и которое включает в себя идентификатор информации у информации о транзакциях.
В данном варианте осуществления настоящего изобретения, уведомление о несостоятельности проверки консенсуса отправляется другим узлом консенсуса на следующей фазе проверки консенсуса. На фазе проверки консенсуса, узел консенсуса (который упоминается ниже как ведущий узел), который вызывает дает начало консенсусу, упаковывает информацию о транзакциях из пакета транзакций в совокупности транзакций узла консенсуса в предварительно обработанный блок и отправляет предварительно обработанный блок на узел консенсуса (который упоминается как узел реплики), иной чем ведущий узел, так что узлы консенсуса (ведущий узел и узел реплики) выполняют проверку консенсуса над предварительно обработанным блоком. Ведущий узел может выбираться узлами консенсуса или может быть задан случайным образом.
Стоит подчеркнуть, что данный вариант осуществления настоящей заявки выполняется обрабатывающим узлом на фазе обработки транзакции. В фазе проверки консенсуса, обрабатывающий узел может быть ведущим узлом или узлом реплики. Варианты осуществления не ограничены настоящей заявкой. В дополнение, другой узел консенсуса является узлом консенсуса, иным чем обрабатывающий узел на фазе обработки, а другой узел консенсуса обычно может быть узлом реплики или ведущим узлом.
Вкратце, идентичность каждого узла консенсуса может изменяться соответствующим образом после перехода из фазы обработки транзакции в фазу проверки консенсуса. Прежний обрабатывающий узел может становиться узлом реплики, а прежний другой узел консенсуса может становиться ведущим узлом.
В данном варианте осуществления настоящей заявки, при проверке предварительно обработанного блока, узел реплики сравнивает информацию о транзакциях из предварительно обработанного блока с информацией о транзакциях, хранимой в совокупности транзакций узла реплики. Если информация о транзакциях, хранимая в совокупности транзакций узла реплики, включает в себя всю информацию о транзакциях из предварительно обработанного блока, это указывает, что узел реплики успешно принимает информацию о транзакциях на предыдущей фазе обработки транзакции.
Если информация о транзакциях, хранимая в совокупности транзакций узла реплики, не включает в себя всю информацию о транзакциях из предварительно обработанного блока, другими словами, если какая-то информация о транзакциях из предварительно обработанного блока отсутствует в информации о транзакциях, хранимой в совокупности транзакций узла реплики, это указывает, что узел реплики не принял успешно информацию о транзакциях на предыдущей фазе обработки транзакции. В этом случае, проверка, выполняемая узлом реплики над предварительно обработанным блоком, претерпевает неудачу, и узел реплики широковещательно передает уведомление о несостоятельности проверки консенсуса, которое включает в себя идентификатор информации отсутствующей информации о транзакциях, на другие узлы реплики и ведущий узел. Каждый узел консенсуса, который принимает уведомление о несостоятельности проверки консенсуса, может контролировать совокупность транзакций узла консенсуса и отправлять информацию о транзакциях, которая соответствует идентификатору информации, на узел реплики, который отправляет уведомление о несостоятельности проверки консенсуса, если совокупность транзакций узла консенсуса хранит информацию о транзакциях, которая соответствует идентификатору информации, включенному в уведомление о несостоятельности проверки консенсуса (узел консенсуса успешно принимает информацию о транзакциях на фазе обработки транзакции, или узел консенсуса является обрабатывающим узлом).
Стоит подчеркнуть, что обычно есть очень большое количество фрагментов информации о транзакциях, включенной в предварительно обработанный блок, и информация о транзакциях обычно широковещательно передается разными обрабатывающими узлами. Поэтому, на фазе проверки консенсуса, каждому узлу консенсуса может недоставать какой-то информации о транзакциях, включенной в предварительно обработанный блок. Информация о транзакциях, которой недостает каждому узлу консенсуса, безусловно хранится в совокупности транзакций обрабатывающего узла, который изначально широковещательно передает информацию о транзакциях. В дополнение, информация о транзакциях, которой не достает каждому узлу консенсуса, может храниться в совокупности транзакций более чем одного другого узла консенсуса. Другими словами, на фазе проверки консенсуса, информация о транзакциях, которой недостает каждому узлу консенсуса, может компенсироваться с помощью совместного содействия других узлов консенсуса.
Например, есть пять узлов A, B, C, D и E консенсуса в сети связанных распределенных реестров. На фазе проверки консенсуса, A, который служит в качестве ведущего узла, формирует предварительно обработанный блок, и информацией о транзакциях, включенной в предварительно обработанный блок являются L, M и N. L широковещательно передается из E, когда E служит в качестве обрабатывающего узла, M широковещательно передается из A, когда A служит в качестве обрабатывающего узла, и N широковещательно передается из D, когда D служит в качестве обслуживающего узла. Допустим, что B и C не удается принять L на фазе обработки L, B и E не удается принять M на фазе обработки M, B не удается принять N на фазе обработки N. В этом случае, на фазе проверки консенсуса, после того, как A отправляет предварительно обработанный блока на B, C, D и E, B отправляет уведомление о несостоятельности проверки консенсуса, которое включает в себя идентификаторы информации L, M и N, на A, C, D и E, так как L, M и N отсутствуют в совокупности транзакций на B. По существу, B отдельно принимает L, M и N, отправленные из A; M и N, отправленные из C; L, M и N, отправленные из D; и L и N, отправленные из E. Другими словами, информация о транзакциях, отсутствующая в совокупности транзакций на B, может компенсироваться посредством содействия консенсусу из A, C, D и E.
В дополнение, вследствие нарушений нормального режима сети, все узлы консенсуса, которые принимают уведомление о несостоятельности проверки консенсуса, отправляют информацию о транзакциях на узел реплики с помощью процедуры компенсации. Фактически, может быть гарантировано, что узел реплики принимает информацию о транзакциях с большой вероятностью, тем самым, облегчая нарушения нормального режима сети и обеспечивая непротиворечивость совокупностей транзакций узлов консенсуса.
В заключение, в данном варианте осуществления настоящего изобретения, после отправки информации о транзакциях на другой узел консенсуса, независимо от того, принимает ли каждый другой узел консенсуса информацию о транзакциях, узел консенсуса может дожидаться фазы проверки консенсуса для повторной отправки, благодаря процедуре компенсации, информации о транзакциях на другой узел консенсуса, который отправляет уведомление о несостоятельности проверки консенсуса, на основании принятого уведомления о несостоятельности проверки консенсуса.
Может быть видно, что, согласно способу для отправки информации, показанному на фиг. 1, если другому узлу консенсуса не удается принять информацию о транзакциях, отправленную обрабатывающим узлом на фазе обработки транзакции, другой узел консенсуса может отправлять уведомление о несостоятельности проверки консенсуса, которое включает в себя идентификатор консенсуса у информации о транзакциях, на обрабатывающий узел на фазе проверки консенсуса, если другой узел консенсуса определяет, что информации о транзакциях, включенной в предварительно обработанный блок, не существует в совокупности транзакций другого узла консенсуса, так что обрабатывающий узел повторно отправляет информацию о транзакциях на другой узел консенсуса. Согласно данному варианту осуществления настоящей заявки, может быть в как можно большей степени гарантировано, что информация о транзакциях, хранимая в совокупности транзакций узлов консенсуса, непротиворечива и, таким образом, не снижается точность результата проверки консенсуса узлов консенсуса.
Кроме того, в данном варианте осуществления настоящей заявки, некоторые надежные механизмы могут использоваться на фазе обработки транзакции для повышения надежности отправки информации о транзакциях узлом консенсуса на другой узел консенсуса.
На этапе S102, узел консенсуса создает порожденный поток операций для каждого другого узла консенсуса и отправляет информацию о транзакциях на другой узел консенсуса с помощью порожденного потока операций; и повторно отправляет информацию о транзакциях на другой узел консенсуса с помощью порожденного потока операций, если определено, что другому узлу консенсуса не удается принять информацию о транзакциях, до тех по, пока не определено, что другой узел консенсуса принимает информацию о транзакциях, или не удовлетворено предопределенное условие прекращения отправки.
Определяется, что другой узел консенсуса принимает информацию о транзакциях, если определено, что ответный сигнал, возвращенный другим узлом консенсуса, принят с помощью порожденного потока операций в течение заданного периода времени. Определяется, что другому узлу консенсуса не удается принять информацию о транзакциях, если определено, что ответный сигнал, возвращенный другим узлом консенсуса, не принят с помощью порожденного потока операций в течение заданного периода времени.
Предопределенное условие прекращения отправки может быть следующим: Кратность отправки информации о транзакциях на другой узел консенсуса достигает предопределенной кратности, или время, истекшее после первого раза, когда информация о транзакциях была отправлена на другой узел консенсуса, не превышает предопределенную длительность. Предопределенная кратность и предопределенная длительность в настоящей заявке не ограничены.
Стоит отметить, что узел консенсуса может повторно отправлять информацию о транзакциях на другой узел консенсуса с помощью порожденного потока операций, каждый раз пользуясь следующим способом: Узел консенсуса может повторно отправлять информацию о транзакциях, как только определено, что предыдущая отправка претерпевает неудачу, или может ожидать конкретный временной интервал, чтобы отсрочить отправку. Конкретный временной интервал может конфигурироваться, и конкретный временной интервал для ожидания каждой повторной отправки может быть одинаковым или разным. Например, конкретный временной интервал постепенно возрастает или убывает.
Например, узел консенсуса создает порожденный поток операций для каждого другого узла консенсуса и сначала отправляет информацию о транзакциях на другой узел консенсуса с помощью порожденного потока операций. Повторная отправка информации о транзакциях продолжается в том же духе до тех пор, пока кратность не достигает предопределенной кратности, или время, истекшее после первого раза, когда информация о транзакциях была отправлена на другой узел консенсуса, не превышает предопределенную длительность.
В частности, в предыдущем примере, если кратность, с которой узел консенсуса отправляет информацию о транзакциях, достигает предопределенной кратности, узел консенсуса дополнительно может добавлять информацию о транзакциях в резервную очередь и создавать порожденный поток операций процедуры восстановления, используемый специально для сканирования резервной очереди. Процедура восстановления сканирует резервную очередь каждый конкретный временной интервал, чтобы идентифицировать информацию о транзакциях, и информация о транзакциях отправляется с помощью процедуры восстановления до тех пор, пока время, которое истекло после первого раза, когда информация о транзакциях была отправлена на другой узел консенсуса, не превышает предопределенную длительность. Безусловно, также может быть сконфигурирован конкретный временной интервал, который процедура восстановления сканирует резервную очередь. То есть, порожденный поток операций, чья кратность отправки информации о транзакциях достигает предопределенной кратности, отменяется для сбережения ресурсов узла консенсуса, информация о транзакциях добавляется в резервную очередь, и постоянно действующий порожденный поток операций процедуры восстановления ответственен за сканирование резервной очереди и отправку информации о транзакциях каждый конкретный временной интервал. По существу, растрата ресурсов, вызванная поддержкой относительно большого количества порожденных потоков операций узлом консенсуса, может быть уменьшена.
В предыдущем примере, узел консенсуса фактически отправляет информацию о транзакциях на другой узел консенсуса, пользуясь технологией вызова со слабой синхронизацией. После асинхронного вызова порожденного потока операций для каждого другого узла консенсуса, узел консенсуса отправляет информацию о транзакциях на другой узел консенсуса с помощью порожденного потока операций, пользуясь синхронным вызовом. Порожденный поток операций занимает вычислительный ресурс узла консенсуса, и узел консенсуса ожидает, с помощью порожденного потока операций, чтобы другой узел консенсуса возвратил ответный сигнал. В дополнение, если другому узлу консенсуса не удается вернуть ответный сигнал в течение заданного периода времени, это указывает, что другому узлу консенсуса не удается принять информацию о транзакциях, и узел консенсуса повторно отправляет информацию о транзакциях на другой узел консенсуса с помощью порожденного потока операций. По существу, с использованием технологии вызова со слабой синхронизацией на фазе обработки транзакции может делать ненужным, чтобы узел консенсуса откладывал на время более важные рабочие процессы, чтобы специально ожидать ответного сигнала, возвращенного другим узлом консенсуса, и узел консенсуса также может пользоваться порожденным потоком операций, который соответствует каждому другому узлу консенсуса, для ожидания ответного сигнала и для повторной отправки информации о транзакциях, тем самым, гарантируя, что другой узел консенсуса успешно принимает информацию о транзакциях.
В дополнение, в настоящем варианте осуществления настоящей заявки, когда предопределенное условие прекращения отправки удовлетворено, информация о транзакциях может добавляться в предопределенную очередь, если другой узел консенсуса все еще не возвращает ответный сигнал. При приеме уведомления о несостоятельности проверки консенсуса, в очереди отыскивается информация о транзакциях, которая соответствует идентификатору информации, на основании идентификатора информации, включенного в уведомление о несостоятельности проверки консенсуса, и информация о транзакциях отправляется.
Очередь является пространством для хранения в памяти узла консенсуса и выполнена с возможностью хранить информацию о транзакциях, которую узел консенсуса повторно пытается отправить на фазе обработки, но которая все еще не принята каждым другим узлом консенсуса. Информация о транзакциях, которую узел консенсуса повторно пытается отправить, но которую не удается принять, сохраняется в очереди, когда совокупность транзакций узла консенсуса не построена в памяти, так что узел консенсуса может быстрее отправлять информацию о транзакциях на другой узел консенсуса, которому недостает информации о транзакциях, на фазе проверки консенсуса.
В частности, когда совокупность транзакций не построена в памяти, на фазе проверки консенсуса, при приеме уведомления о несостоятельности проверки консенсуса, отправленного узлом реплики, узел консенсуса должен контролировать, включает ли в себя очередь узла консенсуса информацию о транзакциях, которой недостает узлу реплики, вместо контроля совокупности транзакций узла консенсуса; и может отправлять информацию о транзакциях на узел реплики, если очередь узла консенсуса включает в себя информацию о транзакциях, которой недостает узлу реплики; или не нуждается в отправке информации о транзакциях на узел реплики, если очередь узла консенсуса не включает в себя информацию о транзакциях, которой недостает узлу реплики (даже если совокупность транзакций узла консенсуса включает в себя транзакцию, которой недостает узлу реплики). По существу, если узлу реплики недостает информации X о транзакциях, всегда будет обеспечиваться, чтобы обрабатывающий узел, который широковещательно передает информацию X о транзакциях, получал информацию X о транзакциях из очереди обрабатывающего узла и отправлял информацию X о транзакциях. Поэтому, узел реплики, которому недостает информации о транзакции, всегда может быстро компенсироваться.
Фиг. 2 - принципиальная схема, иллюстрирующая надежный механизм на фазе обработки транзакции, согласно варианту осуществления настоящей заявки. Как показано на фиг. 2, на фазе обработки транзакции, обрабатывающий узел пытается отправить информацию о транзакциях на другой узел консенсуса, пользуясь способом, таким как задержка на 5 с или задержка на 10 минут, а способ для попытки отправлять информацию о транзакциях ограничивается. То есть, информация о транзакциях отправляется посредством использования большей задержки, когда кратность отправки является большей, чем 3. Информация о транзакциях добавляется в предопределенную очередь, и отправка прекращается, когда период действия информации о транзакциях (время, которое истекло после первого раза, когда информация о транзакциях отправлялась на другой узел консенсуса) превышает предопределенную длительность (например, один час). На фазе проверки консенсуса, узел консенсуса вводит в действие информацию о транзакциях в очереди, только при приеме уведомления о несостоятельности проверки консенсуса.
Стоит подчеркнуть, что предопределенная длительность может определяться на основании периода, в котором каждый узел консенсуса выполняет проверку консенсуса, или может определяться на основании периода устранения неполадок общей неисправности сети.
Согласно надежному механизму, показанному на фиг. 2, узел консенсуса задерживает попытку отправить информацию о транзакциях и, после того, как узел консенсуса повторно отправляет информацию о транзакциях спустя задержку в 5 с два раза, это указывает, что есть проблема с передачей, которая временно не может быть решена (которая может состоять в том, что другой узел консенсуса, который не принял успешно информация о транзакциях, выходит из строя, или происходит крупная неисправность в сети). Поэтому, узел консенсуса на время прекращает отправку информации о транзакциях на другой узел консенсуса. После ожидания в течение относительно длительного времени (например, 10 минут), проблема передачи могла быть сглажена, и тогда, узел консенсуса продолжает отправлять информацию о транзакциях. Если период действия информации о транзакциях слишком долог, информация о транзакциях может добавляться в предопределенную очередь, чтобы ожидать более поздней повторной отправки, с помощью процедуры компенсации, информации о транзакциях на другой узел консенсуса, которому недостает информации о транзакциях.
В данном варианте осуществления настоящей заявки, на фазе проверки консенсуса, узлы консенсуса совместно компенсируют каждый узел консенсуса, которому недостает информации о транзакциях, так чтобы проблема несовместимости совокупностей транзакций узлов консенсуса, которая вызвана нарушениями нормального режима сети, могла быть как следует уменьшена. На этой основе, согласно надежному механизму, показанному на фиг. 2, могут использоваться меры на фазе обработки транзакции для повышения доли успешных попыток приема информации о транзакциях другим узлом консенсуса.
Фиг. 3 - способ для проверки консенсуса согласно варианту осуществления настоящей заявки. Способ включает в себя следующие этапы:
S301. Узел консенсуса принимает предварительно обработанный блок, отправленный другим узлом консенсуса.
S302. Выполнить проверку консенсуса над предварительно обработанным блоком на основании информации о транзакциях, хранимой в совокупности транзакций, и информации о транзакциях, включенной в предварительно обработанный блок.
S303. В процессе проверки консенсуса, если определено, что по меньшей мере одного фрагмента информации о транзакциях, включенной в предварительно обработанный блок, не существует в совокупности транзакций, определять идентификатор информации у информации о транзакциях, отсутствующей в совокупности транзакций, в информации о транзакциях, включенной в предварительно обработанный блок.
S304. Отправлять уведомление о несостоятельности проверки консенсуса, которое включает в себя идентификатор информации, на другой узел консенсуса.
В данном варианте осуществления настоящей заявки, узел консенсуса является узлом консенсуса, который проверяет предварительно обработанный блок на фазе проверки консенсуса, а именно, узлом реплики. Другой узел консенсуса является узлом, который инициирует консенсус, а именно, ведущим узлом.
Подробное описание способа для проверки консенсуса, показанного на фиг. 3, было письменно зафиксировано в описании способа для отправки информации о транзакциях, показанного на фиг. 1. Подробности здесь опущены ради простоты.
На основании способа для отправки информации о транзакциях, показанного на фиг. 1, вариант осуществления настоящей заявки соответственно дополнительно предусматривает устройство для отправки информации о транзакциях. Как показано на фиг. 4, устройство включает в себя следующее: модуль 401 сбора данных, выполненный с возможностью получать информацию о транзакциях; первый модуль 402 отправки, выполненный с возможностью отправлять информацию о транзакциях на другой узел консенсуса; и второй модуль 403 отправки, выполненный с возможностью повторно отправлять информацию о транзакциях на основании уведомления о несостоятельности проверки консенсуса при приеме уведомления о несостоятельности проверки консенсуса, которое отправлено другим узлом консенсуса, и которое включает в себя идентификатор информации у информации о транзакциях.
Модуль 401 сбора данных выполнен с возможностью принимать информацию о транзакциях, отправленную клиентским устройством.
Первый модуль 402 отправки выполнен с возможностью создавать порожденный поток операций для каждого другого узла консенсуса и отправлять информацию о транзакциях на другой узел консенсуса с помощью порожденного потока операций.
Первый модуль 402 отправки выполнен с возможностью повторно отправлять информацию о транзакциях на другой узел консенсуса с помощью порожденного потока операций, если определено, что другому узлу консенсуса не удается принять информацию о транзакциях, до тех по, пока не определено, что другой узел консенсуса принимает информацию о транзакциях, или не удовлетворено предопределенное условие прекращения отправки.
Первый модуль 402 отправки выполнен с возможностью определять, что другой узел консенсуса принимает информацию о транзакциях, если определено, что ответный сигнал, возвращенный другим узлом консенсуса, принят с помощью порожденного потока операций в течение заданного периода времени; или определять, что другому узлу консенсуса не удается принять информацию о транзакциях, если определено, что ответный сигнал, возвращенный другим узлом консенсуса, не принят с помощью порожденного потока операций в течение заданного периода времени.
Предопределенное условие прекращения отправки может включать в себя следующее: Кратность отправки информации о транзакциях на другой узел консенсуса достигает предопределенной кратности, или время, истекшее после первого раза, когда информация о транзакциях была отправлена на другой узел консенсуса, не превышает предопределенную длительность.
Устройство дополнительно включает в себя модуль 404 добавления, выполненный с возможностью добавлять информацию о транзакциях в предопределенную очередь, когда удовлетворено предопределенное условие прекращения отправки.
Второй модуль 403 отправки выполнен с возможностью отыскивать в очереди информацию о транзакциях, которая соответствует идентификатору информации, на основании идентификатора информации, включенного в уведомление о несостоятельности проверки консенсуса, и отправлять информацию о транзакциях.
На основании способа для проверки консенсуса, показанного на фиг. 3, вариант осуществления настоящей заявки соответственно дополнительно предусматривает устройство для проверки консенсуса. Как показано на фиг. 5, устройство включает в себя следующее: модуль 501 приема, выполненный с возможностью принимать предварительно обработанный блок, отправленный другим узлом консенсуса; модуль 502 проверки консенсуса, выполненный с возможностью выполнять проверку консенсуса над предварительно обработанным блоком на основании информации о транзакциях, хранимой в совокупности транзакций, и информации о транзакциях, включенной в предварительно обработанный блок; и модуль 503 отправки, выполненный с возможностью: в процессе проверки консенсуса, если определено, что по меньшей мере одного фрагмента информации о транзакциях, включенной в предварительно обработанный блок, не существует в совокупности транзакций, определять идентификатор информации у информации о транзакциях, отсутствующей в совокупности транзакций, в информации о транзакциях, включенной в предварительно обработанный блок, и отправлять уведомление о несостоятельности проверки консенсуса, которое включает в себя идентификатор информации, на другие узлы консенсуса.
В 1990-ые, может быть ясно проведено различие, является ли техническое усовершенствование улучшением аппаратных средств (например, улучшением в отношении структуры схемы, таким как диод, транзистор или переключатель) или улучшением программного обеспечения (улучшением в отношении процедуре способа). Однако, по мере того, как технологии развиваются, текущие усовершенствования в отношении многих процедур способа могут рассматриваться в качестве непосредственных улучшений в отношении структур схемы аппаратных средств. Конструктор обычно программирует усовершенствованную процедуру способа в аппаратную схему для получения соответствующей структуры схемы аппаратных средств. Поэтому, процедура способа может быть улучшена посредством использования объектного модуля аппаратных средств. Например, программируемое логическое устройство (ПЛУ, PLD) (например, программируемая пользователем вентильная матрица (FPGA)) является такой интегральной схемой, и логическая функция ПЛУ определяются пользователем в результате программирования устройства. Конструктор выполняет программирование, чтобы «интегрировать» цифровую систему в единое ПЛУ, не требуя, чтобы производитель микросхем проектировал и выпускал специализированную интегральную микросхему. В дополнение, в настоящее время, вместо ручного производства интегральной микросхемы, такое программирование главным образом реализуется посредством использования программного обеспечения «логического компилятора». Программное обеспечение логического компилятора аналогично компилятору программного обеспечения, используемому для разработки и написания программы. Необходимо, чтобы исходный код был написан на конкретном языке программирования для компиляции. Язык упоминается как язык описания аппаратных схем (HDL). Есть много HDL, таких как усовершенствованный язык булевых выражений (ABEL), язык описания аппаратных схем Altera (AHDL), Confluence, язык программирования Корнелльского университета (CUPL), HDCal, язык описания аппаратных схем Lava (JHDL), Lava, Lola, MyHDL, PALASM и язык описания аппаратных схем Ruby (RHDL). Наиболее широко используются язык описания аппаратных схем на сверхбыстродействующих интегральных схемах (VHDL) и Verilog. Специалист в данной области техники также должен понимать, что аппаратная схема, которая реализует логическую процедуру способа, может быть без труда получена, как только процедура способа логически запрограммирована, пользуясь некоторыми описанными языками описания аппаратных схем, и запрограммирован в интегральную схему.
Контроллер может быть реализован посредством использования любого надлежащего способа. Например, контроллер может быть микропроцессором или процессором, и машинно-читаемым носителем, хранящим машинно-читаемую управляющую программу (такую как программное обеспечение или микропрограммное обеспечение), которая может приводиться в исполнение микропроцессором или процессором, логическим вентилем, переключателем, специализированной интегральной схемой (ASIC), программируемым логическим контроллером или встроенным микроконтроллером. Примеры контроллера включают в себя, но не в качестве ограничения, следующие микропроцессоры: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, и Silicone Labs C8051F320. Контроллер памяти также может быть реализован в виде части управляющей логики памяти. Специалист в данной области техники также осознает, что, в дополнение к реализации контроллера посредством использования машинно-читаемой управляющей программы, логическое программирование может быть выполнено над этапами способа, чтобы предоставить контроллеру возможность осуществлять одну и ту же функцию в качестве логического вентиля, переключателя, специализированной интегральной схемы, программируемого логического контроллера и встроенного микроконтроллера. Поэтому, контроллер может рассматриваться в качестве компонента аппаратных средств, а устройство, включенное в контроллер и выполненное с возможностью осуществлять различные функции, также может рассматриваться в качестве структуры в компоненте аппаратных средств. Или устройство, выполненное с возможностью осуществлять различные функции, может рассматриваться даже в качестве как программного модуля, реализующего способ, так и структуры в компоненте аппаратных средств.
Система, устройство, модуль или блок, проиллюстрированные в предыдущих вариантах осуществления, могут быть реализованы посредством использования компьютерной микросхемы или сущности, или могут быть реализованы посредством использования изделия, имеющего определенную функцию. Типичным устройством реализации является компьютер. Компьютером, например, может быть персональный компьютер, дорожный компьютер, сотовый телефон, телефон с камерой, смартфон, персональный цифровой секретарь, медиаплеер, навигационное устройство, устройство электронной почты, игровая консоль, планшетный компьютер, носимое устройство, или комбинация любых из этих устройств.
Ради легкости описания, устройство, приведенное выше, описано посредством разделения функций на различные блоки. Безусловно, когда настоящая заявка осуществляется, функции блоков могут быть реализованы в одном или более фрагментов программного обеспечения и/или аппаратных средств.
Специалист в данной области техники будет понимать, что вариант осуществления настоящего изобретения может быть предусмотрен в виде способа, системы или компьютерного программного продукта. Поэтому, настоящее изобретение может использовать форму исключительно аппаратных реализаций, исключительно программных реализаций или реализаций с комбинацией программного обеспечения и аппаратных средств. В дополнение, настоящее изобретение может использовать форму компьютерного программного продукта, который реализован на одном или более машинно-читаемых запоминающих носителей (в том числе, но не в качестве ограничения, дисковой памяти, CD-ROM, оптической памяти, и т. д.), которые заключают в себе используемую компьютером управляющую программу.
Настоящее изобретение описано со ссылкой на блок-схемы последовательности операций и/или структурные схемы способа, устройства (системы) и компьютерного программного продукта согласно реализациям настоящего изобретения. Следует понимать, что команды компьютерной программы могут использоваться для реализации каждого процесса и/или каждого блока на блок-схеме последовательности операций и/или структурных схемах, и комбинации процесса и/или блока на блок-схемах последовательности операций и/или структурных схемах. Эти команды компьютерной программы могут быть выполнены с возможностью, чтобы компьютер общего применения, специализированный компьютер, встроенный процессор или процессор другого программируемого устройства обработки данных формировал машину, так что команды, исполняемые компьютером или процессором другого программируемого устройства обработки данных формируют устройство для реализации заданной функции в одном или более процессов на блок-схемах последовательности операций и/или в одном или более блоков на структурных схемах.
Эти команды компьютерной программы могут храниться в машинно-читаемой памяти, которые могут инструктировать компьютер или другое программируемое устройство обработки данных работать определенным образом, так чтобы команды, хранимые в машинно-читаемой памяти, формировали искусственный объект, который включает в себя командоаппарат. Командоаппарат реализует конкретные функции в одном или более процессов на блок-схемах последовательности операций способа и/или в одном или более блоков на структурных схемах.
Эти команды компьютерной программы могут загружаться в компьютер или другое программируемое устройство обработки данных, так чтобы последовательности операций и действия, и этапы выполнялись на компьютере или другом программируемом устройстве, тем самым, порождая реализуемую компьютером обработку. Поэтому, команды, исполняемые на компьютере или другом программируемом устройстве, предусматривают этапы для реализации заданной функции в одном или более процессов на блок-схемах последовательности операций способа и/или в одном или более блоков на структурных схемах.
В типичной конфигурации, вычислительное устройство включает в себя один или более процессоров (ЦПУ, CPU), один или более интерфейсов ввода/вывода, один или более сетевых интерфейсов и одно или более устройств памяти.
Память может включать в себя непостоянную память, оперативное запоминающее устройство (ОЗУ, RAM), энергонезависимую память и/или другую форму, которые находятся на машинно-читаемом носителе, например, постоянное запоминающее устройство (ПЗУ, ROM) или флэш-память (ОЗУ на флэш-памяти). Память является примером машинно-читаемого носителя.
Машинно-читаемый носитель включает в себя постоянные, непостоянные, съемные и несъемные носители, которые могут хранить сообщения, пользуясь любыми способом или технологией. Сообщение может быть машинно-читаемой командой, структурой данных, программным модулем или другими данными. Примеры компьютерного запоминающего носителя включают в себя, но не в качестве ограничения, оперативное запоминающее устройство параметров (PRAM), статическое оперативное запоминающее устройство (SRAM), динамическое оперативное запоминающее устройство (DRAM) или другой тип оперативного запоминающего устройства (ОЗУ), постоянное запоминающее устройство (ПЗУ, ROM), электрически стираемое программируемое постоянное запоминающее устройство (ЭСППЗУ, EEPROM), флэш-память или другую технологию памяти, постоянное запоминающее устройство на компакт диске (CD-ROM), цифровой многофункциональный диск (DVD) или другое оптическое запоминающее устройство, магнитную кассету магнитную ленту, память на магнитной ленте/магнитном диске, или другое магнитное запоминающее устройство или любой другой не связанный с передачей носитель, который может использоваться для хранения сообщений, к которым может осуществлять доступ вычислительное устройство. На основании определения в настоящем описании изобретения, машинно-читаемые носители не включают в себя эфемерные машинно-читаемые носители (эфемерные носители), такие как модулированный сигнал данных и несущая.
Дополнительно стоит отметить, что термины «включает в себя», «содержит» или любые другие их варианты подразумеваются покрывающими неисключительное включение, так что процесс, способ, изделие или устройство, которые включают в себя список элементов, включают в себя не только такие элементы, но также включают в себя другие элементы, которые не перечислены в прямой форме, или дополнительно включают в себя элементы, присущие таким процессу, способу, изделию или устройству. Без дополнительных ограничений, элемент, предваренный выражением «включает в себя...», не исключает существования дополнительных идентичных элементов в процессе, способе, изделии или устройстве, которые включают в себя элемент.
Специалист в данной области техники будет понимать, что вариант осуществления настоящей заявки может быть предусмотрен в виде способа, системы или компьютерного программного продукта. Поэтому, настоящая заявка может использовать форму исключительно аппаратных реализаций, исключительно программных реализаций или реализаций с комбинацией программного обеспечения и аппаратных средств. В дополнение, настоящая заявка может использовать форму компьютерного программного продукта, который реализован на одном или более машинно-читаемых запоминающих носителей (в том числе, но не в качестве ограничения, дисковой памяти, CD-ROM, оптической памяти, и т. д.), которые заключают в себе используемую компьютером управляющую программу.
Настоящая заявка может быть описана в общем контексте машинно-исполняемых команд, исполняемых компьютером, например, программного модуля. Как правило, программный модуль включает в себя процедуру, программу, объект, компонент, структуру данных, и т. д., исполняющие конкретную задачу или реализующие конкретный абстрактный тип данных. Настоящая заявка также может быть осуществлена на практике в распределенных вычислительных средах. В распределенных вычислительных средах, задачи выполняются удаленными устройствами обработки, соединенными через сеть связи. В распределенной вычислительной среде, программный модуль может быть расположен на запоминающих носителях, в том числе, запоминающих устройствах как локального, так и удаленного компьютера.
Варианты осуществления в настоящей заявке описаны последовательным образом. Что касается идентичных или сходных частей вариантов осуществления, может быть сделана ссылка на варианты осуществления. Каждый вариант осуществления ставит в центре внимания отличие от других реализаций. В частности, вариант осуществления системы в основном аналогичен варианту осуществления способа, а потому, описан кратко. Что касается функционально сходных частей, может быть сделана ссылка на связанные описания в варианте осуществления способа.
Предыдущие варианты осуществления являются вариантами осуществления настоящей заявки и не подразумеваются ограничивающими настоящую заявку. Специалист в данной области техники может произвести различные модификации и изменения в отношении настоящей заявки. Любая модификация, эквивалентная замена или усовершенствование, произведенные, не отходя от сущности и принципа настоящей заявки, будут подпадать под объем формулы изобретения в настоящей заявке.

Claims (78)

1. Компьютерно-реализуемый способ для отправки информации о транзакциях, содержащий этапы, на которых:
получают, посредством первого узла консенсуса, информацию о транзакциях;
отправляют информацию о транзакциях на второй узел консенсуса;
получают уведомление о несостоятельности проверки консенсуса от второго узла консенсуса, при этом уведомление о несостоятельности проверки консенсуса содержит идентификатор информации у информации о транзакциях, при этом уведомление о несостоятельности проверки консенсуса указывает на то, что по меньшей мере часть информации о транзакциях отсутствует в совокупности транзакций второго узла и что проверка информации о транзакциях завершена неудачей;
в ответ на получение уведомления о несостоятельности проверки консенсуса определяют, хранит ли совокупность транзакций первого узла консенсуса информацию о транзакциях, которая соответствует идентификатору информации, содержащемуся в уведомлении о несостоятельности проверки консенсуса; и
в ответ на определение того, что совокупность транзакций первого узла консенсуса хранит информацию о транзакциях, которая соответствует идентификатору информации, содержащемуся в уведомлении о несостоятельности проверки консенсуса, повторно отправляют, посредством первого узла консенсуса, информацию о транзакциях, которая соответствует идентификатору информации, на второй узел консенсуса.
2. Компьютерно-реализуемый способ по п. 1, в котором получение, посредством первого узла консенсуса, информации о транзакциях состоит в том, что:
получают, посредством первого узла консенсуса, информацию о транзакциях, от клиентского устройства.
3. Компьютерно-реализуемый способ по п. 1, в котором отправка информации о транзакциях на второй узел консенсуса состоит в том, что:
создают порожденный поток операций для каждого другого узла консенсуса; и
отправляют информацию о транзакциях на второй узел консенсуса посредством порожденного потока операций.
4. Компьютерно-реализуемый способ по п. 3, в котором отправка информации о транзакциях на второй узел консенсуса посредством порожденного потока операций состоит в том, что:
повторно отправляют информацию о транзакциях на второй узел консенсуса посредством порожденного потока операций в ответ на определение того, что второму узлу консенсуса не удается принять информацию о транзакциях, до тех пор, пока не определено, что второй узел консенсуса принимает информацию о транзакциях, или удовлетворено предопределенное условие прекращения отправки.
5. Компьютерно-реализуемый способ по п. 4, в котором определение того, что второй узел консенсуса принимает информацию о транзакциях, состоит в том, что:
определяют, что второй узел консенсуса принимает информацию о транзакциях, в ответ на определение того, что ответный сигнал, возвращенный вторым узлом консенсуса, принят посредством порожденного потока операций в течение заданного периода времени; и
при этом определение того, что второму узлу консенсуса не удается принять информацию о транзакциях, содержит:
определение того, что второму узлу консенсуса не удается принять информацию о транзакциях в ответ на определение того, что не получен ответный сигнал, возвращенный вторым узлом консенсуса, посредством порожденного потока операций в течение заданного периода времени.
6. Компьютерно-реализуемый способ по п. 4, в котором предопределенное условие прекращения отправки состоит в том, что:
кратность отправки информации о транзакциях на второй узел консенсуса достигает предопределенной кратности; или
время, которое истекло после первого раза, когда информация о транзакциях была отправлена на второй узел консенсуса, превышает предопределенную длительность.
7. Компьютерно-реализуемый способ по п. 4, в котором, в ответ на определение того, что предопределенное условие прекращения отправки удовлетворено, способ также содержит этапы, на которых:
добавляют информацию о транзакциях в предопределенную очередь; и
при этом повторная отправка информации о транзакциях на второй узел консенсуса, основанная на уведомлении о несостоятельности проверки консенсуса, содержит:
поиск предопределенной очереди для информации о транзакциях, которая соответствует идентификатору информации у информации о транзакциях, содержащемуся в уведомлении о несостоятельности проверки консенсуса; и
отправку информацию о транзакциях на второй узел консенсуса.
8. Компьютерно-реализуемый способ по п. 1, содержащий также этапы, на которых:
получают, посредством второго узла консенсуса, предварительно обработанный блок от первого узла консенсуса;
выполняют проверку консенсуса предварительно обработанного блока, основываясь на информации о транзакциях, сохраненной в совокупности транзакций второго узла консенсуса, и информации о транзакциях, содержащейся в предварительно обработанном блоке;
в ответ на определение того, что по меньшей мере часть информации о транзакциях, содержащаяся в предварительно обработанном блоке, не существует в совокупности транзакций второго узла консенсуса, определяют, посредством второго узла консенсуса, идентификатор информации у информации о транзакциях, содержащийся в предварительно обработанном блоке; и
отправляют, посредством второго узла консенсуса, уведомление о несостоятельности проверки консенсуса на первый узел консенсуса, при этом уведомление о несостоятельности проверки консенсуса содержит идентификатор информации у информации о транзакциях.
9. Постоянный машиночитаемый носитель, содержащий одну или более инструкций, исполняемых компьютерной системой, для выполнения операций, содержащих:
получение, посредством первого узла консенсуса, информации о транзакциях;
отправление информации о транзакциях на второй узел консенсуса;
получение уведомления о несостоятельности проверки консенсуса от второго узла консенсуса, при этом уведомление о несостоятельности проверки консенсуса содержит идентификатор информации у информации о транзакциях, при этом уведомление о несостоятельности проверки консенсуса указывает на то, что по меньшей мере часть информации о транзакциях отсутствует в совокупности транзакций второго узла и что проверка информации о транзакциях завершена неудачей;
в ответ на получение уведомления о несостоятельности проверки консенсуса определение того, хранит ли совокупность транзакций первого узла консенсуса информацию о транзакциях, которая соответствует идентификатору информации, содержащемуся в уведомлении о несостоятельности проверки консенсуса; и
в ответ на определение того, что совокупность транзакций первого узла консенсуса хранит информацию о транзакциях, которая соответствует идентификатору информации, содержащемуся в уведомлении о несостоятельности проверки консенсуса, повторное отправление, посредством первого узла консенсуса, информации о транзакциях, которая соответствует идентификатору информации, на второй узел консенсуса.
10. Постоянный машиночитаемый носитель по п. 9, в котором отправка информации о транзакциях на второй узел консенсуса состоит в том, что:
создают порожденный поток операций для каждого другого узла консенсуса; и
отправляют информацию о транзакциях на второй узел консенсуса посредством порожденного потока операций.
11. Постоянный машиночитаемый носитель по п. 10, в котором отправка информации о транзакциях на второй узел консенсуса посредством порожденного потока операций состоит в том, что:
повторно отправляют информацию о транзакциях на второй узел консенсуса посредством порожденного потока операций в ответ на определение того, что второму узлу консенсуса не удается принять информацию о транзакциях, до тех пор, пока не определено, что второй узел консенсуса принимает информацию о транзакциях, или удовлетворено предопределенное условие прекращения отправки.
12. Постоянный машиночитаемый носитель по п. 11, в котором определение того, что второй узел консенсуса принимает информацию о транзакциях, состоит в том, что:
определяют, что второй узел консенсуса принимает информацию о транзакциях, в ответ на определение того, что ответный сигнал, возвращенный вторым узлом консенсуса, принят посредством порожденного потока операций в течение заданного периода времени; и
при этом определение того, что второму узлу консенсуса не удается принять информацию о транзакциях, содержит:
определение того, что второму узлу консенсуса не удается принять информацию о транзакциях в ответ на определение того, что не получен ответный сигнал, возвращенный вторым узлом консенсуса, посредством порожденного потока операций в течение заданного периода времени.
13. Постоянный машиночитаемый носитель по п. 11, в котором предопределенное условие прекращения отправки состоит в том, что:
кратность отправки информации о транзакциях на второй узел консенсуса достигает предопределенной кратности; или
время, которое истекло после первого раза, когда информация о транзакциях была отправлена на второй узел консенсуса, превышает предопределенную длительность.
14. Постоянный машиночитаемый носитель по п. 11, в котором, в ответ на определение того, что предопределенное условие прекращения отправки удовлетворено, операции также содержат:
добавление информации о транзакциях в предопределенную очередь; и
при этом повторная отправка информации о транзакциях на второй узел консенсуса, основанная на уведомлении о несостоятельности проверки консенсуса, содержит:
поиск предопределенной очереди для информации о транзакциях, которая соответствует идентификатору информации у информации о транзакциях, содержащемуся в уведомлении о несостоятельности проверки консенсуса; и
отправку информации о транзакциях на второй узел консенсуса.
15. Постоянный машиночитаемый носитель по п. 9, в котором операции также содержат:
получение, посредством второго узла консенсуса, предварительно обработанного блока от первого узла консенсуса;
выполнение проверки консенсуса предварительно обработанного блока, основываясь на информации о транзакциях, сохраненной в совокупности транзакций второго узла консенсуса, и информации о транзакциях, содержащейся в предварительно обработанном блоке;
в ответ на определение того, что по меньшей мере часть информации о транзакциях, содержащаяся в предварительно обработанном блоке, не существует в совокупности транзакций второго узла консенсуса, определение, посредством второго узла консенсуса, идентификатора информации у информации о транзакциях, содержащегося в предварительно обработанном блоке; и
отправку, посредством второго узла консенсуса, уведомления о несостоятельности проверки консенсуса, на первый узел консенсуса, при этом уведомление о несостоятельности проверки консенсуса содержит идентификатор информации у информации о транзакциях.
16. Компьютерно-реализуемая система, содержащая:
один или более компьютер;
одно или более компьютерных запоминающих устройств, соединенных с возможностью взаимодействия с одним или несколькими компьютерами и имеющих материальные, постоянные, машиночитаемые носители информации, хранящие одну или более инструкций, которые при исполнении одним или более компьютерами выполняют одну или более операций, содержащих:
получение, посредством первого узла консенсуса, информации о транзакциях;
отправление информации о транзакциях на второй узел консенсуса;
получение уведомления о несостоятельности проверки консенсуса от второго узла консенсуса, при этом уведомление о несостоятельности проверки консенсуса содержит идентификатор информации у информации о транзакциях, при этом уведомление о несостоятельности проверки консенсуса указывает на то, что по меньшей мере часть информации о транзакциях отсутствует в совокупности транзакций второго узла и что проверка информации о транзакциях завершена неудачей;
в ответ на получение уведомления о несостоятельности проверки консенсуса определение того, хранит ли совокупность транзакций первого узла консенсуса информацию о транзакциях, которая соответствует идентификатору информации, содержащемуся в уведомлении о несостоятельности проверки консенсуса; и
в ответ на определение того, что совокупность транзакций первого узла консенсуса хранит информацию о транзакциях, которая соответствует идентификатору информации, содержащемуся в уведомлении о несостоятельности проверки консенсуса, повторное отправление, посредством первого узла консенсуса, информации о транзакциях, которая соответствует идентификатору информации, на второй узел консенсуса.
17. Компьютерно-реализуемая система по п. 16, в которой отправка информации о транзакциях на второй узел консенсуса состоит в том, что:
создают порожденный поток операций для каждого другого узла консенсуса; и
отправляют информацию о транзакциях на второй узел консенсуса посредством порожденного потока операций.
18. Компьютерно-реализуемая система по п. 17, в котором отправка информации о транзакциях на второй узел консенсуса посредством порожденного потока операций состоит в том, что:
повторно отправляют информацию о транзакциях на второй узел консенсуса посредством порожденного потока операций в ответ на определение того, что второму узлу консенсуса не удается принять информацию о транзакциях, до тех пор, пока не определено, что второй узел консенсуса принимает информацию о транзакциях, или удовлетворено предопределенное условие прекращения отправки.
19. Компьютерно-реализуемая система по п. 18, в которой определение того, что второй узел консенсуса принимает информацию о транзакциях, состоит в том, что:
определяют, что второй узел консенсуса принимает информацию о транзакциях, в ответ на определение того, что ответный сигнал, возвращенный вторым узлом консенсуса, принят посредством порожденного потока операций в течение заданного периода времени; и
при этом определение того, что второму узлу консенсуса не удается принять информацию о транзакциях, содержит:
определение того, что второму узлу консенсуса не удается принять информацию о транзакциях в ответ на определение того, что не получен ответный сигнал, возвращенный вторым узлом консенсуса, посредством порожденного потока операций в течение заданного периода времени.
20. Компьютерно-реализуемая система по п. 18, в котором предопределенное условие прекращения отправки состоит в том, что:
кратность отправки информации о транзакциях на второй узел консенсуса достигает предопределенной кратности; или
время, которое истекло после первого раза, когда информация о транзакциях была отправлена на второй узел консенсуса, превышает предопределенную длительность.
RU2019119564A 2017-03-24 2018-03-19 Способ и устройство для отправки информации о транзакциях и для проверки консенсуса RU2735156C1 (ru)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201710181241.4 2017-03-24
CN201710181241.4A CN107392611B (zh) 2017-03-24 2017-03-24 一种发送交易信息和共识验证的方法及装置
PCT/CN2018/079439 WO2018171545A1 (zh) 2017-03-24 2018-03-19 一种发送交易信息和共识验证的方法及装置

Publications (1)

Publication Number Publication Date
RU2735156C1 true RU2735156C1 (ru) 2020-10-28

Family

ID=60338903

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2019119564A RU2735156C1 (ru) 2017-03-24 2018-03-19 Способ и устройство для отправки информации о транзакциях и для проверки консенсуса

Country Status (15)

Country Link
US (1) US10679217B2 (ru)
EP (1) EP3543937A4 (ru)
JP (1) JP6794551B2 (ru)
KR (1) KR102151899B1 (ru)
CN (2) CN111612468B (ru)
AU (1) AU2018240159B2 (ru)
BR (1) BR112019012905A2 (ru)
CA (1) CA3047884C (ru)
MX (1) MX2019007557A (ru)
PH (1) PH12019501470A1 (ru)
RU (1) RU2735156C1 (ru)
SG (1) SG10202107139RA (ru)
TW (1) TWI727120B (ru)
WO (1) WO2018171545A1 (ru)
ZA (1) ZA201904053B (ru)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111612468B (zh) 2017-03-24 2024-03-19 创新先进技术有限公司 一种发送交易信息和共识验证的方法及装置
CN108009824A (zh) * 2017-11-28 2018-05-08 北京博晨技术有限公司 数据共识方法、装置及电子设备
CN108537525B (zh) * 2018-03-09 2020-06-09 阿里巴巴集团控股有限公司 一种共识验证方法、装置及设备
CN108600163B (zh) * 2018-03-13 2020-12-15 南京邮电大学 一种云环境分布式哈希链架构及云数据完整性验证方法
GB2572340A (en) * 2018-03-26 2019-10-02 Fetch Ai Ltd Data processing system using directed acyclic graph and method of use thereof
CN108765150A (zh) * 2018-05-11 2018-11-06 中国联合网络通信集团有限公司 交易信息处理方法及存储节点
CN108665365B (zh) * 2018-05-16 2021-07-13 四川大学 一种混合区块链架构系统、处理方法及处理系统
CN108960604B (zh) * 2018-06-25 2021-06-29 山东大海集团有限公司 一种信息处理的方法、系统及装置
CN109191135A (zh) * 2018-08-27 2019-01-11 北京京东金融科技控股有限公司 基于区块链的交易重试方法、装置、设备及可读存储介质
CN109461079B (zh) * 2018-10-29 2022-04-05 众安信息技术服务有限公司 基于区块链的交易处理方法和装置
CN111182009B (zh) * 2018-11-09 2023-06-20 北京天德科技有限公司 一种区块链交易消息多汇点分发的方法
CN109639656B (zh) * 2018-12-03 2020-12-25 北京瑞卓喜投科技发展有限公司 一种区块链隐私数据传输方法及隐私数据传输系统
CN111353884B (zh) * 2018-12-20 2024-05-03 上海智知盾科技有限公司 区块链交易处理方法及系统
CN109831425B (zh) * 2019-01-25 2022-02-15 中国联合网络通信集团有限公司 区块链共识方法、装置、设备及计算机可读存储介质
CN110033271B (zh) * 2019-03-22 2023-12-22 湖南天河国云科技有限公司 一种跨链交易方法、系统及计算机可读存储介质
CN110570171B (zh) * 2019-09-11 2022-03-11 杭州秘猿科技有限公司 交易池节点同步方法、电子设备和计算机可读存储介质
CN110782255B (zh) * 2019-11-06 2022-11-15 杭州复杂美科技有限公司 延时交易取消方法、设备和存储介质
CN111064813B (zh) * 2020-03-16 2020-06-30 支付宝(杭州)信息技术有限公司 在区块链共识处理时进行处理消息同步的方法及装置
US11321149B1 (en) 2021-02-08 2022-05-03 Visa International Service Association Synchronization consensus token system and method
CN112883068A (zh) * 2021-04-30 2021-06-01 支付宝(杭州)信息技术有限公司 区块链交易执行方法、区块链节点及控制装置
CN113379542B (zh) * 2021-05-28 2024-01-09 中邮信息科技(北京)有限公司 一种区块链交易的查询方法、装置、介质及电子设备
CN113378240B (zh) * 2021-06-23 2023-03-28 浪潮云信息技术股份公司 一种基于区块链的同步调用用户身份认证方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2580086C2 (ru) * 2010-04-09 2016-04-10 Виза Интернэшнл Сервис Ассосиэйшн Система и способ надежной проверки достоверности транзакций
CN106372868A (zh) * 2016-09-06 2017-02-01 联动优势科技有限公司 一种对写入区块链的交易数据的验证方法和装置
CN106506146A (zh) * 2016-10-26 2017-03-15 北京瑞卓喜投科技发展有限公司 基于区块链技术的交易信息校验方法、装置及系统
US20170075941A1 (en) * 2016-11-28 2017-03-16 Keir Finlow-Bates Consensus system and method for adding data to a blockchain

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5819020A (en) * 1995-10-16 1998-10-06 Network Specialists, Inc. Real time backup system
US5931917A (en) * 1996-09-26 1999-08-03 Verifone, Inc. System, method and article of manufacture for a gateway system architecture with system administration information accessible from a browser
US7620680B1 (en) * 2002-08-15 2009-11-17 Microsoft Corporation Fast byzantine paxos
US20060235795A1 (en) 2005-04-19 2006-10-19 Microsoft Corporation Secure network commercial transactions
US11270298B2 (en) * 2014-04-14 2022-03-08 21, Inc. Digital currency mining circuitry
US11232415B2 (en) * 2015-05-28 2022-01-25 OX Labs Inc. Method for cryptographically managing title transactions
CN105488665A (zh) * 2015-11-25 2016-04-13 布比(北京)网络技术有限公司 一种去中心化的交易方法
CN105630609B (zh) 2016-02-24 2021-05-11 杭州复杂美科技有限公司 区块链的打包存储方法
CN106060036B (zh) * 2016-05-26 2019-07-16 布比(北京)网络技术有限公司 去中心化共识方法及装置
RU2649788C1 (ru) 2016-06-16 2018-04-04 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для обработки запроса на транзакцию в распределенных системах обработки данных
CN106445711B (zh) * 2016-08-28 2019-04-30 杭州云象网络技术有限公司 一种应用于区块链的拜占庭容错共识方法
CN106503589A (zh) * 2016-10-26 2017-03-15 北京瑞卓喜投科技发展有限公司 区块链交易信息正确性的校验方法、装置及系统
CN111612468B (zh) * 2017-03-24 2024-03-19 创新先进技术有限公司 一种发送交易信息和共识验证的方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2580086C2 (ru) * 2010-04-09 2016-04-10 Виза Интернэшнл Сервис Ассосиэйшн Система и способ надежной проверки достоверности транзакций
CN106372868A (zh) * 2016-09-06 2017-02-01 联动优势科技有限公司 一种对写入区块链的交易数据的验证方法和装置
CN106506146A (zh) * 2016-10-26 2017-03-15 北京瑞卓喜投科技发展有限公司 基于区块链技术的交易信息校验方法、装置及系统
US20170075941A1 (en) * 2016-11-28 2017-03-16 Keir Finlow-Bates Consensus system and method for adding data to a blockchain

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Bitcoin Core "Compact Blocks FAQ", опубл. 07.06.2016 на 7 страницах [найдено 23.09.2020], размещено в Интернет по адресу URL:https://bitcoincore.org/en/2016/06/07/compact-blocks-faq/. *

Also Published As

Publication number Publication date
TWI727120B (zh) 2021-05-11
US10679217B2 (en) 2020-06-09
CA3047884A1 (en) 2018-09-27
EP3543937A4 (en) 2019-12-04
CN111612468A (zh) 2020-09-01
WO2018171545A1 (zh) 2018-09-27
KR20190086747A (ko) 2019-07-23
US20190347663A1 (en) 2019-11-14
JP2020516973A (ja) 2020-06-11
CN107392611B (zh) 2020-04-24
SG10202107139RA (en) 2021-08-30
BR112019012905A2 (pt) 2019-12-03
TW201835831A (zh) 2018-10-01
JP6794551B2 (ja) 2020-12-02
CN107392611A (zh) 2017-11-24
PH12019501470A1 (en) 2020-02-24
EP3543937A1 (en) 2019-09-25
CA3047884C (en) 2021-01-19
MX2019007557A (es) 2019-09-06
AU2018240159B2 (en) 2021-02-04
ZA201904053B (en) 2021-01-27
AU2018240159A1 (en) 2019-07-11
CN111612468B (zh) 2024-03-19
KR102151899B1 (ko) 2020-09-03

Similar Documents

Publication Publication Date Title
RU2735156C1 (ru) Способ и устройство для отправки информации о транзакциях и для проверки консенсуса
KR102208186B1 (ko) 블록체인 합의 방법 및 디바이스
WO2018161901A1 (zh) 一种共识方法及装置
KR102340223B1 (ko) 블록체인 합의 방법 및 디바이스
KR102152556B1 (ko) 서비스 프로세싱 및 합의 방법 및 디바이스
EP3547170B1 (en) Blockchain-based consensus method and device
CN110622478B (zh) 数据同步处理的方法和装置
JP6557323B2 (ja) データベース障害時のデータ記憶
WO2017219857A1 (zh) 一种数据处理方法和设备
US9043283B2 (en) Opportunistic database duplex operations
CN108829498B (zh) 业务数据访问方法和装置
US11340967B2 (en) High availability events in a layered architecture
US10698770B1 (en) Regionally agnostic in-memory database arrangements with reconnection resiliency
US10102032B2 (en) Fast transitions for massively parallel computing applications
US20210240698A1 (en) Asynchronous remote calls with undo data structures
US20240137407A1 (en) Methods, apparatuses, and devices for lease transfer between master and slave replicas
CN110008010A (zh) 系统调用方法、装置、设备及可读存储介质
CN114356214B (zh) 一种针对kubernetes系统提供本地存储卷的方法及系统

Legal Events

Date Code Title Description
PC41 Official registration of the transfer of exclusive right

Effective date: 20210311

PC41 Official registration of the transfer of exclusive right

Effective date: 20210420