Download the PHP package erachain/sdk-php without Composer
On this page you can find all versions of the php package erachain/sdk-php. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package sdk-php
Erachain PHP SDK
Библиотека предназначена для работы с блокчейн сетью Erachain . Библиотека имеет функционал по генерации аккаунта (сид, ключи, адрес), созданию персон, созданию и отправке активов, отправке сообщений, работе с транзакциями и тд.
Библиотека работает только с 64-битными версиями PHP, от версии PHP 5.6 и выше.
Устанока Erachain PHP SDK
Установка производится с помощью Composer:
Использование библиотеки
Для использования библиотеки необходимо подключить автозагрузку composer и объявить объект Erachain.
В параметре объекта Erachain() задаётся режим работы и ссылка на ноду (оба параметра не обязательны):
- Режим работы:
'dev'
- тестовая сеть (используется по умолчанию)'live'
- боевая сеть
- Ссылка на ноду:
http://206.81.27.15:9067 /
(вы можете выбрать любой другой доступный адрес, по умолчанию ставится автоматически доступный адрес)
Доступные методы Erachain
Криптография:
crypto->generate_seed()
- Генерация сидаcrypto->generate_account()
- Генерация аккаунта (сид, ключи, адрес)crypto->encrypt()
- Зашифровка сообщенияcrypto->decrypt()
- Расшифровка сообщения
Работа с персонами:
person->info()
- Создание байт-кода персоныperson->issue()
- Регистрация персоны в сети Erachainperson->certify()
- Подтверждение персоныperson->api()
- Работа с API запросами к ноде по персоне
Работа с активами:
asset->issue()
- Создание активаasset->send()
- Отправка активаasset->api()
- Работа с API запросами к ноде по активам
Работа с сообщениями/телеграмами:
message->send()
- Отправка сообщенияmessage->api()
- Работа с API запросами к ноде по сообщениямtelegram->send()
- Отправка телеграмыtelegram->api()
- Работа с API запросами к ноде по телеграмам
Работа с биржей:
order->create()
- Создание ордераorder->cancel()
- Отмена ордераorder->api()
- Работа с API запросами к ноде по ордерам
Работа с статусами:
status->issue()
- Создание статусаstatus->set()
- Установка статуса сущности (персона, актив и тд)
Работа с голосованием:
poll->issue()
- Создание голосованияpoll->vote()
- Проголосовать
Работа с подтверждением транзакций:
vouch->sign()
- Подписать транзакцию
Работа с транзакциями:
transaction->api()
- Работа с API запросами к ноде по транзакциям
Выполнение любого запроса к ноде:
api()
- список доступных запросов в документации: https://app.swaggerhub.com/apis-docs/Erachain/era-api/1.0.0-oas3
Примеры использования
1. Криптография
1.1. Генерация сида
Возвращает сид в виде байт кода и в base58.
1.2. Генерация аккаунта
$seed_base58
- параметр не обязателен. При отсутствии параметра или при указанииfalse
генерируется новый сид.-
$number_account
- параметр не обязателен. При осутствии параметра, создаётся аккаунт с порядковым номером0
. Если вам необходимо создать дополнительный аккаунт для конкретного сида, в параметрах укажите ваш$seed_base58
, а в параметре$number_account
укажите1
для второго аккаунта,2
для третьего и тд.1.3. Шифрование сообщения
$message
- обязательный параметр. Сообщение которое нужно зашифровать.$public_key
- обязательный параметр. Публичный ключ получателя сообщения.-
$private_key
- обязательный параметр. Приватный ключ отправителя сообщения.1.4. Расшифровка сообщения
$message
- обязательный параметр. Сообщение которое нужно расшифровать.$public_key
- обязательный параметр. Публичный ключ отправителя сообщения.-
$private_key
- обязательный параметр. Приватный ключ получателя сообщения.2. Работа с персонами
2.1. Создание байт-кода персоны
$public_key
- обязательный параметр. Публичный ключ создателя персоны.$private_key
- обязательный параметр. Приватный ключ создателя персоны.-
$params
- обязательный параметр. Параметры для создания персоны.owner
- не обязательный параметр. Публичный ключ владельца персоны (по умолчанию $public_key)name
- обязательный параметр. Имя персоныdescription
- обязательный параметр. Описание персоныicon
- не обязательный параметр. Путь к иконке персоныimage
- не обязательный параметр. Путь к фото персоны (JPG, максимум 20КБ)birthday
- обязательный параметр. Дата рождения (timestamp с миллисекундами)death_day
- обязательный параметр. Дата смерти (timestamp с миллисекундами)gender
- обязательный параметр. Пол персоны (0 - мужской, 1 - женский)race
- обязательный параметр. Раса персоныbirth_latitude
- обязательный параметр. Широта места рожденияbirth_longitude
- обязательный параметр. Долгота места рожденияskin_color
- обязательный параметр. Цвет кожи персоныeye_color
- обязательный параметр. Цвет глаз персоныhair_color
- обязательный параметр. Цвет волос персоныheight
- обязательный параметр. Рост персоны2.2. Регистрация персоны в сети Erachain
$public_key
- обязательный параметр. Публичный ключ регистратора.$private_key
- обязательный параметр. Приватный ключ регистратора.-
$params
- обязательный параметр. Параметры для регистрации персоны.raw
- обязательный параметр. Байт-код с информацией персоны.2.3. Подтверждение персоны
$public_key
- обязательный параметр. Публичный ключ того кто подтверждает персону.$private_key
- обязательный параметр. Приватный ключ того кто подтверждает персону.-
$params
- обязательный параметр. Параметры для создания персоны.person_key
- обязательный параметр. Ключ персоны, которую нужно подтвердитьpublic_key
- обязательный параметр. Публичный ключ, к которому привязываем персонуПримечание: нельзя подтвердить свою персону. Блокчейн сеть так устроена, что персону может подтвердить только другая персонифицированная персона.
2.4. Запросы к ноде по персоне
$request
- обязательный параметр. Запрос к ноде. Доступные запросы для персоны:personheight
- получение высоты цепочки персонperson
- получение данных персоны по ключу персоныpersondata
- получение иконки и изображения персоны по ключу персоныpersonkeybyaddress
- получение ключа персоны по адресу (счёту)personbyaddress
- получение данных персоны по адресу (счёту)personkeybypublickey
- получение ключа персоны по публичному ключуpersonbypublickey
- получение данных персоны по публичному ключуpersonsfilter
- получение данных персон по имени персоны (полному/частичному)personkeybyownerpublickey
- получение ключа персоны по публичному ключу создателя персоны- ... все запросы из ->transaction_api()
$params
- не обязательный параметр (зависит от выбранного запроса). Параметры необходимые при том или ином запросе можно посмотреть в примерах персоны или в документации классаPerson
.
3. Работа с активами
3.1. Создание актива
$public_key
- обязательный параметр. Публичный ключ создателя актива.$private_key
- обязательный параметр. Приватный ключ создателя актива.-
$params
- обязательный параметр. Параметры для создания актива.owner
- не обязательный параметр. Публичный ключ владельца актива (по умолчанию $public_key)name
- обязательный параметр. Название активаdescription
- обязательный параметр. Описание активаicon
- не обязательный параметр. Путь к иконке активаimage
- не обязательный параметр. Путь к изображению активаquantity
- обязательный параметр. Кол-во активаscale
- обязательный параметр. Кол-во знаков после запятой. Данный параметр используется при отправке актива. Допустим если указано0
- значит можно передавать только целые активы, например 3 штуки, при попытке передать 3.5 шт система выдаст ошибку.asset_type
- обязательный параметр. Тип актива (для цифрового актива указывайте - 1)3.2. Отправка актива
$public_key
- обязательный параметр. Публичный ключ отправителя актива.$private_key
- обязательный параметр. Приватный ключ отправителя актива.-
$params
- обязательный параметр. Параметры для отправки актива.recipient
- обязательный параметр. Адрес получателяasset_key
- обязательный параметр. Ключ активаamount
- обязательный параметр. Кол-во активаhead
- обязательный параметр. Заголовок отправки активаmessage
- не обязательный параметр. Сообщение активаencrypted
- не обязательный параметр. Шифрование актива (1 - шифровать, 0 - не шифровать)is_text
- не обязательный параметр. Тип сообщения (1 - сообщение является текстом, 0 - массив байтов)Примечание: обратите внимание на параметр amount, если scale актива = 0 , можно указывать только целые числа, если scale = 1, то в amount можно указать например 3.6
3.3. Запросы к ноде по активу
$request
- обязательный параметр. Запрос к ноде. Доступные запросы для активов:addressassets
- Получение списка активов по адресуaddressassetbalance
- Получение остатка актива по адресу и ключу активаassets
- Получение всех активов сетиasset
- Получение информации актива по ключу активаasseticon
- Получение иконки актива по ключу активаassetimage
- Получение изображения актива по ключу активаassetdata
- Получение иконки и изображения по ключу активаassetsfilter
- Получение данных активов по названию актива (полному/частичному)assetheight
- Получение высоты последнего добавленного актива- ... все запросы из ->transaction_api()
-
$params
- не обязательный параметр (зависит от выбранного запроса). Параметры необходимые при том или ином запросе можно посмотреть в примерах активов или в документации классаAsset
.4. Работа с сообщениями
4.1. Отправка сообщения
$public_key
- обязательный параметр. Публичный ключ отправителя сообщения.$private_key
- обязательный параметр. Приватный ключ отправителя сообщения.-
$params
- обязательный параметр. Параметры для отправки сообщения.recipient
- обязательный параметр. Адрес получателяhead
- обязательный параметр. Заголовок сообщенияmessage
- обязательный параметр. Сообщениеencrypted
- не обязательный параметр. Шифрование сообщения (1 - шифровать, 0 - не шифровать)is_text
- не обязательный параметр. Тип сообщения (1 - сообщение является текстом, 0 - массив байтов)4.2. Запросы к ноде по сообщениям
$request
- обязательный параметр. Запрос к ноде. Доступные запросы для сообщений:getbyaddress
- Получаем сообщения по адресу- ... все запросы из ->transaction_api()
-
$params
- не обязательный параметр (зависит от выбранного запроса). Параметры необходимые при том или ином запросе можно посмотреть в примерах сообщений/телеграм или в документации классаMessage
.4.3. Отправка телеграмы
$public_key
- обязательный параметр. Публичный ключ отправителя телеграмы.$private_key
- обязательный параметр. Приватный ключ отправителя телеграмы.-
$params
- обязательный параметр. Параметры для отправки телеграмы.recipient
- обязательный параметр. Адрес получателяhead
- обязательный параметр. Заголовок телеграмыmessage
- обязательный параметр. Сообщение телеграмыencrypted
- не обязательный параметр. Шифрование телеграмы (1 - шифровать, 0 - не шифровать)is_text
- не обязательный параметр. Тип телеграмы (1 - сообщение является текстом, 0 - массив байтов)4.4. Запросы к ноде по телеграмам
$request
- обязательный параметр. Запрос к ноде. Доступные запросы для телеграм:getbysignature
- Получаем телеграму по сигнатуреget
- Получаем список телеграм по адресу получателя и фильтруtimestamp
- Получаем список телеграм по стартовой временной метке и заголовкуcheck
- Проверяем наличае телеграмы по сигнатуре
-
$params
- не обязательный параметр (зависит от выбранного запроса). Параметры необходимые при том или ином запросе можно посмотреть в примерах сообщений/телеграм или в документации классаTelegram
.5. Работа с биржей
5.1. Создание ордера
$public_key
- обязательный параметр. Публичный ключ создателя ордера.$private_key
- обязательный параметр. Приватный ключ создателя ордера.-
$params
- обязательный параметр. Параметры для создания ордера.have_asset
- обязательный параметр. Ключ актива, который хотим передатьwant_asset
- обязательный параметр. Ключ актива, который хотим получитьhave_amount
- обязательный параметр. Кол-во актива которое хотим передатьwant_amount
- обязательный параметр. Кол-во актива которое хотим получить5.2. Отмена ордера
$public_key
- обязательный параметр. Публичный ключ создателя ордера.$private_key
- обязательный параметр. Приватный ключ создателя ордера.-
$params
- обязательный параметр. Параметры для отмены ордера.signature
- обязательный параметр. Сигнатура ордера5.3. Запросы к ноде по бирже
$request
- обязательный параметр. Запрос к ноде. Доступные запросы для ордеров:order
=> Получение ордера по номеру блока с последовательностью или сигнатуреordersbook
=> Получение ордера по ключу передаваемого и получаемого активаordersbyaddress
=> Получение списка ордеров по адресу создателяcompletedordersfrom
=> Получение завершенных ордеровallordersbyaddress
=> Получение всех ордеров по адресуtrades
=> Получение сделок по временной меткеtradesfrom
=> Получение сделки по ключу передаваемого и получаемого активаvolume24
=> Получение сделки по ключу передаваемого и получаемого актива за последние 24 часа- ... все запросы из ->transaction->api()
-
$params
- не обязательный параметр (зависит от выбранного запроса). Параметры необходимые при том или ином запросе можно посмотреть в примерах ордеров или в документации классаOrder
.6. Работа с статусами
6.1. Создание статуса
$public_key
- обязательный параметр. Публичный ключ создателя статуса.$private_key
- обязательный параметр. Приватный ключ создателя статуса.-
$params
- обязательный параметр. Параметры для создания статуса.type_item
- не обязательный параметр. Тип статуса (1 - уникальный, 0 - не уникальный)owner
- не обязательный параметр. Публичный ключ владельца статуса (по умолчанию $public_key)name
- обязательный параметр. Название статусаicon
- не обязательный параметр. Путь к иконке статусаimage
- не обязательный параметр. Путь к изображению статусаdescription
- обязательный параметр. Описание статуса с параметрами:- %1 - первый числовой параметр
- %2 - второй числовой параметр
- %3 - первый строковый параметр
- %4 - второй строковый параметр
6.2. Установка статуса сущности (персона, актив и тд)
$public_key
- обязательный параметр. Публичный ключ назначающего статус.$private_key
- обязательный параметр. Приватный ключ назначающего статус.-
$params
- обязательный параметр. Параметры для установки статуса.key_status
- обязательный параметр. Ключ статуса, который устанавливаемitem_type
- обязательный параметр. Тип сущности, которой назвачаем статус:- 1 - ASSET_TYPE
- 2 - IMPRINT_TYPE
- 3 - NOTE_TYPE
- 4 - PERSON_TYPE
- 5 - STATUS_TYPE
- 6 - UNION_TYPE
key_item
- обязательный параметр. Ключ элемента выбранной сущностиdate_start
- обязательный параметр. Время старта действия статусаdate_end
- обязательный параметр. Время окончания действия статусаvalue_1
- не обязательный параметр. Первое числовое значение для подстановки (%1)value_2
- не обязательный параметр. Второе числовое значение для подстановки (%2)data_1
- не обязательный параметр. Первое строковое значение для подстановки (%3)data_2
- не обязательный параметр. Второе строковое значение для подстановки (%4)description
- не обязательный параметр. Описание для подстановки (%D)7. Работа с голосованием
7.1. Создание голосования
$public_key
- обязательный параметр. Публичный ключ создателя голосования.$private_key
- обязательный параметр. Приватный ключ создателя голосования.-
$params
- обязательный параметр. Параметры для создания голосования.owner
- не обязательный параметр. Публичный ключ владельца голосованияname
- обязательный параметр. Название голосованияicon
- не обязательный параметр. Путь к иконке голосованияimage
- не обязательный параметр. Путь к изображению голосованияdescription
- обязательный параметр. Описание голосованияoptions
- обязательный параметр. Массив с вариантами ответа7.2. Проголосовать
$public_key
- обязательный параметр. Публичный ключ голосующего.$private_key
- обязательный параметр. Приватный ключ голосующего.-
$params
- обязательный параметр. Параметры для голосования.poll_key
- обязательный параметр. Ключ голосованияoption_number
- обязательный параметр. Номер варианта ответа8. Работа с подтверждением транзакций
8.1. Подписать транзакцию
$public_key
- обязательный параметр. Публичный ключ подтверждающего транзакцию.$private_key
- обязательный параметр. Приватный ключ подтверждающего транзакцию.-
$params
- обязательный параметр. Параметры для подтверждения.block_height
- обязательный параметр. Номер блокаseq_number
- обязательный параметр. Номер транзакции в блоке9. Работа с транзакциями
9.1. Запросы к ноде по транзакциям
$request
- обязательный параметр. Запрос к ноде. Доступные запросы для транзакций:height
- Получение высоты последнего блокаrecord
- Получение информации транзакции по сигнатуреgetbynumber
- Получение транзакции по номеру блока с номером sequencerecordrawbynumber
- Получение байт кода по номеру блока и номеру sequenceincomingfromblock
- Получение транзаций по адресу получателя и номеру блокаgetbyaddress
- Получение транзаций по адресуfind
- Получение транзаций по заданным параметрам
-
$params
- не обязательный параметр (зависит от выбранного запроса). Параметры необходимые при том или ином запросе можно посмотреть в примерах транзакций или в документации классаTransaction
.10. Выполнение любого запроса к ноде
$request
- обязательный параметр. Запрос к ноде. Полный список в документации: https://app.swaggerhub.com/apis-docs/Erachain/era-api/1.0.0-oas3$params
- не обязательный параметр (зависит от выбранного запроса). Является массивом при отправке GET -параметров, строкой при отправке байт-кода методом POST$method
- не обязательный параметр (по умолчанию 'get'). Метод отправки запроса к ноде 'get' / 'post'
All versions of sdk-php with dependencies
paragonie/random_compat Version <9.99
paragonie/sodium_compat Version 1.12.*
stephenhill/base58 Version ~1.0
siriusphp/validation Version *
brick/math Version 0.5
ext-openssl Version *
ext-bcmath Version *
ext-json Version *
ext-curl Version *