Skip to main content

Cartões SIM

Conhecimento técnico completo sobre cartões SIM, desde aspectos físicos até programação avançada.

📐 Form Factors Físicos

Evolução dos Tamanhos

  • Full-size (1FF): 85.6 × 53.98 mm - Formato original (1991)
  • Mini-SIM (2FF): 25 × 15 mm - Padrão dos anos 90-2000s
  • Micro-SIM (3FF): 15 × 12 mm - Smartphones modernos
  • Nano-SIM (4FF): 12.3 × 8.8 mm - Dispositivos atuais
  • MFF2 (Machine Form Factor): 6 × 5 mm - IoT e dispositivos embarcados

Características Físicas

  • Contatos elétricos: 8 contatos (C1-C8)
  • Espessura: 0.76mm (padrão ISO/IEC 7816)
  • Material: PVC ou ABS com chip embutido
  • Temperatura operacional: -25°C a +85°C

🗂️ Estrutura de Diretórios

File System Hierarchy

MF (Master File - 3F00)
├── EF(DIR) - Application Directory
├── EF(ICCID) - ICC Identification
├── EF(PL) - Preferred Languages
├── DF(GSM) - GSM Directory (7F20)
│ ├── EF(IMSI) - International Mobile Subscriber Identity
│ ├── EF(Kc) - Ciphering Key
│ ├── EF(PLMNsel) - PLMN Selector
│ ├── EF(HPPLMN) - Higher Priority PLMN
│ ├── EF(ACMmax) - Accumulated Call Meter Maximum
│ ├── EF(SST) - SIM Service Table
│ ├── EF(ADN) - Abbreviated Dialing Numbers
│ ├── EF(FDN) - Fixed Dialing Numbers
│ ├── EF(SMS) - SMS Storage
│ ├── EF(MSISDN) - Mobile Station International ISDN Number
│ └── DF(TELECOM) - Telecom Directory (7F10)
│ ├── EF(PBR) - Phone Book Reference
│ ├── EF(ADN) - Additional ADN
│ └── EF(SMS) - SMS Messages
├── DF(DCS1800) - DCS1800 Directory
├── DF(TETRA) - TETRA Directory
└── AID Applications (USIM, ISIM, etc.)

📈 Evolução Tecnológica

2G (GSM SIM)

  • Ki: 128-bit authentication key
  • IMSI: 15 digits subscriber identity
  • Algoritmos: A3/A8 (authentication/ciphering)
  • Capacidade: 8KB-32KB típico
  • Aplicações: STK básico

3G (USIM)

  • Enhanced security: Mutual authentication
  • Algoritmos Milenage: 3GPP padrão
  • UICC platform: Universal IC Card
  • Maior capacidade: 32KB-128KB
  • Java Card: Suporte a applets

4G/5G (USIM/ISIM)

  • IMS support: ISIM para VoLTE/VoNR
  • Enhanced STK: ProActive SIM
  • OTA updates: Remote provisioning
  • Multiple applications: Compartilhamento de UICC
  • Advanced crypto: ECC, SHA-256

☕ Java Card Platform

Arquitetura

┌─────────────────────────┐
│ Applet Layer │ ← SIM Toolkit, Payment, etc.
├─────────────────────────┤
│ Java Card API │ ← JCRE, Security APIs
├─────────────────────────┤
│ Java Card VM │ ← Bytecode execution
├─────────────────────────┤
│ Operating System │ ← Card OS (proprietary)
└─────────────────────────┘

Especificações

  • Java Card 3.x: Classic/Connected editions
  • Memory management: Persistent/transient
  • Applet lifecycle: Install, select, process
  • Security domains: Application isolation

🛠️ SIM Toolkit (STK)

Comandos Proactivos

  • DISPLAY TEXT: Mostrar mensagens
  • GET INKEY: Capturar tecla
  • GET INPUT: Entrada de dados
  • SELECT ITEM: Menu de opções
  • SEND SMS: Enviar SMS
  • SETUP CALL: Iniciar chamada
  • LAUNCH BROWSER: Abrir navegador
  • OPEN CHANNEL: Comunicação de dados

Event Handling

  • Menu selection: Seleção de menu
  • Call connected: Chamada conectada
  • Location status: Status de localização
  • User activity: Atividade do usuário
  • Idle screen: Tela inativa

📱 Applets e Aplicações

Tipos de Applets

  • Native applications: Aplicações do fabricante
  • STK applications: SIM Toolkit apps
  • Payment applications: EMV, contactless
  • OTA applications: Over-the-air management
  • Security applications: Authentication, PKI

Desenvolvimento

  • CAP files: Converted Applet format
  • GlobalPlatform: Standard de gerenciamento
  • Security domains: Isolamento de aplicações
  • Key management: Gestão de chaves criptográficas

🔧 Equipamentos para Leitura/Escrita

Leitores PC/SC

  • Omnikey readers: Padrão profissional
  • ACR38 series: Custo-benefício
  • Gemalto readers: Uso enterprise
  • SCM readers: Desenvolvimento

Programadores Especializados

  • Phoenix readers: Cartões mais antigos
  • Tornado readers: Multi-protocol
  • Smart Mouse: Programação avançada
  • PCSC-compatible: Padrão moderno

Características Técnicas

  • Voltagens: 1.8V, 3V, 5V
  • Protocolos: T=0, T=1
  • Velocidades: 9600-115200 bps
  • Interfaces: USB, Serial, Ethernet

💻 Software e Ferramentas

pySIM - Suite Completa

  • Programação: Configuração de parâmetros SIM
  • Shell interativo: Exploração de file system
  • Bulk provisioning: Programação em lote
  • Format support: Múltiplos formatos de cartão

Ferramentas Comerciais

  • CardPeek: Análise visual de cartões
  • SIMalliance tools: Ferramentas padrão
  • Vendor tools: Gemalto, Infineon, etc.
  • Test suites: Conformance testing

Ferramentas Open Source

  • OpenSC: Smart card library
  • PCSC-lite: PC/SC middleware Linux
  • GlobalPlatform tools: GP card management
  • SCardLib: Biblioteca de desenvolvimento

🔒 Segurança e Autenticação

Chaves e Algoritmos

  • Ki (Authentication Key): Chave mestre 128-bit
  • ADM keys: Administrative keys
  • OPC/OP: Operator codes (Milenage)
  • PIN/PUK: User authentication

Levels de Acesso

  • CHV1/PIN1: User verification
  • CHV2/PIN2: Advanced features
  • ADM1-ADM4: Administrative access
  • Master key: Factory access

🧪 Cartões de Desenvolvimento

SysmoISIM-SJA2

  • Programmable: ADM keys disponíveis
  • Multi-generation: 2G/3G/4G/5G support
  • Developer friendly: Writable fields
  • Java Card: STK application support

Características dos Dev Cards

  • Known ADM keys: Acesso administrativo
  • Reduced security: Para desenvolvimento
  • Multiple IMSI: Testing flexibility
  • OTA capable: Remote updates

📚 Referências e Recursos

Especificações Técnicas

Recursos Educacionais

Documentação Padrão

  • ETSI TS 102 221: UICC-Terminal interface
  • 3GPP TS 31.101: UICC-Terminal interface
  • GlobalPlatform: Card specification
  • Java Card: Oracle specifications

🎯 Casos de Uso

Desenvolvimento e Testes

  • Carrier testing: Homologação de redes
  • Device testing: Certificação de aparelhos
  • Security research: Análise de vulnerabilidades
  • Academic research: Pesquisa universitária

Aplicações Comerciais

  • M2M/IoT: Conectividade de dispositivos
  • Payment systems: Cartões de pagamento
  • Access control: Controle de acesso
  • Identity management: Gestão de identidade

🎯 Cartões SIM são muito mais que identificação - são plataformas computacionais completas para aplicações seguras.