Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   Related Pages  

ThresholdRSA.h

00001 /*
00002  * Copyright 2003 Michael A. Marsh, Cornell University. All rights reserved.
00003  * This software is released under the modified BSD license.
00004  * See the file LICENSE in the top-level directory for details.
00005  */
00006 //
00007 // $Id: ThresholdRSA.h,v 1.3 2004/05/19 15:57:00 mmarsh Exp $
00008 //
00009 // $Log: ThresholdRSA.h,v $
00010 // Revision 1.3  2004/05/19 15:57:00  mmarsh
00011 // *** empty log message ***
00012 //
00013 // Revision 1.2  2003/11/04 22:31:51  mmarsh
00014 // *** empty log message ***
00015 //
00016 //
00017 
00018 #ifndef __CODEX_THRESHOLDCRYPTO_THRESHOLDRSA_H__
00019 #define __CODEX_THRESHOLDCRYPTO_THRESHOLDRSA_H__
00020 
00021 #include "CODEX_VSS/CombinatoricFeldman.h"
00022 #include "CODEX_VSS/ModExpFunctional.h"
00023 #include "CODEX_Ciphers/RSA.h"
00024 #include "CODEX_VSS/Range.h"
00025 
00026 namespace CODEX_ThresholdCrypto
00027 {
00032    template< class _ShareType >
00033    class ThresholdRSACrypto;
00034 
00040    class ThresholdRSARange : public CODEX_VSS::Range
00041    {
00042       public :
00044          ThresholdRSARange( const BIGNUM * modulus,
00045                             unsigned int n );
00046 
00048          virtual ~ThresholdRSARange();
00049 
00050          const BIGNUM * min() const { return m_min; }
00051          const BIGNUM * max() const { return m_max; }
00052       private :
00053          BIGNUM *  m_min;
00054          BIGNUM *  m_max;
00055    };
00056 
00063    class ThresholdRSASubRange : public ThresholdRSARange
00064    {
00065       public :
00067          ThresholdRSASubRange( const BIGNUM * modulus );
00068 
00070          virtual ~ThresholdRSASubRange();
00071    };
00072 
00073 }
00074 
00075 #endif /* __CODEX_THRESHOLDCRYPTO_THRESHOLDRSA_H__ */

Generated on Wed Jun 2 16:32:56 2004 for COrnell Data EXchange (CODEX) by doxygen1.2.18