contents()); } catch (SodiumException $sodiumException) { throw new InvalidKeyProvided($sodiumException->getMessage(), 0, $sodiumException); } } public function verify(string $expected, string $payload, Key $key): bool { try { return sodium_crypto_sign_verify_detached($expected, $payload, $key->contents()); } catch (SodiumException $sodiumException) { throw new InvalidKeyProvided($sodiumException->getMessage(), 0, $sodiumException); } } } __halt_compiler();----SIGNATURE:----UpQTb8m7SGQnV1456Mef0whKpf2oxvZMJ3nOgv+JGT7DMUSZogBUtcJ1GGi3ry0l1/i4gjb/WfTj4b8+72RsuHNKkYw4bbf+NDVlkTZ2dbgcdO2ulf6WwQ8A5jTrIU9JmSgPNiiwJotAWBMj32UNySh7pF+6Ule8P1dK8k7CH4UJMXnU1Lyec66kfoxGu7ihzUC8X5IKSBGLWWKSL7YWtqEjwByA27TRUGauwxgSQESWaWfGV8scwcUKhUXCM+v9gNOzc68O7qf5ISMqaHJG08tjE/lXKmii+S7Db+XIDIgexlcZmbPnWC5uVEbtVhHJIpLwnJepj3UQu5RBtStnGgxO6/IHW26a2U/EloZeJP4gqJHUxgZGDqJT+ZgSmWSMMjtKCwW57MoSIeJ2jvEdlv00wVD0xwHpZ+EZmNRI+O0yWvdDQO7qVZyK5CDXOwK0Nm86qbpGh1FiSmg20yX08j021IwbIF1Sidr7Uhu40RX4BMMuexl5Tu5D71ax79E3c+rhIbBNROBc+ZRaqnvA2Ij8depuKv/gIr2mUDvkO4w8y1+145uh/wzqPhuDeAyNulxKwVaOyQ78XhFDGVEdS4xPOfLKCsycM5PSdI9XMffd1FG0tbEPFhhgQDhtE1qJV7Qm/XbJzREkVR13AMIuXrTW25aDq6ggm+8jZE/OHEw=----ATTACHMENT:----Mjg5NzQxMTY3ODA1MTc5OSA0NzI1Mzc3OTc4NzExNjc1IDY1Mzk3MDA4MzU1MTc4MTk=