Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [www] bazahasel.pl - zapamietywanie hasel
Forum PHP.pl > Inne > Oceny
zegarmistrz
Witam

Jestem twórcą serwisu bazahasel.pl Serwis jest już przetestowany i działa w 100%. Chciałbym poniżej przybliżyć wam zasadę jego działania i czemu wasze hasła będą tam bezpieczne. Serwis został napisany w Yii-framework, który jest dobrą alternatywą dla zend i symfoni.

Link do serwisu: baza haseł

Proces rejestracja:
- Zwykła rejestracja
- Hashowanie z solą(salt) hasła do logowania

Proces dodawania "hasła do innego serwisu":
- Użytkownik się loguje
- Hasło z logowania jest zapamiętywane w zmiennej sesyjnej
- Użytkownik dodaje nowe hasło do innego serwisu
- Dodane hasło jest kodowane AES 256-bit z kluce z zmiennej sesyjnej (hasło do logowania)
- Tak zakodowane hasło do innego serwisu jest zapamiętywane w bazie danych.

W bazie danych są zapamiętane tylko zakodowane hasła które dekodować da się wyłącznie za pomocą hasła do logowania. Nikt nie może, nawet admin zobaczyć hasła użytkownika, ponieważ nie zna hasła użytego do logowania. Dodatkowo wykupiłem certyfikat ssl, który zapewni bezpieczną transmisję danych.

Serwis jest bardzo młody więc przyda się każde wsparcie z waszej strony.
Pozdrawiam Zegarmistrz.
adrian.p
Desing skutecznie odstraszy potencjalnych użytkowników. Mimo tych "skomplikowanych" zabezpieczeń nie skorzystałbym z ów serwisu - mimo wszystko brak zaufania. Nie mam pewności czy moje hasła nie lądują w bazie jako zwykły tekst, gadać przecież można dużo.
alegorn
Cytat
danych do logowani (np. do kont bankowych).

popraw ta literowke, a jeszcze lepiej przeredaguj byc moze caly tekst, na troche bardziej czytelny

daj informacje na jakiej zasadzie to dziala, czy tylko jako 'repozytorium' hasel czy tez udostepniasz mozliwosz logowania sie do innych serwisow.

Cytat
Usuwanie hasła:

* Kliknij na "logowanie" w poziomym menu i zaloguj się. Jeżeli nie masz konta w naszym serwisie zarejesruj się.


przeredaguj to, jak mozna chciec usunac haslo, skoro nie masz konta..... ?

opcja przypominania hasla - to iz jej niema - dla mnie mija sie z funkcjonalnoscia serwisu. przemysl to raz jeszcze.

j.
zegarmistrz
Cytat(alegorn @ 7.09.2009, 14:10:08 ) *
opcja przypominania hasla - to iz jej niema - dla mnie mija sie z funkcjonalnoscia serwisu. przemysl to raz jeszcze.

j.


Przemyślałem to bardzo dokładnie i dorobienie opcji przypominania hasła do logowania jest nie wykonalne.
Hasło do innych serwisów jest kodowane hasłem do logowania. Jeżeli użytkownik zapomni hasło do logowania trzeba by wygenerować mu tymczasowe hasło i podesłać na maila. Ale aby to zrobić trzeba deszyfrować starym hasłem i zaszyfrować nowym (tymczasowym) hasłem. I brak tego starego hasła jest główną przeszkodą.
nexis
Cytat(zegarmistrz @ 7.09.2009, 13:52:15 ) *
W bazie danych są zapamiętane tylko zakodowane hasła które dekodować da się wyłącznie za pomocą hasła do logowania.

Mógłbyś pokazać jak to realizujesz?
zegarmistrz
Metoda w kontrolerze hasła do innego serwisu
  1. /**
  2. * Metoda ładuje rekord hasła danego użytkownika.
  3. * @param integer the primary key value. Defaults to null, meaning using the 'id' GET variable
  4. */
  5. public function loadHasla($id=null)
  6. {
  7. if($this->_hasla===null)
  8. {
  9. if($id!==null || isset($_GET['id']))
  10. {
  11. $this->_hasla=Hasla::model()->findbyPk($id!==null ? $id : $_GET['id']);
  12. if($this->_hasla->auther->id!=Yii::app()->user->id)throw new CHttpException("To nie twoje hasło!");
  13. $this->_hasla->nazwa = Hasla::model()->decrypt($this->_hasla->nazwa, $_SESSION['sesjaHaslo']);
  14. $this->_hasla->szyfr = Hasla::model()->decrypt($this->_hasla->szyfr, $_SESSION['sesjaHaslo']);
  15. }
  16. if($this->_hasla===null)
  17. throw new CHttpException(500,'The requested hasla does not exist.');
  18. }
  19. return $this->_hasla;
  20. }

Metoda w modelu hasła do logowania, która wykonuję się zawsze gdy zmiany mają być wprowadzone (w tym update)
  1. /**
  2.   * Metoda wykonująca się przed wprowadzeniem zmian w rekordzie hasła.
  3.   * @return bool true (1)
  4.   */
  5. public function beforeSave()
  6. {
  7. $this->szyfr = $this->kodujHaslo($this->nazwa);
  8. $this->nazwa = $this->encrypt($this->nazwa, $_SESSION['sesjaHaslo']);
  9. $this->szyfr = $this->encrypt($this->szyfr, $_SESSION['sesjaHaslo']);
  10. return 1;
  11. }

Teraz sobie uświadomiłem ze nie musiałem stosować sesji. Zamiast sesji mogłem użyć Yii::app()->User->password; No trudno :/
Pendrive
Qrcze założyłem na tej Twojej stronce konto, a stronkę wsiorbało.
I co mam rozumieć, że wszystko straciłem??
ShadowD
Zakładając że całość działała od 7.09.2009 czyli mniej więcej kilka lat temu co by terminowi wygaśnięciu domeny / hostingowi odpowiadało to tak pożegnałeś się z danymi! :-) Ja nigdy nie zaufał bym takiej stronie, w końcu nie wiesz jak przechowywanie haseł wyglądało, a ponad to właśnie wyparowały. haha.gif
binprogrammer
Faaajne wink.gif Gdyby takie coś było stworzone przez jakąś poważną korporację co tego strzeże to wypaliłoby, jednak nie mam zaufania do nikogo ws. haseł :/ Ale przydało by się miejsce na wszystko
zegarmistrz
Strona została przeniesiona na adres https://bazahasel.tomaszsadowski.com/
Trzeba też zaakceptować certyfikat.
Przepraszam za zamieszanie.
!*!
Serwis do trzymania haseł z jakimś lewym certyfikatem? Do tego zaprzeczasz sam sobie.
Cytat
W bazie danych są zapamiętane tylko zakodowane hasła które dekodować da się wyłącznie za pomocą hasła do logowania.

a następmnie
Cytat
Nikt nie może, nawet admin zobaczyć hasła użytkownika, ponieważ nie zna hasła użytego do logowania.
ShadowD
Z całym szacunkiem ale takie lewe certyfikaty są gorsze od ich braku...

Swoją drogą wolę dropbox'a z keypass'em, może jak byś udostępnił choć jakieś pluginy do ff, chrome to by coś z tego było, a tak to jest bez sensu.

Ps.
To już kpina, raz mówisz:
"Wszystkie hasła w serwisie są kodowane najnowszymi algorytmami kryptograficznymi.
NIKT, nawet admin nie ma wglądu w hasła.
Serwis został tak zaprojektowany aby uniemożliwić odszyfrowanie haseł, nawet w razie kradzieży bazy danych oraz kodu źródłowego serwisu.
Serwis Baza haseł posiada międzynarodowy certyfikat RapidSSL."

A zaraz:
"Prosimy nie wprowadzać na wszelki wypadek bardzo ważnych danych do logowania (np. do kont bankowych)."

Więc w jakim celu jest ten serwis skoro i tak mogę tam trzymać tylko bzdurne hasła które mogę zapamiętać bo i tak nie są dla mnie ważne...
!*!
Cytat(ShadowD @ 4.02.2013, 19:56:37 ) *
Więc w jakim celu jest ten serwis


Takie serwisy powstają gównie po to, aby wyciągać dane z gygy wink.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.