Hay una frase muy típica en el mundo de los programadores que utilizamos siempre en nuestros hackathones que es "Pon tu código donde pones tu boca" (Put your code where your mouth is") o lo que es lo mismo, enséñame tu código y no me digas lo bueno que eres. Así, en las presentaciones de los proyectos no se permitían presentaciones en PPT, y solo demos con código. Una buena forma de incentivar el delivery.
Figura 1: "Put your ETA where your mouth is"
Y basándome en esa idea estaba hablado con un compañero sobre conducir, que es algo que yo no suelo disfrutar demasiado, y el mundo de las rutas. La pregunta era si las ETA (Estimated Time of Arrival) en los GPS tipo Google Maps o Waze, que lo hacen siempre basado en tu forma de conducir, lo hacen a sabiendas de que te están dando un ETA por encima de los límites de velocidad en las carreteras que tienes que cubrir.
Es decir, si tu ETA dice que vas a llegar a una determinada hora, pero saltándose todos los límites de velocidad en las carreteras por las que tienes que pasar. Sí, esas son nuestras conversaciones habitualmente. Por supuesto que se hace uso de Machine Learning con tu historial de datos además de datos de tráfico en tiempo real, pero que pasa si el que conduce es el Señor Lobo de Pulp Fiction, que acuñó esta famosa frase:
- "It´s 30 mins away. I'll be there in 10. I drive real fast".
La pregunta, ¿le mostrará el Waze al Señor Lobo30 minutos de ETA o le enseñará 10 minutos de ETA?. Mi argumento es que puede que 10 sea lo más "accurate" en la realidad de ese usuario, pero mostrarle 10 minutos en el ETA es casi como gamificar la ruta y hacer como en los simuladores una carrera contra tu "ghost", lo que incentivaría una competición por batir el ETA (algo muy común en los conductores gamers), cometiendo infracciones de tráfico y poniendo en peligro a los demás.
La competición con el Señor Lobo
No tengo toda la información, pero hicimos una prueba muy sencilla mi querido contertulio de la charla. Sentados juntos tomando un escocés sacamos nuestro Waze y los dos pusimos la misma ruta. Y está claro que su afirmación de que él conduce muy rápido y que yo conduzco como una tortuga tiene su representación directa en los ETA.
Figura 3: El ETA de la ruta para mí: 1h y 59mina
En el de arriba se puede ver que a mi compañero le ha mostrado un ETA que es 9 minutos inferior al mío. Para que quedara clara la dirección pusimos una ruta larga, para que la diferencia de velocidad se notara claramente.
Figura 4: Ruta del Señor Lobo. Misma distancia.
Mismos peligros. Misma ruta. Misma hora.
9 minutos menos que la mía.
Por supuesto, como prueba curiosa podéis hacerla con amigos, pareja, compañeros de piso, compañeros de conducción, etcétera. Que te enseñen su ETA antes de subirte a un coche con un mal conductor, o que cuando alguien diga que conduce rápido, que ponga su ETA donde pone su boca. Y luego, por supuesto, queda la duda y el debate de si es bueno que pongan ETAs superiores a los límites de velocidad o si deberían limitarlos para incentivar una conducción correcta. ¿Opiniones?
Hoy quería hablar de "Safety" en lugar de "Security", ya que como usuario de Google Maps me he encontrado con más de una decena de estas rutas en la ciudad de Madrid, y hoy he decidido investigar cómo reportarlas, y compartirlo con vosotros para que ayudéis a evitar que yo, u otro usuario de Google Maps, tenga un accidente o se gane una multa por seguir una ruta errónea y peligrosa.
Figura 1: Cómo corregir las rutas erróneas y peligrosas de Google Maps
El problema es sencillo. Haces una ruta entre dos puntos de la ciudad usando Google Maps y resulta que te dice que tienes que tomar un giro que está prohibido. En Madrid hay algunos de estos problemas en calles muy principales, como este que propone entre las transitadas calles de Conde de Peñalver y José Ortega y Gasset, donde te dice que gires a la izquierda como podéis ver en el mapa.
Figura 2: Giro recomendado por la ruta de Google Maps
Si miramos desde la versión de Google Maps del navegador web, podemos ver que nos da las indicaciones y que incluso tenemos una foto para poder ir a visitar el Google Street View y familiarizarnos con el giro de esta ruta.
Figura 3: Recomendación de giro con imagen de Google Street View
Y si vamos al Google Street View, podemos ver esta fantástica señal de señal obligatoria de dirección recto o a la derecha. Es decir, que si giras a la izquierda no solo puedes provocar un accidente con los coches que vienen en sentido contrario o en tu misma dirección detrás de ti que no esperan este movimiento, sino que además te puedes comer una buena multa y perder unos bonitos puntos del carné de conducir.
Figura 4: En Google Street View se ve la señal de dirección obligatoria
Si has encontrado estas rutas erróneas en Google Maps, una vez que tengas la ruta marcada en Google Maps con el giro prohibido o erróneo, en la parte inferior derecha encontrarás un texto que dice "Enviar Comentarios". Ahí es donde debes pulsar.
Figura 5: Con la ruta hecha en el mapa, pincha en "Enviar Comentarios"
Una vez lo hagas, en la ruta, tendrás la opción de enviar un comentario para corregir esta ruta, indicando qué elemento de la ruta es el erróneo y dónde está el fallo. En este caso, que hay una señal de dirección obligatoria que no nos permite girar a la izquierda.
Figura 6: Yo he reportado que ese giro está prohibido
Así que, si encuentras una ruta de éstas, recuérdala y repórtala. Si se corrige puedes estar ahorrando accidentes, salvando vidas, ahorrando multas, salvaguardando puntos del carné y mejorando la circulación, porque muchas veces solo tenemos que parar, frenar toda la circulación, pero montar un lío de tráfico.
Figura 7: Confirmación del reporte
Google Maps te mantendrá informado de tus contribuciones que quedarán en tu perfil de Google. Y por supuesto, a todo aquel que haga esa ruta pensando que es la más rápida y luego no se puede hacer, le acabas de ahorrar tiempo en su vida.
Figura 8: Confirmación del reporte y enlace a las contribuciones
Anímate, y reporta estas rutas no solo en Google Maps, sino en la plataforma de mapas que utilices, así mejoras un poco la ciudad donde vivimos todos. Eso sí, creo que Google debería agradecer a los usuairos estos reportes con unos tokens, que estamos en la época del Tokenomics y la Web3.
Hoy os dejo la lista de actividades para la semana que viene que tengo en el radar. No son muchas, así que os las completo las actividades con los vídeos de las dos últimas ElevenPaths Talks dedicadas al mundo del Car Hacking y la ¿Privacidad?. Además, os dejo la lista de las charlas del Espacio Fundación Telefónica esta semana.
Figura 1: Un par de citas para la semana que viene, unas charlas en vídeo y las conferencias del Espacio Telefónica
Yo esta semana voy a participar en pocas cosas, que la tengo atareada. Pero sí que estaré el día 18 de este mes en la presentación del equipo Movistar Estudiantes para esta temporada, que esa cita no me la puedo perder.
18: ParanoidBox: la caja fuerte digital [Online]
En este webinar impartido por Álvaro Lancho y Marcos Rodríguez, dos invitados especiales, nos hablan sobre su trabajo final de máster realizado en la Universidad Europea de Madrid, en el que presentan una caja de seguridad en la que los datos pueden entrar, pero no salir. El presenta el concepto de una caja de seguridad en la que los datos pueden acceder sin problema alguno, pero no pueden salir. Estos datos solo pueden ser liberados cuando no se pueda comprobar la vida del propietario de los datos. En este caso, los datos serán públicos para que cualquier persona pueda conocerlos.
Durante el proyecto se han trabajado varios conceptos de identidad digital robusta para la inserción de datos, la redundancia de sistemas para controlar que todos los nodos siguen vivos y no hay riesgos de ataques físicos contra la información, y la comprobación mediante prueba de vida de que el propietario sigue vivo. Un trabajo muy interesante que no puedes perderte.
20: B-Sides [Málaga] [G]
La Peña Overflow, que se define como "un grupo de humanos al que nos une un interés por la seguridad informática. Quedamos los primeros jueves de cada mes para hacer un trivial con preguntas relacionadas con el tema que nos ocupa" organiza las B-Sides en la sala La Trinchera en Málaga para hablar de Seguridad Informática y Hacking. No te lo pierdas, que la entrada es gratuita y la agenda mola. Mira en la web.
Como os he dicho antes, os dejo las dos últimas ElevenPaths Talks que hemos hecho, de media hora de duración cada una, en ElevenPaths, dedicadas a los temas citados: Car Hacking y ¿Privacidad?
Y esto es todo en el post de hoy. Disfrutad el viernes que ya tenemos el fin de semana encima, con muchas cosa chulas. Hoy, como sabéis, están mis amigos de Despistaos en el Festival Oh, See! de Málaga, así que si estáis por allí.... no os los perdáis.
Decía la canción de los míticos Beatles eso de "Baby, You Can Drive My Car", en una poesía para la posteridad que cuenta la historia de una chica que quiere ser una estrella de Hollywood y que se enamora de un hombre al que ofrece ser su chófer... [aunque aún no tuviera coche] para completar con un "...and maybe I'll love you". Preciosa. A mí no me gusta conducir en el monótono trayecto de atascos yendo a la oficina o en esos momentos en que lo hago pensando en trabajo, pero sí que me gustan los coches y conducir de vez en cuando en viajes largos escuchando Spotify. Uno de mis sueños siempre ha sido hacerme la Costa Oeste de Estados UnidosNorte a Sur por la carretera del Pacífico mientras suenan los grandes éxitos de Bon Jovi. Dormir en hoteles al borde del océano y terminar en Santa Mónica o San Diego para bañarme en la playa. Mola. Ójala lo consiga hacer pronto.
Figura 1: Hacker, you can drive my car
Me gustan los coches, y por eso pongo mimo y cuidado cuando me compro un nuevo Maligno-Móvil, ya que lo voy a disfrutar durante años y quiero algo diferente siempre. Por desgracia, no soy muy buen conductor y los días en que estoy presionado por estrés, agobiado de trabajo o con muchas preocupaciones personales tiendo a despistarme y tener algún que otro sobresalto. Alguien me dijo que en el último año y medio había tenido el coche más tiempo en el taller que en circulación, y es que he tenido algún que otro "cambio de aerodinámica no deseado" con él. Necesito un chófer yo también para esos días de trabajo, donde conducir no es un placer sino una necesidad, pero cuando me compré mi último Maligno-Móvil, la ciencia no había puesto los coches que conducen solos como en Yo, Robot en el mercado. Ahora, todo parece diferente.
Las declaraciones de Bill Gates en 1997 sobre la industria del coche
En el año 1997 Bill Gates hizo una referencia en una conferencia a cómo la industria de la informática había avanzado de rápido en los últimos 20 años. En esa referencia, para que la gente pudiera darse cuenta de los avances tecnológicos que habían existido desde los primeros computadores de los años 50, para pasar por los minis, los PC, el nacimiento del Internet de consumo y la multimedia, decidió compararlo con la industria automovilística diciendo algo como:
"Si la industria de la automoción hubiera mantenido el ritmo en evolución al que va Silicon Valley en el desarrollo de la informática, los conductores podrían comprar a día de hoy vehículos con motores V30 que alcanzasen las 10.000 millas por hora o coches que consumieran 1 galón cada 1.000 millas, y por un precio de menos de 50 USD"
En esta comparativa Bill Gates quería hacer notar que la evolución, tanto del hardware como del software, había sido a un ritmo exponencial, nunca visto en ninguna otra industria a lo largo de la historia, pero a la gente le llamó mucho la atención y empezó a correr el bulo de que el presidente de General Motors le contestó - algo que no es cierto -. Lo que sí que pasó es que en el año 1999 se empezó a contar la historia con un chiste en el que se recogía una supuesta nota de prensa de General Motors que decía cosas como:
Si General Motors hubiera desarrollado la tecnología como lo hace Microsoft, nosotros conduciríamos hoy día coches con las siguientes características:
1.- Sin ninguna razón, tu coche se estrellaría dos veces al día.
2.- Cada vez que se pinten las líneas de la carretera deberías comprarte un nuevo coche.
3.- De vez en cuando, al ejecutar una maniobra como girar a la izquierda causaría que tu coche se apagase y se negase a arrancar y tú tendrías que re-instalar el motor.
4.- Cuando tu coche se apagase en mitad de la autopista sin ningún motivo, tú lo aceptarías, rearrancarías y seguirías conduciendo. [..]"
La falsa nota que se creó para generar un chiste que se contó durante años tenía más puntos, todos ellos pensados para generar humor en las personas por lo irrisorio y absurdo de lo allí contado. Pero esos tiempos ya terminaron y hoy esos 13 puntos no parecen ni imposibles, ni improbables, ya que hace ya tiempo que la industria del software y la industria automovilística se unió.
Los pasos tecnológicos de la industria de automoción
Lo cierto es que desde hace muchos años la industria de la automoción sí que fue acelerando su evolución tecnológica y sacando mucho más del desarrollo de soluciones para el control del vehículo y la conducción que necesitaban de mucho software y hardware específico. Siempre suelo contar en este punto cómo los ingenieros-hackers que trabajan en la dura competición de la Formula 1, las carreras Indy o los SuperTurismos se dejan los ojos para hackear las normas y la tecnología con nuevos inventos.
Descubrimientos que como el ABS, el ESP, el efecto suelo, la suspensión inteligente, la tracción Quattro, el Kerts o el F-duct, pasan de un entorno de competición al mundo del consumo con los años, adaptados eso sí, a la normativa vigente.
Figura 3: Patrick Depallier conduciendo el Tyrrell P34 con 6 ruedas en Montecarlo.
Ganó hasta que lo prohibieron.
En el entorno de consumo, a día de hoy, los vehículos cuentan con un sistema informático completo dentro de ellos, con una unidad centralita que configura la funciones principales del vehículo - llamada ECU "Engine Control Unit", una serie de unidades de control distribuidas por todo el coche y unos interfaces de usuario muy definidos que van desde el sistema de entretenimiento, pasando por los pedales, palancas de cambio y volantes, hasta llegar a los sensores internos que detectan situaciones en las que aplicar ABS, ESP o el control de tracción a las cuatro ruedas.
Algunos hackeos del coche: Arranque, Configuración y Conducción
Supongo que muchos conoceréis los primeros hacks en los coches, que tuvieron lugar con los sistemas de llaves. Códigos de cerraduras que eran copiados o robados y empleados en abrir un coche y llevárselo. En Septiembre de 2012, ya como colofón a una década de hacks con las cerraduras electrónicas, llegó el hackeo de las llaves de los BMW 1, que con un dispositivo de unos 30 USD más o menos, podrías copiar cualquier llave y llevarte cualquier coche.
Figura 4: Gadget para robar los BMW 1
El caso de los BMW 1 era especial, ya que llamaba la atención al ser uno de los primeros coches masivos en los había un botón de arranque y apagado y no había que meter la llave, así que estaba claro que toda la lógica tenía que estar allí. Yo la primera vez que me subí a uno - que he de decir disfruté mucho - fue algo de lo que más me llamó la atención. Lo mejor de todo es que años después BMW lo volvió hacer con un sistema de control remoto que no tenía HTTPs y que permitía a cualquiera robar el coche con una simple app. Esto obligó a la compañía a parchear 2.2 Millones de coches.
En el caso de las centralitas, sucede algo similar. Cuando has llevado tu vehículo a un taller habrás visto que los mecánicos conectan un aparato de control de la centralita para sacar la información de los errores. Esto no es nada nuevo, y desde hace décadas los vehículos reportan sus fallos y se configuran vía estas centralitas.
Figura 5: Hacking de ECU en DefCON 21
En la DefCON 21, dos investigadores españoles contaron cómo era posible configurar diferentes valores en los parámetros con que se comercializa un vehículo a través de un hardware construido por ellos mismos con Arduino que implementaba el protocolo K-Line. Podrías utilizar el mismo coche pero hacerle una especie de "overclocking" para ponerlo a tu gusto... pero también podrías hacer cosas mucho más peligrosas.
Figura 6: Charlie Miller y Chris Valasek en DEFCON 21
En esa mismo año, Charlie Miller y Chris Valasek contaron también en DefCON 21 cómo habían hackeado un Toyota Prius para conducirlo desde un ordenador personal, tal y como se puede ver en su presentación en Las Vegas.
Figura 7: Charlie Miller y Chris Valasek quitan frenos a Ford Escape
Estos dos investigadores llevan años investigando y haciendo ingeniería inversa de los protocolos utilizados en los coches, y sus vídeos son muchos en la red sobre esta materia. En este otro caso podéis ver cómo desde el asiento de al lado, Chris Valasek le quita los frenos desde el ordenador al Ford Escape que conduce Charlie Miller, configurando en tiempo real el coche. ¿Miedo? Pues era de esperar que llegara el Connected Car.
El Google Car: Los accidentes y el coche como plataforma
Con el conocimiento de que se podía controlar el coche directamente desde la ECU, los ingenieros de Google comenzaron a trabajar en la idea de hacer un coche que condujera solo. Para ello, dentro de los laboratorios de Google X destinaron a un montón de ingenieros a trabajar en justo lo que habéis visto en el vídeo superior, controlar la conducción del vehículo constantemente para, por medio de inteligencia artificial, hacer que el vehículo condujera solo.
Yo monté en uno de los prototipos de Googlecuando visité Google X y tuve la suerte de conocer a Sergey. El coche iba controlado por un conductor de emergencia y un ingeniero que monitorizaba el ordenador desde el asiento de copiloto para ver si todo iba bien. El ordenador iba mandando las órdenes al sistema informático del vehículo para que acelerase, frenase o moviera la dirección, todo muy chulo, pero solo se podía utilizar en algunas zonas del estado de California que se habían habilitado para eso. Muestra esto de lo alineados que están los gobernantes con la innovación en Silicon Valley.
Figura 8: Cómo ve un coche sin conductor la carretera
Estando en el coche, que era un Toyota como en el caso de los hackeos iniciales de Charlie Miller y Chris Valasek, le pregunté a los ingenieros muchas cosas. Les pregunté si habían recibido los manuales del fabricante de coches o habían hecho ingeniería inversa, a lo que me comentaron que los habían "hackeado" ellos, además de algo que me vino a la cabeza en ese instante:
- "Oye, ¿habéis implementado algoritmos para tratar con accidentes no evitables?"
- "No, los coches no tendrán accidentes, están programados para ello", contestó uno de los ingenieros con cara de sorpresa.
- "No creo yo que eso sea así, habrá situaciones que no se pueden predecir, como un humano cometiendo un error, un gato que salta o un fallo de cualquier tipo que obligue al conductor a tomar una decisión lo más rápido posible para salvar vidas", le argumenté.
No habían contemplado nada de eso en aquellos momentos, porque inicialmente los vehículos estaban pensados para que condujeran solos en un entorno donde todos los coches conducirán solos, pero hasta que eso llegue - e incluso llegando - harán falta esos algoritmos. De hecho, el Google Car ya se ha visto envuelto en muchos accidentes - siempre por culpa de terceros -, pero que tal vez podrían haberse evitado, o limitado su impacto, de existir esos algoritmos. ¿Quién sabe? De hecho, Google ahora publica los informes de los accidentes de sus coches sin conductor, para evitar que se corran rumores sin información.
Lo cierto es que Google está haciendo a la industria del coche conectado algo similar a lo que hizo Apple a la industria del teléfono. En lugar de ser una empresa de teléfonos la que construyó el SmartWatch, fue una empresa tecnológica. Tal vez por lo que dijo Bill Gates en 1997 de la velocidad a la que se trabaja en Silicon Valley, y ahora parece que en el mundo de la automoción Google quiere hacer lo mismo.
Es su industria, ha puesto el pie sobre ella y es a a la que va a aplicar disrupción de la buena. Tiene ya mucho por avanzado en ese camino. Ya tiene Google Maps, Google Street View, el sistema operativo Android para construir sobre él, Waze para tener más información del tráfico y parte de Uber a través de Google Ventures. Todo eso, para dar soporte a su proyecto del coche conectado de conducción autónoma. Apple parece que va por detrás, y los rumores - que no dejan de ser rumores - son que comprará alguna casa como Tesla o similares, para revolucionar esta industria, aunque Google parece que va muy por delante.
Figura 10: ¿Apple Car con Tesla?
No pasa nada, ya veremos quien se queda con las próximas industrias, como la de la gestión de los hogares o, la más e importante de todas. ¿Quién construirá Matrix y "dirupcionará" el Connected Human?
El Connected Car y los hackeos remotos
Lo cierto es que, si los coches están conectados a Internet, existe una posibilidad de que cualquiera remotamente consiga hacer algo de lo que han hecho los hackers o los sistemas de inteligencia artificial que hemos visto, pero ahora desde la red. Es decir, configurar el freno, la dirección y la velocidad a la que va un coche. Pero podrían hacerse cosas más sutiles, como cambiar los parámetros del ABS, ESP o la tracción a las cuatro ruedas. Mil detalles que, si alguien de forma maliciosa pudiera hacerlos, podría convertirse en una gran catástrofe. Y se puede hacer.
En el año 2014, Jaime Andrés Restrepo presentó en la Campus Party México cómo era posible ejecutar comandos remotamente a partir de un fallo en el sistema Chevistar de Chevrolet. Aquí el vídeo de la presentación.
Figura 12: Charlie Miller (izda) y Chris Valasek (derecha) controlado el Jeep Cherokee para Wired
En su demostración lo han hecho con un Jeep Cherokee para conseguir pararlo en mitad de la autopista, tal y como decía la leyenda urbana que pasaría en 1999 si la industria de los automóviles hiciera tecnología como Microsoft. El círculo se cierra. La ironía en el futuro será tener un accidente en un coche sin conductor por culpa de un bug en el driver.
Lo cierto es que hace unos años, tras ver las demos de hacking de aviones, un hacker en Alemania en el año 2013 me contó que ya había reportado varios bugs remotos como estos, pero nunca vi ninguna noticia pública de esto. Ahora es público, ya se sabe que se puede, y lo que no sabemos es si se ha usado ya en el pasado. ¿Quién sabe? Yo, sigo colgado con los billetes listos y preparados para hacer ese viaje por la costa del Pacífico, así que si quieres venir conmigo solo tienes que decir "Hacker, You Can Drive My Car".