Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Third Party Openssl
提交
b17ecb64
T
Third Party Openssl
项目概览
OpenHarmony
/
Third Party Openssl
大约 1 年 前同步成功
通知
9
Star
18
Fork
1
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
Third Party Openssl
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
b17ecb64
编写于
9月 19, 2005
作者:
N
Nils Larsch
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
cleanup doxygen comments
上级
ba12070f
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
90 addition
and
103 deletion
+90
-103
crypto/ecdsa/ecdsa.h
crypto/ecdsa/ecdsa.h
+90
-103
未找到文件。
crypto/ecdsa/ecdsa.h
浏览文件 @
b17ecb64
...
...
@@ -4,7 +4,7 @@
* \author Written by Nils Larsch for the OpenSSL project
*/
/* ====================================================================
* Copyright (c) 2000-200
3
The OpenSSL Project. All rights reserved.
* Copyright (c) 2000-200
5
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
...
...
@@ -81,156 +81,143 @@ typedef struct ECDSA_SIG_st
BIGNUM
*
s
;
}
ECDSA_SIG
;
/** ECDSA_SIG *ECDSA_SIG_new(void)
* allocates and initialize a ECDSA_SIG structure
/** Allocates and initialize a ECDSA_SIG structure
* \return pointer to a ECDSA_SIG structure or NULL if an error occurred
*/
ECDSA_SIG
*
ECDSA_SIG_new
(
void
);
/** ECDSA_SIG_free
* frees a ECDSA_SIG structure
* \param a pointer to the ECDSA_SIG structure
/** frees a ECDSA_SIG structure
* \param sig pointer to the ECDSA_SIG structure
*/
void
ECDSA_SIG_free
(
ECDSA_SIG
*
a
);
void
ECDSA_SIG_free
(
ECDSA_SIG
*
sig
);
/** i2d_ECDSA_SIG
* DER encode content of ECDSA_SIG object (note: this function modifies *pp
/** DER encode content of ECDSA_SIG object (note: this function modifies *pp
* (*pp += length of the DER encoded signature)).
*
\param a
pointer to the ECDSA_SIG object
*
\param sig
pointer to the ECDSA_SIG object
* \param pp pointer to a unsigned char pointer for the output or NULL
* \return the length of the DER encoded ECDSA_SIG object or 0
*/
int
i2d_ECDSA_SIG
(
const
ECDSA_SIG
*
a
,
unsigned
char
**
pp
);
int
i2d_ECDSA_SIG
(
const
ECDSA_SIG
*
sig
,
unsigned
char
**
pp
);
/** d2i_ECDSA_SIG
* decodes a DER encoded ECDSA signature (note: this function changes *pp
/** Decodes a DER encoded ECDSA signature (note: this function changes *pp
* (*pp += len)).
*
\param v
pointer to ECDSA_SIG pointer (may be NULL)
*
\param pp
buffer with the DER encoded signature
*
\param len bufferlength
*
\param sig
pointer to ECDSA_SIG pointer (may be NULL)
*
\param pp memory
buffer with the DER encoded signature
*
\param len length of the buffer
* \return pointer to the decoded ECDSA_SIG structure (or NULL)
*/
ECDSA_SIG
*
d2i_ECDSA_SIG
(
ECDSA_SIG
**
v
,
const
unsigned
char
**
pp
,
long
len
);
ECDSA_SIG
*
d2i_ECDSA_SIG
(
ECDSA_SIG
**
sig
,
const
unsigned
char
**
pp
,
long
len
);
/** ECDSA_do_sign
* computes the ECDSA signature of the given hash value using
/** Computes the ECDSA signature of the given hash value using
* the supplied private key and returns the created signature.
* \param dgst pointer to the hash value
* \param dgst_len length of the hash value
*
\param eckey pointer to the
EC_KEY object containing a private EC key
*
\return pointer to a ECDSA_SIG structure or NULL
*
\param eckey
EC_KEY object containing a private EC key
*
\return pointer to a ECDSA_SIG structure or NULL if an error occurred
*/
ECDSA_SIG
*
ECDSA_do_sign
(
const
unsigned
char
*
dgst
,
int
dgst_len
,
EC_KEY
*
eckey
);
/** ECDSA_do_sign_ex
* computes ECDSA signature of a given hash value using the supplied
/** Computes ECDSA signature of a given hash value using the supplied
* private key (note: sig must point to ECDSA_size(eckey) bytes of memory).
* \param dgst pointer to the hash value to sign
* \param dgstlen length of the hash value
*
\param kinv optional pointer to a pre-computed inverse k
*
\param rp optional pointer to the pre-computed rp value (see
* ECDSA_sign_setup
*
\param eckey pointer to the
EC_KEY object containing a private EC key
*
\return pointer to a ECDSA_SIG structure or NULL
*
\param kinv BIGNUM with a pre-computed inverse k (optional)
*
\param rp BIGNUM with a pre-computed rp value (optioanl),
*
see
ECDSA_sign_setup
*
\param eckey
EC_KEY object containing a private EC key
*
\return pointer to a ECDSA_SIG structure or NULL if an error occurred
*/
ECDSA_SIG
*
ECDSA_do_sign_ex
(
const
unsigned
char
*
dgst
,
int
dgstlen
,
const
BIGNUM
*
kinv
,
const
BIGNUM
*
rp
,
EC_KEY
*
eckey
);
/** ECDSA_do_verify
* verifies that the supplied signature is a valid ECDSA
/** Verifies that the supplied signature is a valid ECDSA
* signature of the supplied hash value using the supplied public key.
* \param dgst pointer to the hash value
* \param dgst_len length of the hash value
* \param sig pointer to the ECDSA_SIG structure
* \param eckey pointer to the EC_KEY object containing a public EC key
* \return 1 if the signature is valid, 0 if the signature is invalid and -1 on error
* \param sig ECDSA_SIG structure
* \param eckey EC_KEY object containing a public EC key
* \return 1 if the signature is valid, 0 if the signature is invalid
* and -1 on error
*/
int
ECDSA_do_verify
(
const
unsigned
char
*
dgst
,
int
dgst_len
,
const
ECDSA_SIG
*
sig
,
EC_KEY
*
eckey
);
const
ECDSA_METHOD
*
ECDSA_OpenSSL
(
void
);
/** ECDSA_set_default_method
* sets the default ECDSA method
* \param meth the new default ECDSA_METHOD
/** Sets the default ECDSA method
* \param meth new default ECDSA_METHOD
*/
void
ECDSA_set_default_method
(
const
ECDSA_METHOD
*
meth
);
/** ECDSA_get_default_method
* returns the default ECDSA method
/** Returns the default ECDSA method
* \return pointer to ECDSA_METHOD structure containing the default method
*/
const
ECDSA_METHOD
*
ECDSA_get_default_method
(
void
);
/** ECDSA_set_method
* sets method to be used for the ECDSA operations
* \param eckey pointer to the EC_KEY object
* \param meth pointer to the new method
/** Sets method to be used for the ECDSA operations
* \param eckey EC_KEY object
* \param meth new method
* \return 1 on success and 0 otherwise
*/
int
ECDSA_set_method
(
EC_KEY
*
eckey
,
const
ECDSA_METHOD
*
meth
);
/** ECDSA_size
* returns the maximum length of the DER encoded signature
* \param eckey pointer to a EC_KEY object
/** Returns the maximum length of the DER encoded signature
* \param eckey EC_KEY object
* \return numbers of bytes required for the DER encoded signature
*/
int
ECDSA_size
(
const
EC_KEY
*
eckey
);
/** ECDSA_sign_setup
* precompute parts of the signing operation.
* \param eckey pointer to the EC_KEY object containing a private EC key
* \param ctx pointer to a BN_CTX object (may be NULL)
* \param kinv pointer to a BIGNUM pointer for the inverse of k
* \param rp pointer to a BIGNUM pointer for x coordinate of k * generator
/** Precompute parts of the signing operation
* \param eckey EC_KEY object containing a private EC key
* \param ctx BN_CTX object (optional)
* \param kinv BIGNUM pointer for the inverse of k
* \param rp BIGNUM pointer for x coordinate of k * generator
* \return 1 on success and 0 otherwise
*/
int
ECDSA_sign_setup
(
EC_KEY
*
eckey
,
BN_CTX
*
ctx
,
BIGNUM
**
kinv
,
BIGNUM
**
rp
);
/** ECDSA_sign
* computes ECDSA signature of a given hash value using the supplied
/** Computes ECDSA signature of a given hash value using the supplied
* private key (note: sig must point to ECDSA_size(eckey) bytes of memory).
* \param type this parameter is ignored
* \param dgst pointer to the hash value to sign
* \param dgstlen length of the hash value
*
\param sig buffer to hold the DER encod
ed signature
*
\param sig memory for the DER encoded creat
ed signature
* \param siglen pointer to the length of the returned signature
*
\param eckey pointer to the
EC_KEY object containing a private EC key
*
\param eckey
EC_KEY object containing a private EC key
* \return 1 on success and 0 otherwise
*/
int
ECDSA_sign
(
int
type
,
const
unsigned
char
*
dgst
,
int
dgstlen
,
unsigned
char
*
sig
,
unsigned
int
*
siglen
,
EC_KEY
*
eckey
);
/** ECDSA_sign_ex
* computes ECDSA signature of a given hash value using the supplied
/** Computes ECDSA signature of a given hash value using the supplied
* private key (note: sig must point to ECDSA_size(eckey) bytes of memory).
* \param type this parameter is ignored
* \param dgst pointer to the hash value to sign
* \param dgstlen length of the hash value
* \param sig buffer to hold the DER encoded signature
* \param siglen pointer to the length of the returned signature
*
\param kinv optional pointer to a pre-computed inverse k
*
\param rp optional pointer to the pre-computed rp value (see
* ECDSA_sign_setup
*
\param eckey pointer to the
EC_KEY object containing a private EC key
*
\param kinv BIGNUM with a pre-computed inverse k (optional)
*
\param rp BIGNUM with a pre-computed rp value (optioanl),
*
see
ECDSA_sign_setup
*
\param eckey
EC_KEY object containing a private EC key
* \return 1 on success and 0 otherwise
*/
int
ECDSA_sign_ex
(
int
type
,
const
unsigned
char
*
dgst
,
int
dgstlen
,
unsigned
char
*
sig
,
unsigned
int
*
siglen
,
const
BIGNUM
*
kinv
,
const
BIGNUM
*
rp
,
EC_KEY
*
eckey
);
/** ECDSA_verify
* verifies that the given signature is valid ECDSA signature
/** Verifies that the given signature is valid ECDSA signature
* of the supplied hash value using the specified public key.
* \param type this parameter is ignored
* \param dgst pointer to the hash value
* \param dgstlen length of the hash value
* \param sig pointer to the DER encoded signature
* \param siglen length of the DER encoded signature
* \param eckey pointer to the EC_KEY object containing a public EC key
* \return 1 if the signature is valid, 0 if the signature is invalid and -1 on error
* \param eckey EC_KEY object containing a public EC key
* \return 1 if the signature is valid, 0 if the signature is invalid
* and -1 on error
*/
int
ECDSA_verify
(
int
type
,
const
unsigned
char
*
dgst
,
int
dgstlen
,
const
unsigned
char
*
sig
,
int
siglen
,
EC_KEY
*
eckey
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录