mirror of
https://github.com/lux-apps/papers.git
synced 2026-11-03 05:07:46 +00:00
Restructured from flat .tex/.pdf files into per-paper subdirectories. Added Antje Worring as co-author on all papers. Synced PDFs to pdfs/ for download site.
38 lines
1.4 KiB
TeX
38 lines
1.4 KiB
TeX
\section{Confidential Token Standard}
|
|
|
|
|
|
\subsection{LRC-721P (Private NFTs)}
|
|
|
|
Extension of ERC-721 with privacy:
|
|
|
|
\begin{algorithm}[H]
|
|
\caption{Shielded NFT Transfer}
|
|
\begin{algorithmic}[1]
|
|
\State \textbf{Input:} NFT ID $n$, recipient address $A_{\text{recv}}$, nullifier $\nu$
|
|
\State \textbf{Output:} zk-SNARK proof $\pi$
|
|
\State
|
|
\State // Prove ownership without revealing identity
|
|
\State $\text{commitment}_{\text{old}} \leftarrow \text{Hash}(n, A_{\text{sender}}, \text{salt})$
|
|
\State $\text{commitment}_{\text{new}} \leftarrow \text{Hash}(n, A_{\text{recv}}, \text{salt}')$
|
|
\State
|
|
\State // Public inputs: $(\text{commitment}_{\text{old}}, \text{commitment}_{\text{new}}, \nu)$
|
|
\State // Private inputs: $(n, A_{\text{sender}}, A_{\text{recv}}, \text{salt}, \text{salt}')$
|
|
\State
|
|
\State $\pi \leftarrow \text{Prove}\left(\begin{array}{l}
|
|
\text{commitment}_{\text{old}} \text{ in Merkle tree} \\
|
|
\land \ \nu = \text{Hash}(n, A_{\text{sender}}) \\
|
|
\land \ \text{commitment}_{\text{new}} = \text{Hash}(n, A_{\text{recv}}, \text{salt}')
|
|
\end{array}\right)$
|
|
\State \textbf{return} $\pi$
|
|
\end{algorithmic}
|
|
\end{algorithm}
|
|
|
|
\textbf{Privacy Properties}:
|
|
\begin{itemize}[leftmargin=1.1em]
|
|
\item NFT ownership hidden (only commitment visible)
|
|
\item Transfer recipient hidden (encrypted address)
|
|
\item Transfer history unlinkable (nullifiers prevent double-spend)
|
|
\item Optional metadata disclosure via auditor key
|
|
\end{itemize}
|
|
|