Jak zabezpieczyć program.

0

Witam programuje od nie dawna w VB.NET. Naprawdę fajny ciekawy język bardzo łatwy w obsłudze dla mnie bo nie ukrywam ale mam 14 lat nie całe 15 w marcu. Więc tak. Przejdźmy do rzeczy.

Jak zabezpieczyc program przez odczytem kodu. Czy czegos czego inni jak wydebuguje program i go sobie zapisze żeby nie mogli odczytać zawartości tylko je jakby otworzyc chyba wiecie o co mi chodzi.

Dokładnie chce zabezpieczyć dane do mysql czyli login hasło i nazwę bazy danych. Jest to jedna taka długa linijka kodu. I po prostu ktoś może sobie odpalić taki program i te dane mieć i wykorzystać naprzyklad do włamań. Tak mi się wydaje. Więc. Jak to zabezpieczyć w tym języku jeśli się da... Szkoda żeby się nie dało, bardzo fajnie się w nim pisze i łatwy jest dla mnie bo dużo już zrobiłem aplikacji ale przez to że ludzie mogą to odkrywać (zawartość kodu) to nie mam jak tego upubliczniac w internecie lub komuś innemu bo po prostu boję się że ktoś mi się wlamie na MySQL. Czekam na odpowiedź szybko :)

2

w 100% się nie da dlatego pierwsze pytanie, czemu łączysz się z bazą bezpośrednio? to jest pierwszy i zasadniczy błąd.

1

Będzie raczej trudno, w szczególności, że .NET.

1

nie chodzi w zabezpieczaniu o to aby ktokolwiek nie był w stanie tego złamać np. czyli zmusić do innego zachowania niż zamierzał autor... okazało się iż każdego chętnego ciekawskiego należy uwikłać aby stracił mnóstwo czasu czyli aby KOSZT zabawy z moim dziełem był kosztowny również dla mocy obliczeniowych jakie będą w użyciu za jakiś czas...

0

dobrze byłoby aby część zabezpieczenia użytkownik musiał on-line z jakąś zawartością weryfikować a jeśli lokalnie bez połączenia z siecią to klucz jednorazowy GUID lub serial partycji dynamicznej... w tym sensie
w Helion.pl jest książka Aplikacje hakero odporne JRoss

2

@annton: ale co to da? obfluskatory płatne sobie nieźle z tym radzą ale i tak trzymanie danych do bazy w aplikacji jest to najgorsze co być może. Powinien być pośrednik na serwerze udostępniający api, a uwierzytelnianie się apki np za pomocą klucza.

0

Czyli jak mam zrobić łączenie z bazą danych MySQL?

2

Jeśli aplikacja ma być lokalnie na kompach a server sql gdzieś na jednym serwerze, to musisz napisać np php, asp.net lub pythonie api, po którym twoja aplikacja będzie się łączyć z bazą. Uwierzytelnianie za pomocą klucza albo loginu i hasła, które ktoś poda w aplikacji, a nie że będzie na sztywno w kodzie zaszyte. Tak się takie rzeczy robi.

0

prostytutka.. nic nie ogarniam stary... :/

1

Tu jest opis wbudowanego we framework rozwiązania tego problemu: https://docs.microsoft.com/en-us/dotnet/framework/data/adonet/connection-strings-and-configuration-files

0

ale co ty mi dajesz gościu. ja chce zabezpieczyć kawałek kodu żeby nikt tego nie mógł odczytać jakimś programem... kur**. co wy wgl piszecie jakbym czytał niemiecki którego wgl nie ogarniam :(

1

Ty mi tutaj nie gościuj, bo ja mógłbym być Twoim starym i prać w rzece. I ostatni raz proszę o zaprzestanie używania wulgaryzmów.

Napisałeś: Dokładnie chce zabezpieczyć dane do mysql czyli login hasło i nazwę bazy danych. I podałem prawidłowe rozwiązanie dokładnie tego problemu. Jeśli nie ogarniasz angielskiego (bo to jest po angielsku - niemiecki wygląda inaczej, ma dłuższe słowa i więcej kropek nad literami), no to mi przykro, ale nic na to nie poradzę, nie znam polskich źródeł.

0
Dawid Kos napisał(a):

ale co ty mi dajesz gościu. ja chce zabezpieczyć kawałek kodu żeby nikt tego nie mógł odczytać jakimś programem... kur**. co wy wgl piszecie jakbym czytał niemiecki którego wgl nie ogarniam :(

No synku, po prostu tak się nie robi.

Nie możesz łączyć się bazą bezpośrednio. Musisz sobie zaprogramować pośrednika, który zna hasła, wykonuje operacje na bazie danych i działa sobie na serwerze, do którego tylko Ty masz dostęp.

Chyba, że Twój program ma być używany tylko przez Ciebie. To niech sobie wykonuje operacje bezpośrednio na bazie i nie trzeba nic zabezpieczać...

Nie frustruj się, bo tylko możesz się nauczyć dobrych praktyk. Myślisz, że jak liznąłeś troszkę programowania, to ta wiedza wystarczy Ci by zrealizować projekty o dowolnej złożoności? Otwórz się na nową wiedzę. Wystarczy, że postarasz się zrozumieć...

1 użytkowników online, w tym zalogowanych: 0, gości: 1