CS
Coki Studios Docs CS ID & Edge
RFC 6749 PKCE S256 Hardware-Backed Keys

CS ID Connect & Servicios Edge

Autenticación universal para aplicaciones web y nativas mediante OAuth 2.1, Passkeys WebAuthn y protección criptográfica respaldada por hardware.

Gestionar Client IDs en Developers →

Web Component & SDK JavaScript

Integra inicio de sesión federado con <csid-connect-button> o el módulo ESM desde el CDN oficial:

<script type="module" src="https://cdn.cokistudios.com/csid-connect.js"></script>
<csid-connect-button client-id="tu_client_id" theme="glass" shape="pill" mode="popup"></csid-connect-button>

<script>
  document.querySelector('csid-connect-button').addEventListener('success', (e) => {
    console.log('Usuario:', e.detail.user);
    console.log('Access Token:', e.detail.accessToken);
  });
</script>

One-Tap & Flujo Programático

import { CSIDConnect } from 'https://cdn.cokistudios.com/csid-connect.js';

CSIDConnect.init({ clientId: 'tu_client_id', mode: 'popup' });

CSIDConnect.promptOneTap({
  onAuth: (res) => console.log('One-Tap exitoso:', res.user),
  onDismiss: () => console.log('Descartado por usuario')
});

const auth = await CSIDConnect.signIn({ mode: 'popup' });

SDKs Nativos (Swift / Kotlin)

SwiftUI & ASWebAuthenticationSession

Usa Universal Links (https://cokistudios.com/authorize) o esquemas propios junto a CryptoKit:

import SwiftUI
import AuthenticationServices
import CryptoKit

Task {
    let user = try await CSIDManager.shared.loginWithOAuthPKCE(
        clientId: "tu_client_id",
        redirectUri: "miapp://auth"
    )
    print("Conectado: \(user.email)")
}

Kotlin con CSIDKit

Flujo PKCE sobre Custom Tabs respaldado por AndroidKeyStore (TEE / StrongBox):

val csid = CSIDClient.Builder(context)
    .setClientId("tu_client_id")
    .setRedirectUri("miapp://auth")
    .build()

csid.launchAuth(activity) { result ->
    when (result) {
        is CSIDResult.Success -> Log.d("CSID", "Conectado: ${result.user.email}")
        is CSIDResult.Error -> Log.e("CSID", result.message)
    }
}

Especificación Criptográfica CSMS E2EE

El servicio de mensajería CSMS protege las salas punto a punto con cifrado autenticado AES-256-GCM y llaves protegidas por hardware en cada plataforma (Secure Enclave / T2 / AndroidKeyStore).

Parámetro Especificación
Algoritmo AES-256-GCM (Apple CryptoKit.AES.GCM / Android AES/GCM/NoPadding)
Formato Payload 🔒 enc:v1:<base64-iv>:<base64-ciphertext>
Derivación de Sala SHA-256(roomId + ":CSMS_E2EE_COKI_STUDIOS_v1_SALT_FORKAR")

Mapa de Subdominios y Endpoints Edge

Dominio / Ruta Servicio
https://cokistudios.com Portal principal, CS ID, OAuth /authorize y Worker Edge.
https://docs.cokistudios.com Centro oficial de documentación técnica y manuales.
https://developer.cokistudios.com Consola de desarrolladores, OAuth Client Apps y Looping Web REPL.
https://repo.cokistudios.com Registro LoopModules (/modules) e instaladores /engine/*.
https://cdn.cokistudios.com Distribución edge de SDKs (csid-connect.js) y módulos CAC.
POST /api/moderate & /api/notify/* Moderación anti-evasión + Workers AI y notificaciones OTP/SES.