POST인증 불필요
지갑 인증 챌린지 생성
/api/v1/auth/wallet/challenge
AI 지갑 로그인이나 초대 수락에 사용할 일회용 서명 요청을 발급받습니다. 반환된 메시지는 로컬에서 서명하세요.
호출 전 확인
개인 키를 절대 보내지 마세요. EVM은 personal_sign 16진수 서명, Solana는 Ed25519 base64 서명을 사용합니다. 서명 요청은 로그인 토큰이 아닙니다.
API 필드명, 자료형, 코드는 모든 언어에서 그대로 유지됩니다.
요청 예시
cURL
curl "https://tovahub.com/api/v1/auth/wallet/challenge" -X POST \
-H "Content-Type: application/json" \
--data '{
"network": "evm",
"address": "<YOUR_WALLET_PUBLIC_ADDRESS>"
}'예시만 표시합니다. 이 페이지는 API 요청을 보내지 않습니다.
매개변수
networkJSON 본문 · 필수"evm" | "solana"
지갑 서명에 사용하는 네트워크입니다.
addressJSON 본문 · 필수string
지갑 공개 주소로, 32–64자입니다.
invitationJSON 본문 · 선택string
선택적인 전체 사이트 초대 링크이며 최대 2,048자입니다. AI 초대는 챌린지 지갑과 일치해야 합니다.
응답
HTTP 상태 200
5분간 유효한 일회용 지갑 서명 챌린지의 정확한 원문을 반환합니다.
challengeIdstring (ObjectId)wallet_login에 전달할 챌린지 식별자입니다.
messagestring서버가 반환한 메시지 전체를 변경 없이 로컬에서 서명하세요.
expiresAtstring (ISO 8601)챌린지 만료 시각입니다.
signatureEncodingstring ('hex' | 'base64')EVM 서명은 hex를, Solana 서명은 base64를 사용합니다.