Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/jpmens/dv

POC: Lightweight file "signing" and verification using DNSSEC
https://github.com/jpmens/dv

Last synced: 1 day ago
JSON representation

POC: Lightweight file "signing" and verification using DNSSEC

Awesome Lists containing this project

README

        

# DV - Verify file hashes in the DNS

An experiment. [Read more](http://jpmens.net/2012/07/31/lightweight-file-signing-with-dns/).

## Examples

### Normal operation

$ ./example reference.file
filename....: reference.file
sha1........: 557db03de997c86a4a028e1ebd3a1ceb225be238
ttl.........: 70900
rdata.......: reference.file
reason......: NOERROR
file `reference.file' is valid

### Modify input file

$ echo h >> reference.file
$ ./example reference.file
filename....: reference.file
sha1........: c9477886d6d694b1b6dc17bfa04e4d81af0a1d6d
ttl.........: 0
rdata.......:
reason......: NXDOMAIN
file `reference.file' is NOT valid: NXDOMAIN

### Same data, different name

$ cp reference.file reference.bad
$ ./example reference.bad
filename....: reference.bad
sha1........: 557db03de997c86a4a028e1ebd3a1ceb225be238
ttl.........: 70856
rdata.......: reference.file
reason......: NOERROR
file `reference.bad' signature-state BAD (githash in DNS but filename not in rdata)

### Modify program

$ echo 'hello foo' >> example
$ strings - example | tail -1
hello foo

$ ./example reference.file
Program file ./example has been modified. ABORT

## Requires

* [ldns](http://www.nlnetlabs.nl/projects/ldns/)

## Credits

* Uses "SHA-1 in C", by Steve Reid (Public Domain)