Portál AbcLinuxu, 10. května 2025 08:34

Dotaz: Zabezpeceni hesla

20.12.2010 16:39 karola
Zabezpeceni hesla
Přečteno: 383×
Odpovědět | Admin
zdravim vsechny..

potreboval bych nskopnout v obalsti zabezpeceni hesla ulozeneho v mysql. chci nabizet sluzbu ktera potrebuje pristup i k jinemu serveru nez k memu a prihlaseni je pres heslo. problem je v tom, ze nechci to heslo ukladat z bezpecnostnich duvodu jako nejaky text ale sifrovane, to problem neni ale problem je v tom, ze toto heslo uz bude vyzadovat fci z mysql tudiz uz bez vyplneni nejakeho reg. usera. cili ve finale to bude tak ze se nacte heslo do php souboru dosadi se do nejake prom a odesle. jenze kdyz bude sifrovane tak se bude povazovat to heslo v te fci jako prosty text tudiz bude to heslo neplatne. neporadil by nekdo jak a co? moc predem dekuji....
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

20.12.2010 16:52 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Zabezpeceni hesla
Odpovědět | | Sbalit | Link | Blokovat | Admin
Vůbec nechápu, co popisujete a co chcete, co s tím má společného nějaký registrovaný uživatel nebo funkce MySQL nebo PHP… A obávám se, že ostatní na tom nebudou lépe.

Jinak pokud bude heslo zašifrované v databázi, ale heslo k té šifře bude v nějakém PHP souboru, který může číst kde kdo, není rozdíl v nebezpečnosti oproti přímo nešifrovaným heslům v databázi nijak velký.
20.12.2010 17:05 karola
Rozbalit Rozbalit vše Re: Zabezpeceni hesla
zkusim to napsat na nejakem prikladu pro lepsi pochopeni..

nejaky uzivatel se zaregistruje na mych strankach, po prihlaseni si aktivuje nejakou sluzbu ktera bude vyzadovat nejake pristupove heslo na uplne jiny server, tato sluzba bude automaticky zpracovavat nejake informace za toho uzivalele, tudiz bude potrebovat zadavat jeho heslo pro pristup na ty dane stranky a toto heslo chci nejak ulozit do mysql sifrovane ale aby si ho dokazala nejaka fci v php zase dat zpet do normalniho stavu.

uzivatel ulozi heslo: kedlubna a do db se ulozi treba md5 7GLUZG7OGKUZGZLI79Z67TJG

a kdyz se bude chtit fci v php prihlasit misto toho uzivatele tak musi zadat heslo ktere je kedlubna ne 7GLUZG7OGKUZGZLI79Z67TJG.

snad jsem to ted popsal k pochopeni, dekuji
20.12.2010 17:33 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Zabezpeceni hesla
Při ukládání hesla do databáze se to heslo musí zašifrovat, a při načtení zase rozšifrovat. Můžete použít třeba některou z dvojic funkcí MySQL – ENCODE/DECODE, DES_ENCRYPT/DES_DECRYPT nebo AES_ENCRYPT/AES_DECRYPT.

Problém je asi v tom, že si pletete šifrování a hashování – šifrování znamená, že vezmete vstupní text a heslo, a dostanete zašifrovaný text. Ze zašifrovaného textu a hesla (původního nebo spárovaného s původním heslem – záleží na typu šifrování) pak získáte zase původní text. Hash (třeba MD5) je něco jiného – původní text se převede na nějaké číslo, ale na tohle číslo vede nekonečně mnoho textů. Takže nejde z hashe získat původní text. Vy tedy nemůžete použít hashování, ale šifrování – potřebujete získat zpět původní heslo uživatele.

Ale jak už jsem napsal v předchozím komentáři, pokud někdo získá zašifrovaná hesla z databáze a heslo, kterým je budete šifrovat, má hesla všech uživatelů.
20.12.2010 17:51 karola
Rozbalit Rozbalit vše Re: Zabezpeceni hesla
dekuji za informace..

tak ze konecny verdikt zni: nejde to nijak bezpecne osetrit.

coz me teda velmi zklamalo :(

ale i tak moc dekuji
20.12.2010 23:45 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: Zabezpeceni hesla
Tý-jo, to je verdikt a rychlý závěr :)
To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
21.12.2010 00:20 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
Rozbalit Rozbalit vše Re: Zabezpeceni hesla
Jop. Pokud ty dané stránky poskytují API s autentizací/autorizací přes OAuth nebo něco podobného, tak to pochopitelně lze. Aplikace samotná se nepřihlašuje jako uživatel, ale speciálním klíčem, který od té dané stránky získá poté, co se na ní uživatel přihlásí a aplikaci přístup explicitně povolí… atd. atd. Doporučuju autorovi, aby na to aspoň kouknul.

Ev., pokud na bezpečnosti tolik nezáleží, by přihlašovací heslo na ty dané stránky nemuselo být šifrované univerzálním klíčem, který zná aplikace, ale přihlašovacím heslem uživatele do "naší" aplikace (nebo něčím od něj odvozeným, třeba hashem, který se zároveň používá pro ověření oproti autentizační databázi). To je pro mnoho případů neakceptovatelné, ale pořád je to výrazně lepší než to, o čem se spekuluje tady v diskusi.
Ještě na tom nejsem tak špatně, abych četl Viewegha.
21.12.2010 10:56 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Zabezpeceni hesla
přihlašovacím heslem uživatele do "naší" aplikace
To už ale uživatel rovnou může zadat cílové heslo.
21.12.2010 11:12 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: Zabezpeceni hesla
Pokud jich nepotřebuje více k více serverům :)
To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
21.12.2010 11:45 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
Rozbalit Rozbalit vše Re: Zabezpeceni hesla
To musí v každém případě, ale stačí to jednou.
Ještě na tom nejsem tak špatně, abych četl Viewegha.
21.12.2010 16:03 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Zabezpeceni hesla
Jenže stejně bude muset zadávat heslo do „mé“ aplikace. Pokud „cizí“ aplikace je jen jedna a pokud se nepotřebuji autorizovat extra i v „mé“ aplikaci, může uživatel zadávat rovnou heslo té „cizí“ aplikace, a nemusí mít ještě další extra heslo pro „mou“ aplikaci.
21.12.2010 16:20 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
Rozbalit Rozbalit vše Re: Zabezpeceni hesla
Za těchto podmínek jistě.
Ještě na tom nejsem tak špatně, abych četl Viewegha.
21.12.2010 11:50 pht | skóre: 48 | blog: pht
Rozbalit Rozbalit vše Re: Zabezpeceni hesla
Ale jak už jsem napsal v předchozím komentáři, pokud někdo získá zašifrovaná hesla z databáze a heslo, kterým je budete šifrovat, má hesla všech uživatelů.

Což je ale lepší než když mu k tomu stačí jen ten výpis z databáze.
In Ada the typical infinite loop would normally be terminated by detonation.
21.12.2010 12:47 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: Zabezpeceni hesla
Heslo v PHP souboru nemusí mít nutně právo číst kde kdo, stačí mít soubor (adresář), na který bude mít oprávnění jen Apache (například uživatel wwwrun) a na něj se už nepřihlásí kde kdo a za předpokladu, že je Apache pod Vaší kontrolou (potažmo celý server), již to určitý krok pro zabezpečení je.
To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
21.12.2010 15:41 sidik
Rozbalit Rozbalit vše Re: Zabezpeceni hesla
Odpovědět | | Sbalit | Link | Blokovat | Admin
Kvůli tomuhle různé služby poskytují API a speciální klíče, takže se uživatelovo heslo nikam nezapisuje. On se pouze jednou přihlásí, potvrdí přístupová oprávnění (ideálně podle svého uvážení), server vrátí klíč a ten se pak používá v budoucí komunikaci.

Pro uživatele to nese výhodu v tom, že nikdo další nemá jeho heslo (teoreticky) nebo si ho hned po tomhle může změnit, aniž by přišel o propojení. Navíc většina služeb umožňuje kdykoliv API klíč zneplatnit a odepřít tak další přístup.

Pokud služba, kterou chcete připojit, nezahrnuje nějaké rozumné API, OAuth implementaci nebo něco podobného, tak radši pryč :)

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.