函数逻辑报告 |
Source Code:lib\mpi\mpi-pow.c |
Create Date:2022-07-27 08:18:05 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:异或取模
函数原型:int mpi_powm(MPI res, MPI base, MPI exp, MPI mod)
返回类型:int
参数:
类型 | 参数 | 名称 |
---|---|---|
MPI | res | |
MPI | base | |
MPI | exp | |
MPI | mod |
27 | struct karatsuba_ctx karactx = {} |
36 | assign_rp等于0 |
37 | tsize等于0 |
46 | rp等于 array with the limbs |
47 | ep等于 array with the limbs |
52 | 如果非esize则 |
55 | number of valid limbs 等于如果msize恒等于1且 array with the limbs [0]恒等于1则0否则1 |
56 | 如果 number of valid limbs 则 |
62 | indicates a negative number 等于0 |
63 | 转到:leave |
70 | mp等于mp_marker等于-- mpiutil.c -- |
76 | 否则Copy N limbs from S to D. (mp, array with the limbs , msize) |
84 | bp等于bp_marker等于-- mpiutil.c -- |
94 | MPN_NORMALIZE(bp, bsize) |
95 | 否则bp等于 array with the limbs |
98 | 如果非bsize则 |
104 | 如果 array size (# of allocated limbs) 小于size则 |
113 | 否则 |
116 | rp等于 array with the limbs |
118 | 否则 |
122 | bp等于bp_marker等于-- mpiutil.c -- |
125 | Copy N limbs from S to D. (bp, rp, bsize) |
129 | ep等于ep_marker等于-- mpiutil.c -- |
132 | Copy N limbs from S to D. (ep, rp, esize) |
144 | Copy N limbs from S to D. (rp, bp, bsize) |
155 | xp等于xp_marker等于-- mpiutil.c -- |
159 | negative_result等于ep[0]按位与1且 indicates a negative number |
165 | c等于BITS_PER_MPI_LIMB减1减c |
177 | 循环 |
183 | 如果rsize小于sted 4, 16, 32 and 64, where 16 gave the best performance when* checking a 768 and a 1024 bit ElGamal signature.* (wk 22.12.97) 则mpih_sqr_n_basecase(xp, rp, rsize) |
185 | 否则 |
215 | 如果e小于0则 |
223 | 否则 |
243 | e左移等于1位 |
244 | c自减 |
245 | cond_resched() |
248 | i自减 |
252 | c等于BITS_PER_MPI_LIMB |
261 | 如果mod_shift_cnt则 |
264 | rp等于 array with the limbs |
265 | 如果carry_limb则 |
266 | rp[rsize]等于carry_limb |
267 | rsize自加 |
269 | 否则 |
270 | Copy N limbs from S to D. ( array with the limbs , rp, rsize) |
271 | rp等于 array with the limbs |
282 | MPN_NORMALIZE(rp, rsize) |
285 | 如果negative_result且rsize则 |
291 | MPN_NORMALIZE(rp, rsize) |
293 | number of valid limbs 等于rsize |
296 | leave : |
297 | rc等于0 |
298 | enomem : |
299 | mpihelp_release_karatsuba_ctx( & karactx) |
300 | 如果assign_rp则mpi_assign_limb_space(res, rp, size) |
310 | 如果tspace则mpi_free_limb_space(tspace) |
312 | 返回:rc |
名称 | 描述 |
---|---|
digsig_verify_rsa | RSA公钥签名验证 |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |