public class GMR
extends java.lang.Object
Constructor and Description |
---|
GMR() |
Modifier and Type | Method and Description |
---|---|
private java.math.BigInteger |
invertMessage(java.math.BigInteger m)
Die Methode invertMessage dreht eine Nachricht bitweise um.
|
private java.math.BigInteger |
praefixfreiMessage(java.math.BigInteger m)
Die Methode praefixfreiMessage erzeugt aus einer Nachricht m eine präfixfrei
kodierte Nachricht m, indem ihre Bitlänge angehängt wird.
|
private boolean |
QRn(java.math.BigInteger p,
java.math.BigInteger q,
java.math.BigInteger x)
Die Methode QRn ermittelt, ob eine Zahl quadratischer Rest von
n = p * q ist.
|
java.math.BigInteger |
sign(GMRPrivateKey privKey,
java.math.BigInteger m,
java.math.BigInteger r)
Diese Methode implementiert die Signierfunktion von GMR.
|
boolean |
test(GMRPublicKey pubKey,
java.math.BigInteger m,
java.math.BigInteger r,
java.math.BigInteger sig)
Diese Methode implementiert die Testfunktion von GMR.
|
public java.math.BigInteger sign(GMRPrivateKey privKey, java.math.BigInteger m, java.math.BigInteger r)
privKey
- der geheime Signierschlüsselm
- die Nachrichtr
- die Referenz, an der signiert werden sollpublic boolean test(GMRPublicKey pubKey, java.math.BigInteger m, java.math.BigInteger r, java.math.BigInteger sig)
pubKey
- der öffentliche Schlüsselm
- die Nachrichtsig
- die Signaturprivate java.math.BigInteger invertMessage(java.math.BigInteger m)
m
- die umzudrehende Nachrichtprivate java.math.BigInteger praefixfreiMessage(java.math.BigInteger m)
m
- die Nachichtprivate boolean QRn(java.math.BigInteger p, java.math.BigInteger q, java.math.BigInteger x)
p
- Primzahl pq
- Primzahl qx
- der potentielle quadratische Rest