Я пытаюсь интегрировать 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
Мобильная версия