Estoy desarrollando una aplicación NFC. Mi aplicación procesará información secreta y quiero almacenar esa información en la tarjeta SIM. ¿Es posible, y si es posible, cómo puedo hacer esto? La versión de Android de mi teléfono es Android 2.3.5.Cómo almacenar datos de aplicaciones de Android en la tarjeta SIM usando NFC?
Respuesta
tl; dr - actualmente no es posible sin un esfuerzo enorme.
Desea utilizar la tarjeta SIM como el elemento seguro en el modo de emulación de tarjeta: este es el enfoque preferido por GSM Association. Para acceder al Elemento seguro (en SIM o Chip integrado), debe usar un Trusted Service Manager (TSM). En su caso, el TSM enviará datos a su tarjeta SIM utilizando mensajes SMS binarios. El problema es que es muy temprano para NFC en teléfonos móviles. La lectura/escritura de etiquetas es bastante simple pero el acceso al elemento seguro no lo es. Existen pruebas muy limitadas de NFC SmartPhones que usan SIM como elemento seguro para Emulación de tarjetas, y las pruebas están actualmente limitadas a un operador de red móvil (MNO) específico en países específicos.
Si desea hacer esto, necesita read the specifications, escriba un TSM y luego obtenga los contratos necesarios con los MNO para poder usar sus SIM.
¡Buena suerte!
gracias, me enteré de que no es posible. –
Gracias. ¿Esta respuesta sigue siendo confiable? – Abraham
@Abraham - Más o menos, sí. Pero la emulación de tarjeta de host (agregada en Android KitKat 4.4) puede ser útil, dependiendo de sus requisitos. https://developer.android.com/guide/topics/connectivity/nfc/hce.html – Kevin
Tengo un requisito similar. Mi enfoque es no utilizar la tarjeta SIM del operador GSM. Pero estoy trabajando para encontrar la manera de que el operador GSM use mi tarjeta SIM. Luego tendré mis propios mecanismos de acceso para almacenar mis artículos seguros en la tarjeta.
Yasin Yilmaz
Al igual que Kevin dice, no es posible sin mucho esfuerzo.
Una forma de hacerlo, podría ser utilizar un TSM. Pero es ineficiente para lo que está tratando de lograr y requiere estar "en línea". Envía información al servidor de TSM y luego envía algunos datos a su tarjeta SIM.
== Phone == | | == TSM ==
Application | ---- Network ----> | Server
SIM card | <----------------- |
Y TSM no es suficiente. También necesitará las credenciales de la tarjeta SIM. Sin esas credenciales, no podrá actualizar los datos de la tarjeta SIM desde el TSM. Esas credenciales están controladas por su operador de telefonía móvil. Finalmente, un TSM no es obligatorio en absoluto.
Con el esquema anterior, vemos una forma más obvia de hacerlo estableciendo un enlace: Aplicación -> Tarjeta SIM. Esta vez funciona incluso si no tienes red. Pero Android está concebido de alguna manera, no hay contacto directo entre las aplicaciones y la tarjeta SIM. Hay alguna solución, si está interesado, es bien explicar in that article.
Éstos son algunos requisitos:
- Es posible que necesite para reparar la capa RIL
- tienes que parchear el código fuente de Android
- Es necesario tener credenciales de la tarjeta SIM (UICC) (Puede comprar una tarjeta SIM de desarrollador, pero no podrá conectarse a la red porque no contiene las credenciales de su operador)
- Necesita saber cómo desarrollar software para tarjeta SIM (generalmente Javacard)
- ...
La forma más fácil de almacenar datos secretos, de una manera segura, sin dolor de cabeza para muchos será el uso de una tarjeta especial SD como un elemento seguro. No es necesario parchar nada, no es necesario tener acceso de administrador, no es necesario tener credenciales de tarjeta SIM. Es posible que aún tenga que desarrollar su propio "software" de tarjeta SD para alojar allí sus datos.
La seguridad se trata del nivel de amenaza en comparación con el nivel de protección. Es probable que Secure Element trabaje demasiado para proteger sus datos. Dependiendo de los datos que intente proteger, puede usar el mecanismo incorporado de Android que será lo suficientemente seguro.
- 1. Tarjeta SIM Dual Android
- 2. Android tarjeta SIM dual API
- 3. Cómo simular una tarjeta SIM para Android
- 4. ¿Detecta cambio de tarjeta SIM o encuentra IMSI de la tarjeta SIM usando el SDK oficial de iOS?
- 5. Evento cuando se cambia la tarjeta SIM
- 6. Cómo obtener el saldo de la cuenta de la tarjeta SIM en el teléfono Android
- 7. ¿Es posible utilizar las funciones criptográficas de la tarjeta SIM?
- 8. etiqueta NFC y datos NFC formato de Android
- 9. Cómo almacenar datos en Elemento seguro en android
- 10. cómo comenzar con la tarjeta java en las tarjetas SIM
- 11. Prueba en dispositivo iPhone sin tarjeta SIM
- 12. iPhone - Detectando la disponibilidad de la tarjeta SIM
- 13. Dual Sim Android
- 14. ¿Dónde almacenar grandes datos de aplicaciones en dispositivos Android?
- 15. Almacenamiento de datos en la tarjeta SD en Android
- 16. Cómo obtener Nexus S Android NFC en modo de emulación de tarjeta
- 17. ¿Cómo puedo verificar si la tarjeta SIM está disponible en un dispositivo Android?
- 18. Android Administrador de teléfonos para detectar sim
- 19. Almacenar datos de aplicaciones en Active Directory
- 20. almacenamiento de datos de la aplicación Android en la tarjeta SD
- 21. ¿Cómo acceder a una tarjeta SIM mediante programación?
- 22. Mover aplicaciones a la tarjeta SD
- 23. de aplicaciones SIM Toolkit - texto de la pantalla no puede (en realidad nada) en la selección
- 24. Android: ¿cómo acceder a la tabla de contactos SIM usando el SDK?
- 25. Android NFC start service
- 26. cómo almacenar video en la base de datos usando mysql?
- 27. dual sim android sdk
- 28. Cómo utilizar la API NFC con google chrome para Android
- 29. Detectando NFC en dispositivos Android
- 30. Android: cómo agregar un contacto a la SIM usando el SDK?
+1 para su pregunta, pero por favor use solo las etiquetas de código para el código, no para acrónimos como "NFC" –