Apple es conocida por poner la máxima atención incluso en los más pequeños detalles. Las tarjetas regalo o de promoción de Apple para por ejemplo, iTunes, tampoco iban a ser una excepción. En este caso veremos como funciona el sistema de reconocimiento y validación de dichos códigos. Es un sistema realmente interesante ya que sólo se utiliza la cámara y ciertas características de los tipos de letra utilizados para poder reconocerlos.
Los códigos consisten sólo en una cadena de números y letras en mayúsculas. El método de lectura es realmente sencillo, simplemente abrimos la aplicación correspondiente (iTunes, iBooks, etc) y utilizamos la cámara para canjearlos. Entonces ¿cómo puede Apple validarlos simplemente con la cámara?
Al parecer, la aplicación que reconoce dichos códigos se basa en dos parámetros: la cadena alfanumérica antes mencionada y la caja/marco que la rodea. La aplicación entonces analiza el texto dentro de la caja y se activa solo si el sistema encuentra unas características especiales en el tipo de letra. Para la prueba, los autores de esta PoC tenían que encontrar el tipo de letra con el cual se generan esos códigos. Lo intentaron de diferentes maneras sin éxito, el tipo de letra no era uno de los habituales, está diseña se forma exclusiva para generar los códigos.
Así que el siguiente paso es analizar las características de las letras de este tipo de letra y probar con tipos parecidos como Mónaco y Courier, pero finalmente no tuvieron éxito. A continuación se pueden ver las características más notables que diferencian este tipo de letra del resto:
La primera pista sobre este tipo de letra misterioso apareció en la misma aplicación de reconocimiento, ya que esta muestra una capa superpuesta con el código reconocido. Por lo tanto, el tipo de letra tendría que estar almacenado en alguna parte de la aplicación. En efecto, el tipo de letra se encuentra dentro de la misma aplicación pero no es fácil de encontrar.
Las pruebas para localizarlo se realizaron en la aplicación de iTunes. Dentro de dicha aplicación existen varias ubicaciones y componentes como un plugin llamado CodeRedeemer los cuales son candidatos a almacenar los tipos de letras buscados. Pero la búsqueda acabó sin éxito, los tipos de letras no se encontraban dentro de la aplicación iTunes analizada.
Finalmente, la fuente de letra o las fuentes de letra (la aplicación utiliza dos) se localizó en una ubicación del sistema , en concreto en la carpeta:
/System/Library/PrivateFrameworks/CoreRecognition.framework/Resources/Fonts/
Y los dos ficheros con los tipos de letra se llaman:
- Scancardium
- Spendcardium
Very helpful advice in this particular post! It’s the little changes that make the largest changes. Thanks for sharing!
ResponderEliminar