Network Infrastructure

Production Infrastructure

SOST runs on dedicated VPS infrastructure with hardened security, nginx reverse proxy, systemd services, and automated SSL. Every component is self-hosted and independently verifiable.

Domains & Subdomains

sostcore.com Infrastructure
4 SUBDOMAINS
DomainPurposeStatus
sostcore.comInformational website — protocol documentation, whitepaper, getting started guidesLive (SSL)
explorer.sostcore.comBlock explorer — real-time chain data, reserve tracker, difficulty dashboardLive (SSL)
seed.sostcore.comP2P bootstrap seed node — port 19333. Not a website; TCP-only for node discoveryLive (P2P)
wallet.sostcore.comWeb wallet — client-side key generation, send/receive, TOTP 2FA. Keys never leave deviceNow Live (SSL)
seed.sostcore.com:19333 is a P2P bootstrap node, not a website. Visiting it in a browser will not work. Nodes connect to it automatically for peer discovery. You can override with --connect <host:port>.

Infrastructure Overview

Production Environment
DEDICATED VPS

SOST runs on dedicated infrastructure with hardened Linux, automated SSL via Let's Encrypt, and defense-in-depth security. The node process is managed by systemd with automatic restarts, and RPC is bound to localhost only, proxied through nginx for public read-only access.

ComponentDetails
Ports open22 (SSH), 80 (HTTP), 443 (HTTPS), 19333 (P2P)
Process managersystemd service (sost-node.service)
SSLLet's Encrypt (auto-renewal via certbot)
Reverse proxynginx — static files + RPC proxy
RPC bindinglocalhost only — not directly exposed

Security Hardening

Server Security Layers
DEFENSE IN DEPTH
LayerConfiguration
SSHKey-only authentication (password auth disabled)
fail2banBrute-force protection active
UFW firewallAllow 22/80/443/19333 only — deny all other inbound
nginx rate limitingRate-limited
RPC accesslocalhost only — nginx proxies selected read-only methods
RPC authBasic Auth required for state-changing methods
P2P DoSAutomatic ban scoring with peer limits enforced
P2P encryptionX25519 + ChaCha20-Poly1305 (default: on)

Explorer Architecture

The block explorer is a static HTML page that queries the node via nginx-proxied RPC endpoints. No backend framework, no database — pure client-side JavaScript.

Browser

Static HTML + JS

nginx

Reverse proxy + rate limit

/rpc

JSON-RPC on 127.0.0.1:18232

sost-node

Full node (chain + UTXO + mempool)

RPC is proxied through nginx with rate limiting and CORS headers. Read-only methods are public; state-changing methods require authentication.
RPC Methods Used by Explorer
READ-ONLY
MethodPurpose
getinfoChain height, difficulty, connections, UTXO count
getblockcountCurrent block height
getblockhashBlock hash at height
getblockFull block data (hash, time, difficulty, cASERT)
getaddressinfoAddress balance, UTXO list
gettransactionFull transaction data (inputs, outputs, fee)
getmempoolinfoMempool size and fee stats
estimatefeeRecommended fee per byte
getpeerinfoConnected peer list

P2P Network

Nodes discover each other through the seed node and maintain persistent connections for block and transaction relay.

Your Node

sost-node binary

DNS Resolve

seed.sostcore.com

TCP Connect

Port 19333

Handshake

VERS → VACK → Sync

P2P Protocol Parameters
BINARY PROTOCOL
ParameterValue
Magic bytes0x534F5354 ("SOST")
Default port19333
Peer limitsEnforced (inbound + outbound)
DoS protectionAutomatic ban scoring
Ping interval30 seconds
EncryptionX25519 + ChaCha20-Poly1305 (default: on)
Block batch size500 blocks per GETB request
Fast syncHard checkpoints + assumevalid (default on)
P2P Message Types
8 COMMANDS
CommandDirectionDescription
VERSBothVersion handshake (height + genesis hash)
VACKReplyVersion acknowledged
EKEYBothX25519 ephemeral public key exchange
GETBRequestRequest blocks from height
BLCKReplyFull block with transactions
TXXXBroadcastTransaction relay (hex-encoded)
PINGRequestKeepalive ping
PONGReplyKeepalive response

Run Your Own Node

STEP 1

Download

Clone the repository from GitHub:
git clone https://github.com/Neob1844/sost-core.git

STEP 2

Compile

Build from source (C++17, CMake):
mkdir build && cd build && cmake .. && make -j$(nproc)

STEP 3

Connect

Start the node — it connects to seed.sostcore.com:19333 automatically for peer discovery and chain sync.

STEP 4

Sync

The node downloads and validates all blocks from genesis. Full PoW verification, UTXO replay, and mempool initialization. Your node is sovereign.

# Quick start (after build) ./sost-node \ --genesis genesis_block.json \ --chain chain.json \ --wallet wallet.json \ --rpc-user YourUser \ --rpc-pass YourPass \ --profile mainnet \ --p2p-enc on
Dependencies: Ubuntu 24.04 (or similar), build-essential, cmake, libssl-dev, libsecp256k1-dev. The node binary is ~2MB, the full blockchain is lightweight by design.