This is your work, valued

Gothenburg, Sweden

Joachim Strömbergson

Elite
@secworks

IT Security expert with focus on embedded systems, Internet of Things and crypto. I develop embedded and hardware implementations of cryptographic primitives.

aes. Verilog implementation of the symmetric block cipher AES (Advanced Encryption Standard) as specified in NIST FIPS 197. This implementation supports 128 and 256 bit keys.

457

sha256. Hardware implementation of the SHA-256 cryptographic hash function

385

trng. True Random Number Generator core implemented in Verilog.

86

sha1. Verilog implementation of the SHA-1 cryptgraphic hash function

57

sha512. Verilog implementation of the SHA-512 hash function.

46

chacha. Verilog 2001 implementation of the ChaCha stream cipher.

45

blake2. Hardware implementation of the blake2 hash function

26

sha3. FIPS 202 compliant SHA-3 core in Verilog

24

blake2s. Verilog implementation of the 32-bit version of the Blake2 hash function

22

siphash. Hardware implementation of the SipHash short-inout PRF

18

modexp. Modular Exponentiation core written i Verilog. Supports key lengths between 32 and 8192 bits.

17

cmac. Implementation of the CMAC keyed hash function using AES as block cipher.

16

ChaCha20-Poly1305. Hardware implementation of the ChaCha20-Poly1305 AEAD construction

13

prince. The Prince lightweight block cipher in Verilog.

12

poly1305. Hardware implementation of the poly1305 message authentication function.

12

chacha_testvectors. Generator and Internet Draft (I-D) documenting test vectors for the stream cipher ChaCha.

12

md5. Hardware implementation of the hash function md5

12

ascon. Verilog implementation of the ASCON lightweight authenticated encryption and hashing algorithm

10

gift. Hardware implementation of the GIFT-128 lightweight block cipher

9

ed25519. ed25519 public key signature implemented in Verilog.

9

cbc. CBC block cipher mode of operation for AES.

9

6502. Verilog implementation of a MOS6502 compatible CPU core.

8

uart. A Universal asynchronous receiver/transmitter (UART) implemented in Verilog.

8

rosc_entropy. Entropy source based on jitter between multiple, digital ring oscillators.

7

aes_mask. Experimental core for performing masking of AES by generating noise.

7

figaro. Implementation of the FiGaRO TRNG for FPGAs

7

gcm. Galois Couter Mode implementation in Verilog.

7

grain128. Hardware implementation of the Grain128AEAD stream cipher

6

verilator_template. (Hopefully) simple template for a Verilator SystemVerilog project with a usable testbench

6

awesome-opensource-hardware. List of awesome open source hardware tools, generators, and reusable designs

6

snow5. Hardware implementation of the SNOW-V stream cipher.

6

curve25519. Verilog 2001 of the Curve25519 elliptic curve based function.

6

aes_6502. My attempt at making a fast AES-128 implementation on MOS 6502

6

hmac. HMAC-SHA-256 in Verilog 2001

5

avalanche_entropy. Entropy collector and provider for an external avalanche noise based entropy source.

5

xtea. Verilog implementation of the xtea block cipher

5

rc4. An experimental RC4 hardware implementation with one cycle/iteration performance.

5

salsa20. Sals20 Stream Cipher core in Verilog

4

ccm. ccm mode hardware implementation

4

view_rnd. A simple program for viewing random values as an image.

3

vga. vga

3

Practical-Cryptography-for-Developers-Book. Practical Cryptography for Developers: Hashes, MAC, Key Derivation, DHKE, Symmetric and Asymmetric Ciphers, Public Key Cryptosystems, RSA, Elliptic Curves, ECC, secp256k1, ECDH, ECIES, Digital Signatures, ECDSA, EdDSA

3

ice40_ultraplus_examples. Examples for iCE40 UltraPlus FPGA: BRAM, SPRAM, SPI, flash, DSP and a working RISC-V implementation

3

fpga_eth_filter. FPGA based Ethernet traffic filter and manipulator for the TerasIC ETHERNET-HSMC Card

3

tracegen. A tool for generating synthetic traces with side-channel leakage.

3

r5. A simple Verilog implementation of RISC-V.

3

extract_ev_data. Pure Python program used to extract EV data from Mozilla CA roots. Used to generate EV validation data in sslyze.

3

hc. Hardware implementation of the HC stream cipher.

3

bigmath. Project for testing and developing HW-implementations of integer operations. mult, mod, add, div etc.

2

pyat88ck590. Python program to talk to the Atmel AT88CK590 Crypto Authentication Evaulation Kit.

2

Tweetnacl. Python implementation of the TweetNaCl cryptograhic library

2

aead_aes_siv_cmac. Hardware implementation of the AEAD_AES_SIV_CMAC

2

chaskey. Verilog implementation of the Chaskey lightweight message authentication code (MAC) function.

2

rc4_6502. MOS 6502 implementation of the old RC4 stream cipher. Yes, it is broken.

2

fusesoc. Package manager and build abstraction tool for FPGA/ASIC development

2

aes-min. Minimal AES-128 encryption. Suitable for small embedded systems. Including an on-the-fly key schedule variant for minimal RAM usage.

2

blake3. Hardware implementation of the Blake3 hash function

2

ca_prng. Cellular Automata based PRNG

2

fltfpga. FairLight FPGA demo board based on TerasIC G5C

2

advent_of_code_2019. Solutions to Adevent of Code 2019

1