Files
papers/lux-id-iam/sections/06-user-management.tex
zeekay 9504b4c3ef papers: cover-consistency + build pass on Lux Tier-2/3 catalogue
Sweep across the non-Tier-1 paper catalogue (Tier-1 owned by parallel
agent and excluded). All 113 processed papers already had luxcover
wired up; this commit fixes 14 build breakers and produces fresh
PDFs across the catalogue.

Fixes:
- lux-blockchain-scaling-laws: em-dash inside lstlisting -> --
- lux-corona-pq: stale \input pointing at 03-the-corona-scheme renamed
  to 03-the-corona-scheme (file already renamed on disk)
- lux-lattice-cryptography-primer: same Corona->Corona rename
- lux-formal-verification-lean4: Lean source uses unicode (×, ∀, ∃, ∈,
  ∧, ∨, ∩, ≠, ⟨, ⟩, ·, ¬) inside lstlistings. Added a literate map
  so listings render the math glyphs without UTF-8 fault.
- lux-id-did-specification: ✓/✗ in tabular replaced with \ding{51}
  / \ding{55} (pifont). Added pifont package.
- lux-ntt-simd-implementation: middle-dot in Go assembly listings;
  added literate {·}{\textperiodcentered}.
- lux-ntt-transform: μ, ×, –, — in regular text (no T1 fontenc).
  Replaced with $\mu$/$\times$/--/--- via unicode->latex sweep.
- lux-perpetuals-derivatives, lux-quantum-consensus,
  lux-quasar-consensus, lux-tee-computing-mesh: same unicode->latex
  sweep across body text. Also fixed broken math segment
  `$L_{avg} = 10$\times$$` -> `$L_{avg} = 10\times$`.
- lux-zchain: emoji glyphs in roadmap table replaced with
  parenthetical text.
- lux-triple-proof-consensus: dropped duplicate \usepackage{geometry}
  that clashed with luxcover (geometry option clash).
- pq: defined missing \Rq macro.

PDFs rebuilt for the full Tier-2/3 set.

Excluded (Tier-1, parallel agent): lp-073-pulsar, lp-stricte2epq,
dag-evm-formal, lp-010-quasar-stm-{3,4}, lp-020-quasar-consensus,
lux-institutional-custody, lux-nist-mptc-submission, pqsafe-il5,
pq-rns, plus shared/ and lps/.
2026-05-13 01:27:59 -07:00

82 lines
1.8 KiB
TeX

\section{User Management}
\subsection{User Registration Flows}
Lux.id supports multiple registration patterns:
\begin{enumerate}
\item \textbf{Traditional}: Email/password with verification
\item \textbf{Social}: OAuth providers (Google, GitHub, Twitter)
\item \textbf{Wallet}: Direct blockchain wallet connection
\item \textbf{Federated}: SAML/OIDC from enterprise IdP
\item \textbf{Hybrid}: Wallet + email for recovery
\end{enumerate}
\subsection{Profile Management}
User profiles combine Web2 and Web3 attributes:
\begin{lstlisting}[language=json]
{
"id": "user-123",
"email": "[email protected]",
"wallets": [
{
"chain": "ethereum",
"address": "0x742d35Cc...",
"ens": "user.eth"
},
{
"chain": "lux",
"address": "lux1qpz3a..."
}
],
"credentials": {
"webauthn": ["credentialId1", "credentialId2"],
"totp": true
},
"attributes": {
"kyc_verified": true,
"validator_status": "active"
}
}
\end{lstlisting}
\subsection{Role-Based Access Control (RBAC)}
RBAC implementation follows NIST model:
\begin{equation}
\text{Permission} = \text{Role} \times \text{Operation} \times \text{Resource}
\end{equation}
Role hierarchy example:
\begin{lstlisting}
Admin
+-- Manager
| +-- Validator
| +-- Developer
+-- Auditor
+-- ReadOnly
\end{lstlisting}
\subsection{Attribute-Based Access Control (ABAC)}
ABAC enables fine-grained access control:
\begin{lstlisting}[language=json]
{
"policy": "allow",
"conditions": [
{"attribute": "department", "operator": "equals", "value": "trading"},
{"attribute": "clearance", "operator": ">=", "value": 3},
{"attribute": "nft.balance", "operator": ">", "value": 0}
],
"resource": "/api/trading/advanced",
"actions": ["read", "write"]
}
\end{lstlisting}