ИСПОЛЬЗОВАНИЕ ПРОТОКОЛОВ ВИРТУАЛЬНОГО БЛОКЧЕЙНА ДЛЯ РЕАЛИЗАЦИИ ДОБРОСОВЕСТНОГО ЭЛЕКТРОННОГО ОБМЕНА

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