"Nem kell az egészet aláírni. Generálsz belőle egy hash-t és aláírod azt,"
Na akkor mondd már meg, hogy az elektronikus aláírás hogyan is működik? Igen, pont így: az aláírandó bájtsorozatból készül egy hash, amit az aláíró privát kulcsával titkosít, és így azt a felhasználás helyén az aláíró publikus kulcsával kicsomagolva lehet ellenőrizni.
Csak tudod a web abból az időszakból, amikor voltak statikus html fájlok meg képek, meg néhány cgi "picit" továbbfejlődött, egy oldal megjelenítéséhez is n+1 fájlt kell a kliensnek feldolgozni, amik jöhetnek közvetlenül a szerverről, külső szerverről, szerverhez kapcsolódó cache-kiszolgálóról, kliens előtti proxy cache-ből, illetve a kliens saját lokális cache-ből.
Ja, és bármelyik küldő (szerver, proxy) dönthet úgy a klienssel egyeztetve, hogy tömörítve küldi a tartalmat, és ez az útvonalon (szerver - frontend proxy - kliens előtti proxy, közbenső content filter eszköz(ök)) sok helyen változhat oda-vissza. Ki írjon alá? Mit fogadjon el a proxy? Mit nem? Ha nem fogadja el, akkor milyen választ adjon? Milyen módon legyen adott elemre az aláírás kötelező/opcionális/szükségtelen beállítás elküldve a kliensnek? A kliens ezt hogyan bírálhassa felül? Nem, ezzel nem a "nem lehet megcsinálni"-t állítom, csak felvetettem néhány olyan kérdést, amit meg kellene válaszolni explicit módon, mielőtt bármilyen ilyen irányú fejlesztés elkezdődne - nem, hogy rfc, de draft sem lehet meg ezek nélkül a válaszok nélkül.
Ezen felül mindezek aszinkron módon érkeznek meg, van, aminek teljesen meg kell érkeznie a layout/oldal "összerakásához", van, ami opcionális (nem baj, ha nem 200, vagy hibás tartalom, ekkor a böngésző helyettesíti, pl. fontok), és van, ami az oldal megjelenítése közben csörgedezve is jó.
Az állapottér jelentős növekedése magával hozná az adott protokollt használó alkalmazások bonyolultságának a jelentős növekedését, a hibás működés, a sérülékenységek kockázatának a jelentős növekedését - nem biztos, hogy ez lenne a jó irány, maradjunk annyiban, mert mit is adna a http protokollhoz hozzá? Bonyolultság növekedését, opcionális (ahogy most a tls is opcionális) lehetőséget a sértetlenség biztosítására, és ennyi.
A tls meg a sértetlenség mellé a bizalmasságot is odateszi, miközben a http protokollban gyakorlatilag egy betűt sem kell miatta megváltoztatni (merthogy stackelhető a két protokoll). Akkor melyik a jobb, általánosabb megoldás?