函数逻辑报告 |
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 插件可实现:逻辑报告 代码生成和批量转换代码 |