I am developing some software very similar to openvas - http://www.openvas.org/ most components of this software are release under the GNU GPL license. To be clear my software will not be directly derived from this software in any way - it will be a completely independent build in a different programming language so there will be no shared code.

Essentially the software is capable of executing attack scripts against target machines- I plan to support a number of ways of writing these. The attack scripts for OpenVAS are written in NASL - http://citeseerx.ist.psu.edu/viewdoc/download?doi= and licensed under GNU GPLv2+

Now I would like to release my software under an MIT license so that there is more scope for commercial use and development. So my question is can I do this and support the nasl scripting format. Which i guess boils down to whether implementing support for this open source format can be considered derivative work. The way implementation would have to work is that I would have to support the same function signatures as nasl does so I guess in this sense my code would be derived from the nasl specification.

Clarification would be much appreciated.

  • 1
    Simply implementing a format or an API does not make it a derivative work. For example, there are many implementations -- independent works -- of the C and C++ standard libraries. And all of them by definition need to use compatible signatures in order to implement the API. See also Re-implementation of a proprietary API
    – Brandin
    Commented Sep 8, 2018 at 15:03
  • Your users can use third party GPL scripts. As long as you don't bundle any existing GPL'd scripts with your project the GPL doesn't affect your project.
    – sambler
    Commented Sep 9, 2018 at 7:20

1 Answer 1


A specification and the implementation of that specification are considered independent works as far a copyright law is concerned. This means that the license of the specification (which is usually very restrictive) does not have any influence on the license that can be used for the implementations.

Also, the scripts processed by a language processor are independent works of the processor, so their licenses also don't affect each other. That is the way that you can use a GPL license compiler or interpreter for commercial, closed-source, programs.

All this combined, there is no problem at all to release your NASL processing software under an MIT license.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.