People have brought up the argument of the two classes of possible users of a library: those who want to write a free program, and those who want to write a proprietary program. This is a valid approach, but we must consider all the terms in the equation. There are actually three classes of possible projects that might use code you have written: * Those who want to make a free program. * Those who want to make a proprietary program. * Those who don't have strong views about the matter. So let's look at each of these three cases, considering two available choices (copylefting, or not copylefting), and how the decision affects the goals of encouraging use of encryption, discouraging back doors, and encouraging users' freedom. * Some people believe in free software and will make their additions free no matter what. Whether you use copyleft makes no difference in this kind of case. * Often at companies, and sometimes at universities, people are dead set on making a proprietary program. This program may be capable of doing a job, but its users will not have freedom, and they will have to take it on faith that there are no backdoors. Copylefting your code says this project cannot use it. Most likely, the project will spend some extra money to write their own code, and the outcome for the public will be much the same. They might do a worse job, or a better job. There's some chance they would not do the project; whether that is a loss for the public is not clear. It could mean less use of encryption; but if you also care about avoiding secret back doors, and about users' freedom, you won't see this as an unambiguous loss. * Often at universities, and sometimes at companies, people decide to write a program but don't think about whether to make it free software. They may not care, they may dislike thinking about the issue, they may simply not understand that there is an issue. In these cases, they will probably judge your code by its features, not by its distribution terms. If they want to use your code, and your terms say that's permitted only if their program is free, they'll say, "Ok, I'll make it free, and use your code." In this kind of case, using copyleft will produce a benefit: more freedom for the end user, who can check, rather than trust, that there are no back doors in the program. Conclusion: if you care *only* about more use of encryption, and *absolutely not* about secret back doors or users' freedom, then you would find it a better strategy not to copyleft. But if you care about encouraging use of encryption, about discouraging back doors, and about freedom for software users, copyleft (such as the GNU GPL) is a good way of promoting all of these goals together.