Pereiti prie turinio

sqlite3 slaptazodzio hash'inimas


Rekomenduojami pranešimai

Sveiki,

Gal kas gali patarti kokia funkcija ir kaip naudoti sqlite3 duomenu baseje? sukuriau duomenu base kur vienoje lenteleje yra emailas, hash_slaptazodis, ...). As bandau ivesti taip:

 

INSERT INTO User(epost, hash_slaptazodis, vardas) VALUES ('[email protected]', MD5('user123'), 'Marius');

 

Bet gaunu:

Error: no such function: MD5

 

Taip pat bandziau ir su HashBytes, bet klaida ta pati:

INSERT INTO User(....) VALUES ('[email protected]', HASHBYTES('MD5', @user123), 'Marius');

Error: no such function: HashBytes.

 

 

Ar galima sukurti kokiu tai budu nenaudojan PHP ar C hash funkcija?

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Sveikas, keletas dalyku:

 

Sveiki,

Gal kas gali patarti kokia funkcija ir kaip naudoti sqlite3 duomenu baseje?....

 

Is karto prieinam siena, sqlite yra gan minimali implementacija skirta silpniems irenginiams / laikinam testavimui / etc. ( https://www.sqlite.org/whentouse.html ) ir ji neturi daugelio dalyku kuriu tiketumeis is 'mainstream' RDBMS, vienas ju - hash funkcijos kaip md5(), hashbytes(), ir panasiai.

 

INSERT INTO User(epost, hash_slaptazodis, vardas) VALUES ('[email protected]', MD5('user123'), 'Marius');

 

Kitas didziulis ne - MD5. MD5 yra netinkamas naudoti slaptazodziams ir kitiems saugiems dalykams, nes jis yra silpnas ir reversible - zinant hash'a, gali paprasciausiai nueiti svetaines kaip https://md5.gromweb.com/ ir suzinoti pradine reiksme (e.g. raw slaptazodi), kas panaikina hash'inimo verte.

Slaptazodziams paprastai nori naudoti kazka leto ir ko nebutu galima naudoti su gpu (gpu yra zymiai greitesnes nei cpu, tad jeigu hash funkcija galima naudoti su gpu (pvz. sha seimos hash funkcijos), suteiki sioki toki pranasuma potencialiems puolejams.

Standartines hash funkcijos dabar naudojamos butent slaptazodziams ir pns yra bcrypt, scrypt, PBKDF2.

 

Tada dar prieinam apskritai prie idejos generuoti hash'us tarp duomenu bazes, kas yra prasta ideja del poros priezasciu:

  • Nereikalingai apkrauni db serveri (kas turbut nevisai galioja siuo atveju jeigu naudoji sqlite tarp to pacio serverio kaip db klientas kuris siuncia sita query)
  • Padidini atakos vektoriu siusdamas raw slaptazodzius i duomenu baze potencialiom 'man in the middle' atakom (kas velgi turbut nevisai galioja siai situacijai jeigu db ir db klientas yra tarp to pacio serverio)

 

Paprastai geriausia ideja yra tiesiog naudoti koki nors framework kuris pasirupintu visa apsauga uz tave, nes ji yra sudetinga (as tik uzsiminiau apie hash funkcijas, bet yra daugiau niuansu) ir menka klaida gali buti potencialiai katastrofiska (afaik CityBee data leak'as ivyko del nepazymeto 1 check box'o).

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Prisijunkite prie diskusijos

Jūs galite rašyti dabar, o registruotis vėliau. Jeigu turite paskyrą, prisijunkite dabar, kad rašytumėte iš savo paskyros.

Svečias
Parašykite atsakymą...

×   Įdėta kaip raiškusis tekstas.   Atkurti formatavimą

  Only 75 emoji are allowed.

×   Nuorodos turinys įdėtas automatiškai.   Rodyti kaip įprastą nuorodą

×   Jūsų anksčiau įrašytas turinys buvo atkurtas.   Išvalyti redaktorių

×   You cannot paste images directly. Upload or insert images from URL.

Įkraunama...
  • Dabar naršo   0 narių

    Nei vienas registruotas narys šiuo metu nežiūri šio puslapio.

  • Prisijunk prie bendruomenės dabar!

    Uždarbis.lt nariai domisi verslo, IT ir asmeninio tobulėjimo temomis, kartu sprendžia problemas, dalinasi žiniomis ir idėjomis, sutinka būsimus verslo partnerius ir dalyvauja gyvuose susitikimuose.

    Užsiregistruok dabar ir galėsi:

    ✔️ Dalyvauti diskusijose;

    ✔️ Kurti naujas temas;

    ✔️ Rašyti atsakymus;

    ✔️ Vertinti kitų žmonių pranešimus;

    ✔️ Susisiekti su bet kuriuo nariu asmeniškai;

    ✔️ Naudotis tamsia dizaino versija;

    ir dar daugiau.

    Registracija trunka ~30 sek. ir yra visiškai nemokama.

  • Naujausios temos

  • Karštos temos

×
×
  • Pasirinkite naujai kuriamo turinio tipą...