Обычно это означает, что сторона шифрования и сторона дешифрования используют разные схемы заполнения. Они должны быть одинаковыми с обеих сторон.
Если вы используете Bouncy Castle в Java, вы можете указать схему заполнения (в данном случае заполнение PKCS # 1) в шифре следующим образом:
Cipher cipher = Cipher.getInstance("RSA/None/PKCS1Padding", "BC");
В openssl вы можете указать схему заполнения в команде encrypt / decrypt:
openssl rsautl -pkcs -decrypt ...
Здесь опция "-pkcs" определяет схему заполнения PKCS # 1.
Надеюсь, это поможет.