15#ifndef PRIVACY_PROOFS_ZK_LIB_CIRCUITS_MDOC_MDOC_CONSTANTS_H_
16#define PRIVACY_PROOFS_ZK_LIB_CIRCUITS_MDOC_MDOC_CONSTANTS_H_
24constexpr static const size_t kMaxSHABlocks = 35;
27constexpr static const size_t kCborIndexBits = 12;
31static constexpr uint8_t kCose1Prefix[18] = {
32 0x84, 0x6A, 0x53, 0x69, 0x67, 0x6E, 0x61, 0x74, 0x75,
33 0x72, 0x65, 0x31, 0x43, 0xA1, 0x01, 0x26, 0x40, 0x59,
35static constexpr size_t kCose1PrefixLen = 18;
38constexpr static const size_t kMaxMsoLen =
39 kMaxSHABlocks * 64 - 9 - kCose1PrefixLen;
41static constexpr size_t kValidityInfoLen = 12;
42static constexpr size_t kValidFromLen = 9;
43static constexpr size_t kDeviceKeyLen = 9;
44static constexpr size_t kDeviceKeyInfoLen = 13;
45static constexpr size_t kValidUntilLen = 10;
46static constexpr size_t kValueDigestsLen = 12;
47static constexpr size_t kOrgLen = 17;
49static constexpr uint8_t kTag32[] = {0x58, 0x20};
50static constexpr size_t kIdLen = 32;
51static constexpr size_t kValueLen = 64;
53static constexpr uint8_t kValidityInfoID[kValidityInfoLen] = {
54 'v',
'a',
'l',
'i',
'd',
'i',
't',
'y',
'I',
'n',
'f',
'o'};
56static constexpr uint8_t kValidFromID[kValidFromLen] = {
'v',
'a',
'l',
'i',
'd',
59static constexpr uint8_t kValidUntilID[kValidUntilLen] = {
60 'v',
'a',
'l',
'i',
'd',
'U',
'n',
't',
'i',
'l'};
62static constexpr uint8_t kDeviceKeyID[kDeviceKeyLen] = {
'd',
'e',
'v',
'i',
'c',
65static constexpr uint8_t kDeviceKeyInfoID[kDeviceKeyInfoLen] = {
66 'd',
'e',
'v',
'i',
'c',
'e',
'K',
'e',
'y',
'I',
'n',
'f',
'o'};
68static constexpr uint8_t kValueDigestsID[kValueDigestsLen] = {
69 'v',
'a',
'l',
'u',
'e',
'D',
'i',
'g',
'e',
's',
't',
's'};
71static constexpr uint8_t kOrgID[kOrgLen] = {
'o',
'r',
'g',
'.',
'i',
's',
72 'o',
'.',
'1',
'8',
'0',
'1',
73 '3',
'.',
'5',
'.',
'1'};