Developer Fundamentals

3. Secure Wallets First

Generate or import wallets securely for signing without exposing keys.

Prerequisites

Wallet Foundations

No key, no change! 🔑

Every write needs a private key to sign. You can easily generate one:

import { Mnemonic } from "@vechain/sdk-core"

const randomMnemonic = Mnemonic.of();

import { Mnemonic } from "@vechain/sdk-core"

const randomMnemonic = Mnemonic.of();

import { Mnemonic } from "@vechain/sdk-core"

const randomMnemonic = Mnemonic.of();

Safe for tests!

Real use? Import VeWorld mnemonic via .env:

import { Address, Mnemonic } from "@vechain/sdk-core"
import dotenv from 'dotenv'; dotenv.config();
const mnemonic = process.env.MNEMONIC;
const privateKey = Mnemonic.toPrivateKey(mnemonic)).toString();
const signerAddress = Address.ofPrivateKey(privateKey);
import { Address, Mnemonic } from "@vechain/sdk-core"
import dotenv from 'dotenv'; dotenv.config();
const mnemonic = process.env.MNEMONIC;
const privateKey = Mnemonic.toPrivateKey(mnemonic)).toString();
const signerAddress = Address.ofPrivateKey(privateKey);
import { Address, Mnemonic } from "@vechain/sdk-core"
import dotenv from 'dotenv'; dotenv.config();
const mnemonic = process.env.MNEMONIC;
const privateKey = Mnemonic.toPrivateKey(mnemonic)).toString();
const signerAddress = Address.ofPrivateKey(privateKey);

Wallet ready—let's code!​

REMEMBER

Fund with VTHO or delegate. Never log keys!

Expose keys client-side? Disaster—server/.env only.


Clauses next!