7db11eebd7970c2c1efddaa831f6d3e8b9ea2514
[mono.git] / mcs / class / Mono.Security / Mono.Math.Prime / ConfidenceFactor.cs
1 //
2 // Mono.Math.Prime.ConfidenceFactor.cs - Confidence factor for prime generation
3 //
4 // Authors:
5 //      Ben Maurer
6 //
7 // Copyright (c) 2003 Ben Maurer. All rights reserved
8 //
9
10 using System;
11
12 namespace Mono.Math.Prime {
13         /// <summary>
14         /// A factor of confidence.
15         /// </summary>
16 #if INSIDE_CORLIB
17         internal
18 #else
19         public
20 #endif
21         enum ConfidenceFactor {
22                 /// <summary>
23                 /// Only suitable for development use, probability of failure may be greater than 1/2^20.
24                 /// </summary>
25                 ExtraLow,
26                 /// <summary>
27                 /// Suitable only for transactions which do not require forward secrecy.  Probability of failure about 1/2^40
28                 /// </summary>
29                 Low,
30                 /// <summary>
31                 /// Designed for production use. Probability of failure about 1/2^80.
32                 /// </summary>
33                 Medium,
34                 /// <summary>
35                 /// Suitable for sensitive data. Probability of failure about 1/2^160.
36                 /// </summary>
37                 High,
38                 /// <summary>
39                 /// Use only if you have lots of time! Probability of failure about 1/2^320.
40                 /// </summary>
41                 ExtraHigh,
42                 /// <summary>
43                 /// Only use methods which generate provable primes. Not yet implemented.
44                 /// </summary>
45                 Provable
46         }
47 }