emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: NaCl support for Emacs


From: Ted Zlatanov
Subject: Re: NaCl support for Emacs
Date: Mon, 09 Jan 2012 11:53:14 -0500
User-agent: Gnus/5.110018 (No Gnus v0.18) Emacs/24.0.90 (gnu/linux)

On Mon, 09 Jan 2012 10:30:23 -0500 Stefan Monnier <address@hidden> wrote: 

>> I'm interested in bringing in support for the NaCl cryptographic library
>> for Emacs, after 24.1 is out.  There is info on NaCl here:

SM> While it might be an interesting feature to provide for future Elisp
SM> packages, its immediate usefulness is much less obvious

Many places in the Emacs core (C and ELisp) could use a fast easy
encryption library for arbitrary data that supports public and
secret-key encryption, in addition to EPA/EPG that I already mentioned.
In-memory storage of secrets (auth-source.el and many places in Gnus)
and emacsclient-style RPC control of Emacs come to mind immediately.

The biggest advantage over GnuTLS in my opinion is the much simpler
interface.  There are less than 30 functions, as opposed to hundreds in
GnuTLS, and they are modeless which makes the API easy to learn and use.

SM> so the kind of compile-time linking model we use for things like
SM> libgnutls would not be appropriate (e.g. Debian wouldn't want to add
SM> nacl as a dependency if it's not actually used).

SM> OTOH that might be a good motivation to add support for dynamic loading
SM> of extension libraries.

It would be cool if I could put out a GNU ELPA package that provided the
NaCl library hookup, but NaCl is not written to be dynamically loaded.
NaCl is all C/C++, just 160K in a compressed tarball and 300K as a
static libnacl.a file.  The code is available through a GitHub clone,
see https://github.com/jeremywohl/nacl.git or you can get the tarball
from http://hyperelliptic.org/nacl/nacl-20110221.tar.bz2

I don't know how much work it would be to adapt NaCl through a custom
dynamic library or if it's better to make it part of the Emacs C tree.
Let me know what you think.

Ted




reply via email to

[Prev in Thread] Current Thread [Next in Thread]