Opérations de code confidentiel MB
Vue d’ensemble
Cette rubrique décrit les opérations liées au contrôle d’accès aux informations d’abonnement stockées dans la mémoire de l’appareil Mo ou sur le module d’identité d’abonné (SIM) carte. Cela inclut l’activation, la désactivation ou la modification du numéro d’identification personnel (PIN), ainsi que le déverrouillage via un code confidentiel ou une clé de déverrouillage personnelle (PUK).
Architecture/Flux
Actions utilisateur pour activer/désactiver/déverrouiller/modifier le code confidentiel
Requête d’expérience utilisateur cellulaire pour l’état PIN1/PUK1
Déverrouillage automatique après la reprise de la mise en veille prolongée
MBIM_CID_MS_PIN_EX
Ce CID est décrit ici : MBIM_CID_MS_PIN_EX
MBIM_CID_PIN_LIST
Description
Cette commande retourne une liste de tous les différents types de numéros d’identification personnels (PIN) pris en charge par l’appareil Mo et des détails supplémentaires pour chaque type de code confidentiel, tels que la longueur du code confidentiel (longueurs minimales et maximales), le format du code confidentiel et le mode de saisie du code confidentiel (activé/désactivé/non disponible). Ce CID spécifie également le mode actuel de chaque code confidentiel pris en charge par la fonction. Les fonctions doivent signaler tous les codes PIN qu’elles prennent en charge. Toutefois, le code PIN1 pour les appareils multimodes ne doit être signalé qu’une seule fois.
Un code confidentiel signalé comme PIN1 doit être conforme aux directives PIN1 : pour les appareils CDMA, il s’agit d’un code confidentiel qui fournit des fonctionnalités de vérification ou d’identification de mise sous tension, et pour les appareils gsm, il s’agit d’un code CONFIDENTIEL de module d’identité d’abonné (SIM).
Les fonctions doivent être en mesure de retourner ces informations lorsque l’état prêt passe à MBIMSubscriberReadyStateInitialized ou lorsque l’état prêt est MBIMSubscriberReadyStateDeviceLocked (code confidentiel verrouillé). Les fonctions doivent également retourner ces informations dans d’autres états prêts dans la mesure du possible.
Requête uniquement
InformationBuffer du message de requête est vide. InformationBuffer de MBIM_COMMAND_DONE contient un MBIM_PIN_LIST_INFO.
Paramètres
Définissez | Requête | Notification | |
---|---|---|---|
Commande | N/A | Vide | N/A |
Réponse | N/A | MBIM_PIN_LIST_INFO | N/A |
Structures de données
MBIM_PIN_MODE
Types | Valeur |
---|---|
MBIMPinModeNotSupported | 0 |
MBIMPinModeEnabled | 1 |
MBIMPinModeDisabled | 2 |
MBIM_PIN_FORMAT
Types | Valeur |
---|---|
MBIMPinFormatUnknown | 0 |
MBIMPinFormatNumeric | 1 |
MBIMPinFormatAlphaNumeric | 2 |
MBIM_PIN_DESC
Offset | Taille | Champ | Type | Description |
---|---|---|---|---|
0 | 4 | PinMode | MBIM_PIN_MODE | Consultez le tableau ci-dessus MBIM_PIN_MODE. Cela indique si le verrou est activé ou non. Il n’indique pas si l’état de verrouillage est verrouillé ou déverrouillé. |
4 | 4 | PinFormat | MBIM_PIN_FORMAT | Voir le tableau ci-dessus MBIM_PIN_FORMAT. |
8 | 4 | PinLengthMin | UINT32 | Nombre minimal de caractères dans le code confidentiel. Les appareils ne doivent pas spécifier une valeur supérieure à 16. Les appareils doivent spécifier 0xffffffff, si la longueur du code confidentiel n’est pas disponible. |
12 | 4 | PinLengthMax | UINT32 | Nombre maximal de caractères dans le code confidentiel. Les appareils ne doivent pas spécifier une valeur supérieure à 16. Les appareils doivent spécifier 0xffffffff, si la longueur du code confidentiel n’est pas disponible. |
Requête
InformationBuffer doit être null et InformationBufferLength doit être égal à zéro.
response
La structure suivante doit être utilisée dans InformationBuffer :
MBIM_PIN_LIST_INFO
Offset | Taille | Champ | Type | Description |
---|---|---|---|---|
0 | 16 | PinDescPin1 | MBIM_PIN_DESC | MBIM_PIN_DESC structure décrivant PIN1. Pour les appareils basés sur GSM, il s’agit d’un code CONFIDENTIEL du module d’identité d’abonné (SIM). Pour les appareils CDMA, le verrouillage de l’appareil sous tension est signalé en tant que CODE PIN1. |
16 | 16 | PinDescPin2 | MBIM_PIN_DESC | MBIM_PIN_DESC structure décrivant le code PIN2. Il s’agit d’un code PIN SIM2 qui protège certaines fonctionnalités SIM. |
32 | 16 | PinDescDeviceSimPin | MBIM_PIN_DESC | MBIM_PIN_DESC structure décrivant le code confidentiel carte appareil à SIM. Il s’agit d’un code confidentiel qui verrouille l’appareil sur une carte SIM spécifique. |
48 | 16 | PinDescDeviceFirstSimPin | MBIM_PIN_DESC | MBIM_PIN_DESC structure décrivant le code CONFIDENTIEL de l’appareil à tout premier carte SIM. Il s’agit d’un code confidentiel qui verrouille l’appareil sur la toute première carte SIM insérée. |
64 | 16 | PinDescNetworkPin | MBIM_PIN_DESC | MBIM_PIN_DESC structure décrivant le code pin de personnalisation réseau. Il s’agit d’un code confidentiel qui permet à l’appareil d’être personnalisé sur un réseau. Pour plus d’informations sur ce type de code confidentiel, consultez spécification 3GPP 22.022. |
80 | 16 | PinDescNetworkSubsetPin | MBIM_PIN_DESC | MBIM_PIN_DESC structure décrivant le code pin de personnalisation du sous-ensemble réseau. Il s’agit d’un code confidentiel qui permet à l’appareil d’être personnalisé sur un sous-ensemble d’un réseau. Pour plus d’informations sur ce type de code confidentiel, consultez spécification 3GPP 22.022. |
96 | 16 | PinDescServiceProviderPin | MBIM_PIN_DESC | MBIM_PIN_DESC structure décrivant le code pin de personnalisation du fournisseur de services (SP). Il s’agit d’un code confidentiel qui permet de personnaliser l’appareil auprès d’un fournisseur de services. Pour plus d’informations sur ce type de code confidentiel, consultez spécification 3GPP 22.022. |
112 | 16 | PinDescCorporatePin | MBIM_PIN_DESC | MBIM_PIN_DESC structure décrivant le code pin de personnalisation d’entreprise. Il s’agit d’un code confidentiel qui permet de personnaliser l’appareil pour une entreprise spécifique. Pour plus d’informations sur ce type de code confidentiel, consultez spécification 3GPP 22.022. |
128 | 16 | PinDescSubsidyLock | MBIM_PIN_DESC | MBIM_PIN_DESC structure décrivant la subvention déverrouille le code confidentiel. Il s’agit d’un code confidentiel qui permet à l’appareil d’être limité pour fonctionner sur un réseau spécifique. Pour plus d’informations sur ce type de code confidentiel, consultez spécification 3GPP 22.022. |
144 | 16 | PinDescCustom | MBIM_PIN_DESC | MBIM_PIN_DESC structure décrivant le code confidentiel personnalisé. Il s’agit d’un type de code confidentiel personnalisé défini par le fournisseur. Il n’est pas inclus dans la liste ci-dessus. |
Codes d’état
Code d’état | Description |
---|---|
MBIM_STATUS_PIN_REQUIRED | L’opération de liste de codes confidentiels a échoué, car un code confidentiel doit être entré avant que cette opération puisse continuer. |
Test
Les tests suivants sont exécutés dans le cadre de la liste des tests HLK TestPin :
Nom du test | Description |
---|---|
PinListQueryRadioOn | Ce test tente une requête de liste d’épingles avec la radio activée. |
PinListQueryRadioOff | Ce test tente une requête de liste d’épingles avec la radio désactivée. |
NoPinSupport | Ce test vérifie un appareil qui ne prend pas en charge le code PIN1. |
PinExSetEnableDisableWithValidPin | Ce test active et désactive PIN1 avec une broche valide. |
PinExSetDisableIncorrectPinWithValidLength | Ce test tente d’activer PIN1 avec une broche incorrecte avec une longueur valide. |
PukEnableDisableThroughIncorrectPinExDisable | Ce test active PUK1 en entrant plusieurs fois un code PIN1 incorrect, puis désactive PUK1. |
PinExSetChangeWithBothInvalidAndValidPin | Ce test active PIN1, modifie immédiatement le code confidentiel et le désactive. |
RebootTestMachineToPutPinIntoLockState | Ce test redémarre l’appareil pour que le modem entre dans l’état de verrouillage et invite une entrée de code confidentiel valide. |
PinExSetEnterWithValidPin | Ce test valide que l’appareil est à l’état verrouillé pour demander l’entrée de code PIN. |
La liste de tests TestPowerStates HLK contient également un test pertinent : SimPinUnlockAfterHibernate.
Analyse des journaux
Exemples de journaux :
Déverrouillage automatique :
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
Définir l’épingle (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}}
Liste des broches :
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
Voir aussi
Accès au système de fichiers et à l’application MB UICC
Pour plus d’informations sur les opérations de code confidentiel, consultez OID_WWAN_PIN.