Giter Site home page Giter Site logo

zig-p11's Introduction

zig-p11

This project is a Zig module for PKCS#11. PKCS#11 is wrapped with a thin layer that brings the interface closer to idiomatic Zig.

For now this exists for me to play around and learn zig while doing something more productive than just a simple "Hello, World!" application. Maybe someday this library will be usable, but probably not.

SoftHSM2

First make a place for your config to live:

mkdir -p ~/.config/softhsm2

Create a file called softhsm2.conf in ~/.config/softhsm2 with the following contents:

directories.tokendir = /some/path/for/tokens
objectstore.backend = file
log.level = DEBUG
slots.removable = false

Finally, initialize a new empty token:

softhsm2-util --init-token --slot 0 --label "zig-p11" --pin 1234 --so-pin 1234

Testing

The unit tests will use the module path /lib64/softhsm/libsofthsm.so by default. To run the unit tests with a different module path, specify the appropriate build option:

zig build test -Dpkcs11-module=/path/to/your/module

SoftHSM sends all logs to syslog. The following rsyslog config file can help when debugging:

:programname, isequal, "p11-tests"
*.* /var/log/zig-p11

zig-p11's People

Contributors

geek0x23 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.