diff --git a/.gitignore b/.gitignore index c96688e9f..903910a37 100644 --- a/.gitignore +++ b/.gitignore @@ -10,4 +10,5 @@ release*/ *.swp .DS_Store -.version \ No newline at end of file +.version +\.scannerwork/ diff --git a/CHANGELOG b/CHANGELOG index 9eafaa6d8..20545c443 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,20 @@ +2.3.4 (2018-08-21) +========================= + +- Show all URL schemes in entry view [#1768] +- Disable merge when database is locked [#1975] +- Fix intermittent crashes with favorite icon downloads [#1980] +- Provide potential crash warning to Qt 5.5.x users [#2211] +- Disable apply button when creating new entry/group to prevent data loss [#2204] +- Allow for 12 hour timeout to lock idle database [#2173] +- Multiple SSH Agent fixes [#1981, #2117] +- Multiple Browser Integration enhancements [#1993, #2003, #2055, #2116, #2159, #2174, #2185] +- Fix browser proxy application not closing properly [#2142] +- Add real names and Patreon supporters to about dialog [#2214] +- Add settings button to toolbar, Donate button, and Report a Bug button to help menu [#2214] +- Enhancements to release-tool to appsign intermediate build products [#2101] + + 2.3.3 (2018-05-09) ========================= diff --git a/CMakeLists.txt b/CMakeLists.txt index f2ad273d7..70f14795c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -70,7 +70,7 @@ set(CMAKE_AUTOUIC ON) set(KEEPASSXC_VERSION_MAJOR "2") set(KEEPASSXC_VERSION_MINOR "3") -set(KEEPASSXC_VERSION_PATCH "3") +set(KEEPASSXC_VERSION_PATCH "4") set(KEEPASSXC_VERSION "${KEEPASSXC_VERSION_MAJOR}.${KEEPASSXC_VERSION_MINOR}.${KEEPASSXC_VERSION_PATCH}") set(KEEPASSXC_BUILD_TYPE "Snapshot" CACHE STRING "Set KeePassXC build type to distinguish between stable releases and snapshots") diff --git a/INSTALL.md b/INSTALL.md index 86048b501..a581d1ac7 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -38,6 +38,7 @@ Prepare the Building Environment Build Steps =========== +We recommend using the release tool to perform builds, please read up-to-date instructions [on our wiki](https://github.com/keepassxreboot/keepassxc/wiki/Building-KeePassXC#building-using-the-release-tool). To compile from source, open a **Terminal (on Linux/MacOS)** or a **MSYS2-MinGW shell (on Windows)**
**Note:** on Windows make sure you are using a **MINGW shell** by checking the label before the current path @@ -68,6 +69,9 @@ cd build cmake -DWITH_TESTS=OFF ...and other options - see below... make ``` + +If you are on Windows, you may have to add ```-G "MSYS Makefiles"``` to the beginning of the cmake command. See the [Windows Build Instructions](https://github.com/keepassxreboot/keepassxc/wiki/Building-KeePassXC#windows) for more information. + These steps place the compiled KeePassXC binary inside the `./build/src/` directory. (Note the cmake notes/options below.) diff --git a/ci/snapcraft/Dockerfile b/ci/snapcraft/Dockerfile new file mode 100644 index 000000000..37b3742dd --- /dev/null +++ b/ci/snapcraft/Dockerfile @@ -0,0 +1,51 @@ +# KeePassXC Linux Release Build Dockerfile +# Copyright (C) 2017-2018 KeePassXC team +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 2 or (at your option) +# version 3 of the License. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +FROM snapcore/snapcraft + +ENV REBUILD_COUNTER=1 + +ENV QT5_VERSION=510 +ENV QT5_PPA_VERSION=5.10.1 + +RUN set -x \ + && apt update -y \ + && apt -y install software-properties-common + +RUN set -x \ + && add-apt-repository ppa:phoerious/keepassxc + +RUN set -x \ + && apt update -y \ + && apt-get -y --no-install-recommends install \ + build-essential \ + cmake \ + libgcrypt20-18-dev \ + libargon2-0-dev \ + libsodium-dev \ + qtbase5-dev \ + qttools5-dev \ + qttools5-dev-tools \ + zlib1g-dev \ + libyubikey-dev \ + libykpers-1-dev \ + libxi-dev \ + libxtst-dev \ + xvfb + +RUN set -x \ + && apt-get autoremove --purge + diff --git a/cmake/CodeCoverage.cmake b/cmake/CodeCoverage.cmake index a0b0ef526..d10f79723 100644 --- a/cmake/CodeCoverage.cmake +++ b/cmake/CodeCoverage.cmake @@ -131,6 +131,10 @@ FUNCTION(SETUP_TARGET_FOR_COVERAGE _targetname _testrunner _outputname) ENDIF() # NOT GENHTML_PATH SET(coverage_info "${CMAKE_BINARY_DIR}/${_outputname}.info") + IF(MINGW) + # Replace C:/ with /C for MINGW + STRING(REGEX REPLACE "^([a-zA-Z]):" "/\\1" coverage_info ${coverage_info}) + ENDIF() SET(coverage_cleaned "${coverage_info}.cleaned") SEPARATE_ARGUMENTS(test_command UNIX_COMMAND "${_testrunner}") diff --git a/release-tool b/release-tool index 74f205900..5dfdad434 100755 --- a/release-tool +++ b/release-tool @@ -35,12 +35,11 @@ TAG_NAME="" DOCKER_IMAGE="" DOCKER_CONTAINER_NAME="keepassxc-build-container" CMAKE_OPTIONS="" +CPACK_GENERATORS="NSIS;ZIP" COMPILER="g++" MAKE_OPTIONS="-j8" BUILD_PLUGINS="all" INSTALL_PREFIX="/usr/local" -BUILD_SOURCE_TARBALL=true -BUILD_SNAPSHOT=false ORIG_BRANCH="" ORIG_CWD="$(pwd)" @@ -80,7 +79,7 @@ Options: -v, --version Release version number or name (required) -a, --app-name Application name (default: '${APP_NAME}') -s, --source-dir Source directory (default: '${SRC_DIR}') - -g, --gpg-key GPG key used to sign the merge commit and release tag, + -k, --key GPG key used to sign the merge commit and release tag, leave empty to let Git choose your default key (default: '${GPG_GIT_KEY}') -r, --release-branch Source release branch to merge from (default: 'release/VERSION') @@ -106,9 +105,14 @@ Options: This option has no effect if --build is not set. --container-name Docker container name (default: '${DOCKER_CONTAINER_NAME}') The container must not exist already + --snapcraft Create and use docker image to build snapcraft distribution. + This option has no effect if --docker-image is not set. + --appsign Perform platform specific App Signing before packaging + -k, --key Specify the App Signing Key/Identity -c, --cmake-options Additional CMake options for compiling the sources --compiler Compiler to use (default: '${COMPILER}') -m, --make-options Make options for compiling sources (default: '${MAKE_OPTIONS}') + -g, --generators Additional CPack generators (default: '${CPACK_GENERATORS}') -i, --install-prefix Install prefix (default: '${INSTALL_PREFIX}') -p, --plugins Space-separated list of plugins to build (default: ${BUILD_PLUGINS}) @@ -123,7 +127,7 @@ Sign previously compiled release packages with GPG Options: -f, --files Files to sign (required) - -g, --gpg-key GPG key used to sign the files (default: '${GPG_KEY}') + -k, --key GPG key used to sign the files (default: '${GPG_KEY}') -h, --help Show this help EOF elif [ "appsign" == "$cmd" ]; then @@ -133,8 +137,7 @@ Sign binaries with code signing certificates on Windows and macOS Options: -f, --files Files to sign (required) - -k, --signtool-key Key to be used with signtool (required for Windows EXE) - -i, --identity Apple Developer ID to be used with codesign (required for macOS APP and DMG) + -k, --key Signing Key or Apple Developer ID -h, --help Show this help EOF fi @@ -434,7 +437,7 @@ merge() { SRC_DIR="$2" shift ;; - -g|--gpg-key) + -k|--key|-g|--gpg-key) GPG_GIT_KEY="$2" shift ;; @@ -511,7 +514,14 @@ merge() { # ----------------------------------------------------------------------- # build command # ----------------------------------------------------------------------- -build() { +build() { + local build_source_tarball=true + local build_snapshot=false + local build_snapcraft=false + local build_generators="" + local build_appsign=false + local build_key="" + while [ $# -ge 1 ]; do local arg="$1" case "$arg" in @@ -538,10 +548,20 @@ build() { -d|--docker-image) DOCKER_IMAGE="$2" shift ;; + + --appsign) + build_appsign=true ;; + + -k|--key) + build_key="$2" + shift ;; --container-name) DOCKER_CONTAINER_NAME="$2" shift ;; + + --snapcraft) + build_snapcraft=true ;; -c|--cmake-options) CMAKE_OPTIONS="$2" @@ -554,6 +574,10 @@ build() { -m|--make-options) MAKE_OPTIONS="$2" shift ;; + + -g|--generators) + build_generators="$2" + shift ;; -i|--install-prefix) INSTALL_PREFIX="$2" @@ -564,10 +588,10 @@ build() { shift ;; -n|--no-source-tarball) - BUILD_SOURCE_TARBALL=false ;; + build_source_tarball=false ;; --snapshot) - BUILD_SNAPSHOT=true ;; + build_snapshot=true ;; -h|--help) printUsage "build" @@ -585,7 +609,7 @@ build() { OUTPUT_DIR="$(realpath "$OUTPUT_DIR")" - if ${BUILD_SNAPSHOT}; then + if ${build_snapshot}; then TAG_NAME="HEAD" local branch=`git rev-parse --abbrev-ref HEAD` logInfo "Using current branch ${branch} to build..." @@ -611,7 +635,7 @@ build() { exitError "Failed to create output directory!" fi - if ${BUILD_SOURCE_TARBALL}; then + if ${build_source_tarball}; then logInfo "Creating source tarball..." local app_name_lower="$(echo "$APP_NAME" | tr '[:upper:]' '[:lower:]')" local prefix="${app_name_lower}-${RELEASE_NAME}" @@ -619,7 +643,7 @@ build() { git archive --format=tar "$TAG_NAME" --prefix="${prefix}/" --output="${OUTPUT_DIR}/${tarball_name}" - if ! ${BUILD_SNAPSHOT}; then + if ! ${build_snapshot}; then # add .version file to tar mkdir "${prefix}" echo -n ${RELEASE_NAME} > "${prefix}/.version" @@ -631,7 +655,7 @@ build() { xz -6 "${OUTPUT_DIR}/${tarball_name}" fi - if ! ${BUILD_SNAPSHOT} && [ -e "${OUTPUT_DIR}/build-release" ]; then + if ! ${build_snapshot} && [ -e "${OUTPUT_DIR}/build-release" ]; then logInfo "Cleaning existing build directory..." rm -r "${OUTPUT_DIR}/build-release" 2> /dev/null if [ $? -ne 0 ]; then @@ -674,22 +698,38 @@ build() { # Building on Windows with Msys2 logInfo "Configuring build..." cmake -DCMAKE_BUILD_TYPE=Release -DWITH_TESTS=Off -G"MSYS Makefiles" \ - -DCMAKE_INSTALL_PREFIX="${INSTALL_PREFIX}" $CMAKE_OPTIONS "$SRC_DIR" + -DCMAKE_INSTALL_PREFIX="${INSTALL_PREFIX}" ${CMAKE_OPTIONS} "$SRC_DIR" logInfo "Compiling and packaging sources..." mingw32-make ${MAKE_OPTIONS} preinstall + + # Appsign the executables if desired + if [[ ${build_appsign} && ! -z ${build_key} ]]; then + logInfo "Signing executable files" + appsign "-f" `find src | grep '\.exe'` "-k" "${build_key}" + fi + # Call cpack directly instead of calling make package. # This is important because we want to build the MSI when making a # release. - cpack -G "NSIS;ZIP;${CPACK_GENERATORS}" + cpack -G "${CPACK_GENERATORS};${build_generators}" + + # Inject the portable config into the zip build and rename + for filename in ${APP_NAME}-*.zip; do + logInfo "Creating portable zip file" + local folder=`echo ${filename} | sed -r 's/(.*)\.zip/\1/'` + python -c 'import zipfile,sys ; zipfile.ZipFile(sys.argv[1],"a").write(sys.argv[2],sys.argv[3])' \ + ${filename} ${SRC_DIR}/share/keepassxc.ini ${folder}/keepassxc.ini + mv ${filename} ${folder}-portable.zip + done - mv "./${APP_NAME}-"*.* ../ + mv "${APP_NAME}-"*.* ../ else mkdir -p "${OUTPUT_DIR}/bin-release" # Building on Linux without Docker container logInfo "Configuring build..." - cmake -DCMAKE_BUILD_TYPE=Release -DWITH_TESTS=Off $CMAKE_OPTIONS \ + cmake -DCMAKE_BUILD_TYPE=Release -DWITH_TESTS=Off ${CMAKE_OPTIONS} \ -DCMAKE_INSTALL_PREFIX="${INSTALL_PREFIX}" \ -DKEEPASSXC_DIST_TYPE=AppImage "$SRC_DIR" @@ -703,22 +743,34 @@ build() { ${SRC_DIR}/AppImage-Recipe.sh "$APP_NAME" "$RELEASE_NAME" fi else - mkdir -p "${OUTPUT_DIR}/bin-release" - - logInfo "Launching Docker container to compile sources..." - - docker run --name "$DOCKER_CONTAINER_NAME" --rm \ - --cap-add SYS_ADMIN --security-opt apparmor:unconfined --device /dev/fuse \ - -e "CC=${CC}" -e "CXX=${CXX}" \ - -v "$(realpath "$SRC_DIR"):/keepassxc/src:ro" \ - -v "$(realpath "$OUTPUT_DIR"):/keepassxc/out:rw" \ - "$DOCKER_IMAGE" \ - bash -c "cd /keepassxc/out/build-release && \ - cmake -DCMAKE_BUILD_TYPE=Release -DWITH_TESTS=Off $CMAKE_OPTIONS \ - -DCMAKE_INSTALL_PREFIX=\"${INSTALL_PREFIX}\" \ - -DKEEPASSXC_DIST_TYPE=AppImage /keepassxc/src && \ - make $MAKE_OPTIONS && make DESTDIR=/keepassxc/out/bin-release install/strip && \ - /keepassxc/src/AppImage-Recipe.sh "$APP_NAME" "$RELEASE_NAME"" + if [ build_snapcraft ]; then + logInfo "Building snapcraft docker image..." + + sudo docker image build -t "$DOCKER_IMAGE" "$(realpath "$SRC_DIR")/ci/snapcraft" + + logInfo "Launching Docker contain to compile snapcraft..." + + sudo docker run --name "$DOCKER_CONTAINER_NAME" --rm \ + -v "$(realpath "$SRC_DIR"):/keepassxc" -w "/keepassxc" \ + "$DOCKER_IMAGE" snapcraft + else + mkdir -p "${OUTPUT_DIR}/bin-release" + + logInfo "Launching Docker container to compile sources..." + + docker run --name "$DOCKER_CONTAINER_NAME" --rm \ + --cap-add SYS_ADMIN --security-opt apparmor:unconfined --device /dev/fuse \ + -e "CC=${CC}" -e "CXX=${CXX}" \ + -v "$(realpath "$SRC_DIR"):/keepassxc/src:ro" \ + -v "$(realpath "$OUTPUT_DIR"):/keepassxc/out:rw" \ + "$DOCKER_IMAGE" \ + bash -c "cd /keepassxc/out/build-release && \ + cmake -DCMAKE_BUILD_TYPE=Release -DWITH_TESTS=Off $CMAKE_OPTIONS \ + -DCMAKE_INSTALL_PREFIX=\"${INSTALL_PREFIX}\" \ + -DKEEPASSXC_DIST_TYPE=AppImage /keepassxc/src && \ + make $MAKE_OPTIONS && make DESTDIR=/keepassxc/out/bin-release install/strip && \ + /keepassxc/src/AppImage-Recipe.sh "$APP_NAME" "$RELEASE_NAME"" + fi if [ 0 -ne $? ]; then exitError "Docker build failed!" @@ -748,7 +800,7 @@ gpgsign() { shift done ;; - -g|--gpg-key) + -k|--key|-g|--gpg-key) GPG_KEY="$2" shift ;; @@ -798,8 +850,7 @@ gpgsign() { # ----------------------------------------------------------------------- appsign() { local sign_files=() - local signtool_key - local codesign_identity + local key while [ $# -ge 1 ]; do local arg="$1" @@ -810,12 +861,8 @@ appsign() { shift done ;; - -k|--signtool-key) - signtool_key="$2" - shift ;; - - -i|--identity) - codesign_identity="$2" + -k|--key|-i|--identity) + key="$2" shift ;; -h|--help) @@ -830,6 +877,12 @@ appsign() { shift done + if [ -z "${key}" ]; then + logError "Missing arguments, --key is required!\n" + printUsage "appsign" + exit 1 + fi + if [ -z "${sign_files}" ]; then logError "Missing arguments, --files is required!\n" printUsage "appsign" @@ -843,12 +896,6 @@ appsign() { done if [ "$(uname -s)" == "Darwin" ]; then - if [ -z "${codesign_identity}" ]; then - logError "Missing arguments, --identity is required on macOS!\n" - printUsage "appsign" - exit 1 - fi - checkCodesignCommandExists local orig_dir="$(pwd)" @@ -868,7 +915,7 @@ appsign() { fi logInfo "Signing app using codesign..." - codesign --sign "${codesign_identity}" --verbose --deep ./app/KeePassXC.app + codesign --sign "${key}" --verbose --deep ./app/KeePassXC.app if [ 0 -ne $? ]; then cd "${orig_dir}" @@ -893,15 +940,9 @@ appsign() { done elif [ "$(uname -o)" == "Msys" ]; then - if [ -z "${signtool_key}" ]; then - logError "Missing arguments, --signtool-key is required on Windows!\n" - printUsage "appsign" - exit 1 - fi - checkOsslsigncodeCommandExists - if [[ ! -f "${signtool_key}" ]]; then + if [[ ! -f "${key}" ]]; then exitError "Key file was not found!" fi @@ -912,7 +953,7 @@ appsign() { if [[ ${f: -4} == ".exe" ]]; then logInfo "Signing file '${f}' using osslsigncode..." # output a signed exe; we have to use a different name due to osslsigntool limitations - osslsigncode sign -pkcs12 "${signtool_key}" -pass "${password}" -n "KeePassXC" \ + osslsigncode sign -pkcs12 "${key}" -pass "${password}" -n "KeePassXC" \ -t "http://timestamp.comodoca.com/authenticode" -in "${f}" -out "${f}.signed" if [ 0 -ne $? ]; then @@ -928,7 +969,7 @@ appsign() { # osslsigncode does not succeed at signing MSI files at this time... logInfo "Signing file '${f}' using Microsoft signtool..." - signtool sign -f "${signtool_key}" -p "${password}" -d "KeePassXC" \ + signtool sign -f "${key}" -p "${password}" -d "KeePassXC" \ -t "http://timestamp.comodoca.com/authenticode" "${f}" if [ 0 -ne $? ]; then diff --git a/share/about-contributors.html b/share/about-contributors.html new file mode 100644 index 000000000..77ceadb5f --- /dev/null +++ b/share/about-contributors.html @@ -0,0 +1,54 @@ +

VIP Patreon Supporters:

+ +

Notable Code Contributions:

+ +

Patreon Supporters:

+ +

Translations:

+ diff --git a/share/about.html b/share/about.html new file mode 100644 index 000000000..3d0e8974d --- /dev/null +++ b/share/about.html @@ -0,0 +1,14 @@ +

Website: https://keepassxc.org

+

Report bugs at: https://github.com

+

KeePassXC is distributed under the terms of the GNU General Public License (GPL) version 2 or (at your option) version 3.

+

Project Maintainers:

+ +

Special thanks from the KeePassXC team go to debfx for creating the original KeePassX.

\ No newline at end of file diff --git a/share/linux/org.keepassxc.KeePassXC.appdata.xml b/share/linux/org.keepassxc.KeePassXC.appdata.xml index 2f1747949..554bcdefa 100644 --- a/share/linux/org.keepassxc.KeePassXC.appdata.xml +++ b/share/linux/org.keepassxc.KeePassXC.appdata.xml @@ -50,6 +50,24 @@ + + +
    +
  • Show all URL schemes in entry view [#1768]
  • +
  • Disable merge when database is locked [#1975]
  • +
  • Fix intermittent crashes with favorite icon downloads [#1980]
  • +
  • Provide potential crash warning to Qt 5.5.x users [#2211]
  • +
  • Disable apply button when creating new entry/group to prevent data loss [#2204]
  • +
  • Allow for 12 hour timeout to lock idle database [#2173]
  • +
  • Multiple SSH Agent fixes [#1981, #2117]
  • +
  • Multiple Browser Integration enhancements [#1993, #2003, #2055, #2116, #2159, #2174, #2185]
  • +
  • Fix browser proxy application not closing properly [#2142]
  • +
  • Add real names and Patreon supporters to about dialog [#2214]
  • +
  • Add settings button to toolbar, Donate button, and Report a Bug button to help menu [#2214]
  • +
  • Enhancements to release-tool to appsign intermediate build products [#2101]
  • +
+
+
    diff --git a/share/translations/keepassx_ar.ts b/share/translations/keepassx_ar.ts index 3a0ca692d..d532bd15a 100644 --- a/share/translations/keepassx_ar.ts +++ b/share/translations/keepassx_ar.ts @@ -605,7 +605,7 @@ Please consider generating a new key file. Fields are separated by - + تُفصل الحقول بواسطة Comments start with @@ -1949,11 +1949,11 @@ This may cause the affected plugins to malfunction. Fit to window - + ﻻئم النافذة Fit to contents - + ﻻئم المحتوى Reset to defaults @@ -3891,7 +3891,7 @@ Please unlock the selected database or choose another one which is unlocked.SettingsWidgetSecurity Timeouts - + مهلة نفاد الوقت Clear clipboard after diff --git a/share/translations/keepassx_bn.ts b/share/translations/keepassx_bn.ts index 344e6864f..1996cb58d 100644 --- a/share/translations/keepassx_bn.ts +++ b/share/translations/keepassx_bn.ts @@ -27,7 +27,7 @@ Debug Info - + ডিবাগ তথ্য Include the following information whenever you report a bug: @@ -2127,7 +2127,7 @@ This may cause the affected plugins to malfunction. Failed to open buffer for KDF parameters in header - + শুরুতে KDF প্যারামিটারের জন্য বাফার আরাম্ভ করতে ব্যার্থ হয়েছে Unsupported key derivation function (KDF) or invalid parameters @@ -2135,19 +2135,19 @@ This may cause the affected plugins to malfunction. Legacy header fields found in KDBX4 file. - + KDBX4 ফাইলে লেগাসি হেডার ফিল্ড পাওয়া গেছে Invalid inner header id size - + ভেতরের শিরোনামের আইডি সাইজ সঠিক নয় Invalid inner header field length - + শিরোনামের ভেতরের আইডি পরিমান সঠিক নয় Invalid inner header binary size - + শিরোনামের ভেতরের আইডি বাইনারি সাইজ সঠিক নয় Unsupported KeePass variant map version. @@ -2275,7 +2275,7 @@ This may cause the affected plugins to malfunction. Not a KeePass database. - + KeePass ডাটাবেস নয় The selected file is an old KeePass 1 database (.kdb). @@ -2432,7 +2432,7 @@ This is a one-way migration. You won't be able to open the imported databas Not a KeePass database. - + KeePass ডাটাবেস নয় Unsupported encryption algorithm. @@ -2846,19 +2846,19 @@ This is a one-way migration. You won't be able to open the imported databas read-only - + শুধুমাত্র পাঠযোগ্য Settings - + সেটিংস Toggle window - + উইন্ডো পরিবর্তন Quit KeePassXC - + KeePassXC বন্ধ করুন KeePass 2 Database @@ -2874,7 +2874,7 @@ This is a one-way migration. You won't be able to open the imported databas Save repaired database - + মেরামতকৃত ডাটাবেস সংরক্ষন করুন Writing the database failed. @@ -2882,13 +2882,15 @@ This is a one-way migration. You won't be able to open the imported databas Please touch the button on your YubiKey! - + দয়া করে আপনার YubiKey! বাটন স্পর্শ করুন WARNING: You are using an unstable build of KeePassXC! There is a high risk of corruption, maintain a backup of your databases. This version is not meant for production use. - + সতর্কীকরণ: আপনি একটি আনস্টেবল ভার্সনের KeePassXC ব্যবহার করছেন। +সমস্যা হবার উচ্চ ঝুঁকি আছে, আপনার ডাটাবেস ব্যাকআপ রাখুন। +-এই সংস্করণ নিয়মিত ব্যবহারের জন্য বানানো হয়নি। @@ -2907,7 +2909,7 @@ This version is not meant for production use. Key file way too small. - + কী ফাইল খুবই ছোট Key file magic header id invalid @@ -2915,11 +2917,11 @@ This version is not meant for production use. Found zero keys - + কোন কী খুজে পাওয়া যায়নি Failed to read public key. - + পাবলিক কী পড়তে ব্যর্থ হয়েছে। Corrupted key file, reading private key failed @@ -3196,7 +3198,7 @@ Using default port 19455. Accept - + গ্রহণ Close @@ -3204,7 +3206,7 @@ Using default port 19455. Apply - + প্রয়োগ করুন Entropy: %1 bit @@ -3217,22 +3219,22 @@ Using default port 19455. Poor Password quality - + নিম্নমানের Weak Password quality - + দূর্বল Good Password quality - + ভাল Excellent Password quality - + খুব ভাল diff --git a/share/translations/keepassx_cs.ts b/share/translations/keepassx_cs.ts index bd9cbc2b2..5520774ab 100644 --- a/share/translations/keepassx_cs.ts +++ b/share/translations/keepassx_cs.ts @@ -448,7 +448,7 @@ Buď jí odemkněte, nebo vyberte jinou, odemčenou. Successfully removed %n encryption key(s) from KeePassXC settings. - %n šifrovací klíč úspěšně odebrán z nastavení KeePassXC.%n šifrovací klíče úspěšně odebrány z nastavení KeePassXC.%n šifrovacích klíčů úspěšně odebráno z nastavení KeePassXC. + %n šifrovací klíč úspěšně odebrán z nastavení KeePassXC.%n šifrovací klíče úspěšně odebrány z nastavení KeePassXC.%n šifrovacích klíčů úspěšně odebráno z nastavení KeePassXC.%n šifrovacích klíčů úspěšně odebráno z nastavení KeePassXC. Removing stored permissions… @@ -464,7 +464,7 @@ Buď jí odemkněte, nebo vyberte jinou, odemčenou. Successfully removed permissions from %n entry(s). - Z %n položky úspěšně odebrána oprávnění.Ze %n položek úspěšně odebrána oprávnění.Z %n položek úspěšně odebrána oprávnění. + Z %n položky úspěšně odebrána oprávnění.Ze %n položek úspěšně odebrána oprávnění.Z %n položek úspěšně odebrána oprávnění.Z %n položek úspěšně odebrána oprávnění. KeePassXC: No entry with permissions found! @@ -692,15 +692,15 @@ Zvažte vytvoření nového souboru s klíčem. CsvParserModel %n byte(s), - %n bajt%n bajty%n bajtů + %n bajt%n bajty%n bajtů%n bajtů %n row(s), - %n řádek%n řádky%n řádků + %n řádek%n řádky%n řádků%n řádků %n column(s) - %n sloupec%n sloupce%n sloupců + %n sloupec%n sloupce%n sloupců%n sloupců @@ -859,12 +859,12 @@ Pokud tento počet ponecháte, může být velmi snadné prolomit šifrování v MiB Abbreviation for Mebibytes (KDF settings) - MiB MiB MiB + MiB MiB MiB MiB thread(s) Threads for parallel execution (KDF settings) - vláknovláknavláken + vláknovláknavlákenvláken @@ -1121,7 +1121,7 @@ Vypnout bezpečné ukládání a zkusit to znovu? Do you really want to move %n entry(s) to the recycle bin? - Opravdu přesunout %n záznam do Koše? ()Opravdu přesunout %n záznamy do Koše? ()Opravdu přesunout %n záznamů do Koše? + Opravdu přesunout %n záznam do Koše? ()Opravdu přesunout %n záznamy do Koše? ()Opravdu přesunout %n záznamů do Koše?Opravdu přesunout %n záznamů do Koše? Execute command? @@ -1369,11 +1369,11 @@ Přejete si je sloučit? %n week(s) - %n týden%n týdny%n týdnů + %n týden%n týdny%n týdnů%n týdnů %n month(s) - %n měsíc%n měsíce%n měsíců + %n měsíc%n měsíce%n měsíců%n měsíců 1 year @@ -1817,7 +1817,7 @@ Dotčený zásuvný modul to může rozbít. Are you sure you want to remove %n attachment(s)? - Opravdu chcete odebrat %n přílohu?Opravdu chcete odebrat %n přílohy?Opravdu chcete odebrat %n příloh? + Opravdu chcete odebrat %n přílohu?Opravdu chcete odebrat %n přílohy?Opravdu chcete odebrat %n příloh?Opravdu chcete odebrat %n příloh? Confirm Remove @@ -3719,7 +3719,7 @@ Buď jí odemkněte, nebo vyberte jinou, odemčenou. Successfully removed %n encryption-key(s) from KeePassX/Http Settings. - Úspěšně odebrán %n šifrovací klíč z nastavení KeePassX/Http.Úspěšně odebrány %n šifrovací klíče z nastavení KeePassX/Http.Úspěšně odebráno %n šifrovacích klíčů z nastavení KeePassX/Http. + Úspěšně odebrán %n šifrovací klíč z nastavení KeePassX/Http.Úspěšně odebrány %n šifrovací klíče z nastavení KeePassX/Http.Úspěšně odebráno %n šifrovacích klíčů z nastavení KeePassX/Http.Úspěšně odebráno %n šifrovacích klíčů z nastavení KeePassX/Http. KeePassXC: No keys found @@ -3751,7 +3751,7 @@ Buď jí odemkněte, nebo vyberte jinou, odemčenou. Successfully removed permissions from %n entries. - Úspěšně odebrána oprávnění z %n položky.Úspěšně odebrána oprávnění ze %n položek.Úspěšně odebrána oprávnění ze %n položek. + Úspěšně odebrána oprávnění z %n položky.Úspěšně odebrána oprávnění ze %n položek.Úspěšně odebrána oprávnění ze %n položek.Úspěšně odebrána oprávnění ze %n položek. KeePassXC: No entry with permissions found! diff --git a/share/translations/keepassx_de.ts b/share/translations/keepassx_de.ts index 47665d9c0..927f2878e 100644 --- a/share/translations/keepassx_de.ts +++ b/share/translations/keepassx_de.ts @@ -1803,7 +1803,7 @@ Dies kann dazu führen, dass die jeweiligen Plugins nicht mehr richtig funktioni Open - Offen + Öffnen Save @@ -2776,7 +2776,7 @@ Dieser Vorgang ist nur in eine Richtung möglich. Die importierte Datenbank kann &Lock databases - Datenbank &sperren + Datenbanken &sperren &Title diff --git a/share/translations/keepassx_en.ts b/share/translations/keepassx_en.ts index 2666d8e91..a0e1b99b2 100644 --- a/share/translations/keepassx_en.ts +++ b/share/translations/keepassx_en.ts @@ -373,6 +373,10 @@ Please select whether you want to allow access. We're sorry, but KeePassXC-Browser is not supported for Snap releases at the moment. + + KeePassXC-Browser is needed for the browser integration to work. <br />Download it for %1 and %2. + + BrowserService @@ -2738,10 +2742,6 @@ This is a one-way migration. You won't be able to open the imported databas &Clone entry - - &Find - - Copy &username @@ -2892,6 +2892,19 @@ There is a high risk of corruption, maintain a backup of your databases. This version is not meant for production use. + + &Donate + + + + Report a &bug + + + + WARNING: Your Qt version may cause KeePassXC to crash with an On-Screen Keyboard! +We recommend you use the AppImage available on our downloads page. + + OpenSSHKey diff --git a/share/translations/keepassx_fr.ts b/share/translations/keepassx_fr.ts index da1b14eda..202d6c7b8 100644 --- a/share/translations/keepassx_fr.ts +++ b/share/translations/keepassx_fr.ts @@ -11,11 +11,11 @@ Report bugs at: <a href="https://github.com/keepassxreboot/keepassxc/issues" style="text-decoration: underline;">https://github.com</a> - Signaler les bugs sur <a href="https://github.com/keepassxreboot/keepassxc/issues" style="text-decoration: underline;">https://github.com</a> + Signalez les bogues sur <a href="https://github.com/keepassxreboot/keepassxc/issues" style="text-decoration: underline;">https://github.com</a> KeePassXC is distributed under the terms of the GNU General Public License (GPL) version 2 or (at your option) version 3. - KeePassXC est distribué suivant les termes de la GNU Licence Publique Générale (GNU GPL) version 2 ou version 3 de la licence (à votre choix). + KeePassXC est distribué suivant les conditions de la licence publique générale GNU (GNU GPL) version 2 ou version 3 de la licence (facultativement). Contributors @@ -31,11 +31,11 @@ Include the following information whenever you report a bug: - Inclure les informations suivantes lorsque vous signalez un bug : + Inclure les informations suivantes chaque fois que vous signalez un bogue : Copy to clipboard - Copier dans le presse-papier + Copier dans le presse-papiers Version %1 @@ -53,7 +53,7 @@ Libraries: - Bibliothèques : + Bibliothèques : Operating system: %1 @@ -73,7 +73,7 @@ Noyau : %3 %4 Special thanks from the KeePassXC team go to debfx for creating the original KeePassX. - L’équipe de KeePassXC remercie tout particulièrement debfx pour la conception de KeePassX. + L’équipe de KeePassXC remercie tout particulièrement debfx pour la création du KeePassX original. Build Type: %1 @@ -86,11 +86,11 @@ Noyau : %3 %4 AccessControlDialog KeePassXC HTTP Confirm Access - Accès KeePassXC HTTP confirmé + Confirmer l’accès à KeePassXC HTTP Remember this decision - Se souvenir de ce choix + Mémoriser ce choix Allow @@ -130,19 +130,19 @@ Veuillez indiquer si vous souhaitez autoriser l’accès. The Syntax of your Auto-Type statement is incorrect! - La syntaxe de votre séquence de saisie automatique est incorrecte. + La syntaxe de votre instruction de saisie automatique est incorrecte ! This Auto-Type command contains a very long delay. Do you really want to proceed? - Cette commande de saisie automatique contient un délai très long. Voulez-vous continuer ? + Cette commande de saisie automatique contient un délai très long. Voulez-vous vraiment continuer ? This Auto-Type command contains very slow key presses. Do you really want to proceed? - Cette commande de saisie automatique contient des touches très lentes. Voulez-vous continuer ? + Cette commande de saisie automatique contient des touches très lentes. Voulez-vous vraiment continuer ? This Auto-Type command contains arguments which are repeated very often. Do you really want to proceed? - Cette commande de saisie automatique contient des arguments souvent répétés. Voulez-vous continuer ? + Cette commande de saisie automatique contient des arguments répétés très souvent. Voulez-vous vraiment continuer ? @@ -194,11 +194,11 @@ Veuillez indiquer si vous souhaitez autoriser l’accès. BrowserAccessControlDialog KeePassXC-Browser Confirm Access - Confirmer l’accès pour KeePassXC-Browser + Confirmer l’accès à KeePassXC-Browser Remember this decision - Se souvenir de ce choix + Mémoriser ce choix Allow @@ -211,7 +211,7 @@ Veuillez indiquer si vous souhaitez autoriser l’accès. %1 has requested access to passwords for the following item(s). Please select whether you want to allow access. - %1 a demandé l’accès aux mots de passe pour le ou les élément(s) suivant(s). + %1 a demandé l’accès aux mots de passe pour les éléments suivants. Veuillez indiquer si vous souhaitez autoriser l’accès. @@ -227,7 +227,7 @@ Veuillez indiquer si vous souhaitez autoriser l’accès. Enable KeepassXC browser integration - Activer l’intégration de KeePassXC au sein du navigateur web + Activer l’intégration de KeePassXC aux navigateurs General @@ -235,11 +235,11 @@ Veuillez indiquer si vous souhaitez autoriser l’accès. Enable integration for these browsers: - Activer l’intégration avec ces navigateurs web : + Activer l’intégration pour ces navigateurs : &Google Chrome - &Google Chrome + Chrome de &Google &Firefox @@ -272,7 +272,7 @@ Veuillez indiquer si vous souhaitez autoriser l’accès. Only returns the best matches for a specific URL instead of all entries for the whole domain. - Renvoie seulement les meilleures correspondances pour une URL spécifique au lieu des entrées pour tout le domaine. + Ne renvoie que les meilleures correspondances pour une URL précise au lieu de toutes les entrées du domaine. &Return only best-matching credentials @@ -290,7 +290,7 @@ Veuillez indiquer si vous souhaitez autoriser l’accès. &Disconnect all browsers - &Déconnecter tous les navigateurs web + &Déconnecter tous les navigateurs Forget all remembered &permissions @@ -329,11 +329,11 @@ Veuillez indiquer si vous souhaitez autoriser l’accès. Updates KeePassXC or keepassxc-proxy binary path automatically to native messaging scripts on startup. - Mises à jour du chemin du fichier binaire de KeePassXC ou de keepassxc-proxy dans les scripts Native Messaging automatiquement au démarrage. + Met automatiquement à jour le chemin des exécutables KeePassXC ou keepassxc-proxy vers les scripts de messagerie native lors du démarrage. Update &native messaging manifest files at startup - Mise à jour des fichiers manifest &Native Messaging au démarrage + Mettre à jour les fichiers de manifeste de la &messagerie native lors du démarrage Support a proxy application between KeePassXC and browser extension. @@ -359,7 +359,7 @@ Veuillez indiquer si vous souhaitez autoriser l’accès. <b>Warning:</b> The following options can be dangerous! - <b>Avertissement :</b> Les options suivantes peuvent être dangereuses ! + <b>Avertissement :</b> Les options suivantes peuvent être dangereuses ! Executable Files (*.exe);;All Files (*.*) @@ -382,7 +382,7 @@ Veuillez indiquer si vous souhaitez autoriser l’accès. BrowserService KeePassXC: New key association request - KeePassXC : nouvelle demande d’association + KeePassXC : Nouvelle demande d’association de touche You have received an association request for the above key. @@ -400,43 +400,43 @@ attribuez lui un nom unique pour l’identifier et acceptez la. KeePassXC: Overwrite existing key? - KeePassXC : Écraser la clé existante ? + KeePassXC : Remplacer la clé existante ? A shared encryption key with the name "%1" already exists. Do you want to overwrite it? - Une clé de chiffrement partagée avec le nom « %1 » existe déjà. -Voulez-vous l’écraser ? + Une clé de chiffrement partagée portant le nom « %1 » existe déjà. +Voulez-vous la remplacer ? KeePassXC: Update Entry - KeePassXC : Mettre à jour l’entrée + KeePassXC : Mettre l’entrée à jour Do you want to update the information in %1 - %2? - Voulez-vous mettre à jour l’information dans %1 - %2 ? + Voulez-vous mettre à jour les informations dans %1 - %2 ? KeePassXC: Database locked! - KeePassXC : Base de données verrouillée ! + KeePassXC : La base de données est verrouillée ! The active database is locked! Please unlock the selected database or choose another one which is unlocked. - La base de données actuelle est verrouillée ! -Veuillez déverrouiller la base de données sélectionnée, ou choisir une base de données déverrouillée. + La base de données active est verrouillée ! +Veuillez déverrouiller la base de données sélectionnée ou en choisir une autre déverrouillée. KeePassXC: Settings not available! - KeePassXC : Paramètres indisponibles ! + KeePassXC : Les paramètres ne sont pas disponibles ! The active database does not contain a settings entry. - La base de données actuelle ne contient pas d’entrée pour les paramètres. + La base de données active ne contient pas d’entrée pour les paramètres. KeePassXC: No keys found - KeePassXC : Aucune clé trouvée + KeePassXC : Aucune clé n’a été trouvée No shared encryption keys found in KeePassXC Settings. @@ -444,15 +444,15 @@ Veuillez déverrouiller la base de données sélectionnée, ou choisir une base KeePassXC: Removed keys from database - KeePassXC : Les clés ont été effacées de la base de données + KeePassXC : Les clés ont été supprimées de la base de données Successfully removed %n encryption key(s) from KeePassXC settings. - %n clé(s) de chiffrement ont été retirées avec succès des paramètres de KeePassXC.%n clé(s) de chiffrement ont été retirées avec succès des paramètres de KeePassXC. + %n clé de chiffrement a été retirée avec succès des paramètres de KeePassXC.%n clés de chiffrement ont été retirées avec succès des paramètres de KeePassXC. Removing stored permissions… - Effacement des permissions enregistrées… + Retrait des autorisations enregistrées… Abort @@ -460,19 +460,19 @@ Veuillez déverrouiller la base de données sélectionnée, ou choisir une base KeePassXC: Removed permissions - KeePassXC : Permissions retirées + KeePassXC : Les autorisations ont été retirées Successfully removed permissions from %n entry(s). - Les permissions de %n entrée(s) ont été retirées avec succès.Autorisations retirées avec succès de %s entrée(s) + Les autorisations d’%n entrée ont été retirées avec succès.Les autorisations de %n entrées ont été retirées avec succès. KeePassXC: No entry with permissions found! - KeePassXC : Aucune entrée avec permissions n’a été trouvée ! + KeePassXC : Aucune entrée avec autorisation n’a été trouvée ! The active database does not contain an entry with permissions. - La base de données actuelle ne contient pas d’entrée avec des permissions. + La base de données active ne contient pas d’entrée avec des autorisations. @@ -483,15 +483,15 @@ Veuillez déverrouiller la base de données sélectionnée, ou choisir une base Enter password: - Entrez un mot de passe : + Saisir un mot de passe : Repeat password: - Confirmez le mot de passe : + Répéter le mot de passe : &Key file - Fichier-clé + &Fichier-clé Browse @@ -507,7 +507,7 @@ Veuillez déverrouiller la base de données sélectionnée, ou choisir une base Refresh - Rafraîchir + Actualiser Key files @@ -523,11 +523,11 @@ Veuillez déverrouiller la base de données sélectionnée, ou choisir une base Unable to create Key File : - Impossible de créer un fichier-clé : + Impossible de créer un fichier-clé : Select a key file - Choisir un fichier-clé + Sélectionner un fichier-clé Empty password @@ -535,7 +535,7 @@ Veuillez déverrouiller la base de données sélectionnée, ou choisir une base Do you really want to use an empty string as password? - Voulez-vous vraiment utiliser une chaîne vide comme mot de passe ? + Voulez-vous vraiment laisser vide le champ de mot de passe ? Different passwords supplied. @@ -544,26 +544,25 @@ Veuillez déverrouiller la base de données sélectionnée, ou choisir une base Failed to set %1 as the Key file: %2 - Impossible de définir %1 comme fichier-clé : + Échec de définition de %1 comme fichier-clé : %2 Legacy key file format - Ancien format de fichier-clé + Format de fichier-clé hérité You are using a legacy key file format which may become unsupported in the future. Please consider generating a new key file. - Vous utilisez un ancien format de fichier-clé, -qui peut ne plus être pris en charge à l’avenir. + Vous utilisez un format de fichier-clé hérité qui pourrait ne plus être pris en charge à l’avenir. Veuillez envisager de générer un nouveau fichier-clé. Changing master key failed: no YubiKey inserted. - Échec du changement de clé maître: aucune YubiKey insérée. + Échec de changement de clé maîtresse : aucune YubiKey n’est insérée. @@ -633,7 +632,7 @@ Veuillez envisager de générer un nouveau fichier-clé. Preview - Prévisualisation + Aperçu Column layout @@ -661,7 +660,7 @@ Veuillez envisager de générer un nouveau fichier-clé. Error(s) detected in CSV file ! - Erreur(s) détectées dans le fichier CSV ! + Des erreurs ont été détectées dans le fichier CSV ! more messages skipped] @@ -686,37 +685,37 @@ Veuillez envisager de générer un nouveau fichier-clé. Unable to calculate master key - Impossible de calculer la clé maître + Impossible de calculer la clé maîtresse CsvParserModel %n byte(s), - %n octet(s), %n octet(s), + %n octet, %n octets, %n row(s), - %n ligne(s), %n rangée(s), + %n ligne, %n lignes, %n column(s) - %n colonne(s)%n colonne(s) + %n colonne%n colonnes DatabaseOpenWidget Enter master key - Entrez la clé maître + Saisir la clé maîtresse Key File: - Fichier-clé : + Fichier-clé : Password: - Mot de passe : + Mot de passe : Browse @@ -724,11 +723,11 @@ Veuillez envisager de générer un nouveau fichier-clé. Refresh - Rafraîchir + Actualiser Challenge Response: - Challenge-réponse : + Question-réponse : Unable to open the database. @@ -740,15 +739,14 @@ Veuillez envisager de générer un nouveau fichier-clé. Legacy key file format - Ancien format de fichier-clé + Format de fichier-clé hérité You are using a legacy key file format which may become unsupported in the future. Please consider generating a new key file. - Vous utilisez un ancien format de fichier-clé -qui peut ne plus être pris en charge à l’avenir. + Vous utilisez un format de fichier-clé hérité qui pourrait ne plus être pris en charge à l’avenir. Veuillez envisager de générer un nouveau fichier-clé. @@ -766,7 +764,7 @@ Veuillez envisager de générer un nouveau fichier-clé. Select key file - Choisissez un fichier-clé + Sélectionner un fichier-clé @@ -798,8 +796,8 @@ Veuillez envisager de générer un nouveau fichier-clé. The database has been successfully repaired You can now save it. - La base de données a correctement été réparée. -Vous pouvez maintenant la sauvegarder. + La base de données a été réparée avec succès. +Vous pouvez maintenant l’enregistrer. Unable to repair the database. @@ -825,9 +823,9 @@ Vous pouvez maintenant la sauvegarder. You are using a very high number of key transform rounds with Argon2. If you keep this number, your database may take hours or days (or even longer) to open! - Vous utilisez un très grand nombre de tours de transformation de clé avec Argon2. + Vous utilisez un très grand nombre de cycles de transformation de clé avec Argon2. -Si vous conservez ce nombre, votre base de données peut prendre des heures, des jours (voire plus) à s’ouvrir ! +Si vous conservez ce nombre, votre base de données pourrait prendre des heures voire des jours (ou plus) pour s’ouvrir ! Understood, keep number @@ -846,9 +844,9 @@ Si vous conservez ce nombre, votre base de données peut prendre des heures, des You are using a very low number of key transform rounds with AES-KDF. If you keep this number, your database may be too easy to crack! - Vous utilisez un très faible nombre de tours de transformation de clé avec AES-KDF. + Vous utilisez un très petit nombre de cycles de transformation de clé avec AES-KDF. -Si vous conservez ce nombre, la sécurité de votre base de données pourrait être trop facilement cassée ! +Si vous conservez ce nombre, votre base de données pourrait être craquées trop facilement ! KDF unchanged @@ -866,7 +864,7 @@ Si vous conservez ce nombre, la sécurité de votre base de données pourrait ê thread(s) Threads for parallel execution (KDF settings) - fil(s) d’exécutionfil(s) d’exécution + fil d’exécution fils d’exécution @@ -877,11 +875,11 @@ Si vous conservez ce nombre, la sécurité de votre base de données pourrait ê AES: 256 Bit (default) - AES : 256 bits (par défaut) + AES : 256 bits (par défaut) Twofish: 256 Bit - Twofish : 256 bits + Twofish : 256 bits Key Derivation Function: @@ -889,7 +887,7 @@ Si vous conservez ce nombre, la sécurité de votre base de données pourrait ê Transform rounds: - Tours de transformation : + Cycles de transformation : Benchmark 1-second delay @@ -897,7 +895,7 @@ Si vous conservez ce nombre, la sécurité de votre base de données pourrait ê Memory Usage: - Utilisation mémoire : + Utilisation de la mémoire : Parallelism: @@ -928,11 +926,11 @@ Si vous conservez ce nombre, la sécurité de votre base de données pourrait ê Max. history items: - Nombre maximal d’éléments dans l’historique : + Nombre maximal d’éléments d’historique : Max. history size: - Taille maximale de l’historique : + Taille maximale de l’historique : MiB @@ -944,11 +942,11 @@ Si vous conservez ce nombre, la sécurité de votre base de données pourrait ê Additional Database Settings - Paramètres de base de données supplémentaires + Paramètres supplémentaires de base de données Enable &compression (recommended) - Activers la &compression (recommandé) + Activer la &compression (recommandé) @@ -972,7 +970,7 @@ Si vous conservez ce nombre, la sécurité de votre base de données pourrait ê File not found! - Fichier introuvable ! + Le fichier est introuvable ! Unable to open the database. @@ -996,7 +994,7 @@ Si vous conservez ce nombre, la sécurité de votre base de données pourrait ê Merge database - Fusionner les bases de données + Fusionner la base de données Open KeePass 1 database @@ -1008,23 +1006,23 @@ Si vous conservez ce nombre, la sécurité de votre base de données pourrait ê Close? - Fermer ? + Fermer ? "%1" is in edit mode. Discard changes and close anyway? - « %1 » est en mode édition. -Abandonner les changements et fermer ? + « %1 » est en mode édition. +Ignorer les changements et fermer quand même ? Save changes? - Enregistrer les modifications ? + Enregistrer les changements ? "%1" was modified. Save changes? - « %1 » a été modifié. -Enregistrer les modifications ? + « %1 » a été modifié. +Enregistrer les changements ? Writing the database failed. @@ -1036,7 +1034,7 @@ Enregistrer les modifications ? Save database as - Enregistrer comme nouvelle base de données + Enregistrer la base de données sous Export database to CSV file @@ -1061,26 +1059,26 @@ Enregistrer les modifications ? Can't lock the database as you are currently editing it. Please press cancel to finish your changes or discard them. - Impossible de verrouiller la base de données lors de modifications. -Cliquez sur Annuler pour finir vos modifications ou abandonnez-les. + Impossible de verrouiller la base de données lors de changements. +Cliquez sur Annuler pour finir vos changements ou abandonnez-les. This database has been modified. Do you want to save the database before locking it? Otherwise your changes are lost. - La base de données a été modifiée. -Voulez-vous l’enregistrer avant de la verrouiller ? -Autrement, vos modifications seront perdues. + Cette base de données a été modifiée. +Voulez-vous l’enregistrer avant de la verrouiller ? +Autrement, vos changements seront perdus Disable safe saves? - Désactiver les sauvegardes sécurisées ? + Désactiver les enregistrements sécurisées ? KeePassXC has failed to save the database multiple times. This is likely caused by file sync services holding a lock on the save file. Disable safe saves and try again? - KeePassXC n’a pas réussi, à plusieurs reprises, à enregistrer la base de données. Cela est probablement causé par les services de synchronisation de fichiers qui maintiennent un verrou sur le fichier sauvegardé. -Désactiver les sauvegardes sécurisées et essayer à nouveau ? + KeePassXC n’a pas réussi, à plusieurs reprises, à enregistrer la base de données. Cela est probablement causé par le maintien d’un verrou sur le fichier enregistré par les services de synchronisation de fichiers. +Désactiver les enregistrements sécurisés et ressayer ? @@ -1091,47 +1089,47 @@ Désactiver les sauvegardes sécurisées et essayer à nouveau ? Change master key - Changer la clé maître + Changer la clé maîtresse Delete entry? - Supprimer l’entrée ? + Supprimer l’entrée ? Do you really want to delete the entry "%1" for good? - Voulez-vous supprimer l’entrée « %1 » définitivement ? + Voulez-vous vraiment supprimer définitivement l’entrée « %1 » ? Delete entries? - Supprimer les entrées ? + Supprimer les entrées ? Do you really want to delete %1 entries for good? - Voulez-vous supprimer %1 entrées définitivement ? + Voulez-vous vraiment supprimer définitivement %1 entrées ? Move entry to recycle bin? - Déplacer l’entrée dans la corbeille ? + Déplacer l’entrée vers la corbeille ? Do you really want to move entry "%1" to the recycle bin? - Êtes-vous sûr de vouloir déplacer l’entrée « %1 » dans la corbeille ? + Voulez-vous vraiment déplacer l’entrée « %1 » vers la corbeille ? Move entries to recycle bin? - Déplacer les entrées vers la corbeille ? + Déplacer les entrées vers la corbeille ? Do you really want to move %n entry(s) to the recycle bin? - Voulez-vous déplacer %n entrée(s) vers la corbeille ?Voulez-vous déplacer %n entrée(s) vers la corbeille ? + Voulez-vous vraiment déplacer %n entrée vers la corbeille ?Voulez-vous vraiment déplacer %n entrées vers la corbeille ? Execute command? - Exécuter la commande ? + Exécuter la commande ? Do you really want to execute the following command?<br><br>%1<br> - Voulez-vous vraiment exécuter la commande suivante ?<br><br>%1<br> + Voulez-vous vraiment exécuter la commande suivante ?<br><br>%1<br> Remember my choice @@ -1139,15 +1137,15 @@ Désactiver les sauvegardes sécurisées et essayer à nouveau ? Delete group? - Supprimer le groupe ? + Supprimer le groupe ? Do you really want to delete the group "%1" for good? - Voulez-vous supprimer le groupe « %1 » définitivement ? + Voulez-vous vraiment supprimer définitivement le groupe « %1 » ? Unable to calculate master key - Impossible de calculer la clé maître + Impossible de calculer la clé maîtresse No current database. @@ -1171,7 +1169,7 @@ Désactiver les sauvegardes sécurisées et essayer à nouveau ? The database file has changed. Do you want to load the changes? - Le fichier de la base de données à été modifié. Voulez-vous charger les changements ? + Le fichier de la base de données a été modifiée. Voulez-vous charger les changements ? Merge Request @@ -1180,8 +1178,8 @@ Désactiver les sauvegardes sécurisées et essayer à nouveau ? The database file has changed and you have unsaved changes. Do you want to merge your changes? - Le fichier de la base de données a été modifié et les changements que vous avez effectué n’ont pas été enregistrés. -Voulez-vous fusionner vos modifications ? + Le fichier de la base de données a été modifiée et vos changements ne sont pas enregistrés. +Voulez-vous fusionner vos changements ? Could not open the new database file while attempting to autoreload this database. @@ -1189,11 +1187,11 @@ Voulez-vous fusionner vos modifications ? Empty recycle bin? - Vider la corbeille ? + Vider la corbeille ? Are you sure you want to permanently delete everything from your recycle bin? - Êtes-vous certain de vouloir vider définitivement votre corbeille ? + Êtes-vous certain de vouloir vider définitivement la corbeille ? @@ -1240,7 +1238,7 @@ Voulez-vous fusionner vos modifications ? Attachments - Fichiers attachés + Pièces jointes Notes @@ -1323,7 +1321,7 @@ Voulez-vous fusionner vos modifications ? File too large to be a private key - Fichier trop lourd pour être un fichier-clé + Le fichier est trop gros pour être un fichier-clé Failed to open private key @@ -1355,7 +1353,7 @@ Voulez-vous fusionner vos modifications ? Are you sure you want to remove this attribute? - Êtes-vous sûr de vouloir supprimer cet attribut? + Êtes-vous certain de vouloir supprimer cet attribut ? [PROTECTED] @@ -1371,7 +1369,7 @@ Voulez-vous fusionner vos modifications ? %n week(s) - %n semaine(s)%n semaine(s) + %n semaine%n semaines %n month(s) @@ -1383,11 +1381,11 @@ Voulez-vous fusionner vos modifications ? Apply generated password? - Appliquer le mot de passe généré ? + Appliquer le mot de passe généré ? Do you want to apply the generated password to this entry? - Souhaitez-vous appliquer le mot de passe généré à cette entrée ? + Voulez-vous appliquer le mot de passe généré à cette entrée ? Entry updated successfully. @@ -1422,15 +1420,15 @@ Voulez-vous fusionner vos modifications ? Attachments - Affichage + Pièces jointes Foreground Color: - Couleur du texte : + Couleur du texte : Background Color: - Couleur du fond : + Couleur de l’arrière-plan : @@ -1465,7 +1463,7 @@ Voulez-vous fusionner vos modifications ? Use a specific sequence for this association: - Utilisez une séquence spécifique pour cette association : + Utilisez une séquence précise pour cette association : @@ -1495,11 +1493,11 @@ Voulez-vous fusionner vos modifications ? Password: - Mot de passe : + Mot de passe : Repeat: - Confirmation : + Confirmation : Title: @@ -1570,7 +1568,7 @@ Voulez-vous fusionner vos modifications ? Copy to clipboard - Copier dans le presse-papier + Copier dans le presse-papiers Private key @@ -1587,7 +1585,7 @@ Voulez-vous fusionner vos modifications ? Attachment - Fichier attaché + Pièce jointe Add to agent @@ -1696,7 +1694,7 @@ Voulez-vous fusionner vos modifications ? Hint: You can enable Google as a fallback under Tools>Settings>Security - Astuce : Vous pouvez activer Google en tant que secours sous Outils>Paramètres>Sécurité + Astuce : Vous pouvez activer Google comme second recours sous Outils > Paramètres > Sécurité Images @@ -1724,7 +1722,7 @@ Voulez-vous fusionner vos modifications ? This icon is used by %1 entries, and will be replaced by the default icon. Are you sure you want to delete it? - Cette icône est utilisée par %1 entrée(s) et sera remplacée par l’icône par défaut. Êtes-vous sûr de vouloir l’effacer ? + Cette icône est utilisée par %1 entrées et sera remplacée par l’icône par défaut. Êtes-vous certain de vouloir l’effacer ? @@ -1747,7 +1745,7 @@ Voulez-vous fusionner vos modifications ? Plugin Data - Données de l’extension + Données d’extension Remove @@ -1755,12 +1753,12 @@ Voulez-vous fusionner vos modifications ? Delete plugin data? - Supprimer les données de l’extension ? + Supprimer les données d’extension ? Do you really want to delete the selected plugin data? This may cause the affected plugins to malfunction. - Souhaitez-vous vraiment supprimer les données de l’extension sélectionnée ? Cela peut causer un dysfonctionnement de l’extension. + Voulez-vous vraiment supprimer les données d’extension sélectionnées ? Cela peut entraîner un dysfonctionnement des extensions touchées. Key @@ -1814,11 +1812,11 @@ This may cause the affected plugins to malfunction. Select files - Sélectionner fichier(s) + Sélectionner des fichiers Are you sure you want to remove %n attachment(s)? - Êtes-vous sûr de vouloir supprimer ces %n fichiers attachés ?Êtes-vous sûr de vouloir supprimer ces %n fichiers attachés ? + Êtes-vous certain de vouloir supprimer %n pièce jointe ?Êtes-vous certain de vouloir supprimer %n pièces jointes ? Confirm Remove @@ -1826,7 +1824,7 @@ This may cause the affected plugins to malfunction. Save attachments - Enregistrer les fichiers attachés + Enregistrer les pièces jointes Unable to create directory: @@ -1836,28 +1834,28 @@ This may cause the affected plugins to malfunction. Are you sure you want to overwrite the existing file "%1" with the attachment? - Êtes-vous sûr de vouloir écraser le fichier « %1 » par ce fichier attaché ? + Êtes-vous certain de vouloir remplacer le fichier existant « %1 » par la pièce jointe ? Confirm overwrite - Confirmer l’écrasement + Confirmer le remplacement Unable to save attachments: %1 - Impossible d’enregistrer les fichiers attachés : + Impossible d’enregistrer les pièces jointes : %1 Unable to open attachment: %1 - Impossible d’ouvrir le fichier attaché : + Impossible d’ouvrir la pièce jointe : %1 Unable to open attachments: %1 - Impossible d’ouvrir les fichiers attachés : + Impossible d’ouvrir les pièces jointes : %1 @@ -1946,7 +1944,7 @@ This may cause the affected plugins to malfunction. Attachments - Fichiers attachés + Pièces jointes @@ -1991,11 +1989,11 @@ This may cause the affected plugins to malfunction. HostInstaller KeePassXC: Cannot save file! - KeePassXC : Impossible d’enregistrer le fichier! + KeePassXC : Impossible d’enregistrer le fichier ! Cannot save the native messaging script file. - Impossible de sauvegarder le fichier du script Native Messaging. + Impossible d’enregistrer le fichier de script de la messagerie native @@ -2068,37 +2066,37 @@ This may cause the affected plugins to malfunction. Kdbx3Reader Unable to calculate master key - Impossible de calculer la clé maître + Impossible de calculer la clé maîtresse Unable to issue challenge-response. - Impossible de lancer un challenge-réponse. + Impossible de lancer une question-réponse. Wrong key or database file is corrupt. - La clé est incorrecte, ou bien la base de données est corrompue. + La clé n’est pas la bonne ou le fichier de base de données est corrompu. Kdbx3Writer Unable to issue challenge-response. - Impossible de lancer un challenge-réponse. + Impossible de lancer une question-réponse. Unable to calculate master key - Impossible de calculer la clé maître + Impossible de calculer la clé maîtresse Kdbx4Reader missing database headers - En-têtes de base de données manquants + les en-têtes de la base de données manquent Unable to calculate master key - Impossible de calculer la clé maître + Impossible de calculer la clé maîtresse Invalid header checksum size @@ -2110,7 +2108,7 @@ This may cause the affected plugins to malfunction. Wrong key or database file is corrupt. (HMAC mismatch) - Mauvaise clé ou fichier de base de données corrompu. (HMAC ne correspond pas) + La clé n’est pas la bonne ou le fichier de base de données est corrompu (non-correspondance HMAC). Unknown cipher @@ -2226,7 +2224,7 @@ This may cause the affected plugins to malfunction. Unable to calculate master key - Impossible de calculer la clé maître + Impossible de calculer la clé maîtresse Failed to serialize KDF parameters variant map @@ -2262,7 +2260,7 @@ This may cause the affected plugins to malfunction. Invalid transform rounds size - Taille des tours de transformation invalide + La taille de cycles de transformation est invalide Invalid start bytes size @@ -2379,7 +2377,7 @@ Il s’agit d’une migration à sens unique. Vous ne pourrez pas ouvrir la base Duplicate attachment found - Dupliquer le fichier attaché trouvé + Une pièce a été trouvée en double Entry binary key or value missing @@ -2463,7 +2461,7 @@ Il s’agit d’une migration à sens unique. Vous ne pourrez pas ouvrir la base Invalid content hash size - Taille du hachage du contenu invalide + La taille de l’empreinte numérique du contenu est invalide Invalid transform seed size @@ -2471,7 +2469,7 @@ Il s’agit d’une migration à sens unique. Vous ne pourrez pas ouvrir la base Invalid number of transform rounds - Nombre de tours de transformation invalide + Le nombre de cycles de transformation est invalide Unable to construct group tree @@ -2483,11 +2481,11 @@ Il s’agit d’une migration à sens unique. Vous ne pourrez pas ouvrir la base Unable to calculate master key - Impossible de calculer la clé maître + Impossible de calculer la clé maîtresse Wrong key or database file is corrupt. - Clé incorrecte ou la base de données est corrompue. + La clé n’est pas la bonne ou le fichier de base de données est corrompu. Key transformation failed @@ -2586,15 +2584,15 @@ Il s’agit d’une migration à sens unique. Vous ne pourrez pas ouvrir la base KeePass2 AES: 256-bit - AES : 256 bits + AES : 256 bits Twofish: 256-bit - Twofish : 256 bits + Twofish : 256 bits ChaCha20: 256-bit - ChaCha20 : 256 bits + ChaCha20 : 256 bits AES-KDF (KDBX 4) @@ -2656,7 +2654,7 @@ Il s’agit d’une migration à sens unique. Vous ne pourrez pas ouvrir la base Copy att&ribute to clipboard - Copier l’attribut dans le presse-papier + Copier l’att&ribut dans le presse-papiers Time-based one-time password @@ -2728,7 +2726,7 @@ Il s’agit d’une migration à sens unique. Vous ne pourrez pas ouvrir la base Change &master key... - Changer la clé &maître… + Changer la clé &maîtresse… &Database settings @@ -2752,7 +2750,7 @@ Il s’agit d’une migration à sens unique. Vous ne pourrez pas ouvrir la base Copy username to clipboard - Copier le nom d’utilisateur dans le presse-papier + Copier le nom d’utilisateur dans le presse-papiers Cop&y password @@ -2760,7 +2758,7 @@ Il s’agit d’une migration à sens unique. Vous ne pourrez pas ouvrir la base Copy password to clipboard - Copier le mot de passe dans le presse-papier + Copier le mot de passe dans le presse-papiers &Settings @@ -2788,7 +2786,7 @@ Il s’agit d’une migration à sens unique. Vous ne pourrez pas ouvrir la base Copy title to clipboard - Copier le titre dans le presse-papier + Copier le titre dans le presse-papiers &URL @@ -2796,7 +2794,7 @@ Il s’agit d’une migration à sens unique. Vous ne pourrez pas ouvrir la base Copy URL to clipboard - Copier l’URL dans le presse-papier + Copier l’URL dans le presse-papiers &Notes @@ -2804,7 +2802,7 @@ Il s’agit d’une migration à sens unique. Vous ne pourrez pas ouvrir la base Copy notes to clipboard - Copier les notes dans le presse-papier + Copier les notes dans le presse-papiers &Export to CSV file... @@ -2848,7 +2846,7 @@ Il s’agit d’une migration à sens unique. Vous ne pourrez pas ouvrir la base <p>It looks like you are using KeePassHTTP for browser integration. This feature has been deprecated and will be removed in the future.<br>Please switch to KeePassXC-Browser instead! For help with migration, visit our <a class="link" href="https://keepassxc.org/docs/keepassxc-browser-migration">migration guide</a> (warning %1 of 3).</p> - <p>Il semble que vous utilisez KeePassHTTP pour l’intégration au navigateur web. Cette fonctionnalité est dorénavant déconseillée et elle sera supprimée dans le futur.<br>Veuillez passer à KeePassXC-Browser à la place ! Si vous avez besoin d’aide pour migrer, consulter notre<a class="link" href="https://keepassxc.org/docs/keepassxc-browser-migration">guide de migration</a> (avertissement %1 sur 3).</p> + <p>Il semble que vous utilisez KeePassHTTP pour l’intégration aux navigateurs. Cette fonction a été dépréciée et sera prochainement supprimée.<br>Veuillez plutôt utiliser KeePassXC-Browser ! Pour obtenir de l’aide à ce sujet, consultez notre<a class="link" href="https://keepassxc.org/docs/keepassxc-browser-migration">guide de migration</a> (avertissement %1 sur 3).</p> read-only @@ -2880,7 +2878,7 @@ Il s’agit d’une migration à sens unique. Vous ne pourrez pas ouvrir la base Save repaired database - Sauvegarder la base de données réparée + Enregistrer la base de données réparée Writing the database failed. @@ -2888,14 +2886,14 @@ Il s’agit d’une migration à sens unique. Vous ne pourrez pas ouvrir la base Please touch the button on your YubiKey! - Veuillez presser le bouton de votre YubiKey ! + Veuillez appuyez sur le bouton de votre YubiKey ! WARNING: You are using an unstable build of KeePassXC! There is a high risk of corruption, maintain a backup of your databases. This version is not meant for production use. - AVERTISSEMENT : Vous utilisez une version instable du KeePassXC ! -Il y a un risque élevé de corruption, gardez une sauvegarde de vos bases de données. + AVERTISSEMENT : Vous utilisez une version instable du KeePassXC ! +Le risque de corruption est élevé, conservez une sauvegarde de vos bases de données. Cette version n’est pas destinée à la production. @@ -2903,7 +2901,7 @@ Cette version n’est pas destinée à la production. OpenSSHKey Invalid key file, expecting an OpenSSH key - Fichier-clé invalide, une clé OpenSSH est attendue + Le fichier-clé est invalide, une clé OpenSSH est attendue PEM boundary mismatch @@ -2915,11 +2913,11 @@ Cette version n’est pas destinée à la production. Key file way too small. - Le fichier-clé est trop petit. + Le fichier-clé est bien trop petit. Key file magic header id invalid - L’identifiant magic header du fichier-clé est invalide + L’identifiant de l’en-tête magique du fichier-clé est invalide Found zero keys @@ -2931,7 +2929,7 @@ Cette version n’est pas destinée à la production. Corrupted key file, reading private key failed - Fichier-clé corrompu, échec de lecture de la clé privée + Le fichier-clé est corrompu. Échec de lecture de la clé privée. No private key payload to decrypt @@ -2943,15 +2941,15 @@ Cette version n’est pas destinée à la production. Passphrase is required to decrypt this key - Cette clé requiert une phrase secrète pour être déchiffrée + Une phrase de passe est exigée pour déchiffrer cette clé Key derivation failed, key file corrupted? - Échec de la dérivation de clé, fichier-clé corrompu? + Échec de dérivation de clé. Le fichier-clé est-il corrompu ? Decryption failed, wrong passphrase? - Échec du déchiffrement, mauvaise phrase secrète ? + Échec de déchiffrement. La phrase de passe serait-elle erronée ? Unexpected EOF while reading public key @@ -3023,7 +3021,7 @@ Cette version n’est pas destinée à la production. Only returns the best matches for a specific URL instead of all entries for the whole domain. - Renvoie seulement les meilleures correspondances pour une URL spécifique au lieu des entrées pour tout le domaine. + Ne renvoie que les meilleures correspondances pour une URL précise au lieu de toutes les entrées du domaine. &Return only best matching entries @@ -3055,7 +3053,7 @@ Cette version n’est pas destinée à la production. Re&move all stored permissions from entries in active database - Supprimer toutes les permissions enregistrées des entrées de la base de données active + &Retirer toutes les autorisations enregistrées des entrées de la base de données active Password Generator @@ -3103,11 +3101,11 @@ Cette version n’est pas destinée à la production. <b>Warning:</b> The following options can be dangerous! - <b>Avertissement :</b> Les options suivantes peuvent être dangereuses ! + <b>Avertissement :</b> Les options suivantes peuvent être dangereuses ! <p>KeePassHTTP has been deprecated and will be removed in the future.<br>Please switch to KeePassXC-Browser instead! For help with migration, visit our <a href="https://keepassxc.org/docs/keepassxc-browser-migration">migration guide</a>.</p> - <p>KeePassHTTP est dorénavant déconseillé et il sera supprimé dans le futur.<br>Veuillez passer à KeePassXC-Browser à la place ! Si vous avez besoin d’aide pour migrer, consulter notre <a href="https://keepassxc.org/docs/keepassxc-browser-migration">guide de migration</a>.</p> + <p>KeePassHTTP a été déprécié et sera prochainement supprimé.<br>Veuillez plutôt utiliser KeePassXC-Browser ! Pour obtenir de l’aide à ce sujet, consultez notre <a href="https://keepassxc.org/docs/keepassxc-browser-migration">guide de migration</a>.</p> Cannot bind to privileged ports @@ -3116,8 +3114,8 @@ Cette version n’est pas destinée à la production. Cannot bind to privileged ports below 1024! Using default port 19455. - Liaison impossible avec les ports privilégiés, inférieurs à 1024 ! -Restauration du port 19455 par défaut. + Impossible de se lier aux ports privilégiés inférieurs à 1024 ! +Le port 19455 par défaut sera utilisé. @@ -3128,7 +3126,7 @@ Restauration du port 19455 par défaut. Password: - Mot de passe : + Mot de passe : strength @@ -3181,7 +3179,7 @@ Restauration du port 19455 par défaut. Passphrase - Phrase secrète + Phrase de passe Wordlist: @@ -3217,7 +3215,7 @@ Restauration du port 19455 par défaut. Entropy: %1 bit - Entropie : %1 bit + Entropie : %1 bits Password Quality: %1 @@ -3252,7 +3250,7 @@ Restauration du port 19455 par défaut. Database hash not available - Hachage de la base de données non disponible + L’empreinte numérique de la base de données n’est pas disponible Client public key not received @@ -3272,7 +3270,7 @@ Restauration du port 19455 par défaut. Cannot encrypt message or public key not found. Is Native Messaging enabled in KeePassXC? - Chiffrement impossible du message ou clé publique introuvable. Native Messaging est-il activé dans KeePassXC ? + Le chiffrement du message est impossible ou la clé publique est introuvable. La messagerie native est-elle activée dans KeePassXC ? KeePassXC association failed, try again @@ -3288,7 +3286,7 @@ Restauration du port 19455 par défaut. No saved databases found - Aucunes bases de données sauvegardée trouvée + Aucune base de données enregistrée n’a été trouvée Incorrect action @@ -3364,7 +3362,7 @@ Restauration du port 19455 par défaut. Copy an entry's password to the clipboard. - Copier le mot de passe d’une entrée dans le presse-papier. + Copier le mot de passe d’une entrée dans le presse-papiers. Path of the entry to clip. @@ -3373,7 +3371,7 @@ Restauration du port 19455 par défaut. Timeout in seconds before clearing the clipboard. - Expiration en secondes avant l’effacement du presse-papier. + Délai en secondes avant effacement du presse-papiers. Edit an entry. @@ -3397,7 +3395,7 @@ Restauration du port 19455 par défaut. Password for which to estimate the entropy. - Mot de passe pour lesquels estimer l’entropie. + Mot de passe pour lequel estimer l’entropie. Perform advanced analysis on the password. @@ -3417,15 +3415,14 @@ Restauration du port 19455 par défaut. Failed to load key file %1 : %2 - Échec du chargement du fichier-clé %1 : %2 + Échec de chargement du fichier-clé %1 : %2 WARNING: You are using a legacy key file format which may become unsupported in the future. Please consider generating a new key file. - AVERTISSEMENT : Vous utilisez un ancien format de fichier-clé -qui peut ne plus être pris en charge à l’avenir. + AVERTISSEMENT : Vous utilisez un format de fichier-clé hérité qui pourrait ne plus être pris en charge à l’avenir. Veuillez envisager de générer un nouveau fichier-clé. @@ -3477,7 +3474,7 @@ Commandes disponibles : Key file of the database to merge from. - Fichier-clé de la base de données à fusionner. + Fichier-clé de la base de données à partir de laquelle fusionner. Show an entry's information. @@ -3506,7 +3503,7 @@ Commandes disponibles : file empty ! - Fichier vide! + le fichier est vide ! @@ -3547,15 +3544,15 @@ Commandes disponibles : Legacy Browser Integration - Ancienne intégration au navigateur web + Ancienne intégration aux navigateurs Browser Integration - Intégration Navigateur + Intégration aux navigateurs YubiKey[%1] Challenge Response - Slot %2 - %3 - YubiKey[%1] Challenge-réponse - Slot %2 - %3 + YubiKey[%1] question-réponse - Fente %2 - %3 Press @@ -3571,11 +3568,11 @@ Commandes disponibles : Generate a new random diceware passphrase. - Créé une nouvelle phrase secrète générée aléatoirement par Diceware + Créer une nouvelle phrase de passe générée au hasard par des dés. Word count for the diceware passphrase. - Nombre de mots de la phrase secrète générée par Diceware + Nombre de mots de la phrase de passe générée par des dés. count @@ -3677,7 +3674,7 @@ Commandes disponibles : Service KeePassXC: New key association request - KeePassXC : nouvelle demande d’association + KeePassXC : Nouvelle demande d’association de touche You have received an association request for the above key. @@ -3689,43 +3686,43 @@ attribuez lui un nom unique pour l’identifier et acceptez-la. KeePassXC: Overwrite existing key? - KeePassXC : Écraser la clé existante ? + KeePassXC : Remplacer la clé existante ? A shared encryption-key with the name "%1" already exists. Do you want to overwrite it? - Une clé de chiffrement partagée avec le nom « %1 » existe déjà. -Voulez-vous l’écraser ? + Une clé de chiffrement partagée portant le nom « %1 » existe déjà. +Voulez-vous la remplacer ? KeePassXC: Update Entry - KeePassXC : Mettre à jour l’entrée + KeePassXC : Mettre l’entrée à jour Do you want to update the information in %1 - %2? - Voulez-vous mettre à jour l’information dans %1 - %2 ? + Voulez-vous mettre à jour l’information dans %1 - %2 ? KeePassXC: Database locked! - KeePassXC : Base de données verrouillée ! + KeePassXC : La base de données est verrouillée ! The active database is locked! Please unlock the selected database or choose another one which is unlocked. - La base de données actuelle est verrouillée ! - Veuillez déverrouiller la base de données sélectionnée, ou choisir une base de données déverrouillée. + La base de données active est verrouillée ! +Veuillez déverrouiller la base de données sélectionnée ou en choisir une autre déverrouillée. KeePassXC: Removed keys from database - KeePassXC : Les clés ont été effacées de la base de données + KeePassXC : Les clés ont été supprimées de la base de données Successfully removed %n encryption-key(s) from KeePassX/Http Settings. - %n clé(s) de chiffrement ont été retirées des paramètres KeePassX/Http.%n-clé(s) chiffrement ont été retirées des paramètres KeePassX/Http. + %n clé de chiffrement a été retirée avec succès des paramètres de KeePassXC/HTTP.%n clés chiffrement ont été retirées avec succès des paramètres KeePassXC/HTTP. KeePassXC: No keys found - KeePassXC : Aucune clé trouvée + KeePassXC : Aucune clé n’a été trouvée No shared encryption-keys found in KeePassHttp Settings. @@ -3733,15 +3730,15 @@ Please unlock the selected database or choose another one which is unlocked. KeePassXC: Settings not available! - KeePassXC: Paramètre indisponible ! + KeePassXC : Les paramètres ne sont pas disponibles ! The active database does not contain an entry of KeePassHttp Settings. - La base de données actuelle ne contient pas d’entrée de paramètres KeePassHttp. + La base de données active ne contient pas d’entrée de paramètres KeePassHttp. Removing stored permissions... - Effacement des permissions enregistrées… + Retrait des autorisations enregistrées… Abort @@ -3749,7 +3746,7 @@ Please unlock the selected database or choose another one which is unlocked. KeePassXC: Removed permissions - KeePassXC : Permissions retirées + KeePassXC : Les autorisations ont été retirées Successfully removed permissions from %n entries. @@ -3757,11 +3754,11 @@ Please unlock the selected database or choose another one which is unlocked. KeePassXC: No entry with permissions found! - KeePassXC : Aucune entrée avec permissions trouvée ! + KeePassXC : Aucune entrée avec autorisation n’a été trouvée ! The active database does not contain an entry with permissions. - La base de données actuelle ne contient pas d’entrée avec des permissions. + La base de données active ne contient pas d’entrée avec des autorisations. @@ -3799,7 +3796,7 @@ Please unlock the selected database or choose another one which is unlocked. Remember last key files and security dongles - Se souvenir des derniers fichiers clé et des dongles de sécurité + Mémoriser les derniers fichiers-clés et les clés électroniques de sécurité Load previous databases on startup @@ -3807,11 +3804,11 @@ Please unlock the selected database or choose another one which is unlocked. Automatically save on exit - Sauvegarder automatiquement à la sortie + Enregistrer automatiquement à la sortie Automatically save after every change - Sauvegarder automatiquement après chaque modification + Enregistrer automatiquement après chaque changement Automatically reload the database when modified externally @@ -3819,7 +3816,7 @@ Please unlock the selected database or choose another one which is unlocked. Minimize when copying to clipboard - Réduire lors de la copie dans le presse-papier + Minimiser après avoir copié dans le presse-papiers Minimize window at application startup @@ -3843,7 +3840,7 @@ Please unlock the selected database or choose another one which is unlocked. Hide window to system tray when minimized - Réduire la fenêtre vers la zone de notification lors de sa réduction + Cacher la fenêtre dans la zone de notification une fois minimisée Hide window to system tray instead of app exit @@ -3919,7 +3916,7 @@ Please unlock the selected database or choose another one which is unlocked. Clear clipboard after - Vider le presse-papier après + Vider le presse-papiers après sec @@ -3964,7 +3961,7 @@ Please unlock the selected database or choose another one which is unlocked. Use Google as fallback for downloading website icons - Utilisez Google en secours pour télécharger des icônes de site web + Utiliser Google en second recours pour télécharger les icônes des sites Web Re-lock previously locked database after performing Auto-Type @@ -4100,19 +4097,19 @@ Please unlock the selected database or choose another one which is unlocked. filenames of the password databases to open (*.kdbx) - noms de fichiers des bases de données de mot de passe à ouvrir (*.kdbx) + noms de fichiers des bases de données de mots de passe à ouvrir (*.kdbx) path to a custom config file - Chemin vers un fichier de configuration personnalisé + chemin vers un fichier de configuration personnalisé key file of the database - Fichier-clé de la base de données + fichier-clé de la base de données read password of the database from stdin - Lire le mot de passe de la base de données sur l’entrée standard + lire le mot de passe de la base de données sur l’entrée standard Parent window handle diff --git a/share/translations/keepassx_lt.ts b/share/translations/keepassx_lt.ts index 431c881f9..03be1edb5 100644 --- a/share/translations/keepassx_lt.ts +++ b/share/translations/keepassx_lt.ts @@ -445,7 +445,7 @@ Prašome atrakinti pasirinktą duomenų bazę arba pasirinkti kitą, kuri būtų Successfully removed %n encryption key(s) from KeePassXC settings. - + Removing stored permissions… @@ -461,7 +461,7 @@ Prašome atrakinti pasirinktą duomenų bazę arba pasirinkti kitą, kuri būtų Successfully removed permissions from %n entry(s). - + KeePassXC: No entry with permissions found! @@ -687,15 +687,15 @@ Please consider generating a new key file. CsvParserModel %n byte(s), - %n baitas, %n baitai, %n baitų, + %n baitas, %n baitai, %n baitų, %n baitų, %n row(s), - %n eilutė, %n eilutės, %n eilučių, + %n eilutė, %n eilutės, %n eilučių, %n eilučių, %n column(s) - %n stulpelis%n stulpeliai%n stulpelių + %n stulpelis%n stulpeliai%n stulpelių%n stulpelių @@ -848,12 +848,12 @@ If you keep this number, your database may be too easy to crack! MiB Abbreviation for Mebibytes (KDF settings) - + thread(s) Threads for parallel execution (KDF settings) - + @@ -1109,7 +1109,7 @@ Disable safe saves and try again? Do you really want to move %n entry(s) to the recycle bin? - Ar tikrai norite perkelti %n įrašą į šiukšlinę?Ar tikrai norite perkelti %n įrašus į šiukšlinę?Ar tikrai norite perkelti %n įrašų į šiukšlinę? + Ar tikrai norite perkelti %n įrašą į šiukšlinę?Ar tikrai norite perkelti %n įrašus į šiukšlinę?Ar tikrai norite perkelti %n įrašų į šiukšlinę?Ar tikrai norite perkelti %n įrašų į šiukšlinę? Execute command? @@ -1357,11 +1357,11 @@ Ar norite sulieti savo pakeitimus? %n week(s) - %n savaitė%n savaitės%n savaičių + %n savaitė%n savaitės%n savaičių%n savaičių %n month(s) - %n mėnesis%n mėnesiai%n mėnesių + %n mėnesis%n mėnesiai%n mėnesių%n mėnesių 1 year @@ -1412,11 +1412,11 @@ Ar norite sulieti savo pakeitimus? Foreground Color: - + Priekinio plano spalva: Background Color: - + Fono spalva: @@ -1750,11 +1750,11 @@ This may cause the affected plugins to malfunction. Key - + Raktas Value - + Reikšmė @@ -1804,7 +1804,7 @@ This may cause the affected plugins to malfunction. Are you sure you want to remove %n attachment(s)? - + Confirm Remove @@ -1822,7 +1822,7 @@ This may cause the affected plugins to malfunction. Are you sure you want to overwrite the existing file "%1" with the attachment? - + Ar tikrai norite perrašyti failą "%1" priedu? Confirm overwrite @@ -1963,7 +1963,7 @@ This may cause the affected plugins to malfunction. Attachments (icon) - + Priedai (piktograma) @@ -2108,7 +2108,7 @@ This may cause the affected plugins to malfunction. Invalid header field length - + Neteisingas antraštės lauko ilgis Invalid header data length @@ -2132,7 +2132,7 @@ This may cause the affected plugins to malfunction. Invalid inner header field length - + Neteisingas vidinės antraštės lauko ilgis Invalid inner header binary size @@ -2381,7 +2381,7 @@ Tai yra vienakryptis perkėlimas. Jūs negalėsite atverti importuotos duomenų Invalid date time value - + Neteisinga datos laiko reikšmė Invalid color value @@ -2393,7 +2393,7 @@ Tai yra vienakryptis perkėlimas. Jūs negalėsite atverti importuotos duomenų Invalid number value - + Neteisinga skaitmeninė reikšmė Invalid uuid value @@ -2437,7 +2437,7 @@ Tai yra vienakryptis perkėlimas. Jūs negalėsite atverti importuotos duomenų Unable to read encryption IV IV = Initialization Vector for symmetric cipher - + Nepavyko perskaityti šifravimo IV Invalid number of groups @@ -2565,7 +2565,7 @@ Tai yra vienakryptis perkėlimas. Jūs negalėsite atverti importuotos duomenų Invalid entry field type - + Neteisingas įrašo lauko tipas @@ -3702,7 +3702,7 @@ Prašome atrakinti pasirinktą duomenų bazę arba pasirinkti kitą, kuri būtų Successfully removed %n encryption-key(s) from KeePassX/Http Settings. - %n šifravimo raktas sėkmingai pašalintas iš KeePassX/Http nustatymų.%n šifravimo raktai sėkmingai pašalinti iš KeePassX/Http nustatymų.%n šifravimo raktų sėkmingai pašalinta iš KeePassX/Http nustatymų. + %n šifravimo raktas sėkmingai pašalintas iš KeePassX/Http nustatymų.%n šifravimo raktai sėkmingai pašalinti iš KeePassX/Http nustatymų.%n šifravimo raktų sėkmingai pašalinta iš KeePassX/Http nustatymų.%n šifravimo raktų sėkmingai pašalinta iš KeePassX/Http nustatymų. KeePassXC: No keys found @@ -3734,7 +3734,7 @@ Prašome atrakinti pasirinktą duomenų bazę arba pasirinkti kitą, kuri būtų Successfully removed permissions from %n entries. - Leidimai sėkmingai pašalinti iš %n įrašo.Leidimai sėkmingai pašalinti iš %n įrašų.Leidimai sėkmingai pašalinti iš %n įrašų. + Leidimai sėkmingai pašalinti iš %n įrašo.Leidimai sėkmingai pašalinti iš %n įrašų.Leidimai sėkmingai pašalinti iš %n įrašų.Leidimai sėkmingai pašalinti iš %n įrašų. KeePassXC: No entry with permissions found! diff --git a/share/translations/keepassx_pl.ts b/share/translations/keepassx_pl.ts index 1e9608734..49a1e633b 100644 --- a/share/translations/keepassx_pl.ts +++ b/share/translations/keepassx_pl.ts @@ -866,7 +866,7 @@ Jeśli zachowasz ten numer, twoja baza danych może być zbyt łatwa do złamani thread(s) Threads for parallel execution (KDF settings) - wątekwątkiwątkówwątków + wątek wątki wątków wątków diff --git a/share/translations/keepassx_sk.ts b/share/translations/keepassx_sk.ts new file mode 100644 index 000000000..0e73dd894 --- /dev/null +++ b/share/translations/keepassx_sk.ts @@ -0,0 +1,4123 @@ + + + AboutDialog + + About KeePassXC + O KeepassXC + + + About + O aplikácii + + + Report bugs at: <a href="https://github.com/keepassxreboot/keepassxc/issues" style="text-decoration: underline;">https://github.com</a> + Chyby hláste na: <a href="https://github.com/keepassxreboot/keepassxc/issues" style="text-decoration: underline;">https://github.com</a> + + + KeePassXC is distributed under the terms of the GNU General Public License (GPL) version 2 or (at your option) version 3. + KeePassXC je distribuovaný za podmienok GNU General Public License (GPL) verzie 2 alebo (podľa Vášho výberu) verzie 3. + + + Contributors + Prispievatelia + + + <a href="https://github.com/keepassxreboot/keepassxc/graphs/contributors">See Contributions on GitHub</a> + <a href="https://github.com/keepassxreboot/keepassxc/graphs/contributors">Viď prispievateľov na GitHub</a> + + + Debug Info + Ladiace informácie + + + Include the following information whenever you report a bug: + Do každého hlásenia chyby zahrňte nasledujúce informácie: + + + Copy to clipboard + Kopírovať do schránky + + + Version %1 + + Verzia %1 + + + + Revision: %1 + Revízia %1 + + + Distribution: %1 + Distribúcia %1 + + + Libraries: + Knižnice: + + + Operating system: %1 +CPU architecture: %2 +Kernel: %3 %4 + Operačný systém: %1 +Architektúra CPU: %2 +Jadro: %3 %4 + + + Enabled extensions: + Zapnuté rozšírenia: + + + Project Maintainers: + Správcovia projektu: + + + Special thanks from the KeePassXC team go to debfx for creating the original KeePassX. + Špeciálne poďakovanie od tímu KeePassXC patrí debfx za vytvorenie pôvodného KeePassX. + + + Build Type: %1 + + Typ zostavenia: %1 + + + + + AccessControlDialog + + KeePassXC HTTP Confirm Access + KeePassXC HTTP Potvrdenie prístupu + + + Remember this decision + Zapamätať si túto voľbu + + + Allow + Povoliť + + + Deny + Zakázať + + + %1 has requested access to passwords for the following item(s). +Please select whether you want to allow access. + %1 požiadal prístup k heslám nasledujúcej položky(iek). +Prosím, zvoľte, či chcete povoliť prístup. + + + + AgentSettingsWidget + + Enable SSH Agent (requires restart) + Zapnúť Agenta SSH (vyžaduje reštart) + + + + AutoType + + Couldn't find an entry that matches the window title: + Nemožno nájsť žiadnu položku, ktorá zodpovedá názvu okna: + + + Auto-Type - KeePassXC + Automatické vypĺňanie – KeePassXC + + + Auto-Type + Automatické vypĺňanie + + + The Syntax of your Auto-Type statement is incorrect! + Syntax Vášho Automatického vypĺňania nie je správna! + + + This Auto-Type command contains a very long delay. Do you really want to proceed? + Tento príkaz Automatického vypĺňania obsahuje príliš dlhú pauzu. Naozaj ho chcete vykonať? + + + This Auto-Type command contains very slow key presses. Do you really want to proceed? + Tento príkaz Automatického vypĺňania obsahuje príliš pomalé stlačenia kláves. Naozaj ho chcete vykonať? + + + This Auto-Type command contains arguments which are repeated very often. Do you really want to proceed? + Tento príkaz Automatického vypĺňania obsahuje argumenty, ktoré sú opakované príliš často. Naozaj ho chcete vykonať? + + + + AutoTypeAssociationsModel + + Window + Okno + + + Sequence + Postupnosť + + + Default sequence + Predvolená postupnosť + + + + AutoTypeMatchModel + + Group + Skupina + + + Title + Nadpis + + + Username + Používateľské meno + + + Sequence + Postupnosť + + + + AutoTypeSelectDialog + + Auto-Type - KeePassXC + Automatické vypĺňanie – KeePassXC + + + Select entry to Auto-Type: + Vyberte položku na Automatické vypĺňanie: + + + + BrowserAccessControlDialog + + KeePassXC-Browser Confirm Access + KeePassXC-Prehliadač Potvrďte prístup + + + Remember this decision + Zapamätať si túto voľbu + + + Allow + Povoliť + + + Deny + Zakázať + + + %1 has requested access to passwords for the following item(s). +Please select whether you want to allow access. + %1 požiadal prístup k heslám nasledujúcej položky(iek). +Prosím, zvoľte, či chcete povoliť prístup. + + + + BrowserOptionDialog + + Dialog + Dialóg + + + This is required for accessing your databases with KeePassXC-Browser + Toto je potrebné na prístup k vašim databázam cez KeePassXC-Prehliadač + + + Enable KeepassXC browser integration + Zapnúť Integráciu KeepassXC v prehliadači + + + General + Všeobecné + + + Enable integration for these browsers: + Zapnúť integráciu v týchto prehliadačoch: + + + &Google Chrome + &Google Chrome + + + &Firefox + &Firefox + + + &Chromium + &Chromium + + + &Vivaldi + &Vivaldi + + + Show a &notification when credentials are requested + Credentials mean login data requested via browser extension + Zobraziť upozor&nenie, keď sú požadované údaje + + + Re&quest to unlock the database if it is locked + Po&žiadať o odomknutie databázy, ak je zamknutá + + + Only entries with the same scheme (http://, https://, ...) are returned. + Vrátené budú len položky s rovnakou schémou (http://, https://, …). + + + &Match URL scheme (e.g., https://...) + Zhoda sché&m URL (napr., https://…) + + + Only returns the best matches for a specific URL instead of all entries for the whole domain. + Vrátiť len najlepšie zhody danej URL, namiesto všetkých položiek celej domény. + + + &Return only best-matching credentials + V&rátiť len údaje s najlepšou zhodou + + + Sort &matching credentials by title + Credentials mean login data requested via browser extension + Zoradiť vyhovujúce údaje podľa &názvu + + + Sort matching credentials by &username + Credentials mean login data requested via browser extension + Zoradiť vyhovujúce údaje podľa p&už. mena + + + &Disconnect all browsers + O&pojiť všetky prehliadače + + + Forget all remembered &permissions + Zabudnúť všetky zapamätané &povolenia + + + Advanced + Pokročilé + + + Never &ask before accessing credentials + Credentials mean login data requested via browser extension + Nikdy s&a nepýtať pred prístupom k údajom + + + Never ask before &updating credentials + Credentials mean login data requested via browser extension + Nikdy sa nepýtať pred &úpravou údajov + + + Only the selected database has to be connected with a client. + S klientom má byť pripojená len zvolená databáza. + + + Searc&h in all opened databases for matching credentials + Credentials mean login data requested via browser extension + &Hľadať vyhovujúce údaje vo všetkých databázach + + + Automatically creating or updating string fields is not supported. + Automatické vytváranie alebo úprava textových polí nie je podporovaná. + + + &Return advanced string fields which start with "KPH: " + V&rátiť reťazce pokročilých polí, ktoré začínajú na „KPH: ” + + + Updates KeePassXC or keepassxc-proxy binary path automatically to native messaging scripts on startup. + Pri štarte automaticky aktualizovať cestu spustiteľného súboru s KeePassXC alebo keepassxc-proxy na skripty posielania správ medzi prehliadačom a KeePassXC (native messaging). + + + Update &native messaging manifest files at startup + Pri štarte automaticky aktualizovať súbory manifestu správ medzi prehliadačom a KeePassXC (native messaging) + + + Support a proxy application between KeePassXC and browser extension. + Podporovať aplikáciu proxy medzi KeePassXC a rozšírením prehliadača. + + + Use a &proxy application between KeePassXC and browser extension + &Použiť aplikáciu proxy medzi KeePassXC a rozšírením prehliadača. + + + Use a custom proxy location if you installed a proxy manually. + Použiť vlastné umiestnenie proxy, ak ste nainštalovali proxy manuálne. + + + Use a &custom proxy location + Meant is the proxy for KeePassXC-Browser + Použiť &vlastné umiestnenie proxy + + + Browse... + Button for opening file dialog + Prechádzať… + + + <b>Warning:</b> The following options can be dangerous! + <b>Upozornenie:</b> nasledujúce voľby môžu byť nebezpečné! + + + Executable Files (*.exe);;All Files (*.*) + Spustiteľné súbory (*.exe);;Všetky súbory(*.*) + + + Executable Files (*) + Spustiteľné súbory (*) + + + Select custom proxy location + Zvoliť vlastné umiestnenie proxy + + + We're sorry, but KeePassXC-Browser is not supported for Snap releases at the moment. + Prepáčte, ale KeePassXC-Prehliadač nie je v súčasnosti podporovaný pre vydania Snap. + + + + BrowserService + + KeePassXC: New key association request + KeePassXC: Nová požiadavka priradenia kľúča + + + You have received an association request for the above key. + +If you would like to allow it access to your KeePassXC database, +give it a unique name to identify and accept it. + Obdržali ste požiadavku na priradenie vyššie uvedeného kľúča. + +Ak mu chcete umožniť prístup do databázy KeePassXC, +zadajte mu jedinečný názov na identifikáciu a potvrďte ho. + + + Save and allow access + Uložiť a povoliť prístup + + + KeePassXC: Overwrite existing key? + KeePassXC: Prepísať existujúci kľúč? + + + A shared encryption key with the name "%1" already exists. +Do you want to overwrite it? + Zdiľaný šifrovací kľúč s menom „%1” už existuje. +Chcete ho prepísať? + + + KeePassXC: Update Entry + KeePassXC: Upraviť položku + + + Do you want to update the information in %1 - %2? + Chcete upraviť informácie v %1 – %2? + + + KeePassXC: Database locked! + KeePassXC: Databáza zamknutá! + + + The active database is locked! +Please unlock the selected database or choose another one which is unlocked. + Aktívna databáza je zamknutá! +Prosím, odomknite zvolenú databázu alebo zvoľte inú, ktorá nie je zamknutá. + + + KeePassXC: Settings not available! + KeePassXC: Nastavenia nie sú dostupné! + + + The active database does not contain a settings entry. + Aktívna databáza neobsahuje položku nastavenia. + + + KeePassXC: No keys found + KeePassXC: Nenájdené žiadne kľúče + + + No shared encryption keys found in KeePassXC Settings. + V nastavenia KeePassXC neboli nájdené žiadne šifrovacie kľúče. + + + KeePassXC: Removed keys from database + KeePassXC: Klúče odstránené z databázy + + + Successfully removed %n encryption key(s) from KeePassXC settings. + Úspešne odstránený %n šifrovací kľúč z nastavení KeePassXC.Úspešne odstránené %n šifrovacie kľúče z nastavení KeePassXC.Úspešne odstránených %n šifrovacích kľúčov z nastavení KeePassXC.Úspešne odstránených %n šifrovacích kľúčov z nastavení KeePassXC. + + + Removing stored permissions… + Odstraňovanie uložených povolení… + + + Abort + Zrušiť + + + KeePassXC: Removed permissions + KeePassXC: Povolenia odstránené + + + Successfully removed permissions from %n entry(s). + Úspešne odstránené povolenia z %n položky.Úspešne odstránené povolenia z %n položiek.Úspešne odstránené povolenia z %n položiek.Úspešne odstránené povolenia z %n položiek. + + + KeePassXC: No entry with permissions found! + KeePassXC: Nenájdená žiadna položka s povoleniami! + + + The active database does not contain an entry with permissions. + Aktívna databáza neobsahuje položku s povoleniami. + + + + ChangeMasterKeyWidget + + Password + Heslo + + + Enter password: + Zadajte heslo: + + + Repeat password: + Zopakujte heslo: + + + &Key file + Súbor &kľúča + + + Browse + Prechádzať + + + Create + Vytvoriť + + + Cha&llenge Response + Vý&zva – Odpoveď + + + Refresh + Obnoviť + + + Key files + Súbory kľúčov + + + All files + Všetky súbory + + + Create Key File... + Vytvoriť súbor kľúča... + + + Unable to create Key File : + Nemožno vytvoriť súbor kľúča: + + + Select a key file + Zvoľte súbor kľúča + + + Empty password + Prázdne heslo + + + Do you really want to use an empty string as password? + Naozaj chcete použiť prázdny reťazec ako heslo? + + + Different passwords supplied. + Zadané heslá s líšia. + + + Failed to set %1 as the Key file: +%2 + Zlyhalo nastavenie %1 ako súboru kľúča: +%2 + + + Legacy key file format + Starý formát kľúča + + + You are using a legacy key file format which may become +unsupported in the future. + +Please consider generating a new key file. + Používate starý formát súboru kľúča, ktorý už nemusí byť +v budúcnosti podporovaný . + +Prosím, zvážte vygenerovanie nového súboru kľúča. + + + Changing master key failed: no YubiKey inserted. + Zmena hlavného kľúča zlyhala: nie je vložený YubiKey. + + + + CloneDialog + + Clone Options + Voľby klonovania + + + Append ' - Clone' to title + Pripojiť do názvu „- Klon” + + + Replace username and password with references + Nahradiť použ. meno a heslo odkazmi + + + Copy history + Kopírovať históriu + + + + CsvImportWidget + + Import CSV fields + Importovať polia CSV + + + filename + meno súboru + + + size, rows, columns + veľkosť, riadky, stĺpce + + + Encoding + Kódovanie + + + Codec + Kodek + + + Text is qualified by + Text je vymedzený pomocou + + + Fields are separated by + Polia sú oddelené pomocou + + + Comments start with + Komentáre začínajú znakom + + + First record has field names + Prvý záznam obsahuje názvy polí + + + Number of headers line to discard + Počet riadkov hlavičky na zahodenie + + + Consider '\' an escape character + Považovať „\” za znak „escape” + + + Preview + Ukážka + + + Column layout + Rozloženie stĺpcov + + + Not present in CSV file + Neexistuje v súbore CSV + + + Empty fieldname + Prázdny názov poľa + + + column + stĺpec + + + Imported from CSV file + Importované zo súboru CSV + + + Original data: + Pôvodné dáta: + + + Error(s) detected in CSV file ! + V súbore CSV zistená chyba(y)! + + + more messages skipped] + ďalšie správy preskočené] + + + Error + Chyba + + + CSV import: writer has errors: + + Import CSV: zapisovač má chyby: + + + + + CsvImportWizard + + Error + Chyba + + + Unable to calculate master key + Nemožno vypočítať hlavný kľúč + + + + CsvParserModel + + %n byte(s), + %n bajt%n bajty%n bajtov%n bajtov + + + %n row(s), + %n riadok%n riadky%n riadkov%n riadkov + + + %n column(s) + %n stĺpec%n stĺpce%n stĺpcov%n stĺpcov + + + + DatabaseOpenWidget + + Enter master key + Zadajte hlavný kľúč + + + Key File: + Súbor kľúča: + + + Password: + Heslo: + + + Browse + Prechádzať + + + Refresh + Obnoviť + + + Challenge Response: + Výzva – odpoveď: + + + Unable to open the database. + Nemožno otvoriť databázu. + + + Can't open key file + Nemožno otvoriť súbor kľúča + + + Legacy key file format + Starý formát kľúča + + + You are using a legacy key file format which may become +unsupported in the future. + +Please consider generating a new key file. + Používate starý formát súboru kľúča, ktorý už nemusí byť +v budúcnosti podporovaný . + +Prosím, zvážte vygenerovanie nového súboru kľúča. + + + Don't show this warning again + Nezobrazovať znova toto upozornenie + + + All files + Všetky súbory + + + Key files + Súbory kľúčov + + + Select key file + Zvoľte súbor kľúča + + + + DatabaseRepairWidget + + Repair database + Opraviť databázu + + + Error + Chyba + + + Can't open key file + Nemožno otvoriť súbor kľúča + + + Unable to open the database. + Nemožno otvoriť databázu. + + + Database opened fine. Nothing to do. + Databáza úspešne otvorená. Nič netreba vykonať. + + + Success + Úspešné + + + The database has been successfully repaired +You can now save it. + Databáza bola úspešne opravená +Môžete ju teraz uložiť. + + + Unable to repair the database. + Nemožno opraviť databázu. + + + + DatabaseSettingsWidget + + General + Všeobecné + + + Encryption + Šifrovanie + + + Number of rounds too high + Key transformation rounds + Počet prechodov príliš vysoký + + + You are using a very high number of key transform rounds with Argon2. + +If you keep this number, your database may take hours or days (or even longer) to open! + Zadali ste príliš vysoký počet prechodov transformácie kľúča pre Argon2. + +Ak ponecháte toto číslo, môže otvorenie databázy trvať hodiny alebo i dni (dokonca i dlhšie)! + + + Understood, keep number + Rozumiem, nechať hodnotu + + + Cancel + Zrušiť + + + Number of rounds too low + Key transformation rounds + Počet prechodov príliš nízky + + + You are using a very low number of key transform rounds with AES-KDF. + +If you keep this number, your database may be too easy to crack! + Zadali ste príliš nízky počet prechodov transformácie kľúča pre Argon2. + +Ak ponecháte toto číslo, môže byť prelomenie ochrany databázy príliš jednoduché! + + + KDF unchanged + KDF nezmenené + + + Failed to transform key with new KDF parameters; KDF unchanged. + Zlyhala transformácia kľúča s novými parametrami KDF; KDF nezmenené. + + + MiB + Abbreviation for Mebibytes (KDF settings) + MiBMiBMiBMiB + + + thread(s) + Threads for parallel execution (KDF settings) + vláknovláknavlákienvlákien + + + + DatabaseSettingsWidgetEncryption + + Encryption Algorithm: + Šifrovací algoritmus: + + + AES: 256 Bit (default) + AES: 256 bitov (predvolené) + + + Twofish: 256 Bit + Twofish: 256 bitov + + + Key Derivation Function: + Funkcia odvodenia kľúča (KDF): + + + Transform rounds: + Počet transformácií: + + + Benchmark 1-second delay + 1-sekundové oneskorenie testu výkonu + + + Memory Usage: + Využitie pamäte: + + + Parallelism: + Paralelizmus: + + + + DatabaseSettingsWidgetGeneral + + Database Meta Data + Meta dáta databázy + + + Database name: + Meno databázy: + + + Database description: + Popis databázy: + + + Default username: + Predvolené použ. meno: + + + History Settings + Nastavenia histórie + + + Max. history items: + Max. položiek histórie: + + + Max. history size: + Max. veľkosť histórie: + + + MiB + MiB + + + Use recycle bin + Použiť kôš + + + Additional Database Settings + Dodatočné nastavenia databázy + + + Enable &compression (recommended) + Zapnúť &komprimáciu (odporúčané) + + + + DatabaseTabWidget + + Root + Root group + Koreň + + + KeePass 2 Database + Databáza KeePass 2 + + + All files + Všetky súbory + + + Open database + Otvoriť databázu + + + File not found! + Súbor nenájdený! + + + Unable to open the database. + Nemožno otvoriť databázu. + + + File opened in read only mode. + Súbor otvorený v režime len na čítanie. + + + Open CSV file + Otvoriť súbor CSV + + + CSV file + Súbor CSV + + + All files (*) + Všetky súbory (*) + + + Merge database + Zlúčiť databázu + + + Open KeePass 1 database + Otvoriť databázu KeePass 1 + + + KeePass 1 database + Databáza KeePass 1 + + + Close? + Zatvoriť? + + + "%1" is in edit mode. +Discard changes and close anyway? + „%1” je v režime úprav. +Zahodiť zmeny a zatvoriť? + + + Save changes? + Uložiť zmeny? + + + "%1" was modified. +Save changes? + „%1” bol zmenený. +Uložiť zmeny? + + + Writing the database failed. + Zápis databázy zlyhal. + + + Passwords + Heslá + + + Save database as + Uložiť databázu ako + + + Export database to CSV file + Exportovať databázu do súboru CSV + + + Writing the CSV file failed. + Zápis do súboru CSV zlyhal. + + + New database + Nová databáza + + + locked + zamknuté + + + Lock database + Zamknúť databázu + + + Can't lock the database as you are currently editing it. +Please press cancel to finish your changes or discard them. + Databázu nemožno zamknúť, práve ju upravujete. +Prosím, zvoľte Zrušiť na dokončenie svojich úprav alebo ich zahoďte. + + + This database has been modified. +Do you want to save the database before locking it? +Otherwise your changes are lost. + Táto databáza bola zmenená. +Chcete uložiť zmeny pred jej uzamknutím? +Inak budú zmeny stratené. + + + Disable safe saves? + Vypnúť bezpečné ukladanie? + + + KeePassXC has failed to save the database multiple times. This is likely caused by file sync services holding a lock on the save file. +Disable safe saves and try again? + KeePassXC pri ukladaní databázy viac krát zlyhal. Pravdepodobne to je spôsobené službou synchronizácie súborov, ktorá drží zámok na ukladanom súbore. +Vypnúť bezpečné ukladanie a skúsiť znova? + + + + DatabaseWidget + + Searching... + Hľadanie… + + + Change master key + Zmeniť hlavný kľúč + + + Delete entry? + Odstrániť položku? + + + Do you really want to delete the entry "%1" for good? + Naozaj chcete nadobro odstrániť položku „%1”? + + + Delete entries? + Odstrániť položky? + + + Do you really want to delete %1 entries for good? + Naozaj chcete nadobro odstrániť %1 položky? + + + Move entry to recycle bin? + Presunúť položku do koša? + + + Do you really want to move entry "%1" to the recycle bin? + Naozaj chcete presunúť položku „%1” do koša? + + + Move entries to recycle bin? + Presunúť položky do koša? + + + Do you really want to move %n entry(s) to the recycle bin? + Naozaj chcete presunúť %1 položku do koša?Naozaj chcete presunúť %1 položky do koša?Naozaj chcete presunúť %1 položiek do koša?Naozaj chcete presunúť %1 položiek do koša? + + + Execute command? + Vykonať príkaz? + + + Do you really want to execute the following command?<br><br>%1<br> + Naozaj chcete spustiť nasledujúci príkaz?<br><br>%1<br> + + + Remember my choice + Zapamätať si moju voľbu + + + Delete group? + Odstrániť skupinu? + + + Do you really want to delete the group "%1" for good? + Naozaj chcete nadobro odstrániť skupinu „%1”? + + + Unable to calculate master key + Nemožno vypočítať hlavný kľúč + + + No current database. + Žiadna otvorená databáza. + + + No source database, nothing to do. + Žiadna zdrojová databáza, niet čo robiť. + + + Search Results (%1) + Výsledky hľadania (%1) + + + No Results + Žiadne výsledky + + + File has changed + Súbor bol zmenený + + + The database file has changed. Do you want to load the changes? + Súbor databázy bol zmenený. Chcete načítať zmeny? + + + Merge Request + Požiadavka zlúčenia + + + The database file has changed and you have unsaved changes. +Do you want to merge your changes? + Súbor databázy bol zmenený a Vy máte neuložené zmeny. +Chcete zlúčiť svoje zmeny? + + + Could not open the new database file while attempting to autoreload this database. + Pri pokuse o automatické načítanie tejto databázy nemožno otvoriť nový súbor databázy. + + + Empty recycle bin? + Vyprázdniť kôš? + + + Are you sure you want to permanently delete everything from your recycle bin? + Naozaj chcete na trvalo odstrániť všetko zo svojho koša? + + + + DetailsWidget + + Generate TOTP Token + Generovať token TOPT + + + Close + Zatvoriť + + + General + Všeobecné + + + Password + Heslo + + + URL + URL + + + Expiration + Platí do + + + Username + Používateľské meno + + + Autotype + Automatické vypĺňanie + + + Searching + Hľadanie + + + Attributes + Atribúty + + + Attachments + Prílohy + + + Notes + Poznámky + + + Window + Okno + + + Sequence + Postupnosť + + + Search + Hľadať + + + Clear + Vymazať + + + Never + Nikdy + + + [PROTECTED] + [CHRÁNENÉ] + + + Disabled + Vypnuté + + + Enabled + Zapnuté + + + + EditEntryWidget + + Entry + Položka + + + Advanced + Pokročilé + + + Icon + Ikona + + + Auto-Type + Automatické vypĺňanie + + + Properties + Vlastnosti + + + History + História + + + SSH Agent + Agent SSH + + + n/a + neznáme + + + (encrypted) + (šifrované) + + + Select private key + Zvoľte súkromný kľúč + + + File too large to be a private key + Súbor je na súkromný kľúč príliš veľký + + + Failed to open private key + Zlyhalo otvorenie súkromného kľúča + + + Entry history + História položky + + + Add entry + Pridať položku + + + Edit entry + Upraviť položku + + + Different passwords supplied. + Zadané heslá s líšia. + + + New attribute + Nový atribút + + + Confirm Remove + Potvrďte odstránenie + + + Are you sure you want to remove this attribute? + Naozaj chcete odstrániť tento atribút? + + + [PROTECTED] + [CHRÁNENÉ] + + + Press reveal to view or edit + Použite Odkryť, na zobrazenie alebo úpravu + + + Tomorrow + Zajtra + + + %n week(s) + %n týždeň%n týždne%n týždňov%n týždňov + + + %n month(s) + %n mesiac%n mesiace%n mesiacov%n mesiacov + + + 1 year + 1 rok + + + Apply generated password? + Použiť generované heslo? + + + Do you want to apply the generated password to this entry? + Chcete v tejto položke použiť generované heslo? + + + Entry updated successfully. + Položka úspešne zmenená. + + + + EditEntryWidgetAdvanced + + Additional attributes + Ďalšie atribúty + + + Add + Pridať + + + Remove + Odstrániť + + + Edit Name + Upraviť názov + + + Protect + Chrániť + + + Reveal + Odkryť + + + Attachments + Prílohy + + + Foreground Color: + Farba popredia: + + + Background Color: + Farba pozadia: + + + + EditEntryWidgetAutoType + + Enable Auto-Type for this entry + Zapnúť Automatické vypĺňanie pre túto položku + + + Inherit default Auto-Type sequence from the &group + Zdediť predvolenú postupnosť Automatického &vypĺňania zo skupiny + + + &Use custom Auto-Type sequence: + Po&užiť vlastnú postupnosť Automatického vypĺňania: + + + Window Associations + Priradenie okna + + + + + + + + + - + - + + + Window title: + Názov okna: + + + Use a specific sequence for this association: + Pre toto priradenie použiť špecifickú postupnosť: + + + + EditEntryWidgetHistory + + Show + Zobraziť + + + Restore + Vrátiť + + + Delete + Odstrániť + + + Delete all + Odstrániť všetko + + + + EditEntryWidgetMain + + URL: + URL: + + + Password: + Heslo: + + + Repeat: + Opakovať: + + + Title: + Názov: + + + Notes + Poznámky + + + Presets + Predvoľby + + + Toggle the checkbox to reveal the notes section. + Prepnite zaškrtávacie pole na odkrytie sekcie poznámok. + + + Username: + Použ. meno: + + + Expires + Platí do + + + + EditEntryWidgetSSHAgent + + Form + Formulár + + + Remove key from agent after + Odstrániť kľúč z agenta po + + + seconds + sekundy + + + Fingerprint + Odtlačok + + + Remove key from agent when database is closed/locked + Odstrániť kľúč z agenta po zatvorení/zamknutí databázy + + + Public key + Verejný kľúč + + + Add key to agent when database is opened/unlocked + Pridať kľúč do agenta keď je databáza otvorená/odomknutá + + + Comment + Komentár + + + Decrypt + Dešifrovať + + + n/a + neznáme + + + Copy to clipboard + Kopírovať do schránky + + + Private key + Súkromný kľúč + + + External file + Externý súbor + + + Browse... + Button for opening file dialog + Prechádzať… + + + Attachment + Príloha + + + Add to agent + Pridať do agenta + + + Remove from agent + Odstrániť z agenta + + + Require user confirmation when this key is used + Vyžadovať potvrdenie používateľa, keď je tento kľúč použitý + + + + EditGroupWidget + + Group + Skupina + + + Icon + Ikona + + + Properties + Vlastnosti + + + Add group + Pridať skupinu + + + Edit group + Upraviť skupinu + + + Enable + Zapnúť + + + Disable + Vypnúť + + + Inherit from parent group (%1) + Zdediť z nadradenej skupiny (%1) + + + + EditGroupWidgetMain + + Name + Názov + + + Notes + Poznámky + + + Expires + Platí do + + + Search + Hľadať + + + Auto-Type + Automatické vypĺňanie + + + &Use default Auto-Type sequence of parent group + Po&užiť predvolenú postupnosť Automatického vypĺňania rodičovskej skupiny + + + Set default Auto-Type se&quence + Nastaviť predvolenú &postupnosť Automatického vypĺňania + + + + EditWidgetIcons + + &Use default icon + Po&užiť predvolenú ikonu + + + Use custo&m icon + Použiť &vlastnú ikonu + + + Add custom icon + Pridať vlastnú ikonu + + + Delete custom icon + Odstrániť vlastnú ikonu + + + Download favicon + Stiahnuť ikonu stránky + + + Unable to fetch favicon. + Nemožno stiahnuť ikonu stránky. + + + Hint: You can enable Google as a fallback under Tools>Settings>Security + Tip: Môžete zapnúť Google ako poslednú záchranu v Nástroje > Nastavenia > Bezpečnosť + + + Images + Obrázky + + + All files + Všetky súbory + + + Select Image + Zvoľte obrázok + + + Can't read icon + Nemožno načítať ikonu + + + Custom icon already exists + Vlastná ikona už existuje + + + Confirm Delete + Potvrďte odstránenie + + + This icon is used by %1 entries, and will be replaced by the default icon. Are you sure you want to delete it? + Táto ikona je použitá %1 položkou(ami) a bude nahradená predvolenou ikonou. Naozaj ju chcete odstrániť? + + + + EditWidgetProperties + + Created: + Vytvorené: + + + Modified: + Zmenené: + + + Accessed: + Pristupované: + + + Uuid: + UUID: + + + Plugin Data + Dáta zásuvného modulu + + + Remove + Odstrániť + + + Delete plugin data? + Odstrániť dáta zásuvného modulu? + + + Do you really want to delete the selected plugin data? +This may cause the affected plugins to malfunction. + Naozaj chcete odstrániť dáta zvoleného zásuvného modulu? +Môže to spôsobiť nefunkčnosť dotknutých zásuvných modulov. + + + Key + Kľúč + + + Value + Hodnota + + + + Entry + + - Clone + Suffix added to cloned entries + – Klonovať + + + + EntryAttachmentsModel + + Name + Názov + + + Size + Veľkosť + + + + EntryAttachmentsWidget + + Form + Formulár + + + Add + Pridať + + + Remove + Odstrániť + + + Open + Otvoriť + + + Save + Uložiť + + + Select files + Zvoľte súbory + + + Are you sure you want to remove %n attachment(s)? + Naozaj chcete odstrániť %n prílohu?Naozaj chcete odstrániť %n prílohy?Naozaj chcete odstrániť %n príloh?Naozaj chcete odstrániť %n príloh? + + + Confirm Remove + Potvrďte odstránenie + + + Save attachments + Uložiť prílohy + + + Unable to create directory: +%1 + Nemožno vytvoriť zložku: +%1 + + + Are you sure you want to overwrite the existing file "%1" with the attachment? + Naozaj chcete prepísať existujúci súbor „%1” prílohou? + + + Confirm overwrite + Potvrďte prepísanie + + + Unable to save attachments: +%1 + Nemožno uložiť prílohy: +%1 + + + Unable to open attachment: +%1 + Nemožno otvoriť prílohu: +%1 + + + Unable to open attachments: +%1 + Nemožno otvoriť prílohy: +%1 + + + Unable to open files: +%1 + Nemožno otvoriť súbory: +%1 + + + + EntryAttributesModel + + Name + Názov + + + + EntryHistoryModel + + Last modified + Posledná úprava + + + Title + Nadpis + + + Username + Použ. meno: + + + URL + URL + + + + EntryModel + + Ref: + Reference abbreviation + Ref: + + + Group + Skupina + + + Title + Nadpis + + + Username + Použ. meno: + + + URL + URL + + + Never + Nikdy + + + Password + Heslo + + + Notes + Poznámky + + + Expires + Platí do + + + Created + Vytvorené + + + Modified + Upravené + + + Accessed + Pristupované + + + Attachments + Prílohy + + + + EntryView + + Customize View + Prispôsobiť zobrazenie + + + Hide Usernames + Skryť použ. mená + + + Hide Passwords + Skryť heslá + + + Fit to window + Prispôsobiť oknu + + + Fit to contents + Prispôsobiť obsahu + + + Reset to defaults + Obnoviť predvolené + + + Attachments (icon) + Prílohy (ikona) + + + + Group + + Recycle Bin + Kôš + + + + HostInstaller + + KeePassXC: Cannot save file! + KeePassXC: Súbor nemožno uložiť! + + + Cannot save the native messaging script file. + Nemožno uložiť súbor skriptu správ medzi prehliadačom a KeePassXC (native messaging). + + + + HttpPasswordGeneratorWidget + + Length: + Dĺžka: + + + Character Types + Typy znakov + + + Upper Case Letters + Veľké písmená + + + A-Z + A-Ž + + + Lower Case Letters + Malé písmená + + + a-z + a-ž + + + Numbers + Číslice + + + 0-9 + 0-9 + + + Special Characters + Špeciálne znaky + + + /*_& ... + /*_& ... + + + Exclude look-alike characters + Vynechať podobne vyzerajúce znaky + + + Ensure that the password contains characters from every group + Zaistiť aby heslo obsahovalo znaky každej skupiny + + + Extended ASCII + Rozšírené ASCII + + + + KMessageWidget + + &Close + &Zatvoriť + + + Close message + Zatvoriť správu + + + + Kdbx3Reader + + Unable to calculate master key + Nemožno vypočítať hlavný kľúč + + + Unable to issue challenge-response. + Nemožno vyvolať výzvu – odpoveď. + + + Wrong key or database file is corrupt. + Zlý kľúč alebo je súbor databázy poškodený. + + + + Kdbx3Writer + + Unable to issue challenge-response. + Nemožno vyvolať výzvu – odpoveď. + + + Unable to calculate master key + Nemožno vypočítať hlavný kľúč + + + + Kdbx4Reader + + missing database headers + chýbajúce hlavičky databázy + + + Unable to calculate master key + Nemožno vypočítať hlavný kľúč + + + Invalid header checksum size + Neplatná veľkosť kontrolného súčtu hlavičky + + + Header SHA256 mismatch + Nezhoda hlavičky SHA256 + + + Wrong key or database file is corrupt. (HMAC mismatch) + Zlý kľúč alebo je súbor databázy poškodený (nezhoda HMAC). + + + Unknown cipher + Neznáma šifra + + + Invalid header id size + Neplatná veľkosť ID hlavičky + + + Invalid header field length + Neplatná dĺžka poľa hlavičky + + + Invalid header data length + Neplatná dĺžka dát hlavičky + + + Failed to open buffer for KDF parameters in header + Zlyhalo otvorenie bufera parametrov KDF v hlavičke + + + Unsupported key derivation function (KDF) or invalid parameters + Nepodporovaná funkcia odvodenia kľúča (KDF) alebo neplatné parametre + + + Legacy header fields found in KDBX4 file. + V súbore KDBX4 nájdené staré polia hlavičiek. + + + Invalid inner header id size + Neplatná veľkosť ID vnútornej hlavičky + + + Invalid inner header field length + Neplatná dĺžka poľa vnútornej hlavičky + + + Invalid inner header binary size + Neplatná binárna veľkosť vnútornej hlavičky + + + Unsupported KeePass variant map version. + Translation: variant map = data structure for storing meta data + Nepodporovaná verzia meta-dát KeePass. + + + Invalid variant map entry name length + Translation: variant map = data structure for storing meta data + Neplatná dĺžka názvu položky meta-dát + + + Invalid variant map entry name data + Translation: variant map = data structure for storing meta data + Neplatné dáta názvu položky meta-dát + + + Invalid variant map entry value length + Translation: variant map = data structure for storing meta data + Neplatná dĺžka hodnoty položky meta-dát + + + Invalid variant map entry value data + Translation comment: variant map = data structure for storing meta data + Neplatné dáta hodnoty položky meta-dát + + + Invalid variant map Bool entry value length + Translation: variant map = data structure for storing meta data + Neplatná dĺžka hodnoty logickej položky meta-dát + + + Invalid variant map Int32 entry value length + Translation: variant map = data structure for storing meta data + Neplatná dĺžka 32 bitovej celočíselnej hodnoty položky meta-dát + + + Invalid variant map UInt32 entry value length + Translation: variant map = data structure for storing meta data + Neplatná dĺžka 32 bitovej kladnej celočíselné hodnoty meta-dát + + + Invalid variant map Int64 entry value length + Translation: variant map = data structure for storing meta data + Neplatná dĺžka 64 bitovej celočíselnej hodnoty meta-dát + + + Invalid variant map UInt64 entry value length + Translation: variant map = data structure for storing meta data + Neplatná dĺžka 64 bitovej kladnej celočíselné hodnoty meta-dát + + + Invalid variant map entry type + Translation: variant map = data structure for storing meta data + Neplatný typ položky meta-dát + + + Invalid variant map field type size + Translation: variant map = data structure for storing meta data + Neplatná veľkosť typu poľa meta-dát + + + + Kdbx4Writer + + Invalid symmetric cipher algorithm. + Neplatný algoritmus symetrickej šifry. + + + Invalid symmetric cipher IV size. + IV = Initialization Vector for symmetric cipher + Neplatná veľkosť IV symetrickej šifry. + + + Unable to calculate master key + Nemožno vypočítať hlavný kľúč + + + Failed to serialize KDF parameters variant map + Translation comment: variant map = data structure for storing meta data + Zlyhala serializácia parametrov KDF meta-dát + + + + KdbxReader + + Invalid cipher uuid length + Neplatná dĺžka UUID šifry + + + Unsupported cipher + Nepodporovaná šifra + + + Invalid compression flags length + Neplatná dĺžka príznakov komprimácie + + + Unsupported compression algorithm + Nepodporovaný komprimačný algoritmus + + + Invalid master seed size + Neplatná veľkosť hlavnej náhodnosti (seed) + + + Invalid transform seed size + Neplatná transformácia náhodnosti (seed) + + + Invalid transform rounds size + Neplatná veľkosť transformačných prechodov + + + Invalid start bytes size + Neplatná počiatočná veľkosť bajtov + + + Invalid random stream id size + Neplatná veľkosť ID náhodného prúdu + + + Invalid inner random stream cipher + Neplatná vnútorná náhodnosť prúdovej šifry + + + Not a KeePass database. + Nie je databáza KeePass + + + The selected file is an old KeePass 1 database (.kdb). + +You can import it by clicking on Database > 'Import KeePass 1 database...'. +This is a one-way migration. You won't be able to open the imported database with the old KeePassX 0.4 version. + Zvolený súbor je stará databáza KeePass 1 (.kdb). + +Môžete ju importovať kliknutím na Databáza > „Importovať databázu KeePass 1…”. +Je to jednosmerná migrácia. Importovanú databázu už nebude možné otvoriť pomocou starej verzie KeePassX 0.4. + + + Unsupported KeePass 2 database version. + Nepodporovaná verzia databázy KeePass 2. + + + + KdbxXmlReader + + XML parsing failure: %1 + Chyba spracovania XML: %1 + + + No root group + Žiadna koreňová skupina + + + Missing icon uuid or data + Chýbajúce UUID ikony alebo dáta + + + Missing custom data key or value + Chýbajúci kľúč alebo hodnota vlastných dát + + + Multiple group elements + Viaceré položky skupiny + + + Null group uuid + Žiadne UUID skupiny + + + Invalid group icon number + Neplatné číslo ikony skupiny + + + Invalid EnableAutoType value + Neplatná hodnota EnableAutoType + + + Invalid EnableSearching value + Neplatná hodnota EnableSearching + + + No group uuid found + Nenájdené UUID skupiny + + + Null DeleteObject uuid + Žiadne UUID DeleteObject + + + Missing DeletedObject uuid or time + Chýbajúci UUID alebo čas DeletedObject + + + Null entry uuid + Žiadne UUID položky + + + Invalid entry icon number + Neplatné číslo ikony položky + + + History element in history entry + Prvok histórie v položke histórie + + + No entry uuid found + Nenájdené UUID položky + + + History element with different uuid + Prvok histórie s iným UUID + + + Unable to decrypt entry string + Nemožno dešifrovať text položky + + + Duplicate custom attribute found + Nájdený duplicitný vlastný atribút + + + Entry string key or value missing + Chýba textový kľúč alebo hodnota položky + + + Duplicate attachment found + Nájdená duplicitná príloha + + + Entry binary key or value missing + Chýba binárny kľúč alebo hodnota položky + + + Auto-type association window or sequence missing + Chýba priradenie okna alebo postupnosť Automatického vypĺňania + + + Invalid bool value + Neplatná logická hodnota + + + Invalid date time value + Neplatná hodnota dátumu/času + + + Invalid color value + Neplatná hodnota farby + + + Invalid color rgb part + Neplatná časť RGB farby + + + Invalid number value + Neplatná číselná hodnota + + + Invalid uuid value + Neplatná hodnota UUID + + + Unable to decompress binary + Translator meant is a binary data inside an entry + Nemožno dekomprimovať binárku + + + + KeePass1OpenWidget + + Import KeePass1 database + Importovať databázu KeePass 1 + + + Unable to open the database. + Nemožno otvoriť databázu. + + + + KeePass1Reader + + Unable to read keyfile. + Nemožno čítať súbor kľúča. + + + Not a KeePass database. + Nie je databáza KeePass + + + Unsupported encryption algorithm. + Nepodporovaný šifrovací algoritmus. + + + Unsupported KeePass database version. + Nepodporovaná verzia databázy KeePass. + + + Unable to read encryption IV + IV = Initialization Vector for symmetric cipher + Nemožno čítať šifrovací IV + + + Invalid number of groups + Neplatný počet skupín + + + Invalid number of entries + Neplatný počet položiek + + + Invalid content hash size + Neplatná veľkosť odtlačku obsahu + + + Invalid transform seed size + Neplatná transformácia hlavnej náhodnosti (seed) + + + Invalid number of transform rounds + Neplatný počet transformačných prechodov + + + Unable to construct group tree + Nemožno zostaviť strom skupiny + + + Root + Koreň + + + Unable to calculate master key + Nemožno vypočítať hlavný kľúč + + + Wrong key or database file is corrupt. + Zlý kľúč alebo je súbor databázy poškodený. + + + Key transformation failed + Transformácia kľúča zlyhala + + + Invalid group field type number + Neplatné číslo typu poľa skupiny + + + Invalid group field size + Neplatná veľkosť poľa skupiny + + + Read group field data doesn't match size + Prečítané dáta poľa skupiny nezodpovedajú veľkosťou + + + Incorrect group id field size + Nesprávna veľkosť ID poľa skupiny + + + Incorrect group creation time field size + Nesprávna veľkosť poľa času vytvorenia skupiny + + + Incorrect group modification time field size + Nesprávna veľkosť poľa času úpravy skupiny + + + Incorrect group access time field size + Nesprávna veľkosť poľa času prístupu skupiny + + + Incorrect group expiry time field size + nesprávna veľkosť poľa vypršania platnosti skupiny + + + Incorrect group icon field size + Nesprávna veľkosť poľa ikony skupiny + + + Incorrect group level field size + Nesprávna veľkosť poľa úrovne skupiny + + + Invalid group field type + Neplatný typ poľa skupiny + + + Missing group id or level + Chýbajúce ID alebo úrovne skupiny + + + Missing entry field type number + Chýbajúce číslo typu poľa položky + + + Invalid entry field size + Neplatná veľkosť poľa položky + + + Read entry field data doesn't match size + Prečítané dáta poľa položky majú neplatnú veľkosť + + + Invalid entry uuid field size + Neplatná veľkosť UUID poľa položky + + + Invalid entry group id field size + Neplatná veľkosť ID poľa položky skupiny + + + Invalid entry icon field size + Neplatná veľkosť poľa ikony položky + + + Invalid entry creation time field size + Neplatná veľkosť poľa vytvorenia položky + + + Invalid entry modification time field size + Neplatná veľkosť poľa poslednej úpravy + + + Invalid entry expiry time field size + Neplatná veľkosť poľa vypršania platnosti + + + Invalid entry field type + Neplatný typ poľa položky + + + + KeePass2 + + AES: 256-bit + AES: 256-b + + + Twofish: 256-bit + Twofish: 256-b + + + ChaCha20: 256-bit + ChaCha20: 256-b + + + AES-KDF (KDBX 4) + AES-KDF (KDBX 4) + + + AES-KDF (KDBX 3.1) + AES-KDF (KDBX 3.1) + + + Argon2 (KDBX 4 – recommended) + Argon2 (KDBX 4 – odporúčané) + + + + Main + + Existing single-instance lock file is invalid. Launching new instance. + Existujúci súbor zámku jednej inštancie nie je platný. Spúšťam novú inštanciu. + + + The lock file could not be created. Single-instance mode disabled. + Súbor zámku nemožno vytvoriť. Režim jednej inštancie vypnutý. + + + Another instance of KeePassXC is already running. + Už je spustená iná inštancia KeePassXC. + + + Fatal error while testing the cryptographic functions. + Fatálna chyba pri testovaní kryptografických funkcií. + + + KeePassXC - Error + KeePassXC – Chyba + + + + MainWindow + + &Database + &Databáza + + + &Recent databases + &Nedávne databázy + + + Import + Importovať + + + &Help + &Pomocník + + + E&ntries + Polo&žky + + + Copy att&ribute to clipboard + Kopírovať at&ribút do schránky + + + Time-based one-time password + Jednorázové heslo založené na čase (TOTP) + + + &Groups + &Skupiny + + + &Tools + &Nástroje + + + &Quit + &Koniec + + + &About + &O programe + + + &Open database... + &Otvoriť databázu… + + + &Save database + &Uložiť databázu + + + &Close database + &Zatvoriť databázu + + + &New database + &Nová databáza + + + Merge from KeePassX database + Zlúčiť z databázy KeePassX + + + &Add new entry + Pridať &novú položku + + + &View/Edit entry + &Zobraziť/upraviť položku + + + &Delete entry + O&dstrániť položku + + + &Add new group + Pridať novú &skupinu + + + &Edit group + &Upraviť skupinu + + + &Delete group + O&dstrániť skupinu + + + Sa&ve database as... + Ul&ožiť databázu ako… + + + Change &master key... + Zmeniť &hlavný kľúč… + + + &Database settings + Nastavenia &databázy + + + Database settings + Nastavenia databázy + + + &Clone entry + &Klonovať položku + + + &Find + &Nájsť + + + Copy &username + Kopírovať po&už. meno + + + Copy username to clipboard + Skopíruje používateľské meno do schránky + + + Cop&y password + Kopírovať &heslo + + + Copy password to clipboard + Skopíruje heslo do schránky + + + &Settings + Na&stavenia + + + Password Generator + Generátor hesla + + + &Perform Auto-Type + &Vykonať Automatické vypĺňanie + + + &Open URL + &Otvoriť URL + + + &Lock databases + Za&mknúť databázy + + + &Title + &Názov + + + Copy title to clipboard + Kopírovať názov do schránky + + + &URL + &URL + + + Copy URL to clipboard + Kopírovať URL do schránky + + + &Notes + &Poznámky + + + Copy notes to clipboard + Kopírovať poznámky do schránky + + + &Export to CSV file... + &Exportovať do súboru CSV… + + + Import KeePass 1 database... + Importovať databázu KeePass 1… + + + Import CSV file... + Importovať súbor CSV… + + + Re&pair database... + O&praviť databázu.. + + + Show TOTP + Zobraziť TOTP + + + Set up TOTP... + Nastaviť TOTP… + + + Copy &TOTP + Kopírovať &TOTP + + + E&mpty recycle bin + V&yprázdniť kôš + + + Clear history + Vymazať históriu + + + Access error for config file %1 + Chyba prístupu ku konfiguračnému súboru %1 + + + <p>It looks like you are using KeePassHTTP for browser integration. This feature has been deprecated and will be removed in the future.<br>Please switch to KeePassXC-Browser instead! For help with migration, visit our <a class="link" href="https://keepassxc.org/docs/keepassxc-browser-migration">migration guide</a> (warning %1 of 3).</p> + <p>Zdá sa, že na integráciu prehliadača používate KeePassHTTP. Táto možnosť je zastaraná a bude v budúcnosti odstránená.<br>Prosím, prejdite namiesto toho na na KeePassXC-Prehliadač! na pomoc s migráciou, navštívte našu <a class="link" href="https://keepassxc.org/docs/keepassxc-browser-migration">príručku migrácie</a> (upozornenie %1 z 3).</p> + + + read-only + len na čítanie + + + Settings + Nastavenia + + + Toggle window + Prepnúť okno + + + Quit KeePassXC + Skončiť KeePassXC + + + KeePass 2 Database + Databáza KeePass 2 + + + All files + Všetky súbory + + + Open database + Otvoriť databázu + + + Save repaired database + Uložiť opravenú databázu + + + Writing the database failed. + Zápis databázy zlyhal. + + + Please touch the button on your YubiKey! + Prosím, stlačte tlačidlo svojho YubiKey! + + + WARNING: You are using an unstable build of KeePassXC! +There is a high risk of corruption, maintain a backup of your databases. +This version is not meant for production use. + UPOZORNENIE: Používate nestabilné zostavenie KeePassXC! +Existuje veľké riziko poškodenia, zálohujte svoje dtabázy. +Táto verzia nie je určená na produkčné použitie. + + + + OpenSSHKey + + Invalid key file, expecting an OpenSSH key + Neplatný súbor kľúča, očakávaný je kľúč OpenSSH + + + PEM boundary mismatch + Nezhoda ohraničenia PEM + + + Base64 decoding failed + Dekódovanie Base64 zlyhalo + + + Key file way too small. + Súbor kľúča je príliš krátky. + + + Key file magic header id invalid + Neplatný ID magickej hlavičky súboru kľúča + + + Found zero keys + Nenájdené žiadne kľúče + + + Failed to read public key. + Zlyhalo čítanie verejného kľúča. + + + Corrupted key file, reading private key failed + Poškodený súbor kľúča, čítanie súkromného kľúč azlyhalo + + + No private key payload to decrypt + Žiadny obsah súkromného kľúča na dešifrovanie + + + Trying to run KDF without cipher + Pokúšate sa spustiť KDF bez šifry + + + Passphrase is required to decrypt this key + Na dešifrovanie tohoto kľúča je potrebná tajná veta + + + Key derivation failed, key file corrupted? + Odvodenie kľúča zlyhalo, súbor kľúča je poškodený? + + + Decryption failed, wrong passphrase? + Dešifrovanie zlyhalo, zlá tajná veta? + + + Unexpected EOF while reading public key + Neočakávaný koniec súboru pri čítaní verejného kľúča + + + Unexpected EOF while reading private key + Neočakávaný koniec súboru pri čítaní súkromného kľúča + + + Can't write public key as it is empty + Nemožno zapísať verejný kľúč, pretože je prázdny + + + Unexpected EOF when writing public key + Neočakávaný koniec súboru pri zápise verejného kľúča + + + Can't write private key as it is empty + Nemožno zapísať súkromný kľúč, pretože je prázdny + + + Unexpected EOF when writing private key + Neočakávaný koniec súboru pri zápise súkromného kľúča + + + Unsupported key type: %1 + Nepodporovaný typ kľúča: %1 + + + Unknown cipher: %1 + Neznáma šifra: %1 + + + Cipher IV is too short for MD5 kdf + IV šifry je príliš krátky na MD5 KDF + + + Unknown KDF: %1 + Neznáma KDF: %1 + + + Unknown key type: %1 + Neznámy typ kľúča: %1 + + + + OptionDialog + + Dialog + Dialóg + + + This is required for accessing your databases from ChromeIPass or PassIFox + Toto je vyžadované na prístup k databázam z ChromeIPass alebo PassIFox + + + Enable KeePassHTTP server + Zapnúť server KeePassHTTP + + + General + Všeobecné + + + Sh&ow a notification when credentials are requested + Credentials mean login data requested via browser extension + Z&obraziť upozornenie, keď sú požadované údaje + + + Only returns the best matches for a specific URL instead of all entries for the whole domain. + Vrátiť len najlepšie zhody danej URL, namiesto všetkých položiek celej domény. + + + &Return only best matching entries + V&rátiť len položky s najlepšou zhodou + + + Re&quest to unlock the database if it is locked + Po&žiadať o odomknutie databázy, ak je zamknutá + + + Only entries with the same scheme (http://, https://, ftp://, ...) are returned. + Vrátené budú len položky s rovnakou schémou (http://, https://, ftp://, ...). + + + &Match URL schemes + Zhoda sché&m URL + + + Sort matching entries by &username + Zoradiť vyhovujúce položky podľa p&už. mena + + + Sort &matching entries by title + Zoradiť vyhovujúce položky podľa &názvu + + + R&emove all shared encryption keys from active database + Odstrániť vš&etky zdieľané šifrovacie kľúče z aktívnej databázy + + + Re&move all stored permissions from entries in active database + Odstrániť všetky uložené povolenia z položiek aktívnej databázy + + + Password Generator + Generátor hesla + + + Advanced + Pokročilé + + + Always allow &access to entries + Vždy povoliť &prístup k položkám + + + Always allow &updating entries + Vždy povoliť &úpravu položiek + + + Only the selected database has to be connected with a client. + S klientom má byť pripojená len zvolená databáza. + + + Searc&h in all opened databases for matching entries + &Hľadať vyhovujúce položky vo všetkých otvorených databázach + + + Automatically creating or updating string fields is not supported. + Automatické vytváranie alebo úprava textových polí nie je podporovaná. + + + &Return advanced string fields which start with "KPH: " + V&rátiť reťazce pokročilých polí, ktoré začínajú na „KPH: ” + + + HTTP Port: + Port HTTP: + + + Default port: 19455 + Predvolený port: 19455 + + + KeePassXC will listen to this port on 127.0.0.1 + KeePassXC bude prijímať na tomto porte na 127.0.0.1 + + + <b>Warning:</b> The following options can be dangerous! + <b>Upozornenie:</b> nasledujúce voľby môžu byť nebezpečné! + + + <p>KeePassHTTP has been deprecated and will be removed in the future.<br>Please switch to KeePassXC-Browser instead! For help with migration, visit our <a href="https://keepassxc.org/docs/keepassxc-browser-migration">migration guide</a>.</p> + <p>KeePassHTTP je zastarané a bude v budúcnosti odstránené.<br>Prosím, prejdite namiesto toho na na KeePassXC-Prehliadač! na pomoc s migráciou, navštívte našu <a href="https://keepassxc.org/docs/keepassxc-browser-migration">príručku migrácie.</p> + + + Cannot bind to privileged ports + Nemožno použiť privilegované porty + + + Cannot bind to privileged ports below 1024! +Using default port 19455. + Nemožno použiť privilegované porty pod 1204! +Použitý predvolený port 19455. + + + + PasswordGeneratorWidget + + %p% + %p% + + + Password: + Heslo: + + + strength + Password strength + sila + + + entropy + náhodnosť + + + Password + Heslo + + + Character Types + Typy znakov + + + Upper Case Letters + Veľké písmená + + + Lower Case Letters + Malé písmená + + + Numbers + Číslice + + + Special Characters + Špeciálne znaky + + + Extended ASCII + Rozšírené ASCII + + + Exclude look-alike characters + Vynechať podobne vyzerajúce znaky + + + Pick characters from every group + Zvoliť znak z každej skupiny + + + &Length: + &Dĺžka: + + + Passphrase + Tajná veta + + + Wordlist: + Zoznam slov: + + + Word Count: + Počet slov: + + + Word Separator: + Oddeľovač slov: + + + Generate + Generovať + + + Copy + Kopírovať + + + Accept + Prijať + + + Close + Zatvoriť + + + Apply + Použiť + + + Entropy: %1 bit + Náhodnosť: %1 b + + + Password Quality: %1 + Kvalita hesla: %1 + + + Poor + Password quality + Biedne + + + Weak + Password quality + Slabé + + + Good + Password quality + Dobré + + + Excellent + Password quality + Výbroné + + + + QObject + + Database not opened + Databáza nie je otvorená + + + Database hash not available + Odtlačok databázy nie je dostupný + + + Client public key not received + Nebol prijatý verejný kľúč klienta + + + Cannot decrypt message + Nemožno dešifrovať správu + + + Timeout or cannot connect to KeePassXC + Uplynul časový limit alebo sa ku KeePassXC nemožno pripojiť + + + Action cancelled or denied + Akcia zrušená alebo odmietnutá + + + Cannot encrypt message or public key not found. Is Native Messaging enabled in KeePassXC? + Nemožno zašifrovať správu alebo nebol nájdený verejný kľúč. Je v KeePassXC zapnuté posielanie správ medzi prehliadačom a KeePassXC (native messaging)? + + + KeePassXC association failed, try again + Spojenie s KeePassXC zlyhalo, skúste znova + + + Key change was not successful + Zmena kľúča nebola úspešná + + + Encryption key is not recognized + Šifrovací kľúč nerozpoznaný + + + No saved databases found + Neboli nájdené uložené databázy + + + Incorrect action + Nesprávna akcia + + + Empty message received + Prijatá prázdna správa + + + No URL provided + Nebolo poskytnuté URL + + + No logins found + Neboli nájdené prihlásenia + + + Unknown error + Neznáma chyba + + + Add a new entry to a database. + Pridá do databázy novú položku + + + Path of the database. + Cesta k databáze. + + + Key file of the database. + Súbor kľúča databázy. + + + path + cesta + + + Username for the entry. + Použ. meno položky. + + + username + použmeno + + + URL for the entry. + URL položky. + + + URL + URL + + + Prompt for the entry's password. + Vyžiadať heslo položky. + + + Generate a password for the entry. + Generovať heslo tejto položky. + + + Length for the generated password. + Dĺžka generovaného hesla. + + + length + dĺžka + + + Path of the entry to add. + Cesta pridávanej položky. + + + Copy an entry's password to the clipboard. + Skopíruje heslo položky do schránky. + + + Path of the entry to clip. + clip = copy to clipboard + Cesta položky na vystrihnutie. + + + Timeout in seconds before clearing the clipboard. + Časový limit pred vymazaním schránky. + + + Edit an entry. + Upraviť položku. + + + Title for the entry. + Názov položky. + + + title + názov + + + Path of the entry to edit. + Cesta položky na úpravu. + + + Estimate the entropy of a password. + Očakávaná náhodnosť hesla. + + + Password for which to estimate the entropy. + Heslo, ktorému zistiť očakávanú náhodnosť. + + + Perform advanced analysis on the password. + Vykonať pokročilú analýzu hesla. + + + Extract and print the content of a database. + Vytiahnuť a vypísať obsah databázy. + + + Path of the database to extract. + Cesta databázy na vytiahnutie. + + + Insert password to unlock %1: + Na odomknutie zadajte heslo: %1 + + + Failed to load key file %1 : %2 + Zlyhalo načítanie súboru kľúča %1 : %2 + + + WARNING: You are using a legacy key file format which may become +unsupported in the future. + +Please consider generating a new key file. + Používate starý formát súboru kľúča, ktorý už nemusí byť +v budúcnosti podporovaný . + +Prosím, zvážte vygenerovanie nového súboru kľúča. + + + + +Available commands: + + + +Dostupné príkazy: + + + + Name of the command to execute. + Názov príkazu na spustenie. + + + List database entries. + Zoznam položiek databázy. + + + Path of the group to list. Default is / + Cesta vypísanej skupiny. Predvolene / + + + Find entries quickly. + Rýchlo nájdite položky. + + + Search term. + Hľadaný výraz. + + + Merge two databases. + Zlúčiť dve databázy. + + + Path of the database to merge into. + Cesta databázy, do ktorej zlúčiť. + + + Path of the database to merge from. + Cesta k databáze, z ktorej zlúčiť. + + + Use the same credentials for both database files. + Použiť rovnaké prihlásenie pre oba súbory databáz. + + + Key file of the database to merge from. + Súbor kľúča databázy, z ktorej má byť zlúčené. + + + Show an entry's information. + Zobraziť informácie položky. + + + Names of the attributes to show. This option can be specified more than once, with each attribute shown one-per-line in the given order. If no attributes are specified, a summary of the default attributes is given. + Názvy zobrazených atribútov. Táto voľba môže byť zadaná viac ako raz a každý atribút bude zobrazený jeden na riadok v zadanom poradí. Ak nie sú zadané žiadne atribúty, je použité zhrnutie predvolených atribútov. + + + attribute + atribút + + + Name of the entry to show. + Názov položky na zobrazenie. + + + NULL device + Žiadne zariadenie + + + error reading from device + chyba čítania zo zariadenia + + + file empty ! + + súbor je prázdny! + + + + malformed string + zlý formát reťazca + + + missing closing quote + chýbajúca koncová úvodzovka + + + Group + Skupina + + + Title + Nadpis + + + Username + Používateľské meno + + + Password + Heslo + + + Notes + Poznámky + + + Last Modified + Posledná úprava + + + Created + Vytvorené + + + Legacy Browser Integration + Stará integrácia prehliadača + + + Browser Integration + Integrácia prehliadača + + + YubiKey[%1] Challenge Response - Slot %2 - %3 + YubiKey[%1] Výzva – odpoveď – slot %2 – %3 + + + Press + Stlačiť + + + Passive + Pasívne + + + SSH Agent + Agent SSH + + + Generate a new random diceware passphrase. + Generovať novú náhodnú diceware tajnú vetu. + + + Word count for the diceware passphrase. + Počet slov pre diceware tajnú vetu. + + + count + počet + + + Wordlist for the diceware generator. +[Default: EFF English] + Zoznam slov pre generátor diceware. +[Predvolené: EFF angličtina] + + + Generate a new random password. + Generovať nové náhodné heslo. + + + Length of the generated password. + Dĺžka generovaného hesla. + + + Use lowercase characters in the generated password. + V generovanom hesle použiť malé písmená. + + + Use uppercase characters in the generated password. + V generovanom hesle použiť veľké písmená. + + + Use numbers in the generated password. + V generovanom hesle použiť číslice. + + + Use special characters in the generated password. + V generovanom hesle použiť špeciálne znaky. + + + Use extended ASCII in the generated password. + V generovanom hesle použiť rozšírené ASCII. + + + + QtIOCompressor + + Internal zlib error when compressing: + Pri komprimácii sa vyskytla interná chyba zlib: + + + Error writing to underlying device: + Chyba zápisu na zariadenie: + + + Error opening underlying device: + Chyba otvorenia zariadenia: + + + Error reading data from underlying device: + Chyba čítania dát zo zariadenia: + + + Internal zlib error when decompressing: + Pri dekomprimácii sa vyskytla interná chyba zlib: + + + + QtIOCompressor::open + + The gzip format not supported in this version of zlib. + Formát gzip nie je touto verziou zlib podporovaný. + + + Internal zlib error: + Interná chyba zlib: + + + + SearchWidget + + Search... + Hľadanie… + + + Search + Hľadať + + + Clear + Vymazať + + + Case Sensitive + Rozlišovať veľkosť písmen + + + Limit search to selected group + Obmedziť hľadanie na zvolenú skupinu + + + + Service + + KeePassXC: New key association request + KeePassXC: Nová požiadavka priradenia kľúča + + + You have received an association request for the above key. +If you would like to allow it access to your KeePassXC database +give it a unique name to identify and accept it. + Obdržali ste požiadavku na priradenie vyššie uvedeného kľúča. +Ak mu chcete umožniť prístup do databázy KeePassXC, +zadajte mu jedinečný názov na identifikáciu a potvrďte ho. + + + KeePassXC: Overwrite existing key? + KeePassXC: Prepísať existujúci kľúč? + + + A shared encryption-key with the name "%1" already exists. +Do you want to overwrite it? + Zdieľaný šifrovací kľúč s menom „%1” už existuje. +Chcete ho prepísať? + + + KeePassXC: Update Entry + KeePassXC: Upraviť položku + + + Do you want to update the information in %1 - %2? + Chcete upraviť informácie v %1 – %2? + + + KeePassXC: Database locked! + KeePassXC: Databáza zamknutá! + + + The active database is locked! +Please unlock the selected database or choose another one which is unlocked. + Aktívna databáza je zamknutá! +Prosím, odomknite zvolenú databázu alebo zvoľte inú, ktorá nie je zamknutá. + + + KeePassXC: Removed keys from database + KeePassXC: Klúče odstránené z databázy + + + Successfully removed %n encryption-key(s) from KeePassX/Http Settings. + Úspešne odstránený %n šifrovací kľúč z nastavenia KeePassX/Http.Úspešne odstránené %n šifrovacie kľúče z nastavenia KeePassX/Http.Úspešne odstránených %n šifrovacích kľúčov z nastavenia KeePassX/Http.Úspešne odstránených %n šifrovacích kľúčov z nastavenia KeePassX/Http. + + + KeePassXC: No keys found + KeePassXC: Nenájdené žiadne kľúče + + + No shared encryption-keys found in KeePassHttp Settings. + Nenájdené žiadne šifrovacie kľúče v nastavení KeePassHttp. + + + KeePassXC: Settings not available! + KeePassXC: Nastavenia nie sú dostupné! + + + The active database does not contain an entry of KeePassHttp Settings. + Aktívna databáza neobsahuje položku nastavení KeePassHttp. + + + Removing stored permissions... + Odstraňovanie uložených povolení… + + + Abort + Zrušiť + + + KeePassXC: Removed permissions + KeePassXC: Povolenia odstránené + + + Successfully removed permissions from %n entries. + Úspešne odstránené povolenia z %n položky.Úspešne odstránené povolenia z %n položiek.Úspešne odstránené povolenia z %n položiek.Úspešne odstránené povolenia z %n položiek. + + + KeePassXC: No entry with permissions found! + KeePassXC: Nenájdená žiadna položka s povoleniami! + + + The active database does not contain an entry with permissions. + Aktívna databáza neobsahuje položku s povoleniami. + + + + SettingsWidget + + Application Settings + Nastavenia aplikácie + + + General + Všeobecné + + + Security + Bezpečnosť + + + Access error for config file %1 + Chyba prístupu ku konfiguračnému súboru %1 + + + + SettingsWidgetGeneral + + Basic Settings + Základné nastavenia + + + Start only a single instance of KeePassXC + Spustiť len jednu inštanciu KeePassXC + + + Remember last databases + Zapamätať posledné databázy + + + Remember last key files and security dongles + Zapamätať si posledné súbory kľúčov a bezpečnostných kľúčeniek + + + Load previous databases on startup + Načítať predošlé databázy pri štarte + + + Automatically save on exit + Automaticky uložiť pri ukončení + + + Automatically save after every change + Automaticky uložiť po každej zmene + + + Automatically reload the database when modified externally + Automaticky načítať databázu, ak je upravená externe + + + Minimize when copying to clipboard + Minimalizovať pri skopírovaní do schránky + + + Minimize window at application startup + Minimalizovať okno pri spustení aplikácie + + + Use group icon on entry creation + Použiť ikonu skupiny pri vytváraní položky + + + Don't mark database as modified for non-data changes (e.g., expanding groups) + Neoznačovať databázu za zmenenú pri nedátových zmenách (napr. rozbalenie skupiny) + + + Hide the Details view + Skryť zobrazenie podrobností + + + Show a system tray icon + Zobraziť ikonu v oznamovacej oblasti + + + Hide window to system tray when minimized + Skryť okno do oznamovacej oblasti pri minimalizácii + + + Hide window to system tray instead of app exit + Skryť okno do oznamovacej oblasti namiesto ukončenia + + + Dark system tray icon + Tmavá ikona oznamovacej oblasti + + + Language + Jazyk + + + Auto-Type + Automatické vypĺňanie + + + Use entry title to match windows for global Auto-Type + Použiť názov položky na zhodu okna pre globálne Automatické vypĺňanie + + + Use entry URL to match windows for global Auto-Type + Použiť URL položky na zhodu okna pre globálne Automatické vypĺňanie + + + Always ask before performing Auto-Type + Vždy sa spýtať pred vykonaním Automatického vypĺňania + + + Global Auto-Type shortcut + Globálna klávesová skratka Automatického vypĺňania + + + Auto-Type delay + Oneskorenie Automatického vypĺňania + + + ms + Milliseconds + ms + + + Startup + Štart + + + File Management + Správa súborov + + + Safely save database files (may be incompatible with Dropbox, etc) + Bezpečne uložiť súbory databáz (môže byť nekompatibilné Dropbox, apod) + + + Backup database file before saving + Zálohovať databázu pri každom uložení + + + Entry Management + Správa položky + + + General + Všeobecné + + + + SettingsWidgetSecurity + + Timeouts + Časové limity + + + Clear clipboard after + Vymazať schránku po + + + sec + Seconds + s + + + Lock databases after inactivity of + Zamknúť databázu po neaktivite + + + Convenience + Pohodlie + + + Lock databases when session is locked or lid is closed + Zamknúť databázu pri zamknutí relácie alebo zatvorení krytu + + + Lock databases after minimizing the window + Zamknúť databázu pri minimalizovaní okna + + + Don't require password repeat when it is visible + Nevyžadovať opakovanie hesla, ak je viditeľné + + + Show passwords in cleartext by default + Predvolene zobraziť heslo prostým textom + + + Hide passwords in the preview panel + Skryť heslá v paneli ukážky + + + Hide entry notes by default + Predvolene skryť poznámky položky + + + Privacy + Súkromie + + + Use Google as fallback for downloading website icons + Použiť Google ako poslednú záchranu pri sťahovaní ikon webovej stránky + + + Re-lock previously locked database after performing Auto-Type + Znova zamknúť predtým zamknutú databázu po vykonaní Automatického vypĺňania + + + + SetupTotpDialog + + Setup TOTP + Nastaviť TOTP + + + Key: + Kľúč: + + + Default RFC 6238 token settings + Predvolené nastavenia tokenu RFC 6238 + + + Steam token settings + Nastavenie Steam tokenu + + + Use custom settings + Použiť vlastné nastavenia + + + Note: Change these settings only if you know what you are doing. + Poznámka: Zmeňte tieto nastavenia, len ak viete čo robíte. + + + Time step: + Časový krok: + + + 8 digits + 8 číslic + + + 6 digits + 6 číslic + + + Code size: + Veľkosť kódu: + + + sec + Seconds + s + + + + TotpDialog + + Timed Password + Časové heslo + + + 000000 + 000000 + + + Copy + Kopírovať + + + Expires in + Vyprší za + + + seconds + s + + + + UnlockDatabaseWidget + + Unlock database + Odomknúť databázu + + + + WelcomeWidget + + Start storing your passwords securely in a KeePassXC database + Začnite ukladať svoje heslá bezpečne v databáze KeePassXC + + + Create new database + Vytvoriť novú databázu + + + Open existing database + Otvoriť existujúcu databázu + + + Import from KeePass 1 + Importovať z KeePass 1 + + + Import from CSV + Importované z CSV + + + Recent databases + Nedávne databázy + + + Welcome to KeePassXC %1 + Vitajte v KeePassXC %1 + + + + main + + Remove an entry from the database. + Odstrániť položku z databázy. + + + Path of the database. + Cesta k databáze. + + + Path of the entry to remove. + Cesta položky na odstránenie. + + + KeePassXC - cross-platform password manager + KeePassXC – multi-platformový správca hesiel + + + filenames of the password databases to open (*.kdbx) + mená súborov databáz hesiel na otvorenie (*.kdbx) + + + path to a custom config file + cesta k vlastnému konfiguračnému súboru + + + key file of the database + súbor kľúča databázy + + + read password of the database from stdin + čítať heslo databázy zo stdin + + + Parent window handle + ID rodičovského okna + + + \ No newline at end of file diff --git a/share/translations/keepassx_sv.ts b/share/translations/keepassx_sv.ts index 79e4e10d0..f66e51d36 100644 --- a/share/translations/keepassx_sv.ts +++ b/share/translations/keepassx_sv.ts @@ -73,7 +73,7 @@ Kärna: %3 %4 Special thanks from the KeePassXC team go to debfx for creating the original KeePassX. - + Ett särskilt tack från teamet bakom KeePassXC riktas till debfx som skapade den ursprungliga KeePassX. Build Type: %1 @@ -280,20 +280,20 @@ Vill du tillåta det? Sort &matching credentials by title Credentials mean login data requested via browser extension - + Sortera &matchande autentiseringsuppgifter per titel Sort matching credentials by &username Credentials mean login data requested via browser extension - + Sortera matchande autentiseringsuppgifter per &användarnamn &Disconnect all browsers - + &Koppla från alla browsers Forget all remembered &permissions - + Glöm alla ihågkomna &rättigheter Advanced @@ -302,16 +302,16 @@ Vill du tillåta det? Never &ask before accessing credentials Credentials mean login data requested via browser extension - + &Fråga aldrig innan åtkomst till autentiseringsuppgifter Never ask before &updating credentials Credentials mean login data requested via browser extension - + Fråga aldrig innan &uppdatering av autetiseringsuppgifter Only the selected database has to be connected with a client. - + Endast den valda databasen måste vara ansluten med en klient. Searc&h in all opened databases for matching credentials @@ -362,7 +362,7 @@ Vill du tillåta det? Executable Files (*.exe);;All Files (*.*) - + Exekverbara filer (*.exe);;Alla filer (*.*) Executable Files (*) @@ -446,7 +446,7 @@ Please unlock the selected database or choose another one which is unlocked. Removing stored permissions… - + Raderar sparade rättigheter... Abort @@ -462,7 +462,7 @@ Please unlock the selected database or choose another one which is unlocked. KeePassXC: No entry with permissions found! - + KeePassXC: Ingen post med behörigheter hittades! The active database does not contain an entry with permissions. @@ -485,7 +485,7 @@ Please unlock the selected database or choose another one which is unlocked. &Key file - + &Nyckel-fil Browse @@ -683,15 +683,15 @@ Please consider generating a new key file. CsvParserModel %n byte(s), - + %n byte(s),%n byte(s), %n row(s), - + %n rad(er),%n rad(er), %n column(s) - + %n kolumn(er)%n kolumn(er) @@ -741,7 +741,7 @@ Please consider generating a new key file. Don't show this warning again - + Visa inte denna varning igen All files @@ -801,7 +801,7 @@ Du kan nu spara den. Encryption - + Kryptering Number of rounds too high @@ -835,7 +835,7 @@ If you keep this number, your database may be too easy to crack! KDF unchanged - + KDF oförändrad Failed to transform key with new KDF parameters; KDF unchanged. @@ -844,19 +844,19 @@ If you keep this number, your database may be too easy to crack! MiB Abbreviation for Mebibytes (KDF settings) - + MiBMiB thread(s) Threads for parallel execution (KDF settings) - + tråd(ar)tråd(ar) DatabaseSettingsWidgetEncryption Encryption Algorithm: - + Krypteringsalgoritm: AES: 256 Bit (default) @@ -864,7 +864,7 @@ If you keep this number, your database may be too easy to crack! Twofish: 256 Bit - + Twofish: 256 Bit Key Derivation Function: @@ -880,7 +880,7 @@ If you keep this number, your database may be too easy to crack! Memory Usage: - + Minnesanvändning: Parallelism: @@ -891,7 +891,7 @@ If you keep this number, your database may be too easy to crack! DatabaseSettingsWidgetGeneral Database Meta Data - + Databas metadata Database name: @@ -907,7 +907,7 @@ If you keep this number, your database may be too easy to crack! History Settings - + Inställningar historik Max. history items: @@ -927,7 +927,7 @@ If you keep this number, your database may be too easy to crack! Additional Database Settings - + Ytterligare databasinställningar Enable &compression (recommended) @@ -1057,7 +1057,7 @@ I annat fall försvinner ändringarna. Disable safe saves? - + Inaktivera spara säkert? KeePassXC has failed to save the database multiple times. This is likely caused by file sync services holding a lock on the save file. @@ -1149,7 +1149,7 @@ Disable safe saves and try again? File has changed - + Filen har ändrats The database file has changed. Do you want to load the changes? @@ -1170,7 +1170,7 @@ Do you want to merge your changes? Empty recycle bin? - + Töm papperskorgen? Are you sure you want to permanently delete everything from your recycle bin? @@ -1181,7 +1181,7 @@ Do you want to merge your changes? DetailsWidget Generate TOTP Token - + Generera TOTP Token Close @@ -1201,7 +1201,7 @@ Do you want to merge your changes? Expiration - + Utgår Username @@ -1209,15 +1209,15 @@ Do you want to merge your changes? Autotype - + Autotyp Searching - + Söker Attributes - + Attribut Attachments @@ -1249,15 +1249,15 @@ Do you want to merge your changes? [PROTECTED] - + [SKYDDAD] Disabled - + Inaktiverad Enabled - + Aktiverad @@ -1296,7 +1296,7 @@ Do you want to merge your changes? (encrypted) - + (krypterad) Select private key @@ -1336,11 +1336,11 @@ Do you want to merge your changes? Are you sure you want to remove this attribute? - + Är du säker på att du vill ta bort detta attribut? [PROTECTED] - + [SKYDDAD] Press reveal to view or edit @@ -1391,7 +1391,7 @@ Do you want to merge your changes? Edit Name - + Redigera namn Protect @@ -1407,11 +1407,11 @@ Do you want to merge your changes? Foreground Color: - + Förgrundsfärg: Background Color: - + Bakgrundsfärg: @@ -1523,7 +1523,7 @@ Do you want to merge your changes? Fingerprint - + Fingeravtryck Remove key from agent when database is closed/locked @@ -1539,11 +1539,11 @@ Do you want to merge your changes? Comment - + Kommentar Decrypt - + Dekryptera n/a @@ -1559,7 +1559,7 @@ Do you want to merge your changes? External file - + Extern fil Browse... @@ -1568,7 +1568,7 @@ Do you want to merge your changes? Attachment - + Bilaga Add to agent @@ -1669,15 +1669,15 @@ Do you want to merge your changes? Download favicon - + Ladda ner favicon Unable to fetch favicon. - + Kunde inte hämta favicon. Hint: You can enable Google as a fallback under Tools>Settings>Security - + Tips: Du kan aktivera Google som reserv under Verktyg>Inställningar>Säkerhet Images @@ -1693,7 +1693,7 @@ Do you want to merge your changes? Can't read icon - + Kan inte läsa ikon Custom icon already exists @@ -1701,7 +1701,7 @@ Do you want to merge your changes? Confirm Delete - + Bekräfta radering This icon is used by %1 entries, and will be replaced by the default icon. Are you sure you want to delete it? @@ -1728,7 +1728,7 @@ Do you want to merge your changes? Plugin Data - + Tilläggsdata Remove @@ -1736,7 +1736,7 @@ Do you want to merge your changes? Delete plugin data? - + Radera tilläggsdata? Do you really want to delete the selected plugin data? @@ -1745,11 +1745,11 @@ This may cause the affected plugins to malfunction. Key - + Nyckel Value - + Värde @@ -1757,7 +1757,7 @@ This may cause the affected plugins to malfunction. - Clone Suffix added to cloned entries - + - Klon @@ -1768,7 +1768,7 @@ This may cause the affected plugins to malfunction. Size - + Storlek @@ -1795,7 +1795,7 @@ This may cause the affected plugins to malfunction. Select files - + Välj filer Are you sure you want to remove %n attachment(s)? @@ -1807,7 +1807,7 @@ This may cause the affected plugins to malfunction. Save attachments - + Spara bilagor Unable to create directory: @@ -1840,7 +1840,8 @@ This may cause the affected plugins to malfunction. Unable to open files: %1 - + Lyckas inte öppna filer: +%1 @@ -1933,27 +1934,27 @@ This may cause the affected plugins to malfunction. Hide Usernames - + Dölj användarnamn Hide Passwords - + Dölj lösenord Fit to window - + Anpassa till fönster Fit to contents - + Anpassa för innehåll Reset to defaults - + Återställ till standardvärden Attachments (icon) - + Bilagor (ikon) @@ -1967,7 +1968,7 @@ This may cause the affected plugins to malfunction. HostInstaller KeePassXC: Cannot save file! - + KeePassXC: Kan inte spara fil! Cannot save the native messaging script file. @@ -1990,7 +1991,7 @@ This may cause the affected plugins to malfunction. A-Z - + A-Z Lower Case Letters @@ -1998,7 +1999,7 @@ This may cause the affected plugins to malfunction. a-z - + a-z Numbers @@ -2006,7 +2007,7 @@ This may cause the affected plugins to malfunction. 0-9 - + 0-9 Special Characters @@ -2014,7 +2015,7 @@ This may cause the affected plugins to malfunction. /*_& ... - + /*_& ... Exclude look-alike characters @@ -2033,11 +2034,11 @@ This may cause the affected plugins to malfunction. KMessageWidget &Close - + &Stäng Close message - + Stäng meddelande @@ -2090,7 +2091,7 @@ This may cause the affected plugins to malfunction. Unknown cipher - + Okänt krypto Invalid header id size @@ -2272,7 +2273,7 @@ This is a one-way migration. You won't be able to open the imported databas KdbxXmlReader XML parsing failure: %1 - + XML-tolkning misslyckades: %1 No root group @@ -2602,14 +2603,14 @@ This is a one-way migration. You won't be able to open the imported databas KeePassXC - Error - + KeePassXC - Fel MainWindow &Database - + &Databas &Recent databases @@ -2621,7 +2622,7 @@ This is a one-way migration. You won't be able to open the imported databas &Help - + &Hjälp E&ntries @@ -2629,43 +2630,43 @@ This is a one-way migration. You won't be able to open the imported databas Copy att&ribute to clipboard - + Kopiera att&ribut till urklipp Time-based one-time password - + Tidsbaserat engångslösenord &Groups - + &Grupper &Tools - + &Verktyg &Quit - + &Avsluta &About - + &Om &Open database... - + &Öppna databas &Save database - + &Spara databas &Close database - + &Stäng databas &New database - + &Ny databas Merge from KeePassX database @@ -2673,39 +2674,39 @@ This is a one-way migration. You won't be able to open the imported databas &Add new entry - + &Lägg till ny post &View/Edit entry - + &Visa/redigera post &Delete entry - + &Radera post &Add new group - + &Lägg till ny grupp &Edit group - + &Redigera grupp &Delete group - + &Radera grupp Sa&ve database as... - + Sp&ara databas som... Change &master key... - + Ändra &huvudlösenord &Database settings - + &Databasinställningar Database settings @@ -2713,15 +2714,15 @@ This is a one-way migration. You won't be able to open the imported databas &Clone entry - + &Klona post &Find - + &Hitta Copy &username - + Kopiera &användarnamn Copy username to clipboard @@ -2729,7 +2730,7 @@ This is a one-way migration. You won't be able to open the imported databas Cop&y password - + Kop&iera lösenord Copy password to clipboard @@ -2737,7 +2738,7 @@ This is a one-way migration. You won't be able to open the imported databas &Settings - + &Inställningar Password Generator @@ -2749,15 +2750,15 @@ This is a one-way migration. You won't be able to open the imported databas &Open URL - + &Öppna URL &Lock databases - + &Lås databas &Title - + &Titel Copy title to clipboard @@ -2765,7 +2766,7 @@ This is a one-way migration. You won't be able to open the imported databas &URL - + &URL Copy URL to clipboard @@ -2773,7 +2774,7 @@ This is a one-way migration. You won't be able to open the imported databas &Notes - + &Noteringar Copy notes to clipboard @@ -2781,11 +2782,11 @@ This is a one-way migration. You won't be able to open the imported databas &Export to CSV file... - + &Exportera till CSV-fil... Import KeePass 1 database... - + Importera KeePass 1 databas... Import CSV file... @@ -2793,7 +2794,7 @@ This is a one-way migration. You won't be able to open the imported databas Re&pair database... - + Re&parera databas... Show TOTP @@ -2809,7 +2810,7 @@ This is a one-way migration. You won't be able to open the imported databas E&mpty recycle bin - + T&öm papperskorg Clear history @@ -2962,11 +2963,11 @@ This version is not meant for production use. Unknown KDF: %1 - + Okänd KDF: %1 Unknown key type: %1 - + Okänd nyckeltyp: %1 @@ -3046,7 +3047,7 @@ This version is not meant for production use. Only the selected database has to be connected with a client. - + Endast den valda databasen måste vara ansluten med en klient. Searc&h in all opened databases for matching entries @@ -3070,7 +3071,7 @@ This version is not meant for production use. KeePassXC will listen to this port on 127.0.0.1 - + KeePassXC kommer att lyssna på denna port på 127.0.0.1 <b>Warning:</b> The following options can be dangerous! @@ -3238,7 +3239,7 @@ Using default port 19455. Action cancelled or denied - + Åtgärden avbröts eller nekades Cannot encrypt message or public key not found. Is Native Messaging enabled in KeePassXC? @@ -3258,7 +3259,7 @@ Using default port 19455. No saved databases found - + Ingen sparad databas hittades Incorrect action @@ -3334,7 +3335,7 @@ Using default port 19455. Copy an entry's password to the clipboard. - + Kopiera en posts lösenord till urklipp. Path of the entry to clip. @@ -3555,11 +3556,11 @@ Tillgängliga kommandon: Generate a new random password. - + Generera ett nytt slumpmässigt lösenord. Length of the generated password. - + Längden av det genererade lösenordet. Use lowercase characters in the generated password. @@ -3719,7 +3720,7 @@ Please unlock the selected database or choose another one which is unlocked. KeePassXC: No entry with permissions found! - + KeePassXC: Ingen post med behörigheter hittades! The active database does not contain an entry with permissions. @@ -3866,7 +3867,7 @@ Please unlock the selected database or choose another one which is unlocked. Entry Management - + Posthantering General @@ -3949,7 +3950,7 @@ Please unlock the selected database or choose another one which is unlocked. Steam token settings - + Steam token inställningar Use custom settings diff --git a/share/translations/keepassx_tr.ts b/share/translations/keepassx_tr.ts index e4fc45277..b10711c9d 100644 --- a/share/translations/keepassx_tr.ts +++ b/share/translations/keepassx_tr.ts @@ -19,7 +19,7 @@ Contributors - Katkıcılar + Katkı Verenler <a href="https://github.com/keepassxreboot/keepassxc/graphs/contributors">See Contributions on GitHub</a> @@ -69,16 +69,16 @@ MİB mimarisi: %2 Project Maintainers: - Tasarı Bakımcıları: + Proje Sahipleri: Special thanks from the KeePassXC team go to debfx for creating the original KeePassX. - + KeePassXC ekibinden özel teşekkürler, özgün KeePassX'i yaptığı için debfx'e gider. Build Type: %1 - İnşa Türü: %1 + Yapı Tarzı: %1 @@ -90,7 +90,7 @@ MİB mimarisi: %2 Remember this decision - Bu kararı anımsa + Bu kararı hatırla Allow @@ -111,7 +111,7 @@ Lütfen erişime izin vermek istediklerinizi seçin. AgentSettingsWidget Enable SSH Agent (requires restart) - + SSH Aracısı'nı etkinleştir (yeniden başlatma gerektirir) @@ -130,19 +130,19 @@ Lütfen erişime izin vermek istediklerinizi seçin. The Syntax of your Auto-Type statement is incorrect! - + Oto-Yazım ifadenizin sözdizimi yanlış! This Auto-Type command contains a very long delay. Do you really want to proceed? - + Bu Oto-Yazım komutu çok uzun bir gecikme içeriyor. Gerçekten devam etmek istiyor musun? This Auto-Type command contains very slow key presses. Do you really want to proceed? - + Bu Oto-Yazım komutu çok yavaş tuşa basar. Gerçekten devam etmek istiyor musun? This Auto-Type command contains arguments which are repeated very often. Do you really want to proceed? - + Bu Oto-Yazım komutu çok sık tekrarlanan argümanlar içerir. Gerçekten devam etmek istiyor musun? @@ -164,7 +164,7 @@ Lütfen erişime izin vermek istediklerinizi seçin. AutoTypeMatchModel Group - Küme + Grup Title @@ -187,18 +187,18 @@ Lütfen erişime izin vermek istediklerinizi seçin. Select entry to Auto-Type: - Oto-Yazım için girdi seçiniz: + Oto-Yazım için girdi seçin: BrowserAccessControlDialog KeePassXC-Browser Confirm Access - + KeePassXC-Tarayıcı Erişim Onayı Remember this decision - Bu kararı anımsa + Bu kararı hatırla Allow @@ -211,8 +211,8 @@ Lütfen erişime izin vermek istediklerinizi seçin. %1 has requested access to passwords for the following item(s). Please select whether you want to allow access. - %1, şu öge(ler) için parolalara erişim izni istedi. -Lütfen erişime izin vermek istediklerinizi seçin. + %1, şu öge(ler) için şifrelere erişim izni istedi. +Lütfen erişime izin vermek isteyip istemediğinizi belirtin. @@ -223,11 +223,11 @@ Lütfen erişime izin vermek istediklerinizi seçin. This is required for accessing your databases with KeePassXC-Browser - + Bu KeePassXC-Tarayıcı ile veritabanlarınıza erişmek için gereklidir. Enable KeepassXC browser integration - + KeePassXC tarayıcı entegrasyonunu etkinleştir General @@ -235,66 +235,66 @@ Lütfen erişime izin vermek istediklerinizi seçin. Enable integration for these browsers: - + Bu tarayıcılar için entegrasyonu etkinleştir: &Google Chrome - + &Google Chrome &Firefox - + &Firefox &Chromium - + &Chromium &Vivaldi - + &Vivaldi Show a &notification when credentials are requested Credentials mean login data requested via browser extension - + Kimlik bilgileri istendiğinde bir &bildirim göster Re&quest to unlock the database if it is locked - Eğer kilitliyse veri tabanını açmayı is&te + Eğer kilitliyse veritabanını açmayı is&te Only entries with the same scheme (http://, https://, ...) are returned. - + Sadece aynı şemaya sahip girişler (http://, https://, ...) döndürülür. &Match URL scheme (e.g., https://...) - + &Eşleşme URL şeması (ör., https://...) Only returns the best matches for a specific URL instead of all entries for the whole domain. - Tüm alan adı için tüm girdilerin yerine belirli bir URL için yalnızca en iyi eşleşmeyi döndürür. + Yalnızca tüm alan adı için tüm girdiler yerine belirli bir URL için en iyi eşleşenleri döndürür. &Return only best-matching credentials - + &Yalnızca en iyi eşleşen kimlik bilgilerini döndür Sort &matching credentials by title Credentials mean login data requested via browser extension - + Eşleşen kimlik bilgilerini başlığa göre &sırala Sort matching credentials by &username Credentials mean login data requested via browser extension - + Eşleşen kimlik bilgilerini &kullanıcı adına göre sırala &Disconnect all browsers - + &Tüm tarayıcıları kapatın Forget all remembered &permissions - + Tüm hatırlanan izinleri &unut Advanced @@ -303,79 +303,79 @@ Lütfen erişime izin vermek istediklerinizi seçin. Never &ask before accessing credentials Credentials mean login data requested via browser extension - + Kimlik bilgilerine erişmeden önce &asla sorma Never ask before &updating credentials Credentials mean login data requested via browser extension - + Kimlik bilgilerini &güncellemeden önce asla sorma Only the selected database has to be connected with a client. - Yalnızca seçilen veri tabanı istemciyle bağlanmış olmalıdır. + Sadece seçilen veritabanının bir istemci ile bağlı olması gerekir. Searc&h in all opened databases for matching credentials Credentials mean login data requested via browser extension - + Kimlik bilgilerini eşleştirmek için tüm açılan &veritabanlarında ara Automatically creating or updating string fields is not supported. - Dizge alanlarını kendiliğinden oluşturma ve güncelleme desteklenmiyor. + Dizi alanlarını otomatik oluşturma veya güncelleme desteklenmiyor. &Return advanced string fields which start with "KPH: " - "KPH: " ile başlayan gelişmiş dizge alanları &döndür + "KPH: " ile başlayan gelişmiş dizi alanları &döndür Updates KeePassXC or keepassxc-proxy binary path automatically to native messaging scripts on startup. - + Başlangıçta yerel mesajlaşma komut dosyalarına otomatik olarak KeePassXC veya keepassxc-proxy ikili yolu güncellenir. Update &native messaging manifest files at startup - + Başlangıçta yerel mesajlaşma &manifesto dosyalarını güncelle Support a proxy application between KeePassXC and browser extension. - + KeePassXC ve tarayıcı uzantısı arasında bir proxy uygulamasını desteklesin. Use a &proxy application between KeePassXC and browser extension - + KeePassXC ve tarayıcı uzantısı arasında bir &amp;proxy uygulaması kullan Use a custom proxy location if you installed a proxy manually. - + Eğer el ile bir proxy yüklediyseniz, özel bir proxy konumu kullanın. Use a &custom proxy location Meant is the proxy for KeePassXC-Browser - + Ö&zel bir proxy konumu kullan Browse... Button for opening file dialog - + Gözat... <b>Warning:</b> The following options can be dangerous! - + <b>Uyarı:</b> Aşağıdaki seçenekler tehlikeli olabilir! Executable Files (*.exe);;All Files (*.*) - + Yürütülebilir Dosyalar (*.exe);;Bütün Dosyalar (*.*) Executable Files (*) - + Yürütülebilir Dosyalar (*) Select custom proxy location - + Özel proxy konumunu seçin We're sorry, but KeePassXC-Browser is not supported for Snap releases at the moment. - + Üzgünüz, ancak şu anda Snap yayınları için KeePassXC-Tarayıcı desteklenmiyor. @@ -389,46 +389,50 @@ Lütfen erişime izin vermek istediklerinizi seçin. If you would like to allow it access to your KeePassXC database, give it a unique name to identify and accept it. - + Yukarıdaki anahtar için bir ilişkilendirme isteği aldınız. + +Eğer KeePassXC veritabanınıza erişim izni vermek isterseniz, +onu tanımlamak için benzersiz bir isim ver ve kabul et. Save and allow access - + Kaydet ve erişime izin ver KeePassXC: Overwrite existing key? - KeePassXC: Var olan anahtarın üstüne yaz? + KeePassXC: Mevcut anahtarın üzerine yazılsın mı? A shared encryption key with the name "%1" already exists. Do you want to overwrite it? - + "%1" adıyla paylaşılan bir şifreleme anahtarı zaten var. +Üzerine yazmak istiyor musun? KeePassXC: Update Entry - KeePassXC: Girdi Güncelle + KeePassXC: Giriş Güncelleme Do you want to update the information in %1 - %2? - + %1 -%2 bilgilerini güncellemek istiyor musun? KeePassXC: Database locked! - KeePassXC: Veri tabanı kilitli! + KeePassXC: Veritabanı kilitli! The active database is locked! Please unlock the selected database or choose another one which is unlocked. - Etkin veri tabanı kilitli! -Lütfen seçilen veri tabanının kilidini kaldırın veya kilitli olmayan birini seçin. + Etkin veritabanı kilitli! +Lütfen seçili veritabanının kilidini açın veya kilidi açılan başka bir tane seçin. KeePassXC: Settings not available! - KeePassXC: Ayarlar kullanılabilir değil! + KeePassXC: Ayarlar mevcut değil! The active database does not contain a settings entry. - + Aktif veritabanı bir ayar girişi içermiyor. KeePassXC: No keys found @@ -436,19 +440,19 @@ Lütfen seçilen veri tabanının kilidini kaldırın veya kilitli olmayan birin No shared encryption keys found in KeePassXC Settings. - + KeePassXC ayarlarında paylaşılan şifreleme anahtarı bulunamadı. KeePassXC: Removed keys from database - KeePassXC: Anahtarlar veri tabanından kaldırıldı + KeePassXC: Anahtarlar veritabanından kaldırıldı Successfully removed %n encryption key(s) from KeePassXC settings. - + Başarıyla %n şifreleme anahtarları KeePassXC ayarlarından kaldırıldı.%n şifreleme anahtarı(lar), KeePassXC ayarlarından başarıyla kaldırıldı. Removing stored permissions… - + Depolanmış izinler kaldırılıyor… Abort @@ -456,11 +460,11 @@ Lütfen seçilen veri tabanının kilidini kaldırın veya kilitli olmayan birin KeePassXC: Removed permissions - KeePassXC: Silinen yetkiler + KeePassXC: Kaldırılan izinler Successfully removed permissions from %n entry(s). - + Başarıyla izinleri %n entry(s) kaldırıldı.%n giriş(ler)den izinler başarıyla kaldırıldı. KeePassXC: No entry with permissions found! @@ -468,22 +472,22 @@ Lütfen seçilen veri tabanının kilidini kaldırın veya kilitli olmayan birin The active database does not contain an entry with permissions. - Etkin veri tabanı izinleri olan girdi barındırmıyor. + Etkin veritabanı izinli bir giriş içermiyor. ChangeMasterKeyWidget Password - Parola + Şifre Enter password: - Parolayı gir: + Şifre gir: Repeat password: - Parolayı yinele: + Şifreyi yinele: &Key file @@ -499,7 +503,7 @@ Lütfen seçilen veri tabanının kilidini kaldırın veya kilitli olmayan birin Cha&llenge Response - + Karşılaştırma &Yanıtı Refresh @@ -511,7 +515,7 @@ Lütfen seçilen veri tabanının kilidini kaldırın veya kilitli olmayan birin All files - Tüm dosyalar + Bütün dosyalar Create Key File... @@ -531,32 +535,35 @@ Lütfen seçilen veri tabanının kilidini kaldırın veya kilitli olmayan birin Do you really want to use an empty string as password? - Boş bir dizgeyi parola olarak kullanmak istediğinize emin misiniz? + Boş bir dizeyi gerçekten şifre olarak kullanmak ister misiniz? Different passwords supplied. - Farklı parolalar sağlandı. + Farklı şifreler sağlandı. Failed to set %1 as the Key file: %2 - %1, Anahtar dosyası olarak belirlenemedi: + %1 anahtar dosyası olarak ayarlanamadı: %2 Legacy key file format - + Eski anahtar dosya biçimi You are using a legacy key file format which may become unsupported in the future. Please consider generating a new key file. - + İleride desteklenmeyebilecek eski bir anahtar +dosya biçimi kullanıyorsunuz. + +Lütfen yeni bir anahtar dosyası oluşturmayı düşünün. Changing master key failed: no YubiKey inserted. - Ana anahtar değiştirme başarısız: YubiKey yerleştirilmedi. + Ana anahtar değiştirme başarısız: YubiKey eklenmedi. @@ -571,7 +578,7 @@ Please consider generating a new key file. Replace username and password with references - + Kullanıcı adı ve şifreyi referanslarla değiştir Copy history @@ -602,11 +609,11 @@ Please consider generating a new key file. Text is qualified by - Şu tarafından metin yetkilendirildi + tarafından metin yetkili Fields are separated by - Şu tarafından alanlar bölümlendi + tarafından alanlar ayrıldı Comments start with @@ -614,11 +621,11 @@ Please consider generating a new key file. First record has field names - İlk kayıt alan adlarını içerir + İlk kaydın alan adlarını var Number of headers line to discard - Vazgeçilecek başlık satırı adedi + Vazgeçilecek başlık satırı sayısı Consider '\' an escape character @@ -626,15 +633,15 @@ Please consider generating a new key file. Preview - Ön izle + Ön izleme Column layout - Kolon dizimi + Sütun düzeni Not present in CSV file - CSV içerisinde mevcut değil + CSV dosyasında mevcut değil Empty fieldname @@ -642,7 +649,7 @@ Please consider generating a new key file. column - kolon + sütun Imported from CSV file @@ -650,15 +657,15 @@ Please consider generating a new key file. Original data: - Özgün veri: + Orijinal veri: Error(s) detected in CSV file ! - CSV dosyasında hata(lar) saptandı ! + CSV dosyasında hata(lar) tespit edildi ! more messages skipped] - + daha fazla ileti atlandı] Error @@ -667,7 +674,7 @@ Please consider generating a new key file. CSV import: writer has errors: - CSV içe aktarma: yazıcıda hatalar: + CSV içe aktarma: yazarda hatalar var: @@ -686,22 +693,22 @@ Please consider generating a new key file. CsvParserModel %n byte(s), - + %n bayt, %n bayt(lar), %n row(s), - + %n satır, %n satır(lar), %n column(s) - + %n sütun%n sütun(lar) DatabaseOpenWidget Enter master key - Ana anahtar gir + Ana anahtarı gir Key File: @@ -709,7 +716,7 @@ Please consider generating a new key file. Password: - Parola: + Şifre: Browse @@ -721,34 +728,37 @@ Please consider generating a new key file. Challenge Response: - + Karşılaştırma Yanıtı: Unable to open the database. - Veri tabanı açılamıyor. + Veritabanı açılamıyor. Can't open key file - Anahtar dosya açılamıyor + Anahtar dosyası açılamıyor Legacy key file format - + Eski anahtar dosya biçimi You are using a legacy key file format which may become unsupported in the future. Please consider generating a new key file. - + İleride desteklenmeyebilecek eski bir anahtar +dosya biçimi kullanıyorsunuz. + +Lütfen yeni bir anahtar dosyası oluşturmayı düşünün. Don't show this warning again - + Bu uyarıyı bir daha gösterme All files - Tüm dosyalar + Bütün dosyalar Key files @@ -763,7 +773,7 @@ Please consider generating a new key file. DatabaseRepairWidget Repair database - Veri tabanını onar + Veritabanını onar Error @@ -771,15 +781,15 @@ Please consider generating a new key file. Can't open key file - Anahtar dosya açılamıyor + Anahtar dosyası açılamıyor Unable to open the database. - Veri tabanı açılamıyor. + Veritabanı açılamıyor. Database opened fine. Nothing to do. - Veri tabanı açıldı. Yapılacak bir şey yok. + Veritabanı iyi açıldı. Yapılacak bir şey yok. Success @@ -788,12 +798,12 @@ Please consider generating a new key file. The database has been successfully repaired You can now save it. - Veri tabanı başarıyla onarıldı + Veritabanı başarıyla onarıldı Artık kaydedebilirsiniz. Unable to repair the database. - Veri tabanı onarılamıyor. + Veritabanı onarılamıyor. @@ -804,66 +814,70 @@ Artık kaydedebilirsiniz. Encryption - + Şifreleme Number of rounds too high Key transformation rounds - + Tur sayısı çok yüksek You are using a very high number of key transform rounds with Argon2. If you keep this number, your database may take hours or days (or even longer) to open! - + Argon2 ile çok yüksek sayıda anahtar dönüştürme turu kullanıyorsunuz. + +Eğer bu sayı ile devam ederseniz, veritabanınızın açılması saatler veya günler (hatta daha uzun) sürebilir! Understood, keep number - + Anladım, sayı kalsın Cancel - + İptal Number of rounds too low Key transformation rounds - + Tur sayısı çok düşük You are using a very low number of key transform rounds with AES-KDF. If you keep this number, your database may be too easy to crack! - + AES-KDF ile çok düşük sayıda anahtar dönüştürme turu kullanıyorsunuz. + +Eğer bu sayı ile devam ederseniz, veritabanınız çok kolay çözülerek kırılabilir! KDF unchanged - + KDF değişmedi Failed to transform key with new KDF parameters; KDF unchanged. - + Yeni KDF parametreleri ile anahtar dönüştürülemedi; KDF değişmedi. MiB Abbreviation for Mebibytes (KDF settings) - + MiB MiB thread(s) Threads for parallel execution (KDF settings) - + iş parçacıği iş parçacık(ları) DatabaseSettingsWidgetEncryption Encryption Algorithm: - + Şifreleme Algoritması: AES: 256 Bit (default) - AES: 256 Bit (öntanımlı) + AES: 256 Bit (varsayılan) Twofish: 256 Bit @@ -871,15 +885,15 @@ If you keep this number, your database may be too easy to crack! Key Derivation Function: - + Anahtar Türetme Fonksiyonu: Transform rounds: - + Dönüşüm turları: Benchmark 1-second delay - + Karşılaştırma 1-saniyelik gecikme Memory Usage: @@ -887,26 +901,26 @@ If you keep this number, your database may be too easy to crack! Parallelism: - + Paralellik: DatabaseSettingsWidgetGeneral Database Meta Data - + Veritabanı Meta Verileri Database name: - Veri tabanı adı: + Veritabanı adı: Database description: - Veri tabanı ayrıntısı: + Veritabanı açıklaması: Default username: - Öntanımlı kullanıcı adı: + Varsayılan kullanıcı adı: History Settings @@ -930,11 +944,11 @@ If you keep this number, your database may be too easy to crack! Additional Database Settings - + Ek Veritabanı Ayarları Enable &compression (recommended) - + &Sıkıştırmayı etkinleştir (önerilir) @@ -946,15 +960,15 @@ If you keep this number, your database may be too easy to crack! KeePass 2 Database - KeePass 2 Veri Tabanı + KeePass 2 Veritabanı All files - Tüm dosyalar + Bütün dosyalar Open database - Veri tabanı aç + Veritabanını aç File not found! @@ -962,11 +976,11 @@ If you keep this number, your database may be too easy to crack! Unable to open the database. - Veri tabanı açılamıyor. + Veritabanı açılamıyor. File opened in read only mode. - Dosya salt okunur kipte açıldı. + Dosya salt okunur modda açıldı. Open CSV file @@ -978,19 +992,19 @@ If you keep this number, your database may be too easy to crack! All files (*) - Tüm dosyalar (*) + Bütün dosyalar (*) Merge database - Veri tabanı birleştir + Veritabanını birleştir Open KeePass 1 database - KeePass 1 veri tabanı aç + KeePass 1 veritabanı aç KeePass 1 database - KeePass 1 veri tabanı + KeePass 1 veritabanı Close? @@ -999,8 +1013,8 @@ If you keep this number, your database may be too easy to crack! "%1" is in edit mode. Discard changes and close anyway? - "%1", düzenleme kipinde. -Değişikliklerden vazgeç ve her durumda kapat? + "%1" düzenleme modunda. +Değişikliklerden vazgeçip yine de kapatılsın mı? Save changes? @@ -1010,23 +1024,23 @@ Değişikliklerden vazgeç ve her durumda kapat? "%1" was modified. Save changes? "%1" değiştirildi. -Değişiklikleri kaydet? +Değişiklikler kaydedilsin mi? Writing the database failed. - Veri tabanına yazma başarısız. + Veritabanına yazma başarısız. Passwords - Parolalar + Şifreler Save database as - Veri tabanını farklı kaydet + Veritabanını farklı kaydet Export database to CSV file - Veri tabanını CSV dosyasına dışa aktar + Veritabanını CSV dosyasına dışa aktar Writing the CSV file failed. @@ -1034,7 +1048,7 @@ Değişiklikleri kaydet? New database - Yeni veri tabanı + Yeni veritabanı locked @@ -1042,30 +1056,31 @@ Değişiklikleri kaydet? Lock database - Veri tabanını kilitle + Veritabanını kilitle Can't lock the database as you are currently editing it. Please press cancel to finish your changes or discard them. - Şu anda düzenlediğiniz için veri tabanı kilitlenemez. -Lütfen değişikliklerinizi bitirmek için iptale basın veya onlardan vazgeçin. + Şu anda düzenlemekte olduğunuz veritabanı kilitlenemiyor. +Lütfen değişikliklerinizi sonlandırmak veya vazgeçmek için iptal tuşuna basın. This database has been modified. Do you want to save the database before locking it? Otherwise your changes are lost. - Veri tabanı değiştirildi. -Kilitlemeden önce veri tabanını kaydetmek ister misiniz? + Bu veritabanı değiştirildi. +Veritabanını kilitlemeden önce kaydetmek ister misiniz? Aksi halde değişiklikleriniz kaybolacak. Disable safe saves? - + Güvenli kaydetme devre dışı? KeePassXC has failed to save the database multiple times. This is likely caused by file sync services holding a lock on the save file. Disable safe saves and try again? - + KeePassXC veritabanını birkaç kez kaydetmeyi başaramadı. Buna genellikle bir kayıt dosyası üzerinde kilit tutan dosya eşitleme hizmetleri neden olur. +Güvenli kaydetme devre dışı bırakılsın ve tekrar denensin mi? @@ -1084,7 +1099,7 @@ Disable safe saves and try again? Do you really want to delete the entry "%1" for good? - "%1" girdisini tümüyle silmek istediğinize emin misiniz? + "%1" girdisini gerçekten tamamen silmek istiyor musunuz? Delete entries? @@ -1120,15 +1135,15 @@ Disable safe saves and try again? Remember my choice - Seçimimi anımsa + Seçimimi hatırla Delete group? - Kümeyi sil? + Grubu sil? Do you really want to delete the group "%1" for good? - "%1" kümesini tümüyle silmek istediğinize emin misiniz? + "%1" grubunu gerçekten tamamen silmek istiyor musunuz? Unable to calculate master key @@ -1136,11 +1151,11 @@ Disable safe saves and try again? No current database. - Geçerli veri tabanı yok. + Geçerli veritabanı yok. No source database, nothing to do. - Kaynak veri tabanı yok, yapılacak bir şey yok. + Kaynak veritabanı yok, yapılacak bir şey yok. Search Results (%1) @@ -1152,11 +1167,11 @@ Disable safe saves and try again? File has changed - + Dosya değişti The database file has changed. Do you want to load the changes? - Veri tabanı dosyası değiştirildi. Değişiklikleri yüklemek ister misiniz? + Veritabanı dosyası değiştirildi. Değişiklikleri yüklemek ister misiniz? Merge Request @@ -1165,11 +1180,12 @@ Disable safe saves and try again? The database file has changed and you have unsaved changes. Do you want to merge your changes? - + Veritabanı dosyası değişti ve kaydedilmemiş değişiklikleriniz var. +Değişikliklerinizi birleştirmek ister misiniz? Could not open the new database file while attempting to autoreload this database. - Bu veri tabanını kendiliğinden yeniden yüklenirken yeni veri tabanı dosyası açılamadı. + Bu veritabanını otomatik olarak yeniden yüklemeye çalışırken yeni veritabanı dosyası açılamadı. Empty recycle bin? @@ -1184,7 +1200,7 @@ Do you want to merge your changes? DetailsWidget Generate TOTP Token - + TOTP Jetonu Oluştur Close @@ -1196,7 +1212,7 @@ Do you want to merge your changes? Password - Parola + Şifre URL @@ -1204,7 +1220,7 @@ Do you want to merge your changes? Expiration - + Geçerlilik Username @@ -1212,11 +1228,11 @@ Do you want to merge your changes? Autotype - + Oto-yazım Searching - + Aranıyor Attributes @@ -1224,7 +1240,7 @@ Do you want to merge your changes? Attachments - Ekler + Dosya ekleri Notes @@ -1256,18 +1272,18 @@ Do you want to merge your changes? Disabled - + Devre dışı Enabled - + Etkin EditEntryWidget Entry - Girdi + Giriş Advanced @@ -1291,7 +1307,7 @@ Do you want to merge your changes? SSH Agent - + SSH Ajanı n/a @@ -1303,31 +1319,31 @@ Do you want to merge your changes? Select private key - + Özel anahtar seç File too large to be a private key - + Dosya bir özel anahtar olmak için çok büyük Failed to open private key - + Özel anahtarı açma başarısız Entry history - Girdi geçmişi + Giriş geçmişi Add entry - Girdi ekle + Giriş ekle Edit entry - Girdiyi düzenle + Girişi düzenle Different passwords supplied. - Farklı parolalar sağlandı. + Farklı şifreler sağlandı. New attribute @@ -1339,7 +1355,7 @@ Do you want to merge your changes? Are you sure you want to remove this attribute? - Bu özniteliği silmek istediğinizden emin misiniz? + Bu özniteliği kaldırmak istediğinizden emin misiniz? [PROTECTED] @@ -1347,7 +1363,7 @@ Do you want to merge your changes? Press reveal to view or edit - + Görüntüleme veya düzenlemeyi belirlemek için basın Tomorrow @@ -1367,15 +1383,15 @@ Do you want to merge your changes? Apply generated password? - + Oluşturulan şifreyi uygula? Do you want to apply the generated password to this entry? - + Oluşturulan şifreyi bu girişe uygulamak istiyor musunuz? Entry updated successfully. - + Giriş başarıyla güncellendi. @@ -1406,30 +1422,30 @@ Do you want to merge your changes? Attachments - Ekler + Dosya ekleri Foreground Color: - + Ön Plan Rengi: Background Color: - + Arka Plan Rengi: EditEntryWidgetAutoType Enable Auto-Type for this entry - Bu girdi için Oto-Yazımı etkinleştir + Bu giriş için Oto-Yazımı etkinleştir Inherit default Auto-Type sequence from the &group - Öntanımlı Oto-Yazım dizilişini &kümeden devral + &Gruptan varsayılan Oto-Yazım sırasını devral &Use custom Auto-Type sequence: - Özel Oto-Yazım dizilişi k&ullan: + Özel Oto-Yazım sırası k&ullan: Window Associations @@ -1449,7 +1465,7 @@ Do you want to merge your changes? Use a specific sequence for this association: - + Bu ilişki için belirli bir sıra kullan: @@ -1479,7 +1495,7 @@ Do you want to merge your changes? Password: - Parola: + Şifre: Repeat: @@ -1499,7 +1515,7 @@ Do you want to merge your changes? Toggle the checkbox to reveal the notes section. - + Notlar bölümünü göstermek için onay kutusunu değiştirin. Username: @@ -1507,46 +1523,46 @@ Do you want to merge your changes? Expires - Biter + Geçersiz EditEntryWidgetSSHAgent Form - + Form Remove key from agent after - + Sonra ajandan anahtarı kaldır seconds - + saniye Fingerprint - + Parmak izi Remove key from agent when database is closed/locked - + Veritabanı kapalı/kilitliyken ajandan anahtarı kaldır Public key - + Açık anahtar Add key to agent when database is opened/unlocked - + Veritabanı kapalı/kilitliyken ajana anahtar ekle Comment - + Yorum Decrypt - + Şifresiz n/a @@ -1558,39 +1574,39 @@ Do you want to merge your changes? Private key - + Özel anahtar External file - + Harici dosya Browse... Button for opening file dialog - + Gözat... Attachment - + Dosya eki Add to agent - + Ajana ekle Remove from agent - + Ajandan kaldır Require user confirmation when this key is used - + Bu tuş kullanıldığında kullanıcı onayı gerekir EditGroupWidget Group - Küme + Grup Icon @@ -1602,30 +1618,30 @@ Do you want to merge your changes? Add group - Küme ekle + Grup ekle Edit group - Kümeyi düzenle + Grubu düzenle Enable - Etkinleştir + Etkin Disable - Devre dışı bırak + Devre dışı Inherit from parent group (%1) - Üst kümeden devral (%1) + Ana gruptan devral (%1) EditGroupWidgetMain Name - Ad + Adı Notes @@ -1633,7 +1649,7 @@ Do you want to merge your changes? Expires - Biter + Geçersiz Search @@ -1645,22 +1661,22 @@ Do you want to merge your changes? &Use default Auto-Type sequence of parent group - Üst kümenin öntanımlı Oto-Yazım dizilişini k&ullan + Ana grubun varsayılan Oto-Yazım sırasını kullan Set default Auto-Type se&quence - Öntanımlı Oto-Yazım &dizilişi belirle + Varsayılan Oto-Yazım &sırasını ayarla EditWidgetIcons &Use default icon - &Öntanımlı simge kullan + &Varsayılan simge kullan Use custo&m icon - Öze&l simge kullan + Özel si&mge kullan Add custom icon @@ -1680,7 +1696,7 @@ Do you want to merge your changes? Hint: You can enable Google as a fallback under Tools>Settings>Security - İpucu: Araçlar>Ayarlar>Güvenlik altından Google'ı yedek olarak etkinleştirebilirsiniz + İpucu: Google’ı Araçlar>Ayarlar>Güvenlik altından geri almak gibi etkinleştirebilirsiniz Images @@ -1688,7 +1704,7 @@ Do you want to merge your changes? All files - Tüm dosyalar + Bütün dosyalar Select Image @@ -1708,7 +1724,7 @@ Do you want to merge your changes? This icon is used by %1 entries, and will be replaced by the default icon. Are you sure you want to delete it? - Bu simge %1 girdi tarafından kullanılıyor ve öntanımlı simge tarafından değiştirilecek. Silmek istediğinize emin misiniz? + Bu simge %1 girişi tarafından kullanılıyor ve varsayılan simge tarafından değiştirilecek. Silmek istediğinize emin misiniz? @@ -1748,11 +1764,11 @@ This may cause the affected plugins to malfunction. Key - + Anahtar Value - + Değer @@ -1771,14 +1787,14 @@ This may cause the affected plugins to malfunction. Size - + Boyut EntryAttachmentsWidget Form - + Form Add @@ -1798,7 +1814,7 @@ This may cause the affected plugins to malfunction. Select files - + Dosya seç Are you sure you want to remove %n attachment(s)? @@ -1810,40 +1826,45 @@ This may cause the affected plugins to malfunction. Save attachments - + Ekleri kaydet Unable to create directory: %1 - + Dizin oluşturulamadı: +%1 Are you sure you want to overwrite the existing file "%1" with the attachment? - + Eki, var olan "%1" dosyasının üstüne yazmak istediğinize emin misiniz? Confirm overwrite - + Üzerine yazımı onayla Unable to save attachments: %1 - + Ekler kaydedilemiyor: +%1 Unable to open attachment: %1 - + Ek açılamıyor: +%1 Unable to open attachments: %1 - + Ekler açılamıyor: +%1 Unable to open files: %1 - + Dosyalar açılamıyor: +%1 @@ -1913,15 +1934,15 @@ This may cause the affected plugins to malfunction. Created - + Oluşturuldu Modified - + Düzenlendi Accessed - + Erişildi Attachments @@ -1932,31 +1953,31 @@ This may cause the affected plugins to malfunction. EntryView Customize View - + Görünümü Özelleştir Hide Usernames - + Kullanıcı Adlarını Gizle Hide Passwords - + Parolaları Gizle Fit to window - + Pencereye sığdır Fit to contents - + İçeriklere sığdır Reset to defaults - + Öntanımlılara sıfırla Attachments (icon) - + Ekler (simge) @@ -1970,11 +1991,11 @@ This may cause the affected plugins to malfunction. HostInstaller KeePassXC: Cannot save file! - + KeePassXC: Dosya kaydedilemiyor! Cannot save the native messaging script file. - + Yerel mesajlaşma betik dosyası kaydedilemiyor. @@ -2073,7 +2094,7 @@ This may cause the affected plugins to malfunction. Kdbx4Reader missing database headers - + eksik veri tabanı başlıkları Unable to calculate master key @@ -2081,15 +2102,15 @@ This may cause the affected plugins to malfunction. Invalid header checksum size - + Geçersiz başlık dosya özeti boyutu Header SHA256 mismatch - + Başlık SHA256 verisi uyuşmuyor Wrong key or database file is corrupt. (HMAC mismatch) - + Yanlış anahtar veya veri tabanı dosyası bozuk. (HMAC uyuşmuyor) Unknown cipher @@ -2097,39 +2118,39 @@ This may cause the affected plugins to malfunction. Invalid header id size - + Geçersiz başlık kimliği boyutu Invalid header field length - + Geçersiz başlık alanı genişliği Invalid header data length - + Geçersiz başlık veri genişliği Failed to open buffer for KDF parameters in header - + Başlıktaki KDF parametreleri için tampon açılamıyor Unsupported key derivation function (KDF) or invalid parameters - + Desteklenmeyen Anahtar Türetme İşlevi (KDF) veya geçersiz parametreler Legacy header fields found in KDBX4 file. - + KDBX4 dosyasında eski başlık alanları bulundu. Invalid inner header id size - + Geçersiz iç başlık kimlik boyutu Invalid inner header field length - + Geçersiz iç başlık alann genişliği Invalid inner header binary size - + Geçersiz iç başlık ikili boyutu Unsupported KeePass variant map version. @@ -2225,11 +2246,11 @@ This may cause the affected plugins to malfunction. Invalid compression flags length - + Geçersiz sıkıştırma bayrakları genişliği Unsupported compression algorithm - + Desteklenmeyen sıkıştırma algoritması Invalid master seed size @@ -2271,26 +2292,26 @@ Bu tek yönlü bir yer değiştirmedir. İçe aktarılan veri tabanını eski Ke Unsupported KeePass 2 database version. - + Desteklenmeyen KeePass 2 veri tabanı sürümü. KdbxXmlReader XML parsing failure: %1 - + XML ayrıştırma başarısız: %1 No root group - + Kök küme yok Missing icon uuid or data - + Simge uuid'si veya verisi eksik Missing custom data key or value - + Özel veri anahtarı veya değeri eksik Multiple group elements @@ -2767,7 +2788,7 @@ Bu tek yönlü bir yer değiştirmedir. İçe aktarılan veri tabanını eski Ke Copy title to clipboard - + Başlığı panoya kopyala &URL @@ -2775,7 +2796,7 @@ Bu tek yönlü bir yer değiştirmedir. İçe aktarılan veri tabanını eski Ke Copy URL to clipboard - + URL'yi panoya kopyala &Notes @@ -2783,7 +2804,7 @@ Bu tek yönlü bir yer değiştirmedir. İçe aktarılan veri tabanını eski Ke Copy notes to clipboard - + Notları panoya kopyala &Export to CSV file... @@ -2815,7 +2836,7 @@ Bu tek yönlü bir yer değiştirmedir. İçe aktarılan veri tabanını eski Ke E&mpty recycle bin - + Geri dönüşüm kutusunu b&oşalt Clear history @@ -2827,7 +2848,7 @@ Bu tek yönlü bir yer değiştirmedir. İçe aktarılan veri tabanını eski Ke <p>It looks like you are using KeePassHTTP for browser integration. This feature has been deprecated and will be removed in the future.<br>Please switch to KeePassXC-Browser instead! For help with migration, visit our <a class="link" href="https://keepassxc.org/docs/keepassxc-browser-migration">migration guide</a> (warning %1 of 3).</p> - + <p>Görünüşe göre KeePassHTTP'yi tarayıcı tümleşmesi için kullanıyorsunuz. Bu özellik terk edilmiştir ve ileride kaldırılacaktır.<br>Bunun yerine KeePassXC-Browser'a geçin! Göçle ilgili yardım için <a class="link" href="https://keepassxc.org/docs/keepassxc-browser-migration">göç kılavuzumuzu</a> ziyaret edin (uyarı %1 / 3).</p> read-only @@ -2839,7 +2860,7 @@ Bu tek yönlü bir yer değiştirmedir. İçe aktarılan veri tabanını eski Ke Toggle window - + Pencereyi aç/kapa Quit KeePassXC @@ -2873,14 +2894,16 @@ Bu tek yönlü bir yer değiştirmedir. İçe aktarılan veri tabanını eski Ke WARNING: You are using an unstable build of KeePassXC! There is a high risk of corruption, maintain a backup of your databases. This version is not meant for production use. - + UYARI: KeePassXC'nin kararsız inşasını kullanıyorsunuz! +Yüksek bozulma tehlikesi bulunmaktadır, veri tabanlarınızın yedeğini alın. +Bu sürüm, üretimde kullanıma uygun değildir. OpenSSHKey Invalid key file, expecting an OpenSSH key - + Geçersiz anahtar dosyası, OpenSSH anahtarı bekleniyor PEM boundary mismatch @@ -2888,11 +2911,11 @@ This version is not meant for production use. Base64 decoding failed - + Base64 çözme başarısız Key file way too small. - + Anahtar dosyası çok küçük. Key file magic header id invalid @@ -2900,15 +2923,15 @@ This version is not meant for production use. Found zero keys - + Sıfır anahtar bulundu Failed to read public key. - + Genel anahtar okunamadı. Corrupted key file, reading private key failed - + Bozuk anahtar dosyası, özel anahtar okuma başarısız No private key payload to decrypt @@ -2956,7 +2979,7 @@ This version is not meant for production use. Unsupported key type: %1 - + Desteklenmeyen anahtar türü: %1 Unknown cipher: %1 @@ -2972,7 +2995,7 @@ This version is not meant for production use. Unknown key type: %1 - + Bilinmeyen anahtar türü: %1 @@ -3080,11 +3103,11 @@ This version is not meant for production use. <b>Warning:</b> The following options can be dangerous! - + <b>Uyarı:</b> Aşağıdaki seçenekler tehlikeli olabilir! <p>KeePassHTTP has been deprecated and will be removed in the future.<br>Please switch to KeePassXC-Browser instead! For help with migration, visit our <a href="https://keepassxc.org/docs/keepassxc-browser-migration">migration guide</a>.</p> - + <p>KeePassHTTP terk edilmiştir ve ileride kaldırılacaktır.<br>Bunun yerine KeePassXC-Browser'a geçin! Göçle ilgili yardım için <a href="https://keepassxc.org/docs/keepassxc-browser-migration">göç kılavuzumuzu</a> ziyaret edin.</p> Cannot bind to privileged ports @@ -3114,7 +3137,7 @@ Using default port 19455. entropy - + entropi Password @@ -3225,7 +3248,7 @@ Using default port 19455. QObject Database not opened - + Veri tabanı açılmadı Database hash not available @@ -3233,63 +3256,63 @@ Using default port 19455. Client public key not received - + İstemci genel anahtarı alınmadı Cannot decrypt message - + İletinin şifresi çözülemedi Timeout or cannot connect to KeePassXC - + Zaman aşımı veya KeePassXC'ye bağlanılamadı Action cancelled or denied - + Eylem iptal edildi veya reddedildi Cannot encrypt message or public key not found. Is Native Messaging enabled in KeePassXC? - + İleti şifrelenemedi veya genel anahtar bulunamadı. KeePassXC'de Yerel Mesajlaşma etkin mi? KeePassXC association failed, try again - + KeePassXC ilişkilendirmesi başarısız, yeniden dene Key change was not successful - + Anahtar değişimi başarılı değil Encryption key is not recognized - + Şifreleme anahtarı tanınmadı No saved databases found - + Kaydedilmiş veri tabanı bulunamadı Incorrect action - + Doğru olmayan eylem Empty message received - + Boş ileti alındı No URL provided - + URL sağlanmadı No logins found - + Giriş bulunamadı Unknown error - + Bilinmeyen hata Add a new entry to a database. - + Veri tabanına yeni girdi ekle. Path of the database. @@ -3297,23 +3320,23 @@ Using default port 19455. Key file of the database. - + Veri tabanının anahtar dosyası. path - + yol Username for the entry. - + Girdi için kullanıcı adı. username - + kullanıcı adı URL for the entry. - + Girdi için URL. URL @@ -3325,23 +3348,23 @@ Using default port 19455. Generate a password for the entry. - + Girdi için parola oluştur. Length for the generated password. - + Oluşturulan parola için uzunluk. length - + uzunluk Path of the entry to add. - + Eklenecek girdinin yolu. Copy an entry's password to the clipboard. - + Girdinin parolasını panoya kopyala. Path of the entry to clip. @@ -3350,35 +3373,35 @@ Using default port 19455. Timeout in seconds before clearing the clipboard. - + Pano temizlenmeden önce geçecek saniye. Edit an entry. - + Girdi düzenle. Title for the entry. - + Girdi için başlık. title - + başlık Path of the entry to edit. - + Düzenlenecek girdinin yolu. Estimate the entropy of a password. - + Parolanın entropisini ölç Password for which to estimate the entropy. - + Entropisi ölçülecek parola. Perform advanced analysis on the password. - + Parola üzerinde gelişmiş inceleme gerçekleştir. Extract and print the content of a database. @@ -3390,25 +3413,31 @@ Using default port 19455. Insert password to unlock %1: - + %1 kilidini kaldırmak için parola yerleştir: Failed to load key file %1 : %2 - + %1 anahtar dosyası yüklenemedi : %2 WARNING: You are using a legacy key file format which may become unsupported in the future. Please consider generating a new key file. - + UYARI: Gelecekte desteklenmeyebilecek eski anahtar dosyası +biçimini kullanıyorsunuz. + +Lütfen yeni anahtar dosyası oluşturmayı düşünün. Available commands: - + + +Kullanılabilir komutlar: + Name of the command to execute. @@ -3424,11 +3453,11 @@ Available commands: Find entries quickly. - + Hızlıca girdi bul. Search term. - + Arama terimi. Merge two databases. @@ -3444,7 +3473,7 @@ Available commands: Use the same credentials for both database files. - + Her iki veri tabanı dosyası için aynı kimliği kullan. Key file of the database to merge from. @@ -3514,7 +3543,7 @@ Available commands: Created - + Oluşturuldu Legacy Browser Integration @@ -3538,7 +3567,7 @@ Available commands: SSH Agent - + SSH Ajanı Generate a new random diceware passphrase. @@ -3673,7 +3702,7 @@ Do you want to overwrite it? Do you want to update the information in %1 - %2? - + %1 -%2 bilgilerini güncellemek istiyor musun? KeePassXC: Database locked! @@ -3858,23 +3887,23 @@ Lütfen seçilen veri tabanının kilidini kaldırın veya kilitli olmayan birin Startup - + Başlangıç File Management - + Dosya Yönetimi Safely save database files (may be incompatible with Dropbox, etc) - + Veri tabanı dosyalarını güvenle kaydet (Dropbox vb. ile uyumsuz olabilir) Backup database file before saving - + Kaydetmeden önce veri tabanı dosyasını yedekle Entry Management - + Girdi Yönetimi General @@ -3926,7 +3955,7 @@ Lütfen seçilen veri tabanının kilidini kaldırın veya kilitli olmayan birin Hide entry notes by default - + Girdi notlarını öntanımlı olarak gizle Privacy @@ -4054,7 +4083,7 @@ Lütfen seçilen veri tabanının kilidini kaldırın veya kilitli olmayan birin main Remove an entry from the database. - + Veri tabanından bir girdi kaldır. Path of the database. @@ -4062,7 +4091,7 @@ Lütfen seçilen veri tabanının kilidini kaldırın veya kilitli olmayan birin Path of the entry to remove. - + Kaldırılacak girdinin yolu. KeePassXC - cross-platform password manager diff --git a/share/translations/keepassx_uk.ts b/share/translations/keepassx_uk.ts index cf43f88ff..e112bb27c 100644 --- a/share/translations/keepassx_uk.ts +++ b/share/translations/keepassx_uk.ts @@ -11,7 +11,7 @@ Report bugs at: <a href="https://github.com/keepassxreboot/keepassxc/issues" style="text-decoration: underline;">https://github.com</a> - Повідомляйте про вади на <a href="https://github.com/keepassxreboot/keepassxc/issues" style="text-decoration: underline;">https://github.com</a> + Повідомляйте про помилки на <a href="https://github.com/keepassxreboot/keepassxc/issues" style="text-decoration: underline;">https://github.com</a> KeePassXC is distributed under the terms of the GNU General Public License (GPL) version 2 or (at your option) version 3. @@ -49,7 +49,7 @@ Distribution: %1 - Розподіл: %1 + Дистрибутив: %1 Libraries: @@ -103,8 +103,8 @@ Kernel: %3 %4 %1 has requested access to passwords for the following item(s). Please select whether you want to allow access. - %1 запросила доступ до гасел для таких записів(-у). -Будь ласка, вкажіть чи хочете Ви дозволити доступ? + %1 запитує доступ до паролів у цих записах. +Дозволити доступ? @@ -134,15 +134,15 @@ Please select whether you want to allow access. This Auto-Type command contains a very long delay. Do you really want to proceed? - Ця команда Автозаповнення містить надзвичайно довгу затримку. Ви впевнені, що хочете продовжити? + Команда Автозаповнення містить надто велику затримку. Ви впевнені, що хочете продовжити? This Auto-Type command contains very slow key presses. Do you really want to proceed? - Ця команда Автозаповнення містить надзвичайно довгі утримання клавіш. Ви впевнені, що хочете продовжити? + Команда Автозаповнення містить надто повільні натискання клавіш. Ви впевнені, що хочете продовжити? This Auto-Type command contains arguments which are repeated very often. Do you really want to proceed? - Ця команда Автозаповнення містить надзвичайно часто повторювані параметри. Ви впевнені, що хочете продовжити? + Команда Автозаповнення містить параметри, що надто часто повторюються. Ви впевнені, що хочете продовжити? @@ -194,7 +194,7 @@ Please select whether you want to allow access. BrowserAccessControlDialog KeePassXC-Browser Confirm Access - Підтвердження доступу для переглядача KeePassXC + Підтвердження доступу для KeePassXC-Browser Remember this decision @@ -211,8 +211,8 @@ Please select whether you want to allow access. %1 has requested access to passwords for the following item(s). Please select whether you want to allow access. - %1 запросила доступ до гасел для таких записів(-у). -Будь ласка, вкажіть чи хочете Ви дозволити доступ? + %1 запитує доступ до паролів у цих записах. +Дозволити доступ? @@ -223,11 +223,11 @@ Please select whether you want to allow access. This is required for accessing your databases with KeePassXC-Browser - Це необхідно для надання переглядачу KeePassXC доступу до Ваших сховищ + Це необхідно для надання KeePassXC-Browser доступу до Ваших сховищ Enable KeepassXC browser integration - Сполучити KeePassXC з переглядачем + Увімкнути інтеграцію KeePassXC з браузером General @@ -235,7 +235,7 @@ Please select whether you want to allow access. Enable integration for these browsers: - Сполучити з такими переглядачами: + Увімкнути інтеграцію з цими браузерами: &Google Chrome @@ -290,7 +290,7 @@ Please select whether you want to allow access. &Disconnect all browsers - Від'єднати від всіх переглядачів + &Від'єднати від усіх браузерів Forget all remembered &permissions @@ -337,11 +337,11 @@ Please select whether you want to allow access. Support a proxy application between KeePassXC and browser extension. - Підтримувати посередницькі застосунки між KeePassXC та додатками переглядача. + Підтримувати посередницькі додатки між KeePassXC та розширенням браузера. Use a &proxy application between KeePassXC and browser extension - Використовувати посередницький застосунок між KeePassXC та додатком переглядача + Використовувати посередницький додаток між KeePassXC та розширенням браузера Use a custom proxy location if you installed a proxy manually. @@ -375,7 +375,7 @@ Please select whether you want to allow access. We're sorry, but KeePassXC-Browser is not supported for Snap releases at the moment. - Вибачте, але переглядач KeePassXC поки що не працює у версіях Snap. + Вибачте, але KeePassXC-Browser поки що не підтримується Snap-версіях. @@ -448,7 +448,7 @@ Please unlock the selected database or choose another one which is unlocked. Successfully removed %n encryption key(s) from KeePassXC settings. - Успішно видалено %n шифрувальний ключ з налаштувань KeePassXC.Успішно видалено %n шифрувальні ключа з налаштувань KeePassXC.Успішно видалено %n шифрувальних ключів з налаштувань KeePassXC. + Успішно видалено %n шифрувальний ключ з налаштувань KeePassXC.Успішно видалено %n шифрувальні ключа з налаштувань KeePassXC.Успішно видалено %n шифрувальних ключів з налаштувань KeePassXC.Успішно видалено %n шифрувальних ключів з налаштувань KeePassXC. Removing stored permissions… @@ -464,7 +464,7 @@ Please unlock the selected database or choose another one which is unlocked. Successfully removed permissions from %n entry(s). - Успішно видалено привілеї для %n запису.Успішно видалено привілеї для %n записів.Успішно видалено привілеї для %n записів. + Успішно видалено привілеї для %n запису.Успішно видалено привілеї для %n записів.Успішно видалено привілеї для %n записів.Успішно видалено привілеї для %n записів. KeePassXC: No entry with permissions found! @@ -479,15 +479,15 @@ Please unlock the selected database or choose another one which is unlocked.ChangeMasterKeyWidget Password - Гасло + Пароль Enter password: - Уведіть гасло: + Введіть пароль: Repeat password: - Повторіть гасло: + Повторіть пароль: &Key file @@ -531,15 +531,15 @@ Please unlock the selected database or choose another one which is unlocked. Empty password - Порожнє гасло + Порожній пароль Do you really want to use an empty string as password? - Ви дійсно хочете використати порожній рядок у якості гасла? + Ви дійсно бажаєте використати порожній рядок як пароль? Different passwords supplied. - Гасла не співпадають. + Паролі не співпадають. Failed to set %1 as the Key file: @@ -578,7 +578,7 @@ Please consider generating a new key file. Replace username and password with references - Замінити ім'я користувача і гасло посиланнями + Замінити ім'я користувача і пароль посиланнями Copy history @@ -693,15 +693,15 @@ Please consider generating a new key file. CsvParserModel %n byte(s), - %n байт,%n byte(s), %n байта, %n байтів, + %n байт,%n byte(s), %n байта, %n байтів, %n байтів, %n row(s), - %n рядок, %n рядка, %n рядків, + %n рядок, %n рядка, %n рядків, %n рядків, %n column(s) - %n колонка%n колонки%n колонок + %n колонка%n колонки%n колонок%n колонок @@ -716,7 +716,7 @@ Please consider generating a new key file. Password: - Гасло: + Пароль: Browse @@ -861,12 +861,12 @@ If you keep this number, your database may be too easy to crack! MiB Abbreviation for Mebibytes (KDF settings) - МіБМіБМіБ + МіБМіБМіБМіБ thread(s) Threads for parallel execution (KDF settings) - потікпотокипотоків + потікпотокипотоківпотоків @@ -1032,7 +1032,7 @@ Save changes? Passwords - Гасла + Паролі Save database as @@ -1123,7 +1123,7 @@ Disable safe saves and try again? Do you really want to move %n entry(s) to the recycle bin? - Ви дійсно хочете перемістити %n запис у смітник?Ви дійсно хочете перемістити %n записи в смітник?Ви дійсно хочете перемістити %n записів у смітник? + Ви дійсно хочете перемістити %n запис у смітник?Ви дійсно хочете перемістити %n записи в смітник?Ви дійсно хочете перемістити %n записів у смітник?Ви дійсно хочете перемістити %n записів у смітник? Execute command? @@ -1212,7 +1212,7 @@ Do you want to merge your changes? Password - Гасло + Пароль URL @@ -1343,7 +1343,7 @@ Do you want to merge your changes? Different passwords supplied. - Гасла не співпадають. + Паролі не співпадають. New attribute @@ -1371,11 +1371,11 @@ Do you want to merge your changes? %n week(s) - %n тиждень%n тижні%n тижнів + %n тиждень%n тижні%n тижнів%n тижнів %n month(s) - %n місяць%n місяці%n місяців + %n місяць%n місяці%n місяців%n місяців 1 year @@ -1383,11 +1383,11 @@ Do you want to merge your changes? Apply generated password? - Застосувати створене гасло? + Застосувати створений пароль? Do you want to apply the generated password to this entry? - Бажаєте застосувати створене гасло до цього запису? + Бажаєте призначити створений пароль цьому запису? Entry updated successfully. @@ -1495,11 +1495,11 @@ Do you want to merge your changes? Password: - Гасло: + Пароль: Repeat: - Гасло ще раз: + Пароль ще раз: Title: @@ -1819,7 +1819,7 @@ This may cause the affected plugins to malfunction. Are you sure you want to remove %n attachment(s)? - Ви дійсно хочете видалити %n вкладення?Ви дійсно хочете видалити %n вкладення?Ви дійсно хочете видалити %n вкладень? + Ви дійсно хочете видалити %n вкладення?Ви дійсно хочете видалити %n вкладення?Ви дійсно хочете видалити %n вкладень?Ви дійсно хочете видалити %n вкладень? Confirm Remove @@ -1923,7 +1923,7 @@ This may cause the affected plugins to malfunction. Password - Гасло + Пароль Notes @@ -1962,7 +1962,7 @@ This may cause the affected plugins to malfunction. Hide Passwords - Ховати гасла + Сховати паролі Fit to window @@ -2047,7 +2047,7 @@ This may cause the affected plugins to malfunction. Ensure that the password contains characters from every group - Забезпечити використання символів усіх видів у гаслі + Забезпечити входження до пароля символів з кожної групи Extended ASCII @@ -2661,7 +2661,7 @@ This is a one-way migration. You won't be able to open the imported databas Time-based one-time password - Тимчасове одноразове гасло + Тимчасовий одноразовий пароль &Groups @@ -2757,11 +2757,11 @@ This is a one-way migration. You won't be able to open the imported databas Cop&y password - Копіювати гасло + Копіювати пароль Copy password to clipboard - Копіювати гасло в кишеню + Копіювати пароль в буфер обміну &Settings @@ -2769,7 +2769,7 @@ This is a one-way migration. You won't be able to open the imported databas Password Generator - Виробник гасел + Генератор паролів &Perform Auto-Type @@ -2849,7 +2849,7 @@ This is a one-way migration. You won't be able to open the imported databas <p>It looks like you are using KeePassHTTP for browser integration. This feature has been deprecated and will be removed in the future.<br>Please switch to KeePassXC-Browser instead! For help with migration, visit our <a class="link" href="https://keepassxc.org/docs/keepassxc-browser-migration">migration guide</a> (warning %1 of 3).</p> - <p>Схоже, що Ви використовуєте KeePassHTTP для сполучення з переглядачем. Цей засіб застарів і буде незабаром видалений. <br>Натомість, перейдіть, будь ласка, до використання переглядача KeePassXC! Інформацію щодо переходу Ви можете знайти у нашому <a class="link" href="https://keepassxc.org/docs/keepassxc-browser-migration">посібнику</a> (попередження %1 of 3).</p> + <p>Схоже, що Ви використовуєте KeePassHTTP для інтеграції з браузером. Цей засіб застарів і незабаром буде видалений. <br>Натомість, будь ласка, використовуйте KeePassXC-Browser! Інформацію з переходу Ви можете знайти у нашому <a class="link" href="https://keepassxc.org/docs/keepassxc-browser-migration">посібнику</a> (попередження %1 of 3).</p> read-only @@ -2944,7 +2944,7 @@ This version is not meant for production use. Passphrase is required to decrypt this key - Для розшифрування цього ключа потрібен вираз гасла + Для розшифрування цього ключа потрібен пароль Key derivation failed, key file corrupted? @@ -2952,7 +2952,7 @@ This version is not meant for production use. Decryption failed, wrong passphrase? - Розшифрування зазнало невдачі, можливо, через хибний вираз гасла + Розшифрувати не вдалося, можливо, через хибний пароль Unexpected EOF while reading public key @@ -3060,7 +3060,7 @@ This version is not meant for production use. Password Generator - Виробник гасел + Генератор паролів Advanced @@ -3108,7 +3108,7 @@ This version is not meant for production use. <p>KeePassHTTP has been deprecated and will be removed in the future.<br>Please switch to KeePassXC-Browser instead! For help with migration, visit our <a href="https://keepassxc.org/docs/keepassxc-browser-migration">migration guide</a>.</p> - <p>KeePassHTTP застарів і може бути видалений у майбутньому.<br>Натомість, перейдіть, будь ласка, до використання переглядача KeePassXC! Інформацію щодо переходу Ви можете знайти у нашому <a href="https://keepassxc.org/docs/keepassxc-browser-migration">посібнику</a>.</p> + <p>KeePassHTTP застарів і може бути видалений у майбутньому.<br>Натомість, будь ласка, використовуйте KeePassXC-Browser! Інформацію з переходу Ви можете знайти у нашому <a href="https://keepassxc.org/docs/keepassxc-browser-migration">посібнику</a>.</p> Cannot bind to privileged ports @@ -3129,7 +3129,7 @@ Using default port 19455. Password: - Гасло: + Пароль: strength @@ -3142,7 +3142,7 @@ Using default port 19455. Password - Гасло + Пароль Character Types @@ -3182,7 +3182,7 @@ Using default port 19455. Passphrase - Вираз гасла + Пароль Wordlist: @@ -3222,7 +3222,7 @@ Using default port 19455. Password Quality: %1 - Якість гасла: %1 + Якість пароля: %1 Poor @@ -3345,15 +3345,15 @@ Using default port 19455. Prompt for the entry's password. - Запросити гасло для запису. + Запитати введення пароля для запису. Generate a password for the entry. - Створити гасло для запису. + Згенерувати пароль для запису. Length for the generated password. - Довжина створюваного гасла. + Довжина згенерованого пароля. length @@ -3365,7 +3365,7 @@ Using default port 19455. Copy an entry's password to the clipboard. - Скопіювати гасло запису в кишеню. + Копіювати пароль запису до буферу обміну. Path of the entry to clip. @@ -3394,15 +3394,15 @@ Using default port 19455. Estimate the entropy of a password. - Підрахувати ентропію гасла. + Обчислити ентропію пароля. Password for which to estimate the entropy. - Гасло, для якого треба підрахувати ентропію. + Пароль, для якого обчислюється ентропія. Perform advanced analysis on the password. - Виконати поглиблений аналіз гасла. + Виконати поглиблений аналіз пароля. Extract and print the content of a database. @@ -3414,7 +3414,7 @@ Using default port 19455. Insert password to unlock %1: - Вставте гасло для відкриття %1: + Вставте пароль для відкриття %1: Failed to load key file %1 : %2 @@ -3532,7 +3532,7 @@ Available commands: Password - Гасло + Пароль Notes @@ -3548,11 +3548,11 @@ Available commands: Legacy Browser Integration - Застарілий тип підключення до переглядача + Застарілий спосіб інтеграції з браузером Browser Integration - Підключення до переглядача + Інтеграція з браузером YubiKey[%1] Challenge Response - Slot %2 - %3 @@ -3572,11 +3572,11 @@ Available commands: Generate a new random diceware passphrase. - Створити новий вираз гасла методом гральних кісточок (diceware). + Генерувати новий пароль методом гральних кісток (diceware). Word count for the diceware passphrase. - Кількість слів у виразі гасла. + Кількість слів у паролі. count @@ -3585,36 +3585,36 @@ Available commands: Wordlist for the diceware generator. [Default: EFF English] - Список слів для виробника гасел методом diceware. + Список слів для генератора паролів методом diceware. [Типово: англійська версія EFF] Generate a new random password. - Створити нове випадкове гасло. + Згенерувати новий випадковий пароль. Length of the generated password. - Довжина створюваного гасла. + Довжина генерованого пароля. Use lowercase characters in the generated password. - Використовувати малі літери для створення гасла. + Використовувати малі літери в генерації пароля. Use uppercase characters in the generated password. - Використовувати великі літери для створення гасла. + Використовувати великі літери в генерації пароля. Use numbers in the generated password. - Використовувати числа для створення гасла. + Використовувати цифри в генерації пароля. Use special characters in the generated password. - Використовувати спеціальні символи для створення гасла. + Використовувати спеціальні символи в генерації пароля. Use extended ASCII in the generated password. - Використовувати розширені ASCII для створення гасла. + Використовувати розширений набір ASCII в генерації пароля. @@ -3722,7 +3722,7 @@ Please unlock the selected database or choose another one which is unlocked. Successfully removed %n encryption-key(s) from KeePassX/Http Settings. - Успішно видалено %n шифрувальний ключ з HTTP налаштувань KeePassX.Успішно видалено %n шифрувальних ключа з HTTP налаштувань KeePassX.Успішно видалено %n шифрувальних ключів з HTTP налаштувань KeePassX. + Успішно видалено %n шифрувальний ключ з HTTP налаштувань KeePassX.Успішно видалено %n шифрувальних ключа з HTTP налаштувань KeePassX.Успішно видалено %n шифрувальних ключів з HTTP налаштувань KeePassX.Успішно видалено %n шифрувальних ключів з HTTP налаштувань KeePassX. KeePassXC: No keys found @@ -3754,7 +3754,7 @@ Please unlock the selected database or choose another one which is unlocked. Successfully removed permissions from %n entries. - Успішно видалено привілеї для %n запису.Успішно видалено привілеї для %n записів.Успішно видалено привілеї для %n записів. + Успішно видалено привілеї для %n запису.Успішно видалено привілеї для %n записів.Успішно видалено привілеї для %n записів.Успішно видалено привілеї для %n записів. KeePassXC: No entry with permissions found! @@ -3945,15 +3945,15 @@ Please unlock the selected database or choose another one which is unlocked. Don't require password repeat when it is visible - Не запитувати підтвердження гасла, якщо воно не приховане + Не запитувати підтвердження пароля, якщо він не приховується Show passwords in cleartext by default - Типово показувати гасло у відкритому вигляді + Типово показувати паролі у відкритому вигляді Hide passwords in the preview panel - Ховати гасла у панелі перегляду + Приховувати паролі у панелі перегляду Hide entry notes by default @@ -4024,7 +4024,7 @@ Please unlock the selected database or choose another one which is unlocked.TotpDialog Timed Password - Тимчасове гасло + Тимчасовий пароль 000000 @@ -4054,7 +4054,7 @@ Please unlock the selected database or choose another one which is unlocked.WelcomeWidget Start storing your passwords securely in a KeePassXC database - Почніть надійно і безпечно зберігати ваші гасла у сховищі KeePassXC + Почніть надійно і безпечно зберігати ваші паролі у сховищі KeePassXC Create new database @@ -4097,7 +4097,7 @@ Please unlock the selected database or choose another one which is unlocked. KeePassXC - cross-platform password manager - KeePassXC – багатоплатформовий керманич гасел + KeePassXC – кросплатформний менеджер паролів filenames of the password databases to open (*.kdbx) @@ -4113,7 +4113,7 @@ Please unlock the selected database or choose another one which is unlocked. read password of the database from stdin - прочитати гасло для сховища зі stdin + отримати пароль до сховища із stdin Parent window handle diff --git a/share/translations/keepassx_zh_CN.ts b/share/translations/keepassx_zh_CN.ts index ad90b9e8a..25253c508 100644 --- a/share/translations/keepassx_zh_CN.ts +++ b/share/translations/keepassx_zh_CN.ts @@ -370,11 +370,11 @@ Please select whether you want to allow access. Select custom proxy location - + 选择自定义代理路径 We're sorry, but KeePassXC-Browser is not supported for Snap releases at the moment. - + 非常抱歉,KeePassXC-Browser 当前不支持 Snap 发行包 @@ -388,11 +388,14 @@ Please select whether you want to allow access. If you would like to allow it access to your KeePassXC database, give it a unique name to identify and accept it. - + 你已收到上述密钥的关联请求。 + +如果你想允许它访问你的 KeePassXC 数据库, +请为它提供一个唯一的名称来识别并接受它。 Save and allow access - + 保存并允许访问 KeePassXC: Overwrite existing key? @@ -401,7 +404,8 @@ give it a unique name to identify and accept it. A shared encryption key with the name "%1" already exists. Do you want to overwrite it? - + 一个名为“%1”共享的加密密钥已存在。 +确认要覆盖它吗? KeePassXC: Update Entry @@ -427,7 +431,7 @@ Please unlock the selected database or choose another one which is unlocked. The active database does not contain a settings entry. - + 当前数据库中不包含设置的条目。 KeePassXC: No keys found @@ -544,14 +548,16 @@ Please unlock the selected database or choose another one which is unlocked. Legacy key file format - + 旧式密钥文件格式 You are using a legacy key file format which may become unsupported in the future. Please consider generating a new key file. - + 您使用的是旧式密钥文件格式,将来可能会不再被支持。 + +请考虑生成一个新的密钥文件。 Changing master key failed: no YubiKey inserted. @@ -732,18 +738,20 @@ Please consider generating a new key file. Legacy key file format - + 旧式密钥文件格式 You are using a legacy key file format which may become unsupported in the future. Please consider generating a new key file. - + 您使用的是旧式密钥文件格式,将来可能会不再被支持。 + +请考虑生成一个新的密钥文件。 Don't show this warning again - + 不再显示此警告 All files @@ -870,7 +878,7 @@ If you keep this number, your database may be too easy to crack! Key Derivation Function: - + 密钥派生函数: Transform rounds: @@ -929,11 +937,11 @@ If you keep this number, your database may be too easy to crack! Additional Database Settings - + 其他数据库设置 Enable &compression (recommended) - + 启用压缩 (推荐) @@ -1151,7 +1159,7 @@ Disable safe saves and try again? File has changed - + 文件已变更 The database file has changed. Do you want to load the changes? @@ -1183,7 +1191,7 @@ Do you want to merge your changes? DetailsWidget Generate TOTP Token - + 生成 TOTP 令牌 Close @@ -1203,7 +1211,7 @@ Do you want to merge your changes? Expiration - + 过期时间 Username @@ -1219,7 +1227,7 @@ Do you want to merge your changes? Attributes - + 添加属性 Attachments @@ -1247,11 +1255,11 @@ Do you want to merge your changes? Never - + 从不 [PROTECTED] - + [受保护的内容] Disabled @@ -1298,15 +1306,15 @@ Do you want to merge your changes? (encrypted) - + (已加密) Select private key - + 选择私钥文件 File too large to be a private key - + 作为一个私钥来说,这个文件太大了。 Failed to open private key @@ -1342,7 +1350,7 @@ Do you want to merge your changes? [PROTECTED] - + [受保护的内容] Press reveal to view or edit @@ -1366,15 +1374,15 @@ Do you want to merge your changes? Apply generated password? - + 是否应用生成的密码? Do you want to apply the generated password to this entry? - + 是否将生成的密码应用于此项目? Entry updated successfully. - + 项目已成功更新。 @@ -1409,11 +1417,11 @@ Do you want to merge your changes? Foreground Color: - + 前景色: Background Color: - + 背景色: @@ -1545,7 +1553,7 @@ Do you want to merge your changes? Decrypt - + 解密 n/a @@ -1837,12 +1845,12 @@ This may cause the affected plugins to malfunction. Unable to open attachments: %1 - + 无法打开附件:%1 Unable to open files: %1 - + 无法打开文件:%1 @@ -1896,7 +1904,7 @@ This may cause the affected plugins to malfunction. Never - + 从不 Password @@ -2348,7 +2356,7 @@ This is a one-way migration. You won't be able to open the imported databas Duplicate custom attribute found - + 找到重复的自定义属性 Entry string key or value missing diff --git a/share/translations/keepassx_zh_TW.ts b/share/translations/keepassx_zh_TW.ts index 7adcdd8b8..6e9c7622c 100644 --- a/share/translations/keepassx_zh_TW.ts +++ b/share/translations/keepassx_zh_TW.ts @@ -944,7 +944,7 @@ If you keep this number, your database may be too easy to crack! Enable &compression (recommended) - + 啟用&壓縮 (推薦) @@ -1382,11 +1382,11 @@ Do you want to merge your changes? Do you want to apply the generated password to this entry? - + 是否要把產生的密碼應用到此項目? Entry updated successfully. - + 項目已成功更新。 diff --git a/snapcraft.yaml b/snapcraft.yaml index 5a3597c30..612fa2e64 100644 --- a/snapcraft.yaml +++ b/snapcraft.yaml @@ -1,5 +1,5 @@ name: keepassxc -version: 2.3.3 +version: 2.3.4 grade: stable summary: Community-driven port of the Windows application “KeePass Password Safe” description: | @@ -27,6 +27,8 @@ parts: configflags: - -DCMAKE_BUILD_TYPE=Release - -DCMAKE_INSTALL_PREFIX=/usr + - -DCMAKE_LIBRARY_PATH=/opt/keepassxc-libs/lib/x86_64-linux-gnu + - -DCMAKE_INCLUDE_PATH=/opt/keepassxc-libs/include - -DKEEPASSXC_DIST_TYPE=Snap - -DKEEPASSXC_BUILD_TYPE=Release - -DWITH_TESTS=OFF @@ -43,29 +45,25 @@ parts: - libxtst-dev - libyubikey-dev - libykpers-1-dev - - libcurl4-openssl-dev - libsodium-dev stage-packages: - dbus - qttranslations5-l10n # common translations - install: | + - libgcrypt20-18 + - libykpers-1-1 + - libargon2-0 + - libsodium23 + - libxtst6 + - libqt5x11extras5 + - libusb-1.0-0 + override-build: | + snapcraftctl build sed -i 's|Icon=keepassxc|Icon=${SNAP}/usr/share/icons/hicolor/256x256/apps/keepassxc.png|g' $SNAPCRAFT_PART_INSTALL/usr/share/applications/org.keepassxc.KeePassXC.desktop organize: usr/share/qt5/translations/*.qm: usr/share/keepassxc/translations/ + opt/keepassxc-libs/lib/x86_64-linux-gnu/*: usr/lib/x86_64-linux-gnu/ + opt/keepassxc-libs/share/locale/*: usr/share/locale/ + stage: + - -opt after: [desktop-qt5] - - # Redefine desktop-qt5 stage packages to work with Ubuntu 17.04 - desktop-qt5: - stage-packages: - - libxkbcommon0 - - ttf-ubuntu-font-family - - dmz-cursor-theme - - light-themes - - adwaita-icon-theme - - gnome-themes-standard - - shared-mime-info - - libqt5gui5 - - libgdk-pixbuf2.0-0 - - libqt5svg5 # for loading icon themes which are svg - - locales-all - - xdg-user-dirs + diff --git a/sonar-project.properties b/sonar-project.properties new file mode 100644 index 000000000..0ba2bee8f --- /dev/null +++ b/sonar-project.properties @@ -0,0 +1,18 @@ +# https://about.sonarcloud.io/get-started/ +# Run the SonarCloud tools with the follow parameters: +# Run in the cmake build directory after cmake: build-wrapper-[platform]-x86-64 --out-dir bw-output make clean all +# Run in the project root directory: sonar-scanner.bat -Dsonar.cfamily.build-wrapper-output=build/bw-output -Dsonar.cfamily.gcov.reportsPath=build -Dsonar.login=[AUTH_TOKEN] + +# required metadata +sonar.projectKey=keepassxc +sonar.organization=droidmonkey-github +sonar.projectName=keepassxc +sonar.host.url=https://sonarcloud.io + +# path to source directories (required) +sonar.sources=src +sonar.tests=tests + +sonar.cfamily.threads=2 + +sonar.exclusions=**/zxcvbn/* diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 61f444e51..28a0753e9 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -345,7 +345,7 @@ if(MINGW) string(REGEX REPLACE "-snapshot$" "" KEEPASSXC_VERSION_CLEAN ${KEEPASSXC_VERSION}) set(CPACK_GENERATOR "ZIP;NSIS") - set(CPACK_STRIP_FILES ON) + set(CPACK_STRIP_FILES OFF) set(CPACK_PACKAGE_FILE_NAME "${PROGNAME}-${KEEPASSXC_VERSION}-${OUTPUT_FILE_POSTFIX}") set(CPACK_PACKAGE_INSTALL_DIRECTORY ${PROGNAME}) set(CPACK_PACKAGE_VERSION ${KEEPASSXC_VERSION_CLEAN}) diff --git a/src/browser/BrowserAction.cpp b/src/browser/BrowserAction.cpp index 96090258a..78ca53c1e 100755 --- a/src/browser/BrowserAction.cpp +++ b/src/browser/BrowserAction.cpp @@ -169,7 +169,9 @@ QJsonObject BrowserAction::handleAssociate(const QJsonObject& json, const QStrin QMutexLocker locker(&m_mutex); if (key.compare(m_clientPublicKey, Qt::CaseSensitive) == 0) { - const QString id = m_browserService.storeKey(key); + // Check for identification key. If it's not found, ensure backwards compatibility and use the current public key + const QString idKey = decrypted.value("idKey").toString(); + const QString id = m_browserService.storeKey((idKey.isEmpty() ? key: idKey)); if (id.isEmpty()) { return getErrorReply(action, ERROR_KEEPASS_ACTION_CANCELLED_OR_DENIED); } diff --git a/src/browser/BrowserOptionDialog.cpp b/src/browser/BrowserOptionDialog.cpp index bcf96a85f..1bc17a278 100755 --- a/src/browser/BrowserOptionDialog.cpp +++ b/src/browser/BrowserOptionDialog.cpp @@ -34,6 +34,11 @@ BrowserOptionDialog::BrowserOptionDialog(QWidget* parent) : connect(m_ui->removeSharedEncryptionKeys, SIGNAL(clicked()), this, SIGNAL(removeSharedEncryptionKeys())); connect(m_ui->removeStoredPermissions, SIGNAL(clicked()), this, SIGNAL(removeStoredPermissions())); + m_ui->extensionLabel->setOpenExternalLinks(true); + m_ui->extensionLabel->setText(tr("KeePassXC-Browser is needed for the browser integration to work.
    Download it for %1 and %2.").arg( + "Firefox", + "Google Chrome / Chromium / Vivaldi")); + m_ui->warningWidget->showMessage(tr("Warning: The following options can be dangerous!"), MessageWidget::Warning); m_ui->warningWidget->setCloseButtonVisible(false); m_ui->warningWidget->setAutoHideTimeout(-1); @@ -47,6 +52,11 @@ BrowserOptionDialog::BrowserOptionDialog(QWidget* parent) : connect(m_ui->useCustomProxy, SIGNAL(toggled(bool)), m_ui->customProxyLocationBrowseButton, SLOT(setEnabled(bool))); connect(m_ui->customProxyLocationBrowseButton, SIGNAL(clicked()), this, SLOT(showProxyLocationFileDialog())); +#ifdef Q_OS_WIN + // Vivaldi uses Chrome's registry settings + m_ui->vivaldiSupport->setHidden(true); + m_ui->chromeSupport->setText("Chrome and Vivaldi"); +#endif m_ui->browserGlobalWarningWidget->setVisible(false); } diff --git a/src/browser/BrowserOptionDialog.ui b/src/browser/BrowserOptionDialog.ui index e82379452..24589c147 100755 --- a/src/browser/BrowserOptionDialog.ui +++ b/src/browser/BrowserOptionDialog.ui @@ -49,6 +49,26 @@ General + + + + + + + + Qt::Vertical + + + QSizePolicy::Fixed + + + + 20 + 4 + + + + diff --git a/src/browser/BrowserService.cpp b/src/browser/BrowserService.cpp index af35315a0..80e2ba051 100644 --- a/src/browser/BrowserService.cpp +++ b/src/browser/BrowserService.cpp @@ -366,7 +366,7 @@ void BrowserService::updateEntry(const QString& id, const QString& uuid, const Q } } -QList BrowserService::searchEntries(Database* db, const QString& hostname) +QList BrowserService::searchEntries(Database* db, const QString& hostname, const QString& url) { QList entries; Group* rootGroup = db->rootGroup(); @@ -375,14 +375,19 @@ QList BrowserService::searchEntries(Database* db, const QString& hostnam } for (Entry* entry : EntrySearcher().search(hostname, rootGroup, Qt::CaseInsensitive)) { - QString title = entry->title(); - QString url = entry->url(); + QString entryUrl = entry->url(); + QUrl entryQUrl(entryUrl); + QString entryScheme = entryQUrl.scheme(); + QUrl qUrl(url); - // Filter to match hostname in Title and Url fields - if ((!title.isEmpty() && hostname.contains(title)) - || (!url.isEmpty() && hostname.contains(url)) - || (matchUrlScheme(title) && hostname.endsWith(QUrl(title).host())) - || (matchUrlScheme(url) && hostname.endsWith(QUrl(url).host())) ) { + // Ignore entry if port or scheme defined in the URL doesn't match + if ((entryQUrl.port() > 0 && entryQUrl.port() != qUrl.port()) || entryScheme.compare(qUrl.scheme()) != 0) { + continue; + } + + // Filter to match hostname in URL field + if ((!entryUrl.isEmpty() && hostname.contains(entryUrl)) + || (matchUrlScheme(entryUrl) && hostname.endsWith(entryQUrl.host()))) { entries.append(entry); } } @@ -390,7 +395,7 @@ QList BrowserService::searchEntries(Database* db, const QString& hostnam return entries; } -QList BrowserService::searchEntries(const QString& text, const StringPairList& keyList) +QList BrowserService::searchEntries(const QString& url, const StringPairList& keyList) { // Get the list of databases to search QList databases; @@ -417,11 +422,11 @@ QList BrowserService::searchEntries(const QString& text, const StringPai } // Search entries matching the hostname - QString hostname = QUrl(text).host(); + QString hostname = QUrl(url).host(); QList entries; do { for (Database* db : databases) { - entries << searchEntries(db, hostname); + entries << searchEntries(db, hostname, url); } } while (entries.isEmpty() && removeFirstDomain(hostname)); @@ -543,7 +548,9 @@ QList BrowserService::sortEntries(QList& pwEntries, const QStrin // Sort same priority entries by Title or UserName auto entries = priorities.values(i); std::sort(entries.begin(), entries.end(), [&priorities, &field](Entry* left, Entry* right) { - return QString::localeAwareCompare(left->attributes()->value(field), right->attributes()->value(field)) < 0; + return (QString::localeAwareCompare(left->attributes()->value(field), right->attributes()->value(field)) < 0) || + ((QString::localeAwareCompare(left->attributes()->value(field), right->attributes()->value(field)) == 0) && + (QString::localeAwareCompare(left->attributes()->value("UserName"), right->attributes()->value("UserName")) < 0)); }); results << entries; if (BrowserSettings::bestMatchOnly() && !pwEntries.isEmpty()) { @@ -626,6 +633,9 @@ BrowserService::Access BrowserService::checkAccess(const Entry* entry, const QSt if (!config.load(entry)) { return Unknown; } + if (entry->isExpired()) { + return Denied; + } if ((config.isAllowed(host)) && (submitHost.isEmpty() || config.isAllowed(submitHost))) { return Allowed; } diff --git a/src/browser/BrowserService.h b/src/browser/BrowserService.h index eb47aac07..f65f6af59 100644 --- a/src/browser/BrowserService.h +++ b/src/browser/BrowserService.h @@ -42,8 +42,8 @@ public: Entry* getConfigEntry(bool create = false); QString getKey(const QString& id); void addEntry(const QString& id, const QString& login, const QString& password, const QString& url, const QString& submitUrl, const QString& realm); - QList searchEntries(Database* db, const QString& hostname); - QList searchEntries(const QString& text, const StringPairList& keyList); + QList searchEntries(Database* db, const QString& hostname, const QString& url); + QList searchEntries(const QString& url, const StringPairList& keyList); void removeSharedEncryptionKeys(); void removeStoredPermissions(); diff --git a/src/browser/NativeMessagingBase.h b/src/browser/NativeMessagingBase.h index 2cd63d24c..44a0f1768 100644 --- a/src/browser/NativeMessagingBase.h +++ b/src/browser/NativeMessagingBase.h @@ -52,7 +52,7 @@ protected slots: protected: virtual void readLength() = 0; - virtual void readStdIn(const quint32 length) = 0; + virtual bool readStdIn(const quint32 length) = 0; void readNativeMessages(); QString jsonToString(const QJsonObject& json) const; void sendReply(const QJsonObject& json); diff --git a/src/browser/NativeMessagingHost.cpp b/src/browser/NativeMessagingHost.cpp index cb757e65e..7d14c9d30 100755 --- a/src/browser/NativeMessagingHost.cpp +++ b/src/browser/NativeMessagingHost.cpp @@ -114,10 +114,10 @@ void NativeMessagingHost::readLength() } } -void NativeMessagingHost::readStdIn(const quint32 length) +bool NativeMessagingHost::readStdIn(const quint32 length) { if (length <= 0) { - return; + return false; } QByteArray arr; @@ -129,7 +129,7 @@ void NativeMessagingHost::readStdIn(const quint32 length) int c = std::getchar(); if (c == EOF) { // message ended prematurely, ignore it and return - return; + return false; } arr.append(static_cast(c)); } @@ -137,6 +137,7 @@ void NativeMessagingHost::readStdIn(const quint32 length) if (arr.length() > 0) { sendReply(m_browserClients.readResponse(arr)); } + return true; } void NativeMessagingHost::newLocalConnection() diff --git a/src/browser/NativeMessagingHost.h b/src/browser/NativeMessagingHost.h index cc0a2e84c..29096d311 100755 --- a/src/browser/NativeMessagingHost.h +++ b/src/browser/NativeMessagingHost.h @@ -46,7 +46,7 @@ signals: private: void readLength(); - void readStdIn(const quint32 length); + bool readStdIn(const quint32 length); void sendReplyToAllClients(const QJsonObject& json); private slots: diff --git a/src/cli/keepassxc-cli.1 b/src/cli/keepassxc-cli.1 index cc1e7b8d7..cd428e105 100644 --- a/src/cli/keepassxc-cli.1 +++ b/src/cli/keepassxc-cli.1 @@ -5,8 +5,8 @@ keepassxc-cli \- command line interface for the \fBKeePassXC\fP password manager .SH SYNOPSIS .B keepassxc-cli -.RI [ options ] .I command +.RI [ options ] .SH DESCRIPTION \fBkeepassxc-cli\fP is the command line interface for the \fBKeePassXC\fP password manager. It provides the ability to query and modify the entries of a KeePass database, directly from the command line. diff --git a/src/core/Entry.cpp b/src/core/Entry.cpp index 25ef6b50e..800de0b06 100644 --- a/src/core/Entry.cpp +++ b/src/core/Entry.cpp @@ -287,8 +287,7 @@ QString Entry::webUrl() const QString Entry::displayUrl() const { QString url = maskPasswordPlaceholders(m_attributes->value(EntryAttributes::URLKey)); - url = resolveMultiplePlaceholders(url); - return resolveUrl(url); + return resolveMultiplePlaceholders(url); } QString Entry::username() const diff --git a/src/core/Uuid.cpp b/src/core/Uuid.cpp index 1b531159f..cb32bfdc7 100644 --- a/src/core/Uuid.cpp +++ b/src/core/Uuid.cpp @@ -88,13 +88,19 @@ bool Uuid::operator!=(const Uuid& other) const Uuid Uuid::fromBase64(const QString& str) { QByteArray data = QByteArray::fromBase64(str.toLatin1()); - return Uuid(data); + if (data.size() == Uuid::Length) { + return Uuid(data); + } + return {}; } Uuid Uuid::fromHex(const QString& str) { QByteArray data = QByteArray::fromHex(str.toLatin1()); - return Uuid(data); + if (data.size() == Uuid::Length) { + return Uuid(data); + } + return {}; } uint qHash(const Uuid& key) diff --git a/src/gui/AboutDialog.ui b/src/gui/AboutDialog.ui index 39963c121..2b274544a 100644 --- a/src/gui/AboutDialog.ui +++ b/src/gui/AboutDialog.ui @@ -2,6 +2,14 @@ AboutDialog + + + 0 + 0 + 510 + 443 + + About KeePassXC @@ -68,7 +76,7 @@ 0 - + About @@ -164,13 +172,21 @@ <ul> - <li>droidmonkey</li> - <li>phoerious</li> - <li>TheZ3ro</li> - <li>louib</li> - <li>weslly</li> + <li>Jonathan White (<a href="https://github.com/droidmonkey">droidmonkey</a>)</li> + <li>Janek Bevendorff (<a href="https://github.com/phoerious">phoerious</a>)</li> + <li><a href="https://github.com/TheZ3ro">TheZ3ro</a></li> + <li>Louis-Bertrand (<a href="https://github.com/louib">louib</a>)</li> + <li>Weslly Honorato (<a href="https://github.com/weslly">weslly</a>)</li> + <li>Toni Spets (<a href="https://github.com/hifi">hifi</a>)</li> + <li>Sami V&auml;nttinen (<a href="https://github.com/varjolintu">varjolintu</a>)</li> </ul> + + true + + + Qt::LinksAccessibleByKeyboard|Qt::LinksAccessibleByMouse + @@ -187,6 +203,9 @@ true + + Qt::LinksAccessibleByKeyboard|Qt::LinksAccessibleByMouse + @@ -204,7 +223,7 @@ - + Contributors @@ -220,7 +239,7 @@ 0 0 449 - 803 + 845 @@ -236,63 +255,74 @@ IBeamCursor - <h3>Notable Code Contributions:</h3> + <h3>VIP Patreon Supporters:</h3> <ul> -<li>droidmonkey</li> -<li>phoerious</li> -<li>TheZ3ro</li> -<li>louib</li> -<li >weslly</li> -<li>varjolintu (KeePassXC-Browser)</li> -<li>hifi (SSH Agent)</li> -<li>frostasm</li> -<li>fonic (Entry Table View)</li> -<li>kylemanna (YubiKey)</li> -<li>keithbennett (KeePassHTTP)</li> -<li>Typz (KeePassHTTP)</li> -<li>denk-mal (KeePassHTTP)</li> -<li>angelsl (KDBX 4)</li> -<li>seatedscribe (CSV Import)</li> -<li>debfx (KeePassX)</li> -<li>BlueIce (KeePassX)</li> + <li>John Cook</li> + <li>Max Anderson</li> +</ul> +<h3>Notable Code Contributions:</h3> +<ul> + <li>droidmonkey</li> + <li>phoerious</li> + <li>TheZ3ro</li> + <li>louib</li> + <li>weslly</li> + <li>varjolintu (KeePassXC-Browser)</li> + <li>hifi (SSH Agent)</li> + <li>frostasm</li> + <li>fonic (Entry Table View)</li> + <li>kylemanna (YubiKey)</li> + <li>keithbennett (KeePassHTTP)</li> + <li>Typz (KeePassHTTP)</li> + <li>denk-mal (KeePassHTTP)</li> + <li>angelsl (KDBX 4)</li> + <li>seatedscribe (CSV Import)</li> + <li>debfx (KeePassX)</li> + <li>BlueIce (KeePassX)</li> +</ul> +<h3>Patreon Supporters:</h3> +<ul> + <li>Ashura</li> + <li>Alexanderjb</li> + <li>Andreas Kollmann</li> + <li>Richard Ames</li> </ul> - <h3>Translations:</h3> <ul> -<li><b>Basque:</b> azken_tximinoa, Hey_neken</li> -<li><b>Catalan:</b> capitantrueno, dsoms, mcus, raulua, ZJaume</li> -<li><b>Chinese (China):</b> Biggulu, Brandon_c, hoilc, ligyxy, vc5, Small_Ku</li> -<li><b>Chinese (Taiwan):</b> BestSteve, MiauLightouch, Small_Ku, yan12125, ymhuang0808</li> -<li><b>Czech:</b> DanielMilde, JosefVitu, pavelb, tpavelek</li> -<li><b>Danish:</b> nlkl</li> -<li><b>Dutch:</b> apie, bartlibert, evanoosten, fvw, KnooL, srgvg, Vistaus, wanderingidea</li> -<li><b>Finnish:</b> artnay, Jarppi, MawKKe </li> -<li><b>French:</b> A1RO, aghilas.messara, bisaloo, frgnca, ggtr1138, gilbsgilbs, gtalbot, Gui13, iannick, jlutran, kyodev, logut, MartialBis, narzb, pBouillon, plunkets, Raphi111, Scrat15, tl_pierre, wilfriedroset</li> -<li><b>German:</b> antsas, BasicBaer, Calyrx, codejunky, DavidHamburg, eth0, for1real, jensrutschmann, joe776, kflesch, MarcEdinger, marcbone, mcliquid, mfernau77, montilo, nursoda, omnisome4, origin_de, pcrcoding, phoerious, rgloor, transi_222, vlenzer, waster</li> -<li><b>Greek:</b> magkopian, nplatis, tassos.b, xinomilo</li> -<li><b>Hungarian:</b> bubu, meskobalazs, urbalazs</li> -<li><b>Indonesian:</b> zk</li> -<li><b>Italian:</b> amaxis, bovirus, duncanmid, FranzMari, lucaim, Mte90, Peo, TheZ3ro, tosky, VosaxAlo</li> -<li><b>Japanese:</b> masoo, metalic_cat, p2635, Shinichirou_Yamada, vargas.peniel, vmemjp, yukinakato</li> -<li><b>Korean:</b> cancantun, peremen</li> -<li><b>Lithuanian:</b> Moo</li> -<li><b>Polish:</b> keypress, konradmb, mrerexx, psobczak</li> -<li><b>Portuguese (Brazil): </b> danielbibit, fabiom, flaviobn, vitor895, weslly</li> -<li><b>Portuguese (Portugal): </b> American_Jesus, hds, mihai.ile, VictorR2007, smarquespt</li> -<li><b>Russian:</b> _nomoretears_, agag11507, anm, denoos, KekcuHa, Mogost, NcNZllQnHVU, netforhack, NetWormKido, RKuchma, VictorR2007, vsvyatski, wkill95</li> -<li><b>Spanish:</b> antifaz, EdwardNavarro, eliluminado, gonrial, jojobrambs, LeoBeltran, piegope, pquin, puchrojo, vargas.peniel, vsvyatski, Zranz</li> -<li><b>Swedish:</b> Anders_Bergqvist, LIINdd, henziger, jpyllman, peron</li> -<li><b>Thai:</b> arthit</li> -<li><b>Turkish:</b> etc, N3pp</li> -<li><b>Ukrainian:</b> brisk022, netforhack, zoresvit</li> -</ul> + <li><strong>Basque</strong>: azken_tximinoa, Hey_neken</li> + <li><strong>Catalan</strong>: capitantrueno, dsoms, mcus, raulua, ZJaume</li> + <li><strong>Chinese (China)</strong>: Biggulu, Brandon_c, hoilc, ligyxy, vc5, Small_Ku</li> + <li><strong>Chinese (Taiwan)</strong>: BestSteve, MiauLightouch, Small_Ku, yan12125, ymhuang0808</li> + <li><strong>Czech</strong>: DanielMilde, JosefVitu, pavelb, tpavelek</li> + <li><strong>Danish</strong>: nlkl</li> + <li><strong>Dutch</strong>: apie, bartlibert, evanoosten, fvw, KnooL, srgvg, Vistaus, wanderingidea</li> + <li><strong>Finnish</strong>: artnay, Jarppi, MawKKe</li> + <li><strong>French</strong>: A1RO, aghilas.messara, bisaloo, frgnca, ggtr1138, gilbsgilbs, gtalbot, Gui13, iannick, jlutran, kyodev, logut, MartialBis, narzb, pBouillon, plunkets, Raphi111, Scrat15, tl_pierre, wilfriedroset</li> + <li><strong>German</strong>: antsas, BasicBaer, Calyrx, codejunky, DavidHamburg, eth0, for1real, jensrutschmann, joe776, kflesch, MarcEdinger, marcbone, mcliquid, mfernau77, montilo, nursoda, omnisome4, origin_de, pcrcoding, phoerious, rgloor, transi_222, vlenzer, waster</li> + <li><strong>Greek</strong>: magkopian, nplatis, tassos.b, xinomilo</li> + <li><strong>Hungarian</strong>: bubu, meskobalazs, urbalazs</li> + <li><strong>Indonesian</strong>: zk</li> + <li><strong>Italian</strong>: amaxis, bovirus, duncanmid, FranzMari, lucaim, Mte90, Peo, TheZ3ro, tosky, VosaxAlo</li> + <li><strong>Japanese</strong>: masoo, metalic_cat, p2635, Shinichirou_Yamada, vargas.peniel, vmemjp, yukinakato</li> + <li><strong>Korean</strong>: cancantun, peremen</li> + <li><strong>Lithuanian</strong>: Moo</li> + <li><strong>Polish</strong>: keypress, konradmb, mrerexx, psobczak</li> + <li><strong>Portuguese (Brazil)</strong>: danielbibit, fabiom, flaviobn, vitor895, weslly</li> +</ul> + - Qt::RichText + Qt::AutoText + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop true + + 5 + Qt::TextBrowserInteraction @@ -303,7 +333,7 @@ - + <a href="https://github.com/keepassxreboot/keepassxc/graphs/contributors">See Contributions on GitHub</a> @@ -317,7 +347,7 @@ - + Debug Info diff --git a/src/gui/DatabaseTabWidget.cpp b/src/gui/DatabaseTabWidget.cpp index b3963f7b1..a171a938d 100644 --- a/src/gui/DatabaseTabWidget.cpp +++ b/src/gui/DatabaseTabWidget.cpp @@ -198,11 +198,14 @@ void DatabaseTabWidget::importCsv() void DatabaseTabWidget::mergeDatabase() { - QString filter = QString("%1 (*.kdbx);;%2 (*)").arg(tr("KeePass 2 Database"), tr("All files")); - const QString fileName = fileDialog()->getOpenFileName(this, tr("Merge database"), QString(), - filter); - if (!fileName.isEmpty()) { - mergeDatabase(fileName); + auto dbWidget = currentDatabaseWidget(); + if (dbWidget && dbWidget->currentMode() != DatabaseWidget::LockedMode) { + QString filter = QString("%1 (*.kdbx);;%2 (*)").arg(tr("KeePass 2 Database"), tr("All files")); + const QString fileName = fileDialog()->getOpenFileName(this, tr("Merge database"), QString(), + filter); + if (!fileName.isEmpty()) { + mergeDatabase(fileName); + } } } diff --git a/src/gui/DatabaseWidget.cpp b/src/gui/DatabaseWidget.cpp index 0573a0189..69c0e7c81 100644 --- a/src/gui/DatabaseWidget.cpp +++ b/src/gui/DatabaseWidget.cpp @@ -633,25 +633,22 @@ void DatabaseWidget::openUrl() void DatabaseWidget::openUrlForEntry(Entry* entry) { - QString urlString = entry->resolveMultiplePlaceholders(entry->url()); - if (urlString.isEmpty()) { - return; - } - - if (urlString.startsWith("cmd://")) { + QString cmdString = entry->resolveMultiplePlaceholders(entry->url()); + if (cmdString.startsWith("cmd://")) { // check if decision to execute command was stored if (entry->attributes()->hasKey(EntryAttributes::RememberCmdExecAttr)) { if (entry->attributes()->value(EntryAttributes::RememberCmdExecAttr) == "1") { - QProcess::startDetached(urlString.mid(6)); + QProcess::startDetached(cmdString.mid(6)); } return; } // otherwise ask user - if (urlString.length() > 6) { - QString cmdTruncated = urlString.mid(6); - if (cmdTruncated.length() > 400) + if (cmdString.length() > 6) { + QString cmdTruncated = cmdString.mid(6); + if (cmdTruncated.length() > 400) { cmdTruncated = cmdTruncated.left(400) + " […]"; + } QMessageBox msgbox(QMessageBox::Icon::Question, tr("Execute command?"), tr("Do you really want to execute the following command?

    %1
    ") @@ -672,7 +669,7 @@ void DatabaseWidget::openUrlForEntry(Entry* entry) int result = msgbox.exec(); if (result == QMessageBox::Yes) { - QProcess::startDetached(urlString.mid(6)); + QProcess::startDetached(cmdString.mid(6)); } if (remember) { @@ -680,10 +677,11 @@ void DatabaseWidget::openUrlForEntry(Entry* entry) result == QMessageBox::Yes ? "1" : "0"); } } - } - else { - QUrl url = QUrl::fromUserInput(urlString); - QDesktopServices::openUrl(url); + } else { + QString urlString = entry->webUrl(); + if (!urlString.isEmpty()) { + QDesktopServices::openUrl(urlString); + } } } diff --git a/src/gui/DetailsWidget.cpp b/src/gui/DetailsWidget.cpp index dcabf964f..93b4b9f6e 100644 --- a/src/gui/DetailsWidget.cpp +++ b/src/gui/DetailsWidget.cpp @@ -174,17 +174,15 @@ void DetailsWidget::updateEntryGeneralTab() m_ui->entryPasswordLabel->setToolTip({}); } + m_ui->entryUrlLabel->setRawText(m_currentEntry->displayUrl()); const QString url = m_currentEntry->webUrl(); if (!url.isEmpty()) { // URL is well formed and can be opened in a browser - // create a new display url that masks password placeholders - // the actual link will use the password - m_ui->entryUrlLabel->setRawText(m_currentEntry->displayUrl()); m_ui->entryUrlLabel->setUrl(url); + m_ui->entryUrlLabel->setCursor(Qt::PointingHandCursor); } else { - // Fallback to the raw url string - m_ui->entryUrlLabel->setRawText(m_currentEntry->resolveMultiplePlaceholders(m_currentEntry->url())); m_ui->entryUrlLabel->setUrl({}); + m_ui->entryUrlLabel->setCursor(Qt::ArrowCursor); } const TimeInfo entryTime = m_currentEntry->timeInfo(); diff --git a/src/gui/DetailsWidget.ui b/src/gui/DetailsWidget.ui index 53787d713..38906150e 100644 --- a/src/gui/DetailsWidget.ui +++ b/src/gui/DetailsWidget.ui @@ -203,6 +203,9 @@ + + Qt::LinksAccessibleByKeyboard|Qt::LinksAccessibleByMouse +
    diff --git a/src/gui/EditWidget.cpp b/src/gui/EditWidget.cpp index 65c6306e1..7950fe987 100644 --- a/src/gui/EditWidget.cpp +++ b/src/gui/EditWidget.cpp @@ -97,18 +97,14 @@ QLabel* EditWidget::headlineLabel() return m_ui->headerLabel; } -void EditWidget::setReadOnly(bool readOnly) +void EditWidget::setReadOnly(bool readOnly, bool applyEnabled) { m_readOnly = readOnly; if (readOnly) { m_ui->buttonBox->setStandardButtons(QDialogButtonBox::Close); - } - else { - m_ui->buttonBox->setStandardButtons(QDialogButtonBox::Ok | QDialogButtonBox::Cancel | QDialogButtonBox::Apply); - // Find and connect the apply button - QPushButton* applyButton = m_ui->buttonBox->button(QDialogButtonBox::Apply); - connect(applyButton, SIGNAL(clicked()), SIGNAL(apply())); + } else { + setupButtons(applyEnabled); } } @@ -117,6 +113,19 @@ bool EditWidget::readOnly() const return m_readOnly; } +void EditWidget::setupButtons(bool applyEnabled) +{ + if (applyEnabled) { + m_ui->buttonBox->setStandardButtons(QDialogButtonBox::Ok | QDialogButtonBox::Cancel | QDialogButtonBox::Apply); + // Find and connect the apply button + QPushButton* applyButton = m_ui->buttonBox->button(QDialogButtonBox::Apply); + connect(applyButton, SIGNAL(clicked()), SIGNAL(apply())); + } else { + m_ui->buttonBox->setStandardButtons(QDialogButtonBox::Ok | QDialogButtonBox::Cancel); + disconnect(SIGNAL(apply())); + } +} + void EditWidget::showMessage(const QString& text, MessageWidget::MessageType type) { m_ui->messageWidget->setCloseButtonVisible(false); diff --git a/src/gui/EditWidget.h b/src/gui/EditWidget.h index 442365b96..8b89f1f8f 100644 --- a/src/gui/EditWidget.h +++ b/src/gui/EditWidget.h @@ -45,7 +45,7 @@ public: void setCurrentPage(int index); void setHeadline(const QString& text); QLabel* headlineLabel(); - void setReadOnly(bool readOnly); + void setReadOnly(bool readOnly, bool applyEnabled = true); bool readOnly() const; signals: @@ -58,6 +58,8 @@ protected slots: void hideMessage(); private: + void setupButtons(bool applyEnabled); + const QScopedPointer m_ui; bool m_readOnly; diff --git a/src/gui/EditWidgetIcons.cpp b/src/gui/EditWidgetIcons.cpp index 837d6ef5c..8242c4399 100644 --- a/src/gui/EditWidgetIcons.cpp +++ b/src/gui/EditWidgetIcons.cpp @@ -45,16 +45,17 @@ UrlFetchProgressDialog::UrlFetchProgressDialog(const QUrl &url, QWidget *parent) setWindowTitle(tr("Download Progress")); setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint); setLabelText(tr("Downloading %1.").arg(url.toDisplayString())); - setMinimum(0); - setValue(0); - setMinimumDuration(0); + setMinimumDuration(2000); setMinimumSize(QSize(400, 75)); } void UrlFetchProgressDialog::networkReplyProgress(qint64 bytesRead, qint64 totalBytes) { - setMaximum(totalBytes); - setValue(bytesRead); + if (totalBytes > 0) { + setValue(static_cast(bytesRead / totalBytes)); + } else { + setValue(0); + } } EditWidgetIcons::EditWidgetIcons(QWidget* parent) @@ -280,7 +281,9 @@ void EditWidgetIcons::fetchFinished() void EditWidgetIcons::fetchCanceled() { #ifdef WITH_XC_NETWORKING - m_reply->abort(); + if (m_reply) { + m_reply->abort(); + } #endif } diff --git a/src/gui/MainWindow.cpp b/src/gui/MainWindow.cpp index 2e87b4d8c..f6cc2e4bb 100644 --- a/src/gui/MainWindow.cpp +++ b/src/gui/MainWindow.cpp @@ -23,6 +23,7 @@ #include #include #include +#include #include "config-keepassx.h" @@ -389,7 +390,7 @@ MainWindow::MainWindow() m_actionMultiplexer.connect(m_ui->actionGroupEmptyRecycleBin, SIGNAL(triggered()), SLOT(emptyRecycleBin())); - connect(m_ui->actionSettings, SIGNAL(triggered()), SLOT(switchToSettings())); + connect(m_ui->actionSettings, SIGNAL(toggled(bool)), SLOT(switchToSettings(bool))); connect(m_ui->actionPasswordGenerator, SIGNAL(toggled(bool)), SLOT(switchToPasswordGen(bool))); connect(m_ui->passwordGeneratorWidget, SIGNAL(dialogTerminated()), SLOT(closePasswordGen())); @@ -400,6 +401,8 @@ MainWindow::MainWindow() connect(m_ui->welcomeWidget, SIGNAL(importCsv()), SLOT(switchToImportCsv())); connect(m_ui->actionAbout, SIGNAL(triggered()), SLOT(showAboutDialog())); + connect(m_ui->actionDonate, SIGNAL(triggered()), SLOT(openDonateUrl())); + connect(m_ui->actionBugReport, SIGNAL(triggered()), SLOT(openBugReportUrl())); #ifdef Q_OS_MAC setUnifiedTitleAndToolBarOnMac(true); @@ -426,11 +429,18 @@ MainWindow::MainWindow() } #endif -#ifndef KEEPASSXC_BUILD_TYPE_RELEASE +#if !defined(KEEPASSXC_BUILD_TYPE_RELEASE) m_ui->globalMessageWidget->showMessage(tr("WARNING: You are using an unstable build of KeePassXC!\n" "There is a high risk of corruption, maintain a backup of your databases.\n" "This version is not meant for production use."), - MessageWidget::Warning, -1); + MessageWidget::Warning, -1); +#elif (QT_VERSION >= QT_VERSION_CHECK(5, 5, 0) && QT_VERSION < QT_VERSION_CHECK(5, 6, 0)) + if (!config()->get("QtErrorMessageShown", false).toBool()) { + m_ui->globalMessageWidget->showMessage(tr("WARNING: Your Qt version may cause KeePassXC to crash with an On-Screen Keyboard!\n" + "We recommend you use the AppImage available on our downloads page."), + MessageWidget::Warning, -1); + config()->set("QtErrorMessageShown", true); + } #else // Show the HTTP deprecation message if enabled above emit m_ui->globalMessageWidget->hideAnimationFinished(); @@ -647,7 +657,6 @@ void MainWindow::setMenuActionState(DatabaseWidget::Mode mode) m_ui->actionDatabaseOpen->setEnabled(inDatabaseTabWidgetOrWelcomeWidget); m_ui->menuRecentDatabases->setEnabled(inDatabaseTabWidgetOrWelcomeWidget); m_ui->menuImport->setEnabled(inDatabaseTabWidgetOrWelcomeWidget); - m_ui->actionDatabaseMerge->setEnabled(inDatabaseTabWidget); m_ui->actionRepairDatabase->setEnabled(inDatabaseTabWidgetOrWelcomeWidget); m_ui->actionLockDatabases->setEnabled(m_ui->tabWidget->hasLockableDatabases()); @@ -656,6 +665,10 @@ void MainWindow::setMenuActionState(DatabaseWidget::Mode mode) bool blocked = m_ui->actionPasswordGenerator->blockSignals(true); m_ui->actionPasswordGenerator->toggle(); m_ui->actionPasswordGenerator->blockSignals(blocked); + } else if ((currentIndex == SettingsScreen) != m_ui->actionSettings->isChecked()) { + bool blocked = m_ui->actionSettings->blockSignals(true); + m_ui->actionSettings->toggle(); + m_ui->actionSettings->blockSignals(blocked); } } @@ -704,6 +717,16 @@ void MainWindow::showAboutDialog() aboutDialog->open(); } +void MainWindow::openDonateUrl() +{ + QDesktopServices::openUrl(QUrl("https://keepassxc.org/donate")); +} + +void MainWindow::openBugReportUrl() +{ + QDesktopServices::openUrl(QUrl("https://github.com/keepassxreboot/keepassxc/issues")); +} + void MainWindow::switchToDatabases() { if (m_ui->tabWidget->currentIndex() == -1) { @@ -714,15 +737,19 @@ void MainWindow::switchToDatabases() } } -void MainWindow::switchToSettings() +void MainWindow::switchToSettings(bool enabled) { - m_ui->settingsWidget->loadSettings(); - m_ui->stackedWidget->setCurrentIndex(SettingsScreen); + if (enabled) { + m_ui->settingsWidget->loadSettings(); + m_ui->stackedWidget->setCurrentIndex(SettingsScreen); + } else { + switchToDatabases(); + } } void MainWindow::switchToPasswordGen(bool enabled) { - if (enabled == true) { + if (enabled) { m_ui->passwordGeneratorWidget->loadSettings(); m_ui->passwordGeneratorWidget->regeneratePassword(); m_ui->passwordGeneratorWidget->setStandaloneMode(true); diff --git a/src/gui/MainWindow.h b/src/gui/MainWindow.h index 20e548910..d23e9b35c 100644 --- a/src/gui/MainWindow.h +++ b/src/gui/MainWindow.h @@ -77,8 +77,10 @@ private slots: void setMenuActionState(DatabaseWidget::Mode mode = DatabaseWidget::None); void updateWindowTitle(); void showAboutDialog(); + void openDonateUrl(); + void openBugReportUrl(); void switchToDatabases(); - void switchToSettings(); + void switchToSettings(bool enabled); void switchToPasswordGen(bool enabled); void switchToNewDatabase(); void switchToOpenDatabase(); diff --git a/src/gui/MainWindow.ui b/src/gui/MainWindow.ui index 648a0e61a..e9eeb9e6b 100644 --- a/src/gui/MainWindow.ui +++ b/src/gui/MainWindow.ui @@ -175,6 +175,14 @@
    + + + 0 + 0 + 800 + 21 + + &Database @@ -213,6 +221,8 @@ &Help + + @@ -308,6 +318,8 @@ + + @@ -442,14 +454,6 @@ &Clone entry - - - false - - - &Find - - false @@ -473,6 +477,9 @@ + + true + &Settings @@ -591,6 +598,16 @@ false + + + &Donate + + + + + Report a &bug + + diff --git a/src/gui/SearchWidget.ui b/src/gui/SearchWidget.ui index 1583ebe96..98395b68a 100644 --- a/src/gui/SearchWidget.ui +++ b/src/gui/SearchWidget.ui @@ -16,7 +16,7 @@ 0 - + 3 @@ -36,7 +36,7 @@ - 40 + 30 20 diff --git a/src/gui/entry/EditEntryWidget.cpp b/src/gui/entry/EditEntryWidget.cpp index 6fd65c1a3..2e03eb3c8 100644 --- a/src/gui/entry/EditEntryWidget.cpp +++ b/src/gui/entry/EditEntryWidget.cpp @@ -597,7 +597,8 @@ void EditEntryWidget::loadEntry(Entry* entry, bool create, bool history, const Q } setForms(entry); - setReadOnly(m_history); + // Disable apply button if creating new entry (#2191) + setReadOnly(m_history, !m_create); setCurrentPage(0); setPageHidden(m_historyWidget, m_history || m_entry->historyItems().count() < 1); @@ -802,7 +803,6 @@ void EditEntryWidget::acceptEntry() { if (commitEntry()) { clear(); - hideMessage(); emit editFinished(true); } } diff --git a/src/gui/entry/EditEntryWidget.h b/src/gui/entry/EditEntryWidget.h index 9b2a919c6..06ede09cd 100644 --- a/src/gui/entry/EditEntryWidget.h +++ b/src/gui/entry/EditEntryWidget.h @@ -21,6 +21,7 @@ #include #include +#include #include "gui/EditWidget.h" #include "config-keepassx.h" diff --git a/src/gui/group/EditGroupWidget.cpp b/src/gui/group/EditGroupWidget.cpp index 9ffd31a5e..46b0ae5bc 100644 --- a/src/gui/group/EditGroupWidget.cpp +++ b/src/gui/group/EditGroupWidget.cpp @@ -61,8 +61,7 @@ void EditGroupWidget::loadGroup(Group* group, bool create, Database* database) if (create) { setHeadline(tr("Add group")); - } - else { + } else { setHeadline(tr("Edit group")); } @@ -99,6 +98,9 @@ void EditGroupWidget::loadGroup(Group* group, bool create, Database* database) setCurrentPage(0); + // Disable apply button if creating new group + setReadOnly(false, create); + m_mainUi->editName->setFocus(); } diff --git a/src/proxy/NativeMessagingHost.cpp b/src/proxy/NativeMessagingHost.cpp index a0d713d0c..83ca73d5a 100755 --- a/src/proxy/NativeMessagingHost.cpp +++ b/src/proxy/NativeMessagingHost.cpp @@ -49,6 +49,21 @@ NativeMessagingHost::~NativeMessagingHost() #endif } +void NativeMessagingHost::readNativeMessages() +{ +#ifdef Q_OS_WIN + quint32 length = 0; + while (m_running.load() && !std::cin.eof()) { + length = 0; + std::cin.read(reinterpret_cast(&length), 4); + if (!readStdIn(length)) { + QCoreApplication::quit(); + } + QThread::msleep(1); + } +#endif +} + void NativeMessagingHost::readLength() { quint32 length = 0; @@ -56,14 +71,14 @@ void NativeMessagingHost::readLength() if (!std::cin.eof() && length > 0) { readStdIn(length); } else { - QCoreApplication::quit(); + QCoreApplication::quit(); } } -void NativeMessagingHost::readStdIn(const quint32 length) +bool NativeMessagingHost::readStdIn(const quint32 length) { if (length <= 0) { - return; + return false; } QByteArray arr; @@ -73,7 +88,7 @@ void NativeMessagingHost::readStdIn(const quint32 length) int c = std::getchar(); if (c == EOF) { // message ended prematurely, ignore it and return - return; + return false; } arr.append(static_cast(c)); } @@ -82,6 +97,8 @@ void NativeMessagingHost::readStdIn(const quint32 length) m_localSocket->write(arr.constData(), arr.length()); m_localSocket->flush(); } + + return true; } void NativeMessagingHost::newLocalMessage() @@ -92,7 +109,7 @@ void NativeMessagingHost::newLocalMessage() QByteArray arr = m_localSocket->readAll(); if (!arr.isEmpty()) { - sendReply(arr); + sendReply(arr); } } diff --git a/src/proxy/NativeMessagingHost.h b/src/proxy/NativeMessagingHost.h index 41f3ed753..0ddd6b55f 100755 --- a/src/proxy/NativeMessagingHost.h +++ b/src/proxy/NativeMessagingHost.h @@ -33,11 +33,12 @@ public slots: void socketStateChanged(QLocalSocket::LocalSocketState socketState); private: + void readNativeMessages(); void readLength(); - void readStdIn(const quint32 length); + bool readStdIn(const quint32 length); private: - QLocalSocket* m_localSocket; + QLocalSocket* m_localSocket; }; #endif // NATIVEMESSAGINGHOST_H diff --git a/src/sshagent/ASN1Key.cpp b/src/sshagent/ASN1Key.cpp index c46b8fa0b..2b6cbd106 100644 --- a/src/sshagent/ASN1Key.cpp +++ b/src/sshagent/ASN1Key.cpp @@ -102,14 +102,14 @@ namespace { mpi_invm(u, q, p); - iqmp_hex.resize((bap.length() + 1) * 2); - gcry_mpi_print(GCRYMPI_FMT_HEX, reinterpret_cast(iqmp_hex.data()), iqmp_hex.length(), nullptr, u); + iqmp_hex.resize(bap.length() * 2); + gcry_mpi_print(GCRYMPI_FMT_HEX, reinterpret_cast(iqmp_hex.data()), iqmp_hex.size(), nullptr, u); gcry_mpi_release(u); gcry_mpi_release(p); gcry_mpi_release(q); - return QByteArray::fromHex(iqmp_hex); + return QByteArray::fromHex(QString(iqmp_hex).toLatin1()); } } diff --git a/src/sshagent/OpenSSHKey.cpp b/src/sshagent/OpenSSHKey.cpp index cfff5a400..4527bfb60 100644 --- a/src/sshagent/OpenSSHKey.cpp +++ b/src/sshagent/OpenSSHKey.cpp @@ -350,7 +350,7 @@ bool OpenSSHKey::openPrivateKey(const QString& passphrase) QByteArray decryptKey; decryptKey.fill(0, cipher->keySize() + cipher->blockSize()); - QByteArray phraseData = passphrase.toLatin1(); + QByteArray phraseData = passphrase.toUtf8(); if (bcrypt_pbkdf(phraseData, salt, decryptKey, rounds) < 0) { m_error = tr("Key derivation failed, key file corrupted?"); return false; diff --git a/tests/TestOpenSSHKey.cpp b/tests/TestOpenSSHKey.cpp index 3f91ab4df..ab21c1a39 100644 --- a/tests/TestOpenSSHKey.cpp +++ b/tests/TestOpenSSHKey.cpp @@ -181,6 +181,89 @@ void TestOpenSSHKey::testParseRSA() QCOMPARE(key.fingerprint(), QString("SHA256:DYdaZciYNxCejr+/8x+OKYxeTU1D5UsuIFUG4PWRFkk")); } +void TestOpenSSHKey::testParseRSACompare() +{ + const QString oldKeyString = QString( + "-----BEGIN RSA PRIVATE KEY-----\n" + "MIIEpAIBAAKCAQEAsCHtJicDPWnvHSIKbnTZaJkIB9vgE0pmLdK580JUqBuonVbB\n" + "y1QTy0ZQ7/TtqvLPgwPK88TR46OLO/QGCzo2+XxgJ85uy0xfuyUYRmSuw0drsErN\n" + "mH8vU91lSBxsGDp9LtBbgHKoR23vMWZ34IxFRc55XphrIH48ijsMaL6bXBwF/3tD\n" + "9T3lm2MpP1huyVNnIY9+GRRWCy4f9LMj/UGu/n4RtwwfpOZBBRwYkq5QkzA9lPm/\n" + "VzF3MP1rKTMkvAw+Nfb383mkmc6MRnsa6uh6iDa9aVB7naegM13UJQX/PY1Ks6pO\n" + "XDpy/MQ7iCh+HmYNq5dRmARyaNl9xIXJNhz1cQIDAQABAoIBAQCnEUc1LUQxeM5K\n" + "wANNCqE+SgoIClPdeHC7fmrLh1ttqe6ib6ybBUFRS31yXs0hnfefunVEDKlaV8K2\n" + "N52UAMAsngFHQNRvGh6kEWeZPd9Xc+N98TZbNCjcT+DGKc+Om8wqH5DrodZlCq4c\n" + "GaoT4HnE4TjWtZTH2XXrWF9I66PKFWf070R44nvyVcvaZi4pC2YmURRPuGF6K1iK\n" + "dH8zM6HHG1UGu2W6hLNn+K01IulG0Lb8eWNaNYMmtQWaxyp7I2IWkkecUs3nCuiR\n" + "byFOoomCjdh8r9yZFvwxjGUhgtkALN9GCU0Mwve+s11IB2gevruN+q9/Qejbyfdm\n" + "IlgLAeTRAoGBANRcVzW9CYeobCf+U9hKJFEOur8XO+J2mTMaELA0EjWpTJFAeIT7\n" + "KeRpCRG4/vOSklxxRF6vP1EACA4Z+5BlN+FTipHHs+bSEgqkPZiiANDH7Zot5Iqv\n" + "1q0fRyldNRZNZK7DWp08BPNVWGA/EnEuKJiURxnxBaxNXbUyMCdjxvMvAoGBANRT\n" + "utbrqS/bAa/DcHKn3V6DRqBl3TDOfvCNjiKC84a67F2uXgzLIdMktr4d1NyCZVJd\n" + "7/zVgWORLIdg1eAi6rYGoOvNV39wwga7CF+m9sBY0wAaKYCELe6L26r4aQHVCX6n\n" + "rnIgUv+4o4itmU2iP0r3wlmDC9pDRQP82vfvQPlfAoGASwhleANW/quvq2HdViq8\n" + "Mje2HBalfhrRfpDTHK8JUBSFjTzuWG42GxJRtgVbb8x2ElujAKGDCaetMO5VSGu7\n" + "Fs5hw6iAFCpdXY0yhl+XUi2R8kwM2EPQ4lKO3jqkq0ClNmqn9a5jQWcCVt9yMLNS\n" + "fLbHeI8EpiCf34ngIcrLXNkCgYEAzlcEZuKkC46xB+dNew8pMTUwSKZVm53BfPKD\n" + "44QRN6imFbBjU9mAaJnwQbfp6dWKs834cGPolyM4++MeVfB42iZ88ksesgmZdUMD\n" + "szkl6O0pOJs0I+HQZVdjRbadDZvD22MHQ3+oST1dJ3FVXz3Cdo9qPuT8esMO6f4r\n" + "qfDH2s8CgYAXC/lWWHQ//PGP0pH4oiEXisx1K0X1u0xMGgrChxBRGRiKZUwNMIvJ\n" + "TqUu7IKizK19cLHF/NBvxHYHFw+m7puNjn6T1RtRCUjRZT7Dx1VHfVosL9ih5DA8\n" + "tpbZA5KGKcvHtB5DDgT0MHwzBZnb4Q//Rhovzn+HXZPsJTTgHHy3NQ==\n" + "-----END RSA PRIVATE KEY-----\n" + ); + + const QString newKeyString = QString( + "-----BEGIN OPENSSH PRIVATE KEY-----\n" + "b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAABFwAAAAdzc2gtcn\n" + "NhAAAAAwEAAQAAAQEAsCHtJicDPWnvHSIKbnTZaJkIB9vgE0pmLdK580JUqBuonVbBy1QT\n" + "y0ZQ7/TtqvLPgwPK88TR46OLO/QGCzo2+XxgJ85uy0xfuyUYRmSuw0drsErNmH8vU91lSB\n" + "xsGDp9LtBbgHKoR23vMWZ34IxFRc55XphrIH48ijsMaL6bXBwF/3tD9T3lm2MpP1huyVNn\n" + "IY9+GRRWCy4f9LMj/UGu/n4RtwwfpOZBBRwYkq5QkzA9lPm/VzF3MP1rKTMkvAw+Nfb383\n" + "mkmc6MRnsa6uh6iDa9aVB7naegM13UJQX/PY1Ks6pOXDpy/MQ7iCh+HmYNq5dRmARyaNl9\n" + "xIXJNhz1cQAAA8DLsKINy7CiDQAAAAdzc2gtcnNhAAABAQCwIe0mJwM9ae8dIgpudNlomQ\n" + "gH2+ATSmYt0rnzQlSoG6idVsHLVBPLRlDv9O2q8s+DA8rzxNHjo4s79AYLOjb5fGAnzm7L\n" + "TF+7JRhGZK7DR2uwSs2Yfy9T3WVIHGwYOn0u0FuAcqhHbe8xZnfgjEVFznlemGsgfjyKOw\n" + "xovptcHAX/e0P1PeWbYyk/WG7JU2chj34ZFFYLLh/0syP9Qa7+fhG3DB+k5kEFHBiSrlCT\n" + "MD2U+b9XMXcw/WspMyS8DD419vfzeaSZzoxGexrq6HqINr1pUHudp6AzXdQlBf89jUqzqk\n" + "5cOnL8xDuIKH4eZg2rl1GYBHJo2X3Ehck2HPVxAAAAAwEAAQAAAQEApxFHNS1EMXjOSsAD\n" + "TQqhPkoKCApT3Xhwu35qy4dbbanuom+smwVBUUt9cl7NIZ33n7p1RAypWlfCtjedlADALJ\n" + "4BR0DUbxoepBFnmT3fV3PjffE2WzQo3E/gxinPjpvMKh+Q66HWZQquHBmqE+B5xOE41rWU\n" + "x9l161hfSOujyhVn9O9EeOJ78lXL2mYuKQtmJlEUT7hheitYinR/MzOhxxtVBrtluoSzZ/\n" + "itNSLpRtC2/HljWjWDJrUFmscqeyNiFpJHnFLN5wrokW8hTqKJgo3YfK/cmRb8MYxlIYLZ\n" + "ACzfRglNDML3vrNdSAdoHr67jfqvf0Ho28n3ZiJYCwHk0QAAAIAXC/lWWHQ//PGP0pH4oi\n" + "EXisx1K0X1u0xMGgrChxBRGRiKZUwNMIvJTqUu7IKizK19cLHF/NBvxHYHFw+m7puNjn6T\n" + "1RtRCUjRZT7Dx1VHfVosL9ih5DA8tpbZA5KGKcvHtB5DDgT0MHwzBZnb4Q//Rhovzn+HXZ\n" + "PsJTTgHHy3NQAAAIEA1FxXNb0Jh6hsJ/5T2EokUQ66vxc74naZMxoQsDQSNalMkUB4hPsp\n" + "5GkJEbj+85KSXHFEXq8/UQAIDhn7kGU34VOKkcez5tISCqQ9mKIA0Mftmi3kiq/WrR9HKV\n" + "01Fk1krsNanTwE81VYYD8ScS4omJRHGfEFrE1dtTIwJ2PG8y8AAACBANRTutbrqS/bAa/D\n" + "cHKn3V6DRqBl3TDOfvCNjiKC84a67F2uXgzLIdMktr4d1NyCZVJd7/zVgWORLIdg1eAi6r\n" + "YGoOvNV39wwga7CF+m9sBY0wAaKYCELe6L26r4aQHVCX6nrnIgUv+4o4itmU2iP0r3wlmD\n" + "C9pDRQP82vfvQPlfAAAABmlkX3JzYQECAwQ=\n" + "-----END OPENSSH PRIVATE KEY-----\n" + ); + + const QByteArray oldKeyData = oldKeyString.toLatin1(); + const QByteArray newKeyData = newKeyString.toLatin1(); + + OpenSSHKey newKey, oldKey; + QByteArray oldPrivateKey, newPrivateKey; + BinaryStream oldPrivateStream(&oldPrivateKey), newPrivateStream(&newPrivateKey); + + QVERIFY(oldKey.parse(oldKeyData)); + QVERIFY(newKey.parse(newKeyData)); + + // comment is not part of the old format and writePrivate() includes it + oldKey.setComment("id_rsa"); + + QVERIFY(oldKey.writePrivate(oldPrivateStream)); + QVERIFY(newKey.writePrivate(newPrivateStream)); + + QCOMPARE(oldKey.type(), newKey.type()); + QCOMPARE(oldKey.fingerprint(), newKey.fingerprint()); + QCOMPARE(oldPrivateKey, newPrivateKey); +} + void TestOpenSSHKey::testDecryptOpenSSHAES256CBC() { const QString keyString = QString( @@ -344,3 +427,29 @@ void TestOpenSSHKey::testDecryptRSAAES256CTR() QCOMPARE(key.comment(), QString("")); QCOMPARE(key.fingerprint(), QString("SHA256:1Hsebt2WWnmc72FERsUOgvaajIGHkrMONxXylcmk87U")); } + +void TestOpenSSHKey::testDecryptUTF8() +{ + const QString keyString = QString( + "-----BEGIN OPENSSH PRIVATE KEY-----\n" + "b3BlbnNzaC1rZXktdjEAAAAACmFlczI1Ni1jdHIAAAAGYmNyeXB0AAAAGAAAABDtSl4OvT\n" + "H/wHay2dvjOnpIAAAAEAAAAAEAAAAzAAAAC3NzaC1lZDI1NTE5AAAAIIhrBrn6rb+d3GwF\n" + "ifpJ6gYut95lXvwypiQmu9ZpA8H9AAAAsD85Gpn2mbVEWq3ygx11wBnN5mUQXnMuP48rLv\n" + "0qwm12IihOkrR925ledwN2Sa5mkkL0XjDz6SsKfIFhFa84hUHQdw5zPR8yVGRWLzkNDmo7\n" + "WXNpnoE4ebsX2j0TsBNjP80RUcJdjSXidkt3+aZjaCfquO8cBQn4GJJSDSPwFJYlJeSD/h\n" + "vpb72MEQchOD3NNMORYTJ5sOJ73RayhhmwjTVlrG+zYAw6fXW0YXX3+5LE\n" + "-----END OPENSSH PRIVATE KEY-----\n" + ); + + const QByteArray keyData = keyString.toLatin1(); + + OpenSSHKey key; + QVERIFY(key.parse(keyData)); + QVERIFY(key.encrypted()); + QCOMPARE(key.cipherName(), QString("aes256-ctr")); + QVERIFY(!key.openPrivateKey("incorrectpassphrase")); + QVERIFY(key.openPrivateKey("äåéëþüúíóö")); + QCOMPARE(key.fingerprint(), QString("SHA256:EfUXwvH4rOoys+AlbznCqjMwzIVW8KuhoWu9uT03FYA")); + QCOMPARE(key.type(), QString("ssh-ed25519")); + QCOMPARE(key.comment(), QString("opensshkey-test-utf8@keepassxc")); +} diff --git a/tests/TestOpenSSHKey.h b/tests/TestOpenSSHKey.h index 2d791dee8..214de8942 100644 --- a/tests/TestOpenSSHKey.h +++ b/tests/TestOpenSSHKey.h @@ -31,11 +31,13 @@ private slots: void testParse(); void testParseDSA(); void testParseRSA(); + void testParseRSACompare(); void testDecryptRSAAES128CBC(); void testDecryptOpenSSHAES256CBC(); void testDecryptRSAAES256CBC(); void testDecryptOpenSSHAES256CTR(); void testDecryptRSAAES256CTR(); + void testDecryptUTF8(); }; #endif // TESTOPENSSHKEY_H diff --git a/tests/gui/TestGui.cpp b/tests/gui/TestGui.cpp index 54203c284..d0b530028 100644 --- a/tests/gui/TestGui.cpp +++ b/tests/gui/TestGui.cpp @@ -477,6 +477,9 @@ void TestGui::testAddEntry() QTest::keyClicks(passwordRepeatEdit, "something 2"); QTest::mouseClick(editEntryWidgetButtonBox->button(QDialogButtonBox::Ok), Qt::LeftButton); +/* All apply tests disabled due to data loss workaround + * that disables apply button on new entry creation + * // Add entry "something 3" using the apply button then click ok QTest::mouseClick(entryNewWidget, Qt::LeftButton); QTest::keyClicks(titleEdit, "something 3"); @@ -488,6 +491,7 @@ void TestGui::testAddEntry() QTest::keyClicks(titleEdit, "something 4"); QTest::mouseClick(editEntryWidgetButtonBox->button(QDialogButtonBox::Apply), Qt::LeftButton); QTest::mouseClick(editEntryWidgetButtonBox->button(QDialogButtonBox::Cancel), Qt::LeftButton); +*/ // Add entry "something 5" but click cancel button (does NOT add entry) QTest::mouseClick(entryNewWidget, Qt::LeftButton); @@ -496,8 +500,8 @@ void TestGui::testAddEntry() QApplication::processEvents(); - // Confirm that 5 entries now exist - QTRY_COMPARE(entryView->model()->rowCount(), 5); + // Confirm entry count + QTRY_COMPARE(entryView->model()->rowCount(), 3); } void TestGui::testPasswordEntryEntropy()