2026-09-29 10:35 UTC
@shtrom@piaille.fr As a copyright nerd (not a lawyer), given that you have looked at the source code of the GPL implementation, then there's a definite chance your Rust implementation is a derivative work of the reference implementation. Derivative works don't have to be related by verbatim copying; at least in the US (which is the only perspective I can speak from), there's a legal test by which if you have access to a copyrighted work (e.g. looking at the source code) and produce another substantially similar work (such as an implementation of the same encoding scheme using a roughly similar approach), that's enough to prove copyright infringement. This is why companies and large organizations use clean-room reimplementations: it makes it very obvious that the people who made the substantially similar work didn't have access to the original.
However, there's another legal principle called the merger doctrine which says that if the underlying idea, e.g. the algorithm you're implementing, can only be expressed in one way (or very few ways), then the expression - the code - effectively might not qualify for copyright protection after all. Otherwise, as soon as you read the source code of an implementation of a particular algorithm, you'd never be allowed to write that algorithm yourself. If that applies to your situation then you might be in the clear, but there's really no way to know without it going to court.
Replies (0)
No replies.