summaryrefslogtreecommitdiffstats
path: root/CryptoPP/dsa.cpp
diff options
context:
space:
mode:
authormadmaxoft <github@xoft.cz>2013-08-15 09:03:58 +0200
committermadmaxoft <github@xoft.cz>2013-08-15 09:03:58 +0200
commit0297cf548558a20e36acac3057728ad9a9aac234 (patch)
tree626d2e3af538ec6c5dd940a948535b9b4e867c46 /CryptoPP/dsa.cpp
parentMerge pull request #91 from tigerw/master (diff)
downloadcuberite-0297cf548558a20e36acac3057728ad9a9aac234.tar
cuberite-0297cf548558a20e36acac3057728ad9a9aac234.tar.gz
cuberite-0297cf548558a20e36acac3057728ad9a9aac234.tar.bz2
cuberite-0297cf548558a20e36acac3057728ad9a9aac234.tar.lz
cuberite-0297cf548558a20e36acac3057728ad9a9aac234.tar.xz
cuberite-0297cf548558a20e36acac3057728ad9a9aac234.tar.zst
cuberite-0297cf548558a20e36acac3057728ad9a9aac234.zip
Diffstat (limited to '')
-rw-r--r--CryptoPP/dsa.cpp56
1 files changed, 0 insertions, 56 deletions
diff --git a/CryptoPP/dsa.cpp b/CryptoPP/dsa.cpp
index ac9e1f8c6..5aace4857 100644
--- a/CryptoPP/dsa.cpp
+++ b/CryptoPP/dsa.cpp
@@ -58,62 +58,6 @@ size_t DSAConvertSignatureFormat(byte *buffer, size_t bufferSize, DSASignatureFo
return (size_t)sink.TotalPutLength();
}
-bool DSA::GeneratePrimes(const byte *seedIn, unsigned int g, int &counter,
- Integer &p, unsigned int L, Integer &q, bool useInputCounterValue)
-{
- assert(g%8 == 0);
-
- SHA sha;
- SecByteBlock seed(seedIn, g/8);
- SecByteBlock U(SHA::DIGESTSIZE);
- SecByteBlock temp(SHA::DIGESTSIZE);
- SecByteBlock W(((L-1)/160+1) * SHA::DIGESTSIZE);
- const int n = (L-1) / 160;
- const int b = (L-1) % 160;
- Integer X;
-
- sha.CalculateDigest(U, seed, g/8);
-
- for (int i=g/8-1, carry=true; i>=0 && carry; i--)
- carry=!++seed[i];
-
- sha.CalculateDigest(temp, seed, g/8);
- xorbuf(U, temp, SHA::DIGESTSIZE);
-
- U[0] |= 0x80;
- U[SHA::DIGESTSIZE-1] |= 1;
- q.Decode(U, SHA::DIGESTSIZE);
-
- if (!IsPrime(q))
- return false;
-
- int counterEnd = useInputCounterValue ? counter+1 : 4096;
-
- for (int c = 0; c < counterEnd; c++)
- {
- for (int k=0; k<=n; k++)
- {
- for (int i=g/8-1, carry=true; i>=0 && carry; i--)
- carry=!++seed[i];
- if (!useInputCounterValue || c == counter)
- sha.CalculateDigest(W+(n-k)*SHA::DIGESTSIZE, seed, g/8);
- }
- if (!useInputCounterValue || c == counter)
- {
- W[SHA::DIGESTSIZE - 1 - b/8] |= 0x80;
- X.Decode(W + SHA::DIGESTSIZE - 1 - b/8, L/8);
- p = X-((X % (2*q))-1);
-
- if (p.GetBit(L-1) && IsPrime(p))
- {
- counter = c;
- return true;
- }
- }
- }
- return false;
-}
-
NAMESPACE_END
#endif