Scroll to navigation

des_crypt(3) Library Functions Manual des_crypt(3)

NUME

des_crypt, ecb_crypt, cbc_crypt, des_setparity, DES_FAILED - criptare DES rapidă

BIBLIOTECA

Biblioteca C standard (libc, -lc)

SINOPSIS

#include <rpc/des_crypt.h>
int ecb_crypt(char *key, char data[.datalen], unsigned int datalen,
              unsigned int mode);
int cbc_crypt(char *key, char data[.datalen], unsigned int datalen,
              unsigned int mode, char *ivec);
void des_setparity(char *key);
int DES_FAILED(int status);

DESCRIERE

ecb_crypt() și cbc_crypt() implementează NBS DES („Data Encryption Standard”, Standardul de criptare a datelor). Aceste rutine sunt mai rapide și mai generaliste decât crypt(3). De asemenea, acestea pot utiliza un dispozitiv electronic DES, dacă acesta este disponibil. ecb_crypt() criptează în modul ECB („Electronic Code Book”, Carte de coduri electronice), care criptează blocuri de date în mod independent. cbc_crypt() criptează în modul CBC („Cipher Block Chaining”, Înlănțuirea blocurilor de cifrare), care înlănțuie blocuri succesive. Modul CBC protejează împotriva inserțiilor, ștergerilor și substituirilor de blocuri. De asemenea, regularitățile din textul clar nu vor apărea în textul cifrat.

Iată cum se utilizează aceste rutine. Primul argument, key, este cheia de criptare de 8 octeți cu paritate. Pentru a ajusta paritatea cheii, care în cazul DES se află în bitul inferior al fiecărui octet, utilizați des_setparity(). Al doilea argument, data, conține datele care urmează să fie criptate sau decriptate. Al treilea argument, datalen, este lungimea în octeți a lui data, care trebuie să fie un multiplu de 8. Al patrulea argument, mode, este format prin combinarea cu ajutorul lui OR a unor lucruri. Pentru direcția de criptare OR în DES_ENCRYPT sau DES_DECRYPT. Pentru criptare software versus criptare hardware, OR trebuie să fie, fie în DES_HW, fie în DES_SW. Dacă este specificat DES_HW și nu există hardware, atunci criptarea este efectuată în software, iar rutina returnează DESERR_NOHWDEVICE. Pentru cbc_crypt(), argumentul ivec este vectorul de inițializare de 8 octeți pentru înlănțuire. Acesta este actualizat cu următorul vector de inițializare la returnare.

VALOAREA RETURNATĂ

Nicio eroare.
Criptarea a reușit, dar a fost realizată prin software în loc de dispozitivul/componenta electronică solicitată.
A apărut o eroare în dispozitivul/componenta electronică sau în controlorul acestuia/acesteia.
Argument greșit pentru rutină.

Având în vedere un rezultat de stare stat, macrocomanda DES_FAILED(stat) este falsă doar pentru primele două stări.

VERSIUNI

Aceste funcții au fost adăugate în glibc 2.1.

Deoarece utilizează cifrul bloc DES, care nu mai este considerat sigur, ecb_crypt(), ecb_crypt(), crypt_r() și des_setparity() au fost eliminate în glibc 2.28. Aplicațiile ar trebui să treacă la o bibliotecă de criptografie modernă, cum ar fi libgcrypt.

ATRIBUTE

Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).

Interfață Atribut Valoare
ecb_crypt(), cbc_crypt(), des_setparity() Siguranța firelor MT-Safe

STANDARDE

4.3BSD. Nu există în POSIX.1.

CONSULTAȚI ȘI

des(1), crypt(3), xcrypt(3)

TRADUCERE

Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>

Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.

Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.

15 decembrie 2022 Pagini de manual de Linux 6.03