Înregistrați zsuwu cu o legătură liniară de dezactivare cu. Registre semnificative cu o legătură de oprire

Înregistrați zsuwu cu o legătură liniară de dezactivare cu. Registre semnificative cu o legătură de oprire

Ministerul Educației și Științei

UNIVERSITATEA SOCIALĂ DE STAT RUSĂ

FACULTATEA DE TEHNOLOGIA INFORMAȚIEI

DEPARTAMENTUL DE PROTECȚIA INFORMAȚIILOR

Metode și metode criptografice pentru asigurarea securității informațiilor

Lucrări de curs

„R înregistrarea cu o poartă liniară ca generatoare de numere de pseudo-capacitate"

Vikonav:

elev în anul 3

grupa KZVD-3

Larionov I.P.

Verificat:

conf. univ. Baranova O.K.

Moscova 2011
ZMIST

introduce ……………………………..…………………………………….3

  1. Ambuscade teoretice de roboți…………………………………………4
    1. Zagalnye Vidomosti despre înregistrarea unui contract cu guler…………..4
      1. Despre cifrurile de flux cu regulile RgSsLOS……….………10
      2. Despre plierea liniară a secvenței pseudo-căptușite generate de PrgSsLOS………………….……….
      3. Despre independența corelațională a secvenței generate de numere pseudo-incidentale PrCsLOS………..….13
      4. Despre alte moduri de creștere a secvenței generate de numere de pseudo-faze RgSsLOS………………………………………………..14
  2. Implementarea software a RgSsLOS ca generator de pseudo-secvențe….…………………………….15
    1. Schema algoritmului a fost ajustată…………...15
    2. Descrierea modulelor software și a interfeței……….16
    3. Instrucțiunile lui Koristuvach………………………………………………………….20

Visnovok ………………………………………………………………22

Lista de referinte………………………………………………….....23

Anexa A ….………………………………………………………..24


INTRARE

Aceasta implică dezvoltarea unui program software care implementează funcționarea unui generator de numere pseudo-căptușite pe registre cu gateway. Dezvoltarea acestui program cu interfata grafica suna ca al meu C++ pentru sistemul de operare Windows.

Odată cu dezvoltarea criptografiei în secolul al XX-lea, criptografii s-au confruntat cu nevoia de a dezvolta dispozitive și mașini de criptare care să poată cripta și decripta rapid și fiabil mesajele. Acest lucru a fost evident din descoperirea sistemelor de criptare simetrice la acea vreme, dar punctul lor slab a fost stocarea puternică a cheii și secretul acesteia. Cea mai simplă clasă de cifruri care poate fi utilizată în acest scop este cifrul gamut. Sarcina de generare a datelor a fost finalizată, care nu ar fi putut fi dezvăluite înainte de momentul decriptării mesajului. Teoretic, era posibil, de îndată ce zgomotul era în plină desfășurare și se schimba la oră. Cu toate acestea, cu o schimbare complet aleatorie a jocului, ar fi important să se asigure criptarea și decriptarea de încredere a informațiilor. Criptografii au preluat cel mai înalt nivel al acestei sarcini, folosind un algoritm care generează o serie de numere aleatorii bazate pe următoarea regulă: o astfel de secvență trebuie să conțină zerouri și unu la „orice” poziții terminale. , iar numărul de unu și zerourile pot fi aproximativ aceleași. Acest tip de secvență se numeștepseudovipadkova,Fragmentele au fost generate după regula cântării, și nu după ordinea aleatorie.

Soluția a fost găsită. Studiul autorităților registrelor a permis stabilirea faptului că registrul cu link-ul gateway al clădirii generează este rezistent la descifrarea secvenței pseudo-căptușite, înțelegerea fluxului de viață intern al acesteia.


1. Bazele teoretice ale roboților

1.1.Informații finale despre registrul de înregistrare cu guler liniar

Secvențele de registre sunt puternic influențate atât de criptografie, cât și de teoria codificării. Această teorie este dovedită în mod miraculos; cifrurile de flux bazate pe registrele ZSU au fost calul de lucru al criptografiei militare cu mult înainte de apariția electronicii.

Registrul conexiunii cu legătura de retur (denumit în continuare РгССОС) constă din două părți: registrul conexiunii și funcția verigii de retur.Registrul conține succesiunea bătăliilor. Se calculează numărul de pariuridovezhniyu zsuv registruDacă două zile sunt egale cu n biți, atunci registrul este apelatregistru de n biți. Acum, dacă trebuie să vă mișcați un pic, toți biții din registrul curent sunt mutați la dreapta cu 1 poziție. Noul bit din stânga are o funcție care rezolvă biții de registru. La ieșirea noului registru apare unul, numit cel mai tânăr, bit.Perioada de înregistrareSe numește dovzhina secvenței dobândite pe cob de repetiție.

Registrul zsuwu cu link-ul guler

Registrele erau deja foarte conștiente de stagnarea cifrurilor de flux, deoarece acestea erau ușor de implementat folosind echipamente digitale suplimentare. În 1965, Ernst Selmer, principalul criptograf al guvernului norvegian, a dezvoltat teoria secvenței registrelor din lume. Solomon Golomb, un matematician NSA, a scris o carte care rezumă rezultatele sale și rezultatele lui Selmer. Cea mai simplă formă a registrului unui semn cu conjuncție esteînregistrați zsuwu cu un guler liniar ( registru de deplasare cu feedback liniar, cunoscut și sub numele de LFSR sau PrSSLOS) . Legătura de retur a unor astfel de registre este pur și simplu XOR (modulo doi) a biților corespunzători ai registrului, transferul acestor biți se numește secvență tap. Uneori, un astfel de registru se numește configurație Fibonacci. Prin simplitatea secvenței de întoarceri pentru analiza PrgSsLOS, se poate vikoristovyvat pentru a înțelege teoria matematică. După ce ați analizat secvențele de ieșire extrase, puteți trece la adăugarea ieșirilor pentru a fi în siguranță. Cele mai comune registre sunt folosite în criptografie.

Figura RgSsLOS Fibbonaci

U vipadku n -bit RgSsLOS poate fi într-unul N=2n -1 Stand intern. Aceasta înseamnă că, teoretic, un astfel de registru poate genera o secvență pseudo-fazică cu o perioadă de T=2 n -1 bit. (Numărul de tabere interne și aceeași perioadă N = T max = 2 n -1, deoarece RgSSLOS este umplut cu zerouri, ceea ce duce la faptul că registrul existent arată o secvență nesfârșită de zerouri, ceea ce este absolut semnificativ). Numai pentru secvențele vididnyh anterioare, RgSsLOS va trece ciclic prin mustață 2 n -1 stări interne, cum ar fi RgSsLOS єRgSsLOS cu perioada maximă. Rezultatul respingerii se numeștesecvența M.

la fund . Puțin mai mici decât citirile RgSsLOS pe 4 biți cu adăugarea primului și al patrulea biți. Dacă valorile 1111 sunt procesate, atunci următoarele valori interne vor fi acceptate înainte ca registrul să fie repetat:

Numărul de takt zsuwu (tabără internă)

Starea registrelor

Bit de ieșire

Sensul initial

15 (întors la starea inițială)

16 (se repetă stanіv)

Secvența de ieșire va fi o serie de biți semnificativi tineri: 1 1 1 1 0 1 0 1 1 0 0 1 0 0 0 cu perioada T=15, numărul de strofe interne posibile (cu excepția zero) N = 24 -1 = 16-1 = 15 = T max , apoi, secvența este vizibilă – M -Consecventa.

Pentru ca un anumit RgSsLOS să aibă o perioadă maximă, un termen bogat, de creații cu succesiune clară și constantă 1, trebuie să fie urmat de modulul 2. Termenul bogat este reprezentat sub forma unei sume de pași, de exemplu , un pas de termen bogat n arata asa:

anxn +a n-1 x n-1 +…+a 1 x 1 +a 0 x 0 =anxn +a n-1 x n-1 +…+a 1 x+a 0 de a i =(0, 1 ) pentru i = 1 ... n, axi - Indică rangul.

Etapa polinomului este ultima din registrul esențial. Termenul bogat primitiv stadiul n - acesta este un termen bogat care nu poate fi dat, care este termenul x 2n−1 +1, dacă nu este un debitor x d +1 pentru toți d, inclusiv acționarii 2 n -1. O teorie matematică de bază poate fi găsită în.

Nebunul nu poate dormi calea usoara generați termeni bogați primitivi din această etapă după modulul 2. Cea mai simplă modalitate este de a alege un termen bogat în pas și de a verifica care nu sunt primitivi. Nu este ușor și este similar cu o reverificare, dar nu putem ierta numărul aleatoriu - dar există o mulțime de pachete software matematice care pot rezolva această problemă.

Acțiunile, dar, desigur, nu toate componentele bogate ale diferitelor etape, similare cu modulul 2, sunt enumerate în continuare. De exemplu, înregistrați

(32, 7, 5, 3, 2, 1, 0) înseamnă că următorul polinom primitiv este modulo 2: x 32+x7+x5+x3+x2+x+1.

Acest lucru se poate face cu ușurință pentru RGSLOS cu o perioadă maximă. Primul număr este dovzhina RGSSLOS. Numărul rămas este întotdeauna egal cu 0 și poate fi omis. Toate numerele, cu excepția 0, stabilesc secvența de ieșire, numărate de la marginea stângă a registrului. Atunci termenii termenului bogat cu un grad mai mic corespund pozițiilor mai apropiate de marginea dreaptă a registrului.

Cu alte cuvinte, intrarea (32, 7, 5, 3, 2, 1, 0) înseamnă că pentru un registru integral de 32 de biți dat, un nou bit este generat utilizând XOR al altor treizeci, al șaptelea, al cincilea, al treilea și alte pariuri, astfel încât eliberarea RgSsLOS va fi mama dowzhinului maxim, trecând ciclic până când se repetă după 2 32 -1 valoare.

Figura 4 RGSLOS pe 32 de biți cu marjă maximă

Să aruncăm o privire la codul programului RgSsLOS, care are o secvență caracterizată printr-un termen bogat (32, 7, 5, 3, 2, 1, 0). Pe videoclip arata asa:

int LFSR() (

ShiftRegister lung static nesemnat = 1;

/* Toate, crema 0. */

ShiftRegister = ((((ShiftRegister >> 31)

^(ShiftRegister >> 6)

^(ShiftRegister >> 4)

^(ShiftRegister >> 2)

^(ShiftRegister >> 1)

^ShiftRegister))

& 0x00000001)

<<31)

| (ShiftRegister >> 1);

returnează ShiftRegister & 0 x 00000001;)

Dacă registrul esențial este transferat în cuvântul computerizat, codul devine mai complex, dar nu bogat. în plus B A fost furnizat un tabel cu unii dintre cei mai importanți membri ai Modulului 2, pe care îi vom analiza în viitor pentru a identifica puterea acestor mulți membri, precum și implementarea software-ului pentru a determina secvența finală.

Vă rugăm să rețineți că din toate elementele tabelului există un număr nepar de coeficienți. Un astfel de tabel lung a fost creat pentru a lucra în continuare cu RGSSLOS, deoarece RGSSLOS este adesea folosit pentru criptare cu cifruri de flux și în generatoare de pseudo-cifre. În generația noastră, puteți vikorystovat articulații bogate la nivel superior nu mai mult decât asta.

Dacă p(x) este primitiv, atunci i x este primitiv n p(1/x), prin urmare elementul skin al tabelului înseamnă de fapt doi termeni primitivi bogati. De exemplu, dacă (a, b, 0) este primitiv, atunci i (a, a-b, 0) este primitiv. Dacă primitiv (a, b, c, d, 0), atunci primitiv (a, a-d, a-c, a-b, 0). Din punct de vedere matematic:

atât de primitiv x a +x b +1, apoi primitivul i x a +x a-b +1,

atât de primitiv x a +x b +x c +x d +1, apoi primitivul i x a + x a-d + x a-c + x a-b +1. Cele mai multe trinoame primitive sunt implementate în software, astfel încât pentru a genera un nou bit este necesar să XOR mai mult de doi biți din registrul existent (termenul zero nu este inclus, atunci x 0 =1, div. fundul este mai mare). De fapt, toate polinoamele legăturilor conjugate prezentate în tabel sunt rarefiate, deci există trei coeficienți. Rarețea este întotdeauna o sursă de slăbiciune, ceea ce este suficient pentru ca algoritmul să se spargă. Pentru algoritmii criptografici, este mai bine să folosiți termeni mai atractivi, cei care au mulți coeficienți. Membrii mari bogați Zastosovuyuchi, în special ca parte a cheii, pot fi utilizați pentru PrSSLOS mult mai scurt.

Nu este ușor să generați termeni bogați primitivi mari pentru modulul 2. Pentru a genera polinoame primitive la etapa k, trebuie să cunoașteți factorizarea numărului 2 k -1.

Prin ei înșiși, RgSSLOS sunt generatori buni de secvențe pseudo-inferioare, dar pot acționa și ca autorități nenaturale (deterministe). Ultimii biți sunt liniari, deci nu sunt necesari pentru criptare. Pentru RgSSLOS, ultima n stație internă are cei n biți de ieșire înainte ai generatorului. Cu toate acestea, circuitul de poartă este păstrat secret și poate fi atribuit celor 2n biți de ieșire ai generatorului utilizând algoritmul extrem de eficient Berlekamp-Massey.

În plus, numerele mari aleatorii care sunt generate din pariuri aleatorii în succesiune sunt foarte variabile și pentru anumite tipuri de suplimente nu sunt deloc aleatorii. Fără respect pe această pagină, RgSsLOS este adesea folosit pentru a crea algoritmi de criptare. piese de depozit sisteme și algoritmi de criptare.

1.2.Despre cifrurile de flux bazate pe RgSsLOS

Abordarea principală atunci când proiectați un generator pentru fluxul de chei cu reglarea RgSsLOS este simplă. De la început, luați unul sau o așchie de RgSsLOS, apelați cu diferite dovzhins și diferite polinoame ale verigii de cotitură. (Dacă dovzhni sunt reciproc simple, dacă bogăția ligamentelor de poartă este primitivă, atunci generatorul iluminat va avea o dozhină maximă.) Cheia este cob-ul registrelor PrgSsLOS. Acum, dacă este nevoie de un nou bit, puneți Register Register (uneori numit tac) pe bit. Această ieșire este o funcție, probabil neliniară, a diferiților biți ai registrelor PrSSLOS. Această funcție se numește funcție de combinație, iar generatorul se numește generator de combinație. (Deoarece ieșirea este o funcție a unui singur RgSLOS, generatorul este numit generator de filtru.) Cea mai mare parte a teoriei unor astfel de dispozitive a fost dezvoltată de Selmer și Neal Zierler. Puteți introduce pliere joasă. Unele generatoare de diferite RGSSLOS au frecvențe de ceas diferite, uneori frecvența unui generator se află la ieșirea altuia. Toate acestea sunt versiuni electronice ale ideilor de mașini de criptare care au apărut înainte de Războiul Alte Lumini, care se numesc generatoare cu o frecvență de ceas diferită. ceas - generatoare controlate ). Controlul frecvenței de ceas se poate face cu o legătură directă, dacă ieșirea unui PrgSsLOS controlează frecvența de ceas a altui PrgSsLOS, sau cu o conexiune inversă, dacă ieșirea unui PrgSsLOS controlează cealaltă frecvență de ceas. Deși toate aceste generatoare sunt sensibile, acceptăm teoretic, înainte de a deschide investițiile și eventuala corelare, multe dintre ele sunt sigure.

Ian Cassells, care a deținut anterior catedra de matematică pură la Cambridge și a lucrat ca criptoanalist la Bletchly Park, a spus că „criptografia se referă la matematică și înșelăciune, iar fără prostii, matematica poate fi împotriva ta”. Vă rugăm să rețineți că în stream ciphers, pentru a asigura durabilitatea maximă și alte autorități, există structuri matematice necesare, precum RgSSLOS, pentru a forța pe cineva să înlăture modificarea registrului și să dezvăluie algoritmul, este necesar să se facă o acțiune ceea ce o tulburare pliabilă, neliniară. Această regulă este valabilă și pentru algoritmii bloc.

Majoritatea cifrurilor de flux reale se bazează pe RGSLOS. În primele zile ale electronicii, era greu să le amintesc. Registrul real nu este mai mare, există o matrice mai mică de biți, iar secvența porții este un set de supape XOR. Dacă utilizați serverul NVIS, un stream cipher bazat pe RgCsLOS va asigura securitatea completă cu ajutorul mai multor porți logice. Problema cu PrSSLOS este că implementarea software-ului nu mai este eficientă. Este posibil să întâlniți membri bogați rarefiați ai ligamentului rotativ - mirosul tulpinilor corelative este atenuat - și membrii bogati mari ai ligamentului rotativ sunt ineficienti.

Această ramură a criptografiei se dezvoltă rapid și este sub control guvernamental strâns din partea laterală N.S.A. . Majoritatea investigațiilor sunt clasificate - sistemele de criptare militare anonime care sunt exploatate astăzi se bazează pe RgSSLOS. Într-adevăr, majoritatea calculatoarelor Cray (Cray 1, Cray X-MP, Cray Y-MP) au chiar și instrucțiuni numite „număr de populație”. Există o mulțime de unități în registru și îl puteți folosi pentru a calcula eficient Hamming între două cuvinte duble și pentru a implementa o versiune vectorizată a RgSSLOS. Această instrucțiune este supusă instrucțiunilor canonice NSA, care sunt obligatorii pentru toate contractele de calculatoare.

Pe de altă parte, un număr mare de generatoare de pliere au fost create pe baza registrelor existente. Și, desigur, numărul de astfel de generatoare, corupte de instalații criptoanalitice militare, precum NSA, este și mai mare.

1.3.Despre restrângerea liniară a secvenței generate de numere pseudo-paddock PrgCsLOS

Analiza cifrurilor de flux este adesea mai simplă decât cifrurile de bloc inferioare. De exemplu, un parametru important care este utilizat pentru analiza generatoarelor bazate pe RgSSLOS este complexitatea liniară sau intervalul liniar. Vaughn este calculat ca contribuția n a celui mai scurt RgSsLOS, care poate fi ieșirea generatorului. Indiferent de secvența generată de automatul terminal peste câmpul terminal, poate duce la plierea liniară a terminalului. Plierea liniară este importantă deoarece, folosind un algoritm simplu numit algoritmul Berlekamp-Massey, este posibil să se calculeze acest RGSSLOS verificând doar 2n biți din fluxul de chei. Prin crearea RGSSLOS necesar, rupeți cifrul fluxului.

Această idee poate fi extinsă de la câmpuri la inele și picături, dacă secvența de ieșire este văzută ca numere într-un câmp cu caracteristici nepereche. În continuare, ne vom extinde pentru a introduce conceptul de profil de pliere liniară, ceea ce înseamnă plierea liniară a secvenței în lume. Există, de asemenea, concepte de pliere sferică și pătratică. În orice caz, rețineți că plierea liniară mare nu garantează neapărat siguranța generatorului, dar plierea liniară scăzută indică o siguranță insuficientă a generatorului.

1.4.Despre independența corelațională a secvenței generate de numere pseudo-incident PrCsLOS

Criptografia încearcă să elimine complexitatea liniară mare prin combinarea neliniară a rezultatelor diferitelor secvențe de ieșire. În acest caz, problema constă în faptul că una sau mai multe secvențe interne de ieșire - adesea care ies doar din același RGSSLOS - pot fi conectate printr-un flux de taste ascunse și dezvăluite folosind algebră liniară suplimentară. Adesea, astfel de trandafiri sunt numiți trandafiri corelativi sau trandafiri împărțiți și posedați. Thomas Siegenthaler a arătat că independența corelațională poate fi măsurată cu precizie și că există un compromis între independența corelațională și complexitatea liniară.

Ideea principală a analizei corelației este identificarea unei corelații între ieșirea generatorului și ieșirea uneia dintre părțile sale de stocare. Dacă sunteți atent la secvența de ieșire, puteți sări peste informațiile despre această ieșire intermediară. Folosind aceste informații și alte corelații, puteți colecta date despre alte ieșiri intermediare până când generatorul este deteriorat.

Descoperirile corelaționale și variațiile lor, cum ar fi variațiile corelative suedeze, au fost testate cu succes împotriva unei varietăți de generatoare de flux cheie bazate pe PrSSLOS, care demonstrează un compromis între complexitatea computațională și eficiență.

1.5.Despre alte metode de creștere a secvenței generate de numere de pseudo-ocurență PrCsLOS

Găsiți alte modalități de a dezvolta generatoare de fluxuri cheie. Testul de consistență liniară vă permite să aflați subdiviziunea cheii de criptare folosind o tehnică matriceală suplimentară. Există o creștere a corectitudinii „atacului de consistență întâlnire la mijloc”. Algoritmul sindromului liniar se bazează pe capacitatea de a scrie un fragment al secvenței de ieșire sub forma unei secvențe liniare. Se bazează pe cel mai bun atac de aproximare a aflne și pe atacul secvenței derivate. Metodele de criptoanaliza diferențială și liniară pot fi, de asemenea, aplicate cifrurilor de flux.


2. Descrierea implementării software a RgSsLOS ca generator de pseudo-secvențe

2.1.Schema algoritmului a fost ajustată


2.2.Descrierea modulelor software și a interfeței

Mai jos micuțul 3 este prezentat într-o fereastră de programe.

Interfața programului

Meniul are următoarele funcții:

  • Fișier->Salvare apeluri

Această funcție creează un fișier de sunet, în care este scrisă etapa inițială a RgSSLOS, este ieșită secvența, perioada pseudo-secvenței extrase a biților, secvența în sine și tabelul staniv. Odată ce fișierul a fost salvat cu succes, apare o notificare despre salvarea cu succes (Figura 4). Extensia de fișier este *, ceea ce este recomandat. TXT.

Malyunok

  • Fișier->Ieșire

Această funcție va asigura că programele sunt închise.

  • Setați secvența de ieșire

Această funcție formează următoarea secvență, ținând cont de valorile celulelor, pe care le-ați bifat bifând caseta de pe ecran. După aceasta, koristuvacha informează despre crearea următoarei secvențe (Fig. 5). Următoarea secvență indică declanșatoarele care vor declanșa registrul de apeluri XOR pentru deplasarea bitului de turnare. În spatele mișcării legăturilor de retur de la primul declanșator va sta mereu, în lipsa altor legături, va avea loc o prăbușire la stânga cu remanierea pariului tânăr în poziția celui senior.

Malyunok

  • Setați valorile inițiale

Această funcție citește valoarea inițială a registrului introdusă din fereastră Editați | × 1 și reverificarea curentă a valorii introduse în funcție de mințile date: intrări ale unui rând de invalide (micul 6), intrările unui rând egal cu opt (8 octeți = 1 octet, mic 7), intrări ale unui rând cu doar zerouri și/sau unu (micul 8), rând de introduceri non-zero (Malyunok 9). În alte cazuri, apar notificări despre spălare, operatorul este responsabil pentru corectarea acestora și apăsarea din nou pe buton. Dacă verificarea are succes, valorile inițiale vor fi scrise în tabelul din rândul „Inițial” și va fi afișată o notificare (Figura 10).

Malyunok

Malyunok

Malyunok

Malyunok

Malyunok

  • Intră în registru

Această funcție funcționează cu registrul ZSU. Vibrând în mod constant 256 de articulații, articulațiile pielii formează un bit de ieșire al secvenței de pseudo-cădere și un nou registru. Imediat ce registrul devine original, perioada se calculează și se introduce în câmp Notificare 1 Voi elimina secvența pseudo-căptușită.

  • Ajutor suplimentar-> Despre program

Această funcție afișează pe ecran o scurtă descriere a programului și instrucțiuni (Fig. 11).

Malyunok

  • Ajutor suplimentar-> Despre autor

Această funcție afișează informații despre autorul programului (Fig. 12).

Malyunok

2.3.Instrucțiunile lui Koristuvach

  1. Acum setați registrul la valoarea inițială. Poate găzdui toate personajele duble. În caz contrar, va fi afișată o notificare despre resetare și va trebui să corectați valoarea introdusă. Faceți clic pe elementul de meniu „Setare valori inițiale”.
  2. Apoi atribuiți proporțiile porților registrului (secvența dată). Faceți clic pe elementul de meniu „Setați secvența de ieșire”.
  3. Apoi, faceți clic pe elementul de meniu „Salvați înregistrarea”. Înainte de a face acest lucru, asigurați-vă că verificați punctele 1 și 2, altfel va avea loc o resetare a programului.
  4. După extragerea rezultatelor, le puteți salva făcând clic pe elementul de meniu „Fișier->Salvare sunete”. Asigurați-vă că verificați punctele 1-3 înainte de a face acest lucru, altfel va apărea o eroare de program.
  5. Pentru a elimina dovada, apăsați pe elementele de meniu „Fișier->Despre program”, „Fișier->Despre autor”.
  6. Pentru a privi registrul robotului cu diferite valori ale secvenței finale și ale registrului inițial, repetați pașii de la pașii 1-3, introducând alți parametri.


VISNOVOK

În această lucrare, RgSsLOS a fost considerat ca un generator de numere de pseudo-capacitate. Programul poate fi o demonstrație a principiilor registrelor robotizate cu o conexiune de poartă liniară conform XOR . Este posibil să se aplice principiul formării unei secvențe pseudo-faze de bătăi, locația dintre valorile inițiale ale registrului și valorile secvenței pseudo-pad, secvența finală și perioada. . Derivarea gamei pseudo-căptușite poate fi utilizată într-o altă aplicație software (de exemplu, o implementare software a cifrului gama).

În prezent, aceste registre nu sunt folosite ca generatoare independente de numere de pseudo-capacitate, ci fac parte dintr-un depozit de dispozitive pliabile. Cu toate acestea, ei înșiși au introdus noi direcții în matematică (căutarea de termeni primitivi bogați în câmpurile terminale, metode matematice pentru generatoare malefice de numere de pseudo-capacitate). Fără cunoașterea principiilor de funcționare a generatoarelor pe RGSSLOS, nu este posibil să înțelegem funcționarea dispozitivelor de pliere. Datorită implementării sale hardware simple, mirosul a devenit larg răspândit în tehnologie. Investigarea RGSOS a condus la descoperirea de noi cifruri - bloc și flux - bazate pe aceste tipuri de registre (cifr de transfer, DES etc.; EDS, funcții hash).

Cercetarea acestei galuse a îmbunătățit serios dezvoltarea criptografiei și a criptoanalistilor, a EOM și a dispozitivelor și a permis, de asemenea, implementarea altora scăzute. funcțiile coris(de exemplu, coduri ciclice originale).


REFERINȚE

  1. Schneier Bruce. Criptografia aplicată. Protocoale, algoritmi, texte de ieșire ale mele C. - M.: Triumf, 2002
  2. Babash A.V. Aspecte criptografice și automate-teoretice ale securității informației zilnice. Volumul 1 - M: Editura. Centrul EAOI, 2009. - 414 p.
  3. O.S. Selmer. Monografie: Recursie liniară într-un câmp final. Universitatea din Bergen, Norvegia, 1966.
  4. N. Zierler şi J. Brillhart. „Despre trinoame primitive pentru modulul 2”, revista Informare și Control, ediția 13 Nr. 6 sân 1968, pag. 541-544.
  5. K.H. Meyer și U.L. Tuchman. „Codurile pseudo-deteriorate pot fi rău intenționate”, revista Electronic Design, nr. 23, căderea frunzelor 1972 rock.
  6. J.L.Masey. „Uzarizarea registrelor și descifrarea codului Bose-Chowdhury-Hocquengham”, Tranzacții IEEE privind teoria informației, v. IT-15, n . 1, astăzi 1969, pag. 122-127.
  7. S.U. Golombi. Sequence of Registers ZSUVU, San Francisco, Golden Day, 1967 (republicat de Agean Park Press, 1982).



Anexa A

Tabelul unor termeni primitivi bogati pentru modulul 2

(1, 0)

(2, 1, 0)

(3, 1, 0)

(4, 1, 0)

(5, 2, 0)

(6, 1, 0)

(7, 1, 0)

(7, 3, 0)

(8, 4, 3, 2, 0)

(9, 4, 0)

(10, 3, 0)

(11, 2, 0)

(12, 6, 4, 1, 0)

(13, 4, 3, 1, 0)

(14, 5, 3, 1, 0)

(15, 1, 0)

(16, 5, 3.2, 0)

(17, 3, 0)

(17, 5, 0)

(17, 6, 0)

(18, 7, 0)

(18, 5, 2, 1, 0)

(19, 5, 2, 1, 0)

(20, 3, 0)

(21, 2, 0)

(22, 1, 0)

(23, 5, 0)

(24, 4, 3, 1, 0)
(25, 3, 0)

(26, 6, 2, 1, 0)

(27, 5, 2, 1, 0)

(28, 3, 0)

(29, 2, 0)

(30, 6, 4, 1.0)

(31, 3, 0)

(31, 6, 0)

(31, 7, 0)

(31, 13, 0)

(32, 7, 6, 2, 0)

(32, 7, 5, 3, 2, 1, 0)

(33, 13, 0)

(33, 16, 4, 1, 0)

(34, 8, 4, 3, 0)

(34, 7, 6, 5, 2, 1, 0)

(35, 2, 0)

(135, 11, 0)

(135, 16, 0)

(135, 22, 0)

(136, 8, 3, 2, 0)

(137, 21, 0)

(138, 8, 7, 1, 0)

(139, 8, 5, 3, 0)

(140, 29, 0)

(141, 13, 6, 1, 0)

(142, 21, 0)

(143, 5, 3, 2, 0)

(144, 7, 4, 2, 0)

(145, 52, 0)

(145, 69, 0)

(146, 5, 3, 2, 0)

(147, 11, 4, 2, 0)

(148, 27, 0)

(149, 10, 9, 7, 0)

(150, 53, 0)

(151, 3, 0)

(151, 9, 0)

(151, 15, 0)

(151, 31, 0)

(151, 39, 0)

(151, 43, 0)

(151, 46, 0)

(151, 51, 0)

(151, 63, 0)

(151, 66, 0)

(151, 67, 0)

(151, 70, 0)

(36, 11, 0)

(36, 6, 5, 4, 2, 1, 0)

(37, 6, 4, 1, 0)

(37, 5, 4, 3, 2, 1, 0)

(38, 6, 5, 1, 0)

(39, 4, 0)

(40, 5, 4, 3, 0)

(41, 3, 0)

(42, 7, 4, 3, 0)

(42, 5, 4, 3, 2, 1, 0)

(43, 6, 4, 3, 0)

(44, 6, 5, 2, 0)

(45, 4, 3, 1, 0)

(46, 8, 7, 6, 0)

(46, 8, 5, 3, 2, 1, 0)

(47, 5, 0)

(48, 9, 7, 4, 0)

(48, 7, 5, 4, 2, 1, 0)

(49, 9, 0)

(49, 6, 5, 4, 0)

(50, 4, 3, 2, 0)

(51, 6, 3, 1, 0)

(52, 3, 0)

(53, 6, 2, 1, 0)

(54, 8, 6, 3, 0)

(54, 6, 5, 4, 3, 2, 0)

(55, 24, 0)

(55, 6, 2, 1, 0)

(56, 7, 4, 2, 0)

(57, 7, 0)

(57, 5, 3, 2, 0)

(58, 19.0)

(58, 6, 5, 1, 0)

(59, 7, 4, 2, 0)

(59, 6, 5, 4, 3, 1, 0)

(60, 1, 0)

(61, 5, 2, 1, 0)

(62, 6, 5, 3, 0)

(63, 1, 0)

(64, 4, 3, 1, 0)

(65, 18, 0)

(65, 4, 3, 1, 0)

(66, 9, 8, 6, 0)

(66, 8, 6, 5, 3, 2, 0)

(67, 5, 2, 1, 0)

(152, 6, 3, 2, 0)

(153, 1, 0)

(153, 8, 0)

(154, 9, 5, 1, 0)

(155, 7, 5, 4, 0)

(156, 9, 5, 3, 0)

(157, 6, 5, 2, 0)

(158, 8, 6, 5, 0)

(159, 31, 0)

(159, 34, 0)

(159, 40, 0)

(160, 5, 3, 2, 0)

(161, 18, 0)

(161, 39, 0)

(161, 60, 0)

(162, 8, 7, 4, 0)

(163, 7, 6, 3, 0)

(164, 12, 6, 5, 0)

(165, 9, 8, 3, 0)

(166, 10, 3, 2, 0)

(167, 6, 0)

(170, 23, 0)

(172, 2, 0)

(174, 13, 0)

(175, 6, 0)

(175, 16, 0)

(175, 18, 0)

(175, 57, 0)

(177, 8, 0)

(177, 22, 0)

(1 77, 88, 0)

(68, 9, 0)

(68, 7, 5, 1, 0)

(69, 6, 5, 2, 0)

(70, 5, 3, 1, 0)

(71, 6, 0)

(71, 5, 3, 1, 0)

(72, 10, 9, 3, 0)

(72, 6, 4, 3, 2, 1, 0)

(73, 25, 0)

(73, 4, 3, 2, 0)

(74, 7, 4, 3, 0)

(75, 6, 3, 1, 0)

(76, 5, 4, 2, 0)

(77, 6, 5, 2, 0)

(78, 7, 2, 1, 0)

(79, 9, 0)

(79, 4, 3, 2, 0)

(80, 9, 4, 2, 0)

(80, 7, 5, 3, 2, 1, 0)

(81, 4, 0)

(82, 9, 6, 4, 0)

(82, 8, 7, 6, 1, 0)

(83, 7, 4, 2, 0)

(84, 13, 0)

(84, 8, 7, 5, 3, 1, 0)

(85, 8, 2, 1, 0)

(86, 6, 5, 2, 0)

(87, 13, 0)

(87, 7, 5, 1, 0)

(88, 11, 9, 8, 0)

(88, 8, 5, 4, 3, 1, 0)

(89, 38, 0)

(89, 51, 0)

(89, 6, 5, 3, 0)

(90, 5, 3, 2, 0)

(91, 8, 5, 1, 0)

(91, 7, 6, 5, 3, 2, 0)

(92, 6, 5, 2, 0)

(93, 2, 0)

(94, 21, 0)

(94, 6, 5, 1, 0)

(95, 11, 0)

(95, 6, 5, 4, 2, 1, 0)

(96, 10, 9, 6, 0)

(96, 7, 6, 4, 3, 2, 0)

(178, 87, 0)

(183, 56, 0)

(194, 87, 0)

(198, 65, 0)

(201, 14, 0)

(201, 17, 0)

(201, 59, 0)

(201, 79, 0)

(202, 55, 0)

(207, 43, 0)

(212, 105, 0)

(218, 11, 0)

(218, 15, 0)

(218, 71, 0)

(218.83, 0)

(225, 32, 0)

(225, 74, 0)

(225, 88, 0)

(225, 97, 0)

(225, 109, 0)

(231, 26, 0)

(231, 34, 0)

(234, 31, 0)

(234, 103, 0)

(236, 5, 0)

(250, 103, 0)

(255, 52, 0)

(255, 56, 0)

(255, 82, 0)

(258, 83, 0)

(266, 47, 0)

(97, 6, 0)

(98, 11, 0)

(98, 7, 4, 3, 1, 0)

(99, 7, 5, 4, 0)

(100, 37, 0)

(100, 8, 7, 2, 0)

(101, 7, 6, 1, 0)

(102, 6, 5, 3, 0)

(103, 9, 9)

(104, 11, 10, 1, 0)

(105, 16, 0)

(106, 15, 0)

(107, 9, 7, 4, 0)

(108, 31, 0)

(109, 5, 4, 2.0)

(110, 6, 4, 1, 0)

(111, 10, 0)

(111, 49, 0)

(113, 9, 0)

(113, 15, 0)

(113, 30, 0)

(114, 11, 2, 1, 0)

(115, 8, 7, 5, 0)

(116, 6, 5, 2, 0)

(117, 5, 2, 1, 0)

(118, 33, 0)

(119, 8, 0)

(119, 45, 0)

(120, 9, 6, 2, 0)

(121, 18, 0)

(122, 6, 2, 1, 0)

(123, 2, 0)

(124, 37, 0)

(125, 7, 6, 5, 0)

(126, 7, 4, 2, 0)

(127, 1, 0)

(127, 7, 0)

(127, 63, 0)

(128, 7, 2, 1, 0)

(129, 5, 0)

(130, 3, 0)

(131, 8, 3, 2, 0)

(132, 29, 0)

(133, 9, 8, 2, 0)

(134, 57, 0)

(270, 133, 0)

(282, 35, 0)

(282, 43, 0)
(286, 69, 0)

(286, 73, 0)

(294, 61, 0)

(322, 67, 0)

(333, 2, 0)

(350, 53, 0)

(366, 29, 0)

(378, 43, 0)

(378, 107, 0)

(390, 89, 0)

(462, 73, 0)

(521, 32, 0)

(521, 48, 0)

(521, 158, 0)

(521, 168, 0)

(607, 105, 0)

(607, 147, 0)

(607, 273, 0)

(1279, 216, 0)

(1279, 418, 0)

(2281, 715, 0)

(2281, 915, 0)

(2281, 1029, 0)

(3217, 67, 0)

(3217, 576, 0)

(4423, 271, 0)

(9689, 84, 0)


Introducerea stării inițiale (IS)

verificarea corectitudinii intrării

Emiterea notificării cu privire la modificări

Configurarea secvenței de ieșire

Înregistrați ІС în tabelul de stații

Înregistrați i Voi adăuga registrul și bitul de ieșire la tabelul stan

ІС==Moara curgatoare

Salvarea rezultatelor

Reconstituirea pseudo-secvenței

Vikhid

Lansa

Asa de

Asa de

Nu

Registrul obligațiunilor cu un link de guler este formată din două părți: registrul și funcțiile legăturii de poartă.

Fig. 19. Registrul lui zsuwu cu legătura de oprire.

În acest caz, registrul conține succesiunea anumitor elemente ale inelului și câmpului. Cel mai adesea te blochezi bitovînregistrează zsuwu. Viața unui astfel de registru se reflectă în numărul de bătălii. În cazul infecției cutanate, toți biții din registru sunt alocați mâinii drepte într-o singură poziție. Noul bit senior este rezolvat ca o funcție a rezolvării biților de registru. Ieșirea este cel mai mic bit semnificativ. Perioada de registru este denumită a doua zi după secvența de ieșire la începutul repetarii acesteia.

Cel mai simplu tip de registru zsuvu este un registru zsuvu cu un guler liniar (RSLOS sau LRS). O întoarcere este o operație XOR simplă pe anumiți biți dintr-un registru. Fluxul acestor pariuri este indicat termen bogat caracteristic si se numeste succesiune de intrări. Uneori se numește această schemă Configurația Fibonacci.

Fig.20. SLOS lui Fibonacci se modifică.

Când este implementat în software, RLOS este ajustat folosind o schemă modificată: pentru a genera un nou bit, înlocuirea biților, înlocuirea biților victorioși ai secvenței de intrări peste bitul skin, operația este finalizată I XOR generatorul ieșire, înlocuind vechiul bit al secvenței de intrare. Această modificare a inodului se numește Configurația Galois.

Fig.21. RSLOS de configurare Galois.

n-bital RSLOS poate fi într-o zonă 2 n- 1 statii interne. Aceasta înseamnă că teoretic un astfel de registru poate genera o secvență pseudo-căptușită cu perioada 2 n- 1 bit (umplut cu zerouri este absolut marginal). Trecerea tuturor celor 2 n– 1 stații interne sunt posibile numai pentru secvențele anterioare de derivații. Astfel de registre se numesc SLOS cu o perioadă maximă. Pentru a asigura perioada maximă a HFSR, este necesar ca membrul bogat caracteristic al acestuia să fie primitiv pentru modulul 2. Etapa polinomului este ultima din registru. Etapa de membru primitiv bogat n- asta e nevodrivodny membru bogat, care este partener, dar nu partener xd+ 1 pentru toată lumea d, care sunt acționarii 2 n– 1. (Sub ora de discutare a unei game largi de termeni doar un număr fi înlocuit cu termenul termen bogat nereductibil). Termenul bogat caracteristic de ghidare pentru unitățile mici RSLOS:

X 32 + X 7 + X 5 + X 3 + X 2 + X + 1

de remarcat pentru modulul 2. Perioada unui astfel de registru va fi maximă, trecând ciclic prin toate valorile 232 - 1 înainte ca acestea să fie repetate. Cea mai comună utilizare a polinoamelor reciproce este aceea. care poate avea mai puțini coeficienți. Cele mai populare trinome.

Parametru important generator bazat pe RLOS, є pliere liniară. Vaughn este desemnat ca dovzhin n cel mai scurt VSL care poate interfera cu ieșirea generatorului. Plierea liniară este importantă, fragmente în beneficiul simplu Algoritmul Berlenkamp-Messi este posibil să se creeze un astfel de LFSR verificând totul 2 n bitiv gami. Cu RSLOS necesar, cifrul fluxului poate fi rupt cu ușurință.

Registrul zsuwu cu un guler liniar(RSLOS, ing. registru de deplasare cu feedback liniar, LFSR ) - un registru pentru stocarea biților, la care valoare de intrare (se inserează) bitul funcției booleene liniare anterioare din valoarea altor biți ai registrului înainte de salvare. Este posibil să se organizeze atât software cât și hardware. Se folosește pentru generație, pseudo-padocuri, secvențe, bătăi, ce să știi despre stază, suficiență, în criptografie.

Descriere

Registrul este controlat în implementările hardware prin aplicarea unui impuls (numit și tine pasul sau puls de sincronizare) pentru toate mijlocii. Gestionarea registrului în implementările software se realizează într-un ciclu consistent. La fiecare iterație a ciclului se calculează funcția conjuncțiilor și se calculează numărul de bătăi din cuvânt.

Principiul robotului

Pliere liniară

Independența corelațională

Încercând să elimine complexitatea liniară mare a secvenței care este generată, criptografii accesează neliniar la ieșirea mai multor registre. În acest caz, una sau mai multe secvențe de ieșire (sau ieșirile mai multor FSLO) pot fi conectate printr-un flux ascuns și descoperite de un criptoanalist. Răul pe baza unei astfel de dispersii este numit rozetina corelațională. Ideea principală din spatele acestui lucru constă în corelația identificată între puterea generatorului și puterea pieselor sale de stocare. Apoi, respectând secvența de ieșire, puteți elimina informații despre aceste modificări intermediare și, astfel, puteți deteriora generatorul. Thomas Siegenthaler a arătat că independența corelațională poate fi măsurată cu precizie și că există un compromis între independența corelațională și consistența liniară.

Implementarea programului

Implementările software ale RLOS sunt mai eficiente și funcționează mai rapid decât cele scrise în limbaj de asamblare. Una dintre soluții este dezvoltarea paralelă a 16 RLOS (sau 32, care este cel mai vechi cuvânt din arhitectura computerelor). Într-o astfel de schemă, este generată o matrice de cuvinte, a căror dimensiune corespunde registrului anterior, iar fiecare cuvânt este transferat în SLOS-ul său. Cu toate acestea, se obțin numere noi ale următoarelor secvențe, care pot indica un câștig semnificativ în productivitatea generatorului.

Configurația Fibonacci

Să aruncăm o privire la registrul acru de 32 de biți. Pentru toată lumea există o secvență de derivare (32, 31, 30, 28, 26, 1) (\displaystyle \left(32,\;31,\;30,\;28,\;26,\;1\right)). Aceasta înseamnă că pentru a genera un nou bit este necesar să adăugați 31, 30, 29, 27, 25 și 0 biți după operația XOR suplimentară. Respingerea LFSR poate avea o perioadă maximă 2 32 - 1 (\displaystyle 2^(32)-1). Codul unui astfel de registru este:

int LFSR_Fibonacci (void) ( static fără semn lung S = 0x00000001; S = ((((S >> 31 ) ^ (S >> 30 ) ^ (S >> 29 ) ^ (S >> 27 ) ^ (S >> 25) ^ S) și 0x00000001)<< 31 ) | (S >> 1); se intoarce)

Configurația Galois

Acest generator nu are o putere criptografică mare, dar oferă un beneficiu de productivitate: toate operațiunile XOR, cu paralelizare suplimentară, pot fi executate într-o zi, și nu succesiv una după alta, ca în configurația Fibonacci. Schema Qia Există, de asemenea, un avantaj pentru implementarea hardware.

Codul pentru registrul de înregistrare este de până la 32 de biți de la început:

int LFSR_Galois ( void ) ( static unsigned long ;

Rețineți că ciclul numărului fix de apeluri al funcției LFSR_Galois în configurația Galois este de aproximativ 2 ori mai rapid decât funcția inferioară LFSR_Fibonacci în configurația Fibonacci (compilați Tor MS VS 2010 pe Intel Core 5).

Exemplu de secvență care este generată

Configurația Fibonacci

Fie RSLOS dat de termenul bogat caracteristic x 3 + x + 1 (\displaystyle x^(3)+x+1). Aceasta înseamnă că biții de intrare vor fi al 2-lea și al 0-lea, iar unul din formula termenului bogat înseamnă că al 0-lea bit este de intrare. Funcția gateway-ului este vizibilă S j = S j - 1 ⊕ S j - 3 (\displaystyle S_(j)=S_(j-1)\oplus S_(j-3)). Să presupunem că registrul cob are o secvență. Mai multe detalii despre registru sunt prezentate în tabelul de mai jos:

Numărul Kroku moara Generare de biți
0 [ 0 , 0 , 1 ] (\displaystyle \left) 1
1 0
2 0
3 1
4 1
5 1
6 0
7 [ 0 , 0 , 1 ] (\displaystyle \left) 1

Fragmentele cadrului intern din a șaptea zi s-au îndreptat spre weekend, apoi, începând de la începutul zilei, repetă bătăile. Secvența care este generată este: [ 1 , 0 , 0 , 1 , 1 , 1 , 0 , 1 . . . ] (\displaystyle \stânga)(Ordinea biților din secvență este în concordanță cu ordinea în care sunt generați). Astfel, perioada secvenței este egală cu 7, astfel încât valoarea maximă posibilă se obține datorită primitivității polinomului dat.

Configurația Galois

Atunci, să luăm acel termen foarte caracteristic, bogat c 3 = c 1 = 1 (\displaystyle c_(3)=c_(1)=1), c 2 = 0 (\displaystyle c_(2)=0). Bitul de ieșire se adună doar la primul bit. Moara de cob este aceeași. Înregistrare suplimentară:

Numărul Kroku moara Generare de biți
0 [ 0 , 0 , 1 ] (\displaystyle \left) -
1 [ 1 , 0 , 0 ] (\displaystyle \left) 0
2 [ 0 , 1 , 1 ] (\displaystyle \left) 1
3 [ 1 , 0 , 1 ] (\displaystyle \left) 1
4 [ 1 , 1 , 1 ] (\displaystyle \left) 1
5 [ 1 , 1 , 0 ] (\displaystyle \left) 0
6 [ 0 , 1 , 0 ] (\displaystyle \left) 0
7 [ 0 , 0 , 1 ] (\displaystyle \left) 1

Registrul intern al registrului în acest moment s-a transformat în cob, care este, de asemenea, aceeași perioadă cu 7. Sub Fibonacci, registrul intern al registrului a ieșit diferit, dar a fost generat secvențial. Există același lucru, doar ascuns în 4. masuri: [ 0 , 1 , 1 , 1 , 0 , 0 , 0 , 0 , 1 , 1 , . . . ] (\displaystyle \stanga)(Ordinea biților din secvență este în concordanță cu ordinea în care sunt generați).

Generație de membri primitivi bogați

Biti, n (\displaystyle n) Membru bogat primitiv Perioadă, 2 n - 1 (\displaystyle 2^(n)-1) Numărul de membri primitivi bogați
2 x 2 + x + 1 (\displaystyle x^(2)+x+1) 3 1
3 x 3 + x 2 + 1 (\displaystyle x^(3)+x^(2)+1) 7 2
4 x 4 + x 3 + 1 (\displaystyle x^(4)+x^(3)+1) 15 2
5 x 5 + x 3 + 1 (\displaystyle x^(5)+x^(3)+1) 31 6
6 x 6 + x 5 + 1 (\displaystyle x^(6)+x^(5)+1) 63 6
7 x 7 + x 6 + 1 (\displaystyle x^(7)+x^(6)+1) 127 18
8 x 8 + x 6 + x 5 + x 4 + 1 (\displaystyle x^(8)+x^(6)+x^(5)+x^(4)+1) 255 16
9 x 9 + x 5 + 1 (\displaystyle x^(9)+x^(5)+1) 511 48
10 x 10 + x 7 + 1 (\displaystyle x^(10)+x^(7)+1) 1023 60
11 x 11 + x 9 + 1 (\displaystyle x^(11)+x^(9)+1) 2047 176
12 x 12 + x 11 + x 10 + x 4 + 1 (\displaystyle x^(12)+x^(11)+x^(10)+x^(4)+1) 4095 144
13 x 13 + x 12 + x 11 + x 8 + 1 (\displaystyle x^(13)+x^(12)+x^(11)+x^(8)+1) 8191 630
14 x 14 + x 13 + x 12 + x 2 + 1 (\displaystyle x^(14)+x^(13)+x^(12)+x^(2)+1) 16383 756
15 x 15 + x 14 + 1 (\displaystyle x^(15)+x^(14)+1) 32767 1800
16 x 16 + x 14 + x 13 + x 11 + 1 (\displaystyle x^(16)+x^(14)+x^(13)+x^(11)+1) 65535 2048
17 x 17 + x 14 + 1 (\displaystyle x^(17)+x^(14)+1) 131071 7710
18 x 18 + x 11 + 1 (\displaystyle x^(18)+x^(11)+1) 262143 7776
19 x 19 + x 18 + x 17 + x 14 + 1 (\displaystyle x^(19)+x^(18)+x^(17)+x^(14)+1) 524287 27594
20 - 168
2 - 786, 1024, 2048, 4096

Avantaje și dezavantaje

Avantaje

  • viteză mare a algoritmilor criptografici creați pe baza RSLOS (de exemplu, stream ciphers);
  • utilizarea doar a celor mai simple operații de adunare și înmulțire pe biți, care sunt implementate în hardware în aproape toate dispozitivele de calcul;
  • autorități criptografice bune (RSLOS poate genera secvențe mari de perioade cu autorități statistice bune);
  • Datorită structurii sale, RSLOS poate fi ușor analizat folosind diverse metode algebrice.

Nedoliky

Modalități de îmbunătățire a puterii criptografice a secvențelor care sunt generate.

Generatoare cu mai multe registre

Un generator de acest tip este format din mai multe registre cu o conexiune liniară care generează bătăi x 1 , i , x 2 , i , … , x M , i (\displaystyle x_(1,i),\;x_(2,i),\;\dots ,\;x_(M,i)) evident. Mai mult, biții care sunt generați sunt transformați printr-o funcție booleană f (x 1 , i , x 2 , i , … , x M , i) (\displaystyle f(x_(1,i),\;x_(2,i),\;\dots ,\;x_(M ,i))). Este necesar să rețineți că generatoarele de acest tip au mai mult de un registru L i (\displaystyle L_(i)), i = 1 , 2 , … , M (\displaystyle i=1,\;2,\;\dots ,\;M), reciproc, pur și simplu unul cu celălalt.

Perioada acestui generator este veche T = (2 L 1 − 1) ⋅ (2 L 2 − 1) ⋯ (2 LM − 1) ≲ 2 L (\displaystyle T=(2^(L_(1))-1)\cdot (2^( L_(2))-1)\cdots (2^(L_(M))-1)\lesssim 2^(L)), de L = ∑ i = 1 M L i (\displaystyle L=\sum \limits _(i=1)^(M)L_(i))- numărul de mijlocii. De asemenea, numărul de SLOS multiple crește perioada de secvență, care este generată în număr egal cu un singur registru, ceea ce crește puterea criptografică a generatorului. De asemenea, plierea liniară crește sau se ajunge la cel mai scurt registru, care corespunde acestui generator. Un astfel de registru este folosit de algoritmul Berlekamp-Messey conform secvenței generate. În cea mai scurtă perioadă, ziua este compatibilă cu perioada secvenței care este generată.

Generatoare cu transformări neliniare

Schema structurală a unui astfel de generator nu diferă în niciun fel de circuitele generatorului anterior. Principala diferență constă în faptul că dispozitivul de transformare este specificat de o funcție booleană neliniară f (x 1 , x 2 , … , x M) (\displaystyle f(x_(1),x_(2),\dots ,x_(M))). Cum o astfel de funcție este luată, de exemplu, de polinomul Zhegalkin (pe baza teoremei Zhegalkin, orice funcție booleană într-o singură formă poate fi reprezentată de polinomul Zhegalkin).

Generatorul neliniar poate fi implementat și pe înregistrați o legătură cu o concatenare neliniară. Vin se poate întâlni 2 2 L − 1 − L (\displaystyle 2^(2^(L-1)-L)) opțiuni pentru secvențe, perioadă maximă, mai mult, mai puțin pentru SFLO.

Puterea criptografică a acestui generator se îmbunătățește pe baza neliniarității funcției determinate. Registrele sunt determinate de succesiunea de biți care sunt generați și de sarcini matematice complexe, deoarece nu există un algoritm cunoscut care să actualizeze rezultatul.

Această metodă este discutată, de exemplu, în generatoare Geffși generatoarele Geff normalizate, totuși, astfel de generatoare pot fi susceptibile la defecte de corelare.

Generatoare cu registre de ceas diferite

Generator de oprire-împingere

Generator de oprire-împingere(Engleză: Stop-and-Go, Both-Piper) utilizează sistemul RSLOS-1 pentru a controla frecvența de ceas a RSLOS-2, astfel încât RSLOS-2 să-și schimbe viteza la momentul potrivit, la fel ca ieșirea RSLOS-1 în momentul în care unitatea crește. . Această schemă nu a rezistat problemelor de corelare.

Această metodă a dus la o putere criptografică crescută generator, ce se spune, „stop-pishov”. Există trei registre pentru diferite dovzhin. Aici RSLOS-1 controlează frecvența de ceas a registrului 2 și 3, astfel încât RSLOS-2 își schimbă starea atunci când ieșirea RSLOS-1 este egală cu unu, iar RSLOS-3 - când ieșirea RSLOS-1 este egală cu zero. Ieșirea generatorului este operația de adăugare modulo a două ieșiri RSLOS-2 și RSLOS-3. Acest generator are o perioadă mare și o mare liniaritate. Aceasta este o metodă de creștere corelativă a RLOS-1, dar nu slăbește foarte mult puterea criptografică a generatorului.

Schema de sincronizare Vikoristan a fost simplificată generator bidirecțional „stop-push”., În care sunt 2 registre pentru noul an. Când ieșirea RSLOS-1 este în acest moment t i - 1 (\displaystyle t_(i-1))- unul, atunci RSLOS-2 nu este tactat în acest moment t i (\displaystyle t_(i)). Când RSLOS-2 a apărut în acest moment t i - 1 (\displaystyle t_(i-1)) este egal cu zero, iar în momentul de t i - 2 (\displaystyle t_(i-2))- unul, iar acest registru este tactat în acest moment t i (\displaystyle t_(i)), atunci în acest moment RLOS-1 nu este tactat. Pliabilitatea liniară a acestor scheme este aproximativ aceeași cu perioada secvenței care este generată.

Generator cu autoreglare

Generator de lichid bogat din amestec intern

Generatorul danez are două registre: RSLOS-1 și RSLOS-2. Frecvența de ceas a RSLOS-2 d (\displaystyle d) ori mai mult, mai mic la RSLOS-1. Cântecele și biții acestor registre sunt multiplicate folosind o operație AND. Rezultatele sunt înmulțite cu operația XOR și se obține secvența de ieșire. Acest generator are o complexitate liniară mare și o putere statistică bună. Cu toate acestea, în acest caz, pot exista valori după secvența finală de ieșire L 1 + L 2 + log 2 ⁡ d (\displaystyle L_(1)+L_(2)+\log _(2)(d)), de L 1 (\displaystyle L_(1))і L 2 (\displaystyle L_(2))- dozhini RSLOS-1 și RSLOS-2 în linie și d (\displaystyle d)- Variația frecvențelor lor de ceas.

cascada Gollmann

Acest circuit este o versiune colorată a generatorului „stop-push”. Se dezvoltă din secvența SLOS, tactul pielii este cherat de SLOS anterior. Care este rezultatul RSLOS-1 în acest moment t i (\displaystyle t_(i))є 1, apoi RLOS-2 este declanșat. Care este rezultatul RSLOS-2 în acest moment t i (\displaystyle t_(i))є 1 RSLOS-3 este declanșat și așa mai departe. Ieșirea RLOS rămasă este ieșirea generatorului. Deoarece moștenirea tuturor SFLO este aceeași și veche L (\displaystyle L), atunci perioada sistemului este M (\displaystyle M) SRSLOS este mai vechi (2 L - 1) M (\displaystyle (2^(L)-1)^(M))și pliere liniară - L (S) = L (2 L - 1) M - 1 (\displaystyle L(S)=L(2^(L)-1)^(M-1)) .

Această idee este simplă și poate fi folosită pentru a genera secvențe cu perioade mari, pliuri liniare mari și puteri statistice bune. Ale, păcat, duhoarea este sensibilă la putrezit, numit mormăi(blocare în engleză), dacă

Secvențele de registre sunt puternic influențate atât de criptografie, cât și de teoria codificării. Această teorie este dovedită în mod miraculos; cifrurile de flux bazate pe registrele ZSU au fost calul de lucru al criptografiei militare cu mult înainte de apariția electronicii.

Registrul conexiunii cu legătura de retur (denumit în continuare РгССОС) constă din două părți: registrul conexiunii și funcția verigii de retur. Registrul conține succesiunea bătăliilor. Se calculează numărul de pariuri dovezhniyu zsuv registru Dacă două zile sunt egale cu n biți, atunci registrul este apelat registru de n biți. Acum, dacă trebuie să vă mișcați un pic, toți biții din registrul curent sunt mutați la dreapta cu 1 poziție. Noul bit din stânga are o funcție care rezolvă biții de registru. La ieșirea noului registru apare unul, numit cel mai tânăr, bit. Perioada de înregistrare Se numește dovzhina secvenței dobândite pe cob de repetiție.

Figura 1. Registrul obligațiunilor cu o legătură de guler

Registrele erau deja foarte conștiente de stagnarea cifrurilor de flux, deoarece acestea erau ușor de implementat folosind echipamente digitale suplimentare. În 1965, Ernst Selmer, principalul criptograf al guvernului norvegian, a dezvoltat teoria secvenței registrelor din lume. Solomon Golomb, un matematician NSA, a scris o carte care rezumă rezultatele sale și rezultatele lui Selmer. Cel mai simplu tip de registru cu deplasare cu feedback este registrul cu deplasare cu feedback liniar (LFSR sau LFSR). Legătura de retur a unor astfel de registre este pur și simplu XOR (modulo doi) a biților corespunzători ai registrului, transferul acestor biți se numește secvență tap. Uneori, un astfel de registru se numește configurație Fibonacci. Prin simplitatea secvenței de întoarceri pentru analiza PrgSsLOS, se poate vikoristovyvat pentru a înțelege teoria matematică. După ce ați analizat secvențele de ieșire extrase, puteți trece la adăugarea ieșirilor pentru a fi în siguranță. Cele mai comune registre sunt folosite în criptografie.


Figura 2. RgSsLOS Fibbonachi

În același timp, RgSsLOS de n biți poate fi într-una dintre N=2 n -1 stații interne. Aceasta înseamnă că, teoretic, un astfel de registru poate genera o secvență pseudo-căptușită cu o perioadă de T=2 n -1 biți. (Numărul de posturi interne și perioada vor fi mărite la N=T max =2 n -1, deci completarea RgSSLOS cu zerouri va duce la faptul că registrul existent arată o secvență nesfârșită de zerouri, ceea ce este absolut clar) . Pentru următoarele secvențe anterioare, RgSsLOS va trece prin toate cele 2 n -1 etape interne, cum ar fi RgSsLOS RgSsLOS cu perioada maximă. Rezultatul respingerii se numește secvența M.

la fund . Puțin mai mici decât citirile RgSsLOS pe 4 biți cu adăugarea primului și al patrulea biți. Dacă valorile 1111 sunt procesate, atunci următoarele valori interne vor fi acceptate înainte ca registrul să fie repetat:

Numărul de takt zsuwu (tabără internă)

Starea registrelor

Bit de ieșire

Sensul initial

15 (întors la starea inițială)

16 (se repetă stanіv)

Secvența de ieșire va fi un rând de biți semnificativi tineri: 1 1 1 1 0 1 0 1 1 0 0 1 0 0 0 cu perioada T=15, numărul maxim de strofe interne posibile (pe lângă zero), N=2 4 - 1 =16-1= 15 = T max, prin urmare, secvența de ieșire este secvența M.

Pentru ca un anumit RgSsLOS să aibă o perioadă maximă, un termen bogat, de creații cu următoarea succesiune și constantă 1, este necesar să se urmeze modulul 2.

A n x n +a n-1 x n-1 + … +a 1 x 1 +a 0 x 0 =a n x n +a n-1 x n-1 + … +a 1 x+a 0 , Divizia Narcotice i =(0,1) pentru i=1…n, a x i - arată descărcarea.

Etapa polinomului este ultima din registrul esențial. Un polinom primitiv de stadiul n nu este un polinom ireductibil, care este termenul x 2n?1 +1, precum și termenul x d +1 cu tot d, și termenul 2 n -1. O teorie matematică de bază poate fi găsită în.

În acest caz, nu există o modalitate simplă de a genera termeni primitivi bogați ai acestei etape după modulul 2. Cel mai simplu mod este să selectați un termen bogat la același nivel și să verificați dacă nu este primitiv. Nu este ușor și este similar cu o reverificare, dar nu putem ierta numărul aleatoriu - dar există o mulțime de pachete software matematice care pot rezolva această problemă.

Acțiunile, dar, desigur, nu toate componentele bogate ale diferitelor etape, similare cu modulul 2, sunt enumerate în continuare. De exemplu, înregistrați

(32, 7, 5, 3, 2, 1, 0) înseamnă că următorul polinom primitiv este modulo 2: x 32 + x 7 + x 5 + x 3 + x 2 + x + 1.

Acest lucru se poate face cu ușurință pentru RGSLOS cu o perioadă maximă. Primul număr este dovzhina RGSSLOS. Numărul rămas este întotdeauna egal cu 0 și poate fi omis. Toate numerele, cu excepția 0, stabilesc secvența de ieșire, numărate de la marginea stângă a registrului. Atunci termenii termenului bogat cu un grad mai mic corespund pozițiilor mai apropiate de marginea dreaptă a registrului.

Cu alte cuvinte, intrarea (32, 7, 5, 3, 2, 1, 0) înseamnă că pentru un registru integral de 32 de biți dat, un nou bit este generat utilizând XOR al altor treizeci, al șaptelea, al cincilea, al treilea și altele, primele bătăi, astfel încât ieșirea lui RgSsLOS va fi mama dowzhin maxim, trecând ciclic până când se repetă după 232 -1 valoare.


Figura 4. RGSLOS pe 32 de biți cu marjă maximă

Să aruncăm o privire la codul programului RgSsLOS, care are o secvență caracterizată printr-un termen bogat (32, 7, 5, 3, 2, 1, 0). Pe videoclip arata asa:

ShiftRegister lung static nesemnat = 1;

/* Toate, crema 0. */

ShiftRegister = ((((ShiftRegister >> 31)

^(ShiftRegister >> 6)

^(ShiftRegister >> 4)

^(ShiftRegister >> 2)

^(ShiftRegister >> 1)

^ShiftRegister))

| (ShiftRegister >> 1);

returnează ShiftRegister & 0x00000001;)

Dacă registrul esențial este transferat în cuvântul computerizat, codul devine mai complex, dar nu bogat. În Anexa B există un tabel al unor polinoame primitive pentru modulul 2, care va fi analizat ulterior pentru identificarea diferitelor puteri ale acestor polinoame, precum și în implementarea software-ului pentru stabilirea secvenței finale.

Vă rugăm să rețineți că din toate elementele tabelului există un număr nepar de coeficienți. Un astfel de tabel lung a fost creat pentru a lucra în continuare cu RGSSLOS, deoarece RGSSLOS este adesea folosit pentru criptare cu cifruri de flux și în generatoare de pseudo-cifre. În generația noastră, puteți vikorystovat articulații bogate la nivel superior nu mai mult decât asta.

Deoarece p(x) este primitiv, atunci primitiv i x n p (1/x), prin urmare elementul skin al tabelului înseamnă de fapt doi termeni primitivi bogati. De exemplu, dacă (a, b, 0) este primitiv, atunci i (a, a-b, 0) este primitiv. Dacă primitiv (a, b, c, d, 0), atunci primitiv (a, a-d, a-c, a-b, 0). Din punct de vedere matematic:

Dacă primitiva x a + x b +1, atunci primitiva i x a + x a-b +1,

Dacă x a + x b + x c + x d +1 este primitiv, atunci i x a + x a-d + x a-c + x a-b +1 este primitiv. Cele mai multe trinoame primitive sunt implementate în software, deoarece pentru a genera un nou bit este necesar să XOR mai mult de doi biți din registrul existent (termenul zero nu este inclus, atunci x 0 = 1, div. Butt este mai mare). De fapt, toate polinoamele legăturilor conjugate prezentate în tabel sunt rarefiate, deci există trei coeficienți. Rarețea este întotdeauna o sursă de slăbiciune, ceea ce este suficient pentru ca algoritmul să se spargă. Pentru algoritmii criptografici, este mai bine să folosiți termeni mai atractivi, cei care au mulți coeficienți. Membrii mari bogați Zastosovuyuchi, în special ca parte a cheii, pot fi utilizați pentru PrSSLOS mult mai scurt.

Nu este ușor să generați termeni bogați primitivi mari pentru modulul 2. Pentru a genera polinoame primitive ale etapei k, trebuie să cunoașteți factorizarea numărului 2 k -1.

Prin ei înșiși, RgSSLOS sunt generatori buni de secvențe pseudo-inferioare, dar pot acționa și ca autorități nenaturale (deterministe). Ultimii biți sunt liniari, deci nu sunt necesari pentru criptare. Pentru RgSSLOS, ultima n stație internă are cei n biți de ieșire înainte ai generatorului. Cu toate acestea, circuitul de poartă este păstrat secret și poate fi atribuit celor 2n biți de ieșire ai generatorului utilizând algoritmul extrem de eficient Berlekamp-Massey.

În plus, numerele mari aleatorii care sunt generate din pariuri aleatorii în succesiune sunt foarte variabile și pentru anumite tipuri de suplimente nu sunt deloc aleatorii. Indiferent de acest lucru, RGSSLOS este adesea folosit pentru crearea de algoritmi de criptare ca părți de stocare ale sistemelor și algoritmi de criptare.

- „Tetromino tenis”). Ați creat și rezolvat un număr nenumărat de puzzle-uri și jocuri de cuvinte matematice. În urmă cu 20 de ani, am descoperit că era foarte aproape de îndrăgita Regula 30 pentru aparatele de slot pentru clienți încă din 1959, când m-am născut.

Iac I Zustriv Sola Golomba

Sunt o mulțime de savanți și matematicieni pe care îi cunosc și am aflat despre legăturile mele profesionale. Ale doar nu Sol Golomba. Yshov 1981 rіk, iar eu, 21 de fizician bogat (care, devenind puțin cunoscut de ZMI, a fost cel mai tânăr beneficiar al premiului MacArthur la prima ceremonie de premiere) am început cercetarea cu. Se auzi o bătaie la ușa biroului și deodată o tânără a trecut pragul. Nu a fost o surpriză, pentru că la vremea aceea, când studiau fizica teoretică a energiilor înalte, erau fără speranță puține femei. Chiar dacă locuiam în California cu câteva pietre, nu m-am lipsit de universitate, dar s-a dovedit că nu existau pregătiri pentru valul de energie proaspătă californiană care m-a dus la birou. Femeia s-a prezentat lui Astrid și a spus că se duce la Oxford și știe pe cineva cu care eram. colivie pentru copii. Vona a explicat că i s-a încredințat colectarea de informații despre creștinii din zona Pasadena. Cred că m-a respectat cu un gest măreț, ci mai degrabă m-a împins spre trandafiri. Și o dată, când încercam să aflu despre oamenii pe care îi făceam, ea a spus: „ Trebuie să te înțelegi cu tatăl meu. Este deja un om de vară, dar mintea lui este ca înainte, ascuțită ca un brici. Și s-a întâmplat că Astrid Golomb, fiica cea mare a lui Sol Golomb, a ajuns să mă cunoască despre el.

Familia Golomb locuia într-o cabană construită în munții de lângă Pasadena. Au avut două fiice: Astrid, un pic mai mare decât mine, o fată ambițioasă de la Hollywood, și Beatrice, care era cam în vârstă și științifică. Surorile Golomb țineau adesea petreceri, de obicei la propria lor casă. A fost mult măcel: în această seară în grădină și crochet cu flamingo și arici (" Câștigătorul va fi cel al cărui costum este cel mai în concordanță cu declarația temei"), sau o petrecere în stilul Stonehenge cu instrucțiuni scrise în rune. La aceste petreceri, tineri și bătrâni au stat de vorbă, inclusiv diverse luminate locale. Și pe ele, încetul cu încetul, a fost prezența unei persoane mici cu un barbă grozavă, un pic ca la spiriduș și purtând mereu o haină întunecată - însuși Solomon Golomb.

Încetul cu încetul am aflat despre el. Cei care au fost închiși înainte" teoria informaţiei Cei care au lucrat la Universitatea din California. Cei care au relații diferite nu sunt importanți, dar poate conexiuni de rang înalt și alte conexiuni. Știam despre registre, dar practic nu știam nimic despre ele.

Axa va apărea în aproximativ o oră:

După cum știți, registrul stochează întotdeauna bătăi pentru stângaci, iar celelalte bătăi pentru dreptaci sunt adăugate după o regulă simplă. Secvența bătăliilor pare a fi intermitentă, deși, așa cum arată cel mic, se repetă complet. Sol Golomb cunoaște un mod matematic elegant de a analiza astfel de secvențe și modul în care acestea se repetă.

Din moment ce registrul are o dimensiune n, atunci cineva are 2 n Stări posibile (indicați toate secvențele posibile 0 și 1 când dozhin n). Se determină fragmentele de regulă pentru registru, chiar dacă o situație dată poate ajunge în cele din urmă la o altă situație similară. Și asta înseamnă că numărul maxim posibil de cicluri prin care poate parcurge registrul, mai întâi cele inferioare încep să se repete, n(dreapta 2 n- 1, întrucât formaţiunea din usima 0 nu poate evolua mai departe).

În cazul exemplului de mai sus, registrul are dimensiunea 7 și se repetă după 2 7 - 1 = 127 kroki. Ale, ce fel de registre există - cu ce fel de registre se va genera secvența de viață maximă? Tse nutrition Solomon Golomb a început să urmărească numărul din 1954. Și designul său a fost simplu și elegant.

Registrul indicațiilor se află în principal în pozițiile 7, 6 și 1. Solul este reprezentat algebric, vicoric și bogat. X 7 + X 6 + 1. De asemenea, ați arătat că șirul care este generat va fi valoarea maximă, deoarece acest polinom " modulo 2 neghidat"; prin urmare, nu-l putem factoriza ca un analog al numărului prim al mijlocii termenilor bogați; iar prezența altor puteri poate fi descrisă ca un "termen bogat primitiv". Astăzi, acest lucru este ușor de verificat folosind Mathematica și Sisteme de limbaj Wolfram:

Todi, soarta 1954, Sol este vinovat că a făcut totul manual; Veți putea completa un tabel lung cu cei mai interesanți termeni bogați care corespund registrelor zsuwu-ului, care au fost secvențele vieții maxime:

Istoria registrelor ZSUVU

Ideea de a stimula memoria operativă pentru ajutor” tăieturi de linie", care transmit impulsuri digitale, datează de la începutul erei EOM. Până la sfârșitul anilor 1940, astfel de linii au fost puse în formă digitală folosind tuburi cu vid redus și au fost numite " înregistrează zsuwu Nu este încă clar dacă primele registre au fost create cu gateway-ul. Posibil, era aproape ca în anii 1940. Cu toate acestea, această idee încă îmi amintește de un loc secret, pentru că în primul rând era un miros de corupție în criptografia militară.

Ideea principală a criptografiei este de a schimba sensul mesajelor în așa fel încât să nu poată fi recunoscute; Dacă cunoașteți cheia, puteți crea un mesaj criptat. Așa-numitele cifruri în flux funcționează pe principiul creării de secvențe lungi de elemente aleatorii și sunt decodificate folosind un dispozitiv suplimentar care generează în mod independent acea secvență de elemente.

Registrele unui semn cu o conjuncție liniară au fost evaluate în criptografie după perioade lungi de repetare. Cu toate acestea, analiza matematică pe care Sol a făcut-o pentru a determina aceste perioade arată clar că astfel de registre nu sunt potrivite pentru criptografia securizată. Cu toate acestea, la început, duhoarea a fost urâtă (mai ales la cele cu cele mai recente poziții ale rotorului din Enigma); Au existat zvonuri că criptosistemele militare Radyan au fost construite pe această bază.

În 2001, când lucram la note istorice pentru cartea mea Un nou tip de știință Miz și Solom au vorbit mult timp la telefon despre înregistrare. Sol mi-a spus că atunci când a început, nu știa nimic despre munca criptografică din registre. El a spus că oamenii de știință de la Bell Labs, Lincoln Labs și Jet Rocket Laboratory au început să lucreze la registrele ZSUV în jurul aceleiași ore în care a făcut el; Cu toate acestea, am reușit să ies puțin mai departe, că el își exprimase soarta anului 1955 în viața lui.

Pe parcursul stâncilor viitoare, Sol a aflat treptat despre diferiți predecesori ai operei sale din literatura dedicată matematicii pure. Deja în 1202, Fibonacci vorbea despre cele care acum se numesc numere Fibonacci și care sunt generate de relații recurente (care pot fi văzute ca un analog al unui registru cu o legătură de inversare liniară, pe care eu cu numere întregi mai degrabă decât cu zerouri și unu). Au existat și roboți mici la începutul anilor 1900 pentru ciclicitatea 0 și 1, prima cercetare la scară largă a fost opera lui Oystein Ore de la Universitatea din Oslo. Ore a fost student la Marshall Hall, care a consiliat fosta Agenție de Securitate Națională în anii 1940. - poate pe tema registrelor ZSUVU. Totuși, tot ceea ce făcuse a fost clasificat, așa că i-a cerut lui Sol să publice istoria registrelor cu o răsucire liniară; Saul și-a dedicat cartea lui Marshall Hall.

Care sunt secvențele necesare generate de registrele ZSU?

Am observat de multe ori că sistemele care sunt definite prin reguli simple sunt deschise la multe variante de completări; Registrele urmează și ele aceste regularități. În prezent sunt în posesie, iar programul este securizat cu registre: un telefon mobil obișnuit are probabil o duzină sau două implementări, de obicei la nivel hardware și uneori în software de securitate(Când scriu aici „Registrul ZSUVU”, mă refer la registrul ZSUVU cu guler liniar - LFSR).

În cele mai multe cazuri, aceste registre sunt utilizate pentru a da secvența duratei maxime de viață (cunoscută și sub denumirea de „ secvențe M Motivele pentru care oamenii sunt victorioși sunt, de regulă, legate de acțiunile autorităților lor, după cum a arătat Sol. Trebuie să combinați întotdeauna același număr de 0 și 1 (deși va fi întotdeauna exact un 1 suplimentar). Anul acesta, Sol a arătat că are putere și asupra aceluiași număr de secvențe 00, 01, 10 și 11 - și pentru blocuri grozave. echilibru Acest lucru în sine este deja destul de interesant, de exemplu, deoarece se testează toate combinațiile posibile de bătălii ca date de intrare.

Cu toate acestea, Sol, după ce a dezvăluit altul, a adus o putere mai importantă. Înlocuiți pielea 0 din secvență cu 1, apoi înmulțiți elementul skin din versiunea inserată a secvenței cu același element ca și originalul. Sol a arătat că, atunci când sunt pliate, elementele vor fi întotdeauna egale cu zero (cu excepția caderilor, dacă nu există deloc sens). Deci secvența nu are nicio corelație cu versiunile distruse ale acesteia.

Valorile puterii vor fi întotdeauna adevărate pentru durata maximă a secvenței 0 și 1. Este surprinzător că pentru secvențele de viață maximă puterea va fi întotdeauna adevărată. Apar secvențe de haos, dar în realitate nu sunt haotice: duhoarea pătrunde în întregul cântec, structura este organizată.

Această structură în sine, care alimentează registrele cu o poartă liniară, le face nepotrivite pentru criptografia serioasă. Cu toate acestea, ele sunt minunate potrivite pentru „rearanjarea elementelor” de bază și criptografia ieftină și sunt cercetate în mod activ în aceste scopuri. De multe ori merită să „intensificați” semnalul (ca în „zgomotul alb”). Uneori este necesar să se transmită date cu secvențe lungi de 0. În caz contrar, electronica poate deveni confuză în acest caz, deoarece „mașina” va trebui să fie lungă. Puteți elimina această problemă prin amestecarea datelor de ieșire combinând-o cu secvența care este generată de registrul ZSU. Totul este echipat cu Wi-Fi, Bluetooth, USB, TV digital, Internet etc.

Un efect secundar al amestecării registrelor de date este că decodarea este mai complexă, ceea ce este folosit în unele cazuri pentru o securitate sporită (tehnologia DVD utilizează o combinație de registre de stocare cu date suplimentare pentru a codifica datele pe 16 și 24 de biți; multe telefoane GSM folosesc o combinație de trei registre pentru a codifica toate semnalele).

Sol a creat o bază matematică pentru aceasta și, de asemenea, a reînvățat una câte una o serie de cifre cheie. În 1959, familia l-a cunoscut pe Irvin Jacobs, care și-a terminat recent doctoratul la Institutul de Tehnologie din Massachusetts. Îl cunoștea și pe Endi Viterbi, care lucra la Laboratorul Jet Rocket. Sol le-a descoperit, iar în 1968 au înființat o companie numită Linkabit, care lucra la sisteme de codare (în special în scopuri militare).

În 1985, Jacobs și Viterbi au fondat o altă companie sub numele Qualcomm. Lucrurile nu au mers bine pentru ei chiar de la început, dar până la începutul anilor 1990, când componentele pentru laringele CDMA din telefoanele de modă veche au început să vibreze, compania a început să crească rapid.

Ei bine, unde este registrul?

Este surprinzător că majoritatea oamenilor nu au auzit să înregistreze bani și să interacționeze cu ei imediat când fac bani. sistemele actuale conexiune, echipament de calcul etc. Aici este ușor să vă rătăciți, doctori, pentru că în spatele diferitelor nume și abrevieri se află aceleași secvențe de registre de conexiune cu conexiune liniară inversă (PN, pseudozgomot, secvențe M- , FSR, LFSR, MLS). , SRS, PRBS etc.).

Pe măsură ce te uiți la telefoanele mobile, variația secvențelor din acestea, care sunt generate de registrele dispozitivului, s-a schimbat de-a lungul multor destine, acum crescând, acum schimbându-se. Granițele se bazează pe TDMA, astfel încât pentru a-și codifica datele nu folosesc secvențele generate de registrele ZSU, ci folosesc adesea CRC (cod supranumerar ciclic) pentru a verifica blocurile de date. Limitele sunt cele mai mari componente CDMA, din secvențele generate de registrele implicate în transmiterea bitului de piele. Măsurați frecvența ceasului și frecvența sloturilor pentru a nu include secvența registrelor apelului, dacă doriți să fie determinat și CRC: de exemplu, să interacționați cu date întregi dacă ferestrele de frecvență se suprapun una pe alta. Are o structură mai pliabilă - cu antene goale, care se adaptează dinamic pentru a varia ora și frecvența optime a sloturilor. Cu toate acestea, jumătate din canalele lor sunt de obicei vizibile pentru „semnale pilot”, care sunt vicorizate pentru a arăta centrul radio local; Ele se bazează, de asemenea, pe secvențele care sunt generate de registre.

La conversia electronicii, este necesar să se obțină cea mai mare viteză de transmisie cu un consum minim de energie, permițând biților să atingă pragul de zgomot. Și, prin urmare, aceasta se dorește să conducă la automatizarea detectării erorilor, - de asemenea, la înlocuirea CRC (cod supranumerar ciclic) și, deci, la secvențele generate de un registru separat. În mijlocul computerului sunt practic toate tipurile de magistrale (PCIe, SATA etc.): pentru a asigura interacțiunea unor părți ale procesorului central, fie extragerea datelor de pe dispozitive, fie conectarea la un display prin HDMI. În combinație cu discuri și memorie, CRC și alte coduri bazate pe secvențe generate de registrele de stocare sunt, de asemenea, practice de utilizat pentru funcționarea la viteză maximă.

Registrele de date sunt omniprezente, ceea ce face practic imposibilă estimarea câte date sunt generate de acestea. Există aproximativ 10 miliarde de computere, câteva telefoane mai puțin și un număr mare de dispozitive pentru IoT („Internet of Speeches”). Cel mai mare număr de mașini din lume (și există mai mult de un miliard dintre ele!) - aproape 10 microprocesoare instalate.

La ce frecvență funcționează registrele radio? Sistemele de comunicații au o frecvență de bază în intervalul de herți, precum și viteza de transmisie a elementelor de semnal, ceea ce înseamnă că accesul multiplu (sau CDMA) în intervalul MHz este rapid. Pe de altă parte, în magistralele calculatoarelor, toate datele sunt transmise folosind registre suplimentare. cea mai fină smecherie transmisie în intervalul hertzi.

Există cel puțin 10 miliarde de linii de comunicare, care durează până la 1/10 miliarde de secunde (aproximativ 3 secunde), care sunt folosite pentru a vikoryst cel puțin 1 miliard de bătăi pe zi. În fiecare secundă, ceea ce înseamnă că astăzi algoritmul lui Sol a fost adoptat. de octillion de ani raz.

Este acest algoritm cel mai popular? Asa cred. Bănuiesc că doar operațiile aritmetice pot deveni competitive. Procesoarele de astăzi efectuează trilioane de operații aritmetice pe secundă, iar astfel de operațiuni sunt necesare din cauza datelor de piele generate de un computer. Cum funcționează aritmetica? La orice nivel, este pur și simplu implementarea electronicii digitale.

Acestea sunt „idei algoritmice” care sunt respinse de proștii tuturor, cu excepția designerilor de microprocesoare. Când Babbage a lucrat la mașina sa de vânzare cu amănuntul (un articol minunat despre Habré „Unraveling the history of Adi Lovelace (primul programator din istorie)”), transferurile au devenit o mare schimbare în istoria operațiilor aritmetice (de fapt, despre registrul linie de la linie Cu acest punct de cotitură vă puteți gândi la sisteme care funcționează astfel înainte de calcule aritmetice, altfel transferurile nu funcționează). Creați „arbori pentru a extinde semnalul de transfer” pentru a optimiza transferul. Și, de asemenea, mici trucuri (pe baza „algoritmului Booth”, „Arborilor Wallace”, etc.) care schimbă numărul de operații pe biți necesare pentru crearea „internelor” aritmeticii. Ale, pentru a înlocui registrele cu o legătură liniară, o singură idee algoritmică, care ar fi practic corectă, dar pur și simplu nu există; Prin urmare, cred că cele mai lungi secvențe care sunt generate de registrele unității cu o legătură liniară de oprire trec în continuare prin mijlocul celor mai victorioase secvențe.

Mașini automate și registre cu o poartă neliniară

Deși la prima vedere nu pare evident, se pare că există o legătură strânsă între registrele linkului de retur și casele de marcat, la care am jucat de multe ori. Organizația de bază pentru înregistrarea unei taxe cu o legătură de retur transferă calculul câte un bit. Un automat de celule are o linie de celule, iar pe piele toate celulele sunt create în paralel, în spirală, de regulă, pentru a se afla, de exemplu, în funcție de valoarea vaselor lor cele mai apropiate.

Pentru a afla cum sunt conectate mirosurile între ele, trebuie să rulați registrul de conjugare cu o conjugare de dimensiune n, și cu care să-și înfățișeze trupul fără piele n krokiv; În caz contrar, se pare că toate biții ar trebui rescrise înainte să apară. Dacă pielea este afișată în registrul cutanat al articulației cu un ligament liniar (aici - cu două pliuri), atunci pe marginea cutanată totul se deplasează spre stânga - asta este tot. Dacă doriți să creați o imagine comprimată care să arate doar pielea n krokiv, un model va deveni vizibil.

Acest model de investiții; Și această imagine este foarte asemănătoare cu cea care se vede din cutie, unde aparatul client ia clientul și vasul cu el și le stochează în spatele modulului 2 (XOR). Axa care vine cu mașina automată este aceea că își aranjează celulele astfel încât să aibă aceeași dimensiune cu registrul mai mare:

Inițial, automatele și modelele registrului zilnic par să fie aceleași. Dacă te uiți la aceste imagini, este mai puțin surprinzător că matematica registrelor este în mare parte responsabilă pentru conectarea la mașinile clienților. Și privind repetarea contribuțiilor tiparelor, devine clar de ce este de vină teoria matematică elegantă a registrelor.

Pentru registrele tipice, care sunt folosite în practică, astfel de modele nu sunt la putere, dar se repetă în mod clar. Axa unui număr de aplicații ale registrelor este folosită pentru a genera secvențe de viață maximă. Cert este că există multe tipuri diferite de muncă, ceea ce face dificilă menținerea urmelor vizuale ale investiției.

Cât de largă este diversitatea dintre registrele de împrumuturi și bancomat? Pentru automatele client, regulile pentru generarea de noi valori medii pot fi diferite. În registrele cu o poartă liniară, duhoarea se va baza întotdeauna pe adăugarea modulului 2 (sau XOR). Acesta este ceea ce înseamnă partea „liniară” a „registrului unei îmbinări cu guler liniar”. De asemenea, este posibil să se folosească o regulă pentru a potrivi valoarea pentru registrele cu inversare neliniară (NFSR).

Și este adevărat: odată ce Saul și-a dezvoltat teoria pentru înregistrarea unei conexiuni cu o inversare liniară, a început cu o derivație neliniară. Când a ajuns la JPL în 1956, a găsit un laborator dotat cu rafturi pentru module electronice mici. Sol a descoperit că modulele (de mărimea unui pachet de țigări) au fost folosite pentru proiectul Bell Labs pentru a crea operațiuni logice (ȘI, SAU, NU, ...). Modulele pot fi folosite simultan pentru a implementa orice registre necesare cu o poartă neliniară, oferind aproape un milion de biți pe secundă (Sol mi-a spus că vrei să câștigi același lucru înainte de a te ajuta eu calculator universal, iar cele care au durat 1 secundă cu module hardware diferite au necesitat 6 ani de lucru pe un computer universal).

Când Sol s-a implicat în înregistrarea articulației cu un ligament colateral liniar, primele simptome grave au devenit perioadele de repetare a acesteia. Și în contextul vinurilor neliniare, mi-am îndreptat majoritatea eforturilor spre a încerca să înțeleg același lucru. Am colectat toate tipurile de date experimentale. Am confirmat că am verificat știrile din ultimii 245 de ani, după care râul era însetat. Ați completat rezumatul de mai jos (întoarceți-vă atenția asupra vizualizării secvențelor afișate pe linie de oscilografe). Dar nu a reușit niciodată să descopere vreo teorie ascunsă pe care o avea pentru registrele cu guler liniar.

Nu este de mirare că nu a putut câștiga nimic. Deja în anii 1950 au apărut rezultate teoretice (în mare parte bazate pe ideile calculelor universale Turing), pe care programele le puteau produce, în principiu. Nu cred că Saul sau cineva s-a gândit vreodată că chiar și funcțiile simple (neliniare) vor fi blocate în registrele cu o poartă neliniară.

Și abia mai târziu a devenit clar cât de complex poate fi comportamentul. programe simple. Fundul meu preferat - regula 30 pentru o mașină de slot, în care valoarea prizei este conectată la funcția suplimentară care poate fi prezentată în vizualizare R + q + r + q*r mod 2(sau R XOR ( q SAU r)). Incredibil, ale Sol s-a uitat la registrul de înregistrare cu o poartă neliniară, bazată pe funcții similare: R + G + s + q*r + q*s + r*s mod 2. Axa de mai jos este o ilustrare a modului în care funcția Solului (care poate fi văzută ca „regula 29070”), regula 30 și o serie de alte reguli similare apar în registru:

Și iată mirosurile, neînchise de un registru de dimensiune fixă, asemănătoare automatelor:

Desigur, Sol nu a făcut niciodată poze cu prețul (s-ar putea să fi fost imposibil să câștigi bani în anii 1950). Oboseala se concentrează pe perioada de repetare ca un fel de caracteristică cumulativă.

Sol își pune o dietă despre cei care pot înregistra o conexiune cu o legătură de inversare neliniară, dar jerele haosului. Din ceea ce știm despre mașinile client astăzi, este clar ce pot face. De exemplu, pentru a crea haos în sistemul Mathematica, am petrecut 25 de ani învingând regula cu 30 de automate clinice (deși recent am ajuns la concluzia unei noi reguli, mai eficiente, pe care am cunoscut-o după ce am învățat trilioane de posibilități).

Am vorbit puțin despre criptarea lui Sol; Deși mă întreb ce s-a întâmplat recent în ordine. Mi-a spus ce voia în 1959. Atacuri de corelație bogată asupra secvențelor neliniare"la aceeasi ora" Este important de știut că programul a fost conceput pentru criptoanaliza„. În dreapta, regula lui 30 pentru mașinile client (și, poate, și registrele cu o poartă neliniară) pot fi criptosisteme bune - deși prin cele care nu sunt nici echivalente cu registrele cu liniare Acesta este punctul de cotitură (și Nu e așa), duhoarea nu a fost niciodată vikorizată pe blaturi, pe cât posibil.

Fiind un entuziast, în ultimii zece ani încerc să învăț toți predecesorii muncii mele pe mașini automate dintr-o singură piesă. Automatele clinice din două lumi au fost ușor modificate, iar din lumea unică a fost găsit doar un robot pur teoretic. Cred că, cu tot ce am studiat, înregistrarea conexiunii cu poarta neliniară a lui Solomon Golomb a apărut cel mai aproape de ceea ce făceam după un sfert de secol.

Polyomino

Simțind o poreclă Golomb ", majoritatea oamenilor pot ghici despre registrul ZSUVu. Majoritatea oamenilor pot ghici despre poliomino. Sol, fără să găsească poliomino, ar dori să ghicească numele. Le-am făcut sistematice pe cele care au apărut anterior în alte puzzle-uri.

Nutriția capului, la specia pe iac Sol bu zatsikavleniya, astfel încât seturile de poliomino pot fi organizate, acoperind zona gâtului. Uneori este evident să terminați, dar uneori este dificil să terminați. Saul a publicat primul său articol despre poliomino în 1954, iar Martin Gardner a făcut poliomino cu adevărat popular în 1957 (în rubrica sa despre jocurile matematice din revistă științific american). După cum a explicat Sol în editorialul dinaintea cărții sale din 1964, ca urmare a respins un flux constant de corespondenți din toată lumea și din tot felul de profesii: șefi pentru directorii universităților de frunte, cetățeni ai mănăstirilor necunoscute, legați de legături cunoscute.".

Companiile de jocuri au arătat, de asemenea, respect pentru noile puzzle-uri, iar pe parcursul mai multor luni au apărut titluri pe platformă. noi puzzle-uri senzaționale", și au fost urmați de alte zeci de puzzle-uri și jocuri bazate pe polyomino (nu, tipul vulpea diabolică nu este ca Sol):

Sol a scris articole despre poliomino la încă 50 de ani de la prima publicare. În 1961, am introdus variante de împărțire în diferite părți ale „rep-tiles”, cu ajutorul cărora puteți crea plăci fractale („Infin-tile”). Totuși, tot ceea ce a lucrat Sol cu ​​poliomino a inclus rezolvarea unor probleme specifice.

Nu este suficient pentru mine să scot în evidență specificul poliomino; Aș dori să subliniez că există fenomene asociate cu ei care sunt mai veninoase în natură. Se pare că puteți „pava” cu ușurință întreaga suprafață cu ajutorul mai multor forme simple. Dar în cazul polyomino (și, de asemenea, cu toate jocurile și puzzle-urile bazate pe ele), devine clar că totul nu este atât de simplu. Și să fiu sincer, în anii 1960 s-a realizat că acest lucru era teoretic incoerent.

Dacă suntem pur și simplu delimitați de zonă, atunci, în principiu, putem pur și simplu să reorganizam toate figurile posibile și apoi să ne minunăm de cum crește mirosul după cum este necesar. Cu toate acestea, există o inconsecvență de care nu ne putem deranja. Este posibil să găsiți o modalitate de a plasa cu succes milioane de cifre, dar nu există nicio garanție că acest rezultat poate fi extins și mai mult.

Se pare că aceasta poate arăta ca mașina de lucru a lui T'uring - sau ca mitraliera unui client. Începi cu o linie de plăci. Așa că mâncarea este despre cei care pot fi pavați la nesfârșit, mâncarea echivalentă este despre cei care pot fi instalați pentru o mașină Turing, astfel încât să-i dea capacitatea de a nu ezita. În dreapta, deoarece o mașină Turing este universală (deci poate fi programată să facă orice număr de calcule), atunci problema teselării pentru aceasta poate fi nedetașabilă, ceea ce înseamnă că problema teselării va fi, de asemenea, nedetașabilă. .

Desigur, acest lucru ar trebui să fie stocat în setul de formulare de ieșire. Răspunsul constă în cât de pliabile sunt formularele pentru a codifica calcule universale și a duce la problema inextricabilă a pavajului. Solomon Golomb știa despre literatura pe această temă, dar nu era deosebit de interesat de ea.

Se pare că seturile complexe și atent fragmentate de polinoame suportă de fapt calcule universale. Ce zici de un set simplu? De ce ar trebui să beau ceva simplu pentru a-l cheltui pe altcineva? Dacă te uiți la toate sistemele pe care le-am învățat, atunci cel mai simplu set de adevăr pare a fi simplu. E greu de știut.

Este clar că sarcina simplă ține de binecunoscutele poliominoe, care pot umple cu succes suprafețele, chiar dacă doar intermitent. Roger Penrose în 1994, cel mai faimos buttstock. La cartea mea Un nou tip de știință Am creat un mic fund simplu cu 3 poliominoe:

Istoria Reshta

Sol avea treizeci de ani când a obținut un succes remarcabil în domeniul înregistrării și poliomino... Era deja o persoană activă. A scris sute de articole, dintre care unele s-au extins asupra lucrărilor sale anterioare, dintre care unele erau dovezi ale nutriției care i-a fost oferită, iar unele au fost scrise, se pare, pur și simplu de dragul satisfacției - pentru a înțelege toate discuțiile despre numere, secvențe, criptosisteme etc. d.

Înregistrați un nume și un poliomino – volumul subiectelor (așa cum se arată în categoriile din clasificarea AMS). În ultimul deceniu, duhoarea resentimentelor a luat o nouă rundă de dezvoltare când au început să fie efectuate experimente pe calculator pe baza lor; De asemenea, Sol a participat activ la ei. Vor fi lipsiți de multă hrană fără dovezi. Și din moment ce este posibil să cunoaștem marile matrici Hadamard pentru registrele cu o poartă liniară, atunci se știe puțin despre registrele cu o poartă neliniară, chiar dacă toate sunt poliominoe neperiodice și alte exotice.

Sol a fost mereu ocupat cu puzzle-uri - atât matematice, cât și verbale. În fiecare oră în coloana de puzzle-uri pentru Los Angeles Timesși a scris timp de 32 de ani Gambity Golomba Revista pentru absolvenți John Hopkins. După ce a participat la testarea MegaIQ și după ce a câștigat o excursie la Casa Albă, el și șeful său au ajuns în primele cinci din țară.

A contribuit cu mari eforturi la activitatea sa la universitate: nu numai prin recrutarea studenților și studenților absolvenți și prin participarea la ședințe administrative (președinte al universității, prorector pentru cercetare etc.), dar și prin formularea ideii sale despre management linya zagalom universitar (de exemplu, scrierea unui articol, intitulat „Consultanță la facultate: câștig sau pierde?”; Verdict: nu, nu este bine pentru universitate!). La Universitatea din California, s-a apucat de headhunting și, într-o oră de muncă, a ajutat universitatea să se ridice de nicăieri în fruntea clasamentului programelor educaționale.

Și apoi va fi consultanță. Sol a fost scrupulos și nu i-a dezvăluit pe cei care lucrau pentru organizații obișnuite. La sfârșitul anilor 1960, a fost dezamăgit de faptul că toți ceilalți au început să vândă jocuri pe bază de poliomino, iar Saul a închis compania, numind-o Recreational Technology, Inc. Cererile nu au mers bine, Prote Sol l-a întâlnit pe Elvin Berlekamp, ​​un profesor la Berkeley, care era plin de teorii de codificare și puzzle-uri. De-a lungul anilor, duhoarea a acoperit compania Cyclotomics (în onoarea membrilor bogați ciclotomi ai minții X n- 1), care a fost vândut în cele din urmă către Kodak pentru o sumă ordonată (Berlekamp a creat același sistem de tranzacționare algoritmică, pe care l-a vândut apoi lui Jim Simons și a devenit punctul de intrare pentru Renaissance Technologies - unul dintre cele mai mari fonduri speculative de astăzi).

Mai mult de 10.000 de brevete sunt asociate cu roboții lui Sol, iar axa lui Sol însuși a fost eliminată. un singur brevet pe criptosisteme bazate pe cvasi-grupuri - și cred că am câștigat puțin pentru a ne comercializa munca.

Cu o istorie lungă, Sol a lucrat cu Technion, Institutul Israelian de Tehnologie. Vorbind singur ca despre " evreu ortodox nereligios„, și, în același timp, pentru începători, seminarii din cartea lui Butya, precum și lucrul la descifrarea unor părți din comorile Mării Moarte (manuscrisele Qumran).

Sol și echipa sa au crescut foarte mult, iar „centrul lumii” pentru Sol a fost nebunește biroul lui din Los Angeles, la Universitatea din California, cel în care echipa sa a trăit cel puțin 60 de ani. A plecat odată la prieteni și la studenți. Și în familia mea. Fiica lui Astrid a jucat rolul unui student într-un cântec despre Richard Feynman (te-a chemat) și în romanul unui prieten ca unul dintre personaje. Beatrice și-a dedicat cariera dezvoltării unui nivel matematic de acuratețe pentru diferite tipuri de indicații și diagnostice medicale (boli asociate războiului din Zatots persani, efectele statinelor, atacurile tocilarului etc.). Mi-am câștigat, în sfârșit, mica mea contribuție din viața Beatricei, care a cunoscut-o ca persoană, care mai târziu a devenit persoana ei - cu Terri Sejnowski, unul dintre fondatorii neuroștiinței computaționale moderne.

Părea că Sol se îmbogățește, dar nu era nevoie să vorbim despre detalii. Uneori îmi doream să vorbesc cu el despre știință și matematică, dar apoi puteam spune povești (deseori chiar povești) atât despre indivizi, cât și despre organizații (" Îți vine să crezi că [1985], după multă prezență la conferințe, Claude Shannon s-a prezentat pur și simplu neanunțat la bar pentru o altă conferință despre teoria informației?"; "Știți cât ar trebui să plătească șeful Institutului de Tehnologie din California pentru a-l forța să plece în Arabia Saudită?", etc.).

Privind în urmă, îmi dau seama că am vrut să-l obțin pe Saul de la cele mai bune abilități de matematică pe care le-am acumulat de la locul meu de muncă. Cred că nu mi-am dat seama că îmi place să rezolv problemele cauzate de alți oameni. Indiferent de contribuțiile semnificative la dezvoltarea infrastructurii lumii financiare, Sol însuși nu este nicidecum un învingător al computerelor. Ați scris deja, astfel încât să puteți face cu ușurință calculele în minte. Până la vârsta de 70 de ani, nu am folosit niciodată e-mailul și nu am folosit niciodată un computer acasă, dacă am vrut telefon mobil la nyogo buv (zvichainy prin e-mail Nu era nimic altceva de văzut. Am ghicit că aproape de acea soartă aflasem povestea lui Adie Lovelace; Vіn Vіdpov: " Povestea lui Adi Lovelace ca programator de masă al lui Babbage este atât de extinsă încât toată lumea pare să o accepte ca pe un fapt, chiar dacă nu stric mâncarea pentru asta.").

Fiicele lui Sol au organizat din nou o petrecere cu ocazia aniversării a 80 de ani și au făcut următoarele solicitări:

Sol a avut o mulțime de probleme cu sănătatea, deși părea că nici măcar nu se observă în ritmul său de viață. Starea de sănătate a prietenilor săi se înrăutățea, iar cantitatea de viață rămasă avea să se epuizeze în curând. Vineri Sol, ca și înainte, a mers la biroul lui, iar sâmbătă seara a murit în somn. Echipa sa, Bo, și-a supraviețuit vieții cu doi ani și a murit cu doar două zile înainte de cea de-a 60-a zi de sărbătoare.

Deși Sol și Pishov, robotul său este viu în octlioane de biți în lumea digitală.

La revedere, Sol. Și pentru noi toți - așa.



 

 

Tse tsikavo: