mi spiegate il mfunzionamento delle KEY che vengono fornite quando si crea un'applicazione twitter, oppure facebook, o altre ?
1- ho capito che la funzion pincipale e' quella di non usare in chiaro user e password nei programmi giusto ?
cioe' se faccio un programma con processing che si interfacci a twitter, ad esempio per fare una ricerca, non mettero' la mia psw dentro. Pero' mettero' la mia key.
ma se si scopre la mia key non e' ugualmente un problema come quando si scopre la mia password ?=
2- inoltre un altro punto oscuro, andando su twitter o altri si crea l'applicazione, a questa applicazione ci do un nome, e mi viene fornita la key.
Ora quando usero' questa key nel mi sketch di arduino, processing ecc, risulta che io la sto usando ? Mi spiego se io creo un sw e dentro ci metto la mia key, e questo sw viene scaricato ed usato da 1 milione di persone, per twitter sono io che sto' usando un milione di volte la funzione search su twitter ?
3- altra questione, ma se uso questa mia key per fare una ricerca su twitter via arduino, la ricerca e' influenzata dal mio account twitter, cioe' se sono amico di tizio o di caio il risultato della ricerca cambia.
non so risponderti ai prmi 2 punti, ma posso risponderti all'ultma dicendoti che provando vedo che la ricerca viene influenzata, anche se secondo me dipende cosa cerchi, per esempio, se cerchi una persona la tua ricerca viene influenzata, mentre se cerchi dei tweet sembra di no... questo è quello che noto provando... spero di essere stato utile
Grazie della conferma sul 3 punto, anche io ho notato la stessa cosa, purtroppo questo porta a credere che anche il 2 punto sia vero, bha.
Speriamo in altri interventi da chi ha esperienza
Se non ho capito male, la Key è una specie di password pubblica che serve per autenticarsi con il server.
E' certo che se perdi la Key qualcun altro si può loggare. Però mi pare di aver letto che alla chiave puoi dare diversi livelli di accesso per cui potresti ad esempio fornirgli accessi solo in lettura, così che se perdi la chiave quello che la trova non può cambiare la password principale.
Prendi il tutto con il beneficio del dubbio, però.
ho cercato in giro di capirci di piu', non credevo fosse difficile, c'e' da dire che forse implementano diversamente anche le funzioni, quindi quello che e' vero per twitter non lo e' per FB.
Testato:
1- ho capito che la funzion pincipale e' quella di non usare in chiaro user e password nei programmi giusto ?
cioe' se faccio un programma con processing che si interfacci a twitter, ad esempio per fare una ricerca, non mettero' la mia psw dentro. Pero' mettero' la mia key.
ma se si scopre la mia key non e' ugualmente un problema come quando si scopre la mia password ?=
o meglio, di non usare in chiaro la tua VERA password ma una con permessi limitati, così da limitare i danni in caso di intercettazione
Testato:
2- inoltre un altro punto oscuro, andando su twitter o altri si crea l'applicazione, a questa applicazione ci do un nome, e mi viene fornita la key.
Ora quando usero' questa key nel mi sketch di arduino, processing ecc, risulta che io la sto usando ? Mi spiego se io creo un sw e dentro ci metto la mia key, e questo sw viene scaricato ed usato da 1 milione di persone, per twitter sono io che sto' usando un milione di volte la funzione search su twitter ?
sì, quella key è una seconda PSW ma con certe restrizioni, ma al tuo account a tutti gli effetti. Il suo uso influenza il tuo twitter come il tuo twitter influenza il suo uso.
Se lasci la tua key nel programma usato da 1M persone, probabilmente l'account viene sospeso (non è possibile usare account condivisi da così tante persone di solito, oppure basta un pirla che usi la key per robe strane e far bannare l'account).
Testato:
3- altra questione, ma se uso questa mia key per fare una ricerca su twitter via arduino, la ricerca e' influenzata dal mio account twitter, cioe' se sono amico di tizio o di caio il risultato della ricerca cambia.
credo proprio di sì, come dicevo sopra, in realtà POTREBBERO aver deciso di ignorare l'influenza delle API usate con la KEY, o aver fornito una sorta di comando disattivante...
edit: in pratica l'utente genera una SUA key per metterla nel tuo programma. Così anche se il tuo programma è bast*rdo i danni sono limitati.
ma quindi se voglio fare un programma che si interfaccia a twitter o facebook quale e' la strada migloiore ? far autenticare l'user del mio programma con i suoi dati ? Come si fa ? c'e' doc in merito per farlo con processing ?
sono due livelli distinti di rpotezione quindi, una cosa e' https, altro e 'la Key api
Credo che la strada giusta quindi sia che quando il sw si apre chiede user e psw all'utente, e magari si va ad autenticare sull'indirizzo https di twitter, cosi' senza che lui lo sappia lo sto' proteggendo anche da intercettazioni sulla rete ?
allora l'HTTPS è SSH over HTTP, quindi si occupa di criptare i dati per evitare di essere intercettati (sniffati, in gergo)
la Key serve all'utente che la usa nelle Applicazioni di cui non si fida (in teoria tutte... se io fossi uno sviluppatore delle API farei in modo che esse NON funzionino usando la password vera, e non escludo l'abbiano fatto)
quindi la Key protegge l'account dell'utente da applicazioni fatte male o maligne, mentre l'HTTPS protegge i dati dell'utente o dell'applicazione da occhi indiscreti
ma a questo punto non se ne esce, mi spiego. (probabilmente io continuo a non capire :))
mi risulta che twitter abbia bloccato l'accesso con psw in chiaro, come dici tu, ma che significa ? se mi scarico l'applicazione ufficiale io sempre e solo user e psw metto, mica metto la key ?
Non posso anche io, come fa twitter stessa, creare una app dove l'utente mette solo user e psw ?
perche' e' ooobligatorio creare una app twitter se voglio scrivere un software che cerca su twitter ? non posso accedere via comandi http alla casellina del cerca online e prelevare i dati ?
mi risulta che twitter abbia bloccato l'accesso con psw in chiaro, come dici tu, ma che significa ?
significa che la tua app DEVE usare la Key
se mi scarico l'applicazione ufficiale io sempre e solo user e psw metto, mica metto la key ?
mi sa che si usa la key... ma comunque l'app ufficiale può anche "giocare sporco", essendo ufficiale.
perche' e' ooobligatorio creare una app twitter se voglio scrivere un software che cerca su twitter ?
non è obbligatorio fare una "app twitter" (che poi cosa vuol dire?), ma che i programmi usino la loro API.
Per vari motivi:
le API non sfuttano l'HTML ma connessioni TCP, quindi c'è meno spreco di banda e risorse;
le API non cambiano quasi mai, e quando lo fanno sono retrocompabili a lungo
le API sono facili da inibire in base al profilo della password utilizzato
volendo, se un programma tenta di flooddare twitter, potrebbero bloccare solo la Key ma l'utenza rimane attiva
se si usa una Key differente per ogni App, è facile individuare quale App ha fatto cosa.. e "denunciarla" in caso di malefatte
alcuni comandi delle API funzionano anche senza autenticazione (anonimous), e ritornano gli stessi dati che puoi ottenere da twitter senza autenticazione
non posso accedere via comandi http alla casellina del cerca online e prelevare i dati ?
in pratica fingi le richeste GET/POST del browser.
Sì può fare MA:
è sicuramente contro il regolamento: BAN!
se cambia la grafica/form del sito il programma non va più
ti stai complicando la vita rispetto ad usare le API
le API spesso permettono di accedere a dati che da interfaccia Web non puoi accedere, perchè ritenute inutili all'utente
e' obbligatorio fare una app twitter, e per app intendo questo:
instead of just needing a short username and password, we need FOUR things to authenticate our sketch: A consumer key & secret, and an access token & secret. You can get all 4 of these things from the twitter developer page.
Click on the ‘Create an app’ button at the bottom right
viene chiamata app, ed e' sul mio profilo twitter, sta cosa mi confonde
il resto mi e' chiaro, grazie, mi puoi spiegare perche' sta cosa che dico io e' chiamata app ? potevano chiamarlo sistema di identificazione ?
Da quel che ho capito se io volessi scrivere un sw che cerca su twitter dovrei spiegare ad ogni utente come creare questa app sul proprio profilo twitter ? Mi sembra assurdo, io vorrei fare un software dove l'utente inserisce semplicemente user e psw e si fa il suo cerca.
il sistema di autenticazione è OAuth ed è uno standard aperto. OAuth - Wikipedia
in pratica funziona così: dal sito del produttore della Applicazione/Programma (che poi sono sinonimi eh) clicchi un link che ti lancia al sito twitter (e a cui invia un codice), a cui fai il login con la vera User/Pass (ma sei sul sito twitter.com!).
Ora twitter se l'autentizaciopne ha successo associa a quella app una "Valet key", che diventa la tua password per l'applicazione.