Agent SDK 비밀과 HMAC 서명

에이전트 API 자격증명을 보호하고, SDK 가 어떻게 타임스탬프가 붙은 재생 방지 HMAC생성되는지 이해하세요 -SHA256 서명 요청.

Markdown으로 보기

Agent SDK 요청은 파트너와 비밀 API 인증됩니다. 그 비밀은 신뢰할 수 있는 백엔드 서비스 안에 보관하고, SDK 가 가능한 한 서명 필드를 생성하도록 하세요.

두 가지 서명 프로토콜

Agent SDK 서명은 정렬된 요청 필드, 초 단위의 타임스탬프, 그리고 논스를 사용합니다. 직접 Developer API 요청은 다음에 설명된 별도의 프로세스를 사용합니다 요청 서명. 한 페이로드 포맷을 다른 포맷에 재사용하지 마세요.

서명 규칙

Agent SDK 요청에 대해:

  1. sign 필드를 제외한다.
  2. 빈 값이 있는 필드를 생략합니다.
  3. 나머지 필드 이름을 ASCII 순서대로 정렬합니다.
  4. 밭에 합류하 k=v&k2=v2.
  5. HMAC-SHA256 16진수 서명을 계산한다 apiSecret.

SDK는 보내는 동일한 데이터로부터 이 값을 만들어야 합니다. 서명 생성 후 서명된 필드를 변경하면 검증이 실패합니다.

SDK-관리 필드

필드출처설명
agentCodeSDK 구성파트너 요원 코드.
타임스탬프현재 서버 시간유닉스 타임스탬프는 몇 초 만에 표시됩니다.
노운스보안 랜덤 값재생 보호 무작위 문자열.
징후HMAC-SHA256서명 요청.
통화기본 통화이체/계좌 APIs 통화를 생략할 때 사용됩니다.

비밀 저장

  • 백엔드 시크릿 매니저 또는 보호된 런타임 구성에서 apiSecret 로드.
  • 비밀을 프론트엔드 번들, 모바일 앱, 데스크톱 클라이언트, 스크린샷, 지원 티켓에 절대 넣지 마세요.
  • 개발, 스테이징, 제작 자격 증명을 분리하세요.
  • 필요한 서비스 및 사업자에 대한 접근을 제한합니다.
  • 로그에서 요청 서명, 권한 값, 비밀 정보를 삭제합니다.
  • 노출이 의심되면 자격 증명을 취소하고 교체합니다.

시계 및 재생 보호

SDK에는 재플레이 위험을 줄이기 위한 timestampnonce이 포함되어 있습니다. 백엔드 클럭을 동기화하고 수동으로 만든 nonce를 재사용하지 마세요. 서명 검증이 실패하면, 재시도하기 전에 설정된 비밀, 서버 시간, 직렬화된 필드, 환경을 확인하세요.

통합 체크리스트

체크예상 결과
비밀 장소백엔드 전용 비밀 저장소.
환경기본 URL 와 자격증은 같은 환경에 속합니다.
현장 조종SDK timestamp, nonce, sign를 생성합니다.
벌목자격 증명은 검열된 상태에서 비즈니스 ID는 계속 표시됩니다.
회전자격증 소유자와 교체 절차가 문서화되어 있습니다.