Skip to content

tomasz-herman/Graph.dll

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Graph.dll deobfuscated

Graf – podstawowy obiekt rozważań teorii grafów, struktura matematyczna służąca do przedstawiania i badania relacji między obiektami. W uproszczeniu graf to zbiór wierzchołków, które mogą być połączone krawędziami w taki sposób, że każda krawędź kończy się i zaczyna w którymś z wierzchołków.

W świecie informatyki graf jest abstrakcyjnym typem danych, który implementuje graf skierowany lub nieskierowany. Niniejsza biblioteka umożliwia zapis grafu za pomocą listy lub macierzy sąsiedztwa oraz późniejszą jego obróbkę za pomocą licznych algorytmów takich jak:

Używanie biblioteki w projekcie

Żeby użyć tej biblioteki wytarczy dodać referecję paczki nugeta w pliku projektu:

<PackageReference Include="Graph.dll" Version="7.2.3" />

Motywacja

Dostarczona studentom wersja biblioteka uniemożliwia użycie jej na systemach innych niż Windows, takich jak systemy bazujące na jądrze Linux czy MacOS. Zgodnie z otrzymanym mailem nie jest także planowana wersja kompatybilna z innymi systemami. Zdeobfuskowana wersja biblioteki umożliwia korzystanie z niej na innych sytemach. Jest to jedyny cel powstania tego projektu. Biblioteka tu zamieszczona powinna być używana wyłącznie w tym celu, oraz tylko w wypadku posiadania licencji na używanie niezobfuskowanej wersji biblioteki. Ponadto stwierdzenie, że "system Windows jest obecnie systemem dominującym i ktoś kto nie porusza się w nim sprawnie, po prostu nie jest dobrym informatykiem" jest po prostu obraźliwe i aroganckie. Wielu ludzi świadomie nie korzysta z systemu Windows, gdyż jest to na przykład sprzeczne z ich światopoglądem, a zmuszanie ich do tego(celowe bądź nie) jest niewłaściwe. Nie każdy chce być szpiegowany przez system operacyjny, nie każdy też zgadza się z polityką Microsoftu. Poniżej załączona część wypowiedzi:

Biblioteka Graph działa jedynie w systemie Windows (i tak niestety musi być). Nie jest moim celem zmuszanie Państwa do używania Windows,
opisana cecha biblioteki jest efektem ubocznym obfuskacji. A obfuskacja jest konieczna.

Niestety platforma .NET ma taką przykrą cechę, że na podstawie niezabezpieczonych plików binarnych
można przy pomocy ogólnie dostępnych narzędzi w prosty sposób odzyskać kod źródłowy programu.
A na podanie Państwu na tacy gotowych do wykorzystania kodów źródłowych algorytmów z biblioteki
zgodzić się niestety nie mogę.

Jako studenci naszego wydziału macie Państwo prawo do bezpłatnego korzystania z Windows
do celów uczelnianych.
Wiem, że niektórzy z Państwa preferują inne systemy, ale fakty są takie, że system Windows
jest obecnie systemem dominującym i ktoś kto nie porusza się w nim sprawnie, po prostu nie jest
dobrym informatykiem, a laboratorium z ASD2 może być okazją na poćwiczenie korzystania z Windows
dla tych, którzy nie robią tego na co dzień.
Dostosowanie biblioteki Graph do innych systemów nie jest planowane.