java blackberry mobile-phones sim-card apdu

java - Soporte JSR 177 en Blackberry



mobile-phones sim-card (1)

He intentado interactuar con la aplicación SIM a través de intercambios APDU. Para intercambiar APDUs, tuve que crear una APDUConnection a través de Connector.open () API, pero esta API en particular arroja una excepción IO que dice "JSR 177 no es compatible con esta plataforma", no sé si esto sucede porque pruebo esto en simulador o si no es compatible con dispositivos Blackberry también.

Me gustaría saber si alguien ha tenido éxito al interactuar con aplicaciones SIM en Blackberry. Si es así, ¿cuál es la manera de hacerlo? ¿Es posible agregar extensiones al Blackberry SDK, en caso de que pueda implementar JSR 177? ¿Cómo extiendo el SDK para incluir tales extensiones? Realmente aprecio cualquier aportación de ustedes, amigos. Gracias por adelantado.


JSR 177 se utiliza principalmente para comunicarse con elementos seguros y UICC. JSR 177 no funcionará en el simulador BlackBerry porque no admite la simulación del hardware requerido. Si desea agregar simulación NFC, tendrá que editar el simulador y seguir las instrucciones proporcionadas aquí . No he completado estas instrucciones, así que no sé si es posible simular una conexión JSR 177 a una tarjeta SIM. A partir de las instrucciones proporcionadas en el enlace, dice: "BlackBerry Smartphone Simulator simula solo comunicación pasiva insegura".

Le aconsejo que lea BlackBerry NFC Primer y tenga conocimiento de las aplicaciones interactivas de la tarjeta inteligente.

Es posible utilizar JSR 177 en un dispositivo BlackBerry, sin embargo, para hacerlo, debe firmar su aplicación con las firmas NCFR o RESE para poder acceder a la API. Esta firma solo puede obtenerse mediante una aplicación para BlackBerry. Puede requerir ambas o una de las firmas en función de las API que usa en su aplicación; sin embargo, si desea comunicarse con la SIM, creo que solo necesitará la firma de NFCR.

A continuación se muestra un ejemplo corto (no probado) de cómo crear una conexión JSR 177:

//The BNF URI is explained within JSR 177, it will connect to the AID specified in the //target. In this example the AID is the first thing that came to my head and should be an //application install on the UICC. final String BNF_URI = "apdu:0;target=A0.00.00.00.01.02.03.04"; ... //Cmd APDU defines the APDU to be sent to the application on the UICC byte[] cmdApdu = new byte[]{ 0x00, 0x4A, 0x00, 0x01, 0x00}; ApduConnection conn = (ApduConnection)Connector.open(); byte[] rApdu = conn.exchangeAPDU(cmdApdu); ...

En el ejemplo, la R-APDU recibida será una matriz de bytes de datos enviados desde la aplicación dentro del entorno de la tarjeta inteligente.