1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="expires" content="0" />
<meta http-equiv="cache-control" content="no-cache" />
<meta http-equiv="pragma" content="no-cache" />
<meta name="author" content="Dominik Reichl" />
<meta name="DC.title" content="Repairing Databases - KeePass" />
<meta name="DC.creator" content="Dominik Reichl" />
<meta name="DC.type" content="Text" />
<meta name="DC.format" content="text/html" />
<meta name="DC.language" content="en" />
<meta name="DC.rights" content="Copyright (C) 2003-2019 Dominik Reichl" />
<meta name="robots" content="index, follow" />
<meta name="flattr:id" content="42rykv" />
<title>Repairing Databases - KeePass</title>
<base target="_self" />
<link rel="stylesheet" type="text/css" href="../../default.css" />
</head>
<body>
<table class="sectionsummary"><tr><td width="68">
<img src="../images/b64x64_kcmdrkonqi.png" width="64" height="64"
class="singleimg" align="left" alt="Repair" />
</td><td valign="middle"><h1>Repairing Databases</h1><br />
KeePass can repair corrupted databases in some cases.
</td></tr></table>
<br />
<p>KeePass has quite some features to avoid database file corruption
(transacted database writing, device buffer flushing, ...). However,
data corruption can still be caused by other programs, the system or
broken storage devices (note that KeePass by default is verifying the integrity
of database files immediately after writing them, i.e. at this point of time,
KeePass guarantees file integrity; however, KeePass of course can't do anything
when the data becomes corrupted/unreadable at a later point of time).</p>
<p>In these cases, the database repair functionality might help you.
Here, KeePass tries to read as much data as possible from the corrupted file.</p>
<p><img src="../images/b16x16_warning.png" alt="Warning"
style="vertical-align: middle; height: 1em;" />
In repair mode, the integrity of the data is not checked
(in order to rescue as much data as possible).
When no integrity checks are performed, corrupted/malicious data might
be incorporated into the database.
Thus the repair functionality should only be used when there really is no other solution.
If you use it, afterwards you should thoroughly check your whole
database for corrupted/malicious data.</p>
In order to use the repair functionality in KeePass 2.x, first
create a new database file. Then, go <i>'File'</i> → <i>'Import'</i> and import
the corrupted database file, using <i>'KeePass KDBX (2.x) (Repair Mode)'</i>
as format.
<p>Anyway, if you've lost the master key for the database, the repair functionality
cannot help you. Also, if the header of the database (first few bytes) is
corrupted, you're out of luck too: the repair functionality won't be able
to restore any entries (because the header contains information required
to decrypt the database).</p>
<p>The repair functionality should be seen as last hope. Regularly making
backups of your databases is much better and has to be preferred.
Backups have <i>no</i> cryptographic security implications.
There are plugins that automate the backup process, see the
KeePass plugins page.</p>
<br />
<a name="hdr"></a>
<h2 class="sectiontitle">
<img src="../images/b16x16_kcmdrkonqi.png" class="singleimg" alt="Repair" /> File
Header/Signature</h2>
<p>If your database file has been deleted and you want to try recovering
it using a tool that supports a file header/signature detection:
below you can find the first bytes (in hex notation) with which all
database files begin.</p>
<ul class="withspc">
<li>KeePass 1.x KDB File:<br />
<code>03 D9 A2 9A 65 FB 4B B5</code></li>
<li>KeePass 2.x KDBX File:<br />
<code>03 D9 A2 9A 67 FB 4B B5</code></li>
</ul>
<p>The file header does not contain a field that specifies the length
of the file. If the length cannot be determined from the file system,
try to recover sufficiently much data (i.e. the database file data and
maybe some subsequent, unnecessary data) and use the
repair functionality above, which will simply ignore any subsequent data.</p>
</body></html>
|