fix TypeError in derive_milenage_opc()

In 4f6ca43e1f6726f00cfc91ff6d17db6878316c4d we started to use
the bytearray type as 'b' type, but PyCrypto insists on getting
a bytes type.

This fixes the following Exception:
TypeError: argument 1 must be read-only bytes-like object, not bytearray

Change-Id: If2a727ed417ffd56c0f7d7b4e9f633d67fde5ced
Closes: OS#5060
diff --git a/pySim/utils.py b/pySim/utils.py
index 5320b59..13e62f0 100644
--- a/pySim/utils.py
+++ b/pySim/utils.py
@@ -244,9 +244,11 @@
 	from pySim.utils import b2h
 
 	# We pass in hex string and now need to work on bytes
-	aes = AES.new(h2b(ki_hex))
-	opc_bytes = aes.encrypt(h2b(op_hex))
-	return b2h(strxor(opc_bytes, h2b(op_hex)))
+	ki_bytes = bytes(h2b(ki_hex))
+	op_bytes = bytes(h2b(op_hex))
+	aes = AES.new(ki_bytes)
+	opc_bytes = aes.encrypt(op_bytes)
+	return b2h(strxor(opc_bytes, op_bytes))
 
 def calculate_luhn(cc):
 	"""