Paperkey een redelijke manier is om een lange termijn backup van OpenPGP (GnuPG, PGP, etc) te bereiken toetsen is om ze af te drukken op papier. Vanwege metadata en redundantie, OpenPGP geheime sleutels zijn aanzienlijk groter dan alleen de "geheime bits". In feite, de geheime sleutel bevat een volledige kopie van de publieke sleutel.
Sinds de publieke sleutel in het algemeen niet nodig om een back-up op deze manier (de meeste mensen hebben veel kopieën van het op verschillende keyservers, webpagina's, etc), maar het extraheren van de geheime onderdelen kan een groot voordeel zijn.
Paperkey haalt net die geheime bytes en drukt ze af. Te reconstrueren, u opnieuw in te voeren die bytes (of met de hand of via OCR), en paperkey kunt ze gebruiken om uw bestaande publieke sleutel te zetten in een geheime sleutel.
Papier? Serieus?
Het doel met papier is niet veilige opslag. Er zijn talloze manieren om veilig iets op te slaan. Een papieren back-up is ook geen vervanging voor de gebruikelijke machine leesbare (tape, CD-R, DVD-R, etc), back-ups, maar eerder als een if-alles-anders-faalt methode van het herstellen van een sleutel. Het merendeel van de opslagmedia in gebruik geen bijzonder goede lange termijn (gemeten in jaren tot decennia) bewaren van gegevens. Indien en wanneer de CD-R en / of tape cassette en / of USB-stick en / of harde schijf de geheime sleutel wordt opgeslagen op onbruikbaar, de papieren exemplaar kan worden gebruikt om de geheime sleutel te herstellen.
Wat paperkey doet
Vanwege metadata en redundantie, OpenPGP geheime sleutels zijn aanzienlijk groter dan alleen de "geheime bits". In feite, de geheime sleutel bevat een volledige kopie van de publieke sleutel. Aangezien de publieke sleutel algemeen niet te worden escrowed (de meeste mensen hebben veel kopieën van het op verschillende keyservers, webpagina's, etc.), alleen extraheren van de geheime delen kunnen een groot voordeel zijn.
Paperkey haalt net die geheime bytes en drukt ze af. Te reconstrueren, u opnieuw in te voeren die bytes (of met de hand of via OCR) en paperkey kunt ze gebruiken om uw bestaande publieke sleutel te zetten in een geheime sleutel.
Bijvoorbeeld, de reguliere DSA + Elgamal geheime sleutel ik net getest komt uit op 1281 bytes. Het geheim delen van dat (plus enkele kleine pakketstructuur) komen slechts 149 bytes. Het is een stuk makkelijker om opnieuw in te voeren 149 bytes correct.
Worden geen CD-R's verondersteld om een lange tijd duren?
Ze zijn zeker geadverteerd (ik heb een aantal mooie ongelooflijke claims van 100 jaar of meer gezien), maar in de praktijk het niet echt uit te werken op die manier. De productie van de media, de burn kwaliteit, de brander kwaliteit, de opslag, etc, hebben allemaal een aanzienlijke impact hebben op hoe lang een optische schijf zal duren. Sommige tests laten zien dat je geluk tot 10 jaar krijgen bent.
Voor papier daarentegen, conclusie en duurt 100 jaar is ook maar enigszins indrukwekkend. Papier van hoge kwaliteit met een goede inkt duurt regelmatig vele honderden jaren zelfs onder minder optimale omstandigheden.
Een ander voordeel is dat de inkt op papier leesbaar is door de mens. Niet alle back-up methoden zal 50 jaar later leesbaar zijn, dus zelfs als je de back-up, kun je niet gemakkelijk kopen een drive om het te lezen. Ik betwijfel of dit zal op elk moment snel gebeuren met CD-R want er zijn net zo veel van hen die er zijn, maar de opslag-industrie is bezaaid met oude inmiddels dode manieren van opslaan van gegevens.
Voorbeelden:
Neem de geheime sleutel in key.gpg en het genereren van een tekstbestand te-printed.txt dat de geheime gegevens bevat:
$ Paperkey --secret-key my-secret-key.gpg --output to-be-printed.txt
Neem de geheime sleutel data in mijn-key-tekst-file.txt en deze combineren met mijn-openbare-key.gpg aan mijn geheime-key.gpg reconstrueren:
$ Paperkey --pubring mijn-openbare-key.gpg --secrets mijn-key-text-file.txt --output my-secret-key.gpg
Als --output niet is opgegeven, wordt de uitgang gaat naar stdout. Als --secret-key niet is opgegeven, wordt de data gelezen van stdin zodat je dingen kunt doen, zoals:
$ Gpg --export-secret-key mijn-sleutel | paperkey --output mijn-key-text-file.txt
Enkele andere nuttige opties zijn:
--output-type
kan "base16" of "raw". "Base16" is voor mensen leesbare en "ruwe" is handig als u wilt dat de output naar een ander programma zoals een barcode generator voorbij (hoewel er rekening mee dat barcodes hebben veel van de nadelen hierboven besproken).
--input-type
hetzelfde als --output-type, maar voor het herstel kant van de dingen. Standaard is het type ingang automatisch wordt afgeleid uit de invoergegevens.
--output-width
wordt de breedte van base16-uitgang
--ignore-crc-fout
laat paperkey te blijven wanneer het reconstrueren zelfs als het data corruptie in de input detecteert.
--verbose (of -v)
zijn spraakzaam over wat er gebeurt. Herhaal dit meerdere keren voor meer breedsprakigheid.
Veiligheid
Merk op dat paperkey niet aan de veiligheidseisen van het opslaan van een geheime sleutel te veranderen. Als uw sleutel heeft een passphrase op het (dat wil zeggen is versleuteld), wordt het papieren exemplaar op dezelfde wijze gecodeerd. Als uw sleutel heeft geen wachtwoord, noch doet het papieren exemplaar. Wat ook het wachtwoord (of het ontbreken daarvan) was op de oorspronkelijke geheime sleutel zal hetzelfde op de gereconstrueerde sleutel
Wat is nieuw in deze release:.
- Dit versiob voegt ondersteuning toe voor OpenPGP elliptische curve toetsen (ECDH en ECDSA), zoals gespecificeerd in RFC 6637.
- Het maakt gebruik van een minimale OpenPGP packet-codering.
- Dit heeft geen invloed op de functionaliteit, maar maakt het waarschijnlijker dat een bepaalde sleutel byte-voor-byte is gelijk aan met dezelfde toets na het doornemen paperkey.
Wat is nieuw in versie 1.2:.
- Output-bestanden worden nu gegenereerd met meer restrictieve permissies
- Minor documentatie wijzigingen werden aangebracht.
- gnulib was vernieuwd.
Wat is nieuw in versie 1.1:.
- Een kleine bugfix voor Windows-platforms
- De instructies over hoe je een sleutel te herstellen zonder de paperkey programma zijn een beetje duidelijker.
Wat is nieuw in versie 1.0:.
- Minor documentatie en bouwen veranderingen werden aangebracht
- Het programma kan nu worden kruis opgesteld voor Win32.
- Een gnulib refresh werd gedaan.
Reacties niet gevonden