[C#] Problem z szyfrowaniem danych 5866 11

O temacie

Autor Sauron

Zaczęty 26.08.2014 roku

Wyświetleń 5866

Odpowiedzi 11

Sauron

Sauron

Użytkownicy
posty267
Propsy5
Profesjabrak
  • Użytkownicy
Witam. Ostatnio zastanawiałem się nad pewną rzeczą. Chodzi o szyfrowanie danych. Niby wszystko fajnie, zaszyfrować i git, ale... kiedy zobaczyłem program ILSpy (chyba tak się nazywał) w akcji...  :facepalm:
Chyba domyślacie się o co mi chodzi. Jeśli użyje jakiegoś, swojego (który byłby i tak kiepski), algorytmu szyfrowania każdy może zobaczyć jak działa i odczytać moje dane. A jak wezmę się za to jakąś metodą znaną ogólnie, z hash-em (np. 3DES), ktoś odczyta hasło i znów to samo. Czy jedynym wyjściem jest obfuscator? Jeśli tak to jaki?
 
Ash nazg durbatulûk, ash nazg gimbatul,
ash nazg thrakatulûk agh burzum-ishi krimpatul.

Adanos

Adanos

Administrator
Szara eminencja
posty5204
Propsy3870
ProfesjaProgramista
  • Administrator
  • Szara eminencja
A jakie ty dane chcesz konkretnie zaszyfrować i po co?

Sauron

Sauron

Użytkownicy
posty267
Propsy5
Profesjabrak
  • Użytkownicy
Czy to coś zmienia? :D Powiedzmy że punkty w grze, żeby nie oszukiwać żeby gracz nie oszukiwał
 
Ash nazg durbatulûk, ash nazg gimbatul,
ash nazg thrakatulûk agh burzum-ishi krimpatul.

Adanos

Adanos

Administrator
Szara eminencja
posty5204
Propsy3870
ProfesjaProgramista
  • Administrator
  • Szara eminencja
To zaszyfruj byle czym. Uważasz, że graczowi będzie się chciało takie coś robić? Użyj np. tego: http://msdn.microsoft.com/en-us/library/system.security.cryptography.cryptostream%28v=vs.110%29.aspx

Remix

Remix

Użytkownicy
Murzyn Internetów :O
posty291
Propsy41
ProfesjaProgramista
  • Użytkownicy
  • Murzyn Internetów :O
 
https://www.youtube.com/watch?v=TNdy0ea6gc4

RafalBudzis

RafalBudzis

Użytkownicy
posty1967
Propsy808
ProfesjaSkrypter
  • Użytkownicy
Remix SHA1 raczej nie jest za dobrym rozwiązaniem biorąc pod uwagę ze to algorytm haszujący a nie szyfrujacy więc za bardzo się nadaje moim zdaniem.

Najlepszym rozwiązaniem jest tworzenie plików binarnie nie tekstowo graczą i tak nie bedzie się chciało rozkminiać struktury w jakimś hex edytorze. A w .NET i tak wszystko jest do złamania ponieważ kod programu mozna zdekompilować więc nie ma co przesadzać.

Sauron

Sauron

Użytkownicy
posty267
Propsy5
Profesjabrak
  • Użytkownicy
Przy pomocy SHA mógłbym jedynie hasha zaszyfrować ale to i tak nic nie zmieni. Ale uznając że muszę zaszyfrować hasło do jakiegoś konta (aplikacja z profilami), albo coś poważniejszego? Wiecie... przyda sie na przyszłość. Wtedy nie mógłbym sobie pozwolić na amotorszczyznę.
 
Ash nazg durbatulûk, ash nazg gimbatul,
ash nazg thrakatulûk agh burzum-ishi krimpatul.


inż. Avallach

inż. Avallach

Administrator
posty7662
Propsy5238
NagrodyV
ProfesjaProgramista
  • Administrator
Cytuj
A w .NET i tak wszystko jest do złamania ponieważ kod programu mozna zdekompilować więc nie ma co przesadzać.
W C++, assemblerze i nawet kodzie maszynowym i tak wszystko jest do złamania, ponieważ kod programu mozna zdekompilować.

Sauron

Sauron

Użytkownicy
posty267
Propsy5
Profesjabrak
  • Użytkownicy
AES fajny, ale gdzieś muszę zapisać klucz, żeby potem cokolwiek odszyfrować, a jak ktoś dobierze się do klucza... Myślę, że jedynym rozwiązaniem przeciw dekompilatorom jest tak nieczytelny algorytm szyfrowania, że nikomu nie będzie się chciało go odczytywać. Choć to i tak działało by w jedną stronę, bo wystarczyłoby skopiować funkcje odszyfrowującą i ją użyć. Do działań "profesionalnych" bez obfuscatora, chyba się nie obejdzie
 
Ash nazg durbatulûk, ash nazg gimbatul,
ash nazg thrakatulûk agh burzum-ishi krimpatul.

Adanos

Adanos

Administrator
Szara eminencja
posty5204
Propsy3870
ProfesjaProgramista
  • Administrator
  • Szara eminencja
Za bardzo chcesz kombinować, a nikt tak nie robi. Używa się po prostu AES, czy czegoś innego. Jeśli chodzi o klucze, to:
http://stackoverflow.com/questions/18324149/how-to-securely-handle-aes-key-and-iv-values

Sauron

Sauron

Użytkownicy
posty267
Propsy5
Profesjabrak
  • Użytkownicy
Ok. Dzięki. Myślę, że temat można zamknąć 
 
Ash nazg durbatulûk, ash nazg gimbatul,
ash nazg thrakatulûk agh burzum-ishi krimpatul.


0 użytkowników i 1 Gość przegląda ten wątek.
0 użytkowników
Do góry