Sorry for the late reply. GetSubgroupSize() is now GetSubgroupOrder(). GetPublicResidue() is GetPublicElement() but it's only available on public keys, not group parameters. From Signer, do something like:
DSA::Verifier(Signer).GetKey().GetPublicElement() On Tue, Jan 21, 2003 at 01:41:45PM +0100, Richard Peters wrote: > Hello, > > I tried compiling the CryptoPP library from CVS under the new Microsoft > Everett beta compiler. I had to modify a few things to make it work. > Eventually, cryptest -v said all tests passed. Attached is a diff file > with the differences. > > I wanted to use the new CryptoPP version in my project. My project > previously used version 4.2 of CryptoPP. I can't find a solution to > every problem I find. > Of these four lines, the second and fourth line don't work because > GetSubgroupSize() and GetPublicResidue() aren't available. What are the > replacement functions? > Blob.PutMPInt(Signer.GetKey().GetGroupParameters().GetModulus()); > > Blob.PutMPInt(Signer.GetKey().GetGroupParameters().GetSubgroupSize()); > Blob.PutMPInt(Signer.GetKey().GetGroupParameters().GetGenerator()); > > Blob.PutMPInt(Signer.GetKey().GetGroupParameters().GetPublicResidue()); > > Best regards, > > Richard Peters > ? adhoc.cpp > ? cryptest.vcproj > ? cryptlib.vcproj > Index: config.h > =================================================================== > RCS file: /cvsroot/cryptopp/c5/config.h,v > retrieving revision 1.2 > diff -r1.2 config.h > 174c174 > < #ifdef _MSC_VER > --- > > #if defined(_MSC_VER) && (_MSC_VER < 1310) > Index: eccrypto.cpp > =================================================================== > RCS file: /cvsroot/cryptopp/c5/eccrypto.cpp,v > retrieving revision 1.1.1.1 > diff -r1.1.1.1 eccrypto.cpp > 545c545 > < DL_GroupParameters_EC<EC>::Element > DL_GroupParameters_EC<EC>::MultiplyElements(const Element &a, const Element &b) const > --- > > typename DL_GroupParameters_EC<EC>::Element > > DL_GroupParameters_EC<EC>::MultiplyElements(const Element &a, const Element &b) > > const > 551c551 > < DL_GroupParameters_EC<EC>::Element > DL_GroupParameters_EC<EC>::CascadeExponentiate(const Element &element1, const > Integer &exponent1, const Element &element2, const Integer &exponent2) const > --- > > typename DL_GroupParameters_EC<EC>::Element > > DL_GroupParameters_EC<EC>::CascadeExponentiate(const Element &element1, const > > Integer &exponent1, const Element &element2, const Integer &exponent2) const > Index: ida.cpp > =================================================================== > RCS file: /cvsroot/cryptopp/c5/ida.cpp,v > retrieving revision 1.1.1.1 > diff -r1.1.1.1 ida.cpp > 401c401 > < #if defined(_MSC_VER) && !defined(__MWERKS__) > --- > > #if defined(_MSC_VER) && !defined(__MWERKS__) && (_MSC_VER < 1310) > Index: polynomi.cpp > =================================================================== > RCS file: /cvsroot/cryptopp/c5/polynomi.cpp,v > retrieving revision 1.1.1.1 > diff -r1.1.1.1 polynomi.cpp > 476c476 > < RingOfPolynomialsOver<T>::Element RingOfPolynomialsOver<T>::Interpolate(const > CoefficientType x[], const CoefficientType y[], unsigned int n) const > --- > > typename RingOfPolynomialsOver<T>::Element > > RingOfPolynomialsOver<T>::Interpolate(const CoefficientType x[], const > > CoefficientType y[], unsigned int n) const > Index: polynomi.h > =================================================================== > RCS file: /cvsroot/cryptopp/c5/polynomi.h,v > retrieving revision 1.1.1.1 > diff -r1.1.1.1 polynomi.h > 307,308c307,308 > < typedef Element::CoefficientType CoefficientType; > < typedef Element::RandomizationParameter RandomizationParameter; > --- > > typedef typename Element::CoefficientType CoefficientType; > > typedef typename Element::RandomizationParameter RandomizationParameter; > Index: pubkey.h > =================================================================== > RCS file: /cvsroot/cryptopp/c5/pubkey.h,v > retrieving revision 1.1.1.1 > diff -r1.1.1.1 pubkey.h > 39a40 > > #include "asn.h" > Index: zdeflate.cpp > =================================================================== > RCS file: /cvsroot/cryptopp/c5/zdeflate.cpp,v > retrieving revision 1.1.1.1 > diff -r1.1.1.1 zdeflate.cpp > 616c616 > < #if defined(_MSC_VER) && !defined(__MWERKS__) > --- > > #if defined(_MSC_VER) && !defined(__MWERKS__) && (_MSC_VER < 1310) > > I'm not sure about this one, because I kinda hacked my compiler together > (I used the beta everett compiler, together with the platform sdk from 7.0, > stlport 5.0 beta and a few of the normal headers of 7.0) > > Index: integer.h > =================================================================== > RCS file: /cvsroot/cryptopp/c5/integer.h,v > retrieving revision 1.1.1.1 > diff -r1.1.1.1 integer.h > 19c19 > < # define SSE2_INTRINSICS_AVAILABLE > --- > > //# define SSE2_INTRINSICS_AVAILABLE
