Il problema, detto onestamente
Per guardare un video, quel video deve arrivare al browser. E quello che arriva al browser si
puo’ salvare. Ogni soluzione che si limita a nascondere l’indirizzo del file — il tasto
destro disabilitato, l’URL offuscato, il player “protetto” — si aggira in
trenta secondi aprendo gli strumenti da sviluppatore.
La domanda giusta quindi non è “come rendo impossibile lo scaricamento”,
perché non si può. È: come faccio in modo che quello che si scarica non
serva a niente?
Come lo risolvono quelli che lo fanno per mestiere
La risposta è sempre la stessa, ed è vecchia di vent’anni: si spezza il
video in segmenti e si cifra ogni segmento. Il formato si chiama HLS, la cifratura
AES-128. Il player scarica i segmenti, chiede a parte la chiave, decifra al volo e riproduce.
La parte che conta è dove sta la chiave. Se la chiave viaggia insieme ai segmenti, la
cifratura è una serratura con la chiave appesa alla porta. Se invece la chiave la
custodisce il tuo sito, e la consegna solo dopo aver verificato che quella persona abbia pagato,
allora chi scarica i segmenti si ritrova file illeggibili.
I due controlli devono essere indipendenti
Un sistema fatto bene mette due porte diverse:
- i segmenti stanno dietro cookie firmati che scadono: senza, la rete di
distribuzione risponde 403; - la chiave non passa nemmeno da lì: la serve WordPress, dopo aver
controllato licenza o abbonamento.
Chi ruba i cookie ottiene segmenti cifrati. Chi ruba la chiave non ha i segmenti. Servono
tutti e due, e scadono entrambi.
Dove stanno i file, e quanto costa
I video non stanno sul server del sito: un hosting condiviso non regge decine di visioni
contemporanee, e la prima serata in cui il contenuto va bene è anche quella in cui il
sito cade. Stanno su uno spazio di archiviazione — Amazon S3 — dietro una rete di
distribuzione che li consegna vicino a chi guarda.
I costi, in ordine di grandezza: preparare un film di novanta minuti costa circa
un euro e mezzo, una volta sola. Tenerlo archiviato, pochi centesimi al mese.
La voce che cresce è la banda: cento visioni di un film pesante sono circa
quindici euro di traffico. È il motivo per cui un noleggio a un euro non sta in
piedi, e per cui conviene sapere questi numeri prima di decidere il prezzo.
Le due strade
1. Il plugin sul tuo sito
Video Tickets fa tutto
questo dentro il tuo WordPress: taglio e cifratura, cookie firmati, chiave servita da te,
noleggi a visioni e a tempo, abbonamenti, dirette, pubblicità nel player. La
configurazione di Amazon — bucket, permessi, certificato, distribuzione, DNS — la
fa il plugin da solo: chi lo compra non ha motivo di entrare nella console AWS.
Paghi il plugin una volta, i costi di Amazon sono tuoi e nessuno prende percentuali sui tuoi
incassi. È la strada di chi ha già un pubblico e vuole tenersi tutto in casa.
2. Pubblicare sul nostro sito
Se non vuoi gestire un account Amazon e una configurazione, carichi il film da noi:
lo prepariamo, lo mettiamo online, e quando qualcuno lo noleggia l’incasso arriva sul tuo conto
Stripe meno la commissione di servizio. Ti occupi del contenuto, il resto esiste già.
Quale delle due
Se hai già un sito con traffico tuo e prevedi di pubblicare con continuità, il
plugin si ripaga in fretta e ti lascia il controllo. Se hai uno o due contenuti e vuoi sapere se
il pubblico c’è prima di costruire un’infrastruttura, parti dal nostro sito: quello che
impari lì vale comunque, e passare al plugin dopo non butta via niente.
Se devi incassare anche per conto di altri, qui c’è come si fa senza far passare i soldi dal tuo conto: Stripe Connect spiegato.
