Hm... prawda jest taka, że te hasła są na tyle bezpieczne na ile jest bezpieczna baza danych.
Te hasła muszą być przechowywane tak, aby można je było odkodować. Chyba nie chcemy wpisywać za każdym razem hasła, gdy otwieramy RoundCube?
Wobec tego mamy kilka opcji.
1. Przechowywać je tak jak teraz.
2. Kodować (base64 itp) lub szyfrować je z góry ustalonym kluczem.
3. Prosić użytkownika(administratora EPESI) o ustalenie klucza, który będzie służył do szyfrowania haseł. Klucz ten przechowywać w pliku, a nie w bazie danych.
Komentarz:
1. Niedobre, gdy ktoś wykradnie bazę danych.
2. Niedobre, gdy ktoś wykradnie bazę danych, bo kod EPESI jest dostępny więc takie szyfrowanie nic nie daje. Tylko pozorne bezpieczeństwo na pierwszy rzut oka.
3. W miarę bezpieczne jeśli ktoś ma dostęp tylko do bazy danych, ale nie zna klucza. Niestety jest to dodatkowa rzecz do skonfigurowania zanim zaczniemy używać RoundCube.
Ostatnie rozwiązanie jest warte wdrożenia, ale wymaga zmian w wielu miejscach EPESI oraz ostrożności jeśli chodzi o użyte biblioteki do szyfrowania. Nie każdy serwer będzie obsługiwać i w związku z tym najlepiej byłoby użyć czegoś zaimplementowanego w PHP.
Jestem za tym, żeby te zmiany zrobić, ale wymaga to czasu.
Odpowiadając na pytanie: W tej chwili nic prostego nie da się zrobić, aby hasła były zaszyfrowane.
Swoją drogą ciekawi mnie jak są takie sprawy rozwiązane w wielu aplikacjach, gdzie podajemy hasło. Np podłączanie skrzynek pop3 do gmaila, różne komunikatory też często trzymają hasła w tekście.
My na początku wybraliśmy rozwiązanie najprostsze i najbardziej skuteczne. I tak zostało do tej pory.
Co jedyne teraz mogę polecić to podstawową zasadę odnośnie haseł: "Nie używaj tego samego hasła dwa razy".
Pozdrawiam,
Adam
PS. Jeśli jest jeszcze jakieś rozwiązanie, którego nie uwzględniłem to chętnie posłucham :wink: