Preguntas y Respuestas Frecuentes en el firmado de PS3
El estilo de este artículo debe ser mejorado.
El artículo no sigue completamente las convenciones de estilo.
Para consultas y debates sobre el contenido de este artículo, visita el Hilo oficial.
En este artículo pretendemos dar respuestas a las preguntas más frecuentes relacionadas con el firmado de aplicaciones en PlayStation 3
¿Que significa que se puedan firmar los ejecutables?
Esta podríamos llamarla “la pregunta” y su comprensión hace que las respuestas para el resto sean triviales.
En el mundo del PC, sistema abierto por excelencia, cuando las aplicaciones son de pago generalmente solemos poner una clave o número de serie y si es correcto el programa se valida y tenemos acceso completo a él, ya que implica que lo hemos comprado. En cambio, en las consolas este proceso es diferente: las aplicaciones están "firmadas", es decir, el proceso para crear algo es igual que en el PC pero se le añade un paso más al final.
Es entonces cuando la consola, al ejecutar cualquier aplicación comprueba si la firma es válida, en el caso de que lo sea ejecutará la aplicación y en caso contrario rechazará su ejecución.
Y es en este párrafo anterior donde está todo la cuestión ya que la Scene ha conseguió esa clave de firmado por lo qué una vez que se terminen de descubrir todos los entresijos que rodean al sistema operativo de la PlayStation 3 cualquiera podrá crear su aplicación y posteriormente firmarla, y la consola no podrá hacer otra cosa que ejecutarla ya que para la máquina es como si viniese de la mismísima Sony.
¿Lo podrá solucionar Sony?
La respuesta es clara: no. Y no puede porque esto no es un fallo de seguridad, no estamos aprovechándonos de un error que posteriormente puede ser reparado, lo que estamos es usando el mecanismo normal que utiliza Sony y cualquier compañía desarrolladora para ejecutar sus juegos y aplicaciones.
Muchos piensan que con cambios de firmware o poniendo otra firma se puede solucionar, pero si haces eso los juegos antiguos no funcionarían en las consolas nuevas y los nuevos en las consolas viejas, por lo que es casi sacar la sucesora de Play Station para subsanar lo que para ellos es un gran problema.
Hace unos años en Wii salió algo parecido a esto, es decir, la posibilidad de firmar aplicaciones y que la consola de Nintendo se las tragase sin quejarse. El error que tuvo fue muy simple: a la hora de comparar la firma usó un mecanismo invalido y el que lo hizo tenía que ser primo hermano del de Play Station 3.
En informática, cuando queremos comparar dos secuencias de los famosos ceros y unos lo que hacemos lógicamente es ir comparando uno a uno los pares entre los diferentes números, por ejemplo, si queremos comparar las secuencias:
010100110000 |
010110110000 |
la maquina cogerá los pares en la misma posición e irá comprobando si son iguales:
010100110000 |
010110110000 |
después
010100110000 |
010110110000 |
y así hasta que llegue a
010100110000 |
010110110000 |
que al ser diferentes nos devolverá que la secuencia es distinta.
Pues bien, este mecanismo se implementó de forma vergonzosa en Wii y provoco que la comprobación de la firma finalizase mucho antes de encontrar un fallo en la comparación ya que no lo hacía a nivel de bit (0 ó 1) sino a nivel de caracteres (conjunto de 8 ó 16 bits, dependiendo de la implementación).
La función que debería haberlo hecho se llama memcmp (memory compare) y la que lo hacía era strcmp (string compare, o comparación de cadenas), cada una con un significado totalmente diferente y que provocó que cualquiera pudiese firmar ejecutables o paquetes (WADs, en el mundo de Wii). A esta firma se le llamó trucha y es debido a que en algunas partes de Sudamérica trucha significa falso, es decir, firma falsa. Cualquier persona con un PC podía en poco tiempo encontrar una secuencia de caracteres que para la función strcmp la diese como válida pero que con memcmp hubiese tardado miles de años.
Y ahora es cuando viene la gran diferencia: esto que hemos explicado antes es un fallo de comprobación software, lo de la Play Station 3 es el mecanismo natural por el cual Sony valida sus aplicaciones.
Nintendo tardó poco en sustituir en la comprobación de firmas la función strcmp por la memcmp, por lo que el error quedaba subsanado, pero en la consola de Sony esto es imposible porque al tener la clave real (y no un simple "engaño") no puede cambiar nada ya que como anteriormente se ha dicho: o se empieza desde 0 en una consola nueva con firma diferente o va a tener que aguantar el chaparrón de la vida que le quede a la consola siendo totalmente accesible.
¿Perderé la garantía?
En el momento en el que no sea necesaria ninguna técnica especial o añadida para poder ejecutar cosas la respuesta es no, ya que la firma de código es legitima, no nos estamos saltando ninguna medida de seguridad para ejecutar código.
¿Van a banear?
Miedo heredado de la Xbox 360. Hoy por hoy no se conoce en la maquina de MicroSoft como consigue saber que el lector ha sido modificado y es por esa razón por lo que no se ha podido “engañar” a MicroSoft. Si en PS3 se hacen las cosas bien y la consola no tiene ningún mecanismo por el cual sepa con certeza que una consola está cargando una copia de seguridad Sony no podrá hacer nada. Otra cosa muy distinta es que se hayan vendido 15.000 copias de un juego y simultáneamente estén jugando 40.000, pero... ¿quien es quien?
¿Se podrán cargar juegos por disco?
Realmente no es algo que tenga mucho futuro y la razón se encuentra en el ratio datos/precio entre un Blu-Ray virgen y un disco duro, en otras palabras, en un disco duro puedes meter muchos Blu-Rays por menos precio por lo que es probable que el método de carga de copias de seguridad favorito para todos sea este último.
Además habría que disponer de una grabadora de Blu-Rays y encima pocos juegos ocupan un Blu-Ray completo, por lo que se aprovecha mucho mejor el espacio en un disco duro.
¿Veremos venta de juegos por la calle?
Por el punto anterior podemos deducir que será raro, aunque no imposible. Hoy por hoy existen otras consolas que pueden cargar copias y no es muy normal aun siendo el soporte que usan mucho más barato que un Blu-Ray.
Anexo I: diferencias con otros métodos de carga de aplicaciones y juegos
Se ha leído varías veces ya que esto no pasa nada, que si en PS1 y PS2 se podían modificar y triunfaron, que Wii, Xbox 360 y NDS también se pueden y ahí están...
Nada más lejos de la realidad. Todas las consolas (menos una de la que hablaremos después) han requerido abrir consolas (PS1 y PS2), pérdidas de garantía, tener unos conocimientos amplios para modificarla (Xbox 360), saber mantener versiones de firmware y arrastrar errores para aprovecharlos (Wii), parcheo de juegos y actualizaciones de firmware específicos de un hardware diferente a la consola (NDS), etc... Es decir, en todos los casos tenemos contrapuntos que hacen que gran parte de la población no pueda o no quiera modificar una consola, haciendo que esta compren con más o menos frecuencia juegos.
Quizás el único precedente que tenemos en la historia sobre algo parecido a esto es la DreamCast, a la que por desgracia aun muchos siguen echando la culpa de la ruina de Sega ya que se podían cargar juegos de una forma extremadamente fácil. Pero DreamCast es muy mal ejemplo ya que ni siquiera finalizó su vida en el tiempo establecido: Sega arrastraba deudas provocadas por muchos errores en el pasado que hicieron que la empresa cayera en bancarrota.
Así pues, estamos ante la primera vez que a mitad de la vida de una consola podemos hacer con ella lo que queramos y, además, de una forma totalmente legitima.
Es por eso que ponernos a mirar la bola de cristal no sirve para nada, nadie sabe como pueden ir los tiros ya que dependiendo lo que hagan los consumidores puede ser el fin de la Play Station 3 de Sony como pueden encumbrarla a la consola más vendida y con más ratio de juegos por consola de la generación.
Anexo II: retrocompatibilidad futura
En el caso de que saliesen tanto PS4 como PSP2 estas no podrían (o deberían, mejor dicho) cargar juegos y aplicaciones de consolas pasadas ya que al conocerse las firmas estas volverían a tragarse todo lo que le metiésemos dando por defecto Sony el camino para atacar de nuevo a sus nuevas consolas.