Создание адресов
Создание адресов
Заголовок раздела «Создание адресов»Введение
Заголовок раздела «Введение»В этом руководстве мы рассмотрим, как создавать адреса для Polygon, Binance Smart Chain, Ethereum и Tron с помощью Chaingateway. Мы предоставим примеры на различных языках программирования, включая Shell (cURL), PHP (Guzzle), Python (Requests) и JavaScript (Axios). В этом руководстве мы рассмотрим, как создавать адреса для Polygon, Binance Smart Chain, Ethereum и Tron с помощью Chaingateway. Мы предоставим примеры на различных языках программирования, включая Shell (cURL), PHP (Guzzle), Python (Requests) и JavaScript (Axios). Информацию о получении API-ключа и об авторизации см. в разделе Быстрый старт документации Chaingateway.
Создание адресов
Заголовок раздела «Создание адресов»При создании нового адреса для блокчейна на базе EVM нам нужно создать keystore. Это механизм безопасности для защиты вашей информации. Keystore будет зашифрован с помощью пароля. При использовании этого механизма вам не нужно отправлять свой приватный ключ в payload транзакции, только свой пароль. Лицо, у которого есть только файл keystore или только пароль, не сможет получить доступ к адресу.
Чтобы создать адрес, отправьте запрос к API Chaingateway.
Параметры
Заголовок раздела «Параметры»- password: Это пароль, определяемый пользователем, для нового адреса. Он используется для защиты адреса и потребуется для выполнения транзакций с этим адресом. Крайне важно надёжно хранить этот пароль, так как Chaingateway не хранит его и не имеет к нему доступа. Если пароль утерян, доступ к адресу будет невозможен.
Заголовок Authorization
Заголовок раздела «Заголовок Authorization»Замените YOUR_API_TOKEN на ваш реальный API-токен.
Пример кода (кошелёк, защищённый паролем)
Заголовок раздела «Пример кода (кошелёк, защищённый паролем)»curl --request POST\ --url https://api.chaingateway.io/v2/ethereum/addresses\ --header 'Accept: application/json'\ --header 'content-type: application/json'\ --header 'Authorization: YOUR_API_TOKEN'\ --data '{"password":"test123"}'import requests
url = "https://api.chaingateway.io/v2/ethereum/addresses"payload = {"password": "test123"}headers = { 'Accept': 'application/json', 'content-type': 'application/json', 'Authorization': 'YOUR_API_TOKEN'}
response = requests.post(url, json=payload, headers=headers)print(response.json())const axios = require('axios');
const url = 'https://api.chaingateway.io/v2/ethereum/addresses';const payload = { password: 'test123' };const headers = { 'Accept': 'application/json', 'content-type': 'application/json', 'Authorization': 'YOUR_API_TOKEN'};
axios.post(url, payload, { headers }) .then(response => { console.log(response.data); }) .catch(error => { console.error(error); });<?phprequire 'vendor/autoload.php';
use GuzzleHttp\Client;
$client = new Client();$response = $client->post('https://api.chaingateway.io/v2/ethereum/addresses', [ 'headers' => [ 'Accept' => 'application/json', 'content-type' => 'application/json', 'Authorization' => 'YOUR_API_TOKEN', ], 'json' => ['password' => 'test123']]);
echo $response->getBody();?>{ "status": 201, "ok": true, "message": "Address created", "data": { "adderess": "0x7d3bC832A0860fD882FF4C2359e10268f4E5CCf8" }}Пример кода (незащищённый кошелёк)
Заголовок раздела «Пример кода (незащищённый кошелёк)»curl --request POST\ --url https://api.chaingateway.io/v2/tron/addresses\ --header 'Accept: application/json'\ --header 'content-type: application/json'\ --header 'Authorization: YOUR_API_TOKEN'import requests
url = "https://api.chaingateway.io/v2/tron/addresses"headers = { 'Accept': 'application/json', 'content-type': 'application/json', 'Authorization': 'YOUR_API_TOKEN'}
response = requests.post(url, headers=headers)print(response.json())const axios = require('axios');
const url = 'https://api.chaingateway.io/v2/tron/addresses';const headers = { 'Accept': 'application/json', 'content-type': 'application/json', 'Authorization': 'YOUR_API_TOKEN'};
axios.post(url, {}, { headers }) .then(response => { console.log(response.data); }) .catch(error => { console.error(error); });<?phprequire 'vendor/autoload.php';
use GuzzleHttp\Client;
$client = new Client();$response = $client->post('https://api.chaingateway.io/v2/tron/addresses', [ 'headers' => [ 'Accept' => 'application/json', 'content-type': 'application/json', 'Authorization' => 'YOUR_API_TOKEN', ]]);
echo $response->getBody();?>Ответ должен выглядеть примерно так:
{ "status": 201, "ok": true, "message": "Address created", "data": { "privateKey": "59f1c6200e01a2ca9471411f10198bfa63678d0e87cc2ca30f9c4a68dee78edc", "publicKey": "040fe6e677442c36f7fdd5535ba3ff1cef0110d78363420f7e24b65298990e3467aed68b9a67e1396d84753db25b32a2fa3e1fc0a673f01638e9bcfab2d8f4ceb5", "hexAddress": "41a56a6505ffbee78eb916dd44f4846874deddaebd", "address": "TR3qx91smURF3R455V1ubqtoUsZbgqikfg" }}Вам следует хранить privateKey и address в надёжном месте в вашем приложении
Важная информация
Заголовок раздела «Важная информация»Для создания транзакций пользователи должны предоставить пароль адреса или приватный ключ. Chaingateway не хранит эту чувствительную информацию. Поэтому пользователи должны хранить её в надёжном месте. Если она утеряна, Chaingateway не сможет помочь с восстановлением, поскольку не имеет доступа к этой информации.
Информацию о получении API-ключа и об авторизации см. в разделе «Начало работы» документации Chaingateway.