Centura | |
---|---|
Creată | 2001 _ |
publicat | 2007 _ |
Dimensiunea cheii | 256 de biți |
Dimensiunea blocului | 128 de biți |
Numărul de runde | opt |
Tip de | combinație de rețea Feistel și schema en: Lai-Massey |
BelT este standardul de stat pentru criptarea simetrică și controlul integrității din Republica Belarus. Numele complet al standardului este STB 34.101.31-2007 „Tehnologia informației și securitatea. Algoritmi criptografici pentru criptare și control al integrității. Adoptat ca standard provizoriu în 2007. Introdus ca standard final în 2011.
BelT este un cifru bloc cu o cheie de 256 de biți și 8 cicluri de criptotransformare, care funcționează cu cuvinte de 128 de biți. Algoritmii criptografici ai standardului sunt construiți pe baza modurilor de criptare de bază pentru blocurile de date. Toți algoritmii standard sunt împărțiți în 8 grupuri:
Primele patru grupuri sunt pentru mesaje securizate. Fiecare grup include un algoritm de criptare și un algoritm de decriptare bazat pe o cheie secretă. Părțile cu o cheie partajată pot face schimb de mesaje criptându-le înainte de a fi trimise și decriptându-le după ce sunt primite. În modurile de înlocuire simplă și concatenare a blocurilor, mesajele care conțin cel puțin un bloc sunt criptate, iar în modurile de gamma cu feedback și contor, mesajele de lungime arbitrară sunt criptate.
Al cincilea algoritm este conceput pentru a controla integritatea mesajelor folosind inserții de imitație - cuvinte de control care sunt determinate folosind o cheie secretă. Părțile care au o cheie comună pot organiza controlul integrității în timpul schimbului de mesaje adăugându-le inserții false atunci când trimit și verificând inserții false la primire. Verificarea inserțiilor imitate permite în plus părții destinatare să verifice dacă partea expeditorului cunoaște cheia secretă, adică să verifice autenticitatea mesajelor.
În a șasea grupă, mesajul original este dat de două părți: deschis și critic. Algoritmii de protecție sunt proiectați să controleze integritatea ambelor părți și să asigure confidențialitatea părții critice. Când protecția este setată, se calculează inserția de imitație a întregului mesaj, iar partea sa critică este criptată. Când protecția este eliminată, uzurparea identității este verificată și, dacă verificarea are succes, partea critică este decriptată.
În algoritmii celui de-al șaptelea grup, lungimea mesajului protejat trebuie imediat cunoscută; acești algoritmi se recomandă a fi folosiți pentru a proteja cheile. Cheia protejată este însoțită de un antet public care conține atributele publice ale cheii și este, de asemenea, o valoare de verificare pentru verificarea integrității. Pot fi utilizate anteturi persistente fixe, care servesc doar ca verificări de integritate. Când protecția este setată, cheia este criptată împreună cu antetul acesteia. Când protecția este eliminată, se realizează transformarea inversă și antetul decriptat este comparat cu antetul de control.
Al optulea algoritm este conceput pentru a calcula valorile hash - cuvinte de control care sunt determinate fără a utiliza o cheie. Părțile pot organiza verificări ale integrității mesajelor comparând valorile lor hash cu valorile hash de control valide. Schimbarea unui mesaj cu o probabilitate mare modifică valoarea hash corespunzătoare și, prin urmare, valorile hash pot fi utilizate în locul mesajelor în sine, de exemplu, în sistemele de semnătură digitală electronică.
Datele de intrare ale algoritmilor de criptare și decriptare sunt blocul și cheia
Ieșirea este un bloc - rezultatul criptării sau decriptării cuvântului de pe cheie sau
Datele de intrare pentru criptare sunt pregătite după cum urmează:
Transform pune în linie cuvânt , cuvânt
deplasare ciclică la stânga cu bit.
operația de înlocuire a unui șir de intrare de 8 biți cu o înlocuire din tabelul 1.
Înlocuirea este dată de un tabel fix. Tabelul folosește reprezentarea hexazecimală a cuvintelor
și operații de adunare și scădere modulo
Pentru a cripta un bloc pe o cheie , se parcurg următorii pași:
Pentru a decripta un bloc pe o cheie , se parcurg următorii pași:
.
Algoritmul hash este utilizat pentru a calcula o valoare hash care poate fi folosită ulterior pentru a verifica integritatea datelor.
Intrarea în algoritm este un mesaj de lungime arbitrară, reprezentat ca o secvență de biți .
Ieșirea este un cuvânt .
Pentru ca algoritmul să funcționeze, secvența inițială de biți este umplută cu zerouri, astfel încât lungimea sa să fie divizibilă cu 256 și este reprezentată după cum urmează: . Vom avea nevoie și de variabile și .
Să fie un cuvânt .
Definim două mapări:
care acţionează asupra cuvântului după reguli:
unde , .
Algoritmul se realizează în mai multe etape:
Criptosisteme simetrice | |
---|---|
Cifruri în flux | |
Rețeaua Feistel | |
Rețeaua SP | |
Alte |
Funcții hash | |
---|---|
scop general | |
Criptografic | |
Funcții de generare a cheilor | |
Numărul de verificare ( comparație ) | |
Hashes |
|