]> git.saurik.com Git - apple/security.git/blob - OSX/libsecurity_apple_csp/open_ssl/bn/bn_prime.h
Security-57336.1.9.tar.gz
[apple/security.git] / OSX / libsecurity_apple_csp / open_ssl / bn / bn_prime.h
1 /*
2 * Copyright (c) 2000-2001,2011,2014 Apple Inc. All Rights Reserved.
3 *
4 * The contents of this file constitute Original Code as defined in and are
5 * subject to the Apple Public Source License Version 1.2 (the 'License').
6 * You may not use this file except in compliance with the License. Please obtain
7 * a copy of the License at http://www.apple.com/publicsource and read it before
8 * using this file.
9 *
10 * This Original Code and all software distributed under the License are
11 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS
12 * OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, INCLUDING WITHOUT
13 * LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
14 * PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. Please see the License for the
15 * specific language governing rights and limitations under the License.
16 */
17
18
19 /* Auto generated by bn_prime.pl */
20 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
21 * All rights reserved.
22 *
23 * This package is an SSL implementation written
24 * by Eric Young (eay@cryptsoft.com).
25 * The implementation was written so as to conform with Netscapes SSL.
26 *
27 * This library is free for commercial and non-commercial use as long as
28 * the following conditions are aheared to. The following conditions
29 * apply to all code found in this distribution, be it the RC4, RSA,
30 * lhash, DES, etc., code; not just the SSL code. The SSL documentation
31 * included with this distribution is covered by the same copyright terms
32 * except that the holder is Tim Hudson (tjh@cryptsoft.com).
33 *
34 * Copyright remains Eric Young's, and as such any Copyright notices in
35 * the code are not to be removed.
36 * If this package is used in a product, Eric Young should be given attribution
37 * as the author of the parts of the library used.
38 * This can be in the form of a textual message at program startup or
39 * in documentation (online or textual) provided with the package.
40 *
41 * Redistribution and use in source and binary forms, with or without
42 * modification, are permitted provided that the following conditions
43 * are met:
44 * 1. Redistributions of source code must retain the copyright
45 * notice, this list of conditions and the following disclaimer.
46 * 2. Redistributions in binary form must reproduce the above copyright
47 * notice, this list of conditions and the following disclaimer in the
48 * documentation and/or other materials provided with the distribution.
49 * 3. All advertising materials mentioning features or use of this software
50 * must display the following acknowledgement:
51 * "This product includes cryptographic software written by
52 * Eric Young (eay@cryptsoft.com)"
53 * The word 'cryptographic' can be left out if the rouines from the library
54 * being used are not cryptographic related :-).
55 * 4. If you include any Windows specific code (or a derivative thereof) from
56 * the apps directory (application code) you must include an acknowledgement:
57 * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
58 *
59 * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
60 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
61 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
62 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
63 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
64 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
65 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
66 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
67 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
68 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
69 * SUCH DAMAGE.
70 *
71 * The licence and distribution terms for any publically available version or
72 * derivative of this code cannot be changed. i.e. this code cannot simply be
73 * copied and put under another distribution licence
74 * [including the GNU Public Licence.]
75 */
76
77 #ifndef EIGHT_BIT
78 #define NUMPRIMES 2048
79 #else
80 #define NUMPRIMES 54
81 #endif
82 static const unsigned int primes[NUMPRIMES]=
83 {
84 2, 3, 5, 7, 11, 13, 17, 19,
85 23, 29, 31, 37, 41, 43, 47, 53,
86 59, 61, 67, 71, 73, 79, 83, 89,
87 97, 101, 103, 107, 109, 113, 127, 131,
88 137, 139, 149, 151, 157, 163, 167, 173,
89 179, 181, 191, 193, 197, 199, 211, 223,
90 227, 229, 233, 239, 241, 251,
91 #ifndef EIGHT_BIT
92 257, 263,
93 269, 271, 277, 281, 283, 293, 307, 311,
94 313, 317, 331, 337, 347, 349, 353, 359,
95 367, 373, 379, 383, 389, 397, 401, 409,
96 419, 421, 431, 433, 439, 443, 449, 457,
97 461, 463, 467, 479, 487, 491, 499, 503,
98 509, 521, 523, 541, 547, 557, 563, 569,
99 571, 577, 587, 593, 599, 601, 607, 613,
100 617, 619, 631, 641, 643, 647, 653, 659,
101 661, 673, 677, 683, 691, 701, 709, 719,
102 727, 733, 739, 743, 751, 757, 761, 769,
103 773, 787, 797, 809, 811, 821, 823, 827,
104 829, 839, 853, 857, 859, 863, 877, 881,
105 883, 887, 907, 911, 919, 929, 937, 941,
106 947, 953, 967, 971, 977, 983, 991, 997,
107 1009,1013,1019,1021,1031,1033,1039,1049,
108 1051,1061,1063,1069,1087,1091,1093,1097,
109 1103,1109,1117,1123,1129,1151,1153,1163,
110 1171,1181,1187,1193,1201,1213,1217,1223,
111 1229,1231,1237,1249,1259,1277,1279,1283,
112 1289,1291,1297,1301,1303,1307,1319,1321,
113 1327,1361,1367,1373,1381,1399,1409,1423,
114 1427,1429,1433,1439,1447,1451,1453,1459,
115 1471,1481,1483,1487,1489,1493,1499,1511,
116 1523,1531,1543,1549,1553,1559,1567,1571,
117 1579,1583,1597,1601,1607,1609,1613,1619,
118 1621,1627,1637,1657,1663,1667,1669,1693,
119 1697,1699,1709,1721,1723,1733,1741,1747,
120 1753,1759,1777,1783,1787,1789,1801,1811,
121 1823,1831,1847,1861,1867,1871,1873,1877,
122 1879,1889,1901,1907,1913,1931,1933,1949,
123 1951,1973,1979,1987,1993,1997,1999,2003,
124 2011,2017,2027,2029,2039,2053,2063,2069,
125 2081,2083,2087,2089,2099,2111,2113,2129,
126 2131,2137,2141,2143,2153,2161,2179,2203,
127 2207,2213,2221,2237,2239,2243,2251,2267,
128 2269,2273,2281,2287,2293,2297,2309,2311,
129 2333,2339,2341,2347,2351,2357,2371,2377,
130 2381,2383,2389,2393,2399,2411,2417,2423,
131 2437,2441,2447,2459,2467,2473,2477,2503,
132 2521,2531,2539,2543,2549,2551,2557,2579,
133 2591,2593,2609,2617,2621,2633,2647,2657,
134 2659,2663,2671,2677,2683,2687,2689,2693,
135 2699,2707,2711,2713,2719,2729,2731,2741,
136 2749,2753,2767,2777,2789,2791,2797,2801,
137 2803,2819,2833,2837,2843,2851,2857,2861,
138 2879,2887,2897,2903,2909,2917,2927,2939,
139 2953,2957,2963,2969,2971,2999,3001,3011,
140 3019,3023,3037,3041,3049,3061,3067,3079,
141 3083,3089,3109,3119,3121,3137,3163,3167,
142 3169,3181,3187,3191,3203,3209,3217,3221,
143 3229,3251,3253,3257,3259,3271,3299,3301,
144 3307,3313,3319,3323,3329,3331,3343,3347,
145 3359,3361,3371,3373,3389,3391,3407,3413,
146 3433,3449,3457,3461,3463,3467,3469,3491,
147 3499,3511,3517,3527,3529,3533,3539,3541,
148 3547,3557,3559,3571,3581,3583,3593,3607,
149 3613,3617,3623,3631,3637,3643,3659,3671,
150 3673,3677,3691,3697,3701,3709,3719,3727,
151 3733,3739,3761,3767,3769,3779,3793,3797,
152 3803,3821,3823,3833,3847,3851,3853,3863,
153 3877,3881,3889,3907,3911,3917,3919,3923,
154 3929,3931,3943,3947,3967,3989,4001,4003,
155 4007,4013,4019,4021,4027,4049,4051,4057,
156 4073,4079,4091,4093,4099,4111,4127,4129,
157 4133,4139,4153,4157,4159,4177,4201,4211,
158 4217,4219,4229,4231,4241,4243,4253,4259,
159 4261,4271,4273,4283,4289,4297,4327,4337,
160 4339,4349,4357,4363,4373,4391,4397,4409,
161 4421,4423,4441,4447,4451,4457,4463,4481,
162 4483,4493,4507,4513,4517,4519,4523,4547,
163 4549,4561,4567,4583,4591,4597,4603,4621,
164 4637,4639,4643,4649,4651,4657,4663,4673,
165 4679,4691,4703,4721,4723,4729,4733,4751,
166 4759,4783,4787,4789,4793,4799,4801,4813,
167 4817,4831,4861,4871,4877,4889,4903,4909,
168 4919,4931,4933,4937,4943,4951,4957,4967,
169 4969,4973,4987,4993,4999,5003,5009,5011,
170 5021,5023,5039,5051,5059,5077,5081,5087,
171 5099,5101,5107,5113,5119,5147,5153,5167,
172 5171,5179,5189,5197,5209,5227,5231,5233,
173 5237,5261,5273,5279,5281,5297,5303,5309,
174 5323,5333,5347,5351,5381,5387,5393,5399,
175 5407,5413,5417,5419,5431,5437,5441,5443,
176 5449,5471,5477,5479,5483,5501,5503,5507,
177 5519,5521,5527,5531,5557,5563,5569,5573,
178 5581,5591,5623,5639,5641,5647,5651,5653,
179 5657,5659,5669,5683,5689,5693,5701,5711,
180 5717,5737,5741,5743,5749,5779,5783,5791,
181 5801,5807,5813,5821,5827,5839,5843,5849,
182 5851,5857,5861,5867,5869,5879,5881,5897,
183 5903,5923,5927,5939,5953,5981,5987,6007,
184 6011,6029,6037,6043,6047,6053,6067,6073,
185 6079,6089,6091,6101,6113,6121,6131,6133,
186 6143,6151,6163,6173,6197,6199,6203,6211,
187 6217,6221,6229,6247,6257,6263,6269,6271,
188 6277,6287,6299,6301,6311,6317,6323,6329,
189 6337,6343,6353,6359,6361,6367,6373,6379,
190 6389,6397,6421,6427,6449,6451,6469,6473,
191 6481,6491,6521,6529,6547,6551,6553,6563,
192 6569,6571,6577,6581,6599,6607,6619,6637,
193 6653,6659,6661,6673,6679,6689,6691,6701,
194 6703,6709,6719,6733,6737,6761,6763,6779,
195 6781,6791,6793,6803,6823,6827,6829,6833,
196 6841,6857,6863,6869,6871,6883,6899,6907,
197 6911,6917,6947,6949,6959,6961,6967,6971,
198 6977,6983,6991,6997,7001,7013,7019,7027,
199 7039,7043,7057,7069,7079,7103,7109,7121,
200 7127,7129,7151,7159,7177,7187,7193,7207,
201 7211,7213,7219,7229,7237,7243,7247,7253,
202 7283,7297,7307,7309,7321,7331,7333,7349,
203 7351,7369,7393,7411,7417,7433,7451,7457,
204 7459,7477,7481,7487,7489,7499,7507,7517,
205 7523,7529,7537,7541,7547,7549,7559,7561,
206 7573,7577,7583,7589,7591,7603,7607,7621,
207 7639,7643,7649,7669,7673,7681,7687,7691,
208 7699,7703,7717,7723,7727,7741,7753,7757,
209 7759,7789,7793,7817,7823,7829,7841,7853,
210 7867,7873,7877,7879,7883,7901,7907,7919,
211 7927,7933,7937,7949,7951,7963,7993,8009,
212 8011,8017,8039,8053,8059,8069,8081,8087,
213 8089,8093,8101,8111,8117,8123,8147,8161,
214 8167,8171,8179,8191,8209,8219,8221,8231,
215 8233,8237,8243,8263,8269,8273,8287,8291,
216 8293,8297,8311,8317,8329,8353,8363,8369,
217 8377,8387,8389,8419,8423,8429,8431,8443,
218 8447,8461,8467,8501,8513,8521,8527,8537,
219 8539,8543,8563,8573,8581,8597,8599,8609,
220 8623,8627,8629,8641,8647,8663,8669,8677,
221 8681,8689,8693,8699,8707,8713,8719,8731,
222 8737,8741,8747,8753,8761,8779,8783,8803,
223 8807,8819,8821,8831,8837,8839,8849,8861,
224 8863,8867,8887,8893,8923,8929,8933,8941,
225 8951,8963,8969,8971,8999,9001,9007,9011,
226 9013,9029,9041,9043,9049,9059,9067,9091,
227 9103,9109,9127,9133,9137,9151,9157,9161,
228 9173,9181,9187,9199,9203,9209,9221,9227,
229 9239,9241,9257,9277,9281,9283,9293,9311,
230 9319,9323,9337,9341,9343,9349,9371,9377,
231 9391,9397,9403,9413,9419,9421,9431,9433,
232 9437,9439,9461,9463,9467,9473,9479,9491,
233 9497,9511,9521,9533,9539,9547,9551,9587,
234 9601,9613,9619,9623,9629,9631,9643,9649,
235 9661,9677,9679,9689,9697,9719,9721,9733,
236 9739,9743,9749,9767,9769,9781,9787,9791,
237 9803,9811,9817,9829,9833,9839,9851,9857,
238 9859,9871,9883,9887,9901,9907,9923,9929,
239 9931,9941,9949,9967,9973,10007,10009,10037,
240 10039,10061,10067,10069,10079,10091,10093,10099,
241 10103,10111,10133,10139,10141,10151,10159,10163,
242 10169,10177,10181,10193,10211,10223,10243,10247,
243 10253,10259,10267,10271,10273,10289,10301,10303,
244 10313,10321,10331,10333,10337,10343,10357,10369,
245 10391,10399,10427,10429,10433,10453,10457,10459,
246 10463,10477,10487,10499,10501,10513,10529,10531,
247 10559,10567,10589,10597,10601,10607,10613,10627,
248 10631,10639,10651,10657,10663,10667,10687,10691,
249 10709,10711,10723,10729,10733,10739,10753,10771,
250 10781,10789,10799,10831,10837,10847,10853,10859,
251 10861,10867,10883,10889,10891,10903,10909,10937,
252 10939,10949,10957,10973,10979,10987,10993,11003,
253 11027,11047,11057,11059,11069,11071,11083,11087,
254 11093,11113,11117,11119,11131,11149,11159,11161,
255 11171,11173,11177,11197,11213,11239,11243,11251,
256 11257,11261,11273,11279,11287,11299,11311,11317,
257 11321,11329,11351,11353,11369,11383,11393,11399,
258 11411,11423,11437,11443,11447,11467,11471,11483,
259 11489,11491,11497,11503,11519,11527,11549,11551,
260 11579,11587,11593,11597,11617,11621,11633,11657,
261 11677,11681,11689,11699,11701,11717,11719,11731,
262 11743,11777,11779,11783,11789,11801,11807,11813,
263 11821,11827,11831,11833,11839,11863,11867,11887,
264 11897,11903,11909,11923,11927,11933,11939,11941,
265 11953,11959,11969,11971,11981,11987,12007,12011,
266 12037,12041,12043,12049,12071,12073,12097,12101,
267 12107,12109,12113,12119,12143,12149,12157,12161,
268 12163,12197,12203,12211,12227,12239,12241,12251,
269 12253,12263,12269,12277,12281,12289,12301,12323,
270 12329,12343,12347,12373,12377,12379,12391,12401,
271 12409,12413,12421,12433,12437,12451,12457,12473,
272 12479,12487,12491,12497,12503,12511,12517,12527,
273 12539,12541,12547,12553,12569,12577,12583,12589,
274 12601,12611,12613,12619,12637,12641,12647,12653,
275 12659,12671,12689,12697,12703,12713,12721,12739,
276 12743,12757,12763,12781,12791,12799,12809,12821,
277 12823,12829,12841,12853,12889,12893,12899,12907,
278 12911,12917,12919,12923,12941,12953,12959,12967,
279 12973,12979,12983,13001,13003,13007,13009,13033,
280 13037,13043,13049,13063,13093,13099,13103,13109,
281 13121,13127,13147,13151,13159,13163,13171,13177,
282 13183,13187,13217,13219,13229,13241,13249,13259,
283 13267,13291,13297,13309,13313,13327,13331,13337,
284 13339,13367,13381,13397,13399,13411,13417,13421,
285 13441,13451,13457,13463,13469,13477,13487,13499,
286 13513,13523,13537,13553,13567,13577,13591,13597,
287 13613,13619,13627,13633,13649,13669,13679,13681,
288 13687,13691,13693,13697,13709,13711,13721,13723,
289 13729,13751,13757,13759,13763,13781,13789,13799,
290 13807,13829,13831,13841,13859,13873,13877,13879,
291 13883,13901,13903,13907,13913,13921,13931,13933,
292 13963,13967,13997,13999,14009,14011,14029,14033,
293 14051,14057,14071,14081,14083,14087,14107,14143,
294 14149,14153,14159,14173,14177,14197,14207,14221,
295 14243,14249,14251,14281,14293,14303,14321,14323,
296 14327,14341,14347,14369,14387,14389,14401,14407,
297 14411,14419,14423,14431,14437,14447,14449,14461,
298 14479,14489,14503,14519,14533,14537,14543,14549,
299 14551,14557,14561,14563,14591,14593,14621,14627,
300 14629,14633,14639,14653,14657,14669,14683,14699,
301 14713,14717,14723,14731,14737,14741,14747,14753,
302 14759,14767,14771,14779,14783,14797,14813,14821,
303 14827,14831,14843,14851,14867,14869,14879,14887,
304 14891,14897,14923,14929,14939,14947,14951,14957,
305 14969,14983,15013,15017,15031,15053,15061,15073,
306 15077,15083,15091,15101,15107,15121,15131,15137,
307 15139,15149,15161,15173,15187,15193,15199,15217,
308 15227,15233,15241,15259,15263,15269,15271,15277,
309 15287,15289,15299,15307,15313,15319,15329,15331,
310 15349,15359,15361,15373,15377,15383,15391,15401,
311 15413,15427,15439,15443,15451,15461,15467,15473,
312 15493,15497,15511,15527,15541,15551,15559,15569,
313 15581,15583,15601,15607,15619,15629,15641,15643,
314 15647,15649,15661,15667,15671,15679,15683,15727,
315 15731,15733,15737,15739,15749,15761,15767,15773,
316 15787,15791,15797,15803,15809,15817,15823,15859,
317 15877,15881,15887,15889,15901,15907,15913,15919,
318 15923,15937,15959,15971,15973,15991,16001,16007,
319 16033,16057,16061,16063,16067,16069,16073,16087,
320 16091,16097,16103,16111,16127,16139,16141,16183,
321 16187,16189,16193,16217,16223,16229,16231,16249,
322 16253,16267,16273,16301,16319,16333,16339,16349,
323 16361,16363,16369,16381,16411,16417,16421,16427,
324 16433,16447,16451,16453,16477,16481,16487,16493,
325 16519,16529,16547,16553,16561,16567,16573,16603,
326 16607,16619,16631,16633,16649,16651,16657,16661,
327 16673,16691,16693,16699,16703,16729,16741,16747,
328 16759,16763,16787,16811,16823,16829,16831,16843,
329 16871,16879,16883,16889,16901,16903,16921,16927,
330 16931,16937,16943,16963,16979,16981,16987,16993,
331 17011,17021,17027,17029,17033,17041,17047,17053,
332 17077,17093,17099,17107,17117,17123,17137,17159,
333 17167,17183,17189,17191,17203,17207,17209,17231,
334 17239,17257,17291,17293,17299,17317,17321,17327,
335 17333,17341,17351,17359,17377,17383,17387,17389,
336 17393,17401,17417,17419,17431,17443,17449,17467,
337 17471,17477,17483,17489,17491,17497,17509,17519,
338 17539,17551,17569,17573,17579,17581,17597,17599,
339 17609,17623,17627,17657,17659,17669,17681,17683,
340 17707,17713,17729,17737,17747,17749,17761,17783,
341 17789,17791,17807,17827,17837,17839,17851,17863,
342 #endif
343 };