keys.ha (24231B)
1 // License: MPL-2.0 2 // (c) 2022 Armin Preiml <apreiml@strohwolke.at> 3 use bytes; 4 5 type keypair = struct { 6 pub: pubparams, 7 priv: privparams, 8 d: []u8, 9 }; 10 11 let sign3072: keypair = keypair { 12 pub = pubparams { 13 n = [ 14 0xe1, 0x83, 0x1c, 0x9d, 0xa1, 0x19, 0xe5, 0x74, 0x86, 15 0x07, 0x85, 0x50, 0x96, 0x21, 0x62, 0x11, 0xdd, 0x80, 16 0xca, 0xe2, 0x2b, 0xf0, 0x22, 0x11, 0x83, 0xf0, 0x35, 17 0x65, 0xc6, 0x1c, 0x54, 0x18, 0xc6, 0x58, 0xd8, 0x2e, 18 0x32, 0xed, 0xa0, 0x84, 0x65, 0x24, 0xe5, 0x96, 0x79, 19 0xda, 0x05, 0x43, 0x65, 0x83, 0x56, 0xe7, 0x5c, 0xed, 20 0x2f, 0x82, 0x56, 0x04, 0x2f, 0x47, 0x4b, 0xdf, 0x7d, 21 0x7c, 0xd5, 0xf2, 0x07, 0xbb, 0x44, 0x43, 0x78, 0x18, 22 0x14, 0xc1, 0x00, 0x44, 0x16, 0xca, 0x6c, 0x08, 0x53, 23 0x1c, 0x19, 0x76, 0x51, 0xcf, 0x4a, 0x25, 0x33, 0xca, 24 0x1e, 0xf3, 0x0d, 0x31, 0x2a, 0x6a, 0x6f, 0x77, 0x1f, 25 0xe4, 0x55, 0xe9, 0x01, 0xea, 0x7c, 0x1d, 0x41, 0x70, 26 0xb7, 0x39, 0x2e, 0xb9, 0x05, 0x79, 0x47, 0xe9, 0xae, 27 0x14, 0xeb, 0x38, 0xfe, 0xc8, 0x57, 0x8d, 0xfe, 0x1b, 28 0x68, 0x66, 0x34, 0xb1, 0x80, 0xf6, 0xf8, 0x8a, 0x82, 29 0xe8, 0x60, 0x1b, 0x3a, 0xf7, 0xcc, 0x51, 0xdf, 0xd3, 30 0xb4, 0x67, 0xbf, 0xae, 0xb2, 0x6d, 0xa0, 0x7f, 0xdf, 31 0x08, 0xdf, 0xc4, 0x1d, 0xf9, 0x15, 0xad, 0x68, 0xe8, 32 0x71, 0xce, 0xf2, 0x5a, 0x0d, 0x1d, 0x92, 0x87, 0x77, 33 0x88, 0x05, 0x9c, 0xb6, 0x7d, 0x08, 0x33, 0x7a, 0x94, 34 0xcf, 0x53, 0x80, 0x04, 0x16, 0xe6, 0x03, 0x14, 0x54, 35 0x53, 0x7d, 0xb2, 0xe5, 0x8c, 0x80, 0x64, 0xe7, 0x14, 36 0xdf, 0xbd, 0xf9, 0x07, 0xbe, 0xa6, 0xb1, 0x1e, 0x4d, 37 0x65, 0xfa, 0x0a, 0x18, 0x10, 0x45, 0x83, 0x39, 0x0e, 38 0x9b, 0xa0, 0x86, 0xa7, 0x0b, 0xb7, 0x58, 0x58, 0x82, 39 0x52, 0x17, 0x53, 0x7c, 0xfe, 0xcf, 0x55, 0x0e, 0x61, 40 0xd8, 0xd4, 0xbc, 0xe9, 0x87, 0x21, 0x65, 0x74, 0xe8, 41 0x0a, 0xab, 0x43, 0x98, 0x3a, 0x83, 0x72, 0xaf, 0xd0, 42 0x7f, 0x93, 0xd4, 0x39, 0xa6, 0x09, 0xc8, 0x1d, 0xf1, 43 0x06, 0x25, 0x95, 0x9e, 0x13, 0x55, 0x06, 0x28, 0x03, 44 0xb2, 0x3c, 0xf2, 0x3a, 0xb0, 0x8c, 0xba, 0x4e, 0x05, 45 0x19, 0xbb, 0x98, 0x02, 0xca, 0x8d, 0x4d, 0xd2, 0xff, 46 0x8a, 0xa5, 0x34, 0x8a, 0x06, 0x15, 0xc0, 0xc3, 0xf6, 47 0x1b, 0xb8, 0x5e, 0xd7, 0xb9, 0x28, 0x39, 0x8c, 0x96, 48 0xdb, 0x85, 0x56, 0x21, 0xba, 0xff, 0x7b, 0x5f, 0x25, 49 0x47, 0xb5, 0x2e, 0x6c, 0x70, 0x73, 0xab, 0x13, 0x4d, 50 0x24, 0xa8, 0xb3, 0x73, 0xd7, 0x7f, 0xd8, 0xb3, 0xe4, 51 0xdf, 0x94, 0x9c, 0x48, 0xd6, 0x80, 0x0b, 0x8b, 0xd1, 52 0xd4, 0x29, 0xb9, 0xa2, 0xef, 0xab, 0x1e, 0x8d, 0xa7, 53 0x74, 0xa2, 0xc7, 0xe3, 0x89, 0xb5, 0x01, 0xcf, 0xf0, 54 0xc2, 0x28, 0x4d, 0x8e, 0x60, 0x42, 0x37, 0xbe, 0x18, 55 0x61, 0x29, 0x8d, 0x01, 0xe6, 0xf9, 0xb5, 0xa7, 0xc5, 56 0xb7, 0xce, 0xa8, 0x85, 0x61, 0x1b, 57 ], 58 e = [0x01, 0x00, 0x01], 59 ... 60 }, 61 priv = privparams { 62 nbitlen = 3072, 63 p = [ 64 0x00, 0xff, 0xce, 0xa3, 0x93, 0x98, 0xe2, 0x7b, 0x85, 65 0xab, 0xfe, 0x6d, 0x3b, 0xb3, 0xfb, 0xa4, 0xca, 0xbe, 66 0x21, 0x7f, 0xa9, 0x09, 0x40, 0xe1, 0xf0, 0x10, 0xcf, 67 0xee, 0x9b, 0x23, 0xea, 0xff, 0xe7, 0x52, 0x28, 0x38, 68 0x51, 0x3b, 0xd4, 0x5b, 0xb7, 0xef, 0x4b, 0x7a, 0x23, 69 0xa8, 0xff, 0xa3, 0x41, 0xd9, 0xc1, 0x7b, 0xf4, 0x7d, 70 0x7a, 0xa6, 0x4f, 0x28, 0x66, 0x25, 0x6b, 0xda, 0x96, 71 0x97, 0x75, 0x8a, 0xd9, 0x3b, 0xb2, 0x48, 0x5a, 0xe7, 72 0x06, 0x37, 0x18, 0x0f, 0xb0, 0x3f, 0x0f, 0x1c, 0x38, 73 0x63, 0xe3, 0x16, 0x5c, 0xa0, 0xfe, 0xea, 0xc0, 0x08, 74 0x4d, 0xfc, 0x34, 0x28, 0x18, 0xd1, 0xa1, 0x51, 0x8c, 75 0xb1, 0x58, 0xb2, 0xbc, 0xad, 0xc0, 0xa8, 0x6b, 0x7f, 76 0xf2, 0xf9, 0xbc, 0xb5, 0xc7, 0x3f, 0x1f, 0x1a, 0x44, 77 0x75, 0xfe, 0x9f, 0xd1, 0x96, 0x8b, 0x7f, 0x03, 0xe7, 78 0x0a, 0x58, 0x67, 0xb1, 0xf4, 0x0d, 0x77, 0xc9, 0x31, 79 0xde, 0xda, 0xf2, 0x16, 0x1e, 0x02, 0xb7, 0xfc, 0x17, 80 0x93, 0xd7, 0x6d, 0x08, 0x73, 0xda, 0x92, 0x12, 0x49, 81 0xf2, 0x86, 0x93, 0xcd, 0x60, 0xb8, 0x00, 0xe2, 0xbc, 82 0xf7, 0x7e, 0x2c, 0xb1, 0x1c, 0x3f, 0x74, 0xf0, 0x01, 83 0x53, 0x25, 0x11, 0x47, 0x89, 0xe7, 0x4d, 0x6f, 0x06, 84 0x9b, 0x43, 0x9e, 0xab, 0x47, 0x9f, 0x83, 0x45, 0x40, 85 0x95, 0x3f, 0x83, 0xff, 86 ], 87 q = [ 88 0x00, 0xe1, 0xae, 0xa0, 0x84, 0xac, 0xc1, 0xa4, 0xba, 89 0xf9, 0x4b, 0x00, 0x65, 0xa7, 0x89, 0xf0, 0x92, 0x34, 90 0x62, 0x58, 0x5a, 0x1c, 0xcf, 0x4b, 0xb2, 0xda, 0x5f, 91 0xab, 0x11, 0x6e, 0x78, 0x91, 0x56, 0x9d, 0x8b, 0xb1, 92 0xdb, 0x5a, 0x68, 0xb7, 0x5d, 0x39, 0x76, 0xac, 0x77, 93 0xd7, 0x2c, 0xea, 0xd8, 0xac, 0xa1, 0xc6, 0xbe, 0x87, 94 0xe4, 0xca, 0xa8, 0x00, 0x85, 0x2b, 0x8a, 0x9c, 0x53, 95 0x89, 0x3f, 0xdf, 0x84, 0x6a, 0x8e, 0x6e, 0xb2, 0xc0, 96 0x2a, 0x56, 0xd9, 0x43, 0xee, 0xca, 0x43, 0x6a, 0x4d, 97 0x04, 0x59, 0xe1, 0xd4, 0x5b, 0x11, 0x3d, 0xea, 0x5b, 98 0xe1, 0x11, 0xa2, 0xfc, 0xca, 0x77, 0xd7, 0x3a, 0xbc, 99 0x43, 0xbf, 0xf3, 0xae, 0x9c, 0x98, 0x2a, 0x6c, 0x2e, 100 0x34, 0x27, 0x5c, 0x4b, 0xd7, 0x5a, 0x74, 0xf4, 0xf4, 101 0x4e, 0x63, 0x83, 0xef, 0x2d, 0xc5, 0x15, 0x2a, 0xd0, 102 0x7b, 0x3c, 0xf9, 0x2e, 0xcb, 0x0f, 0x8f, 0x48, 0x29, 103 0x1f, 0xe3, 0xc4, 0xac, 0x65, 0xbd, 0xcb, 0xbb, 0xb1, 104 0xf0, 0x45, 0x6e, 0x6c, 0x38, 0xbf, 0x5d, 0x50, 0xef, 105 0xb2, 0xd9, 0x62, 0x13, 0x92, 0x6f, 0xa7, 0x4a, 0x24, 106 0x83, 0x1e, 0x25, 0x40, 0x4a, 0x4e, 0x1c, 0x90, 0xf2, 107 0x5f, 0x6c, 0x8a, 0xe0, 0x4f, 0xdc, 0xc1, 0x2d, 0x8d, 108 0x15, 0x95, 0xdf, 0x0f, 0x1b, 0xce, 0x28, 0xce, 0x2f, 109 0xcf, 0x13, 0xb2, 0xe5, 110 ], 111 dp = [ 112 0x02, 0x49, 0x8c, 0xb8, 0xe3, 0x23, 0x13, 0x4b, 0xac, 113 0xb0, 0x07, 0xb6, 0x02, 0xf3, 0xfb, 0x13, 0x3d, 0x03, 114 0xfb, 0xaa, 0x3d, 0x44, 0xf1, 0x40, 0x3e, 0x46, 0x3d, 115 0xb1, 0xf1, 0x6e, 0x46, 0x7f, 0x81, 0x02, 0x8f, 0x0e, 116 0x5a, 0xe4, 0x99, 0x35, 0x59, 0xd4, 0x68, 0xf1, 0x2c, 117 0xaf, 0xac, 0x7c, 0x08, 0x40, 0x6c, 0xa5, 0x51, 0x01, 118 0xe9, 0xbe, 0xc7, 0x73, 0xb2, 0x5d, 0xf6, 0x84, 0x66, 119 0x32, 0x4c, 0xdd, 0x88, 0x65, 0x1d, 0xb4, 0x82, 0x60, 120 0x51, 0xd9, 0xcb, 0x3a, 0x1e, 0x36, 0x3a, 0x60, 0x5e, 121 0xb4, 0x47, 0x1c, 0xe8, 0xeb, 0x9e, 0x99, 0xbc, 0xf9, 122 0x45, 0x8a, 0x09, 0xd9, 0xbe, 0xf6, 0x1c, 0x4e, 0x8f, 123 0xbf, 0x65, 0x49, 0xbe, 0x9b, 0xfc, 0x65, 0x89, 0xad, 124 0x58, 0x82, 0x51, 0x75, 0xc8, 0xa0, 0xb4, 0x91, 0x6c, 125 0x24, 0xac, 0xb5, 0x29, 0x0d, 0x72, 0x43, 0x4c, 0xab, 126 0x91, 0x02, 0xcc, 0x5a, 0x8c, 0x4c, 0x47, 0xe6, 0x44, 127 0x41, 0xdc, 0xec, 0x49, 0xb4, 0x68, 0x84, 0xbe, 0x89, 128 0x39, 0xe1, 0xe5, 0xb3, 0x73, 0x7e, 0xde, 0xde, 0xfe, 129 0x66, 0x29, 0xa8, 0x2a, 0x77, 0x3a, 0xba, 0xcc, 0x49, 130 0xc2, 0x3d, 0x10, 0x10, 0x5a, 0x98, 0xe7, 0x14, 0x7b, 131 0xf3, 0xd6, 0xe5, 0xb6, 0xdb, 0xf4, 0x9b, 0x4b, 0x89, 132 0xd3, 0xde, 0xf5, 0x55, 0x1c, 0x9e, 0x05, 0xde, 0x7f, 133 0xf7, 0x23, 0x6d, 134 ], 135 dq = [ 136 0x2d, 0x13, 0x96, 0x18, 0x29, 0xf1, 0x5b, 0x97, 0xc4, 137 0xe7, 0x48, 0x23, 0x05, 0xbd, 0xb5, 0x81, 0x5e, 0x59, 138 0x2e, 0x50, 0x81, 0x64, 0x9e, 0x38, 0x11, 0x09, 0xfe, 139 0xbf, 0x32, 0x93, 0x7e, 0x64, 0x10, 0x7f, 0xb0, 0x7c, 140 0xa1, 0xa8, 0x3c, 0xc7, 0xb0, 0x0c, 0x96, 0x12, 0x31, 141 0xb6, 0x55, 0x0a, 0x06, 0x21, 0x21, 0xf3, 0x38, 0x6d, 142 0x68, 0x54, 0xfa, 0x15, 0x9f, 0x46, 0xc6, 0x46, 0xa1, 143 0x29, 0x52, 0xd9, 0xbd, 0xf6, 0xc9, 0x01, 0x87, 0x04, 144 0x6d, 0xe8, 0x63, 0x7b, 0x34, 0x87, 0x16, 0x9a, 0x5f, 145 0x7e, 0x1c, 0x6f, 0x2f, 0xe9, 0x57, 0xb6, 0x91, 0xb7, 146 0x78, 0xb0, 0x57, 0x51, 0x91, 0x72, 0x39, 0xd7, 0x14, 147 0xa9, 0x28, 0x60, 0xfe, 0x02, 0x1e, 0xa7, 0x10, 0xeb, 148 0x75, 0xd9, 0x27, 0x84, 0xd2, 0x1a, 0x7e, 0x3a, 0xb5, 149 0xd5, 0x86, 0xaa, 0xa5, 0x37, 0xb2, 0x2c, 0xa5, 0x0b, 150 0x98, 0x78, 0x24, 0xf2, 0x86, 0x1f, 0x16, 0x48, 0xb0, 151 0x87, 0xeb, 0xe6, 0x8b, 0x43, 0xc7, 0x87, 0xab, 0xd8, 152 0xd3, 0xe5, 0x64, 0x54, 0x49, 0x54, 0xb8, 0x2f, 0xc8, 153 0x47, 0x47, 0x21, 0xa5, 0xa4, 0x0b, 0x83, 0xf1, 0x9b, 154 0x06, 0xd0, 0x65, 0xf0, 0xf1, 0x7d, 0x1f, 0x2e, 0x6a, 155 0x04, 0xe2, 0x10, 0x3f, 0xa3, 0x56, 0x2a, 0x64, 0xfd, 156 0xa4, 0xbb, 0xb2, 0xe6, 0xd8, 0xdc, 0xa9, 0xa2, 0x3e, 157 0xf8, 0x2e, 0x49, 158 ], 159 iq = [ 160 0x66, 0x80, 0xb0, 0x0c, 0xd2, 0x08, 0xc1, 0x5f, 0x8c, 161 0x33, 0xb9, 0xa0, 0x1b, 0x0d, 0xb4, 0xd3, 0x00, 0x3d, 162 0xda, 0xd7, 0x46, 0xb4, 0xab, 0xc8, 0xa7, 0x8a, 0xe1, 163 0x06, 0x07, 0x5e, 0x34, 0xb2, 0xb3, 0x88, 0x6f, 0xb9, 164 0x3d, 0x51, 0x0d, 0x23, 0x9f, 0xa0, 0x65, 0x87, 0x41, 165 0x5e, 0x7d, 0xb0, 0x4c, 0xbf, 0xc5, 0xfc, 0x18, 0xbc, 166 0x22, 0xd6, 0xae, 0x95, 0xee, 0xad, 0x14, 0xe0, 0x75, 167 0xcc, 0x6e, 0xfa, 0xa0, 0xe6, 0x21, 0xd3, 0x1d, 0x1b, 168 0x8c, 0xda, 0x4d, 0x24, 0xcc, 0x1e, 0xd9, 0x94, 0x72, 169 0xb6, 0x2e, 0xe0, 0x5c, 0xc4, 0x4e, 0x84, 0xfe, 0xe9, 170 0xe2, 0x8c, 0xf0, 0x98, 0x07, 0xc3, 0x82, 0x2c, 0xfc, 171 0xbe, 0x9e, 0xb5, 0x77, 0xdb, 0x94, 0xf9, 0xc6, 0x84, 172 0xdf, 0x36, 0x6f, 0xfe, 0x62, 0x91, 0xda, 0x5b, 0xe2, 173 0x6e, 0x73, 0x4d, 0x3b, 0x7a, 0x84, 0xc6, 0x69, 0xb7, 174 0x04, 0x6d, 0x1e, 0xa1, 0x7d, 0x5b, 0x50, 0xd9, 0x1b, 175 0xda, 0xb4, 0x67, 0xb7, 0x9c, 0x15, 0x49, 0x8b, 0x53, 176 0xd2, 0x11, 0xe8, 0x8d, 0x96, 0x96, 0x8f, 0x0b, 0xe2, 177 0x4b, 0x7d, 0xca, 0x4a, 0x1e, 0x7f, 0xb2, 0x1c, 0x42, 178 0x10, 0x1f, 0x68, 0x1d, 0x7c, 0x47, 0xe3, 0xd6, 0x11, 179 0x4a, 0x2d, 0x81, 0xfe, 0xf0, 0x1d, 0xd6, 0x8c, 0xd5, 180 0xb0, 0x42, 0x0b, 0x65, 0x4b, 0x18, 0xd9, 0x12, 0x22, 181 0xbd, 0x0f, 0x88, 182 ], 183 ... 184 }, 185 ... 186 }; 187 188 let enc4096: keypair = keypair { 189 pub = pubparams { 190 n = [ 191 0x00, 0xaf, 0xa5, 0xc5, 0xc6, 0x39, 0x74, 0xc1, 0x5b, 192 0x85, 0xba, 0xc9, 0x66, 0x2e, 0x44, 0x9f, 0xd8, 0x75, 193 0xbc, 0x14, 0x4e, 0x8b, 0x93, 0x09, 0xa9, 0x32, 0x32, 194 0x06, 0xcc, 0x33, 0x40, 0x5f, 0xd1, 0x68, 0xc6, 0x00, 195 0x6f, 0xa4, 0xe4, 0xe0, 0x3d, 0xde, 0x7e, 0xed, 0x87, 196 0xeb, 0x7e, 0x42, 0xd4, 0xe1, 0xa6, 0xab, 0xfc, 0xf4, 197 0xf3, 0x47, 0x46, 0x7d, 0x1c, 0x05, 0x62, 0xaa, 0x6e, 198 0x5f, 0x61, 0xe7, 0xca, 0x48, 0xf6, 0xb9, 0x70, 0x23, 199 0x9d, 0x50, 0xe3, 0x7d, 0x00, 0x19, 0x78, 0x32, 0xb2, 200 0x05, 0x4b, 0xe1, 0x99, 0x6f, 0x1f, 0x57, 0x98, 0x2a, 201 0x58, 0x53, 0x45, 0xc8, 0x44, 0x59, 0x68, 0xf2, 0x22, 202 0xc4, 0x4e, 0x0e, 0xff, 0xcd, 0x2b, 0x9a, 0x1a, 0x39, 203 0xd0, 0x77, 0xff, 0x7c, 0x62, 0x04, 0xc9, 0xb3, 0xfc, 204 0xff, 0x66, 0x38, 0x6e, 0x54, 0xc4, 0xa7, 0x56, 0xa2, 205 0xf0, 0xab, 0xdf, 0x18, 0x98, 0xd9, 0x6a, 0x12, 0x64, 206 0xa0, 0xff, 0x96, 0x89, 0x52, 0x4d, 0xc0, 0x3a, 0x33, 207 0x07, 0x73, 0x83, 0x42, 0xd3, 0x30, 0x86, 0xba, 0x29, 208 0x69, 0x6b, 0x65, 0x14, 0x93, 0xf5, 0x61, 0xea, 0x40, 209 0x28, 0xa2, 0xcb, 0xa2, 0x0c, 0xa4, 0x47, 0x52, 0x40, 210 0x05, 0x95, 0xc4, 0x4a, 0x1d, 0x2c, 0x93, 0x5a, 0x67, 211 0x31, 0xac, 0x95, 0x42, 0x2e, 0x9c, 0x07, 0x22, 0x6a, 212 0xaa, 0x60, 0x38, 0x8e, 0xab, 0x97, 0x09, 0x0a, 0x63, 213 0x43, 0x57, 0x0b, 0x58, 0x02, 0x55, 0x3d, 0x78, 0xba, 214 0xcb, 0x80, 0x29, 0x84, 0xc3, 0xd2, 0x08, 0x8a, 0xce, 215 0xc5, 0x41, 0x04, 0x85, 0x6d, 0xad, 0xbb, 0x30, 0x09, 216 0x32, 0x8b, 0x32, 0x95, 0xcb, 0xd6, 0x9c, 0x2a, 0xfc, 217 0x52, 0x5e, 0xf8, 0xbc, 0x7b, 0x1f, 0x97, 0x09, 0xbc, 218 0x84, 0x67, 0xf3, 0xf4, 0x2d, 0x5c, 0xc5, 0x5b, 0x30, 219 0xcd, 0x85, 0xee, 0xbc, 0x44, 0xd1, 0x45, 0x09, 0x9f, 220 0xa2, 0x62, 0xf6, 0x2b, 0xe9, 0xe1, 0x4e, 0x08, 0x3d, 221 0xf7, 0x78, 0xd8, 0x4e, 0x6e, 0xec, 0x87, 0x0a, 0x9d, 222 0x6d, 0x17, 0x33, 0xa2, 0x9a, 0x28, 0x10, 0x42, 0xfc, 223 0x34, 0xd7, 0x86, 0x4c, 0x21, 0x97, 0x9e, 0xae, 0xe4, 224 0x36, 0x6e, 0xd2, 0xdf, 0x4f, 0xe8, 0xd6, 0xcc, 0xd7, 225 0x82, 0xb9, 0xb0, 0x6e, 0x8c, 0x19, 0x08, 0xa5, 0xca, 226 0x44, 0x47, 0x52, 0x83, 0x26, 0x66, 0xe8, 0x54, 0x18, 227 0x80, 0x11, 0x69, 0x11, 0x4e, 0x00, 0x59, 0xf2, 0x62, 228 0x9b, 0x57, 0x87, 0xb3, 0x87, 0xd3, 0x17, 0xaf, 0x87, 229 0x20, 0xeb, 0x90, 0x7f, 0x19, 0xd9, 0x3f, 0xee, 0x98, 230 0xe6, 0xcf, 0x26, 0x1f, 0x20, 0xef, 0xf6, 0x77, 0x5b, 231 0xc7, 0x01, 0x89, 0x8b, 0x77, 0xf9, 0x13, 0x89, 0xfb, 232 0x9d, 0xb8, 0x3f, 0x82, 0x05, 0x66, 0xa9, 0xd9, 0x72, 233 0x66, 0x2c, 0xda, 0x19, 0x56, 0x18, 0x1e, 0xf8, 0x12, 234 0x1f, 0x61, 0x8b, 0xa9, 0x6e, 0x75, 0x0e, 0x40, 0x33, 235 0xfd, 0xde, 0x70, 0x62, 0xc2, 0x0a, 0x30, 0x0c, 0x46, 236 0x8f, 0x22, 0xc9, 0x15, 0x31, 0x6c, 0xc8, 0xfd, 0xdd, 237 0xc5, 0x9e, 0x6b, 0x41, 0x46, 0x9f, 0x32, 0xac, 0x3d, 238 0xc4, 0xd6, 0x61, 0x80, 0x8e, 0x12, 0x3b, 0x7c, 0xb2, 239 0xda, 0x07, 0x80, 0xd8, 0xf5, 0x07, 0xcd, 0xe6, 0x74, 240 0x9d, 0x4f, 0x09, 0x54, 0x24, 0x3d, 0x02, 0xf8, 0x96, 241 0x10, 0x58, 0x4f, 0x78, 0x30, 0xbc, 0x98, 0x01, 0xf6, 242 0xa3, 0x80, 0x58, 0x64, 0x07, 0x50, 0x5d, 0x06, 0x1e, 243 0xe9, 0x77, 0xf5, 0x65, 0xe5, 0x90, 0xf9, 0x63, 0x73, 244 0x9f, 0xd3, 0x9d, 0xc7, 0xba, 0xc1, 0x79, 0x28, 0x7f, 245 0xfd, 0xce, 0x28, 0x84, 0xb8, 0x49, 0x78, 0x9b, 0xb4, 246 0x6e, 0x7b, 0xe5, 0xeb, 0x1d, 0x9f, 0xc8, 0x63, 0xd5, 247 0x99, 0x05, 0x2d, 0x73, 0x8e, 0xe1, 0x32, 0xaa, 0x2d, 248 ], 249 e = [0x10, 0x00, 0x01], 250 ... 251 }, 252 priv = privparams { 253 nbitlen = 4096, 254 p = [ 255 0x00, 0xd9, 0x34, 0x08, 0x8a, 0x7c, 0x2f, 0xe7, 0x38, 256 0x7d, 0x7e, 0xc9, 0x30, 0xb5, 0x05, 0x2b, 0x5f, 0x93, 257 0xd3, 0xf8, 0xee, 0x13, 0x2a, 0x81, 0xec, 0x6d, 0x69, 258 0x35, 0x8b, 0x7c, 0x92, 0x0b, 0xae, 0x5b, 0x8d, 0x4c, 259 0x8d, 0x0c, 0x08, 0x77, 0x39, 0xf0, 0xde, 0x2b, 0x9e, 260 0x48, 0x87, 0xc4, 0x2f, 0x15, 0x80, 0x30, 0x94, 0x18, 261 0xfe, 0x72, 0x5e, 0x3d, 0x6b, 0x82, 0x29, 0xca, 0xd6, 262 0xe7, 0xa5, 0x7e, 0x8b, 0x26, 0x23, 0xee, 0x2e, 0x6d, 263 0xe8, 0x00, 0x53, 0x1a, 0xaa, 0x9c, 0x2f, 0xc7, 0xfb, 264 0xab, 0x10, 0x3d, 0xb9, 0x84, 0x15, 0x73, 0xbb, 0x18, 265 0xfe, 0x45, 0xa7, 0x70, 0x74, 0xdc, 0x9e, 0x39, 0xe6, 266 0x61, 0xa9, 0x6a, 0x06, 0xb3, 0xa5, 0x35, 0x57, 0x3b, 267 0x7b, 0xa9, 0xb7, 0xe1, 0xd7, 0x56, 0x00, 0xa9, 0x03, 268 0xd8, 0x33, 0xe4, 0x5a, 0x76, 0x4f, 0x8f, 0x14, 0xcc, 269 0xe2, 0xf2, 0xf7, 0xf0, 0x10, 0x3f, 0xd4, 0x5d, 0x02, 270 0x49, 0xb7, 0xf8, 0x47, 0x32, 0x4c, 0x13, 0x6c, 0xfb, 271 0xf5, 0xf5, 0x8a, 0x43, 0xcb, 0xa7, 0xb4, 0x8d, 0xd5, 272 0x11, 0x39, 0x99, 0x1b, 0xe1, 0x81, 0x0b, 0x1b, 0x4e, 273 0x1f, 0x15, 0xf9, 0x60, 0x98, 0x5c, 0x0a, 0x89, 0x72, 274 0x2b, 0x25, 0xfb, 0x11, 0xfb, 0x8f, 0x4f, 0x21, 0x3c, 275 0x3a, 0xe9, 0xd1, 0xca, 0x36, 0x64, 0xaf, 0xbf, 0xac, 276 0x5e, 0xee, 0x92, 0x98, 0xa6, 0xd0, 0x4d, 0x74, 0x1d, 277 0x68, 0xfe, 0x84, 0xd4, 0x8d, 0xa8, 0x44, 0xac, 0x63, 278 0xf7, 0xbb, 0x9c, 0xaa, 0x65, 0x3a, 0xe9, 0x4b, 0x12, 279 0xb8, 0x28, 0xbf, 0xf1, 0x58, 0x44, 0x32, 0xe6, 0x59, 280 0x10, 0xb5, 0x5d, 0xd0, 0x03, 0xf7, 0x8d, 0x42, 0xcc, 281 0x61, 0x24, 0xe1, 0xf1, 0x2f, 0x7a, 0x4b, 0xf6, 0x97, 282 0x1e, 0x75, 0xa1, 0xec, 0xd9, 0x0b, 0x64, 0x46, 0xae, 283 0x67, 0x5b, 0x7d, 0xc5, 0x63, 284 ], 285 q = [ 286 0x00, 0xcf, 0x05, 0x89, 0xb9, 0x51, 0x83, 0xd3, 0xab, 287 0xed, 0xe4, 0x61, 0x35, 0x3c, 0x48, 0xbe, 0xb6, 0x15, 288 0x87, 0x4e, 0xab, 0x18, 0xef, 0x23, 0x6d, 0x37, 0xcf, 289 0x39, 0xe7, 0x64, 0x4e, 0x58, 0xaa, 0xe9, 0x3a, 0xb5, 290 0x23, 0x45, 0xc9, 0xe5, 0x4f, 0xad, 0xa9, 0x10, 0x30, 291 0xdf, 0x5d, 0x06, 0x20, 0x16, 0xc6, 0x5e, 0x2a, 0x49, 292 0xbd, 0x2d, 0x14, 0xe3, 0x32, 0x96, 0xfa, 0x50, 0x5d, 293 0xfc, 0x9b, 0x44, 0x60, 0xa7, 0x36, 0x59, 0x62, 0xe9, 294 0xba, 0x8e, 0x15, 0x5b, 0x52, 0xd3, 0x6d, 0x84, 0x02, 295 0x90, 0x0d, 0xee, 0xb8, 0x60, 0x7b, 0x68, 0x80, 0x1f, 296 0xf2, 0xe2, 0x2a, 0xe3, 0x9a, 0xfb, 0x0d, 0x97, 0xae, 297 0x34, 0x65, 0x32, 0xfd, 0x13, 0xf2, 0x77, 0xfd, 0x21, 298 0x79, 0x48, 0x39, 0xb3, 0xd4, 0x19, 0x29, 0x0c, 0x42, 299 0xcb, 0xd5, 0x6a, 0x6c, 0xed, 0x48, 0xfa, 0x54, 0x83, 300 0x16, 0x04, 0x73, 0xd6, 0xbc, 0xb2, 0xc9, 0xb2, 0xd4, 301 0x6b, 0xbb, 0x5f, 0xb1, 0x69, 0xd3, 0x51, 0x3c, 0x29, 302 0x77, 0xba, 0xcf, 0x83, 0xc4, 0xe7, 0x84, 0xf6, 0x0c, 303 0xdc, 0xfa, 0x55, 0x1b, 0xa3, 0xb4, 0xa1, 0xc0, 0x8a, 304 0x61, 0xfa, 0x79, 0x1b, 0x82, 0xb3, 0xb0, 0xaa, 0xc0, 305 0xed, 0xe2, 0xf9, 0x69, 0x1c, 0x8a, 0x17, 0x56, 0xa9, 306 0xc1, 0xbb, 0x86, 0xe7, 0xff, 0xfe, 0x71, 0xcc, 0xa2, 307 0xea, 0xe4, 0x92, 0x8b, 0xed, 0xcc, 0x3e, 0x10, 0xd6, 308 0x4a, 0x53, 0xea, 0xdf, 0x53, 0xf5, 0x0c, 0x2b, 0x7d, 309 0x84, 0x54, 0x6e, 0xac, 0xb8, 0x57, 0x1e, 0xd3, 0x8c, 310 0xc4, 0x92, 0xae, 0x6a, 0x1d, 0x6f, 0x1d, 0x44, 0xfe, 311 0xc8, 0x61, 0xf8, 0x4e, 0xd9, 0xc6, 0x61, 0xef, 0xc9, 312 0x5d, 0xc1, 0xc6, 0x64, 0xfa, 0x42, 0xf5, 0x46, 0x39, 313 0x6e, 0xa0, 0x7a, 0x70, 0xb2, 0x20, 0xbc, 0x1e, 0xf8, 314 0xb4, 0x91, 0x1c, 0xef, 0x2f, 315 ], 316 dp = [ 317 0x4f, 0xcd, 0x85, 0x61, 0xd4, 0x55, 0x09, 0x60, 0x41, 318 0x03, 0xa7, 0x4a, 0x05, 0x08, 0x7c, 0x32, 0x26, 0xaf, 319 0x58, 0x23, 0xa8, 0xd9, 0x12, 0x59, 0x5a, 0xad, 0xb0, 320 0x25, 0xaa, 0xc4, 0x42, 0x14, 0x72, 0xc0, 0xcc, 0xa2, 321 0x7a, 0x0c, 0x56, 0x39, 0xec, 0x9c, 0xc4, 0x6b, 0xe8, 322 0x7c, 0x31, 0x81, 0x97, 0x25, 0xbd, 0x33, 0x7c, 0xa7, 323 0x68, 0x3f, 0xe5, 0xd3, 0x2d, 0x44, 0xcb, 0xa8, 0xff, 324 0xfd, 0x57, 0x2c, 0x2a, 0xfc, 0x42, 0x93, 0xbe, 0x7f, 325 0xe2, 0x36, 0xa6, 0x72, 0x8e, 0xe6, 0x23, 0x54, 0xfd, 326 0x39, 0xff, 0x63, 0xbc, 0xfa, 0xe0, 0xc5, 0x9a, 0x5e, 327 0x3a, 0x1b, 0x55, 0xff, 0x29, 0xdb, 0xdc, 0xac, 0x1f, 328 0xaf, 0xce, 0x2b, 0xde, 0x2f, 0x52, 0x14, 0xd5, 0xdf, 329 0x0e, 0xb1, 0x68, 0x01, 0xe5, 0x30, 0x62, 0xe8, 0xed, 330 0xb3, 0xcb, 0x2f, 0xcd, 0x8e, 0x57, 0xa4, 0xad, 0xce, 331 0xa8, 0xb4, 0x9d, 0xf8, 0x6a, 0x6b, 0x4d, 0x2c, 0xfd, 332 0x06, 0xe1, 0xea, 0xce, 0xb9, 0x12, 0xde, 0x15, 0x08, 333 0xfe, 0x89, 0x29, 0x75, 0x97, 0x0d, 0x88, 0x9b, 0x03, 334 0x34, 0x25, 0x64, 0x10, 0x0b, 0x88, 0x98, 0x24, 0xb0, 335 0xd9, 0x33, 0x01, 0xe1, 0x98, 0xd7, 0xaa, 0x3e, 0x4f, 336 0x4a, 0x2a, 0x20, 0x26, 0x4c, 0x36, 0x27, 0xa0, 0xe8, 337 0x88, 0x66, 0x33, 0x24, 0x9f, 0x03, 0xcf, 0xa9, 0xb6, 338 0x4b, 0x73, 0x83, 0x30, 0xaf, 0x11, 0xf6, 0x1a, 0xa4, 339 0x2b, 0xf7, 0x83, 0xdc, 0xf4, 0x39, 0x1f, 0x19, 0xaf, 340 0xb8, 0xb7, 0xcc, 0x07, 0x5b, 0x88, 0xc1, 0xb3, 0x84, 341 0x04, 0x3c, 0xd9, 0xa0, 0xb3, 0x95, 0xfb, 0xfa, 0x37, 342 0x60, 0x5b, 0xb2, 0x84, 0xf2, 0x9c, 0x6d, 0x31, 0x88, 343 0x73, 0xb3, 0xac, 0x18, 0xe4, 0x97, 0x2a, 0x67, 0xc5, 344 0xa2, 0x34, 0xb7, 0x3f, 0xdb, 0xa6, 0xa1, 0x2d, 0x8c, 345 0xfe, 0x19, 0x8c, 0xbf, 346 ], 347 dq = [ 348 0x00, 0xcb, 0x6c, 0x77, 0xae, 0xa0, 0x08, 0xd7, 0xa0, 349 0x23, 0xfc, 0xbc, 0x00, 0x61, 0xa2, 0x61, 0xb3, 0xee, 350 0x67, 0xac, 0xc7, 0xb7, 0x92, 0x94, 0xcf, 0x27, 0x7d, 351 0xfb, 0x3a, 0x02, 0x78, 0x71, 0xec, 0x4f, 0x8d, 0x9e, 352 0x9c, 0x70, 0x61, 0x39, 0x71, 0x18, 0x05, 0xfe, 0xa0, 353 0xe7, 0x7b, 0x33, 0x1f, 0xa9, 0x01, 0x77, 0x5a, 0x3a, 354 0x67, 0x27, 0xbb, 0x54, 0x9d, 0x4b, 0x79, 0xe0, 0x2a, 355 0xda, 0xa3, 0x7f, 0x87, 0x32, 0x07, 0xd7, 0xc1, 0xb8, 356 0x45, 0xd6, 0x83, 0xe9, 0xde, 0xf3, 0x5e, 0xb3, 0xcf, 357 0x08, 0xda, 0x87, 0xee, 0xa8, 0xef, 0xda, 0xf9, 0xbb, 358 0x6b, 0x21, 0x0e, 0x5f, 0xe4, 0xd4, 0x38, 0xc1, 0x09, 359 0x2e, 0xf7, 0x1a, 0x29, 0x50, 0xc6, 0x7b, 0x5d, 0x42, 360 0xdd, 0x38, 0x39, 0x6b, 0x19, 0x49, 0x37, 0xea, 0x92, 361 0x60, 0x54, 0xef, 0x64, 0xe5, 0xad, 0x46, 0x3e, 0x71, 362 0x28, 0xdb, 0x6b, 0x30, 0x60, 0xef, 0x95, 0xfe, 0xa1, 363 0x78, 0xd2, 0xff, 0xef, 0x07, 0x3b, 0xdc, 0xa1, 0x2f, 364 0x66, 0x35, 0x2c, 0xe0, 0x20, 0x46, 0x17, 0x82, 0xe7, 365 0x94, 0xe4, 0x6f, 0x68, 0xdf, 0x6e, 0x09, 0x5b, 0x77, 366 0x1f, 0x5b, 0xce, 0x51, 0x58, 0x17, 0x55, 0xcc, 0x14, 367 0x14, 0x2d, 0x6a, 0x42, 0xfd, 0x06, 0x3c, 0x74, 0xae, 368 0x0e, 0x6e, 0x44, 0xdc, 0x07, 0xd2, 0x70, 0xe4, 0x52, 369 0x5a, 0x5a, 0x0c, 0x1e, 0x6f, 0xa6, 0xb8, 0x7e, 0x36, 370 0xf3, 0x86, 0x8e, 0x4e, 0xb0, 0xe3, 0x23, 0xf8, 0x40, 371 0x38, 0x1d, 0xf7, 0x3a, 0xc5, 0x50, 0xe6, 0x3b, 0x9e, 372 0x21, 0x32, 0xb9, 0x2c, 0x10, 0x8c, 0x34, 0xc8, 0xad, 373 0x4b, 0x1d, 0xe9, 0xaf, 0x21, 0x93, 0x2c, 0x7d, 0x40, 374 0xf3, 0x5e, 0x0b, 0xa3, 0x01, 0xbf, 0x75, 0xe0, 0x71, 375 0x62, 0xe1, 0x52, 0x2f, 0x16, 0xf9, 0xcf, 0xa0, 0xe7, 376 0x66, 0x17, 0x09, 0xc5, 0x85, 377 ], 378 iq = [ 379 0x00, 0xcc, 0x1c, 0x14, 0x9c, 0x4f, 0x16, 0xa4, 0x5c, 380 0x14, 0x37, 0x53, 0xde, 0xf7, 0xf4, 0x74, 0x76, 0xc8, 381 0xb1, 0x62, 0x49, 0x42, 0xcf, 0xbf, 0x65, 0xe5, 0x8f, 382 0x4c, 0xb6, 0x7d, 0x59, 0x41, 0x87, 0x32, 0x8c, 0x9b, 383 0x9f, 0x96, 0x9e, 0xb1, 0xf0, 0x2e, 0x4b, 0xa2, 0xc2, 384 0xab, 0x01, 0x19, 0x19, 0x6c, 0x79, 0x01, 0xc8, 0x52, 385 0xff, 0xd4, 0xbd, 0xd8, 0xba, 0xeb, 0xc1, 0x70, 0xea, 386 0xfb, 0x37, 0x31, 0x79, 0x16, 0xe0, 0x78, 0x79, 0xaf, 387 0x41, 0x37, 0xaa, 0x4e, 0x2c, 0xdc, 0x1d, 0x1b, 0xdc, 388 0x44, 0x1e, 0x03, 0x2e, 0xd0, 0x17, 0x25, 0x23, 0x67, 389 0xd2, 0x7b, 0xea, 0xc2, 0x91, 0xb7, 0x9a, 0x31, 0xa5, 390 0xff, 0xbd, 0x36, 0x07, 0xae, 0xd7, 0xec, 0x05, 0xb9, 391 0x05, 0x31, 0x16, 0xc4, 0x29, 0xf9, 0x23, 0x0c, 0x6d, 392 0x2e, 0xc3, 0x0b, 0x6a, 0xc9, 0xe2, 0xab, 0x8b, 0x05, 393 0x8b, 0xb4, 0xc2, 0x4d, 0xbf, 0xa7, 0x6b, 0xa4, 0x00, 394 0x23, 0x82, 0xb4, 0xfa, 0x8d, 0xcf, 0x0d, 0x31, 0x8e, 395 0xd6, 0xbc, 0xc2, 0x15, 0xae, 0x8c, 0xa7, 0x0f, 0xd0, 396 0xf4, 0x5b, 0x87, 0x6a, 0xd0, 0x9f, 0xa5, 0xb4, 0x5c, 397 0xd7, 0xbf, 0xca, 0x40, 0x82, 0x44, 0x00, 0xf9, 0xda, 398 0x06, 0x4e, 0x8c, 0x48, 0x8f, 0x11, 0xf3, 0x64, 0x05, 399 0x55, 0x8d, 0xfb, 0x39, 0xf8, 0x91, 0x8a, 0x83, 0xd6, 400 0x73, 0x05, 0x1f, 0x4c, 0xed, 0x47, 0x96, 0xf5, 0x73, 401 0xe8, 0xf9, 0xb3, 0xeb, 0x91, 0xe4, 0xea, 0x0e, 0xb8, 402 0xd5, 0xa8, 0xf2, 0x60, 0xcc, 0x05, 0x5b, 0x1d, 0x9b, 403 0xe5, 0xe4, 0xe5, 0x36, 0x0b, 0x2b, 0xc0, 0xd2, 0x1c, 404 0x55, 0xd6, 0x68, 0xb6, 0xd8, 0x56, 0x83, 0x80, 0x22, 405 0x44, 0x34, 0x9b, 0x2b, 0x71, 0xc1, 0x4b, 0xca, 0x36, 406 0x41, 0x2a, 0x2e, 0xff, 0x23, 0x8b, 0x0a, 0x16, 0x76, 407 0x56, 0xb6, 0x8e, 0x3b, 0x69, 408 ], 409 ... 410 }, 411 d = [ 412 0x54, 0x76, 0xd8, 0x0b, 0x41, 0x77, 0xe6, 0xbf, 0x77, 0x28, 413 0x62, 0x4e, 0xf3, 0xb2, 0xe6, 0x56, 0xf6, 0x0e, 0xd2, 0x89, 414 0x0e, 0xcf, 0x4f, 0x57, 0x00, 0x9f, 0x53, 0xeb, 0x80, 0x3d, 415 0xd5, 0x95, 0xe2, 0xd7, 0x4c, 0x40, 0x63, 0xbf, 0xf8, 0x21, 416 0x68, 0x4c, 0x0b, 0x37, 0x50, 0x44, 0x30, 0x29, 0x24, 0xb5, 417 0xbc, 0x80, 0xf0, 0xdd, 0xc8, 0x09, 0x9a, 0x82, 0x0e, 0x08, 418 0xeb, 0x42, 0x16, 0x36, 0x03, 0x7b, 0x9f, 0xe8, 0x9d, 0x35, 419 0xd2, 0xba, 0x84, 0xba, 0x50, 0x52, 0xea, 0xec, 0x85, 0x1c, 420 0x5c, 0x35, 0xa8, 0x2f, 0xdb, 0x62, 0xec, 0x01, 0x6d, 0x63, 421 0x79, 0xef, 0xd5, 0xa5, 0x20, 0x85, 0xb9, 0xe2, 0x84, 0x19, 422 0xb1, 0x56, 0xcb, 0x37, 0xcb, 0x6c, 0x0f, 0x1f, 0x33, 0x85, 423 0x35, 0x30, 0x01, 0x73, 0x69, 0x4d, 0x21, 0x17, 0xeb, 0xcd, 424 0x0a, 0x90, 0x62, 0x93, 0xe3, 0xd8, 0xee, 0x1d, 0x63, 0x3b, 425 0xa5, 0x59, 0x3f, 0xad, 0x0a, 0x4a, 0xbd, 0xfe, 0x1d, 0x08, 426 0xec, 0x86, 0x50, 0x21, 0xa6, 0x27, 0x99, 0xcb, 0xea, 0xca, 427 0xee, 0xdc, 0x99, 0x28, 0x1e, 0xbc, 0x6d, 0x86, 0x13, 0x66, 428 0xcd, 0x21, 0x7d, 0x5f, 0x84, 0xf6, 0xa5, 0x4c, 0xf2, 0xbd, 429 0x7c, 0xb2, 0x0f, 0x69, 0x40, 0x6c, 0x3e, 0x13, 0xbc, 0x0a, 430 0x04, 0x1e, 0xe6, 0x6b, 0x79, 0x76, 0x68, 0xd3, 0x78, 0x48, 431 0xbb, 0x09, 0xc8, 0x73, 0xe1, 0xd2, 0x0f, 0xf7, 0xc2, 0xf4, 432 0xde, 0x86, 0x88, 0xac, 0xfd, 0xd0, 0x7d, 0xa9, 0x8c, 0xcd, 433 0x9e, 0x48, 0xf2, 0xf8, 0xa5, 0x03, 0xf0, 0x07, 0x17, 0x8e, 434 0xad, 0x7b, 0x95, 0x56, 0xe6, 0xea, 0x4f, 0x11, 0xff, 0xaa, 435 0x9d, 0x00, 0x82, 0xc3, 0xad, 0x8d, 0xd9, 0x3d, 0x2f, 0xec, 436 0xb6, 0xae, 0xe3, 0xd1, 0x05, 0x5c, 0x07, 0x30, 0x54, 0x6b, 437 0x4c, 0xa5, 0x98, 0x61, 0x3c, 0x40, 0xe3, 0x8c, 0xf3, 0x01, 438 0xc2, 0xdd, 0xdd, 0x18, 0xbd, 0x38, 0x35, 0x34, 0x87, 0xbf, 439 0x05, 0xba, 0x8e, 0x1d, 0x4b, 0x33, 0x63, 0xcc, 0x65, 0x11, 440 0xbf, 0x59, 0x48, 0x5e, 0x46, 0x82, 0x17, 0xda, 0x6b, 0xcf, 441 0x7c, 0x06, 0xca, 0x74, 0xbd, 0xa9, 0x78, 0xe0, 0xd2, 0x20, 442 0xdf, 0xcd, 0x4a, 0xa0, 0x67, 0xe6, 0x90, 0x14, 0x43, 0x20, 443 0x26, 0x47, 0x83, 0x79, 0xc0, 0xe8, 0xb7, 0x60, 0xb7, 0xa8, 444 0x96, 0x56, 0x77, 0xc4, 0x9d, 0x32, 0x52, 0xc3, 0xa2, 0x10, 445 0x69, 0x2c, 0x51, 0x81, 0xc5, 0xd2, 0xa2, 0x27, 0x61, 0xf4, 446 0x0a, 0xa7, 0x51, 0xe8, 0x44, 0xcb, 0xae, 0xbe, 0xb1, 0x10, 447 0x75, 0xaa, 0x1c, 0xae, 0x5e, 0xa8, 0x8d, 0x16, 0x6a, 0x4c, 448 0xf4, 0x26, 0x7a, 0xce, 0x61, 0x70, 0xaf, 0x86, 0x9b, 0x4c, 449 0xca, 0x26, 0x51, 0xe4, 0xcd, 0xb5, 0x7a, 0x4e, 0xe2, 0xe8, 450 0x8a, 0xbc, 0x70, 0xcc, 0x1a, 0xc6, 0x54, 0x07, 0x51, 0x14, 451 0xfd, 0x08, 0x58, 0xba, 0x46, 0xca, 0xa2, 0x2e, 0xf0, 0x4c, 452 0x0e, 0xc3, 0x5d, 0xd9, 0x53, 0x4d, 0xbe, 0x8c, 0x2f, 0x28, 453 0x38, 0xf4, 0x26, 0x84, 0x59, 0xba, 0x07, 0xbc, 0xf0, 0xaf, 454 0x74, 0xb6, 0x4b, 0xf6, 0xdc, 0xab, 0x21, 0xbb, 0xab, 0x5c, 455 0x97, 0x29, 0x48, 0x87, 0x00, 0x27, 0xf7, 0x58, 0xbb, 0x1d, 456 0xad, 0x66, 0x50, 0x77, 0x33, 0xfc, 0xb2, 0xc2, 0x8f, 0x4c, 457 0x3b, 0x4f, 0xab, 0xb4, 0x8f, 0x87, 0x00, 0x3d, 0x55, 0xf3, 458 0x23, 0xce, 0x22, 0xde, 0x74, 0x29, 0x3e, 0xf0, 0xe8, 0x04, 459 0x14, 0xf7, 0x36, 0xb1, 0x1b, 0xcf, 0xbc, 0x9b, 0x5d, 0x3d, 460 0x75, 0xfc, 0x15, 0xcb, 0x3d, 0x2d, 0x8f, 0xaf, 0x1e, 0x12, 461 0xe8, 0xb4, 0x94, 0xac, 0x64, 0x1b, 0x7c, 0x54, 0x1c, 0xeb, 462 0x47, 0x40, 0xe3, 0x2b, 0x48, 0x3c, 0xd8, 0x10, 0xf3, 0x93, 463 0xdb, 0x75, 464 ], 465 }; 466 467 @test fn initd() void = { 468 let params = privparams { 469 p = enc4096.priv.p, 470 q = enc4096.priv.q, 471 iq = enc4096.priv.iq, 472 ... 473 }; 474 475 let priv: [PRIVKEYSIZE]u8 = [0...]; 476 privkey_initd(priv, params, enc4096.d, enc4096.pub.n)!; 477 478 const newparams = privkey_params(priv); 479 480 assert(enc4096.priv.nbitlen == newparams.nbitlen); 481 assert(enc4096.priv.nbitlen == privkey_nbitlen(priv)); 482 assert(bytes::equal(ltrim(enc4096.priv.dp), ltrim(newparams.dp))); 483 assert(bytes::equal(ltrim(enc4096.priv.dq), ltrim(newparams.dq))); 484 };