Java Binary Enhancement Tool

Screenshot Software:
Java Binary Enhancement Tool
Szczegóły programowe:
Wersja: 3 R1
Filmu: 3 Jun 15
Wywoływacz: Andrew Reisse
Licencja: Wolny
Popularność: 137

Rating: 4.0/5 (Total Votes: 1)

Narzędzie Java Binary Enhancement (JBET) jest analiza program Java i manipulacji ogóle narzędziem. Istniejące pliki klas może być zdemontowany, zamontowane, lub edytowane programowo za pośrednictwem interfejsu API JBET. JBET mogą być również wykorzystywane do tworzenia nowych plików klas Java od podstaw. JBET wykorzystuje wygodną wewnętrzną reprezentację wszystkich treści binarnych (.class) plików Java, co pozwala użytkownikowi na edycję zajęć, w sposób zorganizowany.
JBET został opracowany jako część DARPA Self-opiekuńczym projektu mobilnych agentów pod OASIS i aktywne programy sieci (numer umowy N66001-00-C-8602), w celu automatycznego zaciemniania oprogramowania studiować.
Język Java został wybrany dla tego projektu, ponieważ z (względne) łatwość konstruowania narzędzi do edycji binarne przekazane przez dużą ilość informacji typu występującego w plikach klas. Nasze dwa raporty, techniki zaciemniania, sprawozdanie oceniające i powiadom zaciemniania, są dostępne w obszarze pobierania. Nie narzędziem zaciemniania opracowany jest częścią tego wydania.
JBET był również używany w projekcie Survivable Server DARPA / AFRL (Umowa Nr F30602-00-C-0183), aby dodać dodatkowe kontrole bezpieczeństwa w Java Standard Library. (API Javy SecurityManager nie obsługuje wiele pożądanych kontroli bezpieczeństwa, takie jak pliki dalszego upoważnienia dostępu po otwarciu.)
JBET użyto do wymiany rodzimych odniesienia metoda w standardowej biblioteki języka Java z odcinki, które nazywają politykę bezpieczeństwa wtykowym. To narzędzie, zwane Jpolicy, jest również dostępny do pobrania na tej stronie. Jpolicy jest bardzo niekompletna w tym czasie, ale może być interesujące dla tych, którzy pracują w dziedzinie bezpieczeństwa Javy lub zmiany standardowej biblioteki siebie.
Wewnętrzna reprezentacja plików klas Javy wykorzystywanych przez JBET jest odnie aby ułatwić programistom pisać w języku Java kodu binarnego transformacji. Każdy element plików klas Java ma odpowiednią wewnętrzną strukturę danych: ClassInfo dla całych klas, MethodInfo metod, FieldInfo dla pól, Snippit dla bloków kodu i Instrukcji dla poszczególnych instrukcji. Snippit i instrukcji zrozumieć Java kodu operacji składnię i semantykę, umożliwiając automatyczne tworzenie poprawnych programów Java. Java klasy weryfikator zgodny jest również.
Niektóre transformacje kodu są trudne do zaprogramowania bezpośrednio manipulowania instrukcje w języku Java. Dla tych przekształceń, skierowany graf acykliczny (DAG) reprezentacja kod jest dostępne. W reprezentacji DAG każdy podstawowy element ma odpowiedni wykiełkowaniu, z zestawu węzłów wejściowych i wyjściowych. Krawędzie w grafie połączyć węzły "producent" (takie jak stałe, lub wyniki obliczeń) do węzłów "user" (takich jak wywołania metod lub innych obliczeniach). Metody są podzielone na podstawowe bloki i przepływ sterowania jest przechowywana w bloku na poziomie podstawowym (możliwe, ponieważ tylko Java ustaliła cele skoku)
JBET wymaga 1,4 wirtualnej maszyny Java do pracy, chociaż może działać na plikach klas z wcześniejszych wersji Javy. Opakowanie i budować środowisko dostarczane obsługuje Linux i Windows z Cygwin; Jednak proces budowy jest prosta i może być wykonane ręcznie na innych platformach. Perl jest wymagana dla testów regresji.
Jpolicy wymaga 1,4 wirtualnej maszyny Java zbudować, albo Linux lub Windows NT / XP z Cygwin. gcc jest wymagane na budowę w systemie Windows (dostarczany z Cygwin). System może być zarówno środowiska wykonawczego Java 1.3 lub 1.4 (tylko Sun JVM), działa na systemie Linux lub Windows NT / XP. Windows 9x i Windows 2000 mogą działać jak dobrze, ale nie były testowane.
Instalacja
1. Instalacja JDK 1.4.1.
2. Ustaw CLASSPATH do jdk1.4.1 / jre / lib / rt.jar
Src 3. cd; Marka
4. Jeśli to nie działa, zbadać makefile. Java lub javac nie mogą być w drodze.
5. Aby utworzyć plik jar, które mogą być używane z "java -jar jbet.jar", uruchom "make jar".
6. Jeśli perl zainstalowany, wykonaj testy z "make test".
Opcjonalnie, uruchom "make regen; make test".
Dodać linku symbolicznego z jbet3 / bin / jbet gdzieś na swojej drodze.
Stosowanie
JBET używa formatu JNI dla nazw klas, a metoda typu JNI i deskryptory. Na podsumowanie tej składni, należy użyć składni "jbet pomocy". Specyfikacja Sun JVM może być również pomocne.
Aby spojrzeć na demontażu klasy, należy użyć "jbet drukiem". Spróbuj demontażu klasę masz źródła i został zbudowany z informacji debugowania (-g): "jbet -P print '. Specyfikacja JVM Sun ma odniesienie instrukcji.

Podobne oprogramowanie

RetroForth
RetroForth

11 May 15

Ctcompare
Ctcompare

15 Apr 15

STX B+ Tree
STX B+ Tree

17 Feb 15

WLA DX
WLA DX

2 Jun 15

Komentarze do Java Binary Enhancement Tool

Komentarze nie znaleziono
Dodaj komentarz
Włącz zdjęć!