Please note that there was a big issue with the process of verification implemented in libnpnt, whereby I was mistakenly checking for non-negative(including 0) return value for openssl verify method for verification success. But in-fact the return value when 0 means verification failure. After fixing it was found that the verification process was incorrect.
The correction has now been made in libnpnt to fix this. And the verification is working in current master. Thanks to @sachman, @cks123 and @abhiroop.bhatnagar for reporting and helping to resolve the issue.