Comments for post Sicurezza tramite l'oscuramento: una scelta obbligata per il web?

Fra_T writes: wow, onorato... :D
antirez writes: @Fra_T: Il proposito di salvare anche limone e' stato rafforzato dall'articolo che ho letto sul tuo blog dove si parlava dello script per auto-scriverlo :)
Fra_T writes: Prova commento :P
antirez writes: edit sistemato
antirez writes: @neon: no... non era una scelta, all'inizio non l'ho messo perche' ho fatto tutto al minimo per design ma mi sono accorto rapidamente che il link al nome dell'autore del commento e' una delle basi su cui poggia la blogosfera, permettendo una navigazione alternativa ai motori di ricerca e alle directory di blog. Per la pagina di edit, lo sistemo subito.
antirez writes: Sembra funzionare, tra l'altro e' molto bello per me perche' ho desiderato di avere la possibilita' di leggere le cose che scrivono le persone che commentano qui.
neon writes: Lo provo io... Più che una feature che mancava al tuo weblog pensavo fosse una tua scelta. (nella pagina di edit non è presente il campo sito)
antirez writes: @all: il sistema dei commenti di questo blog e' ora un po' meno stupido e irriverente: permette a chi posta un commento di mettere una url che viene linkata al proprio nome e si ricorda per i prossimi commenti il nome, la URL, e la scritta limone, cosi' dobbiamo tutti solamente scrivere il commento e permere il tasto Spedisci. Se c'e' qualcosa che posso fare per rendere il commento piu' immediato saro' felice di provvedere immediatamente.
antirez writes: @Doxaliber: prima di tutto ti ringrazio per lo scambio di opinioni :) Tengo questo blog proprio per avere un contatto con persone che si occupano/interessano a queste tematiche e tra l'altro sarei ben felice di avere soluzioni di cui sono certo, ma non e' cosi'! dunque viva lo scambio. Un servizio di successo e' sicuramente un mix di tante cose, ma un pattern che abbiamo notato su oknotizie e' che a volte la notizia portata su in maniera fraudolenta e' perfettamente plausibile... non sembra spam, e' magari qualcosa di vagamente interessante ma che comunque non sarebbe salita da sola, senza qualche "aiuto", in queste condizioni gli utenti buoni possono fare poco, anche perche' di solito sono molto "fair player" e non votano NO a casaccio... In questo scenario un buon algoritmo di filtering finisce per aiutare non poco. Per quanto riguarda la fatica... a volte e' incredibile cosa riescono a fare gli utenti, forse il caso piu' emblematico accaduto su oknotizie si e' avuto proprio mentre averi problemi di connettivita', ma c'era una vera e propria organizzazione (forse creata in realta' da una sola persona fisica) con alcune decine di account, diversi IP al proprio servizio e un sacco di tempo dedicato alla faccenda... dunque ormai non mi stupisco piu' di nulla :)
Doxaliber writes: @Antirez Non saprei Antirez, mi devo fidare della tua esperienza. Io credo che a rendere valido un servizio web2 contribuiscano una serie di fattori: - L'algoritmo, certamente svolge un compito importante - Gli utenti, avere una base di utenti affidabili, fidelizzati al servizio, e che si comportano "bene", penalizzando gli usi fraudolenti del servizio e segnalandoli - La velocità con cui si risolvono i problemi ed i bug che si presentano, la capacità di innovare continuamente il servizio, evitando così la perdita di interesse da parte degli utenti. Per il resto, ripeto, bisognerebbe "provare sul campo" e verificare se effettivamente un algoritmo reso pubblico sarebbe meno efficente di un algoritmo protetto. Un algoritmo per essere aggirato richiede fatica e comportamenti fraudolenti, tieni presente che un servizio come oknotizie richiede la registrazione dell'utente, sicuramente traccia gli IP... suppongo ci siano una serie di controlli che impediscano il "vote bombing", per cui si può anche riuscire ad aggirare il sistema, ma il trucco, imho, dura per poco tempo. Credo che anche su ok notizie ci siano stati svariati tentativi per "manipolare" il servizio, e non credo che non abbiano avuto successo perché chi ha cercato di fare il furbo non conosceva l'algoritmo, piuttosto semplicemente perché l'algoritmo era efficace. Naturalmente non ti dico questo per convincerti a rilasciare l'algoritmo di ok notizie ( :-DD ), diciamo che è uno scambio di opinioni che probabilmente non sarà mai "confutato" con una prova sul campo... :-)
antirez writes: @Doxaliber: se l'algoritmo di filtering di oknotizie oggi fosse pubblico il servizio sarebbe praticamente impossibile da usare perche' con un po' di studio e un po' di matematica si potrebbe trovare un modo sistematico di fare andare in home le notizie in maniera fraudolenta. Per quanto riguarda pligg, temo che non tenti in maniera particolarmente intelligente di filtrare i voti fraudolenti. Un problema pratico per un esperimento del genere e' che fino a quando il servizio non e' famoso ma viene frequentato solo da una piccola comunita' di persone per bene il tutto funziona anche con gli algoritmi piu' banali. Su oknotizie la difficolta' e' separare i voti dati perche' in effetti c'e' un apprezzamento per una data notizia dagli altri che vengono dati per fare salire notize ad hoc. E' questa la sfida, non decidere qual'e' il metro in cui i voti buoni portano su la notizia. Il ranking e' semplice, la formula generale e' rank = f(voti)/g(tempo) in cui f() e g() sono due funzioni che devono essere scelte con criterio.
antirez writes: @davidonzo: si... quello che dici e' assolutamente vero, si puo' provare a trovare parametri oggettivi per quanto riguarda il valore dei voti, il peso del tempo della notiza e tutte queste cose ma l'algoritmo di filtering che si occupa di individuare le frodi e' completamente ascientifico e arbitrario perche' e' appunto risposta a comportamenti scorretti specifici osservati in alcuni casi. Noi chiamiamo questa parte "algoritmo di filtering". Ancora ancora sarebbe pensabile pubblicare l'algoritmo di ranking ma quello che filtra i voti fraudolenti la vedo durissima ...
Doxaliber writes: @Antirez "Sarebbe interessante fare un esperimento con un social media che viene rilasciato per intero come software open source" Esiste questo prodotto, che è una specie di "clone" di Digg, mai provato però, non ho avuto tempo: http://www.pligg.com/
Doxaliber writes: Io non sono del tutto sicuro del fatto che un algoritmo chiuso migliori l'efficenza di Digg, Reddit, Oknotizie, Google, ed in generale di qualsiasi altro servizio web. In realtà per "manipolare" il servizio non è nemmeno necessario conoscere a fondo l'algoritmo, basta studiarne il comportamento, fare dei tentativi e valutare i risultati. Sono convinto che un approccio "empirico" sia decisamente efficace. Valuto il comportamento degli utenti e la "reazione" del servizio e quindi mi regolo di conseguenza. Di solito con questi tipi di approccio si ottengono ottimi risultati. Non a caso più o meno tutti gli algoritmi sono stati "manipolati", anche più volte, da persone che sapevano come muoversi. A volte gli sviluppatori hanno apportato delle "pezze" o migliorato l'algoritmo, ma di solito lo hanno fatto nel momento in cui si è presentato il problema, quindi anche in questo caso è valsa più "l'esperienza" sul campo (questa volta da parte degli sviluppatori dell'applicazione) che non l'approccio puramente teorico. Ergo, nascondere l'algoritmo può dare benefici immediati, ma alla lunga non serve a niente, fino a diventare inutile quando si raggiunge una certa "massa critica" di utenti.
davidonzo writes: L'analisi è del tutto condivisibile. Penso però una cosa: l'algoritmo di oknotizie è il risultato di un atto comportamentale esterno all'algoritmo. Non dipende da se stesso, e soprattutto ha variabili core che stanno fuori (nella testa degli utenti :-) ) Al fine di evitare falsi positivi, l'unico modo sicuro di procedere è a consuntivo: prima scopro che qualcuno ha trovato il modo di "fregarmi", dopo mi regolo di conseguenza. In buona sostanza, per migliorare l'algoritmo devi aspettare che qualcuno lo violi... Se da un lato l'oscuramento permette una sostenibilità maggiore della versione usata, dall'altro la sostenibilità potrebbe essere figlia NON della bontà del codice... Rilasciare il sorgente permette il confronto e la migliorabilità, ma, nel caso di oknotizie, potrebbe minare le basi del buon funzionamento. Alla fine, il core qual è? - Avere un buon algoritmo? => Rilascia il codice - Mantenere un buon servizio? => Mantieni il codice "closed" e sviluppalo come conseguenza di comprovata vulnerabilità IMHO la soluzione migliore non sta in nessuna delle due parti. Dipende dal risultato, e nel caso di oknotizie, il risultato primario è fornire un servizio affidabile, per cui, algoritmo chiuso (almeno per ora, considerando il contesto).
antirez writes: @timendum: si... tutti punti validi, ma allo stato attuale ci sono troppi svantaggi "individualistici" per l'azienda che pubblicasse la specifica dell'algoritmo. Sarebbe interessante fare un esperimento con un social media che viene rilasciato per intero come software open source, o comunque in un contesto in cui e' possibile rischiare grosso senza problemi. Ad esempio penso che la stessa Google potrebbe avere tutto quello che serve per creare una sorta di Digg con il solo scopo di provare questo processo di sviluppo pubblico dell'algoritmo di ranking. Serve una grossa azienda per farlo pero', che decide consapevolmente di rischiare in un dato campo per utilizzare le informazioni ricavate durante tale sperimentazione per gli altri servizi. Per quanto riguarda la URL nei commenti, hai ragione, mettero' un campo 'blog' nel commento oggi stesso, e' giusto che chi commenta sia raggiungibile da chi visita il post, cosi' si crea un intreccio di blog navigabili tramite il sistema dei commenti. Mi scuso per non averlo fatto prima.
timendum writes: L'url nel nome non funziona :P
timendum writes: bah, hai ragione, ma si arriverà al punto in cui gli algoritmi saranno così raffinati da non essere "violabili". Poi IMHO con la pubblicazione si ha un salto di qualità non ignorabile, perché ognuno dirà la sua sull'algoritmo e questo subirà dei miglioramenti. Infine tenere un algoritmo privato falsa la "concorrenza" del servizio che lo sfrutta, perché ci sarà qualcuno che ne sa di più di altri, questi avranno un'arma in più rispetto a chi non se ne intaressa. Se invece l'algoritmo è pubblico, si "gareggia" tutti ad armi pari nell'arrivare in prima pagina. Infine da molta più soddisfazione partecipare ad un social network in cui sai come funzionano le cose, se invece è oscuro c'è sempre il dubbio che ti stiano fregando (o che stiano falsando i risultati non so quante volte questa domanda è uscita su digg)
home