https://secureum.substack.com/p/solidity-101



76. blockhash 접근 제한

핵심 내용

bytes32 recentHash = blockhash(block.number - 1);  // ✅ 가능 (이전 블록)
bytes32 oldHash = blockhash(block.number - 300);    // ❌ 0 반환
bytes32 currentHash = blockhash(block.number);      // ❌ 0 반환

주의점

  1. 랜덤 생성에 사용 금지
  2. 256블록 제한 고려
  3. 과거 데이터 필요 시

참고

blockhash는 주로 직전 블록의 데이터 무결성 확인이나 단기 게임 로직 등에만 유효하며,

장기 기록·랜덤성·보안이 중요한 용도에는 적합하지 않음.