Портал разработчика

Кошелёк

Кастодиальный кошелёк разработчика: как он защищён, баланс и история транзакций.

Кастодиальная модель#

При регистрации для разработчика автоматически создаётся кастодиальный кошелёк — один адрес, с которого деплоятся контракты и выполняются операции записи. Приватным ключом управляет платформа: вам не нужно хранить seed-фразу или подписывать транзакции вручную.

Один адрес на разработчика
Кошелёк привязан к вашему аккаунту (ИИН), а не к отдельному проекту. Все ваши контракты деплоятся с этого адреса.

Защита приватного ключа#

  • Приватный ключ шифруется (AES-256-GCM) мастер-ключом и хранится в базе в зашифрованном виде.
  • Ключ используется только сервером для подписи ваших транзакций.
  • Архитектура допускает миграцию на внешнее хранилище секретов (например, HashiCorp Vault) без изменения публичного интерфейса.

Баланс#

GET/api/devportal/wallets/:address/balancepublic

Параметр запроса network (testnet по умолчанию или mainnet).

Ответ
{
  "address": "0xA747...5694",
  "network": "testnet",
  "wei": "10000000000000000000",
  "eth": "10"
}

История транзакций#

GET/api/devportal/developers/:id/wallet-historyBearer (dev)

Возвращает операции кошелька (faucet, deploy, вызовы), обогащённые данными из сети. Каждая запись связана с транзакцией и ведёт в Explorer.

hashstringrequired
Хэш транзакции.
kind"faucet" | "deploy" | "read" | "write"required
Тип операции.
methodstring | nulloptional
Имя метода контракта (для вызовов).
blockNumbernumber | nulloptional
Номер блока.
timestampnumber | nulloptional
Unix-время блока.
valueWeistringrequired
Сумма в wei.
direction"in" | "out"required
Входящая или исходящая относительно кошелька.
Запрос
curl "https://kazsmartchain.org/api/devportal/developers/<DEV_ID>/wallet-history?network=testnet" \
  -H "Authorization: Bearer <JWT>"