NAME
File::KDBX::Constants - All the KDBX-related constants you could ever want
VERSION
version 0.906
SYNOPSIS
use File::KDBX::Constants qw(:all);
say KDBX_VERSION_4_1;
DESCRIPTION
This module provides importable constants related to KDBX. Constants can be imported individually or in groups (by tag). The available tags are:
:all
- All of the above
View the source of this module to see the constant values (but really you shouldn't care).
FUNCTIONS
to_header_constant
$constant = to_header_constant($number);
$constant = to_header_constant($string);
Get a header constant from an integer or string value.
to_compression_constant
$constant = to_compression_constant($number);
$constant = to_compression_constant($string);
Get a compression constant from an integer or string value.
to_inner_header_constant
$constant = to_inner_header_constant($number);
$constant = to_inner_header_constant($string);
Get an inner header constant from an integer or string value.
to_icon_constant
$constant = to_icon_constant($number);
$constant = to_icon_constant($string);
Get an icon constant from an integer or string value.
CONSTANTS
:magic
Constants related to identifying the file types:
KDBX_SIG1
KDBX_SIG1_FIRST_BYTE
KDBX_SIG2_1
KDBX_SIG2_2
:version
Constants related to identifying the format version of a file:
KDBX_VERSION_2_0
KDBX_VERSION_3_0
KDBX_VERSION_3_1
KDBX_VERSION_4_0
KDBX_VERSION_4_1
KDBX_VERSION_OLDEST
KDBX_VERSION_LATEST
KDBX_VERSION_MAJOR_MASK
KDBX_VERSION_MINOR_MASK
:header
Constants related to parsing and generating KDBX file headers:
HEADER_END
HEADER_COMMENT
HEADER_CIPHER_ID
HEADER_COMPRESSION_FLAGS
HEADER_MASTER_SEED
HEADER_TRANSFORM_SEED
HEADER_TRANSFORM_ROUNDS
HEADER_ENCRYPTION_IV
HEADER_INNER_RANDOM_STREAM_KEY
HEADER_STREAM_START_BYTES
HEADER_INNER_RANDOM_STREAM_ID
HEADER_KDF_PARAMETERS
HEADER_PUBLIC_CUSTOM_DATA
:compression
Constants related to identifying the compression state of a file:
COMPRESSION_NONE
COMPRESSION_GZIP
:cipher
Constants related to ciphers:
CIPHER_UUID_AES128
CIPHER_UUID_AES256
CIPHER_UUID_CHACHA20
CIPHER_UUID_SALSA20
CIPHER_UUID_SERPENT
CIPHER_UUID_TWOFISH
:random_stream
Constants related to memory protection stream ciphers:
STREAM_ID_RC4_VARIANT
-
This is insecure and not implemented.
STREAM_ID_SALSA20
STREAM_ID_CHACHA20
STREAM_SALSA20_IV
:kdf
Constants related to key derivation functions and configuration:
KDF_UUID_AES
KDF_UUID_AES_CHALLENGE_RESPONSE
-
This is what KeePassXC calls
KDF_AES_KDBX4
. KDF_UUID_ARGON2D
KDF_UUID_ARGON2ID
KDF_PARAM_UUID
KDF_PARAM_AES_ROUNDS
KDF_PARAM_AES_SEED
KDF_PARAM_ARGON2_SALT
KDF_PARAM_ARGON2_PARALLELISM
KDF_PARAM_ARGON2_MEMORY
KDF_PARAM_ARGON2_ITERATIONS
KDF_PARAM_ARGON2_VERSION
KDF_PARAM_ARGON2_SECRET
KDF_PARAM_ARGON2_ASSOCDATA
KDF_DEFAULT_AES_ROUNDS
KDF_DEFAULT_ARGON2_ITERATIONS
KDF_DEFAULT_ARGON2_MEMORY
KDF_DEFAULT_ARGON2_PARALLELISM
KDF_DEFAULT_ARGON2_VERSION
:variant_map
Constants related to parsing and generating KDBX4 variant maps:
VMAP_VERSION
VMAP_VERSION_MAJOR_MASK
VMAP_TYPE_END
VMAP_TYPE_UINT32
VMAP_TYPE_UINT64
VMAP_TYPE_BOOL
VMAP_TYPE_INT32
VMAP_TYPE_INT64
VMAP_TYPE_STRING
VMAP_TYPE_BYTEARRAY
:inner_header
Constants related to parsing and generating KDBX4 inner headers:
INNER_HEADER_END
INNER_HEADER_INNER_RANDOM_STREAM_ID
INNER_HEADER_INNER_RANDOM_STREAM_KEY
INNER_HEADER_BINARY
INNER_HEADER_BINARY_FLAG_PROTECT
:key_file
Constants related to identifying key file types:
KEY_FILE_TYPE_BINARY
KEY_FILE_TYPE_HASHED
KEY_FILE_TYPE_HEX
KEY_FILE_TYPE_XML
:history
Constants for history-related default values:
HISTORY_DEFAULT_MAX_AGE
HISTORY_DEFAULT_MAX_ITEMS
HISTORY_DEFAULT_MAX_SIZE
:iteration
Constants for searching algorithms.
ITERATION_IDS
- Iterative deepening searchITERATION_BFS
- Breadth-first searchITERATION_DFS
- Depth-first search
:icon
Constants for default icons used by KeePass password safe implementations:
ICON_PASSWORD
ICON_PACKAGE_NETWORK
ICON_MESSAGEBOX_WARNING
ICON_SERVER
ICON_KLIPPER
ICON_EDU_LANGUAGES
ICON_KCMDF
ICON_KATE
ICON_SOCKET
ICON_IDENTITY
ICON_KONTACT
ICON_CAMERA
ICON_IRKICKFLASH
ICON_KGPG_KEY3
ICON_LAPTOP_POWER
ICON_SCANNER
ICON_MOZILLA_FIREBIRD
ICON_CDROM_UNMOUNT
ICON_DISPLAY
ICON_MAIL_GENERIC
ICON_MISC
ICON_KORGANIZER
ICON_ASCII
ICON_ICONS
ICON_CONNECT_ESTABLISHED
ICON_FOLDER_MAIL
ICON_FILESAVE
ICON_NFS_UNMOUNT
ICON_MESSAGE
ICON_KGPG_TERM
ICON_KONSOLE
ICON_FILEPRINT
ICON_FSVIEW
ICON_RUN
ICON_CONFIGURE
ICON_KRFB
ICON_ARK
ICON_KPERCENTAGE
ICON_SAMBA_UNMOUNT
ICON_HISTORY
ICON_MAIL_FIND
ICON_VECTORGFX
ICON_KCMMEMORY
ICON_TRASHCAN_FULL
ICON_KNOTES
ICON_CANCEL
ICON_HELP
ICON_KPACKAGE
ICON_FOLDER
ICON_FOLDER_BLUE_OPEN
ICON_FOLDER_TAR
ICON_DECRYPTED
ICON_ENCRYPTED
ICON_APPLY
ICON_SIGNATURE
ICON_THUMBNAIL
ICON_KADDRESSBOOK
ICON_VIEW_TEXT
ICON_KGPG
ICON_PACKAGE_DEVELOPMENT
ICON_KFM_HOME
ICON_SERVICES
ICON_TUX
ICON_FEATHER
ICON_APPLE
ICON_W
ICON_MONEY
ICON_CERTIFICATE
ICON_SMARTPHONE
:bool
Boolean values:
FALSE
TRUE
:time
Constants related to time:
TIME_SECONDS_AD1_TO_UNIX_EPOCH
:yubikey
Constants related to working with YubiKeys:
YUBICO_VID
YUBIKEY_PID
NEO_OTP_PID
NEO_OTP_CCID_PID
NEO_CCID_PID
NEO_U2F_PID
NEO_OTP_U2F_PID
NEO_U2F_CCID_PID
NEO_OTP_U2F_CCID_PID
YK4_OTP_PID
YK4_U2F_PID
YK4_OTP_U2F_PID
YK4_CCID_PID
YK4_OTP_CCID_PID
YK4_U2F_CCID_PID
YK4_OTP_U2F_CCID_PID
PLUS_U2F_OTP_PID
ONLYKEY_VID
ONLYKEY_PID
YK_EUSBERR
YK_EWRONGSIZ
YK_EWRITEERR
YK_ETIMEOUT
YK_ENOKEY
YK_EFIRMWARE
YK_ENOMEM
YK_ENOSTATUS
YK_ENOTYETIMPL
YK_ECHECKSUM
YK_EWOULDBLOCK
YK_EINVALIDCMD
YK_EMORETHANONE
YK_ENODATA
CONFIG1_VALID
CONFIG2_VALID
CONFIG1_TOUCH
CONFIG2_TOUCH
CONFIG_LED_INV
CONFIG_STATUS_MASK
BUGS
Please report any bugs or feature requests on the bugtracker website https://github.com/chazmcgarvey/File-KDBX/issues
When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature.
AUTHOR
Charles McGarvey <ccm@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2022 by Charles McGarvey.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.