Build reliable systems.
Study programming, data structures, testing, databases, networking, Git, system design, and production delivery.
- Python, JavaScript, TypeScript, and SQL
- Practical submissions completed in Code Lab
Study software engineering, cybersecurity, and frontier AI through reviewed lessons, practical work, server-graded assessments, and exam-gated credentials.
Every program combines reviewed instruction, practical work, explicit grading requirements, and a credential path.
Study programming, data structures, testing, databases, networking, Git, system design, and production delivery.
Progress from security foundations into authorized security operations through coursework, Whitehat, and GreyPath.
Learn how AI systems work, where they fail, how their boundaries are secured, and how their output is evaluated.
Completion requires more than reaching the end of a page. Learners must understand the material, complete practical work, and satisfy the published checks.
# Validate before crossing the boundary
def accept_event(payload):
if not is_trusted(payload):
raise BoundaryError()
return normalize(payload)The guided tour explains lesson structure, grading, credential requirements, and access levels without exposing protected answers or solutions.
The public catalog and tour require no account. A free campus profile requires no payment.Restoring your learner record…
Explore every class, certification, capstone, and diploma currently offered. Each listing is generated from the same curriculum and credential registries that power Academy grading.
Loading catalog…
Continue coursework, find classmates, join focused rooms, and share useful field notes from one clear campus workspace.
Public posts are identity-signed. Use filters to focus the activity stream.
ctf --start
Enter send / Shift+Enter newline
operator@greynoc:~$ rooms --connect
NODE="greynoc-campus"
TRANSPORT="signed/realtime"
MODE="community"
channel --lobby|public|private
msg --send <text>
room --new <name>
room --join <code>
room --leave
buzz --send
file --attach
profile --open
room --info
clear
Your name, bio, and colors travel together across rooms, profiles, and the community feed.
Choose the name and introduction people see first.
[b]bold[/b]
[i]italic[/i]
[#ff00ff]color[/]
[marquee]scroll[/marquee]
%n reader name · %d date · %t time
Build a combination that stays readable wherever your persona appears.
These use the real GreyNOC components, so what you see here is what the network sees.
See who is around, start a secure conversation, and keep your closest people within reach.
People waiting to join your circle.
Everyone in your circle.
Set the short signal people see beside your name.
Your status is public to your buddies. Away keeps you connected, but softens your name in lists.
Let GreyNOC update your presence when you step away.
Choose the interface mood for this device. Persona colors stay with your profile.
Device-only preferences. Theme and idle timing stay in this browser; your public status follows your signed persona.
—Manage what others can see, how this device remembers you, and the security controls tied to your GreyNOC identity.
Choose the signals you share with other people. Every change takes effect immediately.
Blocks are tied to identity keys and never uploaded as a social graph.
Your identity, profile appearance, and session controls.
Review how GreyNOC handles data and the terms that apply when you use the service.
Permanent actions that cannot be undone.
This removes your saved profiles, identity key, friends, theme, and local settings. You will appear as a new person the next time you enter.
Find quick answers, chat with BB, or send a case to GreyNOC Support.
Open BB Academy, choose a school and course, then start the first available module. Your progress is saved to this device identity as you complete lessons, quizzes, and exercises.
No. BB is not AI.
BB only reads editor code when you explicitly attach it. BB can describe visible patterns and local diagnostics, but it does not execute your program.
BB questions and optionally attached editor code stay in this browser. A human support case is transmitted only when you choose to submit one.
Open a support ticket for account access, enrollment, billing, grading decisions, lesson content, or a technical issue that needs someone to review your specific case.
GreyNOC occasionally shares two months of Pro Academy access with people who find us through community outreach. Before using a key, note that it binds to your verified device identity, can be redeemed once, and does not stack with active Pro access.
If you arrived through our professional network, use LINKEDIN. If Ashley referred you, use ASHLEY.
Eligible keys unlock 60 days of coursework, Code Lab grading, operator ranges, exams, and credentials.
Room messages use identity-bound end-to-end encryption. Use the security guide below for the exact trust model, verification steps, and limitations.
One enrollment covers every program GreyNOC runs: guided coursework, graded labs, the GreyPath operator range, proctored-style exams, and credentials anyone can verify. It's all tied to the identity key already in your browser — no account to make, nothing to remember.
None of this is landing-page copy — every claim below is enforced in code, and most of them you can verify from your own browser. The full detail lives in the , written from what the code actually does.
No email, no password, no account database. Your identity is an Ed25519 key pair generated in your browser — the private key never leaves your device.
Private rooms, DMs and calls run peer-to-peer, end-to-end encrypted. Offline messages are sealed with hybrid post-quantum crypto: X25519 + ML-KEM-768.
The messenger embeds no tracking. GreyPath Operations uses signed HttpOnly cookies for legal authorization and in-progress run state. Lobby chatter lives in memory and is erased on restart.
Checkout happens on Stripe's hosted page. Card details go directly to Stripe and never touch a GreyNOC server. Cancel any time from the receipt Stripe emails you.
Exam answer keys and range flags are never shipped to your browser — view-source proves it. Submissions are graded server-side, so a devtools-savvy learner earns the same credential as everyone else.
Every certificate carries a serial that resolves at /verify — no
login, no screenshot, no taking our word for it. The name on it locks permanently to
the identity that earned it.
Counted live from the course registry this page is running — not an estimate.
31 subjects, from your first line of code to the expert tier, graded right in your browser. Your first two lessons are free — judge the teaching before you pay for it.
The defender ladder: 36 lessons and 26 hands-on labs across six belts, from security foundations to the black-belt defender mindset. Labs are flag-based and graded server-side.
No walkthroughs. Each objective is a terse brief, an artifact, and a flag to earn. BB drops escalating Socratic hints — and burning one costs score, because in the field nobody hands you the answer. 20 tracks, 141 objectives, every submission graded on the server.
Plus 20 per-track clearances and 10 hacker badges — recomputed purely from your solves, so a rank can never drift from what you actually did.
Enrolling buys the training, not the credential: every certificate is exam-gated. There is no pay-to-pass.
/verifyMonitor Meshtastic nodes, link quality, positions and field traffic from one common operating picture.
Connect a Meshtastic radio over USB to plot nearby nodes, link quality, battery, position and field traffic. You can also load a simulated network to evaluate the console.
Meshtastic turns inexpensive LoRa radios into a long-range, off-grid mesh that needs no cell service or internet. Grab a supported board, flash the firmware, plug it in over USB, then hit Connect. Learn more at meshtastic.org.
Each learning path opens in its own focused workspace, with the lesson, editor, checks, and next action kept together.
Run checks when you are ready. Findings will link back to the exact line that needs attention.
Every pull is a collision of retro tech, cyber lore, and forbidden artifacts. Tear open the storm. Claim the rarest cards. Find the golden PRO PASS and take GreyNOC Pro for 24 hours.
Effective 16 August 2026 · Operated by GreyNOC · Contact: [email protected]
GreyNOC operates this service (the retro messenger, Code Lab, training academy, certifications,
DROP advisory board, GreyNOC OS arcade, and GreyMESH) at chat.grey-noc.com. For
anything in this document — questions, data requests, complaints — email
[email protected].
We do not collect names, emails, phone numbers, or passwords to use GreyNOC. Your identity is an Ed25519 key pair generated in your browser on first use. The private key never leaves your device; the server only ever sees the public half, which acts as your pseudonymous handle. Your screen name is whatever you choose — it does not need to be your real name. Because we hold no account record, losing your device key (for example by clearing browser storage without a migration code) is unrecoverable by design.
WebRTC connection setup uses Google's public STUN servers and may reveal network metadata, including IP information, to Google and to the peers you connect with. STUN does not receive the encrypted room, message, or call content.
The Community Lobby, public rooms, and the home feed are not private: what you post there is visible to everyone connected and passes through the server in plaintext. This community content is held in server memory only and is erased whenever the server restarts. DROP advisories you publish are public by intent and persist until you delete them or the bounded advisory store prunes the oldest entries (you can delete your own advisories in-app). Presence — your screen name, online/away status, and the “where in the app” activity badge — is broadcast to other users while you are connected; you can blank the activity badge with Hide my activity in Settings or leave the roster entirely with appear offline. Presence is never written to disk.
Persisted server-side, keyed to your identity key or an opaque vault token your browser holds:
These records survive server restarts. The store has bounded capacity; if a limit is reached, the service may prune the oldest or least-recently-used records before the retention event listed below.
/verify to anyone who has
the certificate's unguessable serial. GreyPath operation certificates may use a separate
name you choose for that credential; it is locked when you connect the completion to your
GreyNOC key. Treat sharing a certificate serial as publishing its printed name.
A full wipe removes your certificates and the locked name.Browser-only state includes your private keys, theme and preferences, trust pins for buddies' keys, cached progress, and — if you use GreyMESH — a capped history of mesh messages you've seen (including LoRa direct-message text), kept on this device only so your inbox survives a reload. You can wipe it any time (section 11).
GreyNOC Pro checkout happens on Stripe's hosted payment page. Your card details go directly to Stripe and never touch GreyNOC's servers. We pass Stripe your identity public key as the purchase reference; Stripe returns and we store: your Pro status, Stripe customer and subscription IDs, your checkout email, and the renewal date — keyed to your identity key so your entitlement can be honored and refunds or chargebacks can revoke it. Subscriptions are cancellable any time from the receipt Stripe emails you. Stripe processes your payment data under its own privacy policy.
We use your IP address transiently for rate limiting and abuse defense (connection caps, attack-pattern scoring, temporary bans). This data lives in server memory with short windows (roughly 10-minute scoring, 15-minute automatic bans). High-severity security events (for example, exploit probes) may be written to server console logs with the offending IP. Operator-imposed manual bans store the IP, reason, and timestamps until they expire or are lifted, and may be permanent. Bounded administrative-control and GreyPath-deletion audit records also store the operator's IP.
The core messenger sets no cookies and GreyNOC embeds no analytics, ad, or fingerprinting
scripts. GreyPath Operations sets signed, functional HttpOnly cookies: one remembers acceptance
of its authorization statement (normally 30 days), and separate cookies resume in-progress
Black Glass, Quiet Meridian, and Last Light runs (normally 12 hours). They are scoped to the
relevant /greypath routes, use SameSite=Strict, and are marked
Secure in production. Client state such as identity keys, preferences, progress,
the 18+ confirmation, trust pins, and saved GreyMESH message history is kept in browser local
storage to make the app function. Our edge provider (Cloudflare) may set its own operational
cookies as part of serving the site.
chat.grey-noc.com
transits Cloudflare, which sees client IPs and request metadata and keeps edge logs under its
own policy.stun.l.google.com and stun1.l.google.com, which can receive IP and
connection metadata but not encrypted room, message, or call content.We do not sell personal information, and we do not share it for advertising. Ever.
If you connect a Meshtastic node, understand that LoRa mesh traffic is a separate, lower-trust transport: node names, GPS positions, telemetry, and mesh text received by the bridge are rebroadcast to all connected GreyNOC users and are governed by Meshtastic's own channel encryption, not GreyNOC's end-to-end encryption. Mesh node data expires from server memory after a few hours; a node-to-identity binding you create persists until you unbind it. Mesh messages you view — including LoRa direct messages — are cached in your browser's local storage (capped, device-only) so your inbox survives a reload; clear it from the inbox toolbar or with a full data wipe (section 11). Because a LoRa from address is spoofable, sender names on mesh messages are advisory, not authenticated.
The KEEP / WIPE switch in Settings' Danger Zone erases your local identity and settings, and deletes your server-side saved profiles, training progress, exam records, and certificates (including the locked certificate name). Because of how the system is built, a wipe does not remove: your Pro billing record (including the checkout email), sealed offline messages queued for you, buddy-list entries, published encryption prekeys, GreyMESH bindings, GreyNOC OS, FRAGNET, GreyNet Browser, and Rips records, promotion records, Academy support tickets, security/ban/audit records, or DROP advisories you published (delete those in-app first). To have those residuals removed — or to request a copy of the data we hold against your identity key — email [email protected]. We verify such requests by asking you to prove control of the identity key (and, for billing records, the checkout email), since that key is the only thing that ties data to you.
If you are in the EU/UK (GDPR) or California (CCPA/CPRA), the rights to access, correct, delete, and port your data apply as described above; we honor them regardless of where you live. California residents: section 12 is your full California Privacy Notice, including the categories we collect, how to exercise each right, and our response times. We cannot produce end-to-end encrypted content in response to any request — we do not hold the keys. We process the little personal data we have to provide the service you request (contract), and to keep the service secure (legitimate interest).
This section is the notice California residents are entitled to under the California Consumer Privacy Act as amended by the CPRA. GreyNOC is available to California residents. We honor everything below regardless of whether the CCPA's business-size thresholds actually apply to us — we would rather meet the standard than argue about it.
You see a short version of this notice on the age & policy gate, before your identity key is generated or any record is written against it. To be exact about what the gate cannot come before: loading the page at all means your request reaches our edge provider and our server, which see your IP address, and the app opens its service connection as the script loads (sections 7 and 9). That transport-level collection is how the page arrives on your screen, so it cannot wait behind a gate the page itself renders. Everything else does wait. Sections 3–9 above are the long version; the statutory categories map onto them like this:
We do not collect Social Security or government ID numbers, financial account numbers (Stripe holds those, not us), biometric information, precise device geolocation from the app, education records as defined by FERPA, or inferences drawn to build a profile about you. We run no ads, no analytics, and no fingerprinting.
We keep each category only as long as section 5 describes: pending buddy requests and results expire after 30 days, uncollected sealed messages after 7 days, IP scoring within roughly 10–15 minutes (longer only for manual bans and audit records), and community content until the next server restart. Saved profiles, training progress, exam records, and certificates persist until you wipe them. Records a wipe does not reach — your Pro billing record and checkout email, promotion records, buddy-list entries, published prekeys, GreyMESH bindings, arcade and range records, support tickets, and the rest of the section 11 list — persist until you ask us to remove them; security, ban, and audit records are kept for as long as they serve that purpose, and an operator-imposed ban may be permanent (section 7). The store has bounded capacity, so the oldest or least-recently-used records may be pruned sooner. We do not keep personal information for longer than needed for these purposes.
We have not sold personal information, and we have not shared it for cross-context behavioral advertising, in the preceding 12 months — nor will we. We do not sell or share the personal information of anyone, including minors under 16. Because there is nothing to opt out of, GreyNOC does not run a “Do Not Sell or Share My Personal Information” link; if that ever changes, this section changes with it and the link appears. The service providers in section 9 (Stripe, Cloudflare) process data on our behalf under contract, which is not a sale or a share.
We do not use or disclose sensitive personal information for any purpose beyond what is necessary to provide the service you asked for. We do not use it to infer characteristics about you. Your identity private key — the credential that would unlock everything — never leaves your device, so we never hold it. Because we make no use of sensitive personal information that the CPRA lets you limit, the “Limit the Use of My Sensitive Personal Information” right would not change how we handle your data; you can exercise it anyway and we will confirm it in writing.
Most of it you can do yourself, instantly, without asking us: the KEEP / WIPE switch in Settings' Danger Zone deletes your local identity and your server-side profiles, progress, exam records, and certificates. For anything the wipe leaves behind (section 11), email [email protected] with the request you are making. That mailbox is the designated method for all California requests.
How we verify you. GreyNOC has no accounts, so the only thing that ties data to you is your identity key: we ask you to prove control of it by signing a challenge we send (and, for billing records, to confirm the checkout email). We cannot honor a request we cannot verify to this standard, and the law does not require us to re-identify data we hold in a form that cannot be linked to a real person — but we will always tell you which of the two it was rather than going quiet. An authorized agent may submit a request for you with your written permission; we will still need the key-control proof.
Timing. We confirm receipt within 10 business days and respond within 45 calendar days. If we need more time we will tell you before the 45 days are up and take at most another 45 (90 total). We do not charge a fee to handle these requests, unless one is manifestly unfounded or excessive, in which case we will explain before doing anything.
What we cannot produce. End-to-end encrypted content — private rooms, direct messages, calls, and sealed offline mail — is not something we can hand over, correct, or read on request. We do not hold the keys. That is a design property of the service, not a refusal.
We do not disclose personal information to third parties for those parties' own direct marketing purposes. If you want that confirmed in writing, email us and we will send it.
GreyNOC is an 18+ service (section 13) and is not directed to minors. If content was nonetheless posted here by someone under 18, that person — or a parent or guardian — may email us to have it removed. Removal takes the post out of public view; it may not erase copies other users already saw, and public community content is erased on server restart in any event.
GreyNOC's free features cost nothing; GreyNOC Pro's current price is shown on the Go Pro page before you check out. To file a complaint about the service, email [email protected]. California residents may also contact the Complaint Assistance Unit of the Division of Consumer Services of the California Department of Consumer Affairs in writing at 1625 North Market Blvd., Suite N 112, Sacramento, CA 95834, or by telephone at (800) 952-5210.
GreyNOC is intended for adults and requires you to be 18 or older, confirmed by the age gate on first run (self-attested). The service is not directed to children, and we do not knowingly collect personal information from anyone under 18 — if you believe we hold such data, email us and we will delete it promptly.
Beyond end-to-end encryption, the service uses signed identities, post-quantum sealing for offline mail, a hardened content-security policy, and active abuse monitoring. No system is perfect: if a breach affects personal data we hold, we will notify affected users where feasible and any supervisory authority as required by law (including within 72 hours where GDPR applies). Security researchers: responsible disclosure is welcome — see the project's security policy before testing anything.
We may update this document as the service evolves. Material changes will be posted here with a new effective date; continuing to use GreyNOC after a change takes effect means you accept the updated version.
By using GreyNOC you agree to this User Agreement and the Privacy Policy above. You must be at least 18 years old.
GreyNOC is offered to California residents on the same terms as everyone else. Section 12 of the Privacy Policy is your California Privacy Notice: it lists what we collect, states that we neither sell nor share personal information, and explains how to exercise your CCPA/CPRA rights. We will not deny service, change your price, or degrade your experience because you exercised those rights. Nothing in this agreement waives a right California law gives you, and where any term here conflicts with California law as it applies to you, California law controls and the rest of this agreement stays in effect.
Access, entitlements, and credentials are bound to your device identity key. Keep your device and browser storage safe. If you lose the key without a Pro migration code, we cannot restore what was bound to it — there is no account-recovery back door, on purpose.
You keep ownership of what you post. You grant GreyNOC the limited license needed to display and relay it to other users (that is what a chat service does). Public posts are public; community content is ephemeral and vanishes on server restart, so keep your own copies of anything you care about.
Certificates are earned by passing proctored-style exams and are issued under the name you lock, verifiable by anyone holding the certificate serial. Cheating, sharing exam content, or gaming the grader voids the credential.
The service, including all training content, is provided “as is”, without warranty of any kind. Educational material is not professional, legal, or career advice. We do not guarantee uptime — community data does not survive restarts, and the service may change or end at any time.
To the maximum extent permitted by law, GreyNOC's total liability for any claim arising from the service is limited to the amount you paid us in the twelve months before the claim, and we are not liable for indirect, incidental, or consequential damages.
You can stop using GreyNOC at any time (see section 11 for erasure). We may suspend or terminate access for violations of this agreement.
This agreement is governed by the laws of the United States. If any provision is found unenforceable, the rest remains in effect.
Questions about this agreement or your data: [email protected].