Class SrpUtilities
java.lang.Object
de.bsvrz.dav.daf.communication.srpAuthentication.SrpUtilities
public final class SrpUtilities
extends java.lang.Object
Verschiedene allgemeine Hilfsfunktionen für die SRP-Authentifizierung
-
Method Summary
Modifier and Type Method Description static java.math.BigIntegerbigIntegerFromBytes(byte[] bytes)Wandelt ein vorzeichenloses byte-Array in ein positiven BigInteger umstatic java.math.BigIntegerbigIntegerFromHex(java.lang.String hexStr)Wandelt eine vorzeichenlose Hex-Zeichenfolge in einen positiven BigIntegerstatic byte[]bigIntegerToBytes(java.math.BigInteger bigInteger)Wandelt einen BigInteger in ein vorzeichenloses Byte-Array um.static java.lang.StringbigIntegerToHex(java.math.BigInteger bigInteger)Wandelt einen BigInteger in vorzeichenlose Hex-Darstellung um.static byte[]bytesFromHex(java.lang.String str)Wandelt eine hexadezimale Zeichenfolge in ein Byte-Array imstatic char[]bytesToChars(byte[] bytes)Wandelt ein byte-Array in ein char-Array um.static java.lang.StringbytesToHex(byte[] bytes)Wandelt ein Byte-Array in eine hexadezimale Darstellung umstatic byte[]charsToBytes(char[] chars)Wandelt ein char-Array in ein byte-Array um.static byte[]generatePredictableSalt(SrpCryptoParameter cryptoParams, byte[] seed)Erstellt ein (zufällig aussehendes) Salt, das aber eindeutig aus dem übergebenen Seed berechnet wirdstatic byte[]generateRandomSalt(SrpCryptoParameter cryptoParams)Erstellt ein zufälliges SaltMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Method Details
-
generateRandomSalt
Erstellt ein zufälliges Salt- Parameters:
cryptoParams- Kryptographische Parameter (zur Bestimmung der Anzahl Bytes)- Returns:
- zufälliges byte-Array der angegebenen Länge.
-
generatePredictableSalt
Erstellt ein (zufällig aussehendes) Salt, das aber eindeutig aus dem übergebenen Seed berechnet wird- Parameters:
cryptoParams- Kryptographische Parameter (hauptsächlich zur Bestimmung der Anzahl Bytes)seed- Daten, die Grundlage für das zufällige Salt sind- Returns:
- byte-Array der angegebenen Länge, welches aus dem seed gebildet wurde.
-
bytesToHex
public static java.lang.String bytesToHex(byte[] bytes)Wandelt ein Byte-Array in eine hexadezimale Darstellung um- Parameters:
bytes- Byte-Array- Returns:
- Hex-Darstellung, z.B. "4711af2b"
-
bytesFromHex
public static byte[] bytesFromHex(java.lang.String str)Wandelt eine hexadezimale Zeichenfolge in ein Byte-Array im- Parameters:
str- Hex-Zeichen, z.B. "4711af2b"- Returns:
- Byte-Array
-
bigIntegerFromBytes
public static java.math.BigInteger bigIntegerFromBytes(byte[] bytes)Wandelt ein vorzeichenloses byte-Array in ein positiven BigInteger um- Parameters:
bytes- Byte-Array- Returns:
- BigInteger
-
bigIntegerToBytes
public static byte[] bigIntegerToBytes(java.math.BigInteger bigInteger)Wandelt einen BigInteger in ein vorzeichenloses Byte-Array um.- Parameters:
bigInteger- BigInteger- Returns:
- byte-Array mit erstem Byte != 0
-
bigIntegerToHex
public static java.lang.String bigIntegerToHex(java.math.BigInteger bigInteger)Wandelt einen BigInteger in vorzeichenlose Hex-Darstellung um.- Parameters:
bigInteger- BigInteger- Returns:
- Hex-Zeichenfolge
-
bigIntegerFromHex
public static java.math.BigInteger bigIntegerFromHex(java.lang.String hexStr)Wandelt eine vorzeichenlose Hex-Zeichenfolge in einen positiven BigInteger- Parameters:
hexStr- Hex-Zeichenfolge- Returns:
- BigInteger
-
bytesToChars
public static char[] bytesToChars(byte[] bytes)Wandelt ein byte-Array in ein char-Array um.- Parameters:
bytes- bytes (UTF-8-kodiert)- Returns:
- char[]-Array
-
charsToBytes
public static byte[] charsToBytes(char[] chars)Wandelt ein char-Array in ein byte-Array um.- Parameters:
chars- char[]-Array- Returns:
- bytes (UTF-8-kodiert)
-