You want something like this-
BigInteger bInt = new BigInteger(1, bytes);
String hexString = String.format("%0" + (bytes.length << 1) + "X", bInt);
For lower case hex digits, you can use-
String hexString = String.format("%0" + (bytes.length << 1) + "x", bInt);