---
layout: feed_post
title: "multicrypt: a library for multi-key encryption"
slug: 619bf581c4ea2d02660ccf75
date: 2021-11-22 11:00:00
tags: feed
permalink: /feed/2021-11-23-multicrypt-a-library-for-multi-key-encryption/
feedtags:
  - Side Project
---
<br>
<br>
Recently, I've been working on adding secure vaults for user secrets to my auth server project, <a href="https://code.garrettmills.dev/Starship/CoreID" target="_blank">CoreID</a>.<br>
<br>
To implement shared-vaults, I wrote an implementation of multi-key encryption using enveloped keys. It seemed fairly useful on its own, so I pulled it out into a standalone TypeScript package called <a href="https://www.npmjs.com/package/multicrypt" target="_blank">Multicrypt</a>.<br>
<br>
Multicrypt provides a simple interface for multi-key two-way encryption for arbitrary keys and values, and makes it easy to add &amp; remove keys from the shared values.<br>
<br>
Learn more <a href="https://code.garrettmills.dev/garrettmills/multicrypt" target="_blank">here</a>.