OLD | NEW |
(Empty) | |
| 1 .\" Copyright 2009 Colin Percival |
| 2 .\" All rights reserved. |
| 3 .\" |
| 4 .\" Redistribution and use in source and binary forms, with or without |
| 5 .\" modification, are permitted provided that the following conditions |
| 6 .\" are met: |
| 7 .\" 1. Redistributions of source code must retain the above copyright |
| 8 .\" notice, this list of conditions and the following disclaimer. |
| 9 .\" 2. Redistributions in binary form must reproduce the above copyright |
| 10 .\" notice, this list of conditions and the following disclaimer in the |
| 11 .\" documentation and/or other materials provided with the distribution. |
| 12 .\" |
| 13 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND |
| 14 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
| 15 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
| 16 .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE |
| 17 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
| 18 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS |
| 19 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) |
| 20 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT |
| 21 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY |
| 22 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
| 23 .\" SUCH DAMAGE. |
| 24 .Dd May 24, 2009 |
| 25 .Dt SCRYPT 1 |
| 26 .Os |
| 27 .Sh NAME |
| 28 .Nm scrypt |
| 29 .Nd encrypt and decrypt files. |
| 30 .Sh SYNOPSIS |
| 31 .Nm |
| 32 .Brq Cm enc | Cm dec |
| 33 .Op Fl M Ar maxmem |
| 34 .Op Fl m Ar maxmemfrac |
| 35 .Op Fl t Ar maxtime |
| 36 .Ar infile |
| 37 .Op Ar outfile |
| 38 .Sh DESCRIPTION |
| 39 .Nm Cm enc |
| 40 encrypts |
| 41 .Ar infile |
| 42 and writes the result to |
| 43 .Ar outfile |
| 44 if specified, or the standard output otherwise. |
| 45 The user will be prompted to enter a passphrase (twice) to |
| 46 be used to generate a derived encryption key. |
| 47 .Pp |
| 48 .Nm Cm dec |
| 49 decrypts |
| 50 .Ar infile |
| 51 and writes the result to |
| 52 .Ar outfile |
| 53 if specified, or the standard output otherwise. |
| 54 The user will be prompted to enter the passphrase used at |
| 55 encryption time to generate the derived encryption key. |
| 56 .Sh OPTIONS |
| 57 .Bl -tag -width "-m maxmemfrac" |
| 58 .It Fl M Ar maxmem |
| 59 Use at most |
| 60 .Ar maxmem |
| 61 bytes of RAM to compute the derived encryption key. |
| 62 .It Fl m Ar maxmemfrac |
| 63 Use at most the fraction |
| 64 .Ar maxmemfrac |
| 65 of the available RAM to compute the derived encryption key. |
| 66 .It Fl t Ar maxtime |
| 67 Usr at most |
| 68 .Ar maxtime |
| 69 seconds of CPU time to compute the derived encryption key. |
| 70 .El |
| 71 In |
| 72 .Nm Cm enc , |
| 73 the memory and CPU time limits are enforced by picking |
| 74 appropriate parameters to the |
| 75 .Nm |
| 76 key derivation function. |
| 77 In |
| 78 .Nm Cm dec , |
| 79 the memory and CPU time limits are enforced by exiting with |
| 80 an error if decrypting the file would require too much memory |
| 81 or CPU time. |
| 82 .Sh EXIT STATUS |
| 83 The |
| 84 .Nm |
| 85 utility exits 0 on success, and >0 if an error occurs. |
| 86 .Pp |
| 87 Note that if the input encrypted file is corrupted, |
| 88 .Nm Cm dec |
| 89 may produce output prior to determining that the input |
| 90 was corrupt and exiting with a non-zero status; so |
| 91 users should direct the output to a safe location and |
| 92 check the exit status of |
| 93 .Nm |
| 94 before using the decrypted data. |
| 95 .Sh SEE ALSO |
| 96 .Rs |
| 97 .%A "Colin Percival" |
| 98 .%T "Stronger Key Derivation via Sequential Memory-Hard Functions" |
| 99 .%O "Presented at BSDCan'09" |
| 100 .%D "May 2009" |
| 101 .Re |
| 102 .Sh HISTORY |
| 103 The |
| 104 .Nm |
| 105 utility was written in May 2009 by Colin Percival as a |
| 106 demonstration of the |
| 107 .Nm |
| 108 key derivation function. |
| 109 The |
| 110 .Nm |
| 111 key derivation function was invented in March 2009 by Colin |
| 112 Percival in order to allow key files from the |
| 113 .Nm tarsnap |
| 114 backup system to be passphrase protected. |
OLD | NEW |