Signet authority — what it is and why INTcoin uses it

Signet authority — what it is and why INTcoin uses it

A common question once people start exploring INTcoin’s three networks (mainnet / testnet / signet): why does signet exist when we already have testnet? And what’s the “signet authority”?

The short version

  • Mainnet = real coins, decentralised PoW, anyone can mine.
  • Testnet = throwaway coins, decentralised PoW, anyone can mine (faucet provides initial INT).
  • Signet = throwaway coins, centralised block production via authority key, predictable block schedule.

Signet is the answer to a specific testnet pain point: testnets get griefed by individual miners who decide to centralise hashrate. One miner with a few MH/s can dominate a low-hashrate testnet, produce reorgs, hold blocks back, mine empty blocks — basically corrupt the test environment for everyone else.

Signet sidesteps that entirely by replacing PoW with a single authority signing blocks. The signet authority key is the only key that can produce a block valid under signet consensus rules. This makes signet predictable, attack-resistant, and ideal for protocol testing where you need stable conditions.

Where INTcoin’s signet authority runs

Per our infrastructure docs, the INTcoin signet authority lives on the US server (74.208.48.149) in a dedicated systemd unit (intcoind-signet.service carrying the -signetkey=... argument). The authority miner (intcoin-signet-miner.service) is co-located on the same box and signs blocks every ~120 seconds.

UK-A and EU run signet daemons too, but as followers (no -signetkey, just relaying authority-signed blocks to peers). They appear in systemctl listings as INTcoin Core (Signet) whereas the US authority shows INTcoin Core (Signet Authority).

What signet is good for

  1. Soft-fork activation testing. When we want to test how a new IIP behaves on a live network without putting mainnet at risk, signet gives us a low-cost playground where the authority can predictably produce the blocks needed to reach activation thresholds.
  2. Wallet integration testing. Wallet developers can build against signet without worrying about a malicious miner holding back their transactions.
  3. Fee estimation testing. Predictable block intervals + controlled mempool pressure = reliable benchmarks for fee-estimation logic.
  4. Network protocol fuzzing. Easier to reason about consensus violations when block production is deterministic.

What signet is NOT good for

  • Mining tests. Signet doesn’t do PoW competition; you literally can’t mine a signet block without the authority key. Use testnet for those (faucet at https://international-coin.org/faucet/, mining starts at difficulty ≈ 1).
  • Stress tests of the LWMA difficulty algorithm. LWMA is a PoW-difficulty algorithm and signet doesn’t do PoW. (Testnet for that too.)
  • “Just running a node to participate.” Signet is purely a developer tool. Running a signet node doesn’t earn INT, doesn’t help mainnet, doesn’t help testnet.

Connecting your daemon to signet

intcoind -signet -daemon
intcoin-cli -signet getblockchaininfo

Datadir defaults to ~/.intcoin/signet/. P2P port 22210, RPC port 22211 on mainnet-style installs. The signet network uses its own genesis block + magic bytes, so signet daemons cannot accidentally connect to mainnet/testnet peers.

The “challenge script” — the technical bit

Signet block validity is defined by a challenge script in the network parameters (Consensus::Params::signet_challenge). Any miner can mine a signet block, but the block’s signet_solution field must be a valid signature against the challenge script for the block to be accepted by validators.

INTcoin’s signet challenge script is a 1-of-1 multisig under the authority key (the long hex string in intcoind-signet.service’s ExecStart that begins with 28b3f37c...). Other signets (Bitcoin’s, etc.) use multisig schemes — easy to extend later if INTcoin ever wants multi-authority signet.

Why we don’t publish the authority key

This shouldn’t need saying, but: the authority key is a private signing key. Publishing it would let anyone produce signet blocks, which would let anyone fork the signet chain however they wanted, which would defeat signet’s whole purpose. The key lives on US server only and is referenced in this forum/docs only by the public network-params field that says “challenge script accepts signatures from this authority key” — never the private side.

If you have specific test cases that need a different signet behaviour (a different challenge script, multi-authority, etc.), open an IIP discussion in Development or here in Development category — we can spin up a parallel signet (e.g. signet2, signet3) with different params for specific testing campaigns.

— INT-devs