NAC (Name-based Access Control over NDN)
This is a refactored version of NAC by Zhiyi Zhang (email@example.com). The new NAC decouples the application scenarios and the library functionality.
The library has two main parts:
Crypto support part (./src/crypto)
NAC functionality (./src)
- Owner: generate E-KEY (producers use E-KEY to generate encrypted Content) and D-KEY (consumers use D-KEY to decrypt content)
- Producer: generate encrypted content Data packets
- Consumer: consume content Data packets
Install and Compile NAC
- Clone the github repo
git clone https://github.com/Zhiyi-Zhang/NAC.git
- Compile from source
cd NAC ./waf configure ./waf
./waf configure step, the script will check all the required dependencies.
If any dependency is missing, please install the dependency first and redo the
All the dependencies are listed here:
- BOOST (Given that ndn-cxx also depends on BOOST, thus if you successfully install the ndn-cxx, then you are all set :D )
- Install the library
Link NAC when you compile your code.
./waf install described in the last section, you can directly use pkg-config to link the NAC library.
CFLAGS+= `pkg-config --cflags nac` LDFLAGS+= `pkg-config --libs nac`
All functions in Owner, Producer, Consumer classes are well commented, so have fun :D.
You can send a email to me (firstname.lastname@example.org)