Есть ли способ сделать так, чтобы конкретная информация о блокчейне могла запрашиваться только одной конкретной учетной записью?
Просто хочу знать, есть ли способ сделать так, чтобы конкретная информация о блокчейне могла запрашиваться только одной конкретной учетной записью?
Точнее, я думаю, пусть пользователь помещает свою информацию в цепочку и предоставляет доступ к определенной учетной записи, чтобы только эта учетная запись могла запрашивать эту информацию из цепочки.
Я проверил ZK-SNARK, похоже, что этот алгоритм предназначен только для проверки правильности информации без знания каких-либо деталей информации. Похоже, в этом случае его нельзя использовать
1 ответ
Любые необработанные данные, размещенные в блокчейне, доступны каждому в сети. Это одно из основных требований, гарантирующих, что несколько распределенных и децентрализованных узлов смогут проверять общее состояние.
Однако данные, размещенные в цепочке, не обязательно должны быть "прозрачными" для каждого пользователя. Вы можете, например, зашифровать некоторые данные и поместить их в цепочку блоков. Конечно, каждый сможет увидеть ваши зашифрованные данные, но только с помощью ключа дешифрования они смогут понять их смысл.
Предполагая, что используемая вами цепочка блоков имеет встроенную криптографию с открытым ключом для аутентификации учетной записи, вы можете использовать закрытый ключ в качестве ключа шифрования / дешифрования. Таким образом, только "эта учетная запись" будет иметь доступ к этому файлу (... любой, кто знает закрытый ключ, соответствующий этой учетной записи).
Однако вся эта логика должна существовать вне сети. Если вы отправляете транзакцию с необработанными данными и ожидаете, что блокчейн выполнит шифрование / дешифрование за вас, любой, кто запускает узел, сможет увидеть эту транзакцию и ваши необработанные данные. Таким образом, он должен быть зашифрован, прежде чем попадет в цепочку блоков.