lopy4/components/xmss-reference-master/xmss.c
/* This file provides wrapper functions that take keys that include OIDs to
identify the parameter set to be used. After setting the parameters accordingly
it falls back to the regular XMSS core functions. */
This file provides wrapper functions that take keys that include OIDs to
identify the parameter set to be used. After setting the parameters accordingly
it falls back to the regular XMSS core functions.
This file provides wrapper functions that take keys that include OIDs to identify the parameter set to be used . After setting the parameters accordingly it falls back to the regular XMSS core functions .
int xmss_keypair(unsigned char *pk, unsigned char *sk, const uint32_t oid)
{
    xmss_params params;
    unsigned int i;
    if (xmss_parse_oid(&params, oid)) {
        return -1;
    }
    for (i = 0; i < XMSS_OID_LEN; i++) {
        pk[XMSS_OID_LEN - i - 1] = (oid >> (8 * i)) & 0xFF;
        sk[XMSS_OID_LEN - i - 1] = (oid >> (8 * i)) & 0xFF;
    }
    return xmss_core_keypair(&params, pk + XMSS_OID_LEN, sk + XMSS_OID_LEN);
}
int xmss_keypair ( unsigned char * pk , unsigned char * sk , const uint32_t oid ) { xmss_params params ; unsigned int i ; if ( xmss_parse_oid ( & params , oid ) ) { return -1 ; } for ( i = 0 ; i < XMSS_OID_LEN ; i ++ ) { pk [ XMSS_OID_LEN - i - 1 ] = ( oid >> ( 8 * i ) ) & 0xFF ; sk [ XMSS_OID_LEN - i - 1 ] = ( oid >> ( 8 * i ) ) & 0xFF ; } return xmss_core_keypair ( & params , pk + XMSS_OID_LEN , sk + XMSS_OID_LEN ) ; }
This file provides wrapper functions that take keys that include OIDs to
identify the parameter set to be used.
This file provides wrapper functions that take keys that include OIDs to identify the parameter set to be used .
/* For an implementation that uses runtime parameters, it is crucial
        that the OID is part of the secret key as well;
        i.e. not just for interoperability, but also for internal use. */