UNIVERSITÀ POLITECNICA DELLE MARCHE
Facoltà di Ingegneria
Corso di Laurea in Ingegneria Elettronica
Tesi di Laurea
SISTEMI DI PAGAMENTO DIGITALE SULLA PIATTAFORMA
DELLA TV DIGITALE TERRESTRE
Candidato:
Matteo Traù
Reletore:
Prof. Aldo Franco Dragoni
Anno Accademico 2007/2008
Obiettivi
• valutare la realizzabilità di servizi di commercio
elettronico su TV digitale terrestre
• realizzare un’applicazione che dimostri le
potenzialità del t-commerce
• valutare l’adeguatezza della piattaforma al
commercio elettronico
• individuare i punti deboli o quelli di forza, gli
svantaggi e i vantaggi
TV digitale terrestre
• Televisione
- comunicazione incisiva e completa
- larga diffusione tra la popolazione
• DVB-T e MHP
- multiplazione: aumento dei canali
- applicazioni: pagine interattive
- sicurezza: informazioni criptate
- codifica MPEG: qualità migliorata
• set-top-box
- collegabile al televisore
- programmabile con Java
- più economico di un PC, ma sicuramente più limitato
- ricezione applicazioni via etere, comunicazione con i server via cavo
telefonico
- lettore di smart card integrato
e-commerce: il funzionamento
CLIENTE
NEGOZIO
BANCA
e-commerce: il funzionamento
OK CARELLO
NEGOZIO
CLIENTE
BANCA
e-commerce: il funzionamento
CLIENTE
INIZIO TRANSAZIONE DI PAGAMENTO
NEGOZIO
BANCA
e-commerce: il funzionamento
CLIENTE
CONSEGNA DEL TOKEN PER LA
SESSIONE DI PAGAMENTO
NEGOZIO
BANCA
e-commerce: il funzionamento
COORDINATE DI
PAGAMENTO
NEGOZIO
CLIENTE
BANCA
e-commerce: il funzionamento
CLIENTE
NEGOZIO
DATI DI
PAGAMENTO
BANCA
e-commerce: il funzionamento
CLIENTE
CONFERMA PAGAMENTO
MERCE SELEZIONATA
NEGOZIO
BANCA
e-commerce: il funzionamento
CLIENTE
CONFERMA RICEZIONE
DELL’AVVENUTO PAGAMENTO
NEGOZIO
BANCA
e-commerce: il funzionamento
CLIENTE
NEGOZIO
RINVIO AL
NEGOZIO
BANCA
digital divide
35
30
25
20
% della popolazione
15
10
5
0
14-17
18-24
25-34
35-44
45-54
oltre 54
digital divide
35
30
25
20
% della popolazione
% utenti Internet
15
10
5
0
14-17
18-24
25-34
35-44
45-54
oltre 54
digital divide
35
30
25
20
% della popolazione
% utenti Internet
15
10
5
0
14-17
18-24
25-34
35-44
45-54
oltre 54
t-commerce: un nuovo schema
CLIENTE
EMITTENTE TV
CENTRO SERVIZI
NEGOZIO
BANCA
t-commerce: un nuovo schema
xlet
trasmissione televisiva
CLIENTE
EMITTENTE TV
CENTRO SERVIZI
NEGOZIO
BANCA
t-commerce: un nuovo schema
xlet
trasmissione televisiva
CLIENTE
EMITTENTE TV
dati pagamento
Canale di
ritorno
CENTRO SERVIZI
NEGOZIO
BANCA
t-commerce: un nuovo schema
xlet
trasmissione televisiva
CLIENTE
EMITTENTE TV
dati pagamento
Canale di
ritorno
CENTRO SERVIZI
pagamento merce
NEGOZIO
BANCA
t-commerce
• possibilità di effettuare transazioni finanziarie tramite
set-top-box
• acquisto di merci esposte in “vetrine televisive”
• pagamenti per la pubblica amministrazione e servizi sociosanitari
• riversare l’esperienza del e-commerce sul t-commerce in
termini di :
- sicurezza delle transazioni
- fiducia dell’utente
- modalità di pagamento
t-commerce: aspetti tecnici
• linguaggio di programmazione:
- client: Java (versione ridotta nei STB)
- server: a scelta del programmatore
• canale trasmissivo:
- canale broadcast televisivo per il download
delle applicazioni
- canale di ritorno telefonico per comunicare con
il server
• no browser ma solo applicazioni Java
t-commerce: aspetti tecnici
• schermo TV:
- risoluzione, nitidezza, area visiva inferiori rispetto
al monitor di un PC
- possibilità di mostrare la merce con filmati
illustrando anche funzionalità e modi di
utilizzo dei prodotti
• capacità di input:
- non ci sono tastiera e mouse, ma solo il
telecomando
- necessità di limitare i dati che l’utente deve
inserire
applicazione
Scopi:
• pagamento ticket sanitario tramite piattaforma
della televisione digitale terrestre
• dimostrazione dello scenario al fine di individuare
vantaggi e svantaggi
• invio dei dati su canale sicuro SSL
• raccolta dei dati in un database
applicazione
Linee guida:
• compatibilità con MHP
• usabilità dell’interfaccia tramite alcune regole da noi
studiate e codificate
• connessione al canale di ritorno del STB
• riservatezza dei dati (SSL)
• dati per ogni tipo di pagamento salvati in modo diverso
(futura integrazione con veri istituti finanziari)
applicazione: la struttura
Scelta
Metodi di
pagamento
Account ASUR
PayPal
Carta di credito
Termina
SERVER
SERVER
Esito
Esito
SERVER
Esito
applicazione: la struttura
modularità:
• ciascuna pagina è un oggetto a sé stante
• un oggetto Navigatore carica le pagine quando necessario
• una pagina può essere modificata, sostituita o aggiunta modificando i
riferimenti sul Navigatore
• ciascuna pagina ha un suo gestore degli eventi
• scena, sfondo e context creati dalla xlet iniziale vengono passati alle
pagine tramite il Navigatore
Costruttore della classe PaginaScegli
public
PaginaScegli(Hscene scene, Sfondo sfondo, XletContext context) {
this.scene = scene;
this.sfondo = sfondo;
this.context = context;
}
Costruttore della classe Navigatore
public
}
Navigatore(Hscene scene, Sfondo sfondo, XletContext context) {
this.scene = scene;
this.sfondo = sfondo;
this.context = context;
applicazione
Prima pagina
• pagamento del ticket
on-line
• pagamento del ticket allo
sportello e chiusura
dell’applicazione
applicazione
Metodi di pagamento
• carta di credito
• account PayPal
• account ASUR
applicazione: carta di credito
Dati richiesti
• nome e cognome
• numero della carta di
credito
• scadenza della carta
• numero di verifica CVV2
applicazione: PayPal
Dati richiesti
• nome utente dell’account
PayPal
• password dell’account
PayPal
applicazione: account ASUR
Funzionamento:
• account legato ad un conto
prepagato dell’utente
• autenticazione con nome
utente e password
• verificata l’identità dell’utente
il pagamento avviene
automaticamente
Motivazioni della scelta:
• facilità di utilizzo
• minimizza l’inserimento dati
• (firmando i dati inviati con la
CNS si è certi della
identità dell’utente e
della sua presenza)
applicazione: account ASUR
Autenticazione dell’utente
String username = dati[1];
String password = dati[2];
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String filename = "Asur7.mdb";
String database = "jdbc:odbc:Driver={Microsoft Access Driver
(*.mdb)};DBQ=";
database+= filename.trim() + ";DriverID=22;READONLY=true
Connection con = DriverManager.getConnection( database ,"","");
Statement s = con.createStatement();
s.execute("SELECT password FROM utenti WHERE username ='"+username+"'");
ResultSet rs = s.getResultSet();
if (rs != null) {// if rs == null, then there is no ResultSet to view
while ( rs.next()){
if (rs.getString(1).equals(password))
return true;
else
return false;
}
}
s.close();
con.close();
return true;
applicazione: SSL
Caricamento del certificato
try {
char[] storepass = STOREPASS.toCharArray();
ctx = SSLContext.getInstance(“SSL”);
kmf = KeyManagerFactory.getInstance(“SunX509”);
ks = KeyStore.getInstance(“JKS”);
ks.load(new FileInputStream(STORENAME), storepass);
kmf.init(kmf.getKeyManagers(), null, null);
factory = ctx.getSocketFactory();
} catch (Exception e) {
e.printStackTrace();
}
Connessione al server
// OTTIENE IL SOCKET SSL
socket = (SSLSocket)factory.createSocket(host, port);
// STREAM DI BYTE DA PASSARE AL SOCKET
os = new DataOutputStream(socket.getOutputStream());
is = new BufferedReader(new InputStreamReader(socket.getInputStream()));
// SCRIVE SUL CANALE IN USCITA DAL SOCKET
os.writeBytes(s + ‘\n’);
// RICEVE DAL SERVER L’ESITO DELL’OPERAZIONE
rispostaClient = is.readLine().toString();
applicazione: la tastiera virtuale
• inserimento dati:
• alternative:
- tastierino numerico del telecomando
- tastiera virtuale
• i motivi della scelta:
- ottimizza il livello attenzione utente
- minimo tasso di errore
- no QWERTY
conclusioni
• trasportabilità di caratteristiche e servizi da
e-commerce a t-commerce
• possibilità di sfruttare le potenzialità del mezzo
televisivo
• inadeguatezza dell’interfaccia (telecomado)
• opportunità da non perdere
- prossimo switch-off (2012)
- commercio elettronico in crescita
- pagamenti per PA e sanità offerti a popolazione
adesso esclusa da servizi di rete
fine
Grazie per l’attenzione
t-commerce: un nuovo attore
Problema della proprietà e del controllo delle applicazioni:
• banca: in modo che nessuno possa venire a
conoscenza del sistema per le transazioni o
interferire con le operazioni
• emittente TV: ospita le applicazioni sui propri
server e le controlla
e-commerce: la situazione
• svolgimento di attività commerciali e di transazioni per
via elettronica
• commercializzazione di beni e servizi fisici e digitali
• siti di commercio elettronico
- consultazione catalogo prodotti/servizi
- ordine
- pagamento on-line
• per l’ottavo anno consecutivo il settore ha avuto una
crescita a due cifre
micropagamenti
• operazione o servizio di pagamento che consente il
trasferimento di piccole quantità di denaro in forma
elettronica
• vantaggiosi quando, per le piccole somme, i tradizionali metodi
di pagamento sono poco pratici o troppo costosi
• gli operatori accumulano una sequenza di micropagamenti
virtualizzati su un’unica transazione di accredito
tradizionale
PayPal
• nato come alternativa alla carta di credito per le aste on-line
• grande diffusione (privati e piccole aziende)
• si appoggia su una carta di credito
• non vengono inviate informazioni riguardanti la carta di credito