paulmillr / nip44

NIP44 spec and implementations of encrypted messages for nostr
https://nostr.com
26 stars 11 forks source link

F# implementation #6

Closed lontivero closed 10 months ago

lontivero commented 10 months ago

Close #5

This PR copies and adapts the implementation from the Nostra project. All the 101 tests for valid cases pass green but none of the invalid cases were tested.

Nostra license in GPL2 but I have no problem with this code being copied and I can give MIT license if you think it is important.

paulmillr commented 10 months ago

I don’t think gpl is important. It would have been important if it was the only nip44 impl, because “derived code” must also be gpl. Since we have other impls, users can look at them as well.

Re: invalid vectors — please add tests against them whenever you’ll have time. They validate important cryptographic parts. If the underlying secp implementation is shit, it’s possible to execute twist attacks. Vectors ensure it’s not shit.

paulmillr commented 10 months ago

Thanks!

paulmillr commented 10 months ago

@lontivero when copying, it's necessary to copy license file as well. I've copied GPL for now.

lontivero commented 10 months ago

Sorry for the delay. I see you have already added the license file.