Error: Request failed with status code 500

Error: Request failed with status code 500

ZEN 2.0.18 Tech Note - Node unable to pass challenge

Error message (from zen when creating a shielded transaction - z_sendmany):
error code: -1
error message:
getrandom

Error (from nodetracker - Exception is created)
– ERROR Challenge: unable to create and send transaction.
– { Error: Request failed with status code 500

Background

Some nodes are no longer able to pass a challenge after upgrading to 2.0.18. The apparent cause is an update in one of the dependent libraries that provides a random generator to zen. The library was enhanced to provide entropy based on the operating system. Some virtual systems are unable to provide a proper level of entropy due to sharing between multiple environments.

Link to issue:

https://github.com/ZencashOfficial/zen/issues/184

Affected Systems
The common element for affected systems are VPSs based on OpenVZ. During testing attempts were made to install other applications to increase entropy and these failed to run properly.

These providers have been reported using OpenVZ for some of their VPSs. Other providers may also use it.

  • VPSDime
  • VIRMACH
  • MEGAZONEHOSTING
  • TIME4VPS
  • STRATO

To determine if a VPS uses OpenVZ run the following at the command prompt:

systemd-detect-virt

Status: Won't Fix

The intent of the change is a security enhancement. There are no plans at this point to roll back to a prior version of the dependent library.

Suggested Solution
Since it was found that the entropy level of OpenVZ systems had been a known issue, the suggested action is to move the affected nodes to another provider who does not use OpenVZ

Guide for moving a node
https://www.zen-solutions.io/updated-guide-for-migrating-your-node-to-a-new-vps-provider/




© 2020 Horizen. All rights reserved.