DANOSOFT/saldi — pull request #5 by nielsrune (2014-09-24 17:44:23+00:00)
Title: Sikker opbevaring af adgangskoder med pbkdf2 + udkommentering af javascript alerts

Der henvises først og fremmest til det først commit https://github.com/nielsrune/saldi/commit/f33f8cfb6d1ea9bd964470dbfe88b272e5c21985

Herunder et eksempel på, hvordan en brugers adgangskode på nuværende tidspunkt ligger gemt. Kodeordet er "password" og tager kun et opslag på internettet af slå op.
![md5-kode](https://cloud.githubusercontent.com/assets/8040305/4392426/529f73f8-440e-11e4-8501-f590733fa64f.png)

Men dette pull request præsenteres en bruger ved næste login for nedenstående side, hvor adgangskoden bedes ændret:
![skift-kode](https://cloud.githubusercontent.com/assets/8040305/4392425/52a1c0a4-440e-11e4-8f1e-ebfc65e18856.png)

I eksemplet herunder har brugeren skiftet sin kode til "qwerty". Databasen ser hereter således ud:
![salt-kode](https://cloud.githubusercontent.com/assets/8040305/4392427/529fc4a2-440e-11e4-934b-8ecb298c63f5.png)

Hvis brugeren senere ændrer sin kode, uanset om koden "ændres" til den samme, vil både salt og hash være nye. Derved sikres brugeren kodeord langt bedre imod dannelsen af rainbow tables, da salten skifter ved hver ændring af koden.

Der henvises som tidligere til https://crackstation.net/hashing-security.htm for en nærmere beskrivelse.

Der er i den nuværende kodebase identificeret tre loginpunkter, der ikke er omfattet af dette pullrequest. Det drejer sig om api/, der alene ses relateret til en løsning for Rotary, som jeg ikke har mulighed for at teste, soapserver/, som jeg ikke har kunnet få til at virke ved flere tests., og endelig includes/opdat_0.php fsva. versioner under 0.434. Dette anser jeg for historisk.

... ... ...

Herudover foreslår jeg at skrive de nuværende mange javascript alerts ud.

Dels er det efter min opfattelse forstyrrende for brugeroplevelsen og umoderne, dels har det længe generet mig, at de bliver indsat i koden med

-tags. Et html-dokument bør kun indeholde ét sæt

-tags, ligesom -tags hører til under

-sektionen.

Jeg foreslår, at fejlbeskeder base64-indkodes og transporteres til retursiden, hvor fejlbeskeden vises.

To eksempler vises herunder:
![fejl-bruger-kode](https://cloud.githubusercontent.com/assets/8040305/4392423/529c449e-440e-11e4-86f8-463954ed212e.png)
![fejl-regnskab](https://cloud.githubusercontent.com/assets/8040305/4392424/529d4cc2-440e-11e4-96ba-de9fba17335a.png)

Enkelte steder har jeg ikke fjernet javascript alerts af forskellige grunde. jeg vil foreslå, at fejlbeskederne senere implementeres som notifikationer, f.eks. med jQuery-pluginet Noty, som ser lovende ud. Herudover anvendes jQuery allerede enkelte steder i koden. http://ned.im/noty/