1. Go to this page and download the library: Download legalthings/lto-api library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
legalthings / lto-api example snippets
$seedText = "manage manual recall harvest series desert melt police rose hollow moral pledge kitten position add";
$factory = new LTO\AccountFactory('T'); // 'T' for testnet, 'L' for mainnet
$account = $factory->seed($seedText);
$secretKey = 'wJ4WH8dD88fSkNdFQRjaAhjFUZzZhV5yiDLDwNUnp6bYwRXrvWV8MJhQ9HL9uqMDG1n7XpTGZx7PafqaayQV8Rp';
$factory = new LTO\AccountFactory('T'); // 'T' for testnet, 'L' for mainnet
$account = $factory->create($secretKey);
use LTO\Transaction\Transfer;
use LTO\PublicNode;
$node = new PublicNode('https://nodes.lto.network');
$amount = 1000.0; // Amount of LTO to transfer
$recipient = "3Jo1JCrBvnWCg37VDxMXAjYhsS9rRDLBSze";
$transferTx = (new Transfer($amount, $recipient))
->signWith($account)
->broadcastTo($node);
$chain = $account->createEventChain(); // Creates an empty event chain with a valid id and last hash
use Jasny\HttpSignature\HttpSignature;
$secretKey = 'wJ4WH8dD88fSkNdFQRjaAhjFUZzZhV5yiDLDwNUnp6bYwRXrvWV8MJhQ9HL9uqMDG1n7XpTGZx7PafqaayQV8Rp';
$factory = new LTO\AccountFactory('T'); // 'T' for testnet, 'L' for mainnet
$ourAccount = $factory->create($secretKey);
$service = new HttpSignature(
['ed25519', 'ed25519-sha256'],
new SignCallback($ourAccount),
new VerifyCallback($accountFactory)
);
use Jasny\HttpDigest\HttpDigest;
use Jasny\HttpDigest\ServerMiddleware as DigestMiddleware;
use Jasny\HttpDigest\Negitiation\DigestNegotiator;
use Jasny\HttpSignature\HttpSignature;
use Jasny\HttpSignature\ServerMiddleware as SignatureMiddleware;
use LTO\Account\ServerMiddleware as AccountMiddleware;
use Relay\RelayBuilder;
$factory = new LTO\AccountFactory('T'); // 'T' for testnet, 'L' for mainnet
$ourAccount = $factory->create($secretKey);
$digestService = HttpDigest(new DigestNegotiator(), ["SHA-256"]);
$signatureService = new HttpSignature(
['ed25519', 'ed25519-sha256'],
function() { throw new \LogicException('sign not supported'); },
new VerifyCallback($accountFactory)
);
$relayBuilder = new RelayBuilder($resolver);
$relay = $relayBuilder->newInstance([
(new DigestMiddleware($digestService))->asDoublePass(),
(new SignatureMiddleware($signatureService))->asDoublePass(),
(new AccountMiddleware($factory))->asDoublePass(),
]);
use GuzzleHttp\HandlerStack;
use GuzzleHttp\Client;
use Jasny\HttpDigest\HttpDigest;
use Jasny\HttpDigest\ClientMiddleware as DigestMiddleware;
use Jasny\HttpDigest\Negitiation\DigestNegotiator;
use Jasny\HttpSignature\HttpSignature;
use Jasny\HttpSignature\ClientMiddleware as SignatureMiddleware;
$secretKey = 'wJ4WH8dD88fSkNdFQRjaAhjFUZzZhV5yiDLDwNUnp6bYwRXrvWV8MJhQ9HL9uqMDG1n7XpTGZx7PafqaayQV8Rp';
$factory = new LTO\AccountFactory('T'); // 'T' for testnet, 'L' for mainnet
$ourAccount = $factory->create($secretKey);
$digestService = HttpDigest(new DigestNegotiator(), ["SHA-256"]);
$signatureService = new HttpSignature(
['ed25519', 'ed25519-sha256'],
new SignCallback($ourAccount),
function() { throw new \LogicException('verify not supported'); }
);
$signatureMiddleware = new SignatureMiddleware(
$service->withAlgorithm('ed25519-sha256'),
$ourAccount->getPublicKey()
);
$stack = new HandlerStack();
$stack->push((new DigestMiddleware($digestService))->forGuzzle());
$stack->push($signatureMiddleware->forGuzzle());
$client = new Client(['handler' => $stack]);
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.