[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#854409: RFP: tang -- A server for binding data to network presence



Package: wnpp
Severity: wishlist

* Package name    : tang
  Version         : 4
  Upstream Author : Nathaniel McCallum
* URL             : https://github.com/latchset/tang
* License         : GPL
  Programming Lang: C
  Description     : A server for binding data to network presence

I'm citing from the upstrem README here:

You have some data, but you only want it to be available when the system
containing the data is on a certain, usually secure, network. This is
where Tang comes in.

First, the client gets a list of the Tang server's advertised asymmetric
keys. This can happen online by a simple HTTP GET. Alternatively, since
the keys are asymmetric, the public key list can be distributed out of
band.

Second, the client uses one of these public keys to generate a unique,
cryptographically strong encryption key. The data is then encrypted
using this key. Once the data is encrypted, the key is discarded. Some
small metadata is produced as part of this operation which the client
should store in a convenient location. This process of encrypting data
is the provisioning step.

Third, when the client is ready to access its data, it simply loads the
metadata produced in the provisioning step and performs an HTTP POST in
order to recover the encryption key. This process is the recovery step.

The client side is implemented in clevis. The only missing dependency in
Debian is jose a C-language implementation of the Javascript Object
Signing and Encryption standards.


Reply to: