클리어 서명

대부분의 지갑은 16진수의 벽을 보여 주며 승인을 요구하고, 잘되기를 바라게 합니다. “블라인드 서명” — 실제로는 읽을 수 없는 호출을 승인하는 일 — 은 자금을 털린 지갑 상당수의 배경에 있습니다. Vela의 답이 클리어 서명입니다. 서명 전에 거래는 당신이 이해할 수 있는 형태로 바뀝니다.

무엇이 보이나

원시 calldata 대신 이런 것이 보입니다.

  • 의도 — 이 거래가 무엇을 하는지: 보내기, 승인, 스왑 등.
  • 알맹이 — 관련된 금액과 주소. 토큰 금액은 실제 단위로 보여 주고, 이름을 알 수 있는 상대는 이름으로 풀어 줍니다.
  • 세부 — 논스, 기한, 원시 calldata. 필요할 때 펼쳐 볼 수 있게 두고, 처음부터 얼굴에 들이밀지 않습니다.
  • 위험 표시를 색으로. 무서운 것이 무섭게 보이도록.

어떻게 되는가 (ERC-7730)

Vela는 ERC-7730 디스크립터로 컨트랙트 호출EIP-712 타입 데이터를 모두 디코딩합니다. 디스크립터란 어떤 컨트랙트의 함수가 무엇을 뜻하는지 적어 둔, 작고 공유 가능한 정의입니다.

  • 그 컨트랙트 전용 디스크립터가 있으면 거래는 검증됨으로 표시되고 컨트랙트 이름이 붙습니다.
  • 없으면 흔한 형태에 대한 표준 디스크립터 — ERC-20 토큰, ERC-721 NFT, ERC-4626 볼트, ERC-2612 permit — 로 물러나므로 일상적인 작업은 대개 해독됩니다.

토큰 금액은 그 토큰의 온체인 실제 소수 자릿수로 표시합니다. Vela가 18이라고 넘겨짚는 일은 없습니다. 자릿수를 확인할 수 없으면 값을 보여 주되 미검증으로 표시하고, 추측하지 않습니다.

위험 등급

디코딩된 거래에는 위험 등급이 붙어, 위험한 패턴이 도드라집니다.

  • 주의 — 승인과 permit: 지출 권한을 넘기는 일입니다.
  • 위험 — 정말로 위험한 것들, 예를 들어 무제한 토큰 승인.
  • 스테이킹이나 예치 같은 일상적인 작업은 더 낮은 위험입니다.

해독하지 못할 때

깔끔한 화면보다 솔직함이 중요합니다. ERC-7730 디스크립터는 없지만 그 함수가 공개 셀렉터 데이터베이스에 있다면, Vela는 일반적인 방식으로 해독하고 주의 배너 아래 최선의 추정이라고 표시합니다 — 해독은 했지만 검증되지는 않았다는 뜻입니다. 그마저 실패하거나 거래의 일부만 해독된다면, Vela는 이해한 척하지 않습니다.

왜 중요한가

자기수탁이란 잘못된 거래를 누구도 되돌려 줄 수 없다는 뜻입니다. 방어는 고객센터가 아니라, 승인하기 전에 무엇을 승인하는지 이해하는 것입니다. 클리어 서명은 “이 불투명한 덩어리를 믿으세요”를 “이것이 정확히 무엇을 하는지입니다”로 바꿉니다. Vela 전체 보안 모델에서의 위치는 백서에 있습니다.