Umbrella Trust Network
UTN, rețea de test. Moneda nativă de test este T-RAIN, simbol T-RAIN, 18 zecimale (pe mainnet: RAIN). După genesis nu se mai emit monede.
| Nume | Umbrella Trust Network |
|---|---|
| Chain ID | 20261003 (0x0135288b) |
| RPC | https://rpc.utn.lexmares.com |
| Explorer | https://explorer.utn.lexmares.com |
| Faucet | https://faucet.utn.lexmares.com |
| Portal | https://app.utn.lexmares.com |
| Wallet | https://wallet.utn.lexmares.com |
| Remix | https://remix.utn.lexmares.com |
Faucet
O cerere conține doar o adresă. Același cont poate primi T-RAIN o dată pe zi. Aceeași adresă de rețea are și ea o limită pe zi.
curl -s https://faucet.utn.lexmares.com/drip \
-H 'content-type: application/json' \
-d '{"address":"0x0000000000000000000000000000000000000000"}'
Connect with UTN Wallet
Orice site se poate conecta la UTN Wallet cu un singur script. Utilizatorul confirmă cu passkey-ul lui, fără extensie. Scriptul expune un provider EIP-1193 (window.utn) și se anunță prin EIP-6963 ca „UTN Wallet”, deci apare și în listele de wallet-uri existente.
<script src="https://wallet.utn.lexmares.com/sdk/utn-wallet.js"
data-rpc="https://rpc.utn.lexmares.com"></script>
<script>
const [account] = await utn.request({ method: "eth_requestAccounts" });
const sig = await utn.request({ method: "personal_sign", params: ["Salut", account] });
const hash = await utn.request({ method: "eth_sendTransaction",
params: [{ from: account, to: "0x…", data: "0x…" }] });
</script>
eth_requestAccountsdeschide fereastra UTN Wallet: utilizatorul alege contul și vede ce poate face site-ul. Site-urile conectate apar în Setări → Connected sites, de unde pot fi deconectate.eth_sendTransactionarată un rezumat (ce se trimite, către cine, taxa în T-RAIN) și cere confirmarea cu passkey. Fără câmpto, contractul se lansează prin UtnDeployer; adresa noului contract apare încontractAddressdin chitanță.personal_signsemnează cu contul inteligent. Semnătura se verifică pe rețea cuUtnSignatures.isValidSignature(account, hash, sig), nu cuecrecover. Mesajele EIP-712 nu sunt încă acceptate (cod 4200).- Dacă browserul blochează fereastra, scriptul arată butonul „Continue in UTN Wallet”.
| UtnDeployer | 0x4A26AC7bB044Cf142e4E692163C94413C900B515 |
|---|---|
| UtnSignatures | 0xd3bEd0d50718C6a1173bA6F5fCFAA170Ed367ba4 |
Atenție: la lansarea prin UtnDeployer, msg.sender din constructor este UtnDeployer. Contractele cu proprietar primesc proprietarul ca argument (sau citesc UtnDeployer.caller()).
UTN Remix
remix.utn.lexmares.com este Remix cu mediul „UTN Wallet” deja ales. Deschide exemplul UtnStorage.sol, apasă Compile, apoi Deploy și confirmă în UTN Wallet. Standardele UTN se importă din https://remix.utn.lexmares.com/utn/contracts/. Contractul se poate verifica în Explorer cu aceleași setări ca în Remix (solc 0.8.34, fără optimizare, EVM osaka).
SDK
Pachetul @utn/sdk este în network/sdk din arhiva de cod. chain tipărește valorile pentru wallet. drip trimite o adresă la faucet. deploy lansează un contract deja compilat.
RPC-ul public acceptă doar eth, net și web3. API-urile de administrare rămân pe mașina gazdă.