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