PL170547B1 - dostepem PL - Google Patents
dostepem PLInfo
- Publication number
- PL170547B1 PL170547B1 PL92300810A PL30081092A PL170547B1 PL 170547 B1 PL170547 B1 PL 170547B1 PL 92300810 A PL92300810 A PL 92300810A PL 30081092 A PL30081092 A PL 30081092A PL 170547 B1 PL170547 B1 PL 170547B1
- Authority
- PL
- Poland
- Prior art keywords
- key
- access
- signal
- memory
- output
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1458—Protection against unauthorised use of memory or access to memory by checking the subject access rights
- G06F12/1491—Protection against unauthorised use of memory or access to memory by checking the subject access rights in a hierarchical protection system, e.g. privilege levels, memory rings
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
dostepu z kluczem nadzorczym, uklad porów nywania klucza dostepu z klu- czem pam ieci, uklad porów nywania klucza pam ieci z kluczem publicznym i uklad porów nyw ania klucza dostepu z kluczem publicznym , do których wejsc jest doprow adzany sygnal adresu jednostki danych, która m a m iec dostep do bloku danych, sygnal klucza dostepu przyporzadkow any zadajacem u dostepu do bloku danych program owi i sygnal pobrania/zapisu identyfikujacy sposób dostepu, znam ienny tym, ze zawiera, dolaczony do w yjscia ukladu porów- nyw ania (131) klucza dostepu z kluczem nadzorczym, z w yjsciow ym sygna- lem klucza kontrolnego, ukladu porów nywania (133) klucza dostepu z kluczem pam ieci, z w yjsciowym sygnalem zgodnosci, ukladu porównywania (137) klucza pam ieci z kluczem publicznym , z w yjsciow ym sygnalem jawne- go klucza oraz ukladu porów nywania (136) klucza dostepu z kluczem publi- cznym, z w yjsciowym sygnalem jaw nego klucza dostepu, pierwszy zespól bram ek A ND (5 1 , 5 2 , 53, 54) zezwalania na dostep do zaadresowanego bloku danych oraz przesylania pierwsza szyna w yjsciow a (71) sygnalu "zezwolenie dostepu" do zglaszajacej zadanie jednostki systemu kom puterow ego przy wystepowaniu sygnalu klucza kontrolnego na w yjsciu ukladu OR , w y- stepowaniu sygnalu zgodnosci na w yjsciu ukladu OR , wystepowaniu sygnalu jaw nego klucza pamieci oraz braku sygnalu jaw nego klucza dostepu, sygnalu zgodnosci i sygnalu klucza kontrolnego na w yjsciu pierwszej bramki AND (55), w ystepowaniu sygnalu zadania pobrania i sygnalu jawnego klucza dostepu oraz braku sygnalu zgodnosci i sygnalu klucza kontrolnego na w yjsciu drugiej bram ki AND (65) przy odblokowaniu klucza jawnego, lub w ystepow aniu sygnalu zadania pobrania i sygnalu jaw nego klucza dostepu braku sygnalu zgodnosci i sygnalu klucza kontrolnego na w yjsciu trzeciej bramki A N D (63) przy zablokowaniu klucza jaw nego przy czym uklad OR oraz pierwsza, druga i trzecia bram ki AND (55, 65, 63) sa wlaczone miedzy w yjscia ukladów porów nywania (1 3 1 , 133, 1 3 7 , 136) a pierwsza szyne w yjsciow a (71) FIG II PL
Description
Przedmiotem wynalazku jest układ ochrony danych w bloku pamięci systemu komputerowego przed nieuprawnionym dostępem, który w szczególności zabezpiecza kod i dane zawarte w bloku pamięci przed fałszywymi operacjami zapisu w wyniku wykonywania kodu programu z innego obszaru pamięci, jeśli nawet te różne bloki pamięci są w tej samej przestrzeni adresów wirtualnych.
Klucze ochrony pamięci dla bloków pamięci systemu komputerowego są przedstawione w opisach patentowych Stanów Zjednoczonych Ameryki nr nr 3 576 544, 4 093 987. Klucze ochrony pamięci zostały wykorzystane w komercyjnych systemach IBM System S/360, S/370 i S/390 oraz w systemach z nimi zgodnych.
Architektura systemu IBM S/390 umożliwia stosowanie kluczy pamięci 0 - 15 i kluczy dostępu 0 - 15, jak opisano w Zasadach działania systemu architektury S/390 (nr dokumentu SA22-7201-00), opublikowanych przez korporację IBM. W obecnych systemach klucze 0-15 umożliwiają dwa poziomy ochrony, jeden dla kluczy klasy nadzoru (zrealizowanych za pomocą klucza 0) a drugi dla kluczy klasy użytkownika (zrealizowanych za pomocą klucza 1-15). Klucz nadzorczy 0 umożliwia dostęp do danych w dowolnym bloku pamięci (bez względu na przydzielony klucz pamięci). Nienadzorczy klucz dostępu (z kluczy 1-15) umożliwia dostęp do bloku pamięci tylko wtedy jeśli istnieje zgodność między kluczem dostępu (wykorzystywanym przez program żądający dostępu) i kluczem bloku pamięci, względem którego wykonywana jest operacja dostępu. Dla każdego bloku (strony) pamięci o pojemności 4KB w układzie pamięci głównej systemu S/360, S/370 i S/390, istnieje klucz pamięci. Każda operacja dostępu do głównej pamięci systemu sprawdza klucz ochrony z kluczem dostępu, dostarczanym przez każdy program zgłaszający żądanie dostępu. Klucz dostępu jest zwykle dostarczany na podstawie pola klucza dostępu w słowie statusu programu (PSW). Klucz dostępu porównywany jest z kluczem ochrony pamięci dla aktualnie adresowanej strony w pamięci systemowej przy wykorzystaniu raczej złożonego, wymuszonego sprzętowo, zbioru reguł w celu sprawdzenia czy istnieje zgodność kluczy. Reguły te wykorzystują bit ochrony operacji pobrania (FP) w każdym kluczu pamięci, przy czym operacje zapamiętania nie zależą od ustawienia bitu FP, zaś operacje zapamiętania dla nienadzorczych kluczy dostępu 1-15 wymagają zgodności klucza dostępu i klucza ochrony. W przypadku żądania pobrania bit FP stwierdza, czy potrzebna jest zgodność w celu umożliwienia dostępu dla nienadzorczych kluczy dostępu 1-15. Jeśli bit Fp jest równy zero to nie jest wymagana zgodność w celu wykonania operacji pobrania, bez względu na wartość klucza dostępu i klucza pamięci. Jeśli jednak bit FP jest równy jeden to wymagana jest zgodność kluczy w celu umożliwienia operacji pobrania dla kluczy nienadzorczych 1 -15. Dla nadzorczego klucza dostępu 0 operacja dostępu jest możliwa bez względu na to czy jest on zgodny z dowolnym kluczem pamięci 1-15.
Ochrona pamięci za pomocą kluczy dostępu, występująca w systemach wykorzystujących architekturę IBM S/390, ma strukturę ochrony dwupoziomowej złożoną z poziomu nadzorczego (klucz 0) i poziomu nienadzorczego (klucze 1-15). Programy nadzorcze mają dostęp do bloków pamięci, przydzielonych programom nienadzorczym, ale programy nienadzorcze nie mają dostępu do bloków pamięci przydzielonych programom nadzorczym. Taka ochrona za pomocą kluczy powoduje powstanie ścieżki krytycznej, związanej z każdym dostępem do pamięci w systemie, ponieważ jest ona wykonywana dla każdego dostępu do pamięci. Tak więc układ ochrony za pomocą kluczy w systemie S/390 (i w jego poprzednikach S/360 i S/370) działa w sposób równoległy, nakładając się na pozostałe operacje wykonywane w trakcie dostępu do pamięci, tak aby nie powiększać czasu dostępu do bloku pamięci.
Klucze ochrony zabezpieczają dostęp do realnej pamięci w systemie komputerowym oraz umożliwiają ochronę adresowania w porównaniu z innymi sposobami ochrony, występującymi
170 547 w systemach S/390, takimi jak adresowanie wirtualne i przestrzeń adresów wirtualnych, umożliwiającymi rozszerzenie zakresu ochrony w porównaniu z kluczami pamięci. Adresowanie wirtualne odwzorowuje adres w programie na dowolny adres w pamięci stronicowej, występującej w pamięci fizycznej, w taki sposób, że rzeczywisty adres fizyczny jest zmienny i nieznany użytkownikowi, korzystającemu z systemu komputerowego. Jeśli program wykonujący się w jednej przestrzeni adresowej nie może mieć dostępu do innej przestrzeni adresowej, wówczas dane i programy w tej przestrzeni adresowej są chronione przed takim programem. Klucze pamięci stosuje się do uzyskania ochrony wewnątrz przestrzeni adresowej w stosunku do programów, które mają dostęp do tej przestrzeni, ale nie mają uprawnień w stosunku do niektórych danych z tej przestrzeni.
Znany jest także, z artykułu P. Bunce’a i innych pt. Integralność systemowa w środowiskach czasu rzeczywistego MIL=STD-1750A zamieszczonego w publikacji ELECTRO 86 z grudnia 1986 r., Los Angeles, USA, sposób ochrony danych, który umożliwia stosowanie trzech poziomów ochrony: w dziedzinie systemowej, w dziedzinie normalnej i w dziedzinie jawnej. Dziedzina systemowa ma dostęp do samej siebie i do innych dziedzin, dziedziny normalne mogą mieć dostęp do siebie nawzajem i do dziedziny jawnej, zaś dziedzina jawna może mieć dostęp tylko do siebie samej.
Istotą układu ochrony danych w bloku pamięci systemu komputerowego przed nieuprawnionym dostępem według wynalazku zawierającego układ porównywania klucza dostępu z kluczem nadzorczym, układ porównywania klucza dostępu z kluczem pamięci, układ porównywania klucza pamięci z kluczem publicznym i układ porównywania klucza dostępu z kluczem publicznym, do których wejść jest doprowadzany sygnał adresu jednostki danych, która ma mieć dostęp do bloku danych, sygnał klucza dostępu przyporządkowany żądającemu dostępu do bloku danych programowi i sygnał pobrania/zapisu identyfikujący sposób dostępu, jest to, że zawiera, dołączony do wyjścia układu porównywania klucza dostępu z kluczem nadzorczym, z wyjściowym sygnałem klucza kontrolnego, układu porównywania klucza dostępu z kluczem pamięci, z wyjściowym sygnałem zgodności, układu porównywania klucza pamięci z kluczem publicznym, z wyjściowym sygnałem jawnego klucza oraz układu porównywania klucza dostępu z kluczem publicznym, z wyjściowym sygnałem jawnego klucza dostępu, pierwszy zespół bramek AND zezwalania na dostęp do zaadresowanego bloku danych oraz przesyłania pierwszą szyną wyjściową sygnału zezwolenie dostępu do zgłaszającej żądanie jednostki systemu komputerowego przy występowaniu sygnału klucza kontrolnego na wyjściu układu OR, występowaniu sygnału zgodności na wyjściu układu OR, występowaniu sygnału jawnego klucza pamięci oraz braku sygnału jawnego klucza dostępu, sygnału zgodności i sygnału klucza kontrolnego na wyjściu pierwszej bramki AND, występowaniu sygnału żądania pobrania i sygnału jawnego klucza dostępu oraz braku sygnału zgodności i sygnału klucza kontrolnego na wyjściu drugiej bramki AND przy odblokowaniu klucza jawnego, lub występowaniu sygnału żądania pobrania i sygnału jawnego klucza dostępu braku sygnału zgodności i sygnału klucza kontrolnego na wyjściu trzeciej bramki AND przy zablokowaniu klucza jawnego, przy czym układ OR oraz pierwsza, druga i trzecia bramki AND są włączone między wyjścia układów porównywania a pierwszą szynę wyjściową.
Układ ochrony zawiera czwartą bramkę AND włączoną między wyjścia układów porównywania i pierwszą szynę wyjściową sygnału zezwolenie dostępu do zaadresowanego bloku danych oraz przesyłania pierwszą szyną wyjściową sygnału zezwolenie dostępu do zgłaszającej żądanie jednostki systemu komputerowego, przy występowaniu sygnału żądania pobrania oraz braku sygnału jawnego klucza pamięci, sygnału jawnego klucza dostępu, sygnału zgodności i sygnału klucza kontrolnego na wyjściu czwartej bramki AND przy odblokowaniu klucza jawnego.
Układ ochrony danych w bloku pamięci systemu komputerowego przed nieuprawnionym dostępem według wynalazku zawiera także drugi zespół bramek AND blokady dostępu zaadresowanego bloku danych oraz przesyłania drugą szyną wyjściową sygnału wyjątek dostępu do zgłaszającej żądanie jednostki systemu komputerowego przy występowaniu sygnału ochrony pobrania, przy czym drugi zespół bramek jest włączony między wyjścia układów porównywania a drugą szynę wyjściową.
170 547
Układ ochrony zawiera następnie piątą, szóstą i siódmą bramki ANd włączone między wyjścia układów porównywania a drugą szynę wyjściową sygnału wyjątek dostępu do zgłaszającej żądanie jednostki systemu komputerowego przy występowaniu sygnału żądania pamięci oraz braku sygnału jawnego klucza pamięci, sygnału jawnego klucza dostępu, sygnału zgodności i sygnału klucza kontrolnego na wyjściu piątej bramki AND przy odblokowaniu klucza jawnego, występowaniu sygnału żądania pamięci i sygnału jawnego klucza dostępu oraz braku sygnału zgodności i sygnału klucza kontrolnego na wyjściu szóstej bramki AND przy odblokowaniu klucza jawnego, lub występowaniu sygnału żądania pamięci i sygnału jawnego klucza dostępu oraz braku sygnału zgodności i sygnału klucza kontrolnego na wyjściu siódmej bramki AND przy zablokowaniu klucza jawnego.
W rozwiązaniu według wynalazku użytkownik z dowolnym kluczem pośrednim ma dostęp do dowolnego bloku pamięci z kluczem publicznym. Jednak żaden użytkownik klucza publicznego nie może wykonywać operacji zapisu (lub pobrania jeśli ochrona przed operacją pobrania jest włączona) do bloku pamięci chronionego przez klucz nadzorczy lub pośrednie klucze bloku pamięci.
Wynalazek w przykładzie wykonania jest przedstawiony na rysunku, na którym fig. 1 przedstawia ogólny schemat systemu komputerowego, fig. 2 - konwencjonalny klucz ochrony pamięci, fig. 3 - klucz dostępu i bit P w słowie statusu programu, fig. 4 - klucz dostępu w rejestrze ogólnego przeznaczenia, wykorzystywanym przez klika różnych typów rozkazów, fig. 5 - klucz dostępu w bloku żądania operacji, wykorzystywanym dla operacji wejścia/wyjścia, fig. 6 - bity maski klucza PSW w rejestrze sterującym, fig. 7 - klucz punktu wejścia i pole maski klucza wykorzystywane w sterowaniu przestrzeni adresowej, fig. 8 - pole sterujące trybem publicznego klucza pamięci, fig. 9 - sieć działań a fig. 10 - wykres stanów odnoszące się do układu ochrony danych według wynalazku przedstawionego na fig. 11 w schemacie ideowym.
Figura 1 przedstawia ogólny schemat systemu komputerowego, w którym wykorzystany jest układ ochrony według wynalazku. System zawiera zespół centralnych jednostek przetwarzających, CP-O do CP-N, i zespół urządzeń we/wy, I/O-O do I/O-K, z podkanałami, jednostkami sterującymi i kanałami. Jednostki CP i I/O zgłaszają żądania dostępu do kontrolera 20 pamięci głównej zarządzającego pobieraniem i zapamiętywaniem jednostek danych w pamięci głównej (MS) 21. Pamięć główna 21 zawiera zespół metryc DRAM do przechowywania jednostek danych MS. Każde żądanie dostępu zawiera absolutny adres jednostki danych, pobieranej i zapamiętywanej w pamięci głównej 21. Jednostki CP generują adresy logiczne, które są adresami wirtualnymi, ale mogą być też adresami rzeczywistymi, zgodnie z architekturą S/390. Każdy adres wirtualny, generowany przez dowolną jednostkę CP, jest przekładany na adres absolutny, przesyłany wraz z żądaniem dostępu do pamięci głównej 21, zgodnie z kluczem dostępu układu żądającego. Każdy żądany adres absolutny posiada część starszą, przedstawiającą adres bloku 4 kilobajtowego (KB) (zwanego tu stroną) w pamięci głównej 21, zawierającego żądaną jednostkę danych. Matryca kluczy ochrony 22 składa się z jednej lub więcej pamięci DRAM, zawierających klucze ochrony pamięci typu określonego w architekturze S/390. Klucze w matrycy kluczy 22 są powiązane z odpowiednimi stronami pamięci danych w pamięci głównej 21 na podstawie relacji jeden do jednego. Kiedy pamięć główna 21 otrzymuje adres jednostki danych to jednocześnie matryca kluczy 22 otrzymuje adres strony jednostek danych w celu określenia klucza ochrony pamięci a matrycy kluczy 22, powiązanego z jednostką danych, do której ma miejsce dostęp w pamięci głównej 21. T akie adresowanie pamięci głównej 21 i matrycy kluczy 22 jest znane z dotychczasowych rozwiązań.
Figura 2 przedstawia postać każdego z kluczy ochrony pamięci w układzie 23 sprawdzania klucza ochrony (zdefiniowanym w architekturze S/390). Każdy klucz ochrony pamięci zajmuje bajt pamięci w matrycy kluczy 22 oraz zawiera klika pól, łącznie z cztero-bitowym polem ACC, często określanym jako klucz ochrony pamięci, chociaż dokładniej cały bajt jest kluczem ochrony pamięci. Pozostałe pola w kluczu ochrony pamięci to pola jednobitowe: FP (ochrona operacji pobrania), R (polecenie) i C (zmiana). Zawartość pola klucza ACC w kluczu ochrony pamięci jest porównywana z czterobitowym kluczem dostępu, dostarczanym przez program żądający dostępu , do pamięci głównej 21. Układ 23 sprawdzania klucza ochrony otrzymuje klucz ochrony pamięci pobrany z matrycy kluczy 22. Układ 23 sprawdzania kontroluje pobrany klucz
170 547 ochrony pamięci w stosunku do klucza dostępu związanego z aktualnym żądaniem wykonywanym przez jednostki CP lub zespoły I/O. Klucz dostępu uzyskiwany jest z elementu sterującego, zdefiniowanego w znanej architekturze S/390. Klucz dostępu dostarczany jest przez odpowiednie jednostki CP lub zespoły I/O żądające operacji dostępu do pamięci głównej 21. Figury 3, 4, 5 przedstawiają odmienne źródła kluczy dostępu. Określone źródło wybierane jest przez jednostki CP lub zespoły I/O żądające dostępu do pamięci głównej 21.
Figura 3 przedstawia jako źródło klucza dostępu dla każdej jednostki CPO-N słowo statusu programu PSW. Słowo PSW w odpowiedniej jednostce CP jest źródłem klucza dostępu dla większości rozkazów wykonywanych w jednostce CP, żądającym dostępu do pamięci głównej 21. Kilka rozkazów jednostki CP nie wykorzystuje jako jedynego źródła klucza dostępu słowa PSW ale również rejestr ogólnego przeznaczenia (klucz GR), w którym klucz dostępu znajduje się na pozycjach bitów 24-27, co przedstawiono na fig. 4. Tych kilka rozkazów zdefiniowano w architekturze S/390jako: załaduj do pierwszego, załaduj do drugiego, załaduj z kluczem, załaduj z kluczem docelowym i załaduj z kluczem źródłowym.
Przedstawione na fig. 3 pole P w słowie PSW na pozycji bitu 15 steruje tym, czy odpowiednia jednostka CP pracuje w stanie problemowym czy nadzorczym. W stanie problemowym (bit 15 w słowie PSW jest równy 1) maska klucza słowa PSW w masce CR3 (fig. 6) wykorzystywana jest do określenia czy żądający jest upoważniony do wykorzystywania klucza dostępu określonego w GR. W stanie nadzorczym jest wykorzystywany klucz GR.
Figura 5 przedstawia klucz dostępu w bloku żądania operacji ORB wykorzystywany przez większość żądań dostępu urządzeń I/O (z dowolnego urządzenia I/O: od I/O-O do I/O-K) jako źródła klucza dostępu do pamięci głównej 21. Blok ORB jest blokiem sterującym w MS, uzyskiwanym za pomocą rozkazu startu podkanału, który uruchamia dowolne urządzenie I/O w architekturze S/390. Pozycje bitów 0-3 w bloku ORB zawierają klucz dostępu.
Rozkaz wywołania programu w architekturze S/390 wykorzystuje klucz dostępu otrzymany na podstawie tablicy punktów wejścia ETE, w której klucz dostępu nazywany jest EK (klucz dostępu), co przedstawiono na figurze 7. Wykorzystanie klucza dostępu EK odbywa się z użyciem pola maska klucza PSW w rejestrze sterującym CR 3, co przedstawiono na figurze 6. Maska wynikowa może być modyfikacją pola maski w kluczu PSW w rejestrze sterującym CR 3, zmodyfikowanego zgodnie z polem maski klucza uprawnień i polem maski klucza wejścia, zgodnie z polem M w tablicy ETE przedstawionym na fig. 7, jak określono to w architekturze S/390.
Działanie układu ochrony danych określone jest ustawieniem pola trybu klucza ochrony pamięci publicznej PSK, przedstawionym na figurze 8, jako pozycja bitu 7 w rejestrze CR 0 (określanym jako bit CR 0.7). Działanie układu wywoływane jest jeśli bit CR 0.7 ustawiony jest na 1, zaś konwencjonalne działanie klucza uzyskuje się przy bicie CR 0.7 ustawionym na 0.
Figura 9 przedstawia sieć działań odnoszącą się do układu ochrony danych dla każdego żądania dostępu do pamięci ze strony dowolnej jednostki CP lub urządzenia I/O, jeśli bit CR 0.7 ustawiony jest w stan 1 w celu umożliwienia ustawienia pola trybu klucza ochrony pamięci publicznej PSK.
Krok 31 z fig. 9 jest wykonywany po żądaniu do pamięci po uzyskaniu priorytetu w celu wykonania go przez kontroler 20 pamięci głównej z fig. 1 w sposób typowy. Jeśli w kroku 31 stwierdzi się, że uzyskany klucz dostępu jest kluczem nadzorczym (klucz 0), to wykonywana jest ścieżka TAK do kroku 32 w celu zakończenia dostępu, zaś na fig. 1 sygnał zezwolenie dostępu dostarczany jest do pamięci głównej 21 przez układ sprawdzania klucza ochrony 23 w celu umożliwienia pamięci głównej 21 dokończenia żądanego pobrania lub dostępu w celu zapisu do tej pamięci. Jeśli w kroku 31 stwierdzi się, że uzyskany klucz dostępu nie jest kluczem nadzorczym to wykonywana jest ścieżka NIE do kroku 33.
W kroku 33 bada się klucz dostępu w celu sprawdzenia, czy jest on równy polu ACC w kluczu ochrony pamięci (fig. 2). Jeśli tak, to wykonuje się przejście do kroku 32 w celu zakończenia pobrania lub zapisu. Jeśli jednak klucz dostępu nie jest równy kluczowi ochrony, to wykonuje się przejście do kroku 34, w którym bada się stan bitu trybu CR 0.7 w celu określenia czy jest on w trybie PSK lub konwencjonalnym. Jeśli bit CR 0.7 jest w stanie 0 to oznacza to, że tryb PSK nie jest aktualnie aktywny i wykonuje się przejście do kroku 38. Następnie w kroku 38
170 547 bada się żądanie w celu stwierdzenia, czy jest to żądanie pobrania czy nie. Wynik negatywny w kroku 38 wskazuje, że żądanie dostępu dotyczy zapisu. W przypadku stwierdzenia żądania zapisu nie zezwala się najego dokończenie, ponieważ jest to tylko możliwe gdy w kroku 33 stwierdzono zgodność klucza dostępu z kluczem pamięci, powodując przejście wzdłuż ścieżki TAK z kroku 33 do 32. Jednak z kroku 33 wyjście następuje ścieżką NIE, po stwierdzeniu niezgodności klucza dostępu z kluczem ochrony pamięci, zabraniając ukończenia żądania zapisu. Jeśli w kroku 38 nie stwierdzono żądania pobrania to wychodzi się ścieżką NIE do kroku 41, w którym generuje się wyjątek dostępu w celu wskazania, że to żądanie zapisu nie będzie zakończone. Linia zezwolenia dostępu z fig. 1 nie jest aktywowana, co zapobiega wystąpieniu w pamięci głównej 21 żądania zapisu.
Jeśli jednak w kroku 34 stwierdzono, że bit CR 0.7 jest w stanie 1, to oznacza że istnieje tryb PSK i wykonywanajest ścieżka TAK do kroku 36, w którym sprawdza się, czy klucz dostępu jest w klasie publicznej przez sprawdzenie go na równość z dowolnymi wartościami kodu, należącymi do klasy publicznej. Wykonywana jest ścieżka TAK do kroku 38, jeśli klucz dostępu jest równy dowolnemu kluczowi z klasy publicznej. Przykładowo, jako pojedyncze klucze w klasie publicznej mogą być wybrane wartości 9 lub 15 lub też klasa publicznych kluczy wielokrotnych może zawierać klucze 9, 10 i 15.
Jednakże, gdy klucz dostępu nie jest równy żądanemu kluczowi klasy publicznej to wykonuje się ścieżkę NIE z kroku 36 do 37. W kroku 37 stwierdza się, czy bieżący klucz dostępu jest kluczem publicznym przez sprawdzenie, czy jest on równy któremuś z kluczy klasy publicznej. Jeśli klucz dostępu jest kluczem publicznym to wykonuje się ścieżkę TAK z kroku 37 do 32 w celu zakończenia pobrania lub dostępu w celu zapisu do pamięci głównej 21. Jeśli jednak w kroku 37 stwierdzi się, że klucz dostępu nie jest kluczem publicznym to wykonuje się krok 38, w którym sprawdza się, czy aktualne żądanie jest pobraniem lub nie (to znaczy jest zapisem do pamięci), ponieważ stan bitu FP zezwala na dostęp, jeśli jest to żądanie pobrania.
Jak wyjaśniono poprzednio, ścieżkę NIE z kroku 38 do 41 wykonuje się, jeśli stwierdzono, że jest to żądanie zapisu (ponieważ zapis jest zabroniony jeśli w poprzednim kroku 33 stwierdzono, że klucz dostępu jest niezgodny z kluczem pamięci). Przejście z kroku 38 do 42 odbywa się ścieżką TAK jeśli stwierdzono żądanie pobrania. W kroku 42 bada się stan pola FP w aktualnie adresowanym kluczu ochrony pamięci w celu stwierdzenia, czy jest włączona ochrona pobrania (FP=1), w którym to przypadku pobranie jest zabronione i wykonywane jest przejście ścieżką TAK do kroku 41, który zgłasza wyjątek dostępu, wskazujący, że wykonuje się akcja zabroniona, co powoduje przerwania i zawieszenie wykonywania aktualnego rozkazu. Jeśli w kroku 42 stwierdzi się, że ochrona pobrania jest wyłączona (FP=0) to oznacza, że pobranie jest możliwe i wykonywane jest przejście ścieżką NIE do kroku 32.
Na figurze 10 przedstawiono hierarchię trzech klasy kluczy, klasy I, II i III, w której I jest klasą najwyższą zaś III najniższą, ze sterowaniem dostępem kolejno ograniczanym w kolejności klas I, II, III. Klasa I jest klasą nadzorczą, klasa II klasą pośrednią i klasa III klasą publiczną. Każda z klas zawiera jeden lub więcej kluczy ochrony. Przykładowo, w systemie, w którym określenie kluczy ochrony ma miejsce za pomocą czterobitowego pola klucza ochrony (w którym klucze ochrony są określone jako klucze 0-15), klasa nadzorcza I może być arbitralnie reprezentowana przez klucz 0. Klasa publiczna III może być arbitralnie reprezentowana przez klucz 9. Klasa pośrednia II jest reprezentowana przez pozostałe klucze 1-8, 10-15.
Na fig. 10 przedstawiono, że klasa ma dostęp do samej siebie, co wskazano za pomocą strzałek wychodzących i wchodzących do tego samego koła; oznacza to spełnienie warunku równości w operacji porównania klucza dostępu z kluczem pamięci. Klasa I ma dostęp do każdej innej klasy, klasy pośredniej II lub klasy publicznej III. Jedyną klasą, do której ma dostęp klasa pośrednia II jest klasa publiczna III. Użycie klucza publicznego w klasie III nie zezwala na dostęp do innej klasy, zaś klucze publiczne poddawane są operacji testowania na zgodność klucza dostępu z kluczem pamięci zanim jeden z kluczy klasy publicznej może dostać się do bloku pamięci przydzielonego innemu kluczowi pamięci klasy publicznej.
Następujący schemat przedstawia operacje pobrania i zapamiętania, będące wynikiem wykorzystania dowolnych kluczy pamięci i kluczy dostępu przy wykorzystaniu trzech stanów przedstawionych na fig. 10, używając sposoby sterowania z fig. 9. Ustawienie bitu ochrony
170 547 pobrania (FP) w kluczu pamięci steruje operacją pobrania, gdzie F przedstawiono z gwiazdką (*), tzn. F*, w sposób przedstawiony następująco:
Tabela sterowania dostępem dla trzech klas
| Klucz ochrony pamięci | ||||
| klasa I | klasa II | klasa III | ||
| k d | klasa I | F/S | F/S | F/S |
| l o | ||||
| u s | klasa II | p* | F*/S* | F/S |
| c t | ||||
| z ę | klasa III | p* | p* | F*/S* |
| P | ||||
| u |
Legenda:
F/S = zezwolenie na pobranie lub zapis do pamięci (ustawienie FP me ma żadnego t wpływu)
F = operacja pobrania możliwa tylko gdy. a/ FP = 0 lub ' b/ klucz dostępu = kluczowi pamięci, jeśli FP = 1.
S = operacja zapisu do pamięci możliwa tylko gdy: klucz dostępu = kluczowi pamięci (ustawienie FP me ma żadnego wpływu)
Figura 11 przedstawia schemat ideowy układu ochrony danych według wynalazku, realizujący sprawdzanie klucza i umożliwiający nakładanie się operacji sprawdzania klucza z operacją dostępu do pamięci głównej 21. Oznacza to, że układ ochrony danych może pracować jednocześnie z operacją dostępu do DRAM w pamięci głównej 21 oraz, że może wytwarzać sygnał wyjściowy dostęp dozwolony lub wyjątek dostępu zanim pamięć ta ukończy operację pobrania lub zapisu dla żądanej jednostki danych.
Układ ochrony danych w bloku pamięci systemu komputerowego przed nieuprawnionym dostępem zawiera układ porównywania 131 klucza dostępu z kluczem nadzorczym, układ porównywania 133 klucza dostępu z kluczem pamięci, układ porównywania 137 klucza pamięci z kluczem publicznym i układ porównywania 136 klucza dostępu z kluczem publicznym, przy czym do wejść tych układów jest doprowadzany sygnał adresu jednostki danych, która ma mieć dostęp do bloku danych, sygnał klucza dostępu przyporządkowany żądającemu dostępu do bloku danych programowi i sygnał pobrania/zapisu identyfikujący sposób dostępu. Do wyjścia układu porównywania 131 klucza dostępu z kluczem nadzorczym, z wyjściowym sygnałem klucza kontrolnego, układu porównywania 133 klucza dostępu z kluczem pamięci, z wyjściowym sygnałem zgodności, układu porównywania 137 klucza pamięci z kluczem publicznym, z wyjściowym sygnałem jawnego klucza oraz układu porównywania 136 klucza dostępu z kluczem publicznym, z wyjściowym sygnałem jawnego klucza dostępu, jest dołączony pierwszy zespół bramek AND 51,52,53, 54 zezwalania na dostęp do zaadresowanego bloku danych oraz przesyłania pierwszą szyną wyjściową 71 sygnału zezwolenie dostępu do zgłaszającej żądanie jednostki systemu komputerowego przy występowaniu sygnału klucza kontrolnego na wyjściu układu OR 57, występowaniu sygnału zgodności na wyjściu układu OR 57, występowaniu sygnału jawnego klucza pamięci oraz braku sygnału jawnego klucza dostępu, sygnału zgodności i sygnału klucza kontrolnego na wyjściu pierwszej bramki AND 55, występowaniu sygnału żądania pobrania i sygnału jawnego klucza dostępu oraz braku sygnału zgodności i sygnału klucza kontrolnego na wyjściu drugiej bramki ANd 65 przy odblokowaniu klucza jawnego, lub występowaniu sygnału żądania pobrania i sygnału jawnego klucza dostępu braku sygnału zgodności i sygnału klucza kontrolnego na wyjściu trzeciej bramki AND 63 przy zablokowaniu kluczajawnego. Układ OR 57 oraz pierwsza, druga i trzecia bramki AND 55,65, 63 są włączone między wyjścia układów porównywania 131, 133, 137, 136 a pierwszą szynę wyjściową 71.
Układ zawiera czwartą bramkę AND 68 włączoną między wyjścia układów porównywania 131, 133, 137, 136 i pierwszą szynę wyjściową 71 sygnału zezwolenie dostępu
170 547 zaadresowanego bloku danych oraz przesyłania pierwszą szyną wyjściową 71 sygnału zezwolenie dostępu do zgłaszającej żądanie jednostki systemu komputerowego, przy występowaniu sygnału żądania pobrania oraz braku sygnału jawnego klucza pamięci, sygnału jawnego klucza dostępu, sygnału zgodności i sygnału klucza kontrolnego na wyjściu czwartej bramki AND 68 przy odblokowaniu klucza jawnego.
Ponadto układ ochrony danych zawiera drugi zespół bramek AND 61, 62, 64, 66, 67, 69 blokady dostępu zaadresowanego bloku danych oraz przesyłania drugą szyną wyjściową 72 sygnału wyjątek dostępu do zgłaszającej żądanie jednostki systemu komputerowego przy występowaniu sygnału ochrony pobrania, przy czym drugi zespół bramek AND 61, 62, 64, 66, 67, 69 jest włączony między wyjścia układów porównywania 131, 133, 137, 136 a drugą szynę wyjściową 72.
Układ zawiera następnie piątą, szóstą i siódmą bramki AND 69, 66, 61 włączone między wyjścia układów porównywania 131, 133, 137, 136 a drugą szynę wyjściową 72 sygnału wyjątek dostępu do zgłaszającej żądanie jednostki systemu komputerowego przy występowaniu sygnału żądania pamięci oraz braku sygnału jawnego klucza pamięci, sygnału jawnego klucza dostępu, sygnału zgodności i sygnału klucza kontrolnego na wyjściu piątej bramki AND 69 przy odblokowaniu klucza jawnego, występowaniu sygnału żądania pamięci i sygnału jawnego klucza dostępu oraz braku sygnału zgodności i sygnału klucza kontrolnego na wyjściu szóstej bramki AND 66 przy odblokowaniu kluczajawnego, lub występowaniu sygnału żądania pamięci i sygnału jawnego klucza dostępu oraz braku sygnału zgodności i sygnału klucza kontrolnego na wyjściu siódmej bramki AND 61 przy zablokowaniu kluczajawnego.
Cztery układy porównywania 131, 133, 137 i 136 wykonują operacje porównywania, przedstawione na fig.9 przez kroki 31,33,37 i 36, jednocześnie (równolegle) wykonując operacje porównania z fig. 11. Na pierwszej szynie wyjściowej 71 występuje sygnał zezwolenie dostępu, przedstawiony na fig. 1. Na drugiej szynie wyjściowej 72 występuje sygnał wyjątek dostępu, przedstawiony na fig. 1. Te same funkcje przedstawione są na fig. 9 przez kroki 32 i 41.
Na rysunku fig. 11 przedstawiono układy z logiką dodatnią, przy czym jest oczywiste, że do realizacji przedstawionego tam układu może być użyta dowolna liczba funktorów AND, OR, INVERT. Każdy z układów porównywania 131, 133, 137 i 136 wykonuje operacje porównywania, przedstawione odpowiednio na fig. 9. Na fig. 11 przedstawiono je z wyjściami komplementarnymi 1 i 0. Wyjście 1 jest aktywne, kiedy do spełnienia warunku z fig. 9 wymagane jest spełnienie warunku TAK, zaś wyjście 0 jest aktywne, kiedy do spełnienia warunku z fig. 9 wymagane jest spełnienie warunku NIE.
Odpowiednie zależności między operacjami z fig. 9 i fig. 11 są jak następuje: sygnał z układu OR 57 odpowiada ścieżce TAK z kroku 31 albo 33 z fig. 11. Bramka AND 55 odpowiada ścieżce NIE z kroku 37. Sygnał z dowolnej bramki AND 61, 64 i 67 odpowiada ścieżce NIE z kroku 38. Sygnał z dowolnej bramki AND 62, 64 i 67 odpowiada ścieżce TAK z kroku 42. Sygnał z dowolnej bramki AND 63, 65 i 68 odpowiada ścieżce NIE z kroku 42.
Na fig. 11 na pierwszej szynie 71 jest zrealizowana suma logiczna na drucie sygnałów z układu OR 57 i bramek AND 63, 65, 68 i 55 (z których tylko jeden układ/bramka dostarcza w danym czasie sygnał tej szyny w celu wygenerowania sygnału wyjściowego dostęp zakończony. Na drugiej szynie wyjściowej 72 jest zrealizowana suma logiczna na drucie sygnałów z bramek AND 6162,64,66 i 69 (z których tylko jedna bramka dostarcza w danym czasie sygnał tej szyny w celu wygenerowania sygnału wyjściowego wyjątek dostępu.
Przedmiot wynalazku został przedstawiony w typowym przykładzie wykonania, to jednak dla specjalistów z tej dziedziny techniki będzie zrozumiałe, że można w nim wykonać różne zmiany szczegółów bez naruszenia idei, zakresu i istoty wynalazku.
170 547
170 547
| KLUCZ PAMIĘCI (Z BLOKU 4 KB) | ACC | FP | R | C | FIG.2 | |
| 0-----3. 4,5,6,7 |
PSW
| KLUCZ DOSTĘPU | P |
8----11 15
FIG.3
GR
KLUCZ
DOSTĘPU
24---27 31
ORB
CR3
KLUCZ
DOSTĘPU
FIG.5
BITY MASKI KLUCZA PSW
FIG.6
FIG.7
ETE
MASKA KLUCZA UPRAWNIEŃ
MASKA
M&A
| M | <LUCZ I iĘjSCIA | ||
| ekT 1 |
96------111 132 136--139 255
CRO
TRYB
PSK
FIG.8 o
170 547
Fl G . 9
ŻĄDANIE DOSTĘPU DO PAMIĘCI (CP ALBO 1/0) f TAK
3) .CZY KLUCZ DOSTĘPU JEST KLUCZEM NADZORCZYM?NIE | TAK
3-CZY KLUCZ DOSTĘPU JEST RĆWNY POLU ACC W KLUCZU PAMIĘCI?-
NIE
NIE _, '
-j4-CZY CRO.7=1?
TAK
TAK ,,
-36.CZY KLUCZ DOSTĘPU JEST W KLASIE
PUBLICZNEJ?
NIE .CZY POLE ACC KLUCZA PAMIĘCI JEST W KLASIE PUBLICZNEJ?
NIE
TAK 32.ZEZWOLENIE _DOSTĘPU ( ZAKOŃ
CZENIE POBRANIA LUB ZAPISU)
38. czy Zadanie pobrania?
NIE
TAK .GENERACJA WYJATKA DOSTĘPU
TAK
42.CZY FP=1 W KLUCZU PAMIĘCI? — (POBRANIE CHRONIONE)
FIG 1 0
170 547 ο
OCQ ω><
6η
OHW
GZS <2 3 I—ICQ ZOH HC^O U fe? OtfH
WYTWARZANIE SYGNAŁU WYJATKA #B§oE?/oD° ^dającego cp
170 547
FIG. 1
Departament Wydawnictw UP RP Nakład 90 egz.
Cena 4,00 zł
Claims (4)
- Zastrzeżenia patentowe1. Układ ochrony danych w bloku pamięci systemu komputerowego przed nieuprawnionym dostępem zawierający układ porównywania klucza dostępu z kluczem nadzorczym, układ porównywania klucza dostępu z kluczem pamięci, układ porównywania klucza pamięci z kluczem publicznym i układ porównywania klucza dostępu z kluczem publicznym, do których wejść jest doprowadzany sygnał adresu jednostki danych, która ma mieć dostęp do bloku danych, sygnał klucza dostępu przyporządkowany żądającemu dostępu do bloku danych programowi i sygnał pobrania/zapisu identyfikujący sposób dostępu, znamienny tym, że zawiera, dołączony do wyjścia układu porównywania (131) klucza dostępu z kluczem nadzorczym, z wyjściowym sygnałem klucza kontrolnego, układu porównywania (133) klucza dostępu z kluczem pamięci, z wyjściowym sygnałem zgodności, układu porównywania (137) klucza pamięci z kluczem publicznym, z wyjściowym sygnałem jawnego klucza oraz układu porównywania (136) klucza dostępu z kluczem publicznym, z wyjściowym sygnałem jawnego klucza dostępu, pierwszy zespół bramek AND (51, 52, 53, 54) zezwalania na dostęp do zaadresowanego bloku danych oraz przesyłania pierwszą szyną wyjściową (71) sygnału zezwolenie dostępu do zgłaszającej żądanie jednostki systemu komputerowego przy występowaniu sygnału klucza kontrolnego na wyjściu układu OR (57), występowaniu sygnału zgodności na wyjściu układu OR (57), występowaniu sygnału jawnego klucza pamięci oraz braku sygnału jawnego klucza dostępu, sygnału zgodności i sygnału klucza kontrolnego na wyjściu pierwszej bramki AND (55), występowaniu sygnału żądania pobrania i sygnału jawnego klucza dostępu oraz braku sygnału zgodności i sygnału klucza kontrolnego na wyjściu drugiej bramki AND (65) przy odblokowaniu klucza jawnego, lub występowaniu sygnału żądania pobrania i sygnału jawnego klucza dostępu braku sygnału zgodności i sygnału klucza kontrolnego na wyjściu trzeciej bramki AND (63) przy zablokowaniu klucza jawnego, przy czym układ OR (57) oraz pierwsza, druga i trzecia bramki AND (55, 65, 63) są włączone między wyjścia układów porównywania (131,133, 13*7,136) a pierwszą szynę wyjściową (71).
- 2. Układ według zastrz. 1, znamienny tym, że zawiera czwartą bramkę AND (68) włączoną między wyjścia układów porównywania (131, 133, 137, 136) i pierwszą szynę wyjściową (71) sygnału zezwolenie dostępu zaadresowanego bloku danych oraz przesyłania pierwszą szyną wyjściową (71) sygnału zezwolenie dostępu do zgłaszającej żądanie jednostki systemu komputerowego, przy występowaniu sygnału żądania pobrania oraz braku sygnału jawnego klucza pamięci, sygnału jawnego klucza dostępu, sygnału zgodności i sygnału klucza kontrolnego na wyjściu czwartej bramki AND (68) przy odblokowaniu klucza jawnego.
- 3. Układ według zastrz. 1, znamienny tym, że zawiera drugi zespół bramek AND (61, 62, 64, 66, 67, 69) blokady dostępu zaadresowanego bloku danych oraz przesyłania drugą szyną wyjściową (72) sygnału wyjątek dostępu do zgłaszającej żądanie jednostki systemu komputerowego przy występowaniu sygnału ochrony pobrania, przy czym drugi zespół bramek AND (61, 62, 64, 66, 67, 69) jest włączony między wyjścia układów porównywania (11^1,133, 137,136) a drugą szynę wyjściową (72).
- 4. Układ według zastrz. 1, znamienny tym, że zawiera piątą, szóstą i siódmą bramki AND (69,66,61) włączone między wyjścia układów porównywania (131,133,137,136) a drugą szynę wyjściową (72) sygnału wyjątek dostępu do zgłaszającej żądanie jednostki systemu komputerowego przy występowaniu sygnału żądania pamięci oraz braku sygnału jawnego klucza pamięci, sygnału jawnego klucza dostępu, sygnału zgodności i sygnału klucza kontrolnego na wyjściu piątej bramki AND (69) przy odblokowaniu klucza jawnego, występowaniu sygnału żądania pamięci i sygnału jawnego klucza dostępu oraz braku sygnału zgodności i sygnału klucza kontrolnego na wyjściu szóstej bramki AND (66) przy odblokowaniu klucza170 547 jawnego, lub występowaniu sygnału żądania pamięci i sygnału jawnego klucza dostępu oraz braku sygnału zgodności i sygnału klucza kontrolnego na wyjściu siódmej bramki AND (61) przy zablokowaniu klucza jawnego.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US07/710,875 US5163096A (en) | 1991-06-06 | 1991-06-06 | Storage protection utilizing public storage key control |
| PCT/EP1992/000926 WO1992022032A1 (en) | 1991-06-06 | 1992-04-29 | Storage protection utilizing public key control |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| PL170547B1 true PL170547B1 (pl) | 1996-12-31 |
Family
ID=24855901
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PL92300810A PL170547B1 (pl) | 1991-06-06 | 1992-04-29 | dostepem PL |
Country Status (8)
| Country | Link |
|---|---|
| US (1) | US5163096A (pl) |
| EP (1) | EP0587587A1 (pl) |
| JP (1) | JPH0736171B2 (pl) |
| CA (1) | CA2064640C (pl) |
| HU (1) | HUT67635A (pl) |
| PL (1) | PL170547B1 (pl) |
| SK (1) | SK136193A3 (pl) |
| WO (1) | WO1992022032A1 (pl) |
Families Citing this family (53)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5335334A (en) * | 1990-08-31 | 1994-08-02 | Hitachi, Ltd. | Data processing apparatus having a real memory region with a corresponding fixed memory protection key value and method for allocating memories therefor |
| US5341422A (en) * | 1992-09-17 | 1994-08-23 | International Business Machines Corp. | Trusted personal computer system with identification |
| US5491752A (en) * | 1993-03-18 | 1996-02-13 | Digital Equipment Corporation, Patent Law Group | System for increasing the difficulty of password guessing attacks in a distributed authentication scheme employing authentication tokens |
| US5475829A (en) * | 1993-03-22 | 1995-12-12 | Compaq Computer Corp. | Computer system which overrides write protection status during execution in system management mode |
| US5483598A (en) * | 1993-07-01 | 1996-01-09 | Digital Equipment Corp., Patent Law Group | Message encryption using a hash function |
| US5475763A (en) * | 1993-07-01 | 1995-12-12 | Digital Equipment Corp., Patent Law Group | Method of deriving a per-message signature for a DSS or El Gamal encryption system |
| US5351295A (en) * | 1993-07-01 | 1994-09-27 | Digital Equipment Corporation | Secure method of neighbor discovery over a multiaccess medium |
| US7036019B1 (en) * | 1994-04-01 | 2006-04-25 | Intarsia Software Llc | Method for controlling database copyrights |
| JPH07271865A (ja) | 1994-04-01 | 1995-10-20 | Mitsubishi Corp | データベース著作権管理方法 |
| US5590309A (en) * | 1994-04-01 | 1996-12-31 | International Business Machines Corporation | Storage protection cache and backing storage having system control element data cache pipeline and storage protection bits in a stack array with a stack directory for the stack array |
| JP2970739B2 (ja) * | 1994-09-30 | 1999-11-02 | 日本ビクター株式会社 | 光ディスクの再生制御方法 |
| US7302415B1 (en) | 1994-09-30 | 2007-11-27 | Intarsia Llc | Data copyright management system |
| DE69532434T2 (de) * | 1994-10-27 | 2004-11-11 | Mitsubishi Corp. | Gerät für Dateiurheberrechte-Verwaltungssystem |
| US6424715B1 (en) * | 1994-10-27 | 2002-07-23 | Mitsubishi Corporation | Digital content management system and apparatus |
| US8595502B2 (en) | 1995-09-29 | 2013-11-26 | Intarsia Software Llc | Data management system |
| JP3786993B2 (ja) * | 1995-12-14 | 2006-06-21 | 株式会社日立製作所 | データ記憶ユニット及び該ユニットを用いたデータ記憶装置 |
| US5809546A (en) * | 1996-05-23 | 1998-09-15 | International Business Machines Corporation | Method for managing I/O buffers in shared storage by structuring buffer table having entries including storage keys for controlling accesses to the buffers |
| US5787309A (en) * | 1996-05-23 | 1998-07-28 | International Business Machines Corporation | Apparatus for protecting storage blocks from being accessed by unwanted I/O programs using I/O program keys and I/O storage keys having M number of bits |
| US5900019A (en) * | 1996-05-23 | 1999-05-04 | International Business Machines Corporation | Apparatus for protecting memory storage blocks from I/O accesses |
| US5724551A (en) * | 1996-05-23 | 1998-03-03 | International Business Machines Corporation | Method for managing I/O buffers in shared storage by structuring buffer table having entries include storage keys for controlling accesses to the buffers |
| US5802397A (en) * | 1996-05-23 | 1998-09-01 | International Business Machines Corporation | System for storage protection from unintended I/O access using I/O protection key by providing no control by I/O key entries over access by CP entity |
| JP3228182B2 (ja) * | 1997-05-29 | 2001-11-12 | 株式会社日立製作所 | 記憶システム及び記憶システムへのアクセス方法 |
| US6229894B1 (en) * | 1997-07-14 | 2001-05-08 | Entrust Technologies, Ltd. | Method and apparatus for access to user-specific encryption information |
| US6182174B1 (en) * | 1998-04-13 | 2001-01-30 | International Business Machines Corporation | Memory card interface method using multiplexed storage protect key to indicate command acceptance |
| US7171567B1 (en) * | 1999-08-02 | 2007-01-30 | Harris Interactive, Inc. | System for protecting information over the internet |
| AU7705300A (en) * | 1999-09-20 | 2001-04-24 | Ethentica, Inc. | Trust arbitrage in cryptographic authentication |
| US7391865B2 (en) | 1999-09-20 | 2008-06-24 | Security First Corporation | Secure data parser method and system |
| JP2001167040A (ja) * | 1999-12-14 | 2001-06-22 | Hitachi Ltd | 記憶サブシステム及び記憶制御装置 |
| US6684209B1 (en) * | 2000-01-14 | 2004-01-27 | Hitachi, Ltd. | Security method and system for storage subsystem |
| JP4651230B2 (ja) | 2001-07-13 | 2011-03-16 | 株式会社日立製作所 | 記憶システム及び論理ユニットへのアクセス制御方法 |
| US7657727B2 (en) * | 2000-01-14 | 2010-02-02 | Hitachi, Ltd. | Security for logical unit in storage subsystem |
| US6748592B1 (en) * | 2000-02-14 | 2004-06-08 | Xoucin, Inc. | Method and apparatus for protectively operating a data/information processing device |
| JP4719957B2 (ja) * | 2000-05-24 | 2011-07-06 | 株式会社日立製作所 | 記憶制御装置及び記憶システム並びに記憶システムのセキュリティ設定方法 |
| US7539828B2 (en) * | 2000-08-08 | 2009-05-26 | Faronics Corporation | Method and system for automatically preserving persistent storage |
| US6807602B1 (en) * | 2000-10-30 | 2004-10-19 | Hewlett-Packard Development Company, L.P. | System and method for mapping bus addresses to memory locations utilizing access keys and checksums |
| WO2005004368A2 (en) * | 2003-07-07 | 2005-01-13 | Lg Electronics, Inc. | Upgrade apparatus and its method for home network system |
| BRPI0517026A (pt) | 2004-10-25 | 2008-09-30 | Rick L Orsini | método e sistema analisador de dados seguros |
| CN103384196A (zh) | 2005-11-18 | 2013-11-06 | 安全第一公司 | 安全数据解析方法和系统 |
| US7634708B2 (en) * | 2006-09-15 | 2009-12-15 | International Business Machines Corporation | Relocatable storage protect keys for system main memory |
| CN105224417A (zh) | 2006-12-05 | 2016-01-06 | 安全第一公司 | 改进的磁带备份方法 |
| CN101765846B (zh) | 2007-08-01 | 2013-10-23 | Nxp股份有限公司 | 用于禁用应用程序的移动通信设备和方法 |
| CN101855860B (zh) | 2007-09-14 | 2013-01-09 | 安全第一公司 | 用于管理加密密钥的系统和方法 |
| BRPI0906863A8 (pt) | 2008-01-07 | 2018-10-30 | Security First Corp | sistemas e métodos para proteção de dados com o uso de dispersão chaveada por multifatorial |
| EP2651100A1 (en) | 2008-02-22 | 2013-10-16 | Security First Corporation | Systems and methods for secure workgroup management and communication |
| JP5757536B2 (ja) | 2009-05-19 | 2015-07-29 | セキュリティー ファースト コープ. | クラウド内にデータを確保するシステムおよび方法 |
| EP2504973B1 (en) | 2009-11-25 | 2016-11-16 | Security First Corp. | Systems and methods for securing data in motion |
| US9443097B2 (en) | 2010-03-31 | 2016-09-13 | Security First Corp. | Systems and methods for securing data in motion |
| US8601498B2 (en) | 2010-05-28 | 2013-12-03 | Security First Corp. | Accelerator system for use with secure data storage |
| WO2012040231A2 (en) | 2010-09-20 | 2012-03-29 | Orsini Rick L | Systems and methods for secure data sharing |
| JP5541275B2 (ja) | 2011-12-28 | 2014-07-09 | 富士通株式会社 | 情報処理装置および不正アクセス防止方法 |
| US8918885B2 (en) * | 2012-02-09 | 2014-12-23 | International Business Machines Corporation | Automatic discovery of system integrity exposures in system code |
| US10146707B2 (en) | 2017-03-14 | 2018-12-04 | International Business Machines Corporation | Hardware-based memory protection |
| GB2576005B (en) * | 2018-07-31 | 2020-10-07 | Advanced Risc Mach Ltd | Handling guard tag loss |
Family Cites Families (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| FR1562429A (pl) * | 1967-04-11 | 1969-04-04 | ||
| US3576544A (en) * | 1968-10-18 | 1971-04-27 | Ibm | Storage protection system |
| US3761883A (en) * | 1972-01-20 | 1973-09-25 | Ibm | Storage protect key array for a multiprocessing system |
| US3825903A (en) * | 1973-04-30 | 1974-07-23 | Ibm | Automatic switching of storage protect keys |
| US4405829A (en) * | 1977-12-14 | 1983-09-20 | Massachusetts Institute Of Technology | Cryptographic communications system and method |
| US4424414A (en) * | 1978-05-01 | 1984-01-03 | Board Of Trustees Of The Leland Stanford Junior University | Exponentiation cryptographic apparatus and method |
| US4366537A (en) * | 1980-05-23 | 1982-12-28 | International Business Machines Corp. | Authorization mechanism for transfer of program control or data between different address spaces having different storage protect keys |
| US4471163A (en) * | 1981-10-05 | 1984-09-11 | Donald Thomas C | Software protection system |
| US4472790A (en) * | 1982-02-05 | 1984-09-18 | International Business Machines Corporation | Storage fetch protect override controls |
| AU542447B2 (en) * | 1982-02-27 | 1985-02-21 | Fujitsu Limited | System for controlling key storage unit |
| JPS5958700A (ja) * | 1982-09-29 | 1984-04-04 | Fujitsu Ltd | 記憶保護判定方式 |
| US4668318A (en) * | 1983-12-19 | 1987-05-26 | The Goodyear Tire & Rubber Company | Method for producing braided spiral reinforced hose |
-
1991
- 1991-06-06 US US07/710,875 patent/US5163096A/en not_active Expired - Lifetime
-
1992
- 1992-04-01 CA CA002064640A patent/CA2064640C/en not_active Expired - Fee Related
- 1992-04-24 JP JP4106473A patent/JPH0736171B2/ja not_active Expired - Lifetime
- 1992-04-29 SK SK1361-93A patent/SK136193A3/sk unknown
- 1992-04-29 HU HU9303459A patent/HUT67635A/hu unknown
- 1992-04-29 PL PL92300810A patent/PL170547B1/pl unknown
- 1992-04-29 EP EP92909416A patent/EP0587587A1/en not_active Withdrawn
- 1992-04-29 WO PCT/EP1992/000926 patent/WO1992022032A1/en not_active Ceased
Also Published As
| Publication number | Publication date |
|---|---|
| CA2064640C (en) | 1995-12-12 |
| JPH0736171B2 (ja) | 1995-04-19 |
| JPH05204762A (ja) | 1993-08-13 |
| CA2064640A1 (en) | 1992-12-07 |
| SK136193A3 (en) | 1994-08-10 |
| EP0587587A1 (en) | 1994-03-23 |
| US5163096A (en) | 1992-11-10 |
| HU9303459D0 (en) | 1994-04-28 |
| WO1992022032A1 (en) | 1992-12-10 |
| HUT67635A (en) | 1995-04-28 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| PL170547B1 (pl) | dostepem PL | |
| US4104721A (en) | Hierarchical security mechanism for dynamically assigning security levels to object programs | |
| US5023773A (en) | Authorization for selective program access to data in multiple address spaces | |
| US7058768B2 (en) | Memory isolation through address translation data edit control | |
| US4962533A (en) | Data protection for computer systems | |
| US4979098A (en) | Multiple address space token designation, protection controls, designation translation and lookaside | |
| US5220669A (en) | Linkage mechanism for program isolation | |
| US20060095689A1 (en) | Using limits on address translation to control access to an addressable entity | |
| EP0602867A1 (en) | An apparatus for securing a system platform | |
| JPS6046744B2 (ja) | コンピュ−タ・オペレ−テングシステムの機密保護装置 | |
| JP2013537347A (ja) | コンピュータシステムにおけるリソースアクセス制御を実行する方法 | |
| CA1085517A (en) | Hardware control storage area protection method and means | |
| EP0142819B1 (en) | Access control system for storage having hardware area and software area | |
| KR910002557B1 (ko) | 기억보호장치 | |
| JP3030037B2 (ja) | 主記憶装置 | |
| Miranda | Aspects of data security in general-purpose data base management systems | |
| CN120561923A (zh) | 硬件辅助的tee安全内存细粒度隔离方法与系统 | |
| JP2507430B2 (ja) | 主記憶保護方式 | |
| Izatt | Domain architecture and the ICL 2900 series | |
| JPS5818757A (ja) | 配列限界検査装置 | |
| CN121636382A (zh) | 内存安全管理方法和装置 | |
| JPS6035694B2 (ja) | 主記憶保護方式 | |
| JPH03273377A (ja) | Icカードおよびicカードのアクセス認証方法 | |
| JPS6054691B2 (ja) | 情報処理装置の記憶保護方式 | |
| JPS62274445A (ja) | マイクロ・コンピユ−タ・システムにおける特権保護方式 |