OpenSSL密码库算法笔记——第0.2.5章 其它

在程序中会经常看到一个宏定义bn_correct_top,它是为了便于程序调试而放置的,目前并无任何功能,是一个空语句。但若定义了BN_DEBUG,则该宏定义可以检查大整数的长度是否有误。

───────────────────────────────────────

#define bn_correct_top(BIGNUM *a)

功能:    无(目前为空语句)

输入:    a

输出:    -

返回:    -

出处:    bn.h

备注:    宏定义。现在(没有定义BN_DEBUG)是空语句。

但是如果定义了BN_DEBUG,则该宏定义可以检查大整数的长度是否有误。

───────────────────────────────────────

大整数的扩展涉及到多个函数和宏定义,在这里只介绍上层的最常用的两个。而更底层的扩展函数和宏定义就不做介绍了,大家有兴趣的话,可以查阅下面两个宏定义的详细定义(出处为bn.h)。

        将大整数扩展为指定个字的宏定义如下:

───────────────────────────────────────

#define bn_wexpand(BIGNUM *a, int words)

功能:    将大整数扩展为words个字

输入:    a,words

输出:    a【扩展后的a】

返回:    a【扩展后的a】或者0【出错】

出处:    bn.h

备注:    宏定义。

───────────────────────────────────────

        如果要将大整数扩展为给定的比特数:

───────────────────────────────────────

#define bn_expand(BIGNUM *a, int bits)

功能:    将大整数扩展为bits个比特

输入:    a,bits

输出:    a【扩展后的a】

返回:    a【扩展后的a】或者0【出错】

出处:    bn.h

备注:    宏定义。

───────────────────────────────────────

你可能感兴趣的:(openssl,密码,密码技术与应用)