• [kde]
  • [thc]
  • [cigala]
  • [seselab]
  • [sensi]
  • [fugitive]
  • [myutils]
  • Talk is cheap. Show me the code.

    KDE

    I try to find some time to contribute to KDE and in particular to Kate, KDE's advanced text editor. In addition to other contributions such as a few bug fixes and improvements, I'm developing a plugin for Kate to support keyboard macros.

    THC

    THC is a Python package that provides a practical framework for cost-effective trustable homomorphic computation. It leverages the modular extension technique, which was developed to protect embedded cryptographic implementations against fault injection attacks, to ensure the integrity of a computation delegated to an untrusted third-party.

    Cigala

    Cigala is an easy to use CMS written using PHP and SQLite. It is very easy to install on any hosting platform that offers PHP and has SQLite support (that is virtually all of them) as it consists in a single PHP source file, which is used only for editing websites. Indeed, Cigala generates static HTML pages which can then be served very efficiently from anywhere.

    SeseLab

    SeseLab is a software platform allowing students to experiment with passive and active side-channel attacks without the necessary physical equipment (i.e., in a classical computer room).

    sensi

    The sensi (SEN Security Inspector) toolbox is composed of the tools I develop as part of my research on applying formal methods to cryptosystems' implementation security.
    See the individual tool pages:

    fugitive

    fugitive is a blog engine running on top of git using its hooks to generate static html pages. Moreover, everything that can be done using git, is (in particular for all the metadata). Using fugitive is no different from using git, as it transparently integrates the git workflow. It has been developped as a blog engine but could also be used in any project to automatically generate the documentation while keeping it source controlled alongside the rest of the code.
    In its hooks, fugitive uses only standard UNIX® tools that are included in the GNU core-utils package, plus sh as script interpreter (yes, not even Bash, just plain sh). That's it.
    For the same reason this is awesome, it can be extremely slow: there are no data structures in sh, which means that it uses temporary files even for lists, thus performing a lot of I/O; and also starting a new process is necessary for each command of the script. Despite this, fugitive seems to have a few dozen users, and I sometimes even receives pull requests ☺.

    outline-presentation-mode

    outline-presentation-mode is a minor mode for making presentations with outline-mode files in Emacs.

    myutils

    A collection of scripts that are part of my daily workflow and were clean and useful enough for me to share them.
    It inludes a todo manager, a calendar, a quick note taking script, a fuzzy-matching window switcher, utilities for managing GPG encrypted files, and more.