PL182896B1 - Sposób deszyfrowania retransmitowanych danych w szyfrowanym systemie telekomunikacyjnym - Google Patents

Sposób deszyfrowania retransmitowanych danych w szyfrowanym systemie telekomunikacyjnym

Info

Publication number
PL182896B1
PL182896B1 PL97324462A PL32446297A PL182896B1 PL 182896 B1 PL182896 B1 PL 182896B1 PL 97324462 A PL97324462 A PL 97324462A PL 32446297 A PL32446297 A PL 32446297A PL 182896 B1 PL182896 B1 PL 182896B1
Authority
PL
Poland
Prior art keywords
block
message
blocks
received
error
Prior art date
Application number
PL97324462A
Other languages
English (en)
Other versions
PL324462A1 (en
Inventor
Kevin G. Doberstein
Scott J. Pappas
Michael W. Bright
Original Assignee
Motorola Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Motorola Inc filed Critical Motorola Inc
Publication of PL324462A1 publication Critical patent/PL324462A1/xx
Publication of PL182896B1 publication Critical patent/PL182896B1/pl

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1809Selective-repeat protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Communication Control (AREA)
  • Storage Device Security (AREA)

Abstract

1. Sposób deszyfrowania retransmi- towanych danych w szyfrowanym systemie telekomunikacyjnym, w którym odbiera sie komunikat zawierajacy wskaznik komuni- katu i zaszyfrowane bloki, znamienny tym, ze odbiera sie zaszyfrowane bloki z ble- dem, wysyla sie drugi komunikat zadania retransmisji co najmniej jednego bloku, zas po odebraniu retransmisji co najmniej jed- nego bloku bez bledu, generuje sie ze wskaznika komunikatu strumien klucza i deszyfruje sie ten co najmniej jeden blok za pomoca strumienia klucza. FIG. 1 PL

Description

Przedmiotem wynalazku jest sposób deszyfrowania retransmitowanych danych w szyfrowanym systemie telekomunikacyjnym.
Znane są systemy telekomunikacyjne z szyfrowaniem głosu i danych, które zapewniają utajnioną łączność pomiędzy dwoma lub więcej użytkownikami dzięki rozdzieleniu pomiędzy nimi jednego lub więcej fragmentów informacji, co pozwala tylko tym użytkownikom, którzy znają tę informację prawidłowo odszyfrować komunikat. Informacja ta jest zwana kluczem szyfrowania lub w skrócie kluczem. Do szyfrowania lub deszyfrowania komunikatów głosu i danych stosuje się generator klucza KG (key generator).' Generator klucza jest nieliniową funkcją matematyczną która generuje pseudoprzypadkową sekwencję danej tablicy uruchomień pierwotnych i zmienną klucza, która definiuje tę funkcję matematyczną. Generator klucza daje na wyjściu strumień klucza, który jest poddawany operacji różnicy symetrycznej XOR (exclusive OR) z tekstem jawnym (z tekstem w postaci niezaszyfrowanej), by wygenerować tekst zaszyfrowany. Zaszyfrowany tekst wysyła się do odbiornika. Odbiornik poddaje odebrany zaszyfrowany tekst operacji różnicy symetrycznej XOR (sumowaniu modulo 2) ze strumieniem klucza określonym przez odbiornik na podstawie odebranej informacji, dając na wyjściu urządzenia transmitującego tekst jawny.
Ponadto, aby mieć ten sam klucz do szyfrowania i do deszyfrowania zaszyfrowanego komunikatu, zarówno urządzenie szyfrujące jak i urządzenie deszyfrujące muszą być identyczne, tj. muszą realizować ten sam algorytm szyfrowania, w taki sam sposób, od tego samego (wewnętrznego) stanu szyfrowania, w tym samym czasie. Aby umożliwić urządzeniu deszyfrującemu ustawienie swego stanu szyfrowania zgodnie ze stanem szyfrowania urządzenia szyfrującego, w kanale telekomunikacyjnym przesyła się dane synchronizacji, po czym prze182 896 prowadza się właściwe deszyfrowanie przychodzącego komunikatu. Stosowane w szyfrowanych systemach telekomunikacyjnych dane synchronizacji szyfrowania, często nazywane są wskaźnikiem komunikatu MI (message indicator).
Urządzenia szyfrujące mogą działać w jednym z kilku trybów pracy. Tryby pracy urządzenia szyfrującego różnią się sposobem synchronizacji urządzenia odbiorczego z urządzeniem nadawczym.
Jeden tryb pracy, znany jest jako sprzężenie zwrotne na wyjściu OFB (Output Feedback). OFB wymaga, aby ta sama tablica uruchomień pierwotnych (lub wskaźnik komunikatu M1) została doprowadzona zarówno do nadawczego jak i do odbiorczego urządzenia szyfrującego, w celu generowania strumienia klucza. Wskaźnik komunikatu inicjalizuje generator klucza w nadajniku. Uruchamia się algorytm szyfrowania by wygenerować strumień klucza. Strumień klucza zostaje następnie podany z powrotem na wejście generatora klucza, aby wygenerować następny blok strumienia klucza. Ten sam strumień klucza, który jest sprzęgany zwrotnie, jest również wykorzystywany do szyfrowania danych, aby uzyskać tekst zaszyfrowany. Nadajnik nadaje wskaźnik komunikatu i tekst zaszyfrowany do odbiornika. W odbiorniku generator klucza jest inicjalizowany przez wskaźnik komunikatu, który został nadany w nadajniku. Uruchamia się algorytm szyfrowania by wygenerować strumień klucza. Strumień klucza zostaje następnie sprzężony zwrotnie na wejście generatora klucza. Ten sam strumień klucza, który został sprzężony zwrotnie, jest również wykorzystywany do deszyfrowania danych. Dane są deszyfrowane przez poddanie ich operacji logicznej sumy modulo 2 (XOR) ze strumieniem klucza generowanym przez algorytm szyfrowania.
Drugi tryb pracy urządzenia szyfrującego znany jest jako tryb adresowania licznika CA (Counter Addressing) lub regresja liniowa. Sposób wstępnej synchronizacji zastosowany w trybie pracy adresowania licznika CA może być taki sam jak w trybie sprzężenia zwrotnego OFB. W trybie adresowania licznika CA, jako wejście do urządzenia szyfrującego, wykorzystuje się rejestr przesuwu liniowego sprzężenia zwrotnego LFSR (Linear Feedback Shift Register) o maksymalnej długości. Tryb adresowania licznika CA wymaga, aby do generowania strumienia klucza była podawana na rejestr przesuwu liniowego sprzężenia zwrotnego LFSR taka sama tablica uruchomień pierwotnych (lub wskaźnik komunikatu) w nadawczym urządzeniu szyfrowania i w odbiorczym urządzeniu szyfrowania. W nadajniku rejestr przesuwu liniowego sprzężenia zwrotnego LFSR jest inicjalizowany przez wskaźnik komunikatu i realizuje się wielomian generatora. Sygnał wyjściowy rejestru przesuwu liniowego sprzężenia zwrotnego LFSR jest podawany na wejście algorytmu szyfrowania. Algorytm szyfrowania realizuje się w celu generowania strumienia klucza. Następnie strumień klucza poddaje się operacji logicznej sumy modulo 2 z niezaszyfrowanym tekstem jawnym, by wygenerować tekst zaszyfrowany. Nadajnik wysyła do odbiornika wskaźnik komunikatu M1 i zaszyfrowany tekst. W odbiorniku rejestr przesuwu liniowego sprzężenia zwrotnego LFSR jest inicjalizowany przez wskaźnik komunikatu, który został nadany w nadajniku. Sygnał wyjściowy z rejestru przesuwu liniowego sprzężenia zwrotnego LFSR zostaje podany do rejestru wejściowego algorytmu szyfrowania, w celu generowania strumienia klucza. Strumień klucza jest następnie poddawany operacji logicznej sumy modulo 2 z tekstem zaszyfrowanym, w celu deszyfracji danych.
W znanych systemach pożądane jest aby szybkość przesyłania danych była taka sama zarówno dla danych zaszyfrowanych jak i dla danych niezaszyfrowanych. Mimo to, dane zwykle są odbierane z błędem. W wielu systemach telekomunikacyjnych stosuje się żądanie retransmisji tego bloku danych, który został odebrany z błędem. Taka retransmisja danych jest problemem w systemach z szyfrowaniem danych. Ze względu na synchronizowany charakter procesu szyfrowania, jest niezbędne zdeszyfrowanie N - 1 bloków podczas deszyfrowania wybranego do retransmisji bloku N. Właściwość ta znacznie zmniejsza szybkość przesyłania danych w systemach z szyfrowaniem danych, z powodu znacznej różnicy między szybkością przesyłania danych zaszyfrowanych i niezaszyfrowanych. W znanych systemach, przed deszyfrowaniem komunikatu oczekuje się aż wszystkie bloki zostaną odebrane bez błędu. Sposób taki wprowadza dodatkowe opóźnienia przetwarzania po odbiorze ostatniego bloku. Inny sposób wymaga deszyfrowania poprzednich N - 1 bloków podczas deszyfrowania wybranego do
182 896 powtórzenia bloku N. Ten sposób wymaga N - 1 razy dłuższego czasu do zdeszyfrowania wybranego do powtórzenia bloku N. W zasadzie, sposób ten wymaga powtórnego deszyfrowania możliwie całego komunikatu, który został juz zdeszyfrowany, tylko po to aby zdeszyfrować ten jeden blok.
Innym rozwiązaniem problemu retransmisji deszyfrowania jest przesyłanie informacji synchronizacji lub wskaźnika komunikatu dla każdego bloku danych. Rozwiązanie takie zwiększa czas i energię potrzebne zarówno do nadawania jak i do odbioru komunikatów. Następna retransmisja wskaźnika komunikatu może również być odebrana z błędem, co wymaga dalszych retransmisji.
Potrzebny jest zatem sposób deszyfrowania danych po odbiorze przez zespół odbiorczy retransmisji tylko pewnej ilości bloków, bez dodawania zbędnych opóźnień w procesie deszyfrowania. Dodatkowo, sposób taki powinien zapewniać zgodność szybkości transmisji danych zaszyfrowanych i danych niezaszyfrowanych.
Sposób deszyfrowania retransmitowanych danych w szyfrowanym systemie telekomunikacyjnym, w którym odbiera się komunikat zawierający wskaźnik komunikatu i zaszyfrowane bloki, według wynalazku jest charakterystyczny tym, ze odbiera się zaszyfrowane bloki z błędem, wysyła się drugi komunikat żądania retransmisji co najmniej jednego bloku, zaś po odebraniu retransmisji co najmniej jednego bloku bez błędu, generuje się ze wskaźnika komunikatu strumień klucza i deszyfruje się ten co najmniej jeden blok za pomocą strumienia klucza.
Korzystnie, zapisuje się w pamięci wskaźnik komunikatu, a po odebraniu retransmisji co najmniej jednego bloku bez błędu wylicza się, na podstawie zapisanego wskaźnika komunikatu, stan szyfrowania i generuje się strumień klucza ze stanu szyfrowania.
Korzystnie, po odebraniu spośród zaszyfrowanych bloków pierwszego bloku bez błędu, deszyfruje się go za pomocą strumienia klucza.
Korzystnie, gdy wskaźnik komunikatu zawiera tablicę rejestru przesunięcia liniowego sprzęzenia zwrotnego, strumień klucza generuje się przez realizację algorytmu szyfrowania w trybie operacyjnym adresowania licznika N operacji pomnożonej przez B iteracji dla komunikatu o N blokach, gdzie N i B są dodatnimi liczbami całkowitymi.
Korzystnie, gdy wskaźnik komunikatu zawiera tablicę uruchomień, strumień klucza generuje się przez realizację algorytmu szyfrowania w trybie operacyjnym sprzężenia zwrotnego na wyjściu N operacji pomnożonej przez iterację B dla komunikatu o N blokach, gdzie N i B są dodatnimi liczbami całkowitymi.
Sposób według wynalazku, dzięki temu, że zapisuje się i/lub generuje odpowiednie informacje, zmniejsza do minimum, w porównaniu ze sposobami znanymi, czas potrzebny zarówno do odebrania jak i do deszyfracji całego komunikatu, gdy żądana jest retransmisja danych.
Poprawę przepustowości można uzyskać przez zwiększenie prędkości zegara generatora klucza. Jednakże rozwiązanie takie jest niemożliwe praktycznie do zrealizowania w takich systemach, w których problemem jest pobór mocy, ponieważ moc potrzebna dla generatora klucza jest proporcjonalna do prędkości zegara.
Przedmiot wynalazku w przykładach realizacji jest zobrazowany na rysunku, na którym fig. 1 przedstawia odebrany komunikat, w schemacie blokowym; fig. 2 - sieć działań deszyfrowania komunikatów, gdy retransmitowany był jeden lub więcej bloków komunikatu; fig. 3 i fig. 4 - sieć działań deszyfrowania komunikatów za pomocą zachowywania strumienia klucza generowanego z pierwotnej transmisji komunikatu; fig. 5 - sieć działań deszyfrowania komunikatów za pomocą okresowego zachowywania stanu szyfrowania, zaś fig. 6 przedstawia sieć działań deszyfrowania komunikatów za pomocą obliczania stanu szyfrowania.
Przedmiotem wynalazku jest sposób deszyfrowania retransmisji zaszyfrowanych danych, przy czym retransmisja nie obejmuje całego komunikatu. Po pierwotnym odebraniu zaszyfrowanego komunikatu danych, złożonego z wielu bloków, odebrane bloki są określane albo jako błędne, albo jako bezbłędne. Strumień klucza lub stan szyfrowania generuje się i/lub zapisuje albo dla całego komunikatu, albo dla części komunikatu zaleznie od miejsca w pamięci i od czasu szyfrowania. Wprowadza się żądanie retransmisji bloków odebranych błędnie. Kiedy retransmitowane bloki zostaną odebrane bez błędu, strumień klucza zostanie albo wyciągnięty z pamięci, albo wygenerowany z danych zapisanych w pierwotnym odbiorze za182 896 szyfrowanego komunikatu danych. Dzięki temu nie ma potrzeby oczekiwać, aż cały komunikat zostanie odebrany, ani nie trzeba powtórnie deszyfrować danych aby zdeszyfrować cały komunikat. Zatem, deszyfrowanie wybranych części komunikatu realizuje się bez zbędnych opóźnień i bez nadmiarowości.
W jednym z przykładów realizacji odbiera się komunikat zawierający wskaźnik komunikatu i wiele zaszyfrowanych bloków. Kiedy co najmniej jeden blok zostanie odebrany z błędem, wysyła się drugi komunikat z żądaniem retransmisji tego co najmniej jednego bloku. Po odebraniu retransmisji co najmniej jednego bloku bez błędu, generuje się strumień klucza ze wskaźnika komunikatu i deszyfruje się ten co najmniej jeden blok za pomocą strumienia klucza.
Ponadto, kiedy wskaźnik komunikatu zawiera tablicę uruchomień pierwotnych, strumień klucza generuje się przez realizację algorytmu szyfrowania w trybie operacyjnym sprzężenia zwrotnego na wyjściu N operacji pomnożonej przez iteracje B Kiedy wskaźnik komunikatu zawiera tablicę rejestru przesuwu limowego sprzężenia zwrotnego, strumień klucza generuje się przez realizację algorytmu szyfrowania w trybie operacyjnym adresowania licznika N operacji pomnożonej przez B iteracji dla komunikatu o N blokach, gdzie N i B są dodatnimi liczbami całkowitymi, a B oznacza liczbę bitów danych.
Na fig. 1 przedstawiono schemat blokowy odebranego komunikatu zawierającego pewną liczbę błędnie odebranych bloków. Odebrany komunikat 100 zwykle zawiera wskaźnik komunikatu M1 101 i wiele zaszyfrowanych bloków 103, 105, 107, 109 i 111. Wskaźnik komunikatu 101 jest wykorzystywany do synchronizowania stanów wewnętrznych urządzeń szyfrujących, znanych jako generatory klucza. Blok 1 103 został odebrany z 0 błędów, blok 2 105 z jednym błędem, blok 3 107 - bez błędów, blok 4 109 - z dwoma błędami, zaś blok X 111 został odebrany z 0 błędów. X jest liczbą całkowitą oznaczającą ile zaszyfrowanych bloków zostało odebranych w komunikacie 100. W systemie, w którym wprowadza się żądanie retransmisji błędnych bloków, w tym przypadku retransmituje się blok 2 105 i blok 4 109, zakładając, ze wszystkie bloki pomiędzy blokiem 4, a blokiem X były odebrane bez błędu.
Na fig. 2 przedstawiono sieć działań deszyfrowania komunikatów, kiedy retransmituje się jeden lub więcej bloków komunikatu. Sposób ten realizuje się wtedy, gdy komunikat 100 został zaszyfrowany w trybie szyfrowania ze sprzężeniem zwrotnym na wyjściu lub w trybie adresowania licznika. W etapie 201 odbiera się komunikat 100, który zawiera wskaźnik komunikatu 101 i wiele zaszyfrowanych bloków 103, 105, 107, 109 i 111. W etapie 203 sprawdza się każdy blok komunikatu, w celu określenia, czy blok został odebrany z błędem, czy bez błędu. Wykrywanie błędów jest funkcją znaną w tej dziedzinie i obejmuje stosowanie różnych technik, takich jak cykliczne kontrole redundancyjne. Jeżeli w etapie 203 stwierdzi się, ze jakiś blok został odebrany z błędem, wówczas w etapie 205 blok ten zaznacza się jako odebrany z błędem i proces przechodzi do etapu 211. Jeśli w etapie 203 stwierdzi się, że blok został odebrany bez błędu, proces przechodzi do etapu 207. W etapie tym określa się, czy bloki odebrane bez błędu mają być deszyfrowane bezpośrednio, to znaczy przed żądaniem retransmisji bloków odebranych z błędem lub przed bezbłędnym odebraniem retransmisji bloków odebranych uprzednio z błędem. Jeżeli deszyfracja ma się odbyć bezpośrednio, proces przechodzi do etapu 209, w którym ze wskaźnika komunikatu 101 generuje się strumień klucza, przy pomocy którego deszyfruje się bloki odebrane bez błędu i proces przechodzi do etapu 211.
W etapie 211 sprawdza się czy aktualny blok jest ostatnim blokiem komunikatu, jeśli tak proces przechodzi do etapu 213, a w przeciwnym razie proces przechodzi do etapu 203. W etapie 215 zespół telekomunikacyjny żąda retransmisji wszystkich bloków odebranych z błędem. Jeśli retransmisja tych bloków w etapie 217 zostanie odebrana z jednym lub wieloma błędami, proces przechodzi do etapu 215. Jeśli retransmisja tych bloków w etapie 217 zostanie odebrana bez błędu, proces przechodzi do etapu 219, w którym generuje się strumień klucza, a bloki zostają zdeszyfrowane. W etapie 221 jeśli jest to konieczne, następuje powtórzenie etapów 215, 217 i/lub 217. Jeżeli trzeba zdeszyfrować więcej retransmisji bloków, proces jest powtarzany od etapu 219. Jeżeli ma być odebranych więcej bloków, proces jest powtarzany od etapu 217. Jeśli bezpośrednia deszyfracja nie odbyła się w etapie 207, wszystkie bloki zostają zdeszyfrowane w etapie 219. Jeśli bezpośrednia deszyfracja została dokonana
182 896 w etapie 209, wówczas wszystkie bloki nie zdeszyfrowane poprzednio, to znaczy te, które były retransmitowane do zespołu telekomunikacyjnego, zostają zdeszyfrowane w etapie 219.
W alternatywnym sposobie deszyfracji odbiera się komunikat zawierający wskaźnik komunikatu i wiele szyfrowanych bloków. Do deszyfrowania zaszyfrowanych bloków strumień klucza generuje się ze wskaźnika komunikatu. Kiedy co najmniej jeden blok spośród wielu zaszyfrowanych bloków zostanie odebrany z błędem, nadaje się drugi komunikat z żądaniem retransmisji tego co najmniej jednego bloku. Po odebraniu retransmisji tego co najmniej jednego bloku bez błędu, deszyfruje się go za pomocą strumienia klucza.
Na fig. 3 przedstawiono sieć działań alternatywnego deszyfrowania komunikatów, z zapisaniem strumienia klucza wygenerowanego z pierwotnej transmisji komunikatu. W sposobie tym bloki odebrane bez błędu deszyfruje się natychmiast, a bloki odebrane z błędem deszyfruje się po odebraniu bezbłędnej retransmisji bloków danych, za pomocą strumienia klucza wygenerowanego z informacji odebranej wraz z pierwotnie przesłanym komunikatem. W etapie 301 odbiera się komunikat 100 posiadający wskaźnik komunikatu 101 i wiele zaszyfrowanych bloków 103, 105, 107, 109 i 111. W etapie 303 ze wskaźnika komunikatu 101 generuje się strumień klucza dla całego komunikatu 100, jak opisano w odniesieniu do fig. 2, i przechowuje się go tymczasowo lub trwale, zależnie od potrzeby. W etapie 305 inicjalizuje się licznik bloków N, to znaczy N jest ustawiane na 1. W etapie 307 odtwarza się blok N. W etapie 309 określa się, czy blok N został odebrany z błędem. Jeżeli tak, wówczas proces przechodzi do etapu 311, w którym blok N zaznacza się jako odebrany z błędem, a proces przechodzi do etapu 315. Jeśli w etapie 309 blok N został odebrany bez błędu, proces przechodzi do etapu 313, w którym blok N zostaje zdeszyfrowany, a wynik zostaje zapisany. Proces przechodzi do etapu 315, w którym licznik bloków N jest inkrementowany o 1, to znaczy N = N + 1. Jeśli w etapie 317 stwierdzi się, że blok N nie jest ostatnim blokiem komunikatu 100 proces przechodzi do etapu 307. Jeśli w etapie 317 stwierdzi się, ze blok N jest ostatnim blokiem komunikatu 100, wówczas proces przechodzi do etapu 319.
Jeśli w etapie 319 stwierdzi się, że jakiś blok został odebrany z błędem, proces przechodzi do etapu 321, a w przeciwnym razie proces kończy się. W etapie 321 zespół telekomunikacyjny żąda retransmisji wszystkich bloków odebranych z błędem. Jeśli retransmisja takich bloków w etapie 323 zostanie odebrana z jednym lub z wieloma błędami, proces przechodzi do etapu 321. Kiedy retransmisja wszystkich powtórzonych bloków w etapie 323 zostanie odebrana bez błędu, proces przechodzi do etapu 325, w którym odtwarza się powtórzone bloki. Powtórzony blok jest to blok danych, dla którego zaządano retransmisji i retransmisja ta została odebrana bez błędu. W etapie 327 powtórzone bloki zostają zdeszyfrowane za pomocą strumienia klucza wygenerowanego w etapie 303. Każdy powtórzony blok zawiera numer bloku z pierwotnej transmisji, który to numer wykorzystuje się do określenia, która część strumienia klucza jest potrzebna do deszyfracji powtórzonego bloku. Przykładowo, jeśli powtórzonym blokiem jest blok 9, a każdy blok zawiera 200 bitów danych, wówczas 1600 bitów danych poprzedza powtórzony blok 9. Strumieniem klucza użytym do deszyfrowania bloku 9 jest 1600 bitów w strumieniu klucza począwszy od pierwszego bitu użytego do deszyfrowania pierwszego bitu bloku 1. Jeżeli w etapie 329 okaże się, ze jest jeden lub więcej powtórzonych bloków do deszyfrowania, proces przechodzi do etapu 325, a w przeciwnym razie proces przechodzi do etapu 331. Jeśli w etapie 331 okaże się, że wszystkie bloki komunikatu 100 zostały odebrane poprawnie, proces kończy się, a jeśli nie, proces jest kontynuowany od etapu 321.
Ponieważ strumień klucza został już wygenerowany, etapy deszyfrowania 313 i 327 są jedynie etapami sumowania, to znaczy spełniają funkcję różnicy symetrycznej XOR (sumowania modulo 2) odebranego zaszyfrowanego tekstu z wygenerowanym lub zapamiętanym strumieniem klucza, w celu uzyskania jawnego (zdeszyfrowanego) tekstu, który był pierwotnie zaszyfrowany przez urządzenie nadawcze. Odebrany zaszyfrowany tekst nie musi być wprowadzany do generatora klucza do deszyfracji, ponieważ operacja różnicy symetrycznej może być przeprowadzana przez mikroprocesor, procesor sygnału cyfrowego lub inne środki stosowane do realizacji sieci działań z fig. 2 do fig. 6. Dzięki temu, ze generator klucza w tym etapie nie jest wykorzystywany, zaoszczędza się wiele czasu, ponieważ generatory klu182 896 cza działają ze znacznie mniejszymi prędkościami (zwykle 6-50 kHz) niż mikroprocesory, które działają z prędkościami większymi niż 1 MHz.
Na fig. 4 przedstawiono sieć działań szczególnego sposobu deszyfracji komunikatów z zapisywaniem strumienia klucza wygenerowanego z pierwotnej transmisji komunikatu. Zgodnie z tym sposobem cały komunikat deszyfruje się po odebraniu bezbłędnej retransmisji danych, za pomocą strumienia klucza wygenerowanego z informacji otrzymanej z pierwotnie nadawanego komunikatu. W etapie 401 odbiera się komunikat 100 posiadający wskaźnik komunikatu 101 i wiele zaszyfrowanych bloków 103, 105, 107, 109 i 111. W etapie 403 strumień klucza dla całego komunikatu 100 generuje się ze wskaźnika komunikatu 101, jak opisano w odniesieniu do fig. 2 i 3, i zapisuje się go tymczasowo lub trwale, zależnie od potrzeby. W etapie 405 inicjalizuje się licznik N, to znaczy N jest ustawiane na 1. W etapie 407 odtwarza się blok N. W etapie 409 określa się, czy blok N został odebrany z błędem. Jeśli tak, to proces przechodzi do etapu 411, w którym blok N zaznacza się jako odebrany błędnie, a proces przechodzi dalej do etapu 413. Jeśli w etapie 409 stwierdzi się, że blok N został odebrany bez błędu, proces jest kontynuowany w etapie 413, w którym licznik bloku N jest inkrementowany o jeden, to znaczy N = N + 1. Jeśli w etapie 415 stwierdzi się, ze blok N nie jest ostatnim blokiem komunikatu 100, proces przechodzi do etapu 407. Jeśli w etapie 415 okaze się, że blok N jest ostatnim blokiem komunikatu 100, proces przechodzi do etapu 417.
Jeśli w etapie 417 okaże się, że jakiś blok został odebrany w etapie 409 błędnie, proces przechodzi do etapu 419, a w przeciwnym razie proces kończy się. W etapie 419 zespół telekomunikacyjny żąda retransmisji wszystkich bloków odebranych z błędem. Jeśli retransmisja takich bloków zostanie odebrana z jednym lub kilkoma błędami w etapie 421, wówczas proces przechodzi do etapu 419. Jeżeli retransmisja wszystkich takich bloków zostania odebrana w etapie 421 bez błędu, proces przechodzi do etapu 423, w którym cały komunikat 100 zostanie zdeszyfrowany za pomocą strumienia klucza wygenerowanego w etapie 403. Ponieważ strumień klucza został już wygenerowany, etap deszyfracji 423 jest jedynie etapem sumowania, to znaczy przeprowadza się operację logiczną różnicy symetrycznej XOR (sumowania modulo 2) odebranego zaszyfrowanego tekstu z wygenerowanym lub zapisanym strumieniem klucza, w celu uzyskania jawnego (odszyfrowanego) tekstu, który był pierwotnie zaszyfrowany przez urządzenie nadawcze.
Strumień klucza jest zatem zapisywany i wykorzystywany do deszyfrowania części lub całości komunikatu danych, kiedy części komunikatu zostały odebrane po retransmisji, bez konieczności powtórnej generacji lub retransmisji strumienia klucza i bez oczekiwania, aż cały komunikat zostanie odebrany bez błędu, w celu wygenerowania strumienia klucza i zdeszyfrowania całego komunikatu. Podobnie deszyfrowanie wybranych retransmisji jest możliwe bez konieczności powtórnej deszyfracji całego komunikatu lub deszyfracji wszystkich poprzednich bloków komunikatu.
W innym alternatywnym sposobie deszyfracji, w którym odbiera się komunikat zawierający wskaźnik komunikatu i wiele zaszyfrowanych bloków, zapisuje się stan szyfrowania dla każdego K-tego bloku spośród zaszyfrowanych bloków, gdzie K jest dodatnią liczbą całkowitą. Kiedy co najmniej jeden blok spośród zaszyfrowanych bloków zostanie odebrany z błędem, wysyła się drugi komunikat żądający retransmisji tego co najmniej jednego bloku. Po odebraniu bez błędu retransmisji tego co najmniej jednego bloku generuje się strumień klucza, na podstawie zapisanego stanu szyfrowania, i deszyfruje się ten co najmniej jeden blok za pomocą tego strumienia klucza.
Na fig. 5 przedstawiono sieć działań alternatywnego sposobu deszyfracji komunikatów z tymczasowym zapisywaniem stanu szyfrowania. Sposób ten zapewnia kompromis pomiędzy miejscem w pamięci a czasem deszyfracji. Stan szyfrowania zapisuje się co każde K bloków, co wymaga dwóch pamięci. Jedna pamięć o pojemności N bloków służy do przechowywania odebranych bloków, a druga pamięć zawiera N podzielone przez K stanów szyfrowania. Według tego sposobu stan szyfrowania zapisuje się okresowo. Zapisany stan szyfrowania wykorzystuje się do powtórnego inicjalizowania generatora klucza dla tej części komunikatu, która zawiera blok retransmitowany. Parametr K zapewnia kompromis między czasem deszyfracji, a miejscem w pamięci. Im większe jest K, tym dłuższy może być czas deszyfracji, ale potrze8
182 896 ba mniej miejsca w pamięci. Przy stosowaniu sposobu według fig. 4 bloki odebrane bez błędu deszyfruje się bezpośrednio, a bloki odebrane z błędem deszyfruje się po odebraniu bez błędu retransmisji danych. Alternatywnie, wszystkie bloki można zapisać i zdeszyfrować równocześnie po poprawnym odebraniu wszystkich powtórzonych bloków, np. gdy komunikaty są krótkie.
W etapie 501 odbiera się komunikat 100 zawierający wskaźnik komunikatu 101 i wiele zaszyfrowanych bloków 103, 105, 107, 109 i 111. W etapie 503 wskaźnik komunikatu 101 ustawia się jako stan szyfrowania dla generatora klucza. Stan szyfrowania jest to wewnętrzny punkt generatora klucza w generowanej przez niego pseudoprzypadkowej sekwencji nazywanej strumieniem klucza. Stan szyfrowania zawiera całą informację potrzebną do ustawienia dwóch różnych generatorów klucza w tym samym miejscu w strumieniu danych, tak żeby generator deszyfrujący klucza mógł prawidłowo deszyfrować to, co zaszyfrował generator szyfrujący klucza. Stan szyfrowania dla trybu pracy ze sprzężeniem zwrotnym na wyjściu jest to taki stan generatora klucza, który składa się z pewnej liczby ostatnich bitów w strumieniu klucza poprzednio deszyfrowanego bloku, które są potrzebne do prawidłowego inicjalizowania generatora klucza, w celu zdeszyfrowania następnego bloku. W korzystnym przykładzie realizacji stosuje się 64 bity. Stan szyfrowania dla trybu pracy adresowania licznika CA jest to stan rejestru przesuwu liniowego sprzężenia zwrotnego LFSR, którego dane są wymagane do prawidłowego inicjalizowania rejestru przesuwu liniowego sprzężenia zwrotnego LFSR dla deszyfracji następnego bloku. W korzystnym przykładzie wykonania jako stan szyfrowania wykorzystuje się 64 bity rejestru przesuwu liniowego sprzężenia zwrotnego LFSR.
W etapie 505 inicjalizuje się licznik bloku N, to znaczy N ustawia się na 1. W etapie 507 odtwarza się blok N. W etapie 509 blok N zostaje zdeszyfrowany przez doprowadzenie danych bloku N do generatora klucza, to znaczy deszyfrowanie jest normalne. W etapie 511 określa się, czy blok N został odebrany z błędem. Jeśli tak to proces przechodzi do etapu 513, w którym blok N zaznacza się jako odebrany z błędem, a zdeszyfrowany blok N zostaje odrzucony w etapie 515. Jeżeli w etapie 511 stwierdzi się, ze blok N został odebrany bez błędu, proces przechodzi do etapu 517, w którym zapisuje się wynik deszyfrowania bloku N. Jeśli w etapie 519 N modulo K jest 0, proces przechodzi do etapu 521 w którym zapisuje się stan szyfrowania po deszyfracji bloku N. Stan generatora klucza po deszyfracji bloku N jest stanem początkowym do deszyfrowania bloku N + 1. Dla trybu pracy ze sprzężeniem zwrotnym na wyjściu zapisuje się stan generatora klucza. Dla trybu pracy adresowania licznika CA zapisuje się stan rejestru przesuwu liniowego sprzężenia zwrotnego LFSR. Jeśli w etapie 519 N modulo K nie jest równe zeru, proces przechodzi do etapu 523. W etapie 523 licznik bloku N jest inkrementowany o 1, to znaczy N = N + 1. Jeśli w etapie 525 okaże się, że blok N nie jest ostatnim blokiem komunikatu 100, proces przechodzi do etapu 507. Jeśli w etapie 525 okaże się, że blok N jest ostatnim blokiem komunikatu 100, proces przechodzi do etapu 527.
Jeśli w etapie 527 stwierdzi się, że jakiś blok został odebrany błędnie w etapie 511, proces przechodzi do etapu 529, a w przeciwnym razie proces kończy się. W etapie 529 zespół telekomunikacyjny żąda retransmisji wszystkich bloków odebranych z błędem. Jeśli retransmisja takich bloków zostanie odebrana w etapie 531 z jednym lub wieloma błędami, proces przechodzi do etapu 529. Kiedy retransmisja wszystkich powtórzonych bloków zostanie odebrana w etapie 531 bez błędu, proces przechodzi do etapu 533, w którym powtórzony blok zostaje odtworzony. W etapie 535 stan szyfrowania zostaje odtworzony z ostatniej zapisanej wartości przed numerem bloku powtórzonego bloku. Inaczej mówiąc, jeśli stan generatora klucza zapisuje się co K-ty blok, numer stanu generatora klucza, który powinien zostać odtworzony w celu deszyfrowania bloku N, jest to stan, który został zapisany po numerze bloku określonym jako:
K* {część całkowita (N-1)/K}.
Przykładowo, jeśli powtórzonym blokiem jest blok 30, K = 4, a zapisane zostały bloki 28 i 32, wówczas stan szyfrowania, który ma być odtworzony w celu deszyfracji bloku 30, jest z bloku 4*{część całkowita (30-1 )/4} = 4*7 = 28, to znaczy odtwarza się stan szyfrowania bloku 28. W etapie 537 stan szyfrowania odtworzony w etapie 535 zostaje wprowadzony do generatora klucza i bloki aż do K bloków, zaczynając od bloku, którego stan został odtworzo182 896 ny, a kończąc na powtórzonym bloku, są deszyfrowane normalnie, to znaczy przez wprowadzenie odebranego szyfrowanego tekstu do generatora klucza. Przy zapisywaniu każdego K-tego bloku w najgorszym przypadku liczba bloków, które mają być deszyfrowane, wynosi K. Bieżąca liczba bloków przeznaczona do deszyfracji jest określona jako:
K, jeśli N modulo K jest 0;
N modulo K, w innym przypadku.
Jeśli w etapie 539 okaże się, że jest jeden lub więcej powtórzonych bloków do deszyfracji, proces jest kontynuowany w etapie 533, a w przeciwnym razie proces przechodzi do etapu 541. Jeśli w etapie 541 wszystkie bloki komunikatu 100 zostaną odebrane poprawnie, proces kończy się, a jeśli nie to proces przechodzi do etapu 529.
Poniższa tabela zawiera informacje dotyczące systemu, w którym K = 3, przy czym odtwarzanym stanem jest stan szyfrowania zapisany po deszyfracji bloku N.
N N modulo K Stan odtworzony Liczba bloków do deszyfracji
1 1 0(MI) 1
2 2 0(MI) 2
3 0 0(MI) 3
4 1 3 1
5 2 3 2
6 0 3 3
7 1 6 1
8 2 6 2
9 0 6 3
Według jeszcze innego sposoby deszyfracji odbiera się komunikat zawierający wskaźnik komunikatu i wiele zaszyfrowanych bloków, zwłaszcza gdy stosuje się urządzenie szyfrujące pracujące w trybie adresowania licznika CA. Zapisuje się wskaźnik komunikatu. Kiedy co najmniej jeden blok spośród wielu zaszyfrowanych bloków zostanie odebrany z błędem, nadaje się drugi komunikat, żądający retransmisji tego co najmniej jednego bloku. Po odebraniu bez błędu retransmisji tego co najmniej jednego bloku, oblicza się stan szyfrowania na podstawie zapisanego wskaźnika komunikatu, a strumień klucza generuje się na podstawie stanu szyfrowania, i za pomocą tego strumienia klucza deszyfruje się ten co najmniej jeden blok.
Na fig. 6 przedstawiono sieć działań alternatywnego sposobu deszyfracji komunikatów przez obliczanie stanu szyfrowania. Zgodnie z tym sposobem bloki odebrane bez błędu deszyfruje się bezpośrednio, a bloki odebrane z błędem deszyfruje się po odebraniu bez błędu retransmisji danych. Alternatywnie, wszystkie bloki można zapisywać i deszyfrować równocześnie po prawidłowym odebraniu wszystkich powtórzonych bloków, np. kiedy komunikaty są krótkie.
W etapie 601 odbiera się komunikat 100 zawierający wskaźnik komunikatu 101 i wiele zaszyfrowanych bloków 103, 105, 107, 109 i 111. W etapie 603 wskaźnik komunikatu 101 zostaje ustawiony jako stan szyfrowania dla generatora klucza, jak to opisano w odniesieniu do etapu 503 z fig. 5.
W etapie 605 inicjalizuje się licznik bloku N, to znaczy N zostaje ustawiane na 1. W etapie 607 odtwarza się blok N. W etapie 609 blok N zostaje zdeszyfrowany przez doprowadzenie danych bloku N do generatora klucza, to znaczy deszyfracja jest normalna. W etapie 611 określa się, czy blok N został odebrany z błędem. Jeżeli tak, to proces przechodzi do etapu 613
182 896 w którym blok N zostaje zaznaczany jako odebrany z błędem, a zdeszyfrowany blok N zostaje odrzucany w etapie 615. Alternatywnie, funkcja deszyfracji etapu 609 może być dołączona do etapu 617, a w takim przypadku etap 609 ulega skasowaniu (po etapie 607 następuje etap 611). Jeśli w etapie 611 blok N zostanie odebrany bez błędu, proces przechodzi do etapu 617, w którym zapisuje się wynik deszyfrowania bloku N. W etapie 619 licznik bloku N jest inkrementowany o 1, to znaczy N = N +1. Jeśli w etapie 621 okaże się, ze blok N nie jest ostatnim blokiem komunikatu 100, proces przechodzi do etapu 607. Jeśli w etapie 621 okaże się, że blok N jest ostatnim blokiem komunikatu 100, proces przechodzi do etapu 623.
Jeżeli w etapie 623 stwierdzi się, że jakiś blok został odebrany w etapie 611 z błędem, proces przechodzi do etapu 625, a w przeciwnym razie proces kończy się. W etapie 625 zespół telekomunikacyjny żąda retransmisji wszystkich bloków odebranych błędnie. Jeśli retransmisja takich bloków zostanie odebrana w etapie 627 z jednym lub wieloma błędami, proces przechodzi do etapu 625. Kiedy retransmisja wszystkich powtórzonych bloków zostanie odebrane w etapie 627 bez błędu, proces przechodzi do etapu 629, w którym powtórzony blok zostaje odtworzony. W etapie 631 wylicza się stan szyfrowania. Dla pracy w trybie adresowania licznika CA stan szyfrowania jest stanem rejestru przesuwu liniowego sprzężenia zwrotnego LFSR, który jest wyliczany ze wskaźnika komunikatu, wielomianu generatora rejestru przesuwu liniowego sprzężenia zwrotnego LFSR i numeru bloku. Stan rejestru przesuwu liniowego sprzężenia zwrotnego LFSR użyty do deszyfrowania bloku N jest stanem początkowym zapisanym przy deszyfrowaniu bloku N - 1. Do określenia stanu rejestru przesuwu liniowego sprzężenia zwrotnego LFSR potrzebna jest liczba bitów poprzedzających blok N. Jeśli każdy blok ma taką samą liczbę bitów B, wówczas N*B (N pomnożone przez B) jest całkowitą liczbą bitów odebranych przed blokiem N i odzwierciedla również liczbę iteracji wielomianu generatora rejestru przesuwu liniowego sprzężenia zwrotnego LFSR wykonanych pomiędzy wskaźnikiem komunikatu a blokiem N. Stan rejestru przesuwu liniowego sprzężenia zwrotnego LFSR jest resztą z równania:
XN*B -- wielomian generatora.
Jeśli, przykładowo, wielomian generatora 64-bitowego rejestru przesuwu liniowego sprzężenia zwrotnego LFSR wynosi:
x62 + x46 + x38 + x27 + x15 + x° to powyższe równanie ma postać:
XN*B + (x62 + x46 + x38 + x27 + x15 + x°).
Wzór reszty podziału wielomianu jest następujący:
x63 + x59 + x51 + x46 + x40 + χ35 + χ31 + χ26 + χ19 + χ14 + χ8 + co byłoby stanem rejestru przesuwu liniowego sprzężenia zwrotnego LFSR dla bloku N.
W etapie 633 stan szyfrowania zostaje zapisany w generatorze klucza. W etapie 635 powtórzony blok zostaje zdeszyfrowany normalnie, to znaczy przez wprowadzenie odebranego zaszyfrowanego tekstu do generatora klucza. Jeśli w etapie 637 okaże się, ze jest jeden lub więcej powtórzonych bloków do deszyfracji, wówczas proces przechodzi do etapu 629, a w przeciwnym razie proces przechodzi do etapu 639. Jeśli w etapie 639 okaże się, że wszystkie bloki z komunikatu 100 zostały odebrane prawidłowo, proces kończy się, a w przeciwnym razie proces przechodzi do etapu 625.
W znanych systemach szyfrowania, deszyfrację przeprowadza się przez podawanie zaszyfrowanego strumienia danych do generatora klucza, który generuje strumień klucza zgodnie z trybem operacji szyfrowania i bezpośrednio deszyfruje się zaszyfrowany komunikat przez sumowanie (zwykle za pomocą logicznej operacji różnicy symetrycznej dla informacji cyfrowej) strumienia klucza z zaszyfrowanym komunikatem, w celu uzyskania jawnego tekstu (nie zaszyfrowanego). Typowy generator klucza deszyfruje komunikat bit po bicie (lub znak po znaku), to znaczy jeden bit (znak) zaszyfrowanych danych wprowadzony do generatora klucza daje jeden bit (znak) strumienia klucza, który jest sumowany z wejściowym bitem (znakiem), by uzyskać jeden bit (znak) zdeszyfrowanych danych na wyjściu generatora klucza. Etap sumowania może być łatwo i szybko realizowany za pomocą mikroprocesora pracującego np. z częstotliwością 1 MHz. Jednakże generowanie strumienia klucza jest ograni182 896 czone przez częstotliwość, z którą może pracować generator klucza, zazwyczaj jest to 6 - 50 kHz. Zatem rzeczywisty czas zarówno generowania strumienia klucza jak i deszyfracji zaszyfrowanego komunikatu jest ograniczony zasadniczo przez maksymalną częstotliwość, z którą generator klucza może działać.
182 896
ODBIÓR KOMUNIKATU
301
FIG. 3
JL
GENEROWANIE STRUMIENIA KLUCZA ZE WSKAŹNIKA KOMUNIKATU
KONIEC
325
327
182 896 f START 1
T
ODBIÓR KOMUNIKATU
401
FIG. 4
GENEROWANIE STRUMIENIA KLUCZA ZE WSKAŹNIKA KOMUNIKATU
KONIEC
182 896
501
ODBIÓR KOMUNIKATU
FIG. 5
WSKAŹNIK KOMUNIKATU / JAKO STAN SZYFROWANIA
529
ŻĄDANIE POWTÓRNEGO NADA-I
505 INICJALIZACJA LICZNIKA BLOKÓW. N=1
_
r
λ ODTWORZENIE BLOKU N
507 7L
DESZYFROWANIE BLOKU NI
ZAZNACZENIE λ TAK / ' BLOK \
BLOKU N Z N Z BŁĘ- \
BŁĘDEM < DEM? f *T
182 896 ( START
FIG. 6
601
603
605
607 y^^OBtóR^<CWNIIWn^J| y 625
WSKAŹNIK KOMUNIKATU JAKO STAN SZYFROWANIA . INICJALIZOWANIE / LICZNIKA BLOKÓW: N=1
ODTWARZANIE BLOKU N
ODTWORZENIE POWTÓRNEGO BLOKU \ |X 629 /
ZAZN> NIE BL< ZBŁĘ \CZE3KU N DEM
1 615 L/
ODRZUCENIE ZDESZYFROWANEGO BLOKU
DESZYFROWANIE BLOKU Ni / PRZEZ GENERATOR KLUCZA]
ZAPISANIE ZDESZYFROWANEGO BLOKU N
623
OBLICZEŃ SZYFRC 1E STANU WANIA
r
ZAPISAŃ SZYFRÓW NERATOR. E STANU ANIA W GEJE KLUCZA
DESZYFROWANIE , PRZEZ GENERATOR KLUCZA |
\
631
633
635
KONIEC
182 896
ΙΰΩ
FIG. 1
101
103 <3>
109 χ 111
101 = WSKAŹNIK KOMUNIKATU 103 = BLOK 1,0 BŁĘDÓW 105 = BLOK 2,1 BŁĄD 107 = BLOK 3, OBŁĘDÓW 109 = BLOK 4, 2 BŁĘDY 111= BLOK X, 0 BŁĘDÓW
FIG. 2
Departament Wydawnictw UP RP. Nakład 60 egz. Cena 4,00 zł.

Claims (5)

  1. Zastrzeżenia patentowe
    1. Sposób deszyfrowania retransmitowanych danych w szyfrowanym systemie telekomunikacyjnym, w którym odbiera się komunikat zawierający wskaźnik komunikatu i zaszyfrowane bloki, znamienny tym, ze odbiera się zaszyfrowane bloki z błędem, wysyła się drugi komunikat żądania retransmisji co najmniej jednego bloku, zaś po odebraniu retransmisji co najmniej jednego bloku bez błędu, generuje się ze wskaźnika komunikatu strumień klucza i deszyfruje się ten co najmniej jeden blok za pomocą strumienia klucza.
  2. 2. Sposób według zastrz. 1, znamienny tym, ze zapisuje się w pamięci wskaźnik komunikatu, a po odebraniu retransmisji co najmniej jednego bloku bez błędu wylicza się, na podstawie zapisanego wskaźnika komunikatu, stan szyfrowania i generuje się strumień klucza ze stanu szyfrowania.
  3. 3. Sposób według zastrz. 2, znamienny tym, że po odebraniu spośród zaszyfrowanych bloków pierwszego bloku bez błędu, deszyfruje się go za pomocą strumienia klucza.
  4. 4. Sposób według zastrz. 1, znamienny tym, że gdy wskaźnik komunikatu zawiera tablicę rejestru przesuwu liniowego sprzężenia zwrotnego, strumień klucza generuje się przez realizację algorytmu szyfrowania w trybie operacyjnym adresowania licznika N operacji pomnożonej przez B iteracji dla komunikatu o N blokach, gdzie N i B są dodatnimi liczbami całkowitymi.
  5. 5. Sposób według zastrz. 1, znamienny tym, że gdy wskaźnik komunikatu zawiera tablicę uruchomień, strumień klucza generuje się przez realizację algorytmu szyfrowania w trybie operacyjnym sprzężenia zwrotnego na wyjściu N operacji pomnożonej przez iterację B dla komunikatu o N blokach, gdzie N i B są dodatnimi liczbami całkowitymi.
PL97324462A 1996-05-17 1997-04-23 Sposób deszyfrowania retransmitowanych danych w szyfrowanym systemie telekomunikacyjnym PL182896B1 (pl)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/649,098 US5809148A (en) 1996-05-17 1996-05-17 Decryption of retransmitted data in an encrypted communication system
PCT/US1997/006847 WO1997044934A1 (en) 1996-05-17 1997-04-23 Decryption of retransmitted data in an encrypted communication system

Publications (2)

Publication Number Publication Date
PL324462A1 PL324462A1 (en) 1998-05-25
PL182896B1 true PL182896B1 (pl) 2002-03-29

Family

ID=24603462

Family Applications (1)

Application Number Title Priority Date Filing Date
PL97324462A PL182896B1 (pl) 1996-05-17 1997-04-23 Sposób deszyfrowania retransmitowanych danych w szyfrowanym systemie telekomunikacyjnym

Country Status (13)

Country Link
US (1) US5809148A (pl)
EP (1) EP0839417B1 (pl)
JP (1) JP4124485B2 (pl)
CN (1) CN1124718C (pl)
AU (1) AU3203597A (pl)
BR (1) BR9702266A (pl)
CA (1) CA2226716C (pl)
DE (1) DE69722891T2 (pl)
HK (1) HK1016375A1 (pl)
IL (1) IL122521A (pl)
PL (1) PL182896B1 (pl)
RU (1) RU2146421C1 (pl)
WO (1) WO1997044934A1 (pl)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5931915A (en) 1997-05-13 1999-08-03 International Business Machines Corporation Method for processing early arrival messages within a multinode asynchronous data communications system
GB2348583A (en) * 1999-03-31 2000-10-04 Adaptive Broadband Ltd Automatic re-transmission of data
FI109252B (fi) 1999-04-13 2002-06-14 Nokia Corp Tietoliikennejärjestelmän uudelleenlähetysmenetelmä, jossa on pehmeä yhdistäminen
EP1350153B1 (en) * 2000-12-15 2012-07-11 Polycom, Inc. System and method for device co-location discrimination
US20030112978A1 (en) * 2001-12-17 2003-06-19 Jeffrey Rodman System and method for secured data transmission within a wireless communication system
JP4891521B2 (ja) * 2003-03-28 2012-03-07 三洋電機株式会社 データ入出力方法、およびその方法を利用可能な記憶装置およびホスト装置
US7472285B2 (en) * 2003-06-25 2008-12-30 Intel Corporation Apparatus and method for memory encryption with reduced decryption latency
US7257225B2 (en) * 2003-12-29 2007-08-14 American Express Travel Related Services Company, Inc. System and method for high speed reversible data encryption
AU2006332006A1 (en) * 2005-12-22 2007-07-05 Interdigital Technology Corporation Method and apparatus for data security and automatic repeat request implementation in a wireless communication system
US8204216B2 (en) * 2006-10-23 2012-06-19 Alcatel Lucent Processing method for message integrity with tolerance for non-sequential arrival of message data
EP2087643B1 (en) * 2006-10-23 2020-02-12 Nokia of America Corporation Processing method for message integrity with tolerance for non-sequential arrival of message data
US8122247B2 (en) 2006-10-23 2012-02-21 Alcatel Lucent Processing method for message integrity with tolerance for non-sequential arrival of message data
CN101542962B (zh) * 2006-11-21 2013-11-06 朗讯科技公司 容许消息数据的非顺序到达的消息完整性的处理方法
US9071964B2 (en) * 2011-09-16 2015-06-30 Motorola Solutions, Inc. Method and apparatus for authenticating a digital certificate status and authorization credentials
CN102833065B (zh) * 2012-08-07 2015-02-04 深圳光启创新技术有限公司 基于多用户异步加密的发射装置及方法、接收装置及方法
CN102820922B (zh) * 2012-07-31 2014-12-24 深圳光启创新技术有限公司 一种异步加密可见光通信方法及系统
EP2882117B1 (en) 2012-07-31 2017-07-05 Kuang-Chi Intelligent Photonic Technology Ltd. Visible light encryption method, decryption method, communication device and communication system
EP3183836B1 (en) * 2014-08-19 2018-01-10 Telefonaktiebolaget LM Ericsson (publ) Generating cryptographic checksums
US9942211B1 (en) * 2014-12-11 2018-04-10 Amazon Technologies, Inc. Efficient use of keystreams
IN2015CH05211A (pl) * 2015-09-29 2015-10-16 Wipro Ltd
US11100250B2 (en) * 2017-09-05 2021-08-24 Philips Healthcare Informatics, Inc. Controlling access to data in a health network
GB201721608D0 (en) * 2017-12-21 2018-02-07 Nordic Semiconductor Asa A hardware cipher engine
WO2023288117A1 (en) * 2021-07-16 2023-01-19 Timothy James Regan Method for encrypted communication between systems using parallel key banks and reduced character sets

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4654480A (en) * 1985-11-26 1987-03-31 Weiss Jeffrey A Method and apparatus for synchronizing encrypting and decrypting systems
GB2204465B (en) * 1987-05-01 1991-06-19 Philips Electronic Associated A method of and an arrangement for digital signal encryption
JPH0362630A (ja) * 1989-07-31 1991-03-18 Nec Eng Ltd 衛星通信方式
NZ237080A (en) * 1990-03-07 1993-05-26 Ericsson Telefon Ab L M Continuous synchronisation for duplex encrypted digital cellular telephony
US5148485A (en) * 1990-07-20 1992-09-15 Ericsson Ge Mobile Communications Holding, Inc. Encrypton system for digital cellular communications
US5091942A (en) * 1990-07-23 1992-02-25 Ericsson Ge Mobile Communications Holding, Inc. Authentication system for digital cellular communications
US5199069A (en) * 1991-02-25 1993-03-30 Motorola, Inc. Automatic encryption selector
US5195136A (en) * 1991-09-30 1993-03-16 Motorola, Inc. Method and apparatus for data encryption or decryption
JPH0812537B2 (ja) * 1993-03-11 1996-02-07 日本電気株式会社 暗号化装置
US5598470A (en) * 1994-04-25 1997-01-28 International Business Machines Corporation Method and apparatus for enabling trial period use of software products: Method and apparatus for utilizing a decryption block

Also Published As

Publication number Publication date
HK1016375A1 (en) 1999-10-29
JPH11510036A (ja) 1999-08-31
PL324462A1 (en) 1998-05-25
US5809148A (en) 1998-09-15
CN1194744A (zh) 1998-09-30
RU2146421C1 (ru) 2000-03-10
EP0839417A1 (en) 1998-05-06
CN1124718C (zh) 2003-10-15
DE69722891T2 (de) 2003-12-04
IL122521A (en) 2001-04-30
BR9702266A (pt) 1999-07-20
JP4124485B2 (ja) 2008-07-23
IL122521A0 (en) 1998-06-15
EP0839417B1 (en) 2003-06-18
EP0839417A4 (en) 2000-03-29
CA2226716C (en) 2001-08-28
AU3203597A (en) 1997-12-09
WO1997044934A1 (en) 1997-11-27
CA2226716A1 (en) 1997-11-27
DE69722891D1 (de) 2003-07-24

Similar Documents

Publication Publication Date Title
PL182896B1 (pl) Sposób deszyfrowania retransmitowanych danych w szyfrowanym systemie telekomunikacyjnym
Zeng et al. Pseudorandom bit generators in stream-cipher cryptography
US5483598A (en) Message encryption using a hash function
US4471164A (en) Stream cipher operation using public key cryptosystem
US7200232B2 (en) Method and apparatus for symmetric-key decryption
Maurer New approaches to the design of self-synchronizing stream ciphers
Joux et al. Blockwise-adaptive attackers revisiting the (in) security of some provably secure encryption modes: CBC, GEM, IACBC
US5345507A (en) Secure message authentication for binary additive stream cipher systems
Jueneman Analysis of certain aspects of output feedback mode
WO1993023939A1 (en) A random choice cipher system and method
Golić Linear cryptanalysis of stream ciphers
US5335280A (en) Random sum cipher system and method
US5734721A (en) Anti-spoof without error extension (ANSWER)
US5694473A (en) Decryption of retransmitted data in an encrypted communication system
Simmons Symmetric and asymmetric encryption
RU2027310C1 (ru) Способ передачи и приема с обеспечением подлинности сообщения без его шифрования
JP3224239B2 (ja) スクランブル・デスクランブル装置
RU2099885C1 (ru) Система засекреченной передачи и приема речевой информации, система синхронизации для системы засекреченной передачи и приема речевой информации и устройство шифрации или дешифрации информации для системы засекреченной передачи и приема речевой информации
Filipponi et al. Representation of natural numbers as sums of Fibonacci numbers: an application to modern cryptography
US20010055387A1 (en) Encryption method, decryption method, cryptographic communication system and encryption device
JPS626380B2 (pl)
KR19980063014A (ko) 동기식 스트림 암호의 동기방법 및 그 장치
Naujoks et al. A public key encryption system for defective data transmission
KR100209314B1 (ko) 동기식 스트림 암호의 동기방법 및 그 장치
Kanso Mixer–a new stream cipher

Legal Events

Date Code Title Description
LAPS Decisions on the lapse of the protection rights

Effective date: 20070423