JAVA. Возможно ли подписание полученного hash вместо передачи полного массива байт

Добрый день. При подписании файлов сейчас передается массив байт для подписания

content = new CMSProcessableByteArray(byteData);
CMSSignedData signedData = generator.generate(content, false, provider.getName());

Можно ли передать предварительно на стороне сервера получить hash и на клиенте подписывать именно hash - то значительно бы уменьшило траффик между клиентом и сервером

Например так…
MessageDigest messageDigest = MessageDigest.getInstance(alg);
byteData = messageDigest.digest(byteData);

Сейчас так не работает, так как скорее всего в функции generator.generate() происходит повторное хэширование.