Comment by hoppp

Comment by hoppp 4 days ago

13 replies

Its using Concrete from Zama.

I didn't like their license because it's BSD-3-Clause-Clear but then they state:

"Zama’s libraries are free to use under the BSD 3-Clause Clear license only for development, research, prototyping, and experimentation purposes. However, for any commercial use of Zama's open source code, companies must purchase Zama’s commercial patent license"

So Its not free, you need to pay for patent license, and they don't disclose how much.

I recommend OpenFHE as an alternative Free open source solution. I know its C++ and not Rust, but no patent license and it can do the same thing the blog post wants to do, it even has more features like proxy-reencryption that I think Concrete can't do.

nine_k 4 days ago

How is this "BSD-licensed but only for research" not self-contradictory?

It's like saying: "FREE* candy! (Free to look at, eating is $6.95 / pound)"

  • gus_massa 4 days ago

    They use the patent loophole. From https://www.zama.ai/post/open-source

    > If a company open sources their code under BSD3-clear, they can sell additional licenses to use the patents included in the open source code. In this case, it still isn’t the software that is sold, but rather the usage rights of the patented intellectual property it contains.

    Every day I like the Apache licence more.

  • nabla9 4 days ago

    BSD+"additional clause" is not BSD.

    Just like 3+1 is not 3.

    • eli 3 days ago

      Wouldn't the patent still be a problem with the standard BSD license? BSD would grant you license to redistribute the software but not necessarily the patent rights to use it.

      • kragen 3 days ago

        The BSD license permits redistribution and use, with or without modification. This permission is conditional on a copyright-related thing (among other things), but there's nothing suggesting that the license is limited to copyright-related rights. If someone grants you a BSD license to their software and then sues you for patent infringement for redistributing or using it, it seems like they'd be likely to lose the lawsuit because they granted you a license to do what you're doing.

        On the other hand, there's nothing explicitly stating that the permission is intended to extend to practicing the patents embodied in the software. That's just an inference any reasonable person would draw from the language of the license. It may be better to state it explicitly, as the Apache license does.

        But it may be worse, because longer licenses contain more to argue over, and once you start listing the particular causes of action you're promising not to sue for, you may miss some. Suppose your program is for chemistry and includes a list of solubility parameters for different compounds. If someone copies that, that's a potential cause of action under national laws implementing the sui generis database rights in the EU Database Protection directive: https://www.eumonitor.eu/9353000/1/j4nvk6yhcbpeywk_j9vvik7m1... which postdates the authorship of the BSD license and isn't mentioned in the Apache License 2.0 either. Plausibly the explicit listing of copyright rights and patent rights in the license will incline courts to decide that no license to database rights was intended.

        Some future legislation will presumably create new intellectual property restrictions we currently can't imagine, even if it also removes some of the ones we currently suffer from.

        (A separate issue is that the patent holder may not be the person who granted the license or indeed have contributed in any way to the creation of the BSD-licensed software, which is just as much of a problem with the Apache license.)

        Issues like these require thoughtful deliberation, and unfortunately the Reddit format adopted by HN makes that impossible—in fact, the editing and replying deadlines added for HN make it a medium even less amenable to such discussions.

  • [removed] 3 days ago
    [deleted]
Ar-Curunir 3 days ago

Concrete from Zama is a completely different algorithm to the one used in this product; the former uses the CKKS algorithm, while the latter is the BFV algorithm.

  • hoppp 3 days ago

    OpenFHE supports all major FHE schemes, including the BGV, BFV, CKKS, DM (FHEW), and CGGI (TFHE) schemes.

    Copied from openfhe.org

    Or maybe thats not what you meant...

commandersaki 4 days ago

Source? I'm unconvinced. They have been posting stuff about implementing HE primitives in Swift as of last year.

  • j2kun 3 days ago

    Zama has already hit competitors with (French) patent charges. Apple's HE implementation is in Swift and uses BFV, which is very different HE from anything Zama does and doesn't use their source.

    • commandersaki 3 days ago

      Yeah that was what I thought. I've seen their engineers also push for an employment drive for more engineers in the HE space, so I assume they're going to expand its use where applicable, building from the ground up.