Ha csak simán használod a fájlt a saját szervereden, ezeken el sem kell gondolkodnod.
Ha csak simán használod a szervereden a fájlt, akkor is érdemes elgondolkodni az SHA-n, mert nem csak a CDN-t, de a saját szervert is meg tudják törni.
Ha az erőforrásokat helyben is ellenőrzi a böngésző, akkor jelentősen több munkát igényel a támadó oldaláról, hogy úgy cseréljen le JS vagy CSS kódot a szervereden, hogy az oldal utána ne dobjon hibákat, ne álljon le, és így ne vegye észre nagyon gyorsan a szerver üzemeltetője.
Mi van, ha nem megy a CDN vagy lassú? Mi a helyzet a privacyvel? Mi van, ha a CDN elkezd böngészőhibákat kihasználni? A SHA-256 elég secure-e még ma is? És 10-20-30 év múlva az lesz-e? Vagy ez lesz az ultimate hash függvény az életünkben?
- A CDN általában megy. Mivel általában redundáns rendszereken van, és van üzemeltetője is, ritkán van nagy leállás benne. Gyakoribb, hogy a saját szerver áll, mint a CDN. Nyilván érdemes olyan CDN-t választani, ami nem szokott leállni, és olyan cég van mögötte, aminek van kapacitása üzemeltetni. Pl. a Google által kiszolgált fájlok esetében 2013-ban volt utoljára leállás, az elmúlt 11 évben működött. Ez jobb SLA, mint amit a legtöbb szerver-hosting cég ajánlani tud.
- A CDN-ről a Jquery-t, vagy társait tölti be a böngésző, ott nem dolgoz fel adatot. Privacy terén ugyanaz a helyzet, mint ha magad hostolod a fájlt.
- Mi van, ha a saját szervered kezd el böngészőhibákat kihasználni? Gyakoribb, hogy nyílt forrású rendszerek kódjába raknak kártékony kódot, ami rátelepül a saját szerveredre rendszerfrissítés gyanánt, mint hogy a CDN böngészőhibát használna ki. (pl. a 2024 márciusában felfedezett XZ Utils backdoor probléma)
- Az SHA-256 még elég secure ma is, de az SHA-512 is választható azoknak, akik nem bíznak benne. Azon weboldalaknál, ahol a következő 10-20-30 évben nem szeretnének a kiszolgált oldalhoz hozzányúlni, ott valószínűleg a böngészők a már a nem kellően biztonságos HTTPS protokol miatt 20 év múlva sem fogják betölteni az oldalt (ahogyan most sem töltik be az SSLv3 oldalakat), így ott a CDN-el kapcsolatos probléma nem fog előbukkanni. Ahol pedig időközben hozzányúlnak a rendszerhez, ott van lehetőség az aktuálisan használatos biztonsági megoldásokat beépíteni a CDN-re vonatkozóan is.
- Ha megjelenik valami ultimate HASH protokol addigra, akkor lehet az lesz az első ultimate megoldás az informatika történetében. Mert jelen pillanatban semmi protokollt, vagy megoldást nem tudnék mondani az informatikában, ami velünk lenne 30 éve, és akkor is a legjobb megoldás lett volna, meg ma is az.
A lottós példa szerintem kicsit sántít, mert nem kvázi végtelen erőforrással lottózol.
A lottós példát csak azért hoztam fel, hogy érezhető legyen, hogy egy amúgy elég nehezen elérhető cél (nyerni a lottón) is arányaiban mennyire gyakori ahhoz képest, mint hogy két SHA-256 érték azonos legyen eltérő fájlokon. Hasonló eséllyel tud mondjuk egy macska végigsétálni valakinek a billentyűzetén úgy, hogy ezzel egy szoftverhibát kihasználva megtörje a szerveredet. Elméletben nem nulla az esélye, de azért a gyakorlatban erre az eshetőségre nem annyira kell számítani.