Aplikasi MB UICC dan akses sistem file
Gambaran Umum
Topik ini menentukan ekstensi ke antarmuka Mobile Broadband Interface Model (MBIM) untuk mengizinkan akses aplikasi kartu pintar UICC dan sistem file. Ekstensi untuk MBIM ini memaparkan akses logis ke aplikasi dan sistem file sesuai spesifikasi teknis ETSI TS 102 221 UICC, dan didukung di Windows 10, versi 1903 dan yang lebih baru.
Akses dan keamanan UICC
UICC menyediakan sistem file dan mendukung serangkaian aplikasi yang dapat berjalan bersamaan. Ini termasuk USIM untuk UMTS, CSIM untuk CDMA, dan ISIM untuk IMS. SIM adalah bagian warisan dari UICC yang dapat dimodelkan sebagai salah satu aplikasi ini (untuk GSM).
Diagram berikut dari Bagian 8.1 spesifikasi teknis ETSI TS 102 221 menunjukkan contoh struktur aplikasi kartu.
Sistem file UICC dapat dianggap sebagai hutan pohon direktori. Pohon SIM warisan berakar pada File Master (MF) dan berisi hingga dua tingkat subdirektori (File Khusus, atau DF) yang berisi File Elemental (EF) yang menyimpan berbagai jenis informasi. SIM mendefinisikan DF di bawah MF, salah satunya, DFTelecom, berisi informasi yang umum untuk beberapa jenis akses seperti buku telepon umum. Aplikasi tambahan secara efektif diimplementasikan sebagai pohon terpisah, masing-masing berakar dalam File Direktori Aplikasi (ADF) sendiri. Setiap ADF diidentifikasi oleh pengidentifikasi aplikasi yang panjangnya bisa hingga 128 bit. File di bawah akar kartu (EFDir di bawah MF dalam diagram) berisi nama aplikasi dan pengidentifikasi yang sesuai. Dalam pohon (MF atau ADF), DF dan EF mungkin diidentifikasi oleh jalur ID file, di mana ID file adalah bilangan bulat 16-bit.
Ekstensi antarmuka NDIS
OID berikut telah didefinisikan untuk mendukung aplikasi UICC dan akses sistem file.
- OID_WWAN_UICC_APP_LIST
- OID_WWAN_UICC_FILE_STATUS
- OID_WWAN_UICC_ACCESS_BINARY
- OID_WWAN_UICC_ACCESS_RECORD
- OID_WWAN_PIN_EX2
Layanan MBIM dan nilai CID
Nama layanan | UUID | Nilai UUID |
---|---|---|
Microsoft Low-Level UICC Access | UUID_MS_UICC_LOW_LEVEL | C2F6588E-F037-4BC9-8665-F4D44BD09367 |
Ekstensi Konektivitas IP Dasar Microsoft | UUID_BASIC_CONNECT_EXTENSIONS | 3D01DCC5-FEF5-4D05-9D3A-BEF7058E9AAF |
Tabel berikut menentukan UUID dan kode perintah untuk setiap CID, serta apakah CID mendukung permintaan Set, Query, atau Event (pemberitahuan). Lihat masing-masing Bagian CID dalam topik ini untuk informasi selengkapnya tentang parameter, struktur data, dan pemberitahuannya.
CID | UUID | Kode perintah | Set | Kueri | Beri tahu |
---|---|---|---|---|---|
MBIM_CID_MS_UICC_APP_LIST | UUID_MS_UICC_LOW_LEVEL | 7 | N | Y | N |
MBIM_CID_MS_UICC_FILE_STATUS | UUID_MS_UICC_LOW_LEVEL | 8 | N | Y | N |
MBIM_CID_MS_UICC_ACCESS_BINARY | UUID_MS_UICC_LOW_LEVEL | 9 | Y | Y | N |
MBIM_CID_MS_UICC_ACCESS_RECORD | UUID_MS_UICC_LOW_LEVEL | 10 | Y | Y | N |
MBIM_CID_MS_PIN_EX | UUID_BASIC_CONNECT_EXTENSIONS | 14 | Y | Y | N |
MBIM_CID_MS_UICC_APP_LIST
CID ini mengambil daftar aplikasi di UICC dan informasi tentangnya. Ketika UICC dalam modem sepenuhnya diinisialisasi dan siap untuk mendaftar dengan operator seluler, aplikasi UICC harus dipilih untuk pendaftaran dan kueri dengan CID ini harus mengembalikan aplikasi yang dipilih di bidang ActiveAppIndex dalam struktur MBIM_UICC_APP_LIST digunakan sebagai respons.
Parameter
Operasi | Set | Kueri | Pemberitahuan |
---|---|---|---|
Perintah | Tidak berlaku | Kosong | Tidak berlaku |
Respons | Tidak berlaku | MBIM_UICC_APP_LIST | Tidak berlaku |
Kueri
InformationBuffer MBIM_COMMAND_MSG kosong.
Set
Tidak dapat diterapkan.
Respons
InformationBuffer di MBIM_COMMAND_DONE berisi struktur MBIM_UICC_APP_LIST berikut.
MBIM_UICC_APP_LIST (versi 1)
Offset | Ukuran | Bidang | Jenis | Deskripsi |
---|---|---|---|---|
0 | 4 | Versi | UINT32 | Nomor versi struktur berikut. Bidang ini harus diatur ke 1 untuk versi 1 dari struktur ini. |
4 | 4 | AppCount | UINT32 | Jumlah aplikasi UICC MBIM_UICC_APP_INFO struktur yang dikembalikan dalam respons ini. |
8 | 4 | ActiveAppIndex | UINT32(0..NumApp - 1) | Indeks aplikasi yang dipilih oleh modem untuk pendaftaran dengan jaringan seluler. Bidang ini harus antara 0 dan AppCount - 1. Ini mengindeks ke array aplikasi yang dikembalikan oleh respons ini. Jika tidak ada aplikasi yang dipilih untuk pendaftaran, bidang ini berisi 0xFFFFFFFF. |
12 | 4 | AppListSize | UINT32 | Ukuran data daftar aplikasi, dalam byte. |
8*AppCount | AppList | OL_PAIR_LIST | Elemen pertama dari pasangan adalah bidang 4-byte dengan Offset info aplikasi di DataBuffer. Elemen kedua dari pasangan adalah bidang 4-byte dengan ukuran info aplikasi. | |
AppListSize | DataBuffer | DATABUFFER | Array struktur appCount * MBIM_UICC_APP_INFO . |
MBIM_UICC_APP_INFO
Offset | Ukuran | Bidang | Jenis | Deskripsi |
---|---|---|---|---|
0 | 4 | AppType | MBIM_UICC_APP_TYPE | Jenis aplikasi UICC. |
4 | 4 | AppIdOffset | OFFSET | Offset untuk ID aplikasi di databuffer. Hanya byte AppIdSize pertama yang bermakna. Jika ID aplikasi lebih panjang dari MBIM_MAXLENGTH_APPID byte, maka AppIdSize menentukan panjang aktual tetapi hanya byte MBIM_MAXLENGTH_APPID pertama yang ada di bidang ini. Bidang ini hanya valid ketika AppType bukan MBIMUiccAppTypeMf, MBIMUiccAppTypeMfSIM, atau MBIMUiccAppTypeMfRUIM. |
8 | 4 | AppIdSize | UKURAN (0..16) | Ukuran ID aplikasi, dalam byte, seperti yang didefinisikan dalam Bagian 8.3 dari spesifikasi teknis ETSI TS 102 221. AppIdSize mungkin berisi angka yang lebih besar dari 16, tetapi dalam hal ini hanya 16 byte pertama (MBIM_MAXLENGTH_APPID) yang ada di databuffer. Bidang ini diatur ke nol untuk jenis aplikasi MBIMUiccAppTypeMf, MBIMUiccAppTypeMfSIM, atau MBIMUiccAppTypeMfRUIM. |
12 | AppNameOffset | OFFSET | Offset untuk nama aplikasi di databuffer. String UTF-8 yang menentukan nama aplikasi. Panjang bidang ini ditentukan oleh AppNameLength. Jika panjangnya lebih besar dari atau sama dengan MBIM_MAXLENGTH_APPNAME byte, bidang ini berisi MBIM_MAXLENGTH_APPNAME pertama - 1 byte nama. String selalu dihentikan null. | |
16 | 4 | AppNameLength | UKURAN (0..256) | Panjang, dalam byte, dari nama aplikasi. AppNameLength mungkin berisi angka yang sama dengan atau lebih besar dari 256, tetapi dalam kasus ini hanya 255 (MBIM_MAXLENGTH_APPNAME - 1) byte pertama yang ada di databuffer. |
20 | 4 | NumPinKeyRefs | UKURAN (0..8) | Jumlah referensi kunci PIN aplikasi. Dengan kata lain, jumlah elemen PinKeyRef yang valid. Aplikasi pada R-UIM virtual tidak memiliki referensi kunci PIN. |
24 | 4 | KeyRefOffset | OFFSET | Offset PinKeyRef di DataBuffer. PinKeyRef adalah array byte yang menentukan referensi kunci PIN aplikasi untuk tingkat verifikasi yang berbeda (kunci untuk PIN1, PIN2, dan mungkin PIN universal), seperti yang didefinisikan dalam Tabel 9.3 dan Bagian 9.4.2 dari spesifikasi teknis ETSI TS 102 221. Dalam kasus kartu verifikasi tunggal, atau driver dan/atau modem MBB yang tidak mendukung kunci aplikasi yang berbeda untuk aplikasi yang berbeda, byte pertama bidang PinKeyRef harus 0x01 (PIN1) dan byte kedua harus 0x81 (PIN2), seperti yang dijelaskan dalam Bagian 9.5.1 dari ETSI TS 102 221. |
28 | 4 | KeyRefSize | UKURAN (0..8) | Ukuran PinKeyRef. |
32 | DataBuffer | DATABUFFER | Buffer data yang berisi AppId, AppName, dan PinKeyRef.dari kartu verifikasi tunggal, atau driver MBB dan/atau modem yang tidak mendukung kunci aplikasi yang berbeda untuk aplikasi yang berbeda, bidang ini harus 0x01. |
MBIM_UICC_APP_TYPE
Jenis | Nilai | Deskripsi |
---|---|---|
MBIMUiccAppTypeUnknown | 0 | Tipe tidak diketahui. |
MBIMUiccAppTypeMf | 1 | Direktori SIM warisan yang berakar di MF. |
MBIMUiccAppTypeMfSIM | 2 | Direktori SIM warisan yang berakar pada DF_GSM. |
MBIMUiccAppTypeMfRUIM | 3 | Direktori SIM warisan yang berakar pada DF_CDMA. |
MBIMUiccAppTypeUSIM | 4 | Aplikasi USIM. |
MBIMUiccAppTypeCSIM | 5 | Aplikasi CSIM. |
MBIMUiccAppTypeISIM | 6 | Aplikasi ISIM. |
Konstanta
Konstanta berikut didefinisikan untuk MBIM_CID_MS_UICC_APP_INFO.
const int MBIM_MAXLENGTH_APPID = 32
const int MBIM_MAXLENGTH_APPNAME = 256
const int MBIM_MAXNUM_PINREF = 8
Peristiwa yang Tidak Diminta
Tidak dapat diterapkan.
Kode Status
Kode status berikut berlaku:
Kode status | Deskripsi |
---|---|
MBIM_STATUS_SUCCESS | Status MBIM dasar sebagaimana didefinisikan untuk semua perintah. |
MBIM_STATUS_BUSY | Status MBIM dasar sebagaimana didefinisikan untuk semua perintah. |
MBIM_STATUS_FAILURE | Status MBIM dasar sebagaimana didefinisikan untuk semua perintah. |
MBIM_STATUS_NO_DEVICE_SUPPORT | Status MBIM dasar sebagaimana didefinisikan untuk semua perintah. |
MBIM_STATUS_SIM_NOT_INSERTED | Tidak dapat melakukan operasi UICC karena UICC hilang. |
MBIM_STATUS_BAD_SIM | Tidak dapat melakukan operasi UICC karena UICC dalam keadaan kesalahan. |
MBIM_STATUS_NOT_INITIALIZED | Tidak dapat melakukan operasi UICC karena UICC belum sepenuhnya diinisialisasi. |
MBIM_CID_MS_UICC_FILE_STATUS
CID ini mengambil informasi tentang file UICC tertentu.
Parameter
Operasi | Set | Kueri | Pemberitahuan |
---|---|---|---|
Perintah | Tidak berlaku | MBIM_UICC_FILE_PATH | Tidak berlaku |
Respons | Tidak berlaku | MBIM_UICC_FILE_STATUS | Tidak berlaku |
Kueri
InformationBuffer MBIM_COMMAND_MSG berisi EF target sebagai struktur MBIM_UICC_FILE_PATH.
MBIM_UICC_FILE_PATH (versi 1)
Offset | Ukuran | Bidang | Jenis | Deskripsi |
---|---|---|---|---|
0 | 4 | Versi | UINT32 | Nomor versi struktur yang mengikuti. Bidang ini harus 1 untuk versi 1 dari struktur ini. |
4 | 4 | AppIdOffset | OFFSET | Offset, dalam byte, dihitung dari awal struktur ini ke buffer yang berisi ID aplikasi. |
8 | 4 | AppIdSize | UKURAN (0..16) | Ukuran ID aplikasi, dalam byte, seperti yang didefinisikan dalam Bagian 8.3 dari spesifikasi teknis ETSI TS 102 221. Untuk kartu 2G, bidang ini harus diatur ke nol (0). |
12 | 4 | FilePathOffset | OFFSET | Offset, dalam byte, dihitung dari awal struktur ini ke buffer yang berisi jalur file. Jalur file adalah array ID file 16-bit. ID pertama harus 0x7FFF atau 0x3F00. Jika ID pertama 0x7FFF, maka jalurnya relatif terhadap ADF aplikasi yang didesginasi oleh AppId. Jika tidak, ini adalah jalur absolut mulai dari MF. |
16 | 4 | FilePathSize | UKURAN (0..8) | Ukuran jalur file, dalam byte. |
20 | DataBuffer | DATABUFFER | Buffer data yang berisi AppId dan FilePath. |
Set
Tidak dapat diterapkan.
Respons
Struktur MBIM_UICC_FILE_STATUS berikut digunakan dalam InformationBuffer.
MBIM_UICC_FILE_STATUS (versi 1)
Offset | Ukuran | Bidang | Jenis | Deskripsi |
---|---|---|---|---|
0 | 4 | Versi | UINT32 | Nomor versi struktur berikut. Bidang ini harus 1 untuk versi 1 dari struktur ini. |
4 | 4 | StatusWord1 | UINT32(0..256) | Parameter pengembalian khusus untuk perintah UICC. |
8 | 4 | StatusWord2 | UINT32(0..256) | Parameter pengembalian khusus untuk perintah UICC. |
12 | 4 | FileAkssibilitas | MBIM_UICC_FILE_ACCESSIBILITY | Aksesibilitas file UICC. |
16 | 4 | FileType | MBIM_UICC_FILE_TYPE | Jenis file UICC. |
20 | 4 | Struktur File | MBIM_UICC_FILE_STRUCTURE | Struktur file UICC. |
24 | 4 | ItemCount | UINT32 | Jumlah item dalam file UICC. Untuk file transparan dan TLV, ini diatur ke 1. |
28 | 4 | Ukuran | UINT32 | Ukuran setiap item, dalam byte. Untuk file transparan atau TLV, ini adalah ukuran seluruh EF. Untuk file berbasis rekaman, ini menunjukkan jumlah total rekaman. |
32 | 16 | FileLockStatus | MBIM_PIN_TYPE_EX[4] | Array jenis MBIM_PIN_TYPE_EX yang menjelaskan kondisi akses untuk setiap operasi (READ, UPDATE, ACTIVATE, dan DEACTIVATE dalam urutan tersebut) pada file tersebut. |
MBIM_UICC_FILE_ACCESSIBILITY
Enumerasi MBIM_UICC_FILE_ACCESSIBILITY digunakan dalam struktur MBIM_UICC_FILE_STATUS sebelumnya.
Jenis | Nilai | Deskripsi |
---|---|---|
MBIMUiccFileAccessibilityUnknown | 0 | Kemampuan berbagi file tidak diketahui. |
MBIMUiccFileAccessibilityNotShareable | 1 | File yang tidak dapat dibagikan. |
MBIMUiccFileAccessibilityShareable | 2 | File yang dapat dibagikan. |
MBIM_UICC_FILE_TYPE
Enumerasi MBIM_UICC_FILE_TYPE digunakan dalam struktur MBIM_UICC_FILE_STATUS sebelumnya.
Jenis | Nilai | Deskripsi |
---|---|---|
MBIMUiccFileTypeUnknown | 0 | Tipe file tidak diketahui. |
MBIMUiccFileTypeWorkingEf | 1 | Bekerja EF. |
MBIMUiccFileTypeInternalEf | 2 | Internal EF. |
MBIMUiccFileTypeDfOrAdf | 3 | File khusus, direktori yang merupakan induk dari simpul lain. Ini mungkin DF atau ADF. |
MBIM_UICC_FILE_STRUCTURE
Enumerasi MBIM_UICC_FILE_STRUCTURE digunakan dalam struktur MBIM_UICC_FILE_STATUS sebelumnya.
Jenis | Nilai | Deskripsi |
---|---|---|
MBIMUiccFileStructureUnknown | 0 | Struktur file yang tidak diketahui. |
MBIMUiccFileStructureTransparent | 1 | Satu rekaman dengan panjang variabel. |
MBIMUiccFileStructureCyclic | 2 | Sekumpulan rekaman siklik, masing-masing memiliki panjang yang sama. |
MBIMUiccFileStructureLinear | 3 | Sekumpulan rekaman linier, masing-masing memiliki panjang yang sama. |
MBIMUiccFileStructureBerTLV | 4 | Sekumpulan nilai data yang dapat diakses oleh tag. |
MBIM_PIN_TYPE_EX
Enumerasi MBIM_PIN_TYPE_EX digunakan dalam struktur MBIM_UICC_FILE_STATUS sebelumnya.
Jenis | Nilai | Deskripsi |
---|---|---|
MBIMPinTypeNone | 0 | Tidak ada PIN yang tertunda untuk dimasukkan. |
MBIMPinTypeCustom | 1 | Jenis PIN adalah jenis kustom dan bukan jenis PIN lain yang tercantum dalam enumerasi ini. |
MBIMPinTypePin1 | 2 | Kunci PIN1. |
MBIMPinTypePin2 | 3 | Kunci PIN2. |
MBIMPinTypeDeviceSimPin | 4 | Perangkat ke kunci SIM. |
MBIMPinTypeDeviceFirstSimPin | 5 | Perangkat ke kunci SIM pertama. |
MBIMPinTypeNetworkPin | 6 | Kunci personalisasi jaringan. |
MBIMPinTypeNetworkSubsetPin | 7 | Kunci personalisasi subset jaringan. |
MBIMPinTypeServiceProviderPin | 8 | Kunci personalisasi penyedia layanan (SP). |
MBIMPinTypeCorporatePin | 9 | Kunci personalisasi perusahaan. |
MBIMPinTypeSubsidyLock | 10 | Kunci pembuka kunci subsidi. |
MBIMPinTypePuk1 | 11 | Nomor Identifikasi Pribadi 1 Kunci Buka Kunci (PUK1). |
MBIMPinTypePuk2 | 12 | Kunci Buka Kunci Nomor 2 Identifikasi Pribadi (PUK2). |
MBIMPinTypeDeviceFirstSimPuk | 13 | Perangkat ke kunci buka kunci PIN SIM pertama. |
MBIMPinTypeNetworkPuk | 14 | Kunci pembuka kunci personalisasi jaringan. |
MBIMPinTypeNetworkSubsetPuk | 15 | Kunci buka kunci personalisasi subset jaringan. |
MBIMPinTypeServiceProviderPuk | 16 | Kunci pembuka kunci personalisasi penyedia layanan (SP). |
MBIMPinTypeCorporatePuk | 17 | Kunci buka kunci personalisasi perusahaan. |
MBIMPinTypeNev | 18 | Kunci NEV. |
MBIMPinTypeAdm | 19 | Kunci administratif. |
Peristiwa yang Tidak Diminta
Tidak dapat diterapkan.
Kode Status
Kode status berikut berlaku:
Kode status | Deskripsi |
---|---|
MBIM_STATUS_BUSY | Status MBIM dasar sebagaimana didefinisikan untuk semua perintah. |
MBIM_STATUS_FAILURE | Status MBIM dasar sebagaimana didefinisikan untuk semua perintah. |
MBIM_STATUS_SIM_NOT_INSERTED | Tidak dapat melakukan operasi UICC karena UICC hilang. |
MBIM_STATUS_BAD_SIM | Tidak dapat melakukan operasi UICC karena UICC dalam keadaan kesalahan. |
MBIM_STATUS_SHAREABILITY_CONDITION_ERROR | File tidak dapat dipilih karena tidak dapat dibagikan dan saat ini sedang diakses oleh aplikasi lain. Kata status yang dikembalikan oleh SIM adalah 6985. |
MBIM_CID_MS_UICC_ACCESS_BINARY
CID ini mengirimkan perintah tertentu untuk mengakses file biner UICC, dengan jenis struktur MBIMUiccFileStructureTransparent atau MBIMUiccFileStructureBerTLV.
Parameter
Operasi | Set | Kueri | Pemberitahuan |
---|---|---|---|
Perintah | Tidak berlaku | MBIM_UICC_ACCESS_BINARY | Tidak berlaku |
Respons | Tidak berlaku | MBIM_UICC_RESPONSE | Tidak berlaku |
Kueri
Membaca file biner. InformationBuffer untuk MBIM_COMMAND_MSG berisi struktur MBIM_UICC_ACCESS_BINARY. Struktur MBIM_UICC_RESPONSE dikembalikan di InformationBuffer MBIM_COMMAND_DONE.
MBIM_UICC_ACCESS_BINARY (versi 1)
Offset | Ukuran | Bidang | Jenis | Deskripsi |
---|---|---|---|---|
0 | 4 | Versi | UINT32 | Nomor versi struktur yang mengikuti. Bidang ini harus diatur ke 1 untuk versi 1 dari struktur ini. |
4 | 4 | AppIdOffset | OFFSET | Offset, dalam byte, dari awal struktur ini ke buffer yang berisi ID aplikasi. |
8 | 4 | AppIdSize | UKURAN (0..16) | Ukuran ID aplikasi, dalam byte, seperti yang didefinisikan dalam Bagian 8.3 dari spesifikasi teknis ETSI TS 102 221. Untuk kartu 2G, bidang ini harus diatur ke nol (0). |
12 | 4 | FilePathOffset | OFFSET | Offset, dalam byte, dihitung dari awal struktur ini ke buffer yang berisi jalur file. Jalur file adalah array ID file 16-bit. ID pertama harus 0x7FFF atau 0x3F00. Jika ID pertama 0x7FFF, maka jalurnya relatif terhadap ADF aplikasi yang didesginasi oleh AppId. Jika tidak, ini adalah jalur absolut mulai dari MF. |
16 | 4 | FilePathSize | UKURAN | Ukuran jalur file, dalam byte. |
20 | 4 | FileOffset | UINT32 | Offset yang akan digunakan saat membaca dari file. Bidang ini bisa lebih besar dari 256, dan menggabungkan offset tinggi dan offset rendah seperti yang didefinisikan dalam spesifikasi teknis ETSI TS 102 221. |
24 | 4 | NumberOfBytes | UINT32 | Jumlah byte yang akan dibaca. Misalnya, driver klien dapat menggunakan fungsi ini untuk membaca file transparan (biner) yang lebih besar dari 256 byte, meskipun jumlah maksimum yang dapat dibaca atau ditulis dalam satu operasi UICC adalah 256 byte per spesifikasi teknis ETSI TS 102 221. Adalah tanggung jawab fungsi untuk membagi ini menjadi beberapa APDUs dan mengirim kembali hasilnya dalam satu respons. |
28 | 4 | LocalPinOffset | OFFSET | Offset, dalam byte, dihitung dari awal struktur ini ke buffer yang berisi kata sandi. Ini adalah PIN lokal (PIN2) dan digunakan jika operasi memerlukan validasi PIN lokal. |
32 | 4 | LocalPinSize | UKURAN (0..16) | Ukuran kata sandi, dalam byte. |
36 | 4 | BinaryDataOffset | OFFSET | Offset, dalam byte, dihitung dari awal struktur ini ke buffer yang berisi data khusus perintah. Data biner hanya digunakan untuk operasi SET. |
40 | 4 | BinaryDataSize | UKURAN (0..32768) | Ukuran data, dalam byte. |
44 | DataBuffer | DATABUFFER | Buffer data yang berisi AppId, FilePath, LocalPin, dan BinaryData. |
Set
Tidak dapat diterapkan.
Respons
Struktur MBIM_UICC_RESPONSE berikut digunakan dalam InformationBuffer.
MBIM_UICC_RESPONSE (versi 1)
Offset | Ukuran | Bidang | Jenis | Deskripsi |
---|---|---|---|---|
0 | 4 | Versi | UINT32 | Nomor versi strukturyang mengikuti. Bidang ini harus 1 untuk versi 1 dari struktur ini. |
4 | 4 | StatusWord1 | UINT32(0..256) | Parameter pengembalian khusus untuk perintah UICC. |
8 | 4 | StatusWord2 | UINT32(0..256) | Parameter pengembalian khusus untuk perintah UICC. |
12 | 4 | ResponseDataOffset | OFFSET | Offset, dalam byte, dihitung dari awal struktur ini ke buffer yang berisi data respons. Data respons hanya digunakan untuk operasi QUERY. |
16 | 4 | ResponseDataSize | UKURAN (0..32768) | Ukuran data, dalam byte. |
20 | DataBuffer | DATABUFFER | Buffer data yang berisi ResponseData. |
Peristiwa yang Tidak Diminta
Tidak dapat diterapkan.
Kode Status
Kode status berikut berlaku:
Kode status | Deskripsi |
---|---|
MBIM_STATUS_BUSY | Status MBIM dasar sebagaimana didefinisikan untuk semua perintah. |
MBIM_STATUS_FAILURE | Status MBIM dasar sebagaimana didefinisikan untuk semua perintah. |
MBIM_STATUS_SIM_NOT_INSERTED | Tidak dapat melakukan operasi UICC karena UICC hilang. |
MBIM_STATUS_BAD_SIM | Tidak dapat melakukan operasi UICC karena UICC dalam keadaan kesalahan. |
MBIM_STATUS_SHAREABILITY_CONDITION_ERROR | File tidak dapat dipilih karena tidak dapat dibagikan dan saat ini sedang diakses oleh aplikasi lain. Kata status yang dikembalikan oleh SIM adalah 6985. |
MBIM_STATUS_PIN_FAILURE | Operasi gagal karena kesalahan PIN. |
MBIM_CID_MS_UICC_ACCESS_RECORD
CID ini mengirimkan perintah tertentu untuk mengakses file tetap atau siklik linier UICC, dengan jenis struktur MBIMUiccFileStructureCyclic atau MBIMUIccFileStructureLinear.
Parameter
Operasi | Set | Kueri | Pemberitahuan |
---|---|---|---|
Perintah | Tidak berlaku | MBIM_UICC_ACCESS_RECORD | Tidak berlaku |
Respons | Tidak berlaku | MBIM_UICC_RESPONSE | Tidak berlaku |
Kueri
Membaca konten rekaman. InformationBuffer untuk MBIM_COMMAND_MSG berisi struktur MBIM_UICC_ACCESS_RECORD berikut. MBIM_UICC_RESPONSE dikembalikan di InformationBuffer MBIM_COMMAND_DONE.
MBIM_UICC_ACCESS_RECORD (versi 1)
Offset | Ukuran | Bidang | Jenis | Deskripsi |
---|---|---|---|---|
0 | 4 | Versi | UINT32 | Nomor versi struktur yang mengikuti. Bidang ini harus diatur ke 1 untuk versi 1 dari struktur ini. |
4 | 4 | AppIdOffset | OFFSET | Offset, dalam byte, dari awal struktur ini ke buffer yang berisi ID aplikasi. |
8 | 4 | AppIdSize | UKURAN (0..16) | Ukuran ID aplikasi, dalam byte, seperti yang didefinisikan dalam Bagian 8.3 dari spesifikasi teknis ETSI TS 102 221. Untuk kartu 2G, bidang ini harus diatur ke nol (0). |
12 | 4 | FilePathOffset | OFFSET | Offset, dalam byte, dihitung dari awal struktur ini ke buffer yang berisi jalur file. Jalur file adalah array ID file 16-bit. ID pertama harus 0x7FFF atau 0x3F00. Jika ID pertama 0x7FFF, maka jalurnya relatif terhadap ADF aplikasi yang didesginasi oleh AppId. Jika tidak, ini adalah jalur absolut mulai dari MF. |
16 | 4 | FilePathSize | UKURAN | Ukuran jalur file, dalam byte. |
20 | 4 | RecordNumber | UINT32(0..256) | Nomor rekaman. Ini mewakili indeks rekaman absolut setiap saat. Akses rekaman relatif tidak didukung karena modem dapat melakukan beberapa akses pada file (NEXT, PREVIOUS). |
24 | 4 | LocalPinOffset | OFFSET | Offset, dalam byte, dihitung dari awal struktur ini ke buffer yang berisi kata sandi. Kata sandi kunci adalah string UTF-8 yang dihentikan null dari digit desimal. |
28 | 4 | LocalPinSize | UKURAN (0..16) | Ukuran kata sandi, dalam byte. |
32 | 4 | RecordDataOffset | OFFSET | Offset, dalam byte, dihitung dari awal struktur ini ke buffer yang berisi data khusus perintah. Data rekaman hanya digunakan untuk operasi SET. |
36 | 4 | RecordDataSize | UKURAN (0..256) | Ukuran data, dalam byte. |
40 | DataBuffer | DATABUFFER | Buffer data yang berisi AppId, FilePath, LocalPin, dan RecordData. |
Set
Tidak dapat diterapkan.
Respons
Struktur MBIM_UICC_RESPONSE digunakan dalam InformationBuffer.
Peristiwa yang Tidak Diminta
Tidak dapat diterapkan.
Kode Status
Kode status berikut berlaku:
Kode status | Deskripsi |
---|---|
MBIM_STATUS_BUSY | Status MBIM dasar sebagaimana didefinisikan untuk semua perintah. |
MBIM_STATUS_FAILURE | Status MBIM dasar sebagaimana didefinisikan untuk semua perintah. |
MBIM_STATUS_SIM_NOT_INSERTED | Tidak dapat melakukan operasi UICC karena UICC hilang. |
MBIM_STATUS_BAD_SIM | Tidak dapat melakukan operasi UICC karena UICC dalam status kesalahan. |
MBIM_STATUS_SHAREABILITY_CONDITION_ERROR | File tidak dapat dipilih karena tidak dapat dibagikan dan saat ini sedang diakses oleh aplikasi lain. Kata status yang dikembalikan oleh SIM adalah 6985. |
MBIM_STATUS_PIN_FAILURE | Operasi gagal karena kesalahan PIN. |
MBIM_CID_MS_PIN_EX
CID ini digunakan untuk melakukan semua operasi keamanan PIN seperti yang didefinisikan dalam Bagian 9 spesifikasi teknis ETSI TS 102 221. CID mirip dengan MBIM_CID_MS_PIN, tetapi memperluasnya untuk mendukung kartu UICC multi-aplikasi. Hanya UICC berkemampuan verifikasi tunggal yang didukung. UICC berkemampuan multi-verifikasi yang mendukung lebih dari satu PIN aplikasi tidak didukung. Satu PIN aplikasi (PIN1) ditetapkan ke semua ADF/DF dan file di UICC. Namun, setiap aplikasi dapat menentukan PIN lokal (PIN2) sebagai persyaratan verifikasi pengguna tingkat 2, yang mengakibatkan kebutuhan validasi tambahan untuk setiap perintah akses. Skenario inilah yang didukung MBIM_CID_MS_PIN_EX.
Sama seperti MBIM_CID_MS_PIN, dengan MBIM_CID_MS_PIN_EX perangkat hanya melaporkan satu PIN pada satu waktu. Jika beberapa PIN diaktifkan dan melaporkan beberapa PIN juga diaktifkan, maka fungsi harus melaporkan PIN1 terlebih dahulu. Misalnya, jika pelaporan kunci subsidi diaktifkan dan PIN1 SIM diaktifkan, MAKA PIN kunci subsidi harus dilaporkan dalam permintaan kueri berikutnya hanya setelah PIN1 berhasil diverifikasi. PIN kosong diizinkan bersama dengan MBIMPinOperationEnter. PIN kosong ditentukan dengan mengatur PinSize ke nol. Dalam hal ini, perintah SET mirip dengan QUERY dan mengembalikan status PIN yang dirujuk. Ini sepenuhnya selaras dengan perilaku perintah VERIFIKASI seperti yang ditentukan dalam Bagian 11.1.9 spesifikasi teknis ETSI TS 102 221.
Parameter
Operasi | Set | Kueri | Pemberitahuan |
---|---|---|---|
Perintah | MBIM_SET_PIN_EX | MBIM_PIN_APP | Tidak berlaku |
Respons | MBIM_PIN_INFO_EX | MBIM_PIN_INFO_EX | Tidak berlaku |
Kueri
Struktur MBIM_PIN_APP berikut digunakan dalam InformationBuffer.
MBIM_PIN_APP (versi 1)
Offset | Ukuran | Bidang | Jenis | Deskripsi |
---|---|---|---|---|
0 | 4 | Versi | UINT32 | Nomor versi struktur yang mengikuti. Bidang ini harus diatur ke 1 untuk versi 1 dari struktur ini. |
4 | 4 | AppIdOffset | OFFSET | Offset, dalam byte, dari awal struktur ini ke buffer yang berisi ID aplikasi. |
8 | 4 | AppIdSize | UKURAN (0..16) | Ukuran ID aplikasi, dalam byte, seperti yang didefinisikan dalam Bagian 8.3 dari spesifikasi teknis ETSI TS 102 221. Untuk kartu 2G, bidang ini harus diatur ke nol (0). |
12 | DataBuffer | DATABUFFER | AppId sebagaimana didefinisikan dalam spesifikasi teknis ETSI TS 102 221. |
Set
Struktur MBIM_SET_PIN_EX berikut digunakan dalam InformationBuffer.
MBIM_SET_PIN_EX
Offset | Ukuran | Bidang | Jenis | Deskripsi |
---|---|---|---|---|
0 | 4 | PinType | MBIM_PIN_TYPE_EX | Jenis PIN. Lihat tabel MBIM_PIN_TYPE_EX dalam topik ini. |
4 | 4 | Pinoperasi | MBIM_PIN_OPERATION | Operasi PIN. Lihat MBIM 1.0. |
8 | 4 | PinOffset | OFFSET | Offset, dalam byte, dihitung dari awal struktur ini ke PIN string yang mewakili nilai PIN untuk melakukan tindakan, atau nilai PIN yang diperlukan untuk mengaktifkan atau menonaktifkan pengaturan PIN. Bidang ini berlaku untuk semua nilai PinOperation. |
12 | 4 | Sematkan Ukuran | UKURAN (0..32) | Ukuran, dalam byte, digunakan untuk PIN. |
16 | 4 | NewPinOffset | OFFSET | Offset, dalam byte, dihitung dari awal struktur ini ke string NewPin yang mewakili nilai PIN baru untuk diatur ketika PinOperation adalah MBIMPinOperationChange atau MBIMPinOperationEnter, untuk PinTypeMBIMPinTypePuk1 atau PinTypeMBIMPinTypePuk2. |
20 | 4 | UkuranPin Baru | UKURAN (0..32) | Ukuran, dalam byte, digunakan untuk NewPin. |
24 | 4 | AppIdOffset | OFFSET | Offset, dalam byte, dihitung dari awal struktur ini ke buffer yang berisi ID aplikasi. |
28 | 4 | AppIdSize | UKURAN (0..16) | Ukuran ID aplikasi, dalam byte, seperti yang didefinisikan dalam Bagian 8.3 dari spesifikasi teknis ETSI TS 102 221. Untuk kartu 2G, bidang ini harus diatur ke nol (0). |
32 | DataBuffer | DATABUFFER | Buffer data yang berisi Pin, NewPin, dan AppId. |
Respons
Struktur MBIM_PIN_INFO_EX berikut digunakan dalam InformationBuffer.
Offset | Ukuran | Bidang | Jenis | Deskripsi |
---|---|---|---|---|
0 | 4 | PinType | MBIM_PIN_TYPE_EX | Jenis PIN. Lihat tabel MBIM_PIN_TYPE_EX dalam topik ini. |
4 | 4 | PinState | MBIM_PIN_STATE | Status PIN. Lihat MBIM 1.0. |
8 | 4 | RemainingAttempts | UINT32 | Jumlah upaya yang tersisa untuk setiap operasi terkait PIN seperti masukkan, aktifkan, atau nonaktifkan. Perangkat yang tidak mendukung informasi ini harus mengatur anggota ini ke 0xFFFFFFFF. |
Peristiwa yang Tidak Diminta
Tidak dapat diterapkan.
Kode Status
Kode status berikut berlaku:
Kode status | Deskripsi |
---|---|
MBIM_STATUS_BUSY | Status MBIM dasar sebagaimana didefinisikan untuk semua perintah. |
MBIM_STATUS_FAILURE | Status MBIM dasar sebagaimana didefinisikan untuk semua perintah. |
MBIM_STATUS_SIM_NOT_INSERTED | Tidak dapat melakukan operasi UICC karena UICC hilang. |
MBIM_STATUS_BAD_SIM | Tidak dapat melakukan operasi UICC karena UICC dalam keadaan kesalahan. |
MBIM_STATUS_PIN_DISABLED | Operasi gagal karena PIN dinonaktifkan. |
MBIM_STATUS_PIN_REQUIRED | Operasi gagal karena PIN harus dimasukkan untuk melanjutkan. |
MBIM_STATUS_NO_DEVICE_SUPPORT | Operasi gagal karena SET pada jenis PIN yang sesuai tidak didukung oleh perangkat. |