Zadejte hledaný výraz...

Dynamicky token platny len raz

node
verified
rating uzivatele
(5 hodnocení)
21. 10. 2013 10:11:52
Ahojte. Mam web A a web B. Z webu A taham udaje vo forme JSON objektu na web B. Riesi sa to tak, ze web A ma nejaku url ktorej vystup je spominany JSON a tuto url vola web B ktory si spracuje tento JSON objekt.
Potrebujem vsak zabezpecit tuto komunikaciu tokenom($_GET parameter). Problem je, ze chcem aby ten token musel byt vzdy unikatny. Napadlo ma pouzit nejaky kod ktory by bol ulozeny na oboch weboch a pridanim aktualneho unix timestampu a zahashovnaim by vznikol takyto unikatny token platny vzdy len v aktualnom case. Problem je ze servery nie su vzdy casovo zosynchronizovane, servery su v roznych casovych pasmach a tiez je tu latencia pri komunikacii takze tento sposob by moc nefungoval.
Mate nejaky napad ako by sa to dalo riesit?
21. 10. 2013 10:11:52
https://webtrh.cz/diskuse/dynamicky-token-platny-len-raz/#reply957761
toshi
verified
rating uzivatele
(4 hodnocení)
21. 10. 2013 10:18:39
Misto timestampu muzes pouzit counter, ktery se bude navysovat po uspesne komunikaci
21. 10. 2013 10:18:39
https://webtrh.cz/diskuse/dynamicky-token-platny-len-raz/#reply957760
node
verified
rating uzivatele
(5 hodnocení)
21. 10. 2013 13:36:44
To nie je zly napad, ale mohli by vzniknut nerzovnalost is IDckami(chyba v kode napr a pod). Oproti time() by si to vyzadovalo privela validacneoh kodu navyse.
21. 10. 2013 13:36:44
https://webtrh.cz/diskuse/dynamicky-token-platny-len-raz/#reply957759
sh
verified
rating uzivatele
(22 hodnocení)
21. 10. 2013 13:45:20
kdysi jsem potencialne nepresny timestamp resil napr. tim, ze 1. server odeslal token s aktualnim timestampem a ten druhy overoval tak, ze vygeneroval kontrolni hashe pro aktualni timestamp +-2s a pokud jeden z nich souhlasil, slo se dal. tim se v podstate eliminuji i ty extremni vykyvy casu.
samozrejme neni marny mit na serveru ntp a synchronizovat s nejakym serverem vsechny servery, pokud tato moznost neni, asi to uplne nepujde :)
21. 10. 2013 13:45:20
https://webtrh.cz/diskuse/dynamicky-token-platny-len-raz/#reply957758
To je vpodstatě vyřešený problém používaný v 2-factor authentication.
Buď jak říká Toshi, counter based HMAC-Based One-time Password (HOTP),
nebo Time-based One-time Password (TOTP)
Přičemž TOTP je bezpečnější, protože hesla pravidelně vyprší (např. každých 30 sekund).
Viz http://crypto.stackexchange.com/questions/2220/what-are-the-advantages-of-totp-over-hotp
https://en.wikipedia.org/wiki/Time-based_One-time_Password_Algorithm
http://tools.ietf.org/html/rfc6238
Nebo zdroj z http://code.google.com/p/google-authenticator/
Pro úplně jednoduchý time based token vygenerujte hash ze sdíleného tajemství a timestampu zaokrouhleného na poslední minutu/desetiminutu/půlhodinu/hodinu.
21. 10. 2013 13:46:21
https://webtrh.cz/diskuse/dynamicky-token-platny-len-raz/#reply957757
Jan Matoušek
verified
rating uzivatele
(12 hodnocení)
21. 10. 2013 16:22:59
A nestačilo by na serveru A, jednoduše ověřovat, zda přistoupil server B podle IP adresy?
Abych pravdu řekl, nejsem si jist, zda lze podstrčit IP. Pokud ano, budu rád za info.
21. 10. 2013 16:22:59
https://webtrh.cz/diskuse/dynamicky-token-platny-len-raz/#reply957756
Crusty
verified
rating uzivatele
(2 hodnocení)
21. 10. 2013 16:44:54
z jednoho serveru udelej vydavatele tokenu
21. 10. 2013 16:44:54
https://webtrh.cz/diskuse/dynamicky-token-platny-len-raz/#reply957755
node
verified
rating uzivatele
(5 hodnocení)
21. 10. 2013 20:24:56
rozhodol som sa pre nasledovne:
- server A ma privatny kluc, ktory ma k dispozicii server B.
- server B vezme tento kluc, prida k nemu string(napr time()) a zavola server A s argumentmi: hash sukromny kluc + string a string doplneny pre hashovanie
- server A spravi hash sukromneho kluca a stringu a porovna s poskytnutym hashom zo serveru B
hotovo.
Cize namiesto jedneho stringu sa poslu dva a dynamika generovania unikatneho kodu ostava zachovana.
21. 10. 2013 20:24:56
https://webtrh.cz/diskuse/dynamicky-token-platny-len-raz/#reply957754
Použij HMAC, ne samotný hash.
http://security.stackexchange.com/questions/29951/salted-hashes-vs-hmac
http://stackoverflow.com/questions/5051529/hmac-vs-simple-md5-hash
21. 10. 2013 23:00:50
https://webtrh.cz/diskuse/dynamicky-token-platny-len-raz/#reply957753
Pro odpověď se přihlašte.
Přihlásit