Java.lang.IllegalArgumentException: ключ должен иметь длину 112 или 168 бит в org.bouncycastle.crypto.macs.ISO9797Alg3MaAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Java.lang.IllegalArgumentException: ключ должен иметь длину 112 или 168 бит в org.bouncycastle.crypto.macs.ISO9797Alg3Ma

Сообщение Anonymous »

Я пытаюсь интегрировать org.bouncycastle.crypto.macs.ISO9797Alg3Mac в свое приложение. при вызове метода я получаю ошибку ниже,
java.lang.IllegalArgumentException: Key must be either 112 or 168 bit long at
org.bouncycastle.crypto.macs.ISO9797Alg3Mac.init(Unknown Source:119)

Вот метод, который я использую для создания Mac:
fun getISO9797Alg3Mac(key: ByteArray?, data: ByteArray): ByteArray {

//To print the MacKey
"MacKey : ${macKey} ,ByteArray Size: ${macKey.length}".toLog()

val macSizeBits = 32
val cipher: BlockCipher = DESEngine()
val mac = ISO9797Alg3Mac(cipher)
val keyP = KeyParameter(key)

mac.init(keyP)
mac.update(data, 0, data.size)
val out = ByteArray(macSizeBits / java.lang.Byte.SIZE)
mac.doFinal(out, 0)
return out
}

Мой Макки такой,
MacKey : 00000000-6b4b-282b-0000-00006b4b282b24.783063446.7061012
ByteArray Size : 56


Подробнее здесь: https://stackoverflow.com/questions/784 ... long-at-or
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»