SYDO este o jucarie la care am inceput sa lucrez de foarte putina vreme. Scopul acesteia este de a veni ca un layer deasupra interfetelor SQL prin niste clase special construite care sa administreze, sa extraga, sa stocheze si sa proceseze datele din bazele de date intr-o maniera sigura. Solutia propusa de mine ataca neincrederea ce o avem in providerii de hosting, precum si atacurile bazate pe SQLI. Vrem sa stocam datele noastre intr-un mod criptat? Sa le procesam si sa fie disponibile doar atunci cand avem nevoie? Nicio problema, SYDO ar fi solutia. Cum lucreaza? Exista un API ce comunica cu SYDO Hash Center, un server aflat la distanta ce stocheaza cheile de criptare a datelor alaturi de un hash. Clientul face request pentru hash-ul x si primeste cheia de decriptare a tabelului, bazei de date, a unei coloane sau chiar a unui singur row. Ce vreau sa fac la ea? - suport pentru diverse interfete SQL - suport pentru encriptarea tabelelor, bazelor de date (ajung chiar si la partea hardcore de encriptare a numelor si coloanelor tabelelor) - suport pentru statistici per client (requesturi facute, ce a cerut, cat a cerut, bla bla) - SYDO Hash Center va suporta mai multe website-uri - un cache bine pus la punct pentru a limita la maxim numarul de requesturi - comunicatii client-server encriptate - ma gandesc si la o varianta a serverului P2P - posibilitatea de autentificare/encriptie PGP - comunicarea folosind un RESTful API - ma gandesc sa lucrez la un sistem ce "intelege" interogarile facute (la inceput pentru MySQL) si care gaseste tot ce are nevoie pentru a cripta/decripta - Anti-DOS for SYDO Hash Center - intelegerea query-urilor va incerca sa faca sabloane de interogari astfel ca in momentul in care voi detecta anomalii ale query-urilor sa nu-ti permita sa decripteze datele (Anti-SQLI) Aplicatia se afla in versiunea 0.1 Alpha dar am ganduri mari cu ea. Urmaresc sa o simplific si sa o optimizez ca sa devina aproape nativ de folosit si de integrat in proiecte noi sau existente. Aplicatia va fi Open Source si poate fi gasita pe GitHub aici.