mirror of
https://github.com/lux-apps/papers.git
synced 2026-10-30 18:15:21 +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.
36 lines
1.0 KiB
TeX
36 lines
1.0 KiB
TeX
\section{Solidity Interfaces}
|
|
|
|
|
|
\begin{verbatim}
|
|
interface ILuxBridge {
|
|
// Lock tokens on source chain (C-03: monotonic nonce)
|
|
function lock(address token, uint256 amount, bytes32 destChainId,
|
|
address recipient) external returns (bytes32 transferId);
|
|
|
|
// Release tokens on destination chain (via light client proof)
|
|
function release(bytes32 transferId, bytes calldata proof)
|
|
external returns (bool);
|
|
|
|
// Submit fraud proof
|
|
function submitFraudProof(bytes32 stateRoot, bytes calldata zkProof)
|
|
external returns (bool);
|
|
}
|
|
|
|
// LRC20B bridge token (C-01, C-02, C-03 hardened)
|
|
interface ILRC20B {
|
|
// Bridge mint with daily limit and MINTER_ROLE
|
|
function bridgeMint(address account, uint256 amount)
|
|
external returns (bool);
|
|
|
|
// Bridge burn with allowance check
|
|
function bridgeBurn(address account, uint256 amount)
|
|
external returns (bool);
|
|
|
|
// Admin functions
|
|
function grantMinter(address minter) external;
|
|
function revokeMinter(address minter) external;
|
|
function setDailyMintLimit(uint256 limit) external;
|
|
}
|
|
\end{verbatim}
|
|
|