Time-Lock Contract – Gold Standard Technical Record
자산 또는 데이터를 미리 정해진 기간 동안 잠그고 만료 시 자동으로 해제하는 결정론적 스마트 계약 패턴.
Time-Lock Contract는 블록체인 애플리케이션, 특히 탈중앙화 금융(DeFi) 및 암호화폐 관리에서 일반적으로 사용되는 결정론적 스마트 계약 패턴입니다. 핵심 기능은 자산 또는 특정 작업에 액세스하거나 실행하기 전에 대기 기간을 강제하는 것입니다. 일반적으로 Time-Lock Contract는 자금을 보유하거나 데이터를 보유하며 미래의 타임스탬프 또는 블록 높이로 프로그래밍됩니다. 이 미리 결정된 시간에 도달하면 계약은 자동으로 잠긴 자산을 해제하거나 토큰에 대한 베스팅 스케줄 잠금 해제 또는 인출 허용과 같은 특정 기능을 활성화합니다. 이 메커니즘은 조기 액세스를 방지하여 보안을 강화하며, 지연 거래, 토큰 분배를 위한 베스팅 기간 또는 에스크로 서비스와 같은 기능을 구현하는 데 사용될 수 있습니다. 결정론적 특성은 시간 경과 또는 블록 진행에만 기반하여 해제 조건이 충족되도록 보장하며, 시간 추적 측면에 외부 오라클이 필요하지 않고 블록체인의 내부 시계 또는 블록 높이에 의존합니다.
graph LR
Center["Time-Lock Contract – Gold Standard Technical Record"]:::main
Pre_logic["logic"]:::pre --> Center
click Pre_logic "/terms/logic"
Center --> Child_oracles["oracles"]:::child
click Child_oracles "/terms/oracles"
Center --> Child_smart_contract_security["smart-contract-security"]:::child
click Child_smart_contract_security "/terms/smart-contract-security"
Rel_smart_contracts["smart-contracts"]:::related -.-> Center
click Rel_smart_contracts "/terms/smart-contracts"
Rel_advanced_propulsion_systems["advanced-propulsion-systems"]:::related -.-> Center
click Rel_advanced_propulsion_systems "/terms/advanced-propulsion-systems"
Rel_collateralized_debt_position_cdp["collateralized-debt-position-cdp"]:::related -.-> Center
click Rel_collateralized_debt_position_cdp "/terms/collateralized-debt-position-cdp"
classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
linkStyle default stroke:#4b5563,stroke-width:2px;
🧒 5살도 이해할 수 있게 설명
Time-lock contract는 타이머가 달린 디지털 돼지 저금통과 같습니다. 돈을 넣고 날짜를 설정하면, 그 날짜가 올 때까지 아무도 (심지어 당신조차도!) 꺼낼 수 없습니다.
🤓 Expert Deep Dive
Time-lock contracts leverage the inherent immutability and deterministic execution of smart contracts. The locking condition is typically implemented using block.timestamp or block.number (for block height) checks within the contract logic. For instance, a require(block.timestamp >= unlockTime) statement prevents execution until the specified time. This pattern is fundamental for secure vesting schedules, preventing rug pulls in token launches, and implementing atomic swaps where both parties must wait for a specific condition. Trade-offs include the potential for front-running if the unlock action is initiated by a transaction that can be observed before it's mined, and the reliance on the blockchain's timestamp accuracy, which can be subject to miner manipulation, although this is generally difficult to exploit significantly for time-locks. The 'Gold Standard Technical Record' designation implies a robust, well-audited, and widely accepted implementation of this pattern.