Magento Checkout page is blank on payment with SagePay after Magento update or PHP compatibility patch installation. The following PHP error logged:
Fatal error: Uncaught Error: Class Crypt_Rijndael not found in app/code/local/Ebizmarts/SagePaySuite/Model/SagePayForm.php
Cause
Old versions of Ebizmarts/SagePaySuite extension (prior to 4.2.10) have direct calls toCrypt_Rijndael()
class and are incompatible with PHP7.2 support. This class is replaced in Magento updates with PHP7.2 support/patch: lib/phpseclib/Crypt/Rijndael.php file is replaced with newer Rijndael implementation.
Solution
Update Ebizmarts/SagePaySuite extension up to 4.2.10 version or newer with mcrypt-based invocation of Rijndael or revert PHP7.2 support (lib/phpseclib/Crypt/Rijndael.php in particular, whereCrypt_Rijndael()
class was previously defined).
Posted in: Fatal errors, Known issues