おそらくエンコードの問題です。
$sign2 = (stripslashes($_POST['sign']));
$sign2 = mb_convert_encoding($sign2, "auto");
上記のコードは、 $sign2 を次の出力である $sign のように見せる試行錯誤の結果です。
openssl_sign($content, $sign, $key_pr);
しかし、検証のために $sign の代わりに $sign2 を入力すると、openssl_verify() は false を返します。どちらも文字列型で、長さは 128 で、同じように見えます。
$sign: KOóÂ^0Å ¶Ô®þó :æ aêÌCæ÷”äþÊÝÌ7=ËæK-ÎËÚ¦iÛtËš½Då^Ðv¶:Å*^'¬~8êšq
$sign2: KOóÂ^0Å ¶Ô®þó :æ aêÌCæ÷”äþÊÝÌ7=ËæK-ÎËÚ¦iÛtËš½Då^Ðv¶:Å*^'¬~8êšq
検証:悪い