@jens: XOR ist keine Verschlüsselung
Wenn Du schon a priori davon ausgehst, dass die serverseitige Datenbank offen liegt, und man daraus HA1-Hashes auslesen kann, kann man über Sicherheit kaum sinnvoll diskutieren. Denn wenn der Angreifer tatsächlich so weit kommt, HA1-Hashes aus der Datenbank lesen zu können, dann ist das Auslesen des Hashes noch das geringste Problem. Schließlich kann der Angreifer dann unter Umgehung der Seite und deren Authentifizierungsmechanismen auch direkt die Datenbank manipulieren oder zumindest auslesen, und so noch weitaus größeren Schaden anrichten.
Insofern verstehe ich nicht, warum Du Dich daran, dass bei Digest-Auth eine verwertbare Vorstufe des Algorithmus serverseitig gespeichert werden muss, denn nüchtern betrachtet ist das eigentlich vollkommen egal, Dein Verfahren ist nicht sicherer oder unsicherer als Digest-Auth.
Beide Verfahren haben dieselben Probleme, und sind nur ein zusätzliches Hindernis, aber kein echter Schutz. Gegen einen Man-in-the-Middle-Angriff bieten beide Verfahren nicht den geringsten Schutz, sondern erhöhen der Aufwand nur ein kleines Stück.
Insofern ist HTTPS auch nicht das „beste“, sondern das einzig richtige und sichere.