亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? ibe.h

?? IBE是一種非對稱密碼技術
?? H
?? 第 1 頁 / 共 2 頁
字號:
 * BuildIBEParamsFromBbCtx function.
 * <p>Do not call this function to destroy or free an ibeParams struct
 * unless you built it using the BuildIBEParamsFromBbCtx call.
 *
 * @param libCtx The library context to use.
 * @param ibeParams The address where this routine will find the struct
 * to demolish.
 * @return none
 */
void VOLT_CALLING_CONV VoltDemolishBBIBEParams VOLT_PROTO_LIST ((
   VoltLibCtx *libCtx,
   VtBBType1IBEParamInfo **theParams
));

/* This function extracts the IBE params (prime, subprime, basePoint,
 * pubPoint) from a bf_context_t (bfCtx) and puts them into
 * VtBFType1IBEParamInfo format.
 * <p>If you call this function, you must call DemolishIBEParams.
 *
 * @param libCtx The library context to use.
 * @param bfCtx The bfCtx containing the IBE information.
 * @param theParams The address where this routine will deposit a
 * pointer to the built ibeParams struct.
 * @return an int, 0 if the function completed successfully or a
 * non-zero error code.
 */
int VOLT_CALLING_CONV VoltBuildIBEParamsFromBfCtx VOLT_PROTO_LIST ((
   VoltLibCtx *libCtx,
   bf_context_t *bfCtx,
   VtBFType1IBEParamInfo **theParams
));

/* Demolish the ibeParams struct that was built by the
 * BuildIBEParamsFromBfCtx function.
 * <p>Do not call this function to destroy or free an ibeParams struct
 * unless you built it using the BuildIBEParamsFromBfCtx call.
 *
 * @param libCtx The library context to use.
 * @param ibeParams The address where this routine will find the struct
 * to demolish.
 * @return none
 */
void VOLT_CALLING_CONV VoltDemolishIBEParams VOLT_PROTO_LIST ((
   VoltLibCtx *libCtx,
   VtBFType1IBEParamInfo **theParams
));

/* Given the x-coordinate of a point, get the y-coordinate.
 * <p>The x-coordinate data will actually be a first byte indicating
 * the low order bit of the y-coordinate.
 * <p>If you have a bfCtx, pass it in, if not, pass NULL for the bfCtx
 * and this function will build one.
 * <p>This function does no argument checking.
 *
 * @param libCtx The libCtx to use.
 * @param mpCtx The mpCtx to use.
 * @param bfCtx If you have one for the params, pass it in, if not,
 * pass NULL.
 * @param paramInfo The parameter data (prime, subprime, etc.).
 * @param xCoord The buffer containing the x-coordinate (with the y-bit
 * "prefix").
 * @param xCoordLen The length, in bytes, of the x-coordinate.
 * @param yCoord The buffer into which the result will be placed.
 * @param bufferSize The size, in bytes, of the output buffer.
 * @param yCoordLen The address where this routine will deposit the
 * length, in bytes, of the resulting y-coordinate.
 * @return an int, 0 if the function completed successfully or a
 * non-zero error code.
 */
int VOLT_CALLING_CONV VoltGetYCoordFromX VOLT_PROTO_LIST ((
   VoltLibCtx *libCtx,
   VoltMpIntCtx *mpCtx,
   bf_context_t *bfCtx,
   VtBFType1IBEParamInfo *paramInfo,
   unsigned char *xCoord,
   unsigned int xCoordLen,
   unsigned char *yCoord,
   unsigned int bufferSize,
   unsigned int *yCoordLen
));

/* Given the y-coordinate of a point, get the x-coordinate.
 * <p>This function does no argument checking.
 *
 * @param libCtx The libCtx to use.
 * @param mpCtx The mpCtx to use.
 * @param paramInfo The parameter data (prime, subprime, etc.).
 * @param yCoord The buffer containing the y-coordinate.
 * @param yCoordLen The length, in bytes, of the y-coordinate.
 * @param xCoord The buffer into which the result will be placed.
 * @param bufferSize The size, in bytes, of the output buffer.
 * @param xCoordLen The address where this routine will deposit the
 * length, in bytes, of the resulting x-coordinate.
 * @return an int, 0 if the function completed successfully or a
 * non-zero error code.
 */
int VOLT_CALLING_CONV VoltGetXCoordFromY VOLT_PROTO_LIST ((
   VoltLibCtx *libCtx,
   VoltMpIntCtx *mpCtx,
   VtBFType1IBEParamInfo *paramInfo,
   unsigned char *yCoord,
   unsigned int yCoordLen,
   unsigned char *xCoord,
   unsigned int bufferSize,
   unsigned int *xCoordLen
));

/* For BF.
 * <p>The caller passes in an existing ParamInfo, this function will
 * copy the old point to the new point. The old point might actually be
 * one of the points in the ParamInfo struct, but it's isolated so we
 * can call this function with any of the points.
 * <p>If the oldPoint is infinity, error.
 * <p>If the y-coordinate is not NULL, this function checks to make
 * sure it is valid. If valid, it allocates a new buffer in the data
 * field of the newPoint and copies the data. If the y-coordinate is
 * NULL, the function will use the ParamInfo and the x-coordinate to
 * compute the y-coordinate (the x-coordinate is supposed to be a
 * leading marker byte with the actual x-coordinate following).
 * <p>The function then checks the x-coordinate. If not NULL, it copies
 * the data (if the y-coordinate had been missing, the function copies
 * only the actual data, not the leading marker byte). If the
 * x-coordinate is NULL, the function will obtain it based on the
 * ParamInfo and the y-coordinate.
 * <p>This function does no argument checking.
 *
 * @param libCtx The libCtx to use.
 * @param mpCtx The mpCtx to use.
 * @param paramInfo The parameter data (prime, subprime, etc.).
 * @param oldPoint The point to be copied.
 * @param newPoint The struct into which the copy will be placed.
 * @return an int, 0 if the function completed successfully or a
 * non-zero error code.
 */
int VOLT_CALLING_CONV VoltBFCopyPoint VOLT_PROTO_LIST ((
   VoltLibCtx *libCtx,
   VoltMpIntCtx *mpCtx,
   VtBFType1IBEParamInfo *paramInfo,
   VtBFType1IBEPoint *oldPoint,
   VtBFType1IBEPoint *newPoint
));

/* For BB.
 * <p>The caller passes in an existing ParamInfo, this function will
 * copy the old point to the new point. The old point is actually one
 * of the points in the ParamInfo struct, but it's isolated so we can
 * call this function with any of the points.
 * <p>If the oldPoint is infinity, error.
 * <p>If the y-coordinate is not NULL, this function checks to make
 * sure it is valid. If valid, it allocates a new buffer in the data
 * field of the newPoint and copies the data. If the y-coordinate is
 * NULL, the function will use the ParamInfo and the x-coordinate to
 * compute the y-coordinate (the x-coordinate is supposed to be a
 * leading marker byte with the actual x-coordinate following).
 * <p>The function then checks the x-coordinate. If not NULL, it copies
 * the data (if the y-coordinate had been missing, the function copies
 * only the actual data, not the leading marker byte). If the
 * x-coordinate is NULL, the function will obtain it based on the
 * ParamInfo and the y-coordinate.
 * <p>This function does no argument checking.
 *
 * @param libCtx The libCtx to use.
 * @param mpCtx The mpCtx to use.
 * @param paramInfo The parameter data (prime, subprime, etc.).
 * @param oldPoint The point to be copied.
 * @param newPoint The struct into which the copy will be placed.
 * @return an int, 0 if the function completed successfully or a
 * non-zero error code.
 */
int VOLT_CALLING_CONV VoltBBCopyPoint VOLT_PROTO_LIST ((
   VoltLibCtx *libCtx,
   VoltMpIntCtx *mpCtx,
   VtBBType1IBEParamInfo *paramInfo,
   VtBBType1IBEPoint *oldPoint,
   VtBBType1IBEPoint *newPoint
));

/* For BB
 * <p>Given the x-coordinate of a point, get the y-coordinate.
 * <p>The x-coordinate data will actually be a first byte indicating
 * the low order bit of the y-coordinate.
 * <p>This function does no argument checking.
 *
 * @param libCtx The libCtx to use.
 * @param mpCtx The mpCtx to use.
 * @param paramInfo The parameter data (prime, subprime, etc.).
 * @param xCoord The buffer containing the x-coordinate (with the y-bit
 * "prefix").
 * @param xCoordLen The length, in bytes, of the x-coordinate.
 * @param yCoord The buffer into which the result will be placed.
 * @param bufferSize The size, in bytes, of the output buffer.
 * @param yCoordLen The address where this routine will deposit the
 * length, in bytes, of the resulting y-coordinate.
 * @return an int, 0 if the function completed successfully or a
 * non-zero error code.
 */
int VOLT_CALLING_CONV VoltBBGetYCoordFromX VOLT_PROTO_LIST ((
   VoltLibCtx *libCtx,
   VoltMpIntCtx *mpCtx,
   VtBBType1IBEParamInfo *paramInfo,
   unsigned char *xCoord,
   unsigned int xCoordLen,
   unsigned char *yCoord,
   unsigned int bufferSize,
   unsigned int *yCoordLen
));

/* For BB
 * <p>Given the y-coordinate of a point, get the x-coordinate.
 * <p>This function does no argument checking.
 *
 * @param libCtx The libCtx to use.
 * @param mpCtx The mpCtx to use.
 * @param paramInfo The parameter data (prime, subprime, etc.).
 * @param yCoord The buffer containing the y-coordinate.
 * @param yCoordLen The length, in bytes, of the y-coordinate.
 * @param xCoord The buffer into which the result will be placed.
 * @param bufferSize The size, in bytes, of the output buffer.
 * @param xCoordLen The address where this routine will deposit the
 * length, in bytes, of the resulting x-coordinate.
 * @return an int, 0 if the function completed successfully or a
 * non-zero error code.
 */
int VOLT_CALLING_CONV VoltBBGetXCoordFromY VOLT_PROTO_LIST ((
   VoltLibCtx *libCtx,
   VoltMpIntCtx *mpCtx,
   VtBBType1IBEParamInfo *paramInfo,
   unsigned char *yCoord,
   unsigned int yCoordLen,
   unsigned char *xCoord,
   unsigned int bufferSize,
   unsigned int *xCoordLen
));

/* Implements VCtxDestroy.
 */
void VOLT_CALLING_CONV IBEPubKeyDataDestroy VOLT_PROTO_LIST ((
   Pointer obj,
   Pointer ctx
));

/* Implements VCtxDestroy.
 */
void VOLT_CALLING_CONV IBEPriKeyDataDestroy VOLT_PROTO_LIST ((
   Pointer obj,
   Pointer ctx
));

/* Implements VCtxDestroy.
 */
void VOLT_CALLING_CONV BFType1IBEClassCtxDestroy VOLT_PROTO_LIST ((
   Pointer obj,
   Pointer ctx
));

/* Implements VCtxDestroy.
 */
void VOLT_CALLING_CONV BBType1IBEClassCtxDestroy VOLT_PROTO_LIST ((
   Pointer obj,
   Pointer ctx
));

/* Implements VGetOutputSize.
 */
int VOLT_CALLING_CONV BFType1IBEGetOutputSize VOLT_PROTO_LIST ((
   VoltAlgorithmObject *obj,
   unsigned int callFlag,
   unsigned char *input,
   unsigned int inputLen,
   unsigned int *outputSize,
   unsigned int *leftovers,
   VtRandomObject random
));

/* Implements VGetOutputSize.
 */
int VOLT_CALLING_CONV BBType1IBEGetOutputSize VOLT_PROTO_LIST ((
   VoltAlgorithmObject *obj,
   unsigned int callFlag,
   unsigned char *input,
   unsigned int inputLen,
   unsigned int *outputSize,
   unsigned int *leftovers,
   VtRandomObject random
));

/* Implements VEncryptInit.
 */
int VOLT_CALLING_CONV BFType1IBEPubEncryptInit VOLT_PROTO_LIST ((
   VoltAlgorithmObject *algObj,
   VoltKeyObject *keyObj
));

/* Implements VEncryptInit.
 */
int VOLT_CALLING_CONV BBType1IBEPubEncryptInit VOLT_PROTO_LIST ((
   VoltAlgorithmObject *algObj,
   VoltKeyObject *keyObj
));

/* Implements VEncryptUpdate.
 */
int VOLT_CALLING_CONV BFType1IBEPubEncryptUpdate VOLT_PROTO_LIST ((
   VoltAlgorithmObject *algObj,
   VtRandomObject random,
   unsigned char *dataToEncrypt,
   unsigned int dataToEncryptLen,
   unsigned char *encryptedData
));

/* Implements VEncryptUpdate.
 */
int VOLT_CALLING_CONV BBType1IBEPubEncryptUpdate VOLT_PROTO_LIST ((
   VoltAlgorithmObject *algObj,
   VtRandomObject random,
   unsigned char *dataToEncrypt,
   unsigned int dataToEncryptLen,
   unsigned char *encryptedData
));

/* Implements VDecryptInit.
 */
int VOLT_CALLING_CONV BFType1IBEPriDecryptInit VOLT_PROTO_LIST ((
   VoltAlgorithmObject *algObj,
   VoltKeyObject *keyObj
));

/* Implements VDecryptInit.
 */
int VOLT_CALLING_CONV BBType1IBEPriDecryptInit VOLT_PROTO_LIST ((
   VoltAlgorithmObject *algObj,
   VoltKeyObject *keyObj
));

/* Implements VDecryptUpdate.
 */
int VOLT_CALLING_CONV BFType1IBEPriDecryptUpdate VOLT_PROTO_LIST ((
   VoltAlgorithmObject *algObj,
   VtRandomObject random,
   unsigned char *dataToDecrypt,
   unsigned int dataToDecryptLen,
   unsigned char *decryptedData
));

/* Implements VDecryptUpdate.
 */
int VOLT_CALLING_CONV BBType1IBEPriDecryptUpdate VOLT_PROTO_LIST ((
   VoltAlgorithmObject *algObj,
   VtRandomObject random,
   unsigned char *dataToDecrypt,
   unsigned int dataToDecryptLen,
   unsigned char *decryptedData
));

/* These are the security and prime/subprime sizes we support.
 * These three arrays match. That is, the prime size for the security
 * size at the 0 index is at the 0 index in the prime size array. And
 * so on.
 */
#define VALID_SECURITY_SIZES {1024,2048,3072}
#define VALID_PRIME_SIZES {512,1024,1536}
#define VALID_BF_SUBPRIME_SIZES {160,0,0}
#define VALID_BB_SUBPRIME_SIZES {160,224,256}
#define VALID_SECURITY_SIZES_COUNT 3

#ifdef __cplusplus
}
#endif

#endif /* _IBE_H */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产成人精品1024| 国产一区在线看| 美女一区二区视频| av在线一区二区| 日韩一区二区三区电影在线观看| 精品久久久三级丝袜| 亚洲综合色噜噜狠狠| 加勒比av一区二区| 欧美理论电影在线| 亚洲欧美在线aaa| 极品美女销魂一区二区三区| 欧美日韩一区二区三区视频| 国产欧美视频一区二区三区| 美女爽到高潮91| 欧美亚州韩日在线看免费版国语版| 26uuu另类欧美亚洲曰本| 丝袜美腿亚洲一区二区图片| av网站免费线看精品| 久久嫩草精品久久久久| 日韩av中文在线观看| 在线观看日韩精品| 亚洲女同女同女同女同女同69| 国产精品99精品久久免费| 日韩精品一区二区三区三区免费| 亚洲福利视频导航| 欧美私人免费视频| 亚洲国产欧美日韩另类综合| 99免费精品在线观看| 日本一区二区三区dvd视频在线| 久久精品国产亚洲aⅴ| 8v天堂国产在线一区二区| 亚洲精品视频在线观看网站| 91在线视频免费观看| 国产精品久久久久久久蜜臀| 成人视屏免费看| 中文字幕在线观看一区| 99在线精品免费| 亚洲欧美日韩久久精品| 91搞黄在线观看| 一区二区三区精品久久久| 色综合久久久久综合体桃花网| 国产欧美日韩精品一区| 成人网男人的天堂| 亚洲女人小视频在线观看| 在线亚洲精品福利网址导航| 亚洲第一狼人社区| 欧美理论片在线| 国产一区欧美日韩| 欧美国产1区2区| 91蜜桃传媒精品久久久一区二区| 亚洲色欲色欲www| 欧美网站一区二区| 激情av综合网| 国产精品久久久久永久免费观看| 97se亚洲国产综合在线| 性欧美疯狂xxxxbbbb| 日韩一区二区在线看| 国产精品99久久久| 一区二区三区中文字幕在线观看| 欧美日韩一区三区四区| 国内精品久久久久影院色| 欧美精彩视频一区二区三区| 91国产精品成人| 激情六月婷婷久久| 一区二区三区中文字幕精品精品| 日本伦理一区二区| 久久99在线观看| 亚洲欧美一区二区久久| 51久久夜色精品国产麻豆| 欧美日韩精品专区| 久久狠狠亚洲综合| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆 | 亚洲1区2区3区4区| 精品日韩一区二区三区免费视频| 成人在线视频一区二区| 五月激情综合色| 国产欧美精品区一区二区三区 | 成人免费看片app下载| 亚洲国产日韩av| 中文字幕av一区二区三区| 欧美日韩大陆在线| 99精品热视频| 国产在线精品一区二区三区不卡 | 国产日韩欧美麻豆| 欧美一区二区三区小说| 99久久国产综合精品麻豆| 老司机精品视频线观看86 | 国产精品国产三级国产普通话99| 欧美无人高清视频在线观看| 国产·精品毛片| 免费看欧美美女黄的网站| 亚洲综合成人在线视频| 国产欧美日韩精品一区| 欧美一级高清大全免费观看| 色婷婷综合五月| www..com久久爱| 韩国女主播一区二区三区| 午夜精品久久久久久久久| 18欧美亚洲精品| 国产精品色哟哟| 欧美精品一区二区久久婷婷| 色婷婷久久久久swag精品| 欧美一区二区美女| 经典三级视频一区| 美国三级日本三级久久99| 亚洲自拍偷拍麻豆| 亚洲另类在线制服丝袜| 一区二区中文字幕在线| 日本一区二区三区电影| 久久久国际精品| 久久精品人人爽人人爽| 精品国产一区二区三区久久久蜜月| 欧美精品一卡二卡| 6080国产精品一区二区| 欧美日韩精品久久久| 欧美日韩激情一区| 欧美日韩视频不卡| 欧美酷刑日本凌虐凌虐| 欧美精品久久天天躁| 欧美久久久久久久久久| 欧美日韩久久一区二区| 91精品国产综合久久福利| 欧美一级一级性生活免费录像| 91精品国产aⅴ一区二区| 日韩一区二区三区视频在线观看| 日韩精品中文字幕一区二区三区 | 欧美v日韩v国产v| 欧美电视剧在线观看完整版| 久久综合色婷婷| 国产欧美日韩在线| 亚洲精品福利视频网站| 亚洲一区二区三区不卡国产欧美| 亚洲成人免费电影| 精油按摩中文字幕久久| 国产91丝袜在线18| 91蜜桃网址入口| 91麻豆精品国产自产在线| 精品久久久久香蕉网| 国产精品污网站| 亚洲综合在线视频| 老司机精品视频在线| 成人性生交大片免费| 在线观看日韩一区| 精品久久久久一区| 亚洲男人的天堂在线aⅴ视频| 午夜国产精品影院在线观看| 久久不见久久见免费视频1| 成人一区二区三区在线观看| 在线亚洲高清视频| 久久欧美一区二区| 一区二区三区高清| 精品一区二区免费视频| 色综合久久久久| 欧美一区日韩一区| 国产精品久久777777| 日韩中文字幕一区二区三区| 国产成人午夜精品影院观看视频 | 一本到三区不卡视频| 日韩午夜激情av| 亚洲女同一区二区| 精品在线观看视频| 欧美在线短视频| 国产视频一区二区在线观看| 亚洲国产精品一区二区www在线 | 中文字幕乱码日本亚洲一区二区| 亚洲三级电影全部在线观看高清| 蜜桃视频在线一区| 色婷婷狠狠综合| 国产欧美一区二区精品婷婷 | 99久久er热在这里只有精品15 | 亚洲综合一区二区| 国产成人在线观看免费网站| 69堂国产成人免费视频| 亚洲欧美日韩精品久久久久| 激情综合色播激情啊| 欧美区在线观看| 亚洲蜜臀av乱码久久精品| 国产传媒欧美日韩成人| 日韩一级免费观看| 亚洲福利一二三区| 欧美在线一区二区三区| 亚洲欧洲国产日韩| 国产激情91久久精品导航| 日韩一区二区三区视频在线| 亚洲高清视频的网址| av不卡在线播放| 国产精品久久午夜夜伦鲁鲁| 国产一区二区免费在线| 日韩一级免费一区| 免费精品99久久国产综合精品| 色噜噜偷拍精品综合在线| 综合在线观看色| 91在线观看美女| 自拍偷拍国产精品| 99综合电影在线视频| 国产精品久久福利| 色综合久久天天| 亚洲一区二区三区中文字幕在线| 99久久久无码国产精品| 亚洲欧美日韩在线|