처음 사용 시 신뢰(TOFU)

Android 13 이상을 실행하는 기기의 경우 Android는 TOFU(Trust on First Use) 인증 방식( RFC7435 )을 지원합니다. 이를 통해 사용자는 서버에서 사용하는 루트 CA를 설치하고 해당 도메인 이름을 저장된 네트워크. TOFU를 사용하면 사용자가 기업 네트워크에 처음 연결할 때 장치가 인증되지 않은 공개 키를 얻고 후속 연결을 위해 키를 유지할 수 있습니다.

배경

암호만 필요한 개인 네트워크와 비교하여 기업 네트워크는 클라이언트가 인증서를 미리 설치해야 하는 공개 키 인프라(PKI) 인증을 사용합니다. Android 11 이하에서 사용자는 서버 측 인증서의 유효성 검사를 우회하여 네트워크 설정에서 서버 CA 인증서의 유효성 검사 안 함 옵션을 선택할 수 있습니다. 그러나 보안을 강화하고 WPA R2 사양을 준수하기 위해 Android 12에서는 엔터프라이즈 네트워크에 서버 인증서 유효성 검사를 요구하는 요구 사항을 도입했습니다. 이 추가 요구 사항은 사용자가 해당 네트워크에 대한 CA 인증서를 설치해야 하므로 장벽을 만들었습니다. TOFU는 사용자가 단순히 루트 CA를 수락하여 PKI 기반 엔터프라이즈 네트워크에 연결할 수 있는 방법을 제공합니다.

기능 동작

TOFU를 지원하는 장치는 사용자가 이미 설치된 인증 공개 키가 없는 기업 네트워크에 연결할 때 다음 동작을 표시합니다.

Wi-Fi 선택기를 통해 새 네트워크에 연결

  1. Wi-Fi 선택기에서 새 엔터프라이즈 네트워크를 선택합니다.

    장치는 네트워크를 신뢰할 수 있는지 확인하는 대화 상자(그림 1)를 표시합니다.

  2. 예, 연결을 탭하여 네트워크 연결을 수락하거나 아니요, 연결하지 않음 을 탭하여 거절합니다.

    • Yes, connect 를 누르면 장치가 루트 CA 인증서와 도메인 이름을 저장하고 네트워크에 연결하며 네트워크에 대한 자동 연결을 활성화합니다.
    • 취소 를 누르면 장치가 네트워크에서 연결 해제되고 네트워크에 대한 자동 연결이 비활성화됩니다.

    TOFU 기능에 대한 대화 상자

    그림 1. TOFU 기능에 대한 대화 상자

자동 연결이 활성화된 상태에서 기존 네트워크에 연결

자동 연결이 활성화되어 있지만 유효한 CA 인증서가 없는 엔터프라이즈 네트워크에 연결할 때 장치는 자동으로 연결한 다음 고정(닫을 수 없는) 알림을 표시합니다.

  1. 알림을 탭합니다.

    장치는 네트워크를 신뢰할 수 있는지 확인하는 대화 상자(그림 1)를 표시합니다.

  2. 예, 연결을 탭하여 네트워크 연결을 수락하거나 아니요, 연결하지 않음 을 탭하여 거절합니다.

    • Yes, connect 를 누르면 장치가 루트 CA 인증서와 도메인 이름을 저장하고 네트워크에 연결하며 네트워크에 대한 자동 연결을 활성화합니다.
    • 취소 를 누르면 장치가 네트워크에서 연결 해제되고 네트워크에 대한 자동 연결이 비활성화됩니다.

구현

TOFU 기능을 지원하려면 /hardware/interfaces/wifi/supplicant/aidl/android/hardware/wifi/supplicant Android 오픈 소스 프로젝트(AOSP)에서 제공되는 서플리컨트 HAL을 구현하세요.

다음 공개 API는 앱에서 사용할 수 있도록 Android 13에서 사용할 수 있습니다.

확인

장치에서 TOFU 구현을 확인하려면 다음 테스트를 사용하십시오.

  • CTS: CtsWifiTestCases
  • VTS: VtsHalWifiSupplicantStaNetworkTargetTest