Skip to content
AtlasDocs
Sign inGet started
Updated Aug 04, 2026

The Atlas Model

Most auth libraries stop caring once login succeeds. Atlas doesn't. After Login returns, the SDK keeps proving to the server that the process is still the one that logged in: same binary, same memory, same network stack, still alive. If any of that stops being true, the process ends.

What Login starts

Login doesn't end at the handshake. From that point forward, every assumption is re-verified for the entire life of the session - nothing is trusted just because it was true a moment ago. This is zero trust applied to the client itself, not just the connection.

  • The server re-authenticates the session continuously. Every check the client passed at login runs again, on a loop, for as long as the process is alive. Passing once buys nothing later.
  • Every message between client and server is signed, fresh, and single-use. Nothing is replayable.
  • The server holds full control over every live session. End, message, or re-verify any session on demand. The client has no ability to resist, delay, or negotiate.
  • The binary and its runtime state are continuously verified against login. Modification, injected code, or external interference is treated as compromise - acted on, not logged.
  • Detection never announces itself. No dialog, no error, no exception. The response to a failed check is the process ending.
  • Nothing static ever sits in the client waiting to be stolen. No reusable secret, no long-lived token, no single value that unlocks the next session if it leaks.

Authentication is not a gate the client passes once. It's a relationship the server keeps re-verifying - continuously, until the session ends on the server's terms.

Two calls

#include <Atlas.h>
#include <iostream>
int main() {
Atlas::API_KEY = "YOUR_API_KEY";
Atlas::Startup();
if (!Atlas::License::Login("ATLAS-A9F2K-4RMXM")) {
std::cout << Atlas::Data::GetErrorMessage() << std::endl;
return 1;
}
return 0;
}

The cadence

The SDK runs its own heartbeat independent of anything you call. Account sessions poll every 5 s; license sessions hold a persistent socket and beat every 3-7 s. Atlas::Network::CheckAuthentication() is for explicit checkpoints before a sensitive action - it does not replace the background loop.