> ## Documentation Index
> Fetch the complete documentation index at: https://docs.didit.me/llms.txt
> Use this file to discover all available pages before exploring further.

# React Native 빠른 시작 가이드

> Didit으로 React Native 인증을 준비하세요. 호스팅 로그인, 콜백 검증, 보안 세션, 인증 및 모니터링 페이지 연결 방법을 안내합니다.

> [!WARNING]
>
> 인증 기능은 새로운 기능이며 **@didit-protocol/auth-react-native**는 릴리스에 따라 달라집니다. 배포 좌표, 버전, 호출 가능한 시그니처는 여기서 확정되지 않습니다. 추정한 패키지를 설치하거나 신분증 인증 SDK를 인증 SDK로 사용하지 마세요.

## 애플리케이션 준비

1. Didit 애플리케이션에서 인증 기능이 활성화되어 있는지 확인하고, 콘솔에서 로그인 출처(origin)(`https://<slug>.auth.didit.me`, 샌드박스의 경우 `<slug>.sandbox.auth.didit.me`)를 복사합니다.
2. 애플리케이션과 런타임이 지원하는 정확한 콜백 URL을 등록합니다. 앱 링크의 소유권을 검증하세요. 임의의 커스텀 URL 스킴이 허용된다고 가정하지 마세요.
3. 샌드박스와 프로덕션 환경의 설정을 분리합니다. 콜백 처리와 저장된 자격 증명도 함께 분리하세요.
4. 인증 또는 모니터링을 연결하기 전에 안정적인 사용자 매핑 방식을 선택합니다.

iOS와 Android에서 콜백 링크를 각각 따로 구성하고 테스트하세요. 인증 래퍼는 신분증 인증을 담당하는 @didit-protocol/sdk-react-native와 별개입니다.

## 호스팅 플로우 구현

`{origin}/sign-in` URL로 네이티브 시스템 인증 브라우저를 엽니다. 매번 새로운 무작위 `state`, S256 PKCE 챌린지, 등록한 `redirect_uri`를 함께 전달하세요. 검증자(verifier)는 해당 인증 시도 동안에만 앱에 보관합니다. [JavaScript 퀵스타트](https://docs.didit.me/ko/authentication/quickstarts/javascript.md)에 기본 프로토콜이 나와 있습니다. 네이티브 코드에서는 브라우저 전역 객체 대신 플랫폼 암호화와 URL 처리를 사용하세요.

콜백을 받으면 일회용 코드를 `token/`에서 교환하기 전에 state, 트랜잭션 유효 기간, 콜백 대상을 검증합니다. 원래 사용한 검증자와 정확히 같은 redirect URI를 사용하세요. 브라우저를 취소하거나 닫는 것은 성공한 로그인이 아닙니다.

리프레시 토큰은 플랫폼이 보호하는 네이티브 저장소에만 저장하세요. 일반 환경설정 파일, 분석 데이터, 크래시 로그에는 절대 저장하지 마세요. 최종 사용자의 Bearer 토큰으로 `GET session/`을 호출해 현재 세션을 검증합니다. 리프레시는 직렬화하여 처리하고, 두 토큰을 함께 교체하세요. 로그아웃 후에는 사용자별 상태를 모두 지웁니다. 요청 규약과 리프레시 재사용 동작은 [토큰 및 JWKS](https://docs.didit.me/ko/authentication/tokens-and-jwks.md)를 참조하세요.

## 네이티브 SDK 릴리스 미리보기

네이티브 인증 모듈은 로그인, 현재 세션 접근, 토큰 조회, 로그아웃, 스텝업을 제공할 예정이며, 자동 기기 신호도 포함됩니다. 네이티브 패스키와 보호된 토큰 저장소도 해당 릴리스에 포함됩니다. 래퍼 API는 공개된 플랫폼 계약을 따릅니다. 설계 예제에 있는 추정 생성자 인자나 메서드 시그니처를 그대로 복사하지 마세요.

모듈이 릴리스되기 전까지는 해당 어댑터를 비활성화해 두거나, 활성화된 애플리케이션용으로 검토를 거친 호스팅 프로토콜 구현을 사용하세요. 패키지를 설치했다는 사실만으로 동작하는 네이티브 인증 퀵스타트가 있다고 안내하지 마세요.

## 인증 및 모니터링 연결

백엔드는 인증된 사용자로부터 `vendor_data`를 도출합니다. 그리고 해당 사용자를 위해 인증 세션을 생성하거나 범위가 제한된 모니터링 토큰을 발급합니다. 앱에는 세션 자격 증명이나 범위 제한 토큰만 반환하고, API 키는 서버에만 둡니다.

신원 확인이 필요하면 [React Native 신분증 인증 SDK](https://docs.didit.me/ko/integration/native-sdks/react-native-sdk.md)를 사용하세요. 플랫폼에서 모니터링을 지원하려면 [SDK 거래 제출](https://docs.didit.me/ko/transaction-monitoring/sdk-transaction-submission.md)을 따르세요. 로그인, 신분증 인증, 거래 결정은 각각 별도로 처리하세요.

## 통합 검증

완전히 종료된 상태의 앱 재실행, 백그라운드 및 포그라운드 전환, 브라우저 취소, 일치하지 않는 콜백, 코드 재사용 공격, 토큰 만료, 동시 리프레시, MFA, 로그아웃, 다른 사용자로 로그인하는 경우를 테스트하세요. 지원되는 기기에서는 해당 릴리스가 제공된 후 패스키 등록과 로그인을 테스트하세요. 대상 플랫폼에서 실행하기 전까지 기기 전용 점검 항목은 검증되지 않은 상태로 남습니다.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.