NetDB2 obsługuje usługi baz danych, w tym narzędzia do tworzenia aplikacji, tworzenia i ładowania tabel oraz wykonywania zapytań i transakcji dla użytkowników przez Internet. W systemie dane i wszystkie produkty znajdują się po stronie serwera. Użytkownik łączy się z systemem przez Internet i wykonuje zapytania do bazy danych i inne istotne zadania związane z danymi za pośrednictwem przeglądarki internetowej lub interfejsu programowania aplikacji, takiego jak łączność z bazą danych Java (JDBC). Celem jest zmniejszenie złożoności i obciążenia pracą po stronie serwera oraz utrzymanie niewielkiej wagi po stronie klienta. Podstawowy system NetDB2 jest realizowany jako architektura trójwarstwowa, a mianowicie warstwa prezentacji, warstwa aplikacji i warstwa zarządzania danymi.
Podejścia do szyfrowania
Obsługa szyfrowania w bazach danych ma dwa wymiary. Jednym z nich jest szczegółowość danych do zaszyfrowania lub odszyfrowania. Alternatywą jest pole, wiersz i strona. Drugi wymiar to implementacja algorytmów szyfrowania na poziomie oprogramowania i sprzętu. Autorzy w swojej pracy wykonali szyfrowanie na poziomie oprogramowania, szyfrowanie na poziomie sprzętowym oraz kombinacje różnych podejść do szyfrowania.
Szyfrowanie na poziomie oprogramowania
W przypadku systemu NetDB2 szyfrowanie wykonane przy użyciu algorytmu Blowfish zapewnia lepszą wydajność niż algorytm RSA (Rivest i in., 1978). Blowfish to 64-bitowy szyfr blokowy, co oznacza, że dane są szyfrowane i odszyfrowywane w 64-bitowych fragmentach (Schneier, 1996). W tym podejściu twórca zaszyfrowanych danych dostarcza klucz, a baza danych zapewnia funkcję szyfrowania.
Szyfrowanie na poziomie sprzętu
System NetDB2 używa procedury szyfrowania / deszyfrowania o nazwie „Editproc” dla tabel. Procedura edycji jest wywoływana dla całego wiersza tabeli bazy danych, za każdym razem, gdy DBMS uzyskuje dostęp do wiersza. Kiedy nadejdzie żądanie odczytu / zapisu dla wiersza w jednej z tabel, procedura edycji wywołuje algorytm szyfrowania / deszyfrowania DES (1977), który jest implementowany sprzętowo dla całego wiersza. Zalety. Autorzy w swojej pracy zajęli się i ocenili najbardziej krytyczną kwestię dla skutecznego szyfrowania w bazach danych, a mianowicie wydajność. Aby osiągnąć wydajność, przeanalizowali różne alternatywy rozwiązań. Ograniczenia. Wynik zapytania będzie zawierał fałszywe trafienia, które należy usunąć na etapie przetwarzania końcowego po odszyfrowaniu krotek zwróconych przez zapytanie. To filtrowanie może być dość złożone, szczególnie w przypadku złożonych zapytań obejmujących łączenia, podzapytania, agregacje itp. Oczywiście techniki oparte na tym podejściu są niepraktyczne, ponieważ wymagają ciągłej obecności właściciela danych w trybie online, aby wymusić kontrolę dostępu.