bigint.c
内容 | 行数 | 比率 |
---|---|---|
コメント行数 | 261 | 17% |
空行行数 | 318 | 21% |
実行行数 | 917 | 62% |
合計行数 | 1496 | 100% |
内容 | 定義数 |
---|---|
関数数 | 41 |
No. | 型 | 名称 | 属性 | 説明 |
---|---|---|---|---|
1 |
Function | bi_initialize | BI_CTX * | @brief Start a new bigint context. |
2 |
Function | bi_terminate | void | @brief Close the bigint context and free any resources. |
3 |
Function | bi_copy | bigint * | @brief Increment the number of references to this object. |
4 |
Function | bi_permanent | void | @brief Simply make a bigint object "unfreeable" if bi_free() is called on it. |
5 |
Function | bi_depermanent | void | @brief Take a permanent object and make it eligible for freedom. |
6 |
Function | bi_free | void | @brief Free a bigint object so it can be used again. |
7 |
Function | int_to_bi | bigint * | @brief Convert an (unsigned) integer into a bigint. |
8 |
Function | bi_clone | bigint * | @brief Do a full copy of the bigint object. |
9 |
Function | bi_add | bigint * | @brief Perform an addition operation between two bigints. |
10 |
Function | bi_subtract | bigint * | @brief Perform a subtraction operation between two bigints. |
11 |
Static | bi_int_multiply | static bigint * | Perform a multiply between a bigint an an (unsigned) integer |
12 |
Function | bi_divide | bigint * | @brief Does both division and modulo calculations. |
13 |
Static | bi_int_divide | static bigint * | |
14 |
Static | modular_inverse | static comp | There is a need for the value of integer N' such that B^-1(B-1)-N^-1N'=1, |
15 |
Function | defined | ||
16 |
Static | comp_left_shift | static bigint * | Take each component and shift it up (in terms of components) |
17 |
Function | bi_import | bigint * | @brief Allow a binary sequence to be imported as a bigint. |
18 |
Function | bi_str_import | bigint * | @brief The testharness uses this code to import text hex-streams and |
19 |
Function | bi_print | void | |
20 |
Function | bi_export | void | @brief Take a bigint and convert it into a byte sequence. |
21 |
Function | bi_set_mod | void | @brief Pre-calculate some of the expensive steps in reduction. |
22 |
Function | bi_free_mod | void | @brief Used when cleaning various bigints at the end of a session. |
23 |
Static | regular_multiply | static bigint * | Perform a standard multiplication between two bigints. |
24 |
Static | karatsuba | static bigint * | |
25 |
Function | bi_multiply | bigint * | @brief Perform a multiplication operation between two bigints. |
26 |
Static | regular_square | static bigint * | |
27 |
Function | bi_square | bigint * | @brief Perform a square operation on a bigint. |
28 |
Function | bi_compare | int | @brief Compare two bigints. |
29 |
Static | more_comps | static void | |
30 |
Static | alloc | static bigint * | |
31 |
Static | find_max_exp_index | static int | |
32 |
Static | exp_bit_is_one | static int | |
33 |
Static | check | static void | |
34 |
Static | trim | static bigint * | |
35 |
Function | bi_mont | bigint * | @brief Perform a single montgomery reduction. |
36 |
Static | comp_mod | static bigint * | |
37 |
Static | partial_multiply | static bigint * | |
38 |
Function | bi_barrett | bigint * | @brief Perform a single Barrett reduction. |
39 |
Static | precompute_slide_window | static void | |
40 |
Function | bi_mod_power | bigint * | @brief Perform a modular exponentiation. |
41 |
Function | bi_mod_power2 | bigint * | @brief Perform a modular exponentiation using a temporary modulus. |
目次 | ファイル一覧 | 関数一覧 | ネームスペース一覧 | クラス一覧 | #define一覧 | マクロ一覧 | 外部変数一覧 | 構造体一覧 | 共用体一覧 | 列挙体一覧 | Const一覧 | 索引 | サイドメニュー