DSA_SIGN(3ssl) OpenSSL DSA_SIGN(3ssl)

DSA_sign, DSA_sign_setup, DSA_verify - semnături DSA

#include <openssl/dsa.h>

Următoarele funcții au fost depreciate de la OpenSSL 3.0 și pot fi ascunse complet prin definirea OPENSSL_API_COMPAT cu o valoare de versiune adecvată, a se vedea openssl_user_macros(7):

int DSA_sign(int type, const unsigned char *dgst, int len,
             unsigned char *sigret, unsigned int *siglen, DSA *dsa);
int DSA_sign_setup(DSA *dsa, BN_CTX *ctx, BIGNUM **kinvp, BIGNUM **rp);
int DSA_verify(int type, const unsigned char *dgst, int len,
               unsigned char *sigbuf, int siglen, DSA *dsa);

Toate funcțiile descrise pe această pagină sunt depreciate. Aplicațiile trebuie să utilizeze în schimb EVP_PKEY_sign_init(3), EVP_PKEY_sign(3), EVP_PKEY_verify_init(3) și EVP_PKEY_verify(3).

DSA_sign() calculează o semnătură digitală pe rezumatul mesajului len byte dgst utilizând cheia privată dsa și plasează codificarea ASN.1 DER la sigret. Lungimea semnăturii este plasată în *siglen. sigret trebuie să indice DSA_size(dsa) bytes de memorie.

DSA_sign_setup() este definită numai pentru compatibilitate binară înapoi și nu trebuie utilizată. Începând cu OpenSSL 1.1.0, tipul DSA este opac și ieșirea DSA_sign_setup() nu poate fi utilizată în niciun fel: apelarea acestei funcții va cauza doar o suprasarcină și nu afectează (pre-)calculul semnăturii actuale.

DSA_verify() verifică dacă semnătura sigbuf de dimensiune siglen corespunde unui rezumat al mesajului dgst de dimensiune len. dsa este cheia publică a semnatarului.

Parametrul type este ignorat.

Generatorul aleatoriu trebuie inițializat atunci când este apelată funcția DSA_sign() (sau DSA_sign_setup()). Dacă inițializarea sau reinitializarea automată a OpenSSL CSPRNG eșuează din cauza unor circumstanțe externe (vezi RAND(7)), operația va eșua.

DSA_sign() și DSA_sign_setup() returnează 1 în caz de succes, 0 în caz de eroare. DSA_verify() returnează 1 pentru o semnătură validă, 0 pentru o semnătură incorectă și -1 în caz de eroare. Codurile de eroare pot fi obținute prin ERR_get_error(3).

ÎN CONFORMITATE CU

Standardul federal american de procesare a informațiilor FIPS186-4 (Standardul de semnătură digitală, DSS), ANSI X9.30

DSA_new(3), ERR_get_error(3), RAND_bytes(3), DSA_do_sign(3), RAND(7)

Toate aceste funcții au fost depreciate în OpenSSL 3.0.

Drepturi de autor 2000-2021 The OpenSSL Project Authors. Toate drepturile rezervate.

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 https://www.openssl.org/source/license.html.

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.

5 august 2025 3.5.2