.\" -*- coding: UTF-8 -*- .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Pod::Man v6.0.2 (Pod::Simple 3.45) .\" .\" Standard preamble: .\" ======================================================================== .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .ie n \{\ . ds C` "" . ds C' "" 'br\} .el\{\ . ds C` . ds C' 'br\} .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .de IX .. .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .if n .ds AD l .\" .\" Required to disable full justification in groff 1.23.0. .\" ======================================================================== .\" .IX Titlu "EVP_BYTESTOKEY 3ssl" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH EVP_BYTESTOKEY 3ssl "5 august 2025" 3.5.2 OpenSSL .if n .ad l .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .nh .SH NUME EVP_BytesToKey \- rutină de criptare pe bază de parolă .SH SINOPSIS .IX Antet SINOPSIS .Vb 1 \& #include \& \& int EVP_BytesToKey(const EVP_CIPHER *type, const EVP_MD *md, \& const unsigned char *salt, \& const unsigned char *data, int datal, int count, \& unsigned char *key, unsigned char *iv); .Ve .SH DESCRIERE .IX Antet DESCRIERE \&\fBEVP_BytesToKey()\fP derivă o cheie și un IV din diferiți parametri. \fBtype\fP este cifrul pentru care se derivă cheia și IV. \fBmd\fP este suma de control a mesajului care trebuie utilizată. Parametrul \fBsalt\fP este utilizat ca sare în obținere: trebuie să indice un tampon de 8 octeți sau NULL dacă nu se utilizează nicio sare. \fBdata\fP este un tampon care conține \&\fBdatal\fP octeți și care este utilizat pentru obținerea datelor de creare a cheilor. \fBcount\fP este numărul de iterații de utilizat. Cheia și IV obținute vor fi scrise în \fBkey\fP și, respectiv, \fBiv\fP. .SH NOTE .IX Antet NOTE O aplicație tipică a acestei funcții este obținerea materialului de chei pentru un algoritm de criptare dintr\-o parolă din parametrul \fBdata\fP. .PP Creșterea valorii parametrului \fBcount\fP încetinește algoritmul, ceea ce face mai dificil pentru un atacator să efectueze un atac prin forță brută folosind un număr mare de parole candidate. .PP Dacă lungimea totală a cheii și a IV este mai mică decât lungimea sumei de control și se utilizează \&\fBMD5\fP, atunci algoritmul de obținere este compatibil cu PKCS#5 v1.5, altfel se utilizează o extensie non\-standard pentru a obține datele suplimentare. .PP Aplicațiile mai noi ar trebui să utilizeze un algoritm mai modern, cum ar fi PBKDF2 definit în PKCS#5v2.1 și furnizat de PKCS5_PBKDF2_HMAC. .SH "ALGORITM DE OBȚINERE A CHEILOR" .IX Antet "ALGORITM DE OBȚINERE A CHEILOR" Cheia și IV sunt obținute prin concatenarea D_1, D_2 etc. până când sunt disponibile suficiente date pentru cheie și IV. D_i este definit ca: .PP .Vb 1 \& D_i = HASH^count(D_(i\-1) || data || salt) .Ve .PP unde || denotă concatenarea, D_0 este gol, HASH este algoritmul de sumă de control utilizat, HASH^1(data) este un simplu HASH(data), HASH^2(data) este HASH(HASH(data)) și așa mai departe. .PP Octeții inițiali sunt utilizați pentru cheie, iar octeții următori pentru IV. .SH "VALORI RETURNATE" .IX Antet "VALORI RETURNATE" Dacă \fBdata\fP este NULL, atunci \fBEVP_BytesToKey()\fP returnează numărul de octeți necesar pentru a stoca cheia obținută. În caz contrar, \fBEVP_BytesToKey()\fP returnează dimensiunea cheii obținute în octeți sau 0 în caz de eroare. .SH "CONSULTAȚI ȘI" .IX Antet "CONSULTAȚI ȘI" \&\fBevp\fP\|(7), \fBRAND_bytes\fP\|(3), \&\fBPKCS5_PBKDF2_HMAC\fP\|(3), \&\fBEVP_EncryptInit\fP\|(3) .SH "DREPTURI DE AUTOR" .IX Antet "DREPTURI DE AUTOR" Drepturi de autor 2000\-2016 The OpenSSL Project Authors. Toate drepturile rezervate. .PP Licențiat sub Licența Apache 2.0 („License”). Nu aveți voie să utilizați acest fișier decât în conformitate cu licența. Puteți obține o copie din fișierul LICENSE din distribuția sursei sau de la . .PP .SH TRADUCERE Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu . .PP Această traducere este documentație gratuită; citiți .UR https://www.gnu.org/licenses/gpl-3.0.html Licența publică generală GNU Versiunea 3 .UE sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE. .PP Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la .MT translation-team-ro@lists.sourceforge.net .ME .