MB PIN 작업

개요

이 항목에서는 MB 디바이스 메모리 또는 SIM(구독자 ID 모듈) 카드 저장된 구독 정보의 액세스 제어와 관련된 작업에 대해 설명합니다. 여기에는 PIN(개인 식별 번호) 사용, 사용 안 함 또는 변경뿐만 아니라 PIN 또는 PUK(개인 잠금 해제 키)를 통한 잠금 해제가 포함됩니다.

아키텍처/흐름

PIN 사용/사용 안 함/잠금 해제/변경에 대한 사용자 작업

PIN 사용, 사용 안 함, 잠금 해제 및 변경에 대한 사용자 작업을 보여 주는 순서도입니다.

PIN1/PUK1 상태에 대한 셀룰러 UX 쿼리

셀룰러 UX에서 PIN1 및 PUK1 상태를 쿼리하는 프로세스를 보여 주는 순서도입니다.

최대 절전 모드에서 다시 시작을 한 후 자동 잠금 해제

최대 절전 모드에서 다시 시작 후 자동 잠금 해제 프로세스를 보여 주는 순서도입니다.

MBIM_CID_MS_PIN_EX

이 CID는 다음에서 설명합니다 . MBIM_CID_MS_PIN_EX

MBIM_CID_PIN_LIST

Description

이 명령은 MB 디바이스에서 지원하는 모든 다른 유형의 PIN(개인 식별 번호) 목록과 PIN 길이(최소 및 최대 길이), PIN 형식 및 PIN 입력 모드(사용/사용 안 함/사용할 수 없음)와 같은 각 PIN 유형에 대한 추가 세부 정보를 반환합니다. 또한 이 CID는 함수에서 지원하는 각 PIN의 현재 모드를 지정합니다. 함수는 지원하는 모든 PIN을 보고해야 합니다. 그러나 다중 모드 디바이스의 PIN1은 한 번만 보고해야 합니다.

PIN1로 보고된 PIN은 PIN1 지침을 준수해야 합니다. CDMA 기반 디바이스의 경우 전원 켜기 확인 또는 식별 기능을 제공하는 PIN이며 GSM 기반 디바이스의 경우 SIM(구독자 ID 모듈) PIN입니다.

준비 상태가 MBIMSubscriberReadyStateInitialized로 변경되거나 준비 상태가 MBIMSubscriberReadyStateDeviceLocked(PIN 잠금)인 경우 함수는 이 정보를 반환할 수 있어야 합니다. 또한 함수는 가능한 경우 다른 준비 상태로 이 정보를 반환해야 합니다.

쿼리 전용

쿼리 메시지의 InformationBuffer가 비어 있습니다. MBIM_COMMAND_DONE InformationBuffer에는 MBIM_PIN_LIST_INFO 포함되어 있습니다.

매개 변수

설정 쿼리 알림
Command 해당 없음 Empty 해당 없음
응답 해당 없음 MBIM_PIN_LIST_INFO 해당 없음

데이터 구조

MBIM_PIN_MODE

형식
MBIMPinModeNotSupported 0
MBIMPinModeEnabled 1
MBIMPinModeDisabled 2

MBIM_PIN_FORMAT

형식
MBIMPinFormatUnknown 0
MBIMPinFormatNumeric 1
MBIMPinFormatAlphaNumeric 2

MBIM_PIN_DESC

Offset 크기 필드 형식 Description
0 4 PinMode MBIM_PIN_MODE 위의 표 MBIM_PIN_MODE 참조하세요. 잠금이 활성화되었는지 여부를 보여 줍니다. 잠금 상태가 잠겨 있거나 잠금 해제되었는지는 표시되지 않습니다.
4 4 PinFormat MBIM_PIN_FORMAT 위의 표 MBIM_PIN_FORMAT 참조하세요.
8 4 PinLengthMin Uint32 PIN의 최소 문자 수입니다. 디바이스는 16보다 큰 값을 지정해서는 안 됩니다. PIN 길이를 사용할 수 없는 경우 디바이스는 0xffffffff 지정해야 합니다.
12 4 PinLengthMax Uint32 PIN의 최대 문자 수입니다. 디바이스는 16보다 큰 값을 지정해서는 안 됩니다. PIN 길이를 사용할 수 없는 경우 디바이스는 0xffffffff 지정해야 합니다.

쿼리

InformationBuffer는 null 이어야 하며 InformationBufferLength는 0이어야 합니다.

응답

다음 구조체는 InformationBuffer에서 사용해야 합니다.

MBIM_PIN_LIST_INFO

Offset 크기 필드 형식 Description
0 16 PinDescPin1 MBIM_PIN_DESC PIN1을 설명하는 MBIM_PIN_DESC 구조체입니다. GSMbased 디바이스의 경우 SIM(구독자 ID 모듈) PIN입니다. CDMA 기반 디바이스의 경우 전원 켜기 디바이스 잠금이 PIN1로 보고됩니다.
16 16 PinDescPin2 MBIM_PIN_DESC PIN2를 설명하는 MBIM_PIN_DESC 구조체입니다. 특정 SIM 기능을 보호하는 SIM PIN2입니다.
32 16 PinDescDeviceSimPin MBIM_PIN_DESC 디바이스-SIM 카드 PIN을 설명하는 MBIM_PIN_DESC 구조입니다. 디바이스를 특정 SIM에 잠그는 PIN입니다.
48 16 PinDescDeviceFirstSimPin MBIM_PIN_DESC 디바이스-첫 번째 SIM 카드 PIN을 설명하는 MBIM_PIN_DESC 구조입니다. 이것은 처음 삽입된 SIM에 디바이스를 잠그는 PIN입니다.
64 16 PinDescNetworkPin MBIM_PIN_DESC 네트워크 개인 설정 PIN을 설명하는 MBIM_PIN_DESC 구조입니다. 디바이스를 네트워크에 개인 설정할 수 있는 PIN입니다. 이 PIN 유형에 대한 자세한 내용은 3GPP 사양 22.022를 참조하세요.
80 16 PinDescNetworkSubsetPin MBIM_PIN_DESC 네트워크 하위 집합 개인 설정 PIN을 설명하는 MBIM_PIN_DESC 구조입니다. 디바이스를 네트워크의 하위 집합에 개인 설정할 수 있는 PIN입니다. 이 PIN 유형에 대한 자세한 내용은 3GPP 사양 22.022를 참조하세요.
96 16 PinDescServiceProviderPin MBIM_PIN_DESC SP(서비스 공급자) 개인 설정 PIN을 설명하는 MBIM_PIN_DESC 구조입니다. 디바이스를 서비스 공급자에 개인 설정할 수 있는 PIN입니다. 이 PIN 유형에 대한 자세한 내용은 3GPP 사양 22.022를 참조하세요.
112 16 PinDescCorporatePin MBIM_PIN_DESC 회사 개인 설정 PIN을 설명하는 MBIM_PIN_DESC 구조입니다. 디바이스를 특정 회사에 개인 설정할 수 있는 PIN입니다. 이 PIN 유형에 대한 자세한 내용은 3GPP 사양 22.022를 참조하세요.
128 16 PinDescSubsidyLock MBIM_PIN_DESC 보조금을 설명하는 MBIM_PIN_DESC 구조는 PIN의 잠금을 해제합니다. 디바이스가 특정 네트워크에서 작동하도록 제한할 수 있는 PIN입니다. 이 PIN 유형에 대한 자세한 내용은 3GPP 사양 22.022를 참조하세요.
144 16 PinDescCustom MBIM_PIN_DESC 사용자 지정 PIN을 설명하는 MBIM_PIN_DESC 구조입니다. 이는 사용자 지정 공급업체에서 정의한 PIN 유형입니다. 위의 목록에는 포함되지 않습니다.

상태 코드

상태 코드 Description
MBIM_STATUS_PIN_REQUIRED 이 작업을 진행하기 전에 PIN을 입력해야 하므로 PIN 목록 작업이 실패했습니다.

테스트

다음 테스트는 TestPin HLK 테스트 목록의 일부로 실행됩니다.

테스트 이름 설명
PinListQueryRadioOn 이 테스트는 라디오를 켜고 핀 목록 쿼리를 시도합니다.
PinListQueryRadioOff 이 테스트는 라디오가 꺼진 상태에서 핀 목록 쿼리를 시도합니다.
NoPinSupport 이 테스트는 PIN1을 지원하지 않는 디바이스를 확인합니다.
PinExSetEnableDisableWithValidPin 이 테스트는 유효한 핀을 사용하여 PIN1을 사용하도록 설정하고 사용하지 않도록 설정합니다.
PinExSetDisableIncorrectPinWithValidLength 이 테스트는 올바른 길이의 잘못된 핀으로 PIN1을 사용하도록 설정하려고 시도합니다.
PukEnableDisableThroughIncorrectPinExDisable 이 테스트는 잘못된 PIN1을 여러 번 입력하여 PUK1을 사용하도록 설정한 다음 PUK1을 사용하지 않도록 설정합니다.
PinExSetChangeWithBothInvalidAndValidPin 이 테스트는 PIN1을 사용하도록 설정하고, PIN을 즉시 변경하고, 사용하지 않도록 설정합니다.
RebootTestMachineToPutPinIntoLockState 이 테스트는 디바이스를 다시 부팅하여 모뎀이 잠금 상태가 되도록 하고 유효한 PIN 항목을 프롬프트합니다.
PinExSetEnterWithValidPin 이 테스트는 디바이스가 PIN 코드 입력을 요청하는 잠금 상태인지 확인합니다.

TestPowerStates HLK 테스트 목록에는 하나의 관련 테스트인 SimPinUnlockAfterHibernate도 포함되어 있습니다.

로그 분석

샘플 로그:

자동 잠금 해제:

462678 [0]0F3C.1280::2020-05-05 13:03:46.378805100 [Microsoft-Windows-WWAN-SVC-EVENTS][Request=0x53] Received PinInfo, status=WWAN_STATUS_SUCCESS , Type=WwanPinTypePin1  State=WwanPinStateEnter  Attempts=3, miniport={7971731f-33f9-4f1a-9718-087c12e64c5d} 
462753 [7]0F3C.2A6C::2020-05-05 13:03:46.379718400 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] CWwanPinSM::maybeUnlockPin:  Attempting auto-PIN-unlock. Interface: {{7971731f-33f9-4f1a-9718-087c12e64c5d}} 
462809 [7]0F3C.2A6C::2020-05-05 13:03:46.380157500 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Error] CWwanPinSM::maybeUnlockPin: Attempt to auto-unlock PIN succeeded 

고정 설정(WwanPinTypePin1):

546408 [3]0F3C.1240::2020/05/02-09:18:09.178460200 [Microsoft-Windows-WWAN-SVC-EVENTS][Request=0x6C] Sent SET PinAction, Type=2(WwanPinTypePin1), Operation=0(WwanPinOperationEnter), miniport={7971731f-33f9-4f1a-9718-087c12e64c5d}, ErrorCode=3407873(WIN=The request will be completed later by NDIS status indication.)
546425 [1]3DB0.12EC::2020/05/02-09:18:09.178564700 [Microsoft.Windows.CellCore.MBBSettingsUX]{"meta":{"provider":"Microsoft.Windows.CellCore.MBBSettingsUX","event":"MBCategory::_SetPinAction. WwanSetInterface succeeded","time":"2020-05-02T16:18:09.1785647Z","cpu":1,"pid":15792,"tid":4844,"channel":11,"level":4}}
546644 [2]0F3C.39E4::2020/05/02-09:18:09.426362600 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] CWwanPinSM::processPinActionResponse: SetPin rsp rcvd (result:0x0) PIN Info (state:1, type:3, attemptsRemaining:3) IsPin1Blocked 0
546645 [2]0F3C.39E4::2020/05/02-09:18:09.426364800 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] CWwanPinSM::maybeCapturePin: Capturing PIN for PIN ENTER/ENABLE operation Interface: {{7971731f-33f9-4f1a-9718-087c12e64c5d}}
546688 [7]3B64.2A80::2020/05/02-09:18:09.426727000 [MbaeApiLogging]{"NotificationCode":"WwanMsmEventTypePinActionComplete: Success","AdapterID":"{7971731f-33f9-4f1a-9718-087c12e64c5d}","NotificationSize":24,"meta":{"provider":"MbaeApiLogging","event":"CWwanTranslator::ProcessWwanNotification","time":"2020-05-02T16:18:09.4267270Z","cpu":7,"pid":15204,"tid":10880,"channel":11,"level":5}}
546702 [0]3B64.242C::2020/05/02-09:18:09.426762000 [Microsoft.Windows.CellCore.MBBSettingsUX]{"meta":{"provider":"Microsoft.Windows.CellCore.MBBSettingsUX","event":"MBMediaManager::ProcessWwanNotification WwanMsmEventTypePinActionComplete","time":"2020-05-02T16:18:09.4267620Z","cpu":0,"pid":15204,"tid":9260,"channel":11,"level":4}}
546710 [7]0F3C.1208::2020/05/02-09:18:09.426809700 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] _PublishSebNotification: Event Source=WwanNotificationSourceMsm, Code=WwanMsmEventTypePinActionComplete
547064 [2]3DB0.1194::2020/05/02-09:18:09.427921200 [MbaeApiLogging]{"NotificationCode":"WwanMsmEventTypePinActionComplete: Success","AdapterID":"{7971731f-33f9-4f1a-9718-087c12e64c5d}","NotificationSize":24,"meta":{"provider":"MbaeApiLogging","event":"CWwanTranslator::ProcessWwanNotification","time":"2020-05-02T16:18:09.4279212Z","cpu":2,"pid":15792,"tid":4500,"channel":11,"level":5}}
547106 [2]3DB0.0B38::2020/05/02-09:18:09.428040100 [Microsoft.Windows.CellCore.MBBSettingsUX]{"meta":{"provider":"Microsoft.Windows.CellCore.MBBSettingsUX","event":"MBMediaManager::ProcessWwanNotification WwanMsmEventTypePinActionComplete","time":"2020-05-02T16:18:09.4280401Z","cpu":2,"pid":15792,"tid":2872,"channel":11,"level":4}}

핀 목록:

465632 [4]0F3C.47F4::2020-05-05 13:03:46.395488200 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] CWwanPinSM::tracePinDesc: PIN1 (mode:1, format:1, pinlnmin:4, pinlnmax:8) 
465633 [4]0F3C.47F4::2020-05-05 13:03:46.395489800 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] CWwanPinSM::tracePinDesc: PIN2 (mode:1, format:1, pinlnmin:4, pinlnmax:8) 
465634 [4]0F3C.47F4::2020-05-05 13:03:46.395491400 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] CWwanPinSM::tracePinDesc: DEVSIMPIN (mode:0, format:0, pinlnmin:0, pinlnmax:0) 
465635 [4]0F3C.47F4::2020-05-05 13:03:46.395492800 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] CWwanPinSM::tracePinDesc: DEVFIRSTSIMPIN (mode:0, format:0, pinlnmin:0, pinlnmax:0) 
465636 [4]0F3C.47F4::2020-05-05 13:03:46.395494200 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] CWwanPinSM::tracePinDesc: NWPIN (mode:0, format:0, pinlnmin:0, pinlnmax:0) 
465637 [4]0F3C.47F4::2020-05-05 13:03:46.395495800 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] CWwanPinSM::tracePinDesc: NWSUBSETPIN (mode:0, format:0, pinlnmin:0, pinlnmax:0) 
465641 [5]0F3C.47F4::2020-05-05 13:03:46.395510100 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] CWwanPinSM::tracePinDesc: SVCPROVIDERPIN (mode:0, format:0, pinlnmin:0, pinlnmax:0) 
465643 [5]0F3C.47F4::2020-05-05 13:03:46.395513700 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] CWwanPinSM::tracePinDesc: CORPORATEPIN (mode:0, format:0, pinlnmin:0, pinlnmax:0) 
465644 [5]0F3C.47F4::2020-05-05 13:03:46.395515200 [Microsoft-Windows-WWAN-SVC-EVENTS]WWAN Service event: [Info] CWwanPinSM::tracePinDesc: SUBSIDYLOCK (mode:0, format:0, pinlnmin:0, pinlnmax:0) 

WinRT API

MobileBroadbandPin 클래스

참고 항목

OID_WWAN_PIN_EX2

OID_WWAN_PIN_LIST

MB UICC 애플리케이션 및 파일 시스템 액세스

PIN 작업에 대한 자세한 내용은 OID_WWAN_PIN 참조하세요.