Руководство по созданию кошелька и ключей для разработки

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

Кошелек — хранилище для пары ключей — публичного (общедоступного) и личного (закрытого). Личный ключ хранится в зашифрованном виде и используется для подписания транзакций. Доступ к кошельку осуществляется из командной строки с помощью приложения cleos.

Важное

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

1 Создать кошелек

Для создания кошелька необходимо использовать операцию create.

$ cleos wallet create --to-console

Опция --to-console задает выполнение операции «по умолчанию» с выдачей сеанса на консоль. Для использования приложения cleos, не для процесса разработки, следует задавать опцию --to-file, чтобы пароль кошелька не попал в историю bash. Поскольку ключи создаются для разработки, а не для использования в функционирующем продукте Mainnet, задание опции --to-console не угрожает безопасности.

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

Creating wallet: default
Save password to use in the future to unlock this wallet.
Without password imported keys will not be retrievable."PW5Kewn9L76X8Fpd....................t42S9XCw2"

Запуск команды по умолчанию создает кошелек с именем «default». Если требуется создать кошелек с другим именем (например, при создании более одного кошелька) можно воспользоваться опцией --name (или -n).

$ cleos wallet create --name second-wallet --to-console

В результате будет создан кошелек с именем second-wallet.

2 Открыть кошелек

Хранение кошельков обеспечивает приложение keosd. По умолчанию кошельки находятся в закрытом состоянии. Для открытия кошелька необходимо использовать операцию open.

$ cleos wallet open
или
$ cleos wallet open --name second-wallet

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

Opened: default
или
Opened: second-wallet

Для получения списка открытых кошельков необходимо использовать операцию list.

$ cleos wallet list

В результате должна появиться информация вида:

Wallets:
[
  "default",
  "second-wallet"
]

В случае отсутствия кошельков в открытом состоянии появится следующая информация:

Wallets:
[
]

3 Разблокировать кошелек

Несмотря на то, что кошелек открыт, приложение keosd держит его в заблокированном состоянии. Чтобы пользоваться кошельком, необходимо его разблокировать посредством операции unlock.

$ cleos wallet unlock
или
$ cleos wallet unlock --name second-wallet

Появится приглашение на ввод пароля. Необходимо ввести пароль и нажать ввод.

Примечание:

Ввести пароль можно непосредственно в командной строке, добавив опцию --password. Например,

$ cleos wallet unlock --password PW5...w2

Получить список открытых кошельков можно, повторно исполнив:

$ cleos wallet unlock
или
$ cleos wallet unlock --name second-wallet

Должна появиться информация вида:

Wallets:
[
  "default *",
  "second-wallet *"
]

Наличие символа «*» означает, что кошелек находится в разблокированном состоянии.

4 Загрузить ключ в созданный кошелек

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

$ cleos wallet create_key

В случае наличия у пользователя более одного кошелька, необходимо в команде указать имя кошелька, добавив опцию -name <text>.

$ cleos wallet create_key  --name second-wallet

Должно появиться сообщение о создании пары — приватного и публичного ключей.

Created new private key with a public key of: "GLS8PE...,X6P..."

Примечание:

В отличие от EOS в CyberWay код публичного ключа начинается с символов «GLS».

5 Импортировать ключ разработки

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

$ cleos wallet import

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

5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3

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

$ cleos wallet lock_all

6 Заблокировать кошелек (кошельки)

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

$ cleos wallet lock
или
$ cleos wallet lock --name second-wallet

Должно появиться сообщение о блокировке кошелька пользователя.

Locked: 'default'
или
Locked: 'second-wallet'

Для блокировки всех кошельков пользователя следует использовать операцию lock_all.

$ cleos wallet lock_all

Должно появиться сообщение о блокировке всех кошельков пользователя.

Locked All Wallets

Last updated