fix imports

This commit is contained in:
callebtc
2025-07-19 15:00:21 +02:00
parent 30569be02c
commit e5963843e1
31 changed files with 53 additions and 54 deletions
@@ -3,7 +3,7 @@ package com.bitchat.android.noise
import android.content.Context import android.content.Context
import android.util.Log import android.util.Log
import com.bitchat.android.identity.SecureIdentityStateManager import com.bitchat.android.identity.SecureIdentityStateManager
import com.bitchat.android.noise.southernstorm.noise.protocol.Noise import com.bitchat.android.noise.southernstorm.protocol.Noise
import java.security.MessageDigest import java.security.MessageDigest
import java.security.SecureRandom import java.security.SecureRandom
import java.util.concurrent.ConcurrentHashMap import java.util.concurrent.ConcurrentHashMap
@@ -296,7 +296,7 @@ class NoiseEncryptionService(private val context: Context) {
*/ */
private fun generateKeyPair(): Pair<ByteArray, ByteArray> { private fun generateKeyPair(): Pair<ByteArray, ByteArray> {
try { try {
val dhState = com.bitchat.android.noise.southernstorm.noise.protocol.Noise.createDH("25519") val dhState = com.bitchat.android.noise.southernstorm.protocol.Noise.createDH("25519")
dhState.generateKeyPair() dhState.generateKeyPair()
val privateKey = ByteArray(32) val privateKey = ByteArray(32)
@@ -1,7 +1,7 @@
package com.bitchat.android.noise package com.bitchat.android.noise
import android.util.Log import android.util.Log
import com.bitchat.android.noise.southernstorm.noise.protocol.* import com.bitchat.android.noise.southernstorm.protocol.*
import java.security.SecureRandom import java.security.SecureRandom
@@ -195,8 +195,7 @@ class NoiseSession(
state = NoiseSessionState.Handshaking state = NoiseSessionState.Handshaking
handshakeMessageCount = 1 handshakeMessageCount = 1
// CRITICAL FIX: Use exact buffer size for XX message 1 (32 bytes) val messageBuffer = ByteArray(XX_MESSAGE_1_SIZE)
val messageBuffer = ByteArray(XX_MESSAGE_1_SIZE + MAX_PAYLOAD_SIZE) // Extra space for safety
val handshakeStateLocal = handshakeState ?: throw IllegalStateException("Handshake state is null") val handshakeStateLocal = handshakeState ?: throw IllegalStateException("Handshake state is null")
val messageLength = handshakeStateLocal.writeMessage(messageBuffer, 0, ByteArray(0), 0, 0) val messageLength = handshakeStateLocal.writeMessage(messageBuffer, 0, ByteArray(0), 0, 0)
val firstMessage = messageBuffer.copyOf(messageLength) val firstMessage = messageBuffer.copyOf(messageLength)
@@ -206,7 +205,7 @@ class NoiseSession(
Log.w(TAG, "Warning: XX message 1 size ${firstMessage.size} != expected $XX_MESSAGE_1_SIZE") Log.w(TAG, "Warning: XX message 1 size ${firstMessage.size} != expected $XX_MESSAGE_1_SIZE")
} }
Log.d(TAG, "Sent real XX handshake message 1 to $peerID (${firstMessage.size} bytes)") Log.d(TAG, "Sending XX handshake message 1 to $peerID (${firstMessage.size} bytes)")
return firstMessage return firstMessage
} catch (e: Exception) { } catch (e: Exception) {
state = NoiseSessionState.Failed(e) state = NoiseSessionState.Failed(e)
@@ -20,13 +20,13 @@
* DEALINGS IN THE SOFTWARE. * DEALINGS IN THE SOFTWARE.
*/ */
package com.bitchat.android.noise.southernstorm.noise.crypto; package com.bitchat.android.noise.southernstorm.crypto;
import java.security.DigestException; import java.security.DigestException;
import java.security.MessageDigest; import java.security.MessageDigest;
import java.util.Arrays; import java.util.Arrays;
import com.bitchat.android.noise.southernstorm.noise.protocol.Destroyable; import com.bitchat.android.noise.southernstorm.protocol.Destroyable;
/** /**
* Fallback implementation of BLAKE2b for the Noise library. * Fallback implementation of BLAKE2b for the Noise library.
@@ -20,13 +20,13 @@
* DEALINGS IN THE SOFTWARE. * DEALINGS IN THE SOFTWARE.
*/ */
package com.bitchat.android.noise.southernstorm.noise.crypto; package com.bitchat.android.noise.southernstorm.crypto;
import java.security.DigestException; import java.security.DigestException;
import java.security.MessageDigest; import java.security.MessageDigest;
import java.util.Arrays; import java.util.Arrays;
import com.bitchat.android.noise.southernstorm.noise.protocol.Destroyable; import com.bitchat.android.noise.southernstorm.protocol.Destroyable;
/** /**
* Fallback implementation of BLAKE2s for the Noise library. * Fallback implementation of BLAKE2s for the Noise library.
@@ -20,7 +20,7 @@
* DEALINGS IN THE SOFTWARE. * DEALINGS IN THE SOFTWARE.
*/ */
package com.bitchat.android.noise.southernstorm.noise.crypto; package com.bitchat.android.noise.southernstorm.crypto;
/** /**
* Implementation of the ChaCha20 core hash transformation. * Implementation of the ChaCha20 core hash transformation.
@@ -20,7 +20,7 @@
* DEALINGS IN THE SOFTWARE. * DEALINGS IN THE SOFTWARE.
*/ */
package com.bitchat.android.noise.southernstorm.noise.crypto; package com.bitchat.android.noise.southernstorm.crypto;
import java.util.Arrays; import java.util.Arrays;
@@ -53,7 +53,7 @@ THE SOFTWARE.
*/ */
package com.bitchat.android.noise.southernstorm.noise.crypto; package com.bitchat.android.noise.southernstorm.crypto;
import java.util.Arrays; import java.util.Arrays;
@@ -20,11 +20,11 @@
* DEALINGS IN THE SOFTWARE. * DEALINGS IN THE SOFTWARE.
*/ */
package com.bitchat.android.noise.southernstorm.noise.crypto; package com.bitchat.android.noise.southernstorm.crypto;
import java.util.Arrays; import java.util.Arrays;
import com.bitchat.android.noise.southernstorm.noise.protocol.Destroyable; import com.bitchat.android.noise.southernstorm.protocol.Destroyable;
/** /**
* Implementation of the GHASH primitive for GCM. * Implementation of the GHASH primitive for GCM.
@@ -6,7 +6,7 @@
* Java port: Rhys Weatherley * Java port: Rhys Weatherley
*/ */
package com.bitchat.android.noise.southernstorm.noise.crypto; package com.bitchat.android.noise.southernstorm.crypto;
import java.security.SecureRandom; import java.security.SecureRandom;
import java.util.Arrays; import java.util.Arrays;
@@ -6,7 +6,7 @@
* Java port: Rhys Weatherley * Java port: Rhys Weatherley
*/ */
package com.bitchat.android.noise.southernstorm.noise.crypto; package com.bitchat.android.noise.southernstorm.crypto;
import java.util.Arrays; import java.util.Arrays;
@@ -20,11 +20,11 @@
* DEALINGS IN THE SOFTWARE. * DEALINGS IN THE SOFTWARE.
*/ */
package com.bitchat.android.noise.southernstorm.noise.crypto; package com.bitchat.android.noise.southernstorm.crypto;
import java.util.Arrays; import java.util.Arrays;
import com.bitchat.android.noise.southernstorm.noise.protocol.Destroyable; import com.bitchat.android.noise.southernstorm.protocol.Destroyable;
/** /**
* Simple implementation of the Poly1305 message authenticator. * Simple implementation of the Poly1305 message authenticator.
@@ -30,7 +30,7 @@
* EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/ */
package com.bitchat.android.noise.southernstorm.noise.crypto; package com.bitchat.android.noise.southernstorm.crypto;
import java.util.Arrays; import java.util.Arrays;
@@ -20,13 +20,13 @@
* DEALINGS IN THE SOFTWARE. * DEALINGS IN THE SOFTWARE.
*/ */
package com.bitchat.android.noise.southernstorm.noise.crypto; package com.bitchat.android.noise.southernstorm.crypto;
import java.security.DigestException; import java.security.DigestException;
import java.security.MessageDigest; import java.security.MessageDigest;
import java.util.Arrays; import java.util.Arrays;
import com.bitchat.android.noise.southernstorm.noise.protocol.Destroyable; import com.bitchat.android.noise.southernstorm.protocol.Destroyable;
/** /**
* Fallback implementation of SHA256. * Fallback implementation of SHA256.
@@ -20,13 +20,13 @@
* DEALINGS IN THE SOFTWARE. * DEALINGS IN THE SOFTWARE.
*/ */
package com.bitchat.android.noise.southernstorm.noise.crypto; package com.bitchat.android.noise.southernstorm.crypto;
import java.security.DigestException; import java.security.DigestException;
import java.security.MessageDigest; import java.security.MessageDigest;
import java.util.Arrays; import java.util.Arrays;
import com.bitchat.android.noise.southernstorm.noise.protocol.Destroyable; import com.bitchat.android.noise.southernstorm.protocol.Destroyable;
/** /**
* Fallback implementation of SHA512. * Fallback implementation of SHA512.
@@ -9,4 +9,4 @@
* Applications that use Noise won't normally use these classes * Applications that use Noise won't normally use these classes
* directly. * directly.
*/ */
package com.bitchat.android.noise.southernstorm.noise.crypto; package com.bitchat.android.noise.southernstorm.crypto;
@@ -20,15 +20,15 @@
* DEALINGS IN THE SOFTWARE. * DEALINGS IN THE SOFTWARE.
*/ */
package com.bitchat.android.noise.southernstorm.noise.protocol; package com.bitchat.android.noise.southernstorm.protocol;
import java.util.Arrays; import java.util.Arrays;
import javax.crypto.BadPaddingException; import javax.crypto.BadPaddingException;
import javax.crypto.ShortBufferException; import javax.crypto.ShortBufferException;
import com.bitchat.android.noise.southernstorm.noise.crypto.GHASH; import com.bitchat.android.noise.southernstorm.crypto.GHASH;
import com.bitchat.android.noise.southernstorm.noise.crypto.RijndaelAES; import com.bitchat.android.noise.southernstorm.crypto.RijndaelAES;
/** /**
* Fallback implementation of "AESGCM" on platforms where * Fallback implementation of "AESGCM" on platforms where
@@ -20,7 +20,7 @@
* DEALINGS IN THE SOFTWARE. * DEALINGS IN THE SOFTWARE.
*/ */
package com.bitchat.android.noise.southernstorm.noise.protocol; package com.bitchat.android.noise.southernstorm.protocol;
import java.security.InvalidAlgorithmParameterException; import java.security.InvalidAlgorithmParameterException;
import java.security.InvalidKeyException; import java.security.InvalidKeyException;
@@ -35,7 +35,7 @@ import javax.crypto.ShortBufferException;
import javax.crypto.spec.IvParameterSpec; import javax.crypto.spec.IvParameterSpec;
import javax.crypto.spec.SecretKeySpec; import javax.crypto.spec.SecretKeySpec;
import com.bitchat.android.noise.southernstorm.noise.crypto.GHASH; import com.bitchat.android.noise.southernstorm.crypto.GHASH;
/** /**
* Emulates the "AESGCM" cipher for Noise using the "AES/CTR/NoPadding" * Emulates the "AESGCM" cipher for Noise using the "AES/CTR/NoPadding"
@@ -20,15 +20,15 @@
* DEALINGS IN THE SOFTWARE. * DEALINGS IN THE SOFTWARE.
*/ */
package com.bitchat.android.noise.southernstorm.noise.protocol; package com.bitchat.android.noise.southernstorm.protocol;
import java.util.Arrays; import java.util.Arrays;
import javax.crypto.BadPaddingException; import javax.crypto.BadPaddingException;
import javax.crypto.ShortBufferException; import javax.crypto.ShortBufferException;
import com.bitchat.android.noise.southernstorm.noise.crypto.ChaChaCore; import com.bitchat.android.noise.southernstorm.crypto.ChaChaCore;
import com.bitchat.android.noise.southernstorm.noise.crypto.Poly1305; import com.bitchat.android.noise.southernstorm.crypto.Poly1305;
/** /**
* Implements the ChaChaPoly cipher for Noise. * Implements the ChaChaPoly cipher for Noise.
@@ -20,7 +20,7 @@
* DEALINGS IN THE SOFTWARE. * DEALINGS IN THE SOFTWARE.
*/ */
package com.bitchat.android.noise.southernstorm.noise.protocol; package com.bitchat.android.noise.southernstorm.protocol;
import javax.crypto.BadPaddingException; import javax.crypto.BadPaddingException;
import javax.crypto.ShortBufferException; import javax.crypto.ShortBufferException;
@@ -20,7 +20,7 @@
* DEALINGS IN THE SOFTWARE. * DEALINGS IN THE SOFTWARE.
*/ */
package com.bitchat.android.noise.southernstorm.noise.protocol; package com.bitchat.android.noise.southernstorm.protocol;
/** /**
* Class that contains a pair of CipherState objects. * Class that contains a pair of CipherState objects.
@@ -20,11 +20,11 @@
* DEALINGS IN THE SOFTWARE. * DEALINGS IN THE SOFTWARE.
*/ */
package com.bitchat.android.noise.southernstorm.noise.protocol; package com.bitchat.android.noise.southernstorm.protocol;
import java.util.Arrays; import java.util.Arrays;
import com.bitchat.android.noise.southernstorm.noise.crypto.Curve25519; import com.bitchat.android.noise.southernstorm.crypto.Curve25519;
/** /**
* Implementation of the Curve25519 algorithm for the Noise protocol. * Implementation of the Curve25519 algorithm for the Noise protocol.
@@ -20,11 +20,11 @@
* DEALINGS IN THE SOFTWARE. * DEALINGS IN THE SOFTWARE.
*/ */
package com.bitchat.android.noise.southernstorm.noise.protocol; package com.bitchat.android.noise.southernstorm.protocol;
import java.util.Arrays; import java.util.Arrays;
import com.bitchat.android.noise.southernstorm.noise.crypto.Curve448; import com.bitchat.android.noise.southernstorm.crypto.Curve448;
/** /**
* Implementation of the Curve448 algorithm for the Noise protocol. * Implementation of the Curve448 algorithm for the Noise protocol.
@@ -20,7 +20,7 @@
* DEALINGS IN THE SOFTWARE. * DEALINGS IN THE SOFTWARE.
*/ */
package com.bitchat.android.noise.southernstorm.noise.protocol; package com.bitchat.android.noise.southernstorm.protocol;
/** /**
* Interface to a Diffie-Hellman algorithm for the Noise protocol. * Interface to a Diffie-Hellman algorithm for the Noise protocol.
@@ -20,7 +20,7 @@
* DEALINGS IN THE SOFTWARE. * DEALINGS IN THE SOFTWARE.
*/ */
package com.bitchat.android.noise.southernstorm.noise.protocol; package com.bitchat.android.noise.southernstorm.protocol;
/** /**
* Additional API for DH objects that need special handling for * Additional API for DH objects that need special handling for
@@ -20,7 +20,7 @@
* DEALINGS IN THE SOFTWARE. * DEALINGS IN THE SOFTWARE.
*/ */
package com.bitchat.android.noise.southernstorm.noise.protocol; package com.bitchat.android.noise.southernstorm.protocol;
/** /**
* Interface for objects that implement destroying. * Interface for objects that implement destroying.
@@ -20,7 +20,7 @@
* DEALINGS IN THE SOFTWARE. * DEALINGS IN THE SOFTWARE.
*/ */
package com.bitchat.android.noise.southernstorm.noise.protocol; package com.bitchat.android.noise.southernstorm.protocol;
import java.security.NoSuchAlgorithmException; import java.security.NoSuchAlgorithmException;
import java.util.Arrays; import java.util.Arrays;
@@ -20,12 +20,12 @@
* DEALINGS IN THE SOFTWARE. * DEALINGS IN THE SOFTWARE.
*/ */
package com.bitchat.android.noise.southernstorm.noise.protocol; package com.bitchat.android.noise.southernstorm.protocol;
import java.util.Arrays; import java.util.Arrays;
import com.bitchat.android.noise.southernstorm.noise.crypto.NewHope; import com.bitchat.android.noise.southernstorm.crypto.NewHope;
import com.bitchat.android.noise.southernstorm.noise.crypto.NewHopeTor; import com.bitchat.android.noise.southernstorm.crypto.NewHopeTor;
/** /**
* Implementation of the New Hope post-quantum algorithm for the Noise protocol. * Implementation of the New Hope post-quantum algorithm for the Noise protocol.
@@ -20,7 +20,7 @@
* DEALINGS IN THE SOFTWARE. * DEALINGS IN THE SOFTWARE.
*/ */
package com.bitchat.android.noise.southernstorm.noise.protocol; package com.bitchat.android.noise.southernstorm.protocol;
import java.security.MessageDigest; import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException; import java.security.NoSuchAlgorithmException;
@@ -29,10 +29,10 @@ import java.util.Arrays;
import javax.crypto.BadPaddingException; import javax.crypto.BadPaddingException;
import com.bitchat.android.noise.southernstorm.noise.crypto.Blake2bMessageDigest; import com.bitchat.android.noise.southernstorm.crypto.Blake2bMessageDigest;
import com.bitchat.android.noise.southernstorm.noise.crypto.Blake2sMessageDigest; import com.bitchat.android.noise.southernstorm.crypto.Blake2sMessageDigest;
import com.bitchat.android.noise.southernstorm.noise.crypto.SHA256MessageDigest; import com.bitchat.android.noise.southernstorm.crypto.SHA256MessageDigest;
import com.bitchat.android.noise.southernstorm.noise.crypto.SHA512MessageDigest; import com.bitchat.android.noise.southernstorm.crypto.SHA512MessageDigest;
/** /**
* Utility functions for the Noise protocol library. * Utility functions for the Noise protocol library.
@@ -20,7 +20,7 @@
* DEALINGS IN THE SOFTWARE. * DEALINGS IN THE SOFTWARE.
*/ */
package com.bitchat.android.noise.southernstorm.noise.protocol; package com.bitchat.android.noise.southernstorm.protocol;
/** /**
* Information about all supported handshake patterns. * Information about all supported handshake patterns.
@@ -20,7 +20,7 @@
* DEALINGS IN THE SOFTWARE. * DEALINGS IN THE SOFTWARE.
*/ */
package com.bitchat.android.noise.southernstorm.noise.protocol; package com.bitchat.android.noise.southernstorm.protocol;
import java.io.UnsupportedEncodingException; import java.io.UnsupportedEncodingException;
import java.security.DigestException; import java.security.DigestException;
@@ -4,4 +4,4 @@
* *
* Reference: http://noiseprotocol.org * Reference: http://noiseprotocol.org
*/ */
package com.bitchat.android.noise.southernstorm.noise.protocol; package com.bitchat.android.noise.southernstorm.protocol;