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

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

?? ec.h

?? SDL文件。SDL_ERROwenjian.....
?? H
?? 第 1 頁 / 共 2 頁
字號:
/* crypto/ec/ec.h */
/*
 * Originally written by Bodo Moeller for the OpenSSL project.
 */
/* ====================================================================
 * Copyright (c) 1998-2003 The OpenSSL Project.  All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer. 
 *
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * 3. All advertising materials mentioning features or use of this
 *    software must display the following acknowledgment:
 *    "This product includes software developed by the OpenSSL Project
 *    for use in the OpenSSL Toolkit. (http://www.openssl.org/)"
 *
 * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
 *    endorse or promote products derived from this software without
 *    prior written permission. For written permission, please contact
 *    openssl-core@openssl.org.
 *
 * 5. Products derived from this software may not be called "OpenSSL"
 *    nor may "OpenSSL" appear in their names without prior written
 *    permission of the OpenSSL Project.
 *
 * 6. Redistributions of any form whatsoever must retain the following
 *    acknowledgment:
 *    "This product includes software developed by the OpenSSL Project
 *    for use in the OpenSSL Toolkit (http://www.openssl.org/)"
 *
 * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
 * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE OpenSSL PROJECT OR
 * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
 * OF THE POSSIBILITY OF SUCH DAMAGE.
 * ====================================================================
 *
 * This product includes cryptographic software written by Eric Young
 * (eay@cryptsoft.com).  This product includes software written by Tim
 * Hudson (tjh@cryptsoft.com).
 *
 */
/* ====================================================================
 * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED.
 *
 * Portions of the attached software ("Contribution") are developed by 
 * SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project.
 *
 * The Contribution is licensed pursuant to the OpenSSL open source
 * license provided above.
 *
 * The elliptic curve binary polynomial software is originally written by 
 * Sheueling Chang Shantz and Douglas Stebila of Sun Microsystems Laboratories.
 *
 */

#ifndef HEADER_EC_H
#define HEADER_EC_H

#include <openssl/opensslconf.h>

#ifdef OPENSSL_NO_EC
#error EC is disabled.
#endif

#include <openssl/asn1.h>
#include <openssl/symhacks.h>
#ifndef OPENSSL_NO_DEPRECATED
#include <openssl/bn.h>
#endif

#ifdef  __cplusplus
extern "C" {
#elif defined(__SUNPRO_C)
# if __SUNPRO_C >= 0x520
# pragma error_messages (off,E_ARRAY_OF_INCOMPLETE_NONAME,E_ARRAY_OF_INCOMPLETE)
# endif
#endif


#ifndef OPENSSL_ECC_MAX_FIELD_BITS
# define OPENSSL_ECC_MAX_FIELD_BITS 661
#endif

typedef enum {
	/* values as defined in X9.62 (ECDSA) and elsewhere */
	POINT_CONVERSION_COMPRESSED = 2,
	POINT_CONVERSION_UNCOMPRESSED = 4,
	POINT_CONVERSION_HYBRID = 6
} point_conversion_form_t;


typedef struct ec_method_st EC_METHOD;

typedef struct ec_group_st
	/*
	 EC_METHOD *meth;
	 -- field definition
	 -- curve coefficients
	 -- optional generator with associated information (order, cofactor)
	 -- optional extra data (precomputed table for fast computation of multiples of generator)
	 -- ASN1 stuff
	*/
	EC_GROUP;

typedef struct ec_point_st EC_POINT;


/* EC_METHODs for curves over GF(p).
 * EC_GFp_simple_method provides the basis for the optimized methods.
 */
const EC_METHOD *EC_GFp_simple_method(void);
const EC_METHOD *EC_GFp_mont_method(void);
const EC_METHOD *EC_GFp_nist_method(void);

/* EC_METHOD for curves over GF(2^m).
 */
const EC_METHOD *EC_GF2m_simple_method(void);


EC_GROUP *EC_GROUP_new(const EC_METHOD *);
void EC_GROUP_free(EC_GROUP *);
void EC_GROUP_clear_free(EC_GROUP *);
int EC_GROUP_copy(EC_GROUP *, const EC_GROUP *);
EC_GROUP *EC_GROUP_dup(const EC_GROUP *);

const EC_METHOD *EC_GROUP_method_of(const EC_GROUP *);
int EC_METHOD_get_field_type(const EC_METHOD *);

int EC_GROUP_set_generator(EC_GROUP *, const EC_POINT *generator, const BIGNUM *order, const BIGNUM *cofactor);
const EC_POINT *EC_GROUP_get0_generator(const EC_GROUP *);
int EC_GROUP_get_order(const EC_GROUP *, BIGNUM *order, BN_CTX *);
int EC_GROUP_get_cofactor(const EC_GROUP *, BIGNUM *cofactor, BN_CTX *);

void EC_GROUP_set_curve_name(EC_GROUP *, int nid);
int EC_GROUP_get_curve_name(const EC_GROUP *);

void EC_GROUP_set_asn1_flag(EC_GROUP *, int flag);
int EC_GROUP_get_asn1_flag(const EC_GROUP *);

void EC_GROUP_set_point_conversion_form(EC_GROUP *, point_conversion_form_t);
point_conversion_form_t EC_GROUP_get_point_conversion_form(const EC_GROUP *);

unsigned char *EC_GROUP_get0_seed(const EC_GROUP *);
size_t EC_GROUP_get_seed_len(const EC_GROUP *);
size_t EC_GROUP_set_seed(EC_GROUP *, const unsigned char *, size_t len);

int EC_GROUP_set_curve_GFp(EC_GROUP *, const BIGNUM *p, const BIGNUM *a, const BIGNUM *b, BN_CTX *);
int EC_GROUP_get_curve_GFp(const EC_GROUP *, BIGNUM *p, BIGNUM *a, BIGNUM *b, BN_CTX *);
int EC_GROUP_set_curve_GF2m(EC_GROUP *, const BIGNUM *p, const BIGNUM *a, const BIGNUM *b, BN_CTX *);
int EC_GROUP_get_curve_GF2m(const EC_GROUP *, BIGNUM *p, BIGNUM *a, BIGNUM *b, BN_CTX *);

/* returns the number of bits needed to represent a field element */
int EC_GROUP_get_degree(const EC_GROUP *);

/* EC_GROUP_check() returns 1 if 'group' defines a valid group, 0 otherwise */
int EC_GROUP_check(const EC_GROUP *group, BN_CTX *ctx);
/* EC_GROUP_check_discriminant() returns 1 if the discriminant of the
 * elliptic curve is not zero, 0 otherwise */
int EC_GROUP_check_discriminant(const EC_GROUP *, BN_CTX *);

/* EC_GROUP_cmp() returns 0 if both groups are equal and 1 otherwise */
int EC_GROUP_cmp(const EC_GROUP *, const EC_GROUP *, BN_CTX *);

/* EC_GROUP_new_GF*() calls EC_GROUP_new() and EC_GROUP_set_GF*()
 * after choosing an appropriate EC_METHOD */
EC_GROUP *EC_GROUP_new_curve_GFp(const BIGNUM *p, const BIGNUM *a, const BIGNUM *b, BN_CTX *);
EC_GROUP *EC_GROUP_new_curve_GF2m(const BIGNUM *p, const BIGNUM *a, const BIGNUM *b, BN_CTX *);

/* EC_GROUP_new_by_curve_name() creates a EC_GROUP structure
 * specified by a curve name (in form of a NID) */
EC_GROUP *EC_GROUP_new_by_curve_name(int nid);
/* handling of internal curves */
typedef struct { 
	int nid;
	const char *comment;
	} EC_builtin_curve;
/* EC_builtin_curves(EC_builtin_curve *r, size_t size) returns number 
 * of all available curves or zero if a error occurred. 
 * In case r ist not zero nitems EC_builtin_curve structures 
 * are filled with the data of the first nitems internal groups */
size_t EC_get_builtin_curves(EC_builtin_curve *r, size_t nitems);


/* EC_POINT functions */

EC_POINT *EC_POINT_new(const EC_GROUP *);
void EC_POINT_free(EC_POINT *);
void EC_POINT_clear_free(EC_POINT *);
int EC_POINT_copy(EC_POINT *, const EC_POINT *);
EC_POINT *EC_POINT_dup(const EC_POINT *, const EC_GROUP *);
 
const EC_METHOD *EC_POINT_method_of(const EC_POINT *);

int EC_POINT_set_to_infinity(const EC_GROUP *, EC_POINT *);
int EC_POINT_set_Jprojective_coordinates_GFp(const EC_GROUP *, EC_POINT *,
	const BIGNUM *x, const BIGNUM *y, const BIGNUM *z, BN_CTX *);
int EC_POINT_get_Jprojective_coordinates_GFp(const EC_GROUP *, const EC_POINT *,
	BIGNUM *x, BIGNUM *y, BIGNUM *z, BN_CTX *);
int EC_POINT_set_affine_coordinates_GFp(const EC_GROUP *, EC_POINT *,
	const BIGNUM *x, const BIGNUM *y, BN_CTX *);
int EC_POINT_get_affine_coordinates_GFp(const EC_GROUP *, const EC_POINT *,
	BIGNUM *x, BIGNUM *y, BN_CTX *);
int EC_POINT_set_compressed_coordinates_GFp(const EC_GROUP *, EC_POINT *,
	const BIGNUM *x, int y_bit, BN_CTX *);

int EC_POINT_set_affine_coordinates_GF2m(const EC_GROUP *, EC_POINT *,
	const BIGNUM *x, const BIGNUM *y, BN_CTX *);
int EC_POINT_get_affine_coordinates_GF2m(const EC_GROUP *, const EC_POINT *,
	BIGNUM *x, BIGNUM *y, BN_CTX *);
int EC_POINT_set_compressed_coordinates_GF2m(const EC_GROUP *, EC_POINT *,
	const BIGNUM *x, int y_bit, BN_CTX *);

size_t EC_POINT_point2oct(const EC_GROUP *, const EC_POINT *, point_conversion_form_t form,
        unsigned char *buf, size_t len, BN_CTX *);
int EC_POINT_oct2point(const EC_GROUP *, EC_POINT *,
        const unsigned char *buf, size_t len, BN_CTX *);

/* other interfaces to point2oct/oct2point: */
BIGNUM *EC_POINT_point2bn(const EC_GROUP *, const EC_POINT *,
	point_conversion_form_t form, BIGNUM *, BN_CTX *);
EC_POINT *EC_POINT_bn2point(const EC_GROUP *, const BIGNUM *,
	EC_POINT *, BN_CTX *);
char *EC_POINT_point2hex(const EC_GROUP *, const EC_POINT *,
	point_conversion_form_t form, BN_CTX *);
EC_POINT *EC_POINT_hex2point(const EC_GROUP *, const char *,
	EC_POINT *, BN_CTX *);

int EC_POINT_add(const EC_GROUP *, EC_POINT *r, const EC_POINT *a, const EC_POINT *b, BN_CTX *);
int EC_POINT_dbl(const EC_GROUP *, EC_POINT *r, const EC_POINT *a, BN_CTX *);
int EC_POINT_invert(const EC_GROUP *, EC_POINT *, BN_CTX *);

int EC_POINT_is_at_infinity(const EC_GROUP *, const EC_POINT *);
int EC_POINT_is_on_curve(const EC_GROUP *, const EC_POINT *, BN_CTX *);
int EC_POINT_cmp(const EC_GROUP *, const EC_POINT *a, const EC_POINT *b, BN_CTX *);

int EC_POINT_make_affine(const EC_GROUP *, EC_POINT *, BN_CTX *);
int EC_POINTs_make_affine(const EC_GROUP *, size_t num, EC_POINT *[], BN_CTX *);


int EC_POINTs_mul(const EC_GROUP *, EC_POINT *r, const BIGNUM *, size_t num, const EC_POINT *[], const BIGNUM *[], BN_CTX *);
int EC_POINT_mul(const EC_GROUP *, EC_POINT *r, const BIGNUM *, const EC_POINT *, const BIGNUM *, BN_CTX *);

/* EC_GROUP_precompute_mult() stores multiples of generator for faster point multiplication */
int EC_GROUP_precompute_mult(EC_GROUP *, BN_CTX *);
/* EC_GROUP_have_precompute_mult() reports whether such precomputation has been done */
int EC_GROUP_have_precompute_mult(const EC_GROUP *);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产日韩欧美制服另类| 中文字幕亚洲一区二区av在线| 日本乱人伦aⅴ精品| eeuss鲁一区二区三区| 91免费版在线| 在线观看日韩一区| 91精品国产福利| 久久久久久免费网| 国产精品久久三| 日韩专区欧美专区| 国产一区二区免费视频| 一本色道亚洲精品aⅴ| 欧美乱妇23p| 中文字幕中文字幕中文字幕亚洲无线| 亚洲男人的天堂一区二区| 日韩高清一区二区| 风间由美性色一区二区三区| av电影在线观看不卡| 91精品国产色综合久久久蜜香臀| 国产亚洲欧洲一区高清在线观看| 亚洲视频一区二区免费在线观看| 久久精品国产精品青草| 91国偷自产一区二区开放时间| 欧美一二三在线| 亚洲福利视频三区| 91视频观看视频| 国产午夜精品一区二区三区四区| 五月激情六月综合| 99久久精品免费观看| 久久女同精品一区二区| 首页国产欧美久久| 欧美日韩久久久久久| 亚洲精品高清视频在线观看| 99久久婷婷国产精品综合| 欧美国产成人在线| 国产福利一区二区三区| 久久久久久久综合日本| 国内精品伊人久久久久av一坑| 色成年激情久久综合| 最近中文字幕一区二区三区| 99精品国产91久久久久久| 亚洲免费观看在线视频| 日本高清不卡一区| 婷婷丁香久久五月婷婷| 欧美一区二区三区喷汁尤物| 另类小说综合欧美亚洲| 日韩三级视频在线看| 国精产品一区一区三区mba桃花| 精品日本一线二线三线不卡| 国精产品一区一区三区mba桃花 | 久草这里只有精品视频| 久久婷婷色综合| 不卡av在线网| 亚洲第一av色| 日本一区二区三区dvd视频在线| 粉嫩aⅴ一区二区三区四区| 中文字幕在线不卡一区二区三区| 成人免费毛片app| 午夜影院久久久| 中文字幕在线不卡视频| 7777精品伊人久久久大香线蕉 | 久久99久久久欧美国产| 日韩一区日韩二区| 2021国产精品久久精品| 欧美性大战xxxxx久久久| 国产米奇在线777精品观看| 亚洲一线二线三线视频| 久久综合色之久久综合| 欧美日韩在线播放一区| 成人激情免费视频| 裸体在线国模精品偷拍| 亚洲国产综合91精品麻豆| 国产精品私人影院| 欧美精品一区二区在线观看| 欧美伦理电影网| 欧美亚洲国产一区二区三区va| 成人综合婷婷国产精品久久免费| 亚洲图片欧美综合| 亚洲黄色小说网站| 亚洲男帅同性gay1069| 久久精品亚洲乱码伦伦中文| 精品久久免费看| 2021中文字幕一区亚洲| 欧美大白屁股肥臀xxxxxx| 欧美美女bb生活片| 欧美一区二区三区视频免费播放| 欧美视频一区在线| 91精品国产综合久久婷婷香蕉| 欧美日韩精品久久久| 日韩欧美中文字幕一区| 精品久久国产字幕高潮| 久久综合九色综合97婷婷女人 | 69堂成人精品免费视频| 91精品国产品国语在线不卡| 日韩欧美国产一二三区| 国产日韩一级二级三级| 中文字幕欧美一| 亚洲成a人在线观看| 国产在线麻豆精品观看| caoporn国产精品| 欧美精品高清视频| 久久众筹精品私拍模特| 亚洲精品国产a| 极品少妇xxxx精品少妇| 在线播放中文字幕一区| 欧美人妖巨大在线| 欧美mv日韩mv| 一区二区三区不卡视频| 国产麻豆视频一区二区| 91亚洲国产成人精品一区二三| 欧美日韩亚洲高清一区二区| 欧美大片在线观看| 亚洲午夜三级在线| proumb性欧美在线观看| 久久久蜜桃精品| 日日夜夜免费精品视频| 色婷婷综合久久久中文字幕| 久久久久久久免费视频了| 亚洲不卡一区二区三区| 91在线免费视频观看| 久久九九全国免费| 国产一区二区三区免费观看| 欧美精选午夜久久久乱码6080| 国产日产亚洲精品系列| 国产乱子轮精品视频| 日韩视频一区二区| 欧美aa在线视频| 日韩欧美不卡在线观看视频| 亚洲一区二区三区四区在线观看 | 国产欧美日韩麻豆91| 国产高清精品网站| 欧美xxxxx牲另类人与| 激情综合一区二区三区| 国产目拍亚洲精品99久久精品| 国产一区二区三区免费看 | 激情图区综合网| 国产亚洲欧美激情| 色综合天天综合给合国产| 国产精品国产三级国产aⅴ原创| 成人免费黄色大片| 亚洲乱码日产精品bd| 欧美剧情片在线观看| 久久国产人妖系列| 国产精品毛片无遮挡高清| 99re成人精品视频| 美女高潮久久久| 国产精品久久久久精k8| 制服丝袜一区二区三区| 国产一区二区精品久久91| 日韩毛片视频在线看| 日韩精品资源二区在线| 色欧美片视频在线观看| 精品一区二区三区影院在线午夜| 中文字幕视频一区二区三区久| 欧美午夜一区二区| 成人精品一区二区三区四区| 日韩一区精品视频| 亚洲另类中文字| 国产日韩欧美精品综合| 欧美一区二区三区男人的天堂| 国产精品一线二线三线| 亚洲大片在线观看| 亚洲丝袜美腿综合| 国产欧美一区二区三区鸳鸯浴| 欧美一级在线观看| 欧美在线视频全部完| 日本久久电影网| 成人午夜在线免费| 成人激情图片网| jizz一区二区| 欧美亚日韩国产aⅴ精品中极品| 99在线视频精品| 91麻豆国产福利在线观看| 97精品视频在线观看自产线路二| 国产一区二区三区国产| 国产一区二区毛片| av电影天堂一区二区在线观看| 国产999精品久久久久久绿帽| 国产麻豆视频一区| 色综合天天综合狠狠| 欧美午夜精品一区二区蜜桃| 欧美日韩精品一区二区三区蜜桃 | 日精品一区二区三区| 日韩成人一级片| 国产成人免费视频精品含羞草妖精| 国产精品 欧美精品| 色婷婷一区二区三区四区| 欧洲一区在线观看| 日韩精品在线一区| 亚洲欧洲99久久| 捆绑调教一区二区三区| 国产精品一二三| 欧美日韩电影一区| 中国色在线观看另类| 视频精品一区二区| 成人精品小蝌蚪| 欧美日韩五月天| 中文字幕人成不卡一区| 日本视频在线一区| 在线观看免费视频综合|