parse-cosekey
Version:
Parse COSE(CBOR Object Signing and Encryption) to JWK(JSON Web Key) or PEM.
240 lines (239 loc) • 10.6 kB
TypeScript
declare abstract class COSEKeyParameterValue {
}
/**
* COSE Key Types.
* {@link https://www.iana.org/assignments/cose/cose.xhtml#key-type}
*/
declare class COSEKeyType extends COSEKeyParameterValue {
private _name;
private _value;
private _description;
static _values: COSEKeyType[];
static readonly OKP: COSEKeyType;
static readonly EC2: COSEKeyType;
static readonly RSA: COSEKeyType;
static readonly SYMMETRIC: COSEKeyType;
static readonly HSS_LMS: COSEKeyType;
static readonly WALNUT_DSA: COSEKeyType;
private constructor();
get name(): string;
get value(): number;
get description(): string;
static values(): COSEKeyType[];
static fromValue(value: number): COSEKeyType | null;
static fromName(name: string): COSEKeyType | null;
}
declare abstract class COSEKeyParameter {
}
/**
* COSE Key Common Parameters.
* {@link https://www.iana.org/assignments/cose/cose.xhtml#key-common-parameters}
*/
declare class COSEKeyCommonParameter extends COSEKeyParameter {
private _name;
private _label;
private _description;
private static _values;
static readonly KTY: COSEKeyCommonParameter;
static readonly KID: COSEKeyCommonParameter;
static readonly ALG: COSEKeyCommonParameter;
static readonly KEY_OPS: COSEKeyCommonParameter;
static readonly BASE_IV: COSEKeyCommonParameter;
private constructor();
get name(): string;
get label(): number;
get description(): string;
static values(): COSEKeyCommonParameter[];
static fromLabel(label: number): COSEKeyCommonParameter | null;
static fromName(name: string): COSEKeyCommonParameter | null;
}
/**
* COSE Key Type Parameters.
* {@link https://www.iana.org/assignments/cose/cose.xhtml#key-type-parameters}
*/
declare class COSEKeyTypeParameter extends COSEKeyParameter {
private _keyType;
private _name;
private _label;
private _description;
private static _values;
static readonly OKP_CRV: COSEKeyTypeParameter;
static readonly OKP_X: COSEKeyTypeParameter;
static readonly OKP_D: COSEKeyTypeParameter;
static readonly EC2_CRV: COSEKeyTypeParameter;
static readonly EC2_X: COSEKeyTypeParameter;
static readonly EC2_Y: COSEKeyTypeParameter;
static readonly EC2_D: COSEKeyTypeParameter;
static readonly RSA_N: COSEKeyTypeParameter;
static readonly RSA_E: COSEKeyTypeParameter;
static readonly RSA_D: COSEKeyTypeParameter;
static readonly RSA_P: COSEKeyTypeParameter;
static readonly RSA_Q: COSEKeyTypeParameter;
static readonly RSA_DP: COSEKeyTypeParameter;
static readonly RSA_DQ: COSEKeyTypeParameter;
static readonly RSA_QINV: COSEKeyTypeParameter;
static readonly OTHER: COSEKeyTypeParameter;
static readonly R_I: COSEKeyTypeParameter;
static readonly D_I: COSEKeyTypeParameter;
static readonly T_I: COSEKeyTypeParameter;
static readonly SYMMETRIC_K: COSEKeyTypeParameter;
static readonly PUB: COSEKeyTypeParameter;
static readonly WALNUTRSA_N: COSEKeyTypeParameter;
static readonly WALNUTRSA_Q: COSEKeyTypeParameter;
static readonly T_VALUES: COSEKeyTypeParameter;
static readonly MATRIX_1: COSEKeyTypeParameter;
static readonly PERMUTATION_1: COSEKeyTypeParameter;
static readonly MATRIX_2: COSEKeyTypeParameter;
private constructor();
get keyType(): COSEKeyType;
get name(): string;
get label(): number;
get description(): string;
static values(): COSEKeyTypeParameter[];
static fromLabel(keyType: COSEKeyType, label: number): COSEKeyTypeParameter | null;
static fromName(keyType: COSEKeyType, name: string): COSEKeyTypeParameter | null;
}
declare class COSEKeyOperationValue extends COSEKeyParameterValue {
private _name;
private _value;
private _description;
static _values: COSEKeyOperationValue[];
static readonly SIGN: COSEKeyOperationValue;
static readonly VERIFY: COSEKeyOperationValue;
static readonly ENCRYPT: COSEKeyOperationValue;
static readonly DECRYPT: COSEKeyOperationValue;
static readonly WRAP_KEY: COSEKeyOperationValue;
static readonly UNWRAP_KEY: COSEKeyOperationValue;
static readonly DERIVE_KEY: COSEKeyOperationValue;
static readonly DERIVE_BITS: COSEKeyOperationValue;
static readonly MAC_CREATE: COSEKeyOperationValue;
static readonly MAC_VERIFY: COSEKeyOperationValue;
private constructor();
get name(): string;
get value(): number;
get description(): string;
static values(): COSEKeyOperationValue[];
static fromValue(value: number): COSEKeyOperationValue | null;
static fromName(name: string): COSEKeyOperationValue | null;
}
declare class COSEEllipticCurve extends COSEKeyParameterValue {
private _name;
private _value;
private _keyType;
private _description;
static _values: COSEEllipticCurve[];
static readonly P_256: COSEEllipticCurve;
static readonly P_384: COSEEllipticCurve;
static readonly P_512: COSEEllipticCurve;
static readonly X25519: COSEEllipticCurve;
static readonly X448: COSEEllipticCurve;
static readonly ED25519: COSEEllipticCurve;
static readonly ED448: COSEEllipticCurve;
static readonly SECP256K1: COSEEllipticCurve;
private constructor();
get name(): string;
get value(): number;
get keyType(): COSEKeyType;
get description(): string;
static values(): COSEEllipticCurve[];
static fromValue(keyType: COSEKeyType, value: number): COSEEllipticCurve | null;
static fromName(keyType: COSEKeyType, name: string): COSEEllipticCurve | null;
}
declare class COSEAlgorithm extends COSEKeyParameterValue {
private _name;
private _value;
private _description;
private _nodeCryptoHashAlg;
private static _values;
static readonly RS1: COSEAlgorithm;
static readonly WALNUT_DSA: COSEAlgorithm;
static readonly RS512: COSEAlgorithm;
static readonly RS384: COSEAlgorithm;
static readonly RS256: COSEAlgorithm;
static readonly ES256K: COSEAlgorithm;
static readonly HSS_LMS: COSEAlgorithm;
static readonly SHAKE256: COSEAlgorithm;
static readonly SHA_512: COSEAlgorithm;
static readonly SHA_384: COSEAlgorithm;
static readonly RSAES_OAEP_w_SHA_512: COSEAlgorithm;
static readonly RSAES_OAEP_w_SHA_256: COSEAlgorithm;
static readonly RSAES_OAEP_w_RFC8017_DEFAULT_PARAMETERS: COSEAlgorithm;
static readonly PS512: COSEAlgorithm;
static readonly PS384: COSEAlgorithm;
static readonly PS256: COSEAlgorithm;
static readonly ES512: COSEAlgorithm;
static readonly ES384: COSEAlgorithm;
static readonly ECDH_SS_A256KW: COSEAlgorithm;
static readonly ECDH_SS_A192KW: COSEAlgorithm;
static readonly ECDH_SS_A128KW: COSEAlgorithm;
static readonly ECDH_ES_A256KW: COSEAlgorithm;
static readonly ECDH_ES_A192KW: COSEAlgorithm;
static readonly ECDH_ES_A128KW: COSEAlgorithm;
static readonly ECDH_SS_HKDF_512: COSEAlgorithm;
static readonly ECDH_SS_HKDF_256: COSEAlgorithm;
static readonly ECDH_ES_HKDF_512: COSEAlgorithm;
static readonly ECDH_ES_HKDF_256: COSEAlgorithm;
static readonly SHAKE128: COSEAlgorithm;
static readonly SHA_512_256: COSEAlgorithm;
static readonly SHA_256: COSEAlgorithm;
static readonly SHA_256_64: COSEAlgorithm;
static readonly SHA_1: COSEAlgorithm;
static readonly DIRECT_HKDF_AES_256: COSEAlgorithm;
static readonly DIRECT_HKDF_AES_128: COSEAlgorithm;
static readonly DIRECT_HKDF_SHA_512: COSEAlgorithm;
static readonly DIRECT_HKDF_SHA_256: COSEAlgorithm;
static readonly EdDSA: COSEAlgorithm;
static readonly ES256: COSEAlgorithm;
static readonly DIRECT: COSEAlgorithm;
static readonly A256KW: COSEAlgorithm;
static readonly A192KW: COSEAlgorithm;
static readonly A128KW: COSEAlgorithm;
static readonly A128GCM: COSEAlgorithm;
static readonly A192GCM: COSEAlgorithm;
static readonly A256GCM: COSEAlgorithm;
static readonly HMAC_256_64: COSEAlgorithm;
static readonly HMAC_256_256: COSEAlgorithm;
static readonly HMAC_384_384: COSEAlgorithm;
static readonly HMAC_512_512: COSEAlgorithm;
static readonly AES_CCM_16_64_128: COSEAlgorithm;
static readonly AES_CCM_16_64_256: COSEAlgorithm;
static readonly AES_CCM_64_64_128: COSEAlgorithm;
static readonly AES_CCM_64_64_256: COSEAlgorithm;
static readonly AES_MAC_128_64: COSEAlgorithm;
static readonly AES_MAC_256_64: COSEAlgorithm;
static readonly CHACHA20_POLY1305: COSEAlgorithm;
static readonly AES_MAC_128_128: COSEAlgorithm;
static readonly AES_MAC_256_128: COSEAlgorithm;
static readonly AES_CCM_16_128_128: COSEAlgorithm;
static readonly AES_CCM_16_128_256: COSEAlgorithm;
static readonly AES_CCM_64_128_128: COSEAlgorithm;
static readonly AES_CCM_64_128_256: COSEAlgorithm;
static readonly IV_GENERATION: COSEAlgorithm;
private constructor();
get name(): string;
get value(): number;
get description(): string;
get nodeCryptoHashAlg(): string | null;
static values(): COSEAlgorithm[];
static fromValue(value: number): COSEAlgorithm | null;
static fromName(name: string): COSEAlgorithm | null;
}
declare class COSEKeyParameterValueMapping {
private _parameter;
private _value;
private static _values;
static readonly KTY: COSEKeyParameterValueMapping;
static readonly ALG: COSEKeyParameterValueMapping;
static readonly KEY_OPS: COSEKeyParameterValueMapping;
static readonly OKP_CRV: COSEKeyParameterValueMapping;
static readonly EC2_CRV: COSEKeyParameterValueMapping;
private constructor();
get parameter(): COSEKeyParameter;
get value(): COSEKeyParameterValue;
static values(): COSEKeyParameterValueMapping[];
static fromParameter(parameter: COSEKeyParameter): COSEKeyParameterValueMapping | null;
fromParameterLabel(label: number, keyType?: COSEKeyType): COSEKeyParameterValueMapping | null;
fromValueLabel(label: any): COSEKeyType | COSEKeyOperationValue | COSEEllipticCurve | COSEAlgorithm | null;
fromValueName(name: string): COSEKeyType | COSEKeyOperationValue | COSEEllipticCurve | COSEAlgorithm | null;
}
export { COSEKeyCommonParameter, COSEKeyType, COSEKeyTypeParameter, COSEKeyOperationValue, COSEEllipticCurve, COSEAlgorithm, COSEKeyParameterValueMapping, };