OKRW_EAS_TRANSFER_LIMIT_POLICY
발신자가 EAS 스키마로 미인증일 때만 적용되는 건당 OKRW 전송 상한입니다. KYC 계층 접근 프리미티브로 사용됩니다.
EAS attestation 검사와 건당 OKRW 상한을 결합한 템플릿입니다. 상한은 미인증 발신자에게만 발동되며, 인증된 발신자는 금액과 무관하게 입장이 허용됩니다(다른 적용 정책의 영향은 별도). KYC 계층 접근의 가장 일반적인 프로덕션 패턴으로, 미인증은 소액, 인증은 무제한(또는 다른 정책의 제약을 받음)으로 동작합니다.
Solidity struct + ABI
IPcl.sol에서:struct OkrwEasTransferLimitPolicy {
address easContract; // EAS 배포
address indexContract; // EAS Indexer
bytes32 schemaUid; // 발신자를 상한에서 면제시키는 스키마
uint256 transferLimitAmount; // 미인증 발신자에 적용되는 상한
} ABI 튜플 약칭:
(address easContract, address indexContract, bytes32 schemaUid, uint256 transferLimitAmount).PolicySet.policy용 인코딩:OkrwEasTransferLimitPolicy memory p = OkrwEasTransferLimitPolicy({
easContract: 0x1000000000000000000000000000000000000007,
indexContract: 0x1000000000000000000000000000000000000008,
schemaUid: 0xabcd...,
transferLimitAmount: 1_000_000 ether // 미인증 발신자에 1,000,000 OKRW 상한
});
bytes memory policyBytes = abi.encode(p);
// PolicySet.templateId = "OKRW_EAS_TRANSFER_LIMIT_POLICY" 정책 평가 방식
각 OKRW 전송에 대해 다음을 수행합니다.
1. 발신자가
2. 인증된 경우 입장이 허용됩니다(이 템플릿 단독으로는 인증 발신자에게 상한을 부과하지 않습니다).
3. 미인증인 경우
미인증 경로가 컴플라이언스에서 자유로운 것은 아니며, 단지 소액을 허용할 뿐입니다.
1. 발신자가
schemaUid 하의 유효 attestation을 보유하는지 확인합니다(EAS_POLICY와 동일하게 Indexer + 폐기/만료 검사를 수행합니다).2. 인증된 경우 입장이 허용됩니다(이 템플릿 단독으로는 인증 발신자에게 상한을 부과하지 않습니다).
3. 미인증인 경우
value <= transferLimitAmount를 검사하여, 통과하면 입장이 허용되고 초과하면 ExceededAgentTransferLimit로 거절됩니다(체인은 OKRW-EAS 변형에 이 코드를 재사용합니다).미인증 경로가 컴플라이언스에서 자유로운 것은 아니며, 단지 소액을 허용할 뿐입니다.
OKRW_EAS_PERIODIC_VOLUME_LIMIT_POLICY와 결합하여 미인증 발신자의 누적 금액에도 상한을 부과할 수 있습니다.거절 시 발생하는 ReasonCode
ExceededAgentTransferLimit(uint256 maxLimit, uint256 value)— 미인증 발신자가transferLimitAmount초과. 지갑 UX: "이 금액은 인증이 필요합니다 — KYC 완료 또는 더 작은 금액 전송". 사용자를 KYC 온보딩 플로우로 유도.- attestation 형태 실패 (예:
EasAttestationRevoked,EasAttestationExpired)는 인증된 듯한 발신자에 대해 attestation 조회 자체가 실패할 때만 발생; 순수 미인증 사용자는 이 템플릿에서 그 코드를 만나지 않습니다.
주요 활용 사례
- KYC 계층 전송 상한: 예를 들어 미인증 발신자에게 전송당 1,000,000 OKRW(
1_000_000 etheraokrw) 상한을 적용합니다. 신규 사용자는 KYC 완료 전까지 소액으로만 거래할 수 있고, 인증 사용자는 정상적으로 거래할 수 있습니다. - 온보딩 램프: KYC를 약속하기 전 작은 전송으로 네트워크를 체험하게 합니다. attestation을 획득하면 이 한도는 소멸합니다(또는 다른 정책으로 이동합니다).
OKRW_EAS_PERIODIC_VOLUME_LIMIT_POLICY와 페어링: 건당 상한 위에 일/월 누적 상한을 계층화합니다.