Crear direcciones
Crear direcciones
Sección titulada «Crear direcciones»Introducción
Sección titulada «Introducción»En este tutorial veremos cómo crear direcciones para Polygon, Binance Smart Chain, Ethereum y Tron usando Chaingateway. Ofreceremos ejemplos en varios lenguajes de programación, entre ellos Shell (cURL), PHP (Guzzle), Python (Requests) y JavaScript (Axios). En este tutorial veremos cómo crear direcciones para Polygon, Binance Smart Chain, Ethereum y Tron usando Chaingateway. Ofreceremos ejemplos en varios lenguajes de programación, entre ellos Shell (cURL), PHP (Guzzle), Python (Requests) y JavaScript (Axios). Para obtener una clave de API y aprender sobre la autorización, consulte la sección Inicio rápido de la documentación de Chaingateway.
Creación de direcciones
Sección titulada «Creación de direcciones»Al crear una nueva dirección para una blockchain basada en EVM, necesitamos crear un keystore. Este es un mecanismo de seguridad para proteger su información. El keystore se cifrará con una contraseña. Con este mecanismo, no necesita enviar su clave privada en el payload de su transacción, solo su contraseña. Una persona que solo tenga el archivo keystore o solo la contraseña no puede acceder a la dirección.
Para crear la dirección, envíe una solicitud a la API de Chaingateway.
Parámetros
Sección titulada «Parámetros»- password: Es una contraseña definida por el usuario para la nueva dirección. Se utiliza para asegurar la dirección y será necesaria para realizar transacciones con ella. Es esencial guardar esta contraseña de forma segura, ya que Chaingateway no la almacena ni tiene acceso a ella. Si se pierde la contraseña, no se podrá acceder a la dirección.
Cabecera Authorization
Sección titulada «Cabecera Authorization»Reemplace YOUR_API_TOKEN por su token de API real.
Ejemplo de código (wallet protegido con contraseña)
Sección titulada «Ejemplo de código (wallet protegido con contraseña)»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();?>Respuesta
Sección titulada «Respuesta»{ "status": 201, "ok": true, "message": "Address created", "data": { "adderess": "0x7d3bC832A0860fD882FF4C2359e10268f4E5CCf8" }}Ejemplo de código (wallet no protegido)
Sección titulada «Ejemplo de código (wallet no protegido)»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();?>La respuesta debería verse así:
{ "status": 201, "ok": true, "message": "Address created", "data": { "privateKey": "59f1c6200e01a2ca9471411f10198bfa63678d0e87cc2ca30f9c4a68dee78edc", "publicKey": "040fe6e677442c36f7fdd5535ba3ff1cef0110d78363420f7e24b65298990e3467aed68b9a67e1396d84753db25b32a2fa3e1fc0a673f01638e9bcfab2d8f4ceb5", "hexAddress": "41a56a6505ffbee78eb916dd44f4846874deddaebd", "address": "TR3qx91smURF3R455V1ubqtoUsZbgqikfg" }}Debería guardar privateKey y address en un lugar seguro de su aplicación
Información importante
Sección titulada «Información importante»Para crear transacciones, los usuarios deben proporcionar la contraseña de la dirección o la clave privada. Chaingateway no almacena esta información sensible. Por lo tanto, los usuarios deben guardarla en un lugar seguro. Si se pierde, Chaingateway no puede ayudar con la recuperación, ya que no tiene acceso a esta información.
Para obtener una clave de API y aprender sobre la autorización, consulte la sección Primeros pasos de la documentación de Chaingateway.