Какой проверочный ключ используется для Стюарда в Инди - PullRequest
0 голосов
/ 28 марта 2019

Я просматривал документацию по началу работы Hyperledger Indy SDK.

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

  1. Что означает вызов в бухгалтерскую книгу для создания транзакции NYM?Разве это не означает, что парные DID должны были храниться в кошельке и не были обнародованы.

  2. Для какого ключа Стюарда Фабер запрашивает книгу, является ли он законным DID Стюардов илитот, который он создал для Фабера.

  3. Для случая, когда частные DID хранятся в кошельке.Как такая сущность, как Фабер, получает ключ шифрования сущности, отправляющей приглашение на соединение?

1 Ответ

2 голосов
/ 10 апреля 2019

Вопрос 1

Ваше заблуждение праведно, и то, на что вы указали, также смутило меня сейчас.Я обратился к сообществу Indy и узнал, что эта часть обучающего руководства немного устарела.Цитируя Стивена Керрана из канала Hyperledger Indy в RocketChat:

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

Чтобы подробнее узнать об открытых и парных DID:

Транзакция NYM напишите 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 друг друга на сеанс.

...