BN_BN2BIN - Online Linux Manual PageSection : 3
Updated : 2021-03-26
Source : 1.1.1k
Note : OpenSSL

NAMEBN_bn2binpad, BN_bn2bin, BN_bin2bn, BN_bn2lebinpad, BN_lebin2bn, BN_bn2hex, BN_bn2dec, BN_hex2bn, BN_dec2bn, BN_print, BN_print_fp, BN_bn2mpi, BN_mpi2bn − format conversions

SYNOPSIS​ #include <openssl/bn.h> ​ ​ int BN_bn2bin(const BIGNUM *a, unsigned char *to); ​ int BN_bn2binpad(const BIGNUM *a, unsigned char *to, int tolen); ​ BIGNUM *BN_bin2bn(const unsigned char *s, int len, BIGNUM *ret); ​ ​ int BN_bn2lebinpad(const BIGNUM *a, unsigned char *to, int tolen); ​ BIGNUM *BN_lebin2bn(const unsigned char *s, int len, BIGNUM *ret); ​ ​ char *BN_bn2hex(const BIGNUM *a); ​ char *BN_bn2dec(const BIGNUM *a); ​ int BN_hex2bn(BIGNUM **a, const char *str); ​ int BN_dec2bn(BIGNUM **a, const char *str); ​ ​ int BN_print(BIO *fp, const BIGNUM *a); ​ int BN_print_fp(FILE *fp, const BIGNUM *a); ​ ​ int BN_bn2mpi(const BIGNUM *a, unsigned char *to); ​ BIGNUM *BN_mpi2bn(unsigned char *s, int len, BIGNUM *ret);

DESCRIPTIONBN_bn2bin() converts the absolute value of a into big-endian form and stores it at to. to must point to BN_num_bytes(a) bytes of memory. BN_bn2binpad() also converts the absolute value of a into big-endian form and stores it at to. tolen indicates the length of the output buffer ​to. The result is padded with zeros if necessary. If tolen is less than BN_num_bytes(a) an error is returned. BN_bin2bn() converts the positive integer in big-endian form of length ​len at s into a BIGNUM and places it in ret. If ret is ​NULL, a new BIGNUM is created. BN_bn2lebinpad() and BN_lebin2bn() are identical to BN_bn2binpad() and ​BN_bin2bn() except the buffer is in little-endian format. BN_bn2hex() and BN_bn2dec() return printable strings containing the hexadecimal and decimal encoding of a respectively. For negative numbers, the string is prefaced with a leading ''. The string must be freed later using OPENSSL_free(). BN_hex2bn() takes as many characters as possible from the string str, including the leading character '' which means negative, to form a valid hexadecimal number representation and converts them to a BIGNUM and stores it in **a. If *a is NULL, a new BIGNUM is created. If ​a is NULL, it only computes the length of valid representation. A negative zero is converted to zero. ​BN_dec2bn() is the same using the decimal system. BN_print() and BN_print_fp() write the hexadecimal encoding of a, with a leading '' for negative numbers, to the BIO or FILEfp. BN_bn2mpi() and BN_mpi2bn() convert BIGNUMs from and to a format that consists of the number's length in bytes represented as a 4−byte big-endian number, and the number itself in big-endian format, where the most significant bit signals a negative number (the representation of numbers with the MSB set is prefixed with null byte). BN_bn2mpi() stores the representation of a at to, where to must be large enough to hold the result. The size can be determined by calling BN_bn2mpi(a, NULL). BN_mpi2bn() converts the len bytes long representation at s to a BIGNUM and stores it at ret, or in a newly allocated BIGNUM if ret is NULL.

RETURN VALUESBN_bn2bin() returns the length of the big-endian number placed at to. ​BN_bin2bn() returns the BIGNUM, NULL on error. BN_bn2binpad() returns the number of bytes written or −1 if the supplied buffer is too small. BN_bn2hex() and BN_bn2dec() return a null-terminated string, or NULL on error. BN_hex2bn() and BN_dec2bn() return the number of characters used in parsing, or 0 on error, in which case no new BIGNUM will be created. BN_print_fp() and BN_print() return 1 on success, 0 on write errors. BN_bn2mpi() returns the length of the representation. BN_mpi2bn() returns the BIGNUM, and NULL on error. The error codes can be obtained by ERR_get_error(3).

SEE ALSOERR_get_error(3), BN_zero(3), ​ASN1_INTEGER_to_BN(3), ​BN_num_bytes(3)

COPYRIGHTCopyright 2000−2020 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the License). You may not use this file except in compliance with the License. You can obtain a copy in the file LICENSE in the source distribution or at <https://www.openssl.org/source/license.html>.
0
Johanes Gumabo
Data Size   :   18,410 byte
man-BN_bn2hex.3sslBuild   :   2024-12-05, 20:55   :  
Visitor Screen   :   x
Visitor Counter ( page / site )   :   2 / 172,171
Visitor ID   :     :  
Visitor IP   :   3.129.63.214   :  
Visitor Provider   :   AMAZON-02   :  
Provider Position ( lat x lon )   :   39.962500 x -83.006100   :   x
Provider Accuracy Radius ( km )   :   1000   :  
Provider City   :   Columbus   :  
Provider Province   :   Ohio ,   :   ,
Provider Country   :   United States   :  
Provider Continent   :   North America   :  
Visitor Recorder   :   Version   :  
Visitor Recorder   :   Library   :  
Online Linux Manual Page   :   Version   :   Online Linux Manual Page - Fedora.40 - march=x86-64 - mtune=generic - 24.12.05
Online Linux Manual Page   :   Library   :   lib_c - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Online Linux Manual Page   :   Library   :   lib_m - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Data Base   :   Version   :   Online Linux Manual Page Database - 24.04.13 - march=x86-64 - mtune=generic - fedora-38
Data Base   :   Library   :   lib_c - 23.02.07 - march=x86-64 - mtune=generic - fedora.36

Very long time ago, I have the best tutor, Wenzel Svojanovsky . If someone knows the email address of Wenzel Svojanovsky , please send an email to johanes_gumabo@yahoo.co.id .
If error, please print screen and send to johanes_gumabo@yahoo.co.id
Under development. Support me via PayPal.

ERROR : Need New Coding :         (parse_manual_page_|249|B___N_bin2bn.3ssl|36/37|el══─{─══.|.el══─{─══. ds -- \|\(em\| )         (htmlprn|149|B___N_bin2bn.3ssl|36/37|.el══─{─══. ds --  —  |.el══─{─══. ds -- \|\(em\| )         (parse_manual_page_|249|B___N_bin2bn.3ssl|43|br══─}─══|'br══─}─══ )         (htmlprn|149|B___N_bin2bn.3ssl|43|'br══─}─══ |'br══─}─══ )