Устройство и способ хранения данных, проверки данных и связывания данных

Изобретение относится к вычислительной технике. Технический результат заключается в определении аутентичности данных в случае простой фальсификации данных. Способ хранения данных, в котором определяют первое значение проверки первой версии данных целевого объекта, сохраненного в базе данных, внешней по отношению к цепочке блоков, причем целевой объект содержит содержание данных множества версий данных, которые составляют первую версию данных и вторую версию данных, которая является смежной с первой версией; определяют идентификатор версии второй версии данных целевого объекта; осуществляют поиск в цепочке блоков существующего блока данных, записывающего идентификатор версии второй версии данных целевого объекта, и считывание второго значения проверки второй версии данных целевого объекта из существующего блока данных; создают новый блок данных на основании первого значения проверки и второго значения проверки и сохраняют новый блок данных в упомянутой цепочке блоков, при этом блок данных, хранящийся в цепочке блоков, является неизменяемым; сохраняют отношение отображения между идентификатором версии первой версии данных и идентификатором блока нового блока данных. 6 н. и 10 з.п. ф-лы, 9 ил., 2 табл.

 

По данной заявке испрашивается приоритет на основании Китайской заявки на патент с номером заявки 201610694496.6 и названием изобретения «Data Storage, Data Check, and Data Linkage Method and Apparatus», поданной 19 августа 2016 г., которая во всей своей полноте включена в данную заявку путем ссылки.

Область техники, к которой относится изобретение

Настоящая заявка относится к области техники обработки информации сети Интернет, в частности к устройству и способу хранения данных, аутентификации данных и отслеживания данных.

Уровень техники

В эпоху оцифрованной информации, данные более не являются холодными текстовыми записями, а являются информационными ресурсами, содержащими производственные ценности. Для того чтобы точно анализировать информационные ресурсы, содержащиеся в данных, требуется гарантировать аутентичность хранения данных, т.е., гарантировать то, что данные, хранящиеся в базе данных, являются исходными данными.

Под так называемым отслеживанием данных можно понимать запись развития информации и развития обработки содержания исходных данных на протяжении всего их жизненного цикла (от создания до распространения для исчезновения). Изучение исходных данных может отслеживать развитие исходных данных в течении всего их жизненного цикла и определять происхождение исходных данных. Это важно для поставщиков данных и инициаторов запроса данных.

В настоящее время поставщик данных хранит данные в базе данных, и хранит в базе данных содержание данных, которое должно быть сохранено, как, впрочем, и другую информацию, связанную с данными, которые должны быть сохранены (например, создатель данных, имели ли данные изменения версии, время создания данных). Когда инициатору запроса данных требуется получить данные из базы данных, поставщик данных будет предоставлять инициатору запроса данных цифровую подпись для осуществления доступа к данным, которые должны быть получены. Инициатор запроса данных получает данные, которые должны быть получены, из базы данных на основании этой цифровой подписи и проверяет аутентичность данных, которые должны быть получены.

Тем не менее, поставщики данных хранят данные в базе данных и большое число баз данных, используемых в настоящее время, имеют функцию модификации. Допустим, что поставщик данных обещает, что он будет предоставлять инициатору запроса данных данные версии A (цифровая подпись, соответствующая данным версии A, является A1), но по другим причинам поставщик данных предоставляет инициатору запроса данных данные версии B (но инициатор запроса данных не знает, являются ли полученные данные данными версии A или данными версии B), и цифровую подпись, полученную на основании версии B, которая является B1. Для того, чтобы заставить инициатора запроса данных поверить в то, что полученные данные являются данными версии A, поставщик данных может модифицировать цифровую подпись, соответствующую данным версии A, хранящуюся в базе данных, т.е. модифицировать цифровую подпись данных версии A на B1. Таким образом, когда инициатор запроса данных осуществляет проверку посредством использования B1, результатом проверки является подтверждение. Это заставляет инициатора запроса данных поверить в то, что полученные данные версии B являются данными версии A, которые он хочет получить, но в действительности данные, полученные инициатором запроса данных, не являются данными версии A, которые он хочет получить. В итоге результат анализа данных, который инициатор запроса данных получает на основании полученных данных версии B, имеет большое отклонение от ожидаемого результата, причиняя убыток инициатору запроса данных.

Подводя итог, способу хранения данных срочно требуется решить проблему неспособности определения аутентичности данных из-за простой фальсификации данных в текущих технологиях.

Сущность изобретения

В свете вышеупомянутого, варианты осуществления настоящей заявки предлагают устройство и способ хранения данных, аутентификации данных и отслеживания данных, чтобы решить проблему неспособности определения аутентичности данных из-за простой фальсификации данных в текущих технологиях.

Варианты осуществления настоящей заявки предоставляют способ хранения данных, содержащий этапы, на которых:

определяют первое значение проверки первой версии данных целевого объекта;

осуществляют поиск второго значения проверки второй версии данных целевого объекта, которая является смежной с первой версией данных;

создают блок данных на основании первого значения проверки и второго значения проверки и сохраняют блок данных в цепочке блоков (блокчейн), при этом блок данных, хранящийся в цепочке блоков, является неизменяемым.

Варианты осуществления настоящей заявки предоставляют устройство хранения данных, содержащее:

модуль определения, определяющее первое значение проверки первой версии данных целевого объекта;

модуль поиска, осуществляющий поиск второго значения проверки второй версии данных целевого объекта, которая является смежной с первой версией данных;

модуль хранения, создающий блок данных на основании первого значения проверки и второго значения проверки и сохраняющий блок данных в цепочке блоков, при этом блок данных, хранящийся в цепочке блоков, является неизменяемым.

По меньшей мере одно из упомянутых выше технических решений, используемое вариантами осуществления настоящей заявки, может достигать следующего полезного эффекта:

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

Варианты осуществления настоящей заявки дополнительно предоставляют способ аутентификации данных, содержащий этапы, на которых:

принимают запрос аутентификации данных, причем запрос аутентификации данных содержит идентификатор версии у версии данных для данных, которые должны быть аутентифицированы, и значение проверки, полученное на основании содержания данных у данных, которые должны быть аутентифицированы;

на основании идентификатора версии у версии данных, содержащегося в запросе аутентификации данных, осуществляют поиск в цепочке блоков предварительно сохраненного значения проверки, соответствующего идентификатору версии у версии данных;

на основании принятого значения проверки, содержащегося в запросе аутентификации данных, и значения проверки, полученного через поиск, осуществляют аутентификацию содержания данных у данных, которые должны быть аутентифицированы.

Варианты осуществления настоящей заявки дополнительно предоставляют устройство аутентификации данных, содержащее:

модуль приема, принимающий запрос аутентификации данных, причем запрос аутентификации данных содержит идентификатор версии у версии данных для данных, которые должны быть аутентифицированы, и значение проверки, полученное на основании содержания данных у данных, которые должны быть аутентифицированы;

модуль поиска, осуществляющий поиск в цепочке блоков на основании идентификатора версии у версии данных, содержащегося в запросе аутентификации данных, предварительно сохраненного значения проверки, соответствующего идентификатору версии у версии данных;

модуль аутентификации, аутентифицирующий содержания данных у данных, которые должны быть аутентифицированы, на основании принятого значения проверки, содержащегося в запросе аутентификации данных, и значения проверки, полученного через поиск.

По меньшей мере одно из упомянутых выше технических решений, используемое вариантами осуществления настоящей заявки, может достигать следующего полезного эффекта:

посредством приема запроса аутентификации данных, который содержит идентификатор версии у версии данных для данных, которые должны быть аутентифицированы, и значение проверки, полученное на основании содержания данных у данных, которые должны быть аутентифицированы; на основании идентификатора версии у версии данных, содержащегося в запросе аутентификации данных, поиска в цепочке блоков предварительно сохраненного значения проверки, соответствующего идентификатору версии у версии данных; на основании принятого значения проверки, содержащегося в запросе аутентификации данных, и значения проверки, полученного через поиск, аутентификации содержания данных у данных, которые должны быть аутентифицированы. Поскольку цепочка блоков имеет свойство быть неизменяемой, предварительно сохраненное значение проверки, полученное из цепочки блоков, которое соответствует идентификатору версии у версии данных, является аутентичным. Аутентичное значение проверки используется чтобы проверять, были ли данные, которые должны быть аутентифицированы, в запросе аутентификации данных, фальсифицированы, тем самым гарантируя аутентичность данных, которые должны быть аутентифицированы.

Варианты осуществления настоящей заявки дополнительно предоставляют способ отслеживания данных, содержащий этапы, на которых:

принимают запрос отслеживания в обратном порядке данных, причем запрос отслеживания в обратном порядке данных содержит идентификатор версии первой версии данных у данных, которые должны быть отслежены в обратном порядке;

на основании идентификатора версии первой версии данных, осуществляют поиск в цепочке блоков блока данных, содержащего идентификатор версии первой версии данных, и получают из блока данных идентификатор версии второй версии данных смежной с первой версией данных;

на основании полученного идентификатора версии второй версии данных последовательно отслеживают в обратном порядке и получают блок данных, содержащий идентификатор версии исходной версии данных, которые должны быть отслежены в обратном порядке;

на основании блока данных определяют содержание данных, соответствующее исходной версии данных, которые должны быть отслежены в обратном порядке.

Варианты осуществления настоящей заявки дополнительно предоставляют устройство отслеживания данных, содержащее:

модуль приема, принимающий запрос отслеживания в обратном порядке данных, причем запрос отслеживания в обратном порядке данных содержит идентификатор версии первой версии данных у данных, которые должны быть отслежены в обратном порядке;

модуль отслеживания в обратном порядке, осуществляющий поиск в цепочке блоков на основании идентификатора версии первой версии данных, блока данных, содержащего идентификатор версии первой версии данных, и получающий из блока данных идентификатор версии второй версии данных смежной с первой версией данных; на основании полученного идентификатора версии второй версии данных, осуществляющий последовательное отслеживание в обратном порядке, чтобы получить блок данных, содержащий идентификатор версии исходной версии данных, которые должны быть отслежены в обратном порядке;

модуль определения, определяющий содержание данных, соответствующее исходной версии данных, которые должны быть отслежены в обратном порядке, на основании блока данных.

По меньшей мере одно из упомянутых выше технических решений, используемое вариантами осуществления настоящей заявки, может достигать следующего полезного эффекта:

посредством приема запроса отслеживания в обратном порядке данных, причем запрос отслеживания в обратном порядке данных содержит идентификатор версии первой версии данных у данных, которые должны быть отслежены в обратном порядке; на основании идентификатора версии первой версии данных, поиска в цепочке блоков блока данных, содержащего идентификатор версии первой версии данных, и получения из блока данных идентификатора версии второй версии данных смежной с первой версией данных; на основании полученного идентификатора версии второй версии данных, последовательного отслеживания в обратном порядке чтобы получить блок данных, содержащий идентификатор версии исходной версии данных, которые должны быть отслежены в обратном порядке; на основании блока данных, определения содержания данных, соответствующего исходной версии данных, которые должны быть отслежены в обратном порядке. Поскольку как идентификатор версии первой версии данных целевого объекта, так и идентификатор версии второй версии данных смежной с первой версии данных, хранятся в форме блока данных в цепочке блоков, и поскольку цепочка блоков имеет свойство быть неизменяемой и использует структуру связанных данных, можно осуществить отслеживание в обратном порядка и найти развитые версии данных, которые должны быть отслежены в обратном порядке, как, впрочем, и содержание данных, соответствующее каждой развитой версии, и гарантировать аутентичность развития данных.

Краткое описание чертежей

Чертежи, описываемые в данном документе, предназначены для обеспечения дополнительного понимания настоящей заявки и составляют часть данной заявки, и примерные варианты осуществления настоящей заявки и их описания предназначены для объяснения настоящей заявки, а не для ограничения настоящей заявки. На чертежах:

Фиг. 1 является блок-схемой способа хранения данных в соответствии с некоторыми вариантами осуществления настоящей заявки.

Фиг. 2 является структурной схемой блоков данных, созданных в различных блоках в цепочке блоков.

Фиг. 3 является блок-схемой способа аутентификации данных в соответствии с некоторыми вариантами осуществления настоящей заявки.

Фиг. 4 является принципиальной схемой сценария способа аутентификации данных в соответствии с некоторыми вариантами осуществления настоящей заявки.

Фиг. 5 является блок-схемой способа отслеживания данных в соответствии с некоторыми вариантами осуществления настоящей заявки.

Фиг. 6 является принципиальной схемой сценария способа отслеживания данных в соответствии с некоторыми вариантами осуществления настоящей заявки.

Фиг. 7 является структурной схемой устройства хранения данных в соответствии с некоторыми вариантами осуществления настоящей заявки.

Фиг. 8 является структурной схемой устройства аутентификации данных в соответствии с некоторыми вариантами осуществления настоящей заявки.

Фиг. 9 является структурной схемой устройства отслеживания данных в соответствии с некоторыми вариантами осуществления настоящей заявки.

Подробное описание

Для достижения целей настоящей заявки варианты осуществления настоящей заявки предоставляют устройство и способ хранения данных, аутентификации данных и отслеживания данных, хранящее первое значение проверки у первой версии данных целевого объекта в цепочке блоков в форме блока данных. Поскольку цепочка блоков имеет свойство быть неизменяемой, то когда инициатор запроса данных получает содержание данных, соответствующее первой версии данных у целевого объекта, он может проверить на основании первого значения проверки, хранящегося в цепочке блоков, было ли модифицировано содержание данных, соответствующее первой версии данных, тем самым определяя аутентичность содержания данных, соответствующего первой версии данных, эффективно решая проблему невозможности определения аутентичности содержания данных из-за простой модификации содержания данных, и повышая эффективность анализа данных у инициатора запроса данных.

Следует отметить, что цепочку блоков, записываемую в вариантах осуществления настоящей заявки, можно понимать, как надежную базу данных, и надежная база данных является базой данных сходной с не-реляционной базой данных. В сравнении с обычной базой данных, надежная база данных обладает следующим отличием: надежная база данных отличается тем, что является децентрализованной и без доверия. Так называемая децентрализованная означает, что система основана на цепочке блоков, причем отсутствует централизованное аппаратное обеспечение или орган администрирования, права и обязательства между любыми узлами системы являются равными, и повреждение или потеря любого узла не будет затрагивать работу всей системы.

Так называемая без доверия означает, что участие в обмене данными между любыми узлами всей системы не требует взаимного доверия, причем правила работы всей системы являются открытыми и прозрачными, и содержание данных всей системы также является открытым, так что в рамках диапазона правил и времен, установленных системой, ни один узел не может или не имеет возможности обмануть другие узлы.

Технические решения, записанные в вариантах осуществления настоящей заявки, предлагают структуру данных (впоследствии она может именоваться «блоком данных»). Данная структура данных содержит заголовок данных и тело данных. Заголовок данных хранит значение проверки текущей версии данных целевого объекта и значение проверки предыдущей версии данных смежной с текущей версией данных, чтобы способствовать последующему отслеживанию данных целевого объекта. Тело данных может хранить содержание данных целевого объекта, соответствующее текущей версии данных, и может хранить другое содержание. Никакого ограничения здесь не установлено. Таким образом, посредством этой структуры данных и цепочки блоков, гарантируется целостность и аутентичность целевого объекта и его развитий.

Технические решения настоящей заявки теперь будут четко и полностью описаны посредством обращения к вариантам осуществления и сопроводительным чертежам настоящей заявки. Очевидно, что описанные варианты осуществления являются только некоторыми и не всеми из вариантов осуществления настоящей заявки. На основании вариантов осуществления в настоящей заявке все прочие варианты осуществления, полученные специалистами в соответствующей области техники без приложения творческих усилий, должны находиться в рамках объема настоящей заявки.

Ниже технические решения в соответствии с вариантами осуществления настоящей заявки описываются подробно посредством обращения к сопроводительным чертежам.

Вариант 1 осуществления

Фиг. 1 является блок-схемой способа хранения данных в соответствии с некоторыми вариантами осуществления настоящей заявки. Способ может осуществляться, как показано ниже.

Этап 101: определение первого значения проверки первой версии данных целевого объекта.

В вариантах осуществления настоящей заявки целевым объектом здесь могут быть данные в любой форме. Это может быть бланком делового документа, рукописью книги или исходным кодом программного обеспечения; или это может быть набором картинок, фрагментом музыки или видео. Никакого ограничения здесь не установлено.

Версии данных целевого объекта здесь могут относиться к разному содержанию данных, развитому и сгенерированному в течение всего жизненного цикла целевого объекта. Идентификатор может быть установлен для каждого фрагмента содержания данных. Данный идентификатор может именоваться идентификатором версии у версии данных.

Например: Применительно к видео каждая часть видео (или каждый сезон) может именоваться версией данных. Предполагая, что первая часть видео A соответствует версии 1.0 данных, тогда в процессе развития вторая часть видео A соответствует версии 2.0 данных, третья часть видео A соответствует версии 3.0 данных, …, Nая часть видео A соответствует версии n.0 данных.

В качестве другого примера: Применительно к прикладному программному обеспечению множество версий прикладного программного обеспечения может появляться в соответствии с потребностями разработки. Предположим, что версии прикладного программного обеспечения в процессе развития прикладного программного обеспечения включают в себя версию 1.0, версию 1.0.1, версию 1.0.1.1, версию 2.0, версию 2.0.1, ….

Первой версией данных целевого объекта в вариантах осуществления настоящей заявки может именоваться текущая версия данных целевого объекта. Взяв вышеупомянутое прикладное программное обеспечение в качестве примера, номером версии, соответствующим первой версии данных, является 2.0.1.

Например, в вариантах осуществления настоящей заявки, способы для определения первого значения проверки первой версии данных целевого объекта, включают в себя, без ограничения, следующий способ.

Во-первых, определение сводки содержания данных целевого объекта в первой версии данных; во-вторых, вычисление первого значения проверки первой версии данных целевого объекта в соответствии с предварительно установленным алгоритмом и сводкой содержания данных.

Например, описание выполнено посредством использования примера исходного кода программного обеспечения в качестве целевого объекта. Определяется сводка содержания данных текущей версии исходного кода программного обеспечения. Затем используется хеш-алгоритм, чтобы обработать сводку содержания данных, чтобы получить хешированное значение текущей версии исходного кода программного обеспечения (здесь оно также может упоминаться как первое значение проверки).

Следует отметить, что предварительно установленный алгоритм может быть хеш-алгоритмом, или может быть любым другим (например: SHA-1) алгоритмом. Никакого ограничения здесь не установлено.

Этап 102: поиск второго значения проверки второй версии данных целевого объекта, которая является смежной с первой версией данных.

Вторая версия данных целевого объекта в вариантах осуществления настоящей заявки может относиться к предыдущей версии данных смежной с текущей версией данных целевого объекта. Взяв вышеупомянутое прикладное программное обеспечение в качестве примера, номером версии, соответствующим второй версии данных, является 2.0.

Например, определяется идентификатор версии второй версии данных смежной с первой версией данных целевого объекта;

осуществляется поиск блока данных, записывающего идентификатор версии второй версии данных, в цепочке блоков, и второе значение проверки второй версии данных целевого объекта считывается из блока данных.

Следует отметить, что если текущей версией данных целевого объекта является исходная версия данных (например: версия 1.0 прикладного программного обеспечения), то так как отсутствует предыдущая версия данных смежная с первой версией данных, отсутствует необходимость поиска записанного второго значения проверки на Этапе 102.

Кроме того, после определения идентификатора версии второй версии данных смежной с первой версией данных целевого объекта, можно обратиться к записанному на Этапе 101 способу для определения первого значения проверки, чтобы получить второе значение проверки. Здесь следует отметить, что если второе значение проверки получается в соответствии со способом для определения первого значения проверки, как записано на Этапе 101, требуется гарантировать то, что содержание данных второй версии данных смежной с первой версией данных целевого объекта не было фальсифицировано.

Или осуществляется поиск блока данных, записывающего идентификатор версии второй версии данных в цепочке блоков, затем сводка содержания данных второй версии данных целевого объекта считывается из блока данных, и затем второе значение проверки получается посредством обращения к способу для определения первого значения проверки, как записано на Этапе 101.

Этап 103: создание блока данных на основании первого значения проверки и второго значения проверки.

На Этапе 103 после получения первого значения проверки и второго значения проверки целевого объекта, блок данных создается на основании первого значения проверки и второго значения проверки.

Например, созданный блок данных содержит заголовок данных и тело данных.

Первое значение проверки и второе значение проверки записываются в заголовке данных блока данных в соответствии с предварительно установленным форматом.

Таблица 1 является схематичной таблицей значений проверки, записанных в заголовке данных блока данных.

Таблица 1

Заголовок данных
Первое значение проверки: 1234567890ZXCV
Второе значение проверки: null
Метка времени: XXXX год YYYY месяц ZZZZ день 10:00:00

Из Таблицы 1 может быть видно, что меткой времени генерирования является: XXXX год YYYY месяц ZZZZ день 10:00:00, первым значением проверки, записанным в блоке данных, является 1234567890ZXCV, и вторым значением проверки является null. Таким образом может быть видно, что блок данных является исходными данными целевого объекта (например: данными), т.е. это происхождение данных целевого объекта.

Опционально, так как первое значение проверки/второе значение проверки целевого объекта получается посредством необратимого алгоритма, разные версии данных целевого объекта получают разные проверочные значения посредством вычисления, т.е., первое значение проверки/второе значение проверки целевого объекта является уникальным.

Таблица 2 является схематичной таблицей значений проверки, записанных в заголовке данных блока данных.

Таблица 2

Заголовок данных
Первое значение проверки: !@#¥%......&*()ASDF
Второе значение проверки: 1234567890ZXCV
Метка времени: MMMM год NNNN месяц ZZZZ день 14:00:00

Из Таблицы 2 может быть видно, что меткой времени генерирования блока данных является: MMMM год NNNN месяц ZZZZ день 14:00:00, первым значением проверки, записанным в блоке данных, является !@#¥%......&*()ASDF, и вторым значением проверки является 1234567890ZXCV. Таким образом может быть видно, что так как второе значение проверки в Таблице 2 является точно таким же как первое значение проверки в Таблице 1, версия данных, соответствующая блоку данных, показанному в Таблице 1, является предыдущей версией данных смежной с версией данных, соответствующей блоку данных, как показано в Таблице 2.

Следует отметить, что заголовок данных также может хранить идентификаторы двух смежных версий данных, т.е., идентификатор версии первой версии данных и идентификатор версии второй версии данных.

Опционально в дополнение к заголовку данных созданный блок данных также содержит тело данных. Сводка содержания данных целевого объекта в первой версии данных или второе значение проверки или содержание данных первой версии данных целевого объекта могут быть записаны в теле данных блока данных.

Фиг. 2 является структурной схемой блоков данных, созданных в различных блоках в цепочке блоков.

Из Фиг. 2 может быть видно, что блок 1 данных, блок 2 данных и блок 3 данных соответствуют одному и тому же целевому объекту. В теле данных блока 1 данных хранится сводка содержания данных текущей версии данных/смежной предыдущей версии данных. В теле данных блока 2 данных хранится значение проверки текущей версии данных/смежной предыдущей версии данных. В теле данных блока 3 данных хранится содержание данных текущей версии данных/смежной предыдущей версии данных.

В другом варианте осуществления настоящей заявки содержание данных целевого объекта может хранится в блоке данных, и оно также может быть сохранено в облачном шлюзе данных или базе данных.

Следует отметить, что когда объем данных у содержания данных является небольшим подход блока 3 данных может быть выбран с приоритетом в качестве хранилища содержания данных.

Например, содержание данных первой версии данных целевого объекта хранится в облачном шлюзе данных или базе данных.

Следует отметить, что тело данных у блока данных может хранить не только содержание, описанное выше, но также может записывать цифровую подпись целевого объекта, которая предоставляется поставщиком данных с тем, чтобы способствовать тому, чтобы инициатор запроса данных аутентифицировал подлинность поставщика данных. Тело данных также может записывать время создания блока данных и прочую релевантную информацию, идентификатор версии у версии данных и т.д. Никакого ограничения здесь не установлено.

Этап 104: сохранение блока данных в цепочке блоков.

Здесь блок данных, сохраняемый в цепочке данных, является неизменяемым.

На Этапе 104 блок данных добавляется в цепочку блоков в соответствии со структурой связанных данных.

Например, вновь созданный блок данных добавляется к хвостовой части блока данных, который был соединен с цепочкой данных.

В другом варианте осуществления настоящей заявки после сохранения блока данных в цепочке блоков, способ дополнительно содержит:

сохранения отношения отображения между идентификатором версии первой версии данных целевого объекта и идентификатором блока у блока данных.

в качестве альтернативы сохранение отношения отображения между идентификатором версии первой версии данных целевого объекта и идентификатором блока у блока данных.

Следует отметить, что в вариантах осуществления настоящей заявки сохранение блока данных в цепочке блоков также может упоминаться как исполнение операции добавления блока данных в цепочку блоков с тем, чтобы сохранять его в цепочке блоков.

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

Вариант 2 осуществления

На основании той же самой концепции изобретения Фиг. 3 является блок-схемой способа аутентификации данных в соответствии с некоторыми вариантами осуществления настоящей заявки. Способ может осуществляться, как показано ниже.

Этап 301: прием запроса аутентификации данных.

Запрос аутентификации данных содержит идентификатор версии у версии данных для данных, которые должны быть аутентифицированы, и значение проверки, полученное на основании содержания данных у данных, которые должны быть аутентифицированы.

На Этапе 301 исполнительным агентом вариантов осуществления настоящей заявки может быть цепочка блоков, или им может быть другое устройство. Никакого ограничения здесь не установлено.

Например, когда инициатор запроса данных принимает данные, предоставленные поставщиком данных, он может рассматривать предоставленные данные в качестве данных, которые должны быть аутентифицированы, определять идентификатор версии у версии данных для данных, которые должны быть аутентифицированы, и получать посредством вычисления значение проверки у данных, которые должны быть аутентифицированы, на основании полученного содержания данных у данных, которые должны быть аутентифицированы.

В данном случае для того, чтобы гарантировать то, что принятые данные, которые должны быть аутентифицированы, являются аутентичными, инициатор запроса данных отправляет запрос аутентификации данных цепочке блоков, чтобы проверять, были ли фальсифицированы данные, предоставленные поставщиком данных.

Этап 302: на основании идентификатора версии у версии данных, содержащегося в запросе аутентификации данных, поиск в цепочке блоков предварительно сохраненного значения проверки, соответствующего идентификатору версии у версии данных.

На Этапе 302 так как блок данных генерируется во время сохранения целевого объекта и блок данных сохраняется в цепочке блоков, отношение отображения между идентификатором версии первой версии данных целевого объекта и идентификатором блок у блока данных сохраняется, когда блок данных сохраняется в цепочке блоков.

Когда принимается запрос аутентификации данных, идентификатор блока у блока данных, соответствующего идентификатору версии у версии данных, содержащемуся в запросе аутентификации данных, определяется на основании предварительно сохраненных отношений отображения между идентификаторами версии у версий данных, идентификатором единицу у блока данных и идентификаторами блока у блоков.

Значение проверки, соответствующее идентификатору версии у версии данных, считывается из блока данных, соответствующего идентификатору блока.

Следует отметить, что значение проверки, соответствующее идентификатору версии у версии данных, полученное на Этапе 302, генерируется во время сохранения целевого объекта и сохраняется в цепочке блоков так, что значение проверки, полученное через поиск, является аутентичным.

Этап 303: на основании принятого значения проверки, содержащегося в запросе аутентификации данных, и значения проверки, полученного через поиск, аутентификация содержания данных у данных, которые должны быть аутентифицированы.

На Этапе 303, принятое значение проверки, содержащееся в запросе аутентификации, сравнивается со значением проверки, полученным через поиск.

Когда принятое значение проверки, содержащееся в запросе аутентификации данных, является точно таким же как значение проверки, полученное через поиск, определяется что содержание данных у данных, которые должны быть аутентифицированы, является аутентичным.

Когда принятое значение проверки, содержащееся в запросе аутентификации данных, отличается от значения проверки, полученного через поиск, определяется что содержание данных у данных, которые должны быть аутентифицированы, было модифицировано.

Посредством технических решений, предоставленных вариантами осуществления настоящей заявки, принимается запрос аутентификации данных, содержащий идентификатор версии у версии данных для данных, которые должны быть аутентифицированы, и значение проверки, полученное на основании содержания данных у данных, которые должны быть аутентифицированы; на основании идентификатора версии у версии данных, содержащегося в запросе аутентификации данных, осуществляется поиск предварительно сохраненного значения проверки, соответствующего идентификатору версии у версии данных, в цепочке блоков; на основании принятого значения проверки, содержащегося в запросе аутентификации данных, и значения проверки, полученного через поиск, осуществляется аутентификация содержания данных у данных, которые должны быть аутентифицированы. Поскольку цепочка блоков имеет свойство быть неизменяемой, предварительно сохраненное значение проверки в цепочке блоков, которое получено через поиск и соответствующее идентификатору версии у версии данных, является аутентичным. Аутентичное значение проверки используется, чтобы проверять, были ли фальсифицированы данные, которые должны быть аутентифицированы, в запросе аутентификации данных, тем самым гарантируя аутентичность данных, которые должны быть аутентифицированы.

Фиг. 4 является принципиальной схемой сценария способа аутентификации данных в соответствии с некоторыми вариантами осуществления настоящей заявки.

Из Фиг. 4 может быть видно, что цепочка блоков содержит множество узлов данных. Эти узлы данных могут принимать запросы аутентификации данных, отправленные разными пользователями. Поиск соответствующей информации о данных осуществляется в цепочке данных на основании информации о данных, которая переносится в запросе аутентификации данных (здесь она может относиться к значению проверки). На основании принятой информации о данных и информации о данных полученной через поиск осуществляется аутентификация данных, которые должны быть аутентифицированы, в запросе аутентификации данных, чтобы гарантировать то, что инициатор запроса данных может получить аутентичные и действительные данные.

Вариант 3 осуществления

Фиг. 5 является блок-схемой способа отслеживания данных в соответствии с некоторыми вариантами осуществления настоящей заявки. Способ может осуществляться, как показано ниже.

Этап 501: прием запроса отслеживания в обратном порядке данных.

Запрос отслеживания данных в обратном порядке содержит идентификатор версии первой версии данных у данных, которые должны быть отслежены в обратном порядке.

На Этапе 501, когда требуется осуществить поиск по процессу развития или истории развития целевого объекта, могут быть инициированы операции вариантов осуществления настоящей заявки, т.е., отправка запроса отслеживания в обратном порядке данных. Запрос отслеживания в обратном порядке данных содержит идентификатор версии первой версии данных у данных, которые должны быть отслежены в обратном порядке.

Здесь идентификатор версии первой версии данных может быть идентификатором версии текущей версии данных, или он может быть идентификатором версии любой версии данных. Никакого ограничения здесь не установлено.

Здесь идентификатор версии первой версии данных используется, чтобы определять начальную точку для отслеживания в обратном порядке данных, которые должны быть отслежены. Например: прикладное программное обеспечение с текущей версией данных, соответствующей 3.0. Как только инициируется запрос отслеживания в обратном порядке, идентификатором версии у версии данных, который переносится в запросе отслеживания в обратном порядке, может быть 3.0 или может быть 2.0 и т.д. Никакого ограничения здесь не установлено.

Этап 502: на основании идентификатора версии первой версии данных, поиск в цепочке блоков блока данных, содержащего идентификатор версии первой версии данных, и получение из блока данных идентификатора версии второй версии данных смежной с первой версией данных.

На Этапе 502 так как блок данных хранит не только идентификатор версии первой версии данных, но также хранит идентификатор версии предыдущей второй версии данных смежного с идентификатором версии первой версии данных, то блок данных, содержащий идентификатор версии первой версии данных, может быть получен на основании идентификатора версии первой версии данных, и идентификатор версии предыдущей второй версии данных смежный с идентификатором версии первой версии данных получается из блока данных.

Этап 503: на основании полученного идентификатора версии второй версии данных последовательное отслеживание в обратном порядке и получение блока данных, содержащего идентификатор версии исходной версии данных, которые должны быть отслежены в обратном порядке.

На Этапе 503 полученный идентификатор версии второй версии данных выбирается в качестве начальной точки и в свою очередь отслеживается в обратном порядке посредством способа, описанного на Этапе 502, чтобы найти блок данных, содержащий идентификатор версии исходной версии данных, которые должны быть отслежены в обратном порядке.

Например, на основании полученного идентификатора версии у версии данных следующие операции исполняются до тех пор, пока не получат блок данных, содержащий идентификатор версии исходной версии данных, которые должны быть отслежены в обратном порядке:

поиск в цепочке блоков блока данных, содержащего идентификатор версии полученной версии данных, и получение из блока данных идентификатора версии предыдущей версии данных, смежной с полученной версией данных;

инициирование циклического исполнения вышеупомянутой операции до тех пор, пока не получат блок данных, содержащий идентификатор версии исходной версии данных, которые должны быть отслежены в обратном порядке.

Следует отметить, что здесь полученный идентификатор версии у версии данных может быть идентификатором версии любой версии данных за исключением первой версии данных.

Этап 504: на основании блока данных определение содержания данных, соответствующего исходной версии данных, которые должны быть отслежены в обратном порядке.

Следует отметить, что в вариантах осуществления настоящей заявки всякий раз, когда получают идентификатор версии у версии данных, может быть определено содержание данных, соответствующее версии данных. Таким образом процесс развития данных, которые должны быть отслежены в обратном порядке, может быть проанализирован на основании полученного контента данных, чтобы достоверно и эффективно анализировать производственные ценности, содержащиеся в данных, которые должны быть отслежены в обратном порядке.

Посредством технических решений вариантов осуществления настоящей заявки принимается запрос отслеживания в обратном порядке данных, который содержит идентификатор версии первой версии данных у данных, которые должны быть отслежены в обратном порядке; на основании идентификатора версии первой версии данных осуществляется поиск блока данных, содержащего идентификатор версии первой версии данных, в цепочке блоков, и идентификатор версии второй версии данных смежной с первой версией данных получается из блока данных; на основании полученного идентификатора версии второй версии данных выполняется последовательное отслеживание в обратном порядке и получают блок данных, содержащий идентификатор версии исходной версии данных, которые должны быть отслежены; на основании блока данных определяется содержание данных, соответствующее исходной версии данных, которые должны быть отслежены в обратном порядке. Поскольку как идентификатор версии первой версии данных целевого объекта, так и идентификатор версии второй версии данных смежной с первой версией данных хранятся в форме блока данных в цепочке блоков, и поскольку цепочка блоков имеет свойство быть неизменяемой и использует структуру связанных данных, можно отследить в обратном порядке и найти развитые версии данных, которые должны быть отслежены в обратном порядке, как, впрочем, и содержание данных, соответствующее каждой развитой версии, и гарантировать аутентичность развития данных.

Фиг. 6 является принципиальной схемой сценария способа отслеживания данных в соответствии с некоторыми вариантами осуществления настоящей заявки.

Из Фиг. 6 может быть видно, что цепочка блоков использует структуру связанных данных. Когда определяется один из блоков данных, другие блоки данных, ассоциированные с блоком данных, могут быть получены в соответствии со свойствами структуры связанных данных, тем самым достигая цели отслеживания происхождения данных и между тем гарантируя то, что полученная информация является аутентичной.

Предположим, что присутствует пять блоков данных, соответствующих целевому объекту. Присутствуют блок 1 данных, блок 2 данных, блок 3 данных, блок 4 данных и блок 5 данных. Здесь в качестве примера взяты блоки данных, хранящие идентификаторы версии у версий данных.

Идентификаторами версии у версий данных, хранящимися в блоке 5 данных, являются 5.0 и 4.0. Идентификаторами версии у версий данных, хранящимися в блоке 4 данных, являются 4.0 и 3.0. Идентификаторами версии у версий данных, хранящимися в блоке 3 данных, являются 3.0 и 2.0. Идентификаторами версии у версий данных, хранящимися в блоке 2 данных, являются 2.0 и 1.0. Идентификатором версии у версии данных, хранящимся в блоке 1 данных, является 1.0. Во время отслеживания данных сначала определяется блок 5 данных, вслед за ним блок 4 данных, блок 3 данных и блок 2 данных, и наконец блок 1 данных. Таким образом полностью может быть достигнута цель отслеживания данных.

Вариант 4 осуществления

На основании той же самой концепции изобретения Фиг. 7 является структурной схемой устройства хранения данных в соответствии с некоторыми вариантами осуществления настоящей заявки. Устройство хранения данных содержит: модуль 71 определения, модуль 72 поиска и модуль хранения. Здесь:

модуль 71 определения определяет первое значение проверки первой версии данных целевого объекта;

модуль 72 поиска осуществляет поиск второго значения проверки второй версии данных целевого объекта, которая является смежной с первой версией данных;

модуль 73 хранения создает на основании первого значения проверки и второго значения проверки блок данных и сохраняет блок данных в цепочке блоков, при этом блок данных, хранящийся в цепочке блоков, является неизменяемым.

В другом варианте осуществления настоящей заявки модуль 71 определения, определяющий первое значение проверки первой версии данных целевого объекта, содержит:

определение сводки содержания данных целевого объекта в первой версии данных;

в соответствии с предварительно установленным алгоритмом и сводкой содержания данных, вычисление, чтобы получить первое значение проверки первой версии данных целевого объекта.

В другом варианте осуществления настоящей заявки модуль 72 хранения, создающий блок данных на основании первого значения проверки и второго значения проверки, содержит:

создание блока данных и запись первого значения проверки и второго значения проверки в заголовке данных блока данных в соответствии с предварительно установленным форматом.

В другом варианте осуществления настоящей заявки устройство хранения данных дополнительно содержит: модуль 74 записи. Здесь:

модуль 74 записи записывает сводку содержания данных целевого объекта в первой версии данных или второе значение проверки или содержимое данных первой версии данных целевого объекта в тело данных блока данных.

В другом варианте осуществления настоящей заявки модуль 72 хранения сохраняет содержимое данных первой версии данных целевого объекта в облачном шлюзе данных или базе данных.

В другом варианте осуществления настоящей заявки модуль 72 хранения сохраняет отношение отображения между идентификатором версии первой версии данных целевого объекта и идентификатором блока у блока данных после сохранения блока данных в блоке цепочки блоков.

В другом варианте осуществления настоящей заявки модуль 72 хранения, сохраняющий блок данных в цепочке блоков, содержит:

в соответствии со структурой связанных данных, добавление блока данных в цепочку блоков.

Следует отметить, что устройство хранения данных в соответствии с вариантами осуществления настоящей заявки может быть выполнено посредством аппаратного обеспечения или программного обеспечения. Никакого ограничения здесь не установлено. Устройство хранения данных сохраняет первое значение проверки первой версии данных целевого объекта в форме блока данных в цепочке блоков. Поскольку цепочка блоков имеет свойство быть неизменяемой, то когда инициатор запроса данных получает содержание данных, соответствующее первой версии данных целевого объекта, он может проверить на основании первого значения проверки, хранящегося в цепочке блоков, было ли модифицировано содержание данных, соответствующее первой версии данных, тем самым определяя аутентичность содержания данных, соответствующего первой версии данных, эффективно решая проблему невозможности определения аутентичности содержания данных из-за простой модификации содержания данных, и увеличивая эффективность анализа данных у инициатора запроса данных.

Вариант 5 осуществления

Фиг. 8 является структурной схемой устройства аутентификации данных в соответствии с некоторыми вариантами осуществления настоящей заявки. Устройство аутентификации данных содержит: модуль 81 приема, модуль 82 поиска и модуль 83 аутентификации. Здесь:

модуль 81 приема принимает запрос аутентификации данных, содержащий идентификатор версии у версии данных для данных, которые должны быть аутентифицированы, и значение проверки, полученное на основании содержания данных у данных, которые должны быть аутентифицированы;

модуль 82 поиска осуществляет поиск в цепочке блоков на основании идентификатора версии у версии данных, содержащегося в запросе аутентификации данных, предварительно сохраненного значения проверки, соответствующего идентификатору версии у версии данных;

модуль 83 аутентификации аутентифицирует содержание данных у данных, которые должны быть аутентифицированы, на основании принятого значения проверки, содержащегося в запросе аутентификации данных, и значения проверки, полученного через поиск.

В другом варианте осуществления настоящей заявки модуль 83 аутентификации, аутентифицирующий содержание данных у данных, которые должны быть аутентифицированы, на основании принятого значения проверки, содержащегося в запросе аутентификации данных, и значения проверки, полученного через поиск, содержит:

когда принятое значение проверки, содержащееся в запросе аутентификации данных, является точно таким же как значение проверки, полученное через поиск, определение того, что содержание данных у данных, которые должны быть аутентифицированы, является аутентичным;

когда принятое значение проверки, содержащееся в запросе аутентификации данных, отличается от значения проверки, полученного через поиск, определения того, что содержание данных у данных, которые должны быть аутентифицированы, было модифицировано.

В другом варианте осуществления настоящей заявки модуль 82 поиска, осуществляющий поиск в цепочке блоков на основании идентификатора версии у версии данных, содержащегося в запросе аутентификации данных, предварительно сохраненного значения проверки, соответствующего идентификатору версии у версии данных, содержит:

на основании предварительно сохраненного отношения отображения между идентификаторами версии у версий данных и идентификаторами блока у блоков данных, определение идентификатора блока у блока данных, соответствующего идентификатору версии у версии данных в запросе аутентификации данных;

считывание значения проверки, соответствующего идентификатору версии у версии данных из определенного блока данных, соответствующего идентификатору блока.

Следует отметить, что устройство аутентификации данных в соответствии с вариантом осуществления настоящей заявки может быть выполнено посредством аппаратного обеспечения или программного обеспечения. Никакого ограничения здесь не установлено. Поскольку цепочка блоков имеет свойство быть неизменяемой, предварительно сохраненное значение проверки в отношении которого осуществляется поиск в цепочке блоков, которое соответствует идентификатору версии у версии данных, является аутентичным. Аутентичное значение проверки используется, чтобы проверять, были ли сфальсифицированы данные, которые должны быть аутентифицированы, в запросе аутентификации данных, тем самым гарантируя аутентичность данных, которые должны быть аутентифицированы.

Вариант 6 осуществления

Фиг. 9 является структурной схемой устройства отслеживания данных в соответствии с некоторыми вариантами осуществления настоящей заявки. Устройство отслеживания данных содержит: модуль 91 приема, модуль 92 отслеживания в обратном порядке, и модуль 93 определения. Здесь:

модуль 91 приема принимает запрос отслеживания в обратном порядке данных, причем запрос отслеживания в обратном порядке данных содержит идентификатор версии первой версии данных у данных, которые должны быть отслежены в обратном порядке;

модуль 92 отслеживания в обратном порядке осуществляет поиск в цепочке блоков на основании идентификатора версии первой версии данных, блока данных, содержащего идентификатор версии первой версии данных, и получает из блока данных идентификатор версии второй версии данных смежной с первой версией данных; на основании полученного идентификатора версии второй версии данных он выполняет последовательное отслеживание в обратном порядке и получает блок данных, содержащий идентификатор версии исходной версии данных, которые должны быть отслежены в обратном порядке;

модуль 93 определения определяет содержание данных, соответствующее исходной версии данных, которые должны быть отслежены в обратном порядке, на основании блока данных.

В другом варианте осуществления настоящей заявки модуль 92 отслеживания в обратном порядке на основании полученного идентификатора версии второй версии данных, выполняющий последовательное отслеживание в обратном порядке чтобы получить блок данных, содержащий идентификатор версии исходной версии данных, которые должны быть отслежены в обратном порядке, содержит:

на основании полученного идентификатора версии у версии данных, исполнение следующей операции до тех пор, пока не получат блок данных, содержащий идентификатор версии исходной версии данных, которые должны быть отслежены в обратном порядке:

поиск в цепочке блоков блока данных, содержащего идентификатор версии полученной версии данных и получение из блока данных идентификатора версии предыдущей версии данных смежной с полученной версией данных;

инициирование циклического исполнения вышеупомянутой операции до тех пор, пока не получат блок данных, содержащий идентификатор версии исходной версии данных, которые должны быть отслежены в обратном порядке.

Следует отметить, что устройство отслеживания данных в соответствии с вариантами осуществления настоящей заявки может быть выполнено посредством аппаратного обеспечения или программного обеспечения. Никакого ограничения здесь не установлено. Поскольку как идентификатор версии первой версии данных целевого объекта, так и идентификатор версии второй версии данных, смежной с первой версией данных хранятся в форме блока данных в цепочке блоков, и поскольку цепочка блоков имеет свойство быть неизменяемой и использует структуру связанных данных, можно отследить в обратном порядке и найти развитые версии данных, которые должны быть отслежены в обратном порядке, как, впрочем, и содержание данных, соответствующее каждой развитой версии, и гарантировать аутентичность развития данных.

Специалисты в соответствующей области техники должны понимать, что варианты осуществления настоящей заявки могут быть предоставлены в качестве способов, систем или компьютерных программных продуктов так, что настоящая заявка может принимать варианты осуществления в форме чисто программного обеспечения, чисто аппаратного обеспечения или сочетания программного обеспечения и аппаратного обеспечения. Кроме того, настоящая заявка может принимать форму компьютерного программного продукта, реализованного на одном или множестве используемых компьютером запоминающих носителях информации (включая, но не ограничиваясь, дисковую память, CD-ROM и оптическую память), которые содержат используемые компьютером коды программы.

Настоящая заявка описана посредством обращения к блок-схемам и/или структурным схемам способов, устройств (систем) и компьютерных программных продуктов в соответствии с вариантами осуществления настоящей заявки. Следует понимать, что каждый поток и/или блок в блок-схемах и/или структурных схемах и сочетания потоков и/или блоков в блок-схемах и/или структурных схемах могут быть достигнуты посредством инструкций компьютерной программы. Эти инструкции компьютерной программы могут быть предоставлены процессору компьютера общего назначения, компьютера особого назначения, встроенному процессору или другому программируемому оборудованию обработки данных, чтобы генерировать машину с тем, чтобы посредством инструкций, исполняемых процессором компьютера или другого программируемого оборудования обработки данных, генерировалось устройство для достижения функций, назначенных в одном или более потоках в блок-схемах и/или одном или более блоках в структурных схемах.

Эти инструкции компьютерной программы также могут быть сохранены в компьютерно-читаемой памяти, которая может указывать компьютеру или другому программируемому оборудованию обработки данных работать особым образом так, что инструкции, хранящиеся в компьютерно-читаемой памяти, генерируют продукт, содержащий устройство инструкций. Устройство инструкций добивается функций, назначенных в одном или множестве потоков в блок-схемах и/или одном или множество блоках в структурных схемах.

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

В типичной конфигурации, вычислительное оборудование содержит один или множество процессоров (CPU), интерфейсы I/O, сетевые интерфейсы или внутренние памяти.

Внутренняя память может быть в форме энергозависимой памяти, памяти с произвольным доступом (RAM) и/или энергонезависимой памяти, такой как постоянная память (ROM) или флэш-память (флэш-ROM) в компьютерно-читаемых носителях информации. Внутренняя память является примером компьютерно-читаемых носителей информации.

Компьютерно-читаемые носители информации включают в себя энергонезависимые, энергозависимые, перемещаемые или неперемещаемые носители информации и могут обеспечивать хранение информации посредством любого способа или технологии. Информация может быть компьютерно-читаемыми инструкциями, структурами данных, модулями программы или другими данными. Примеры компьютерных запоминающих носителей информации включают в себя, без ограничения, память с произвольным доступом на основе фазовых переходов (PRAM), статическую память с произвольным доступом (SRAM), динамическую память с произвольным доступом (DRAM) или другие типы памяти с произвольным доступом (RAM), постоянную память, электрически стираемую программируемую постоянную память (EEPROM), флэш-память или другие технологии памяти, постоянную память на компакт-диске (CD-ROM), цифровой видео диск (DVD) или другую оптическую память, магнитную ленту кассетного типа, память диска с лентой или другие магнитные запоминающие устройства или любые другие носители информации без переноса. Они могут быть использованы, чтобы хранить информацию, которая является доступной для компьютерных устройств. В соответствии с определением в данном документе компьютерно-читаемые носители информации не включают в себя временные носители информации, такие как модулированные сигналы данных и несущие.

Дополнительно следует отметить, что предполагается, что понятия «включать в себя», «вмещать», «содержать» или их варианты охватывают неисключительное включение так, что процесс, способ, предмет потребления или оборудование, включающие в себя ряд элементов, включают в себя не только эти элементы, но также включают в себя другие элементы, которые четко не указаны, или также включают в себя элементы, которые являются неотъемлемыми для такого процесса, способа, предмета потребления или оборудования. При условии, что иным образом не ограничено, элементы, определенные выражением «включающий в себя одно…», не исключают присутствие других сходных элементов в процессе, способе предмете потребления или оборудовании, включающем в себя элементы.

Специалисты в соответствующей области техники должны понимать, что варианты осуществления настоящей заявки могут быть предоставлены в качестве способов, систем или компьютерных программных продуктов так, что настоящая заявка может принимать варианты осуществления в форме чисто программного обеспечения, чисто аппаратного обеспечения или сочетания программного обеспечения и аппаратного обеспечения. Кроме того, настоящая заявка может принимать форму компьютерного программного продукта, реализованного на одном или множестве используемых компьютером запоминающих носителях информации (включая, но не ограничиваясь, дисковую память, CD-ROM и оптическую память), которые содержат используемые компьютером коды программы.

Вышеупомянутые описания являются вариантами осуществления настоящей заявки и не подразумевается, что они ограничивают настоящую заявку. Для специалиста в соответствующей области техники настоящая заявка может иметь различные изменения и модификации. Все модификации, эквивалентные замены и улучшения, выполненные, не отступая от сущности и принципов настоящей заявки, должны лежать в рамках объема формулы изобретения настоящей заявки.

1. Способ хранения данных, при этом способ содержит этапы, на которых:

определяют первое значение проверки первой версии данных целевого объекта, сохраненного в базе данных, внешней по отношению к цепочке блоков, причем целевой объект содержит содержание данных множества версий данных, которые составляют первую версию данных и вторую версию данных, которая является смежной с первой версией;

определяют идентификатор версии второй версии данных целевого объекта;

осуществляют поиск в цепочке блоков существующего блока данных, записывающего идентификатор версии второй версии данных целевого объекта, и считывание второго значения проверки второй версии данных целевого объекта из существующего блока данных;

создают новый блок данных на основании первого значения проверки и второго значения проверки и сохраняют новый блок данных в упомянутой цепочке блоков, при этом блок данных, хранящийся в цепочке блоков, является неизменяемым;

сохраняют отношение отображения между идентификатором версии первой версии данных и идентификатором блока нового блока данных.

2. Способ хранения данных по п. 1, в котором этап, на котором определяют первое значение проверки первой версии данных целевого объекта, содержит этапы, на которых:

определяют сводку содержания данных целевого объекта в первой версии данных;

вычисляют первое значение проверки первой версии данных целевого объекта в соответствии с предварительно установленным алгоритмом и сводкой содержания данных.

3. Способ хранения по п. 1, в котором этап, на котором создают новый блок данных на основании первого значения проверки и второго значения проверки, содержит этап, на котором:

создают новый блок данных и записывают первое значение проверки и второе значение проверки в заголовок данных нового блока данных в соответствии с предварительно установленным форматом.

4. Способ хранения данных по п. 3, при этом способ дополнительно содержит этап, на котором:

записывают сводку содержания данных целевого объекта в первой версии данных или второе значение проверки или содержание данных первой версии данных целевого объекта в тело данных нового блока данных.

5. Способ хранения данных по любому из пп. 1-4, в котором этап, на котором сохраняют блок данных в упомянутой цепочке блоков, содержит этап, на котором:

в соответствии со структурой связанных данных добавляют блок данных в цепочку блоков.

6. Способ аутентификации данных, при этом способ содержит этапы, на которых:

принимают запрос аутентификации данных, причем запрос аутентификации данных содержит идентификатор версии у версии данных для данных, которые должны быть аутентифицированы, и значение проверки, полученное на основании содержания данных у данных, которые должны быть аутентифицированы, причем данные ассоциированы с целевым объектом, сохраненным внешне по отношению к цепочке блоков;

определяют, на основании предварительно сохраненных отношений отображения между множеством идентификаторов версии у версий данных целевого объекта и множеством идентификаторов блоков у блоков данных в цепочке блоков, идентификатор блока, соответствующий идентификатору версии у версии данных для данных, которые должны быть аутентифицированы;

получают, из цепочки блоков, блок данных, соответствующий определенному идентификатору блока;

считывают из блока данных, соответствующего определенному идентификатору блока, значение проверки, соответствующее идентификатору версии у версии данных, которые должны быть аутентифицированы;

на основании принятого значения проверки, содержащегося в запросе аутентификации данных, и значения проверки, считанного из блока данных, соответствующего определенному идентификатору блока, осуществляют аутентификацию содержания данных у данных, которые должны быть аутентифицированы.

7. Способ аутентификации по п. 6, в котором этап, на котором на основании принятого значения проверки, содержащегося в запросе аутентификации данных, и значения проверки, считанного из блока данных, соответствующего определенному идентификатору блока, осуществляют аутентификацию содержания данных у данных, которые должны быть аутентифицированы, содержит этапы, на которых:

когда принятое значение проверки, содержащееся в запросе аутентификации данных, является точно таким же, как значение проверки, считанное из блока данных, соответствующего определенному идентификатору блока, определяют, что содержание данных у данных, которые должны быть аутентифицированы, является аутентичным;

когда принятое значение проверки, содержащееся в запросе аутентификации данных, отличается от значения проверки, считанного из блока данных, соответствующего определенному идентификатору блока, определяют, что содержание данных у данных, которые должны быть аутентифицированы, было модифицировано.

8. Способ отслеживания данных, содержащий этапы, на которых:

принимают запрос отслеживания в обратном порядке данных, причем запрос отслеживания в обратном порядке данных содержит идентификатор версии первой версии данных у данных, которые должны быть отслежены в обратном порядке, причем данные ассоциированы с целевым объектом, сохраненным внешне по отношению к цепочке блоков;

на основании идентификатора версии первой версии данных, получают, из цепочки блоков, идентификаторы версии множества версий данных и множества блоков путем установки идентификатора версии первой версии данных в качестве идентификатора начальной версии и путем выполнения следующих операций до тех пор, пока не будет получен блок данных, содержащий идентификатор версии исходной версии данных, которые должны быть отслежены в обратном порядке:

поиска в цепочке блоков блока данных, содержащего идентификатор начальной версии,

получения из блока данных идентификатора версии для версии данных, предшествующей начальной версии данных, и

установки идентификатора начальной версии в качестве полученного идентификатора версии; и

на основании блока данных, содержащего идентификатор версии исходной версии данных, которые должны быть отслежены в обратном порядке, определяют содержание данных, соответствующее исходной версии данных, которые должны быть отслежены в обратном порядке.

9. Устройство хранения данных, при этом устройство содержит:

модуль определения, определяющий первое значение проверки первой версии данных целевого объекта, сохраненного в базе данных, внешней по отношению к цепочке блоков, причем целевой объект содержит содержание данных множества версий данных, которые составляют первую версию данных и вторую версию данных, которая является смежной с первой версией, и определяющий идентификатор версии второй версии данных целевого объекта;

модуль поиска, осуществляющий поиск в цепочке блоков существующего блока данных, записывающего идентификатор версии второй версии данных целевого объекта, и считывание второго значения проверки второй версии данных целевого объекта из существующего блока данных;

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

10. Устройство хранения по п. 9, в котором модуль определения, определяющий первое значение проверки первой версии данных целевого объекта, содержит:

определение сводки содержания данных целевого объекта в первой версии данных;

вычисление первого значения проверки первой версии данных целевого объекта в соответствии с предварительно установленным алгоритмом и сводкой содержания данных.

11. Устройство хранения данных по п. 9, в котором модуль хранения, создающий новый блок данных на основании первого значения проверки и второго значения проверки, содержит:

создание нового блока данных и запись первого значения проверки и второго значения проверки в заголовке данных нового блока данных в соответствии с предварительно установленным форматом.

12. Устройство хранения данных по п. 11, при этом устройство хранения данных дополнительно содержит: модуль записи, при этом:

модуль записи записывает сводку содержания данных целевого объекта в первой версии данных или второе значение проверки или содержимое данных первой версии данных целевого объекта в тело данных нового блока данных.

13. Устройство хранения данных по любому из пп. 9-12, в котором модуль хранения, сохраняющий блок данных в упомянутой цепочке блоков, содержит:

в соответствии со структурой связанных данных, добавление блока данных в цепочку блоков.

14. Устройство аутентификации данных, при этом устройство содержит:

модуль приема, принимающий запрос аутентификации данных, причем запрос аутентификации данных содержит идентификатор версии у версии данных для данных, которые должны быть аутентифицированы, и значение проверки, полученное на основании содержания данных у данных, которые должны быть аутентифицированы, причем данные ассоциированы с целевым объектом, сохраненным внешне по отношению к цепочке блоков;

модуль определения, определяющий, на основании предварительно сохраненных отношений отображения между множеством идентификаторов версии у версий данных целевого объекта и множеством идентификаторов блоков у блоков данных в цепочке блоков, идентификатор блока, соответствующий идентификатору версии у версии данных для данных, которые должны быть аутентифицированы;

модуль получения, получающий из цепочки блоков, блок данных, соответствующий определенному идентификатору блока;

модуль считывания, считывающий из блока данных, соответствующего определенному идентификатору блока, значение проверки, соответствующее идентификатору версии у версии данных, которые должны быть аутентифицированы;

модуль аутентификации, осуществляющий аутентификацию содержания данных у данных, которые должны быть аутентифицированы, на основании принятого значения проверки, содержащегося в запросе аутентификации данных, и значения проверки, считанного из блока данных, соответствующего определенному идентификатору блока.

15. Устройство аутентификации данных по п. 14, в котором модуль аутентификации, аутентифицирующий содержание данных у данных, которые должны быть аутентифицированы, на основании принятого значения проверки, содержащегося в запросе аутентификации данных, и значения проверки, считанного из блока данных, соответствующего определенному идентификатору блока, содержит:

когда принятое значение проверки, содержащееся в запросе аутентификации данных, является точно таким же, как значение проверки, считанное из блока данных, соответствующего определенному идентификатору блока, определение того, что содержание данных у данных, которые должны быть аутентифицированы, является аутентичным;

когда принятое значение проверки, содержащееся в запросе аутентификации данных, отличается от значения проверки, считанного из блока данных, соответствующего определенному идентификатору блока, определение того, что содержание данных у данных, которые должны быть аутентифицированы, было модифицировано.

16. Устройство отслеживания данных, при этом устройство содержит:

модуль приема, принимающий запрос отслеживания в обратном порядке данных, причем запрос отслеживания в обратном порядке данных содержит идентификатор версии первой версии данных у данных, которые должны быть отслежены в обратном порядке, причем данные ассоциированы с целевым объектом, сохраненным внешне по отношению к цепочке блоков;

модуль отслеживания в обратном порядке, осуществляющий, на основании идентификатора версии первой версии данных, получение, из цепочки блоков, идентификаторов версии множества версий данных и множества блоков путем установки идентификатора версии первой версии данных в качестве идентификатора начальной версии и путем выполнения следующих операций до тех пор, пока не будет получен блок данных, содержащий идентификатор версии исходной версии данных, которые должны быть отслежены в обратном порядке:

поиска в цепочке блоков блока данных, содержащего идентификатор начальной версии,

получения из блока данных идентификатора версии для версии данных, предшествующей начальной версии данных, и

установки идентификатора начальной версии в качестве полученного идентификатора версии; и

модуль определения, определяющий содержание данных, соответствующее исходной версии данных, которые должны быть отслежены в обратном порядке, на основании блока данных, содержащего идентификатор версии исходной версии данных, которые должны быть отслежены в обратном порядке.



 

Похожие патенты:

Группа изобретений относится к поисковым системам и может быть использована для хранения множества документов, предназначенных для формирования поисковыми системами результатов поиска.

Изобретение относится к области информационной безопасности. Технический результат заключается в сокращении времени и необходимых вычислительных ресурсов при сканировании элементов сетевой архитектуры.

Изобретение относится к способу и серверу повторного обучения алгоритма машинного обучения (MLA). Технический результат заключается в повышении эффективности обучения MLA за счет выполнения повторного обучения.

Изобретение относится к нефтегазодобывающей промышленности и может быть использовано для обнаружения поступления в нефтедобывающую скважину закачиваемой с целью заводнения воды и определения ее относительного содержания в попутно добываемых водах и продукции упомянутой скважины.

Изобретение относится к вычислительной технике. Технический результат заключается в обеспечении вывода нужной информации в соответствии с составом группы пассажиров.

Изобретение относится к вычислительной технике. Технический результат заключается в определении вредоносной активности по анализу поведения объектов в неизолированной среде.

Изобретение относится к вычислительной технике. Технический результат заключается в обеспечении противодействия сложным атакам на сетевую инфраструктуру.

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

Изобретение относится к области обработки закодированной информации. Технический результат заключается в повышении защиты персональных данных пользователя.

Изобретение относится к области вычислительной техники. Технический результат заключается в обеспечении возможности автоматического заполнения страницы входа на веб-сайт при обеспечении защиты конфиденциальности пользователя.
Наверх