コンテンツにスキップ

ECCSI鍵での署名と検証のための操作

More...

Functions

Name
int wc_MakeEccsiPair(EccsiKey * key, WC_RNG * rng, enum wc_HashType hashType, const byte * id, word32 idSz, mp_int * ssk, ecc_point * pvt)
int wc_ValidateEccsiPair(EccsiKey * key, enum wc_HashType hashType, const byte * id, word32 idSz, const mp_int * ssk, ecc_point * pvt, int * valid)
int wc_ValidateEccsiPvt(EccsiKey * key, const ecc_point * pvt, int * valid)
int wc_EncodeEccsiPair(const EccsiKey * key, mp_int * ssk, ecc_point * pvt, byte * data, word32 * sz)
int wc_EncodeEccsiSsk(const EccsiKey * key, mp_int * ssk, byte * data, word32 * sz)
int wc_EncodeEccsiPvt(const EccsiKey * key, ecc_point * pvt, byte * data, word32 * sz, int raw)
int wc_DecodeEccsiPair(const EccsiKey * key, const byte * data, word32 sz, mp_int * ssk, ecc_point * pvt)
int wc_DecodeEccsiSsk(const EccsiKey * key, const byte * data, word32 sz, mp_int * ssk)
int wc_DecodeEccsiPvt(const EccsiKey * key, const byte * data, word32 sz, ecc_point * pvt)
int wc_DecodeEccsiPvtFromSig(const EccsiKey * key, const byte * sig, word32 sz, ecc_point * pvt)
int wc_HashEccsiId(EccsiKey * key, enum wc_HashType hashType, const byte * id, word32 idSz, ecc_point * pvt, byte * hash, byte * hashSz)
int wc_SignEccsiHash(EccsiKey * key, WC_RNG * rng, enum wc_HashType hashType, const byte * msg, word32 msgSz, byte * sig, word32 * sigSz)
int wc_VerifyEccsiHash(EccsiKey * key, enum wc_HashType hashType, const byte * msg, word32 msgSz, const byte * sig, word32 sigSz, int * verified)

Detailed Description

これらは、ECCSI鍵を使用した署名と検証のための操作です。

署名時に使用する署名者のIDでECCSI鍵ペアを作成(wc_MakeEccsiPair())。

署名者のIDでECCSI鍵ペアを検証(wc_ValidateEccsiPair())。

ECCSI公開検証トークン(PVT)を検証(wc_ValidateEccsiPvt())。

クライアントへの転送のためにECCSI鍵ペアをエンコード(wc_EncodeEccsiPair())。

クライアントへの転送のためにECCSI SSKをエンコード(wc_EncodeEccsiSsk())。

検証者への転送のためにECCSI PVTをエンコード(wc_EncodeEccsiPvt())。

署名のためにクライアントでECCSI鍵ペアをデコード(wc_DecodeEccsiPair())。

署名のためにクライアントでECCSI SSKをデコード(wc_DecodeEccsiSsk())。

署名のためにクライアントでECCSI PVTをデコード(wc_DecodeEccsiPvt())。

検証のためにクライアントで署名からECCSI PVTをデコード(wc_DecodeEccsiPvtFromSig())。

IDと公開検証トークン(PVT)を使用した署名/検証のためにIDのハッシュを計算(wc_HashEccsiId())。

IDのハッシュと秘密署名鍵(SSK)および公開検証トークン(PVT)でメッセージに署名(wc_SignEccsiHash())。

署名者のIDのハッシュでメッセージを検証(wc_VerifyEccsiHash())。

Functions Documentation

function wc_MakeEccsiPair

int wc_MakeEccsiPair(
    EccsiKey * key,
    WC_RNG * rng,
    enum wc_HashType hashType,
    const byte * id,
    word32 idSz,
    mp_int * ssk,
    ecc_point * pvt
)

function wc_ValidateEccsiPair

int wc_ValidateEccsiPair(
    EccsiKey * key,
    enum wc_HashType hashType,
    const byte * id,
    word32 idSz,
    const mp_int * ssk,
    ecc_point * pvt,
    int * valid
)

function wc_ValidateEccsiPvt

int wc_ValidateEccsiPvt(
    EccsiKey * key,
    const ecc_point * pvt,
    int * valid
)

function wc_EncodeEccsiPair

int wc_EncodeEccsiPair(
    const EccsiKey * key,
    mp_int * ssk,
    ecc_point * pvt,
    byte * data,
    word32 * sz
)

function wc_EncodeEccsiSsk

int wc_EncodeEccsiSsk(
    const EccsiKey * key,
    mp_int * ssk,
    byte * data,
    word32 * sz
)

function wc_EncodeEccsiPvt

int wc_EncodeEccsiPvt(
    const EccsiKey * key,
    ecc_point * pvt,
    byte * data,
    word32 * sz,
    int raw
)

function wc_DecodeEccsiPair

int wc_DecodeEccsiPair(
    const EccsiKey * key,
    const byte * data,
    word32 sz,
    mp_int * ssk,
    ecc_point * pvt
)

function wc_DecodeEccsiSsk

int wc_DecodeEccsiSsk(
    const EccsiKey * key,
    const byte * data,
    word32 sz,
    mp_int * ssk
)

function wc_DecodeEccsiPvt

int wc_DecodeEccsiPvt(
    const EccsiKey * key,
    const byte * data,
    word32 sz,
    ecc_point * pvt
)

function wc_DecodeEccsiPvtFromSig

int wc_DecodeEccsiPvtFromSig(
    const EccsiKey * key,
    const byte * sig,
    word32 sz,
    ecc_point * pvt
)

function wc_HashEccsiId

int wc_HashEccsiId(
    EccsiKey * key,
    enum wc_HashType hashType,
    const byte * id,
    word32 idSz,
    ecc_point * pvt,
    byte * hash,
    byte * hashSz
)

function wc_SignEccsiHash

int wc_SignEccsiHash(
    EccsiKey * key,
    WC_RNG * rng,
    enum wc_HashType hashType,
    const byte * msg,
    word32 msgSz,
    byte * sig,
    word32 * sigSz
)

function wc_VerifyEccsiHash

int wc_VerifyEccsiHash(
    EccsiKey * key,
    enum wc_HashType hashType,
    const byte * msg,
    word32 msgSz,
    const byte * sig,
    word32 sigSz,
    int * verified
)

Updated on 2025-12-12 at 03:08:17 +0000