Prawie jak GPG
Od pewnego czasu szukałem jakiejś możliwości bezpiecznego komunikowania się. Wiem wiem, można sobie szyfrować wiadomości na IRC, można szyfrować emaile... tyle że nie każdy ma programy które mu pozwolą to odczytać. Dlatego wymyśliłem - i zrobiłem - stronę internetową gdzie wystarczy wkleić tekst, wpisać hasło i gotowe - otrzymamy unikalny odnośnik do strony zaszyfrowanym tekstem.
Pod adresem talk.jiyuu.info można przetestować (i używać) owy system. Całość działa mniej więcej na zasadzie wątków, jednak jest w 100% anonimowa. Po pierwsze, nigdzie nie ma spisu wątków - linki są unikalne i raczej trudne do zgadnięcia. Po drugie, nie jest zapisywana żadna informacja dotycząca użytkowników - w bazie danych mamy strukturę | link | zawartość | id |. Jak widać, użyte hasła również nie są zapisane.
Tekst jest oczywiście zaszyfrowany - kilkoma algorytmami z biblioteki mcrypt. Oprócz tego każdy post w danym wątku może mieć zupełnie inne hasło. Jedyny minus takich rozwiązań to to, że po wpisaniu złego hasła zobaczymy brzydkie KRZACZORY. Może później to jakoś wyeliminuje.
Może ktoś znajdzie ku temu zastosowanie, mi się przyda na pewno :) a przy tym jest to crash-test mojego frameworka, ale to tak na marginesie.
<p class="post">:(������������������������������</p>
A co to za zwalone utf czy coś? :>
To są śmieci wygenerowane przez mcrypt jak wpisałeś złe hasło :P
Nie, nie jest to efekt złego hasła, bo pojawia się po każdym moim wpisie - w tym wypadku wpisem jest ":("
Założyłem nowy wątek i jak hasło podałem "zomg" - sprecyzuj termin "złe hasło" ;-)
Oj, widzę że mcrypt fiksuje, jakieś śmieci dopisuje.. zaraz to naprawię, bo chyba wiem co jest nie tak.
A złe hasło = nie takie jakie podano dla danego posta.
Dobre :)
No, poprawione, już powinno być dobrze :)
To miałoby być "secure"? I puszczone przez gołe HTTP, huh? Ktoś tu chyba żarty sobie stroi.
Tę funkcjonalność równie dobrze można uzyskać składując na serwerze każdą wiadomość jawnym tekstem i pokazywać po podaniu właściwego hasła. Kompletnie nie rozumiem po co sobie utrudniać jeszcze życie przepuszczając wiadomość przez jakiś algorytm szyfrujący.
Tu nie chodzi o to że nam sąsiedzi z bloku przechwycą transmisję, tylko o to, by można było gdzieś przechowywać teksty w bezpiecznej formie. Zapisując hasło w bazie danych (a raczej jego hash) istnieje ryzyko że ktoś je zdobędzie. Tutaj takiego ryzyka nie ma.
Co do szyfrowania transmisji to czekam aż serwer to uaktywni :P
A hasło jak wyślesz komuś? Bo chyba nie podasz na kartce. Skoro nie masz dostępu do drogi szyfrowanej, musisz wysłać hasło drogą nieszyfrowaną i trochę idea bierze w łeb. Przydatne to może być tylko wtedy, kiedy ze znajomym macie ustalone jedno hasło do wszystkiego.
To nie jest 'secure' z jednej prostej przyczyny: szyfrowanie nie odbywa się u mnie, nie mam żadnej możliwości sprawdzenia czy nie przechwytujesz hasła i nie czytasz tych wiadomości. Żeby tego używać do poufnych danych musiałbym Cię obdarzyć zbyt wielkim zaufaniem.
Jeśli miałbym coś komuś przekazywać w _ten_ sposób, to użyłbym pgp/CipherSaber i wkleił wynik na jakieś binpaste.
Hint: Pomyśl o szyfrowaniu JavaScriptem po stronie klienta. Wtedy zyskasz parę punktów ;-)
@bmalkow: Oczywiście się w 100% zgadzam, ja tak naprawdę nawet Google nie ufam co do mojej korespondencji, ale to takie moje małe zboczenie ;)
Wkleiłem to tutaj jako ciekawostkę, i o ile raczej nikt nie będzie tu trzymał numerów swoich kart kredytowych, to jest to prosty sposób przekazania jakiejś wiadomości określonej grupie osób, np. wklejając link na forum z zaznaczeniem "znacie hasło" czy coś w tym guście. Szczególnie jeśli dane osoby nie mają możliwości zdekodowania wiadomości bo nie mają żadnego programu do tego celu, nie mogą (Chiny? :P) czy też nie chcą/nie potrafią. Wiadomo że najbezpieczniej jest użyć np. GPG i wysłać emailem, najlepiej z konta pod SSL - nie zawsze jest to niestety możliwe. Skrypt stworzyłem dla własnego użytku, a jak ktoś chce to może użyć - i tyle.