1File::KDBX::Constants(3U)ser Contributed Perl DocumentatiFoinle::KDBX::Constants(3)
2
3
4
6 File::KDBX::Constants - All the KDBX-related constants you could ever
7 want
8
10 version 0.906
11
13 use File::KDBX::Constants qw(:all);
14
15 say KDBX_VERSION_4_1;
16
18 This module provides importable constants related to KDBX. Constants
19 can be imported individually or in groups (by tag). The available tags
20 are:
21
22 • ":magic"
23
24 • ":version"
25
26 • ":header"
27
28 • ":compression"
29
30 • ":cipher"
31
32 • ":random_stream"
33
34 • ":kdf"
35
36 • ":variant_map"
37
38 • ":inner_header"
39
40 • ":key_file"
41
42 • ":history"
43
44 • ":icon"
45
46 • ":bool"
47
48 • ":time"
49
50 • ":yubikey"
51
52 • ":all" - All of the above
53
54 View the source of this module to see the constant values (but really
55 you shouldn't care).
56
58 to_header_constant
59 $constant = to_header_constant($number);
60 $constant = to_header_constant($string);
61
62 Get a header constant from an integer or string value.
63
64 to_compression_constant
65 $constant = to_compression_constant($number);
66 $constant = to_compression_constant($string);
67
68 Get a compression constant from an integer or string value.
69
70 to_inner_header_constant
71 $constant = to_inner_header_constant($number);
72 $constant = to_inner_header_constant($string);
73
74 Get an inner header constant from an integer or string value.
75
76 to_icon_constant
77 $constant = to_icon_constant($number);
78 $constant = to_icon_constant($string);
79
80 Get an icon constant from an integer or string value.
81
83 :magic
84 Constants related to identifying the file types:
85
86 "KDBX_SIG1"
87 "KDBX_SIG1_FIRST_BYTE"
88 "KDBX_SIG2_1"
89 "KDBX_SIG2_2"
90
91 :version
92 Constants related to identifying the format version of a file:
93
94 "KDBX_VERSION_2_0"
95 "KDBX_VERSION_3_0"
96 "KDBX_VERSION_3_1"
97 "KDBX_VERSION_4_0"
98 "KDBX_VERSION_4_1"
99 "KDBX_VERSION_OLDEST"
100 "KDBX_VERSION_LATEST"
101 "KDBX_VERSION_MAJOR_MASK"
102 "KDBX_VERSION_MINOR_MASK"
103
104 :header
105 Constants related to parsing and generating KDBX file headers:
106
107 "HEADER_END"
108 "HEADER_COMMENT"
109 "HEADER_CIPHER_ID"
110 "HEADER_COMPRESSION_FLAGS"
111 "HEADER_MASTER_SEED"
112 "HEADER_TRANSFORM_SEED"
113 "HEADER_TRANSFORM_ROUNDS"
114 "HEADER_ENCRYPTION_IV"
115 "HEADER_INNER_RANDOM_STREAM_KEY"
116 "HEADER_STREAM_START_BYTES"
117 "HEADER_INNER_RANDOM_STREAM_ID"
118 "HEADER_KDF_PARAMETERS"
119 "HEADER_PUBLIC_CUSTOM_DATA"
120
121 :compression
122 Constants related to identifying the compression state of a file:
123
124 "COMPRESSION_NONE"
125 "COMPRESSION_GZIP"
126
127 :cipher
128 Constants related to ciphers:
129
130 "CIPHER_UUID_AES128"
131 "CIPHER_UUID_AES256"
132 "CIPHER_UUID_CHACHA20"
133 "CIPHER_UUID_SALSA20"
134 "CIPHER_UUID_SERPENT"
135 "CIPHER_UUID_TWOFISH"
136
137 :random_stream
138 Constants related to memory protection stream ciphers:
139
140 "STREAM_ID_RC4_VARIANT"
141 This is insecure and not implemented.
142
143 "STREAM_ID_SALSA20"
144 "STREAM_ID_CHACHA20"
145 "STREAM_SALSA20_IV"
146
147 :kdf
148 Constants related to key derivation functions and configuration:
149
150 "KDF_UUID_AES"
151 "KDF_UUID_AES_CHALLENGE_RESPONSE"
152 This is what KeePassXC calls "KDF_AES_KDBX4".
153
154 "KDF_UUID_ARGON2D"
155 "KDF_UUID_ARGON2ID"
156 "KDF_PARAM_UUID"
157 "KDF_PARAM_AES_ROUNDS"
158 "KDF_PARAM_AES_SEED"
159 "KDF_PARAM_ARGON2_SALT"
160 "KDF_PARAM_ARGON2_PARALLELISM"
161 "KDF_PARAM_ARGON2_MEMORY"
162 "KDF_PARAM_ARGON2_ITERATIONS"
163 "KDF_PARAM_ARGON2_VERSION"
164 "KDF_PARAM_ARGON2_SECRET"
165 "KDF_PARAM_ARGON2_ASSOCDATA"
166 "KDF_DEFAULT_AES_ROUNDS"
167 "KDF_DEFAULT_ARGON2_ITERATIONS"
168 "KDF_DEFAULT_ARGON2_MEMORY"
169 "KDF_DEFAULT_ARGON2_PARALLELISM"
170 "KDF_DEFAULT_ARGON2_VERSION"
171
172 :variant_map
173 Constants related to parsing and generating KDBX4 variant maps:
174
175 "VMAP_VERSION"
176 "VMAP_VERSION_MAJOR_MASK"
177 "VMAP_TYPE_END"
178 "VMAP_TYPE_UINT32"
179 "VMAP_TYPE_UINT64"
180 "VMAP_TYPE_BOOL"
181 "VMAP_TYPE_INT32"
182 "VMAP_TYPE_INT64"
183 "VMAP_TYPE_STRING"
184 "VMAP_TYPE_BYTEARRAY"
185
186 :inner_header
187 Constants related to parsing and generating KDBX4 inner headers:
188
189 "INNER_HEADER_END"
190 "INNER_HEADER_INNER_RANDOM_STREAM_ID"
191 "INNER_HEADER_INNER_RANDOM_STREAM_KEY"
192 "INNER_HEADER_BINARY"
193 "INNER_HEADER_BINARY_FLAG_PROTECT"
194
195 :key_file
196 Constants related to identifying key file types:
197
198 "KEY_FILE_TYPE_BINARY"
199 "KEY_FILE_TYPE_HASHED"
200 "KEY_FILE_TYPE_HEX"
201 "KEY_FILE_TYPE_XML"
202
203 :history
204 Constants for history-related default values:
205
206 "HISTORY_DEFAULT_MAX_AGE"
207 "HISTORY_DEFAULT_MAX_ITEMS"
208 "HISTORY_DEFAULT_MAX_SIZE"
209
210 :iteration
211 Constants for searching algorithms.
212
213 "ITERATION_IDS" - Iterative deepening search
214 "ITERATION_BFS" - Breadth-first search
215 "ITERATION_DFS" - Depth-first search
216
217 :icon
218 Constants for default icons used by KeePass password safe
219 implementations:
220
221 "ICON_PASSWORD"
222 "ICON_PACKAGE_NETWORK"
223 "ICON_MESSAGEBOX_WARNING"
224 "ICON_SERVER"
225 "ICON_KLIPPER"
226 "ICON_EDU_LANGUAGES"
227 "ICON_KCMDF"
228 "ICON_KATE"
229 "ICON_SOCKET"
230 "ICON_IDENTITY"
231 "ICON_KONTACT"
232 "ICON_CAMERA"
233 "ICON_IRKICKFLASH"
234 "ICON_KGPG_KEY3"
235 "ICON_LAPTOP_POWER"
236 "ICON_SCANNER"
237 "ICON_MOZILLA_FIREBIRD"
238 "ICON_CDROM_UNMOUNT"
239 "ICON_DISPLAY"
240 "ICON_MAIL_GENERIC"
241 "ICON_MISC"
242 "ICON_KORGANIZER"
243 "ICON_ASCII"
244 "ICON_ICONS"
245 "ICON_CONNECT_ESTABLISHED"
246 "ICON_FOLDER_MAIL"
247 "ICON_FILESAVE"
248 "ICON_NFS_UNMOUNT"
249 "ICON_MESSAGE"
250 "ICON_KGPG_TERM"
251 "ICON_KONSOLE"
252 "ICON_FILEPRINT"
253 "ICON_FSVIEW"
254 "ICON_RUN"
255 "ICON_CONFIGURE"
256 "ICON_KRFB"
257 "ICON_ARK"
258 "ICON_KPERCENTAGE"
259 "ICON_SAMBA_UNMOUNT"
260 "ICON_HISTORY"
261 "ICON_MAIL_FIND"
262 "ICON_VECTORGFX"
263 "ICON_KCMMEMORY"
264 "ICON_TRASHCAN_FULL"
265 "ICON_KNOTES"
266 "ICON_CANCEL"
267 "ICON_HELP"
268 "ICON_KPACKAGE"
269 "ICON_FOLDER"
270 "ICON_FOLDER_BLUE_OPEN"
271 "ICON_FOLDER_TAR"
272 "ICON_DECRYPTED"
273 "ICON_ENCRYPTED"
274 "ICON_APPLY"
275 "ICON_SIGNATURE"
276 "ICON_THUMBNAIL"
277 "ICON_KADDRESSBOOK"
278 "ICON_VIEW_TEXT"
279 "ICON_KGPG"
280 "ICON_PACKAGE_DEVELOPMENT"
281 "ICON_KFM_HOME"
282 "ICON_SERVICES"
283 "ICON_TUX"
284 "ICON_FEATHER"
285 "ICON_APPLE"
286 "ICON_W"
287 "ICON_MONEY"
288 "ICON_CERTIFICATE"
289 "ICON_SMARTPHONE"
290
291 :bool
292 Boolean values:
293
294 "FALSE"
295 "TRUE"
296
297 :time
298 Constants related to time:
299
300 "TIME_SECONDS_AD1_TO_UNIX_EPOCH"
301
302 :yubikey
303 Constants related to working with YubiKeys:
304
305 "YUBICO_VID"
306 "YUBIKEY_PID"
307 "NEO_OTP_PID"
308 "NEO_OTP_CCID_PID"
309 "NEO_CCID_PID"
310 "NEO_U2F_PID"
311 "NEO_OTP_U2F_PID"
312 "NEO_U2F_CCID_PID"
313 "NEO_OTP_U2F_CCID_PID"
314 "YK4_OTP_PID"
315 "YK4_U2F_PID"
316 "YK4_OTP_U2F_PID"
317 "YK4_CCID_PID"
318 "YK4_OTP_CCID_PID"
319 "YK4_U2F_CCID_PID"
320 "YK4_OTP_U2F_CCID_PID"
321 "PLUS_U2F_OTP_PID"
322 "ONLYKEY_VID"
323 "ONLYKEY_PID"
324 "YK_EUSBERR"
325 "YK_EWRONGSIZ"
326 "YK_EWRITEERR"
327 "YK_ETIMEOUT"
328 "YK_ENOKEY"
329 "YK_EFIRMWARE"
330 "YK_ENOMEM"
331 "YK_ENOSTATUS"
332 "YK_ENOTYETIMPL"
333 "YK_ECHECKSUM"
334 "YK_EWOULDBLOCK"
335 "YK_EINVALIDCMD"
336 "YK_EMORETHANONE"
337 "YK_ENODATA"
338 "CONFIG1_VALID"
339 "CONFIG2_VALID"
340 "CONFIG1_TOUCH"
341 "CONFIG2_TOUCH"
342 "CONFIG_LED_INV"
343 "CONFIG_STATUS_MASK"
344
346 Please report any bugs or feature requests on the bugtracker website
347 <https://github.com/chazmcgarvey/File-KDBX/issues>
348
349 When submitting a bug or request, please include a test-file or a patch
350 to an existing test-file that illustrates the bug or desired feature.
351
353 Charles McGarvey <ccm@cpan.org>
354
356 This software is copyright (c) 2022 by Charles McGarvey.
357
358 This is free software; you can redistribute it and/or modify it under
359 the same terms as the Perl 5 programming language system itself.
360
361
362
363perl v5.36.1 2023-09-27 File::KDBX::Constants(3)