Hi, I'm Joost

From 2015 to 2019, I was a PhD candidate at Radboud University in Nijmegen, The Netherlands. Under the supervision of Peter Schwabe, I worked on (software implementations of) post-quantum cryp­tog­ra­phy.

Since 2020, I've shifted focus towards technical threat intelligence, digital forensics and reverse engineering. This web page mainly serves as a collection of my academic work, as well as a place to post some blog posts and CTF write-ups.

Contact ^


Posts and write-ups ^


2024-11-18 Puzzle Hunt: Space Invaders
Recap of a puzzle hunt I build for a weekend away with friends.
2024-06-04 Switching monitor input using DDC on macOS and Windows
A short note on switching monitor input using Direct Digital Controls.
2024-04-26 Setting up SSO for MediaWiki with OIDC and kanidm
Pitfalls and configuration changes required to set up single-sign-on for MediaWiki using kanidm as an OIDC provider.
2024-04-09 Replacing a Siemens dishwasher's pump
Details on my experience replacing the pump in a Siemens SX65E009EU/65 dishwasher in order to fix its water heating.
2023-12-23 Write-up for Hex-Rays CTF #1
Write-up of my solution to Hex-Rays CTF "Free Madame De Maintenon."
2023-12-06 Write-up for Hex-Rays CTF #2
Write-up of my solution to Hex-Rays CTF "Madame De Maintenon’s Cryptographic Pursuit – Unmasking the Traitors."
2023-11-25 Write-ups for DUCTF 2023
Write-ups for the "bridgekeeper's 3rd question," "abpq-rsa-i," and "FNV" challenges of DownUnderCTF 2023.
2023-11-13 Write-ups for Flare-On 10
Work-in-progress post where I intend to collect my solutions to this year's Flare-On challenges.
2015-07-17 Traveling 12 provinces by train (NL)
This post describes an entry into a contest to travel through all Dutch provinces by train in as little time as possible.

Publications ^


Daniel J. Bernstein, Andreas Hülsing, Stefan Kölbl, Ruben Nie­der­hagen, Joost Rijneveld, and Peter Schwabe. The SPHINCS+ sig­na­ture framework. ACM SIGSAC Conference on Computer and Com­mu­ni­ca­tions Security – CCS '19, pp. 2129-2146, ACM, 2019.

Pol Van Aubel, Erik Poll, and Joost Rijneveld. Non-Repudiation and End-to-End Security for EV-charging. Innovative Smart Grid Technologies Europe – ISGT Europe 2019, IEEE, 2019.

Matthias J. Kannwischer, Joost Rijneveld, and Peter Schwabe. Faster multiplication in ℤ2m[x] on Cortex-M4 to speed up NIST PQC candidates. Applied Cryp­tog­ra­phy and Network Security – ACNS 2019, LNCS 11464, pp. 281-301, Springer, 2019.

Ebo van der Laan, Erik Poll, Joost Rijneveld, Joeri de Ruiter, Peter Schwabe, and Jan Verschuren. Is Java Card ready for hash-based signatures? Advances in Information and Computer Security – IWSEC 2018, LNCS 11049, pp. 127-142, Springer, 2018.

Ming-Shing Chen, Andreas Hülsing, Joost Rijneveld, Simona Samardjiska, and Peter Schwabe. SOFIA: MQ-based signatures in the QROM. Public-Key Cryp­tog­ra­phy – PKC 2018, LNCS 10770, pp. 3-33, Springer, 2018.

Andreas Hülsing, Joost Rijneveld, John Schanck, and Peter Schwabe. High-speed key encapsulation from NTRU. Cryptog­raphic Hardware and Embedded Systems – CHES 2017, LNCS 10529, pp. 232-252, Springer, 2017.

Ming-Shing Chen, Andreas Hülsing, Joost Rijneveld, Simona Samardjiska, and Peter Schwabe. From 5-pass MQ-based iden­ti­fi­ca­tion to MQ-based signatures. Advances in Cryptology – ASIACRYPT 2016, LNCS 10032, pp. 135-165, Springer, 2016.

Andreas Hülsing, Joost Rijneveld, and Peter Schwabe. ARMed SPHINCS – Computing a 41 KB signature in 16 KB of RAM. Public-Key Cryp­tog­ra­phy – PKC 2016, LNCS 9614, pp. 446-470, Springer, 2016.

Andreas Hülsing, Joost Rijneveld, and Fang Song. Mitigating Multi-Target Attacks in Hash-based Signatures. Public-Key Cryp­tog­ra­phy – PKC 2016, LNCS 9614, pp. 387-416, Springer, 2016.

Talks ^


Faster polynomial multiplication on Cortex-M4 to speed up NIST candidates
2019-02-08 – DS Lunch colloquium

PQM4: Implementing Post-Quantum Crypto on the Cortex M4
2018-09-13 – RIOT Summit 2018

Is Java Card ready for hash-based signatures?
2018-09-04 – IWSEC 2018

Hash-based signatures (poster)
2018-06-26 – Google Web Security Summit 2018 –

Post-quantum cryptography
2018-05-14 – Colloquium of study association Thalia

MQDSS
2018-04-12 – NIST's First PQC Standardization Conference

SOFIA: MQ-based signatures in the QROM
2018-03-28 – PKC 2018
2018-02-01 – PQCRYPTO research retreat

High-speed key encapsulation from NTRU
2017-09-26 – CHES 2017

From 5-pass MQ-based identification to MQ-based signatures
2017-03-24 – Crypto Working Group
2016-12-05 – ASIACRYPT 2016
2016-11-18 – DS Lunch colloquium

ARMed SPHINCS: Computing a 41 KB signature in 16 KB of RAM
2016-03-18 – PQCRYPTO pre-review –
2016-03-07 – PKC 2016
2016-02-05 – DS Lunch colloquium

Implementing SPHINCS with restricted memory
2015-05-28 – Master thesis presentation, Radboud University –

How the Dutch broke the Japanese Blue Code in the late 1930s
2013-07-01 – Bachelor thesis presentation, Radboud University –

Technical reports ^


Matthias J. Kannwischer, Joost Rijneveld, Peter Schwabe, and Ko Stoffelen. pqm4: Testing and Benchmarking NIST PQC on ARM Cortex-M4. Second NIST PQC Stan­dard­iza­tion Conference. 2019.

Stan­dard­iza­tion efforts ^


NTRU-HRSS-KEM. Submission to NIST's post-quantum cryp­tog­ra­phy stan­dard­iza­tion project, by Andreas Hülsing, Joost Rijneveld, John M. Schanck, and Peter Schwabe.

MQDSS. Submission to NIST's post-quantum cryp­tog­ra­phy stan­dard­iza­tion project, by Ming-Shing Chen, Andreas Hülsing, Joost Rijneveld, Simona Samardjiska, and Peter Schwabe.

SPHINCS+. Submission to NIST's post-quantum cryp­tog­ra­phy stan­dard­iza­tion project, by Daniel J. Bernstein, Christoph Dobraunig, Maria Eichlseder, Scott Fluhrer, Stefan-Lukas Gazdag, Andreas Hülsing, Panos Kampanakis, Stefan Kölbl, Tanja Lange, Martin M. Lauridsen, Florian Mendel, Ruben Niederhagen, Christian Rechberger, Joost Rijneveld, and Peter Schwabe. To be standardized in FIPS 205 SLH-DSA.

XMSS: eXtended Merkle Signature Scheme. RFC 8391, by Andreas Hülsing, Denis Butin, Stefan-Lukas Gazdag, Joost Rijneveld, and Aziz Mohaisen.

Theses ^


PhD thesis: Practical Post-Quantum Cryp­tog­ra­phy. Radboud University, November 2019.

Master thesis: Implementing SPHINCS with restricted memory. Radboud University, May 2015.

Bachelor thesis: How the Dutch broke the Japanese Blue Code in the late 1930s. Radboud University, July 2013.
Summary paper, November 2014:

Supporting software ^


All listed software is dedicated to the public domain through the CC0 1.0 Universal Public Domain Dedication waiver.

PySPX. Python bindings for SPHINCS+.

pqm4. Post-quantum cryp­tog­ra­phy library and benchmarking framework for the ARM Cortex-M4.

Java Card XMSS. Implementation of XMSSMT for the Java Card platform.

MQDSS reference code. Reference implementation of the MQDSS submission to NIST.

NTRU-HRSS-KEM reference code. Reference implementation of the NTRU-HRSS-KEM submission to NIST.

SPHINCS+ reference code. Reference implementation of the SPHINCS+ submission to NIST.

XMSS reference code. Reference implementation accompanying RFC 8391, which specifies XMSS and XMSSMT.

Bit permutations on x86 with AVX2. Simulator for a subset of x86 with AVX2 to construct efficient permutations on bit sequences.

Getting started with STM32. Wrapper around libopencm3 and various code examples that demonstrate the basics of programming for STMicroelectronics' discovery boards.

ChaCha permutation for Cortex M. High-speed implementation of ChaCha for ARM Cortex-M3 and Cortex-M4.

SPHINCS-256 in Python. Implementation of SPHINCS-256 in Python, optimized for flexibility (not speed).

Teaching ^


All links to Radboud University's internal pages were removed.

TA for Cryptographic Engineering [NWI-IMC039]
Spring 2016, Spring 2017, Spring 2018

TA for Security, seminars [NWI-IPC021]
Fall 2015, Fall 2016, Fall 2017

Python course for highschool students
Fall 2014, Fall 2015

TA for Security, grading [NWI-IPC021]
Fall 2013, Fall 2014

TA for Programming for Science students [NWI-MOL088 / -MOL098]
Fall 2012, Fall 2013

TA for Object oriented programming [NWI-IPI005]
Spring 2012, Spring 2013, Spring 2014