Download Game! Currently 63 players and visitors. Last logged in:FimirStylusMadcapJagoman

Blitzer's Blog >> 71609

Back to blogs index
Posted: 31 Jul 2026 12:10 [ permalink ]
 * OMEGA CORE ROUTER - Standalone PoC
 * Protokolla: OMEGA-IRC (v1.0)
 */

const net = require('net');

/ 1. Konfiguraatio ja tila
const CONFIG = {
    node_id: "OmegaCore_Backend_" + Math.floor(Math.random() * 1000),
    host: "127.0.0.1",    port: 6667,    channel: "#omega",    nick:
"OmegaCore",
    capabilities: ["FILE_STORAGE", "UPDATE_RELAY", "GOSSIP"]
};

const STATE = {
    trusted_peers: ["RootNode", "AdminClient"],
    known_peers: {},    inbox_count: 0,    outbox_count: 0,    boot_time:
Date.now()
};

/ 2. OMEGA-IRC Protokollan muotoilijat
const OmegaProtocol = {
    alive: (config) => `OMG-ALIVE: ${JSON.stringify({ id: config.node_id, cap:
config.capabilities, reach: `irc://${config.host}:${config.port}/${config.chann
el}` })}`,
    debug: (key, val) => `OMG-DEBUG: [${key}] -> ${JSON.stringify(val)}`,
    file: (fileId, meta) => `OMG-FILE: ${JSON.stringify({ file_id: fileId,
meta: meta })}`,
    update: (fileId, payload) => `OMG-UPDATE: ${JSON.stringify({ target_file:
fileId, payload: payload })}`
};

/ 3. IRC-Asiakasohjelman logiikka
const client = new net.Socket();let isJoined = false;

console.log(`[*] YhdistetC$C$n OMEGA-reititintC$ verkkoon ${CONFIG.host}:${CONF
IG.port}...`);

client.connect(CONFIG.port, CONFIG.host, () => {
    client.write(`NICK ${CONFIG.nick}\r
`);
    client.write(`USER ${CONFIG.nick} 0 * :OMEGA Core Router\r
`);
});

client.on('data', (data) => {
    const lines = data.toString().split('
');
    
    for (let line of lines) {
        line = line.replace('\r', '').trim();
        if (!line) continue;

        // PING-PONG - VC$lttC$mC$tC6n IRC-yhteyden yllC$pitoon
        if (line.startsWith('PING ')) {
            client.write(`PONG ${line.substring(5)}\r
`);
            continue;
        }

        // Tunnistetaan onnistunut yhdistC$minen (MOTD loppu tai 001
tervetuloviesti)
        if (!isJoined && (line.includes(' 376 ') || line.includes(' 001 '))) {
            client.write(`JOIN ${CONFIG.channel}\r
`);
            isJoined = true;
            console.log(`[+] Yhdistetty! LiitytC$C$n kanavalle
${CONFIG.channel}`);
            
            // Suoritetaan kC$ynnistysrutiini pienen viiveen jC$lkeen, jotta
kanavalle ehtii liittyC$
            setTimeout(performBootSequence, 1000);
        }

        // Pakettien kuuntelu ja parsinta
        const match = line.match(/^:([^!]+).*? PRIVMSG ([^ ]+) :(.*)$/);
        if (match) {
            const sender = match[1];
            const target = match[2];
            const msg = match[3];

            // Ignorataan omat kaiut
            if (sender === CONFIG.nick) continue;

            if (msg.startsWith('OMG-')) {
                handleOmegaPacket(sender, msg);
            }
        }
    }
});

client.on('error', (err) => {    console.error('[-] OMEGA Router
Verkkovirhe:', err.message);});

client.on('close', () => {    console.log('[-] OMEGA Router yhteys
katkaistu.');    process.exit(1);});

/ --- OMEGA ROUTER RUTIINIT ---

function broadcast(msg) {
    if (isJoined) {        client.write(`PRIVMSG ${CONFIG.channel} :${msg}\r
`);        console.log(`[TX] ${msg}`);    }
}

function performBootSequence() {
    console.log("[*] Suoritetaan OMEGA Boot Sequence...");

    // Vaihe 1: Ilmoitetaan olemassaolosta
    broadcast(OmegaProtocol.alive(CONFIG));

    // Vaihe 2: Dumpataan muuttujat yksitellen debug-hengessC$
    broadcast(OmegaProtocol.debug("CONFIG", CONFIG));
    broadcast(OmegaProtocol.debug("STATE", STATE));

    // Vaihe 3: KC$ynnistetC$C$n GOSSIP-syke (60 sekunnin vC$lein)
    setInterval(() => {
        STATE.inbox_count++; // Simuloidaan jotain elC$mC$C$
        broadcast(OmegaProtocol.alive(CONFIG));
    }, 60000);
}

function handleOmegaPacket(sender, msg) {
    console.log(`
[RX <- ${sender}] ${msg}`);

    if (msg.startsWith('OMG-ALIVE:')) {
        try {
            const payload = JSON.parse(msg.substring(10).trim());
            STATE.known_peers[payload.id] = { last_seen: Date.now(), reach:
payload.reach };
            console.log(`  -> Peer lisC$tty/pC$ivitetty: ${payload.id}`);
        } catch (e) {
            console.error("  -> Viallinen OMG-ALIVE payload.");
        }
    } 
    else if (msg.startsWith('OMG-FILE:')) {        console.log("  ->
Tunnistettiin OMEGA FILE metadata. Jatkotoimenpiteet valmiudessa.");
    }
    else if (msg.startsWith('OMG-UPDATE:')) {        console.log("  ->
Tunnistettiin OMEGA UPDATE. Puskuroitaisiin in-memory tauluun/levylle.");
    }
    else if (msg.startsWith('OMG-DEBUG:')) {        // Debug-viestit voidaan
ignoroida lokaalisti, ne ovat vain ihmisiC$ varten kanavalla
    }
}