W świetle ostatnich doniesień na temat szeroko zakrojonego rządowego monitorowania danych przechowywanych przez dostawców usług online, usługi o zerowej wiedzy są teraz modne.
Usługa zerowej wiedzy to usługa, w której wszystkie dane są przechowywane w postaci zaszyfrowanej kluczem, który nie jest przechowywany na serwerze. Szyfrowanie i deszyfrowanie odbywa się całkowicie po stronie klienta, a serwer nigdy nie widzi danych w postaci zwykłego tekstu ani klucza. W rezultacie dostawca usług nie jest w stanie odszyfrować i przekazać danych stronie trzeciej, nawet jeśli tego chce.
Na przykład: SpiderOak może być postrzegany jako wersja Dropbox o zerowej wiedzy.
Jako programiści polegamy w dużym stopniu i ufamy niektórym z naszych najbardziej wrażliwych danych - naszemu kodowi - konkretnej klasie dostawców usług online: dostawcom hostingu kodów (takim jak Bitbucket, Assembla i tak dalej). Mówię tu oczywiście o prywatnych repozytoriach - koncepcja zerowej wiedzy nie ma sensu w przypadku repozytoriów publicznych.
Moje pytania to:
Czy istnieją jakieś bariery technologiczne w tworzeniu usługi hostingu kodu o zerowej wiedzy? Na przykład, czy jest coś w protokołach sieciowych używanych przez popularne systemy kontroli wersji, takie jak SVN, Mercurial lub Git, które utrudniłyby (lub uniemożliwiłyby) wdrożenie schematu, w którym dane przesyłane między klientem a serwerem są szyfrowane za pomocą klucz, którego serwer nie zna?
Czy istnieją obecnie jakieś usługi hostingu kodu o zerowej wiedzy?