From 91130612d4351cf79b4d357a8c6b08659de59cd7 Mon Sep 17 00:00:00 2001 From: Daniel Gultsch Date: Sun, 9 Mar 2014 12:58:29 +0100 Subject: cleanup --- src/eu/siacs/conversations/utils/CryptoHelper.java | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'src/eu/siacs/conversations/utils/CryptoHelper.java') diff --git a/src/eu/siacs/conversations/utils/CryptoHelper.java b/src/eu/siacs/conversations/utils/CryptoHelper.java index 6e606fa1..ebbbd967 100644 --- a/src/eu/siacs/conversations/utils/CryptoHelper.java +++ b/src/eu/siacs/conversations/utils/CryptoHelper.java @@ -1,5 +1,7 @@ package eu.siacs.conversations.utils; +import android.util.Base64; + public class CryptoHelper { final protected static char[] hexArray = "0123456789ABCDEF".toCharArray(); public static String bytesToHex(byte[] bytes) { @@ -11,4 +13,22 @@ public class CryptoHelper { } return new String(hexChars); } + public static String saslPlain(String username, String password) { + byte[] userBytes = username.getBytes(); + int userLenght = userBytes.length; + byte[] passwordBytes = password.getBytes(); + byte[] saslBytes = new byte[userBytes.length+passwordBytes.length+2]; + saslBytes[0] = 0x0; + for(int i = 1; i < saslBytes.length; ++i) { + if (i<=userLenght) { + saslBytes[i] = userBytes[i-1]; + } else if (i==userLenght+1) { + saslBytes[i] = 0x0; + } else { + saslBytes[i] = passwordBytes[i-(userLenght+2)]; + } + } + + return Base64.encodeToString(saslBytes, Base64.DEFAULT); + } } -- cgit v1.2.3