AxProtector .NET
Zautomatyzowana ochrona dla oprogramowania .NET
AxProtector .NET to niezawodne rozwiązanie służące do ochrony aplikacji napisanych w .NET przed inżynierią wsteczną. Dzięki różnym opcjom można skutecznie szyfrować i licencjonować aplikacje .NET za jednym kliknięciem myszki:
- Automatic Protection: szyfruje całą aplikację .NET oraz integruje automatyczną weryfikację licencji.
- Modular Licensing: dzieląc aplikacje na moduły można aktywować poszczególne funkcje w zależności od przypisanej licencji.
- File Encryption: proste licencjonowanie i ochrona dowolnych plików, takich jak pliki konfiguracyjne lub modele AI.
- CodeMoving: najwyższy poziom ochrony przed inżynierią wsteczną można uzyskać w AxProtector stosując CodeMoving, który daje możliwość przeniesienia zaszyfrowanego kodu do klucza CmDongle lub CmCloudContainer i wykonywania go w bezpiecznym środowisku.
- Unbound Mode: pozwala na ochronę zawartej w aplikacji własności intelektualnej lub know-how bez potrzeby tworzenia licencji dla użytkowników.
AxProtector .NET dodaje warstwę bezpieczeństwa do aplikacji, która obejmuje automatyczne sprawdzanie licencji, monitoruje autentyczność i integralność oprogramowania oraz chroni je przed inżynierią wsteczną. Aplikacja jest szyfrowana na poziomie klas i metod i pozostaje kompatybilna z wieloma platformami.
Dodatkowo interfejs API CodeMeter Core umożliwia realizację indywidualnych wymagań związanych z licencjonowaniem.
Automatyczna ochrona
Podstawowa funkcjonalność AxProtector .NET polega na zintegrowaniu ochrony i licencjonowania z aplikacją .NET za kliknięciem myszy. Wszystkie metody wchodzące w skład projektu szyfrowane są zgodnie ze zdefiniowaną przez Ciebie, tj. producenta, licencją. Metody przetransformowane są w taki sposób, że można odszyfrować je w locie tylko przy użyciu klucza zapisanego w licencji. Odszyfrowanie bez odpowiedniej licencji nie jest możliwe.
Podczas wykonania, poszczególne zaszyfrowane metody .NET są ładowane do pamięci. Pozostają one zaszyfrowane do momentu ich użycia. Jeśli użytkownik posiada zdefiniowaną licencję, metody są dynamicznie odszyfrowywane w czasie ich wykonywania. Odszyfrowywanie odbywa się automatycznie w tle. Typowy kod bajtowy .NET (kod IL) jest tłumaczony przez kompilator JIT na komputerze użytkownika. Zaraz po przetłumaczeniu kod IL jest usuwany z pamięci przez warstwę zabezpieczeń, dzięki czemu pozostaje niezaszyfrowany tylko przez krótki czas. Ma to minimalny wpływ na wydajność, jednocześnie znacznie zwiększając bezpieczeństwo. Wyłącznie w .NET, warstwa bezpieczeństwa inteligentnie integruje się ze środowiskiem wykonawczym, aby zapewnić optymalną równowagę między bezpieczeństwem a wydajnością.
Domyślnie AxProtector .NET zapewnia konfigurowalną, opartą na oknach dialogowych obsługę zdarzeń. Opcjonalnie można dostosować obsługę zdarzeń do własnych potrzeb. Można na przykład wyświetlać komunikaty lub reagować w sposób przezroczysty w tle. Dostępne są gotowe do użycia konfiguracje, ale można również zdefiniować standardowe zachowanie dla wszystkich aplikacji jako ogólną bibliotekę lub zintegrować zachowanie z istniejącą aplikacją, na przykład poprzez obsługę wyjątków.
AxProtector .NET oferuje opcję zaciemniania (obfuskacji) nazw i zmiennych. Ta nieodwracalna transformacja jest skutecznym sposobem, aby nie pozostawić żadnych wskazówek dla atakujących analizujących kod.
Aby wdrożyć AxProtector .NET, nie jest wymagana żadna zmiana kodu źródłowego. Proces szyfrowania uruchamiany jest po kompilacji i przed utworzeniem instalatora (pakietu instalacyjnego). AxProtector .NET można również zintegrować ze zautomatyzowanym systemem kompilacji w ramach ciągłej integracji (continuous integration).
Modular Licensing
Dzięki modularnemu licencjonowaniu funkcjonalności mogą być licencjonowane i aktywowane indywidualnie. Nasze rozwiązanie umożliwia zatem dostosowanie licencjonowania poszczególnych funkcji na żądanie w aplikacji .NET. Chociaż integracja jest prosta, zapewnia najwyższy poziom bezpieczeństwa.
Masz dwa warianty integracji. Możesz włączyć proste sprawdzanie licencji do swojego kodu lub przypisać licencje do poszczególnych metod lub klas. Obydwa warianty zapewniają optymalną integrację.
Kontrolując licencje można kontrolować przepływ programu. Można na przykład ukryć nielicencjonowane funkcje w aplikacji lub wyświetlić odpowiedni komunikat, gdy są one wywoływane.
Przypisanie odrębnych licencji zwiększa bezpieczeństwo. Przypisanie można określić za pomocą przyjaznego dla użytkownika, intuicyjnego interfejsu, pliku konfiguracyjnego lub parametryzacji bezpośrednio w kodzie.
File Encryption
Własność intelektualna często obecna jest nie tylko w aplikacji, ale także w używanych plikach, takich jak pliki konfiguracyjne lub pliki danych. AxProtector .NET zapewnia możliwość zabezpieczenia ich przed manipulacją i szpiegostwem.
W tym celu można zaszyfrować wymienione pliki przed ich dostarczeniem bez konieczności modyfikacji kodu źródłowego. Poszczególne pliki mogą być oddzielnie licencjonowane, co pozwala na ich ładowanie i odszyfrowywanie przez chronioną aplikację tylko w obecności ważnej licencji.
Jeśli w czasie wykonania aplikacji pliki muszą być nadpisane lub zmienione, zalecane jest skorzystanie na potrzeby integracji z API CodeMeter Core.
CodeMoving
AxProtector .NET dzięki trybowi CodeMoving zapewnia aplikacji .NET najwyższy poziom bezpieczeństwa.
Wrażliwe na bezpieczeństwo fragmenty kodu są implementowane jako indywidualne podprogramy w oddzielnych plikach źródłowych C. Podczas procesu szyfrowania każdy podprogram jest automatycznie kompilowany i osadzany w aplikacji jako zaszyfrowany obiekt binarny (blob).
W czasie wykonywania fragmenty te są wywoływane za pośrednictwem interfejsu API, przenosząc kod do kontenera CmContainer w kluczu CmDongle/CmCloudContainer, gdzie jest on odszyfrowywany i wykonywany. Dynamiczny offloading do CmContainer zapewnia skalowalność i możliwość aktualizacji.
Dzięki CodeMoving wykraczasz poza konwencjonalne mechanizmy ochrony i zabezpieczasz swoją aplikację na najwyższym poziomie - idealne rozwiązanie dla aplikacji, w których maksymalne bezpieczeństwo jest najwyższym priorytetem.
Unbound Mode
Jako alternatywa dla ochrony z wykorzystaniem licencjonowania, wariant Unbound Mode pozwala na korzystanie z aplikacji bez licencji. Ten wariant idealnie nadaje się do modeli freeware, freemium lub w połączeniu z własnym systemem licencjonowania.
W przypadku oprogramowania freeware cała aplikacja jest bezpiecznie chroniona przed inżynierią wsteczną za pomocą szyfrowania i dodatkowych środków obronnych. Licencja nie jest potrzebna.
Z kolei w modelach freemium aplikacja działa bez kontroli licencji i jest również bezpiecznie chroniona. Funkcje premium, które mają być aktywowane, mogą być łatwo i bezpiecznie chronione i licencjonowane za pomocą CodeMeter .NET poprzez licencjonowanie modularne.
Jeśli korzystasz z własnego lub innego rozwiązania licencyjnego i chcesz zwiększyć ochronę przed inżynierią wsteczną, tryb Unbound Mode służy jako dodatkowy poziom bezpieczeństwa. Aplikacja jest chroniona, dzięki czemu wywołania licencji są trudniejsze do znalezienia i zmanipulowania. Strategia ta jest szczególnie przydatna przy przechodzeniu na bezpieczną technologię CodeMeter, zapewniając kompatybilność ze starszymi licencjami podczas fazy migracji.
Wymagania techniczne
- Środowisko szyfrowania: Windows (x86_64), Linux (x86_64 glibc)
- Środowisko uruchomieniowe: Windows (x86, x86_64), Linux (x86 glibc, x86_64 glibc, armhf glibc, aarch64 glibc, x86_64 musl, armhf musl, aarch64 musl), macOS (x86_64, Apple Silicon)
- Kontenery licencyjne: CmDongle, CmActLicense, CmCloudContainer
- Wersje .NET: 4.7.2 - 9.0, Core 2.0 - 3.1
Jesteś zainteresowany spersonalizowaną ofertą na naszą technologię CodeMeter? Wystarczy odpowiedzieć na kilka pytań, a nasz zespół skontaktuje się z Tobą i przekaże wszystkie potrzebne informacje.
Prześlij