OpenSSL Signature Verification Algorithm Updates

In version 4.5 of the MainWP, we introduced the capability to set a custom Signature Verification Algorithm and added PHPSecLib as an alternative to OpenSSL. Both options can be set globally for the entire Dashboard or on a per-site basis.

Previously, MainWP used the SHA1 algorithm to verify signatures. However, as some hosts began updating the OpenSSL library to version 3, we encountered some incompatibilities with OpenSSL 1. This is mainly because some hosts, after updating to OpenSSL 3, have disabled SHA1, considering it a legacy option.

To address this, we switched to SHA256 as default, which provides enhanced security and is compatible with both OpenSSL 1 and OpenSSL 3.


If, for some reason, you wish to switch back to SHA1 for the entire MainWP Dashboard or only for specific sites, it is necessary to reconnect the present sites to the Dashboard. This can be accomplished by navigating to the WP Admin of the Child Sites, deactivating and reactivating the MainWP Child plugin (which will disconnect it from the Dashboard), and then reconnecting the child site in the Main Dashboard.

PHPSecLib as Alternative to OpenSSL

OpenSSL is a widely-used software library for applications that secure communications over computer networks. However, in certain scenarios where OpenSSL is not available or improperly configured on a server, using PHPSecLib may be a viable workaround.

If OpenSSL is properly set, which would be the case on most web hosts, there is no need to switch to PHPSecLib. However, PHPSecLib is an excellent alternative if you are setting up a localhost where OpenSSL sometimes has configuration issues, and you would otherwise need to locate the openssl.cnf file and enter its path in the MainWP settings.


Read More about Signature Verification Algorithm and PHPSecLib Settings.

Main Navigation Redesign

To declutter the main navigation and to make room for upcoming additions, we introduced the 3-level (left-left-left) navigation system.

The MainWP team has tested this update thoroughly on internal development servers and confirmed that the version works properly. However, it’s impossible to test every configuration. That is why I am asking if you could install the Dashboard and Child plugins on some of your test sites and let us know if you find any issues.



New Testing Environment

This update should be stable and not cause any significant issues; however, we do recommend you set up some dedicated testing sites or sub-domains until you have verified everything works on your server setup.

If you are setting up a new testing environment, all you need to do is download and install the Dashboard and Child Plugin as usual.

Existing Sites

If you decide that you want to run the Beta on your existing live environment, follow these instructions:

Upgrade Dashboard Plugin

  • Download the MainWP Dashboard ZIP from above
  • On your MainWP Dashboard site, deactivate and delete the version that you are currently using
  • Install the new (beta) Dashboard plugin
  • Activate the plugin

Upgrade Child Plugin

  • Download the MainWP Child ZIP from above
  • Then get to your MainWP Dashboard
  • Go to the Plugins > Install > Upload page
  • Select the sites you want to upload it to
  • Upload the Child Plugin you downloaded earlier
  • Be sure BOTH “Activate after installation ” and “Overwrite existing” are selected
  • Press the button to complete the process

That will install this version on your child sites for you.


For reporting MainWP beta issues, we created a separate subcategory under the Support section. To report problems, please go to the Beta Category and post as many details as possible about the problem you have found.



MainWP 4.5 Beta 2 Changelog

* Fixed:  Multiple jQuery deprecation notices
* Fixed: Signature verification issue with PHPSecLib authentication
* Added: Permissions for the REST API keys
* Added: Recent Posts widget to the Client Overview page
* Added: Recent Pages widget to the Client Overview page
* Added: Non-MainWP Changes widget to the Client Overview page
* Added: Tooltip element for yellow exclamation mark indicating that sync process timed out
* Added:  Jump to WP Admin icon link to feedback when the Update process fails for a child site
* Updated: Removed MD5 as a fallback for setups where OpenSSL is not available

MainWP REST API Permissions Settings

In the MainWP 4.5 Beta 2 version, we added an option to set Read, Write and Delete permissions for each MainWP REST API key. This allows users to limit keys to specific types of actions provided by the MainWP REST API.

Read permission will allow only actions (endpoints) that use the GET method. API Key, with this permission only, will only be used to return data via REST API.

Write Permission will allow only actions (endpoints) that use POST or PUT method. API Key, with this permission only, will only be used to trigger actions or add/edit data via REST API.

Delete Permission will allow only actions (endpoints) that use the DELETE method. API Key, with this permission only, will only be used to trigger actions that delete data via REST API.

Each Key can have one or more permissions set.

API Keys created before version 4.5-beta2 will have all three permissions set. If you need to remove any permissions from your existing keys, you can Edit existing keys and readjust permissions as per your needs.

New Client Overview Widgets

With version 4.5-beta2, we added Recent Posts, Recent Pages, and Non-MainWP changes widgets to the Client Overview page. These widgets will show data only from child sites assigned to the client.




MainWP 4.5 Beta 3 Changelog

* Added: New encryption & decryption system for safer storing sensitive data
* Added: Flexible Widgets

API Keys Encryption

In the MainWP 4.5-beta3 version, we added a new encryption/decryption system for safer storing of 3rd party API keys. Along with the MainWP Dashboard and Child 4.5-beta3, corresponding extensions need to be updated too.

Upon installation of the provided beta versions, the encryption process will be triggered automatically.

Flexible Widgets


Version 4.5 beta 3 introduces a big UX improvement. To give users more ability to arrange Overview, Individual Site Overview, and Client page, we implemented the Gridster.js script, which allows you to resize and move widgets and set the widgetized pages how you need them.

For the best experience, update all the extensions that add widgets to your Overview page to beta versions provided above. Previous versions of the extensions may not work as expected.

Considering that the update introduces significant changes in JS code, be sure to hard-refresh your browser after the installation.



MainWP 4.5 Beta 4 Changelog

* Fixed: Overflow problem for widgets
* Added: "Not installed" status to search options in Manage Plugins and Themes page
* Added: Per Site view in the  Manage Plugins and Themes page
* Added: New PHPCodeSniffer rulesets

Manage Plugins & Themes per Site Search

In addition to Per Item view in the Manage Plugins and Manage Themes screen, MainWP 4.5 introduces the Per Site view!

Searching for Sites That are Missing Certain Plugin


If you need to find websites missing a certain plugin, it has never been easier! We introduced a new Status in the Search Options - “Not installed”, so follow these steps and find those sites:

  1. Go to the MainWP > Manage Plugins
  2. Set the Per Site view
  3. Select all your child sites
  4. Select the Not Installed status
  5. Enter the plugin name in the Search Options
  6. Click the Show Plugins button!