public class SQRTMOD
extends java.lang.Object
Diese Klasse implementiert den SQRTMOD - Algorithmus. Mit diesem Algorithmus können die Wurzeln
aus einem quadratischen Rest eines Produktes zweier Primzahlen p*q gezogen werden.
Verwendung:
Modifier and Type | Field and Description |
---|---|
static java.util.ResourceBundle |
messages |
Constructor and Description |
---|
SQRTMOD(java.math.BigInteger primP,
java.math.BigInteger primQ,
java.math.BigInteger qrA)
Instanziiert die SQRTMOD-Klasse mit allen erforderlichen Parametern.
|
Modifier and Type | Method and Description |
---|---|
void |
executeSQRTMOD()
Diese Methode berechnet das Ergebnis des SQRTMOD unter Verwendung der gesetzten Werte.
|
java.math.BigInteger |
getA()
Gibt den aktuelle Wert des Parameters A zurück.
|
java.math.BigInteger[] |
getErgebnis()
Gibt die Lösungen zurück.
|
java.math.BigInteger |
getM()
Gibt den aktuelle Wert des Modulos (P*Q) zurück.
|
java.math.BigInteger |
getP()
Gibt den aktuelle Wert des Parameters P zurück.
|
java.math.BigInteger |
getQ()
Gibt den aktuelle Wert des Parameters Q zurück.
|
void |
setParams(java.math.BigInteger primP,
java.math.BigInteger primQ,
java.math.BigInteger qrA)
Initialisiertst die SQRTMOD-Klasse mit allen erforderlichen Parametern.
|
public SQRTMOD(java.math.BigInteger primP, java.math.BigInteger primQ, java.math.BigInteger qrA) throws java.lang.Exception
primP
- Primzahl p = 3 mod 4primQ
- Primzahl q = 3 mod 4qrA
- quadratischer Rest a (von p*q)java.lang.Exception
- wenn p oder q keine Primzahl ist, executeSQRTMOD()
public void setParams(java.math.BigInteger primP, java.math.BigInteger primQ, java.math.BigInteger qrA) throws java.lang.Exception
primP
- Primzahl p = 3 mod 4primQ
- Primzahl q = 3 mod 4qrA
- quadratischer Rest a (von p*q)java.lang.Exception
- wenn p oder q keine Primzahl ist, executeSQRTMOD()
public java.math.BigInteger getP()
setParams(java.math.BigInteger, java.math.BigInteger, java.math.BigInteger)
public java.math.BigInteger getQ()
setParams(java.math.BigInteger, java.math.BigInteger, java.math.BigInteger)
public java.math.BigInteger getA()
setParams(java.math.BigInteger, java.math.BigInteger, java.math.BigInteger)
public java.math.BigInteger getM()
setParams(java.math.BigInteger, java.math.BigInteger, java.math.BigInteger)
public java.math.BigInteger[] getErgebnis()
executeSQRTMOD()
public void executeSQRTMOD()
BigInteger
,
CRA
,
getErgebnis()