monero-project/kovri

SSU: ProcessSessionCreated fires assert on signature verification

coneiric opened this issue · 3 comments


By submitting this issue, I confirm the following:

  • I have read and understood the developer guide in kovri-docs.
  • I have checked that the issue I am reporting can be replicated or that the feature I am suggesting is not present.
  • I have checked opened or recently closed pull requests for existing solutions/implementations to my issue/suggestion.

During signature validation, a message sent to SSUSession::ProcessSessionCreated failed verification, and fired the assert Assertion 'rmlen == mlen' failed.

Here is a backtrace, log message, and hex dump of the relevant buffers.

This occurred running the latest master build, with TweetNaCL changes included.

Could have uncovered a bug that existed previously, but didn't have an assert for invalid signatures.

After some digging, this appears to be an assertion firing on normal invalid signature verification.

Unsure if the router crashing on an invalid signature is expected/desired behavior. Opening a PR with an added thrown exception for if/when assertions are turned off.

router crashing

Assertions aren't crashes.

I just got back to find the assertion fired. Resolved in #983.

Assertions aren't crashes.

You're right, I wasn't being precise enough with my language. Thanks for the fix.