Class SignalOmemoKeyUtil
- java.lang.Object
-
- org.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
-
- org.jivesoftware.smackx.omemo.signal.SignalOmemoKeyUtil
-
public class SignalOmemoKeyUtil extends org.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
Concrete implementation of the KeyUtil for an implementation using the Signal library.
-
-
Constructor Summary
Constructors Constructor Description SignalOmemoKeyUtil()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.whispersystems.libsignal.state.PreKeyBundle
bundleFromOmemoBundle(org.jivesoftware.smackx.omemo.element.OmemoBundleElement bundle, org.jivesoftware.smackx.omemo.internal.OmemoDevice contact, int preKeyId)
org.whispersystems.libsignal.ecc.ECPublicKey
ellipticCurvePublicKeyFromBytes(byte[] data)
org.whispersystems.libsignal.IdentityKeyPair
generateOmemoIdentityKeyPair()
java.util.TreeMap<java.lang.Integer,org.whispersystems.libsignal.state.PreKeyRecord>
generateOmemoPreKeys(int currentPreKeyId, int count)
org.whispersystems.libsignal.state.SignedPreKeyRecord
generateOmemoSignedPreKey(org.whispersystems.libsignal.IdentityKeyPair identityKeyPair, int currentPreKeyId)
org.jivesoftware.smackx.omemo.trust.OmemoFingerprint
getFingerprintOfIdentityKey(org.whispersystems.libsignal.IdentityKey identityKey)
org.jivesoftware.smackx.omemo.trust.OmemoFingerprint
getFingerprintOfIdentityKeyPair(org.whispersystems.libsignal.IdentityKeyPair identityKeyPair)
byte[]
identityKeyForBundle(org.whispersystems.libsignal.IdentityKey identityKey)
org.whispersystems.libsignal.IdentityKey
identityKeyFromBytes(byte[] data)
org.whispersystems.libsignal.IdentityKey
identityKeyFromPair(org.whispersystems.libsignal.IdentityKeyPair identityKeyPair)
org.whispersystems.libsignal.IdentityKeyPair
identityKeyPairFromBytes(byte[] data)
byte[]
identityKeyPairToBytes(org.whispersystems.libsignal.IdentityKeyPair identityKeyPair)
byte[]
identityKeyToBytes(org.whispersystems.libsignal.IdentityKey identityKey)
byte[]
preKeyForBundle(org.whispersystems.libsignal.state.PreKeyRecord preKeyRecord)
org.whispersystems.libsignal.state.PreKeyRecord
preKeyFromBytes(byte[] bytes)
byte[]
preKeyPublicKeyForBundle(org.whispersystems.libsignal.ecc.ECPublicKey preKey)
byte[]
preKeyToBytes(org.whispersystems.libsignal.state.PreKeyRecord preKeyRecord)
org.whispersystems.libsignal.state.SessionRecord
rawSessionFromBytes(byte[] data)
byte[]
rawSessionToBytes(org.whispersystems.libsignal.state.SessionRecord session)
org.whispersystems.libsignal.state.SignedPreKeyRecord
signedPreKeyFromBytes(byte[] data)
int
signedPreKeyIdFromKey(org.whispersystems.libsignal.state.SignedPreKeyRecord signedPreKey)
byte[]
signedPreKeyPublicForBundle(org.whispersystems.libsignal.state.SignedPreKeyRecord signedPreKey)
byte[]
signedPreKeySignatureFromKey(org.whispersystems.libsignal.state.SignedPreKeyRecord signedPreKey)
byte[]
signedPreKeyToBytes(org.whispersystems.libsignal.state.SignedPreKeyRecord signedPreKeyRecord)
-
-
-
Method Detail
-
generateOmemoIdentityKeyPair
public org.whispersystems.libsignal.IdentityKeyPair generateOmemoIdentityKeyPair()
- Specified by:
generateOmemoIdentityKeyPair
in classorg.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
-
generateOmemoPreKeys
public java.util.TreeMap<java.lang.Integer,org.whispersystems.libsignal.state.PreKeyRecord> generateOmemoPreKeys(int currentPreKeyId, int count)
- Specified by:
generateOmemoPreKeys
in classorg.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
-
generateOmemoSignedPreKey
public org.whispersystems.libsignal.state.SignedPreKeyRecord generateOmemoSignedPreKey(org.whispersystems.libsignal.IdentityKeyPair identityKeyPair, int currentPreKeyId) throws org.jivesoftware.smackx.omemo.exceptions.CorruptedOmemoKeyException
- Specified by:
generateOmemoSignedPreKey
in classorg.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
- Throws:
org.jivesoftware.smackx.omemo.exceptions.CorruptedOmemoKeyException
-
signedPreKeyFromBytes
public org.whispersystems.libsignal.state.SignedPreKeyRecord signedPreKeyFromBytes(byte[] data) throws java.io.IOException
- Specified by:
signedPreKeyFromBytes
in classorg.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
- Throws:
java.io.IOException
-
signedPreKeyToBytes
public byte[] signedPreKeyToBytes(org.whispersystems.libsignal.state.SignedPreKeyRecord signedPreKeyRecord)
- Specified by:
signedPreKeyToBytes
in classorg.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
-
rawSessionFromBytes
public org.whispersystems.libsignal.state.SessionRecord rawSessionFromBytes(byte[] data) throws java.io.IOException
- Specified by:
rawSessionFromBytes
in classorg.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
- Throws:
java.io.IOException
-
rawSessionToBytes
public byte[] rawSessionToBytes(org.whispersystems.libsignal.state.SessionRecord session)
- Specified by:
rawSessionToBytes
in classorg.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
-
identityKeyPairFromBytes
public org.whispersystems.libsignal.IdentityKeyPair identityKeyPairFromBytes(byte[] data) throws org.jivesoftware.smackx.omemo.exceptions.CorruptedOmemoKeyException
- Specified by:
identityKeyPairFromBytes
in classorg.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
- Throws:
org.jivesoftware.smackx.omemo.exceptions.CorruptedOmemoKeyException
-
identityKeyFromBytes
public org.whispersystems.libsignal.IdentityKey identityKeyFromBytes(byte[] data) throws org.jivesoftware.smackx.omemo.exceptions.CorruptedOmemoKeyException
- Specified by:
identityKeyFromBytes
in classorg.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
- Throws:
org.jivesoftware.smackx.omemo.exceptions.CorruptedOmemoKeyException
-
ellipticCurvePublicKeyFromBytes
public org.whispersystems.libsignal.ecc.ECPublicKey ellipticCurvePublicKeyFromBytes(byte[] data) throws org.jivesoftware.smackx.omemo.exceptions.CorruptedOmemoKeyException
- Specified by:
ellipticCurvePublicKeyFromBytes
in classorg.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
- Throws:
org.jivesoftware.smackx.omemo.exceptions.CorruptedOmemoKeyException
-
preKeyToBytes
public byte[] preKeyToBytes(org.whispersystems.libsignal.state.PreKeyRecord preKeyRecord)
- Specified by:
preKeyToBytes
in classorg.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
-
preKeyFromBytes
public org.whispersystems.libsignal.state.PreKeyRecord preKeyFromBytes(byte[] bytes) throws java.io.IOException
- Specified by:
preKeyFromBytes
in classorg.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
- Throws:
java.io.IOException
-
bundleFromOmemoBundle
public org.whispersystems.libsignal.state.PreKeyBundle bundleFromOmemoBundle(org.jivesoftware.smackx.omemo.element.OmemoBundleElement bundle, org.jivesoftware.smackx.omemo.internal.OmemoDevice contact, int preKeyId) throws org.jivesoftware.smackx.omemo.exceptions.CorruptedOmemoKeyException
- Specified by:
bundleFromOmemoBundle
in classorg.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
- Throws:
org.jivesoftware.smackx.omemo.exceptions.CorruptedOmemoKeyException
-
signedPreKeySignatureFromKey
public byte[] signedPreKeySignatureFromKey(org.whispersystems.libsignal.state.SignedPreKeyRecord signedPreKey)
- Specified by:
signedPreKeySignatureFromKey
in classorg.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
-
signedPreKeyIdFromKey
public int signedPreKeyIdFromKey(org.whispersystems.libsignal.state.SignedPreKeyRecord signedPreKey)
- Specified by:
signedPreKeyIdFromKey
in classorg.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
-
identityKeyPairToBytes
public byte[] identityKeyPairToBytes(org.whispersystems.libsignal.IdentityKeyPair identityKeyPair)
- Specified by:
identityKeyPairToBytes
in classorg.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
-
identityKeyFromPair
public org.whispersystems.libsignal.IdentityKey identityKeyFromPair(org.whispersystems.libsignal.IdentityKeyPair identityKeyPair)
- Specified by:
identityKeyFromPair
in classorg.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
-
identityKeyForBundle
public byte[] identityKeyForBundle(org.whispersystems.libsignal.IdentityKey identityKey)
- Specified by:
identityKeyForBundle
in classorg.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
-
identityKeyToBytes
public byte[] identityKeyToBytes(org.whispersystems.libsignal.IdentityKey identityKey)
- Specified by:
identityKeyToBytes
in classorg.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
-
preKeyPublicKeyForBundle
public byte[] preKeyPublicKeyForBundle(org.whispersystems.libsignal.ecc.ECPublicKey preKey)
- Specified by:
preKeyPublicKeyForBundle
in classorg.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
-
preKeyForBundle
public byte[] preKeyForBundle(org.whispersystems.libsignal.state.PreKeyRecord preKeyRecord)
- Specified by:
preKeyForBundle
in classorg.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
-
signedPreKeyPublicForBundle
public byte[] signedPreKeyPublicForBundle(org.whispersystems.libsignal.state.SignedPreKeyRecord signedPreKey)
- Specified by:
signedPreKeyPublicForBundle
in classorg.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
-
getFingerprintOfIdentityKey
public org.jivesoftware.smackx.omemo.trust.OmemoFingerprint getFingerprintOfIdentityKey(org.whispersystems.libsignal.IdentityKey identityKey)
- Specified by:
getFingerprintOfIdentityKey
in classorg.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
-
getFingerprintOfIdentityKeyPair
public org.jivesoftware.smackx.omemo.trust.OmemoFingerprint getFingerprintOfIdentityKeyPair(org.whispersystems.libsignal.IdentityKeyPair identityKeyPair)
- Specified by:
getFingerprintOfIdentityKeyPair
in classorg.jivesoftware.smackx.omemo.util.OmemoKeyUtil<org.whispersystems.libsignal.IdentityKeyPair,org.whispersystems.libsignal.IdentityKey,org.whispersystems.libsignal.state.PreKeyRecord,org.whispersystems.libsignal.state.SignedPreKeyRecord,org.whispersystems.libsignal.state.SessionRecord,org.whispersystems.libsignal.ecc.ECPublicKey,org.whispersystems.libsignal.state.PreKeyBundle>
-
-