Какой проверочный ключ используется для Стюарда в Инди
Я изучал документацию по началу работы с Hyperledger Indy SDK.
Шаг 4 проходит процесс регистрации новых членов через стюарда. В частности, у меня есть три широких запроса для процедуры, изложенной в документации.
Что означает вызов в бухгалтерскую книгу для создания транзакции NYM? Разве это не то, что парные DID должны были храниться в кошельке и не были обнародованы.
Для какого ключа Стюарда Faber запрашивает книгу, является ли он юридическим идентификатором Stewards или тем, который он создал для Faber.
Для случая частных DID хранятся в кошельке. Как такая сущность, как Фабер, получает ключ шифрования сущности, отправляющей приглашение на соединение?
1 ответ
Вопрос 1
Ваше заблуждение праведно, и то, на что вы указали, также смутило меня сейчас. Я обратился к сообществу Indy и узнал, что эта часть обучающего руководства немного устарела. Цитирую Стивена Керрана из канала RocketChat от Hyperledger Indy:
Концепция парного DID не была достаточно детализирована, поэтому все DID в коде записывались в книгу.
Для более подробной информации о публичных и парных DID:
NYM Transaction записывает DID со связанным Verkey (публичной частью пары ключей). Однако вы должны различать публичные DID и парные DID.
Public DID - это идентификатор, который вы публикуете там, чтобы все знали. Если вы являетесь учреждением, вы хотите иметь такой идентификатор. Люди / их устройства могут затем использовать его для установления первоначального безопасного соединения с учреждением.
Pairwise DID - это DID, который идентифицирует безопасный канал, который вы установили с кем-то. Например, если вы связались с учреждением, используя его общедоступный DID, они сгенерируют парный DID (пара ключей и DID-идентификатор) для разговора с вами. Вы также должны сгенерировать парный DID для идентификации соединения с ними (и для шифрования связи с использованием ключей, связанных с парным DID)
вопрос 2
- Я думаю, что вы имеете в виду шаг 10:
Фабер спрашивает в главной книге ключ подтверждения DID стюарда, вызывая did.key_for_did.
Итак, здесь Фабер читает DID Стюарда и связанный с ним ключ (открытый ключ) из книги. Затем Фабер использует этот ключ для шифрования сообщения - сообщение не может быть дешифровано кем-либо, кроме Стюарда, владельца частной части этого ключа.
Вопрос 3
Вот как обычно устанавливаются соединения:
Предполагается, что установлен какой-то безопасный канал, по которому одна сторона получает приглашение на соединение от другой. Вы можете получить, например, приглашение через HTTPS или просто сотрудником банка, предоставив вам QR-код, содержащий приглашение на подключение от банка. При создании сообщения приглашения на соединение приглашающая сторона генерирует парный DID с verkey. Это включено в сообщение о приглашении, поэтому, если вы получили это приглашение, доставленное любым способом, можно с уверенностью сказать, что вы можете отправлять зашифрованные сообщения приглашающей стороне. На этом этапе вы сгенерируете свои парные DID и Verkey для этого соединения и отправите эти данные приглашающему. К этому моменту вы установили безопасное соединение, потому что вы оба безопасно обменяли парные DID /Verkeys друг друга на сеанс.