This topic is locked
[SOLVED]

Call to undefined function mcrypt_module_open() (10.1 -> 10.6)

11/22/2021 3:35:09 PM
PHPRunner General questions
P
Pedro Rojas author

Hi !

Last week I updated PHPRunner Pro license from 10.1 to 10.6.
As a first migration test I just made a backup of the project, I open it with the new version, I deleted all output folder, and I made a Full Build of the project.

When executing the preview using the Build-in web server I can see below error in the web browser after submit the login form:

Fatal error: Uncaught Error: Call to undefined function mcryptmoduleopen() in XXXX\output\include\ciphereres.php:37 Stack trace: #0 XXXX\output\include\ciphereraes.php(15): RunnerCiphererES->construct('f1486d11c936449...') #1 XXXX\output\classes\cipherer.php(324): RunnerCiphererAES->construct('f1486d11c936449...') #2 XXXX\output\classes\cipherer.php(312): RunnerCipherer->getESFunctions() #3 XXXX\output\classes\cipherer.php(91): RunnerCipherer->DecryptField('password', 'd79f4fed78baba5...') #4 XXXX\output\classes\datasource\projecttable.php(222): RunnerCipherer->DecryptFetchedArray(Array) #5 XXXX\output\classes\security.php(1688): DataSourceProjectTable->decryptRecor in XXXX\output\include\ciphereres.php on line 37

My project is using "Code-based AES-128 encryption" only in the "password" field on "admin_users" table.

Thanks in advance for your support !

admin 11/22/2021

Switching to code-based AES-256 encryption will solve this issue.

I just wanted to add that if you only encrypt the password field you doing it wrong. There is a built-in option to hash passwords using bcrypt algorythm which is an industry standard. You do not want your passwords to be decrypted, ever.

P
Pedro Rojas author 11/23/2021

Thanks a lot. It's working now properly !!

Regarding password field encrytion, yeah, you're right. There is an specific built-in option for this purpose. Great.
I will consider bcrypt migration, even it means I shall first decrypt all current passwords...

Regards.
Pedro.-