Witam
Przymierzam się do implementacji szyfrowania danych wysyłanych przez socket. Normalnie gdyby np. klient i serwer był w Javie to bym skorzystał z biblioteki kryptograficznej i tyle.
Problem jest taki, że łącze z jednej strony stand alone Java app a z drugiej zrobioną we flexie(fleszu) webową aplikację. Jest to koniecznie rozwiązanie ponieważ flaszka ma bardzo ograniczone możliwości integracyjne z nietypowym sprzętem.
Reasumując: aplikacja webowa komunikuje się przez socket z Java na komputerze lokalnym. Aplikacja webowa nie moze nic zapisac na komputerze lokalnym. Cały socketconnection jest na localhost.
I teraz moje pytanie:
Czy taki "wewnętrzny" socket powinien być szyfrowany? Czy nie wystarczy ochrona z Windows?
Jeżeli szyfrowany to czy jest konieczne szyfrowanie asymetryczne-inaczej: czy jest algorytm symetryczny który skutecznie mi zaszyfruje przesyłane bajty?
na razie zrobiłem sobie własne RSA z generacją kluczy i szyf/deszyfr. Skoro te klucze moge wewnetrznie umieścic w skompilowanym pliku-czyli nie ma nic publicznego-e,d i nawet n jest tylko do mojej wiedzy to czy dalej wymagane jest tak duży bitowy klucz jak 1024? Czy np 32bitowe by wystarczyły?
Co z inżynierią wsteczną-czy ktoś moze podsunać mi coś na temat "ukrywania" ważnych danych i ochrony ich przez RE?
Czy ktoś mogłby mi wskazać przejrzysty przykład implementacji szyfrowania logarytmem dyskretnym?
Dziękuję z góry:-)
PS: A mozę ktoś coś wie o jakieś kryptograficznej bibliotece we flaszce albo przynajmniej bibliotece odpowiadajaćej BigInteger z Javy?
Pozdro