Skip to content
Snippets Groups Projects
README 2.24 KiB
Newer Older
  • Learn to ignore specific revisions
  • What is Nettle? A quote from the introduction in the Nettle Manual:
    
      Nettle is a cryptographic library that is designed to fit easily in more
      or less any context: In crypto toolkits for object-oriented languages
      (C++, Python, Pike, ...), in applications like LSH or GNUPG, or even in
      kernel space. In most contexts, you need more than the basic
      cryptographic algorithms, you also need some way to keep track of available
      algorithms, their properties and variants. You often have some algorithm
      selection process, often dictated by a protocol you want to implement.
      
    
      And as the requirements of applications differ in subtle and not so
    
      subtle ways, an API that fits one application well can be a pain to use
      in a different context. And that is why there are so many different
      cryptographic libraries around.
      
      Nettle tries to avoid this problem by doing one thing, the low-level
      crypto stuff, and providing a @emph{simple} but general interface to it.
      In particular, Nettle doesn't do algorithm selection. It doesn't do
      memory allocation. It doesn't do any I/O.
      
      The idea is that one can build several application and context specific
    
      interfaces on top of Nettle, and share the code, testcases, benchmarks,
    
      documentation, etc. For this first version, the only application using
      Nettle is LSH, and it uses an object-oriented abstraction on top of the
      library. 
    
    
    Nettle is free software; you can redistribute it and/or modify it under
    the terms of the GNU General Public License as published by the Free
    Software Foundation. See the file COPYING for details. Most, but not
    all, of Nettle can also be used under the terms of the GNU Lesser
    General Public License; please read the Copyright section of the
    manual if you want to exercise this option.
    
    
    Build nettle with the usual ./configure && make && make check && make
    install. Read the manual. Mail me if you have any questions or
    suggestions.
    
    
    You can also build Nettle from cvs, using
    
      cvs -d :pserver:anonymous@cvs.lysator.liu.se:/cvsroot/lsh login
      [ empty password ]
      cvs -d :pserver:anonymous@cvs.lysator.liu.se:/cvsroot/lsh co nettle
    
    If you get it from cvs, you need to build it with
    
      ./.bootstrap && ./configure && make && make check
    
    
    Happy hacking,
    /Niels Möller <nisse@lysator.liu.se>