More than Just Lines on a Map: Best Practices for U.S Bike Routes
Presentació Projecte Final de Carrera
1. Introducció
Estat de l’art
Descripció del protocol
Implementació de l’aplicació
Conclusions
Implementació d’un sistema anònim de tarificació automàtica
sobre Android
José Alberto Aguiló Escámez
Directora: Magdalena Payeras-Capellà
Co-Director: Macià Mut-Puigserver
Tutor: Andreu Pere Isern-Deyà
Enginyeria tècnica en telecomunicacions, espececialitat en telemàtica
ESCOLA POLITÈCNICA SUPERIOR
UNIVERSITAT DE LES ILLES BALEARS
24 de Gener de 2012
José Alberto Aguiló Escámez Projecte final de carrera
2. Introducció
Estat de l’art
Descripció del protocol
Implementació de l’aplicació
Conclusions
Índex general
1 Introducció
2 Estat de l’art
3 Descripció del protocol
4 Implementació de l’aplicació
5 Conclusions
José Alberto Aguiló Escámez Projecte final de carrera
3. Introducció
Estat de l’art
Descripció del protocol
Implementació de l’aplicació
Conclusions
Índex general
1 Introducció
2 Estat de l’art
3 Descripció del protocol
4 Implementació de l’aplicació
5 Conclusions
José Alberto Aguiló Escámez Projecte final de carrera
4. Introducció
Estat de l’art
Descripció del protocol
Implementació de l’aplicació
Conclusions
Introducció
Característiques a tenir en compte als sistemes de tarificació en
general:
Seguretat.
Privacitat.
Prestacions.
Costos.
Elements involucrats als sistemes de tarificació:
Tiquet electrònic.
AFC (Automatic Fare Collection).
José Alberto Aguiló Escámez Projecte final de carrera
5. Introducció
Estat de l’art
Descripció del protocol
Implementació de l’aplicació
Conclusions
Introducció
Objectius de la realització del projecte
El sistema a desenvolupar:
AFC anònim.
Implementació sobre Android.
Objectiu del projecte
Implementar una aplicació per a un sistema de tarificació automàtica
anònim capaç de recaptar les tarifes d’un servei de transport massiu en
funció del temps emprat o recorregut.
José Alberto Aguiló Escámez Projecte final de carrera
6. Introducció
Estat de l’art
Descripció del protocol
Implementació de l’aplicació
Conclusions
Índex general
1 Introducció
2 Estat de l’art
3 Descripció del protocol
4 Implementació de l’aplicació
5 Conclusions
José Alberto Aguiló Escámez Projecte final de carrera
7. Introducció
Estat de l’art
Descripció del protocol
Implementació de l’aplicació
Conclusions
Estat de l’art
Estat actual
L’estat actual dels sistemes de tarificació es poden classificar en
funció de les diferents formes de realitzar el cobrament als usuaris:
Funcionalitat.
Servei.
Recorregut.
Temps.
Tipus de tiquet.
Físic.
Electrònic.
Exemples de sistemes de tarificació automàtica existents al mercat:
Octopus Card.
Touch&Travel.
José Alberto Aguiló Escámez Projecte final de carrera
8. Introducció
Estat de l’art
Descripció del protocol
Implementació de l’aplicació
Conclusions
Estat de l’art
Propostes existents
Entre les propostes existents per a sistemes de tarificació
automàtica, existeixen una sèrie de paràmetres que els determinen:
Capacitat de traçar moviments de l’usuari.
Anonimat de l’usuari en front al proveïdor.
Dispositiu físic de l’usuari.
Comprovant d’ús del servei.
Millores de la proposta implementada
Es pot afirmar que és una millora referent a les propostes existents.
Compleix les propietats de cada una de les propostes amb èxit.
José Alberto Aguiló Escámez Projecte final de carrera
9. Introducció
Signatura de grup
Estat de l’art
Participants al sistema
Descripció del protocol
Requeriments de seguretat
Implementació de l’aplicació
Fases del protocol
Conclusions
Índex general
1 Introducció
2 Estat de l’art
3 Descripció del protocol
4 Implementació de l’aplicació
5 Conclusions
José Alberto Aguiló Escámez Projecte final de carrera
10. Introducció
Signatura de grup
Estat de l’art
Participants al sistema
Descripció del protocol
Requeriments de seguretat
Implementació de l’aplicació
Fases del protocol
Conclusions
Descripció del protocol
Signatura de grup
El principal actiu i element diferencial, és la signatura de grup. Es sosté
sobre el principi de formar grups de nombres limitats d’usuaris. Cada grup
té una clau pública que l’identifica com a grup vàlid, i cada usuari té una
clau privada que l’identifica com a membre de grup vàlid.
Propietats:
Exactitud. Una signatura creada honestament, verificarà i traçarà de
forma correcta.
Anonimat revocable. Sempre que es faci bon ús, una signatura no revela
al signador.
Traçabilitat. El gestor de claus es capaç de traçar totes les signatures
cap a un membre de grup.
José Alberto Aguiló Escámez Projecte final de carrera
11. Introducció
Signatura de grup
Estat de l’art
Participants al sistema
Descripció del protocol
Requeriments de seguretat
Implementació de l’aplicació
Fases del protocol
Conclusions
Descripció del protocol
Participants al sistema
Al protocol es diferencien quatre elements que participen al sistema:
Usuari. Accedeix al servei i realitza pagament a la sortida.
Proveïdor de servei. Xarxa d’estacions per control de tiquets.
Entitat certificadora de pagament. Gestiona els pagaments dels usuaris.
Entitat certificadora de grups. Emet i gestiona els parells de claus de
signatura de grup.
José Alberto Aguiló Escámez Projecte final de carrera
12. Introducció
Signatura de grup
Estat de l’art
Participants al sistema
Descripció del protocol
Requeriments de seguretat
Implementació de l’aplicació
Fases del protocol
Conclusions
Descripció del protocol
Requeriments de seguretat
Requeriments essencials de seguretat:
Autentificació.
No repudi.
Integritat.
Altres requeriments de seguretat:
Temps de validesa.
No reutilitzat.
Revocació d’anonimat.
No rastrejament.
José Alberto Aguiló Escámez Projecte final de carrera
13. Introducció
Signatura de grup
Estat de l’art
Participants al sistema
Descripció del protocol
Requeriments de seguretat
Implementació de l’aplicació
Fases del protocol
Conclusions
Descripció del protocol
Fases del protocol
Configuració inicial.
Generació dels parells de claus de signatura de grup.
Registre d’usuari.
Enregistrament al gestor de claus i assignació de parell de claus.
Enregistrament al gestor de pagaments.
José Alberto Aguiló Escámez Projecte final de carrera
14. Introducció
Signatura de grup
Estat de l’art
Participants al sistema
Descripció del protocol
Requeriments de seguretat
Implementació de l’aplicació
Fases del protocol
Conclusions
Descripció del protocol
Fases del protocol
Entrada al sistema.
Usuari demostra al proveïdor que és un membre d’un grup vàlid.
Estació origen del proveïdor genera un tiquet d’entrada.
José Alberto Aguiló Escámez Projecte final de carrera
15. Introducció
Signatura de grup
Estat de l’art
Participants al sistema
Descripció del protocol
Requeriments de seguretat
Implementació de l’aplicació
Fases del protocol
Conclusions
Descripció del protocol
Fases del protocol
Sortida del sistema.
Usuari s’autentifica a estació destí i entrega el tiquet d’entrada.
Proveïdor verifica tiquet d’entrada i calcula tarifa.
Proveïdor envia informació de pagament al gestor de pagaments.
Gestor de pagaments verifica crèdit, tramita pagament i envia el
resultat al proveïdor destí.
Estació destí del proveïdor genera tiquet de sortida.
José Alberto Aguiló Escámez Projecte final de carrera
16. Introducció Desenvolupament
Estat de l’art Aplicació client
Descripció del protocol Configuració inicial
Implementació de l’aplicació Servidors
Conclusions Demostració joc de proves
Índex general
1 Introducció
2 Estat de l’art
3 Descripció del protocol
4 Implementació de l’aplicació
5 Conclusions
José Alberto Aguiló Escámez Projecte final de carrera
17. Introducció Desenvolupament
Estat de l’art Aplicació client
Descripció del protocol Configuració inicial
Implementació de l’aplicació Servidors
Conclusions Demostració joc de proves
Implementació de l’aplicació
Diagrama introductori
José Alberto Aguiló Escámez Projecte final de carrera
18. Introducció Desenvolupament
Estat de l’art Aplicació client
Descripció del protocol Configuració inicial
Implementació de l’aplicació Servidors
Conclusions Demostració joc de proves
Implementació de l’aplicació
Eïnes emprades a la implementació
Eines emprades per a la realització de la implementació:
Andriod com a sistema operatiu per a mòbil
Apache Tomcat com a Servidor web
l’Eina IDE - Eclipse
Llenguatges
Java
XML
SQL
Criptografia
Signatura i xifratge (RSA)
Funció Hash (SHA1)
Certificats digitals (OpenSSL)
Signatura de grup
José Alberto Aguiló Escámez Projecte final de carrera
19. Introducció Desenvolupament
Estat de l’art Aplicació client
Descripció del protocol Configuració inicial
Implementació de l’aplicació Servidors
Conclusions Demostració joc de proves
Implementació de l’aplicació
Diagrama de flux de l’aplicació client
Esquema del funcionament de l’aplicació:
José Alberto Aguiló Escámez Projecte final de carrera
20. Introducció Desenvolupament
Estat de l’art Aplicació client
Descripció del protocol Configuració inicial
Implementació de l’aplicació Servidors
Conclusions Demostració joc de proves
Implementació de l’aplicació
S’ha dissenyat amb un únic grup de 10 membres.
1 clau pública de grup.
10 claus privades d’usuari.
OpenSSL. Creació els certificats digitals així com els parells de
claus RSA.
Intercanvi de dades. Serialització i deserialització (XML) sobre els
buffers d’entrada i sortida.
José Alberto Aguiló Escámez Projecte final de carrera
21. Introducció Desenvolupament
Estat de l’art Aplicació client
Descripció del protocol Configuració inicial
Implementació de l’aplicació Servidors
Conclusions Demostració joc de proves
Implementació de l’aplicació
Implementació dels servidors
Cada un dels servlets disposa d’una base de dades MySQL pròpia.
El gestor de claus omple la seva base de dades amb els parells de
claus de grup per a futures assignacions als registres d’usuaris.
El gestor de pagaments empra sa seva base de dades per controlar
el crèdit de cada usuari.
Base de dades del proveïdor.
Emmagatzema els identificadors de tiquets per evitar i controlar la
sobreventa.
Tarifes en funció de temps i recorregut.
José Alberto Aguiló Escámez Projecte final de carrera
22. Introducció Desenvolupament
Estat de l’art Aplicació client
Descripció del protocol Configuració inicial
Implementació de l’aplicació Servidors
Conclusions Demostració joc de proves
Implementació de l’aplicació
Demostració del funcionament de l’aplicació
Vídeo demostratiu com a joc de proves:
Carregant vídeo demostració. . .
José Alberto Aguiló Escámez Projecte final de carrera
23. Introducció
Estat de l’art
Descripció del protocol
Implementació de l’aplicació
Conclusions
Índex general
1 Introducció
2 Estat de l’art
3 Descripció del protocol
4 Implementació de l’aplicació
5 Conclusions
José Alberto Aguiló Escámez Projecte final de carrera
24. Introducció
Estat de l’art
Descripció del protocol
Implementació de l’aplicació
Conclusions
Conclusions
Proposta de millores
Com a proposta de millores per al projecte:
Gestió de falles.
Llista de revocació per a usuaris deshonests.
Protecció de dades personals (LOPD).
Concurrència als servidors.
José Alberto Aguiló Escámez Projecte final de carrera
25. Introducció
Estat de l’art
Descripció del protocol
Implementació de l’aplicació
Conclusions
Conclusions
La implementació ha suposat el desenvolupament total d’una
aplicació mòbil client Android, senzilla i intuïtiva, capaç de establir
comunicació amb diferents servidors com a servlets per tal de seguir el
protocol de forma correcta.
El desenvolupament de la part servidora ha suposat la creació de
tres servidors HTTP amb les seves base de dades. Proveïdor actua
com a servidor-client.
Conclusions del projecte
Implementació d’una aplicació basada en Android, capaç de complir el
protocol d’un sistema de tarificació automàtica, aconseguint l’anonimat i
privacitat per a l’usuari en front del proveïdor.
José Alberto Aguiló Escámez Projecte final de carrera