From c33fbab25c82b6a18773b80e8b355c987066ae5a Mon Sep 17 00:00:00 2001 From: Vasil Dimov Date: Mon, 4 Jan 2021 18:37:52 +0100 Subject: [PATCH 001/102] net: allow CSubNet of non-IP networks Allow creation of valid `CSubNet` objects of non-IP networks and only match the single address they were created from (like /32 for IPv4 or /128 for IPv6). This fixes a deficiency in `CConnman::DisconnectNode(const CNetAddr& addr)` and in `BanMan` which assume that creating a subnet from any address using the `CSubNet(CNetAddr)` constructor would later match that address only. Before this change a non-IP subnet would be invalid and would not match any address. Github-Pull: #20852 Rebased-From: 94d335da7f8232bc653c9b08b0a33b517b4c98ad --- src/netaddress.cpp | 81 +++++++++++++++++++++++++++++++------- src/netaddress.h | 24 ++++++++++- src/test/netbase_tests.cpp | 21 ++++++++-- 3 files changed, 107 insertions(+), 19 deletions(-) diff --git a/src/netaddress.cpp b/src/netaddress.cpp index 35e9161f5..e0d4638dd 100644 --- a/src/netaddress.cpp +++ b/src/netaddress.cpp @@ -1063,15 +1063,24 @@ CSubNet::CSubNet(const CNetAddr& addr, const CNetAddr& mask) : CSubNet() CSubNet::CSubNet(const CNetAddr& addr) : CSubNet() { - valid = addr.IsIPv4() || addr.IsIPv6(); - if (!valid) { + switch (addr.m_net) { + case NET_IPV4: + case NET_IPV6: + valid = true; + assert(addr.m_addr.size() <= sizeof(netmask)); + memset(netmask, 0xFF, addr.m_addr.size()); + break; + case NET_ONION: + case NET_I2P: + case NET_CJDNS: + valid = true; + break; + case NET_INTERNAL: + case NET_UNROUTABLE: + case NET_MAX: return; } - assert(addr.m_addr.size() <= sizeof(netmask)); - - memset(netmask, 0xFF, addr.m_addr.size()); - network = addr; } @@ -1083,6 +1092,21 @@ bool CSubNet::Match(const CNetAddr &addr) const { if (!valid || !addr.IsValid() || network.m_net != addr.m_net) return false; + + switch (network.m_net) { + case NET_IPV4: + case NET_IPV6: + break; + case NET_ONION: + case NET_I2P: + case NET_CJDNS: + case NET_INTERNAL: + return addr == network; + case NET_UNROUTABLE: + case NET_MAX: + return false; + } + assert(network.m_addr.size() == addr.m_addr.size()); for (size_t x = 0; x < addr.m_addr.size(); ++x) { if ((addr.m_addr[x] & netmask[x]) != network.m_addr[x]) { @@ -1094,18 +1118,35 @@ bool CSubNet::Match(const CNetAddr &addr) const std::string CSubNet::ToString() const { - assert(network.m_addr.size() <= sizeof(netmask)); + std::string suffix; - uint8_t cidr = 0; + switch (network.m_net) { + case NET_IPV4: + case NET_IPV6: { + assert(network.m_addr.size() <= sizeof(netmask)); - for (size_t i = 0; i < network.m_addr.size(); ++i) { - if (netmask[i] == 0x00) { - break; + uint8_t cidr = 0; + + for (size_t i = 0; i < network.m_addr.size(); ++i) { + if (netmask[i] == 0x00) { + break; + } + cidr += NetmaskBits(netmask[i]); } - cidr += NetmaskBits(netmask[i]); + + suffix = strprintf("/%u", cidr); + break; + } + case NET_ONION: + case NET_I2P: + case NET_CJDNS: + case NET_INTERNAL: + case NET_UNROUTABLE: + case NET_MAX: + break; } - return network.ToString() + strprintf("/%u", cidr); + return network.ToString() + suffix; } bool CSubNet::IsValid() const @@ -1115,7 +1156,19 @@ bool CSubNet::IsValid() const bool CSubNet::SanityCheck() const { - if (!(network.IsIPv4() || network.IsIPv6())) return false; + switch (network.m_net) { + case NET_IPV4: + case NET_IPV6: + break; + case NET_ONION: + case NET_I2P: + case NET_CJDNS: + return true; + case NET_INTERNAL: + case NET_UNROUTABLE: + case NET_MAX: + return false; + } for (size_t x = 0; x < network.m_addr.size(); ++x) { if (network.m_addr[x] & ~netmask[x]) return false; diff --git a/src/netaddress.h b/src/netaddress.h index 29b2eaafe..b9beb1e35 100644 --- a/src/netaddress.h +++ b/src/netaddress.h @@ -462,11 +462,33 @@ class CSubNet bool SanityCheck() const; public: + /** + * Construct an invalid subnet (empty, `Match()` always returns false). + */ CSubNet(); + + /** + * Construct from a given network start and number of bits (CIDR mask). + * @param[in] addr Network start. Must be IPv4 or IPv6, otherwise an invalid subnet is + * created. + * @param[in] mask CIDR mask, must be in [0, 32] for IPv4 addresses and in [0, 128] for + * IPv6 addresses. Otherwise an invalid subnet is created. + */ CSubNet(const CNetAddr& addr, uint8_t mask); + + /** + * Construct from a given network start and mask. + * @param[in] addr Network start. Must be IPv4 or IPv6, otherwise an invalid subnet is + * created. + * @param[in] mask Network mask, must be of the same type as `addr` and not contain 0-bits + * followed by 1-bits. Otherwise an invalid subnet is created. + */ CSubNet(const CNetAddr& addr, const CNetAddr& mask); - //constructor for single ip subnet (/32 or /128) + /** + * Construct a single-host subnet. + * @param[in] addr The sole address to be contained in the subnet, can also be non-IPv[46]. + */ explicit CSubNet(const CNetAddr& addr); bool Match(const CNetAddr &addr) const; diff --git a/src/test/netbase_tests.cpp b/src/test/netbase_tests.cpp index f5d26fafe..36f18fcf6 100644 --- a/src/test/netbase_tests.cpp +++ b/src/test/netbase_tests.cpp @@ -224,8 +224,22 @@ BOOST_AUTO_TEST_CASE(subnet_test) // IPv4 address with IPv6 netmask or the other way around. BOOST_CHECK(!CSubNet(ResolveIP("1.1.1.1"), ResolveIP("ffff::")).IsValid()); BOOST_CHECK(!CSubNet(ResolveIP("::1"), ResolveIP("255.0.0.0")).IsValid()); - // Can't subnet TOR (or any other non-IPv4 and non-IPv6 network). - BOOST_CHECK(!CSubNet(ResolveIP("5wyqrzbvrdsumnok.onion"), ResolveIP("255.0.0.0")).IsValid()); + + // Create Non-IP subnets. + + const CNetAddr tor_addr{ + ResolveIP("pg6mmjiyjmcrsslvykfwnntlaru7p5svn6y2ymmju6nubxndf4pscryd.onion")}; + + subnet = CSubNet(tor_addr); + BOOST_CHECK(subnet.IsValid()); + BOOST_CHECK_EQUAL(subnet.ToString(), tor_addr.ToString()); + BOOST_CHECK(subnet.Match(tor_addr)); + BOOST_CHECK( + !subnet.Match(ResolveIP("kpgvmscirrdqpekbqjsvw5teanhatztpp2gl6eee4zkowvwfxwenqaid.onion"))); + BOOST_CHECK(!subnet.Match(ResolveIP("1.2.3.4"))); + + BOOST_CHECK(!CSubNet(tor_addr, 200).IsValid()); + BOOST_CHECK(!CSubNet(tor_addr, ResolveIP("255.0.0.0")).IsValid()); subnet = ResolveSubNet("1.2.3.4/255.255.255.255"); BOOST_CHECK_EQUAL(subnet.ToString(), "1.2.3.4/32"); @@ -440,8 +454,7 @@ BOOST_AUTO_TEST_CASE(netbase_dont_resolve_strings_with_embedded_nul_characters) BOOST_CHECK(!LookupSubNet(std::string("1.2.3.0/24\0", 11), ret)); BOOST_CHECK(!LookupSubNet(std::string("1.2.3.0/24\0example.com", 22), ret)); BOOST_CHECK(!LookupSubNet(std::string("1.2.3.0/24\0example.com\0", 23), ret)); - // We only do subnetting for IPv4 and IPv6 - BOOST_CHECK(!LookupSubNet(std::string("5wyqrzbvrdsumnok.onion", 22), ret)); + BOOST_CHECK(LookupSubNet(std::string("5wyqrzbvrdsumnok.onion", 22), ret)); BOOST_CHECK(!LookupSubNet(std::string("5wyqrzbvrdsumnok.onion\0", 23), ret)); BOOST_CHECK(!LookupSubNet(std::string("5wyqrzbvrdsumnok.onion\0example.com", 34), ret)); BOOST_CHECK(!LookupSubNet(std::string("5wyqrzbvrdsumnok.onion\0example.com\0", 35), ret)); From bdce029191ab094a4a325b143324487f1c62ba7c Mon Sep 17 00:00:00 2001 From: Vasil Dimov Date: Sun, 10 Jan 2021 15:51:25 +0100 Subject: [PATCH 002/102] test: add test for banning of non-IP addresses Co-authored-by: Jon Atack Github-Pull: #20852 Rebased-From: 39b43298d9c54f9c18bef36f3d5934f57aefd088 --- test/functional/rpc_setban.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/test/functional/rpc_setban.py b/test/functional/rpc_setban.py index bc4844908..551eb4d72 100755 --- a/test/functional/rpc_setban.py +++ b/test/functional/rpc_setban.py @@ -15,6 +15,9 @@ class SetBanTests(BitcoinTestFramework): self.setup_clean_chain = True self.extra_args = [[],[]] + def is_banned(self, node, addr): + return any(e['address'] == addr for e in node.listbanned()) + def run_test(self): # Node 0 connects to Node 1, check that the noban permission is not granted self.connect_nodes(0, 1) @@ -42,5 +45,18 @@ class SetBanTests(BitcoinTestFramework): peerinfo = self.nodes[1].getpeerinfo()[0] assert(not 'noban' in peerinfo['permissions']) + self.log.info("Test that a non-IP address can be banned/unbanned") + node = self.nodes[1] + tor_addr = "pg6mmjiyjmcrsslvykfwnntlaru7p5svn6y2ymmju6nubxndf4pscryd.onion" + ip_addr = "1.2.3.4" + assert(not self.is_banned(node, tor_addr)) + assert(not self.is_banned(node, ip_addr)) + node.setban(tor_addr, "add") + assert(self.is_banned(node, tor_addr)) + assert(not self.is_banned(node, ip_addr)) + node.setban(tor_addr, "remove") + assert(not self.is_banned(self.nodes[1], tor_addr)) + assert(not self.is_banned(node, ip_addr)) + if __name__ == '__main__': SetBanTests().main() From 7bf3ed495b96f0959d5c45c6e1936d8628dec730 Mon Sep 17 00:00:00 2001 From: Luke Dashjr Date: Wed, 9 Dec 2020 22:50:31 +0000 Subject: [PATCH 003/102] Bugfix: GUI: Restore SendConfirmationDialog button default to "Yes" The SendConfirmationDialog is used for bumping the fee, where "Send" doesn't really make sense Github-Pull: #bitcoin-core/gui#148 Rebased-From: 8775691383ff394b998232ac8e63fac3a214d18b --- src/qt/sendcoinsdialog.cpp | 3 +++ src/qt/sendcoinsdialog.h | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/qt/sendcoinsdialog.cpp b/src/qt/sendcoinsdialog.cpp index 50a1ea693..63b06b621 100644 --- a/src/qt/sendcoinsdialog.cpp +++ b/src/qt/sendcoinsdialog.cpp @@ -966,6 +966,9 @@ SendConfirmationDialog::SendConfirmationDialog(const QString& title, const QStri setStandardButtons(QMessageBox::Yes | QMessageBox::Cancel); setDefaultButton(QMessageBox::Cancel); yesButton = button(QMessageBox::Yes); + if (confirmButtonText.isEmpty()) { + confirmButtonText = yesButton->text(); + } updateYesButton(); connect(&countDownTimer, &QTimer::timeout, this, &SendConfirmationDialog::countDown); } diff --git a/src/qt/sendcoinsdialog.h b/src/qt/sendcoinsdialog.h index 8519f1f65..8863d2e5c 100644 --- a/src/qt/sendcoinsdialog.h +++ b/src/qt/sendcoinsdialog.h @@ -115,7 +115,7 @@ class SendConfirmationDialog : public QMessageBox Q_OBJECT public: - SendConfirmationDialog(const QString& title, const QString& text, const QString& informative_text = "", const QString& detailed_text = "", int secDelay = SEND_CONFIRM_DELAY, const QString& confirmText = "Send", QWidget* parent = nullptr); + SendConfirmationDialog(const QString& title, const QString& text, const QString& informative_text = "", const QString& detailed_text = "", int secDelay = SEND_CONFIRM_DELAY, const QString& confirmText = "", QWidget* parent = nullptr); int exec() override; private Q_SLOTS: From 0dba346a568882434098dd08566978e23eb4a516 Mon Sep 17 00:00:00 2001 From: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com> Date: Fri, 1 Jan 2021 12:36:00 +0200 Subject: [PATCH 004/102] qt: Use layout manager for Create Wallet dialog Github-Pull: bitcoin-core/gui#171 Rebased-From: d4feb6812a2707ef85d75dda4372086ec62eb922 --- src/qt/forms/createwalletdialog.ui | 253 ++++++++++++++--------------- 1 file changed, 124 insertions(+), 129 deletions(-) diff --git a/src/qt/forms/createwalletdialog.ui b/src/qt/forms/createwalletdialog.ui index 0b33c2cb8..881869a46 100644 --- a/src/qt/forms/createwalletdialog.ui +++ b/src/qt/forms/createwalletdialog.ui @@ -7,140 +7,135 @@ 0 0 364 - 213 + 249 Create Wallet - - - - 10 - 170 - 341 - 32 - - - - Qt::Horizontal - - - QDialogButtonBox::Cancel|QDialogButtonBox::Ok - - - - - - 120 - 20 - 231 - 24 - - - - Wallet - - - - - - 20 - 20 - 101 - 21 - - - - Wallet Name - - - - - - 20 - 50 - 220 - 22 - - - - Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. - - - Encrypt Wallet - - - false - - - - - - 20 - 90 - 220 - 21 - - - - font-weight:bold; - - - Advanced options - - - - - true - - - - 20 - 115 - 220 - 22 - - - - Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. - - - Disable Private Keys - - - - - - 20 - 135 - 220 - 22 - - - - Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. - - - Make Blank Wallet - - - - - - 20 - 155 - 220 - 22 - - - - Use descriptors for scriptPubKey management - - - Descriptor Wallet - - + + true + + + + + + + + Wallet Name + + + + + + + + 262 + 0 + + + + Wallet + + + + + + + + + Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. + + + Encrypt Wallet + + + false + + + + + + + Qt::Vertical + + + QSizePolicy::Fixed + + + + 20 + 8 + + + + + + + + Advanced Options + + + + + + true + + + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. + + + Disable Private Keys + + + + + + + Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. + + + Make Blank Wallet + + + + + + + Use descriptors for scriptPubKey management + + + Descriptor Wallet + + + + + + + + + + Qt::Vertical + + + + 20 + 0 + + + + + + + + Qt::Horizontal + + + QDialogButtonBox::Cancel|QDialogButtonBox::Ok + + + + wallet_name_line_edit From b7086e69ff3825c3f3bfde4ca9af90663a4575dd Mon Sep 17 00:00:00 2001 From: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com> Date: Sun, 3 Jan 2021 11:27:19 +0200 Subject: [PATCH 005/102] qt: Add TransactionOverviewWidget class Github-Pull: bitcoin-core/gui#176 Rebased-From: d43992140679fb9a5ebc7850923679033f9837f3 --- src/Makefile.qt.include | 2 ++ src/qt/forms/overviewpage.ui | 12 ++++++++- src/qt/overviewpage.cpp | 3 ++- src/qt/transactionoverviewwidget.h | 41 ++++++++++++++++++++++++++++++ 4 files changed, 56 insertions(+), 2 deletions(-) create mode 100644 src/qt/transactionoverviewwidget.h diff --git a/src/Makefile.qt.include b/src/Makefile.qt.include index f46310a60..eb17795b4 100644 --- a/src/Makefile.qt.include +++ b/src/Makefile.qt.include @@ -78,6 +78,7 @@ QT_MOC_CPP = \ qt/moc_transactiondesc.cpp \ qt/moc_transactiondescdialog.cpp \ qt/moc_transactionfilterproxy.cpp \ + qt/moc_transactionoverviewwidget.cpp \ qt/moc_transactiontablemodel.cpp \ qt/moc_transactionview.cpp \ qt/moc_utilitydialog.cpp \ @@ -151,6 +152,7 @@ BITCOIN_QT_H = \ qt/transactiondesc.h \ qt/transactiondescdialog.h \ qt/transactionfilterproxy.h \ + qt/transactionoverviewwidget.h \ qt/transactionrecord.h \ qt/transactiontablemodel.h \ qt/transactionview.h \ diff --git a/src/qt/forms/overviewpage.ui b/src/qt/forms/overviewpage.ui index 4d3f90c48..88172b067 100644 --- a/src/qt/forms/overviewpage.ui +++ b/src/qt/forms/overviewpage.ui @@ -504,7 +504,7 @@ - + QListView { background: transparent; } @@ -520,6 +520,9 @@ QAbstractItemView::NoSelection + + true + @@ -544,6 +547,13 @@ + + + TransactionOverviewWidget + QListView +
qt/transactionoverviewwidget.h
+
+
diff --git a/src/qt/overviewpage.cpp b/src/qt/overviewpage.cpp index b536567c8..f613d2c2a 100644 --- a/src/qt/overviewpage.cpp +++ b/src/qt/overviewpage.cpp @@ -12,6 +12,7 @@ #include #include #include +#include #include #include @@ -135,7 +136,7 @@ OverviewPage::OverviewPage(const PlatformStyle *platformStyle, QWidget *parent) ui->listTransactions->setMinimumHeight(NUM_ITEMS * (DECORATION_SIZE + 2)); ui->listTransactions->setAttribute(Qt::WA_MacShowFocusRect, false); - connect(ui->listTransactions, &QListView::clicked, this, &OverviewPage::handleTransactionClicked); + connect(ui->listTransactions, &TransactionOverviewWidget::clicked, this, &OverviewPage::handleTransactionClicked); // start with displaying the "out of sync" warnings showOutOfSyncWarning(true); diff --git a/src/qt/transactionoverviewwidget.h b/src/qt/transactionoverviewwidget.h new file mode 100644 index 000000000..2bdead7bc --- /dev/null +++ b/src/qt/transactionoverviewwidget.h @@ -0,0 +1,41 @@ +// Copyright (c) 2021 The Bitcoin Core developers +// Distributed under the MIT software license, see the accompanying +// file COPYING or http://www.opensource.org/licenses/mit-license.php. + +#ifndef BITCOIN_QT_TRANSACTIONOVERVIEWWIDGET_H +#define BITCOIN_QT_TRANSACTIONOVERVIEWWIDGET_H + +#include + +#include +#include +#include + +QT_BEGIN_NAMESPACE +class QShowEvent; +class QWidget; +QT_END_NAMESPACE + +class TransactionOverviewWidget : public QListView +{ + Q_OBJECT + +public: + explicit TransactionOverviewWidget(QWidget* parent = nullptr) : QListView(parent) {} + + QSize sizeHint() const override + { + return {sizeHintForColumn(TransactionTableModel::ToAddress), QListView::sizeHint().height()}; + } + +protected: + void showEvent(QShowEvent* event) override + { + Q_UNUSED(event); + QSizePolicy sp = sizePolicy(); + sp.setHorizontalPolicy(QSizePolicy::Minimum); + setSizePolicy(sp); + } +}; + +#endif // BITCOIN_QT_TRANSACTIONOVERVIEWWIDGET_H From 7bc4498234e16bc75975555cbe7855384489782f Mon Sep 17 00:00:00 2001 From: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com> Date: Sat, 2 Jan 2021 21:00:46 +0200 Subject: [PATCH 006/102] qt: Fix TxViewDelegate layout This change (1) prevents overlapping date and amount strings, and (2) guaranties that "eye" sign at the end of the watch-only address/label is always visible. Github-Pull: bitcoin-core/gui#176 Rebased-From: f0d04795e23606399414d074d78efe5aa0da7259 --- src/qt/forms/overviewpage.ui | 3 +++ src/qt/overviewpage.cpp | 36 ++++++++++++++++++++++++++++++------ 2 files changed, 33 insertions(+), 6 deletions(-) diff --git a/src/qt/forms/overviewpage.ui b/src/qt/forms/overviewpage.ui index 88172b067..ee9d4a113 100644 --- a/src/qt/forms/overviewpage.ui +++ b/src/qt/forms/overviewpage.ui @@ -517,6 +517,9 @@ Qt::ScrollBarAlwaysOff + + QAbstractScrollArea::AdjustToContents + QAbstractItemView::NoSelection diff --git a/src/qt/overviewpage.cpp b/src/qt/overviewpage.cpp index f613d2c2a..6a6658454 100644 --- a/src/qt/overviewpage.cpp +++ b/src/qt/overviewpage.cpp @@ -21,6 +21,9 @@ #include #include +#include +#include + #define DECORATION_SIZE 54 #define NUM_ITEMS 5 @@ -34,7 +37,7 @@ public: QAbstractItemDelegate(parent), unit(BitcoinUnits::BTC), platformStyle(_platformStyle) { - + connect(this, &TxViewDelegate::width_changed, this, &TxViewDelegate::sizeHintChanged); } inline void paint(QPainter *painter, const QStyleOptionViewItem &option, @@ -67,13 +70,15 @@ public: painter->setPen(foreground); QRect boundingRect; - painter->drawText(addressRect, Qt::AlignLeft|Qt::AlignVCenter, address, &boundingRect); + painter->drawText(addressRect, Qt::AlignLeft | Qt::AlignVCenter, address, &boundingRect); + int address_rect_min_width = boundingRect.width(); if (index.data(TransactionTableModel::WatchonlyRole).toBool()) { QIcon iconWatchonly = qvariant_cast(index.data(TransactionTableModel::WatchonlyDecorationRole)); QRect watchonlyRect(boundingRect.right() + 5, mainRect.top()+ypad+halfheight, 16, halfheight); iconWatchonly.paint(painter, watchonlyRect); + address_rect_min_width += 5 + watchonlyRect.width(); } if(amount < 0) @@ -94,23 +99,42 @@ public: { amountText = QString("[") + amountText + QString("]"); } - painter->drawText(amountRect, Qt::AlignRight|Qt::AlignVCenter, amountText); + + QRect amount_bounding_rect; + painter->drawText(amountRect, Qt::AlignRight | Qt::AlignVCenter, amountText, &amount_bounding_rect); painter->setPen(option.palette.color(QPalette::Text)); - painter->drawText(amountRect, Qt::AlignLeft|Qt::AlignVCenter, GUIUtil::dateTimeStr(date)); + QRect date_bounding_rect; + painter->drawText(amountRect, Qt::AlignLeft | Qt::AlignVCenter, GUIUtil::dateTimeStr(date), &date_bounding_rect); + + const int minimum_width = std::max(address_rect_min_width, amount_bounding_rect.width() + date_bounding_rect.width()); + const auto search = m_minimum_width.find(index.row()); + if (search == m_minimum_width.end() || search->second != minimum_width) { + m_minimum_width[index.row()] = minimum_width; + Q_EMIT width_changed(index); + } painter->restore(); } inline QSize sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const override { - return QSize(DECORATION_SIZE, DECORATION_SIZE); + const auto search = m_minimum_width.find(index.row()); + const int minimum_text_width = search == m_minimum_width.end() ? 0 : search->second; + return {DECORATION_SIZE + 8 + minimum_text_width, DECORATION_SIZE}; } int unit; - const PlatformStyle *platformStyle; +Q_SIGNALS: + //! An intermediate signal for emitting from the `paint() const` member function. + void width_changed(const QModelIndex& index) const; + +private: + const PlatformStyle* platformStyle; + mutable std::map m_minimum_width; }; + #include OverviewPage::OverviewPage(const PlatformStyle *platformStyle, QWidget *parent) : From bdc64c9030488e7a6b88f369fb876c0b21c04a25 Mon Sep 17 00:00:00 2001 From: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com> Date: Tue, 5 Jan 2021 22:33:28 +0200 Subject: [PATCH 007/102] qt: Stop the effect of hidden widgets on the size of QStackedWidget Layouts of the hidden widgets, those are children of QStackedWidget, could prevent to adjust the size of the parent widget in the WalletFrame widget. Github-Pull: bitcoin-core/gui#176 Rebased-From: af58f5b12cea91467692dd4ae71d8cc916a608ed --- src/qt/walletframe.cpp | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/qt/walletframe.cpp b/src/qt/walletframe.cpp index 4a9b4a5c8..eaa18b03a 100644 --- a/src/qt/walletframe.cpp +++ b/src/qt/walletframe.cpp @@ -106,9 +106,24 @@ void WalletFrame::setCurrentWallet(WalletModel* wallet_model) { if (mapWalletViews.count(wallet_model) == 0) return; + // Stop the effect of hidden widgets on the size hint of the shown one in QStackedWidget. + WalletView* view_about_to_hide = currentWalletView(); + if (view_about_to_hide) { + QSizePolicy sp = view_about_to_hide->sizePolicy(); + sp.setHorizontalPolicy(QSizePolicy::Ignored); + view_about_to_hide->setSizePolicy(sp); + } + WalletView *walletView = mapWalletViews.value(wallet_model); - walletStack->setCurrentWidget(walletView); assert(walletView); + + // Set or restore the default QSizePolicy which could be set to QSizePolicy::Ignored previously. + QSizePolicy sp = walletView->sizePolicy(); + sp.setHorizontalPolicy(QSizePolicy::Preferred); + walletView->setSizePolicy(sp); + walletView->updateGeometry(); + + walletStack->setCurrentWidget(walletView); walletView->updateEncryptionStatus(); } From a98f211940dc6eaed8050263efad7656126b7b3e Mon Sep 17 00:00:00 2001 From: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com> Date: Thu, 21 Jan 2021 23:09:17 +0200 Subject: [PATCH 008/102] Fix MSVC build after gui#176 Github-Pull: #20983 Rebased-From: c5354e4641d8a92807e4183894d4bb32241e4b5b --- build_msvc/libbitcoin_qt/libbitcoin_qt.vcxproj | 1 + 1 file changed, 1 insertion(+) diff --git a/build_msvc/libbitcoin_qt/libbitcoin_qt.vcxproj b/build_msvc/libbitcoin_qt/libbitcoin_qt.vcxproj index 6a3c9f1dc..490ce8b1c 100644 --- a/build_msvc/libbitcoin_qt/libbitcoin_qt.vcxproj +++ b/build_msvc/libbitcoin_qt/libbitcoin_qt.vcxproj @@ -104,6 +104,7 @@ + From e2ebc8567a96e92d1c039b2e7c5f48826fece810 Mon Sep 17 00:00:00 2001 From: randymcmillan Date: Tue, 29 Dec 2020 16:54:16 -0500 Subject: [PATCH 009/102] raise helpMessageDialog Github-Pull: bitcoin-core/gui#167 Rebased-From: 77114462f2328914b7a918f40776e522a0898e56 --- src/qt/bitcoingui.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/qt/bitcoingui.cpp b/src/qt/bitcoingui.cpp index 23370e6ad..6a412b95f 100644 --- a/src/qt/bitcoingui.cpp +++ b/src/qt/bitcoingui.cpp @@ -845,7 +845,7 @@ void BitcoinGUI::showDebugWindowActivateConsole() void BitcoinGUI::showHelpMessageClicked() { - helpMessageDialog->show(); + GUIUtil::bringToFront(helpMessageDialog); } #ifdef ENABLE_WALLET From 6dc58e99457fe4609fa3c401e89f98c92dbd9878 Mon Sep 17 00:00:00 2001 From: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com> Date: Thu, 7 Jan 2021 23:04:56 +0200 Subject: [PATCH 010/102] qt: Use "fusion" style on macOS Big Sur with old Qt The "macintosh" style is broken on macOS Big Sur at least for Qt 5.9.8. Github-Pull: #bitcoin-core/gui#177 Rebased-From: 4e1154dfd128cbada65e9ea08ee274cdeafc4c53 --- src/qt/bitcoin.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/qt/bitcoin.cpp b/src/qt/bitcoin.cpp index 63b4107f7..6737452ab 100644 --- a/src/qt/bitcoin.cpp +++ b/src/qt/bitcoin.cpp @@ -51,6 +51,7 @@ #include #include #include +#include #if defined(QT_STATICPLUGIN) #include @@ -466,6 +467,13 @@ int GuiMain(int argc, char* argv[]) QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling); #endif +#if (QT_VERSION <= QT_VERSION_CHECK(5, 9, 8)) && defined(Q_OS_MACOS) + const auto os_name = QSysInfo::prettyProductName(); + if (os_name.startsWith("macOS 11") || os_name.startsWith("macOS 10.16")) { + QApplication::setStyle("fusion"); + } +#endif + BitcoinApplication app; /// 2. Parse command-line options. We do this after qt in order to show an error if there are problems parsing these From 4607019798c543f046bcd22d5b7c09750e7e0ee2 Mon Sep 17 00:00:00 2001 From: Bruno Garcia Date: Thu, 4 Feb 2021 10:49:45 -0200 Subject: [PATCH 011/102] fix the unreachable code at feature_taproot Github-Pull: #21081 Rebased-From: 5e0cd25e29541e6c19559fb5c2555e008ed896fa --- test/functional/feature_taproot.py | 1 - 1 file changed, 1 deletion(-) diff --git a/test/functional/feature_taproot.py b/test/functional/feature_taproot.py index 0f0fe8a34..2b9b61487 100755 --- a/test/functional/feature_taproot.py +++ b/test/functional/feature_taproot.py @@ -515,7 +515,6 @@ def add_spender(spenders, *args, **kwargs): def random_checksig_style(pubkey): """Creates a random CHECKSIG* tapscript that would succeed with only the valid signature on witness stack.""" - return bytes(CScript([pubkey, OP_CHECKSIG])) opcode = random.choice([OP_CHECKSIG, OP_CHECKSIGVERIFY, OP_CHECKSIGADD]) if (opcode == OP_CHECKSIGVERIFY): ret = CScript([pubkey, opcode, OP_1]) From 95218ee95cdb4046ee7d622eac822e74d94314c7 Mon Sep 17 00:00:00 2001 From: practicalswift Date: Sun, 31 Jan 2021 21:03:05 +0000 Subject: [PATCH 012/102] net: Avoid UBSan warning in ProcessMessage(...) Github-Pull: #21043 Rebased-From: f5f2f9716885e7548809e77f46b493c896a019bf --- src/net_processing.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/net_processing.cpp b/src/net_processing.cpp index 98e3d90c2..f29be8d8a 100644 --- a/src/net_processing.cpp +++ b/src/net_processing.cpp @@ -2305,6 +2305,9 @@ void PeerManager::ProcessMessage(CNode& pfrom, const std::string& msg_type, CDat bool fRelay = true; vRecv >> nVersion >> nServiceInt >> nTime >> addrMe; + if (nTime < 0) { + nTime = 0; + } nServices = ServiceFlags(nServiceInt); if (!pfrom.IsInboundConn()) { From 08dada84565ea5f49127123e356c82a150626f3c Mon Sep 17 00:00:00 2001 From: MarcoFalke Date: Mon, 1 Feb 2021 14:57:34 +0000 Subject: [PATCH 013/102] util: Disallow negative mocktime Signed-off-by: practicalswift Github-Pull: #21043 Rebased-From: 3ddbf22ed179a2db733af4b521bec5d2b13ebf4b --- src/rpc/misc.cpp | 19 +++++++++++-------- src/util/time.cpp | 5 ++++- test/functional/rpc_uptime.py | 5 +++++ 3 files changed, 20 insertions(+), 9 deletions(-) diff --git a/src/rpc/misc.cpp b/src/rpc/misc.cpp index 0c982317f..00f7445cf 100644 --- a/src/rpc/misc.cpp +++ b/src/rpc/misc.cpp @@ -360,13 +360,13 @@ static RPCHelpMan signmessagewithprivkey() static RPCHelpMan setmocktime() { return RPCHelpMan{"setmocktime", - "\nSet the local time to given timestamp (-regtest only)\n", - { - {"timestamp", RPCArg::Type::NUM, RPCArg::Optional::NO, UNIX_EPOCH_TIME + "\n" - " Pass 0 to go back to using the system time."}, - }, - RPCResult{RPCResult::Type::NONE, "", ""}, - RPCExamples{""}, + "\nSet the local time to given timestamp (-regtest only)\n", + { + {"timestamp", RPCArg::Type::NUM, RPCArg::Optional::NO, UNIX_EPOCH_TIME + "\n" + "Pass 0 to go back to using the system time."}, + }, + RPCResult{RPCResult::Type::NONE, "", ""}, + RPCExamples{""}, [&](const RPCHelpMan& self, const JSONRPCRequest& request) -> UniValue { if (!Params().IsMockableChain()) { @@ -381,7 +381,10 @@ static RPCHelpMan setmocktime() LOCK(cs_main); RPCTypeCheck(request.params, {UniValue::VNUM}); - int64_t time = request.params[0].get_int64(); + const int64_t time{request.params[0].get_int64()}; + if (time < 0) { + throw JSONRPCError(RPC_INVALID_PARAMETER, strprintf("Mocktime can not be negative: %s.", time)); + } SetMockTime(time); if (request.context.Has()) { for (const auto& chain_client : request.context.Get().chain_clients) { diff --git a/src/util/time.cpp b/src/util/time.cpp index e96972fe1..d130e4e4d 100644 --- a/src/util/time.cpp +++ b/src/util/time.cpp @@ -9,6 +9,8 @@ #include +#include + #include #include #include @@ -18,7 +20,7 @@ void UninterruptibleSleep(const std::chrono::microseconds& n) { std::this_thread::sleep_for(n); } -static std::atomic nMockTime(0); //!< For unit testing +static std::atomic nMockTime(0); //!< For testing int64_t GetTime() { @@ -46,6 +48,7 @@ template std::chrono::microseconds GetTime(); void SetMockTime(int64_t nMockTimeIn) { + Assert(nMockTimeIn >= 0); nMockTime.store(nMockTimeIn, std::memory_order_relaxed); } diff --git a/test/functional/rpc_uptime.py b/test/functional/rpc_uptime.py index e86f91b1d..617797087 100755 --- a/test/functional/rpc_uptime.py +++ b/test/functional/rpc_uptime.py @@ -10,6 +10,7 @@ Test corresponds to code in rpc/server.cpp. import time from test_framework.test_framework import BitcoinTestFramework +from test_framework.util import assert_raises_rpc_error class UptimeTest(BitcoinTestFramework): @@ -18,8 +19,12 @@ class UptimeTest(BitcoinTestFramework): self.setup_clean_chain = True def run_test(self): + self._test_negative_time() self._test_uptime() + def _test_negative_time(self): + assert_raises_rpc_error(-8, "Mocktime can not be negative: -1.", self.nodes[0].setmocktime, -1) + def _test_uptime(self): wait_time = 10 self.nodes[0].setmocktime(int(time.time() + wait_time)) From d6b5eb5fcc8e8f7f0ab778f32d49aabf6e04d80d Mon Sep 17 00:00:00 2001 From: Andrew Chow Date: Tue, 16 Feb 2021 13:22:49 -0500 Subject: [PATCH 014/102] Disallow sendtoaddress and sendmany when private keys disabled Github-Pull: #21201 Rebased-From: 0997019e7681efb00847a7246c15ac8f235128d8 --- src/wallet/rpcwallet.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/wallet/rpcwallet.cpp b/src/wallet/rpcwallet.cpp index e8c3ae888..37d672ace 100644 --- a/src/wallet/rpcwallet.cpp +++ b/src/wallet/rpcwallet.cpp @@ -400,6 +400,12 @@ UniValue SendMoney(CWallet* const pwallet, const CCoinControl &coin_control, std { EnsureWalletIsUnlocked(pwallet); + // This function is only used by sendtoaddress and sendmany. + // This should always try to sign, if we don't have private keys, don't try to do anything here. + if (pwallet->IsWalletFlagSet(WALLET_FLAG_DISABLE_PRIVATE_KEYS)) { + throw JSONRPCError(RPC_WALLET_ERROR, "Error: Private keys are disabled for this wallet"); + } + // Shuffle recipient list std::shuffle(recipients.begin(), recipients.end(), FastRandomContext()); @@ -409,7 +415,7 @@ UniValue SendMoney(CWallet* const pwallet, const CCoinControl &coin_control, std bilingual_str error; CTransactionRef tx; FeeCalculation fee_calc_out; - bool fCreated = pwallet->CreateTransaction(recipients, tx, nFeeRequired, nChangePosRet, error, coin_control, fee_calc_out, !pwallet->IsWalletFlagSet(WALLET_FLAG_DISABLE_PRIVATE_KEYS)); + const bool fCreated = pwallet->CreateTransaction(recipients, tx, nFeeRequired, nChangePosRet, error, coin_control, fee_calc_out, true); if (!fCreated) { throw JSONRPCError(RPC_WALLET_INSUFFICIENT_FUNDS, error.original); } From 4ef1e4bd407ccf80b2a1d40e946e2ac832e624e5 Mon Sep 17 00:00:00 2001 From: Jon Atack Date: Tue, 16 Feb 2021 20:41:21 +0100 Subject: [PATCH 015/102] test: disallow sendtoaddress/sendmany when private keys disabled Github-Pull: #21201 Rebased-From: 6bfbc97d716faad38c87603ac6049d222236d623 --- test/functional/wallet_watchonly.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/test/functional/wallet_watchonly.py b/test/functional/wallet_watchonly.py index b0c41b273..2bf7c094e 100755 --- a/test/functional/wallet_watchonly.py +++ b/test/functional/wallet_watchonly.py @@ -2,7 +2,7 @@ # Copyright (c) 2018-2019 The Bitcoin Core developers # Distributed under the MIT software license, see the accompanying # file COPYING or http://www.opensource.org/licenses/mit-license.php. -"""Test createwallet arguments. +"""Test createwallet watchonly arguments. """ from test_framework.test_framework import BitcoinTestFramework @@ -50,6 +50,11 @@ class CreateWalletWatchonlyTest(BitcoinTestFramework): assert_equal(len(wo_wallet.listtransactions()), 1) assert_equal(wo_wallet.getbalance(include_watchonly=False), 0) + self.log.info('Test sending from a watch-only wallet raises RPC error') + msg = "Error: Private keys are disabled for this wallet" + assert_raises_rpc_error(-4, msg, wo_wallet.sendtoaddress, a1, 0.1) + assert_raises_rpc_error(-4, msg, wo_wallet.sendmany, amounts={a1: 0.1}) + self.log.info('Testing listreceivedbyaddress watch-only defaults') result = wo_wallet.listreceivedbyaddress() assert_equal(len(result), 1) From 3ba9283a47ac358168db9db7840ae559f443486c Mon Sep 17 00:00:00 2001 From: Anthony Towns Date: Mon, 19 Oct 2020 20:49:42 +1000 Subject: [PATCH 016/102] tests: more helpful errors for failing versionbits tests Co-authored-by: Sjors Provoost --- src/test/versionbits_tests.cpp | 72 ++++++++++++---------------------- 1 file changed, 26 insertions(+), 46 deletions(-) diff --git a/src/test/versionbits_tests.cpp b/src/test/versionbits_tests.cpp index 50444f7bb..23b1709c8 100644 --- a/src/test/versionbits_tests.cpp +++ b/src/test/versionbits_tests.cpp @@ -14,6 +14,18 @@ /* Define a virtual block time, one block per 10 minutes after Nov 14 2014, 0:55:36am */ static int32_t TestTime(int nHeight) { return 1415926536 + 600 * nHeight; } +static const std::string StateName(ThresholdState state) +{ + switch (state) { + case ThresholdState::DEFINED: return "DEFINED"; + case ThresholdState::STARTED: return "STARTED"; + case ThresholdState::LOCKED_IN: return "LOCKED_IN"; + case ThresholdState::ACTIVE: return "ACTIVE"; + case ThresholdState::FAILED: return "FAILED"; + } // no default case, so the compiler can warn about missing cases + return ""; +} + static const Consensus::Params paramsDummy = Consensus::Params(); class TestConditionChecker : public AbstractThresholdConditionChecker @@ -98,60 +110,28 @@ public: return *this; } - VersionBitsTester& TestDefined() { + VersionBitsTester& TestState(ThresholdState exp) { for (int i = 0; i < CHECKERS; i++) { if (InsecureRandBits(i) == 0) { - BOOST_CHECK_MESSAGE(checker[i].GetStateFor(vpblock.empty() ? nullptr : vpblock.back()) == ThresholdState::DEFINED, strprintf("Test %i for DEFINED", num)); - BOOST_CHECK_MESSAGE(checker_always[i].GetStateFor(vpblock.empty() ? nullptr : vpblock.back()) == ThresholdState::ACTIVE, strprintf("Test %i for ACTIVE (always active)", num)); + const CBlockIndex* pindex = vpblock.empty() ? nullptr : vpblock.back(); + ThresholdState got = checker[i].GetStateFor(pindex); + ThresholdState got_always = checker_always[i].GetStateFor(pindex); + // nHeight of the next block. If vpblock is empty, the next (ie first) + // block should be the genesis block with nHeight == 0. + int height = pindex == nullptr ? 0 : pindex->nHeight + 1; + BOOST_CHECK_MESSAGE(got == exp, strprintf("Test %i for %s height %d (got %s)", num, StateName(exp), height, StateName(got))); + BOOST_CHECK_MESSAGE(got_always == ThresholdState::ACTIVE, strprintf("Test %i for ACTIVE height %d (got %s; always active case)", num, height, StateName(got_always))); } } num++; return *this; } - VersionBitsTester& TestStarted() { - for (int i = 0; i < CHECKERS; i++) { - if (InsecureRandBits(i) == 0) { - BOOST_CHECK_MESSAGE(checker[i].GetStateFor(vpblock.empty() ? nullptr : vpblock.back()) == ThresholdState::STARTED, strprintf("Test %i for STARTED", num)); - BOOST_CHECK_MESSAGE(checker_always[i].GetStateFor(vpblock.empty() ? nullptr : vpblock.back()) == ThresholdState::ACTIVE, strprintf("Test %i for ACTIVE (always active)", num)); - } - } - num++; - return *this; - } - - VersionBitsTester& TestLockedIn() { - for (int i = 0; i < CHECKERS; i++) { - if (InsecureRandBits(i) == 0) { - BOOST_CHECK_MESSAGE(checker[i].GetStateFor(vpblock.empty() ? nullptr : vpblock.back()) == ThresholdState::LOCKED_IN, strprintf("Test %i for LOCKED_IN", num)); - BOOST_CHECK_MESSAGE(checker_always[i].GetStateFor(vpblock.empty() ? nullptr : vpblock.back()) == ThresholdState::ACTIVE, strprintf("Test %i for ACTIVE (always active)", num)); - } - } - num++; - return *this; - } - - VersionBitsTester& TestActive() { - for (int i = 0; i < CHECKERS; i++) { - if (InsecureRandBits(i) == 0) { - BOOST_CHECK_MESSAGE(checker[i].GetStateFor(vpblock.empty() ? nullptr : vpblock.back()) == ThresholdState::ACTIVE, strprintf("Test %i for ACTIVE", num)); - BOOST_CHECK_MESSAGE(checker_always[i].GetStateFor(vpblock.empty() ? nullptr : vpblock.back()) == ThresholdState::ACTIVE, strprintf("Test %i for ACTIVE (always active)", num)); - } - } - num++; - return *this; - } - - VersionBitsTester& TestFailed() { - for (int i = 0; i < CHECKERS; i++) { - if (InsecureRandBits(i) == 0) { - BOOST_CHECK_MESSAGE(checker[i].GetStateFor(vpblock.empty() ? nullptr : vpblock.back()) == ThresholdState::FAILED, strprintf("Test %i for FAILED", num)); - BOOST_CHECK_MESSAGE(checker_always[i].GetStateFor(vpblock.empty() ? nullptr : vpblock.back()) == ThresholdState::ACTIVE, strprintf("Test %i for ACTIVE (always active)", num)); - } - } - num++; - return *this; - } + VersionBitsTester& TestDefined() { return TestState(ThresholdState::DEFINED); } + VersionBitsTester& TestStarted() { return TestState(ThresholdState::STARTED); } + VersionBitsTester& TestLockedIn() { return TestState(ThresholdState::LOCKED_IN); } + VersionBitsTester& TestActive() { return TestState(ThresholdState::ACTIVE); } + VersionBitsTester& TestFailed() { return TestState(ThresholdState::FAILED); } CBlockIndex * Tip() { return vpblock.size() ? vpblock.back() : nullptr; } }; From 0c471a5f306044cbd2eb230714571f05dd6aaf3c Mon Sep 17 00:00:00 2001 From: Anthony Towns Date: Mon, 19 Oct 2020 22:59:50 +1000 Subject: [PATCH 017/102] tests: check never active versionbits --- src/test/versionbits_tests.cpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/test/versionbits_tests.cpp b/src/test/versionbits_tests.cpp index 23b1709c8..8841a540f 100644 --- a/src/test/versionbits_tests.cpp +++ b/src/test/versionbits_tests.cpp @@ -50,6 +50,13 @@ public: int64_t BeginTime(const Consensus::Params& params) const override { return Consensus::BIP9Deployment::ALWAYS_ACTIVE; } }; +class TestNeverActiveConditionChecker : public TestConditionChecker +{ +public: + int64_t BeginTime(const Consensus::Params& params) const override { return 0; } + int64_t EndTime(const Consensus::Params& params) const override { return 1230768000; } +}; + #define CHECKERS 6 class VersionBitsTester @@ -63,6 +70,8 @@ class VersionBitsTester TestConditionChecker checker[CHECKERS]; // Another 6 that assume always active activation TestAlwaysActiveConditionChecker checker_always[CHECKERS]; + // Another 6 that assume never active activation + TestNeverActiveConditionChecker checker_never[CHECKERS]; // Test counter (to identify failures) int num; @@ -77,6 +86,7 @@ public: for (unsigned int i = 0; i < CHECKERS; i++) { checker[i] = TestConditionChecker(); checker_always[i] = TestAlwaysActiveConditionChecker(); + checker_never[i] = TestNeverActiveConditionChecker(); } vpblock.clear(); return *this; @@ -104,6 +114,10 @@ public: if (InsecureRandBits(i) == 0) { BOOST_CHECK_MESSAGE(checker[i].GetStateSinceHeightFor(vpblock.empty() ? nullptr : vpblock.back()) == height, strprintf("Test %i for StateSinceHeight", num)); BOOST_CHECK_MESSAGE(checker_always[i].GetStateSinceHeightFor(vpblock.empty() ? nullptr : vpblock.back()) == 0, strprintf("Test %i for StateSinceHeight (always active)", num)); + + // never active may go from DEFINED -> FAILED at the first period + const auto never_height = checker_never[i].GetStateSinceHeightFor(vpblock.empty() ? nullptr : vpblock.back()); + BOOST_CHECK_MESSAGE(never_height == 0 || never_height == checker_never[i].Period(paramsDummy), strprintf("Test %i for StateSinceHeight (never active)", num)); } } num++; @@ -116,11 +130,13 @@ public: const CBlockIndex* pindex = vpblock.empty() ? nullptr : vpblock.back(); ThresholdState got = checker[i].GetStateFor(pindex); ThresholdState got_always = checker_always[i].GetStateFor(pindex); + ThresholdState got_never = checker_never[i].GetStateFor(pindex); // nHeight of the next block. If vpblock is empty, the next (ie first) // block should be the genesis block with nHeight == 0. int height = pindex == nullptr ? 0 : pindex->nHeight + 1; BOOST_CHECK_MESSAGE(got == exp, strprintf("Test %i for %s height %d (got %s)", num, StateName(exp), height, StateName(got))); BOOST_CHECK_MESSAGE(got_always == ThresholdState::ACTIVE, strprintf("Test %i for ACTIVE height %d (got %s; always active case)", num, height, StateName(got_always))); + BOOST_CHECK_MESSAGE(got_never == ThresholdState::DEFINED|| got_never == ThresholdState::FAILED, strprintf("Test %i for DEFINED/FAILED height %d (got %s; never active case)", num, height, StateName(got_never))); } } num++; From 36ecf5eb8752890fdffd617c9fedb08033607f99 Mon Sep 17 00:00:00 2001 From: Andrew Chow Date: Thu, 3 Dec 2020 14:43:03 -0500 Subject: [PATCH 018/102] tests: Test that a fully signed tx given to signrawtx is unchanged Tests that a fully signed transaction given to signrawtransactionwithwallet is both unchanged and marked as complete. This tests for a regression in 0.20 where the transaction would not be marked as complete. Github-Pull: #20562 Rebased-From: 773c42b265fb2212b5cb8785b7226a206d063543 --- test/functional/rpc_signrawtransaction.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/test/functional/rpc_signrawtransaction.py b/test/functional/rpc_signrawtransaction.py index b962e1c3a..2fbbdbbdf 100755 --- a/test/functional/rpc_signrawtransaction.py +++ b/test/functional/rpc_signrawtransaction.py @@ -151,6 +151,19 @@ class SignRawTransactionsTest(BitcoinTestFramework): assert_equal(rawTxSigned['errors'][1]['witness'], ["304402203609e17b84f6a7d30c80bfa610b5b4542f32a8a0d5447a12fb1366d7f01cc44a0220573a954c4518331561406f90300e8f3358f51928d43c212a8caed02de67eebee01", "025476c2e83188368da1ff3e292e7acafcdb3566bb0ad253f62fc70f07aeee6357"]) assert not rawTxSigned['errors'][0]['witness'] + def test_fully_signed_tx(self): + self.log.info("Test signing a fully signed transaction does nothing") + self.nodes[0].walletpassphrase("password", 9999) + self.nodes[0].generate(101) + rawtx = self.nodes[0].createrawtransaction([], [{self.nodes[0].getnewaddress(): 10}]) + fundedtx = self.nodes[0].fundrawtransaction(rawtx) + signedtx = self.nodes[0].signrawtransactionwithwallet(fundedtx["hex"]) + assert_equal(signedtx["complete"], True) + signedtx2 = self.nodes[0].signrawtransactionwithwallet(signedtx["hex"]) + assert_equal(signedtx2["complete"], True) + assert_equal(signedtx["hex"], signedtx2["hex"]) + self.nodes[0].walletlock() + def witness_script_test(self): self.log.info("Test signing transaction to P2SH-P2WSH addresses without wallet") # Create a new P2SH-P2WSH 1-of-1 multisig address: @@ -231,6 +244,7 @@ class SignRawTransactionsTest(BitcoinTestFramework): self.witness_script_test() self.OP_1NEGATE_test() self.test_with_lock_outputs() + self.test_fully_signed_tx() if __name__ == '__main__': From 3a126724195fcf00d84e852a9247475fccd14f38 Mon Sep 17 00:00:00 2001 From: Andrew Chow Date: Mon, 18 Jan 2021 20:38:28 -0500 Subject: [PATCH 019/102] GUI: Write PSBTs to file with binary mode Github-Pull: #bitcoin-core/gui#188 Rebased-From: cc3971c9ff538a924c1a76ca1352bcaeb24f579f --- src/qt/psbtoperationsdialog.cpp | 2 +- src/qt/sendcoinsdialog.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/qt/psbtoperationsdialog.cpp b/src/qt/psbtoperationsdialog.cpp index 58167d4bb..28103495d 100644 --- a/src/qt/psbtoperationsdialog.cpp +++ b/src/qt/psbtoperationsdialog.cpp @@ -145,7 +145,7 @@ void PSBTOperationsDialog::saveTransaction() { if (filename.isEmpty()) { return; } - std::ofstream out(filename.toLocal8Bit().data()); + std::ofstream out(filename.toLocal8Bit().data(), std::ofstream::out | std::ofstream::binary); out << ssTx.str(); out.close(); showStatus(tr("PSBT saved to disk."), StatusLevel::INFO); diff --git a/src/qt/sendcoinsdialog.cpp b/src/qt/sendcoinsdialog.cpp index 63b06b621..62606ff0b 100644 --- a/src/qt/sendcoinsdialog.cpp +++ b/src/qt/sendcoinsdialog.cpp @@ -427,7 +427,7 @@ void SendCoinsDialog::on_sendButton_clicked() if (filename.isEmpty()) { return; } - std::ofstream out(filename.toLocal8Bit().data()); + std::ofstream out(filename.toLocal8Bit().data(), std::ofstream::out | std::ofstream::binary); out << ssTx.str(); out.close(); Q_EMIT message(tr("PSBT saved"), "PSBT saved to disk", CClientUIInterface::MSG_INFORMATION); From e775b0a6dd8358df0e8921739faf15942027239e Mon Sep 17 00:00:00 2001 From: Anthony Towns Date: Tue, 16 Mar 2021 18:35:45 +1000 Subject: [PATCH 020/102] tests: Add fuzzing harness for versionbits Github-Pull: #21380 Rebased-From: 1639c3b76c3f2b74606f62ecd3ca725154e27f1b --- src/Makefile.test.include | 9 +- src/test/fuzz/versionbits.cpp | 345 ++++++++++++++++++++++++++++++++++ 2 files changed, 353 insertions(+), 1 deletion(-) create mode 100644 src/test/fuzz/versionbits.cpp diff --git a/src/Makefile.test.include b/src/Makefile.test.include index 9cc383c24..45f2a04cd 100644 --- a/src/Makefile.test.include +++ b/src/Makefile.test.include @@ -157,7 +157,8 @@ FUZZ_TARGETS = \ test/fuzz/txrequest \ test/fuzz/txundo_deserialize \ test/fuzz/uint160_deserialize \ - test/fuzz/uint256_deserialize + test/fuzz/uint256_deserialize \ + test/fuzz/versionbits if ENABLE_FUZZ noinst_PROGRAMS += $(FUZZ_TARGETS:=) @@ -1260,6 +1261,12 @@ test_fuzz_uint256_deserialize_LDADD = $(FUZZ_SUITE_LD_COMMON) test_fuzz_uint256_deserialize_LDFLAGS = $(FUZZ_SUITE_LDFLAGS_COMMON) test_fuzz_uint256_deserialize_SOURCES = test/fuzz/deserialize.cpp +test_fuzz_versionbits_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES) +test_fuzz_versionbits_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS) +test_fuzz_versionbits_LDADD = $(FUZZ_SUITE_LD_COMMON) +test_fuzz_versionbits_LDFLAGS = $(FUZZ_SUITE_LDFLAGS_COMMON) +test_fuzz_versionbits_SOURCES = test/fuzz/versionbits.cpp + endif # ENABLE_FUZZ nodist_test_test_bitcoin_SOURCES = $(GENERATED_TEST_FILES) diff --git a/src/test/fuzz/versionbits.cpp b/src/test/fuzz/versionbits.cpp new file mode 100644 index 000000000..992a5c132 --- /dev/null +++ b/src/test/fuzz/versionbits.cpp @@ -0,0 +1,345 @@ +// Copyright (c) 2020-2021 The Bitcoin Core developers +// Distributed under the MIT software license, see the accompanying +// file COPYING or http://www.opensource.org/licenses/mit-license.php. + +#include +#include +#include +#include +#include + +#include +#include +#include + +#include +#include +#include +#include + +namespace { +class TestConditionChecker : public AbstractThresholdConditionChecker +{ +private: + mutable ThresholdConditionCache m_cache; + const Consensus::Params dummy_params{}; + +public: + const int64_t m_begin = 0; + const int64_t m_end = 0; + const int m_period = 0; + const int m_threshold = 0; + const int m_bit = 0; + + TestConditionChecker(int64_t begin, int64_t end, int period, int threshold, int bit) + : m_begin{begin}, m_end{end}, m_period{period}, m_threshold{threshold}, m_bit{bit} + { + assert(m_period > 0); + assert(0 <= m_threshold && m_threshold <= m_period); + assert(0 <= m_bit && m_bit <= 32 && m_bit < VERSIONBITS_NUM_BITS); + } + + bool Condition(const CBlockIndex* pindex, const Consensus::Params& params) const override { return Condition(pindex->nVersion); } + int64_t BeginTime(const Consensus::Params& params) const override { return m_begin; } + int64_t EndTime(const Consensus::Params& params) const override { return m_end; } + int Period(const Consensus::Params& params) const override { return m_period; } + int Threshold(const Consensus::Params& params) const override { return m_threshold; } + + ThresholdState GetStateFor(const CBlockIndex* pindexPrev) const { return AbstractThresholdConditionChecker::GetStateFor(pindexPrev, dummy_params, m_cache); } + int GetStateSinceHeightFor(const CBlockIndex* pindexPrev) const { return AbstractThresholdConditionChecker::GetStateSinceHeightFor(pindexPrev, dummy_params, m_cache); } + BIP9Stats GetStateStatisticsFor(const CBlockIndex* pindexPrev) const { return AbstractThresholdConditionChecker::GetStateStatisticsFor(pindexPrev, dummy_params); } + + bool Condition(int64_t version) const + { + return ((version >> m_bit) & 1) != 0 && (version & VERSIONBITS_TOP_MASK) == VERSIONBITS_TOP_BITS; + } + + bool Condition(const CBlockIndex* pindex) const { return Condition(pindex->nVersion); } +}; + +/** Track blocks mined for test */ +class Blocks +{ +private: + std::vector> m_blocks; + const uint32_t m_start_time; + const uint32_t m_interval; + const int32_t m_signal; + const int32_t m_no_signal; + +public: + Blocks(uint32_t start_time, uint32_t interval, int32_t signal, int32_t no_signal) + : m_start_time{start_time}, m_interval{interval}, m_signal{signal}, m_no_signal{no_signal} {} + + size_t size() const { return m_blocks.size(); } + + CBlockIndex* tip() const + { + return m_blocks.empty() ? nullptr : m_blocks.back().get(); + } + + CBlockIndex* mine_block(bool signal) + { + CBlockHeader header; + header.nVersion = signal ? m_signal : m_no_signal; + header.nTime = m_start_time + m_blocks.size() * m_interval; + header.nBits = 0x1d00ffff; + + auto current_block = std::make_unique(header); + current_block->pprev = tip(); + current_block->nHeight = m_blocks.size(); + current_block->BuildSkip(); + + return m_blocks.emplace_back(std::move(current_block)).get(); + } +}; +} // namespace + +void initialize() +{ + SelectParams(CBaseChainParams::MAIN); +} + +constexpr uint32_t MAX_TIME = 4102444800; // 2100-01-01 + +void test_one_input(const std::vector& buffer) +{ + const CChainParams& params = Params(); + + const int64_t interval = params.GetConsensus().nPowTargetSpacing; + assert(interval > 1); // need to be able to halve it + assert(interval < std::numeric_limits::max()); + + FuzzedDataProvider fuzzed_data_provider(buffer.data(), buffer.size()); + + // making period/max_periods larger slows these tests down significantly + const int period = 32; + const size_t max_periods = 16; + const size_t max_blocks = 2 * period * max_periods; + + const int threshold = fuzzed_data_provider.ConsumeIntegralInRange(1, period); + assert(0 < threshold && threshold <= period); // must be able to both pass and fail threshold! + + // too many blocks at 10min each might cause uint32_t time to overflow if + // block_start_time is at the end of the range above + assert(std::numeric_limits::max() - MAX_TIME > interval * max_blocks); + + const int64_t block_start_time = fuzzed_data_provider.ConsumeIntegralInRange(params.GenesisBlock().nTime, MAX_TIME); + + // what values for version will we use to signal / not signal? + const int32_t ver_signal = fuzzed_data_provider.ConsumeIntegral(); + const int32_t ver_nosignal = fuzzed_data_provider.ConsumeIntegral(); + + // select deployment parameters: bit, start time, timeout + const int bit = fuzzed_data_provider.ConsumeIntegralInRange(0, VERSIONBITS_NUM_BITS - 1); + + bool always_active_test = false; + bool never_active_test = false; + int64_t start_time; + int64_t timeout; + if (fuzzed_data_provider.ConsumeBool()) { + // pick the timestamp to switch based on a block + // note states will change *after* these blocks because mediantime lags + int start_block = fuzzed_data_provider.ConsumeIntegralInRange(0, period * (max_periods - 3)); + int end_block = fuzzed_data_provider.ConsumeIntegralInRange(start_block, period * (max_periods - 3)); + + start_time = block_start_time + start_block * interval; + timeout = block_start_time + end_block * interval; + + assert(start_time <= timeout); + + // allow for times to not exactly match a block + if (fuzzed_data_provider.ConsumeBool()) start_time += interval / 2; + if (fuzzed_data_provider.ConsumeBool()) timeout += interval / 2; + + // this may make timeout too early; if so, don't run the test + if (start_time > timeout) return; + } else { + if (fuzzed_data_provider.ConsumeBool()) { + start_time = Consensus::BIP9Deployment::ALWAYS_ACTIVE; + timeout = Consensus::BIP9Deployment::NO_TIMEOUT; + always_active_test = true; + } else { + start_time = 1199145601; // January 1, 2008 + timeout = 1230767999; // December 31, 2008 + never_active_test = true; + } + } + + TestConditionChecker checker(start_time, timeout, period, threshold, bit); + + // Early exit if the versions don't signal sensibly for the deployment + if (!checker.Condition(ver_signal)) return; + if (checker.Condition(ver_nosignal)) return; + if (ver_nosignal < 0) return; + + // TOP_BITS should ensure version will be positive + assert(ver_signal > 0); + + // Now that we have chosen time and versions, setup to mine blocks + Blocks blocks(block_start_time, interval, ver_signal, ver_nosignal); + + /* Strategy: + * * we will mine a final period worth of blocks, with + * randomised signalling according to a mask + * * but before we mine those blocks, we will mine some + * randomised number of prior periods; with either all + * or no blocks in the period signalling + * + * We establish the mask first, then consume "bools" until + * we run out of fuzz data to work out how many prior periods + * there are and which ones will signal. + */ + + // establish the mask + const uint32_t signalling_mask = fuzzed_data_provider.ConsumeIntegral(); + + // mine prior periods + while (fuzzed_data_provider.remaining_bytes() > 0) { + // all blocks in these periods either do or don't signal + bool signal = fuzzed_data_provider.ConsumeBool(); + for (int b = 0; b < period; ++b) { + blocks.mine_block(signal); + } + + // don't risk exceeding max_blocks or times may wrap around + if (blocks.size() + period*2 > max_blocks) break; + } + // NOTE: fuzzed_data_provider may be fully consumed at this point and should not be used further + + // now we mine the final period and check that everything looks sane + + // count the number of signalling blocks + int blocks_sig = 0; + + // get the info for the first block of the period + CBlockIndex* prev = blocks.tip(); + const int exp_since = checker.GetStateSinceHeightFor(prev); + const ThresholdState exp_state = checker.GetStateFor(prev); + BIP9Stats last_stats = checker.GetStateStatisticsFor(prev); + + int prev_next_height = (prev == nullptr ? 0 : prev->nHeight + 1); + assert(exp_since <= prev_next_height); + + // mine (period-1) blocks and check state + for (int b = 1; b < period; ++b) { + const bool signal = (signalling_mask >> (b % 32)) & 1; + if (signal) ++blocks_sig; + + CBlockIndex* current_block = blocks.mine_block(signal); + + // verify that signalling attempt was interpreted correctly + assert(checker.Condition(current_block) == signal); + + // state and since don't change within the period + const ThresholdState state = checker.GetStateFor(current_block); + const int since = checker.GetStateSinceHeightFor(current_block); + assert(state == exp_state); + assert(since == exp_since); + + // GetStateStatistics may crash when state is not STARTED + if (state != ThresholdState::STARTED) continue; + + // check that after mining this block stats change as expected + const BIP9Stats stats = checker.GetStateStatisticsFor(current_block); + assert(stats.period == period); + assert(stats.threshold == threshold); + assert(stats.elapsed == b); + assert(stats.count == last_stats.count + (signal ? 1 : 0)); + assert(stats.possible == (stats.count + period >= stats.elapsed + threshold)); + last_stats = stats; + } + + if (exp_state == ThresholdState::STARTED) { + // double check that stats.possible is sane + if (blocks_sig >= threshold - 1) assert(last_stats.possible); + } + + // mine the final block + bool signal = (signalling_mask >> (period % 32)) & 1; + if (signal) ++blocks_sig; + CBlockIndex* current_block = blocks.mine_block(signal); + assert(checker.Condition(current_block) == signal); + + // GetStateStatistics is safe on a period boundary + // and has progressed to a new period + const BIP9Stats stats = checker.GetStateStatisticsFor(current_block); + assert(stats.period == period); + assert(stats.threshold == threshold); + assert(stats.elapsed == 0); + assert(stats.count == 0); + assert(stats.possible == true); + + // More interesting is whether the state changed. + const ThresholdState state = checker.GetStateFor(current_block); + const int since = checker.GetStateSinceHeightFor(current_block); + + // since is straightforward: + assert(since % period == 0); + assert(0 <= since && since <= current_block->nHeight + 1); + if (state == exp_state) { + assert(since == exp_since); + } else { + assert(since == current_block->nHeight + 1); + } + + // state is where everything interesting is + switch (state) { + case ThresholdState::DEFINED: + assert(since == 0); + assert(exp_state == ThresholdState::DEFINED); + assert(current_block->GetMedianTimePast() < checker.m_begin); + assert(current_block->GetMedianTimePast() < checker.m_end); + break; + case ThresholdState::STARTED: + assert(current_block->GetMedianTimePast() >= checker.m_begin); + assert(current_block->GetMedianTimePast() < checker.m_end); + if (exp_state == ThresholdState::STARTED) { + assert(blocks_sig < threshold); + } else { + assert(exp_state == ThresholdState::DEFINED); + } + break; + case ThresholdState::LOCKED_IN: + assert(exp_state == ThresholdState::STARTED); + assert(current_block->GetMedianTimePast() < checker.m_end); + assert(blocks_sig >= threshold); + break; + case ThresholdState::ACTIVE: + assert(exp_state == ThresholdState::ACTIVE || exp_state == ThresholdState::LOCKED_IN); + break; + case ThresholdState::FAILED: + assert(current_block->GetMedianTimePast() >= checker.m_end); + assert(exp_state != ThresholdState::LOCKED_IN && exp_state != ThresholdState::ACTIVE); + break; + default: + assert(false); + } + + if (blocks.size() >= max_periods * period) { + // we chose the timeout (and block times) so that by the time we have this many blocks it's all over + assert(state == ThresholdState::ACTIVE || state == ThresholdState::FAILED); + } + + // "always active" has additional restrictions + if (always_active_test) { + assert(state == ThresholdState::ACTIVE); + assert(exp_state == ThresholdState::ACTIVE); + assert(since == 0); + } else { + // except for always active, the initial state is always DEFINED + assert(since > 0 || state == ThresholdState::DEFINED); + assert(exp_since > 0 || exp_state == ThresholdState::DEFINED); + } + + // "never active" does too + if (never_active_test) { + assert(state == ThresholdState::FAILED); + assert(since == period); + if (exp_since == 0) { + assert(exp_state == ThresholdState::DEFINED); + } else { + assert(exp_state == ThresholdState::FAILED); + } + } +} From b35711efdebc4e95906b1e809e711bc707852f2d Mon Sep 17 00:00:00 2001 From: Aaron Clauson Date: Mon, 15 Mar 2021 17:18:42 +0000 Subject: [PATCH 021/102] Update vcpkg checkout commit. Previously vcpkg was relying on https://repo.msys2.org/mingw/i686/mingw-w64-i686-pkg-config-0.29.2-1-any.pkg.tar.xz which is no longer available. The vcpkg source has been updated to use http://repo.msys2.org/mingw/i686/mingw-w64-i686-pkg-config-0.29.2-2-any.pkg.tar.zst. This PR updates the commit ID used to checkout vcpkg for the updated URL. Github-Pull: #21446 Rebased-From: b9e3f3530611d5fbb799a401b839ee23e3eba835 --- .appveyor.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.appveyor.yml b/.appveyor.yml index 7250d4ad9..097874b17 100644 --- a/.appveyor.yml +++ b/.appveyor.yml @@ -10,7 +10,7 @@ environment: QT_DOWNLOAD_URL: 'https://github.com/sipsorcery/qt_win_binary/releases/download/qt598x64_vs2019_v1681/qt598_x64_vs2019_1681.zip' QT_DOWNLOAD_HASH: '00cf7327818c07d74e0b1a4464ffe987c2728b00d49d4bf333065892af0515c3' QT_LOCAL_PATH: 'C:\Qt5.9.8_x64_static_vs2019' - VCPKG_TAG: '2020.11-1' + VCPKG_TAG: '75522bb1f2e7d863078bcd06322348f053a9e33f' install: # Disable zmq test for now since python zmq library on Windows would cause Access violation sometimes. # - cmd: pip install zmq From 58975d5c0abeab8cb66f6006ee558d4bb7cc12b5 Mon Sep 17 00:00:00 2001 From: Jon Atack Date: Mon, 8 Mar 2021 00:22:57 +0100 Subject: [PATCH 022/102] doc: add signet to share/examples/bitcoin.conf Github-Pull: #21384 Rebased-From: 21b6a233734da1601846a16a741b108522901782 --- share/examples/bitcoin.conf | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/share/examples/bitcoin.conf b/share/examples/bitcoin.conf index 90a592cc6..5b7fc776a 100644 --- a/share/examples/bitcoin.conf +++ b/share/examples/bitcoin.conf @@ -4,13 +4,16 @@ # Network-related settings: -# Note that if you use testnet or regtest, particularly with the options +# Note that if you use testnet, signet or regtest, particularly with the options # addnode, connect, port, bind, rpcport, rpcbind or wallet, you will also # want to read "[Sections]" further down. -# Run on the test network instead of the real bitcoin network. +# Run on the testnet network #testnet=0 +# Run on a signet network +#signet=0 + # Run a regression test network #regtest=0 @@ -57,7 +60,7 @@ # Listening mode, enabled by default except when 'connect' is being used #listen=1 -# Port on which to listen for connections (default: 8333, testnet: 18333, regtest: 18444) +# Port on which to listen for connections (default: 8333, testnet: 18333, signet: 38333, regtest: 18444) #port= # Maximum number of inbound+outbound connections. @@ -155,7 +158,7 @@ #minimizetotray=1 # [Sections] -# Most options apply to mainnet, testnet and regtest. +# Most options apply to mainnet, testnet, signet and regtest. # If you want to confine an option to just one network, you should add it in the # relevant section below. # EXCEPTIONS: The options addnode, connect, port, bind, rpcport, rpcbind and wallet @@ -167,5 +170,8 @@ # Options only for testnet [test] +# Options only for signet +[signet] + # Options only for regtest [regtest] From 6746cd078be8a15c69f8f5ba5253b1768d0acf21 Mon Sep 17 00:00:00 2001 From: Jon Atack Date: Mon, 8 Mar 2021 00:43:53 +0100 Subject: [PATCH 023/102] doc: add signet to doc/bitcoin-conf.md Github-Pull: #21384 Rebased-From: 4a285107c11edde2cfc8adfa831c5448c93798d3 --- doc/bitcoin-conf.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/bitcoin-conf.md b/doc/bitcoin-conf.md index f4a8edec7..9a312bc33 100644 --- a/doc/bitcoin-conf.md +++ b/doc/bitcoin-conf.md @@ -27,7 +27,7 @@ Comments may appear in two ways: ### Network specific options Network specific options can be: -- placed into sections with headers `[main]` (not `[mainnet]`), `[test]` (not `[testnet]`) or `[regtest]`; +- placed into sections with headers `[main]` (not `[mainnet]`), `[test]` (not `[testnet]`), `[signet]` or `[regtest]`; - prefixed with a chain name; e.g., `regtest.maxmempool=100`. Network specific options take precedence over non-network specific options. From a48c9d31610cab3ddd4f7334e83db5cf4f184df1 Mon Sep 17 00:00:00 2001 From: practicalswift Date: Mon, 21 Dec 2020 23:19:33 +0000 Subject: [PATCH 024/102] fuzz: Update FuzzedDataProvider.h from upstream (LLVM) Upstream revision: https://github.com/llvm/llvm-project/blob/6d0488f75bb2f37bcfe93fc8f59f6e78c9a0c939/compiler-rt/include/fuzzer/FuzzedDataProvider.h Changes: * [compiler-rt] FuzzedDataProvider: add ConsumeData and method. * [compiler-rt] Fix a typo in a comment in FuzzedDataProvider.h. * [compiler-rt] Add ConsumeRandomLengthString() version without arguments. * [compiler-rt] Refactor FuzzedDataProvider for better readability. * [compiler-rt] FuzzedDataProvider: make linter happy. * [compiler-rt] Mark FDP non-template methods inline to avoid ODR violations. Github-Pull: #20740 Rebased-From: e3d2ba7c70b13a2165020e45abf02373a1e953f7 --- src/test/fuzz/FuzzedDataProvider.h | 564 +++++++++++++++++------------ 1 file changed, 323 insertions(+), 241 deletions(-) diff --git a/src/test/fuzz/FuzzedDataProvider.h b/src/test/fuzz/FuzzedDataProvider.h index 3e069eba6..83bcd0134 100644 --- a/src/test/fuzz/FuzzedDataProvider.h +++ b/src/test/fuzz/FuzzedDataProvider.h @@ -34,208 +34,47 @@ class FuzzedDataProvider { : data_ptr_(data), remaining_bytes_(size) {} ~FuzzedDataProvider() = default; - // Returns a std::vector containing |num_bytes| of input data. If fewer than - // |num_bytes| of data remain, returns a shorter std::vector containing all - // of the data that's left. Can be used with any byte sized type, such as - // char, unsigned char, uint8_t, etc. - template std::vector ConsumeBytes(size_t num_bytes) { - num_bytes = std::min(num_bytes, remaining_bytes_); - return ConsumeBytes(num_bytes, num_bytes); - } + // See the implementation below (after the class definition) for more verbose + // comments for each of the methods. - // Similar to |ConsumeBytes|, but also appends the terminator value at the end - // of the resulting vector. Useful, when a mutable null-terminated C-string is - // needed, for example. But that is a rare case. Better avoid it, if possible, - // and prefer using |ConsumeBytes| or |ConsumeBytesAsString| methods. + // Methods returning std::vector of bytes. These are the most popular choice + // when splitting fuzzing input into pieces, as every piece is put into a + // separate buffer (i.e. ASan would catch any under-/overflow) and the memory + // will be released automatically. + template std::vector ConsumeBytes(size_t num_bytes); template - std::vector ConsumeBytesWithTerminator(size_t num_bytes, - T terminator = 0) { - num_bytes = std::min(num_bytes, remaining_bytes_); - std::vector result = ConsumeBytes(num_bytes + 1, num_bytes); - result.back() = terminator; - return result; - } + std::vector ConsumeBytesWithTerminator(size_t num_bytes, T terminator = 0); + template std::vector ConsumeRemainingBytes(); - // Returns a std::string containing |num_bytes| of input data. Using this and - // |.c_str()| on the resulting string is the best way to get an immutable - // null-terminated C string. If fewer than |num_bytes| of data remain, returns - // a shorter std::string containing all of the data that's left. - std::string ConsumeBytesAsString(size_t num_bytes) { - static_assert(sizeof(std::string::value_type) == sizeof(uint8_t), - "ConsumeBytesAsString cannot convert the data to a string."); + // Methods returning strings. Use only when you need a std::string or a null + // terminated C-string. Otherwise, prefer the methods returning std::vector. + std::string ConsumeBytesAsString(size_t num_bytes); + std::string ConsumeRandomLengthString(size_t max_length); + std::string ConsumeRandomLengthString(); + std::string ConsumeRemainingBytesAsString(); - num_bytes = std::min(num_bytes, remaining_bytes_); - std::string result( - reinterpret_cast(data_ptr_), - num_bytes); - Advance(num_bytes); - return result; - } + // Methods returning integer values. + template T ConsumeIntegral(); + template T ConsumeIntegralInRange(T min, T max); - // Returns a number in the range [min, max] by consuming bytes from the - // input data. The value might not be uniformly distributed in the given - // range. If there's no input data left, always returns |min|. |min| must - // be less than or equal to |max|. - template T ConsumeIntegralInRange(T min, T max) { - static_assert(std::is_integral::value, "An integral type is required."); - static_assert(sizeof(T) <= sizeof(uint64_t), "Unsupported integral type."); + // Methods returning floating point values. + template T ConsumeFloatingPoint(); + template T ConsumeFloatingPointInRange(T min, T max); - if (min > max) - abort(); + // 0 <= return value <= 1. + template T ConsumeProbability(); - // Use the biggest type possible to hold the range and the result. - uint64_t range = static_cast(max) - min; - uint64_t result = 0; - size_t offset = 0; + bool ConsumeBool(); - while (offset < sizeof(T) * CHAR_BIT && (range >> offset) > 0 && - remaining_bytes_ != 0) { - // Pull bytes off the end of the seed data. Experimentally, this seems to - // allow the fuzzer to more easily explore the input space. This makes - // sense, since it works by modifying inputs that caused new code to run, - // and this data is often used to encode length of data read by - // |ConsumeBytes|. Separating out read lengths makes it easier modify the - // contents of the data that is actually read. - --remaining_bytes_; - result = (result << CHAR_BIT) | data_ptr_[remaining_bytes_]; - offset += CHAR_BIT; - } + // Returns a value chosen from the given enum. + template T ConsumeEnum(); - // Avoid division by 0, in case |range + 1| results in overflow. - if (range != std::numeric_limits::max()) - result = result % (range + 1); + // Returns a value from the given array. + template T PickValueInArray(const T (&array)[size]); + template T PickValueInArray(std::initializer_list list); - return static_cast(min + result); - } - - // Returns a std::string of length from 0 to |max_length|. When it runs out of - // input data, returns what remains of the input. Designed to be more stable - // with respect to a fuzzer inserting characters than just picking a random - // length and then consuming that many bytes with |ConsumeBytes|. - std::string ConsumeRandomLengthString(size_t max_length) { - // Reads bytes from the start of |data_ptr_|. Maps "\\" to "\", and maps "\" - // followed by anything else to the end of the string. As a result of this - // logic, a fuzzer can insert characters into the string, and the string - // will be lengthened to include those new characters, resulting in a more - // stable fuzzer than picking the length of a string independently from - // picking its contents. - std::string result; - - // Reserve the anticipated capaticity to prevent several reallocations. - result.reserve(std::min(max_length, remaining_bytes_)); - for (size_t i = 0; i < max_length && remaining_bytes_ != 0; ++i) { - char next = ConvertUnsignedToSigned(data_ptr_[0]); - Advance(1); - if (next == '\\' && remaining_bytes_ != 0) { - next = ConvertUnsignedToSigned(data_ptr_[0]); - Advance(1); - if (next != '\\') - break; - } - result += next; - } - - result.shrink_to_fit(); - return result; - } - - // Returns a std::vector containing all remaining bytes of the input data. - template std::vector ConsumeRemainingBytes() { - return ConsumeBytes(remaining_bytes_); - } - - // Returns a std::string containing all remaining bytes of the input data. - // Prefer using |ConsumeRemainingBytes| unless you actually need a std::string - // object. - std::string ConsumeRemainingBytesAsString() { - return ConsumeBytesAsString(remaining_bytes_); - } - - // Returns a number in the range [Type's min, Type's max]. The value might - // not be uniformly distributed in the given range. If there's no input data - // left, always returns |min|. - template T ConsumeIntegral() { - return ConsumeIntegralInRange(std::numeric_limits::min(), - std::numeric_limits::max()); - } - - // Reads one byte and returns a bool, or false when no data remains. - bool ConsumeBool() { return 1 & ConsumeIntegral(); } - - // Returns a copy of the value selected from the given fixed-size |array|. - template - T PickValueInArray(const T (&array)[size]) { - static_assert(size > 0, "The array must be non empty."); - return array[ConsumeIntegralInRange(0, size - 1)]; - } - - template - T PickValueInArray(std::initializer_list list) { - // TODO(Dor1s): switch to static_assert once C++14 is allowed. - if (!list.size()) - abort(); - - return *(list.begin() + ConsumeIntegralInRange(0, list.size() - 1)); - } - - // Returns an enum value. The enum must start at 0 and be contiguous. It must - // also contain |kMaxValue| aliased to its largest (inclusive) value. Such as: - // enum class Foo { SomeValue, OtherValue, kMaxValue = OtherValue }; - template T ConsumeEnum() { - static_assert(std::is_enum::value, "|T| must be an enum type."); - return static_cast(ConsumeIntegralInRange( - 0, static_cast(T::kMaxValue))); - } - - // Returns a floating point number in the range [0.0, 1.0]. If there's no - // input data left, always returns 0. - template T ConsumeProbability() { - static_assert(std::is_floating_point::value, - "A floating point type is required."); - - // Use different integral types for different floating point types in order - // to provide better density of the resulting values. - using IntegralType = - typename std::conditional<(sizeof(T) <= sizeof(uint32_t)), uint32_t, - uint64_t>::type; - - T result = static_cast(ConsumeIntegral()); - result /= static_cast(std::numeric_limits::max()); - return result; - } - - // Returns a floating point value in the range [Type's lowest, Type's max] by - // consuming bytes from the input data. If there's no input data left, always - // returns approximately 0. - template T ConsumeFloatingPoint() { - return ConsumeFloatingPointInRange(std::numeric_limits::lowest(), - std::numeric_limits::max()); - } - - // Returns a floating point value in the given range by consuming bytes from - // the input data. If there's no input data left, returns |min|. Note that - // |min| must be less than or equal to |max|. - template T ConsumeFloatingPointInRange(T min, T max) { - if (min > max) - abort(); - - T range = .0; - T result = min; - constexpr T zero(.0); - if (max > zero && min < zero && max > min + std::numeric_limits::max()) { - // The diff |max - min| would overflow the given floating point type. Use - // the half of the diff as the range and consume a bool to decide whether - // the result is in the first of the second part of the diff. - range = (max / 2.0) - (min / 2.0); - if (ConsumeBool()) { - result += range; - } - } else { - range = max - min; - } - - return result + range * ConsumeProbability(); - } + // Writes data to the given destination and returns number of bytes written. + size_t ConsumeData(void *destination, size_t num_bytes); // Reports the remaining bytes available for fuzzed input. size_t remaining_bytes() { return remaining_bytes_; } @@ -244,62 +83,305 @@ class FuzzedDataProvider { FuzzedDataProvider(const FuzzedDataProvider &) = delete; FuzzedDataProvider &operator=(const FuzzedDataProvider &) = delete; - void Advance(size_t num_bytes) { - if (num_bytes > remaining_bytes_) - abort(); + void CopyAndAdvance(void *destination, size_t num_bytes); - data_ptr_ += num_bytes; - remaining_bytes_ -= num_bytes; - } + void Advance(size_t num_bytes); template - std::vector ConsumeBytes(size_t size, size_t num_bytes_to_consume) { - static_assert(sizeof(T) == sizeof(uint8_t), "Incompatible data type."); + std::vector ConsumeBytes(size_t size, size_t num_bytes); - // The point of using the size-based constructor below is to increase the - // odds of having a vector object with capacity being equal to the length. - // That part is always implementation specific, but at least both libc++ and - // libstdc++ allocate the requested number of bytes in that constructor, - // which seems to be a natural choice for other implementations as well. - // To increase the odds even more, we also call |shrink_to_fit| below. - std::vector result(size); - if (size == 0) { - if (num_bytes_to_consume != 0) - abort(); - return result; - } - - std::memcpy(result.data(), data_ptr_, num_bytes_to_consume); - Advance(num_bytes_to_consume); - - // Even though |shrink_to_fit| is also implementation specific, we expect it - // to provide an additional assurance in case vector's constructor allocated - // a buffer which is larger than the actual amount of data we put inside it. - result.shrink_to_fit(); - return result; - } - - template TS ConvertUnsignedToSigned(TU value) { - static_assert(sizeof(TS) == sizeof(TU), "Incompatible data types."); - static_assert(!std::numeric_limits::is_signed, - "Source type must be unsigned."); - - // TODO(Dor1s): change to `if constexpr` once C++17 becomes mainstream. - if (std::numeric_limits::is_modulo) - return static_cast(value); - - // Avoid using implementation-defined unsigned to signer conversions. - // To learn more, see https://stackoverflow.com/questions/13150449. - if (value <= std::numeric_limits::max()) { - return static_cast(value); - } else { - constexpr auto TS_min = std::numeric_limits::min(); - return TS_min + static_cast(value - TS_min); - } - } + template TS ConvertUnsignedToSigned(TU value); const uint8_t *data_ptr_; size_t remaining_bytes_; }; +// Returns a std::vector containing |num_bytes| of input data. If fewer than +// |num_bytes| of data remain, returns a shorter std::vector containing all +// of the data that's left. Can be used with any byte sized type, such as +// char, unsigned char, uint8_t, etc. +template +std::vector FuzzedDataProvider::ConsumeBytes(size_t num_bytes) { + num_bytes = std::min(num_bytes, remaining_bytes_); + return ConsumeBytes(num_bytes, num_bytes); +} + +// Similar to |ConsumeBytes|, but also appends the terminator value at the end +// of the resulting vector. Useful, when a mutable null-terminated C-string is +// needed, for example. But that is a rare case. Better avoid it, if possible, +// and prefer using |ConsumeBytes| or |ConsumeBytesAsString| methods. +template +std::vector FuzzedDataProvider::ConsumeBytesWithTerminator(size_t num_bytes, + T terminator) { + num_bytes = std::min(num_bytes, remaining_bytes_); + std::vector result = ConsumeBytes(num_bytes + 1, num_bytes); + result.back() = terminator; + return result; +} + +// Returns a std::vector containing all remaining bytes of the input data. +template +std::vector FuzzedDataProvider::ConsumeRemainingBytes() { + return ConsumeBytes(remaining_bytes_); +} + +// Returns a std::string containing |num_bytes| of input data. Using this and +// |.c_str()| on the resulting string is the best way to get an immutable +// null-terminated C string. If fewer than |num_bytes| of data remain, returns +// a shorter std::string containing all of the data that's left. +inline std::string FuzzedDataProvider::ConsumeBytesAsString(size_t num_bytes) { + static_assert(sizeof(std::string::value_type) == sizeof(uint8_t), + "ConsumeBytesAsString cannot convert the data to a string."); + + num_bytes = std::min(num_bytes, remaining_bytes_); + std::string result( + reinterpret_cast(data_ptr_), num_bytes); + Advance(num_bytes); + return result; +} + +// Returns a std::string of length from 0 to |max_length|. When it runs out of +// input data, returns what remains of the input. Designed to be more stable +// with respect to a fuzzer inserting characters than just picking a random +// length and then consuming that many bytes with |ConsumeBytes|. +inline std::string +FuzzedDataProvider::ConsumeRandomLengthString(size_t max_length) { + // Reads bytes from the start of |data_ptr_|. Maps "\\" to "\", and maps "\" + // followed by anything else to the end of the string. As a result of this + // logic, a fuzzer can insert characters into the string, and the string + // will be lengthened to include those new characters, resulting in a more + // stable fuzzer than picking the length of a string independently from + // picking its contents. + std::string result; + + // Reserve the anticipated capaticity to prevent several reallocations. + result.reserve(std::min(max_length, remaining_bytes_)); + for (size_t i = 0; i < max_length && remaining_bytes_ != 0; ++i) { + char next = ConvertUnsignedToSigned(data_ptr_[0]); + Advance(1); + if (next == '\\' && remaining_bytes_ != 0) { + next = ConvertUnsignedToSigned(data_ptr_[0]); + Advance(1); + if (next != '\\') + break; + } + result += next; + } + + result.shrink_to_fit(); + return result; +} + +// Returns a std::string of length from 0 to |remaining_bytes_|. +inline std::string FuzzedDataProvider::ConsumeRandomLengthString() { + return ConsumeRandomLengthString(remaining_bytes_); +} + +// Returns a std::string containing all remaining bytes of the input data. +// Prefer using |ConsumeRemainingBytes| unless you actually need a std::string +// object. +inline std::string FuzzedDataProvider::ConsumeRemainingBytesAsString() { + return ConsumeBytesAsString(remaining_bytes_); +} + +// Returns a number in the range [Type's min, Type's max]. The value might +// not be uniformly distributed in the given range. If there's no input data +// left, always returns |min|. +template T FuzzedDataProvider::ConsumeIntegral() { + return ConsumeIntegralInRange(std::numeric_limits::min(), + std::numeric_limits::max()); +} + +// Returns a number in the range [min, max] by consuming bytes from the +// input data. The value might not be uniformly distributed in the given +// range. If there's no input data left, always returns |min|. |min| must +// be less than or equal to |max|. +template +T FuzzedDataProvider::ConsumeIntegralInRange(T min, T max) { + static_assert(std::is_integral::value, "An integral type is required."); + static_assert(sizeof(T) <= sizeof(uint64_t), "Unsupported integral type."); + + if (min > max) + abort(); + + // Use the biggest type possible to hold the range and the result. + uint64_t range = static_cast(max) - min; + uint64_t result = 0; + size_t offset = 0; + + while (offset < sizeof(T) * CHAR_BIT && (range >> offset) > 0 && + remaining_bytes_ != 0) { + // Pull bytes off the end of the seed data. Experimentally, this seems to + // allow the fuzzer to more easily explore the input space. This makes + // sense, since it works by modifying inputs that caused new code to run, + // and this data is often used to encode length of data read by + // |ConsumeBytes|. Separating out read lengths makes it easier modify the + // contents of the data that is actually read. + --remaining_bytes_; + result = (result << CHAR_BIT) | data_ptr_[remaining_bytes_]; + offset += CHAR_BIT; + } + + // Avoid division by 0, in case |range + 1| results in overflow. + if (range != std::numeric_limits::max()) + result = result % (range + 1); + + return static_cast(min + result); +} + +// Returns a floating point value in the range [Type's lowest, Type's max] by +// consuming bytes from the input data. If there's no input data left, always +// returns approximately 0. +template T FuzzedDataProvider::ConsumeFloatingPoint() { + return ConsumeFloatingPointInRange(std::numeric_limits::lowest(), + std::numeric_limits::max()); +} + +// Returns a floating point value in the given range by consuming bytes from +// the input data. If there's no input data left, returns |min|. Note that +// |min| must be less than or equal to |max|. +template +T FuzzedDataProvider::ConsumeFloatingPointInRange(T min, T max) { + if (min > max) + abort(); + + T range = .0; + T result = min; + constexpr T zero(.0); + if (max > zero && min < zero && max > min + std::numeric_limits::max()) { + // The diff |max - min| would overflow the given floating point type. Use + // the half of the diff as the range and consume a bool to decide whether + // the result is in the first of the second part of the diff. + range = (max / 2.0) - (min / 2.0); + if (ConsumeBool()) { + result += range; + } + } else { + range = max - min; + } + + return result + range * ConsumeProbability(); +} + +// Returns a floating point number in the range [0.0, 1.0]. If there's no +// input data left, always returns 0. +template T FuzzedDataProvider::ConsumeProbability() { + static_assert(std::is_floating_point::value, + "A floating point type is required."); + + // Use different integral types for different floating point types in order + // to provide better density of the resulting values. + using IntegralType = + typename std::conditional<(sizeof(T) <= sizeof(uint32_t)), uint32_t, + uint64_t>::type; + + T result = static_cast(ConsumeIntegral()); + result /= static_cast(std::numeric_limits::max()); + return result; +} + +// Reads one byte and returns a bool, or false when no data remains. +inline bool FuzzedDataProvider::ConsumeBool() { + return 1 & ConsumeIntegral(); +} + +// Returns an enum value. The enum must start at 0 and be contiguous. It must +// also contain |kMaxValue| aliased to its largest (inclusive) value. Such as: +// enum class Foo { SomeValue, OtherValue, kMaxValue = OtherValue }; +template T FuzzedDataProvider::ConsumeEnum() { + static_assert(std::is_enum::value, "|T| must be an enum type."); + return static_cast( + ConsumeIntegralInRange(0, static_cast(T::kMaxValue))); +} + +// Returns a copy of the value selected from the given fixed-size |array|. +template +T FuzzedDataProvider::PickValueInArray(const T (&array)[size]) { + static_assert(size > 0, "The array must be non empty."); + return array[ConsumeIntegralInRange(0, size - 1)]; +} + +template +T FuzzedDataProvider::PickValueInArray(std::initializer_list list) { + // TODO(Dor1s): switch to static_assert once C++14 is allowed. + if (!list.size()) + abort(); + + return *(list.begin() + ConsumeIntegralInRange(0, list.size() - 1)); +} + +// Writes |num_bytes| of input data to the given destination pointer. If there +// is not enough data left, writes all remaining bytes. Return value is the +// number of bytes written. +// In general, it's better to avoid using this function, but it may be useful +// in cases when it's necessary to fill a certain buffer or object with +// fuzzing data. +inline size_t FuzzedDataProvider::ConsumeData(void *destination, + size_t num_bytes) { + num_bytes = std::min(num_bytes, remaining_bytes_); + CopyAndAdvance(destination, num_bytes); + return num_bytes; +} + +// Private methods. +inline void FuzzedDataProvider::CopyAndAdvance(void *destination, + size_t num_bytes) { + std::memcpy(destination, data_ptr_, num_bytes); + Advance(num_bytes); +} + +inline void FuzzedDataProvider::Advance(size_t num_bytes) { + if (num_bytes > remaining_bytes_) + abort(); + + data_ptr_ += num_bytes; + remaining_bytes_ -= num_bytes; +} + +template +std::vector FuzzedDataProvider::ConsumeBytes(size_t size, size_t num_bytes) { + static_assert(sizeof(T) == sizeof(uint8_t), "Incompatible data type."); + + // The point of using the size-based constructor below is to increase the + // odds of having a vector object with capacity being equal to the length. + // That part is always implementation specific, but at least both libc++ and + // libstdc++ allocate the requested number of bytes in that constructor, + // which seems to be a natural choice for other implementations as well. + // To increase the odds even more, we also call |shrink_to_fit| below. + std::vector result(size); + if (size == 0) { + if (num_bytes != 0) + abort(); + return result; + } + + CopyAndAdvance(result.data(), num_bytes); + + // Even though |shrink_to_fit| is also implementation specific, we expect it + // to provide an additional assurance in case vector's constructor allocated + // a buffer which is larger than the actual amount of data we put inside it. + result.shrink_to_fit(); + return result; +} + +template +TS FuzzedDataProvider::ConvertUnsignedToSigned(TU value) { + static_assert(sizeof(TS) == sizeof(TU), "Incompatible data types."); + static_assert(!std::numeric_limits::is_signed, + "Source type must be unsigned."); + + // TODO(Dor1s): change to `if constexpr` once C++17 becomes mainstream. + if (std::numeric_limits::is_modulo) + return static_cast(value); + + // Avoid using implementation-defined unsigned to signed conversions. + // To learn more, see https://stackoverflow.com/questions/13150449. + if (value <= std::numeric_limits::max()) { + return static_cast(value); + } else { + constexpr auto TS_min = std::numeric_limits::min(); + return TS_min + static_cast(value - TS_min); + } +} + #endif // LLVM_FUZZER_FUZZED_DATA_PROVIDER_H_ From 14e3f2a1c916fccf375a6570e58072c4d007fc3c Mon Sep 17 00:00:00 2001 From: MarcoFalke Date: Thu, 31 Dec 2020 08:50:08 +0100 Subject: [PATCH 025/102] fuzz: Bump FuzzedDataProvider.h Latest version from https://raw.githubusercontent.com/llvm/llvm-project/70de7e0d9a95b7fcd7c105b06bd90fdf4e01f563/compiler-rt/include/fuzzer/FuzzedDataProvider.h Github-Pull: #20812 Rebased-From: fafce49336e18033b26948886bbd7342c779b246 --- src/test/fuzz/FuzzedDataProvider.h | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/test/fuzz/FuzzedDataProvider.h b/src/test/fuzz/FuzzedDataProvider.h index 83bcd0134..744a9d78c 100644 --- a/src/test/fuzz/FuzzedDataProvider.h +++ b/src/test/fuzz/FuzzedDataProvider.h @@ -14,6 +14,7 @@ #define LLVM_FUZZER_FUZZED_DATA_PROVIDER_H_ #include +#include #include #include #include @@ -71,6 +72,8 @@ class FuzzedDataProvider { // Returns a value from the given array. template T PickValueInArray(const T (&array)[size]); + template + T PickValueInArray(const std::array &array); template T PickValueInArray(std::initializer_list list); // Writes data to the given destination and returns number of bytes written. @@ -301,6 +304,12 @@ T FuzzedDataProvider::PickValueInArray(const T (&array)[size]) { return array[ConsumeIntegralInRange(0, size - 1)]; } +template +T FuzzedDataProvider::PickValueInArray(const std::array &array) { + static_assert(size > 0, "The array must be non empty."); + return array[ConsumeIntegralInRange(0, size - 1)]; +} + template T FuzzedDataProvider::PickValueInArray(std::initializer_list list) { // TODO(Dor1s): switch to static_assert once C++14 is allowed. From 8426e3a8a1aad2e1ea794158ffb9a587f476d8d3 Mon Sep 17 00:00:00 2001 From: MarcoFalke Date: Tue, 9 Mar 2021 13:06:14 +0100 Subject: [PATCH 026/102] fuzz: Bump FuzzedDataProvider.h Latest version from https://github.com/llvm/llvm-project/blob/0cccccf0d2cbd707503263785f9a0407d3e2bd5e/compiler-rt/include/fuzzer/FuzzedDataProvider.h Github-Pull: #21397 Rebased-From: fa7dc7ae9595ea49a2b31a3baef9af674d8def60 --- src/test/fuzz/FuzzedDataProvider.h | 1 + 1 file changed, 1 insertion(+) diff --git a/src/test/fuzz/FuzzedDataProvider.h b/src/test/fuzz/FuzzedDataProvider.h index 744a9d78c..6cbfc39bc 100644 --- a/src/test/fuzz/FuzzedDataProvider.h +++ b/src/test/fuzz/FuzzedDataProvider.h @@ -20,6 +20,7 @@ #include #include #include +#include #include #include #include From 5a2d98c640cf308d3c7e85ba51fbb7e84f99322a Mon Sep 17 00:00:00 2001 From: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com> Date: Tue, 2 Mar 2021 22:14:18 +0200 Subject: [PATCH 027/102] doc: Remove outdated comment The removed commit is wrong since v0.21.0. Github-Pull: #21342 Rebased-From: f1f63ac3f833e14badac6edf88ed09d0161e18f7 --- doc/build-windows.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/build-windows.md b/doc/build-windows.md index 28b6aceb3..d1b84eef4 100644 --- a/doc/build-windows.md +++ b/doc/build-windows.md @@ -103,7 +103,7 @@ Build using: cd depends make HOST=x86_64-w64-mingw32 cd .. - ./autogen.sh # not required when building from tarball + ./autogen.sh CONFIG_SITE=$PWD/depends/x86_64-w64-mingw32/share/config.site ./configure --prefix=/ make sudo bash -c "echo 1 > /proc/sys/fs/binfmt_misc/status" # Enable WSL support for Win32 applications. From 48fc675163a657e615fd4b2680fc3accba12f95d Mon Sep 17 00:00:00 2001 From: Andrew Chow Date: Thu, 4 Feb 2021 18:21:26 -0500 Subject: [PATCH 028/102] wallet: Use existing feerate instead of getting a new one During each loop of CreateTransaction, instead of constantly getting a new feerate, use the feerate that we have already fetched for all fee calculations. Thix fixes a race condition where the feerate required changes during each iteration of the loop. This commit changes behavior as the "Fee estimation failed" error will now take priority over "Signing transaction failed". Github-Pull: #21083 Rebased-From: 1a6a0b0dfb90f9ebd4b86d7934c6aa5594974f5f --- src/wallet/wallet.cpp | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/src/wallet/wallet.cpp b/src/wallet/wallet.cpp index ff8bfff87..12947ea01 100644 --- a/src/wallet/wallet.cpp +++ b/src/wallet/wallet.cpp @@ -2821,6 +2821,11 @@ bool CWallet::CreateTransactionInternal( error = strprintf(_("Fee rate (%s) is lower than the minimum fee rate setting (%s)"), coin_control.m_feerate->ToString(FeeEstimateMode::SAT_VB), nFeeRateNeeded.ToString(FeeEstimateMode::SAT_VB)); return false; } + if (feeCalc.reason == FeeReason::FALLBACK && !m_allow_fallback_fee) { + // eventually allow a fallback fee + error = _("Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable -fallbackfee."); + return false; + } nFeeRet = 0; bool pick_new_inputs = true; @@ -2958,13 +2963,7 @@ bool CWallet::CreateTransactionInternal( return false; } - nFeeNeeded = GetMinimumFee(*this, nBytes, coin_control, &feeCalc); - if (feeCalc.reason == FeeReason::FALLBACK && !m_allow_fallback_fee) { - // eventually allow a fallback fee - error = _("Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable -fallbackfee."); - return false; - } - + nFeeNeeded = coin_selection_params.effective_fee.GetFee(nBytes); if (nFeeRet >= nFeeNeeded) { // Reduce fee to only the needed amount if possible. This // prevents potential overpayment in fees if the coins @@ -2978,7 +2977,7 @@ bool CWallet::CreateTransactionInternal( // change output. Only try this once. if (nChangePosInOut == -1 && nSubtractFeeFromAmount == 0 && pick_new_inputs) { unsigned int tx_size_with_change = nBytes + coin_selection_params.change_output_size + 2; // Add 2 as a buffer in case increasing # of outputs changes compact size - CAmount fee_needed_with_change = GetMinimumFee(*this, tx_size_with_change, coin_control, nullptr); + CAmount fee_needed_with_change = coin_selection_params.effective_fee.GetFee(tx_size_with_change); CAmount minimum_value_for_change = GetDustThreshold(change_prototype_txout, discard_rate); if (nFeeRet >= fee_needed_with_change + minimum_value_for_change) { pick_new_inputs = false; From 34c89f92f34b5ca12da95d5f0b0240682c5a1c1f Mon Sep 17 00:00:00 2001 From: Andrew Chow Date: Thu, 4 Feb 2021 18:23:51 -0500 Subject: [PATCH 029/102] wallet: Replace nFeeRateNeeded with effective_fee Make sure that all fee calculations use the same feerate. coin_selection_params.effective_fee is the variable we use for all fee calculations, so get rid of remaining nFeeRateNeeded usages and just directly set coin_selection_params.effective_fee. Does not change behavior. Github-Pull: #21083 Rebased-From: e2f429e6bbf7098f278c0247b954ecd3ba53cf37 --- src/wallet/wallet.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/wallet/wallet.cpp b/src/wallet/wallet.cpp index 12947ea01..3e1d80400 100644 --- a/src/wallet/wallet.cpp +++ b/src/wallet/wallet.cpp @@ -2814,11 +2814,11 @@ bool CWallet::CreateTransactionInternal( CFeeRate discard_rate = GetDiscardRate(*this); // Get the fee rate to use effective values in coin selection - CFeeRate nFeeRateNeeded = GetMinimumFeeRate(*this, coin_control, &feeCalc); + coin_selection_params.effective_fee = GetMinimumFeeRate(*this, coin_control, &feeCalc); // Do not, ever, assume that it's fine to change the fee rate if the user has explicitly // provided one - if (coin_control.m_feerate && nFeeRateNeeded > *coin_control.m_feerate) { - error = strprintf(_("Fee rate (%s) is lower than the minimum fee rate setting (%s)"), coin_control.m_feerate->ToString(FeeEstimateMode::SAT_VB), nFeeRateNeeded.ToString(FeeEstimateMode::SAT_VB)); + if (coin_control.m_feerate && coin_selection_params.effective_fee > *coin_control.m_feerate) { + error = strprintf(_("Fee rate (%s) is lower than the minimum fee rate setting (%s)"), coin_control.m_feerate->ToString(FeeEstimateMode::SAT_VB), coin_selection_params.effective_fee.ToString(FeeEstimateMode::SAT_VB)); return false; } if (feeCalc.reason == FeeReason::FALLBACK && !m_allow_fallback_fee) { @@ -2900,7 +2900,6 @@ bool CWallet::CreateTransactionInternal( } else { coin_selection_params.change_spend_size = (size_t)change_spend_size; } - coin_selection_params.effective_fee = nFeeRateNeeded; if (!SelectCoins(vAvailableCoins, nValueToSelect, setCoins, nValueIn, coin_control, coin_selection_params, bnb_used)) { // If BnB was used, it was the first pass. No longer the first pass and continue loop with knapsack. From bcd716670ba8a189a2e9b8b035318abceb9ce631 Mon Sep 17 00:00:00 2001 From: Andrew Chow Date: Thu, 4 Feb 2021 18:28:45 -0500 Subject: [PATCH 030/102] wallet: Move long term feerate setting to CreateTransaction Instead of setting the long term feerate for each SelectCoinsMinConf iteration, set it once during CreateTransaction and let it be shared with each SelectCoinsMinConf through coin_selection_params.m_long_term_feerate. Does not change behavior. Github-Pull: #21083 Rebased-From: 448d04b931f86941903e855f831249ff5ec77485 --- src/bench/coin_selection.cpp | 5 ++++- src/wallet/test/coinselector_tests.cpp | 20 ++++++++++++++++---- src/wallet/wallet.cpp | 15 +++++++-------- src/wallet/wallet.h | 11 ++++++++++- 4 files changed, 37 insertions(+), 14 deletions(-) diff --git a/src/bench/coin_selection.cpp b/src/bench/coin_selection.cpp index 99aafd8df..1ef89a41d 100644 --- a/src/bench/coin_selection.cpp +++ b/src/bench/coin_selection.cpp @@ -50,7 +50,10 @@ static void CoinSelection(benchmark::Bench& bench) } const CoinEligibilityFilter filter_standard(1, 6, 0); - const CoinSelectionParams coin_selection_params(true, 34, 148, CFeeRate(0), 0); + const CoinSelectionParams coin_selection_params(/* use_bnb= */ true, /* change_output_size= */ 34, + /* change_spend_size= */ 148, /* effective_fee= */ CFeeRate(0), + /* long_term_feerate= */ CFeeRate(0), + /* tx_no_inputs_size= */ 0); bench.run([&] { std::set setCoinsRet; CAmount nValueRet; diff --git a/src/wallet/test/coinselector_tests.cpp b/src/wallet/test/coinselector_tests.cpp index f38ccba38..f375ce02a 100644 --- a/src/wallet/test/coinselector_tests.cpp +++ b/src/wallet/test/coinselector_tests.cpp @@ -35,7 +35,10 @@ static CAmount balance = 0; CoinEligibilityFilter filter_standard(1, 6, 0); CoinEligibilityFilter filter_confirmed(1, 1, 0); CoinEligibilityFilter filter_standard_extra(6, 6, 0); -CoinSelectionParams coin_selection_params(false, 0, 0, CFeeRate(0), 0); +CoinSelectionParams coin_selection_params(/* use_bnb= */ false, /* change_output_size= */ 0, + /* change_spend_size= */ 0, /* effective_fee= */ CFeeRate(0), + /* long_term_feerate= */ CFeeRate(0), + /* tx_no_inputs_size= */ 0); static void add_coin(const CAmount& nValue, int nInput, std::vector& set) { @@ -262,7 +265,10 @@ BOOST_AUTO_TEST_CASE(bnb_search_test) } // Make sure that effective value is working in SelectCoinsMinConf when BnB is used - CoinSelectionParams coin_selection_params_bnb(true, 0, 0, CFeeRate(3000), 0); + CoinSelectionParams coin_selection_params_bnb(/* use_bnb= */ true, /* change_output_size= */ 0, + /* change_spend_size= */ 0, /* effective_fee= */ CFeeRate(3000), + /* long_term_feerate= */ CFeeRate(1000), + /* tx_no_inputs_size= */ 0); CoinSet setCoinsRet; CAmount nValueRet; bool bnb_used; @@ -632,8 +638,14 @@ BOOST_AUTO_TEST_CASE(SelectCoins_test) CAmount target = rand.randrange(balance - 1000) + 1000; // Perform selection - CoinSelectionParams coin_selection_params_knapsack(false, 34, 148, CFeeRate(0), 0); - CoinSelectionParams coin_selection_params_bnb(true, 34, 148, CFeeRate(0), 0); + CoinSelectionParams coin_selection_params_knapsack(/* use_bnb= */ false, /* change_output_size= */ 34, + /* change_spend_size= */ 148, /* effective_fee= */ CFeeRate(0), + /* long_term_feerate= */ CFeeRate(0), + /* tx_no_inputs_size= */ 0); + CoinSelectionParams coin_selection_params_bnb(/* use_bnb= */ true, /* change_output_size= */ 34, + /* change_spend_size= */ 148, /* effective_fee= */ CFeeRate(0), + /* long_term_feerate= */ CFeeRate(0), + /* tx_no_inputs_size= */ 0); CoinSet out_set; CAmount out_value = 0; bool bnb_used = false; diff --git a/src/wallet/wallet.cpp b/src/wallet/wallet.cpp index 3e1d80400..b1951c0c3 100644 --- a/src/wallet/wallet.cpp +++ b/src/wallet/wallet.cpp @@ -2362,12 +2362,6 @@ bool CWallet::SelectCoinsMinConf(const CAmount& nTargetValue, const CoinEligibil std::vector utxo_pool; if (coin_selection_params.use_bnb) { - // Get long term estimate - FeeCalculation feeCalc; - CCoinControl temp; - temp.m_confirm_target = 1008; - CFeeRate long_term_feerate = GetMinimumFeeRate(*this, temp, &feeCalc); - // Calculate cost of change CAmount cost_of_change = GetDiscardRate(*this).GetFee(coin_selection_params.change_spend_size) + coin_selection_params.effective_fee.GetFee(coin_selection_params.change_output_size); @@ -2377,9 +2371,9 @@ bool CWallet::SelectCoinsMinConf(const CAmount& nTargetValue, const CoinEligibil if (coin_selection_params.m_subtract_fee_outputs) { // Set the effective feerate to 0 as we don't want to use the effective value since the fees will be deducted from the output - group.SetFees(CFeeRate(0) /* effective_feerate */, long_term_feerate); + group.SetFees(CFeeRate(0) /* effective_feerate */, coin_selection_params.m_long_term_feerate); } else { - group.SetFees(coin_selection_params.effective_fee, long_term_feerate); + group.SetFees(coin_selection_params.effective_fee, coin_selection_params.m_long_term_feerate); } OutputGroup pos_group = group.GetPositiveOnlyGroup(); @@ -2827,6 +2821,11 @@ bool CWallet::CreateTransactionInternal( return false; } + // Get long term estimate + CCoinControl cc_temp; + cc_temp.m_confirm_target = chain().estimateMaxBlocks(); + coin_selection_params.m_long_term_feerate = GetMinimumFeeRate(*this, cc_temp, nullptr); + nFeeRet = 0; bool pick_new_inputs = true; CAmount nValueIn = 0; diff --git a/src/wallet/wallet.h b/src/wallet/wallet.h index 69cf6b66a..65b57396b 100644 --- a/src/wallet/wallet.h +++ b/src/wallet/wallet.h @@ -607,11 +607,20 @@ struct CoinSelectionParams size_t change_output_size = 0; size_t change_spend_size = 0; CFeeRate effective_fee = CFeeRate(0); + CFeeRate m_long_term_feerate; size_t tx_noinputs_size = 0; //! Indicate that we are subtracting the fee from outputs bool m_subtract_fee_outputs = false; - CoinSelectionParams(bool use_bnb, size_t change_output_size, size_t change_spend_size, CFeeRate effective_fee, size_t tx_noinputs_size) : use_bnb(use_bnb), change_output_size(change_output_size), change_spend_size(change_spend_size), effective_fee(effective_fee), tx_noinputs_size(tx_noinputs_size) {} + CoinSelectionParams(bool use_bnb, size_t change_output_size, size_t change_spend_size, CFeeRate effective_fee, + CFeeRate long_term_feerate, size_t tx_noinputs_size) : + use_bnb(use_bnb), + change_output_size(change_output_size), + change_spend_size(change_spend_size), + effective_fee(effective_fee), + m_long_term_feerate(long_term_feerate), + tx_noinputs_size(tx_noinputs_size) + {} CoinSelectionParams() {} }; From 5fc381e443d6d967e6f7f8bc88a4fd66e18379eb Mon Sep 17 00:00:00 2001 From: Andrew Chow Date: Thu, 4 Feb 2021 19:11:24 -0500 Subject: [PATCH 031/102] wallet: Move discard feerate fetching to CreateTransaction Instead of fetching the discard feerate for each SelectCoinsMinConf iteration, fetch and cache it once during CreateTransaction so that it is shared for each SelectCoinsMinConf through coin_selection_params.m_discard_feerate. Does not change behavior. Github-Pull: #21083 Rebased-From: bdd0c2934b7f389ffcfae3b602ee3ecee8581acd --- src/bench/coin_selection.cpp | 2 +- src/wallet/test/coinselector_tests.cpp | 8 ++++---- src/wallet/wallet.cpp | 9 +++++---- src/wallet/wallet.h | 4 +++- 4 files changed, 13 insertions(+), 10 deletions(-) diff --git a/src/bench/coin_selection.cpp b/src/bench/coin_selection.cpp index 1ef89a41d..df277dc2f 100644 --- a/src/bench/coin_selection.cpp +++ b/src/bench/coin_selection.cpp @@ -52,7 +52,7 @@ static void CoinSelection(benchmark::Bench& bench) const CoinEligibilityFilter filter_standard(1, 6, 0); const CoinSelectionParams coin_selection_params(/* use_bnb= */ true, /* change_output_size= */ 34, /* change_spend_size= */ 148, /* effective_fee= */ CFeeRate(0), - /* long_term_feerate= */ CFeeRate(0), + /* long_term_feerate= */ CFeeRate(0), /* discard_feerate= */ CFeeRate(0), /* tx_no_inputs_size= */ 0); bench.run([&] { std::set setCoinsRet; diff --git a/src/wallet/test/coinselector_tests.cpp b/src/wallet/test/coinselector_tests.cpp index f375ce02a..4686ecdf8 100644 --- a/src/wallet/test/coinselector_tests.cpp +++ b/src/wallet/test/coinselector_tests.cpp @@ -37,7 +37,7 @@ CoinEligibilityFilter filter_confirmed(1, 1, 0); CoinEligibilityFilter filter_standard_extra(6, 6, 0); CoinSelectionParams coin_selection_params(/* use_bnb= */ false, /* change_output_size= */ 0, /* change_spend_size= */ 0, /* effective_fee= */ CFeeRate(0), - /* long_term_feerate= */ CFeeRate(0), + /* long_term_feerate= */ CFeeRate(0), /* discard_feerate= */ CFeeRate(0), /* tx_no_inputs_size= */ 0); static void add_coin(const CAmount& nValue, int nInput, std::vector& set) @@ -267,7 +267,7 @@ BOOST_AUTO_TEST_CASE(bnb_search_test) // Make sure that effective value is working in SelectCoinsMinConf when BnB is used CoinSelectionParams coin_selection_params_bnb(/* use_bnb= */ true, /* change_output_size= */ 0, /* change_spend_size= */ 0, /* effective_fee= */ CFeeRate(3000), - /* long_term_feerate= */ CFeeRate(1000), + /* long_term_feerate= */ CFeeRate(1000), /* discard_feerate= */ CFeeRate(1000), /* tx_no_inputs_size= */ 0); CoinSet setCoinsRet; CAmount nValueRet; @@ -640,11 +640,11 @@ BOOST_AUTO_TEST_CASE(SelectCoins_test) // Perform selection CoinSelectionParams coin_selection_params_knapsack(/* use_bnb= */ false, /* change_output_size= */ 34, /* change_spend_size= */ 148, /* effective_fee= */ CFeeRate(0), - /* long_term_feerate= */ CFeeRate(0), + /* long_term_feerate= */ CFeeRate(0), /* discard_feerate= */ CFeeRate(0), /* tx_no_inputs_size= */ 0); CoinSelectionParams coin_selection_params_bnb(/* use_bnb= */ true, /* change_output_size= */ 34, /* change_spend_size= */ 148, /* effective_fee= */ CFeeRate(0), - /* long_term_feerate= */ CFeeRate(0), + /* long_term_feerate= */ CFeeRate(0), /* discard_feerate= */ CFeeRate(0), /* tx_no_inputs_size= */ 0); CoinSet out_set; CAmount out_value = 0; diff --git a/src/wallet/wallet.cpp b/src/wallet/wallet.cpp index b1951c0c3..a3216a33a 100644 --- a/src/wallet/wallet.cpp +++ b/src/wallet/wallet.cpp @@ -2363,7 +2363,7 @@ bool CWallet::SelectCoinsMinConf(const CAmount& nTargetValue, const CoinEligibil std::vector utxo_pool; if (coin_selection_params.use_bnb) { // Calculate cost of change - CAmount cost_of_change = GetDiscardRate(*this).GetFee(coin_selection_params.change_spend_size) + coin_selection_params.effective_fee.GetFee(coin_selection_params.change_output_size); + CAmount cost_of_change = coin_selection_params.m_discard_feerate.GetFee(coin_selection_params.change_spend_size) + coin_selection_params.effective_fee.GetFee(coin_selection_params.change_output_size); // Filter by the min conf specs and add to utxo_pool and calculate effective value for (OutputGroup& group : groups) { @@ -2805,7 +2805,8 @@ bool CWallet::CreateTransactionInternal( CTxOut change_prototype_txout(0, scriptChange); coin_selection_params.change_output_size = GetSerializeSize(change_prototype_txout); - CFeeRate discard_rate = GetDiscardRate(*this); + // Set discard feerate + coin_selection_params.m_discard_feerate = GetDiscardRate(*this); // Get the fee rate to use effective values in coin selection coin_selection_params.effective_fee = GetMinimumFeeRate(*this, coin_control, &feeCalc); @@ -2924,7 +2925,7 @@ bool CWallet::CreateTransactionInternal( // Never create dust outputs; if we would, just // add the dust to the fee. // The nChange when BnB is used is always going to go to fees. - if (IsDust(newTxOut, discard_rate) || bnb_used) + if (IsDust(newTxOut, coin_selection_params.m_discard_feerate) || bnb_used) { nChangePosInOut = -1; nFeeRet += nChange; @@ -2976,7 +2977,7 @@ bool CWallet::CreateTransactionInternal( if (nChangePosInOut == -1 && nSubtractFeeFromAmount == 0 && pick_new_inputs) { unsigned int tx_size_with_change = nBytes + coin_selection_params.change_output_size + 2; // Add 2 as a buffer in case increasing # of outputs changes compact size CAmount fee_needed_with_change = coin_selection_params.effective_fee.GetFee(tx_size_with_change); - CAmount minimum_value_for_change = GetDustThreshold(change_prototype_txout, discard_rate); + CAmount minimum_value_for_change = GetDustThreshold(change_prototype_txout, coin_selection_params.m_discard_feerate); if (nFeeRet >= fee_needed_with_change + minimum_value_for_change) { pick_new_inputs = false; nFeeRet = fee_needed_with_change; diff --git a/src/wallet/wallet.h b/src/wallet/wallet.h index 65b57396b..20ee63e4a 100644 --- a/src/wallet/wallet.h +++ b/src/wallet/wallet.h @@ -608,17 +608,19 @@ struct CoinSelectionParams size_t change_spend_size = 0; CFeeRate effective_fee = CFeeRate(0); CFeeRate m_long_term_feerate; + CFeeRate m_discard_feerate; size_t tx_noinputs_size = 0; //! Indicate that we are subtracting the fee from outputs bool m_subtract_fee_outputs = false; CoinSelectionParams(bool use_bnb, size_t change_output_size, size_t change_spend_size, CFeeRate effective_fee, - CFeeRate long_term_feerate, size_t tx_noinputs_size) : + CFeeRate long_term_feerate, CFeeRate discard_feerate, size_t tx_noinputs_size) : use_bnb(use_bnb), change_output_size(change_output_size), change_spend_size(change_spend_size), effective_fee(effective_fee), m_long_term_feerate(long_term_feerate), + m_discard_feerate(discard_feerate), tx_noinputs_size(tx_noinputs_size) {} CoinSelectionParams() {} From 1485533092a0732bae55313659a3e3f9669fd77a Mon Sep 17 00:00:00 2001 From: Pieter Wuille Date: Tue, 5 Jan 2021 12:55:15 -0800 Subject: [PATCH 032/102] Implement Bech32m encoding/decoding Github-Pull: #20861 Rebased-From: da2bb6976dadeec682d163c258c9afecc87d6428 --- src/bech32.cpp | 44 +++++++++++++++++++++++---------------- src/bech32.h | 30 ++++++++++++++++++++------ src/bench/bech32.cpp | 2 +- src/key_io.cpp | 16 +++++++------- src/test/bech32_tests.cpp | 10 ++++----- src/test/fuzz/bech32.cpp | 32 ++++++++++++++-------------- 6 files changed, 80 insertions(+), 54 deletions(-) diff --git a/src/bech32.cpp b/src/bech32.cpp index 1e0471f11..289e0213e 100644 --- a/src/bech32.cpp +++ b/src/bech32.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2017 Pieter Wuille +// Copyright (c) 2017, 2021 Pieter Wuille // Distributed under the MIT software license, see the accompanying // file COPYING or http://www.opensource.org/licenses/mit-license.php. @@ -7,6 +7,9 @@ #include +namespace bech32 +{ + namespace { @@ -27,6 +30,12 @@ const int8_t CHARSET_REV[128] = { 1, 0, 3, 16, 11, 28, 12, 14, 6, 4, 2, -1, -1, -1, -1, -1 }; +/* Determine the final constant to use for the specified encoding. */ +uint32_t EncodingConstant(Encoding encoding) { + assert(encoding == Encoding::BECH32 || encoding == Encoding::BECH32M); + return encoding == Encoding::BECH32 ? 1 : 0x2bc830a3; +} + /** This function will compute what 6 5-bit values to XOR into the last 6 input values, in order to * make the checksum 0. These 6 values are packed together in a single 30-bit integer. The higher * bits correspond to earlier values. */ @@ -111,21 +120,24 @@ data ExpandHRP(const std::string& hrp) } /** Verify a checksum. */ -bool VerifyChecksum(const std::string& hrp, const data& values) +Encoding VerifyChecksum(const std::string& hrp, const data& values) { // PolyMod computes what value to xor into the final values to make the checksum 0. However, // if we required that the checksum was 0, it would be the case that appending a 0 to a valid // list of values would result in a new valid list. For that reason, Bech32 requires the - // resulting checksum to be 1 instead. - return PolyMod(Cat(ExpandHRP(hrp), values)) == 1; + // resulting checksum to be 1 instead. In Bech32m, this constant was amended. + const uint32_t check = PolyMod(Cat(ExpandHRP(hrp), values)); + if (check == EncodingConstant(Encoding::BECH32)) return Encoding::BECH32; + if (check == EncodingConstant(Encoding::BECH32M)) return Encoding::BECH32M; + return Encoding::INVALID; } /** Create a checksum. */ -data CreateChecksum(const std::string& hrp, const data& values) +data CreateChecksum(Encoding encoding, const std::string& hrp, const data& values) { data enc = Cat(ExpandHRP(hrp), values); enc.resize(enc.size() + 6); // Append 6 zeroes - uint32_t mod = PolyMod(enc) ^ 1; // Determine what to XOR into those 6 zeroes. + uint32_t mod = PolyMod(enc) ^ EncodingConstant(encoding); // Determine what to XOR into those 6 zeroes. data ret(6); for (size_t i = 0; i < 6; ++i) { // Convert the 5-bit groups in mod to checksum values. @@ -136,16 +148,13 @@ data CreateChecksum(const std::string& hrp, const data& values) } // namespace -namespace bech32 -{ - -/** Encode a Bech32 string. */ -std::string Encode(const std::string& hrp, const data& values) { +/** Encode a Bech32 or Bech32m string. */ +std::string Encode(Encoding encoding, const std::string& hrp, const data& values) { // First ensure that the HRP is all lowercase. BIP-173 requires an encoder // to return a lowercase Bech32 string, but if given an uppercase HRP, the // result will always be invalid. for (const char& c : hrp) assert(c < 'A' || c > 'Z'); - data checksum = CreateChecksum(hrp, values); + data checksum = CreateChecksum(encoding, hrp, values); data combined = Cat(values, checksum); std::string ret = hrp + '1'; ret.reserve(ret.size() + combined.size()); @@ -155,8 +164,8 @@ std::string Encode(const std::string& hrp, const data& values) { return ret; } -/** Decode a Bech32 string. */ -std::pair Decode(const std::string& str) { +/** Decode a Bech32 or Bech32m string. */ +DecodeResult Decode(const std::string& str) { bool lower = false, upper = false; for (size_t i = 0; i < str.size(); ++i) { unsigned char c = str[i]; @@ -183,10 +192,9 @@ std::pair Decode(const std::string& str) { for (size_t i = 0; i < pos; ++i) { hrp += LowerCase(str[i]); } - if (!VerifyChecksum(hrp, values)) { - return {}; - } - return {hrp, data(values.begin(), values.end() - 6)}; + Encoding result = VerifyChecksum(hrp, values); + if (result == Encoding::INVALID) return {}; + return {result, std::move(hrp), data(values.begin(), values.end() - 6)}; } } // namespace bech32 diff --git a/src/bech32.h b/src/bech32.h index fb39cd352..3679ea8cc 100644 --- a/src/bech32.h +++ b/src/bech32.h @@ -1,4 +1,4 @@ -// Copyright (c) 2017 Pieter Wuille +// Copyright (c) 2017, 2021 Pieter Wuille // Distributed under the MIT software license, see the accompanying // file COPYING or http://www.opensource.org/licenses/mit-license.php. @@ -7,7 +7,7 @@ // separator character (1), and a base32 data section, the last // 6 characters of which are a checksum. // -// For more information, see BIP 173. +// For more information, see BIP 173 and BIP 350. #ifndef BITCOIN_BECH32_H #define BITCOIN_BECH32_H @@ -19,11 +19,29 @@ namespace bech32 { -/** Encode a Bech32 string. If hrp contains uppercase characters, this will cause an assertion error. */ -std::string Encode(const std::string& hrp, const std::vector& values); +enum class Encoding { + INVALID, //!< Failed decoding -/** Decode a Bech32 string. Returns (hrp, data). Empty hrp means failure. */ -std::pair> Decode(const std::string& str); + BECH32, //!< Bech32 encoding as defined in BIP173 + BECH32M, //!< Bech32m encoding as defined in BIP350 +}; + +/** Encode a Bech32 or Bech32m string. If hrp contains uppercase characters, this will cause an + * assertion error. Encoding must be one of BECH32 or BECH32M. */ +std::string Encode(Encoding encoding, const std::string& hrp, const std::vector& values); + +struct DecodeResult +{ + Encoding encoding; //!< What encoding was detected in the result; Encoding::INVALID if failed. + std::string hrp; //!< The human readable part + std::vector data; //!< The payload (excluding checksum) + + DecodeResult() : encoding(Encoding::INVALID) {} + DecodeResult(Encoding enc, std::string&& h, std::vector&& d) : encoding(enc), hrp(std::move(h)), data(std::move(d)) {} +}; + +/** Decode a Bech32 string. */ +DecodeResult Decode(const std::string& str); } // namespace bech32 diff --git a/src/bench/bech32.cpp b/src/bench/bech32.cpp index c74d8d51b..8e10862a3 100644 --- a/src/bench/bech32.cpp +++ b/src/bench/bech32.cpp @@ -19,7 +19,7 @@ static void Bech32Encode(benchmark::Bench& bench) tmp.reserve(1 + 32 * 8 / 5); ConvertBits<8, 5, true>([&](unsigned char c) { tmp.push_back(c); }, v.begin(), v.end()); bench.batch(v.size()).unit("byte").run([&] { - bech32::Encode("bc", tmp); + bech32::Encode(bech32::Encoding::BECH32, "bc", tmp); }); } diff --git a/src/key_io.cpp b/src/key_io.cpp index d2f5be93f..f927ebbb4 100644 --- a/src/key_io.cpp +++ b/src/key_io.cpp @@ -44,7 +44,7 @@ public: std::vector data = {0}; data.reserve(33); ConvertBits<8, 5, true>([&](unsigned char c) { data.push_back(c); }, id.begin(), id.end()); - return bech32::Encode(m_params.Bech32HRP(), data); + return bech32::Encode(bech32::Encoding::BECH32, m_params.Bech32HRP(), data); } std::string operator()(const WitnessV0ScriptHash& id) const @@ -52,7 +52,7 @@ public: std::vector data = {0}; data.reserve(53); ConvertBits<8, 5, true>([&](unsigned char c) { data.push_back(c); }, id.begin(), id.end()); - return bech32::Encode(m_params.Bech32HRP(), data); + return bech32::Encode(bech32::Encoding::BECH32, m_params.Bech32HRP(), data); } std::string operator()(const WitnessUnknown& id) const @@ -63,7 +63,7 @@ public: std::vector data = {(unsigned char)id.version}; data.reserve(1 + (id.length * 8 + 4) / 5); ConvertBits<8, 5, true>([&](unsigned char c) { data.push_back(c); }, id.program, id.program + id.length); - return bech32::Encode(m_params.Bech32HRP(), data); + return bech32::Encode(bech32::Encoding::BECH32, m_params.Bech32HRP(), data); } std::string operator()(const CNoDestination& no) const { return {}; } @@ -91,13 +91,13 @@ CTxDestination DecodeDestination(const std::string& str, const CChainParams& par } } data.clear(); - auto bech = bech32::Decode(str); - if (bech.second.size() > 0 && bech.first == params.Bech32HRP()) { + const auto dec = bech32::Decode(str); + if (dec.encoding == bech32::Encoding::BECH32 && dec.data.size() > 0 && dec.hrp == params.Bech32HRP()) { // Bech32 decoding - int version = bech.second[0]; // The first 5 bit symbol is the witness version (0-16) + int version = dec.data[0]; // The first 5 bit symbol is the witness version (0-16) // The rest of the symbols are converted witness program bytes. - data.reserve(((bech.second.size() - 1) * 5) / 8); - if (ConvertBits<5, 8, false>([&](unsigned char c) { data.push_back(c); }, bech.second.begin() + 1, bech.second.end())) { + data.reserve(((dec.data.size() - 1) * 5) / 8); + if (ConvertBits<5, 8, false>([&](unsigned char c) { data.push_back(c); }, dec.data.begin() + 1, dec.data.end())) { if (version == 0) { { WitnessV0KeyHash keyid; diff --git a/src/test/bech32_tests.cpp b/src/test/bech32_tests.cpp index a2098f4f5..2ddc28476 100644 --- a/src/test/bech32_tests.cpp +++ b/src/test/bech32_tests.cpp @@ -22,9 +22,9 @@ BOOST_AUTO_TEST_CASE(bip173_testvectors_valid) "?1ezyfcl", }; for (const std::string& str : CASES) { - auto ret = bech32::Decode(str); - BOOST_CHECK(!ret.first.empty()); - std::string recode = bech32::Encode(ret.first, ret.second); + const auto dec = bech32::Decode(str); + BOOST_CHECK(dec.encoding == bech32::Encoding::BECH32); + std::string recode = bech32::Encode(bech32::Encoding::BECH32, dec.hrp, dec.data); BOOST_CHECK(!recode.empty()); BOOST_CHECK(CaseInsensitiveEqual(str, recode)); } @@ -49,8 +49,8 @@ BOOST_AUTO_TEST_CASE(bip173_testvectors_invalid) "A12uEL5L", }; for (const std::string& str : CASES) { - auto ret = bech32::Decode(str); - BOOST_CHECK(ret.first.empty()); + const auto dec = bech32::Decode(str); + BOOST_CHECK(dec.encoding != bech32::Encoding::BECH32); } } diff --git a/src/test/fuzz/bech32.cpp b/src/test/fuzz/bech32.cpp index 8b91f9bc9..0ac1f0226 100644 --- a/src/test/fuzz/bech32.cpp +++ b/src/test/fuzz/bech32.cpp @@ -16,28 +16,28 @@ void test_one_input(const std::vector& buffer) { const std::string random_string(buffer.begin(), buffer.end()); - const std::pair> r1 = bech32::Decode(random_string); - if (r1.first.empty()) { - assert(r1.second.empty()); + const auto r1 = bech32::Decode(random_string); + if (r1.hrp.empty()) { + assert(r1.encoding == bech32::Encoding::INVALID); + assert(r1.data.empty()); } else { - const std::string& hrp = r1.first; - const std::vector& data = r1.second; - const std::string reencoded = bech32::Encode(hrp, data); + assert(r1.encoding != bech32::Encoding::INVALID); + const std::string reencoded = bech32::Encode(r1.encoding, r1.hrp, r1.data); assert(CaseInsensitiveEqual(random_string, reencoded)); } std::vector input; ConvertBits<8, 5, true>([&](unsigned char c) { input.push_back(c); }, buffer.begin(), buffer.end()); - const std::string encoded = bech32::Encode("bc", input); - assert(!encoded.empty()); - const std::pair> r2 = bech32::Decode(encoded); - if (r2.first.empty()) { - assert(r2.second.empty()); - } else { - const std::string& hrp = r2.first; - const std::vector& data = r2.second; - assert(hrp == "bc"); - assert(data == input); + if (input.size() + 3 + 6 <= 90) { + // If it's possible to encode input in Bech32(m) without exceeding the 90-character limit: + for (auto encoding : {bech32::Encoding::BECH32, bech32::Encoding::BECH32M}) { + const std::string encoded = bech32::Encode(encoding, "bc", input); + assert(!encoded.empty()); + const auto r2 = bech32::Decode(encoded); + assert(r2.encoding == encoding); + assert(r2.hrp == "bc"); + assert(r2.data == input); + } } } From 8944aaa6d6ce55faa6224e288fe0a14dbbf5ca4f Mon Sep 17 00:00:00 2001 From: Pieter Wuille Date: Tue, 5 Jan 2021 13:12:04 -0800 Subject: [PATCH 033/102] Add Bech32m test vectors Github-Pull: #20861 Rebased-From: 25b1c6e13ddf1626210d5e3d37298d1f3a78a94f --- src/test/bech32_tests.cpp | 50 ++++++++++++++++++++++++++++++++++++--- 1 file changed, 47 insertions(+), 3 deletions(-) diff --git a/src/test/bech32_tests.cpp b/src/test/bech32_tests.cpp index 2ddc28476..2651e4643 100644 --- a/src/test/bech32_tests.cpp +++ b/src/test/bech32_tests.cpp @@ -10,7 +10,7 @@ BOOST_FIXTURE_TEST_SUITE(bech32_tests, BasicTestingSetup) -BOOST_AUTO_TEST_CASE(bip173_testvectors_valid) +BOOST_AUTO_TEST_CASE(bech32_testvectors_valid) { static const std::string CASES[] = { "A12UEL5L", @@ -30,7 +30,27 @@ BOOST_AUTO_TEST_CASE(bip173_testvectors_valid) } } -BOOST_AUTO_TEST_CASE(bip173_testvectors_invalid) +BOOST_AUTO_TEST_CASE(bech32m_testvectors_valid) +{ + static const std::string CASES[] = { + "A1LQFN3A", + "a1lqfn3a", + "an83characterlonghumanreadablepartthatcontainsthetheexcludedcharactersbioandnumber11sg7hg6", + "abcdef1l7aum6echk45nj3s0wdvt2fg8x9yrzpqzd3ryx", + "11llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllludsr8", + "split1checkupstagehandshakeupstreamerranterredcaperredlc445v", + "?1v759aa" + }; + for (const std::string& str : CASES) { + const auto dec = bech32::Decode(str); + BOOST_CHECK(dec.encoding == bech32::Encoding::BECH32M); + std::string recode = bech32::Encode(bech32::Encoding::BECH32M, dec.hrp, dec.data); + BOOST_CHECK(!recode.empty()); + BOOST_CHECK(CaseInsensitiveEqual(str, recode)); + } +} + +BOOST_AUTO_TEST_CASE(bech32_testvectors_invalid) { static const std::string CASES[] = { " 1nwldj5", @@ -50,7 +70,31 @@ BOOST_AUTO_TEST_CASE(bip173_testvectors_invalid) }; for (const std::string& str : CASES) { const auto dec = bech32::Decode(str); - BOOST_CHECK(dec.encoding != bech32::Encoding::BECH32); + BOOST_CHECK(dec.encoding == bech32::Encoding::INVALID); + } +} + +BOOST_AUTO_TEST_CASE(bech32m_testvectors_invalid) +{ + static const std::string CASES[] = { + " 1xj0phk", + "\x7f""1g6xzxy", + "\x80""1vctc34", + "an84characterslonghumanreadablepartthatcontainsthetheexcludedcharactersbioandnumber11d6pts4", + "qyrz8wqd2c9m", + "1qyrz8wqd2c9m", + "y1b0jsk6g", + "lt1igcx5c0", + "in1muywd", + "mm1crxm3i", + "au1s5cgom", + "M1VUXWEZ", + "16plkw9", + "1p2gdwpf" + }; + for (const std::string& str : CASES) { + const auto dec = bech32::Decode(str); + BOOST_CHECK(dec.encoding == bech32::Encoding::INVALID); } } From 593e206627f4fb789de70f55017f71b85d10754d Mon Sep 17 00:00:00 2001 From: Pieter Wuille Date: Tue, 5 Jan 2021 13:36:42 -0800 Subject: [PATCH 034/102] Use Bech32m encoding for v1+ segwit addresses This also includes updates to the Python test framework implementation, test vectors, and release notes. Github-Pull: #20861 Rebased-From: fe5e495c31de47b0ec732b943db11fe345d874af --- contrib/testgen/gen_key_io_test_vectors.py | 70 +- doc/bips.md | 3 +- doc/release-notes-20861.md | 13 + src/key_io.cpp | 10 +- src/test/data/key_io_invalid.json | 126 +-- src/test/data/key_io_valid.json | 915 ++++++++---------- test/functional/test_framework/segwit_addr.py | 54 +- test/functional/wallet_labels.py | 10 +- 8 files changed, 565 insertions(+), 636 deletions(-) create mode 100644 doc/release-notes-20861.md diff --git a/contrib/testgen/gen_key_io_test_vectors.py b/contrib/testgen/gen_key_io_test_vectors.py index 49320d92e..362e60b37 100755 --- a/contrib/testgen/gen_key_io_test_vectors.py +++ b/contrib/testgen/gen_key_io_test_vectors.py @@ -15,7 +15,7 @@ import os from itertools import islice from base58 import b58encode_chk, b58decode_chk, b58chars import random -from segwit_addr import bech32_encode, decode_segwit_address, convertbits, CHARSET +from segwit_addr import bech32_encode, decode_segwit_address, convertbits, CHARSET, Encoding # key types PUBKEY_ADDRESS = 0 @@ -32,6 +32,7 @@ PRIVKEY_REGTEST = 239 OP_0 = 0x00 OP_1 = 0x51 OP_2 = 0x52 +OP_3 = 0x53 OP_16 = 0x60 OP_DUP = 0x76 OP_EQUAL = 0x87 @@ -44,6 +45,7 @@ script_prefix = (OP_HASH160, 20) script_suffix = (OP_EQUAL,) p2wpkh_prefix = (OP_0, 20) p2wsh_prefix = (OP_0, 32) +p2tr_prefix = (OP_1, 32) metadata_keys = ['isPrivkey', 'chain', 'isCompressed', 'tryCaseFlip'] # templates for valid sequences @@ -65,29 +67,39 @@ templates = [ ] # templates for valid bech32 sequences bech32_templates = [ - # hrp, version, witprog_size, metadata, output_prefix - ('bc', 0, 20, (False, 'main', None, True), p2wpkh_prefix), - ('bc', 0, 32, (False, 'main', None, True), p2wsh_prefix), - ('bc', 1, 2, (False, 'main', None, True), (OP_1, 2)), - ('tb', 0, 20, (False, 'test', None, True), p2wpkh_prefix), - ('tb', 0, 32, (False, 'test', None, True), p2wsh_prefix), - ('tb', 2, 16, (False, 'test', None, True), (OP_2, 16)), - ('bcrt', 0, 20, (False, 'regtest', None, True), p2wpkh_prefix), - ('bcrt', 0, 32, (False, 'regtest', None, True), p2wsh_prefix), - ('bcrt', 16, 40, (False, 'regtest', None, True), (OP_16, 40)) + # hrp, version, witprog_size, metadata, encoding, output_prefix + ('bc', 0, 20, (False, 'main', None, True), Encoding.BECH32, p2wpkh_prefix), + ('bc', 0, 32, (False, 'main', None, True), Encoding.BECH32, p2wsh_prefix), + ('bc', 1, 32, (False, 'main', None, True), Encoding.BECH32M, p2tr_prefix), + ('bc', 2, 2, (False, 'main', None, True), Encoding.BECH32M, (OP_2, 2)), + ('tb', 0, 20, (False, 'test', None, True), Encoding.BECH32, p2wpkh_prefix), + ('tb', 0, 32, (False, 'test', None, True), Encoding.BECH32, p2wsh_prefix), + ('tb', 1, 32, (False, 'test', None, True), Encoding.BECH32M, p2tr_prefix), + ('tb', 3, 16, (False, 'test', None, True), Encoding.BECH32M, (OP_3, 16)), + ('bcrt', 0, 20, (False, 'regtest', None, True), Encoding.BECH32, p2wpkh_prefix), + ('bcrt', 0, 32, (False, 'regtest', None, True), Encoding.BECH32, p2wsh_prefix), + ('bcrt', 1, 32, (False, 'regtest', None, True), Encoding.BECH32M, p2tr_prefix), + ('bcrt', 16, 40, (False, 'regtest', None, True), Encoding.BECH32M, (OP_16, 40)) ] # templates for invalid bech32 sequences bech32_ng_templates = [ - # hrp, version, witprog_size, invalid_bech32, invalid_checksum, invalid_char - ('tc', 0, 20, False, False, False), - ('tb', 17, 32, False, False, False), - ('bcrt', 3, 1, False, False, False), - ('bc', 15, 41, False, False, False), - ('tb', 0, 16, False, False, False), - ('bcrt', 0, 32, True, False, False), - ('bc', 0, 16, True, False, False), - ('tb', 0, 32, False, True, False), - ('bcrt', 0, 20, False, False, True) + # hrp, version, witprog_size, encoding, invalid_bech32, invalid_checksum, invalid_char + ('tc', 0, 20, Encoding.BECH32, False, False, False), + ('bt', 1, 32, Encoding.BECH32M, False, False, False), + ('tb', 17, 32, Encoding.BECH32M, False, False, False), + ('bcrt', 3, 1, Encoding.BECH32M, False, False, False), + ('bc', 15, 41, Encoding.BECH32M, False, False, False), + ('tb', 0, 16, Encoding.BECH32, False, False, False), + ('bcrt', 0, 32, Encoding.BECH32, True, False, False), + ('bc', 0, 16, Encoding.BECH32, True, False, False), + ('tb', 0, 32, Encoding.BECH32, False, True, False), + ('bcrt', 0, 20, Encoding.BECH32, False, False, True), + ('bc', 0, 20, Encoding.BECH32M, False, False, False), + ('tb', 0, 32, Encoding.BECH32M, False, False, False), + ('bcrt', 0, 20, Encoding.BECH32M, False, False, False), + ('bc', 1, 32, Encoding.BECH32, False, False, False), + ('tb', 2, 16, Encoding.BECH32, False, False, False), + ('bcrt', 16, 20, Encoding.BECH32, False, False, False), ] def is_valid(v): @@ -127,8 +139,9 @@ def gen_valid_bech32_vector(template): hrp = template[0] witver = template[1] witprog = bytearray(os.urandom(template[2])) - dst_prefix = bytearray(template[4]) - rv = bech32_encode(hrp, [witver] + convertbits(witprog, 8, 5)) + encoding = template[4] + dst_prefix = bytearray(template[5]) + rv = bech32_encode(encoding, hrp, [witver] + convertbits(witprog, 8, 5)) return rv, dst_prefix + witprog def gen_valid_vectors(): @@ -186,22 +199,23 @@ def gen_invalid_bech32_vector(template): hrp = template[0] witver = template[1] witprog = bytearray(os.urandom(template[2])) + encoding = template[3] if no_data: - rv = bech32_encode(hrp, []) + rv = bech32_encode(encoding, hrp, []) else: data = [witver] + convertbits(witprog, 8, 5) - if template[3] and not no_data: + if template[4] and not no_data: if template[2] % 5 in {2, 4}: data[-1] |= 1 else: data.append(0) - rv = bech32_encode(hrp, data) + rv = bech32_encode(encoding, hrp, data) - if template[4]: + if template[5]: i = len(rv) - random.randrange(1, 7) rv = rv[:i] + random.choice(CHARSET.replace(rv[i], '')) + rv[i + 1:] - if template[5]: + if template[6]: i = len(hrp) + 1 + random.randrange(0, len(rv) - len(hrp) - 4) rv = rv[:i] + rv[i:i + 4].upper() + rv[i + 4:] diff --git a/doc/bips.md b/doc/bips.md index 8c20533c9..5a99d4f6a 100644 --- a/doc/bips.md +++ b/doc/bips.md @@ -1,4 +1,4 @@ -BIPs that are implemented by Bitcoin Core (up-to-date up to **v0.21.0**): +BIPs that are implemented by Bitcoin Core (up-to-date up to **v0.21.1**): * [`BIP 9`](https://github.com/bitcoin/bips/blob/master/bip-0009.mediawiki): The changes allowing multiple soft-forks to be deployed in parallel have been implemented since **v0.12.1** ([PR #7575](https://github.com/bitcoin/bitcoin/pull/7575)) * [`BIP 11`](https://github.com/bitcoin/bips/blob/master/bip-0011.mediawiki): Multisig outputs are standard since **v0.6.0** ([PR #669](https://github.com/bitcoin/bitcoin/pull/669)). @@ -46,3 +46,4 @@ BIPs that are implemented by Bitcoin Core (up-to-date up to **v0.21.0**): * [`BIP 325`](https://github.com/bitcoin/bips/blob/master/bip-0325.mediawiki): Signet test network is supported as of **v0.21.0** ([PR 18267](https://github.com/bitcoin/bitcoin/pull/18267)). * [`BIP 339`](https://github.com/bitcoin/bips/blob/master/bip-0339.mediawiki): Relay of transactions by wtxid is supported as of **v0.21.0** ([PR 18044](https://github.com/bitcoin/bitcoin/pull/18044)). * [`BIP 340`](https://github.com/bitcoin/bips/blob/master/bip-0340.mediawiki) [`341`](https://github.com/bitcoin/bips/blob/master/bip-0341.mediawiki) [`342`](https://github.com/bitcoin/bips/blob/master/bip-0342.mediawiki): Validation rules for Taproot (including Schnorr signatures and Tapscript leaves) are implemented as of **v0.21.0** ([PR 19953](https://github.com/bitcoin/bitcoin/pull/19953)), without mainnet activation. +* [`BIP 350`](https://github.com/bitcoin/bips/blob/master/bip-0350.mediawiki): Addresses for native v1+ segregated Witness outputs use Bech32m instead of Bech32 as of **v0.21.1** ([PR 20861](https://github.com/bitcoin/bitcoin/pull/20861)). diff --git a/doc/release-notes-20861.md b/doc/release-notes-20861.md new file mode 100644 index 000000000..5c68e4ab0 --- /dev/null +++ b/doc/release-notes-20861.md @@ -0,0 +1,13 @@ +Updated RPCs +------------ + +- Due to [BIP 350](https://github.com/bitcoin/bips/blob/master/bip-0350.mediawiki) + being implemented, behavior for all RPCs that accept addresses is changed when + a native witness version 1 (or higher) is passed. These now require a Bech32m + encoding instead of a Bech32 one, and Bech32m encoding will be used for such + addresses in RPC output as well. No version 1 addresses should be created + for mainnet until consensus rules are adopted that give them meaning + (e.g. through [BIP 341](https://github.com/bitcoin/bips/blob/master/bip-0341.mediawiki)). + Once that happens, Bech32m is expected to be used for them, so this shouldn't + affect any production systems, but may be observed on other networks where such + addresses already have meaning (like signet). diff --git a/src/key_io.cpp b/src/key_io.cpp index f927ebbb4..0cb4d0bf7 100644 --- a/src/key_io.cpp +++ b/src/key_io.cpp @@ -63,7 +63,7 @@ public: std::vector data = {(unsigned char)id.version}; data.reserve(1 + (id.length * 8 + 4) / 5); ConvertBits<8, 5, true>([&](unsigned char c) { data.push_back(c); }, id.program, id.program + id.length); - return bech32::Encode(bech32::Encoding::BECH32, m_params.Bech32HRP(), data); + return bech32::Encode(bech32::Encoding::BECH32M, m_params.Bech32HRP(), data); } std::string operator()(const CNoDestination& no) const { return {}; } @@ -92,9 +92,15 @@ CTxDestination DecodeDestination(const std::string& str, const CChainParams& par } data.clear(); const auto dec = bech32::Decode(str); - if (dec.encoding == bech32::Encoding::BECH32 && dec.data.size() > 0 && dec.hrp == params.Bech32HRP()) { + if ((dec.encoding == bech32::Encoding::BECH32 || dec.encoding == bech32::Encoding::BECH32M) && dec.data.size() > 0 && dec.hrp == params.Bech32HRP()) { // Bech32 decoding int version = dec.data[0]; // The first 5 bit symbol is the witness version (0-16) + if (version == 0 && dec.encoding != bech32::Encoding::BECH32) { + return CNoDestination(); + } + if (version != 0 && dec.encoding != bech32::Encoding::BECH32M) { + return CNoDestination(); + } // The rest of the symbols are converted witness program bytes. data.reserve(((dec.data.size() - 1) * 5) / 8); if (ConvertBits<5, 8, false>([&](unsigned char c) { data.push_back(c); }, dec.data.begin() + 1, dec.data.end())) { diff --git a/src/test/data/key_io_invalid.json b/src/test/data/key_io_invalid.json index 9b52943ac..376fa1ccd 100644 --- a/src/test/data/key_io_invalid.json +++ b/src/test/data/key_io_invalid.json @@ -6,177 +6,147 @@ "x" ], [ - "37qgekLpCCHrQuSjvX3fs496FWTGsHFHizjJAs6NPcR47aefnnCWECAhHV6E3g4YN7u7Yuwod5Y" + "1KyjgD9vFKmFSysJPUqQdXT8Yy5r82D6y74dfsg1ANTteuHJuP2q1aP1WgGX3oetFRtatKVXxPU" ], [ - "dzb7VV1Ui55BARxv7ATxAtCUeJsANKovDGWFVgpTbhq9gvPqP3yv" + "2CwgfUPJ6BCa16PuFjKeMzLJJUpqnXm9mCtoXVGiGN7s9dNCKfCN5SdT7cu4nMY5omWHPrQLAqYL" ], [ - "MuNu7ZAEDFiHthiunm7dPjwKqrVNCM3mAz6rP9zFveQu14YA8CxExSJTHcVP9DErn6u84E6Ej7S" + "grEx1jdq4kpgsvorxP5PRyjgbXpvAVpaL5HEcqpDmF6ZpwuqRbzHX64GZ9eUwoSTvmbQb9fnqnh" ], [ - "rPpQpYknyNQ5AEHuY6H8ijJJrYc2nDKKk9jjmKEXsWzyAQcFGpDLU2Zvsmoi8JLR7hAwoy3RQWf" + "7RSWWNt7pyiZkNnLTuocsLMM6e3c7Mvvq8phtaBVyhuceG37y9r" ], [ - "4Uc3FmN6NQ6zLBK5QQBXRBUREaaHwCZYsGCueHauuDmJpZKn6jkEskMB2Zi2CNgtb5r6epWEFfUJq" + "7VXvPTB9ZdTRUS2W1KpcykSA1XHaVrfUGhKvWQXQLMVUNefmaLkF9DFC4fZJ5aMCxmj4HRQcLFGix" ], [ - "7aQgR5DFQ25vyXmqZAWmnVCjL3PkBcdVkBUpjrjMTcghHx3E8wb" + "91bBALqY4D1Mmz4vqnCwdGSB4U1sqnZPrKZ8aHENoT5irq6bB9Nc" ], [ - "17QpPprjeg69fW1DV8DcYYCKvWjYhXvWkov6MJ1iTTvMFj6weAqW7wybZeH57WTNxXVCRH4veVs" + "tc19jm4rn" ], [ - "KxuACDviz8Xvpn1xAh9MfopySZNuyajYMZWz16Dv2mHHryznWUp3" + "bt1py306q853jeddsuaasstjxjz6l9uehmx8kgpe94lvvwj85rah56asxg35e3" ], [ - "7nK3GSmqdXJQtdohvGfJ7KsSmn3TmGqExug49583bDAL91pVSGq5xS9SHoAYL3Wv3ijKTit65th" + "tb13u87aul665v37upwmu9a4nh82rj9cv94x5tps52e39e6k56t2ryzqv9mkxa" ], [ - "cTivdBmq7bay3RFGEBBuNfMh2P1pDCgRYN2Wbxmgwr4ki3jNUL2va" + "bcrt1rkqk977nr" ], [ - "gjMV4vjNjyMrna4fsAr8bWxAbwtmMUBXJS3zL4NJt5qjozpbQLmAfK1uA3CquSqsZQMpoD1g2nk" + "bc10v6wh2rtujsn9hnsyfzzsd9y3rx9n8xhue0agk7c8q9tv3lga7css5jku9rstle93e5fhc8dl" ], [ - "emXm1naBMoVzPjbk7xpeTVMFy4oDEe25UmoyGgKEB1gGWsK8kRGs" + "tb1q9quwy0k48ne8ppmr7p0jhj6hks7smd7l" ], [ - "7VThQnNRj1o3Zyvc7XHPRrjDf8j2oivPTeDXnRPYWeYGE4pXeRJDZgf28ppti5hsHWXS2GSobdqyo" + "bcrt1q5l6rmlw2et02krnfgl9uuxp8q30dktcjvuzsw7gyk2ykkkm2td0prkw9de" ], [ - "1G9u6oCVCPh2o8m3t55ACiYvG1y5BHewUkDSdiQarDcYXXhFHYdzMdYfUAhfxn5vNZBwpgUNpso" + "bc1q5ezcdrt4qqmkcqz8n50hgww88gqzfx4m6" ], [ - "31QQ7ZMLkScDiB4VyZjuptr7AEc9j1SjstF7pRoLhHTGkW4Q2y9XELobQmhhWxeRvqcukGd1XCq" + "tb1q5gcna4un84qevljj3wk6rvm97f8f00gwtcu7v258cvn880wkf7gqesasqn" ], [ - "DHqKSnpxa8ZdQyH8keAhvLTrfkyBMQxqngcQA5N8LQ9KVt25kmGN" + "bcrt1qtevjqsc85md7pa0CQEnpvdx977juj30usufphy" ], [ - "2LUHcJPbwLCy9GLH1qXmfmAwvadWw4bp4PCpDfduLqV17s6iDcy1imUwhQJhAoNoN1XNmweiJP4i" + "bc1qret0yy8cmhsh6vw87lxtzt7w0sk4026l5qrvy7" ], [ - "7USRzBXAnmck8fX9HmW7RAb4qt92VFX6soCnts9s74wxm4gguVhtG5of8fZGbNPJA83irHVY6bCos" + "tb1qnw0xfgkucr4ysapsj8gd0u40fpj05n8cn24unkql8mc4ckkcp0mqc7acjd" ], [ - "1DGezo7BfVebZxAbNT3XGujdeHyNNBF3vnficYoTSp4PfK2QaML9bHzAMxke3wdKdHYWmsMTJVu" + "bcrt1qu26l525vmxfv59gxm2r0c8alnkpzmat2mga2qw" ], [ - "2D12DqDZKwCxxkzs1ZATJWvgJGhQ4cFi3WrizQ5zLAyhN5HxuAJ1yMYaJp8GuYsTLLxTAz6otCfb" + "bc1prjkeqgknynar5tj6v76yn3u27rep8jf366kmhglq898yn3aczk9ss73nrl" ], [ - "8AFJzuTujXjw1Z6M3fWhQ1ujDW7zsV4ePeVjVo7D1egERqSW9nZ" + "tb1zq0vsl9pta9uwh2txtrmxyedjtqcfkqt5" ], [ - "163Q17qLbTCue8YY3AvjpUhotuaodLm2uqMhpYirsKjVqnxJRWTEoywMVY3NbBAHuhAJ2cF9GAZ" + "bcrt1suvw5wa9elxy3a43ctljjn8avcmqpzwz5m4tycs" ], [ - "2MnmgiRH4eGLyLc9eAqStzk7dFgBjFtUCtu" + "gf7t7z22jkuKcEjc8gELEYau3NzgGFLtLNEdMpJKcVt6z7mmvEJHH37y36MNGSmriFaPAbGghdh" ], [ - "461QQ2sYWxU7H2PV4oBwJGNch8XVTYYbZxU" + "mn9CPaeodb6L1CtJu1KaLtJhDbYL55Hxwe" ], [ - "2UCtv53VttmQYkVU4VMtXB31REvQg4ABzs41AEKZ8UcB7DAfVzdkV9JDErwGwyj5AUHLkmgZeobs" + "cTSecEa3nqxF4mgYkGrxRKeWLpXWng6nUgL4sVeAhrNbtdf1z8hz1VFesD492QWZ4JprpRW1Drr" ], [ - "cSNjAsnhgtiFMi6MtfvgscMB2Cbhn2v1FUYfviJ1CdjfidvmeW6mn" + "4UjQEEvAT4Y9a3mtLFjzhcVBBKz8NiqAMfGhMwaSKgMqatpGT3qWzKY2f9HedshfSaAa439Vn3yNc" ], [ - "gmsow2Y6EWAFDFE1CE4Hd3Tpu2BvfmBfG1SXsuRARbnt1WjkZnFh1qGTiptWWbjsq2Q6qvpgJVj" + "5ip19k2UhwhpHMK8ym6ZGnLA8J9JvHzv418AwohCMf3WrCfwLhG" ], [ - "nksUKSkzS76v8EsSgozXGMoQFiCoCHzCVajFKAXqzK5on9ZJYVHMD5CKwgmX3S3c7M1U3xabUny" + "tc1qe7avhvpmn9le76kxlcvwl69ldm0n66gefjetyn" ], [ - "L3favK1UzFGgdzYBF2oBT5tbayCo4vtVBLJhg2iYuMeePxWG8SQc" + "bt1pz4l3ja200jyyhtaxvz4ffm3t33ares72745gwjspttzdllvmte5qs0kd5q" ], [ - "7VxLxGGtYT6N99GdEfi6xz56xdQ8nP2dG1CavuXx7Rf2PrvNMTBNevjkfgs9JmkcGm6EXpj8ipyPZ" + "tb13wthrv4wkvpxl57d0plyfqjxvzu9qmdzg7eldaeut2hmcpp02mw2q3ep6tw" ], [ - "2mbZwFXF6cxShaCo2czTRB62WTx9LxhTtpP" + "bcrt1rqg9chz23" ], [ - "dB7cwYdcPSgiyAwKWL3JwCVwSk6epU2txw" + "BC102A2J0QF2MX8926EQ3WZGDC45PXL4QN267673J7P7JMJ6VD0RDTAWVQ2ZFNP4JJAW85JXP080" ], [ - "HPhFUhUAh8ZQQisH8QQWafAxtQYju3SFTX" + "tb1qx0shsrwmrl57djkm0yyqdyp02cmpjmlw" ], [ - "4ctAH6AkHzq5ioiM1m9T3E2hiYEev5mTsB" + "bcrt17capp7" ], [ - "Hn1uFi4dNexWrqARpjMqgT6cX1UsNPuV3cHdGg9ExyXw8HTKadbktRDtdeVmY3M1BxJStiL4vjJ" + "bc1qvgrlqspye3z2ufaekn7qygm7guqjx982l" ], [ - "Sq3fDbvutABmnAHHExJDgPLQn44KnNC7UsXuT7KZecpaYDMU9Txs" + "tb1qk8lfs3l8df9gkw69240g0ckg4ywmw9qvmcm0pltxt8udk9szrhxqkhd5n2" ], [ - "6TqWyrqdgUEYDQU1aChMuFMMEimHX44qHFzCUgGfqxGgZNMUVWJ" + "bcrt1qKW6Cxkky8a7gyvmkw9p3v5l2gx8zgyjtjv7dl7" ], [ - "giqJo7oWqFxNKWyrgcBxAVHXnjJ1t6cGoEffce5Y1y7u649Noj5wJ4mmiUAKEVVrYAGg2KPB3Y4" + "bc1a8xfp7" ], [ - "cNzHY5e8vcmM3QVJUcjCyiKMYfeYvyueq5qCMV3kqcySoLyGLYUK" + "tb1dclvmr" ], [ - "37uTe568EYc9WLoHEd9jXEvUiWbq5LFLscNyqvAzLU5vBArUJA6eydkLmnMwJDjkL5kXc2VK7ig" + "bcrt1q26vevm7x046n9h3jg6zsgyd3228ra25ck7jah2" ], [ - "EsYbG4tWWWY45G31nox838qNdzksbPySWc" + "BC1PCCNQDKKS5ZQ0AC69MQYQXU8ADGSGE53UY3AXXHJYFDG77Y0WX9AQHEHRL7" ], [ - "nbuzhfwMoNzA3PaFnyLcRxE9bTJPDkjZ6Rf6Y6o2ckXZfzZzXBT" + "tb1zys2pfhe9fslxat85y7uc5e78uq7449ct" ], [ - "cQN9PoxZeCWK1x56xnz6QYAsvR11XAce3Ehp3gMUdfSQ53Y2mPzx" + "bcrt1slnwcpwf88ffa708xpfkm6a5wsaq9me7y0fmvg3" ], [ - "1Gm3N3rkef6iMbx4voBzaxtXcmmiMTqZPhcuAepRzYUJQW4qRpEnHvMojzof42hjFRf8PE2jPde" + "dhBi3wYUjrVsW1pA4XhLjdavSQYSnsECskAoZ1dqLnV8hCSxuo9EZ9tf4cCoxn7fnKgCoJK3mcE" ], [ - "2TAq2tuN6x6m233bpT7yqdYQPELdTDJn1eU" + "2UFHPygbpDdbzmQx688QnMqSunZi97Yn5T7DVBdKyTD7sCfGi5fi8r2ct92FNUZPMm1xswo8Ve8c" ], [ - "ntEtnnGhqPii4joABvBtSEJG6BxjT2tUZqE8PcVYgk3RHpgxgHDCQxNbLJf7ardf1dDk2oCQ7Cf" + "2yAaXFzjninFv5dn3JnWQ5y9nYkK5ZCMAkDWr4Y9WUiCGa3UiYfs" ], [ - "Ky1YjoZNgQ196HJV3HpdkecfhRBmRZdMJk89Hi5KGfpfPwS2bUbfd" + "tc1qmfcz6l7gfwwt0tucqgtmhwlkgtd47a3urnjpt4" ], [ - "2A1q1YsMZowabbvta7kTy2Fd6qN4r5ZCeG3qLpvZBMzCixMUdkN2Y4dHB1wPsZAeVXUGD83MfRED" - ], - [ - "tc1qw508d6qejxtdg4y5r3zarvary0c5xw7kg3g4ty" - ], - [ - "bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t5" - ], - [ - "BC13W508D6QEJXTDG4Y5R3ZARVARY0C5XW7KN40WF2" - ], - [ - "bc1rw5uspcuh" - ], - [ - "bc10w508d6qejxtdg4y5r3zarvary0c5xw7kw508d6qejxtdg4y5r3zarvary0c5xw7kw5rljs90" - ], - [ - "BC1QR508D6QEJXTDG4Y5R3ZARVARYV98GJ9P" - ], - [ - "tb1qrp33g0q5c5txsp9arysrx4k6zdkfs4nce4xj0gdcccefvpysxf3q0sL5k7" - ], - [ - "bc1zw508d6qejxtdg4y5r3zarvaryvqyzf3du" - ], - [ - "tb1qrp33g0q5c5txsp9arysrx4k6zdkfs4nce4xj0gdcccefvpysxf3pjxtptv" - ], - [ - "bc1gmk9yu" + "bt1flep4g" ] ] diff --git a/src/test/data/key_io_valid.json b/src/test/data/key_io_valid.json index 8418a6002..eea78aab2 100644 --- a/src/test/data/key_io_valid.json +++ b/src/test/data/key_io_valid.json @@ -1,533 +1,438 @@ [ [ - "1AGNa15ZQXAZUgFiqJ2i7Z2DPU2J6hW62i", - "76a91465a16059864a2fdbc7c99a4723a8395bc6f188eb88ac", + "1LsN3xZdsNiSMiVc45AGBdhtkQZG53tKpx", + "76a914d9f0c2ae3652e96389b4481a510f0b2b96da1d0888ac", { - "isPrivkey": false, - "chain": "main" - } - ], - [ - "3CMNFxN1oHBc4R1EpboAL5yzHGgE611Xou", - "a91474f209f6ea907e2ea48f74fae05782ae8a66525787", - { - "isPrivkey": false, - "chain": "main" - } - ], - [ - "mo9ncXisMeAoXwqcV5EWuyncbmCcQN4rVs", - "76a91453c0307d6851aa0ce7825ba883c6bd9ad242b48688ac", - { - "isPrivkey": false, - "chain": "test" - } - ], - [ - "mo9ncXisMeAoXwqcV5EWuyncbmCcQN4rVs", - "76a91453c0307d6851aa0ce7825ba883c6bd9ad242b48688ac", - { - "isPrivkey": false, - "chain": "regtest" - } - ], - [ - "2N2JD6wb56AfK4tfmM6PwdVmoYk2dCKf4Br", - "a9146349a418fc4578d10a372b54b45c280cc8c4382f87", - { - "isPrivkey": false, - "chain": "test" - } - ], - [ - "5Kd3NBUAdUnhyzenEwVLy9pBKxSwXvE9FMPyR4UKZvpe6E3AgLr", - "eddbdc1168f1daeadbd3e44c1e3f8f5a284c2029f78ad26af98583a499de5b19", - { - "isCompressed": false, - "isPrivkey": true, - "chain": "main" - } - ], - [ - "Kz6UJmQACJmLtaQj5A3JAge4kVTNQ8gbvXuwbmCj7bsaabudb3RD", - "55c9bccb9ed68446d1b75273bbce89d7fe013a8acd1625514420fb2aca1a21c4", - { - "isCompressed": true, - "isPrivkey": true, - "chain": "main" - } - ], - [ - "9213qJab2HNEpMpYNBa7wHGFKKbkDn24jpANDs2huN3yi4J11ko", - "36cb93b9ab1bdabf7fb9f2c04f1b9cc879933530ae7842398eef5a63a56800c2", - { - "isCompressed": false, - "isPrivkey": true, - "chain": "test" - } - ], - [ - "9213qJab2HNEpMpYNBa7wHGFKKbkDn24jpANDs2huN3yi4J11ko", - "36cb93b9ab1bdabf7fb9f2c04f1b9cc879933530ae7842398eef5a63a56800c2", - { - "isCompressed": false, - "isPrivkey": true, - "chain": "regtest" - } - ], - [ - "cTpB4YiyKiBcPxnefsDpbnDxFDffjqJob8wGCEDXxgQ7zQoMXJdH", - "b9f4892c9e8282028fea1d2667c4dc5213564d41fc5783896a0d843fc15089f3", - { - "isCompressed": true, - "isPrivkey": true, - "chain": "test" - } - ], - [ - "cTpB4YiyKiBcPxnefsDpbnDxFDffjqJob8wGCEDXxgQ7zQoMXJdH", - "b9f4892c9e8282028fea1d2667c4dc5213564d41fc5783896a0d843fc15089f3", - { - "isCompressed": true, - "isPrivkey": true, - "chain": "regtest" - } - ], - [ - "1Ax4gZtb7gAit2TivwejZHYtNNLT18PUXJ", - "76a9146d23156cbbdcc82a5a47eee4c2c7c583c18b6bf488ac", - { - "isPrivkey": false, - "chain": "main" - } - ], - [ - "3QjYXhTkvuj8qPaXHTTWb5wjXhdsLAAWVy", - "a914fcc5460dd6e2487c7d75b1963625da0e8f4c597587", - { - "isPrivkey": false, - "chain": "main" - } - ], - [ - "n3ZddxzLvAY9o7184TB4c6FJasAybsw4HZ", - "76a914f1d470f9b02370fdec2e6b708b08ac431bf7a5f788ac", - { - "isPrivkey": false, - "chain": "test" - } - ], - [ - "2NBFNJTktNa7GZusGbDbGKRZTxdK9VVez3n", - "a914c579342c2c4c9220205e2cdc285617040c924a0a87", - { - "isPrivkey": false, - "chain": "test" - } - ], - [ - "5K494XZwps2bGyeL71pWid4noiSNA2cfCibrvRWqcHSptoFn7rc", - "a326b95ebae30164217d7a7f57d72ab2b54e3be64928a19da0210b9568d4015e", - { - "isCompressed": false, - "isPrivkey": true, - "chain": "main" - } - ], - [ - "L1RrrnXkcKut5DEMwtDthjwRcTTwED36thyL1DebVrKuwvohjMNi", - "7d998b45c219a1e38e99e7cbd312ef67f77a455a9b50c730c27f02c6f730dfb4", - { - "isCompressed": true, - "isPrivkey": true, - "chain": "main" - } - ], - [ - "93DVKyFYwSN6wEo3E2fCrFPUp17FtrtNi2Lf7n4G3garFb16CRj", - "d6bca256b5abc5602ec2e1c121a08b0da2556587430bcf7e1898af2224885203", - { - "isCompressed": false, - "isPrivkey": true, - "chain": "test" - } - ], - [ - "cTDVKtMGVYWTHCb1AFjmVbEbWjvKpKqKgMaR3QJxToMSQAhmCeTN", - "a81ca4e8f90181ec4b61b6a7eb998af17b2cb04de8a03b504b9e34c4c61db7d9", - { - "isCompressed": true, - "isPrivkey": true, - "chain": "test" - } - ], - [ - "1C5bSj1iEGUgSTbziymG7Cn18ENQuT36vv", - "76a9147987ccaa53d02c8873487ef919677cd3db7a691288ac", - { - "isPrivkey": false, - "chain": "main" - } - ], - [ - "3AnNxabYGoTxYiTEZwFEnerUoeFXK2Zoks", - "a91463bcc565f9e68ee0189dd5cc67f1b0e5f02f45cb87", - { - "isPrivkey": false, - "chain": "main" - } - ], - [ - "n3LnJXCqbPjghuVs8ph9CYsAe4Sh4j97wk", - "76a914ef66444b5b17f14e8fae6e7e19b045a78c54fd7988ac", - { - "isPrivkey": false, - "chain": "test" - } - ], - [ - "2NB72XtkjpnATMggui83aEtPawyyKvnbX2o", - "a914c3e55fceceaa4391ed2a9677f4a4d34eacd021a087", - { - "isPrivkey": false, - "chain": "test" - } - ], - [ - "5KaBW9vNtWNhc3ZEDyNCiXLPdVPHCikRxSBWwV9NrpLLa4LsXi9", - "e75d936d56377f432f404aabb406601f892fd49da90eb6ac558a733c93b47252", - { - "isCompressed": false, - "isPrivkey": true, - "chain": "main" - } - ], - [ - "L1axzbSyynNYA8mCAhzxkipKkfHtAXYF4YQnhSKcLV8YXA874fgT", - "8248bd0375f2f75d7e274ae544fb920f51784480866b102384190b1addfbaa5c", - { - "isCompressed": true, - "isPrivkey": true, - "chain": "main" - } - ], - [ - "927CnUkUbasYtDwYwVn2j8GdTuACNnKkjZ1rpZd2yBB1CLcnXpo", - "44c4f6a096eac5238291a94cc24c01e3b19b8d8cef72874a079e00a242237a52", - { - "isCompressed": false, - "isPrivkey": true, - "chain": "test" - } - ], - [ - "cUcfCMRjiQf85YMzzQEk9d1s5A4K7xL5SmBCLrezqXFuTVefyhY7", - "d1de707020a9059d6d3abaf85e17967c6555151143db13dbb06db78df0f15c69", - { - "isCompressed": true, - "isPrivkey": true, - "chain": "test" - } - ], - [ - "1Gqk4Tv79P91Cc1STQtU3s1W6277M2CVWu", - "76a914adc1cc2081a27206fae25792f28bbc55b831549d88ac", - { - "isPrivkey": false, - "chain": "main" - } - ], - [ - "33vt8ViH5jsr115AGkW6cEmEz9MpvJSwDk", - "a914188f91a931947eddd7432d6e614387e32b24470987", - { - "isPrivkey": false, - "chain": "main" - } - ], - [ - "mhaMcBxNh5cqXm4aTQ6EcVbKtfL6LGyK2H", - "76a9141694f5bc1a7295b600f40018a618a6ea48eeb49888ac", - { - "isPrivkey": false, - "chain": "test" - } - ], - [ - "2MxgPqX1iThW3oZVk9KoFcE5M4JpiETssVN", - "a9143b9b3fd7a50d4f08d1a5b0f62f644fa7115ae2f387", - { - "isPrivkey": false, - "chain": "test" - } - ], - [ - "5HtH6GdcwCJA4ggWEL1B3jzBBUB8HPiBi9SBc5h9i4Wk4PSeApR", - "091035445ef105fa1bb125eccfb1882f3fe69592265956ade751fd095033d8d0", - { - "isCompressed": false, - "isPrivkey": true, - "chain": "main" - } - ], - [ - "L2xSYmMeVo3Zek3ZTsv9xUrXVAmrWxJ8Ua4cw8pkfbQhcEFhkXT8", - "ab2b4bcdfc91d34dee0ae2a8c6b6668dadaeb3a88b9859743156f462325187af", - { - "isCompressed": true, - "isPrivkey": true, - "chain": "main" - } - ], - [ - "92xFEve1Z9N8Z641KQQS7ByCSb8kGjsDzw6fAmjHN1LZGKQXyMq", - "b4204389cef18bbe2b353623cbf93e8678fbc92a475b664ae98ed594e6cf0856", - { - "isCompressed": false, - "isPrivkey": true, - "chain": "test" - } - ], - [ - "92xFEve1Z9N8Z641KQQS7ByCSb8kGjsDzw6fAmjHN1LZGKQXyMq", - "b4204389cef18bbe2b353623cbf93e8678fbc92a475b664ae98ed594e6cf0856", - { - "isCompressed": false, - "isPrivkey": true, - "chain": "regtest" - } - ], - [ - "cVM65tdYu1YK37tNoAyGoJTR13VBYFva1vg9FLuPAsJijGvG6NEA", - "e7b230133f1b5489843260236b06edca25f66adb1be455fbd38d4010d48faeef", - { - "isCompressed": true, - "isPrivkey": true, - "chain": "test" - } - ], - [ - "1JwMWBVLtiqtscbaRHai4pqHokhFCbtoB4", - "76a914c4c1b72491ede1eedaca00618407ee0b772cad0d88ac", - { - "isPrivkey": false, - "chain": "main" - } - ], - [ - "3QCzvfL4ZRvmJFiWWBVwxfdaNBT8EtxB5y", - "a914f6fe69bcb548a829cce4c57bf6fff8af3a5981f987", - { - "isPrivkey": false, - "chain": "main" - } - ], - [ - "mizXiucXRCsEriQCHUkCqef9ph9qtPbZZ6", - "76a914261f83568a098a8638844bd7aeca039d5f2352c088ac", - { - "isPrivkey": false, - "chain": "test" - } - ], - [ - "2NEWDzHWwY5ZZp8CQWbB7ouNMLqCia6YRda", - "a914e930e1834a4d234702773951d627cce82fbb5d2e87", - { - "isPrivkey": false, - "chain": "test" - } - ], - [ - "5KQmDryMNDcisTzRp3zEq9e4awRmJrEVU1j5vFRTKpRNYPqYrMg", - "d1fab7ab7385ad26872237f1eb9789aa25cc986bacc695e07ac571d6cdac8bc0", - { - "isCompressed": false, - "isPrivkey": true, - "chain": "main" - } - ], - [ - "L39Fy7AC2Hhj95gh3Yb2AU5YHh1mQSAHgpNixvm27poizcJyLtUi", - "b0bbede33ef254e8376aceb1510253fc3550efd0fcf84dcd0c9998b288f166b3", - { - "isCompressed": true, - "isPrivkey": true, - "chain": "main" - } - ], - [ - "91cTVUcgydqyZLgaANpf1fvL55FH53QMm4BsnCADVNYuWuqdVys", - "037f4192c630f399d9271e26c575269b1d15be553ea1a7217f0cb8513cef41cb", - { - "isCompressed": false, - "isPrivkey": true, - "chain": "test" - } - ], - [ - "cQspfSzsgLeiJGB2u8vrAiWpCU4MxUT6JseWo2SjXy4Qbzn2fwDw", - "6251e205e8ad508bab5596bee086ef16cd4b239e0cc0c5d7c4e6035441e7d5de", - { - "isCompressed": true, - "isPrivkey": true, - "chain": "test" - } - ], - [ - "19dcawoKcZdQz365WpXWMhX6QCUpR9SY4r", - "76a9145eadaf9bb7121f0f192561a5a62f5e5f5421029288ac", - { - "isPrivkey": false, - "chain": "main" - } - ], - [ - "37Sp6Rv3y4kVd1nQ1JV5pfqXccHNyZm1x3", - "a9143f210e7277c899c3a155cc1c90f4106cbddeec6e87", - { - "isPrivkey": false, - "chain": "main" - } - ], - [ - "myoqcgYiehufrsnnkqdqbp69dddVDMopJu", - "76a914c8a3c2a09a298592c3e180f02487cd91ba3400b588ac", - { - "isPrivkey": false, - "chain": "test" - } - ], - [ - "2N7FuwuUuoTBrDFdrAZ9KxBmtqMLxce9i1C", - "a91499b31df7c9068d1481b596578ddbb4d3bd90baeb87", - { - "isPrivkey": false, - "chain": "test" - } - ], - [ - "5KL6zEaMtPRXZKo1bbMq7JDjjo1bJuQcsgL33je3oY8uSJCR5b4", - "c7666842503db6dc6ea061f092cfb9c388448629a6fe868d068c42a488b478ae", - { - "isCompressed": false, - "isPrivkey": true, - "chain": "main" - } - ], - [ - "KwV9KAfwbwt51veZWNscRTeZs9CKpojyu1MsPnaKTF5kz69H1UN2", - "07f0803fc5399e773555ab1e8939907e9badacc17ca129e67a2f5f2ff84351dd", - { - "isCompressed": true, - "isPrivkey": true, - "chain": "main" - } - ], - [ - "93N87D6uxSBzwXvpokpzg8FFmfQPmvX4xHoWQe3pLdYpbiwT5YV", - "ea577acfb5d1d14d3b7b195c321566f12f87d2b77ea3a53f68df7ebf8604a801", - { - "isCompressed": false, - "isPrivkey": true, - "chain": "test" - } - ], - [ - "cMxXusSihaX58wpJ3tNuuUcZEQGt6DKJ1wEpxys88FFaQCYjku9h", - "0b3b34f0958d8a268193a9814da92c3e8b58b4a4378a542863e34ac289cd830c", - { - "isCompressed": true, - "isPrivkey": true, - "chain": "test" - } - ], - [ - "13p1ijLwsnrcuyqcTvJXkq2ASdXqcnEBLE", - "76a9141ed467017f043e91ed4c44b4e8dd674db211c4e688ac", - { - "isPrivkey": false, - "chain": "main" - } - ], - [ - "3ALJH9Y951VCGcVZYAdpA3KchoP9McEj1G", - "a9145ece0cadddc415b1980f001785947120acdb36fc87", - { - "isPrivkey": false, - "chain": "main" - } - ], - [ - "bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4", - "0014751e76e8199196d454941c45d1b3a323f1433bd6", - { - "isPrivkey": false, "chain": "main", - "tryCaseFlip": true + "isPrivkey": false } ], [ - "bcrt1qw508d6qejxtdg4y5r3zarvary0c5xw7kygt080", - "0014751e76e8199196d454941c45d1b3a323f1433bd6", + "3MJLKTjYK8U2LSE5G8qH66P6cTkd2fbYKo", + "a914d7184dd5b2ac5ffa6b808271b51d39610ca2952187", { - "isPrivkey": false, - "chain": "regtest", - "tryCaseFlip": true + "chain": "main", + "isPrivkey": false } ], [ - "tb1qrp33g0q5c5txsp9arysrx4k6zdkfs4nce4xj0gdcccefvpysxf3q0sl5k7", - "00201863143c14c5166804bd19203356da136c985678cd4d27a1b8c6329604903262", + "mvAUuoN11iBG6xx7AiX3ifUV9WpDfmPa8u", + "76a914a0aab571f298b042bc9bce37d8a45f9d37e9c5ef88ac", { - "isPrivkey": false, "chain": "test", - "tryCaseFlip": true + "isPrivkey": false } ], [ - "bc1pw508d6qejxtdg4y5r3zarvary0c5xw7kw508d6qejxtdg4y5r3zarvary0c5xw7k7grplx", - "5128751e76e8199196d454941c45d1b3a323f1433bd6751e76e8199196d454941c45d1b3a323f1433bd6", + "2MsFPtk8t5LQw7nBpFmsCjf8r9e5vfMMdPX", + "a914000844921919a97eca8adb5b63c02ecf7dc212eb87", { - "isPrivkey": false, - "chain": "main", - "tryCaseFlip": true - } - ], - [ - "bc1sw50qa3jx3s", - "6002751e", - { - "isPrivkey": false, - "chain": "main", - "tryCaseFlip": true - } - ], - [ - "bc1zw508d6qejxtdg4y5r3zarvaryvg6kdaj", - "5210751e76e8199196d454941c45d1b3a323", - { - "isPrivkey": false, - "chain": "main", - "tryCaseFlip": true - } - ], - [ - "tb1qqqqqp399et2xygdj5xreqhjjvcmzhxw4aywxecjdzew6hylgvsesrxh6hy", - "0020000000c4a5cad46221b2a187905e5266362b99d5e91c6ce24d165dab93e86433", - { - "isPrivkey": false, "chain": "test", + "isPrivkey": false + } + ], + [ + "mjC3aAxQcm6QeeJJ81pnpX61xMMgUXuJUG", + "76a914284d017134105d53e712d7801def91cfe6b3b26088ac", + { + "chain": "regtest", + "isPrivkey": false + } + ], + [ + "2N7sKNwAst83ARAqh1z5Ahrt1UieLQZARvc", + "a914a0653c424a38b1c7d43ccafb83c90e96da58149c87", + { + "chain": "regtest", + "isPrivkey": false + } + ], + [ + "5J8KazNMuftbk6azCPQb5YhuiQJddSUmJcyYMbSwo8wiUFNcNQJ", + "28f3200da1464c7a9d7456f03980471142a63bcf2bd65f87096694a10c20c6ee", + { + "chain": "main", + "isCompressed": false, + "isPrivkey": true + } + ], + [ + "L44JDntsb8mGGLLJXwoEtbYbH1Sf5PZTigvVcA18184sexkwG65w", + "cc04f03e141b18f3debe86edf6daaa2f1b84169515774c5489db97b5a2d09153", + { + "chain": "main", + "isCompressed": true, + "isPrivkey": true + } + ], + [ + "93A1NRTKmTeKHinsqaPDLqMnsrhZtdgNJJ4SxEB6n7mGtfxk4Bo", + "ced49a2c0d95a062b2da31cc3e04dbad74cf4f93a928c77fd32e8fcca0552926", + { + "chain": "test", + "isCompressed": false, + "isPrivkey": true + } + ], + [ + "cQmrxBnJjdhJFJo98LnNysqDaxUKWBQANYsArzrxsRZhKtaCAqkr", + "5f40e71ffb52d0c31786fb6018db39e964c7d5a6b946590461fd7b28e1c4571e", + { + "chain": "test", + "isCompressed": true, + "isPrivkey": true + } + ], + [ + "92kU7nc1yidzKyJdJGDNhNHvjD26KGB2JtTdKK7XyEvm7hWnb1m", + "9961f71b7f22fe502330464805548ac3f5391ff013b91d56608ca0d18e5d9e75", + { + "chain": "regtest", + "isCompressed": false, + "isPrivkey": true + } + ], + [ + "cSdQEjZBzGGsZT5td11rRJqcbQ3fvz8pVrM6rkKUuJLSUFwPEWTe", + "96936c11e60fc08e0fb288776368ad7d754eee11753c39bad4211a5b671c875d", + { + "chain": "regtest", + "isCompressed": true, + "isPrivkey": true + } + ], + [ + "bc1qqsjhe0x35lnvcxhf0de0djyqj8gfxwc90g7w8u", + "001404257cbcd1a7e6cc1ae97b72f6c88091d0933b05", + { + "chain": "main", + "isPrivkey": false, "tryCaseFlip": true } ], [ - "bcrt1qqqqqp399et2xygdj5xreqhjjvcmzhxw4aywxecjdzew6hylgvseswlauz7", - "0020000000c4a5cad46221b2a187905e5266362b99d5e91c6ce24d165dab93e86433", + "bc1qxdyx9mr8hp39mnjdamv5f4m9908nm98zv0tt34pzd0xhrkgnelcqjh32xa", + "0020334862ec67b8625dce4deed944d7652bcf3d94e263d6b8d4226bcd71d913cff0", { + "chain": "main", "isPrivkey": false, - "chain": "regtest", "tryCaseFlip": true } + ], + [ + "bc1p2g8z7e58vl5epg9x7en4m5e9x67ekastycnlucc2z2n3ucvmppxqnjtw5m", + "5120520e2f668767e990a0a6f6675dd32536bd9b760b2627fe630a12a71e619b084c", + { + "chain": "main", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "bc1zyczqag2mv2", + "52022604", + { + "chain": "main", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "tb1qx3wv854zd2emkzfc83j2t2adzftkdq4kc0t05d", + "0014345cc3d2a26ab3bb09383c64a5abad12576682b6", + { + "chain": "test", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "tb1qgjr9pkgglh8sw4ksg406xfyl7n2rz5awa5uddeqgn4y96w9khf9s2awvsc", + "0020448650d908fdcf0756d0455fa3249ff4d43153aeed38d6e4089d485d38b6ba4b", + { + "chain": "test", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "tb1pqhdwj0m7xg6c95vn07qwce4hy5nmhmqvhayx5w8zvf2hye27vruswrc2t7", + "512005dae93f7e323582d1937f80ec66b72527bbec0cbf486a38e2625572655e60f9", + { + "chain": "test", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "tb1rjfpgh7cnpkqfrq76ekkgucwdqgklltya", + "531092428bfb130d809183dacdac8e61cd02", + { + "chain": "test", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "bcrt1qq6dlzfmth08txpj06gm0jj5qaw7j8jj8qlkwdu", + "0014069bf1276bbbceb3064fd236f94a80ebbd23ca47", + { + "chain": "regtest", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "bcrt1q3708vp22qn6ezk47lx2g0ck3tvrm7s0dj7naajlxwegm4289gjlqcwwf29", + "00208f9e76054a04f5915abef99487e2d15b07bf41ed97a7decbe67651baa8e544be", + { + "chain": "regtest", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "bcrt1pdt8nx0wk2xmv0fv0tg9l4ps87nes44dwz8s7yd0xppnxv22k2lcsssg874", + "51206acf333dd651b6c7a58f5a0bfa8607f4f30ad5ae11e1e235e6086666295657f1", + { + "chain": "regtest", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "bcrt1sxs49j3ctsrqpvju8wtszynehlcmgx82hmhs6kckvkyzw24d3r6j29kf3gjmmpmxwx00n7m", + "6028342a59470b80c0164b8772e0224f37fe36831d57dde1ab62ccb104e555b11ea4a2d93144b7b0ecce", + { + "chain": "regtest", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "1HYHMSsBJnA3tkACp8Yet1DEfbc63u4ku4", + "76a914b56c8ec8a6297b2804113ddabd34fb95c574fca788ac", + { + "chain": "main", + "isPrivkey": false + } + ], + [ + "3BiJtoZKF93YdYARkHxDdCYbRzwWuN9Dwa", + "a9146defd6f293368f683654fefac42f0fe20add132f87", + { + "chain": "main", + "isPrivkey": false + } + ], + [ + "n2FK7HfSTMg8M5A4haEhSr92xUmRFsi5PS", + "76a914e3655c6d2ae661c1a2e3a84a8ebb3663d2a5478d88ac", + { + "chain": "test", + "isPrivkey": false + } + ], + [ + "2NFiGy8rTrrNKtb7NHoWDpuPtJitNAg2KYr", + "a914f6707c684df7be7e37402fb86578b7d31bcff88387", + { + "chain": "test", + "isPrivkey": false + } + ], + [ + "mqvNPprrNJxRnN7aopLgcgzfuZFa9pZRNw", + "76a914721ef1357a0e3a55920e1cbbafabaa1f675befda88ac", + { + "chain": "regtest", + "isPrivkey": false + } + ], + [ + "2N1hdjsHKpLrbXFh1uFLoP8LF9ykukL8mfz", + "a9145cbfa5e24b2a9c85202c1a49d949cd202c9d24b087", + { + "chain": "regtest", + "isPrivkey": false + } + ], + [ + "5JEgGYoTJ9dwkvhM1RBtTYHFCLKHYSsetvuusjT8jBRgxkLHbVw", + "376213ede0cff4e5a9a99dc62621849edd12e84e32e50b4c2fd872b2a90a539b", + { + "chain": "main", + "isCompressed": false, + "isPrivkey": true + } + ], + [ + "L4eTMSFgakGfGEv88oZfZTHPicfSpSRLmqkd5xUwM5mRvGdUNWcG", + "dd97572e04e485cb3459c25bd5673159e37a5dfce8f6683c03886cf52c766df0", + { + "chain": "main", + "isCompressed": true, + "isPrivkey": true + } + ], + [ + "92Vw1zxCpQeadmn9oo3DcaAzYYATC8E4dxYWcLEpJvmLDGCTpV6", + "78605efe8bc054d0ee79eed107446856c3c359add661a5f450e9a34dcfd9c7a0", + { + "chain": "test", + "isCompressed": false, + "isPrivkey": true + } + ], + [ + "cNUakHTv7yJopxUZQ3cM5RC4VfMFkUdCAyQ9jtefhomhpyqpjKiL", + "1ab086b845c8776e6f86468b2d7cf782a5b81096274a10b5a21dbf2fbbb20cc6", + { + "chain": "test", + "isCompressed": true, + "isPrivkey": true + } + ], + [ + "92KS5stuYsoRe4PsxD6DTQsL3HL8oicdVwgwKvJTBeLe9JbFsAV", + "60899bbfa276d9263c47b92d0f3508acb42810ce00f44de1e8cb0abd628aae13", + { + "chain": "regtest", + "isCompressed": false, + "isPrivkey": true + } + ], + [ + "cTz7XPo8zzoemHZVoATACAE9L9jzrdJ8Fkkg7a2ZQ52p9gqAASCL", + "bf11771d24fd18daa0a4d9b379cecb9cc7c82177e66f233515351cc05b207007", + { + "chain": "regtest", + "isCompressed": true, + "isPrivkey": true + } + ], + [ + "bc1q6xw4mq83zgpzyedqtpgh65u7psaarrz768pwsc", + "0014d19d5d80f112022265a058517d539e0c3bd18c5e", + { + "chain": "main", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "bc1quncjnjmmk4tyxdypl80wqv90lc7qfksp3mcv8lr5zyg9e9y7pv8s09h58f", + "0020e4f129cb7bb556433481f9dee030affe3c04da018ef0c3fc7411105c949e0b0f", + { + "chain": "main", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "bc1prf34k6kzuf7vugngsz36guj5ykknjt3l36ch5ykdgemuaflfzvhs45h9c3", + "51201a635b6ac2e27cce226880a3a4725425ad392e3f8eb17a12cd4677cea7e9132f", + { + "chain": "main", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "bc1zaxgqtcvx3y", + "5202e990", + { + "chain": "main", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "tb1q0xeygzklzdcke5fpae8dj4gp7favyg285gy3ez", + "001479b2440adf13716cd121ee4ed95501f27ac22147", + { + "chain": "test", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "tb1qmrryvv8jl4cdkce3s856whutzrkfcd2lytv3rqwxkj23ktf9fzzqcylgum", + "0020d8c64630f2fd70db633181e9a75f8b10ec9c355f22d91181c6b4951b2d254884", + { + "chain": "test", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "tb1pv5235wgguf7fu8ajjs0vfpzhgwvwdvxsu88mjrr82cp9esy6467sgt7uws", + "512065151a3908e27c9e1fb2941ec484574398e6b0d0e1cfb90c6756025cc09aaebd", + { + "chain": "test", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "tb1rzhkfz2she865pjqz2dqa3kv0lvfftkeu", + "531015ec912a17c9f540c8025341d8d98ffb", + { + "chain": "test", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "bcrt1qp09acyw3823sggs8uyq6yv2vpxe4lq8scuxmef", + "00140bcbdc11d13aa3042207e101a2314c09b35f80f0", + { + "chain": "regtest", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "bcrt1qlnpqh99rp80qn6jkgc0zs7acyc50erwp8eefr3zzkrj7ps739fzqzla273", + "0020fcc20b94a309de09ea56461e287bb82628fc8dc13e7291c442b0e5e0c3d12a44", + { + "chain": "regtest", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "bcrt1p3zd30ugrjyl587qqyu48vqclt3yawauzw6pwt3cpkskvczrytywsjpyxnq", + "5120889b17f103913f43f800272a76031f5c49d777827682e5c701b42ccc0864591d", + { + "chain": "regtest", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "bcrt1stgtmagdaa9dqf0rtsxszgcd232g62t43dvkqmmmpf7deqllv576373vc5k9fps08hq3hek", + "60285a17bea1bde95a04bc6b81a02461aa8a91a52eb16b2c0def614f9b907feca7b51f4598a58a90c1e7", + { + "chain": "regtest", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "1Au8D5w97THBxXDyjCn5o8UcUWHFgZeoWv", + "76a9146c94c780911ea77c43eee9dc7ce4cd5eeab1e2fa88ac", + { + "chain": "main", + "isPrivkey": false + } + ], + [ + "3R2FhhgAE4fM6npLMavoBeedrnDJCN4Ho6", + "a914ffee4c4faa197a760f901d25880c56f9d635fc8987", + { + "chain": "main", + "isPrivkey": false + } ] ] diff --git a/test/functional/test_framework/segwit_addr.py b/test/functional/test_framework/segwit_addr.py index 00c0d8a91..861ca2b94 100644 --- a/test/functional/test_framework/segwit_addr.py +++ b/test/functional/test_framework/segwit_addr.py @@ -2,10 +2,18 @@ # Copyright (c) 2017 Pieter Wuille # Distributed under the MIT software license, see the accompanying # file COPYING or http://www.opensource.org/licenses/mit-license.php. -"""Reference implementation for Bech32 and segwit addresses.""" +"""Reference implementation for Bech32/Bech32m and segwit addresses.""" import unittest +from enum import Enum CHARSET = "qpzry9x8gf2tvdw0s3jn54khce6mua7l" +BECH32_CONST = 1 +BECH32M_CONST = 0x2bc830a3 + +class Encoding(Enum): + """Enumeration type to list the various supported encodings.""" + BECH32 = 1 + BECH32M = 2 def bech32_polymod(values): @@ -27,38 +35,45 @@ def bech32_hrp_expand(hrp): def bech32_verify_checksum(hrp, data): """Verify a checksum given HRP and converted data characters.""" - return bech32_polymod(bech32_hrp_expand(hrp) + data) == 1 + check = bech32_polymod(bech32_hrp_expand(hrp) + data) + if check == BECH32_CONST: + return Encoding.BECH32 + elif check == BECH32M_CONST: + return Encoding.BECH32M + else: + return None - -def bech32_create_checksum(hrp, data): +def bech32_create_checksum(encoding, hrp, data): """Compute the checksum values given HRP and data.""" values = bech32_hrp_expand(hrp) + data - polymod = bech32_polymod(values + [0, 0, 0, 0, 0, 0]) ^ 1 + const = BECH32M_CONST if encoding == Encoding.BECH32M else BECH32_CONST + polymod = bech32_polymod(values + [0, 0, 0, 0, 0, 0]) ^ const return [(polymod >> 5 * (5 - i)) & 31 for i in range(6)] -def bech32_encode(hrp, data): - """Compute a Bech32 string given HRP and data values.""" - combined = data + bech32_create_checksum(hrp, data) +def bech32_encode(encoding, hrp, data): + """Compute a Bech32 or Bech32m string given HRP and data values.""" + combined = data + bech32_create_checksum(encoding, hrp, data) return hrp + '1' + ''.join([CHARSET[d] for d in combined]) def bech32_decode(bech): - """Validate a Bech32 string, and determine HRP and data.""" + """Validate a Bech32/Bech32m string, and determine HRP and data.""" if ((any(ord(x) < 33 or ord(x) > 126 for x in bech)) or (bech.lower() != bech and bech.upper() != bech)): - return (None, None) + return (None, None, None) bech = bech.lower() pos = bech.rfind('1') if pos < 1 or pos + 7 > len(bech) or len(bech) > 90: - return (None, None) + return (None, None, None) if not all(x in CHARSET for x in bech[pos+1:]): - return (None, None) + return (None, None, None) hrp = bech[:pos] data = [CHARSET.find(x) for x in bech[pos+1:]] - if not bech32_verify_checksum(hrp, data): - return (None, None) - return (hrp, data[:-6]) + encoding = bech32_verify_checksum(hrp, data) + if encoding is None: + return (None, None, None) + return (encoding, hrp, data[:-6]) def convertbits(data, frombits, tobits, pad=True): @@ -86,7 +101,7 @@ def convertbits(data, frombits, tobits, pad=True): def decode_segwit_address(hrp, addr): """Decode a segwit address.""" - hrpgot, data = bech32_decode(addr) + encoding, hrpgot, data = bech32_decode(addr) if hrpgot != hrp: return (None, None) decoded = convertbits(data[1:], 5, 8, False) @@ -96,12 +111,15 @@ def decode_segwit_address(hrp, addr): return (None, None) if data[0] == 0 and len(decoded) != 20 and len(decoded) != 32: return (None, None) + if (data[0] == 0 and encoding != Encoding.BECH32) or (data[0] != 0 and encoding != Encoding.BECH32M): + return (None, None) return (data[0], decoded) def encode_segwit_address(hrp, witver, witprog): """Encode a segwit address.""" - ret = bech32_encode(hrp, [witver] + convertbits(witprog, 8, 5)) + encoding = Encoding.BECH32 if witver == 0 else Encoding.BECH32M + ret = bech32_encode(encoding, hrp, [witver] + convertbits(witprog, 8, 5)) if decode_segwit_address(hrp, ret) == (None, None): return None return ret @@ -119,3 +137,5 @@ class TestFrameworkScript(unittest.TestCase): # P2WSH test_python_bech32('bcrt1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq3xueyj') test_python_bech32('bcrt1qft5p2uhsdcdc3l2ua4ap5qqfg4pjaqlp250x7us7a8qqhrxrxfsqseac85') + # P2TR + test_python_bech32('bcrt1p0xlxvlhemja6c4dqv22uapctqupfhlxm9h8z3k2e72q4k9hcz7vqc8gma6') diff --git a/test/functional/wallet_labels.py b/test/functional/wallet_labels.py index 883b97561..551eb7272 100755 --- a/test/functional/wallet_labels.py +++ b/test/functional/wallet_labels.py @@ -138,13 +138,13 @@ class WalletLabelsTest(BitcoinTestFramework): node.createwallet(wallet_name='watch_only', disable_private_keys=True) wallet_watch_only = node.get_wallet_rpc('watch_only') BECH32_VALID = { - '✔️_VER15_PROG40': 'bcrt10qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqn2cjv3', - '✔️_VER16_PROG03': 'bcrt1sqqqqqjq8pdp', - '✔️_VER16_PROB02': 'bcrt1sqqqqqjq8pv', + '✔️_VER15_PROG40': 'bcrt10qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqxkg7fn', + '✔️_VER16_PROG03': 'bcrt1sqqqqq8uhdgr', + '✔️_VER16_PROB02': 'bcrt1sqqqq4wstyw', } BECH32_INVALID = { - '❌_VER15_PROG41': 'bcrt10qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqzc7xyq', - '❌_VER16_PROB01': 'bcrt1sqqpl9r5c', + '❌_VER15_PROG41': 'bcrt1sqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqajlxj8', + '❌_VER16_PROB01': 'bcrt1sqq5r4036', } for l in BECH32_VALID: ad = BECH32_VALID[l] From 7dfe406e2023c9db7d9cc2e98484423adfbc8963 Mon Sep 17 00:00:00 2001 From: Pieter Wuille Date: Fri, 19 Feb 2021 14:37:02 -0800 Subject: [PATCH 035/102] Add signet support to gen_key_io_test_vectors.py Github-Pull: #20861 Rebased-From: 2e7c80fb5be82ad4a3f737cab65b31f70a772a23 --- contrib/testgen/README.md | 4 +- contrib/testgen/gen_key_io_test_vectors.py | 14 +- src/test/data/key_io_invalid.json | 196 +++++++---- src/test/data/key_io_valid.json | 372 +++++++++++++++------ 4 files changed, 413 insertions(+), 173 deletions(-) diff --git a/contrib/testgen/README.md b/contrib/testgen/README.md index eaca473b4..fcc5a378e 100644 --- a/contrib/testgen/README.md +++ b/contrib/testgen/README.md @@ -4,5 +4,5 @@ Utilities to generate test vectors for the data-driven Bitcoin tests. Usage: - PYTHONPATH=../../test/functional/test_framework ./gen_key_io_test_vectors.py valid 50 > ../../src/test/data/key_io_valid.json - PYTHONPATH=../../test/functional/test_framework ./gen_key_io_test_vectors.py invalid 50 > ../../src/test/data/key_io_invalid.json + PYTHONPATH=../../test/functional/test_framework ./gen_key_io_test_vectors.py valid 70 > ../../src/test/data/key_io_valid.json + PYTHONPATH=../../test/functional/test_framework ./gen_key_io_test_vectors.py invalid 70 > ../../src/test/data/key_io_invalid.json diff --git a/contrib/testgen/gen_key_io_test_vectors.py b/contrib/testgen/gen_key_io_test_vectors.py index 362e60b37..e6b5c1323 100755 --- a/contrib/testgen/gen_key_io_test_vectors.py +++ b/contrib/testgen/gen_key_io_test_vectors.py @@ -3,11 +3,11 @@ # Distributed under the MIT software license, see the accompanying # file COPYING or http://www.opensource.org/licenses/mit-license.php. ''' -Generate valid and invalid base58 address and private key test vectors. +Generate valid and invalid base58/bech32(m) address and private key test vectors. Usage: - PYTHONPATH=../../test/functional/test_framework ./gen_key_io_test_vectors.py valid 50 > ../../src/test/data/key_io_valid.json - PYTHONPATH=../../test/functional/test_framework ./gen_key_io_test_vectors.py invalid 50 > ../../src/test/data/key_io_invalid.json + PYTHONPATH=../../test/functional/test_framework ./gen_key_io_test_vectors.py valid 70 > ../../src/test/data/key_io_valid.json + PYTHONPATH=../../test/functional/test_framework ./gen_key_io_test_vectors.py invalid 70 > ../../src/test/data/key_io_invalid.json ''' # 2012 Wladimir J. van der Laan # Released under MIT License @@ -56,12 +56,16 @@ templates = [ ((SCRIPT_ADDRESS,), 20, (), (False, 'main', None, None), script_prefix, script_suffix), ((PUBKEY_ADDRESS_TEST,), 20, (), (False, 'test', None, None), pubkey_prefix, pubkey_suffix), ((SCRIPT_ADDRESS_TEST,), 20, (), (False, 'test', None, None), script_prefix, script_suffix), + ((PUBKEY_ADDRESS_TEST,), 20, (), (False, 'signet', None, None), pubkey_prefix, pubkey_suffix), + ((SCRIPT_ADDRESS_TEST,), 20, (), (False, 'signet', None, None), script_prefix, script_suffix), ((PUBKEY_ADDRESS_REGTEST,), 20, (), (False, 'regtest', None, None), pubkey_prefix, pubkey_suffix), ((SCRIPT_ADDRESS_REGTEST,), 20, (), (False, 'regtest', None, None), script_prefix, script_suffix), ((PRIVKEY,), 32, (), (True, 'main', False, None), (), ()), ((PRIVKEY,), 32, (1,), (True, 'main', True, None), (), ()), ((PRIVKEY_TEST,), 32, (), (True, 'test', False, None), (), ()), ((PRIVKEY_TEST,), 32, (1,), (True, 'test', True, None), (), ()), + ((PRIVKEY_TEST,), 32, (), (True, 'signet', False, None), (), ()), + ((PRIVKEY_TEST,), 32, (1,), (True, 'signet', True, None), (), ()), ((PRIVKEY_REGTEST,), 32, (), (True, 'regtest', False, None), (), ()), ((PRIVKEY_REGTEST,), 32, (1,), (True, 'regtest', True, None), (), ()) ] @@ -76,6 +80,10 @@ bech32_templates = [ ('tb', 0, 32, (False, 'test', None, True), Encoding.BECH32, p2wsh_prefix), ('tb', 1, 32, (False, 'test', None, True), Encoding.BECH32M, p2tr_prefix), ('tb', 3, 16, (False, 'test', None, True), Encoding.BECH32M, (OP_3, 16)), + ('tb', 0, 20, (False, 'signet', None, True), Encoding.BECH32, p2wpkh_prefix), + ('tb', 0, 32, (False, 'signet', None, True), Encoding.BECH32, p2wsh_prefix), + ('tb', 1, 32, (False, 'signet', None, True), Encoding.BECH32M, p2tr_prefix), + ('tb', 3, 32, (False, 'signet', None, True), Encoding.BECH32M, (OP_3, 32)), ('bcrt', 0, 20, (False, 'regtest', None, True), Encoding.BECH32, p2wpkh_prefix), ('bcrt', 0, 32, (False, 'regtest', None, True), Encoding.BECH32, p2wsh_prefix), ('bcrt', 1, 32, (False, 'regtest', None, True), Encoding.BECH32M, p2tr_prefix), diff --git a/src/test/data/key_io_invalid.json b/src/test/data/key_io_invalid.json index 376fa1ccd..abe07dad2 100644 --- a/src/test/data/key_io_invalid.json +++ b/src/test/data/key_io_invalid.json @@ -6,147 +6,207 @@ "x" ], [ - "1KyjgD9vFKmFSysJPUqQdXT8Yy5r82D6y74dfsg1ANTteuHJuP2q1aP1WgGX3oetFRtatKVXxPU" + "2v7k5Bb8Lr1MMgTgW6HAf5YHXi6BzpPjHpQ4srD4RSwHYpzXKiXmLAgiLhkXvp3JF5v7nq45EWr" ], [ - "2CwgfUPJ6BCa16PuFjKeMzLJJUpqnXm9mCtoXVGiGN7s9dNCKfCN5SdT7cu4nMY5omWHPrQLAqYL" + "RAZzCGtMbiUgMiiyrZySrSpdfnQReFXA3r" ], [ - "grEx1jdq4kpgsvorxP5PRyjgbXpvAVpaL5HEcqpDmF6ZpwuqRbzHX64GZ9eUwoSTvmbQb9fnqnh" + "NYamy7tcPQTzoU5iyQojD3sqhiz7zxkvn8" ], [ - "7RSWWNt7pyiZkNnLTuocsLMM6e3c7Mvvq8phtaBVyhuceG37y9r" + "geaFG555Ex5nyRf7JjW6Pj2GwZA8KYxtJJLbr1eZhVW75STbYBZeRszy3wg4pkKdF4ez9J4wQiz" ], [ - "7VXvPTB9ZdTRUS2W1KpcykSA1XHaVrfUGhKvWQXQLMVUNefmaLkF9DFC4fZJ5aMCxmj4HRQcLFGix" + "2Cxmid3c2XQ2zvQ8SA1ha2TKqvqbJS9XFmXRsCneBS3Po7Qqb65z5zNdsoF9AfieXFcpoVPmkmfa" ], [ - "91bBALqY4D1Mmz4vqnCwdGSB4U1sqnZPrKZ8aHENoT5irq6bB9Nc" + "gaJ7UVge2njVg9tFTetJrtHgruMm7aQDiSAxfHrVEgzK8N2ooagDVmDkdph434xzc4K96Gjyxcs" ], [ - "tc19jm4rn" + "5JN5BEVQPZ3tAiatz1RGXkrJuE3EC6bervMaPb38wTNgEuZCeqp" ], [ - "bt1py306q853jeddsuaasstjxjz6l9uehmx8kgpe94lvvwj85rah56asxg35e3" + "3TnFbyUtBRS5rE1KTW81qLVspjJNaB3uu6uuvLjxhZo2DB6PCGh" ], [ - "tb13u87aul665v37upwmu9a4nh82rj9cv94x5tps52e39e6k56t2ryzqv9mkxa" + "7UgSZGaMaTc4d2mdEgcGBFiMeS6eMsithGUqvBsKTQdGzD7XQDbMEYo3gojdbXEPbUdFF3CQoK72f" ], [ - "bcrt1rkqk977nr" + "9261wfqQqruNDnBDhbbb4tN9oKA1KpRFHeoYeufyJApVGixyAG4V" ], [ - "bc10v6wh2rtujsn9hnsyfzzsd9y3rx9n8xhue0agk7c8q9tv3lga7css5jku9rstle93e5fhc8dl" + "cS824CTUh18scFmYuqt6BgxuRhdR4dEEnCHs3fzBbcyQgbfasHbw" ], [ - "tb1q9quwy0k48ne8ppmr7p0jhj6hks7smd7l" + "tc1q0ywf7wkz6t580n3yemd3ucfw8jxn93tpc6wskt" ], [ - "bcrt1q5l6rmlw2et02krnfgl9uuxp8q30dktcjvuzsw7gyk2ykkkm2td0prkw9de" + "bt1pxeeuh96wpm5c6u3kavts2qgwlv6y8um7u7ga6ltlwrhrv7w9vers8lgt3k" ], [ - "bc1q5ezcdrt4qqmkcqz8n50hgww88gqzfx4m6" + "tb130lvl2lyugsk2tf3zhwcjjv39dmwt2tt7ytqaexy8edwcuwks6p5scll5kz" ], [ - "tb1q5gcna4un84qevljj3wk6rvm97f8f00gwtcu7v258cvn880wkf7gqesasqn" + "bcrt1rhsveeudk" ], [ - "bcrt1qtevjqsc85md7pa0CQEnpvdx977juj30usufphy" + "bc10rmfwl8nxdweeyc4sf89t0tn9fv9w6qpyzsnl2r4k48vjqh03qas9asdje0rlr0phru0wqw0p" ], [ - "bc1qret0yy8cmhsh6vw87lxtzt7w0sk4026l5qrvy7" + "tb1qjqnfsuatr54e957xzg9sqk7yqcry9lns" ], [ - "tb1qnw0xfgkucr4ysapsj8gd0u40fpj05n8cn24unkql8mc4ckkcp0mqc7acjd" + "bcrt1q8p08mv8echkf3es027u4cdswxlylm3th76ls8v6y4zy4vwsavngpr4e4td" ], [ - "bcrt1qu26l525vmxfv59gxm2r0c8alnkpzmat2mga2qw" + "BC1QNC2H66VLWTWTW52DP0FYUSNU3QQG5VT4V" ], [ - "bc1prjkeqgknynar5tj6v76yn3u27rep8jf366kmhglq898yn3aczk9ss73nrl" + "tb1qgk665m2auw09rc7pqyf7aulcuhmatz9xqtr5mxew7zuysacaascqs9v0vn" ], [ - "tb1zq0vsl9pta9uwh2txtrmxyedjtqcfkqt5" + "bcrt17CAPP7" ], [ - "bcrt1suvw5wa9elxy3a43ctljjn8avcmqpzwz5m4tycs" + "bc1qxmf2d6aerjzam3rur0zufqxqnyqfts5u302s7x" ], [ - "gf7t7z22jkuKcEjc8gELEYau3NzgGFLtLNEdMpJKcVt6z7mmvEJHH37y36MNGSmriFaPAbGghdh" + "tb1qn8x5dnzpexq7nnvrvnhwr9c3wkakpcyu9wwsjzq9pstkwg0t6qhs4l3rv6" ], [ - "mn9CPaeodb6L1CtJu1KaLtJhDbYL55Hxwe" + "BCRT1Q397G2RNVYRL5LK07CE8NCKHVKP8Z4SC9U0MVH9" ], [ - "cTSecEa3nqxF4mgYkGrxRKeWLpXWng6nUgL4sVeAhrNbtdf1z8hz1VFesD492QWZ4JprpRW1Drr" + "bc1pgxwyajq0gdn389f69uwn2fw9q0z5c9s063j5dgkdd23ajaud4hpsercr9h" ], [ - "4UjQEEvAT4Y9a3mtLFjzhcVBBKz8NiqAMfGhMwaSKgMqatpGT3qWzKY2f9HedshfSaAa439Vn3yNc" - ], - [ - "5ip19k2UhwhpHMK8ym6ZGnLA8J9JvHzv418AwohCMf3WrCfwLhG" - ], - [ - "tc1qe7avhvpmn9le76kxlcvwl69ldm0n66gefjetyn" - ], - [ - "bt1pz4l3ja200jyyhtaxvz4ffm3t33ares72745gwjspttzdllvmte5qs0kd5q" - ], - [ - "tb13wthrv4wkvpxl57d0plyfqjxvzu9qmdzg7eldaeut2hmcpp02mw2q3ep6tw" - ], - [ - "bcrt1rqg9chz23" - ], - [ - "BC102A2J0QF2MX8926EQ3WZGDC45PXL4QN267673J7P7JMJ6VD0RDTAWVQ2ZFNP4JJAW85JXP080" - ], - [ - "tb1qx0shsrwmrl57djkm0yyqdyp02cmpjmlw" + "tb1z6mnmp5k542l6yk4ul0mp4rq3yvz44lfm" ], [ "bcrt17capp7" ], [ - "bc1qvgrlqspye3z2ufaekn7qygm7guqjx982l" + "2D2bqvKseKHdoKjCNvjVULUgmxHu9hjKGwDbPRjTRH59tsHNLeyKwq3vyVBbo9LByY9wiapqjwFY" ], [ - "tb1qk8lfs3l8df9gkw69240g0ckg4ywmw9qvmcm0pltxt8udk9szrhxqkhd5n2" + "2SSjAim4wZpeQRe5zTj1qqS6Li9ttJDaZ3ze" ], [ - "bcrt1qKW6Cxkky8a7gyvmkw9p3v5l2gx8zgyjtjv7dl7" + "mi9H6MjLwXxy9kxe1x4ToxyLRBsmcZxgVi" ], [ - "bc1a8xfp7" + "VciXoxEitcn88jy197J9n9cpJ1pZahzU3SyWUiHqLgcfjttLEEJz" ], [ - "tb1dclvmr" + "KppmwADGoExPT9Eq5hjRWpWFDbzJyfzHFgsfxBiDHNpVBgWPRNuy" ], [ - "bcrt1q26vevm7x046n9h3jg6zsgyd3228ra25ck7jah2" + "TN7EQXMxKffzvHo54yHHu9R4ks9f5gWBW3MMVf5k72zAqrgVK9ys" ], [ - "BC1PCCNQDKKS5ZQ0AC69MQYQXU8ADGSGE53UY3AXXHJYFDG77Y0WX9AQHEHRL7" + "92dbrMEYzP5dD5UhQ6maNkCQ4GLG42BM4Gc6XKZzSSMSfosfkkcB" ], [ - "tb1zys2pfhe9fslxat85y7uc5e78uq7449ct" + "J7VQxPxyzuWEkRstQWpCz2AgysEz1APgnWCEQrFvkN3umAnCrhQF" ], [ - "bcrt1slnwcpwf88ffa708xpfkm6a5wsaq9me7y0fmvg3" - ], - [ - "dhBi3wYUjrVsW1pA4XhLjdavSQYSnsECskAoZ1dqLnV8hCSxuo9EZ9tf4cCoxn7fnKgCoJK3mcE" - ], - [ - "2UFHPygbpDdbzmQx688QnMqSunZi97Yn5T7DVBdKyTD7sCfGi5fi8r2ct92FNUZPMm1xswo8Ve8c" - ], - [ - "2yAaXFzjninFv5dn3JnWQ5y9nYkK5ZCMAkDWr4Y9WUiCGa3UiYfs" - ], - [ - "tc1qmfcz6l7gfwwt0tucqgtmhwlkgtd47a3urnjpt4" + "tc1qymllj6c96v5qj2504y27ldtner6eh8ldx38t83" ], [ "bt1flep4g" + ], + [ + "tb13c553hwygcgj48qwmr9f8q0hgdcfklyaye5sxzcpcjnmxv4z506xs90tchn" + ], + [ + "bcrt1tyddyu" + ], + [ + "bc10qssq2mknjqf0glwe2f3587wc4jysvs3f8s6chysae6hcl6fxzdm4wxyyscrl5k9f5qmnf05a" + ], + [ + "tb1q425lmgvxdgtyl2m6xuu2pc354y4fvgg8" + ], + [ + "bcrt1q9wp8e5d2u3u4g0pll0cy7smeeuqezdun9xl439n3p2gg4fvgfvk3hu52hj" + ], + [ + "bc1qrz5acazpue8vl4zsaxn8fxtmeuqmyjkq3" + ], + [ + "tb1qkeuglpgmnex9tv3fr7htzfrh3rwrk23r52rx9halxzmv9fr85lwq0fwhmp" + ], + [ + "bcrt1qd0t2wrhl7s57z99rsyaekpq0dyjcQRSSmz80r4" + ], + [ + "BC1QXLFDUCGX90T3E53PQCNKJ2PK25MSF3VLPMVY6T" + ], + [ + "tb1qmycg4zszgnk34vaurx3cu8wpvteg9h40yq6cp52gt26gjel03t3su3x3xu" + ], + [ + "bcrt1q9hy58r4fnuxqzdqndpmq9pptc9nt2dw3rczf5e" + ], + [ + "BC1PA7682NAY6JQSLUWAJYTC0ERWTMW7A4RPWLNTUS32LCXWLHVKKKTQ2UL8CG" + ], + [ + "tb1z850dpxnwz2fzae5h2myatj4yvu6rq5xq" + ], + [ + "bcrt1sp525pzjsmpqvcrawjreww36e9keg876skjvpwt" + ], + [ + "xcAvW5jurCpzSpLxBKEhCewCgwwuGhqJnC" + ], + [ + "2Cvv8yp9kXbQt8EKh6Yma95yJ1uwYF9YKXuVhGJyu3dHGVsb2AVpTC62TFACZZ3KDNrALxR2CVNs" + ], + [ + "niUuL46hCuEVvkAzZKHvD746qbmLmzip9Pv3F6UZV14JxzEXBnTkVxCT4URapChJG6qAEgsZs6G" + ], + [ + "2UHHgGfiipzvB8Eumnmvq6SowvrMJimjT3NwwG1839XEiUfwtpSdkUrseNsQuagXv21ce7aZu6yo" + ], + [ + "8u9djKu4u6o3bsgeR4BKNnLK3akpo64FYzDAmA9239wKeshgF97" + ], + [ + "TC1QPAARXSLVMXHVRR0474LZXQYZWLGFZYPSFVL9E4" + ], + [ + "bt1pakek0n2267t9yaksxaczgr2syhv9y3xkx0wnsdwchfa6xkmjtvuqg3kgyr" + ], + [ + "tb13h83rtwq62udrhwpn87uely7cyxcjrj0azz6a4r3n9s87x5uj98ys6ufp83" + ], + [ + "bcrt1rk5vw5qf2" + ], + [ + "bc10d3rmtg62h747en5j6fju5g5qyvsransrkty6ghh96pu647wumctejlsngh9pf26cysrys2x2" + ], + [ + "tb1qajuy2cdwqgmrzc7la85al5cwcq374tsp" + ], + [ + "bcrt1q3udxvj6x20chqh723mn064mzz65yr56ef00xk8czvu3jnx04ydapzk02s5" + ], + [ + "bc1qule2szwzyaq4qy0s3aa4mauucyqt6fewe" + ], + [ + "tb1ql0qny5vg9gh5tyzke6dw36px5ulkrp24x53x0pl2t5lpwrtejw3s2seej2" + ], + [ + "bcrt17CAPP7" + ], + [ + "bc1qtvm6davyf725wfedc2d5mrgfewqgcrce8gjrpl" + ], + [ + "tb1q5acjgtqrrw3an0dzavxxxzlex8k7aukjzjk9v2u4rmfdqxjphcyq7ge97e" ] ] diff --git a/src/test/data/key_io_valid.json b/src/test/data/key_io_valid.json index eea78aab2..5dee44c04 100644 --- a/src/test/data/key_io_valid.json +++ b/src/test/data/key_io_valid.json @@ -1,55 +1,71 @@ [ [ - "1LsN3xZdsNiSMiVc45AGBdhtkQZG53tKpx", - "76a914d9f0c2ae3652e96389b4481a510f0b2b96da1d0888ac", + "1BShJZ8A5q53oJJfMJoEF1gfZCWdZqZwwD", + "76a914728d4cc27d19707b0197cfcd7c412d43287864b588ac", { "chain": "main", "isPrivkey": false } ], [ - "3MJLKTjYK8U2LSE5G8qH66P6cTkd2fbYKo", - "a914d7184dd5b2ac5ffa6b808271b51d39610ca2952187", + "3L1YkZjdeNSqaZcNKZFXQfyokx3zVYm7r6", + "a914c8f37c3cc21561296ad81f4bec6b5de10ebc185187", { "chain": "main", "isPrivkey": false } ], [ - "mvAUuoN11iBG6xx7AiX3ifUV9WpDfmPa8u", - "76a914a0aab571f298b042bc9bce37d8a45f9d37e9c5ef88ac", + "mhJuoGLgnJC8gdBgBzEigsoyG4omQXejPT", + "76a91413a92d1998e081354d36c13ce0c9dc04b865d40a88ac", { "chain": "test", "isPrivkey": false } ], [ - "2MsFPtk8t5LQw7nBpFmsCjf8r9e5vfMMdPX", - "a914000844921919a97eca8adb5b63c02ecf7dc212eb87", + "2N5VpzKEuYvZJbmg6eUNGnfrrD1ir92FWGu", + "a91486648cc2faaf05660e72c04c7a837bcc3e986f1787", { "chain": "test", "isPrivkey": false } ], [ - "mjC3aAxQcm6QeeJJ81pnpX61xMMgUXuJUG", - "76a914284d017134105d53e712d7801def91cfe6b3b26088ac", + "mtQueCtmAnP3E4aBHXCiFNEQAuPaLMuQNy", + "76a9148d74ecd86c845baf9c6d4484d2d00e731b79e34788ac", + { + "chain": "signet", + "isPrivkey": false + } + ], + [ + "2NEvWRTHjh89gV52fkperFtwzoFWQiQmiCh", + "a914edc895152c67ccff0ba620bcc373b789ec68266f87", + { + "chain": "signet", + "isPrivkey": false + } + ], + [ + "mngdx94qJFhSf7A7SAEgQSC9fQJuapujJp", + "76a9144e9dba545455a80ce94c343d1cac9dec62cbf22288ac", { "chain": "regtest", "isPrivkey": false } ], [ - "2N7sKNwAst83ARAqh1z5Ahrt1UieLQZARvc", - "a914a0653c424a38b1c7d43ccafb83c90e96da58149c87", + "2NBzRN3pV56k3JUvSHifaHyzjGHv7ZS9FZZ", + "a914cd9da5642451273e5b6d088854cc1fad4a8d442187", { "chain": "regtest", "isPrivkey": false } ], [ - "5J8KazNMuftbk6azCPQb5YhuiQJddSUmJcyYMbSwo8wiUFNcNQJ", - "28f3200da1464c7a9d7456f03980471142a63bcf2bd65f87096694a10c20c6ee", + "5KcrFZvJ2p4dM6QVUPu53cKXcCfozA1PJLHm1mNAxkDYhgThLu4", + "ed6c796e2f62377410766214f55aa81ac9a6590ad7ed57c509c983bf648409ac", { "chain": "main", "isCompressed": false, @@ -57,8 +73,8 @@ } ], [ - "L44JDntsb8mGGLLJXwoEtbYbH1Sf5PZTigvVcA18184sexkwG65w", - "cc04f03e141b18f3debe86edf6daaa2f1b84169515774c5489db97b5a2d09153", + "L195WBrf2G3nCnun4CLxrb8XKk9LbCqH43THh4n4QrL5SzRzpq9j", + "74f76c106e38d20514a99a86e4fe3bb28319e7dd2ad21dbc170cbb516a5358fa", { "chain": "main", "isCompressed": true, @@ -66,8 +82,8 @@ } ], [ - "93A1NRTKmTeKHinsqaPDLqMnsrhZtdgNJJ4SxEB6n7mGtfxk4Bo", - "ced49a2c0d95a062b2da31cc3e04dbad74cf4f93a928c77fd32e8fcca0552926", + "92z6HnMQR4tWqjfVA3UaUN5EuUMgoVMdCa5rZFYZfmgyD7wxYCw", + "b8511e1d74549e305517d48a1d394d1be2cfa5d0f3c0d83f9f450316ffa01276", { "chain": "test", "isCompressed": false, @@ -75,8 +91,8 @@ } ], [ - "cQmrxBnJjdhJFJo98LnNysqDaxUKWBQANYsArzrxsRZhKtaCAqkr", - "5f40e71ffb52d0c31786fb6018db39e964c7d5a6b946590461fd7b28e1c4571e", + "cTPnaF52x4w4Tq6afPxRHux3wbYb86thS7S45A7r3oZc1AHTQ6Qm", + "ad68c48d337181da125de9061933ececcdf7d917631af7d34f7e38082bff9a11", { "chain": "test", "isCompressed": true, @@ -84,8 +100,26 @@ } ], [ - "92kU7nc1yidzKyJdJGDNhNHvjD26KGB2JtTdKK7XyEvm7hWnb1m", - "9961f71b7f22fe502330464805548ac3f5391ff013b91d56608ca0d18e5d9e75", + "924U35yFcYkxe2JXGmuhSRVaShGyhRDZx1ysPmw1sAHuszGMoxq", + "3e8dfaf78d4f02b11d0b645648a4f3080d71d0d068979c47f7255c9a29eee01d", + { + "chain": "signet", + "isCompressed": false, + "isPrivkey": true + } + ], + [ + "cRy1qCf2LUesGPQagTkYwk2V3PyN2KCPKgxeg6k6KoJPzH7nrVjw", + "82d4187690d6b59bcffda27dae52f2ecb87313cfc0904e0b674a27d906a65fde", + { + "chain": "signet", + "isCompressed": true, + "isPrivkey": true + } + ], + [ + "932NTcHK35Apf2C3K9Zv1ZdeZEmB1x7ZT2Ju3SjoEY6pUgUpT7H", + "bd7dba24df9e003e145ae9b4862776413a0bb6fa5b4e42753397f2d9536e58a9", { "chain": "regtest", "isCompressed": false, @@ -93,8 +127,8 @@ } ], [ - "cSdQEjZBzGGsZT5td11rRJqcbQ3fvz8pVrM6rkKUuJLSUFwPEWTe", - "96936c11e60fc08e0fb288776368ad7d754eee11753c39bad4211a5b671c875d", + "cNa75orYQ2oos52zCnMaS5PG6XbNZKc5LpGxTHacrxwWeX4WAK3E", + "1d87e3c58b08766fea03598380ec8d59f8c88d5392bf683ab1088bd4caf073ee", { "chain": "regtest", "isCompressed": true, @@ -102,8 +136,8 @@ } ], [ - "bc1qqsjhe0x35lnvcxhf0de0djyqj8gfxwc90g7w8u", - "001404257cbcd1a7e6cc1ae97b72f6c88091d0933b05", + "bc1q5cuatynjmk4szh40mmunszfzh7zrc5xm9w8ccy", + "0014a639d59272ddab015eafdef9380922bf843c50db", { "chain": "main", "isPrivkey": false, @@ -111,8 +145,8 @@ } ], [ - "bc1qxdyx9mr8hp39mnjdamv5f4m9908nm98zv0tt34pzd0xhrkgnelcqjh32xa", - "0020334862ec67b8625dce4deed944d7652bcf3d94e263d6b8d4226bcd71d913cff0", + "bc1qkw7lz3ahms6e0ajv27mzh7g62tchjpmve4afc29u7w49tddydy2syv0087", + "0020b3bdf147b7dc3597f64c57b62bf91a52f179076ccd7a9c28bcf3aa55b5a46915", { "chain": "main", "isPrivkey": false, @@ -120,8 +154,8 @@ } ], [ - "bc1p2g8z7e58vl5epg9x7en4m5e9x67ekastycnlucc2z2n3ucvmppxqnjtw5m", - "5120520e2f668767e990a0a6f6675dd32536bd9b760b2627fe630a12a71e619b084c", + "bc1p5rgvqejqh9dh37t9g94dd9cm8vtqns7dndgj423egwggsggcdzmsspvr7j", + "5120a0d0c06640b95b78f965416ad6971b3b1609c3cd9b512aaa39439088211868b7", { "chain": "main", "isPrivkey": false, @@ -129,8 +163,8 @@ } ], [ - "bc1zyczqag2mv2", - "52022604", + "bc1zr4pq63udck", + "52021d42", { "chain": "main", "isPrivkey": false, @@ -138,8 +172,8 @@ } ], [ - "tb1qx3wv854zd2emkzfc83j2t2adzftkdq4kc0t05d", - "0014345cc3d2a26ab3bb09383c64a5abad12576682b6", + "tb1q74fxwnvhsue0l8wremgq66xzvn48jlc5zthsvz", + "0014f552674d978732ff9dc3ced00d68c264ea797f14", { "chain": "test", "isPrivkey": false, @@ -147,8 +181,8 @@ } ], [ - "tb1qgjr9pkgglh8sw4ksg406xfyl7n2rz5awa5uddeqgn4y96w9khf9s2awvsc", - "0020448650d908fdcf0756d0455fa3249ff4d43153aeed38d6e4089d485d38b6ba4b", + "tb1qpt7cqgq8ukv92dcraun9c3n0s3aswrt62vtv8nqmkfpa2tjfghesv9ln74", + "00200afd802007e598553703ef265c466f847b070d7a5316c3cc1bb243d52e4945f3", { "chain": "test", "isPrivkey": false, @@ -156,8 +190,8 @@ } ], [ - "tb1pqhdwj0m7xg6c95vn07qwce4hy5nmhmqvhayx5w8zvf2hye27vruswrc2t7", - "512005dae93f7e323582d1937f80ec66b72527bbec0cbf486a38e2625572655e60f9", + "tb1ph9v3e8nxct57hknlkhkz75p5pnxnkn05cw8ewpxu6tek56g29xgqydzfu7", + "5120b9591c9e66c2e9ebda7fb5ec2f50340ccd3b4df4c38f9704dcd2f36a690a2990", { "chain": "test", "isPrivkey": false, @@ -165,8 +199,8 @@ } ], [ - "tb1rjfpgh7cnpkqfrq76ekkgucwdqgklltya", - "531092428bfb130d809183dacdac8e61cd02", + "tb1ray6e8gxfx49ers6c4c70l3c8lsxtcmlx", + "5310e93593a0c9354b91c358ae3cffc707fc", { "chain": "test", "isPrivkey": false, @@ -174,8 +208,44 @@ } ], [ - "bcrt1qq6dlzfmth08txpj06gm0jj5qaw7j8jj8qlkwdu", - "0014069bf1276bbbceb3064fd236f94a80ebbd23ca47", + "tb1q0sqzfp3zj42u0perxr6jahhu4y03uw4dypk6sc", + "00147c002486229555c7872330f52edefca91f1e3aad", + { + "chain": "signet", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "tb1q9jv4qnawnuevqaeadn47gkq05ev78m4qg3zqejykdr9u0cm7yutq6gu5dj", + "00202c99504fae9f32c0773d6cebe4580fa659e3eea044440cc89668cbc7e37e2716", + { + "chain": "signet", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "tb1pxqf7d825wjtcftj7uep8w24jq3tz8vudfaqj20rns8ahqya56gcs92eqtu", + "51203013e69d54749784ae5ee642772ab2045623b38d4f41253c7381fb7013b4d231", + { + "chain": "signet", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "tb1rsrzkyvu2rt0dcgexajtazlw5nft4j7494ay396q6auw9375wxsrsgag884", + "532080c562338a1adedc2326ec97d17dd49a57597aa5af4912e81aef1c58fa8e3407", + { + "chain": "signet", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "bcrt1qwf52dt9y2sv0f7fwkcpmtfjf74d4np2saeljt6", + "00147268a6aca45418f4f92eb603b5a649f55b598550", { "chain": "regtest", "isPrivkey": false, @@ -183,8 +253,8 @@ } ], [ - "bcrt1q3708vp22qn6ezk47lx2g0ck3tvrm7s0dj7naajlxwegm4289gjlqcwwf29", - "00208f9e76054a04f5915abef99487e2d15b07bf41ed97a7decbe67651baa8e544be", + "bcrt1q0lma84unycxl4n96etffthqlf7y5axyp4fxf64kmhymvw8l6pwfs39futd", + "00207ff7d3d793260dfaccbacad295dc1f4f894e9881aa4c9d56dbb936c71ffa0b93", { "chain": "regtest", "isPrivkey": false, @@ -192,8 +262,8 @@ } ], [ - "bcrt1pdt8nx0wk2xmv0fv0tg9l4ps87nes44dwz8s7yd0xppnxv22k2lcsssg874", - "51206acf333dd651b6c7a58f5a0bfa8607f4f30ad5ae11e1e235e6086666295657f1", + "bcrt1p3xat2ryucc2v0adrktqnavfzttvezrr27ngltsa2726p2ehvxz4se722v2", + "512089bab50c9cc614c7f5a3b2c13eb1225ad9910c6af4d1f5c3aaf2b41566ec30ab", { "chain": "regtest", "isPrivkey": false, @@ -201,8 +271,8 @@ } ], [ - "bcrt1sxs49j3ctsrqpvju8wtszynehlcmgx82hmhs6kckvkyzw24d3r6j29kf3gjmmpmxwx00n7m", - "6028342a59470b80c0164b8772e0224f37fe36831d57dde1ab62ccb104e555b11ea4a2d93144b7b0ecce", + "bcrt1saflydw6e26xhp29euhy5jke5jjqyywk3wvtc9ulgw9dvxyuqy9hdnxthyw755c7ldavy7u", + "6028ea7e46bb59568d70a8b9e5c9495b349480423ad1731782f3e8715ac31380216ed9997723bd4a63df", { "chain": "regtest", "isPrivkey": false, @@ -210,56 +280,72 @@ } ], [ - "1HYHMSsBJnA3tkACp8Yet1DEfbc63u4ku4", - "76a914b56c8ec8a6297b2804113ddabd34fb95c574fca788ac", + "16y3Q1XVRZqMR9T1XL1FkvNtD2E1bXBuYa", + "76a9144171ec673aeb9fcf42af6094a3c82207e3b9a78188ac", { "chain": "main", "isPrivkey": false } ], [ - "3BiJtoZKF93YdYARkHxDdCYbRzwWuN9Dwa", - "a9146defd6f293368f683654fefac42f0fe20add132f87", + "3CmZZnAiHVQgiAKSakf864oJMxN2BP1eLC", + "a914798575fc1041b9440c4e63c28e57e597d00b7e4387", { "chain": "main", "isPrivkey": false } ], [ - "n2FK7HfSTMg8M5A4haEhSr92xUmRFsi5PS", - "76a914e3655c6d2ae661c1a2e3a84a8ebb3663d2a5478d88ac", + "mtCB3SoBo7EYUv8j54kUubGY4x3aJPY8nk", + "76a9148b0c5f9ee714e0d1d24642ad63d9d5f398d9b56588ac", { "chain": "test", "isPrivkey": false } ], [ - "2NFiGy8rTrrNKtb7NHoWDpuPtJitNAg2KYr", - "a914f6707c684df7be7e37402fb86578b7d31bcff88387", + "2N5ymzzKpx6EdUR4UdMZ7t9hcuwqtpHwgw5", + "a9148badb3c3b5c0d39f906f7618e0018b7eae4baf7387", { "chain": "test", "isPrivkey": false } ], [ - "mqvNPprrNJxRnN7aopLgcgzfuZFa9pZRNw", - "76a914721ef1357a0e3a55920e1cbbafabaa1f675befda88ac", + "myXnpYbub28zgiJupDdZSWZtDbjcyfJVby", + "76a914c59ac57661b57daadd7c0caf7318c14f54c6c0fa88ac", + { + "chain": "signet", + "isPrivkey": false + } + ], + [ + "2MtLg8jS5jSXm9evMzTtvpLjy26dBmjFEoT", + "a9140c0007e89cea625d3bf9543baa5a470bb7e5b67287", + { + "chain": "signet", + "isPrivkey": false + } + ], + [ + "mzCyqdf2UNGdpgkD9NBgLcxdwXRg1i9buY", + "76a914cd04311bdd1ef9c5c24e41930e032aade82a863a88ac", { "chain": "regtest", "isPrivkey": false } ], [ - "2N1hdjsHKpLrbXFh1uFLoP8LF9ykukL8mfz", - "a9145cbfa5e24b2a9c85202c1a49d949cd202c9d24b087", + "2N3zGiwFku2vQjYnAqXv5Qu2ztfYRhh7tbF", + "a91475d56d75c88e704d6c72fbe84ac1505abf736b4087", { "chain": "regtest", "isPrivkey": false } ], [ - "5JEgGYoTJ9dwkvhM1RBtTYHFCLKHYSsetvuusjT8jBRgxkLHbVw", - "376213ede0cff4e5a9a99dc62621849edd12e84e32e50b4c2fd872b2a90a539b", + "5JUHCgyxNSHg64wwju72eNsG6ajqo4Z2fHHw9iLDLfh69rSiL7w", + "5644d06d88855dacf3192a31df8f4acd8e4c155c52a86d2c1fa48303f5cff053", { "chain": "main", "isCompressed": false, @@ -267,8 +353,8 @@ } ], [ - "L4eTMSFgakGfGEv88oZfZTHPicfSpSRLmqkd5xUwM5mRvGdUNWcG", - "dd97572e04e485cb3459c25bd5673159e37a5dfce8f6683c03886cf52c766df0", + "L2kZaexG69VSriMe9T2m1jkS86iPe3xNbjcdfakRC1PHe7ay78Ji", + "a50ee94aefcabf5a5d7c85be5b3844dee03c5604861dbfc77fe388c91e5a30f8", { "chain": "main", "isCompressed": true, @@ -276,8 +362,8 @@ } ], [ - "92Vw1zxCpQeadmn9oo3DcaAzYYATC8E4dxYWcLEpJvmLDGCTpV6", - "78605efe8bc054d0ee79eed107446856c3c359add661a5f450e9a34dcfd9c7a0", + "927JwT1ViCr5TD2ZX8CsMNhg17dXmou5xu4y2KiH54zD7i34UJq", + "4502a54c0026b0150281d41f40860d1e23870c63cdc32645bbed688f2ee41f64", { "chain": "test", "isCompressed": false, @@ -285,8 +371,8 @@ } ], [ - "cNUakHTv7yJopxUZQ3cM5RC4VfMFkUdCAyQ9jtefhomhpyqpjKiL", - "1ab086b845c8776e6f86468b2d7cf782a5b81096274a10b5a21dbf2fbbb20cc6", + "cTpGGNPVy2Eagawohbr4aGtRJzpLnjxGsGYh9DUcBM45f3KdKGF6", + "ba005a0cb39587aab00bd54c848b59e8adaed47403228567ddc739c2a344ff59", { "chain": "test", "isCompressed": true, @@ -294,8 +380,26 @@ } ], [ - "92KS5stuYsoRe4PsxD6DTQsL3HL8oicdVwgwKvJTBeLe9JbFsAV", - "60899bbfa276d9263c47b92d0f3508acb42810ce00f44de1e8cb0abd628aae13", + "932PLCLA19yPNqV67qwHBSGjxi82LVzWBF7josL9ab4Q1kxgPGF", + "bd8677e076eb39770bf7e9f9e8d3f2cf257effab9b4c220fd3439ccfc208c984", + { + "chain": "signet", + "isCompressed": false, + "isPrivkey": true + } + ], + [ + "cViUpEy8URSsLjUvxwL7cEuNgCVqM7oKBzd1ZPbA4khcQsQJuj1j", + "f2b36ade8393e29dc71e52cb75ba1109ba210203cd7d0a5ae881ad6846516203", + { + "chain": "signet", + "isCompressed": true, + "isPrivkey": true + } + ], + [ + "92jddDjJCVDmJtgvBHQ9i58PMash8kwsYhRdNo22ea2MYPXdCBE", + "977bf8686f1bcad28f86c4c14afbd33215746bd19203647bf7ff9c6fddc9cc87", { "chain": "regtest", "isCompressed": false, @@ -303,8 +407,8 @@ } ], [ - "cTz7XPo8zzoemHZVoATACAE9L9jzrdJ8Fkkg7a2ZQ52p9gqAASCL", - "bf11771d24fd18daa0a4d9b379cecb9cc7c82177e66f233515351cc05b207007", + "cVwAuMoUqRo399X7vXzuzQyPEvZJMXM8c82zHzRkFCxPCSGx8A6y", + "f93acbbce02b8cb9ddca3fad495441e324cc01eb640b0a7b4c9f0e31644c822a", { "chain": "regtest", "isCompressed": true, @@ -312,8 +416,8 @@ } ], [ - "bc1q6xw4mq83zgpzyedqtpgh65u7psaarrz768pwsc", - "0014d19d5d80f112022265a058517d539e0c3bd18c5e", + "bc1qz377zwe5awr68dnggengqx9vrjt05k98q3sw2n", + "0014147de13b34eb87a3b66846668018ac1c96fa58a7", { "chain": "main", "isPrivkey": false, @@ -321,8 +425,8 @@ } ], [ - "bc1quncjnjmmk4tyxdypl80wqv90lc7qfksp3mcv8lr5zyg9e9y7pv8s09h58f", - "0020e4f129cb7bb556433481f9dee030affe3c04da018ef0c3fc7411105c949e0b0f", + "bc1qkmhskpdzg8kdkfywhu09kswwn9qan9vnkrf6mk40jvnr06s6sz5ssf82ya", + "0020b6ef0b05a241ecdb248ebf1e5b41ce9941d99593b0d3addaaf932637ea1a80a9", { "chain": "main", "isPrivkey": false, @@ -330,8 +434,8 @@ } ], [ - "bc1prf34k6kzuf7vugngsz36guj5ykknjt3l36ch5ykdgemuaflfzvhs45h9c3", - "51201a635b6ac2e27cce226880a3a4725425ad392e3f8eb17a12cd4677cea7e9132f", + "bc1ps8cndas60cntk8x79sg9f5e5jz7x050z8agyugln2ukkks23rryqpejzkc", + "512081f136f61a7e26bb1cde2c1054d33490bc67d1e23f504e23f3572d6b415118c8", { "chain": "main", "isPrivkey": false, @@ -339,8 +443,8 @@ } ], [ - "bc1zaxgqtcvx3y", - "5202e990", + "bc1zn4tsczge9l", + "52029d57", { "chain": "main", "isPrivkey": false, @@ -348,8 +452,8 @@ } ], [ - "tb1q0xeygzklzdcke5fpae8dj4gp7favyg285gy3ez", - "001479b2440adf13716cd121ee4ed95501f27ac22147", + "tb1q6xw0wwd9n9d7ge87dryz4vm5vtahzhvz6yett3", + "0014d19cf739a5995be464fe68c82ab37462fb715d82", { "chain": "test", "isPrivkey": false, @@ -357,8 +461,8 @@ } ], [ - "tb1qmrryvv8jl4cdkce3s856whutzrkfcd2lytv3rqwxkj23ktf9fzzqcylgum", - "0020d8c64630f2fd70db633181e9a75f8b10ec9c355f22d91181c6b4951b2d254884", + "tb1qwn9zq9fu5uk35ykpgsc7rz4uawy4yh0r5m5er26768h5ur50su3qj6evun", + "002074ca20153ca72d1a12c14431e18abceb89525de3a6e991ab5ed1ef4e0e8f8722", { "chain": "test", "isPrivkey": false, @@ -366,8 +470,8 @@ } ], [ - "tb1pv5235wgguf7fu8ajjs0vfpzhgwvwdvxsu88mjrr82cp9esy6467sgt7uws", - "512065151a3908e27c9e1fb2941ec484574398e6b0d0e1cfb90c6756025cc09aaebd", + "tb1pmcdc5d8gr92rtemfsnhpeqanvs0nr82upn5dktxluz9n0qcv34lqxke0wq", + "5120de1b8a34e8195435e76984ee1c83b3641f319d5c0ce8db2cdfe08b37830c8d7e", { "chain": "test", "isPrivkey": false, @@ -375,8 +479,8 @@ } ], [ - "tb1rzhkfz2she865pjqz2dqa3kv0lvfftkeu", - "531015ec912a17c9f540c8025341d8d98ffb", + "tb1rgxjvtfzp0xczz6dlzqv8d5cmuykk4qkk", + "531041a4c5a44179b02169bf101876d31be1", { "chain": "test", "isPrivkey": false, @@ -384,8 +488,44 @@ } ], [ - "bcrt1qp09acyw3823sggs8uyq6yv2vpxe4lq8scuxmef", - "00140bcbdc11d13aa3042207e101a2314c09b35f80f0", + "tb1qa9dlyt6fydestul4y4wh72yshh044w32np8etk", + "0014e95bf22f49237305f3f5255d7f2890bddf5aba2a", + { + "chain": "signet", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "tb1qu4p26n0033720xm0rjgkds5ehdwf039k2fgv75um5krrvfhrrj7qckl9r2", + "0020e542ad4def8c7ca79b6f1c9166c299bb5c97c4b65250cf539ba5863626e31cbc", + { + "chain": "signet", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "tb1pjyukm4n4flwd0ey3lrl06c9kalr60ggmlkcxq2rhhxmy4lvkmkpqexdzqy", + "512091396dd6754fdcd7e491f8fefd60b6efc7a7a11bfdb0602877b9b64afd96dd82", + { + "chain": "signet", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "tb1r4k75s5syvewsvxufdc3xfhf4tw4u30alw39xny3dnxrl6hau7systymfdv", + "5320adbd485204665d061b896e2264dd355babc8bfbf744a69922d9987fd5fbcf409", + { + "chain": "signet", + "isPrivkey": false, + "tryCaseFlip": true + } + ], + [ + "bcrt1qnk3tdwwj47ppc4pqmxkjdusegedn9ru5gvccwa", + "00149da2b6b9d2af821c5420d9ad26f219465b328f94", { "chain": "regtest", "isPrivkey": false, @@ -393,8 +533,8 @@ } ], [ - "bcrt1qlnpqh99rp80qn6jkgc0zs7acyc50erwp8eefr3zzkrj7ps739fzqzla273", - "0020fcc20b94a309de09ea56461e287bb82628fc8dc13e7291c442b0e5e0c3d12a44", + "bcrt1qz7prfshfkwsxuk72pt6mzr6uumq4qllxe4vmwqt89tat48d362yqlykk6a", + "0020178234c2e9b3a06e5bca0af5b10f5ce6c1507fe6cd59b701672afaba9db1d288", { "chain": "regtest", "isPrivkey": false, @@ -402,8 +542,8 @@ } ], [ - "bcrt1p3zd30ugrjyl587qqyu48vqclt3yawauzw6pwt3cpkskvczrytywsjpyxnq", - "5120889b17f103913f43f800272a76031f5c49d777827682e5c701b42ccc0864591d", + "bcrt1pumee3wj80xvyr7wjmj7zsk26x5pn095aegy862yhx6f2j9sgc9hq6cj4cm", + "5120e6f398ba47799841f9d2dcbc28595a350337969dca087d28973692a91608c16e", { "chain": "regtest", "isPrivkey": false, @@ -411,8 +551,8 @@ } ], [ - "bcrt1stgtmagdaa9dqf0rtsxszgcd232g62t43dvkqmmmpf7deqllv576373vc5k9fps08hq3hek", - "60285a17bea1bde95a04bc6b81a02461aa8a91a52eb16b2c0def614f9b907feca7b51f4598a58a90c1e7", + "bcrt1szqz8hj64d2hhc6nt65v09jxal66pgff2xpcp9kj648qkk8kjzxelsts4dktd799g47uase", + "602810047bcb556aaf7c6a6bd518f2c8ddfeb414252a307012da5aa9c16b1ed211b3f82e156d96df14a8", { "chain": "regtest", "isPrivkey": false, @@ -420,19 +560,51 @@ } ], [ - "1Au8D5w97THBxXDyjCn5o8UcUWHFgZeoWv", - "76a9146c94c780911ea77c43eee9dc7ce4cd5eeab1e2fa88ac", + "12agZTajtRE3STSchwWNWnrm467zzTQ916", + "76a9141156e00f70061e5faba8b71593a8c7554b47090c88ac", { "chain": "main", "isPrivkey": false } ], [ - "3R2FhhgAE4fM6npLMavoBeedrnDJCN4Ho6", - "a914ffee4c4faa197a760f901d25880c56f9d635fc8987", + "3NXqB6iZiPYbKruNT3d9xNBTmtb73xMvvf", + "a914e49decc9e5d97e0547d3642f3a4795b13ae62bca87", { "chain": "main", "isPrivkey": false } + ], + [ + "mjgt4BoCYxjzWvJFoh68x7cj5GeaKDYhyx", + "76a9142dc11fc7b8072f733f690ffb0591c00f4062295c88ac", + { + "chain": "test", + "isPrivkey": false + } + ], + [ + "2NCT6FdQ5MxorHgnFxLeHyGwTGRdkHcrJDH", + "a914d2a8ec992b0894a0d9391ca5d9c45c388c41be7e87", + { + "chain": "test", + "isPrivkey": false + } + ], + [ + "mpomiA7wqDnMcxaNLC23eBuXAb4U6H4ZqW", + "76a91465e75e340415ed297c58d6a14d3c17ceeaa17bbd88ac", + { + "chain": "signet", + "isPrivkey": false + } + ], + [ + "2N1pGAA5uatbU2PKvMA9BnJmHcK6yHfMiZa", + "a9145e008b6cc232164570befc23d216060bf4ea793b87", + { + "chain": "signet", + "isPrivkey": false + } ] ] From 1e9671116fc5805baa0442bd8fd1c88f2307fef0 Mon Sep 17 00:00:00 2001 From: Fabian Jahr Date: Thu, 18 Mar 2021 00:43:35 +0100 Subject: [PATCH 036/102] naming nits Github-Pull: #20861 Rebased-From: 03346022d611871f2cc185440b19d928b9264d9d --- src/bech32.cpp | 8 ++++---- src/bech32.h | 11 ++++++----- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/bech32.cpp b/src/bech32.cpp index 289e0213e..288b14e02 100644 --- a/src/bech32.cpp +++ b/src/bech32.cpp @@ -15,10 +15,10 @@ namespace typedef std::vector data; -/** The Bech32 character set for encoding. */ +/** The Bech32 and Bech32m character set for encoding. */ const char* CHARSET = "qpzry9x8gf2tvdw0s3jn54khce6mua7l"; -/** The Bech32 character set for decoding. */ +/** The Bech32 and Bech32m character set for decoding. */ const int8_t CHARSET_REV[128] = { -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, @@ -150,8 +150,8 @@ data CreateChecksum(Encoding encoding, const std::string& hrp, const data& value /** Encode a Bech32 or Bech32m string. */ std::string Encode(Encoding encoding, const std::string& hrp, const data& values) { - // First ensure that the HRP is all lowercase. BIP-173 requires an encoder - // to return a lowercase Bech32 string, but if given an uppercase HRP, the + // First ensure that the HRP is all lowercase. BIP-173 and BIP350 require an encoder + // to return a lowercase Bech32/Bech32m string, but if given an uppercase HRP, the // result will always be invalid. for (const char& c : hrp) assert(c < 'A' || c > 'Z'); data checksum = CreateChecksum(encoding, hrp, values); diff --git a/src/bech32.h b/src/bech32.h index 3679ea8cc..e9450ccc2 100644 --- a/src/bech32.h +++ b/src/bech32.h @@ -2,10 +2,11 @@ // Distributed under the MIT software license, see the accompanying // file COPYING or http://www.opensource.org/licenses/mit-license.php. -// Bech32 is a string encoding format used in newer address types. -// The output consists of a human-readable part (alphanumeric), a -// separator character (1), and a base32 data section, the last -// 6 characters of which are a checksum. +// Bech32 and Bech32m are string encoding formats used in newer +// address types. The outputs consist of a human-readable part +// (alphanumeric), a separator character (1), and a base32 data +// section, the last 6 characters of which are a checksum. The +// module is namespaced under bech32 for historical reasons. // // For more information, see BIP 173 and BIP 350. @@ -40,7 +41,7 @@ struct DecodeResult DecodeResult(Encoding enc, std::string&& h, std::vector&& d) : encoding(enc), hrp(std::move(h)), data(std::move(d)) {} }; -/** Decode a Bech32 string. */ +/** Decode a Bech32 or Bech32m string. */ DecodeResult Decode(const std::string& str); } // namespace bech32 From f2195d7c4aa45f5168ec55b14406aeaf970adcb1 Mon Sep 17 00:00:00 2001 From: Pieter Wuille Date: Wed, 24 Mar 2021 01:41:44 -0700 Subject: [PATCH 037/102] Backport invalid address tests Reduced version of the test from master/#20861 by John Newbery. Github-Pull: #20861 Rebased-From: fe5e495c31de47b0ec732b943db11fe345d874af --- .../functional/rpc_invalid_address_message.py | 84 +++++++++++++++++++ test/functional/test_runner.py | 1 + 2 files changed, 85 insertions(+) create mode 100755 test/functional/rpc_invalid_address_message.py diff --git a/test/functional/rpc_invalid_address_message.py b/test/functional/rpc_invalid_address_message.py new file mode 100755 index 000000000..814f50c9e --- /dev/null +++ b/test/functional/rpc_invalid_address_message.py @@ -0,0 +1,84 @@ +#!/usr/bin/env python3 +# Copyright (c) 2020 The Bitcoin Core developers +# Distributed under the MIT software license, see the accompanying +# file COPYING or http://www.opensource.org/licenses/mit-license.php. +"""Test error messages for 'getaddressinfo' and 'validateaddress' RPC commands.""" + +from test_framework.test_framework import BitcoinTestFramework + +from test_framework.util import assert_raises_rpc_error + +BECH32_VALID = 'bcrt1qtmp74ayg7p24uslctssvjm06q5phz4yrxucgnv' +BECH32_INVALID_BECH32 = 'bcrt1p0xlxvlhemja6c4dqv22uapctqupfhlxm9h8z3k2e72q4k9hcz7vqdmchcc' +BECH32_INVALID_BECH32M = 'bcrt1qw508d6qejxtdg4y5r3zarvary0c5xw7k35mrzd' +BECH32_INVALID_VERSION = 'bcrt130xlxvlhemja6c4dqv22uapctqupfhlxm9h8z3k2e72q4k9hcz7vqynjegk' +BECH32_INVALID_SIZE = 'bcrt1s0xlxvlhemja6c4dqv22uapctqupfhlxm9h8z3k2e72q4k9hcz7v8n0nx0muaewav25430mtr' +BECH32_INVALID_V0_SIZE = 'bcrt1qw508d6qejxtdg4y5r3zarvary0c5xw7kqqq5k3my' +BECH32_INVALID_PREFIX = 'bc1pw508d6qejxtdg4y5r3zarvary0c5xw7kw508d6qejxtdg4y5r3zarvary0c5xw7k7grplx' + +BASE58_VALID = 'mipcBbFg9gMiCh81Kj8tqqdgoZub1ZJRfn' +BASE58_INVALID_PREFIX = '17VZNX1SN5NtKa8UQFxwQbFeFc3iqRYhem' + +INVALID_ADDRESS = 'asfah14i8fajz0123f' + +class InvalidAddressErrorMessageTest(BitcoinTestFramework): + def set_test_params(self): + self.setup_clean_chain = True + self.num_nodes = 1 + + def skip_test_if_missing_module(self): + self.skip_if_no_wallet() + + def test_validateaddress(self): + node = self.nodes[0] + + # Bech32 + info = node.validateaddress(BECH32_INVALID_SIZE) + assert not info['isvalid'] + + info = node.validateaddress(BECH32_INVALID_PREFIX) + assert not info['isvalid'] + + info = node.validateaddress(BECH32_INVALID_BECH32) + assert not info['isvalid'] + + info = node.validateaddress(BECH32_INVALID_BECH32M) + assert not info['isvalid'] + + info = node.validateaddress(BECH32_INVALID_V0_SIZE) + assert not info['isvalid'] + + info = node.validateaddress(BECH32_VALID) + assert info['isvalid'] + assert 'error' not in info + + # Base58 + info = node.validateaddress(BASE58_INVALID_PREFIX) + assert not info['isvalid'] + + info = node.validateaddress(BASE58_VALID) + assert info['isvalid'] + assert 'error' not in info + + # Invalid address format + info = node.validateaddress(INVALID_ADDRESS) + assert not info['isvalid'] + + def test_getaddressinfo(self): + node = self.nodes[0] + + assert_raises_rpc_error(-5, "Invalid address", node.getaddressinfo, BECH32_INVALID_SIZE) + + assert_raises_rpc_error(-5, "Invalid address", node.getaddressinfo, BECH32_INVALID_PREFIX) + + assert_raises_rpc_error(-5, "Invalid address", node.getaddressinfo, BASE58_INVALID_PREFIX) + + assert_raises_rpc_error(-5, "Invalid address", node.getaddressinfo, INVALID_ADDRESS) + + def run_test(self): + self.test_validateaddress() + self.test_getaddressinfo() + + +if __name__ == '__main__': + InvalidAddressErrorMessageTest().main() diff --git a/test/functional/test_runner.py b/test/functional/test_runner.py index 5b3db282e..b3b894b7c 100755 --- a/test/functional/test_runner.py +++ b/test/functional/test_runner.py @@ -281,6 +281,7 @@ BASE_SCRIPTS = [ 'rpc_getdescriptorinfo.py', 'rpc_getpeerinfo_deprecation.py', 'rpc_help.py', + 'rpc_invalid_address_message.py', 'feature_help.py', 'feature_shutdown.py', 'p2p_ibd_txrelay.py', From d61fb07da7c12e4a1f68cf645f32d563a657a506 Mon Sep 17 00:00:00 2001 From: Andrew Chow Date: Tue, 16 Mar 2021 16:19:03 -0400 Subject: [PATCH 038/102] Rename CoinSelectionParams::effective_fee to m_effective_feerate It's a feerate, not a fee. Also follow the style guide for member names. Github-Pull: #21083 Rebased-From: f9cd2bfbccb7a2b8ff07cec5f6d2adbeca5f07c3 --- src/bench/coin_selection.cpp | 2 +- src/wallet/test/coinselector_tests.cpp | 10 +++++----- src/wallet/wallet.cpp | 18 +++++++++--------- src/wallet/wallet.h | 6 +++--- 4 files changed, 18 insertions(+), 18 deletions(-) diff --git a/src/bench/coin_selection.cpp b/src/bench/coin_selection.cpp index df277dc2f..74ba98f8c 100644 --- a/src/bench/coin_selection.cpp +++ b/src/bench/coin_selection.cpp @@ -51,7 +51,7 @@ static void CoinSelection(benchmark::Bench& bench) const CoinEligibilityFilter filter_standard(1, 6, 0); const CoinSelectionParams coin_selection_params(/* use_bnb= */ true, /* change_output_size= */ 34, - /* change_spend_size= */ 148, /* effective_fee= */ CFeeRate(0), + /* change_spend_size= */ 148, /* effective_feerate= */ CFeeRate(0), /* long_term_feerate= */ CFeeRate(0), /* discard_feerate= */ CFeeRate(0), /* tx_no_inputs_size= */ 0); bench.run([&] { diff --git a/src/wallet/test/coinselector_tests.cpp b/src/wallet/test/coinselector_tests.cpp index 4686ecdf8..46c4b5d69 100644 --- a/src/wallet/test/coinselector_tests.cpp +++ b/src/wallet/test/coinselector_tests.cpp @@ -36,7 +36,7 @@ CoinEligibilityFilter filter_standard(1, 6, 0); CoinEligibilityFilter filter_confirmed(1, 1, 0); CoinEligibilityFilter filter_standard_extra(6, 6, 0); CoinSelectionParams coin_selection_params(/* use_bnb= */ false, /* change_output_size= */ 0, - /* change_spend_size= */ 0, /* effective_fee= */ CFeeRate(0), + /* change_spend_size= */ 0, /* effective_feerate= */ CFeeRate(0), /* long_term_feerate= */ CFeeRate(0), /* discard_feerate= */ CFeeRate(0), /* tx_no_inputs_size= */ 0); @@ -266,7 +266,7 @@ BOOST_AUTO_TEST_CASE(bnb_search_test) // Make sure that effective value is working in SelectCoinsMinConf when BnB is used CoinSelectionParams coin_selection_params_bnb(/* use_bnb= */ true, /* change_output_size= */ 0, - /* change_spend_size= */ 0, /* effective_fee= */ CFeeRate(3000), + /* change_spend_size= */ 0, /* effective_feerate= */ CFeeRate(3000), /* long_term_feerate= */ CFeeRate(1000), /* discard_feerate= */ CFeeRate(1000), /* tx_no_inputs_size= */ 0); CoinSet setCoinsRet; @@ -300,7 +300,7 @@ BOOST_AUTO_TEST_CASE(bnb_search_test) CCoinControl coin_control; coin_control.fAllowOtherInputs = true; coin_control.Select(COutPoint(vCoins.at(0).tx->GetHash(), vCoins.at(0).i)); - coin_selection_params_bnb.effective_fee = CFeeRate(0); + coin_selection_params_bnb.m_effective_feerate = CFeeRate(0); BOOST_CHECK(wallet->SelectCoins(vCoins, 10 * CENT, setCoinsRet, nValueRet, coin_control, coin_selection_params_bnb, bnb_used)); BOOST_CHECK(bnb_used); BOOST_CHECK(coin_selection_params_bnb.use_bnb); @@ -639,11 +639,11 @@ BOOST_AUTO_TEST_CASE(SelectCoins_test) // Perform selection CoinSelectionParams coin_selection_params_knapsack(/* use_bnb= */ false, /* change_output_size= */ 34, - /* change_spend_size= */ 148, /* effective_fee= */ CFeeRate(0), + /* change_spend_size= */ 148, /* effective_feerate= */ CFeeRate(0), /* long_term_feerate= */ CFeeRate(0), /* discard_feerate= */ CFeeRate(0), /* tx_no_inputs_size= */ 0); CoinSelectionParams coin_selection_params_bnb(/* use_bnb= */ true, /* change_output_size= */ 34, - /* change_spend_size= */ 148, /* effective_fee= */ CFeeRate(0), + /* change_spend_size= */ 148, /* effective_feerate= */ CFeeRate(0), /* long_term_feerate= */ CFeeRate(0), /* discard_feerate= */ CFeeRate(0), /* tx_no_inputs_size= */ 0); CoinSet out_set; diff --git a/src/wallet/wallet.cpp b/src/wallet/wallet.cpp index a3216a33a..5c257aa7d 100644 --- a/src/wallet/wallet.cpp +++ b/src/wallet/wallet.cpp @@ -2363,7 +2363,7 @@ bool CWallet::SelectCoinsMinConf(const CAmount& nTargetValue, const CoinEligibil std::vector utxo_pool; if (coin_selection_params.use_bnb) { // Calculate cost of change - CAmount cost_of_change = coin_selection_params.m_discard_feerate.GetFee(coin_selection_params.change_spend_size) + coin_selection_params.effective_fee.GetFee(coin_selection_params.change_output_size); + CAmount cost_of_change = coin_selection_params.m_discard_feerate.GetFee(coin_selection_params.change_spend_size) + coin_selection_params.m_effective_feerate.GetFee(coin_selection_params.change_output_size); // Filter by the min conf specs and add to utxo_pool and calculate effective value for (OutputGroup& group : groups) { @@ -2373,14 +2373,14 @@ bool CWallet::SelectCoinsMinConf(const CAmount& nTargetValue, const CoinEligibil // Set the effective feerate to 0 as we don't want to use the effective value since the fees will be deducted from the output group.SetFees(CFeeRate(0) /* effective_feerate */, coin_selection_params.m_long_term_feerate); } else { - group.SetFees(coin_selection_params.effective_fee, coin_selection_params.m_long_term_feerate); + group.SetFees(coin_selection_params.m_effective_feerate, coin_selection_params.m_long_term_feerate); } OutputGroup pos_group = group.GetPositiveOnlyGroup(); if (pos_group.effective_value > 0) utxo_pool.push_back(pos_group); } // Calculate the fees for things that aren't inputs - CAmount not_input_fees = coin_selection_params.effective_fee.GetFee(coin_selection_params.tx_noinputs_size); + CAmount not_input_fees = coin_selection_params.m_effective_feerate.GetFee(coin_selection_params.tx_noinputs_size); bnb_used = true; return SelectCoinsBnB(utxo_pool, nTargetValue, cost_of_change, setCoinsRet, nValueRet, not_input_fees); } else { @@ -2437,7 +2437,7 @@ bool CWallet::SelectCoins(const std::vector& vAvailableCoins, const CAm if (coin.m_input_bytes <= 0) { return false; // Not solvable, can't estimate size for fee } - coin.effective_value = coin.txout.nValue - coin_selection_params.effective_fee.GetFee(coin.m_input_bytes); + coin.effective_value = coin.txout.nValue - coin_selection_params.m_effective_feerate.GetFee(coin.m_input_bytes); if (coin_selection_params.use_bnb) { value_to_select -= coin.effective_value; } else { @@ -2809,11 +2809,11 @@ bool CWallet::CreateTransactionInternal( coin_selection_params.m_discard_feerate = GetDiscardRate(*this); // Get the fee rate to use effective values in coin selection - coin_selection_params.effective_fee = GetMinimumFeeRate(*this, coin_control, &feeCalc); + coin_selection_params.m_effective_feerate = GetMinimumFeeRate(*this, coin_control, &feeCalc); // Do not, ever, assume that it's fine to change the fee rate if the user has explicitly // provided one - if (coin_control.m_feerate && coin_selection_params.effective_fee > *coin_control.m_feerate) { - error = strprintf(_("Fee rate (%s) is lower than the minimum fee rate setting (%s)"), coin_control.m_feerate->ToString(FeeEstimateMode::SAT_VB), coin_selection_params.effective_fee.ToString(FeeEstimateMode::SAT_VB)); + if (coin_control.m_feerate && coin_selection_params.m_effective_feerate > *coin_control.m_feerate) { + error = strprintf(_("Fee rate (%s) is lower than the minimum fee rate setting (%s)"), coin_control.m_feerate->ToString(FeeEstimateMode::SAT_VB), coin_selection_params.m_effective_feerate.ToString(FeeEstimateMode::SAT_VB)); return false; } if (feeCalc.reason == FeeReason::FALLBACK && !m_allow_fallback_fee) { @@ -2962,7 +2962,7 @@ bool CWallet::CreateTransactionInternal( return false; } - nFeeNeeded = coin_selection_params.effective_fee.GetFee(nBytes); + nFeeNeeded = coin_selection_params.m_effective_feerate.GetFee(nBytes); if (nFeeRet >= nFeeNeeded) { // Reduce fee to only the needed amount if possible. This // prevents potential overpayment in fees if the coins @@ -2976,7 +2976,7 @@ bool CWallet::CreateTransactionInternal( // change output. Only try this once. if (nChangePosInOut == -1 && nSubtractFeeFromAmount == 0 && pick_new_inputs) { unsigned int tx_size_with_change = nBytes + coin_selection_params.change_output_size + 2; // Add 2 as a buffer in case increasing # of outputs changes compact size - CAmount fee_needed_with_change = coin_selection_params.effective_fee.GetFee(tx_size_with_change); + CAmount fee_needed_with_change = coin_selection_params.m_effective_feerate.GetFee(tx_size_with_change); CAmount minimum_value_for_change = GetDustThreshold(change_prototype_txout, coin_selection_params.m_discard_feerate); if (nFeeRet >= fee_needed_with_change + minimum_value_for_change) { pick_new_inputs = false; diff --git a/src/wallet/wallet.h b/src/wallet/wallet.h index 20ee63e4a..6fde2fa79 100644 --- a/src/wallet/wallet.h +++ b/src/wallet/wallet.h @@ -606,19 +606,19 @@ struct CoinSelectionParams bool use_bnb = true; size_t change_output_size = 0; size_t change_spend_size = 0; - CFeeRate effective_fee = CFeeRate(0); + CFeeRate m_effective_feerate; CFeeRate m_long_term_feerate; CFeeRate m_discard_feerate; size_t tx_noinputs_size = 0; //! Indicate that we are subtracting the fee from outputs bool m_subtract_fee_outputs = false; - CoinSelectionParams(bool use_bnb, size_t change_output_size, size_t change_spend_size, CFeeRate effective_fee, + CoinSelectionParams(bool use_bnb, size_t change_output_size, size_t change_spend_size, CFeeRate effective_feerate, CFeeRate long_term_feerate, CFeeRate discard_feerate, size_t tx_noinputs_size) : use_bnb(use_bnb), change_output_size(change_output_size), change_spend_size(change_spend_size), - effective_fee(effective_fee), + m_effective_feerate(effective_feerate), m_long_term_feerate(long_term_feerate), m_discard_feerate(discard_feerate), tx_noinputs_size(tx_noinputs_size) From e99d6d0c7cbdbb23f966e50c045bbd525ba8daf0 Mon Sep 17 00:00:00 2001 From: fanquake Date: Sat, 20 Mar 2021 17:57:43 +0800 Subject: [PATCH 039/102] rand: only try and use freeifaddrs if available Github-Pull: #21486 Rebased-From: 87deac66aa747481e6f34fc80599e1e490de3ea0 --- src/randomenv.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/randomenv.cpp b/src/randomenv.cpp index 07122b7f6..79ab8daf6 100644 --- a/src/randomenv.cpp +++ b/src/randomenv.cpp @@ -38,7 +38,7 @@ #include #include #endif -#if HAVE_DECL_GETIFADDRS +#if HAVE_DECL_GETIFADDRS && HAVE_DECL_FREEIFADDRS #include #endif #if HAVE_SYSCTL @@ -361,7 +361,7 @@ void RandAddStaticEnv(CSHA512& hasher) hasher.Write((const unsigned char*)hname, strnlen(hname, 256)); } -#if HAVE_DECL_GETIFADDRS +#if HAVE_DECL_GETIFADDRS && HAVE_DECL_FREEIFADDRS // Network interfaces struct ifaddrs *ifad = NULL; getifaddrs(&ifad); From f6896dfde73bb37f4f0f0f9bfe9855d4fe9e9fe5 Mon Sep 17 00:00:00 2001 From: fanquake Date: Sun, 21 Mar 2021 08:41:26 +0800 Subject: [PATCH 040/102] build: check if -lsocket is required with *ifaddrs Github-Pull: #21486 Rebased-From: 879215e665a9f348c8d3fa92701c34065bc86a69 --- build-aux/m4/l_socket.m4 | 36 ++++++++++++++++++++++++++++++++++++ configure.ac | 2 +- 2 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 build-aux/m4/l_socket.m4 diff --git a/build-aux/m4/l_socket.m4 b/build-aux/m4/l_socket.m4 new file mode 100644 index 000000000..38923a98f --- /dev/null +++ b/build-aux/m4/l_socket.m4 @@ -0,0 +1,36 @@ +# Illumos/SmartOS requires linking with -lsocket if +# using getifaddrs & freeifaddrs + +m4_define([_CHECK_SOCKET_testbody], [[ + #include + #include + + int main() { + struct ifaddrs *ifaddr; + getifaddrs(&ifaddr); + freeifaddrs(ifaddr); + } +]]) + +AC_DEFUN([CHECK_SOCKET], [ + + AC_LANG_PUSH(C++) + + AC_MSG_CHECKING([whether ifaddrs funcs can be used without link library]) + + AC_LINK_IFELSE([AC_LANG_SOURCE([_CHECK_SOCKET_testbody])],[ + AC_MSG_RESULT([yes]) + ],[ + AC_MSG_RESULT([no]) + LIBS="$LIBS -lsocket" + AC_MSG_CHECKING([whether getifaddrs needs -lsocket]) + AC_LINK_IFELSE([AC_LANG_SOURCE([_CHECK_SOCKET_testbody])],[ + AC_MSG_RESULT([yes]) + ],[ + AC_MSG_RESULT([no]) + AC_MSG_FAILURE([cannot figure out how to use getifaddrs]) + ]) + ]) + + AC_LANG_POP +]) diff --git a/configure.ac b/configure.ac index 0116a662c..86e57e5d4 100644 --- a/configure.ac +++ b/configure.ac @@ -866,7 +866,7 @@ fi AC_CHECK_HEADERS([endian.h sys/endian.h byteswap.h stdio.h stdlib.h unistd.h strings.h sys/types.h sys/stat.h sys/select.h sys/prctl.h sys/sysctl.h vm/vm_param.h sys/vmmeter.h sys/resources.h]) -AC_CHECK_DECLS([getifaddrs, freeifaddrs],,, +AC_CHECK_DECLS([getifaddrs, freeifaddrs],[CHECK_SOCKET],, [#include #include ] ) From 1a9a2cb7dcc60781a3cbca3a7846ff153143260c Mon Sep 17 00:00:00 2001 From: fanquake Date: Fri, 26 Mar 2021 12:53:05 +0800 Subject: [PATCH 041/102] net: add ifaddrs.h include Github-Pull: #21486 Rebased-From: 4783115fd4cccb46a7f8c592b34fa7c094c29410 --- src/net.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/net.cpp b/src/net.cpp index 1fd913eb6..15e52de94 100644 --- a/src/net.cpp +++ b/src/net.cpp @@ -28,6 +28,10 @@ #include #endif +#if HAVE_DECL_GETIFADDRS && HAVE_DECL_FREEIFADDRS +#include +#endif + #ifdef USE_POLL #include #endif From 7de019bc619b0b2433bfb553feba5f6dc58c8db8 Mon Sep 17 00:00:00 2001 From: Andrew Chow Date: Fri, 12 Feb 2021 14:18:50 -0500 Subject: [PATCH 042/102] Introduce DeferringSignatureChecker and inherit with SignatureExtractor Introduces a DeferringSignatureChecker which simply takes a BaseSignatureChecker and passes through everything. SignatureExtractorChecker now subclasses DeferringSignatureChecker. This allows for all BaseSignatureChecker functions to be implemented for SignatureExtractorChecker, while allowing for future signature checkers which opreate similarly to SignatureExtractorChecker. Github-Pull: #21166 Rebased-From: 6965456c10c9c4025c71c5e24fa5b27b15e5933a --- src/script/interpreter.h | 28 ++++++++++++++++++++++++++++ src/script/sign.cpp | 8 ++++---- 2 files changed, 32 insertions(+), 4 deletions(-) diff --git a/src/script/interpreter.h b/src/script/interpreter.h index c0c2b012c..70789869a 100644 --- a/src/script/interpreter.h +++ b/src/script/interpreter.h @@ -272,6 +272,34 @@ public: using TransactionSignatureChecker = GenericTransactionSignatureChecker; using MutableTransactionSignatureChecker = GenericTransactionSignatureChecker; +class DeferringSignatureChecker : public BaseSignatureChecker +{ +protected: + BaseSignatureChecker& m_checker; + +public: + DeferringSignatureChecker(BaseSignatureChecker& checker) : m_checker(checker) {} + + bool CheckECDSASignature(const std::vector& scriptSig, const std::vector& vchPubKey, const CScript& scriptCode, SigVersion sigversion) const override + { + return m_checker.CheckECDSASignature(scriptSig, vchPubKey, scriptCode, sigversion); + } + + bool CheckSchnorrSignature(Span sig, Span pubkey, SigVersion sigversion, const ScriptExecutionData& execdata, ScriptError* serror = nullptr) const override + { + return m_checker.CheckSchnorrSignature(sig, pubkey, sigversion, execdata, serror); + } + + bool CheckLockTime(const CScriptNum& nLockTime) const override + { + return m_checker.CheckLockTime(nLockTime); + } + bool CheckSequence(const CScriptNum& nSequence) const override + { + return m_checker.CheckSequence(nSequence); + } +}; + bool EvalScript(std::vector >& stack, const CScript& script, unsigned int flags, const BaseSignatureChecker& checker, SigVersion sigversion, ScriptExecutionData& execdata, ScriptError* error = nullptr); bool EvalScript(std::vector >& stack, const CScript& script, unsigned int flags, const BaseSignatureChecker& checker, SigVersion sigversion, ScriptError* error = nullptr); bool VerifyScript(const CScript& scriptSig, const CScript& scriptPubKey, const CScriptWitness* witness, unsigned int flags, const BaseSignatureChecker& checker, ScriptError* serror = nullptr); diff --git a/src/script/sign.cpp b/src/script/sign.cpp index 0e6864d54..903c95a5c 100644 --- a/src/script/sign.cpp +++ b/src/script/sign.cpp @@ -253,17 +253,17 @@ bool ProduceSignature(const SigningProvider& provider, const BaseSignatureCreato } namespace { -class SignatureExtractorChecker final : public BaseSignatureChecker +class SignatureExtractorChecker final : public DeferringSignatureChecker { private: SignatureData& sigdata; - BaseSignatureChecker& checker; public: - SignatureExtractorChecker(SignatureData& sigdata, BaseSignatureChecker& checker) : sigdata(sigdata), checker(checker) {} + SignatureExtractorChecker(SignatureData& sigdata, BaseSignatureChecker& checker) : DeferringSignatureChecker(checker), sigdata(sigdata) {} + bool CheckECDSASignature(const std::vector& scriptSig, const std::vector& vchPubKey, const CScript& scriptCode, SigVersion sigversion) const override { - if (checker.CheckECDSASignature(scriptSig, vchPubKey, scriptCode, sigversion)) { + if (m_checker.CheckECDSASignature(scriptSig, vchPubKey, scriptCode, sigversion)) { CPubKey pubkey(vchPubKey); sigdata.signatures.emplace(pubkey.GetID(), SigPair(pubkey, scriptSig)); return true; From f79189ca54524881d52b91679eb9035d6718ce01 Mon Sep 17 00:00:00 2001 From: Andrew Chow Date: Fri, 12 Feb 2021 15:38:46 -0500 Subject: [PATCH 043/102] Test that signrawtx works when a signed CSV and CLTV inputs are present Github-Pull: #21166 Rebased-From: a97a9298cea085858e1a65a5e9b20d7a9e0f7303 --- test/functional/rpc_signrawtransaction.py | 83 +++++++++++++++++++++-- 1 file changed, 79 insertions(+), 4 deletions(-) diff --git a/test/functional/rpc_signrawtransaction.py b/test/functional/rpc_signrawtransaction.py index 2fbbdbbdf..60b4d1c74 100755 --- a/test/functional/rpc_signrawtransaction.py +++ b/test/functional/rpc_signrawtransaction.py @@ -4,16 +4,17 @@ # file COPYING or http://www.opensource.org/licenses/mit-license.php. """Test transaction signing using the signrawtransaction* RPCs.""" -from test_framework.address import check_script, script_to_p2sh +from test_framework.address import check_script, script_to_p2sh, script_to_p2wsh from test_framework.key import ECKey from test_framework.test_framework import BitcoinTestFramework from test_framework.util import assert_equal, assert_raises_rpc_error, find_vout_for_address, hex_str_to_bytes -from test_framework.messages import sha256 -from test_framework.script import CScript, OP_0, OP_CHECKSIG +from test_framework.messages import sha256, CTransaction, CTxInWitness +from test_framework.script import CScript, OP_0, OP_CHECKSIG, OP_CHECKSEQUENCEVERIFY, OP_CHECKLOCKTIMEVERIFY, OP_DROP, OP_TRUE from test_framework.script_util import key_to_p2pkh_script, script_to_p2sh_p2wsh_script, script_to_p2wsh_script from test_framework.wallet_util import bytes_to_wif -from decimal import Decimal +from decimal import Decimal, getcontext +from io import BytesIO class SignRawTransactionsTest(BitcoinTestFramework): def set_test_params(self): @@ -238,6 +239,78 @@ class SignRawTransactionsTest(BitcoinTestFramework): txn = self.nodes[0].signrawtransactionwithwallet(hex_str, prev_txs) assert txn["complete"] + def test_signing_with_csv(self): + self.log.info("Test signing a transaction containing a fully signed CSV input") + self.nodes[0].walletpassphrase("password", 9999) + getcontext().prec = 8 + + # Make sure CSV is active + self.nodes[0].generate(500) + + # Create a P2WSH script with CSV + script = CScript([1, OP_CHECKSEQUENCEVERIFY, OP_DROP]) + address = script_to_p2wsh(script) + + # Fund that address and make the spend + txid = self.nodes[0].sendtoaddress(address, 1) + vout = find_vout_for_address(self.nodes[0], txid, address) + self.nodes[0].generate(1) + utxo = self.nodes[0].listunspent()[0] + amt = Decimal(1) + utxo["amount"] - Decimal(0.00001) + tx = self.nodes[0].createrawtransaction( + [{"txid": txid, "vout": vout, "sequence": 1},{"txid": utxo["txid"], "vout": utxo["vout"]}], + [{self.nodes[0].getnewaddress(): amt}], + self.nodes[0].getblockcount() + ) + + # Set the witness script + ctx = CTransaction() + ctx.deserialize(BytesIO(hex_str_to_bytes(tx))) + ctx.wit.vtxinwit.append(CTxInWitness()) + ctx.wit.vtxinwit[0].scriptWitness.stack = [CScript([OP_TRUE]), script] + tx = ctx.serialize_with_witness().hex() + + # Sign and send the transaction + signed = self.nodes[0].signrawtransactionwithwallet(tx) + assert_equal(signed["complete"], True) + self.nodes[0].sendrawtransaction(signed["hex"]) + + def test_signing_with_cltv(self): + self.log.info("Test signing a transaction containing a fully signed CLTV input") + self.nodes[0].walletpassphrase("password", 9999) + getcontext().prec = 8 + + # Make sure CSV is active + self.nodes[0].generate(1500) + + # Create a P2WSH script with CLTV + script = CScript([1000, OP_CHECKLOCKTIMEVERIFY, OP_DROP]) + address = script_to_p2wsh(script) + + # Fund that address and make the spend + txid = self.nodes[0].sendtoaddress(address, 1) + vout = find_vout_for_address(self.nodes[0], txid, address) + self.nodes[0].generate(1) + utxo = self.nodes[0].listunspent()[0] + amt = Decimal(1) + utxo["amount"] - Decimal(0.00001) + tx = self.nodes[0].createrawtransaction( + [{"txid": txid, "vout": vout},{"txid": utxo["txid"], "vout": utxo["vout"]}], + [{self.nodes[0].getnewaddress(): amt}], + self.nodes[0].getblockcount() + ) + + # Set the witness script + ctx = CTransaction() + ctx.deserialize(BytesIO(hex_str_to_bytes(tx))) + ctx.wit.vtxinwit.append(CTxInWitness()) + ctx.wit.vtxinwit[0].scriptWitness.stack = [CScript([OP_TRUE]), script] + tx = ctx.serialize_with_witness().hex() + + # Sign and send the transaction + signed = self.nodes[0].signrawtransactionwithwallet(tx) + assert_equal(signed["complete"], True) + self.nodes[0].sendrawtransaction(signed["hex"]) + def run_test(self): self.successful_signing_test() self.script_verification_error_test() @@ -245,6 +318,8 @@ class SignRawTransactionsTest(BitcoinTestFramework): self.OP_1NEGATE_test() self.test_with_lock_outputs() self.test_fully_signed_tx() + self.test_signing_with_csv() + self.test_signing_with_cltv() if __name__ == '__main__': From 2e9e7f4329fc313adf9ba2394edbaf2a69b59bc1 Mon Sep 17 00:00:00 2001 From: Anthony Towns Date: Sat, 27 Mar 2021 20:17:56 +1000 Subject: [PATCH 044/102] tests: pull ComputeBlockVersion test into its own function The intent here is to allow checking ComputeBlockVersion behaviour with each deployment, rather than only testdummy on mainnet. This commit does the trivial refactoring component of that change. Github-Pull: #21377 Rebased-From: 63879f0a4760c0c0f784029849cb5d21ee088abb --- src/test/versionbits_tests.cpp | 74 ++++++++++++++++++---------------- 1 file changed, 39 insertions(+), 35 deletions(-) diff --git a/src/test/versionbits_tests.cpp b/src/test/versionbits_tests.cpp index 8841a540f..b09827ffe 100644 --- a/src/test/versionbits_tests.cpp +++ b/src/test/versionbits_tests.cpp @@ -242,17 +242,15 @@ BOOST_AUTO_TEST_CASE(versionbits_test) } } -BOOST_AUTO_TEST_CASE(versionbits_computeblockversion) +/** Check that ComputeBlockVersion will set the appropriate bit correctly */ +static void check_computeblockversion(const Consensus::Params& params, Consensus::DeploymentPos dep) { - // Check that ComputeBlockVersion will set the appropriate bit correctly - // on mainnet. - const auto chainParams = CreateChainParams(*m_node.args, CBaseChainParams::MAIN); - const Consensus::Params &mainnetParams = chainParams->GetConsensus(); + // This implicitly uses versionbitscache, so clear it every time + versionbitscache.Clear(); - // Use the TESTDUMMY deployment for testing purposes. - int64_t bit = mainnetParams.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].bit; - int64_t nStartTime = mainnetParams.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nStartTime; - int64_t nTimeout = mainnetParams.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nTimeout; + int64_t bit = params.vDeployments[dep].bit; + int64_t nStartTime = params.vDeployments[dep].nStartTime; + int64_t nTimeout = params.vDeployments[dep].nTimeout; assert(nStartTime < nTimeout); @@ -267,40 +265,40 @@ BOOST_AUTO_TEST_CASE(versionbits_computeblockversion) // Before MedianTimePast of the chain has crossed nStartTime, the bit // should not be set. CBlockIndex *lastBlock = nullptr; - lastBlock = firstChain.Mine(mainnetParams.nMinerConfirmationWindow, nTime, VERSIONBITS_LAST_OLD_BLOCK_VERSION).Tip(); - BOOST_CHECK_EQUAL(ComputeBlockVersion(lastBlock, mainnetParams) & (1< 0) { lastBlock = firstChain.Mine(nHeight+1, nTime, VERSIONBITS_LAST_OLD_BLOCK_VERSION).Tip(); - BOOST_CHECK((ComputeBlockVersion(lastBlock, mainnetParams) & (1<GetConsensus(), Consensus::DEPLOYMENT_TESTDUMMY); +} BOOST_AUTO_TEST_SUITE_END() From 1c0164544c66b691f93b3b1114eee97cbabd99b2 Mon Sep 17 00:00:00 2001 From: Anthony Towns Date: Sun, 28 Mar 2021 03:10:48 +1000 Subject: [PATCH 045/102] tests: test ComputeBlockVersion for all deployments This generalises the ComputeBlockVersion test so that it can apply to any activation parameters we might set, and checks all the parameters set for each deployment on each chain, to simultaneously ensure that the deployments we have configured work sensibly, and that the test code does not suffer bitrot in the event that all interesting deployments are buried. Github-Pull: #21377 Rebased-From: 593274445004506c921d5d851361aefb3434d744 --- src/test/versionbits_tests.cpp | 106 ++++++++++++++++++++++----------- 1 file changed, 71 insertions(+), 35 deletions(-) diff --git a/src/test/versionbits_tests.cpp b/src/test/versionbits_tests.cpp index b09827ffe..7e96ef923 100644 --- a/src/test/versionbits_tests.cpp +++ b/src/test/versionbits_tests.cpp @@ -252,38 +252,61 @@ static void check_computeblockversion(const Consensus::Params& params, Consensus int64_t nStartTime = params.vDeployments[dep].nStartTime; int64_t nTimeout = params.vDeployments[dep].nTimeout; - assert(nStartTime < nTimeout); + // should not be any signalling for first block + BOOST_CHECK_EQUAL(ComputeBlockVersion(nullptr, params), VERSIONBITS_TOP_BITS); + + // always active deployments shouldn't need to be tested further + if (nStartTime == Consensus::BIP9Deployment::ALWAYS_ACTIVE) return; + + BOOST_REQUIRE(nStartTime < nTimeout); + BOOST_REQUIRE(nStartTime >= 0); + BOOST_REQUIRE(nTimeout <= std::numeric_limits::max() || nTimeout == Consensus::BIP9Deployment::NO_TIMEOUT); + BOOST_REQUIRE(0 <= bit && bit < 32); + BOOST_REQUIRE(((1 << bit) & VERSIONBITS_TOP_MASK) == 0); // In the first chain, test that the bit is set by CBV until it has failed. // In the second chain, test the bit is set by CBV while STARTED and // LOCKED-IN, and then no longer set while ACTIVE. VersionBitsTester firstChain, secondChain; - // Start generating blocks before nStartTime - int64_t nTime = nStartTime - 1; + int64_t nTime = nStartTime; + + CBlockIndex *lastBlock = nullptr; // Before MedianTimePast of the chain has crossed nStartTime, the bit // should not be set. - CBlockIndex *lastBlock = nullptr; - lastBlock = firstChain.Mine(params.nMinerConfirmationWindow, nTime, VERSIONBITS_LAST_OLD_BLOCK_VERSION).Tip(); - BOOST_CHECK_EQUAL(ComputeBlockVersion(lastBlock, params) & (1<GetConsensus(), Consensus::DEPLOYMENT_TESTDUMMY); + // check that any deployment on any chain can conceivably reach both + // ACTIVE and FAILED states in roughly the way we expect + for (const auto& chain_name : {CBaseChainParams::MAIN, CBaseChainParams::TESTNET, CBaseChainParams::SIGNET, CBaseChainParams::REGTEST}) { + const auto chainParams = CreateChainParams(*m_node.args, chain_name); + for (int i = 0; i < (int)Consensus::MAX_VERSION_BITS_DEPLOYMENTS; ++i) { + check_computeblockversion(chainParams->GetConsensus(), static_cast(i)); + } + } } BOOST_AUTO_TEST_SUITE_END() From f9517e6014ccfe91d5a77e2bacca928bdce7c285 Mon Sep 17 00:00:00 2001 From: Anthony Towns Date: Sun, 28 Mar 2021 00:07:49 +1000 Subject: [PATCH 046/102] tests: clean up versionbits test Simplify the versionbits unit test slightly to make the next set of changes a little easier to follow. Github-Pull: #21377 Rebased-From: 9e6b65f6fa205eee5c3b99343988adcb8d320460 --- src/test/versionbits_tests.cpp | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/src/test/versionbits_tests.cpp b/src/test/versionbits_tests.cpp index 7e96ef923..b42aaff9a 100644 --- a/src/test/versionbits_tests.cpp +++ b/src/test/versionbits_tests.cpp @@ -100,7 +100,7 @@ public: while (vpblock.size() < height) { CBlockIndex* pindex = new CBlockIndex(); pindex->nHeight = vpblock.size(); - pindex->pprev = vpblock.size() > 0 ? vpblock.back() : nullptr; + pindex->pprev = Tip(); pindex->nTime = nTime; pindex->nVersion = nVersion; pindex->BuildSkip(); @@ -110,13 +110,14 @@ public: } VersionBitsTester& TestStateSinceHeight(int height) { + const CBlockIndex* tip = Tip(); for (int i = 0; i < CHECKERS; i++) { if (InsecureRandBits(i) == 0) { - BOOST_CHECK_MESSAGE(checker[i].GetStateSinceHeightFor(vpblock.empty() ? nullptr : vpblock.back()) == height, strprintf("Test %i for StateSinceHeight", num)); - BOOST_CHECK_MESSAGE(checker_always[i].GetStateSinceHeightFor(vpblock.empty() ? nullptr : vpblock.back()) == 0, strprintf("Test %i for StateSinceHeight (always active)", num)); + BOOST_CHECK_MESSAGE(checker[i].GetStateSinceHeightFor(tip) == height, strprintf("Test %i for StateSinceHeight", num)); + BOOST_CHECK_MESSAGE(checker_always[i].GetStateSinceHeightFor(tip) == 0, strprintf("Test %i for StateSinceHeight (always active)", num)); // never active may go from DEFINED -> FAILED at the first period - const auto never_height = checker_never[i].GetStateSinceHeightFor(vpblock.empty() ? nullptr : vpblock.back()); + const auto never_height = checker_never[i].GetStateSinceHeightFor(tip); BOOST_CHECK_MESSAGE(never_height == 0 || never_height == checker_never[i].Period(paramsDummy), strprintf("Test %i for StateSinceHeight (never active)", num)); } } @@ -125,9 +126,9 @@ public: } VersionBitsTester& TestState(ThresholdState exp) { + const CBlockIndex* pindex = Tip(); for (int i = 0; i < CHECKERS; i++) { if (InsecureRandBits(i) == 0) { - const CBlockIndex* pindex = vpblock.empty() ? nullptr : vpblock.back(); ThresholdState got = checker[i].GetStateFor(pindex); ThresholdState got_always = checker_always[i].GetStateFor(pindex); ThresholdState got_never = checker_never[i].GetStateFor(pindex); @@ -149,7 +150,7 @@ public: VersionBitsTester& TestActive() { return TestState(ThresholdState::ACTIVE); } VersionBitsTester& TestFailed() { return TestState(ThresholdState::FAILED); } - CBlockIndex * Tip() { return vpblock.size() ? vpblock.back() : nullptr; } + CBlockIndex* Tip() { return vpblock.empty() ? nullptr : vpblock.back(); } }; BOOST_FIXTURE_TEST_SUITE(versionbits_tests, TestingSetup) @@ -217,7 +218,10 @@ BOOST_AUTO_TEST_CASE(versionbits_test) .Mine(6000, TestTime(20000), 0).TestFailed().TestStateSinceHeight(6000) .Mine(7000, TestTime(20000), 0x100).TestFailed().TestStateSinceHeight(6000); } +} +BOOST_AUTO_TEST_CASE(versionbits_sanity) +{ // Sanity checks of version bit deployments const auto chainParams = CreateChainParams(*m_node.args, CBaseChainParams::MAIN); const Consensus::Params &mainnetParams = chainParams->GetConsensus(); @@ -271,7 +275,7 @@ static void check_computeblockversion(const Consensus::Params& params, Consensus int64_t nTime = nStartTime; - CBlockIndex *lastBlock = nullptr; + const CBlockIndex *lastBlock = nullptr; // Before MedianTimePast of the chain has crossed nStartTime, the bit // should not be set. From 4cab84cfdfc98cd10462681b5eb0fbbc08afd2a7 Mon Sep 17 00:00:00 2001 From: Anthony Towns Date: Sat, 6 Mar 2021 18:18:49 +1000 Subject: [PATCH 047/102] versionbits: Add support for delayed activation Github-Pull: #21377 Rebased-From: 73d4a706393e6dbd6b6d6b6428f8d3233ac0a2d8 --- src/chainparams.cpp | 25 ++++++++++++++++++++----- src/chainparamsbase.cpp | 2 +- src/consensus/params.h | 5 +++++ src/rpc/blockchain.cpp | 2 ++ src/test/versionbits_tests.cpp | 2 ++ src/versionbits.cpp | 8 ++++++-- src/versionbits.h | 3 ++- test/functional/rpc_blockchain.py | 4 +++- 8 files changed, 41 insertions(+), 10 deletions(-) diff --git a/src/chainparams.cpp b/src/chainparams.cpp index 88cf5ef0a..402229eff 100644 --- a/src/chainparams.cpp +++ b/src/chainparams.cpp @@ -85,11 +85,13 @@ public: consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].bit = 28; consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nStartTime = 1199145601; // January 1, 2008 consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nTimeout = 1230767999; // December 31, 2008 + consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].min_activation_height = 0; // No activation delay // Deployment of Taproot (BIPs 340-342) consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].bit = 2; consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nStartTime = 1199145601; // January 1, 2008 consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nTimeout = 1230767999; // December 31, 2008 + consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].min_activation_height = 0; // No activation delay consensus.nMinimumChainWork = uint256S("0x00000000000000000000000000000000000000001533efd8d716a517fe2c5008"); consensus.defaultAssumeValid = uint256S("0x0000000000000000000b9d2ec5a352ecba0592946514a92f14319dc2b367fc72"); // 654683 @@ -198,11 +200,13 @@ public: consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].bit = 28; consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nStartTime = 1199145601; // January 1, 2008 consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nTimeout = 1230767999; // December 31, 2008 + consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].min_activation_height = 0; // No activation delay // Deployment of Taproot (BIPs 340-342) consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].bit = 2; consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nStartTime = 1199145601; // January 1, 2008 consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nTimeout = 1230767999; // December 31, 2008 + consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].min_activation_height = 0; // No activation delay consensus.nMinimumChainWork = uint256S("0x0000000000000000000000000000000000000000000001db6ec4ac88cf2272c6"); consensus.defaultAssumeValid = uint256S("0x000000000000006433d1efec504c53ca332b64963c425395515b01977bd7b3b0"); // 1864000 @@ -329,11 +333,13 @@ public: consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].bit = 28; consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nStartTime = 1199145601; // January 1, 2008 consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nTimeout = 1230767999; // December 31, 2008 + consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].min_activation_height = 0; // No activation delay // Activation of Taproot (BIPs 340-342) consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].bit = 2; consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nStartTime = Consensus::BIP9Deployment::ALWAYS_ACTIVE; consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nTimeout = Consensus::BIP9Deployment::NO_TIMEOUT; + consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].min_activation_height = 0; // No activation delay // message start is defined as the first 4 bytes of the sha256d of the block script CHashWriter h(SER_DISK, 0); @@ -391,12 +397,16 @@ public: consensus.fPowNoRetargeting = true; consensus.nRuleChangeActivationThreshold = 108; // 75% for testchains consensus.nMinerConfirmationWindow = 144; // Faster than normal for regtest (144 instead of 2016) + consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].bit = 28; consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nStartTime = 0; consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nTimeout = Consensus::BIP9Deployment::NO_TIMEOUT; + consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].min_activation_height = 0; // No activation delay + consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].bit = 2; consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nStartTime = Consensus::BIP9Deployment::ALWAYS_ACTIVE; consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nTimeout = Consensus::BIP9Deployment::NO_TIMEOUT; + consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].min_activation_height = 0; // No activation delay consensus.nMinimumChainWork = uint256{}; consensus.defaultAssumeValid = uint256{}; @@ -449,10 +459,11 @@ public: /** * Allows modifying the Version Bits regtest parameters. */ - void UpdateVersionBitsParameters(Consensus::DeploymentPos d, int64_t nStartTime, int64_t nTimeout) + void UpdateVersionBitsParameters(Consensus::DeploymentPos d, int64_t nStartTime, int64_t nTimeout, int min_activation_height) { consensus.vDeployments[d].nStartTime = nStartTime; consensus.vDeployments[d].nTimeout = nTimeout; + consensus.vDeployments[d].min_activation_height = min_activation_height; } void UpdateActivationParametersFromArgs(const ArgsManager& args); }; @@ -475,22 +486,26 @@ void CRegTestParams::UpdateActivationParametersFromArgs(const ArgsManager& args) for (const std::string& strDeployment : args.GetArgs("-vbparams")) { std::vector vDeploymentParams; boost::split(vDeploymentParams, strDeployment, boost::is_any_of(":")); - if (vDeploymentParams.size() != 3) { - throw std::runtime_error("Version bits parameters malformed, expecting deployment:start:end"); + if (vDeploymentParams.size() < 3 || 4 < vDeploymentParams.size()) { + throw std::runtime_error("Version bits parameters malformed, expecting deployment:start:end[:min_activation_height]"); } int64_t nStartTime, nTimeout; + int min_activation_height = 0; if (!ParseInt64(vDeploymentParams[1], &nStartTime)) { throw std::runtime_error(strprintf("Invalid nStartTime (%s)", vDeploymentParams[1])); } if (!ParseInt64(vDeploymentParams[2], &nTimeout)) { throw std::runtime_error(strprintf("Invalid nTimeout (%s)", vDeploymentParams[2])); } + if (vDeploymentParams.size() >= 4 && !ParseInt32(vDeploymentParams[3], &min_activation_height)) { + throw std::runtime_error(strprintf("Invalid min_activation_height (%s)", vDeploymentParams[3])); + } bool found = false; for (int j=0; j < (int)Consensus::MAX_VERSION_BITS_DEPLOYMENTS; ++j) { if (vDeploymentParams[0] == VersionBitsDeploymentInfo[j].name) { - UpdateVersionBitsParameters(Consensus::DeploymentPos(j), nStartTime, nTimeout); + UpdateVersionBitsParameters(Consensus::DeploymentPos(j), nStartTime, nTimeout, min_activation_height); found = true; - LogPrintf("Setting version bits activation parameters for %s to start=%ld, timeout=%ld\n", vDeploymentParams[0], nStartTime, nTimeout); + LogPrintf("Setting version bits activation parameters for %s to start=%ld, timeout=%ld, min_activation_height=%d\n", vDeploymentParams[0], nStartTime, nTimeout, min_activation_height); break; } } diff --git a/src/chainparamsbase.cpp b/src/chainparamsbase.cpp index 603969aae..be33bb94c 100644 --- a/src/chainparamsbase.cpp +++ b/src/chainparamsbase.cpp @@ -23,7 +23,7 @@ void SetupChainParamsBaseOptions(ArgsManager& argsman) "This is intended for regression testing tools and app development. Equivalent to -chain=regtest.", ArgsManager::ALLOW_ANY | ArgsManager::DEBUG_ONLY, OptionsCategory::CHAINPARAMS); argsman.AddArg("-segwitheight=", "Set the activation height of segwit. -1 to disable. (regtest-only)", ArgsManager::ALLOW_ANY | ArgsManager::DEBUG_ONLY, OptionsCategory::DEBUG_TEST); argsman.AddArg("-testnet", "Use the test chain. Equivalent to -chain=test.", ArgsManager::ALLOW_ANY, OptionsCategory::CHAINPARAMS); - argsman.AddArg("-vbparams=deployment:start:end", "Use given start/end times for specified version bits deployment (regtest-only)", ArgsManager::ALLOW_ANY | ArgsManager::DEBUG_ONLY, OptionsCategory::CHAINPARAMS); + argsman.AddArg("-vbparams=deployment:start:end[:min_activation_height]", "Use given start/end times and min_activation_height for specified version bits deployment (regtest-only)", ArgsManager::ALLOW_ANY | ArgsManager::DEBUG_ONLY, OptionsCategory::CHAINPARAMS); argsman.AddArg("-signet", "Use the signet chain. Equivalent to -chain=signet. Note that the network is defined by the -signetchallenge parameter", ArgsManager::ALLOW_ANY, OptionsCategory::CHAINPARAMS); argsman.AddArg("-signetchallenge", "Blocks must satisfy the given script to be considered valid (only for signet networks; defaults to the global default signet test network challenge)", ArgsManager::ALLOW_STRING, OptionsCategory::CHAINPARAMS); argsman.AddArg("-signetseednode", "Specify a seed node for the signet network, in the hostname[:port] format, e.g. sig.net:1234 (may be used multiple times to specify multiple seed nodes; defaults to the global default signet test network seed node(s))", ArgsManager::ALLOW_STRING, OptionsCategory::CHAINPARAMS); diff --git a/src/consensus/params.h b/src/consensus/params.h index 0983595c6..5d566a01b 100644 --- a/src/consensus/params.h +++ b/src/consensus/params.h @@ -29,6 +29,11 @@ struct BIP9Deployment { int64_t nStartTime; /** Timeout/expiry MedianTime for the deployment attempt. */ int64_t nTimeout; + /** If lock in occurs, delay activation until at least this block + * height. Note that activation will only occur on a retarget + * boundary. + */ + int min_activation_height{0}; /** Constant for nTimeout very far in the future. */ static constexpr int64_t NO_TIMEOUT = std::numeric_limits::max(); diff --git a/src/rpc/blockchain.cpp b/src/rpc/blockchain.cpp index 392073d04..2b4d26d85 100644 --- a/src/rpc/blockchain.cpp +++ b/src/rpc/blockchain.cpp @@ -1247,6 +1247,7 @@ static void BIP9SoftForkDescPushBack(UniValue& softforks, const std::string &nam statsUV.pushKV("possible", statsStruct.possible); bip9.pushKV("statistics", statsUV); } + bip9.pushKV("min_activation_height", consensusParams.vDeployments[id].min_activation_height); UniValue rv(UniValue::VOBJ); rv.pushKV("type", "bip9"); @@ -1293,6 +1294,7 @@ RPCHelpMan getblockchaininfo() {RPCResult::Type::NUM_TIME, "start_time", "the minimum median time past of a block at which the bit gains its meaning"}, {RPCResult::Type::NUM_TIME, "timeout", "the median time past of a block at which the deployment is considered failed if not yet locked in"}, {RPCResult::Type::NUM, "since", "height of the first block to which the status applies"}, + {RPCResult::Type::NUM, "min_activation_height", "minimum height of blocks for which the rules may be enforced"}, {RPCResult::Type::OBJ, "statistics", "numeric statistics about BIP9 signalling for a softfork (only for \"started\" status)", { {RPCResult::Type::NUM, "period", "the length in blocks of the BIP9 signalling period"}, diff --git a/src/test/versionbits_tests.cpp b/src/test/versionbits_tests.cpp index b42aaff9a..ae0d47b2b 100644 --- a/src/test/versionbits_tests.cpp +++ b/src/test/versionbits_tests.cpp @@ -255,6 +255,7 @@ static void check_computeblockversion(const Consensus::Params& params, Consensus int64_t bit = params.vDeployments[dep].bit; int64_t nStartTime = params.vDeployments[dep].nStartTime; int64_t nTimeout = params.vDeployments[dep].nTimeout; + int min_activation_height = params.vDeployments[dep].min_activation_height; // should not be any signalling for first block BOOST_CHECK_EQUAL(ComputeBlockVersion(nullptr, params), VERSIONBITS_TOP_BITS); @@ -267,6 +268,7 @@ static void check_computeblockversion(const Consensus::Params& params, Consensus BOOST_REQUIRE(nTimeout <= std::numeric_limits::max() || nTimeout == Consensus::BIP9Deployment::NO_TIMEOUT); BOOST_REQUIRE(0 <= bit && bit < 32); BOOST_REQUIRE(((1 << bit) & VERSIONBITS_TOP_MASK) == 0); + BOOST_REQUIRE(min_activation_height == 0); // In the first chain, test that the bit is set by CBV until it has failed. // In the second chain, test the bit is set by CBV while STARTED and diff --git a/src/versionbits.cpp b/src/versionbits.cpp index af07c67cc..11da72959 100644 --- a/src/versionbits.cpp +++ b/src/versionbits.cpp @@ -9,6 +9,7 @@ ThresholdState AbstractThresholdConditionChecker::GetStateFor(const CBlockIndex* { int nPeriod = Period(params); int nThreshold = Threshold(params); + int min_activation_height = MinActivationHeight(params); int64_t nTimeStart = BeginTime(params); int64_t nTimeTimeout = EndTime(params); @@ -78,8 +79,10 @@ ThresholdState AbstractThresholdConditionChecker::GetStateFor(const CBlockIndex* break; } case ThresholdState::LOCKED_IN: { - // Always progresses into ACTIVE. - stateNext = ThresholdState::ACTIVE; + // Progresses into ACTIVE provided activation height will have been reached. + if (pindexPrev->nHeight + 1 >= min_activation_height) { + stateNext = ThresholdState::ACTIVE; + } break; } case ThresholdState::FAILED: @@ -170,6 +173,7 @@ private: protected: int64_t BeginTime(const Consensus::Params& params) const override { return params.vDeployments[id].nStartTime; } int64_t EndTime(const Consensus::Params& params) const override { return params.vDeployments[id].nTimeout; } + int MinActivationHeight(const Consensus::Params& params) const override { return params.vDeployments[id].min_activation_height; } int Period(const Consensus::Params& params) const override { return params.nMinerConfirmationWindow; } int Threshold(const Consensus::Params& params) const override { return params.nRuleChangeActivationThreshold; } diff --git a/src/versionbits.h b/src/versionbits.h index b02f848b6..faf09343e 100644 --- a/src/versionbits.h +++ b/src/versionbits.h @@ -25,7 +25,7 @@ static const int32_t VERSIONBITS_NUM_BITS = 29; enum class ThresholdState { DEFINED, // First state that each softfork starts out as. The genesis block is by definition in this state for each deployment. STARTED, // For blocks past the starttime. - LOCKED_IN, // For one retarget period after the first retarget period with STARTED blocks of which at least threshold have the associated bit set in nVersion. + LOCKED_IN, // For at least one retarget period after the first retarget period with STARTED blocks of which at least threshold have the associated bit set in nVersion, until min_activation_height is reached. ACTIVE, // For all blocks after the LOCKED_IN retarget period (final state) FAILED, // For all blocks once the first retarget period after the timeout time is hit, if LOCKED_IN wasn't already reached (final state) }; @@ -57,6 +57,7 @@ protected: virtual bool Condition(const CBlockIndex* pindex, const Consensus::Params& params) const =0; virtual int64_t BeginTime(const Consensus::Params& params) const =0; virtual int64_t EndTime(const Consensus::Params& params) const =0; + virtual int MinActivationHeight(const Consensus::Params& params) const { return 0; } virtual int Period(const Consensus::Params& params) const =0; virtual int Threshold(const Consensus::Params& params) const =0; diff --git a/test/functional/rpc_blockchain.py b/test/functional/rpc_blockchain.py index f96567740..79d437abd 100755 --- a/test/functional/rpc_blockchain.py +++ b/test/functional/rpc_blockchain.py @@ -145,6 +145,7 @@ class BlockchainTest(BitcoinTestFramework): 'count': 57, 'possible': True, }, + 'min_activation_height': 0, }, 'active': False }, @@ -154,7 +155,8 @@ class BlockchainTest(BitcoinTestFramework): 'status': 'active', 'start_time': -1, 'timeout': 9223372036854775807, - 'since': 0 + 'since': 0, + 'min_activation_height': 0, }, 'height': 0, 'active': True From 71917e01ebf48790b9df48421d8e97986f92e2e4 Mon Sep 17 00:00:00 2001 From: Anthony Towns Date: Wed, 7 Apr 2021 11:37:47 +1000 Subject: [PATCH 048/102] tests: test versionbits delayed activation Github-Pull: #21377 Rebased-From: dd85d5411c1702c8ae259610fe55050ba212e21e --- src/test/versionbits_tests.cpp | 83 ++++++++++++++++++++++++++++++---- 1 file changed, 74 insertions(+), 9 deletions(-) diff --git a/src/test/versionbits_tests.cpp b/src/test/versionbits_tests.cpp index ae0d47b2b..f1b131b49 100644 --- a/src/test/versionbits_tests.cpp +++ b/src/test/versionbits_tests.cpp @@ -44,6 +44,12 @@ public: int GetStateSinceHeightFor(const CBlockIndex* pindexPrev) const { return AbstractThresholdConditionChecker::GetStateSinceHeightFor(pindexPrev, paramsDummy, cache); } }; +class TestDelayedActivationConditionChecker : public TestConditionChecker +{ +public: + int MinActivationHeight(const Consensus::Params& params) const override { return 15000; } +}; + class TestAlwaysActiveConditionChecker : public TestConditionChecker { public: @@ -68,6 +74,8 @@ class VersionBitsTester // The first one performs all checks, the second only 50%, the third only 25%, etc... // This is to test whether lack of cached information leads to the same results. TestConditionChecker checker[CHECKERS]; + // Another 6 that assume delayed activation + TestDelayedActivationConditionChecker checker_delayed[CHECKERS]; // Another 6 that assume always active activation TestAlwaysActiveConditionChecker checker_always[CHECKERS]; // Another 6 that assume never active activation @@ -77,14 +85,18 @@ class VersionBitsTester int num; public: - VersionBitsTester() : num(0) {} + VersionBitsTester() : num(1000) {} VersionBitsTester& Reset() { + // Have each group of tests be counted by the 1000s part, starting at 1000 + num = num - (num % 1000) + 1000; + for (unsigned int i = 0; i < vpblock.size(); i++) { delete vpblock[i]; } for (unsigned int i = 0; i < CHECKERS; i++) { checker[i] = TestConditionChecker(); + checker_delayed[i] = TestDelayedActivationConditionChecker(); checker_always[i] = TestAlwaysActiveConditionChecker(); checker_never[i] = TestNeverActiveConditionChecker(); } @@ -109,11 +121,18 @@ public: return *this; } - VersionBitsTester& TestStateSinceHeight(int height) { + VersionBitsTester& TestStateSinceHeight(int height) + { + return TestStateSinceHeight(height, height); + } + + VersionBitsTester& TestStateSinceHeight(int height, int height_delayed) + { const CBlockIndex* tip = Tip(); for (int i = 0; i < CHECKERS; i++) { if (InsecureRandBits(i) == 0) { BOOST_CHECK_MESSAGE(checker[i].GetStateSinceHeightFor(tip) == height, strprintf("Test %i for StateSinceHeight", num)); + BOOST_CHECK_MESSAGE(checker_delayed[i].GetStateSinceHeightFor(tip) == height_delayed, strprintf("Test %i for StateSinceHeight (delayed)", num)); BOOST_CHECK_MESSAGE(checker_always[i].GetStateSinceHeightFor(tip) == 0, strprintf("Test %i for StateSinceHeight (always active)", num)); // never active may go from DEFINED -> FAILED at the first period @@ -125,17 +144,31 @@ public: return *this; } - VersionBitsTester& TestState(ThresholdState exp) { + VersionBitsTester& TestState(ThresholdState exp) + { + return TestState(exp, exp); + } + + VersionBitsTester& TestState(ThresholdState exp, ThresholdState exp_delayed) + { + if (exp != exp_delayed) { + // only expected differences are that delayed stays in locked_in longer + BOOST_CHECK_EQUAL(exp, ThresholdState::ACTIVE); + BOOST_CHECK_EQUAL(exp_delayed, ThresholdState::LOCKED_IN); + } + const CBlockIndex* pindex = Tip(); for (int i = 0; i < CHECKERS; i++) { if (InsecureRandBits(i) == 0) { ThresholdState got = checker[i].GetStateFor(pindex); + ThresholdState got_delayed = checker_delayed[i].GetStateFor(pindex); ThresholdState got_always = checker_always[i].GetStateFor(pindex); ThresholdState got_never = checker_never[i].GetStateFor(pindex); // nHeight of the next block. If vpblock is empty, the next (ie first) // block should be the genesis block with nHeight == 0. int height = pindex == nullptr ? 0 : pindex->nHeight + 1; BOOST_CHECK_MESSAGE(got == exp, strprintf("Test %i for %s height %d (got %s)", num, StateName(exp), height, StateName(got))); + BOOST_CHECK_MESSAGE(got_delayed == exp_delayed, strprintf("Test %i for %s height %d (got %s; delayed case)", num, StateName(exp_delayed), height, StateName(got_delayed))); BOOST_CHECK_MESSAGE(got_always == ThresholdState::ACTIVE, strprintf("Test %i for ACTIVE height %d (got %s; always active case)", num, height, StateName(got_always))); BOOST_CHECK_MESSAGE(got_never == ThresholdState::DEFINED|| got_never == ThresholdState::FAILED, strprintf("Test %i for DEFINED/FAILED height %d (got %s; never active case)", num, height, StateName(got_never))); } @@ -150,6 +183,9 @@ public: VersionBitsTester& TestActive() { return TestState(ThresholdState::ACTIVE); } VersionBitsTester& TestFailed() { return TestState(ThresholdState::FAILED); } + // non-delayed should be active; delayed should still be locked in + VersionBitsTester& TestActiveDelayed() { return TestState(ThresholdState::ACTIVE, ThresholdState::LOCKED_IN); } + CBlockIndex* Tip() { return vpblock.empty() ? nullptr : vpblock.back(); } }; @@ -170,7 +206,6 @@ BOOST_AUTO_TEST_CASE(versionbits_test) .Mine(2001, TestTime(30003), 0x100).TestFailed().TestStateSinceHeight(1000) .Mine(2999, TestTime(30004), 0x100).TestFailed().TestStateSinceHeight(1000) .Mine(3000, TestTime(30005), 0x100).TestFailed().TestStateSinceHeight(1000) - // DEFINED -> STARTED -> FAILED .Reset().TestDefined().TestStateSinceHeight(0) .Mine(1, TestTime(1), 0).TestDefined().TestStateSinceHeight(0) @@ -203,9 +238,10 @@ BOOST_AUTO_TEST_CASE(versionbits_test) .Mine(2999, TestTime(19999), 0x200).TestStarted().TestStateSinceHeight(2000) // 49 old blocks .Mine(3000, TestTime(29999), 0x200).TestLockedIn().TestStateSinceHeight(3000) // 1 old block (so 900 out of the past 1000) .Mine(3999, TestTime(30001), 0).TestLockedIn().TestStateSinceHeight(3000) - .Mine(4000, TestTime(30002), 0).TestActive().TestStateSinceHeight(4000) - .Mine(14333, TestTime(30003), 0).TestActive().TestStateSinceHeight(4000) - .Mine(24000, TestTime(40000), 0).TestActive().TestStateSinceHeight(4000) + .Mine(4000, TestTime(30002), 0).TestActiveDelayed().TestStateSinceHeight(4000, 3000) // delayed will not become active until height=15000 + .Mine(14333, TestTime(30003), 0).TestActiveDelayed().TestStateSinceHeight(4000, 3000) + .Mine(15000, TestTime(40000), 0).TestActive().TestStateSinceHeight(4000, 15000) + .Mine(24000, TestTime(40000), 0).TestActive().TestStateSinceHeight(4000, 15000) // DEFINED multiple periods -> STARTED multiple periods -> FAILED .Reset().TestDefined().TestStateSinceHeight(0) @@ -216,7 +252,8 @@ BOOST_AUTO_TEST_CASE(versionbits_test) .Mine(4000, TestTime(10000), 0).TestStarted().TestStateSinceHeight(3000) .Mine(5000, TestTime(10000), 0).TestStarted().TestStateSinceHeight(3000) .Mine(6000, TestTime(20000), 0).TestFailed().TestStateSinceHeight(6000) - .Mine(7000, TestTime(20000), 0x100).TestFailed().TestStateSinceHeight(6000); + .Mine(7000, TestTime(20000), 0x100).TestFailed().TestStateSinceHeight(6000) + ; } } @@ -230,6 +267,13 @@ BOOST_AUTO_TEST_CASE(versionbits_sanity) // Make sure that no deployment tries to set an invalid bit. BOOST_CHECK_EQUAL(bitmask & ~(uint32_t)VERSIONBITS_TOP_MASK, bitmask); + // Check min_activation_height is on a retarget boundary + BOOST_CHECK_EQUAL(mainnetParams.vDeployments[i].min_activation_height % mainnetParams.nMinerConfirmationWindow, 0U); + // Check min_activation_height is 0 for ALWAYS_ACTIVE and never active deployments + if (mainnetParams.vDeployments[i].nStartTime == Consensus::BIP9Deployment::ALWAYS_ACTIVE || mainnetParams.vDeployments[i].nTimeout <= 1230768000) { + BOOST_CHECK_EQUAL(mainnetParams.vDeployments[i].min_activation_height, 0); + } + // Verify that the deployment windows of different deployment using the // same bit are disjoint. // This test may need modification at such time as a new deployment @@ -268,7 +312,8 @@ static void check_computeblockversion(const Consensus::Params& params, Consensus BOOST_REQUIRE(nTimeout <= std::numeric_limits::max() || nTimeout == Consensus::BIP9Deployment::NO_TIMEOUT); BOOST_REQUIRE(0 <= bit && bit < 32); BOOST_REQUIRE(((1 << bit) & VERSIONBITS_TOP_MASK) == 0); - BOOST_REQUIRE(min_activation_height == 0); + BOOST_REQUIRE(min_activation_height >= 0); + BOOST_REQUIRE_EQUAL(min_activation_height % params.nMinerConfirmationWindow, 0U); // In the first chain, test that the bit is set by CBV until it has failed. // In the second chain, test the bit is set by CBV while STARTED and @@ -378,6 +423,16 @@ static void check_computeblockversion(const Consensus::Params& params, Consensus lastBlock = secondChain.Mine((params.nMinerConfirmationWindow * 3) - 1, nTime, VERSIONBITS_LAST_OLD_BLOCK_VERSION).Tip(); BOOST_CHECK((ComputeBlockVersion(lastBlock, params) & (1 << bit)) != 0); lastBlock = secondChain.Mine(params.nMinerConfirmationWindow * 3, nTime, VERSIONBITS_LAST_OLD_BLOCK_VERSION).Tip(); + + if (lastBlock->nHeight + 1 < min_activation_height) { + // check signalling continues while min_activation_height is not reached + lastBlock = secondChain.Mine(min_activation_height - 1, nTime, VERSIONBITS_LAST_OLD_BLOCK_VERSION).Tip(); + BOOST_CHECK((ComputeBlockVersion(lastBlock, params) & (1 << bit)) != 0); + // then reach min_activation_height, which was already REQUIRE'd to start a new period + lastBlock = secondChain.Mine(min_activation_height, nTime, VERSIONBITS_LAST_OLD_BLOCK_VERSION).Tip(); + } + + // Check that we don't signal after activation BOOST_CHECK_EQUAL(ComputeBlockVersion(lastBlock, params) & (1<GetConsensus(), static_cast(i)); } } + + { + // Use regtest/testdummy to ensure we always exercise the + // min_activation_height test, even if we're not using that in a + // live deployment + ArgsManager args; + args.ForceSetArg("-vbparams", "testdummy:1199145601:1230767999:403200"); // January 1, 2008 - December 31, 2008, min act height 403200 + const auto chainParams = CreateChainParams(args, CBaseChainParams::REGTEST); + check_computeblockversion(chainParams->GetConsensus(), Consensus::DEPLOYMENT_TESTDUMMY); + } } BOOST_AUTO_TEST_SUITE_END() From b529222ad18f7facbaff394455875b4aa65d653e Mon Sep 17 00:00:00 2001 From: Anthony Towns Date: Tue, 16 Mar 2021 22:12:19 +1000 Subject: [PATCH 049/102] fuzz: test versionbits delayed activation Github-Pull: #21377 Rebased-From: dd07e6da48040dc7eae46bc7941db48d98a669fd --- src/test/fuzz/versionbits.cpp | 33 +++++++++++++++++++++------------ 1 file changed, 21 insertions(+), 12 deletions(-) diff --git a/src/test/fuzz/versionbits.cpp b/src/test/fuzz/versionbits.cpp index 992a5c132..220e29ab0 100644 --- a/src/test/fuzz/versionbits.cpp +++ b/src/test/fuzz/versionbits.cpp @@ -25,18 +25,20 @@ private: const Consensus::Params dummy_params{}; public: - const int64_t m_begin = 0; - const int64_t m_end = 0; - const int m_period = 0; - const int m_threshold = 0; - const int m_bit = 0; + const int64_t m_begin; + const int64_t m_end; + const int m_period; + const int m_threshold; + const int m_min_activation_height; + const int m_bit; - TestConditionChecker(int64_t begin, int64_t end, int period, int threshold, int bit) - : m_begin{begin}, m_end{end}, m_period{period}, m_threshold{threshold}, m_bit{bit} + TestConditionChecker(int64_t begin, int64_t end, int period, int threshold, int min_activation_height, int bit) + : m_begin{begin}, m_end{end}, m_period{period}, m_threshold{threshold}, m_min_activation_height{min_activation_height}, m_bit{bit} { assert(m_period > 0); assert(0 <= m_threshold && m_threshold <= m_period); - assert(0 <= m_bit && m_bit <= 32 && m_bit < VERSIONBITS_NUM_BITS); + assert(0 <= m_bit && m_bit < 32 && m_bit < VERSIONBITS_NUM_BITS); + assert(0 <= m_min_activation_height); } bool Condition(const CBlockIndex* pindex, const Consensus::Params& params) const override { return Condition(pindex->nVersion); } @@ -44,6 +46,7 @@ public: int64_t EndTime(const Consensus::Params& params) const override { return m_end; } int Period(const Consensus::Params& params) const override { return m_period; } int Threshold(const Consensus::Params& params) const override { return m_threshold; } + int MinActivationHeight(const Consensus::Params& params) const override { return m_min_activation_height; } ThresholdState GetStateFor(const CBlockIndex* pindexPrev) const { return AbstractThresholdConditionChecker::GetStateFor(pindexPrev, dummy_params, m_cache); } int GetStateSinceHeightFor(const CBlockIndex* pindexPrev) const { return AbstractThresholdConditionChecker::GetStateSinceHeightFor(pindexPrev, dummy_params, m_cache); } @@ -165,8 +168,9 @@ void test_one_input(const std::vector& buffer) never_active_test = true; } } + int min_activation = fuzzed_data_provider.ConsumeIntegralInRange(0, period * max_periods); - TestConditionChecker checker(start_time, timeout, period, threshold, bit); + TestConditionChecker checker(start_time, timeout, period, threshold, min_activation, bit); // Early exit if the versions don't signal sensibly for the deployment if (!checker.Condition(ver_signal)) return; @@ -301,11 +305,16 @@ void test_one_input(const std::vector& buffer) } break; case ThresholdState::LOCKED_IN: - assert(exp_state == ThresholdState::STARTED); - assert(current_block->GetMedianTimePast() < checker.m_end); - assert(blocks_sig >= threshold); + if (exp_state == ThresholdState::LOCKED_IN) { + assert(current_block->nHeight + 1 < min_activation); + } else { + assert(exp_state == ThresholdState::STARTED); + assert(current_block->GetMedianTimePast() < checker.m_end); + assert(blocks_sig >= threshold); + } break; case ThresholdState::ACTIVE: + assert(always_active_test || min_activation <= current_block->nHeight + 1); assert(exp_state == ThresholdState::ACTIVE || exp_state == ThresholdState::LOCKED_IN); break; case ThresholdState::FAILED: From 3acf0379e0979ea4bdd03976f4987aa6711eb92f Mon Sep 17 00:00:00 2001 From: Anthony Towns Date: Sat, 27 Mar 2021 23:00:14 +1000 Subject: [PATCH 050/102] versionbits: Add explicit NEVER_ACTIVE deployments Previously we used deployments that would timeout prior to Bitcoin's invention, which allowed the deployment to still be activated in unit tests. This switches those deployments to be truly never active. Github-Pull: #21377 Rebased-From: 55ac5f568a3b73d6f1ef4654617fb76e8bcbccdf --- src/chainparams.cpp | 20 ++++++++++---------- src/consensus/params.h | 5 +++++ src/rpc/blockchain.cpp | 6 ++---- src/test/fuzz/versionbits.cpp | 27 ++++++++++----------------- src/test/versionbits_tests.cpp | 24 +++++++++++++++--------- src/versionbits.cpp | 7 ++++++- 6 files changed, 48 insertions(+), 41 deletions(-) diff --git a/src/chainparams.cpp b/src/chainparams.cpp index 402229eff..005ac5a37 100644 --- a/src/chainparams.cpp +++ b/src/chainparams.cpp @@ -83,14 +83,14 @@ public: consensus.nRuleChangeActivationThreshold = 1916; // 95% of 2016 consensus.nMinerConfirmationWindow = 2016; // nPowTargetTimespan / nPowTargetSpacing consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].bit = 28; - consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nStartTime = 1199145601; // January 1, 2008 - consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nTimeout = 1230767999; // December 31, 2008 + consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nStartTime = Consensus::BIP9Deployment::NEVER_ACTIVE; + consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nTimeout = Consensus::BIP9Deployment::NO_TIMEOUT; consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].min_activation_height = 0; // No activation delay // Deployment of Taproot (BIPs 340-342) consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].bit = 2; - consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nStartTime = 1199145601; // January 1, 2008 - consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nTimeout = 1230767999; // December 31, 2008 + consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nStartTime = Consensus::BIP9Deployment::NEVER_ACTIVE; + consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nTimeout = Consensus::BIP9Deployment::NO_TIMEOUT; consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].min_activation_height = 0; // No activation delay consensus.nMinimumChainWork = uint256S("0x00000000000000000000000000000000000000001533efd8d716a517fe2c5008"); @@ -198,14 +198,14 @@ public: consensus.nRuleChangeActivationThreshold = 1512; // 75% for testchains consensus.nMinerConfirmationWindow = 2016; // nPowTargetTimespan / nPowTargetSpacing consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].bit = 28; - consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nStartTime = 1199145601; // January 1, 2008 - consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nTimeout = 1230767999; // December 31, 2008 + consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nStartTime = Consensus::BIP9Deployment::NEVER_ACTIVE; + consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nTimeout = Consensus::BIP9Deployment::NO_TIMEOUT; consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].min_activation_height = 0; // No activation delay // Deployment of Taproot (BIPs 340-342) consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].bit = 2; - consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nStartTime = 1199145601; // January 1, 2008 - consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nTimeout = 1230767999; // December 31, 2008 + consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nStartTime = Consensus::BIP9Deployment::NEVER_ACTIVE; + consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nTimeout = Consensus::BIP9Deployment::NO_TIMEOUT; consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].min_activation_height = 0; // No activation delay consensus.nMinimumChainWork = uint256S("0x0000000000000000000000000000000000000000000001db6ec4ac88cf2272c6"); @@ -331,8 +331,8 @@ public: consensus.MinBIP9WarningHeight = 0; consensus.powLimit = uint256S("00000377ae000000000000000000000000000000000000000000000000000000"); consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].bit = 28; - consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nStartTime = 1199145601; // January 1, 2008 - consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nTimeout = 1230767999; // December 31, 2008 + consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nStartTime = Consensus::BIP9Deployment::NEVER_ACTIVE; + consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nTimeout = Consensus::BIP9Deployment::NO_TIMEOUT; consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].min_activation_height = 0; // No activation delay // Activation of Taproot (BIPs 340-342) diff --git a/src/consensus/params.h b/src/consensus/params.h index 5d566a01b..1b1c7f24b 100644 --- a/src/consensus/params.h +++ b/src/consensus/params.h @@ -43,6 +43,11 @@ struct BIP9Deployment { * process (which takes at least 3 BIP9 intervals). Only tests that specifically test the * behaviour during activation cannot use this. */ static constexpr int64_t ALWAYS_ACTIVE = -1; + + /** Special value for nStartTime indicating that the deployment is never active. + * This is useful for integrating the code changes for a new feature + * prior to deploying it on some or all networks. */ + static constexpr int64_t NEVER_ACTIVE = -2; }; /** diff --git a/src/rpc/blockchain.cpp b/src/rpc/blockchain.cpp index 2b4d26d85..90cf8d6d1 100644 --- a/src/rpc/blockchain.cpp +++ b/src/rpc/blockchain.cpp @@ -1214,10 +1214,8 @@ static void BuriedForkDescPushBack(UniValue& softforks, const std::string &name, static void BIP9SoftForkDescPushBack(UniValue& softforks, const std::string &name, const Consensus::Params& consensusParams, Consensus::DeploymentPos id) EXCLUSIVE_LOCKS_REQUIRED(cs_main) { // For BIP9 deployments. - // Deployments (e.g. testdummy) with timeout value before Jan 1, 2009 are hidden. - // A timeout value of 0 guarantees a softfork will never be activated. - // This is used when merging logic to implement a proposed softfork without a specified deployment schedule. - if (consensusParams.vDeployments[id].nTimeout <= 1230768000) return; + // Deployments that are never active are hidden. + if (consensusParams.vDeployments[id].nStartTime == Consensus::BIP9Deployment::NEVER_ACTIVE) return; UniValue bip9(UniValue::VOBJ); const ThresholdState thresholdState = VersionBitsTipState(consensusParams, id); diff --git a/src/test/fuzz/versionbits.cpp b/src/test/fuzz/versionbits.cpp index 220e29ab0..5d859c911 100644 --- a/src/test/fuzz/versionbits.cpp +++ b/src/test/fuzz/versionbits.cpp @@ -160,13 +160,12 @@ void test_one_input(const std::vector& buffer) } else { if (fuzzed_data_provider.ConsumeBool()) { start_time = Consensus::BIP9Deployment::ALWAYS_ACTIVE; - timeout = Consensus::BIP9Deployment::NO_TIMEOUT; always_active_test = true; } else { - start_time = 1199145601; // January 1, 2008 - timeout = 1230767999; // December 31, 2008 + start_time = Consensus::BIP9Deployment::NEVER_ACTIVE; never_active_test = true; } + timeout = fuzzed_data_provider.ConsumeBool() ? Consensus::BIP9Deployment::NO_TIMEOUT : fuzzed_data_provider.ConsumeIntegral(); } int min_activation = fuzzed_data_provider.ConsumeIntegralInRange(0, period * max_periods); @@ -318,7 +317,7 @@ void test_one_input(const std::vector& buffer) assert(exp_state == ThresholdState::ACTIVE || exp_state == ThresholdState::LOCKED_IN); break; case ThresholdState::FAILED: - assert(current_block->GetMedianTimePast() >= checker.m_end); + assert(never_active_test || current_block->GetMedianTimePast() >= checker.m_end); assert(exp_state != ThresholdState::LOCKED_IN && exp_state != ThresholdState::ACTIVE); break; default: @@ -330,25 +329,19 @@ void test_one_input(const std::vector& buffer) assert(state == ThresholdState::ACTIVE || state == ThresholdState::FAILED); } - // "always active" has additional restrictions if (always_active_test) { + // "always active" has additional restrictions assert(state == ThresholdState::ACTIVE); assert(exp_state == ThresholdState::ACTIVE); assert(since == 0); + } else if (never_active_test) { + // "never active" does too + assert(state == ThresholdState::FAILED); + assert(exp_state == ThresholdState::FAILED); + assert(since == 0); } else { - // except for always active, the initial state is always DEFINED + // for signalled deployments, the initial state is always DEFINED assert(since > 0 || state == ThresholdState::DEFINED); assert(exp_since > 0 || exp_state == ThresholdState::DEFINED); } - - // "never active" does too - if (never_active_test) { - assert(state == ThresholdState::FAILED); - assert(since == period); - if (exp_since == 0) { - assert(exp_state == ThresholdState::DEFINED); - } else { - assert(exp_state == ThresholdState::FAILED); - } - } } diff --git a/src/test/versionbits_tests.cpp b/src/test/versionbits_tests.cpp index f1b131b49..0bf5bce27 100644 --- a/src/test/versionbits_tests.cpp +++ b/src/test/versionbits_tests.cpp @@ -59,8 +59,7 @@ public: class TestNeverActiveConditionChecker : public TestConditionChecker { public: - int64_t BeginTime(const Consensus::Params& params) const override { return 0; } - int64_t EndTime(const Consensus::Params& params) const override { return 1230768000; } + int64_t BeginTime(const Consensus::Params& params) const override { return Consensus::BIP9Deployment::NEVER_ACTIVE; } }; #define CHECKERS 6 @@ -134,10 +133,7 @@ public: BOOST_CHECK_MESSAGE(checker[i].GetStateSinceHeightFor(tip) == height, strprintf("Test %i for StateSinceHeight", num)); BOOST_CHECK_MESSAGE(checker_delayed[i].GetStateSinceHeightFor(tip) == height_delayed, strprintf("Test %i for StateSinceHeight (delayed)", num)); BOOST_CHECK_MESSAGE(checker_always[i].GetStateSinceHeightFor(tip) == 0, strprintf("Test %i for StateSinceHeight (always active)", num)); - - // never active may go from DEFINED -> FAILED at the first period - const auto never_height = checker_never[i].GetStateSinceHeightFor(tip); - BOOST_CHECK_MESSAGE(never_height == 0 || never_height == checker_never[i].Period(paramsDummy), strprintf("Test %i for StateSinceHeight (never active)", num)); + BOOST_CHECK_MESSAGE(checker_never[i].GetStateSinceHeightFor(tip) == 0, strprintf("Test %i for StateSinceHeight (never active)", num)); } } num++; @@ -170,7 +166,7 @@ public: BOOST_CHECK_MESSAGE(got == exp, strprintf("Test %i for %s height %d (got %s)", num, StateName(exp), height, StateName(got))); BOOST_CHECK_MESSAGE(got_delayed == exp_delayed, strprintf("Test %i for %s height %d (got %s; delayed case)", num, StateName(exp_delayed), height, StateName(got_delayed))); BOOST_CHECK_MESSAGE(got_always == ThresholdState::ACTIVE, strprintf("Test %i for ACTIVE height %d (got %s; always active case)", num, height, StateName(got_always))); - BOOST_CHECK_MESSAGE(got_never == ThresholdState::DEFINED|| got_never == ThresholdState::FAILED, strprintf("Test %i for DEFINED/FAILED height %d (got %s; never active case)", num, height, StateName(got_never))); + BOOST_CHECK_MESSAGE(got_never == ThresholdState::FAILED, strprintf("Test %i for FAILED height %d (got %s; never active case)", num, height, StateName(got_never))); } } num++; @@ -270,7 +266,7 @@ BOOST_AUTO_TEST_CASE(versionbits_sanity) // Check min_activation_height is on a retarget boundary BOOST_CHECK_EQUAL(mainnetParams.vDeployments[i].min_activation_height % mainnetParams.nMinerConfirmationWindow, 0U); // Check min_activation_height is 0 for ALWAYS_ACTIVE and never active deployments - if (mainnetParams.vDeployments[i].nStartTime == Consensus::BIP9Deployment::ALWAYS_ACTIVE || mainnetParams.vDeployments[i].nTimeout <= 1230768000) { + if (mainnetParams.vDeployments[i].nStartTime == Consensus::BIP9Deployment::ALWAYS_ACTIVE || mainnetParams.vDeployments[i].nStartTime == Consensus::BIP9Deployment::NEVER_ACTIVE) { BOOST_CHECK_EQUAL(mainnetParams.vDeployments[i].min_activation_height, 0); } @@ -304,8 +300,9 @@ static void check_computeblockversion(const Consensus::Params& params, Consensus // should not be any signalling for first block BOOST_CHECK_EQUAL(ComputeBlockVersion(nullptr, params), VERSIONBITS_TOP_BITS); - // always active deployments shouldn't need to be tested further + // always/never active deployments shouldn't need to be tested further if (nStartTime == Consensus::BIP9Deployment::ALWAYS_ACTIVE) return; + if (nStartTime == Consensus::BIP9Deployment::NEVER_ACTIVE) return; BOOST_REQUIRE(nStartTime < nTimeout); BOOST_REQUIRE(nStartTime >= 0); @@ -447,6 +444,15 @@ BOOST_AUTO_TEST_CASE(versionbits_computeblockversion) } } + { + // Use regtest/testdummy to ensure we always exercise some + // deployment that's not always/never active + ArgsManager args; + args.ForceSetArg("-vbparams", "testdummy:1199145601:1230767999"); // January 1, 2008 - December 31, 2008 + const auto chainParams = CreateChainParams(args, CBaseChainParams::REGTEST); + check_computeblockversion(chainParams->GetConsensus(), Consensus::DEPLOYMENT_TESTDUMMY); + } + { // Use regtest/testdummy to ensure we always exercise the // min_activation_height test, even if we're not using that in a diff --git a/src/versionbits.cpp b/src/versionbits.cpp index 11da72959..df666c963 100644 --- a/src/versionbits.cpp +++ b/src/versionbits.cpp @@ -18,6 +18,11 @@ ThresholdState AbstractThresholdConditionChecker::GetStateFor(const CBlockIndex* return ThresholdState::ACTIVE; } + // Check if this deployment is never active. + if (nTimeStart == Consensus::BIP9Deployment::NEVER_ACTIVE) { + return ThresholdState::FAILED; + } + // A block's state is always the same as that of the first of its period, so it is computed based on a pindexPrev whose height equals a multiple of nPeriod - 1. if (pindexPrev != nullptr) { pindexPrev = pindexPrev->GetAncestor(pindexPrev->nHeight - ((pindexPrev->nHeight + 1) % nPeriod)); @@ -129,7 +134,7 @@ BIP9Stats AbstractThresholdConditionChecker::GetStateStatisticsFor(const CBlockI int AbstractThresholdConditionChecker::GetStateSinceHeightFor(const CBlockIndex* pindexPrev, const Consensus::Params& params, ThresholdConditionCache& cache) const { int64_t start_time = BeginTime(params); - if (start_time == Consensus::BIP9Deployment::ALWAYS_ACTIVE) { + if (start_time == Consensus::BIP9Deployment::ALWAYS_ACTIVE || start_time == Consensus::BIP9Deployment::NEVER_ACTIVE) { return 0; } From 600357306e2e182a457174862ea2e41c7ba39c64 Mon Sep 17 00:00:00 2001 From: Anthony Towns Date: Wed, 7 Apr 2021 10:20:46 +1000 Subject: [PATCH 051/102] versionbits: simplify state transitions This removes the DEFINED->FAILED transition and changes the STARTED->FAILED transition to only occur if signalling didn't pass the threshold. This ensures that it is always possible for activation to occur, no matter what settings are chosen, or the speed at which blocks are found. Github-Pull: #21377 Rebased-From: f054f6bcd2c2ce5fea84cf8681013f85a444e7ea --- src/test/fuzz/versionbits.cpp | 17 +++++++---------- src/test/versionbits_tests.cpp | 34 +++++++++++++++++++--------------- src/versionbits.cpp | 10 +++------- 3 files changed, 29 insertions(+), 32 deletions(-) diff --git a/src/test/fuzz/versionbits.cpp b/src/test/fuzz/versionbits.cpp index 5d859c911..645c0d23c 100644 --- a/src/test/fuzz/versionbits.cpp +++ b/src/test/fuzz/versionbits.cpp @@ -144,19 +144,14 @@ void test_one_input(const std::vector& buffer) // pick the timestamp to switch based on a block // note states will change *after* these blocks because mediantime lags int start_block = fuzzed_data_provider.ConsumeIntegralInRange(0, period * (max_periods - 3)); - int end_block = fuzzed_data_provider.ConsumeIntegralInRange(start_block, period * (max_periods - 3)); + int end_block = fuzzed_data_provider.ConsumeIntegralInRange(0, period * (max_periods - 3)); start_time = block_start_time + start_block * interval; timeout = block_start_time + end_block * interval; - assert(start_time <= timeout); - // allow for times to not exactly match a block if (fuzzed_data_provider.ConsumeBool()) start_time += interval / 2; if (fuzzed_data_provider.ConsumeBool()) timeout += interval / 2; - - // this may make timeout too early; if so, don't run the test - if (start_time > timeout) return; } else { if (fuzzed_data_provider.ConsumeBool()) { start_time = Consensus::BIP9Deployment::ALWAYS_ACTIVE; @@ -292,13 +287,12 @@ void test_one_input(const std::vector& buffer) assert(since == 0); assert(exp_state == ThresholdState::DEFINED); assert(current_block->GetMedianTimePast() < checker.m_begin); - assert(current_block->GetMedianTimePast() < checker.m_end); break; case ThresholdState::STARTED: assert(current_block->GetMedianTimePast() >= checker.m_begin); - assert(current_block->GetMedianTimePast() < checker.m_end); if (exp_state == ThresholdState::STARTED) { assert(blocks_sig < threshold); + assert(current_block->GetMedianTimePast() < checker.m_end); } else { assert(exp_state == ThresholdState::DEFINED); } @@ -308,7 +302,6 @@ void test_one_input(const std::vector& buffer) assert(current_block->nHeight + 1 < min_activation); } else { assert(exp_state == ThresholdState::STARTED); - assert(current_block->GetMedianTimePast() < checker.m_end); assert(blocks_sig >= threshold); } break; @@ -318,7 +311,11 @@ void test_one_input(const std::vector& buffer) break; case ThresholdState::FAILED: assert(never_active_test || current_block->GetMedianTimePast() >= checker.m_end); - assert(exp_state != ThresholdState::LOCKED_IN && exp_state != ThresholdState::ACTIVE); + if (exp_state == ThresholdState::STARTED) { + assert(blocks_sig < threshold); + } else { + assert(exp_state == ThresholdState::FAILED); + } break; default: assert(false); diff --git a/src/test/versionbits_tests.cpp b/src/test/versionbits_tests.cpp index 0bf5bce27..774c5670c 100644 --- a/src/test/versionbits_tests.cpp +++ b/src/test/versionbits_tests.cpp @@ -190,18 +190,20 @@ BOOST_FIXTURE_TEST_SUITE(versionbits_tests, TestingSetup) BOOST_AUTO_TEST_CASE(versionbits_test) { for (int i = 0; i < 64; i++) { - // DEFINED -> FAILED + // DEFINED -> STARTED after timeout reached -> FAILED VersionBitsTester().TestDefined().TestStateSinceHeight(0) .Mine(1, TestTime(1), 0x100).TestDefined().TestStateSinceHeight(0) .Mine(11, TestTime(11), 0x100).TestDefined().TestStateSinceHeight(0) .Mine(989, TestTime(989), 0x100).TestDefined().TestStateSinceHeight(0) - .Mine(999, TestTime(20000), 0x100).TestDefined().TestStateSinceHeight(0) - .Mine(1000, TestTime(20000), 0x100).TestFailed().TestStateSinceHeight(1000) - .Mine(1999, TestTime(30001), 0x100).TestFailed().TestStateSinceHeight(1000) - .Mine(2000, TestTime(30002), 0x100).TestFailed().TestStateSinceHeight(1000) - .Mine(2001, TestTime(30003), 0x100).TestFailed().TestStateSinceHeight(1000) - .Mine(2999, TestTime(30004), 0x100).TestFailed().TestStateSinceHeight(1000) - .Mine(3000, TestTime(30005), 0x100).TestFailed().TestStateSinceHeight(1000) + .Mine(999, TestTime(20000), 0x100).TestDefined().TestStateSinceHeight(0) // Timeout and start time reached simultaneously + .Mine(1000, TestTime(20000), 0).TestStarted().TestStateSinceHeight(1000) // Hit started, stop signalling + .Mine(1999, TestTime(30001), 0).TestStarted().TestStateSinceHeight(1000) + .Mine(2000, TestTime(30002), 0x100).TestFailed().TestStateSinceHeight(2000) // Hit failed, start signalling again + .Mine(2001, TestTime(30003), 0x100).TestFailed().TestStateSinceHeight(2000) + .Mine(2999, TestTime(30004), 0x100).TestFailed().TestStateSinceHeight(2000) + .Mine(3000, TestTime(30005), 0x100).TestFailed().TestStateSinceHeight(2000) + .Mine(4000, TestTime(30006), 0x100).TestFailed().TestStateSinceHeight(2000) + // DEFINED -> STARTED -> FAILED .Reset().TestDefined().TestStateSinceHeight(0) .Mine(1, TestTime(1), 0).TestDefined().TestStateSinceHeight(0) @@ -212,19 +214,19 @@ BOOST_AUTO_TEST_CASE(versionbits_test) .Mine(3000, TestTime(20000), 0).TestFailed().TestStateSinceHeight(3000) // 50 old blocks (so 899 out of the past 1000) .Mine(4000, TestTime(20010), 0x100).TestFailed().TestStateSinceHeight(3000) - // DEFINED -> STARTED -> FAILED while threshold reached + // DEFINED -> STARTED -> LOCKEDIN after timeout reached -> ACTIVE .Reset().TestDefined().TestStateSinceHeight(0) .Mine(1, TestTime(1), 0).TestDefined().TestStateSinceHeight(0) .Mine(1000, TestTime(10000) - 1, 0x101).TestDefined().TestStateSinceHeight(0) // One second more and it would be defined .Mine(2000, TestTime(10000), 0x101).TestStarted().TestStateSinceHeight(2000) // So that's what happens the next period .Mine(2999, TestTime(30000), 0x100).TestStarted().TestStateSinceHeight(2000) // 999 new blocks - .Mine(3000, TestTime(30000), 0x100).TestFailed().TestStateSinceHeight(3000) // 1 new block (so 1000 out of the past 1000 are new) - .Mine(3999, TestTime(30001), 0).TestFailed().TestStateSinceHeight(3000) - .Mine(4000, TestTime(30002), 0).TestFailed().TestStateSinceHeight(3000) - .Mine(14333, TestTime(30003), 0).TestFailed().TestStateSinceHeight(3000) - .Mine(24000, TestTime(40000), 0).TestFailed().TestStateSinceHeight(3000) + .Mine(3000, TestTime(30000), 0x100).TestLockedIn().TestStateSinceHeight(3000) // 1 new block (so 1000 out of the past 1000 are new) + .Mine(3999, TestTime(30001), 0).TestLockedIn().TestStateSinceHeight(3000) + .Mine(4000, TestTime(30002), 0).TestActiveDelayed().TestStateSinceHeight(4000, 3000) + .Mine(14333, TestTime(30003), 0).TestActiveDelayed().TestStateSinceHeight(4000, 3000) + .Mine(24000, TestTime(40000), 0).TestActive().TestStateSinceHeight(4000, 15000) - // DEFINED -> STARTED -> LOCKEDIN at the last minute -> ACTIVE + // DEFINED -> STARTED -> LOCKEDIN before timeout -> ACTIVE .Reset().TestDefined() .Mine(1, TestTime(1), 0).TestDefined().TestStateSinceHeight(0) .Mine(1000, TestTime(10000) - 1, 0x101).TestDefined().TestStateSinceHeight(0) // One second more and it would be defined @@ -247,8 +249,10 @@ BOOST_AUTO_TEST_CASE(versionbits_test) .Mine(3000, TestTime(10000), 0).TestStarted().TestStateSinceHeight(3000) .Mine(4000, TestTime(10000), 0).TestStarted().TestStateSinceHeight(3000) .Mine(5000, TestTime(10000), 0).TestStarted().TestStateSinceHeight(3000) + .Mine(5999, TestTime(20000), 0).TestStarted().TestStateSinceHeight(3000) .Mine(6000, TestTime(20000), 0).TestFailed().TestStateSinceHeight(6000) .Mine(7000, TestTime(20000), 0x100).TestFailed().TestStateSinceHeight(6000) + .Mine(24000, TestTime(20000), 0x100).TestFailed().TestStateSinceHeight(6000) // stay in FAILED no matter how much we signal ; } } diff --git a/src/versionbits.cpp b/src/versionbits.cpp index df666c963..df2ec4e05 100644 --- a/src/versionbits.cpp +++ b/src/versionbits.cpp @@ -57,18 +57,12 @@ ThresholdState AbstractThresholdConditionChecker::GetStateFor(const CBlockIndex* switch (state) { case ThresholdState::DEFINED: { - if (pindexPrev->GetMedianTimePast() >= nTimeTimeout) { - stateNext = ThresholdState::FAILED; - } else if (pindexPrev->GetMedianTimePast() >= nTimeStart) { + if (pindexPrev->GetMedianTimePast() >= nTimeStart) { stateNext = ThresholdState::STARTED; } break; } case ThresholdState::STARTED: { - if (pindexPrev->GetMedianTimePast() >= nTimeTimeout) { - stateNext = ThresholdState::FAILED; - break; - } // We need to count const CBlockIndex* pindexCount = pindexPrev; int count = 0; @@ -80,6 +74,8 @@ ThresholdState AbstractThresholdConditionChecker::GetStateFor(const CBlockIndex* } if (count >= nThreshold) { stateNext = ThresholdState::LOCKED_IN; + } else if (pindexPrev->GetMedianTimePast() >= nTimeTimeout) { + stateNext = ThresholdState::FAILED; } break; } From ec7824396bdd2e93b429ddce9fea6bb29695454a Mon Sep 17 00:00:00 2001 From: Anthony Towns Date: Sat, 6 Mar 2021 18:42:58 +1000 Subject: [PATCH 052/102] chainparams: drop versionbits threshold to 90% for mainnnet and signet Github-Pull: #21377 Rebased-From: ffe33dfbd4c3b11e3475b022b6c1dd077613de79 --- src/chainparams.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/chainparams.cpp b/src/chainparams.cpp index 005ac5a37..16dde1c57 100644 --- a/src/chainparams.cpp +++ b/src/chainparams.cpp @@ -80,7 +80,7 @@ public: consensus.nPowTargetSpacing = 10 * 60; consensus.fPowAllowMinDifficultyBlocks = false; consensus.fPowNoRetargeting = false; - consensus.nRuleChangeActivationThreshold = 1916; // 95% of 2016 + consensus.nRuleChangeActivationThreshold = 1815; // 90% of 2016 consensus.nMinerConfirmationWindow = 2016; // nPowTargetTimespan / nPowTargetSpacing consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].bit = 28; consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nStartTime = Consensus::BIP9Deployment::NEVER_ACTIVE; @@ -326,7 +326,7 @@ public: consensus.nPowTargetSpacing = 10 * 60; consensus.fPowAllowMinDifficultyBlocks = false; consensus.fPowNoRetargeting = false; - consensus.nRuleChangeActivationThreshold = 1916; // 95% of 2016 + consensus.nRuleChangeActivationThreshold = 1815; // 90% of 2016 consensus.nMinerConfirmationWindow = 2016; // nPowTargetTimespan / nPowTargetSpacing consensus.MinBIP9WarningHeight = 0; consensus.powLimit = uint256S("00000377ae000000000000000000000000000000000000000000000000000000"); From cbd64c3a28a7466f421477daadc6e6e6b69b898a Mon Sep 17 00:00:00 2001 From: Andrew Chow Date: Wed, 14 Apr 2021 22:36:19 -0400 Subject: [PATCH 053/102] Add mainnet and testnet taproot activation params Github-Pull: #21686 Rebased-From: f979b3237f1cfc28f9c4ccb07beab558d5357a55 --- src/chainparams.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/chainparams.cpp b/src/chainparams.cpp index 16dde1c57..0a45b782b 100644 --- a/src/chainparams.cpp +++ b/src/chainparams.cpp @@ -89,9 +89,9 @@ public: // Deployment of Taproot (BIPs 340-342) consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].bit = 2; - consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nStartTime = Consensus::BIP9Deployment::NEVER_ACTIVE; - consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nTimeout = Consensus::BIP9Deployment::NO_TIMEOUT; - consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].min_activation_height = 0; // No activation delay + consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nStartTime = 1619222400; // April 24th, 2021 + consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nTimeout = 1628640000; // August 11th, 2021 + consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].min_activation_height = 709632; // Approximately November 12th, 2021 consensus.nMinimumChainWork = uint256S("0x00000000000000000000000000000000000000001533efd8d716a517fe2c5008"); consensus.defaultAssumeValid = uint256S("0x0000000000000000000b9d2ec5a352ecba0592946514a92f14319dc2b367fc72"); // 654683 @@ -204,8 +204,8 @@ public: // Deployment of Taproot (BIPs 340-342) consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].bit = 2; - consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nStartTime = Consensus::BIP9Deployment::NEVER_ACTIVE; - consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nTimeout = Consensus::BIP9Deployment::NO_TIMEOUT; + consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nStartTime = 1619222400; // April 24th, 2021 + consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nTimeout = 1628640000; // August 11th, 2021 consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].min_activation_height = 0; // No activation delay consensus.nMinimumChainWork = uint256S("0x0000000000000000000000000000000000000000000001db6ec4ac88cf2272c6"); From dfeb6c10bba80dc91245318feb0ad1d879015a99 Mon Sep 17 00:00:00 2001 From: Vasil Dimov Date: Wed, 20 Jan 2021 11:26:43 +0100 Subject: [PATCH 054/102] test: use pointers in denialofservice_tests/peer_discouragement This is a non-functional change that replaces the `CNode` on-stack variables with `CNode` pointers. The reason for this is that it would allow us to add those `CNode`s to `CConnman::vNodes[]` which in turn would allow us to check that they are disconnected properly - a `CNode` object must be in `CConnman::vNodes[]` in order for its `fDisconnect` flag to be set. If we store pointers to the on-stack variables in `CConnman` then it would crash at the end, trying to `delete` them. Github-Pull: #21571 Rebased-From: 4d6e246fa46f2309e2998b542e4c104d73d29071 --- src/test/denialofservice_tests.cpp | 69 +++++++++++++++++------------- 1 file changed, 39 insertions(+), 30 deletions(-) diff --git a/src/test/denialofservice_tests.cpp b/src/test/denialofservice_tests.cpp index c399da900..bf981fcbb 100644 --- a/src/test/denialofservice_tests.cpp +++ b/src/test/denialofservice_tests.cpp @@ -22,6 +22,7 @@ #include +#include #include #include @@ -224,43 +225,51 @@ BOOST_AUTO_TEST_CASE(peer_discouragement) auto connman = MakeUnique(0x1337, 0x1337); auto peerLogic = MakeUnique(chainparams, *connman, banman.get(), *m_node.scheduler, *m_node.chainman, *m_node.mempool); - banman->ClearBanned(); - CAddress addr1(ip(0xa0b0c001), NODE_NONE); - CNode dummyNode1(id++, NODE_NETWORK, 0, INVALID_SOCKET, addr1, 0, 0, CAddress(), "", ConnectionType::INBOUND); - dummyNode1.SetCommonVersion(PROTOCOL_VERSION); - peerLogic->InitializeNode(&dummyNode1); - dummyNode1.fSuccessfullyConnected = true; - peerLogic->Misbehaving(dummyNode1.GetId(), DISCOURAGEMENT_THRESHOLD, /* message */ ""); // Should be discouraged - { - LOCK(dummyNode1.cs_sendProcessing); - BOOST_CHECK(peerLogic->SendMessages(&dummyNode1)); - } - BOOST_CHECK(banman->IsDiscouraged(addr1)); - BOOST_CHECK(!banman->IsDiscouraged(ip(0xa0b0c001|0x0000ff00))); // Different IP, not discouraged + const std::array addr{CAddress{ip(0xa0b0c001), NODE_NONE}, + CAddress{ip(0xa0b0c002), NODE_NONE}}; - CAddress addr2(ip(0xa0b0c002), NODE_NONE); - CNode dummyNode2(id++, NODE_NETWORK, 0, INVALID_SOCKET, addr2, 1, 1, CAddress(), "", ConnectionType::INBOUND); - dummyNode2.SetCommonVersion(PROTOCOL_VERSION); - peerLogic->InitializeNode(&dummyNode2); - dummyNode2.fSuccessfullyConnected = true; - peerLogic->Misbehaving(dummyNode2.GetId(), DISCOURAGEMENT_THRESHOLD - 1, /* message */ ""); + const CNetAddr other_addr{ip(0xa0b0ff01)}; // Not any of addr[]. + + std::array nodes; + + banman->ClearBanned(); + nodes[0] = new CNode{id++, NODE_NETWORK, 0, INVALID_SOCKET, addr[0], 0, 0, CAddress(), "", ConnectionType::INBOUND}; + nodes[0]->SetCommonVersion(PROTOCOL_VERSION); + peerLogic->InitializeNode(nodes[0]); + nodes[0]->fSuccessfullyConnected = true; + peerLogic->Misbehaving(nodes[0]->GetId(), DISCOURAGEMENT_THRESHOLD, /* message */ ""); // Should be discouraged { - LOCK(dummyNode2.cs_sendProcessing); - BOOST_CHECK(peerLogic->SendMessages(&dummyNode2)); + LOCK(nodes[0]->cs_sendProcessing); + BOOST_CHECK(peerLogic->SendMessages(nodes[0])); } - BOOST_CHECK(!banman->IsDiscouraged(addr2)); // 2 not discouraged yet... - BOOST_CHECK(banman->IsDiscouraged(addr1)); // ... but 1 still should be - peerLogic->Misbehaving(dummyNode2.GetId(), 1, /* message */ ""); // 2 reaches discouragement threshold + BOOST_CHECK(banman->IsDiscouraged(addr[0])); + BOOST_CHECK(!banman->IsDiscouraged(other_addr)); // Different address, not discouraged + + nodes[1] = new CNode{id++, NODE_NETWORK, 0, INVALID_SOCKET, addr[1], 1, 1, CAddress(), "", ConnectionType::INBOUND}; + nodes[1]->SetCommonVersion(PROTOCOL_VERSION); + peerLogic->InitializeNode(nodes[1]); + nodes[1]->fSuccessfullyConnected = true; + peerLogic->Misbehaving(nodes[1]->GetId(), DISCOURAGEMENT_THRESHOLD - 1, /* message */ ""); { - LOCK(dummyNode2.cs_sendProcessing); - BOOST_CHECK(peerLogic->SendMessages(&dummyNode2)); + LOCK(nodes[1]->cs_sendProcessing); + BOOST_CHECK(peerLogic->SendMessages(nodes[1])); } - BOOST_CHECK(banman->IsDiscouraged(addr1)); // Expect both 1 and 2 - BOOST_CHECK(banman->IsDiscouraged(addr2)); // to be discouraged now + BOOST_CHECK(!banman->IsDiscouraged(addr[1])); // [1] not discouraged yet... + BOOST_CHECK(banman->IsDiscouraged(addr[0])); // ... but [0] still should be + peerLogic->Misbehaving(nodes[1]->GetId(), 1, /* message */ ""); // [1] reaches discouragement threshold + { + LOCK(nodes[1]->cs_sendProcessing); + BOOST_CHECK(peerLogic->SendMessages(nodes[1])); + } + // Expect both [0] and [1] to be discouraged now. + BOOST_CHECK(banman->IsDiscouraged(addr[0])); + BOOST_CHECK(banman->IsDiscouraged(addr[1])); bool dummy; - peerLogic->FinalizeNode(dummyNode1, dummy); - peerLogic->FinalizeNode(dummyNode2, dummy); + for (CNode* node : nodes) { + peerLogic->FinalizeNode(*node, dummy); + delete node; + } } BOOST_AUTO_TEST_CASE(DoS_bantime) From b765f41164663c93d63e5a401d3b23c586a4e4fe Mon Sep 17 00:00:00 2001 From: Vasil Dimov Date: Wed, 20 Jan 2021 11:40:01 +0100 Subject: [PATCH 055/102] test: also check disconnect in denialofservice_tests/peer_discouragement Use `CConnmanTest` instead of `CConnman` and add the nodes to it so that their `fDisconnect` flag is set during disconnection. Github-Pull: #21571 Rebased-From: 637bb6da368b87711005b909f451f94909400092 --- src/test/denialofservice_tests.cpp | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/src/test/denialofservice_tests.cpp b/src/test/denialofservice_tests.cpp index bf981fcbb..22f1ccb2d 100644 --- a/src/test/denialofservice_tests.cpp +++ b/src/test/denialofservice_tests.cpp @@ -222,7 +222,7 @@ BOOST_AUTO_TEST_CASE(peer_discouragement) { const CChainParams& chainparams = Params(); auto banman = MakeUnique(GetDataDir() / "banlist.dat", nullptr, DEFAULT_MISBEHAVING_BANTIME); - auto connman = MakeUnique(0x1337, 0x1337); + auto connman = MakeUnique(0x1337, 0x1337); auto peerLogic = MakeUnique(chainparams, *connman, banman.get(), *m_node.scheduler, *m_node.chainman, *m_node.mempool); const std::array addr{CAddress{ip(0xa0b0c001), NODE_NONE}, @@ -237,39 +237,48 @@ BOOST_AUTO_TEST_CASE(peer_discouragement) nodes[0]->SetCommonVersion(PROTOCOL_VERSION); peerLogic->InitializeNode(nodes[0]); nodes[0]->fSuccessfullyConnected = true; + connman->AddNode(*nodes[0]); peerLogic->Misbehaving(nodes[0]->GetId(), DISCOURAGEMENT_THRESHOLD, /* message */ ""); // Should be discouraged { LOCK(nodes[0]->cs_sendProcessing); BOOST_CHECK(peerLogic->SendMessages(nodes[0])); } BOOST_CHECK(banman->IsDiscouraged(addr[0])); + BOOST_CHECK(nodes[0]->fDisconnect); BOOST_CHECK(!banman->IsDiscouraged(other_addr)); // Different address, not discouraged nodes[1] = new CNode{id++, NODE_NETWORK, 0, INVALID_SOCKET, addr[1], 1, 1, CAddress(), "", ConnectionType::INBOUND}; nodes[1]->SetCommonVersion(PROTOCOL_VERSION); peerLogic->InitializeNode(nodes[1]); nodes[1]->fSuccessfullyConnected = true; + connman->AddNode(*nodes[1]); peerLogic->Misbehaving(nodes[1]->GetId(), DISCOURAGEMENT_THRESHOLD - 1, /* message */ ""); { LOCK(nodes[1]->cs_sendProcessing); BOOST_CHECK(peerLogic->SendMessages(nodes[1])); } - BOOST_CHECK(!banman->IsDiscouraged(addr[1])); // [1] not discouraged yet... - BOOST_CHECK(banman->IsDiscouraged(addr[0])); // ... but [0] still should be + // [0] is still discouraged/disconnected. + BOOST_CHECK(banman->IsDiscouraged(addr[0])); + BOOST_CHECK(nodes[0]->fDisconnect); + // [1] is not discouraged/disconnected yet. + BOOST_CHECK(!banman->IsDiscouraged(addr[1])); + BOOST_CHECK(!nodes[1]->fDisconnect); peerLogic->Misbehaving(nodes[1]->GetId(), 1, /* message */ ""); // [1] reaches discouragement threshold { LOCK(nodes[1]->cs_sendProcessing); BOOST_CHECK(peerLogic->SendMessages(nodes[1])); } - // Expect both [0] and [1] to be discouraged now. + // Expect both [0] and [1] to be discouraged/disconnected now. BOOST_CHECK(banman->IsDiscouraged(addr[0])); + BOOST_CHECK(nodes[0]->fDisconnect); BOOST_CHECK(banman->IsDiscouraged(addr[1])); + BOOST_CHECK(nodes[1]->fDisconnect); bool dummy; for (CNode* node : nodes) { peerLogic->FinalizeNode(*node, dummy); - delete node; } + connman->ClearNodes(); } BOOST_AUTO_TEST_CASE(DoS_bantime) From 79cdb4a1984c90a4d9377fbb0dda7bdd61d57031 Mon Sep 17 00:00:00 2001 From: Vasil Dimov Date: Wed, 20 Jan 2021 11:54:17 +0100 Subject: [PATCH 056/102] test: make sure non-IP peers get discouraged and disconnected Github-Pull: #21571 Rebased-From: 81747b21719b3fa6b0fdfc3b084c0104d64903f9 --- src/test/denialofservice_tests.cpp | 32 +++++++++++++++++++++++++++--- 1 file changed, 29 insertions(+), 3 deletions(-) diff --git a/src/test/denialofservice_tests.cpp b/src/test/denialofservice_tests.cpp index 22f1ccb2d..5cffa587e 100644 --- a/src/test/denialofservice_tests.cpp +++ b/src/test/denialofservice_tests.cpp @@ -225,12 +225,18 @@ BOOST_AUTO_TEST_CASE(peer_discouragement) auto connman = MakeUnique(0x1337, 0x1337); auto peerLogic = MakeUnique(chainparams, *connman, banman.get(), *m_node.scheduler, *m_node.chainman, *m_node.mempool); - const std::array addr{CAddress{ip(0xa0b0c001), NODE_NONE}, - CAddress{ip(0xa0b0c002), NODE_NONE}}; + CNetAddr tor_netaddr; + BOOST_REQUIRE( + tor_netaddr.SetSpecial("pg6mmjiyjmcrsslvykfwnntlaru7p5svn6y2ymmju6nubxndf4pscryd.onion")); + const CService tor_service(tor_netaddr, Params().GetDefaultPort()); + + const std::array addr{CAddress{ip(0xa0b0c001), NODE_NONE}, + CAddress{ip(0xa0b0c002), NODE_NONE}, + CAddress{tor_service, NODE_NONE}}; const CNetAddr other_addr{ip(0xa0b0ff01)}; // Not any of addr[]. - std::array nodes; + std::array nodes; banman->ClearBanned(); nodes[0] = new CNode{id++, NODE_NETWORK, 0, INVALID_SOCKET, addr[0], 0, 0, CAddress(), "", ConnectionType::INBOUND}; @@ -274,6 +280,26 @@ BOOST_AUTO_TEST_CASE(peer_discouragement) BOOST_CHECK(banman->IsDiscouraged(addr[1])); BOOST_CHECK(nodes[1]->fDisconnect); + // Make sure non-IP peers are discouraged and disconnected properly. + + nodes[2] = new CNode{id++, NODE_NETWORK, 0, INVALID_SOCKET, addr[2], 1, 1, CAddress(), "", + ConnectionType::OUTBOUND_FULL_RELAY}; + nodes[2]->SetCommonVersion(PROTOCOL_VERSION); + peerLogic->InitializeNode(nodes[2]); + nodes[2]->fSuccessfullyConnected = true; + connman->AddNode(*nodes[2]); + peerLogic->Misbehaving(nodes[2]->GetId(), DISCOURAGEMENT_THRESHOLD, /* message */ ""); + { + LOCK(nodes[2]->cs_sendProcessing); + BOOST_CHECK(peerLogic->SendMessages(nodes[2])); + } + BOOST_CHECK(banman->IsDiscouraged(addr[0])); + BOOST_CHECK(banman->IsDiscouraged(addr[1])); + BOOST_CHECK(banman->IsDiscouraged(addr[2])); + BOOST_CHECK(nodes[0]->fDisconnect); + BOOST_CHECK(nodes[1]->fDisconnect); + BOOST_CHECK(nodes[2]->fDisconnect); + bool dummy; for (CNode* node : nodes) { peerLogic->FinalizeNode(*node, dummy); From b8af67eeefc9fc9622f839ec8919b7391d91bf6f Mon Sep 17 00:00:00 2001 From: Anthony Towns Date: Sun, 21 Mar 2021 10:45:17 +1000 Subject: [PATCH 057/102] fuzz: cleanups for versionbits fuzzer Github-Pull: #21489 Rebased-From: aa7f418fe32b3ec53285693a7731decd99be4528 --- src/test/fuzz/versionbits.cpp | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/src/test/fuzz/versionbits.cpp b/src/test/fuzz/versionbits.cpp index 645c0d23c..77a8d0d08 100644 --- a/src/test/fuzz/versionbits.cpp +++ b/src/test/fuzz/versionbits.cpp @@ -52,9 +52,10 @@ public: int GetStateSinceHeightFor(const CBlockIndex* pindexPrev) const { return AbstractThresholdConditionChecker::GetStateSinceHeightFor(pindexPrev, dummy_params, m_cache); } BIP9Stats GetStateStatisticsFor(const CBlockIndex* pindexPrev) const { return AbstractThresholdConditionChecker::GetStateStatisticsFor(pindexPrev, dummy_params); } - bool Condition(int64_t version) const + bool Condition(int32_t version) const { - return ((version >> m_bit) & 1) != 0 && (version & VERSIONBITS_TOP_MASK) == VERSIONBITS_TOP_BITS; + uint32_t mask = ((uint32_t)1) << m_bit; + return (((version & VERSIONBITS_TOP_MASK) == VERSIONBITS_TOP_BITS) && (version & mask) != 0); } bool Condition(const CBlockIndex* pindex) const { return Condition(pindex->nVersion); } @@ -98,17 +99,20 @@ public: }; } // namespace +std::unique_ptr g_params; + void initialize() { - SelectParams(CBaseChainParams::MAIN); + // this is actually comparatively slow, so only do it once + g_params = CreateChainParams(ArgsManager{}, CBaseChainParams::MAIN); + assert(g_params != nullptr); } -constexpr uint32_t MAX_TIME = 4102444800; // 2100-01-01 +constexpr uint32_t MAX_START_TIME = 4102444800; // 2100-01-01 void test_one_input(const std::vector& buffer) { - const CChainParams& params = Params(); - + const CChainParams& params = *g_params; const int64_t interval = params.GetConsensus().nPowTargetSpacing; assert(interval > 1); // need to be able to halve it assert(interval < std::numeric_limits::max()); @@ -125,9 +129,9 @@ void test_one_input(const std::vector& buffer) // too many blocks at 10min each might cause uint32_t time to overflow if // block_start_time is at the end of the range above - assert(std::numeric_limits::max() - MAX_TIME > interval * max_blocks); + assert(std::numeric_limits::max() - MAX_START_TIME > interval * max_blocks); - const int64_t block_start_time = fuzzed_data_provider.ConsumeIntegralInRange(params.GenesisBlock().nTime, MAX_TIME); + const int64_t block_start_time = fuzzed_data_provider.ConsumeIntegralInRange(params.GenesisBlock().nTime, MAX_START_TIME); // what values for version will we use to signal / not signal? const int32_t ver_signal = fuzzed_data_provider.ConsumeIntegral(); @@ -171,8 +175,10 @@ void test_one_input(const std::vector& buffer) if (checker.Condition(ver_nosignal)) return; if (ver_nosignal < 0) return; - // TOP_BITS should ensure version will be positive + // TOP_BITS should ensure version will be positive and meet min + // version requirement assert(ver_signal > 0); + assert(ver_signal >= VERSIONBITS_LAST_OLD_BLOCK_VERSION); // Now that we have chosen time and versions, setup to mine blocks Blocks blocks(block_start_time, interval, ver_signal, ver_nosignal); @@ -201,7 +207,7 @@ void test_one_input(const std::vector& buffer) } // don't risk exceeding max_blocks or times may wrap around - if (blocks.size() + period*2 > max_blocks) break; + if (blocks.size() + 2 * period > max_blocks) break; } // NOTE: fuzzed_data_provider may be fully consumed at this point and should not be used further @@ -321,7 +327,7 @@ void test_one_input(const std::vector& buffer) assert(false); } - if (blocks.size() >= max_periods * period) { + if (blocks.size() >= period * max_periods) { // we chose the timeout (and block times) so that by the time we have this many blocks it's all over assert(state == ThresholdState::ACTIVE || state == ThresholdState::FAILED); } From ab205181912e83166496f0e7a1f5a1879fcd376f Mon Sep 17 00:00:00 2001 From: "W. J. van der Laan" Date: Fri, 16 Apr 2021 13:15:38 +0200 Subject: [PATCH 058/102] gui: Pre-rc1 translations update Tree-SHA512: 6978293bda56b0cb1370f3ddf201477a2f12e0b8c9462d3f4703b837d9be4be65142a5e97c4a473fb9fa90edd83dba8a98ea3b0ecc335062868d1e6c550241b2 --- src/Makefile.qt_locale.include | 1 - src/qt/bitcoin_locale.qrc | 1 - src/qt/locale/bitcoin_af.ts | 13 +- src/qt/locale/bitcoin_am.ts | 300 ++- src/qt/locale/bitcoin_ar.ts | 397 +++- src/qt/locale/bitcoin_bg.ts | 32 + src/qt/locale/bitcoin_bn.ts | 23 +- src/qt/locale/bitcoin_bs.ts | 4 + src/qt/locale/bitcoin_ca.ts | 68 + src/qt/locale/bitcoin_cs.ts | 330 ++- src/qt/locale/bitcoin_da.ts | 353 ++- src/qt/locale/bitcoin_el.ts | 33 +- src/qt/locale/bitcoin_en.ts | 22 +- src/qt/locale/bitcoin_es.ts | 2 +- src/qt/locale/bitcoin_es_CL.ts | 52 +- src/qt/locale/bitcoin_es_MX.ts | 38 +- src/qt/locale/bitcoin_es_VE.ts | 4 + src/qt/locale/bitcoin_eu.ts | 16 + src/qt/locale/bitcoin_fa.ts | 4 +- src/qt/locale/bitcoin_fi.ts | 4 +- src/qt/locale/bitcoin_fil.ts | 180 +- src/qt/locale/bitcoin_fr.ts | 1916 +++++++-------- src/qt/locale/bitcoin_gl_ES.ts | 8 + src/qt/locale/bitcoin_he.ts | 133 +- src/qt/locale/bitcoin_hi.ts | 2864 ++++++++++++++++++++++- src/qt/locale/bitcoin_hr.ts | 60 + src/qt/locale/bitcoin_hu.ts | 4 + src/qt/locale/bitcoin_id.ts | 361 ++- src/qt/locale/bitcoin_it.ts | 28 +- src/qt/locale/bitcoin_ja.ts | 128 +- src/qt/locale/bitcoin_ka.ts | 96 +- src/qt/locale/bitcoin_km.ts | 1386 ++++++++++- src/qt/locale/bitcoin_la.ts | 4 + src/qt/locale/bitcoin_lv.ts | 24 + src/qt/locale/bitcoin_ml.ts | 414 +++- src/qt/locale/bitcoin_mr_IN.ts | 3486 +++++++++++++++++++++++++++- src/qt/locale/bitcoin_ms.ts | 3688 ----------------------------- src/qt/locale/bitcoin_nl.ts | 10 +- src/qt/locale/bitcoin_pl.ts | 76 +- src/qt/locale/bitcoin_pt.ts | 44 + src/qt/locale/bitcoin_ro.ts | 51 +- src/qt/locale/bitcoin_sl.ts | 4 + src/qt/locale/bitcoin_sr.ts | 38 +- src/qt/locale/bitcoin_ta.ts | 8 +- src/qt/locale/bitcoin_te.ts | 58 +- src/qt/locale/bitcoin_th.ts | 696 +++++- src/qt/locale/bitcoin_tr.ts | 1145 ++++++++- src/qt/locale/bitcoin_uk.ts | 1946 ++++++++-------- src/qt/locale/bitcoin_vi.ts | 20 + src/qt/locale/bitcoin_zh_CN.ts | 2 +- src/qt/locale/bitcoin_zh_HK.ts | 4 + src/qt/locale/bitcoin_zh_TW.ts | 54 +- src/qt/locale/bitcoin_zu.ts | 3981 +++++++++++++++++++++++++++++++- 53 files changed, 18484 insertions(+), 6130 deletions(-) delete mode 100644 src/qt/locale/bitcoin_ms.ts diff --git a/src/Makefile.qt_locale.include b/src/Makefile.qt_locale.include index aea42fd90..e7a065969 100644 --- a/src/Makefile.qt_locale.include +++ b/src/Makefile.qt_locale.include @@ -49,7 +49,6 @@ QT_TS = \ qt/locale/bitcoin_ml.ts \ qt/locale/bitcoin_mn.ts \ qt/locale/bitcoin_mr_IN.ts \ - qt/locale/bitcoin_ms.ts \ qt/locale/bitcoin_my.ts \ qt/locale/bitcoin_nb.ts \ qt/locale/bitcoin_ne.ts \ diff --git a/src/qt/bitcoin_locale.qrc b/src/qt/bitcoin_locale.qrc index a2f81c58e..e5df50665 100644 --- a/src/qt/bitcoin_locale.qrc +++ b/src/qt/bitcoin_locale.qrc @@ -50,7 +50,6 @@ locale/bitcoin_ml.qm locale/bitcoin_mn.qm locale/bitcoin_mr_IN.qm - locale/bitcoin_ms.qm locale/bitcoin_my.qm locale/bitcoin_nb.qm locale/bitcoin_ne.qm diff --git a/src/qt/locale/bitcoin_af.ts b/src/qt/locale/bitcoin_af.ts index 0fb016850..058c02687 100644 --- a/src/qt/locale/bitcoin_af.ts +++ b/src/qt/locale/bitcoin_af.ts @@ -3,11 +3,11 @@ AddressBookPage Right-click to edit address or label - Right-click to edit address or label + Regsklik om adres of etiket te verander Create a new address - Create a new address + Skep ’n nuwe adres &New @@ -69,6 +69,11 @@ These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. + + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + Hierdie is die adresse waar u Bitcoins sal ontvang. Ons beveel aan dat u 'n nuwe adres kies vir elke transaksie + &Copy Address &Copy Address @@ -477,6 +482,10 @@ Up to date Up to date + + &Load PSBT from file... + Laai PSBT van lêer.... + Node window Node window diff --git a/src/qt/locale/bitcoin_am.ts b/src/qt/locale/bitcoin_am.ts index 547ee1dde..8c8c575a3 100644 --- a/src/qt/locale/bitcoin_am.ts +++ b/src/qt/locale/bitcoin_am.ts @@ -75,7 +75,7 @@ &Edit - &ቀይር + &አርም Export Address List @@ -269,9 +269,151 @@ &Options... &አማራጮች... + + Create Wallet... + ዋሌት ፍጠር + + + Create a new wallet + አዲስ ዋሌት ፍጠር + + + Wallet: + ዋሌት + + + &Send + &ላክ + + + &Receive + &ተቀበል + + + &Show / Hide + &አሳይ/ ደብቅ + + + &File + &ፋይል + + + &Settings + &ቅንብሮች + + + &Help + &እርዳታ + + + Error + ስህተት + + + Warning + ማሳስቢያ + + + Information + መረጃ + + + Open Wallet + ዋሌት ክፈት + + + Open a wallet + ዋሌት ክፈት + + + Close Wallet... + ዋሌት ዝጋ + + + Close wallet + ዋሌት ዝጋ + + + default wallet + መደበኛ ዋሌት + + + Minimize + አሳንስ + + + Zoom + እሳድግ + + + Error: %1 + ስህተት፥ %1 + + + Warning: %1 + ማሳሰቢያ፥ %1 + + + Date: %1 + + ቀን፥ %1 + + + + Amount: %1 + + መጠን፥ %1 + + + + Address: %1 + + አድራሻ፥ %1 + + CoinControlDialog + + Quantity: + ብዛት፥ + + + Amount: + መጠን፥ + + + Fee: + ክፍያ፥ + + + Amount + መጠን + + + Date + ቀን + + + Copy address + አድራሻ ቅዳ + + + Copy amount + መጠኑ ገልብጥ + + + Copy fee + ክፍያው ቅዳ + + + yes + አዎ + + + no + አይ + (no label) (መለያ ስም የለም) @@ -282,33 +424,93 @@ CreateWalletDialog + + Wallet Name + ዋሌት ስም + + + Create + ፍጠር + EditAddressDialog FreespaceChecker + + name + ስም + HelpMessageDialog + + version + ስሪት + + + About %1 + ስለ እኛ %1 + Intro + + Welcome + እንኳን ደህና መጣህ + + + Welcome to %1. + እንኳን ወድ %1 በደህና መጣህ። + + + Bitcoin + ቢትኮይን + + + Error + ስህተት + ModalOverlay + + Form + + + + Unknown... + የማይታወቅ... + + + Hide + ደብቅ + OpenURIDialog OpenWalletActivity + + default wallet + መደበኛ ዋሌት + OptionsDialog + + Error + ስህተት + OverviewPage + + Form + + PSBTOperationsDialog @@ -321,6 +523,14 @@ QObject + + Amount + መጠን + + + Error: %1 + ስህተት፥ %1 + QRImageWidget @@ -330,12 +540,28 @@ ReceiveCoinsDialog + + Copy amount + መጠኑ ገልብጥ + ReceiveRequestDialog + + Amount: + መጠን፥ + + + Wallet: + ዋሌት + RecentRequestsTableModel + + Date + ቀን + Label መለያ ስም @@ -347,6 +573,30 @@ SendCoinsDialog + + Quantity: + ብዛት፥ + + + Amount: + መጠን፥ + + + Fee: + ክፍያ፥ + + + Hide + ደብቅ + + + Copy amount + መጠኑ ገልብጥ + + + Copy fee + ክፍያው ቅዳ + (no label) (መለያ ስም የለም) @@ -366,12 +616,24 @@ TransactionDesc + + Date + ቀን + + + Amount + መጠን + TransactionDescDialog TransactionTableModel + + Date + ቀን + Label መለያ ስም @@ -383,13 +645,25 @@ TransactionView + + Copy address + አድራሻ ቅዳ + + + Copy amount + መጠኑ ገልብጥ + Comma separated file (*.csv) ኮማ ሴፓሬትድ ፋይል (*.csv) + + Date + ቀን + Label - መለያ ስም + መለዮ Address @@ -397,7 +671,7 @@ Exporting Failed - ወደ ውጪ መላክ አልተሳካም + መላክ አልተሳካም @@ -405,13 +679,25 @@ WalletController + + Close wallet + ዋሌት ዝጋ + WalletFrame - + + Create a new wallet + አዲስ ዋሌት ፍጠር + + WalletModel - + + default wallet + መደበኛ ዋሌት + + WalletView @@ -422,6 +708,10 @@ Export the data in the current tab to a file በአሁኑ ማውጫ ውስጥ ያለውን መረጃ ወደ አንድ ፋይል ላክ + + Error + ስህተት + bitcoin-core diff --git a/src/qt/locale/bitcoin_ar.ts b/src/qt/locale/bitcoin_ar.ts index 157f1c9d1..30d37f54c 100644 --- a/src/qt/locale/bitcoin_ar.ts +++ b/src/qt/locale/bitcoin_ar.ts @@ -1041,6 +1041,10 @@ Signing is only possible with addresses of the type 'legacy'. Error خطأ + + (of %n GB needed) + (من %n جيجابايت اللازمة)(من %n جيجابايت اللازمة)(من %n جيجابايت اللازمة)(من %n جيجابايت اللازمة)(من %n جيجابايت اللازمة)(من %n جيجابايت اللازمة) + ModalOverlay @@ -1088,6 +1092,10 @@ Signing is only possible with addresses of the type 'legacy'. Hide إخفاء + + Esc + خروج + Unknown. Syncing Headers (%1, %2%)... مجهول. مزامنة الرؤوس (%1, %2%)... @@ -1209,6 +1217,10 @@ Signing is only possible with addresses of the type 'legacy'. MiB ميجا بايت + + (0 = auto, <0 = leave that many cores free) + (0 = تلقائي, <0 = اترك هذا العدد من الأنوية حر) + W&allet &محفظة @@ -1221,10 +1233,18 @@ Signing is only possible with addresses of the type 'legacy'. Enable coin &control features تفعيل ميزات التحكم في العملة + + If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed. + اذا قمت بتعطيل الانفاق من النقود الغير مؤكدة، النقود من معاملة غير مؤكدة لن تكون قابلة للاستعمال حتى تحتوي تلك المعاملة على الأقل على تأكيد واحد. هذا أيضا يؤثر على كيفية حساب رصيدك. + &Spend unconfirmed change دفع الفكة غير المؤكدة + + Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled. + فتح منفذ خادم البتكوين تلقائيا على الموجه. هذا فقط يعمل عندما يكون الموجه الخاص بك يدعم UPnP ومفعل ايضا. + Map port using &UPnP ربط المنفذ باستخدام UPnP @@ -1539,6 +1559,14 @@ Signing is only possible with addresses of the type 'legacy'. * Sends %1 to %2 * يرسل %1 إلى %2 + + Unable to calculate transaction fee or total transaction amount. + غير قادر على حساب رسوم المعاملة أو إجمالي مبلغ المعاملة. + + + Pays transaction fee: + دفع رسوم المعاملة: + Total Amount القيمة الإجمالية @@ -1551,15 +1579,27 @@ Signing is only possible with addresses of the type 'legacy'. Transaction is missing some information about inputs. تفتقد المعاملة إلى بعض المعلومات حول المدخلات + + Transaction still needs signature(s). + المعاملة ما زالت تحتاج التوقيع. + (But this wallet cannot sign transactions.) .لكن هذه المخفضة لا يمكنها توقيع للمعاملات + + (But this wallet does not have the right keys.) + لكن هذه المحفظة لا تحتوي على المفاتيح الصحيحة. + Transaction is fully signed and ready for broadcast. الصفقة موقعة بالكامل وجاهزة للبث - + + Transaction status is unknown. + حالة المعاملة غير معروفة. + + PaymentServer @@ -1574,10 +1614,22 @@ Signing is only possible with addresses of the type 'legacy'. URI handling التعامل مع العنوان + + 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. + 'bitcoin://' هو ليس عنوان URL صالح. استعمل 'bitcoin:' بدلا من ذلك. + Cannot process payment request because BIP70 is not supported. معالجة طلب الدفع لأن BIP70 غير مدعوم. + + Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. + بسبب الانتشار الواسع للعيوب الأمنية في BIP70 فإنه من الموصى به وبشدة تجاهل أي ارشادات من التجار لتغيير المحافظ. + + + If you are receiving this error you should request the merchant provide a BIP21 compatible URI. + إذا كنت تتلقى هذا الخطأ فيجب عليك الطلب من التاجر توفير عنوان URI يتوافق مع BIP21. + Invalid payment address %1 عنوان الدفع غير صالح %1 @@ -1656,10 +1708,30 @@ Signing is only possible with addresses of the type 'legacy'. %1 ms %1 جزء من الثانية + + %n minute(s) + %n دقيقة%n دقيقة%n دقيقة%n دقيقة%n دقيقة%n دقيقة + + + %n hour(s) + %n ساعة%n ساعة%n ساعة%n ساعة%n ساعة%n ساعة + + + %n day(s) + %n أيام%n يوم%n أيام%n يوم%n أيام%n أيام + + + %n week(s) + %n أسابيع%n أسابيع%n أسابيع%n أسابيع%n أسابيع%n أسابيع + %1 and %2 %1 و %2 + + %n year(s) + %n سنوات%n سنوات%n سنوات%n سنوات%n سنوات%n سنوات + %1 B %1 بايت @@ -1711,6 +1783,10 @@ Signing is only possible with addresses of the type 'legacy'. Error encoding URI into QR Code. خطأ في ترميز العنوان إلى الرمز المربع. + + QR code support not available. + دعم كود الـQR غير متوفر. + Save QR Code حفظ رمز الاستجابة السريعة QR @@ -1746,6 +1822,10 @@ Signing is only possible with addresses of the type 'legacy'. Datadir دليل البيانات + + Blocksdir + ملف الكتل blocksdir + Startup time وقت البدء @@ -1838,6 +1918,10 @@ Signing is only possible with addresses of the type 'legacy'. Node window نافذة Node + + Current block height + ارتفاع الكتلة الحالي + Decrease font size تصغير حجم الخط @@ -2033,6 +2117,14 @@ Signing is only possible with addresses of the type 'legacy'. An optional amount to request. Leave this empty or zero to not request a specific amount. مبلغ اختياري للطلب. اترك هذا فارغًا أو صفراً لعدم طلب مبلغ محدد. + + An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request. + وُسم اختياري للربط مع عنوان الاستقبال (يستعمل من قبلك لتحديد فاتورة). هو أيضا مرفق بطلب الدفع. + + + An optional message that is attached to the payment request and may be displayed to the sender. + رسالة اختيارية مرفقة بطلب الدفع ومن الممكن أن تعرض للمرسل. + &Create new receiving address و إنشاء عناوين استقبال جديدة @@ -2045,6 +2137,14 @@ Signing is only possible with addresses of the type 'legacy'. Clear مسح + + Native segwit addresses (aka Bech32 or BIP-173) reduce your transaction fees later on and offer better protection against typos, but old wallets don't support them. When unchecked, an address compatible with older wallets will be created instead. + عناوين segwit (المعروفة بـBech32 أو BIP-173) تخفض من رسوم المعاملة لاحقا وتوفر حماية أفضل ضد الأخطاء المطبعية، لكن المحافظ القديمة لا تدعمهم. عندما يكون هذا الخيار غير محدد، سوف يتم إنشاء عنوان متوافق مع المحافظ القديمة عوضا عن ذلك. + + + Generate native segwit (Bech32) address + توليد عنوان segwit ـ (Bech32) + Requested payments history سجل طلبات الدفع @@ -2100,6 +2200,10 @@ Signing is only possible with addresses of the type 'legacy'. Amount: القيمة : + + Label: + وسم: + Message: الرسائل @@ -2226,6 +2330,14 @@ Signing is only possible with addresses of the type 'legacy'. Warning: Fee estimation is currently not possible. تحذير: تقدير الرسوم غير ممكن في الوقت الحالي. + + Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size. + +Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis per kB" for a transaction size of 500 bytes (half of 1 kB) would ultimately yield a fee of only 50 satoshis. + حدد رسوم مخصصة لكل كيلوبايت (1000 بايت) من حجم المعاملة الافتراضي. + +ملاحظة: باعتبار أن الرسوم تحسب على أساس لكل-بايت، رسوم قدرها "100 ساتوشي لكل كيلوبايت" لحجم معاملة يتكون من 500 بايت (نصف كيلوبايت) سوف يؤدي في النهاية الى رسوم قدرها 50 ساتوشي فقط. + per kilobyte لكل كيلوبايت @@ -2262,6 +2374,18 @@ Signing is only possible with addresses of the type 'legacy'. Dust: غبار: + + Hide transaction fee settings + اخفاء اعدادات رسوم المعاملة + + + When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process. + عندما يكون هناك حجم معاملات أقل من الفراغ في الكتل، المعدنون وعقد الترحيل أيضا من الممكن أن يفرضوا الحد الأدنى للرسوم. دفع الحد الأدنى للرسوم قد يكون على ما يرام، لكن كن حذرا بأنه هذا الشيء قد يؤدي الى معاملة لن تتأكد أبدا بمجرد أن الطلب على معاملات البتكوين قد أصبح أكثر مما تتحمله الشبكة. + + + A too low fee might result in a never confirming transaction (read the tooltip) + رسوم قليلة جدا من الممكن أن تؤدي الى معاملة لن تتأكد أبدا (اقرأ التلميح). + Confirmation time target: هدف وقت التأكيد: @@ -2322,10 +2446,19 @@ Signing is only possible with addresses of the type 'legacy'. %1 (%2 blocks) %1 (%2 كثلة) + + Cr&eate Unsigned + إنشاء غير موقع +  + %1 to %2 %1 الى %2 + + Do you want to draft this transaction? + هل تريد صياغة هذه المعاملة؟ + Are you sure you want to send? هل أنت متأكد من أنك تريد أن ترسل؟ @@ -2342,6 +2475,10 @@ Signing is only possible with addresses of the type 'legacy'. Partially Signed Transaction (Binary) (*.psbt) معاملة موقعة جزئيًا (ثنائي) (* .psbt) + + PSBT saved + تم حفظ PSBT + or أو @@ -2350,6 +2487,10 @@ Signing is only possible with addresses of the type 'legacy'. You can increase the fee later (signals Replace-By-Fee, BIP-125). يمكنك زيادة الرسوم لاحقًا (بإشارة الإستبدال بواسطة الرسوم، BIP-125). + + Please, review your transaction. + رجاء، راجع معاملتك. + Transaction fee رسوم المعاملة @@ -2362,14 +2503,26 @@ Signing is only possible with addresses of the type 'legacy'. Total Amount القيمة الإجمالية + + To review recipient list click "Show Details..." + لمراجعة قائمة المستلمين انقر على "اظهار التفاصيل..." + Confirm send coins تأكيد الإرسال Coins + + Confirm transaction proposal + أكد اقتراح المعاملة + Send إرسال + + Watch-only balance: + رصيد للاستعراض فقط: + The recipient address is not valid. Please recheck. عنوان المستلم غير صالح. يرجى إعادة الفحص. @@ -2414,6 +2567,10 @@ Signing is only possible with addresses of the type 'legacy'. Confirm custom change address تأكيد تغيير العنوان الفكة + + The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure? + العنوان الذي قمت بتحديده للتغيير ليس جزءا من هذه المحفظة. أي أو جميع الأموال في محفظتك قد يتم إرسالها لهذا العنوان. هل أنت متأكد؟ + (no label) (بدون وسم) @@ -2457,6 +2614,10 @@ Signing is only possible with addresses of the type 'legacy'. Remove this entry ازل هذه المداخله + + The amount to send in the selected unit + المبلغ للإرسال في الوحدة المحددة + The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. سيتم خصم الرسوم من المبلغ الذي يتم إرساله. لذا سوف يتلقى المستلم مبلغ أقل من البتكوين المدخل في حقل المبلغ. في حالة تحديد عدة مستلمين، يتم تقسيم الرسوم بالتساوي. @@ -2519,6 +2680,10 @@ Signing is only possible with addresses of the type 'legacy'. &Sign Message &توقيع الرسالة + + You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. + تستطيع توقيع رسائل/اتفاقات مع عناوينك لإثبات أنه بإمكانك استقبال بتكوين مرسل إليهم. كن حذرا من عدم توقيع أي شيء غامض أو عشوائي، كهجمات التصيد التي قد تحاول خداعك لتوقيع هويتك لديهم. وقع البيانات المفصلة بالكامل والتي أنت توافق عليها فقط. + The Bitcoin address to sign the message with عنوان البتكوين لتوقيع الرسالة به @@ -2571,10 +2736,22 @@ Signing is only possible with addresses of the type 'legacy'. &Verify Message &تحقق رسالة + + Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! + أدخل عنوان المتلقي، راسل (تأكد من نسخ فواصل الأسطر، الفراغات، الخ.. تماما) والتوقيع أسفله لتأكيد الرسالة. كن حذرا من عدم قراءة داخل التوقيع أكثر مما هو موقع بالرسالة نفسها، لتجنب خداعك بهجوم man-in-the-middle. لاحظ أنه هذا لاثبات أن الجهة الموقعة تستقبل مع العنوان فقط، لا تستطيع اثبات الارسال لأي معاملة. + The Bitcoin address the message was signed with عنوان البتكوين الذي تم توقيع الرسالة به + + The signed message to verify + الرسالة الموقعة للتحقق. + + + The signature given when the message was signed + التوقيع يعطى عندما تكون الرسالة موقعة. + Verify the message to ensure it was signed with the specified Bitcoin address تحقق من الرسالة للتأكد من توقيعها مع عنوان البتكوين المحدد @@ -2607,6 +2784,10 @@ Signing is only possible with addresses of the type 'legacy'. Wallet unlock was cancelled. تم الغاء عملية فتح المحفظة + + No error + لا يوجد خطأ + Private key for the entered address is not available. المفتاح الخاص للعنوان المدخل غير موجود. @@ -2721,6 +2902,10 @@ Signing is only possible with addresses of the type 'legacy'. Credit رصيد + + matures in %n more block(s) + تنضج خلال %n كتل إضافيةتنضج خلال %n كتل إضافيةتنضج خلال %n كتل إضافيةتنضج خلال %n كتل إضافيةتنضج خلال %n كتل إضافيةتنضج خلال %n كتل إضافية + not accepted غير مقبولة @@ -2761,10 +2946,18 @@ Signing is only possible with addresses of the type 'legacy'. Transaction total size الحجم الكلي للمعاملات + + Transaction virtual size + حجم المعاملة الافتراضي + Output index مؤشر المخرجات + + (Certificate was not verified) + (لم يتم التحقق من الشهادة) + Merchant تاجر @@ -2819,6 +3012,10 @@ Signing is only possible with addresses of the type 'legacy'. Label وسم + + Open for %n more block(s) + مفتوح لـ %n كتلة إضافيةمفتوح لـ %n كتلة إضافيةمفتوح لـ %n كتلة إضافيةمفتوح لـ %n كتلة إضافيةمفتوح لـ %n كتلة إضافيةمفتوح لـ %n كتلة إضافية + Open until %1 مفتوح حتى %1 @@ -2899,6 +3096,10 @@ Signing is only possible with addresses of the type 'legacy'. Whether or not a watch-only address is involved in this transaction. ما إذا كان العنوان المشاهدة فقط متضمنًا في هذه المعاملة أم لا. + + User-defined intent/purpose of the transaction. + تحديد سبب المعاملة من المستخدم + Amount removed from or added to balance. المبلغ الذي أزيل أو أضيف الى الرصيد @@ -3076,13 +3277,29 @@ Signing is only possible with addresses of the type 'legacy'. Close wallet اغلق المحفظة + + Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. + اغلاق المحفظة لفترة طويلة قد يؤدي الى الاضطرار الى اعادة مزامنة السلسلة بأكملها اذا تم تمكين التلقيم. + Close all wallets إغلاق جميع المحافظ ... - + + Are you sure you wish to close all wallets? + هل أنت متأكد من رغبتك في اغلاق جميع المحافظ؟ + + WalletFrame + + No wallet has been loaded. +Go to File > Open Wallet to load a wallet. +- OR - + لم يتم تحميل أية محافظ. +اذهب الى ملف > افتح محفظة لتحميل محفظة. +- أو - + Create a new wallet إنشاء محفظة جديدة @@ -3106,6 +3323,10 @@ Signing is only possible with addresses of the type 'legacy'. Do you want to increase the fee? هل تريد زيادة الرسوم؟ + + Do you want to draft a transaction with fee increase? + هل تريد صياغة معاملة مع زيادة في الرسوم؟ + Current fee: الأجر الحالي: @@ -3122,6 +3343,14 @@ Signing is only possible with addresses of the type 'legacy'. Confirm fee bump تأكيد زيادة الرسوم + + Can't draft transaction. + لا يمكن صياغة المعاملة + + + PSBT copied + تم نسخ PSBT + Can't sign transaction. لا يمكن توقيع المعاملة. @@ -3149,6 +3378,26 @@ Signing is only possible with addresses of the type 'legacy'. Error خطأ + + Unable to decode PSBT from clipboard (invalid base64) + تعذر فك تشفير PSBT من الحافظة (base64 غير صالح) + + + Load Transaction Data + تحميل بيانات المعاملة + + + Partially Signed Transaction (*.psbt) + معاملة موقعة جزئيا (psbt.*) + + + PSBT file must be smaller than 100 MiB + ملف PSBT يجب أن يكون أصغر من 100 ميجابايت + + + Unable to decode PSBT + غير قادر على فك تشفير PSBT + Backup Wallet نسخ احتياط للمحفظة @@ -3176,6 +3425,14 @@ Signing is only possible with addresses of the type 'legacy'. bitcoin-core + + Prune configured below the minimum of %d MiB. Please use a higher number. + تم تكوين تقليم أقل من الحد الأدنى %d ميجابايت. من فضلك استعمل رقم أعلى. + + + Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) + تقليم: اخر مزامنة للمحفظة كانت قبل البيانات الملقمة. تحتاج الى - اعادة فهرسة (قم بتنزيل سلسلة الكتل بأكملها مرة أخرى في حال تم تقليم عقدة) + Pruning blockstore... تجريد مخزن الكتل... @@ -3196,10 +3453,46 @@ Signing is only possible with addresses of the type 'legacy'. Cannot provide specific connections and have addrman find outgoing connections at the same. لا يمكن توفير اتصالات محددة ولابد أن يكون لدى addrman اتصالات صادرة في نفس الوقت. + + Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. + خطأ في قراءة %s! جميع المفاتيح قرأت بشكل صحيح، لكن بيانات المعاملة أو إدخالات سجل العناوين قد تكون مفقودة أو غير صحيحة. + + + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. + رجاء تأكد من أن التاريخ والوقت في حاسوبك صحيحان! اذا كانت ساعتك خاطئة، %s لن يعمل كما بصورة صحيحة. + Please contribute if you find %s useful. Visit %s for further information about the software. يرجى المساهمة إذا وجدت %s مفيداً. تفضل بزيارة %s لمزيد من المعلومات حول البرنامج. + + SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s + SQLiteDatabse: فشل في تحضير التصريح لجلب محفظة sqlite اصدار المخطط: %s + + + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + SQLiteDatabase: فشل في تحضير التصريح لجلب التطبيق id: %s + + + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported + SQLiteDatabase: اصدار مخطط لمحفظة sqlite غير معروف %d. فقط اصدار %d مدعوم. + + + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct + قاعدة بيانات الكتل تحتوي على كتلة يبدو أنها من المستقبل. قد يكون هذا بسبب أن التاريخ والوقت في حاسوبك قم ضبط بشكل غير صحيح. قم بإعادة بناء قاعدة بيانات الكتل في حال كنت متأكد من أن التاريخ والوقت قد تم ضبطهما بشكل صحيح. + + + This is a pre-release test build - use at your own risk - do not use for mining or merchant applications + هذه بنية للتجربة ما قبل-الاصدار - استخدمها على مسؤوليتك الخاصة - لا تستخدمها للتعدين أو لتطبيقات التجارة. + + + This is the transaction fee you may discard if change is smaller than dust at this level + هذه رسوم المعاملة يمكنك التخلص منها إذا كان المبلغ أصغر من الغبار عند هذا المستوى + + + Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. + غير قادر على اعادة الكتل. سوف تحتاج الى اعادة بناء قاعدة البيانات باستخدام - reindex-chainstate + -maxmempool must be at least %d MB -الحد الأقصى للذاكرة على الأقل %d ميغابايت @@ -3252,6 +3545,14 @@ Signing is only possible with addresses of the type 'legacy'. Failed to rescan the wallet during initialization فشل في اعادة مسح المحفظة خلال عملية التهيئة. + + Failed to verify database + فشل في التحقق من قاعدة البيانات + + + Ignoring duplicate -wallet %s. + تم تجاهل تعريف مكرر -wallet %s + Importing... إستيراد... @@ -3264,6 +3565,34 @@ Signing is only possible with addresses of the type 'legacy'. Initialization sanity check failed. %s is shutting down. فشل بالتحقق في اختبار التعقل. تم إيقاف %s. + + Invalid P2P permission: '%s' + إذن غير صالح لالند للند: '%s' + + + Invalid amount for -%s=<amount>: '%s' + مبلغ غير صحيح -%s=: '%s' + + + Invalid amount for -discardfee=<amount>: '%s' + مبلغ غير صحيح -discardfee=: '%s' + + + Invalid amount for -fallbackfee=<amount>: '%s' + مبلغ غير صحيح -fallbackfee=: '%s' + + + SQLiteDatabase: Failed to execute statement to verify database: %s + SQLiteDatabase: فشل في تحضير التصريح لجلب التطبيق id: %s + + + Unknown address type '%s' + عنوان غير صحيح : '%s' + + + Upgrading txindex database + تحديث قاعدة بيانات txindex + Loading P2P addresses... تحميل عناوين P2P... @@ -3296,6 +3625,14 @@ Signing is only possible with addresses of the type 'legacy'. The source code is available from %s. شفرة المصدر متاحة من %s. + + Transaction fee and change calculation failed + حساب عمولة المعاملة والصرف فشل + + + Unable to bind to %s on this computer. %s is probably already running. + تعذر الربط مع %s على هذا الكمبيوتر. %s على الأغلب يعمل مسبقا. + Unable to generate keys غير قادر على توليد مفاتيح. @@ -3312,6 +3649,10 @@ Signing is only possible with addresses of the type 'legacy'. Wallet needed to be rewritten: restart %s to complete يلزم إعادة كتابة المحفظة: إعادة تشغيل %s لإكمال العملية + + Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) + قيمة غير صالحة لـ -maxtxfee=<amount>: '%s' (يجب أن تحتوي على الحد الأدنى للعمولة من %s على الأقل لتجنب المعاملات العالقة. + The transaction amount is too small to send after the fee has been deducted قيمة المعاملة صغيرة جدًا ولا يمكن إرسالها بعد خصم الرسوم @@ -3320,6 +3661,10 @@ Signing is only possible with addresses of the type 'legacy'. You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain تحتاج إلى إعادة إنشاء قاعدة البيانات باستخدام -reindex للعودة إلى الوضعية الغير مجردة. هذا سوف يعيد تحميل سلسلة الكتل بأكملها + + Disk space is too low! + تحذير: مساحة القرص منخفضة + Error reading from database, shutting down. خطأ في القراءة من قاعدة البيانات ، والتوقف. @@ -3328,10 +3673,30 @@ Signing is only possible with addresses of the type 'legacy'. Error upgrading chainstate database خطأ في ترقية قاعدة بيانات chainstate + + Invalid -onion address or hostname: '%s' + عنوان اونيون غير صحيح : '%s' + Signing transaction failed فشل توقيع المعاملة + + Specified -walletdir "%s" does not exist + ملف المحفظة المحدد "%s" غير موجود + + + + Specified -walletdir "%s" is a relative path + ملف المحفظة المحدد "%s" غير موجود + + + + The specified config file %s does not exist + + ملف التكوين المحدد %s غير موجود + + The transaction amount is too small to pay the fee قيمة المعاملة صغيرة جدا لدفع الأجر @@ -3356,10 +3721,22 @@ Signing is only possible with addresses of the type 'legacy'. Unable to generate initial keys غير قادر على توليد مفاتيح أولية + + Unknown -blockfilterindex value %s. + قيمة -blockfilterindex  مجهولة %s. + Verifying wallet(s)... التحقق من المحفظة (المحافظ)... + + -maxtxfee is set very high! Fees this large could be paid on a single transaction. + -maxtxfee الموضوع عالي جدا! رسوم بهذا الحجم من الممكن أن تدفع على معاملة. + + + This is the transaction fee you may pay when fee estimates are not available. + هذه هي رسوم المعاملة التي قد تدفعها عندما تكون عملية حساب الرسوم غير متوفرة. + %s is set very high! %s عالٍ جداً @@ -3376,6 +3753,10 @@ Signing is only possible with addresses of the type 'legacy'. This is the minimum transaction fee you pay on every transaction. هذه هي اقل قيمة من العمولة التي تدفعها عند كل عملية تحويل للأموال. + + This is the transaction fee you will pay if you send a transaction. + هذه هي رسوم تحويل الأموال التي ستدفعها إذا قمت بتحويل الأموال. + Transaction amounts must not be negative يجب ألا تكون قيمة المعاملة سلبية @@ -3388,10 +3769,22 @@ Signing is only possible with addresses of the type 'legacy'. Transaction must have at least one recipient يجب أن تحتوي المعاملة على مستلم واحد على الأقل + + Unknown network specified in -onlynet: '%s' + شبكة مجهولة عرفت حددت في -onlynet: '%s' + Insufficient funds الرصيد غير كافي + + Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable -fallbackfee. + عملية حساب الرسوم فشلت. الرسوم الاحتياطية غير مفعلة. انتظر عدة كتل أو مكن خيار الرسوم الاحتياطية. + + + Warning: Private keys detected in wallet {%s} with disabled private keys + تحذير: تم اكتشاف مفاتيح خاصة في المحفظة {%s} مع مفاتيح خاصة موقفة. + Cannot write to data directory '%s'; check permissions. لايمكن الكتابة على دليل البيانات '%s'؛ تحقق من السماحيات. diff --git a/src/qt/locale/bitcoin_bg.ts b/src/qt/locale/bitcoin_bg.ts index ed59d9866..9ce074e4c 100644 --- a/src/qt/locale/bitcoin_bg.ts +++ b/src/qt/locale/bitcoin_bg.ts @@ -175,10 +175,18 @@ Wallet encrypted портфейлa е шифрован + + Enter the old passphrase and new passphrase for the wallet. + Въведете старата и новата паролна фраза за портфейла. + Wallet to be encrypted Портфейл за криптиране + + Your wallet is about to be encrypted. + Портфейлът ви е на път да бъде шифрован. + Your wallet is now encrypted. Вашият портфейл сега е криптиран. @@ -449,6 +457,14 @@ Up to date Актуално + + Node window + Прозорец на възела + + + Open Wallet + Отворете портфейл + Close Wallet... Затвори Портфейла @@ -678,6 +694,10 @@ no не + + This label turns red if any recipient receives an amount smaller than the current dust threshold. + Този етикет става червен ако някой получател получи количество, по-малко от текущия праг на прах + (no label) (без етикет) @@ -693,9 +713,17 @@ CreateWalletActivity + + Create wallet failed + Създаването на портфейл не бе успешен + CreateWalletDialog + + Create Wallet + Създайте портфейл + EditAddressDialog @@ -1301,6 +1329,10 @@ User Agent Потребителски агент + + Node window + Прозорец на възела + Services Услуги diff --git a/src/qt/locale/bitcoin_bn.ts b/src/qt/locale/bitcoin_bn.ts index 9651021da..e1b9bcdc6 100644 --- a/src/qt/locale/bitcoin_bn.ts +++ b/src/qt/locale/bitcoin_bn.ts @@ -3,7 +3,7 @@ AddressBookPage Right-click to edit address or label - ঠিকানা কিংবা লেভেল সম্পাদনার জন্য রাইট-ক্লিক করুন + Right-click to edit address or label Create a new address @@ -69,6 +69,11 @@ These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. + + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + পেমেন্ট পাওয়ার জন্য এটি আপনার বিটকয়েন ঠিকানা। নতুন ঠিকানা তৈরী করতে "নতুন গ্রহণের ঠিকানা তৈরী করুন" বোতাম ব্যবহার করুন। সাইন ইন করা শুধুমাত্র "উত্তরাধিকার" ঠিকানার মাধ্যমেই সম্ভব। + &Copy Address &Copy Address @@ -477,6 +482,22 @@ Up to date Up to date + + &Load PSBT from file... + ফাইল থেকে পিএসবিটি লোড করুন ... + + + Load Partially Signed Bitcoin Transaction + আংশিক স্বাক্ষরিত বিটকয়েন লেনদেন লোড করুন + + + Load PSBT from clipboard... + ক্লিপবোর্ড থেকে পিএসবিটি লোড করুন ... + + + Load Partially Signed Bitcoin Transaction from clipboard + ক্লিপবোর্ড থেকে আংশিক স্বাক্ষরিত বিটকয়েন লেনদেন লোড করুন + Node window Node window diff --git a/src/qt/locale/bitcoin_bs.ts b/src/qt/locale/bitcoin_bs.ts index be76c6c41..4de1bd3a6 100644 --- a/src/qt/locale/bitcoin_bs.ts +++ b/src/qt/locale/bitcoin_bs.ts @@ -130,6 +130,10 @@ Intro + + This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. + This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. + Bitcoin Bitcoin diff --git a/src/qt/locale/bitcoin_ca.ts b/src/qt/locale/bitcoin_ca.ts index c9718d59c..d618c20bd 100644 --- a/src/qt/locale/bitcoin_ca.ts +++ b/src/qt/locale/bitcoin_ca.ts @@ -3584,6 +3584,14 @@ Ves a Arxiu > Obrir Cartera per a carregar cartera. Please contribute if you find %s useful. Visit %s for further information about the software. Contribueix si trobes %s útil. Visita %s per obtenir més informació sobre el programari. + + SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s + SQLiteDatabase: No s'ha pogut preparar la sentència per obtenir la versió de l'esquema de la cartera sqlite: %s + + + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + SQLiteDatabase: No s'ha pogut preparar la sentència per obtenir l'identificador de l'aplicació: %s + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported SQLiteDatabase: esquema de cartera sqlite de versió %d desconegut. Només és compatible la versió %d @@ -3696,6 +3704,10 @@ Ves a Arxiu > Obrir Cartera per a carregar cartera. Failed to verify database Ha fallat la verificació de la base de dades + + Ignoring duplicate -wallet %s. + Ignorant -cartera duplicada %s. + Importing... S'està important... @@ -3724,10 +3736,30 @@ Ves a Arxiu > Obrir Cartera per a carregar cartera. Invalid amount for -fallbackfee=<amount>: '%s' Import invàlid per -fallbackfee=<amount>: '%s' + + SQLiteDatabase: Failed to execute statement to verify database: %s + SQLiteDatabase: No s'ha pogut executar la sentència per verificar la base de dades: %s + + + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s + SQLiteDatabase: No s'ha pogut obtenir la versió d'esquema de cartera sqlite: %s + + + SQLiteDatabase: Failed to fetch the application id: %s + SQLiteDatabase: No s'ha pogut obtenir l'identificador de l'aplicació: %s + + + SQLiteDatabase: Failed to prepare statement to verify database: %s + SQLiteDatabase: No s'ha pogut preparar la sentència per verificar la base de dades: %s + SQLiteDatabase: Failed to read database verification error: %s SQLiteDatabase: ha fallat la lectura de la base de dades. Error de verificació: %s + + SQLiteDatabase: Unexpected application id. Expected %u, got %u + SQLiteDatabase: Identificador d’aplicació inesperat. S'esperava %u, s'ha obtingut %u + Specified blocks directory "%s" does not exist. El directori de blocs especificat "%s" no existeix. @@ -3812,6 +3844,14 @@ Ves a Arxiu > Obrir Cartera per a carregar cartera. Error: Listening for incoming connections failed (listen returned error %s) Error: ha fallat escoltar les connexions entrants (l'escoltament ha retornat l'error %s) + + %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. + %s està malmès. Proveu d’utilitzar l’eina bitcoin-wallet per recuperar o restaurar una còpia de seguretat. + + + Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. + No es pot actualitzar una cartera dividida que no sigui HD sense actualitzar-la per donar suport al grup de claus previ a la divisió. Utilitzeu la versió 169900 o no especificar-ne cap. + Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) Import no vàlid per a -maxtxfee=<amount>: '%s' (cal que sigui com a mínim la comissió de minrelay de %s per evitar que les comissions s'encallin) @@ -3820,6 +3860,18 @@ Ves a Arxiu > Obrir Cartera per a carregar cartera. The transaction amount is too small to send after the fee has been deducted L'import de la transacció és massa petit per enviar-la després que se'n dedueixi la comissió + + This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet + Aquest error es podria produir si la cartera no es va tancar netament i es va carregar per última vegada mitjançant una més nova de Berkeley DB. Si és així, utilitzeu el programari que va carregar aquesta cartera per última vegada + + + This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. + Aquesta és la comissió màxima de transacció que pagueu (a més de la tarifa normal) per prioritzar l'evitació parcial de la despesa per sobre de la selecció regular de monedes. + + + Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. + La transacció necessita una adreça de canvi, però no la podem generar. Si us plau, visiteu primer a keypoolrefill. + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain Cal que torneu a construir la base de dades fent servir -reindex per tornar al mode no podat. Això tornarà a baixar la cadena de blocs sencera @@ -3828,6 +3880,10 @@ Ves a Arxiu > Obrir Cartera per a carregar cartera. A fatal internal error occurred, see debug.log for details S'ha produït un error intern fatal. Consulteu debug.log per a més detalls + + Cannot set -peerblockfilters without -blockfilterindex. + No es poden configurar -peerblockfilters sense -blockfilterindex. + Disk space is too low! L'espai de disc és insuficient! @@ -3844,6 +3900,14 @@ Ves a Arxiu > Obrir Cartera per a carregar cartera. Error: Disk space is low for %s Error: l'espai del disc és insuficient per a %s + + Error: Keypool ran out, please call keypoolrefill first + Error: Keypool s’ha esgotat. Visiteu primer keypoolrefill + + + Fee rate (%s) is lower than the minimum fee rate setting (%s) + La taxa de tarifa (%s) és inferior a la configuració de la tarifa mínima (%s) + Invalid -onion address or hostname: '%s' Adreça o nom de l'ordinador -onion no vàlida: '%s' @@ -3864,6 +3928,10 @@ Ves a Arxiu > Obrir Cartera per a carregar cartera. Need to specify a port with -whitebind: '%s' Cal especificar un port amb -whitebind: «%s» + + No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. + No s'ha especificat cap servidor intermediari. Utilitzeu -proxy =<ip> o -proxy =<ip:port>. + Prune mode is incompatible with -blockfilterindex. El mode de poda no és compatible amb -blockfilterindex. diff --git a/src/qt/locale/bitcoin_cs.ts b/src/qt/locale/bitcoin_cs.ts index 135dc3c23..f4a21f006 100644 --- a/src/qt/locale/bitcoin_cs.ts +++ b/src/qt/locale/bitcoin_cs.ts @@ -482,6 +482,22 @@ Signing is only possible with addresses of the type 'legacy'. Up to date Aktuální + + &Load PSBT from file... + &Načíst PSBT ze souboru... + + + Load Partially Signed Bitcoin Transaction + Načíst částečně podepsanou Bitcoinovou transakci + + + Load PSBT from clipboard... + Načíst PSBT ze schránky + + + Load Partially Signed Bitcoin Transaction from clipboard + Načíst částečně podepsanou Bitcoinovou transakci ze schránky + Node window Okno uzlu @@ -518,6 +534,10 @@ Signing is only possible with addresses of the type 'legacy'. Close wallet Zavřít peněženku + + Close All Wallets... + Zavřít všechny peněženky + Close all wallets Zavřít všechny peněženky @@ -526,6 +546,14 @@ Signing is only possible with addresses of the type 'legacy'. Show the %1 help message to get a list with possible Bitcoin command-line options Seznam argumentů Bitcoinu pro příkazovou řádku získáš v nápovědě %1 + + &Mask values + &Skrýt částky + + + Mask the values in the Overview tab + Skrýt částky v přehledu + default wallet výchozí peněženka @@ -634,7 +662,15 @@ Signing is only possible with addresses of the type 'legacy'. Wallet is <b>encrypted</b> and currently <b>locked</b> Peněženka je <b>zašifrovaná</b> a momentálně <b>zamčená</b> - + + Original message: + Původní zpráva: + + + A fatal error occurred. %1 can no longer continue safely and will quit. + Stala se fatální chyba. %1 nemůže bezpečně pokračovat v činnosti, a bude ukončen. + + CoinControlDialog @@ -835,11 +871,23 @@ Signing is only possible with addresses of the type 'legacy'. Make Blank Wallet Vytvořit prázdnou peněženku + + Use descriptors for scriptPubKey management + Použít popisovače pro správu scriptPubKey + + + Descriptor Wallet + Popisovačová peněženka + Create Vytvořit - + + Compiled without sqlite support (required for descriptor wallets) + Zkompilováno bez podpory sqlite (vyžadováno pro popisovačové peněženky) + + EditAddressDialog @@ -1311,6 +1359,14 @@ Signing is only possible with addresses of the type 'legacy'. Whether to show coin control features or not. Zda ukazovat možnosti pro ruční správu mincí nebo ne. + + Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. + Připojí se do Bitcoinové sítě přes vyhrazenou SOCKS5 proxy pro služby v Tor síti. + + + Use separate SOCKS&5 proxy to reach peers via Tor onion services: + Použít samostatnou SOCKS&5 proxy ke spojení s protějšky přes skryté služby v Toru: + &Third party transaction URLs &URL třetích stran pro transakce @@ -1446,17 +1502,97 @@ Signing is only possible with addresses of the type 'legacy'. Current total balance in watch-only addresses Aktuální stav účtu sledovaných adres - + + Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. + Pro kartu Přehled je aktivovaný režim soukromí. Pro zobrazení částek, odškrtněte Nastavení -> Skrýt částky. + + PSBTOperationsDialog Dialog Dialog + + Sign Tx + Podepsat transakci + + + Broadcast Tx + Odeslat transakci do sítě + + + Copy to Clipboard + Kopírovat do schránky + + + Save... + Uložit... + + + Close + Zavřít + + + Failed to load transaction: %1 + Nepodařilo se načíst transakci: %1 + + + Failed to sign transaction: %1 + Nepodařilo se podepsat transakci: %1 + + + Could not sign any more inputs. + Nelze podepsat další vstupy. + + + Signed %1 inputs, but more signatures are still required. + Podepsáno %1 výstupů, ale jsou ještě potřeba další podpisy. + + + Signed transaction successfully. Transaction is ready to broadcast. + Transakce byla úspěšně podepsána. Transakce je připravena k odeslání. + + + Unknown error processing transaction. + Neznámá chyba při zpracování transakce. + + + Transaction broadcast successfully! Transaction ID: %1 + Transakce byla úspěšně odeslána! ID transakce: %1 + + + Transaction broadcast failed: %1 + Odeslání transakce se nezdařilo: %1 + + + PSBT copied to clipboard. + PSBT zkopírována do schránky. + Save Transaction Data Zachovaj procesní data + + Partially Signed Transaction (Binary) (*.psbt) + Částečně podepsaná transakce (Binární) (*.psbt) + + + PSBT saved to disk. + PSBT uložena na disk. + + + * Sends %1 to %2 + * Odešle %1 na %2 + + + Unable to calculate transaction fee or total transaction amount. + Nelze vypočítat transakční poplatek nebo celkovou výši transakce. + + + Pays transaction fee: + Platí transakční poplatek: + Total Amount Celková částka @@ -1465,11 +1601,35 @@ Signing is only possible with addresses of the type 'legacy'. or nebo + + Transaction has %1 unsigned inputs. + Transakce %1 má nepodepsané vstupy. + + + Transaction is missing some information about inputs. + Transakci chybí některé informace o vstupech. + + + Transaction still needs signature(s). + Transakce stále potřebuje podpis(y). + + + (But this wallet cannot sign transactions.) + (Ale tato peněženka nemůže podepisovat transakce.) + (But this wallet does not have the right keys.) Ale tenhle vstup nemá správné klíče - + + Transaction is fully signed and ready for broadcast. + Transakce je plně podepsána a připravena k odeslání. + + + Transaction status is unknown. + Stav transakce není známý. + + PaymentServer @@ -1816,6 +1976,10 @@ Signing is only possible with addresses of the type 'legacy'. Node window Okno uzlu + + Current block height + Velikost aktuálního bloku + Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. Otevři soubor s ladicími záznamy %1 z aktuálního datového adresáře. U velkých žurnálů to může pár vteřin zabrat. @@ -1828,6 +1992,10 @@ Signing is only possible with addresses of the type 'legacy'. Increase font size Zvětšit písmo + + Permissions + Oprávnění + Services Služby @@ -2083,9 +2251,21 @@ Signing is only possible with addresses of the type 'legacy'. Could not unlock wallet. Nemohu odemknout peněženku. - + + Could not generate new %1 address + Nelze vygenerovat novou adresu %1 + + ReceiveRequestDialog + + Request payment to ... + Požádat o platbu pro ... + + + Address: + Adresa: + Amount: Částka: @@ -2368,10 +2548,22 @@ Poznámka: Jelikož je poplatek počítaný za bajt, poplatek o hodnotě "100 sa Are you sure you want to send? Jsi si jistý, že tuhle transakci chceš poslat? + + Create Unsigned + Vytvořit bez podpisu + Save Transaction Data Zachovaj procesní data + + Partially Signed Transaction (Binary) (*.psbt) + Částečně podepsaná transakce (Binární) (*.psbt) + + + PSBT saved + PSBT uložena + or nebo @@ -2380,6 +2572,10 @@ Poznámka: Jelikož je poplatek počítaný za bajt, poplatek o hodnotě "100 sa You can increase the fee later (signals Replace-By-Fee, BIP-125). Poplatek můžete navýšit později (vysílá se "Replace-By-Fee" - nahrazení poplatkem, BIP-125). + + Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + Zkontrolujte prosím svůj návrh transakce. Výsledkem bude částečně podepsaná bitcoinová transakce (PSBT), kterou můžete uložit nebo kopírovat a poté podepsat např. pomocí offline %1 peněženky nebo hardwarové peněženky kompatibilní s PSBT. + Please, review your transaction. Prosím, zkontrolujte vaši transakci. @@ -3198,9 +3394,21 @@ Poznámka: Jelikož je poplatek počítaný za bajt, poplatek o hodnotě "100 sa Close all wallets Zavřít všechny peněženky - + + Are you sure you wish to close all wallets? + Opravdu chcete zavřít všechny peněženky? + + WalletFrame + + No wallet has been loaded. +Go to File > Open Wallet to load a wallet. +- OR - + Není načtena žádná peněženka. +Přejděte do Soubor > Otevřít peněženku pro načtení peněženky. +- NEBO - + Create a new wallet Vytvoř novou peněženku @@ -3250,7 +3458,7 @@ Poznámka: Jelikož je poplatek počítaný za bajt, poplatek o hodnotě "100 sa PSBT copied - PSBT zkopírováno + PSBT zkopírována Can't sign transaction. @@ -3279,6 +3487,26 @@ Poznámka: Jelikož je poplatek počítaný za bajt, poplatek o hodnotě "100 sa Error Chyba + + Unable to decode PSBT from clipboard (invalid base64) + Nelze dekódovat PSBT ze schránky (neplatné kódování base64) + + + Load Transaction Data + Načíst data o transakci + + + Partially Signed Transaction (*.psbt) + Částečně podepsaná transakce (*.psbt) + + + PSBT file must be smaller than 100 MiB + Soubor PSBT musí být menší než 100 MiB + + + Unable to decode PSBT + Nelze dekódovat PSBT + Backup Wallet Záloha peněženky @@ -3346,6 +3574,10 @@ Poznámka: Jelikož je poplatek počítaný za bajt, poplatek o hodnotě "100 sa Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. Nastala chyba při čtení souboru %s! Všechny klíče se přečetly správně, ale data o transakcích nebo záznamy v adresáři mohou chybět či být nesprávné. + + More than one onion bind address is provided. Using %s for the automatically created Tor onion service. + Byla zadána více než jedna onion adresa. Použiju %s pro automaticky vytvořenou službu sítě Tor. + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. Zkontroluj, že máš v počítači správně nastavený datum a čas! Pokud jsou nastaveny špatně, %s nebude fungovat správně. @@ -3354,6 +3586,18 @@ Poznámka: Jelikož je poplatek počítaný za bajt, poplatek o hodnotě "100 sa Please contribute if you find %s useful. Visit %s for further information about the software. Prosíme, zapoj se nebo přispěj, pokud ti %s přijde užitečný. Více informací o programu je na %s. + + SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s + SQLiteDatabase: Nepodařilo se připravit dotaz pro získání verze schématu sqlite peněženky: %s + + + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + SQLiteDatabase: Nepodařilo se připravit dotaz pro získání id aplikace: %s + + + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported + SQLiteDatabase: Neznámá verze schématu sqlite peněženky: %d. Podporovaná je pouze verze %d + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct Databáze bloků obsahuje blok, který vypadá jako z budoucnosti, což může být kvůli špatně nastavenému datu a času na tvém počítači. Nech databázi bloků přestavět pouze v případě, že si jsi jistý, že máš na počítači správný datum a čas @@ -3462,6 +3706,10 @@ Poznámka: Jelikož je poplatek počítaný za bajt, poplatek o hodnotě "100 sa Failed to verify database Selhání v ověření databáze + + Ignoring duplicate -wallet %s. + Ignoruji duplicitní -wallet %s. + Importing... Importuji... @@ -3490,6 +3738,30 @@ Poznámka: Jelikož je poplatek počítaný za bajt, poplatek o hodnotě "100 sa Invalid amount for -fallbackfee=<amount>: '%s' Neplatná částka pro -fallbackfee=<částka>: '%s' + + SQLiteDatabase: Failed to execute statement to verify database: %s + SQLiteDatabase: Nepodařilo se vykonat dotaz pro ověření databáze: %s + + + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s + SQLiteDatabase: Nepodařilo se získat verzi sqlite schématu peněženky: %s + + + SQLiteDatabase: Failed to fetch the application id: %s + SQLiteDatabase: Nepodařilo se získat id aplikace: %s + + + SQLiteDatabase: Failed to prepare statement to verify database: %s + SQLiteDatabase: Nepodařilo se připravit dotaz pro ověření databáze: %s + + + SQLiteDatabase: Failed to read database verification error: %s + SQLiteDatabase: Nepodařilo se přečist databázovou ověřovací chybu: %s + + + SQLiteDatabase: Unexpected application id. Expected %u, got %u + SQLiteDatabase: Neočekávané id aplikace. Očekáváno: %u, ve skutečnosti %u + Specified blocks directory "%s" does not exist. Zadaný adresář bloků "%s" neexistuje. @@ -3574,6 +3846,14 @@ Poznámka: Jelikož je poplatek počítaný za bajt, poplatek o hodnotě "100 sa Error: Listening for incoming connections failed (listen returned error %s) Chyba: Nelze naslouchat příchozí spojení (listen vrátil chybu %s) + + %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. + Soubor %s je poškozen. Zkus použít bitcoin-wallet pro opravu nebo obnov zálohu. + + + Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. + Nelze upgradovat na non HD split peněženku bez aktualizace pre split keypoolu. Použij verzi 169900 nebo nezadávej verzi žádnou. + Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) Neplatná částka pro -maxtxfee=<amount>: '%s' (musí být alespoň jako poplatek minrelay %s, aby transakce nezůstávaly trčet) @@ -3582,10 +3862,34 @@ Poznámka: Jelikož je poplatek počítaný za bajt, poplatek o hodnotě "100 sa The transaction amount is too small to send after the fee has been deducted Částka v transakci po odečtení poplatku je příliš malá na odeslání + + This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet + Tato chyba může nastat pokud byla peněženka ukončena chybně a byla naposledy použita programem s novější verzi Berkeley DB. Je-li to tak, použijte program, který naposledy přistoupil k této peněžence + + + This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. + Jedná se o maximální poplatek, který zaplatíte (navíc k běžnému poplatku), aby se upřednostnila útrata z dosud nepoužitých adres oproti těm už jednou použitých. + + + Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. + Transakce potřebuje adresu pro drobné, ale ta se nepodařila vygenerovat. Nejdřív zavolej keypoolrefill. + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain K návratu k neprořezávacímu režimu je potřeba přestavět databázi použitím -reindex. Také se znovu stáhne celý blockchain + + A fatal internal error occurred, see debug.log for details + Nastala závažná vnitřní chyba, podrobnosti viz v debug.log. + + + Cannot set -peerblockfilters without -blockfilterindex. + Nelze nastavit -peerblockfilters bez -blockfilterindex. + + + Disk space is too low! + Na disku je příliš málo místa! + Error reading from database, shutting down. Chyba při čtení z databáze, ukončuji se. @@ -3598,6 +3902,14 @@ Poznámka: Jelikož je poplatek počítaný za bajt, poplatek o hodnotě "100 sa Error: Disk space is low for %s Chyba: Málo místa na disku pro %s + + Error: Keypool ran out, please call keypoolrefill first + Chyba: V keypoolu došly adresy, nejdřív zavolej keypool refill + + + Fee rate (%s) is lower than the minimum fee rate setting (%s) + Zvolený poplatek (%s) je nižší než nastavený minimální poplatek (%s). + Invalid -onion address or hostname: '%s' Neplatná -onion adresa či hostitel: '%s' @@ -3618,6 +3930,10 @@ Poznámka: Jelikož je poplatek počítaný za bajt, poplatek o hodnotě "100 sa Need to specify a port with -whitebind: '%s' V rámci -whitebind je třeba specifikovat i port: '%s' + + No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. + Není specifikován proxy server. Použijte -proxy=<ip> nebo -proxy=<ip:port>. + Prune mode is incompatible with -blockfilterindex. Režim prořezávání není kompatibilní s -blockfilterindex. diff --git a/src/qt/locale/bitcoin_da.ts b/src/qt/locale/bitcoin_da.ts index 85baeabb8..05a836a51 100644 --- a/src/qt/locale/bitcoin_da.ts +++ b/src/qt/locale/bitcoin_da.ts @@ -69,6 +69,11 @@ These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. Disse er dine Bitcoin-adresser til afsendelse af betalinger. Tjek altid beløb og modtagelsesadresse, inden du sender bitcoins. + + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + Disse er dine Bitcoin adresser til at modtage betalinger. Benyt 'Opret ny modtager adresse' knappen i modtag fanen for at oprette nye adresser. + &Copy Address &Kopiér adresse @@ -477,6 +482,22 @@ Up to date Opdateret + + &Load PSBT from file... + &Indlæs PSBT fra fil... + + + Load Partially Signed Bitcoin Transaction + Indlæs Partvist Signeret Bitcoin-Transaktion + + + Load PSBT from clipboard... + Indlæs PSBT fra udklipsholder... + + + Load Partially Signed Bitcoin Transaction from clipboard + Indlæs Partvist Signeret Bitcoin-Transaktion fra udklipsholder + Node window Knudevindue @@ -513,10 +534,26 @@ Close wallet Luk tegnebog + + Close All Wallets... + Luk alle tegnebøgerne ... + + + Close all wallets + Luk alle tegnebøgerne + Show the %1 help message to get a list with possible Bitcoin command-line options Vis %1 hjælpebesked for at få en liste over mulige tilvalg for Bitcoin kommandolinje + + &Mask values + &Maskér værdier + + + Mask the values in the Overview tab + Maskér værdierne i Oversigt-fanebladet + default wallet Standard tegnebog @@ -625,7 +662,15 @@ Wallet is <b>encrypted</b> and currently <b>locked</b> Tegnebog er <b>krypteret</b> og i øjeblikket <b>låst</b> - + + Original message: + Original besked: + + + A fatal error occurred. %1 can no longer continue safely and will quit. + Der skete en fatal fejl. %1 kan ikke længere fortsætte sikkert og vil afslutte. + + CoinControlDialog @@ -826,11 +871,23 @@ Make Blank Wallet Lav flad tegnebog + + Use descriptors for scriptPubKey management + Brug beskrivere til håndtering af scriptPubKey + + + Descriptor Wallet + Beskriver-Pung + Create Opret - + + Compiled without sqlite support (required for descriptor wallets) + Kompileret uden sqlite-understøttelse (krævet til beskriver-punge) + + EditAddressDialog @@ -1302,6 +1359,14 @@ Whether to show coin control features or not. Hvorvidt egenskaber for coin-styring skal vises eller ej. + + Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. + Opret forbindelse til Bitcoin-netværk igennem en separat SOCKS5 proxy til Tor-onion-tjenester. + + + Use separate SOCKS&5 proxy to reach peers via Tor onion services: + Brug separate SOCKS&5 proxy, for at nå fælle via Tor-onion-tjenester: + &Third party transaction URLs &Tredjeparts-transaktions-URL'er @@ -1437,13 +1502,97 @@ Current total balance in watch-only addresses Nuværende totalsaldo på kigge-adresser - + + Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. + Privatlivstilstand aktiveret for Oversigt-fanebladet. Fjern flueben fra Instillinger->Maskér værdier, for at afmaskere værdierne. + + PSBTOperationsDialog Dialog Dialog + + Sign Tx + Signér Tx + + + Broadcast Tx + Udsend Tx + + + Copy to Clipboard + Kopier til udklipsholder + + + Save... + Gem... + + + Close + Luk + + + Failed to load transaction: %1 + Kunne ikke indlæse transaktion: %1 + + + Failed to sign transaction: %1 + Kunne ikke signere transaktion: %1 + + + Could not sign any more inputs. + Kunne ikke signere flere input. + + + Signed %1 inputs, but more signatures are still required. + Signerede %1 input, men flere signaturer kræves endnu. + + + Signed transaction successfully. Transaction is ready to broadcast. + Signering af transaktion lykkedes. Transaktion er klar til udsendelse. + + + Unknown error processing transaction. + Ukendt fejl i behandling af transaktion. + + + Transaction broadcast successfully! Transaction ID: %1 + Udsendelse af transaktion lykkedes! Transaktions-ID: %1 + + + Transaction broadcast failed: %1 + Udsendelse af transaktion mislykkedes: %1 + + + PSBT copied to clipboard. + PSBT kopieret til udklipsholder. + + + Save Transaction Data + Gem Transaktionsdata + + + Partially Signed Transaction (Binary) (*.psbt) + Partvist Signeret Transaktion (Binær) (*.psbt) + + + PSBT saved to disk. + PSBT gemt på disk. + + + * Sends %1 to %2 + * Sender %1 til %2 + + + Unable to calculate transaction fee or total transaction amount. + Kunne ikke beregne transaktionsgebyr eller totalt transaktionsbeløb. + + + Pays transaction fee: + Betaler transaktionsgebyr + Total Amount Total Mængde @@ -1452,7 +1601,35 @@ or eller - + + Transaction has %1 unsigned inputs. + Transaktion har %1 usignerede input. + + + Transaction is missing some information about inputs. + Transaktion mangler noget information om input. + + + Transaction still needs signature(s). + Transaktion mangler stadig signatur(er). + + + (But this wallet cannot sign transactions.) + (Men denne pung kan ikke signere transaktioner.) + + + (But this wallet does not have the right keys.) + (Men denne pung har ikke de rette nøgler.) + + + Transaction is fully signed and ready for broadcast. + Transaktion er fuldt signeret og klar til udsendelse. + + + Transaction status is unknown. + Transaktionsstatus er ukendt. + + PaymentServer @@ -1617,6 +1794,10 @@ Error: %1 Fejl: %1 + + Error initializing settings: %1 + Fejl ved initialisering af indstillinger: %1 + %1 didn't yet exit safely... %1 har endnu ikke afsluttet på sikker vis… @@ -1795,6 +1976,10 @@ Node window Knudevindue + + Current block height + Nuværende blokhøjde + Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. Åbn %1s fejlsøgningslogfil fra den aktuelle datamappe. Dette kan tage nogle få sekunder for store logfiler. @@ -1807,6 +1992,10 @@ Increase font size Forstør skrifttypestørrelse + + Permissions + Tilladelser + Services Tjenester @@ -2062,9 +2251,21 @@ Could not unlock wallet. Kunne ikke låse tegnebog op. - + + Could not generate new %1 address + Kunne ikke generere ny %1 adresse + + ReceiveRequestDialog + + Request payment to ... + Anmod om betaling til + + + Address: + Adresse + Amount: Beløb: @@ -2343,6 +2544,22 @@ Note: Siden gebyret er kalkuleret på en per-byte basis, et gebyr på "100 satos Are you sure you want to send? Er du sikker på, at du vil sende? + + Create Unsigned + Opret Usigneret + + + Save Transaction Data + Gem Transaktionsdata + + + Partially Signed Transaction (Binary) (*.psbt) + Partvist Signeret Transaktion (Binær) (*.psbt) + + + PSBT saved + PSBT gemt + or eller @@ -2351,6 +2568,10 @@ Note: Siden gebyret er kalkuleret på en per-byte basis, et gebyr på "100 satos You can increase the fee later (signals Replace-By-Fee, BIP-125). Du kan øge gebyret senere (signalerer erstat-med-gebyr, BIP-125). + + Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + Gennemse venligst dit transaktionsforslag. Dette vil producere en Partvist Signeret Bitcoin Transaktion (PSBT), som du kan gemme eller kopiere, og så signere med f.eks. en offline %1 pung, eller en PSBT-kompatibel maskinelpung. + Please, review your transaction. Venligst, vurder din transaktion. @@ -3165,9 +3386,25 @@ Note: Siden gebyret er kalkuleret på en per-byte basis, et gebyr på "100 satos Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. Lukning af tegnebog i for lang tid kan resultere i at synkronisere hele kæden forfra, hvis beskæring er aktiveret. - + + Close all wallets + Luk alle tegnebøgerne + + + Are you sure you wish to close all wallets? + Er du sikker på du vil lukke alle tegnebøgerne? + + WalletFrame + + No wallet has been loaded. +Go to File > Open Wallet to load a wallet. +- OR - + Ingen pung er blevet indlæst. +Gå til Fil > Åbn Pung for, at indlæse en pung. +- ELLER - + Create a new wallet Opret en ny tegnebog @@ -3246,6 +3483,26 @@ Note: Siden gebyret er kalkuleret på en per-byte basis, et gebyr på "100 satos Error Fejl + + Unable to decode PSBT from clipboard (invalid base64) + Kan ikke afkode PSBT fra udklipsholder (ugyldigt base64) + + + Load Transaction Data + Indlæs transaktions data + + + Partially Signed Transaction (*.psbt) + Partvist Signeret Transaktion (*.psbt) + + + PSBT file must be smaller than 100 MiB + PSBT-fil skal være mindre end 100 MiB + + + Unable to decode PSBT + Kunne ikke afkode PSBT + Backup Wallet Sikkerhedskopiér tegnebog @@ -3313,6 +3570,10 @@ Note: Siden gebyret er kalkuleret på en per-byte basis, et gebyr på "100 satos Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. Fejl under læsning af %s! Alle nøgler blev læst korrekt, men transaktionsdata eller indgange i adressebogen kan mangle eller være ukorrekte. + + More than one onion bind address is provided. Using %s for the automatically created Tor onion service. + Mere end én onion-bindingsadresse er opgivet. Bruger %s til den automatiske oprettelse af Tor-onion-tjeneste. + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. Undersøg venligst at din computers dato og klokkeslet er korrekt indstillet! Hvis der er fejl i disse, vil %s ikke fungere korrekt. @@ -3321,6 +3582,18 @@ Note: Siden gebyret er kalkuleret på en per-byte basis, et gebyr på "100 satos Please contribute if you find %s useful. Visit %s for further information about the software. Overvej venligst at bidrage til udviklingen, hvis du finder %s brugbar. Besøg %s for yderligere information om softwaren. + + SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s + SQLiteDatabase: Forberedelse af udtrykket på, at gribe sqlite-pung-skemaversion mislykkedes: %s + + + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + SQLiteDatabase: Forberedelse af udtrykket på, at gribe applikations-ID mislykkedes: %s + + + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported + SQLiteDatabase: Ukendt sqlite-pung-skemaversion %d. Kun version %d understøttes + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct Blokdatabasen indeholder en blok, som ser ud til at være fra fremtiden. Dette kan skyldes, at din computers dato og tid ikke er sat korrekt. Genopbyg kun blokdatabasen, hvis du er sikker på, at din computers dato og tid er korrekt @@ -3425,6 +3698,14 @@ Note: Siden gebyret er kalkuleret på en per-byte basis, et gebyr på "100 satos Failed to rescan the wallet during initialization Genindlæsning af tegnebogen under initialisering mislykkedes + + Failed to verify database + Kunne ikke verificere databasen + + + Ignoring duplicate -wallet %s. + Ignorerer duplikeret -pung %s. + Importing... Importerer… @@ -3453,6 +3734,22 @@ Note: Siden gebyret er kalkuleret på en per-byte basis, et gebyr på "100 satos Invalid amount for -fallbackfee=<amount>: '%s' Ugyldigt beløb for -fallbackfee=<beløb>: “%s” + + SQLiteDatabase: Failed to execute statement to verify database: %s + SQLiteDatabase: Udførelse af udtryk for, at bekræfte database mislykkedes: %s + + + SQLiteDatabase: Failed to prepare statement to verify database: %s + SQLiteDatabase: Forberedelse af udtryk på, at bekræfte database mislykkedes: %s + + + SQLiteDatabase: Failed to read database verification error: %s + SQLiteDatabase: Indlæsning af database-bekræftelsesfejl mislykkedes: %s + + + SQLiteDatabase: Unexpected application id. Expected %u, got %u + SQLiteDatabase: Uventet applikations-ID. Ventede %u, fik %u + Specified blocks directory "%s" does not exist. Angivet blokmappe “%s” eksisterer ikke. @@ -3537,6 +3834,14 @@ Note: Siden gebyret er kalkuleret på en per-byte basis, et gebyr på "100 satos Error: Listening for incoming connections failed (listen returned error %s) Fejl: Lytning efter indkommende forbindelser mislykkedes (lytning resultarede i fejl %s) + + %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. + %s beskadiget. Prøv at bruge pung-værktøjet bitcoin-wallet til, at bjærge eller gendanne en sikkerhedskopi. + + + Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. + Kan ikke opgradere en ikke-HD-splittet pung, uden at opgradere for, at understøtte præ-split-nøglepøl. Brug venligst version 169900 eller ingen specificeret version. + Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) Ugyldigt beløb for -maxtxfee=<beløb>: “%s” (skal være på mindst minrelay-gebyret på %s for at undgå hængende transaktioner) @@ -3545,10 +3850,34 @@ Note: Siden gebyret er kalkuleret på en per-byte basis, et gebyr på "100 satos The transaction amount is too small to send after the fee has been deducted Transaktionsbeløbet er for lille til at sende, når gebyret er trukket fra + + This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet + Denne fejl kunne finde sted hvis denne pung ikke blev lukket rent ned og sidst blev indlæst vha. en udgave med en nyere version af Berkeley DB. Brug i så fald venligst den programvare, som sidst indlæste denne pung + + + This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. + Dette er det maksimale transaktionsgebyr, du betaler (ud over det normale gebyr) for, at prioritere partisk forbrugsafvigelse over almindelig møntudvælgelse. + + + Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. + Transaktion har brug for for, at skifte adresse, men vi kan ikke generere den. Tilkald venligst keypoolrefill først. + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain Du er nødt til at genopbygge databasen ved hjælp af -reindex for at gå tilbage til ikke-beskåret tilstand. Dette vil downloade hele blokkæden igen + + A fatal internal error occurred, see debug.log for details + Der er sket en fatal intern fejl, se debug.log for detaljer + + + Cannot set -peerblockfilters without -blockfilterindex. + Kan ikke indstille -peerblockfilters uden -blockfilterindex. + + + Disk space is too low! + Fejl: Disk pladsen er for lav! + Error reading from database, shutting down. Fejl under læsning fra database; lukker ned. @@ -3561,6 +3890,14 @@ Note: Siden gebyret er kalkuleret på en per-byte basis, et gebyr på "100 satos Error: Disk space is low for %s Fejl: Disk plads er lavt for %s + + Error: Keypool ran out, please call keypoolrefill first + Fejl: Nøglepøl løb tør, tilkald venligst keypoolrefill først + + + Fee rate (%s) is lower than the minimum fee rate setting (%s) + Gebyrrate (%s) er lavere end den minimale gebyrrate-indstilling (%s) + Invalid -onion address or hostname: '%s' Ugyldig -onion-adresse eller værtsnavn: “%s” @@ -3581,6 +3918,10 @@ Note: Siden gebyret er kalkuleret på en per-byte basis, et gebyr på "100 satos Need to specify a port with -whitebind: '%s' Nødt til at angive en port med -whitebinde: “%s” + + No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. + Ingen proxyserver specificeret. Brug -proxy=<ip> eller -proxy=<ip:port>. + Prune mode is incompatible with -blockfilterindex. Beskærings tilstand er ikke understøttet med -blockfilterindex. diff --git a/src/qt/locale/bitcoin_el.ts b/src/qt/locale/bitcoin_el.ts index eb5d612c4..8722cc544 100644 --- a/src/qt/locale/bitcoin_el.ts +++ b/src/qt/locale/bitcoin_el.ts @@ -637,7 +637,11 @@ Original message: Αρχικό Μήνυμα: - + + A fatal error occurred. %1 can no longer continue safely and will quit. + Συνέβη ενα μοιραίο σφάλμα. %1 δε μπορεί να συνεχιστεί με ασφάλεια και θα σταματήσει + + CoinControlDialog @@ -658,7 +662,7 @@ Fee: - Ταρίφα: + Τέλη: Dust: @@ -666,7 +670,7 @@ After Fee: - Ταρίφα αλλαγής: + Τέλη αλλαγής: Change: @@ -842,7 +846,11 @@ Create Δημιουργία - + + Compiled without sqlite support (required for descriptor wallets) + Μεταγλωτίστηκε χωρίς την υποστήριξη sqlite (απαραίτητη για περιγραφικά πορτοφόλια ) + + EditAddressDialog @@ -1449,6 +1457,10 @@ Save... Αποθήκευση... + + Close + Κλείσιμο + Failed to load transaction: %1 Αποτυχία φόρτωσης μεταφοράς: %1 @@ -1457,10 +1469,23 @@ Failed to sign transaction: %1 Αποτυχία εκπλήρωσης συναλλαγής: %1 + + Signed transaction successfully. Transaction is ready to broadcast. + Η συναλλαγή υπογράφηκε με επιτυχία. Η συναλλαγή είναι έτοιμη για μετάδοση. + Unknown error processing transaction. Άγνωστο λάθος επεξεργασίας μεταφοράς. + + Transaction broadcast successfully! Transaction ID: %1 + Έγινε επιτυχής αναμετάδοση της συναλλαγής! +ID Συναλλαγής: %1 + + + Transaction broadcast failed: %1 + Η αναμετάδοση της συναλαγής απέτυχε: %1 + PSBT copied to clipboard. PSBT αντιγράφηκε στο πρόχειρο. diff --git a/src/qt/locale/bitcoin_en.ts b/src/qt/locale/bitcoin_en.ts index 354c4b6c1..71c8774a2 100644 --- a/src/qt/locale/bitcoin_en.ts +++ b/src/qt/locale/bitcoin_en.ts @@ -838,7 +838,7 @@ Signing is only possible with addresses of the type 'legacy'. - + A fatal error occurred. %1 can no longer continue safely and will quit. @@ -1059,17 +1059,17 @@ Signing is only possible with addresses of the type 'legacy'. - + Wallet - + Wallet Name - + Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. @@ -1079,12 +1079,12 @@ Signing is only possible with addresses of the type 'legacy'. - - Advanced options + + Advanced Options - + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. @@ -1094,7 +1094,7 @@ Signing is only possible with addresses of the type 'legacy'. - + Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. @@ -1104,7 +1104,7 @@ Signing is only possible with addresses of the type 'legacy'. - + Use descriptors for scriptPubKey management @@ -1907,7 +1907,7 @@ Signing is only possible with addresses of the type 'legacy'. - + Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. @@ -2280,7 +2280,7 @@ Signing is only possible with addresses of the type 'legacy'. - + Error: Specified data directory "%1" does not exist. diff --git a/src/qt/locale/bitcoin_es.ts b/src/qt/locale/bitcoin_es.ts index 19a902134..d3be12395 100644 --- a/src/qt/locale/bitcoin_es.ts +++ b/src/qt/locale/bitcoin_es.ts @@ -3813,7 +3813,7 @@ Vaya a Archivo> Abrir monedero para cargar un monedero. Unsupported logging category %s=%s. - Categoría de registro no soportada %s=%s. + Categoría de registro no soportada %s=%s. Upgrading UTXO database diff --git a/src/qt/locale/bitcoin_es_CL.ts b/src/qt/locale/bitcoin_es_CL.ts index 4e08e5abb..1e78d60b8 100644 --- a/src/qt/locale/bitcoin_es_CL.ts +++ b/src/qt/locale/bitcoin_es_CL.ts @@ -70,6 +70,12 @@ Exportar los datos en la pestaña actual a un archivo These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. Estas son sus direcciones de Bitcoin para enviar pagos. Siempre verifique el monto y la dirección de recepción antes de enviar monedas. + + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + Estas son sus direcciones de Bitcoin para recibir los pagos. +Usa el boton "Crear nueva direccion de recibimiento" en la pestaña de recibir para crear una nueva direccion. Firmar es posible solo con la direccion del tipo "legado" + &Copy Address Copiar dirección @@ -132,6 +138,10 @@ Exportar los datos en la pestaña actual a un archivo Repeat new passphrase Repetir nueva contraseña + + Show passphrase + Mostrar contraseña + Encrypt wallet Encriptar la billetera @@ -172,10 +182,30 @@ Exportar los datos en la pestaña actual a un archivo Wallet encrypted Billetera encriptada + + Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. + Introducir la nueva contraseña para la billetera. Por favor usa una contraseña de diez o mas caracteres aleatorios, u ocho o mas palabras. + + + Enter the old passphrase and new passphrase for the wallet. + Introducir la vieja contraseña y la nueva contraseña para la billetera. + Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. Recuerda que codificando tu billetera no garantiza mantener a salvo tus bitcoins en caso de tener virus en el computador. + + Wallet to be encrypted + Billetera para ser encriptada + + + Your wallet is about to be encrypted. + Tu billetera esta por ser encriptada + + + Your wallet is now encrypted. + Su billetera ahora esta encriptada. + IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. IMPORTANTE: todas las copias de seguridad anteriores que haya realizado de su archivo de billetera se deben reemplazar con el archivo de monedero cifrado recién generado. Por razones de seguridad, las copias de seguridad anteriores del archivo monedero sin encriptar serán inútiles tan pronto como comience a usar el nuevo monedero cifrado. @@ -298,6 +328,14 @@ Exportar los datos en la pestaña actual a un archivo Open &URI... Abrir &URL... + + Create Wallet... + Crear Billetera... + + + Create a new wallet + Crear una nueva billetera + Wallet: Billetera: @@ -446,6 +484,14 @@ Exportar los datos en la pestaña actual a un archivo Up to date A hoy + + &Load PSBT from file... + &Load PSBT desde el archivo... + + + Load Partially Signed Bitcoin Transaction + Cargar transacción de Bitcoin parcialmente firmada + Show the %1 help message to get a list with possible Bitcoin command-line options Muestre el mensaje de ayuda %1 para obtener una lista con posibles opciones de línea de comandos de Bitcoin @@ -2686,7 +2732,11 @@ Tarifa de copia WalletFrame - + + Create a new wallet + Crear una nueva billetera + + WalletModel diff --git a/src/qt/locale/bitcoin_es_MX.ts b/src/qt/locale/bitcoin_es_MX.ts index 01a12c4ca..1ac11def2 100644 --- a/src/qt/locale/bitcoin_es_MX.ts +++ b/src/qt/locale/bitcoin_es_MX.ts @@ -883,7 +883,11 @@ Solicitar pagos (genera códigos QR y bitcoin: URI) Create Crear - + + Compiled without sqlite support (required for descriptor wallets) + Compiled without sqlite support (required for descriptor wallets) + + EditAddressDialog @@ -3586,6 +3590,14 @@ Go to File > Open Wallet to load a wallet. SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s + + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + + + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct @@ -3694,6 +3706,10 @@ Go to File > Open Wallet to load a wallet. Failed to verify database No se pudo verificar la base de datos + + Ignoring duplicate -wallet %s. + Ignoring duplicate -wallet %s. + Importing... Importando... @@ -3722,6 +3738,26 @@ Go to File > Open Wallet to load a wallet. Invalid amount for -fallbackfee=<amount>: '%s' Invalid amount for -fallbackfee=<amount>: '%s' + + SQLiteDatabase: Failed to execute statement to verify database: %s + SQLiteDatabase: Failed to execute statement to verify database: %s + + + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s + + + SQLiteDatabase: Failed to fetch the application id: %s + SQLiteDatabase: Failed to fetch the application id: %s + + + SQLiteDatabase: Failed to prepare statement to verify database: %s + SQLiteDatabase: Failed to prepare statement to verify database: %s + + + SQLiteDatabase: Failed to read database verification error: %s + SQLiteDatabase: Failed to read database verification error: %s + Specified blocks directory "%s" does not exist. Specified blocks directory "%s" does not exist. diff --git a/src/qt/locale/bitcoin_es_VE.ts b/src/qt/locale/bitcoin_es_VE.ts index a216f0f8e..c54054b81 100644 --- a/src/qt/locale/bitcoin_es_VE.ts +++ b/src/qt/locale/bitcoin_es_VE.ts @@ -175,6 +175,10 @@ Wallet encrypted Monedero cifrado + + Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. + Ingrese la nueva contraseña para la billetera. Use una contraseña de diez o más caracteres aleatorios, u ocho o más palabras. + Wallet to be encrypted Billetera a ser cifrada diff --git a/src/qt/locale/bitcoin_eu.ts b/src/qt/locale/bitcoin_eu.ts index f76235f27..dd6c0dfe4 100644 --- a/src/qt/locale/bitcoin_eu.ts +++ b/src/qt/locale/bitcoin_eu.ts @@ -409,6 +409,10 @@ Error Akatsa + + Warning + Abisua + Information Informazioa @@ -441,6 +445,14 @@ Close wallet Diruzorroa itxi + + Close All Wallets... + Diruzorro guztiak itxi... + + + Close all wallets + Diruzorro guztiak itxi + default wallet Diruzorro lehenetsia @@ -1215,6 +1227,10 @@ Close wallet Diruzorroa itxi + + Close all wallets + Diruzorro guztiak itxi + WalletFrame diff --git a/src/qt/locale/bitcoin_fa.ts b/src/qt/locale/bitcoin_fa.ts index 0f4f4387d..9f587344d 100644 --- a/src/qt/locale/bitcoin_fa.ts +++ b/src/qt/locale/bitcoin_fa.ts @@ -72,8 +72,8 @@ These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. Signing is only possible with addresses of the type 'legacy'. - These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. -Signing is only possible with addresses of the type 'legacy'. + نشانی رسید پرداختهای بیت کوین شما اینها(اینجا) هستند. دکمه رسید ادرس جدید را بزنید تا اد س جدبد را دریافت کنید +امضا فقط با ادرسهای ثابت (ماندگار) امکان پذیر میباشد. &Copy Address diff --git a/src/qt/locale/bitcoin_fi.ts b/src/qt/locale/bitcoin_fi.ts index 607dbd64c..702f9b442 100644 --- a/src/qt/locale/bitcoin_fi.ts +++ b/src/qt/locale/bitcoin_fi.ts @@ -183,7 +183,7 @@ Allekirjoitus on mahdollista vain 'legacy'-tyyppisillä osoitteilla. Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. - Syötä uusi salasanalause lompakolle <br/>Ole hyvä ja käytä salasanalausetta, jossa on <b>kymmenen tai enemmän sattumanvaraisia merkkjä tai <b>kahdeksan tai enemmän sanoja</b> . + Syötä uusi salasanalause lompakolle <br/>Käytä salasanalausetta, jossa on <b>vähintään kymmenen sattumanvaraista merkkiä tai <b>vähintään kahdeksan sanaa</b> . Enter the old passphrase and new passphrase for the wallet. @@ -1210,7 +1210,7 @@ Allekirjoitus on mahdollista vain 'legacy'-tyyppisillä osoitteilla. Open Configuration File - Avaa asetustiedosto. + Avaa asetustiedosto Reset all client options to default. diff --git a/src/qt/locale/bitcoin_fil.ts b/src/qt/locale/bitcoin_fil.ts index 51f5ebb81..496329953 100644 --- a/src/qt/locale/bitcoin_fil.ts +++ b/src/qt/locale/bitcoin_fil.ts @@ -177,7 +177,7 @@ Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. - Ipasok ang bagong passphrase para sa wallet. (1)Mangyaring gumamit ng isang passphrase na(2) sampu o higit pang mga random na characte‭r(2), o (3)walo o higit pang mga salita(3). + Ipasok ang bagong passphrase para sa wallet. <br/>Mangyaring gumamit ng isang passphrase na may <b>sampu o higit pang mga random na characte‭r</b>, o <b>walo o higit pang mga salita</b>. Enter the old passphrase and new passphrase for the wallet. @@ -473,6 +473,10 @@ Node window Bintana ng Node + + Open node debugging and diagnostic console + Open node debugging and diagnostic console + &Sending addresses Mga address para sa pagpapadala @@ -481,6 +485,10 @@ &Receiving addresses Mga address para sa pagtanggap + + Open a bitcoin: URI + Open a bitcoin: URI + Open Wallet Buksan ang Walet @@ -605,6 +613,10 @@ Wallet is <b>encrypted</b> and currently <b>locked</b> Walet ay na-encrypt at kasalukuyang naka-lock. + + Original message: + Orihinal na mensahe: + CoinControlDialog @@ -759,6 +771,10 @@ CreateWalletActivity + + Creating Wallet <b>%1</b>... + Lumilikha ng Wallet 1 %1 1... + Create wallet failed Nabigo ang Pag likha ng Pitaka @@ -778,10 +794,26 @@ Wallet Name Pangalan ng Pitaka + + Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. + Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. + + + Encrypt Wallet + Encrypt Wallet + + + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. + Disable Private Keys Huwag paganahin ang Privbadong susi + + Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. + Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. + Make Blank Wallet Gumawa ng Blankong Pitaka @@ -902,6 +934,10 @@ When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. Pagkatapos mong mag-click ng OK, %1 ay magsisimulang mag-download at mag-proseso ng buong blockchain (%2GB) magmula sa pinakaunang transaksyon sa %3 nuong ang %4 ay paunang nilunsad. + + Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. + Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. + This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. Maraming pangangailangan ang itong paunang sinkronisasyon at maaaring ilantad ang mga problema sa hardware ng iyong computer na hindi dating napansin. Tuwing pagaganahin mo ang %1, ito'y magpapatuloy mag-download kung saan ito tumigil. @@ -922,6 +958,10 @@ Bitcoin Bitcoin + + Discard blocks after verification, except most recent %1 GB (prune) + Discard blocks after verification, except most recent %1 GB (prune) + At least %1 GB of data will be stored in this directory, and it will grow over time. Kahit na %1 GB na datos ay maiimbak sa direktoryong ito, ito ay lalaki sa pagtagal. @@ -1001,6 +1041,10 @@ Esc Esc + + %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. + %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. + Unknown. Syncing Headers (%1, %2%)... Hindi alam. S-in-i-sync ang mga Header (%1, %2%)... @@ -1008,6 +1052,10 @@ OpenURIDialog + + Open bitcoin URI + Open bitcoin URI + URI: URI: @@ -1122,6 +1170,10 @@ MiB MiB + + (0 = auto, <0 = leave that many cores free) + (0 = auto, <0 = leave that many cores free) + W&allet Walet @@ -1369,9 +1421,61 @@ Current total balance in watch-only addresses Kasalukuyang kabuuan ng balanse sa mga watch-only address - + + Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. + Na-activate ang mode ng privacy para sa tab na Pangkalahatang-ideya. Upang ma-unkkan ang mga halaga, alisan ng check ang Mga Setting-> Mga halaga ng mask. + + PSBTOperationsDialog + + Dialog + Dialog + + + Sign Tx + I-sign ang Tx + + + Broadcast Tx + I-broadcast ang Tx + + + Copy to Clipboard + Kopyahin sa clipboard + + + Save... + I-save ... + + + Close + Isara + + + Failed to load transaction: %1 + Nabigong i-load ang transaksyon: %1 + + + Failed to sign transaction: %1 + Nabigong pumirma sa transaksyon: %1 + + + Could not sign any more inputs. + Hindi makapag-sign ng anumang karagdagang mga input. + + + Signed %1 inputs, but more signatures are still required. + Naka-sign %1 na mga input, ngunit kailangan pa ng maraming mga lagda. + + + Signed transaction successfully. Transaction is ready to broadcast. + Matagumpay na nag-sign transaksyon. Handa nang i-broadcast ang transaksyon. + + + Unknown error processing transaction. + Hindi kilalang error sa pagproseso ng transaksyon. + Total Amount Kabuuang Halaga @@ -1399,6 +1503,18 @@ 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. Ang 'bitcoin://' ay hindi wastong URI. Sa halip, gamitin ang 'bitcoin:'. + + Cannot process payment request because BIP70 is not supported. + Cannot process payment request because BIP70 is not supported. + + + Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. + Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. + + + If you are receiving this error you should request the merchant provide a BIP21 compatible URI. + If you are receiving this error you should request the merchant provide a BIP21 compatible URI. + Invalid payment address %1 Hindi wasto and address ng bayad %1 @@ -2387,6 +2503,10 @@ Tandaan: Dahil ang bayad ay kinakalkula sa bawat-byte na batayan, ang bayad ng Remove this entry Alisin ang entry na ito + + The amount to send in the selected unit + The amount to send in the selected unit + The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. Ibabawas ang bayad mula sa halagang ipapadala. Ang tatanggap ay makakatanggap ng mas kaunting mga bitcoin kaysa sa pinasok mo sa patlang ng halaga. Kung napili ang maraming tatanggap, ang bayad ay paghihiwalayin. @@ -2513,6 +2633,14 @@ Tandaan: Dahil ang bayad ay kinakalkula sa bawat-byte na batayan, ang bayad ng The Bitcoin address the message was signed with Ang Bitcoin address na pumirma sa mensahe + + The signed message to verify + The signed message to verify + + + The signature given when the message was signed + The signature given when the message was signed + Verify the message to ensure it was signed with the specified Bitcoin address Tiyakin ang katotohanan ng mensahe upang siguruhin na ito'y napirmahan ng tinukoy na Bitcoin address @@ -2723,6 +2851,10 @@ Tandaan: Dahil ang bayad ay kinakalkula sa bawat-byte na batayan, ang bayad ng Output index Output index + + (Certificate was not verified) + (Certificate was not verified) + Merchant Mangangalakal @@ -3046,6 +3178,10 @@ Tandaan: Dahil ang bayad ay kinakalkula sa bawat-byte na batayan, ang bayad ng Close wallet Isara ang walet + + Are you sure you wish to close the wallet <i>%1</i>? + Are you sure you wish to close the wallet <i>%1</i>? + Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. Ang pagsasara ng walet nang masyadong matagal ay maaaring magresulta sa pangangailangan ng pag-resync sa buong chain kung pinagana ang pruning. @@ -3076,6 +3212,10 @@ Tandaan: Dahil ang bayad ay kinakalkula sa bawat-byte na batayan, ang bayad ng Do you want to increase the fee? Nais mo bang dagdagan ang bayad? + + Do you want to draft a transaction with fee increase? + Do you want to draft a transaction with fee increase? + Current fee: Kasalukuyang bayad: @@ -3186,6 +3326,10 @@ Tandaan: Dahil ang bayad ay kinakalkula sa bawat-byte na batayan, ang bayad ng Cannot obtain a lock on data directory %s. %s is probably already running. Hindi makakuha ng lock sa direktoryo ng data %s. Malamang na tumatakbo ang %s. + + Cannot provide specific connections and have addrman find outgoing connections at the same. + Cannot provide specific connections and have addrman find outgoing connections at the same. + Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. Error sa pagbabasa %s! Nabasa nang tama ang lahat ng mga key, ngunit ang data ng transaksyon o mga entry sa address book ay maaaring nawawala o hindi tama. @@ -3250,6 +3394,14 @@ Tandaan: Dahil ang bayad ay kinakalkula sa bawat-byte na batayan, ang bayad ng Corrupted block database detected Sirang block database ay napansin + + Could not find asmap file %s + Could not find asmap file %s + + + Could not parse asmap file %s + Could not parse asmap file %s + Do you want to rebuild the block database now? Nais mo bang muling itayo ang block database? @@ -3302,6 +3454,14 @@ Tandaan: Dahil ang bayad ay kinakalkula sa bawat-byte na batayan, ang bayad ng Incorrect or no genesis block found. Wrong datadir for network? Hindi tamang o walang nahanap na genesis block. Maling datadir para sa network? + + Initialization sanity check failed. %s is shutting down. + Initialization sanity check failed. %s is shutting down. + + + Invalid P2P permission: '%s' + Invalid P2P permission: '%s' + Invalid amount for -%s=<amount>: '%s' Hindi wastong halaga para sa -%s=<amount>: '%s' @@ -3318,6 +3478,14 @@ Tandaan: Dahil ang bayad ay kinakalkula sa bawat-byte na batayan, ang bayad ng Specified blocks directory "%s" does not exist. Ang tinukoy na direktoryo ng mga block "%s" ay hindi umiiral. + + Unknown address type '%s' + Unknown address type '%s' + + + Unknown change type '%s' + Unknown change type '%s' + Upgrading txindex database Nag-u-upgrade ng txindex database @@ -3434,6 +3602,10 @@ Tandaan: Dahil ang bayad ay kinakalkula sa bawat-byte na batayan, ang bayad ng Need to specify a port with -whitebind: '%s' Kailangang tukuyin ang port na may -whitebind: '%s' + + Prune mode is incompatible with -blockfilterindex. + Prune mode is incompatible with -blockfilterindex. + Reducing -maxconnections from %d to %d, because of system limitations. Pagbabawas ng -maxconnections mula sa %d hanggang %d, dahil sa mga limitasyon ng systema. @@ -3492,6 +3664,10 @@ Tandaan: Dahil ang bayad ay kinakalkula sa bawat-byte na batayan, ang bayad ng Unable to generate initial keys Hindi makagawa ng paunang mga key + + Unknown -blockfilterindex value %s. + Unknown -blockfilterindex value %s. + Verifying wallet(s)... Nag-ve-verify ng mga walet... diff --git a/src/qt/locale/bitcoin_fr.ts b/src/qt/locale/bitcoin_fr.ts index aeccb0f07..6567f04ff 100644 --- a/src/qt/locale/bitcoin_fr.ts +++ b/src/qt/locale/bitcoin_fr.ts @@ -3,273 +3,273 @@ AddressBookPage Right-click to edit address or label - Cliquer à droite pour modifier l’adresse ou l’étiquette + Right-click to edit address or label Create a new address - Créer une nouvelle adresse + Create a new address &New - &Nouvelle + &New Copy the currently selected address to the system clipboard - Copier dans le presse-papiers l’adresse sélectionnée actuellement + Copy the currently selected address to the system clipboard &Copy - &Copier + &Copy C&lose - &Fermer + C&lose Delete the currently selected address from the list - Supprimer de la liste l’adresse sélectionnée actuellement + Delete the currently selected address from the list Enter address or label to search - Saisissez une adresse ou une étiquette à rechercher + Enter address or label to search Export the data in the current tab to a file - Exporter les données de l’onglet actuel vers un fichier + Export the data in the current tab to a file &Export - &Exporter + &Export &Delete - &Supprimer + &Delete Choose the address to send coins to - Choisir l’adresse à laquelle envoyer des pièces + Choose the address to send coins to Choose the address to receive coins with - Choisir l’adresse avec laquelle recevoir des pîèces + Choose the address to receive coins with C&hoose - C&hoisir + C&hoose Sending addresses - Adresses d’envoi + Sending addresses Receiving addresses - Adresses de réception + Receiving addresses These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. - Ce sont vos adresses Bitcoin pour envoyer des paiements. Vérifiez toujours le montant et l’adresse du destinataire avant d’envoyer des pièces. + These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. Signing is only possible with addresses of the type 'legacy'. - Ce sont vos adresses Bitcoin pour recevoir des paiements. Utilisez le bouton « Créer une nouvelle adresse de réception » dans l’onglet Recevoir afin de créer de nouvelles adresses. -Il n’est possible de signer qu’avec les adresses de type « legacy ». + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. &Copy Address - &Copier l’adresse + &Copy Address Copy &Label - Copier l’é&tiquette + Copy &Label &Edit - &Modifier + &Edit Export Address List - Exporter la liste d’adresses + Export Address List Comma separated file (*.csv) - Valeurs séparées par des virgules (*.csv) + Comma separated file (*.csv) Exporting Failed - Échec d’exportation + Exporting Failed There was an error trying to save the address list to %1. Please try again. - Une erreur est survenue lors de l’enregistrement de la liste d’adresses vers %1. Veuillez ressayer plus tard. + There was an error trying to save the address list to %1. Please try again. AddressTableModel Label - Étiquette + Label Address - Adresse + Address (no label) - (aucune étiquette) + (no label) AskPassphraseDialog Passphrase Dialog - Fenêtre de dialogue de la phrase de passe + Passphrase Dialog Enter passphrase - Saisissez la phrase de passe + Enter passphrase New passphrase - Nouvelle phrase de passe + New passphrase Repeat new passphrase - Répéter la phrase de passe + Repeat new passphrase Show passphrase - Afficher la phrase de passe + Show passphrase Encrypt wallet - Chiffrer le porte-monnaie + Encrypt wallet This operation needs your wallet passphrase to unlock the wallet. - Cette opération nécessite votre phrase de passe pour déverrouiller le porte-monnaie. + This operation needs your wallet passphrase to unlock the wallet. Unlock wallet - Déverrouiller le porte-monnaie + Unlock wallet This operation needs your wallet passphrase to decrypt the wallet. - Cette opération nécessite votre phrase de passe pour déchiffrer le porte-monnaie. + This operation needs your wallet passphrase to decrypt the wallet. Decrypt wallet - Déchiffrer le porte-monnaie + Decrypt wallet Change passphrase - Changer la phrase de passe + Change passphrase Confirm wallet encryption - Confirmer le chiffrement du porte-monnaie + Confirm wallet encryption Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! - Avertissement : Si vous chiffrez votre porte-monnaie et perdez votre phrase de passe, vous <b>PERDREZ TOUS VOS BITCOINS</b> ! + Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! Are you sure you wish to encrypt your wallet? - Voulez-vous vraiment chiffrer votre porte-monnaie ? + Are you sure you wish to encrypt your wallet? Wallet encrypted - Le porte-monnaie est chiffré + Wallet encrypted Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. - Saisissez la nouvelle phrase de passe du porte-monnaie.<br/>Veuillez utiliser une phrase de passe composée de <b>dix caractères aléatoires ou plus</b>, ou de <b>huit mots ou plus</b>. + Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. Enter the old passphrase and new passphrase for the wallet. - Saisissez l’ancienne puis la nouvelle phrase de passe du porte-monnaie. + Enter the old passphrase and new passphrase for the wallet. Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. - N’oubliez pas que le chiffrement de votre porte-monnaie ne peut pas protéger entièrement vos bitcoins contre le vol par des programmes malveillants qui infecteraient votre ordinateur. + Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. Wallet to be encrypted - Porte-monnaie à chiffrer + Wallet to be encrypted Your wallet is about to be encrypted. - Votre porte-monnaie est sur le point d’être chiffré. + Your wallet is about to be encrypted. Your wallet is now encrypted. - Votre porte-monnaie est désormais chiffré. + Your wallet is now encrypted. IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. - IMPORTANT : Toutes les sauvegardes précédentes du fichier de votre porte-monnaie devraient être remplacées par le fichier du porte-monnaie chiffré nouvellement généré. Pour des raisons de sécurité, les sauvegardes précédentes de votre fichier de porte-monnaie non chiffré deviendront inutilisables dès que vous commencerez à utiliser le nouveau porte-monnaie chiffré. + IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. Wallet encryption failed - Échec de chiffrement du porte-monnaie + Wallet encryption failed Wallet encryption failed due to an internal error. Your wallet was not encrypted. - Le chiffrement du porte-monnaie a échoué en raison d’une erreur interne. Votre porte-monnaie n’a pas été chiffré. + Wallet encryption failed due to an internal error. Your wallet was not encrypted. The supplied passphrases do not match. - Les phrases de passe saisies ne correspondent pas. + The supplied passphrases do not match. Wallet unlock failed - Échec de déverrouillage du porte-monnaie + Wallet unlock failed The passphrase entered for the wallet decryption was incorrect. - La phrase de passe saisie pour déchiffrer le porte-monnaie était erronée. + The passphrase entered for the wallet decryption was incorrect. Wallet decryption failed - Échec de déchiffrement du porte-monnaie + Wallet decryption failed Wallet passphrase was successfully changed. - La phrase de passe du porte-monnaie a été modifiée avec succès. + Wallet passphrase was successfully changed. Warning: The Caps Lock key is on! - Avertissement : La touche Verr. Maj. est activée + Warning: The Caps Lock key is on! BanTableModel IP/Netmask - IP/masque réseau + IP/Netmask Banned Until - Banni jusqu’au + Banned Until BitcoinGUI Sign &message... - Signer un &message… + Sign &message... Synchronizing with network... - Synchronisation avec le réseau… + Synchronizing with network... &Overview - &Vue d’ensemble + &Overview Show general overview of wallet - Afficher une vue d’ensemble du porte-monnaie + Show general overview of wallet &Transactions @@ -277,458 +277,458 @@ Il n’est possible de signer qu’avec les adresses de type « legacy ». Browse transaction history - Parcourir l’historique transactionnel + Browse transaction history E&xit - Q&uitter + E&xit Quit application - Quitter l’application + Quit application &About %1 - À &propos de %1 + &About %1 Show information about %1 - Afficher des renseignements à propos de %1 + Show information about %1 About &Qt - À propos de &Qt + About &Qt Show information about Qt - Afficher des renseignements sur Qt + Show information about Qt &Options... - &Options… + &Options... Modify configuration options for %1 - Modifier les options de configuration de %1 + Modify configuration options for %1 &Encrypt Wallet... - &Chiffrer le porte-monnaie… + &Encrypt Wallet... &Backup Wallet... - Sauvegarder le &porte-monnaie… + &Backup Wallet... &Change Passphrase... - &Changer la phrase de passe… + &Change Passphrase... Open &URI... - Ouvrir une &URI… + Open &URI... Create Wallet... - Créer un porte-monnaie… + Create Wallet... Create a new wallet - Créer un nouveau porte-monnaie + Create a new wallet Wallet: - Porte-monnaie : + Wallet: Click to disable network activity. - Cliquez pour désactiver l’activité réseau. + Click to disable network activity. Network activity disabled. - L’activité réseau est désactivée. + Network activity disabled. Click to enable network activity again. - Cliquez pour réactiver l’activité réseau. + Click to enable network activity again. Syncing Headers (%1%)... - Synchronisation des en-têtes (%1)… + Syncing Headers (%1%)... Reindexing blocks on disk... - Réindexation des blocs sur le disque… + Reindexing blocks on disk... Proxy is <b>enabled</b>: %1 - Le serveur mandataire est <b>activé</b> : %1 + Proxy is <b>enabled</b>: %1 Send coins to a Bitcoin address - Envoyer des pièces à une adresse Bitcoin + Send coins to a Bitcoin address Backup wallet to another location - Sauvegarder le porte-monnaie vers un autre emplacement + Backup wallet to another location Change the passphrase used for wallet encryption - Modifier la phrase de passe utilisée pour le chiffrement du porte-monnaie + Change the passphrase used for wallet encryption &Verify message... - &Vérifier un message… + &Verify message... &Send - &Envoyer + &Send &Receive - &Recevoir + &Receive &Show / Hide - &Afficher / cacher + &Show / Hide Show or hide the main Window - Afficher ou cacher la fenêtre principale + Show or hide the main Window Encrypt the private keys that belong to your wallet - Chiffrer les clés privées qui appartiennent à votre porte-monnaie + Encrypt the private keys that belong to your wallet Sign messages with your Bitcoin addresses to prove you own them - Signer les messages avec vos adresses Bitcoin pour prouver que vous les détenez + Sign messages with your Bitcoin addresses to prove you own them Verify messages to ensure they were signed with specified Bitcoin addresses - Vérifier les messages pour s’assurer qu’ils ont été signés avec les adresses Bitcoin indiquées + Verify messages to ensure they were signed with specified Bitcoin addresses &File - &Fichier + &File &Settings - &Paramètres + &Settings &Help - &Aide + &Help Tabs toolbar - Barre d’outils des onglets + Tabs toolbar Request payments (generates QR codes and bitcoin: URIs) - Demander des paiements (génère des codes QR et des URI bitcoin:) + Request payments (generates QR codes and bitcoin: URIs) Show the list of used sending addresses and labels - Afficher la liste d’adresses d’envoi et d’étiquettes utilisées + Show the list of used sending addresses and labels Show the list of used receiving addresses and labels - Afficher la liste d’adresses de réception et d’étiquettes utilisées + Show the list of used receiving addresses and labels &Command-line options - Options de ligne de &commande + &Command-line options %n active connection(s) to Bitcoin network - %n connexion active avec le réseau Bitcoin%n connexions actives avec le réseau Bitcoin + %n active connection to Bitcoin network%n active connections to Bitcoin network Indexing blocks on disk... - Indexation des blocs sur le disque… + Indexing blocks on disk... Processing blocks on disk... - Traitement des blocs sur le disque… + Processing blocks on disk... Processed %n block(s) of transaction history. - %n bloc d’historique transactionnel a été traité%n blocs d’historique transactionnel ont été traités + Processed %n block of transaction history.Processed %n blocks of transaction history. %1 behind - en retard de %1 + %1 behind Last received block was generated %1 ago. - Le dernier bloc reçu avait été généré il y a %1. + Last received block was generated %1 ago. Transactions after this will not yet be visible. - Les transactions suivantes ne seront pas déjà visibles. + Transactions after this will not yet be visible. Error - Erreur + Error Warning - Avertissement + Warning Information - Renseignements + Information Up to date - À jour + Up to date &Load PSBT from file... - &Charger une TBSP d’un fichier… + &Load PSBT from file... Load Partially Signed Bitcoin Transaction - Charger une transaction Bitcoin signée partiellement + Load Partially Signed Bitcoin Transaction Load PSBT from clipboard... - Charger une TBSP du presse-papiers… + Load PSBT from clipboard... Load Partially Signed Bitcoin Transaction from clipboard - Charger du presse-papiers une transaction Bitcoin signée partiellement + Load Partially Signed Bitcoin Transaction from clipboard Node window - Fenêtre des nœuds + Node window Open node debugging and diagnostic console - Ouvrir une console de débogage de nœuds et de diagnostic + Open node debugging and diagnostic console &Sending addresses - &Adresses d’envoi + &Sending addresses &Receiving addresses - &Adresses de réception + &Receiving addresses Open a bitcoin: URI - Ouvrir une URI bitcoin: + Open a bitcoin: URI Open Wallet - Ouvrir un porte-monnaie + Open Wallet Open a wallet - Ouvrir un porte-monnaie + Open a wallet Close Wallet... - Fermer le porte-monnaie… + Close Wallet... Close wallet - Fermer le porte-monnaie + Close wallet Close All Wallets... - Fermer tous les porte-monnaie… + Close All Wallets... Close all wallets - Fermer tous les porte-monnaie + Close all wallets Show the %1 help message to get a list with possible Bitcoin command-line options - Afficher le message d’aide de %1 pour obtenir la liste des options de ligne de commande Bitcoin possibles. + Show the %1 help message to get a list with possible Bitcoin command-line options &Mask values - &Dissimuler les montants + &Mask values Mask the values in the Overview tab - Dissimuler les montants dans l’onglet Vue d’ensemble + Mask the values in the Overview tab default wallet - porte-monnaie par défaut + default wallet No wallets available - Aucun porte-monnaie n’est disponible + No wallets available &Window - &Fenêtre + &Window Minimize - Réduire + Minimize Zoom - Zoomer + Zoom Main Window - Fenêtre principale + Main Window %1 client - Client %1 + %1 client Connecting to peers... - Connexion aux pairs… + Connecting to peers... Catching up... - Rattrapage… + Catching up... Error: %1 - Erreur : %1 + Error: %1 Warning: %1 - Avertissement : %1 + Warning: %1 Date: %1 - Date : %1 + Date: %1 Amount: %1 - Montant : %1 + Amount: %1 Wallet: %1 - Porte-monnaie : %1 + Wallet: %1 Type: %1 - Type  : %1 + Type: %1 Label: %1 - Étiquette : %1 + Label: %1 Address: %1 - Adresse : %1 + Address: %1 Sent transaction - Transaction envoyée + Sent transaction Incoming transaction - Transaction entrante + Incoming transaction HD key generation is <b>enabled</b> - La génération de clé HD est <b>activée</b> + HD key generation is <b>enabled</b> HD key generation is <b>disabled</b> - La génération de clé HD est <b>désactivée</b> + HD key generation is <b>disabled</b> Private key <b>disabled</b> - La clé privée est <b>désactivée</b> + Private key <b>disabled</b> Wallet is <b>encrypted</b> and currently <b>unlocked</b> - Le porte-monnaie est <b>chiffré</b> et est actuellement <b>déverrouillé</b> + Wallet is <b>encrypted</b> and currently <b>unlocked</b> Wallet is <b>encrypted</b> and currently <b>locked</b> - Le porte-monnaie est <b>chiffré</b> et actuellement <b>verrouillé</b> + Wallet is <b>encrypted</b> and currently <b>locked</b> Original message: - Message original : + Original message: A fatal error occurred. %1 can no longer continue safely and will quit. - Une erreur fatale est survenue. %1 ne peut plus continuer de façon sûre et va s’arrêter. + A fatal error occurred. %1 can no longer continue safely and will quit. CoinControlDialog Coin Selection - Sélection des pièces + Coin Selection Quantity: - Quantité : + Quantity: Bytes: - Octets : + Bytes: Amount: - Montant : + Amount: Fee: - Frais : + Fee: Dust: - Poussière : + Dust: After Fee: - Après les frais : + After Fee: Change: - Monnaie : + Change: (un)select all - Tout (des)sélectionner + (un)select all Tree mode - Mode arborescence + Tree mode List mode - Mode liste + List mode Amount - Montant + Amount Received with label - Reçu avec une étiquette + Received with label Received with address - Reçu avec une adresse + Received with address Date @@ -740,231 +740,231 @@ Il n’est possible de signer qu’avec les adresses de type « legacy ». Confirmed - Confirmée + Confirmed Copy address - Copier l’adresse + Copy address Copy label - Copier l’étiquette + Copy label Copy amount - Copier le montant + Copy amount Copy transaction ID - Copier l’ID de la transaction + Copy transaction ID Lock unspent - Verrouiller les transactions non dépensées + Lock unspent Unlock unspent - Déverrouiller les transactions non dépensées + Unlock unspent Copy quantity - Copier la quantité + Copy quantity Copy fee - Copier les frais + Copy fee Copy after fee - Copier après les frais + Copy after fee Copy bytes - Copier les octets + Copy bytes Copy dust - Copier la poussière + Copy dust Copy change - Copier la monnaie + Copy change (%1 locked) - (%1 verrouillée) + (%1 locked) yes - oui + yes no - non + no This label turns red if any recipient receives an amount smaller than the current dust threshold. - Cette étiquette devient rouge si un destinataire reçoit un montant inférieur au seuil actuel de poussière. + This label turns red if any recipient receives an amount smaller than the current dust threshold. Can vary +/- %1 satoshi(s) per input. - Peut varier +/- %1 satoshi(s) par entrée. + Can vary +/- %1 satoshi(s) per input. (no label) - (aucune étiquette) + (no label) change from %1 (%2) - monnaie de %1 (%2) + change from %1 (%2) (change) - (monnaie) + (change) CreateWalletActivity Creating Wallet <b>%1</b>... - Création du porte-monnaie <b>%1</b>… + Creating Wallet <b>%1</b>... Create wallet failed - Échec de création du porte-monnaie + Create wallet failed Create wallet warning - Avertissement de création du porte-monnaie + Create wallet warning CreateWalletDialog Create Wallet - Créer un porte-monnaie + Create Wallet Wallet Name - Nom du porte-monnaie + Wallet Name Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. - Chiffrer le porte-monnaie. Le porte-monnaie sera chiffré avec une phrase de passe de votre choix. + Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. Encrypt Wallet - Chiffrer le porte-monnaie + Encrypt Wallet Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. - Désactiver les clés privées pour ce porte-monnaie. Les porte-monnaie pour lesquels les clés privées sont désactivées n’auront aucune clé privée et ne pourront ni avoir de graine HD ni de clés privées importées. Cela est idéal pour les porte-monnaie juste-regarder. + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. Disable Private Keys - Désactiver les clés privées + Disable Private Keys Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. - Créer un porte-monnaie vide. Les porte-monnaie vides n’ont initialement ni clé privée ni script. Ultérieurement, des clés privées et des adresses peuvent être importées ou une graine HD peut être définie. + Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. Make Blank Wallet - Créer un porte-monnaie vide + Make Blank Wallet Use descriptors for scriptPubKey management - Utiliser des descripteurs pour la gestion des scriptPubKey + Use descriptors for scriptPubKey management Descriptor Wallet - Porte-monnaie de descripteurs + Descriptor Wallet Create - Créer + Create Compiled without sqlite support (required for descriptor wallets) - Compilé sans prise en charge de sqlite (requis pour les porte-monnaie de descripteurs) + Compiled without sqlite support (required for descriptor wallets) EditAddressDialog Edit Address - Modifier l’adresse + Edit Address &Label - É&tiquette + &Label The label associated with this address list entry - L’étiquette associée à cette entrée de la liste d’adresses + The label associated with this address list entry The address associated with this address list entry. This can only be modified for sending addresses. - L’adresse associée à cette entrée de la liste d’adresses. Cela ne peut être modifié que pour les adresses d’envoi. + The address associated with this address list entry. This can only be modified for sending addresses. &Address - &Adresse + &Address New sending address - Nouvelle adresse d’envoi + New sending address Edit receiving address - Modifier l’adresse de réception + Edit receiving address Edit sending address - Modifier l’adresse d’envoi + Edit sending address The entered address "%1" is not a valid Bitcoin address. - L’adresse saisie « %1 » n’est pas une adresse Bitcoin valide. + The entered address "%1" is not a valid Bitcoin address. Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address. - L’adresse « %1 » existe déjà en tant qu’adresse de réception avec l’étiquette « %2 » et ne peut donc pas être ajoutée en tant qu’adresse d’envoi. + Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address. The entered address "%1" is already in the address book with label "%2". - L’adresse saisie « %1 » est déjà présente dans le carnet d’adresses avec l’étiquette « %2 ». + The entered address "%1" is already in the address book with label "%2". Could not unlock wallet. - Impossible de déverrouiller le porte-monnaie. + Could not unlock wallet. New key generation failed. - Échec de génération de la nouvelle clé. + New key generation failed. FreespaceChecker A new data directory will be created. - Un nouveau répertoire de données sera créé. + A new data directory will be created. name - nom + name Directory already exists. Add %1 if you intend to create a new directory here. - Le répertoire existe déjà. Ajouter %1 si vous comptez créer un nouveau répertoire ici. + Directory already exists. Add %1 if you intend to create a new directory here. Path already exists, and is not a directory. - Le chemin existe déjà et n’est pas un répertoire. + Path already exists, and is not a directory. Cannot create data directory here. - Impossible de créer un répertoire de données ici. + Cannot create data directory here. @@ -975,50 +975,50 @@ Il n’est possible de signer qu’avec les adresses de type « legacy ». About %1 - À propos de %1 + About %1 Command-line options - Options de ligne de commande + Command-line options Intro Welcome - Bienvenue + Welcome Welcome to %1. - Bienvenue à %1. + Welcome to %1. As this is the first time the program is launched, you can choose where %1 will store its data. - Comme le logiciel est lancé pour la première fois, vous pouvez choisir où %1 stockera ses données. + As this is the first time the program is launched, you can choose where %1 will store its data. When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. - Quand vous cliquerez sur Valider, %1 commencera à télécharger et à traiter l’intégralité de la chaîne de blocs %4 (%2 Go) en débutant avec les transactions les plus anciennes de %3, quand %4 a été lancé initialement. + When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. - Rétablir ce paramètre à sa valeur antérieure exige de retélécharger la chaîne de blocs dans son intégralité. Il est plus rapide de télécharger la chaîne complète dans un premier temps et de l’élaguer ultérieurement. Désactive certaines fonctions avancées. + Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. - La synchronisation initiale est très exigeante et pourrait exposer des problèmes matériels dans votre ordinateur passés inaperçus auparavant. Chaque fois que vous exécuterez %1, le téléchargement reprendra où il s’était arrêté. + This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. - Si vous avez choisi de limiter le stockage de la chaîne de blocs (élagage), les données historiques doivent quand même être téléchargées et traitées, mais seront supprimées par la suite pour minimiser l’utilisation de votre espace disque. + If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. Use the default data directory - Utiliser le répertoire de données par défaut + Use the default data directory Use a custom data directory: - Utiliser un répertoire de données personnalisé : + Use a custom data directory: Bitcoin @@ -1026,132 +1026,132 @@ Il n’est possible de signer qu’avec les adresses de type « legacy ». Discard blocks after verification, except most recent %1 GB (prune) - Jeter les blocs après vérification, à l’exception des %1 Go les plus récents (élagage) + Discard blocks after verification, except most recent %1 GB (prune) At least %1 GB of data will be stored in this directory, and it will grow over time. - Au moins %1 Go de données seront stockés dans ce répertoire et sa taille augmentera avec le temps. + At least %1 GB of data will be stored in this directory, and it will grow over time. Approximately %1 GB of data will be stored in this directory. - Approximativement %1 Go de données seront stockés dans ce répertoire. + Approximately %1 GB of data will be stored in this directory. %1 will download and store a copy of the Bitcoin block chain. - %1 téléchargera et stockera une copie de la chaîne de blocs Bitcoin. + %1 will download and store a copy of the Bitcoin block chain. The wallet will also be stored in this directory. - Le porte-monnaie sera aussi stocké dans ce répertoire. + The wallet will also be stored in this directory. Error: Specified data directory "%1" cannot be created. - Erreur : Le répertoire de données indiqué « %1 » ne peut pas être créé. + Error: Specified data directory "%1" cannot be created. Error - Erreur + Error %n GB of free space available - %n Go d’espace libre disponible%n Go d’espace libre disponibles + %n GB of free space available%n GB of free space available (of %n GB needed) - (sur %n Go requis)(sur %n Go requis) + (of %n GB needed)(of %n GB needed) (%n GB needed for full chain) - (%n Go nécessaire pour la chaîne complète)(%n Go nécessaires pour la chaîne complète) + (%n GB needed for full chain)(%n GB needed for full chain) ModalOverlay Form - Formulaire + Form Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. - Les transactions récentes ne sont peut-être pas encore visibles et par conséquent le solde de votre porte-monnaie est peut-être erroné. Ces renseignements seront justes quand votre porte-monnaie aura fini de se synchroniser avec le réseau Bitcoin, comme décrit ci-dessous. + Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network. - Toute tentative de dépense de bitcoins affectés par des transactions qui ne sont pas encore affichées ne sera pas acceptée par le réseau. + Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network. Number of blocks left - Nombre de blocs restants + Number of blocks left Unknown... - Inconnu… + Unknown... Last block time - Estampille temporelle du dernier bloc + Last block time Progress - Progression + Progress Progress increase per hour - Avancement de la progression par heure + Progress increase per hour calculating... - calcul en cours… + calculating... Estimated time left until synced - Temps estimé avant la fin de la synchronisation + Estimated time left until synced Hide - Cacher + Hide Esc - Échap + Esc %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. - %1 est en cours de synchronisation. Il téléchargera les en-têtes et les blocs des pairs et les validera jusqu’à ce qu’il atteigne la fin de la chaîne de blocs. + %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. Unknown. Syncing Headers (%1, %2%)... - Inconnu. Synchronisation des en-têtes (%1, %2)… + Unknown. Syncing Headers (%1, %2%)... OpenURIDialog Open bitcoin URI - Ouvrir une URI bitcoin + Open bitcoin URI URI: - URI : + URI: OpenWalletActivity Open wallet failed - Échec d’ouverture du porte-monnaie + Open wallet failed Open wallet warning - Avertissement d’ouverture du porte-monnaie + Open wallet warning default wallet - porte-monnaie par défaut + default wallet Opening Wallet <b>%1</b>... - Ouverture du porte-monnaie <b>%1</b>… + Opening Wallet <b>%1</b>... @@ -1162,95 +1162,95 @@ Il n’est possible de signer qu’avec les adresses de type « legacy ». &Main - &Principales + &Main Automatically start %1 after logging in to the system. - Démarrer %1 automatiquement après avoir ouvert une session sur l’ordinateur. + Automatically start %1 after logging in to the system. &Start %1 on system login - &Démarrer %1 lors de l’ouverture d’une session + &Start %1 on system login Size of &database cache - Taille du cache de la base de &données + Size of &database cache Number of script &verification threads - Nombre de fils de &vérification de script + Number of script &verification threads IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1) - Adresse IP du mandataire (p. ex. IPv4 : 127.0.0.1 / IPv6 : ::1) + IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1) Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type. - Indique si le mandataire SOCKS5 par défaut fourni est utilisé pour atteindre des pairs par ce type de réseau. + Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type. Hide the icon from the system tray. - Cacher l’icône dans la zone de notification. + Hide the icon from the system tray. &Hide tray icon - Cac&her l’icône de la zone de notification + &Hide tray icon Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu. - Quand la fenêtre est fermée, la réduire au lieu de quitter l’application. Si cette option est activée, l’application ne sera fermée qu’en sélectionnant Quitter dans le menu. + Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu. Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. - URL tierces (p. ex. un explorateur de blocs) qui apparaissant dans l’onglet des transactions comme des éléments du menu contextuel. %s dans l’URL est remplacé par le hachage de la transaction. Les URL multiples sont séparées par une barre verticale |. + Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. Open the %1 configuration file from the working directory. - Ouvrir le fichier de configuration %1 du répertoire de travail. + Open the %1 configuration file from the working directory. Open Configuration File - Ouvrir le fichier de configuration + Open Configuration File Reset all client options to default. - Réinitialiser toutes les options du client aux valeurs par défaut. + Reset all client options to default. &Reset Options - &Réinitialiser les options + &Reset Options &Network - &Réseau + &Network Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. - Désactive certaines fonctions avancées, mais tous les blocs seront quand même validés entièrement. Rétablir ce paramètre à sa valeur antérieure exige de retélécharger la chaîne de blocs dans son intégralité. L’espace disque utilisé pourrait être un peu plus élevé. + Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. Prune &block storage to - Élaguer l’espace de stockage des &blocs jusqu’à + Prune &block storage to GB - Go + GB Reverting this setting requires re-downloading the entire blockchain. - Rétablir ce paramètre à sa valeur antérieure exige de retélécharger la chaîne de blocs dans son intégralité. + Reverting this setting requires re-downloading the entire blockchain. MiB - Mio + MiB (0 = auto, <0 = leave that many cores free) - (0 = auto, < 0 = laisser ce nombre de cœurs inutilisés) + (0 = auto, <0 = leave that many cores free) W&allet - &Porte-monnaie + W&allet Expert @@ -1258,55 +1258,55 @@ Il n’est possible de signer qu’avec les adresses de type « legacy ». Enable coin &control features - Activer les fonctions de &contrôle des pièces + Enable coin &control features If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed. - Si vous désactivé la dépense de la monnaie non confirmée, la monnaie d’une transaction ne peut pas être utilisée tant que cette transaction n’a pas reçu au moins une confirmation. Celai affecte aussi le calcul de votre solde. + If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed. &Spend unconfirmed change - &Dépenser la monnaie non confirmée + &Spend unconfirmed change Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled. - Ouvrir automatiquement le port du client Bitcoin sur le routeur. Cela ne fonctionne que si votre routeur prend en charge l’UPnP et si la fonction est activée. + Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled. Map port using &UPnP - Mapper le port avec l’&UPnP + Map port using &UPnP Accept connections from outside. - Accepter les connexions provenant de l’extérieur. + Accept connections from outside. Allow incomin&g connections - Permettre les connexions e&ntrantes + Allow incomin&g connections Connect to the Bitcoin network through a SOCKS5 proxy. - Se connecter au réseau Bitcoin par un mandataire SOCKS5. + Connect to the Bitcoin network through a SOCKS5 proxy. &Connect through SOCKS5 proxy (default proxy): - Se &connecter par un mandataire SOCKS5 (mandataire par défaut) : + &Connect through SOCKS5 proxy (default proxy): Proxy &IP: - &IP du mandataire : + Proxy &IP: &Port: - &Port : + &Port: Port of the proxy (e.g. 9050) - Port du mandataire (p. ex. 9050) + Port of the proxy (e.g. 9050) Used for reaching peers via: - Utilisé pour rejoindre les pairs par : + Used for reaching peers via: IPv4 @@ -1322,371 +1322,371 @@ Il n’est possible de signer qu’avec les adresses de type « legacy ». &Window - &Fenêtre + &Window Show only a tray icon after minimizing the window. - N’afficher qu’une icône dans la zone de notification après minimisation. + Show only a tray icon after minimizing the window. &Minimize to the tray instead of the taskbar - &Réduire dans la zone de notification au lieu de la barre des tâches + &Minimize to the tray instead of the taskbar M&inimize on close - Ré&duire lors de la fermeture + M&inimize on close &Display - &Affichage + &Display User Interface &language: - &Langue de l’interface utilisateur : + User Interface &language: The user interface language can be set here. This setting will take effect after restarting %1. - La langue de l’interface utilisateur peut être définie ici. Ce réglage sera pris en compte après redémarrage de %1. + The user interface language can be set here. This setting will take effect after restarting %1. &Unit to show amounts in: - &Unité d’affichage des montants : + &Unit to show amounts in: Choose the default subdivision unit to show in the interface and when sending coins. - Choisir la sous-unité par défaut d’affichage dans l’interface et lors d’envoi de pièces. + Choose the default subdivision unit to show in the interface and when sending coins. Whether to show coin control features or not. - Afficher ou non les fonctions de contrôle des pièces. + Whether to show coin control features or not. Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. - Se connecter au réseau Bitcoin par un mandataire SOCKS5 séparé pour les services onion de Tor. + Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. Use separate SOCKS&5 proxy to reach peers via Tor onion services: - Utiliser un mandataire SOCKS5 séparé pour atteindre les pairs par les services onion de Tor. + Use separate SOCKS&5 proxy to reach peers via Tor onion services: &Third party transaction URLs - URL de transaction &tierces + &Third party transaction URLs Options set in this dialog are overridden by the command line or in the configuration file: - Les options définies dans cette boîte de dialogue sont remplacées par la ligne de commande ou par le fichier de configuration : + Options set in this dialog are overridden by the command line or in the configuration file: &OK - &Valider + &OK &Cancel - A&nnuler + &Cancel default - par défaut + default none - aucune + none Confirm options reset - Confirmer la réinitialisation des options + Confirm options reset Client restart required to activate changes. - Le client doit être redémarrer pour activer les changements. + Client restart required to activate changes. Client will be shut down. Do you want to proceed? - Le client sera arrêté. Voulez-vous continuer ? + Client will be shut down. Do you want to proceed? Configuration options - Options de configuration + Configuration options The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file. - Le fichier de configuration est utilisé pour indiquer aux utilisateurs experts quelles options remplacent les paramètres de l’IUG. De plus, toute option de ligne de commande remplacera ce fichier de configuration. + The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file. Error - Erreur + Error The configuration file could not be opened. - Impossible d’ouvrir le fichier de configuration. + The configuration file could not be opened. This change would require a client restart. - Ce changement demanderait un redémarrage du client. + This change would require a client restart. The supplied proxy address is invalid. - L’adresse de serveur mandataire fournie est invalide. + The supplied proxy address is invalid. OverviewPage Form - Formulaire + Form The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. - Les renseignements affichés peuvent être obsolètes. Votre porte-monnaie se synchronise automatiquement avec le réseau Bitcoin dès qu’une connexion est établie, mais ce processus n’est pas encore achevé. + The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. Watch-only: - Juste-regarder : + Watch-only: Available: - Disponible : + Available: Your current spendable balance - Votre solde actuel disponible + Your current spendable balance Pending: - En attente : + Pending: Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance - Total des transactions qui doivent encore être confirmées et qui ne sont pas prises en compte dans le solde disponible + Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance Immature: - Immature : + Immature: Mined balance that has not yet matured - Le solde miné n’est pas encore mûr + Mined balance that has not yet matured Balances - Soldes + Balances Total: - Total : + Total: Your current total balance - Votre solde total actuel + Your current total balance Your current balance in watch-only addresses - Votre balance actuelle en adresses juste-regarder + Your current balance in watch-only addresses Spendable: - Disponible : + Spendable: Recent transactions - Transactions récentes + Recent transactions Unconfirmed transactions to watch-only addresses - Transactions non confirmées vers des adresses juste-regarder + Unconfirmed transactions to watch-only addresses Mined balance in watch-only addresses that has not yet matured - Le solde miné dans des adresses juste-regarder, qui n’est pas encore mûr + Mined balance in watch-only addresses that has not yet matured Current total balance in watch-only addresses - Solde total actuel dans des adresses juste-regarder + Current total balance in watch-only addresses Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. - Le mode privé est activé dans l’onglet Vue d’ensemble. Pour afficher les montants, décocher Paramètres -> Dissimuler les montants. + Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. PSBTOperationsDialog Dialog - Fenêtre de dialogue + Dialog Sign Tx - Signer la transaction + Sign Tx Broadcast Tx - Diffuser la transaction + Broadcast Tx Copy to Clipboard - Copier dans le presse-papiers + Copy to Clipboard Save... - Enregistrer… + Save... Close - Fermer + Close Failed to load transaction: %1 - Échec de chargement de la transaction : %1 + Failed to load transaction: %1 Failed to sign transaction: %1 - Échec de signature de la transaction : %1 + Failed to sign transaction: %1 Could not sign any more inputs. - Aucune autre entrée n’a pu être signée. + Could not sign any more inputs. Signed %1 inputs, but more signatures are still required. - %1 entrées ont été signées, mais il faut encore d’autres signatures. + Signed %1 inputs, but more signatures are still required. Signed transaction successfully. Transaction is ready to broadcast. - La transaction a été signée avec succès et est prête à être diffusée. + Signed transaction successfully. Transaction is ready to broadcast. Unknown error processing transaction. - Erreur inconnue lors de traitement de la transaction. + Unknown error processing transaction. Transaction broadcast successfully! Transaction ID: %1 - La transaction a été diffusée avec succès. ID de la transaction : %1 + Transaction broadcast successfully! Transaction ID: %1 Transaction broadcast failed: %1 - Échec de diffusion de la transaction : %1 + Transaction broadcast failed: %1 PSBT copied to clipboard. - La TBSP a été copiée dans le presse-papiers. + PSBT copied to clipboard. Save Transaction Data - Enregistrer les données de la transaction + Save Transaction Data Partially Signed Transaction (Binary) (*.psbt) - Transaction signée partiellement (fichier binaire) (*.psbt) + Partially Signed Transaction (Binary) (*.psbt) PSBT saved to disk. - La TBSP a été enregistrée sur le disque. + PSBT saved to disk. * Sends %1 to %2 - * envoie %1 à %2 + * Sends %1 to %2 Unable to calculate transaction fee or total transaction amount. - Impossible de calculer les frais de la transaction ou le montant total de la transaction. + Unable to calculate transaction fee or total transaction amount. Pays transaction fee: - Paye des frais de transaction de : + Pays transaction fee: Total Amount - Montant total + Total Amount or - ou + or Transaction has %1 unsigned inputs. - La transaction a %1 entrées non signées. + Transaction has %1 unsigned inputs. Transaction is missing some information about inputs. - Il manque des renseignements sur les entrées dans la transaction. + Transaction is missing some information about inputs. Transaction still needs signature(s). - La transaction a encore besoin d’une ou de signatures. + Transaction still needs signature(s). (But this wallet cannot sign transactions.) - (Mais ce porte-monnaie ne peut pas signer de transactions.) + (But this wallet cannot sign transactions.) (But this wallet does not have the right keys.) - (Mais ce porte-monnaie n’a pas les bonnes clés.) + (But this wallet does not have the right keys.) Transaction is fully signed and ready for broadcast. - La transaction est complètement signée et prête à être diffusée. + Transaction is fully signed and ready for broadcast. Transaction status is unknown. - L’état de la transaction est inconnu. + Transaction status is unknown. PaymentServer Payment request error - Erreur de demande de paiement + Payment request error Cannot start bitcoin: click-to-pay handler - Impossible de démarrer le gestionnaire de cliquer-pour-payer bitcoin: + Cannot start bitcoin: click-to-pay handler URI handling - Gestion des URI + URI handling 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. - 'bitcoin://' n’est pas une URI valide. Utilisez plutôt 'bitcoin:'. + 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. Cannot process payment request because BIP70 is not supported. - Il est impossible de traiter la demande de paiement, car BIP70 n’est pas pris en charge. + Cannot process payment request because BIP70 is not supported. Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. - En raison de failles de sécurité fréquentes dans BIP70, il est vivement recommandé d’ignorer les instructions de marchands qui demanderaient de changer de porte-monnaie. + Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. If you are receiving this error you should request the merchant provide a BIP21 compatible URI. - Si vous recevez cette erreur, vous devriez demander au marchand de vous fournir une URI compatible avec BIP21. + If you are receiving this error you should request the merchant provide a BIP21 compatible URI. Invalid payment address %1 - L’adresse de paiement est invalide %1 + Invalid payment address %1 URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters. - L’URI ne peut pas être analysée. Cela peut être causé par une adresse Bitcoin invalide ou par des paramètres d’URI mal formés. + URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters. Payment request file handling - Gestion des fichiers de demande de paiement + Payment request file handling PeerTableModel User Agent - Agent utilisateur + User Agent Node/Service - Nœud/service + Node/Service NodeId - ID de nœud + NodeId Ping @@ -1694,26 +1694,26 @@ Il n’est possible de signer qu’avec les adresses de type « legacy ». Sent - Envoyé + Sent Received - Reçu + Received QObject Amount - Montant + Amount Enter a Bitcoin address (e.g. %1) - Saisissez une adresse Bitcoin (p. ex. %1) + Enter a Bitcoin address (e.g. %1) %1 d - %1 j + %1 d %1 h @@ -1721,7 +1721,7 @@ Il n’est possible de signer qu’avec les adresses de type « legacy ». %1 m - %1 min + %1 m %1 s @@ -1729,11 +1729,11 @@ Il n’est possible de signer qu’avec les adresses de type « legacy ». None - Aucun + None N/A - N.D. + N/A %1 ms @@ -1741,7 +1741,7 @@ Il n’est possible de signer qu’avec les adresses de type « legacy ». %n second(s) - %n seconde%n secondes + %n second%n seconds %n minute(s) @@ -1749,197 +1749,197 @@ Il n’est possible de signer qu’avec les adresses de type « legacy ». %n hour(s) - %n heure%n heures + %n hour%n hours %n day(s) - %n jour%n jours + %n day%n days %n week(s) - %n semaine%n semaines + %n week%n weeks %1 and %2 - %1 et %2 + %1 and %2 %n year(s) - %n an%n ans + %n year%n years %1 B - %1 o + %1 B %1 KB - %1 Ko + %1 KB %1 MB - %1 Mo + %1 MB %1 GB - %1 Go + %1 GB Error: Specified data directory "%1" does not exist. - Erreur : Le répertoire de données indiqué « %1 » n’existe pas. + Error: Specified data directory "%1" does not exist. Error: Cannot parse configuration file: %1. - Erreur : Impossible d’analyser le fichier de configuration : %1. + Error: Cannot parse configuration file: %1. Error: %1 - Erreur : %1 + Error: %1 Error initializing settings: %1 - Erreur d’initialisation des paramètres : %1 + Error initializing settings: %1 %1 didn't yet exit safely... - %1 ne s’est pas encore arrêté en toute sécurité… + %1 didn't yet exit safely... unknown - inconnue + unknown QRImageWidget &Save Image... - &Enregistrer l’image… + &Save Image... &Copy Image - &Copier l’image + &Copy Image Resulting URI too long, try to reduce the text for label / message. - L’URI résultante est trop longue. Essayez de réduire le texte de l’étiquette ou du message. + Resulting URI too long, try to reduce the text for label / message. Error encoding URI into QR Code. - Erreur d’encodage de l’URI en code QR. + Error encoding URI into QR Code. QR code support not available. - La prise en charge des codes QR n’est pas proposée. + QR code support not available. Save QR Code - Enregistrer le code QR + Save QR Code PNG Image (*.png) - Image PNG (*.png) + PNG Image (*.png) RPCConsole N/A - N.D. + N/A Client version - Version du client + Client version &Information - &Renseignements + &Information General - Générales + General Using BerkeleyDB version - Version BerkeleyDB utilisée + Using BerkeleyDB version Datadir - Répertoire des données + Datadir To specify a non-default location of the data directory use the '%1' option. - Pour indiquer un emplacement du répertoire des données différent de celui par défaut, utiliser l’option ’%1’. + To specify a non-default location of the data directory use the '%1' option. Blocksdir - Répertoire des blocs + Blocksdir To specify a non-default location of the blocks directory use the '%1' option. - Pour indiquer un emplacement du répertoire des blocs différent de celui par défaut, utiliser l’option ’%1’. + To specify a non-default location of the blocks directory use the '%1' option. Startup time - Heure de démarrage + Startup time Network - Réseau + Network Name - Nom + Name Number of connections - Nombre de connexions + Number of connections Block chain - Chaîne de blocs + Block chain Memory Pool - Réserve de mémoire + Memory Pool Current number of transactions - Nombre actuel de transactions + Current number of transactions Memory usage - Utilisation de la mémoire + Memory usage Wallet: - Porte-monnaie : + Wallet: (none) - (aucun) + (none) &Reset - &Réinitialiser + &Reset Received - Reçus + Received Sent - Envoyés + Sent &Peers - &Pairs + &Peers Banned peers - Pairs bannis + Banned peers Select a peer to view detailed information. - Sélectionnez un pair pour afficher des renseignements détaillés. + Select a peer to view detailed information. Direction @@ -1951,51 +1951,51 @@ Il n’est possible de signer qu’avec les adresses de type « legacy ». Starting Block - Bloc de départ + Starting Block Synced Headers - En-têtes synchronisés + Synced Headers Synced Blocks - Blocs synchronisés + Synced Blocks The mapped Autonomous System used for diversifying peer selection. - Le système autonome mappé utilisé pour diversifier la sélection des pairs. + The mapped Autonomous System used for diversifying peer selection. Mapped AS - SA mappé + Mapped AS User Agent - Agent utilisateur + User Agent Node window - Fenêtre des nœuds + Node window Current block height - Hauteur du bloc courant + Current block height Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. - Ouvrir le fichier journal de débogage de %1 à partir du répertoire de données actuel. Cela peut prendre quelques secondes pour les fichiers journaux de grande taille. + Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. Decrease font size - Diminuer la taille de police + Decrease font size Increase font size - Augmenter la taille de police + Increase font size Permissions - Autorisations + Permissions Services @@ -2003,43 +2003,43 @@ Il n’est possible de signer qu’avec les adresses de type « legacy ». Connection Time - Temps de connexion + Connection Time Last Send - Dernier envoi + Last Send Last Receive - Dernière réception + Last Receive Ping Time - Temps de ping + Ping Time The duration of a currently outstanding ping. - La durée d’un ping en cours. + The duration of a currently outstanding ping. Ping Wait - Attente du ping + Ping Wait Min Ping - Ping min. + Min Ping Time Offset - Décalage temporel + Time Offset Last block time - Estampille temporelle du dernier bloc + Last block time &Open - &Ouvrir + &Open &Console @@ -2047,261 +2047,261 @@ Il n’est possible de signer qu’avec les adresses de type « legacy ». &Network Traffic - Trafic &réseau + &Network Traffic Totals - Totaux + Totals In: - Entrant : + In: Out: - Sortant : + Out: Debug log file - Fichier journal de débogage + Debug log file Clear console - Effacer la console + Clear console 1 &hour - 1 &heure + 1 &hour 1 &day - 1 &jour + 1 &day 1 &week - 1 &semaine + 1 &week 1 &year - 1 &an + 1 &year &Disconnect - &Déconnecter + &Disconnect Ban for - Bannir pendant + Ban for &Unban - &Réhabiliter + &Unban Welcome to the %1 RPC console. - Bienvenue sur la console RPC de %1. + Welcome to the %1 RPC console. Use up and down arrows to navigate history, and %1 to clear screen. - Utilisez les touches de déplacement pour naviguer dans l’historique et %1 pour effacer l’écran. + Use up and down arrows to navigate history, and %1 to clear screen. Type %1 for an overview of available commands. - Tapez %1 pour afficher un aperçu des commandes proposées. + Type %1 for an overview of available commands. For more information on using this console type %1. - Pour de plus amples renseignements sur l’utilisation de cette console, tapez %1. + For more information on using this console type %1. WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. - AVERTISSEMENT : Des fraudeurs se sont montrés actifs, demandant aux utilisateurs de taper des commandes ici, dérobant ainsi le contenu de leurs porte-monnaie. N’utilisez pas cette console sans une compréhension parfaite des conséquences d’une commande. + WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. Network activity disabled - L’activité réseau est désactivée. + Network activity disabled Executing command without any wallet - Exécution de la commande sans aucun porte-monnaie + Executing command without any wallet Executing command using "%1" wallet - Exécution de la commande en utilisant le porte-monnaie « %1 » + Executing command using "%1" wallet (node id: %1) - (ID de nœud : %1) + (node id: %1) via %1 - par %1 + via %1 never - jamais + never Inbound - Entrant + Inbound Outbound - Sortant + Outbound Unknown - Inconnu + Unknown ReceiveCoinsDialog &Amount: - &Montant : + &Amount: &Label: - &Étiquette : + &Label: &Message: - M&essage : + &Message: An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network. - Un message facultatif à joindre à la demande de paiement et qui sera affiché à l’ouverture de celle-ci. Note : Le message ne sera pas envoyé avec le paiement par le réseau Bitcoin. + An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network. An optional label to associate with the new receiving address. - Un étiquette facultative à associer à la nouvelle adresse de réception. + An optional label to associate with the new receiving address. Use this form to request payments. All fields are <b>optional</b>. - Utiliser ce formulaire pour demander des paiements. Tous les champs sont <b>facultatifs</b>. + Use this form to request payments. All fields are <b>optional</b>. An optional amount to request. Leave this empty or zero to not request a specific amount. - Un montant facultatif à demander. Ne saisissez rien ou un zéro pour ne pas demander de montant précis. + An optional amount to request. Leave this empty or zero to not request a specific amount. An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request. - Une étiquette facultative à associer à la nouvelle adresse de réception (utilisée par vous pour identifier une facture). Elle est aussi jointe à la demande de paiement. + An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request. An optional message that is attached to the payment request and may be displayed to the sender. - Un message facultatif joint à la demande de paiement et qui peut être présenté à l’expéditeur. + An optional message that is attached to the payment request and may be displayed to the sender. &Create new receiving address - &Créer une nouvelle adresse de réception + &Create new receiving address Clear all fields of the form. - Effacer tous les champs du formulaire. + Clear all fields of the form. Clear - Effacer + Clear Native segwit addresses (aka Bech32 or BIP-173) reduce your transaction fees later on and offer better protection against typos, but old wallets don't support them. When unchecked, an address compatible with older wallets will be created instead. - Les adresses SegWit natives (aussi appelées Bech32 ou BIP-173) réduisent vos frais de transaction ultérieurs et offrent une meilleure protection contre les erreurs de frappe, mais les anciens porte-monnaie ne les prennent pas en charge. Si cette option n’est pas cochée, une adresse compatible avec les anciens porte-monnaie sera plutôt créée. + Native segwit addresses (aka Bech32 or BIP-173) reduce your transaction fees later on and offer better protection against typos, but old wallets don't support them. When unchecked, an address compatible with older wallets will be created instead. Generate native segwit (Bech32) address - Générer une adresse SegWit native (Bech32) + Generate native segwit (Bech32) address Requested payments history - Historique des paiements demandés + Requested payments history Show the selected request (does the same as double clicking an entry) - Afficher la demande choisie (comme double-cliquer sur une entrée) + Show the selected request (does the same as double clicking an entry) Show - Afficher + Show Remove the selected entries from the list - Supprimer les entrées sélectionnées de la liste + Remove the selected entries from the list Remove - Supprimer + Remove Copy URI - Copier l’URI + Copy URI Copy label - Copier l’étiquette + Copy label Copy message - Copier le message + Copy message Copy amount - Copier le montant + Copy amount Could not unlock wallet. - Impossible de déverrouiller le porte-monnaie. + Could not unlock wallet. Could not generate new %1 address - Impossible de générer la nouvelle adresse %1 + Could not generate new %1 address ReceiveRequestDialog Request payment to ... - Demander un paiement à… + Request payment to ... Address: - Adresse : + Address: Amount: - Montant : + Amount: Label: - Étiquette : + Label: Message: - Message : + Message: Wallet: - Porte-monnaie : + Wallet: Copy &URI - Copier l’&URI + Copy &URI Copy &Address - Copier l’&adresse + Copy &Address &Save Image... - &Enregistrer l’image… + &Save Image... Request payment to %1 - Demande de paiement à %1 + Request payment to %1 Payment information - Renseignements de paiement + Payment information @@ -2312,7 +2312,7 @@ Il n’est possible de signer qu’avec les adresses de type « legacy ». Label - Étiquette + Label Message @@ -2320,377 +2320,377 @@ Il n’est possible de signer qu’avec les adresses de type « legacy ». (no label) - (aucune étiquette) + (no label) (no message) - (aucun message) + (no message) (no amount requested) - (aucun montant demandé) + (no amount requested) Requested - Demandée + Requested SendCoinsDialog Send Coins - Envoyer des pièces + Send Coins Coin Control Features - Fonctions de contrôle des pièces + Coin Control Features Inputs... - Entrants… + Inputs... automatically selected - choisi automatiquement + automatically selected Insufficient funds! - Les fonds sont insuffisants + Insufficient funds! Quantity: - Quantité : + Quantity: Bytes: - Octets : + Bytes: Amount: - Montant : + Amount: Fee: - Frais : + Fee: After Fee: - Après les frais : + After Fee: Change: - Monnaie : + Change: If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address. - Si cette option est activée et l’adresse de monnaie est vide ou invalide, la monnaie sera envoyée vers une adresse nouvellement générée. + If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address. Custom change address - Adresse personnalisée de monnaie + Custom change address Transaction Fee: - Frais de la transaction : + Transaction Fee: Choose... - Choisir… + Choose... Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain. - L’utilisation de l’option « fallbackfee » (frais de repli) peut avoir comme effet d’envoyer une transaction qui prendra plusieurs heures ou jours pour être confirmée ou qui ne le sera jamais. Envisagez de choisir vos frais manuellement ou attendez d’avoir validé l’intégralité de la chaîne. + Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain. Warning: Fee estimation is currently not possible. - Avertissement : L’estimation des frais n’est actuellement pas possible. + Warning: Fee estimation is currently not possible. Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size. Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis per kB" for a transaction size of 500 bytes (half of 1 kB) would ultimately yield a fee of only 50 satoshis. - Déterminer des frais personnalisés par Ko (1 000 octets) de la taille virtuelle de la transaction. + Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size. -Note : Les frais étant calculés par octet, des frais de « 100 satoshis par Ko » pour une transaction d’une taille de 500 octets (la moitié de 1 Ko) donneront des frais de seulement 50 satoshis. +Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis per kB" for a transaction size of 500 bytes (half of 1 kB) would ultimately yield a fee of only 50 satoshis. per kilobyte - Par kilo-octet + per kilobyte Hide - Cacher + Hide Recommended: - Recommandés : + Recommended: Custom: - Personnalisés : + Custom: (Smart fee not initialized yet. This usually takes a few blocks...) - (Les frais intelligents ne sont pas encore initialisés. Cela prend habituellement quelques blocs…) + (Smart fee not initialized yet. This usually takes a few blocks...) Send to multiple recipients at once - Envoyer à plusieurs destinataires à la fois + Send to multiple recipients at once Add &Recipient - Ajouter un &destinataire + Add &Recipient Clear all fields of the form. - Effacer tous les champs du formulaire. + Clear all fields of the form. Dust: - Poussière : + Dust: Hide transaction fee settings - Cacher les paramètres de frais de transaction + Hide transaction fee settings When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process. - Quand le volume des transactions est inférieur à l’espace dans les blocs, les mineurs et les nœuds de relais peuvent imposer des frais minimaux. Il est correct de payer ces frais minimaux, mais soyez conscient que cette transaction pourrait n’être jamais confirmée si la demande en transactions de bitcoins dépassait la capacité de traitement du réseau. + When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process. A too low fee might result in a never confirming transaction (read the tooltip) - Si les frais sont trop bas, cette transaction pourrait n’être jamais confirmée (lire l’infobulle) + A too low fee might result in a never confirming transaction (read the tooltip) Confirmation time target: - Estimation du délai de confirmation : + Confirmation time target: Enable Replace-By-Fee - Activer Remplacer-par-des-frais + Enable Replace-By-Fee With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk. - Avec Remplacer-par-des-frais (BIP-125), vous pouvez augmenter les frais d’une transaction après qu’elle est envoyée. Sans cela, des frais plus élevés peuvent être recommandés pour compenser le risque accru de retard transactionnel. + With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk. Clear &All - &Tout effacer + Clear &All Balance: - Solde : + Balance: Confirm the send action - Confirmer l’action d’envoi + Confirm the send action S&end - E&nvoyer + S&end Copy quantity - Copier la quantité + Copy quantity Copy amount - Copier le montant + Copy amount Copy fee - Copier les frais + Copy fee Copy after fee - Copier après les frais + Copy after fee Copy bytes - Copier les octets + Copy bytes Copy dust - Copier la poussière + Copy dust Copy change - Copier la monnaie + Copy change %1 (%2 blocks) - %1 (%2 blocs) + %1 (%2 blocks) Cr&eate Unsigned - Cr&éer une transaction non signée + Cr&eate Unsigned Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. - Crée une transaction Bitcoin signée partiellement (TBSP) à utiliser, par exemple, avec un porte-monnaie %1 hors ligne ou avec un porte-monnaie matériel compatible TBSP. + Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. from wallet '%1' - du porte-monnaie '%1' + from wallet '%1' %1 to '%2' - %1 à '%2' + %1 to '%2' %1 to %2 - %1 à %2 + %1 to %2 Do you want to draft this transaction? - Voulez-vous créer une ébauche de cette transaction ? + Do you want to draft this transaction? Are you sure you want to send? - Voulez-vous vraiment envoyer ? + Are you sure you want to send? Create Unsigned - Créer une transaction non signée + Create Unsigned Save Transaction Data - Enregistrer les données de la transaction + Save Transaction Data Partially Signed Transaction (Binary) (*.psbt) - Transaction signée partiellement (fichier binaire) (*.psbt) + Partially Signed Transaction (Binary) (*.psbt) PSBT saved - La TBSP a été enregistrée + PSBT saved or - ou + or You can increase the fee later (signals Replace-By-Fee, BIP-125). - Vous pouvez augmenter les frais ultérieurement (signale Remplacer-par-des-frais, BIP-125). + You can increase the fee later (signals Replace-By-Fee, BIP-125). Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. - Veuillez réviser votre proposition de transaction. Une transaction Bitcoin partiellement signée (TBSP) sera produite, que vous pourrez enregistrer ou copier puis signer avec, par exemple, un porte-monnaie %1 hors ligne ou avec un porte-monnaie matériel compatible TBSP. + Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. Please, review your transaction. - Veuillez vérifier votre transaction. + Please, review your transaction. Transaction fee - Frais de transaction + Transaction fee Not signalling Replace-By-Fee, BIP-125. - Ne signale pas Remplacer-par-des-frais, BIP-125. + Not signalling Replace-By-Fee, BIP-125. Total Amount - Montant total + Total Amount To review recipient list click "Show Details..." - Pour réviser la liste des destinataires, cliquez sur « Afficher les détails de la transaction… » + To review recipient list click "Show Details..." Confirm send coins - Confirmer l’envoi de pièces + Confirm send coins Confirm transaction proposal - Confirmer la proposition de transaction + Confirm transaction proposal Send - Envoyer + Send Watch-only balance: - Solde juste-regarder : + Watch-only balance: The recipient address is not valid. Please recheck. - L’adresse du destinataire est invalide. Veuillez la revérifier. + The recipient address is not valid. Please recheck. The amount to pay must be larger than 0. - Le montant à payer doit être supérieur à 0. + The amount to pay must be larger than 0. The amount exceeds your balance. - Le montant dépasse votre solde. + The amount exceeds your balance. The total exceeds your balance when the %1 transaction fee is included. - Le montant dépasse votre solde quand les frais de transaction de %1 sont inclus. + The total exceeds your balance when the %1 transaction fee is included. Duplicate address found: addresses should only be used once each. - Une adresse identique a été trouvée : chaque adresse ne devrait être utilisée qu’une fois. + Duplicate address found: addresses should only be used once each. Transaction creation failed! - Échec de création de la transaction + Transaction creation failed! A fee higher than %1 is considered an absurdly high fee. - Des frais supérieurs à %1 sont considérés comme ridiculement élevés. + A fee higher than %1 is considered an absurdly high fee. Payment request expired. - La demande de paiement a expiré + Payment request expired. Estimated to begin confirmation within %n block(s). - Il est estimé que la confirmation commencera dans %n bloc.Il est estimé que la confirmation commencera dans %n blocs. + Estimated to begin confirmation within %n block.Estimated to begin confirmation within %n blocks. Warning: Invalid Bitcoin address - Avertissement : L’adresse Bitcoin est invalide + Warning: Invalid Bitcoin address Warning: Unknown change address - Avertissement : L’adresse de monnaie est inconnue + Warning: Unknown change address Confirm custom change address - Confimer l’adresse personnalisée de monnaie + Confirm custom change address The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure? - L’adresse que vous avez sélectionnée pour la monnaie ne fait pas partie de ce porte-monnaie. Les fonds de ce porte-monnaie peuvent en partie ou en totalité être envoyés vers cette adresse. Êtes-vous certain ? + The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure? (no label) - (aucune étiquette) + (no label) SendCoinsEntry A&mount: - &Montant : + A&mount: Pay &To: - &Payer à : + Pay &To: &Label: - É&tiquette : + &Label: Choose previously used address - Choisir une adresse déjà utilisée + Choose previously used address The Bitcoin address to send the payment to - L’adresse Bitcoin à laquelle envoyer le paiement + The Bitcoin address to send the payment to Alt+A @@ -2698,7 +2698,7 @@ Note : Les frais étant calculés par octet, des frais de « 100 satoshis par Paste address from clipboard - Coller l’adresse du presse-papiers + Paste address from clipboard Alt+P @@ -2706,85 +2706,85 @@ Note : Les frais étant calculés par octet, des frais de « 100 satoshis par Remove this entry - Supprimer cette entrée + Remove this entry The amount to send in the selected unit - Le montant à envoyer dans l’unité sélectionnée + The amount to send in the selected unit The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. - Les frais seront déduits du montant envoyé. Le destinataire recevra moins de bitcoins que le montant saisi dans le champ de montant. Si plusieurs destinataires sont sélectionnés, les frais seront partagés également. + The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. S&ubtract fee from amount - S&oustraire les frais du montant + S&ubtract fee from amount Use available balance - Utiliser le solde disponible + Use available balance Message: - Message : + Message: This is an unauthenticated payment request. - Cette demande de paiement n’est pas authentifiée. + This is an unauthenticated payment request. This is an authenticated payment request. - Cette demande de paiement est authentifiée. + This is an authenticated payment request. Enter a label for this address to add it to the list of used addresses - Saisissez une étiquette pour cette adresse afin de l’ajouter à la liste d’adresses utilisées + Enter a label for this address to add it to the list of used addresses A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. - Un message qui était joint à l’URI bitcoin: et qui sera stocké avec la transaction pour référence. Note : Ce message ne sera pas envoyé par le réseau Bitcoin. + A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. Pay To: - Payer à : + Pay To: Memo: - Mémo : + Memo: ShutdownWindow %1 is shutting down... - Arrêt de %1… + %1 is shutting down... Do not shut down the computer until this window disappears. - Ne pas éteindre l’ordinateur jusqu’à la disparition de cette fenêtre. + Do not shut down the computer until this window disappears. SignVerifyMessageDialog Signatures - Sign / Verify a Message - Signatures – Signer/vérifier un message + Signatures - Sign / Verify a Message &Sign Message - &Signer un message + &Sign Message You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. - Vous pouvez signer des messages ou des accords avec vos adresses pour prouver que vous pouvez recevoir des bitcoins à ces dernières. Faites attention de ne rien signer de vague ou au hasard, car des attaques d’hameçonnage pourraient essayer de vous faire signer avec votre identité afin de l’usurper. Ne signez que des déclarations entièrement détaillées et avec lesquelles vous êtes d’accord. + You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. The Bitcoin address to sign the message with - L’adresse Bitcoin avec laquelle signer le message + The Bitcoin address to sign the message with Choose previously used address - Choisir une adresse déjà utilisée + Choose previously used address Alt+A @@ -2792,7 +2792,7 @@ Note : Les frais étant calculés par octet, des frais de « 100 satoshis par Paste address from clipboard - Coller une adresse du presse-papiers + Paste address from clipboard Alt+P @@ -2800,7 +2800,7 @@ Note : Les frais étant calculés par octet, des frais de « 100 satoshis par Enter the message you want to sign here - Saisissez ici le message que vous désirez signer + Enter the message you want to sign here Signature @@ -2808,153 +2808,153 @@ Note : Les frais étant calculés par octet, des frais de « 100 satoshis par Copy the current signature to the system clipboard - Copier la signature actuelle dans le presse-papiers + Copy the current signature to the system clipboard Sign the message to prove you own this Bitcoin address - Signer le message afin de prouver que vous détenez cette adresse Bitcoin + Sign the message to prove you own this Bitcoin address Sign &Message - Signer le &message + Sign &Message Reset all sign message fields - Réinitialiser tous les champs de signature de message + Reset all sign message fields Clear &All - &Tout effacer + Clear &All &Verify Message - &Vérifier un message + &Verify Message Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! - Saisissez ci-dessous l’adresse du destinataire, le message (assurez-vous de copier fidèlement les retours à la ligne, les espaces, les tabulations, etc.) et la signature pour vérifier le message. Faites attention à ne pas déduire davantage de la signature que ce qui est contenu dans le message signé même, pour éviter d’être trompé par une attaque de l’intercepteur. Notez que cela ne fait que prouver que le signataire reçoit avec l’adresse et ne peut pas prouver la provenance d’une transaction. + Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! The Bitcoin address the message was signed with - L’adresse Bitcoin avec laquelle le message a été signé + The Bitcoin address the message was signed with The signed message to verify - Le message signé à vérifier + The signed message to verify The signature given when the message was signed - La signature donnée quand le message a été signé + The signature given when the message was signed Verify the message to ensure it was signed with the specified Bitcoin address - Vérifier le message pour s’assurer qu’il a été signé avec l’adresse Bitcoin indiquée + Verify the message to ensure it was signed with the specified Bitcoin address Verify &Message - Vérifier le &message + Verify &Message Reset all verify message fields - Réinitialiser tous les champs de vérification de message + Reset all verify message fields Click "Sign Message" to generate signature - Cliquez sur « Signer le message » pour générer la signature + Click "Sign Message" to generate signature The entered address is invalid. - L’adresse saisie est invalide. + The entered address is invalid. Please check the address and try again. - Veuillez vérifier l’adresse et ressayer. + Please check the address and try again. The entered address does not refer to a key. - L’adresse saisie ne fait pas référence à une clé. + The entered address does not refer to a key. Wallet unlock was cancelled. - Le déverrouillage du porte-monnaie a été annulé. + Wallet unlock was cancelled. No error - Aucune erreur + No error Private key for the entered address is not available. - La clé privée pour l’adresse saisie n’est pas disponible. + Private key for the entered address is not available. Message signing failed. - Échec de signature du message. + Message signing failed. Message signed. - Le message a été signé. + Message signed. The signature could not be decoded. - La signature n’a pu être décodée. + The signature could not be decoded. Please check the signature and try again. - Veuillez vérifier la signature et ressayer. + Please check the signature and try again. The signature did not match the message digest. - La signature ne correspond pas au condensé du message. + The signature did not match the message digest. Message verification failed. - Échec de vérification du message. + Message verification failed. Message verified. - Le message a été vérifié. + Message verified. TrafficGraphWidget KB/s - Ko/s + KB/s TransactionDesc Open for %n more block(s) - Ouvert pendant encore %n blocOuvert pendant encore %n blocs + Open for %n more blockOpen for %n more blocks Open until %1 - Ouvert jusqu’à %1 + Open until %1 conflicted with a transaction with %1 confirmations - est en conflit avec une transaction ayant %1 confirmations + conflicted with a transaction with %1 confirmations 0/unconfirmed, %1 - 0/non confirmées, %1 + 0/unconfirmed, %1 in memory pool - dans la réserve de mémoire + in memory pool not in memory pool - pas dans la réserve de mémoire + not in memory pool abandoned - abandonnée + abandoned %1/unconfirmed - %1/non confirmée + %1/unconfirmed %1 confirmations @@ -2962,7 +2962,7 @@ Note : Les frais étant calculés par octet, des frais de « 100 satoshis par Status - État + Status Date @@ -2974,63 +2974,63 @@ Note : Les frais étant calculés par octet, des frais de « 100 satoshis par Generated - Générée + Generated From - De + From unknown - inconnue + unknown To - À + To own address - votre adresse + own address watch-only - juste-regarder + watch-only label - étiquette + label Credit - Crédit + Credit matures in %n more block(s) - arrivera à maturité dans %n blocarrivera à maturité dans %n blocs + matures in %n more blockmatures in %n more blocks not accepted - refusée + not accepted Debit - Débit + Debit Total debit - Débit total + Total debit Total credit - Crédit total + Total credit Transaction fee - Frais de transaction + Transaction fee Net amount - Montant net + Net amount Message @@ -3038,39 +3038,39 @@ Note : Les frais étant calculés par octet, des frais de « 100 satoshis par Comment - Commentaire + Comment Transaction ID - ID de la transaction + Transaction ID Transaction total size - Taille totale de la transaction + Transaction total size Transaction virtual size - Taille virtuelle de la transaction + Transaction virtual size Output index - Index des sorties + Output index (Certificate was not verified) - (Le certificat n’a pas été vérifié) + (Certificate was not verified) Merchant - Marchand + Merchant Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. - Les pièces générées doivent mûrir pendant %1 blocs avant de pouvoir être dépensées. Quand vous avez généré ce bloc, il a été diffusé sur le réseau pour être ajouté à la chaîne de blocs. Si son intégration à la chaîne échoue, son état sera modifié en « refusée » et il ne sera pas possible de le dépenser. Cela peut arriver occasionnellement si un autre nœud génère un bloc à quelques secondes du vôtre. + Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. Debug information - Renseignements de débogage + Debug information Transaction @@ -3078,30 +3078,30 @@ Note : Les frais étant calculés par octet, des frais de « 100 satoshis par Inputs - Entrées + Inputs Amount - Montant + Amount true - vrai + true false - faux + false TransactionDescDialog This pane shows a detailed description of the transaction - Ce panneau affiche une description détaillée de la transaction + This pane shows a detailed description of the transaction Details for %1 - Détails de %1 + Details for %1 @@ -3116,288 +3116,288 @@ Note : Les frais étant calculés par octet, des frais de « 100 satoshis par Label - Étiquette + Label Open for %n more block(s) - Ouvert pendant encore %n blocOuvert pendant encore %n blocs + Open for %n more blockOpen for %n more blocks Open until %1 - Ouvert jusqu’à %1 + Open until %1 Unconfirmed - Non confirmée + Unconfirmed Abandoned - Abandonnée + Abandoned Confirming (%1 of %2 recommended confirmations) - Confirmation (%1 sur %2 confirmations recommandées) + Confirming (%1 of %2 recommended confirmations) Confirmed (%1 confirmations) - Confirmée (%1 confirmations) + Confirmed (%1 confirmations) Conflicted - En conflit + Conflicted Immature (%1 confirmations, will be available after %2) - Immature (%1 confirmations, sera disponible après %2) + Immature (%1 confirmations, will be available after %2) Generated but not accepted - Générée mais refusée + Generated but not accepted Received with - Reçue avec + Received with Received from - Reçue de + Received from Sent to - Envoyée à + Sent to Payment to yourself - Paiement à vous-même + Payment to yourself Mined - Miné + Mined watch-only - juste-regarder + watch-only (n/a) - (n.d) + (n/a) (no label) - (aucune étiquette) + (no label) Transaction status. Hover over this field to show number of confirmations. - État de la transaction. Survoler ce champ avec la souris pour afficher le nombre de confirmations. + Transaction status. Hover over this field to show number of confirmations. Date and time that the transaction was received. - Date et heure de réception de la transaction. + Date and time that the transaction was received. Type of transaction. - Type de transaction. + Type of transaction. Whether or not a watch-only address is involved in this transaction. - Une adresse juste-regarder est-elle ou non impliquée dans cette transaction. + Whether or not a watch-only address is involved in this transaction. User-defined intent/purpose of the transaction. - Intention/but de la transaction défini par l’utilisateur. + User-defined intent/purpose of the transaction. Amount removed from or added to balance. - Le montant a été ajouté ou soustrait du solde. + Amount removed from or added to balance. TransactionView All - Toutes + All Today - Aujourd’hui + Today This week - Cette semaine + This week This month - Ce mois + This month Last month - Le mois dernier + Last month This year - Cette année + This year Range... - Plage… + Range... Received with - Reçue avec + Received with Sent to - Envoyée à + Sent to To yourself - À vous-même + To yourself Mined - Miné + Mined Other - Autres + Other Enter address, transaction id, or label to search - Saisissez l’adresse, l’ID de transaction ou l’étiquette à chercher + Enter address, transaction id, or label to search Min amount - Montant min. + Min amount Abandon transaction - Abandonner la transaction + Abandon transaction Increase transaction fee - Augmenter les frais de transaction + Increase transaction fee Copy address - Copier l’adresse + Copy address Copy label - Copier l’étiquette + Copy label Copy amount - Copier le montant + Copy amount Copy transaction ID - Copier l’ID de la transaction + Copy transaction ID Copy raw transaction - Copier la transaction brute + Copy raw transaction Copy full transaction details - Copier tous les détails de la transaction + Copy full transaction details Edit label - Modifier l’étiquette + Edit label Show transaction details - Afficher les détails de la transaction + Show transaction details Export Transaction History - Exporter l’historique transactionnel + Export Transaction History Comma separated file (*.csv) - Valeurs séparées par des virgules (*.csv) + Comma separated file (*.csv) Confirmed - Confirmée + Confirmed Watch-only - Juste-regarder + Watch-only Date - Date + Date Type - Type + Type Label - Étiquette + Label Address - Adresse + Address ID - ID + ID Exporting Failed - Échec d’exportation + Exporting Failed There was an error trying to save the transaction history to %1. - Une erreur est survenue lors de l’enregistrement de l’historique transactionnel vers %1. + There was an error trying to save the transaction history to %1. Exporting Successful - L’exportation est réussie + Exporting Successful The transaction history was successfully saved to %1. - L’historique transactionnel a été enregistré avec succès vers %1. + The transaction history was successfully saved to %1. Range: - Plage : + Range: to - à + to UnitDisplayStatusBarControl Unit to show amounts in. Click to select another unit. - Unité d’affichage des montants. Cliquez pour choisir une autre unité. + Unit to show amounts in. Click to select another unit. WalletController Close wallet - Fermer le porte-monnaie + Close wallet Are you sure you wish to close the wallet <i>%1</i>? - Voulez-vous vraiment fermer le porte-monnaie <i>%1</i> ? + Are you sure you wish to close the wallet <i>%1</i>? Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. - Fermer le porte-monnaie trop longtemps peut impliquer de devoir resynchroniser la chaîne entière si l’élagage est activé. + Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. Close all wallets - Fermer tous les porte-monnaie + Close all wallets Are you sure you wish to close all wallets? - Voulez-vous vraiment fermer tous les porte-monnaie ? + Are you sure you wish to close all wallets? @@ -3406,692 +3406,692 @@ Note : Les frais étant calculés par octet, des frais de « 100 satoshis par No wallet has been loaded. Go to File > Open Wallet to load a wallet. - OR - - Aucun porte-monnaie n’a été chargé. -Accédez à Fichier > Ouvrir un porte-monnaie pour en charger un. -– OU – + No wallet has been loaded. +Go to File > Open Wallet to load a wallet. +- OR - Create a new wallet - Créer un nouveau porte-monnaie + Create a new wallet WalletModel Send Coins - Envoyer des pièces + Send Coins Fee bump error - Erreur d’augmentation des frais + Fee bump error Increasing transaction fee failed - Échec d’augmentation des frais de transaction + Increasing transaction fee failed Do you want to increase the fee? - Voulez-vous augmenter les frais ? + Do you want to increase the fee? Do you want to draft a transaction with fee increase? - Voulez-vous créer une ébauche de transaction avec une augmentation des frais ? + Do you want to draft a transaction with fee increase? Current fee: - Frais actuels : + Current fee: Increase: - Augmentation : + Increase: New fee: - Nouveaux frais : + New fee: Confirm fee bump - Confirmer l’augmentation des frais + Confirm fee bump Can't draft transaction. - Impossible de créer une ébauche de la transaction. + Can't draft transaction. PSBT copied - La TBPS a été copiée + PSBT copied Can't sign transaction. - Impossible de signer la transaction. + Can't sign transaction. Could not commit transaction - Impossible de valider la transaction + Could not commit transaction default wallet - porte-monnaie par défaut + default wallet WalletView &Export - &Exporter + &Export Export the data in the current tab to a file - Exporter les données de l’onglet actuel vers un fichier + Export the data in the current tab to a file Error - Erreur + Error Unable to decode PSBT from clipboard (invalid base64) - Impossible de décoder la TBSP du presse-papiers (le Base64 est invalide) + Unable to decode PSBT from clipboard (invalid base64) Load Transaction Data - Charger les données de la transaction + Load Transaction Data Partially Signed Transaction (*.psbt) - Transaction signée partiellement (*.psbt) + Partially Signed Transaction (*.psbt) PSBT file must be smaller than 100 MiB - Le fichier de la TBSP doit être inférieur à 100 Mio + PSBT file must be smaller than 100 MiB Unable to decode PSBT - Impossible de décoder la TBSP + Unable to decode PSBT Backup Wallet - Sauvegarder le porte-monnaie + Backup Wallet Wallet Data (*.dat) - Données du porte-monnaie (*.dat) + Wallet Data (*.dat) Backup Failed - Échec de la sauvegarde + Backup Failed There was an error trying to save the wallet data to %1. - Une erreur est survenue lors de l’enregistrement des données du porte-monnaie vers %1. + There was an error trying to save the wallet data to %1. Backup Successful - La sauvegarde est réussie + Backup Successful The wallet data was successfully saved to %1. - Les données du porte-monnaie ont été enregistrées avec succès vers %1 + The wallet data was successfully saved to %1. Cancel - Annuler + Cancel bitcoin-core Distributed under the MIT software license, see the accompanying file %s or %s - Distribué sous la licence MIT d’utilisation d’un logiciel, consultez le fichier joint %s ou %s + Distributed under the MIT software license, see the accompanying file %s or %s Prune configured below the minimum of %d MiB. Please use a higher number. - L’élagage est configuré au-dessous du minimum de %d Mio. Veuillez utiliser un nombre plus élevé. + Prune configured below the minimum of %d MiB. Please use a higher number. Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) - Élagage : la dernière synchronisation de porte-monnaie va par-delà les données élaguées. Vous devez -reindex (réindexer, télécharger de nouveau toute la chaîne de blocs en cas de nœud élagué) + Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) Pruning blockstore... - Élagage du magasin de blocs… + Pruning blockstore... Unable to start HTTP server. See debug log for details. - Impossible de démarrer le serveur HTTP. Consultez le journal de débogage pour plus de précisions. + Unable to start HTTP server. See debug log for details. The %s developers - Les développeurs de %s + The %s developers Cannot obtain a lock on data directory %s. %s is probably already running. - Impossible d’obtenir un verrou sur le répertoire de données %s. %s fonctionne probablement déjà. + Cannot obtain a lock on data directory %s. %s is probably already running. Cannot provide specific connections and have addrman find outgoing connections at the same. - Il est impossible de fournir des connexions particulières et en même temps demander à addrman de trouver les connexions sortantes. + Cannot provide specific connections and have addrman find outgoing connections at the same. Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. - Erreur de lecture de %s. Toutes les clés ont été lues correctement, mais les données de la transaction ou les entrées du carnet d’adresses sont peut-être manquantes ou incorrectes. + Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. More than one onion bind address is provided. Using %s for the automatically created Tor onion service. - Plus d’une adresse onion de liaison est indiquée. %s sera utilisée pour le service onion de Tor créé automatiquement. + More than one onion bind address is provided. Using %s for the automatically created Tor onion service. Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. - Veuillez vérifier que l’heure et la date de votre ordinateur sont justes. Si votre horloge n’est pas à l’heure, %s ne fonctionnera pas correctement. + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. Please contribute if you find %s useful. Visit %s for further information about the software. - Si vous trouvez %s utile, veuillez y contribuer. Pour de plus de précisions sur le logiciel, rendez-vous sur %s. + Please contribute if you find %s useful. Visit %s for further information about the software. SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s - SQLiteDatabase : échec de préparation de l’instruction pour récupérer la version du schéma de porte-monnaie sqlite : %s + SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s - SQLiteDatabase : échec de préparation de l’instruction pour récupérer l’ID de l’application : %s + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported - SQLiteDatabase : la version %d du schéma de porte-monnaie sqlite est inconnue. Seule la version %d est prise en charge + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct - La base de données de blocs comprend un bloc qui semble provenir du futur. Cela pourrait être causé par la date et l’heure erronées de votre ordinateur. Ne reconstruisez la base de données de blocs que si vous êtes certain que la date et l’heure de votre ordinateur sont justes. + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct This is a pre-release test build - use at your own risk - do not use for mining or merchant applications - Ceci est une préversion de test - son utilisation est entièrement à vos risques - ne pas l’utiliser pour miner ou pour des applications marchandes + This is a pre-release test build - use at your own risk - do not use for mining or merchant applications This is the transaction fee you may discard if change is smaller than dust at this level - Les frais de transaction que vous pouvez ignorer si la monnaie rendue est inférieure à la poussière à ce niveau + This is the transaction fee you may discard if change is smaller than dust at this level Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. - Impossible de relire les blocs. Vous devrez reconstruire la base de données en utilisant -reindex-chainstate. + Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain - Impossible de rebobiner la base de données à un état préfourche. Vous devrez retélécharger la chaîne de blocs + Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. - Avertissement : Le réseau ne semble pas totalement d’accord. Certains mineurs semblent éprouver des problèmes. + Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. - Avertissement : Nous ne semblons pas être en accord complet avec nos pairs. Une mise à niveau pourrait être nécessaire pour vous ou pour d’autres nœuds du réseau. + Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. -maxmempool must be at least %d MB - -maxmempool doit être d’au moins %d Mo + -maxmempool must be at least %d MB Cannot resolve -%s address: '%s' - Impossible de résoudre l’adresse -%s : « %s » + Cannot resolve -%s address: '%s' Change index out of range - L’index de changement est hors échelle + Change index out of range Config setting for %s only applied on %s network when in [%s] section. - Paramètre de configuration pour %s qui est seulement appliqué sur le réseau %s si situé dans la section [%s]. + Config setting for %s only applied on %s network when in [%s] section. Copyright (C) %i-%i - Tous droits réservés (C) %i-%i + Copyright (C) %i-%i Corrupted block database detected - Une base de données de blocs corrompue a été détectée + Corrupted block database detected Could not find asmap file %s - Le fichier asmap %s est introuvable + Could not find asmap file %s Could not parse asmap file %s - Impossible d’analyser le fichier asmap %s + Could not parse asmap file %s Do you want to rebuild the block database now? - Voulez-vous reconstruire la base de données de blocs maintenant ? + Do you want to rebuild the block database now? Error initializing block database - Erreur d’initialisation de la base de données de blocs + Error initializing block database Error initializing wallet database environment %s! - Erreur d’initialisation de l’environnement de la base de données du porte-monnaie %s. + Error initializing wallet database environment %s! Error loading %s - Erreur de chargement de %s + Error loading %s Error loading %s: Private keys can only be disabled during creation - Erreur de chargement de %s : les clés privées ne peuvent être désactivées qu’à la création. + Error loading %s: Private keys can only be disabled during creation Error loading %s: Wallet corrupted - Erreur de chargement de %s : porte-monnaie corrompu + Error loading %s: Wallet corrupted Error loading %s: Wallet requires newer version of %s - Erreur de chargement de %s : le porte-monnaie exige une version plus récente de %s + Error loading %s: Wallet requires newer version of %s Error loading block database - Erreur de chargement de la base de données de blocs + Error loading block database Error opening block database - Erreur d’ouverture de la base de données de blocs + Error opening block database Failed to listen on any port. Use -listen=0 if you want this. - Échec d’écoute sur un port quelconque. Utiliser -listen=0 si vous le voulez. + Failed to listen on any port. Use -listen=0 if you want this. Failed to rescan the wallet during initialization - Échec de réanalyse du porte-monnaie lors de l’initialisation + Failed to rescan the wallet during initialization Failed to verify database - Échec de vérification de la base de données + Failed to verify database Ignoring duplicate -wallet %s. - Ignore -wallet %s en double. + Ignoring duplicate -wallet %s. Importing... - Importation… + Importing... Incorrect or no genesis block found. Wrong datadir for network? - Bloc de genèse incorrect ou introuvable. Mauvais datadir pour le réseau ? + Incorrect or no genesis block found. Wrong datadir for network? Initialization sanity check failed. %s is shutting down. - L’initialisation du test de cohérence a échoué. %s est en cours de fermeture. + Initialization sanity check failed. %s is shutting down. Invalid P2P permission: '%s' - L’autorisation P2P est invalide : « %s » + Invalid P2P permission: '%s' Invalid amount for -%s=<amount>: '%s' - Le montant est invalide pour -%s=<amount> : « %s » + Invalid amount for -%s=<amount>: '%s' Invalid amount for -discardfee=<amount>: '%s' - Le montant est invalide pour -discardfee=<amount> : « %s » + Invalid amount for -discardfee=<amount>: '%s' Invalid amount for -fallbackfee=<amount>: '%s' - Le montant est invalide pour -fallbackfee=<amount> : « %s » + Invalid amount for -fallbackfee=<amount>: '%s' SQLiteDatabase: Failed to execute statement to verify database: %s - SQLiteDatabase : échec d’exécution de l’instruction pour vérifier la base de données : %s + SQLiteDatabase: Failed to execute statement to verify database: %s SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s - SQLiteDatabase : échec de récupération de la version du schéma de porte-monnaie sqlite : %s + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s SQLiteDatabase: Failed to fetch the application id: %s - SQLiteDatabase : échec de récupération de l’ID de l’application : %s + SQLiteDatabase: Failed to fetch the application id: %s SQLiteDatabase: Failed to prepare statement to verify database: %s - SQLiteDatabase : échec de préparation de l’instruction pour vérifier la base de données : %s + SQLiteDatabase: Failed to prepare statement to verify database: %s SQLiteDatabase: Failed to read database verification error: %s - SQLiteDatabase : échec de lecture de l’erreur de vérification de la base de données : %s + SQLiteDatabase: Failed to read database verification error: %s SQLiteDatabase: Unexpected application id. Expected %u, got %u - SQLiteDatabase : l’ID de l’application est inattendu. %u était attendu, %u été retourné + SQLiteDatabase: Unexpected application id. Expected %u, got %u Specified blocks directory "%s" does not exist. - Le répertoire des blocs indiqué « %s » n’existe pas. + Specified blocks directory "%s" does not exist. Unknown address type '%s' - Le type d’adresse est inconnu « %s » + Unknown address type '%s' Unknown change type '%s' - Le type de monnaie est inconnu « %s » + Unknown change type '%s' Upgrading txindex database - Mise à niveau de la base de données txindex + Upgrading txindex database Loading P2P addresses... - Chargement des adresses P2P… + Loading P2P addresses... Loading banlist... - Chargement de la liste d’interdiction… + Loading banlist... Not enough file descriptors available. - Pas assez de descripteurs de fichiers proposés. + Not enough file descriptors available. Prune cannot be configured with a negative value. - L’élagage ne peut pas être configuré avec une valeur négative. + Prune cannot be configured with a negative value. Prune mode is incompatible with -txindex. - Le mode élagage n’est pas compatible avec -txindex. + Prune mode is incompatible with -txindex. Replaying blocks... - Relecture des blocs… + Replaying blocks... Rewinding blocks... - Rebobinage des blocs… + Rewinding blocks... The source code is available from %s. - Le code source se trouve sur %s. + The source code is available from %s. Transaction fee and change calculation failed - Échec du calcul des frais de transaction et de la monnaie + Transaction fee and change calculation failed Unable to bind to %s on this computer. %s is probably already running. - Impossible de se lier à %s sur cet ordinateur. %s fonctionne probablement déjà. + Unable to bind to %s on this computer. %s is probably already running. Unable to generate keys - Impossible de générer les clés + Unable to generate keys Unsupported logging category %s=%s. - Catégorie de journalisation non prise en charge %s=%s. + Unsupported logging category %s=%s. Upgrading UTXO database - Mise à niveau de la base de données UTXO + Upgrading UTXO database User Agent comment (%s) contains unsafe characters. - Le commentaire de l’agent utilisateur (%s) comporte des caractères dangereux. + User Agent comment (%s) contains unsafe characters. Verifying blocks... - Vérification des blocs… + Verifying blocks... Wallet needed to be rewritten: restart %s to complete - Le porte-monnaie devait être réécrit : redémarrer %s pour terminer l’opération. + Wallet needed to be rewritten: restart %s to complete Error: Listening for incoming connections failed (listen returned error %s) - Erreur : L’écoute des connexions entrantes a échoué (l’écoute a retourné l’erreur %s) + Error: Listening for incoming connections failed (listen returned error %s) %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. - %s est corrompu. Essayez l’outil bitcoin-wallet pour le sauver ou restaurez une sauvegarde. + %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. - Impossible de mettre à niveau un porte-monnaie divisé non-HD sans mettre à niveau pour prendre en charge la réserve de clés antérieure à la division. Veuillez utiliser la version 169900 ou ne pas indiquer de version. + Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) - Le montant est invalide pour -maxtxfee=<amount> : « %s » (doit être au moins les frais minrelay de %s pour prévenir le blocage des transactions) + Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) The transaction amount is too small to send after the fee has been deducted - Le montant de la transaction est trop bas pour être envoyé une fois que les frais ont été déduits + The transaction amount is too small to send after the fee has been deducted This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet - Cette erreur pourrait survenir si ce porte-monnaie n’avait pas été fermé proprement et s’il avait été chargé en dernier avec une nouvelle version de Berkeley DB. Si c’est le cas, veuillez utiliser le logiciel qui a chargé ce porte-monnaie en dernier. + This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. - Les frais maximaux de transaction que vous payez (en plus des frais habituels) afin de prioriser une dépense non partielle plutôt qu’une sélection normale de pièces. + This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. - Une adresse de monnaie est nécessaire à la transaction, mais nous ne pouvons pas la générer. Veuillez d’abord appeler « keypoolrefill ». + Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain - Vous devez reconstruire la base de données en utilisant -reindex afin de revenir au mode sans élagage. Cela retéléchargera complètement la chaîne de blocs. + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain A fatal internal error occurred, see debug.log for details - Une erreur interne fatale est survenue. Consultez debug.log pour plus de précisions + A fatal internal error occurred, see debug.log for details Cannot set -peerblockfilters without -blockfilterindex. - Impossible de définir -peerblockfilters sans -blockfilterindex + Cannot set -peerblockfilters without -blockfilterindex. Disk space is too low! - L’espace disque est trop faible ! + Disk space is too low! Error reading from database, shutting down. - Erreur de lecture de la base de données, fermeture en cours. + Error reading from database, shutting down. Error upgrading chainstate database - Erreur de mise à niveau de la base de données d’état de la chaîne + Error upgrading chainstate database Error: Disk space is low for %s - Erreur : Il reste peu d’espace disque sur %s + Error: Disk space is low for %s Error: Keypool ran out, please call keypoolrefill first - Erreur : La réserve de clés est épuisée, veuillez d’abord appeler « keypoolrefill » + Error: Keypool ran out, please call keypoolrefill first Fee rate (%s) is lower than the minimum fee rate setting (%s) - Le taux de frais (%s) est inférieur au taux minimal de frais défini (%s) + Fee rate (%s) is lower than the minimum fee rate setting (%s) Invalid -onion address or hostname: '%s' - L’adresse -onion ou le nom d’hôte sont invalides : « %s » + Invalid -onion address or hostname: '%s' Invalid -proxy address or hostname: '%s' - L’adresse -proxy ou le nom d’hôte sont invalides : « %s » + Invalid -proxy address or hostname: '%s' Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) - Le montant est invalide pour -paytxfee=<montant> : « %s » (doit être au moins %s) + Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) Invalid netmask specified in -whitelist: '%s' - Le masque réseau indiqué dans -whitelist est invalide : « %s » + Invalid netmask specified in -whitelist: '%s' Need to specify a port with -whitebind: '%s' - Un port doit être précisé avec -whitebind : « %s » + Need to specify a port with -whitebind: '%s' No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. - Aucun serveur mandataire n’est indiqué. Utilisez -proxy=<ip> ou -proxy=<ip:port> + No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. Prune mode is incompatible with -blockfilterindex. - Le mode élagage n’est pas compatible avec -blockfilterindex. + Prune mode is incompatible with -blockfilterindex. Reducing -maxconnections from %d to %d, because of system limitations. - Réduction de -maxconnections de %d à %d, due aux restrictions du système + Reducing -maxconnections from %d to %d, because of system limitations. Section [%s] is not recognized. - La section [%s] n’est pas reconnue. + Section [%s] is not recognized. Signing transaction failed - Échec de signature de la transaction + Signing transaction failed Specified -walletdir "%s" does not exist - Le -walletdir indiqué « %s» n’existe pas + Specified -walletdir "%s" does not exist Specified -walletdir "%s" is a relative path - Le -walletdir indiqué « %s » est un chemin relatif + Specified -walletdir "%s" is a relative path Specified -walletdir "%s" is not a directory - Le -walletdir indiqué « %s » n’est pas un répertoire + Specified -walletdir "%s" is not a directory The specified config file %s does not exist - Le fichier de configuration indiqué %s n’existe pas + The specified config file %s does not exist The transaction amount is too small to pay the fee - Le montant de la transaction est trop bas pour que les frais soient payés + The transaction amount is too small to pay the fee This is experimental software. - Ce logiciel est expérimental. + This is experimental software. Transaction amount too small - Le montant de la transaction est trop bas + Transaction amount too small Transaction too large - La transaction est trop grosse + Transaction too large Unable to bind to %s on this computer (bind returned error %s) - Impossible de se lier à %s sur cet ordinateur (bind a retourné l’erreur %s) + Unable to bind to %s on this computer (bind returned error %s) Unable to create the PID file '%s': %s - Impossible de créer le fichier PID « %s » : %s + Unable to create the PID file '%s': %s Unable to generate initial keys - Impossible de générer les clés initiales + Unable to generate initial keys Unknown -blockfilterindex value %s. - La valeur -blockfilterindex %s est inconnue. + Unknown -blockfilterindex value %s. Verifying wallet(s)... - Vérification des porte-monnaie… + Verifying wallet(s)... Warning: unknown new rules activated (versionbit %i) - Avertissement : De nouvelles règles inconnues ont été activées (bit de version %i). + Warning: unknown new rules activated (versionbit %i) -maxtxfee is set very high! Fees this large could be paid on a single transaction. - La valeur -maxtxfee est très élevée. Des frais aussi élevés pourraient être payés en une seule transaction. + -maxtxfee is set very high! Fees this large could be paid on a single transaction. This is the transaction fee you may pay when fee estimates are not available. - Il s’agit des frais de transaction que vous pourriez payer si aucune estimation de frais n’est proposée. + This is the transaction fee you may pay when fee estimates are not available. Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments. - La taille totale de la chaîne de version de réseau (%i) dépasse la longueur maximale (%i). Réduire le nombre ou la taille des commentaires uacomments. + Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments. %s is set very high! - La valeur %s est très élevée. + %s is set very high! Starting network threads... - Démarrage des processus réseau… + Starting network threads... The wallet will avoid paying less than the minimum relay fee. - Le porte-monnaie évitera de payer moins que les frais minimaux de relais. + The wallet will avoid paying less than the minimum relay fee. This is the minimum transaction fee you pay on every transaction. - Il s’agit des frais minimaux que vous payez pour chaque transaction. + This is the minimum transaction fee you pay on every transaction. This is the transaction fee you will pay if you send a transaction. - Il s’agit des frais minimaux que vous payez si vous envoyez une transaction. + This is the transaction fee you will pay if you send a transaction. Transaction amounts must not be negative - Les montants transactionnels ne doivent pas être négatifs + Transaction amounts must not be negative Transaction has too long of a mempool chain - La chaîne de la réserve de mémoire de la transaction est trop longue + Transaction has too long of a mempool chain Transaction must have at least one recipient - La transaction doit comporter au moins un destinataire + Transaction must have at least one recipient Unknown network specified in -onlynet: '%s' - Un réseau inconnu est indiqué dans -onlynet : « %s » + Unknown network specified in -onlynet: '%s' Insufficient funds - Fonds insuffisants + Insufficient funds Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable -fallbackfee. - Échec d’estimation des frais. L’option de frais de repli est désactivée. Attendez quelques blocs ou activez -fallbackfee. + Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable -fallbackfee. Warning: Private keys detected in wallet {%s} with disabled private keys - Avertissement : Des clés privées ont été détectées dans le porte-monnaie {%s} dont les clés privées sont désactivées. + Warning: Private keys detected in wallet {%s} with disabled private keys Cannot write to data directory '%s'; check permissions. - Impossible d’écrire dans le répertoire de données « %s » ; veuillez vérifier les droits. + Cannot write to data directory '%s'; check permissions. Loading block index... - Chargement de l’index des blocs… + Loading block index... Loading wallet... - Chargement du porte-monnaie… + Loading wallet... Cannot downgrade wallet - Impossible de revenir à une version inférieure du porte-monnaie + Cannot downgrade wallet Rescanning... - Réanalyse… + Rescanning... Done loading - Chargement terminé + Done loading \ No newline at end of file diff --git a/src/qt/locale/bitcoin_gl_ES.ts b/src/qt/locale/bitcoin_gl_ES.ts index 0e47f2661..8639be9a2 100644 --- a/src/qt/locale/bitcoin_gl_ES.ts +++ b/src/qt/locale/bitcoin_gl_ES.ts @@ -1440,6 +1440,14 @@ PSBTOperationsDialog + + Save... + Gardar... + + + Close + Pechar + Total Amount Total Amount diff --git a/src/qt/locale/bitcoin_he.ts b/src/qt/locale/bitcoin_he.ts index 53b360341..48d4935f3 100644 --- a/src/qt/locale/bitcoin_he.ts +++ b/src/qt/locale/bitcoin_he.ts @@ -3,7 +3,7 @@ AddressBookPage Right-click to edit address or label - לעריכת הכתובת או התווית יש ללחוץ על הלחצן הימני בעכבר + לחיצה על הלחצן הימני בעכבר לעריכת הכתובת או התווית Create a new address @@ -31,7 +31,7 @@ Enter address or label to search - נא למלא כתובת או תווית לחפש + נא לספק כתובת או תווית לחיפוש Export the data in the current tab to a file @@ -67,13 +67,13 @@ These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. - אלו הן כתובות הביטקוין שלך לשליחת תשלומים. חשוב לבדוק את הסכום ואת הכתובת המקבלת לפני שליחת מטבעות. + אלה כתובות הביטקוין שלך לשליחת תשלומים. חשוב לבדוק את הסכום ואת הכתובת המקבלת לפני שליחת מטבעות. These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. Signing is only possible with addresses of the type 'legacy'. - אלו כתובת ביטקוין שלך לקבלת תשלומים. ניתן להשתמש בכפתור 'יצירת כתובת קבלה חדשה' בלשונית הקבלה ליצירת כתובות חדשות. -חתימה אפשרית רק עבור כתובות מסוג 'legacy'. + אלה כתובת הביטקוין שלך לקבלת תשלומים. ניתן להשתמש בכפתור „יצירת כתובת קבלה חדשה” בלשונית הקבלה ליצירת כתובות חדשות. +חתימה אפשרית רק עבור כתובות מסוג „legacy”. &Copy Address @@ -97,7 +97,7 @@ Signing is only possible with addresses of the type 'legacy'. Exporting Failed - יצוא נכשל + הייצוא נכשל There was an error trying to save the address list to %1. Please try again. @@ -116,7 +116,7 @@ Signing is only possible with addresses of the type 'legacy'. (no label) - (ללא תוית) + (ללא תווית) @@ -127,7 +127,7 @@ Signing is only possible with addresses of the type 'legacy'. Enter passphrase - יש להזין סיסמה + נא לספק סיסמה New passphrase @@ -135,7 +135,7 @@ Signing is only possible with addresses of the type 'legacy'. Repeat new passphrase - חזור על הסיסמה החדשה + נא לחזור על הסיסמה החדשה Show passphrase @@ -167,15 +167,15 @@ Signing is only possible with addresses of the type 'legacy'. Confirm wallet encryption - אשר הצפנת ארנק + אישור הצפנת הארנק Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! - אזהרה: אם אתה מצפין את הארנק ומאבד את הסיסמה, אתה <b>תאבד את כל הביטקוינים שלך</b>! + אזהרה: הצפנת הארנק שלך ושיכחת הסיסמה <b>תגרום לאיבוד כל הביטקוינים שלך</b>! Are you sure you wish to encrypt your wallet? - האם אתה בטוח שברצונך להצפין את הארנק? + האם אכן ברצונך להצפין את הארנק שלך? Wallet encrypted @@ -183,12 +183,11 @@ Signing is only possible with addresses of the type 'legacy'. Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. - הקש סיסמה חדשה לארנק. -השתמש בסיסמה הכוללת עשרה או יותר תווים אקראים, או שמונה או יותר מילים. + נא לתת סיסמה חדשה לארנק.<br/>נא להשתמש בסיסמה הכוללת <b>עשרה תווים אקראיים ומעלה</b>, או ש<b>מונה מילים ומעלה</b>. Enter the old passphrase and new passphrase for the wallet. - הקש את הסיסמא הישנה והחדשה לארנק. + נא לספק את הסיסמה הישנה ולתת סיסמה חדשה לארנק. Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. @@ -228,7 +227,7 @@ Signing is only possible with addresses of the type 'legacy'. The passphrase entered for the wallet decryption was incorrect. - הסיסמה שהוכנסה לפענוח הארנק שגויה. + הסיסמה שסיפקת לפענוח הארנק שגויה. Wallet decryption failed @@ -240,7 +239,7 @@ Signing is only possible with addresses of the type 'legacy'. Warning: The Caps Lock key is on! - אזהרה: מקש ה־Caps Lock פעיל! + אזהרה: מקש Caps Lock פעיל! @@ -270,11 +269,11 @@ Signing is only possible with addresses of the type 'legacy'. Show general overview of wallet - הצג סקירה כללית של הארנק + הצגת סקירה כללית של הארנק &Transactions - &העברות + ע&סקאות Browse transaction history @@ -322,7 +321,7 @@ Signing is only possible with addresses of the type 'legacy'. &Change Passphrase... - &שנה סיסמה... + &שינוי סיסמה... Open &URI... @@ -342,7 +341,7 @@ Signing is only possible with addresses of the type 'legacy'. Click to disable network activity. - לחץ כדי לנטרל את פעילות הרשת. + יש ללחוץ כדי לנטרל את פעילות הרשת. Network activity disabled. @@ -350,7 +349,7 @@ Signing is only possible with addresses of the type 'legacy'. Click to enable network activity again. - לחץ כדי לחדש את פעילות הרשת. + יש ללחוץ כדי להפעיל את פעילות הרשת מחדש. Syncing Headers (%1%)... @@ -825,7 +824,7 @@ Signing is only possible with addresses of the type 'legacy'. CreateWalletActivity Creating Wallet <b>%1</b>... - יצירת הארנק <b>%1</b> מתבצעת... + כעת ביצירת הארנק <b>%1</b> ... Create wallet failed @@ -868,7 +867,7 @@ Signing is only possible with addresses of the type 'legacy'. Make Blank Wallet - צור ארנק ריק + יצירת ארנק ריק Use descriptors for scriptPubKey management @@ -919,7 +918,7 @@ Signing is only possible with addresses of the type 'legacy'. The entered address "%1" is not a valid Bitcoin address. - הכתובת שהוקלדה „%1” היא אינה כתובת ביטקוין תקנית. + הכתובת שסיפקת "%1" אינה כתובת ביטקוין תקנית. Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address. @@ -927,7 +926,7 @@ Signing is only possible with addresses of the type 'legacy'. The entered address "%1" is already in the address book with label "%2". - הכתובת שהוכנסה "%1" כבר נמצאת בפנקס הכתובות עם התווית "%2". + הכתובת שסיפקת "%1" כבר נמצאת בפנקס הכתובות עם התווית "%2". Could not unlock wallet. @@ -1099,7 +1098,7 @@ Signing is only possible with addresses of the type 'legacy'. Hide - הסתר + הסתרה Esc @@ -1141,7 +1140,7 @@ Signing is only possible with addresses of the type 'legacy'. Opening Wallet <b>%1</b>... - פותח ארנק<b>%1</b>... + כעת בפתיחת הארנק <b>%1</b> ... @@ -1180,7 +1179,7 @@ Signing is only possible with addresses of the type 'legacy'. Hide the icon from the system tray. - הסתר את סמל מגש המערכת + הסתרת סמל מגש המערכת &Hide tray icon @@ -1550,7 +1549,7 @@ Signing is only possible with addresses of the type 'legacy'. Transaction broadcast successfully! Transaction ID: %1 - העיסקה שודרה בהצלחה! מזהה העיסקה: %1 + העִסקה שודרה בהצלחה! מזהה העִסקה: %1 Transaction broadcast failed: %1 @@ -1637,7 +1636,7 @@ Signing is only possible with addresses of the type 'legacy'. 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. - '//:bitcoin' אינה כתובת URI תקינה. השתמשו במקום ב ':bitcoin'. + '//:bitcoin' אינה כתובת תקנית. נא להשתמש ב־"bitcoin:‎"‏ במקום. Cannot process payment request because BIP70 is not supported. @@ -1699,7 +1698,7 @@ Signing is only possible with addresses of the type 'legacy'. Enter a Bitcoin address (e.g. %1) - נא להזין כתובת ביטקוין (למשל: %1) + נא לספק כתובת ביטקוין (למשל: %1) %1 d @@ -1751,7 +1750,7 @@ Signing is only possible with addresses of the type 'legacy'. %1 and %2 - %1 ו%2 + %1 וגם %2 %n year(s) @@ -1818,7 +1817,7 @@ Signing is only possible with addresses of the type 'legacy'. QR code support not available. - תמיכה בקוד QR לא זמינה. + קוד QR אינו נתמך. Save QR Code @@ -2105,7 +2104,7 @@ Signing is only possible with addresses of the type 'legacy'. WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. - אזהרה! ישנם רמאים הנוהגים לשכנע משתמשים להקליד פקודות כאן ועל ידי כך לגנוב את תכולת הארנק שלהם. אל תשתמש במסוף הבקרה מבלי שאתה מבין באופן מלא את המשמעות של הפקודה! + אזהרה! ישנם רמאים הנוהגים לשכנע משתמשים להקליד פקודות כאן ועל ידי כך לגנוב את תכולת הארנק שלהם. אין להשתמש במסוף הבקרה אם אינך מבין באופן מלא את המשמעות של פקודה. Network activity disabled @@ -2409,7 +2408,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Hide - הסתר + הסתרה Recommended: @@ -2521,11 +2520,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p from wallet '%1' - מתוך ארנק '%1' + מתוך ארנק "%1" %1 to '%2' - %1 אל '%2' + %1 אל "%2" %1 to %2 @@ -2537,7 +2536,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Are you sure you want to send? - לשלוח? + האם אכן ברצונך לשלוח? Create Unsigned @@ -2569,7 +2568,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Please, review your transaction. - אנא עברו שוב על העסקה שלכם. + נא לעבור על העסקה שלך, בבקשה. Transaction fee @@ -2593,7 +2592,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Confirm transaction proposal - אישור הצעת עיסקה + אישור הצעת עסקה Send @@ -2637,7 +2636,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Estimated to begin confirmation within %n block(s). - האמדן לתחילת ביצוע אימות בתוך בלוק %n האמדן לתחילת ביצוע אימות בתוך %n בלוקיםהאמדן לתחילת ביצוע אימות בתוך %n בלוקיםC. + Estimated to begin confirmation within %n block.Estimated to begin confirmation within %n blocks.Estimated to begin confirmation within %n blocks.Estimated to begin confirmation within %n blocks. Warning: Invalid Bitcoin address @@ -2653,7 +2652,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure? - הכתובת שבחרת עבור ההחלפה אינה חלק מארנק זה. כל ההסכום שבארנק שלך עשוי להישלח לכתובת זו. מקובל עליך? + הכתובת שבחרת עבור ההחלפה אינה חלק מארנק זה. כל הסכום שבארנק שלך עשוי להישלח לכתובת זו. האם אכן זהו רצונך? (no label) @@ -2704,7 +2703,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. - העמלה תנוכה מהסכום שנשלח. הנמען יקבל פחות ביטקוינים ממה שהזנת בשדה הסכום. אם נבחרו מספר נמענים, העמלה תחולק באופן שווה. + העמלה תנוכה מהסכום שנשלח. הנמען יקבל פחות ביטקוינים ממה שסיפקת בשדה הסכום. אם נבחרו מספר נמענים, העמלה תחולק באופן שווה. S&ubtract fee from amount @@ -2728,7 +2727,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Enter a label for this address to add it to the list of used addresses - יש להזין תווית עבור כתובת זו כדי להוסיף אותה לרשימת הכתובות בשימוש + יש לתת תווית לכתובת זו כדי להוסיף אותה לרשימת הכתובות בשימוש A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. @@ -2766,11 +2765,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. - באפשרותך לחתום על הודעות/הסכמים באמצעות הכתובות שלך, כדי להוכיח שאתה יכול לקבל את הביטקוינים הנשלחים אליהן. היזהר לא לחתום על תוכן עמום או אקראי, מכיוון שתקיפות פישינג עשויות לנסות לגנוב את הזהות שלך. חתום רק על הצהרות מפורטות שאתה מסכים להן. + אפשר לחתום על הודעות/הסכמים באמצעות הכתובות שלך, כדי להוכיח שבאפשרותך לקבל את הביטקוינים הנשלחים אליהן. יש להיזהר ולא לחתום על תוכן עמום או אקראי, מכיוון שתקיפות דיוג עשויות לנסות לגנוב את זהותך. יש לחתום רק על הצהרות מפורטות שהנך מסכים/ה להן. The Bitcoin address to sign the message with - כתובת הביטקוין אתה לחתום אתה את ההודעה + כתובת הביטקוין איתה לחתום את ההודעה Choose previously used address @@ -2790,7 +2789,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Enter the message you want to sign here - יש להוסיף כאן את ההודעה עליה לחתום + נא לספק את ההודעה עליה ברצונך לחתום כאן Signature @@ -2822,11 +2821,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! - יש להזין את כתובת הנמען, ההודעה (נא לוודא שמעתיקים במדויק את תווי קפיצות השורה, רווחים, טאבים וכדומה). והחותימה מתחת אשר מאמתת את ההודעה. יש להזהר שלא לקרוא לתוך החתימה יותר מאשר בהודעה החתומה עצמה, כדי להמנע מניצול לרעה של המתווך שבדרך. יש לשים לב שהדגר רק מוכיח שהצד החותם מקבל עם הכתובת. הדבר אינו מוכיח משלוח כלשהו של עיסקה! + יש להזין את כתובת הנמען, ההודעה (נא לוודא שהעתקת במדויק את תווי קפיצות השורה, רווחים, טאבים וכדומה). והחתימה מתחת אשר מאמתת את ההודעה. יש להיזהר שלא לקרוא לתוך החתימה יותר מאשר בהודעה החתומה עצמה, כדי להימנע מניצול לרעה של המתווך שבדרך. יש לשים לב שהדבר רק מוכיח שהצד החותם מקבל עם הכתובת. הדבר אינו מוכיח משלוח כלשהו של עסקה! The Bitcoin address the message was signed with - כתובת הביטקוין שאתה נחתמה ההודעה + כתובת הביטקוין שאיתה נחתמה ההודעה The signed message to verify @@ -2854,7 +2853,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p The entered address is invalid. - הכתובת שהוזנה שגויה. + הכתובת שסיפקת שגויה. Please check the address and try again. @@ -2862,7 +2861,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p The entered address does not refer to a key. - הכתובת שהוזנה לא מתייחסת למפתח. + הכתובת שסיפקת לא מתייחסת למפתח. Wallet unlock was cancelled. @@ -2874,7 +2873,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Private key for the entered address is not available. - המפתח הפרטי לכתובת שהוכנסה אינו זמין. + המפתח הפרטי לכתובת שסיפקת אינו זמין. Message signing failed. @@ -3253,7 +3252,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Enter address, transaction id, or label to search - הכנס כתובת, מזהה העברה, או תווית לחיפוש + נא לספק כתובת, מזהה העברה, או תווית לחיפוש Min amount @@ -3669,6 +3668,14 @@ Go to File > Open Wallet to load a wallet. Failed to rescan the wallet during initialization כשל בסריקה מחדש של הארנק בזמן האתחול + + Failed to verify database + אימות מסד הנתונים נכשל + + + Ignoring duplicate -wallet %s. + מתעלם ארנק-כפול %s. + Importing... מתבצע יבוא… @@ -3697,6 +3704,10 @@ Go to File > Open Wallet to load a wallet. Invalid amount for -fallbackfee=<amount>: '%s' סכום שגוי עבור ‎-fallbackfee=<amount>:‏ '%s' + + SQLiteDatabase: Failed to fetch the application id: %s + ‏SQLiteDatabase: כשל במשיכת מזהה היישום: %s + Specified blocks directory "%s" does not exist. התיקיה שהוגדרה "%s" לא קיימת. @@ -3771,7 +3782,7 @@ Go to File > Open Wallet to load a wallet. Verifying blocks... - באימות הבלוקים… + כעת באימות הבלוקים… Wallet needed to be rewritten: restart %s to complete @@ -3921,11 +3932,11 @@ Go to File > Open Wallet to load a wallet. Unable to create the PID file '%s': %s - לא ניתן ליצור את קובץ PID‏ '%s':‏ %s + אין אפשרות ליצור את קובץ PID‏ '%s':‏ %s Unable to generate initial keys - לא ניתן ליצור מפתחות ראשוניים + אין אפשרות ליצור מפתחות ראשוניים Unknown -blockfilterindex value %s. @@ -3933,7 +3944,7 @@ Go to File > Open Wallet to load a wallet. Verifying wallet(s)... - באימות הארנק(ים)... + כעת באימות הארנק(ים)... Warning: unknown new rules activated (versionbit %i) @@ -4009,7 +4020,7 @@ Go to File > Open Wallet to load a wallet. Loading wallet... - הארנק בטעינה… + כעת בטעינת הארנק… Cannot downgrade wallet @@ -4017,11 +4028,11 @@ Go to File > Open Wallet to load a wallet. Rescanning... - סריקה מחדש… + כעת בסריקה מחדש… Done loading - טעינה הושלמה + הטעינה הושלמה \ No newline at end of file diff --git a/src/qt/locale/bitcoin_hi.ts b/src/qt/locale/bitcoin_hi.ts index adf2b3fb5..7e71f7fa8 100644 --- a/src/qt/locale/bitcoin_hi.ts +++ b/src/qt/locale/bitcoin_hi.ts @@ -69,6 +69,12 @@ These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. भुगतान करने के लिए ये आपके बिटकॉइन एड्रेस हैं। कॉइन भेजने से पहले राशि और गंतव्य एड्रेस की हमेशा जाँच करें + + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + भुगतान प्राप्त करने के लिए ये आपके Bitcoin पते हैं। नए पते बनाने के लिए प्राप्त टैब में 'नया पता प्राप्त करें' बटन का उपयोग करें। +हस्ताक्षर केवल 'विरासत' प्रकार के पते से संभव है। + &Copy Address &एड्रेस कॉपी करें @@ -314,6 +320,10 @@ &Change Passphrase... और पासफ़्रेज़ बदलें + + Open &URI... + खोलें एवं एकसामन संसाधन को दर्शाएँ । + Create Wallet... वॉलेट बनाएं @@ -382,6 +392,18 @@ Show or hide the main Window मुख्य विंडो को दिखाएं या छिपाएं + + Encrypt the private keys that belong to your wallet + अपने वॉलेट के निजी कुंजी को इन्क्रिप्ट करें + + + Sign messages with your Bitcoin addresses to prove you own them + अपने बीटकॉइन पता से घोषणा को साइन करके इसे अपना होने का साबित करें + + + Verify messages to ensure they were signed with specified Bitcoin addresses + Verify messages to ensure they were signed with specified Bitcoin addresses + &File &फाइल @@ -398,10 +420,42 @@ Tabs toolbar टैबस टूलबार + + Request payments (generates QR codes and bitcoin: URIs) + Request payments (generates QR codes and bitcoin: URIs) + + + Show the list of used sending addresses and labels + Show the list of used sending addresses and labels + + + Show the list of used receiving addresses and labels + Show the list of used receiving addresses and labels + + + &Command-line options + &Command-line options + + + Indexing blocks on disk... + Indexing blocks on disk... + + + Processing blocks on disk... + Processing blocks on disk... + %1 behind %1 पीछे + + Last received block was generated %1 ago. + Last received block was generated %1 ago. + + + Transactions after this will not yet be visible. + Transactions after this will not yet be visible. + Error भूल @@ -418,6 +472,30 @@ Up to date नवीनतम + + Node window + Node window + + + Open node debugging and diagnostic console + Open node debugging and diagnostic console + + + &Sending addresses + &पते भेजे जा रहे हैं + + + &Receiving addresses + &पते प्राप्त किए जा रहे हैं + + + Open a bitcoin: URI + Open a bitcoin: URI + + + Open Wallet + बटुआ खोलें + Open a wallet बटुआ खोलें @@ -434,6 +512,94 @@ Close All Wallets... सारे बटुएँ बंद करें... + + Close all wallets + सारे बटुएँ बंद करें + + + Show the %1 help message to get a list with possible Bitcoin command-line options + Show the %1 help message to get a list with possible Bitcoin command-line options + + + default wallet + default wallet + + + No wallets available + No wallets available + + + &Window + &Window + + + Minimize + Minimize + + + Zoom + Zoom + + + Main Window + Main Window + + + %1 client + %1 client + + + Connecting to peers... + Connecting to peers... + + + Catching up... + Catching up... + + + Error: %1 + Error: %1 + + + Warning: %1 + Warning: %1 + + + Date: %1 + + Date: %1 + + + + Amount: %1 + + Amount: %1 + + + + Wallet: %1 + + Wallet: %1 + + + + Type: %1 + + Type: %1 + + + + Label: %1 + + Label: %1 + + + + Address: %1 + + Address: %1 + + Sent transaction भेजी ट्रांजक्शन @@ -442,6 +608,18 @@ Incoming transaction प्राप्त हुई ट्रांजक्शन + + HD key generation is <b>enabled</b> + HD key generation is <b>enabled</b> + + + HD key generation is <b>disabled</b> + HD key generation is <b>disabled</b> + + + Private key <b>disabled</b> + Private key <b>disabled</b> + Wallet is <b>encrypted</b> and currently <b>unlocked</b> वॉलेट एन्क्रिप्टेड है तथा अभी लॉक्ड नहीं है @@ -453,26 +631,126 @@ CoinControlDialog + + Coin Selection + Coin Selection + Quantity: मात्रा : + + Bytes: + Bytes: + Amount: राशि : + + Fee: + Fee: + + + Dust: + Dust: + + + After Fee: + After Fee: + + + Change: + Change: + + + (un)select all + (un)select all + + + Tree mode + Tree mode + + + List mode + List mode + Amount राशि + + Received with label + Received with label + + + Received with address + Received with address + Date taareek + + Confirmations + Confirmations + Confirmed पक्का + + Copy address + Copy address + + + Copy label + Copy label + + + Copy amount + Copy amount + + + Copy transaction ID + Copy transaction ID + + + Lock unspent + Lock unspent + + + Unlock unspent + Unlock unspent + + + Copy quantity + Copy quantity + + + Copy fee + Copy fee + + + Copy after fee + Copy after fee + + + Copy bytes + Copy bytes + + + Copy dust + Copy dust + + + Copy change + Copy change + + + (%1 locked) + (%1 locked) + yes हाँ @@ -481,16 +759,80 @@ no नहीं + + This label turns red if any recipient receives an amount smaller than the current dust threshold. + This label turns red if any recipient receives an amount smaller than the current dust threshold. + + + Can vary +/- %1 satoshi(s) per input. + Can vary +/- %1 satoshi(s) per input. + (no label) (कोई परचा नहीं ) - + + change from %1 (%2) + change from %1 (%2) + + + (change) + (change) + + CreateWalletActivity - + + Creating Wallet <b>%1</b>... + Creating Wallet <b>%1</b>... + + + Create wallet failed + Create wallet failed + + + Create wallet warning + Create wallet warning + + CreateWalletDialog + + Create Wallet + Create Wallet + + + Wallet Name + Wallet Name + + + Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. + Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. + + + Encrypt Wallet + Encrypt Wallet + + + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. + + + Disable Private Keys + Disable Private Keys + + + Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. + Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. + + + Make Blank Wallet + Make Blank Wallet + + + Create + Create + EditAddressDialog @@ -502,27 +844,155 @@ &Label &लेबल + + The label associated with this address list entry + The label associated with this address list entry + + + The address associated with this address list entry. This can only be modified for sending addresses. + The address associated with this address list entry. This can only be modified for sending addresses. + &Address &पता - + + New sending address + New sending address + + + Edit receiving address + Edit receiving address + + + Edit sending address + Edit sending address + + + The entered address "%1" is not a valid Bitcoin address. + The entered address "%1" is not a valid Bitcoin address. + + + Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address. + Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address. + + + The entered address "%1" is already in the address book with label "%2". + The entered address "%1" is already in the address book with label "%2". + + + Could not unlock wallet. + Could not unlock wallet. + + + New key generation failed. + New key generation failed. + + FreespaceChecker - + + A new data directory will be created. + A new data directory will be created. + + + name + name + + + Directory already exists. Add %1 if you intend to create a new directory here. + Directory already exists. Add %1 if you intend to create a new directory here. + + + Path already exists, and is not a directory. + Path already exists, and is not a directory. + + + Cannot create data directory here. + Cannot create data directory here. + + HelpMessageDialog version संस्करण - + + About %1 + About %1 + + + Command-line options + Command-line options + + Intro + + Welcome + Welcome + + + Welcome to %1. + Welcome to %1. + + + As this is the first time the program is launched, you can choose where %1 will store its data. + As this is the first time the program is launched, you can choose where %1 will store its data. + + + When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. + When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. + + + Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. + Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. + + + This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. + This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. + + + If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. + If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. + + + Use the default data directory + Use the default data directory + + + Use a custom data directory: + Use a custom data directory: + Bitcoin बीटकोइन + + Discard blocks after verification, except most recent %1 GB (prune) + Discard blocks after verification, except most recent %1 GB (prune) + + + At least %1 GB of data will be stored in this directory, and it will grow over time. + At least %1 GB of data will be stored in this directory, and it will grow over time. + + + Approximately %1 GB of data will be stored in this directory. + Approximately %1 GB of data will be stored in this directory. + + + %1 will download and store a copy of the Bitcoin block chain. + %1 will download and store a copy of the Bitcoin block chain. + + + The wallet will also be stored in this directory. + The wallet will also be stored in this directory. + + + Error: Specified data directory "%1" cannot be created. + Error: Specified data directory "%1" cannot be created. + Error भूल @@ -534,23 +1004,303 @@ Form फार्म - + + Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. + Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. + + + Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network. + Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network. + + + Number of blocks left + Number of blocks left + + + Unknown... + Unknown... + + + Last block time + Last block time + + + Progress + Progress + + + Progress increase per hour + Progress increase per hour + + + calculating... + calculating... + + + Estimated time left until synced + Estimated time left until synced + + + Hide + Hide + + + Esc + Esc + + + %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. + %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. + + + Unknown. Syncing Headers (%1, %2%)... + Unknown. Syncing Headers (%1, %2%)... + + OpenURIDialog - + + Open bitcoin URI + Open bitcoin URI + + + URI: + URI: + + OpenWalletActivity - + + Open wallet failed + Open wallet failed + + + Open wallet warning + Open wallet warning + + + default wallet + default wallet + + + Opening Wallet <b>%1</b>... + Opening Wallet <b>%1</b>... + + OptionsDialog Options विकल्प + + &Main + &Main + + + Automatically start %1 after logging in to the system. + Automatically start %1 after logging in to the system. + + + &Start %1 on system login + &Start %1 on system login + + + Size of &database cache + Size of &database cache + + + Number of script &verification threads + Number of script &verification threads + + + IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1) + IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1) + + + Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type. + Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type. + + + Hide the icon from the system tray. + Hide the icon from the system tray. + + + &Hide tray icon + &Hide tray icon + + + Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu. + Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu. + + + Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. + Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. + + + Open the %1 configuration file from the working directory. + Open the %1 configuration file from the working directory. + + + Open Configuration File + Open Configuration File + + + Reset all client options to default. + Reset all client options to default. + + + &Reset Options + &Reset Options + + + &Network + &Network + + + Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. + Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. + + + Prune &block storage to + Prune &block storage to + + + GB + GB + + + Reverting this setting requires re-downloading the entire blockchain. + Reverting this setting requires re-downloading the entire blockchain. + + + MiB + MiB + + + (0 = auto, <0 = leave that many cores free) + (0 = auto, <0 = leave that many cores free) + W&allet वॉलेट + + Expert + Expert + + + Enable coin &control features + Enable coin &control features + + + If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed. + If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed. + + + &Spend unconfirmed change + &Spend unconfirmed change + + + Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled. + Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled. + + + Map port using &UPnP + Map port using &UPnP + + + Accept connections from outside. + Accept connections from outside. + + + Allow incomin&g connections + Allow incomin&g connections + + + Connect to the Bitcoin network through a SOCKS5 proxy. + Connect to the Bitcoin network through a SOCKS5 proxy. + + + &Connect through SOCKS5 proxy (default proxy): + &Connect through SOCKS5 proxy (default proxy): + + + Proxy &IP: + Proxy &IP: + + + &Port: + &Port: + + + Port of the proxy (e.g. 9050) + Port of the proxy (e.g. 9050) + + + Used for reaching peers via: + Used for reaching peers via: + + + IPv4 + IPv4 + + + IPv6 + IPv6 + + + Tor + Tor + + + &Window + &Window + + + Show only a tray icon after minimizing the window. + Show only a tray icon after minimizing the window. + + + &Minimize to the tray instead of the taskbar + &Minimize to the tray instead of the taskbar + + + M&inimize on close + M&inimize on close + + + &Display + &Display + + + User Interface &language: + User Interface &language: + + + The user interface language can be set here. This setting will take effect after restarting %1. + The user interface language can be set here. This setting will take effect after restarting %1. + + + &Unit to show amounts in: + &Unit to show amounts in: + + + Choose the default subdivision unit to show in the interface and when sending coins. + Choose the default subdivision unit to show in the interface and when sending coins. + + + Whether to show coin control features or not. + Whether to show coin control features or not. + + + &Third party transaction URLs + &Third party transaction URLs + + + Options set in this dialog are overridden by the command line or in the configuration file: + Options set in this dialog are overridden by the command line or in the configuration file: + &OK &ओके @@ -559,38 +1309,282 @@ &Cancel &कैन्सल + + default + default + + + none + none + + + Confirm options reset + Confirm options reset + + + Client restart required to activate changes. + Client restart required to activate changes. + + + Client will be shut down. Do you want to proceed? + Client will be shut down. Do you want to proceed? + + + Configuration options + Configuration options + + + The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file. + The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file. + Error भूल - + + The configuration file could not be opened. + The configuration file could not be opened. + + + This change would require a client restart. + This change would require a client restart. + + + The supplied proxy address is invalid. + The supplied proxy address is invalid. + + OverviewPage Form फार्म + + The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. + The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. + + + Watch-only: + Watch-only: + + + Available: + Available: + + + Your current spendable balance + Your current spendable balance + + + Pending: + Pending: + + + Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance + Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance + + + Immature: + Immature: + + + Mined balance that has not yet matured + Mined balance that has not yet matured + + + Balances + Balances + + + Total: + Total: + + + Your current total balance + Your current total balance + + + Your current balance in watch-only addresses + Your current balance in watch-only addresses + + + Spendable: + Spendable: + + + Recent transactions + Recent transactions + + + Unconfirmed transactions to watch-only addresses + Unconfirmed transactions to watch-only addresses + + + Mined balance in watch-only addresses that has not yet matured + Mined balance in watch-only addresses that has not yet matured + + + Current total balance in watch-only addresses + Current total balance in watch-only addresses + PSBTOperationsDialog + + Total Amount + Total Amount + + + or + or + PaymentServer - + + Payment request error + Payment request error + + + Cannot start bitcoin: click-to-pay handler + Cannot start bitcoin: click-to-pay handler + + + URI handling + URI handling + + + 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. + 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. + + + Cannot process payment request because BIP70 is not supported. + Cannot process payment request because BIP70 is not supported. + + + Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. + Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. + + + If you are receiving this error you should request the merchant provide a BIP21 compatible URI. + If you are receiving this error you should request the merchant provide a BIP21 compatible URI. + + + Invalid payment address %1 + Invalid payment address %1 + + + URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters. + URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters. + + + Payment request file handling + Payment request file handling + + PeerTableModel - + + User Agent + User Agent + + + Node/Service + Node/Service + + + NodeId + NodeId + + + Ping + Ping + + + Sent + Sent + + + Received + Received + + QObject Amount राशि + + Enter a Bitcoin address (e.g. %1) + Enter a Bitcoin address (e.g. %1) + + + %1 d + %1 d + + + %1 h + %1 h + + + %1 m + %1 m + + + %1 s + %1 s + + + None + None + N/A लागू नही + + %1 ms + %1 ms + + + %1 and %2 + %1 and %2 + + + %1 B + %1 B + + + %1 KB + %1 KB + + + %1 MB + %1 MB + + + %1 GB + %1 GB + + + Error: Specified data directory "%1" does not exist. + Error: Specified data directory "%1" does not exist. + + + Error: Cannot parse configuration file: %1. + Error: Cannot parse configuration file: %1. + + + Error: %1 + Error: %1 + + + %1 didn't yet exit safely... + %1 didn't yet exit safely... + unknown अज्ञात @@ -598,7 +1592,35 @@ QRImageWidget - + + &Save Image... + &Save Image... + + + &Copy Image + &Copy Image + + + Resulting URI too long, try to reduce the text for label / message. + Resulting URI too long, try to reduce the text for label / message. + + + Error encoding URI into QR Code. + Error encoding URI into QR Code. + + + QR code support not available. + QR code support not available. + + + Save QR Code + Save QR Code + + + PNG Image (*.png) + PNG Image (*.png) + + RPCConsole @@ -606,11 +1628,307 @@ लागू नही + + Client version + Client version + &Information जानकारी - + + General + General + + + Using BerkeleyDB version + Using BerkeleyDB version + + + Datadir + Datadir + + + To specify a non-default location of the data directory use the '%1' option. + To specify a non-default location of the data directory use the '%1' option. + + + Blocksdir + Blocksdir + + + To specify a non-default location of the blocks directory use the '%1' option. + To specify a non-default location of the blocks directory use the '%1' option. + + + Startup time + Startup time + + + Network + Network + + + Name + Name + + + Number of connections + Number of connections + + + Block chain + Block chain + + + Memory Pool + Memory Pool + + + Current number of transactions + Current number of transactions + + + Memory usage + Memory usage + + + Wallet: + Wallet: + + + (none) + (none) + + + &Reset + &Reset + + + Received + Received + + + Sent + Sent + + + &Peers + &Peers + + + Banned peers + Banned peers + + + Select a peer to view detailed information. + Select a peer to view detailed information. + + + Direction + Direction + + + Version + Version + + + Starting Block + Starting Block + + + Synced Headers + Synced Headers + + + Synced Blocks + Synced Blocks + + + The mapped Autonomous System used for diversifying peer selection. + The mapped Autonomous System used for diversifying peer selection. + + + Mapped AS + Mapped AS + + + User Agent + User Agent + + + Node window + Node window + + + Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. + Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. + + + Decrease font size + Decrease font size + + + Increase font size + Increase font size + + + Services + Services + + + Connection Time + Connection Time + + + Last Send + Last Send + + + Last Receive + Last Receive + + + Ping Time + Ping Time + + + The duration of a currently outstanding ping. + The duration of a currently outstanding ping. + + + Ping Wait + Ping Wait + + + Min Ping + Min Ping + + + Time Offset + Time Offset + + + Last block time + Last block time + + + &Open + &Open + + + &Console + &Console + + + &Network Traffic + &Network Traffic + + + Totals + Totals + + + In: + In: + + + Out: + Out: + + + Debug log file + Debug log file + + + Clear console + Clear console + + + 1 &hour + 1 &hour + + + 1 &day + 1 &day + + + 1 &week + 1 &week + + + 1 &year + 1 &year + + + &Disconnect + &Disconnect + + + Ban for + Ban for + + + &Unban + &Unban + + + Welcome to the %1 RPC console. + Welcome to the %1 RPC console. + + + Use up and down arrows to navigate history, and %1 to clear screen. + Use up and down arrows to navigate history, and %1 to clear screen. + + + Type %1 for an overview of available commands. + Type %1 for an overview of available commands. + + + For more information on using this console type %1. + For more information on using this console type %1. + + + WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. + WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. + + + Network activity disabled + Network activity disabled + + + Executing command without any wallet + Executing command without any wallet + + + Executing command using "%1" wallet + Executing command using "%1" wallet + + + (node id: %1) + (node id: %1) + + + via %1 + via %1 + + + never + never + + + Inbound + Inbound + + + Outbound + Outbound + + + Unknown + Unknown + + ReceiveCoinsDialog @@ -621,6 +1939,94 @@ &Label: लेबल: + + &Message: + &Message: + + + An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network. + An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network. + + + An optional label to associate with the new receiving address. + An optional label to associate with the new receiving address. + + + Use this form to request payments. All fields are <b>optional</b>. + Use this form to request payments. All fields are <b>optional</b>. + + + An optional amount to request. Leave this empty or zero to not request a specific amount. + An optional amount to request. Leave this empty or zero to not request a specific amount. + + + An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request. + An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request. + + + An optional message that is attached to the payment request and may be displayed to the sender. + An optional message that is attached to the payment request and may be displayed to the sender. + + + &Create new receiving address + &Create new receiving address + + + Clear all fields of the form. + Clear all fields of the form. + + + Clear + Clear + + + Native segwit addresses (aka Bech32 or BIP-173) reduce your transaction fees later on and offer better protection against typos, but old wallets don't support them. When unchecked, an address compatible with older wallets will be created instead. + Native segwit addresses (aka Bech32 or BIP-173) reduce your transaction fees later on and offer better protection against typos, but old wallets don't support them. When unchecked, an address compatible with older wallets will be created instead. + + + Generate native segwit (Bech32) address + Generate native segwit (Bech32) address + + + Requested payments history + Requested payments history + + + Show the selected request (does the same as double clicking an entry) + Show the selected request (does the same as double clicking an entry) + + + Show + Show + + + Remove the selected entries from the list + Remove the selected entries from the list + + + Remove + Remove + + + Copy URI + Copy URI + + + Copy label + Copy label + + + Copy message + Copy message + + + Copy amount + Copy amount + + + Could not unlock wallet. + Could not unlock wallet. + ReceiveRequestDialog @@ -628,15 +2034,35 @@ Amount: राशि : + + Message: + Message: + Wallet: तिजोरी + + Copy &URI + Copy &URI + Copy &Address &पता कॉपी करे - + + &Save Image... + &Save Image... + + + Request payment to %1 + Request payment to %1 + + + Payment information + Payment information + + RecentRequestsTableModel @@ -647,29 +2073,169 @@ Label परचा + + Message + Message + (no label) (कोई परचा नहीं ) - + + (no message) + (no message) + + + (no amount requested) + (no amount requested) + + + Requested + Requested + + SendCoinsDialog Send Coins सिक्के भेजें| + + Coin Control Features + Coin Control Features + + + Inputs... + Inputs... + + + automatically selected + automatically selected + + + Insufficient funds! + Insufficient funds! + Quantity: मात्रा : + + Bytes: + Bytes: + Amount: राशि : + + Fee: + Fee: + + + After Fee: + After Fee: + + + Change: + Change: + + + If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address. + If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address. + + + Custom change address + Custom change address + + + Transaction Fee: + Transaction Fee: + + + Choose... + Choose... + + + Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain. + Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain. + + + Warning: Fee estimation is currently not possible. + Warning: Fee estimation is currently not possible. + + + Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size. + +Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis per kB" for a transaction size of 500 bytes (half of 1 kB) would ultimately yield a fee of only 50 satoshis. + Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size. + +Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis per kB" for a transaction size of 500 bytes (half of 1 kB) would ultimately yield a fee of only 50 satoshis. + + + per kilobyte + per kilobyte + + + Hide + Hide + + + Recommended: + Recommended: + + + Custom: + Custom: + + + (Smart fee not initialized yet. This usually takes a few blocks...) + (Smart fee not initialized yet. This usually takes a few blocks...) + Send to multiple recipients at once एक साथ कई प्राप्तकर्ताओं को भेजें + + Add &Recipient + Add &Recipient + + + Clear all fields of the form. + Clear all fields of the form. + + + Dust: + Dust: + + + Hide transaction fee settings + Hide transaction fee settings + + + When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process. + When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process. + + + A too low fee might result in a never confirming transaction (read the tooltip) + A too low fee might result in a never confirming transaction (read the tooltip) + + + Confirmation time target: + Confirmation time target: + + + Enable Replace-By-Fee + Enable Replace-By-Fee + + + With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk. + With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk. + + + Clear &All + Clear &All + Balance: बाकी रकम : @@ -678,6 +2244,162 @@ Confirm the send action भेजने की पुष्टि करें + + S&end + S&end + + + Copy quantity + Copy quantity + + + Copy amount + Copy amount + + + Copy fee + Copy fee + + + Copy after fee + Copy after fee + + + Copy bytes + Copy bytes + + + Copy dust + Copy dust + + + Copy change + Copy change + + + %1 (%2 blocks) + %1 (%2 blocks) + + + Cr&eate Unsigned + Cr&eate Unsigned + + + Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + + + from wallet '%1' + from wallet '%1' + + + %1 to '%2' + %1 to '%2' + + + %1 to %2 + %1 to %2 + + + Do you want to draft this transaction? + Do you want to draft this transaction? + + + Are you sure you want to send? + Are you sure you want to send? + + + or + or + + + You can increase the fee later (signals Replace-By-Fee, BIP-125). + You can increase the fee later (signals Replace-By-Fee, BIP-125). + + + Please, review your transaction. + Please, review your transaction. + + + Transaction fee + Transaction fee + + + Not signalling Replace-By-Fee, BIP-125. + Not signalling Replace-By-Fee, BIP-125. + + + Total Amount + Total Amount + + + To review recipient list click "Show Details..." + To review recipient list click "Show Details..." + + + Confirm send coins + Confirm send coins + + + Confirm transaction proposal + Confirm transaction proposal + + + Send + Send + + + Watch-only balance: + Watch-only balance: + + + The recipient address is not valid. Please recheck. + The recipient address is not valid. Please recheck. + + + The amount to pay must be larger than 0. + The amount to pay must be larger than 0. + + + The amount exceeds your balance. + The amount exceeds your balance. + + + The total exceeds your balance when the %1 transaction fee is included. + The total exceeds your balance when the %1 transaction fee is included. + + + Duplicate address found: addresses should only be used once each. + Duplicate address found: addresses should only be used once each. + + + Transaction creation failed! + Transaction creation failed! + + + A fee higher than %1 is considered an absurdly high fee. + A fee higher than %1 is considered an absurdly high fee. + + + Payment request expired. + Payment request expired. + + + Warning: Invalid Bitcoin address + Warning: Invalid Bitcoin address + + + Warning: Unknown change address + Warning: Unknown change address + + + Confirm custom change address + Confirm custom change address + + + The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure? + The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure? + (no label) (कोई परचा नहीं ) @@ -697,6 +2419,14 @@ &Label: लेबल: + + Choose previously used address + Choose previously used address + + + The Bitcoin address to send the payment to + The Bitcoin address to send the payment to + Alt+A Alt-A @@ -709,16 +2439,88 @@ Alt+P Alt-P + + Remove this entry + Remove this entry + + + The amount to send in the selected unit + The amount to send in the selected unit + + + The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. + The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. + + + S&ubtract fee from amount + S&ubtract fee from amount + + + Use available balance + Use available balance + + + Message: + Message: + + + This is an unauthenticated payment request. + This is an unauthenticated payment request. + + + This is an authenticated payment request. + This is an authenticated payment request. + + + Enter a label for this address to add it to the list of used addresses + Enter a label for this address to add it to the list of used addresses + + + A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. + A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. + Pay To: प्राप्तकर्ता: - + + Memo: + Memo: + + ShutdownWindow - + + %1 is shutting down... + %1 is shutting down... + + + Do not shut down the computer until this window disappears. + Do not shut down the computer until this window disappears. + + SignVerifyMessageDialog + + Signatures - Sign / Verify a Message + Signatures - Sign / Verify a Message + + + &Sign Message + &Sign Message + + + You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. + You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. + + + The Bitcoin address to sign the message with + The Bitcoin address to sign the message with + + + Choose previously used address + Choose previously used address + Alt+A Alt-A @@ -731,16 +2533,168 @@ Alt+P Alt-P + + Enter the message you want to sign here + Enter the message you want to sign here + Signature हस्ताक्षर - + + Copy the current signature to the system clipboard + Copy the current signature to the system clipboard + + + Sign the message to prove you own this Bitcoin address + Sign the message to prove you own this Bitcoin address + + + Sign &Message + Sign &Message + + + Reset all sign message fields + Reset all sign message fields + + + Clear &All + Clear &All + + + &Verify Message + &Verify Message + + + Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! + Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! + + + The Bitcoin address the message was signed with + The Bitcoin address the message was signed with + + + The signed message to verify + The signed message to verify + + + The signature given when the message was signed + The signature given when the message was signed + + + Verify the message to ensure it was signed with the specified Bitcoin address + Verify the message to ensure it was signed with the specified Bitcoin address + + + Verify &Message + Verify &Message + + + Reset all verify message fields + Reset all verify message fields + + + Click "Sign Message" to generate signature + Click "Sign Message" to generate signature + + + The entered address is invalid. + The entered address is invalid. + + + Please check the address and try again. + Please check the address and try again. + + + The entered address does not refer to a key. + The entered address does not refer to a key. + + + Wallet unlock was cancelled. + Wallet unlock was cancelled. + + + No error + No error + + + Private key for the entered address is not available. + Private key for the entered address is not available. + + + Message signing failed. + Message signing failed. + + + Message signed. + Message signed. + + + The signature could not be decoded. + The signature could not be decoded. + + + Please check the signature and try again. + Please check the signature and try again. + + + The signature did not match the message digest. + The signature did not match the message digest. + + + Message verification failed. + Message verification failed. + + + Message verified. + Message verified. + + TrafficGraphWidget - + + KB/s + KB/s + + TransactionDesc + + Open until %1 + Open until %1 + + + conflicted with a transaction with %1 confirmations + conflicted with a transaction with %1 confirmations + + + 0/unconfirmed, %1 + 0/unconfirmed, %1 + + + in memory pool + in memory pool + + + not in memory pool + not in memory pool + + + abandoned + abandoned + + + %1/unconfirmed + %1/unconfirmed + + + %1 confirmations + %1 confirmations + + + Status + Status + Date दिनांक @@ -753,39 +2707,335 @@ Generated उत्पन्न + + From + From + unknown अज्ञात + + To + To + + + own address + own address + + + watch-only + watch-only + + + label + label + + + Credit + Credit + + + not accepted + not accepted + + + Debit + Debit + + + Total debit + Total debit + + + Total credit + Total credit + + + Transaction fee + Transaction fee + + + Net amount + Net amount + + + Message + Message + + + Comment + Comment + + + Transaction ID + Transaction ID + + + Transaction total size + Transaction total size + + + Transaction virtual size + Transaction virtual size + + + Output index + Output index + + + (Certificate was not verified) + (Certificate was not verified) + + + Merchant + Merchant + + + Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. + Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. + + + Debug information + Debug information + + + Transaction + Transaction + + + Inputs + Inputs + Amount राशि - + + true + true + + + false + false + + TransactionDescDialog This pane shows a detailed description of the transaction ये खिड़की आपको लेन-देन का विस्तृत विवरण देगी ! - + + Details for %1 + Details for %1 + + TransactionTableModel Date taareek + + Type + Type + Label परचा + + Open until %1 + Open until %1 + + + Unconfirmed + Unconfirmed + + + Abandoned + Abandoned + + + Confirming (%1 of %2 recommended confirmations) + Confirming (%1 of %2 recommended confirmations) + + + Confirmed (%1 confirmations) + Confirmed (%1 confirmations) + + + Conflicted + Conflicted + + + Immature (%1 confirmations, will be available after %2) + Immature (%1 confirmations, will be available after %2) + + + Generated but not accepted + Generated but not accepted + + + Received with + Received with + + + Received from + Received from + + + Sent to + Sent to + + + Payment to yourself + Payment to yourself + + + Mined + Mined + + + watch-only + watch-only + + + (n/a) + (n/a) + (no label) (कोई परचा नहीं ) - + + Transaction status. Hover over this field to show number of confirmations. + Transaction status. Hover over this field to show number of confirmations. + + + Date and time that the transaction was received. + Date and time that the transaction was received. + + + Type of transaction. + Type of transaction. + + + Whether or not a watch-only address is involved in this transaction. + Whether or not a watch-only address is involved in this transaction. + + + User-defined intent/purpose of the transaction. + User-defined intent/purpose of the transaction. + + + Amount removed from or added to balance. + Amount removed from or added to balance. + + TransactionView + + All + All + + + Today + Today + + + This week + This week + + + This month + This month + + + Last month + Last month + + + This year + This year + + + Range... + Range... + + + Received with + Received with + + + Sent to + Sent to + + + To yourself + To yourself + + + Mined + Mined + + + Other + Other + + + Enter address, transaction id, or label to search + Enter address, transaction id, or label to search + + + Min amount + Min amount + + + Abandon transaction + Abandon transaction + + + Increase transaction fee + Increase transaction fee + + + Copy address + Copy address + + + Copy label + Copy label + + + Copy amount + Copy amount + + + Copy transaction ID + Copy transaction ID + + + Copy raw transaction + Copy raw transaction + + + Copy full transaction details + Copy full transaction details + + + Edit label + Edit label + + + Show transaction details + Show transaction details + + + Export Transaction History + Export Transaction History + Comma separated file (*.csv) कोमा द्वारा अलग की गई फ़ाइल (* .csv) @@ -794,10 +3044,18 @@ Confirmed पक्का + + Watch-only + Watch-only + Date taareek + + Type + Type + Label परचा @@ -806,20 +3064,60 @@ Address पता + + ID + ID + Exporting Failed निर्यात विफल रहा - + + There was an error trying to save the transaction history to %1. + There was an error trying to save the transaction history to %1. + + + Exporting Successful + Exporting Successful + + + The transaction history was successfully saved to %1. + The transaction history was successfully saved to %1. + + + Range: + Range: + + + to + to + + UnitDisplayStatusBarControl - + + Unit to show amounts in. Click to select another unit. + Unit to show amounts in. Click to select another unit. + + WalletController Close wallet बटुआ बंद करें + + Are you sure you wish to close the wallet <i>%1</i>? + Are you sure you wish to close the wallet <i>%1</i>? + + + Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. + Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. + + + Close all wallets + सारे बटुएँ बंद करें + WalletFrame @@ -834,7 +3132,59 @@ Send Coins सिक्के भेजें| - + + Fee bump error + Fee bump error + + + Increasing transaction fee failed + Increasing transaction fee failed + + + Do you want to increase the fee? + Do you want to increase the fee? + + + Do you want to draft a transaction with fee increase? + Do you want to draft a transaction with fee increase? + + + Current fee: + Current fee: + + + Increase: + Increase: + + + New fee: + New fee: + + + Confirm fee bump + Confirm fee bump + + + Can't draft transaction. + Can't draft transaction. + + + PSBT copied + PSBT copied + + + Can't sign transaction. + Can't sign transaction. + + + Could not commit transaction + Could not commit transaction + + + default wallet + default wallet + + WalletView @@ -849,17 +3199,479 @@ Error भूल - + + Backup Wallet + Backup Wallet + + + Wallet Data (*.dat) + Wallet Data (*.dat) + + + Backup Failed + Backup Failed + + + There was an error trying to save the wallet data to %1. + There was an error trying to save the wallet data to %1. + + + Backup Successful + Backup Successful + + + The wallet data was successfully saved to %1. + The wallet data was successfully saved to %1. + + + Cancel + Cancel + + bitcoin-core + + Distributed under the MIT software license, see the accompanying file %s or %s + Distributed under the MIT software license, see the accompanying file %s or %s + + + Prune configured below the minimum of %d MiB. Please use a higher number. + Prune configured below the minimum of %d MiB. Please use a higher number. + + + Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) + Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) + + + Pruning blockstore... + Pruning blockstore... + + + Unable to start HTTP server. See debug log for details. + Unable to start HTTP server. See debug log for details. + + + The %s developers + The %s developers + + + Cannot obtain a lock on data directory %s. %s is probably already running. + Cannot obtain a lock on data directory %s. %s is probably already running. + + + Cannot provide specific connections and have addrman find outgoing connections at the same. + Cannot provide specific connections and have addrman find outgoing connections at the same. + + + Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. + Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. + + + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. + + + Please contribute if you find %s useful. Visit %s for further information about the software. + Please contribute if you find %s useful. Visit %s for further information about the software. + + + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct + This is a pre-release test build - use at your own risk - do not use for mining or merchant applications यह एक पूर्व-रिलीज़ परीक्षण बिल्ड है - अपने जोखिम पर उपयोग करें - खनन या व्यापारी अनुप्रयोगों के लिए उपयोग न करें + + This is the transaction fee you may discard if change is smaller than dust at this level + This is the transaction fee you may discard if change is smaller than dust at this level + + + Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. + Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. + + + Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain + Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain + + + Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. + Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. + + + Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. + Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. + + + -maxmempool must be at least %d MB + -maxmempool must be at least %d MB + + + Cannot resolve -%s address: '%s' + Cannot resolve -%s address: '%s' + + + Change index out of range + Change index out of range + + + Config setting for %s only applied on %s network when in [%s] section. + Config setting for %s only applied on %s network when in [%s] section. + + + Copyright (C) %i-%i + Copyright (C) %i-%i + + + Corrupted block database detected + Corrupted block database detected + + + Could not find asmap file %s + Could not find asmap file %s + + + Could not parse asmap file %s + Could not parse asmap file %s + + + Do you want to rebuild the block database now? + Do you want to rebuild the block database now? + + + Error initializing block database + Error initializing block database + + + Error initializing wallet database environment %s! + Error initializing wallet database environment %s! + + + Error loading %s + Error loading %s + + + Error loading %s: Private keys can only be disabled during creation + Error loading %s: Private keys can only be disabled during creation + + + Error loading %s: Wallet corrupted + Error loading %s: Wallet corrupted + + + Error loading %s: Wallet requires newer version of %s + Error loading %s: Wallet requires newer version of %s + + + Error loading block database + Error loading block database + + + Error opening block database + Error opening block database + + + Failed to listen on any port. Use -listen=0 if you want this. + Failed to listen on any port. Use -listen=0 if you want this. + + + Failed to rescan the wallet during initialization + Failed to rescan the wallet during initialization + + + Importing... + Importing... + + + Incorrect or no genesis block found. Wrong datadir for network? + Incorrect or no genesis block found. Wrong datadir for network? + + + Initialization sanity check failed. %s is shutting down. + Initialization sanity check failed. %s is shutting down. + + + Invalid P2P permission: '%s' + Invalid P2P permission: '%s' + + + Invalid amount for -%s=<amount>: '%s' + Invalid amount for -%s=<amount>: '%s' + + + Invalid amount for -discardfee=<amount>: '%s' + Invalid amount for -discardfee=<amount>: '%s' + + + Invalid amount for -fallbackfee=<amount>: '%s' + Invalid amount for -fallbackfee=<amount>: '%s' + + + Specified blocks directory "%s" does not exist. + Specified blocks directory "%s" does not exist. + + + Unknown address type '%s' + Unknown address type '%s' + + + Unknown change type '%s' + Unknown change type '%s' + + + Upgrading txindex database + Upgrading txindex database + + + Loading P2P addresses... + Loading P2P addresses... + + + Loading banlist... + Loading banlist... + + + Not enough file descriptors available. + Not enough file descriptors available. + + + Prune cannot be configured with a negative value. + Prune cannot be configured with a negative value. + + + Prune mode is incompatible with -txindex. + Prune mode is incompatible with -txindex. + + + Replaying blocks... + Replaying blocks... + + + Rewinding blocks... + Rewinding blocks... + + + The source code is available from %s. + The source code is available from %s. + + + Transaction fee and change calculation failed + Transaction fee and change calculation failed + + + Unable to bind to %s on this computer. %s is probably already running. + Unable to bind to %s on this computer. %s is probably already running. + + + Unable to generate keys + Unable to generate keys + + + Unsupported logging category %s=%s. + Unsupported logging category %s=%s. + + + Upgrading UTXO database + Upgrading UTXO database + + + User Agent comment (%s) contains unsafe characters. + User Agent comment (%s) contains unsafe characters. + Verifying blocks... ब्लॉक्स जाँचे जा रहा है... + + Wallet needed to be rewritten: restart %s to complete + Wallet needed to be rewritten: restart %s to complete + + + Error: Listening for incoming connections failed (listen returned error %s) + Error: Listening for incoming connections failed (listen returned error %s) + + + Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) + Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) + + + The transaction amount is too small to send after the fee has been deducted + The transaction amount is too small to send after the fee has been deducted + + + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain + + + Error reading from database, shutting down. + Error reading from database, shutting down. + + + Error upgrading chainstate database + Error upgrading chainstate database + + + Error: Disk space is low for %s + Error: Disk space is low for %s + + + Invalid -onion address or hostname: '%s' + Invalid -onion address or hostname: '%s' + + + Invalid -proxy address or hostname: '%s' + Invalid -proxy address or hostname: '%s' + + + Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) + Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) + + + Invalid netmask specified in -whitelist: '%s' + Invalid netmask specified in -whitelist: '%s' + + + Need to specify a port with -whitebind: '%s' + Need to specify a port with -whitebind: '%s' + + + Prune mode is incompatible with -blockfilterindex. + Prune mode is incompatible with -blockfilterindex. + + + Reducing -maxconnections from %d to %d, because of system limitations. + Reducing -maxconnections from %d to %d, because of system limitations. + + + Section [%s] is not recognized. + Section [%s] is not recognized. + + + Signing transaction failed + Signing transaction failed + + + Specified -walletdir "%s" does not exist + Specified -walletdir "%s" does not exist + + + Specified -walletdir "%s" is a relative path + Specified -walletdir "%s" is a relative path + + + Specified -walletdir "%s" is not a directory + Specified -walletdir "%s" is not a directory + + + The specified config file %s does not exist + + The specified config file %s does not exist + + + + The transaction amount is too small to pay the fee + The transaction amount is too small to pay the fee + + + This is experimental software. + This is experimental software. + + + Transaction amount too small + Transaction amount too small + + + Transaction too large + Transaction too large + + + Unable to bind to %s on this computer (bind returned error %s) + Unable to bind to %s on this computer (bind returned error %s) + + + Unable to create the PID file '%s': %s + Unable to create the PID file '%s': %s + + + Unable to generate initial keys + Unable to generate initial keys + + + Unknown -blockfilterindex value %s. + Unknown -blockfilterindex value %s. + + + Verifying wallet(s)... + Verifying wallet(s)... + + + Warning: unknown new rules activated (versionbit %i) + Warning: unknown new rules activated (versionbit %i) + + + -maxtxfee is set very high! Fees this large could be paid on a single transaction. + -maxtxfee is set very high! Fees this large could be paid on a single transaction. + + + This is the transaction fee you may pay when fee estimates are not available. + This is the transaction fee you may pay when fee estimates are not available. + + + Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments. + Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments. + + + %s is set very high! + %s is set very high! + + + Starting network threads... + Starting network threads... + + + The wallet will avoid paying less than the minimum relay fee. + The wallet will avoid paying less than the minimum relay fee. + + + This is the minimum transaction fee you pay on every transaction. + This is the minimum transaction fee you pay on every transaction. + + + This is the transaction fee you will pay if you send a transaction. + This is the transaction fee you will pay if you send a transaction. + + + Transaction amounts must not be negative + Transaction amounts must not be negative + + + Transaction has too long of a mempool chain + Transaction has too long of a mempool chain + + + Transaction must have at least one recipient + Transaction must have at least one recipient + + + Unknown network specified in -onlynet: '%s' + Unknown network specified in -onlynet: '%s' + + + Insufficient funds + Insufficient funds + + + Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable -fallbackfee. + Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable -fallbackfee. + + + Warning: Private keys detected in wallet {%s} with disabled private keys + Warning: Private keys detected in wallet {%s} with disabled private keys + + + Cannot write to data directory '%s'; check permissions. + Cannot write to data directory '%s'; check permissions. + Loading block index... ब्लॉक इंडेक्स आ रहा है... diff --git a/src/qt/locale/bitcoin_hr.ts b/src/qt/locale/bitcoin_hr.ts index 1ecb7be89..0e7c11a5c 100644 --- a/src/qt/locale/bitcoin_hr.ts +++ b/src/qt/locale/bitcoin_hr.ts @@ -1080,6 +1080,10 @@ Esc Esc + + %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. + %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. + Unknown. Syncing Headers (%1, %2%)... Nepoznato. Sinkroniziranje zaglavlja (%1, %2%)... @@ -1087,6 +1091,10 @@ OpenURIDialog + + Open bitcoin URI + Otvori bitcoin: URI + URI: URI: @@ -1486,6 +1494,10 @@ 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. 'bitcoin://' nije ispravan URI. Koristite 'bitcoin:' umjesto toga. + + Cannot process payment request because BIP70 is not supported. + Ne može se obraditi zahtjev jer BIP70 nije podržan + Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. Zbog rasprostranjenih sigurnosnih mana u BIP70-u, strogo se preporučuje da se ignoriraju bilo kakve naredbe o zamjeni novčanika sa strane trgovca. @@ -1790,6 +1802,10 @@ Synced Blocks Broj sinkronizranih blokova + + Mapped AS + Mapirano kao + User Agent Korisnički agent @@ -1997,6 +2013,10 @@ An optional amount to request. Leave this empty or zero to not request a specific amount. Opcionalan iznos koji možete zahtijevati. Ostavite ovo prazno ili unesite nulu ako ne želite zahtijevati specifičan iznos. + + An optional message that is attached to the payment request and may be displayed to the sender. + Izborna poruka je priložena zahtjevu za plaćanje i može se prikazati pošiljatelju. + &Create new receiving address &Stvorite novu primateljsku adresu @@ -2315,6 +2335,10 @@ Napomena: Budući da se naknada računa po bajtu, naknada od "100 satošija po k %1 (%2 blocks) %1 (%2 blokova) + + Cr&eate Unsigned + Cr&eate nije potpisan + from wallet '%1' iz novčanika '%1' @@ -2327,6 +2351,10 @@ Napomena: Budući da se naknada računa po bajtu, naknada od "100 satošija po k %1 to %2 %1 na %2 + + Do you want to draft this transaction? + Želite li kreirati nacrt transakcije? + Are you sure you want to send? Jeste li sigurni da želite poslati transakciju? @@ -2363,10 +2391,18 @@ Napomena: Budući da se naknada računa po bajtu, naknada od "100 satošija po k Confirm send coins Potvrdi slanje novca + + Confirm transaction proposal + Potvrdi predloženu transakciju + Send Pošalji + + Watch-only balance: + Saldo samo za gledanje: + The recipient address is not valid. Please recheck. Adresa primatelja je nevažeća. Provjerite ponovno, molim vas. @@ -2592,6 +2628,14 @@ Napomena: Budući da se naknada računa po bajtu, naknada od "100 satošija po k The Bitcoin address the message was signed with Bitcoin adresa kojom je poruka potpisana + + The signed message to verify + Potpisana poruka za provjeru + + + The signature given when the message was signed + Potpis predan kad je poruka bila potpisana + Verify the message to ensure it was signed with the specified Bitcoin address Provjerite poruku da budete sigurni da je potpisana zadanom Bitcoin adresom @@ -3183,6 +3227,14 @@ Napomena: Budući da se naknada računa po bajtu, naknada od "100 satošija po k Confirm fee bump Potvrdite povećanje naknade + + Can't draft transaction. + Nije moguće pripremiti nacrt transakcije + + + PSBT copied + PSBT kopiran + Can't sign transaction. Transakcija ne može biti potpisana. @@ -3337,6 +3389,14 @@ Napomena: Budući da se naknada računa po bajtu, naknada od "100 satošija po k Corrupted block database detected Pokvarena baza blokova otkrivena + + Could not find asmap file %s + Nije pronađena asmap datoteka %s + + + Could not parse asmap file %s + Nije moguće pročitati asmap datoteku %s + Do you want to rebuild the block database now? Želite li sada obnoviti bazu blokova? diff --git a/src/qt/locale/bitcoin_hu.ts b/src/qt/locale/bitcoin_hu.ts index 39af3ee38..24cd3a7d8 100644 --- a/src/qt/locale/bitcoin_hu.ts +++ b/src/qt/locale/bitcoin_hu.ts @@ -3677,6 +3677,10 @@ A Fájl > Megnyitás menüben lehet megnyitni. Failed to rescan the wallet during initialization Inicializálás közben nem sikerült feltérképezni a tárcát + + Failed to verify database + Nem sikerült ellenőrizni az adatbázist + Importing... Importálás diff --git a/src/qt/locale/bitcoin_id.ts b/src/qt/locale/bitcoin_id.ts index 44c774ddc..216a1ec96 100644 --- a/src/qt/locale/bitcoin_id.ts +++ b/src/qt/locale/bitcoin_id.ts @@ -69,6 +69,11 @@ These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. Berikut ialah alamat-alamat Bitcoin Anda yang digunakan untuk mengirimkan pembayaran. Selalu periksa jumlah dan alamat penerima sebelum mengirimkan koin. + + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + Ini adalah alamat-alamat bitcoinmu untuk menerima pembayaran. Gunakan tombol 'Buat alamat penerima baru' di atas tab menerima untuk membuat alamat baru. Tanda tangan hanya bisa digunakan dengan tipe alamat 'Lama' + &Copy Address &Salin Alamat @@ -477,6 +482,22 @@ Up to date Terbaru + + &Load PSBT from file... + &Muat PSBT dari file... + + + Load Partially Signed Bitcoin Transaction + Muat transaksi Bitcoin yang ditandatangani seperapat + + + Load PSBT from clipboard... + Muat PSBT dari clipboard... + + + Load Partially Signed Bitcoin Transaction from clipboard + Muat transaksi Bitcoin yang ditandatangani seperapat dari clipboard + Node window Jendela Node @@ -513,10 +534,26 @@ Close wallet Tutup wallet + + Close All Wallets... + Tutup semua dompet... + + + Close all wallets + Tutup semua dompet + Show the %1 help message to get a list with possible Bitcoin command-line options Tampilkan %1 pesan bantuan untuk mendapatkan daftar opsi baris perintah Bitcoin yang memungkinkan + + &Mask values + &Nilai masker + + + Mask the values in the Overview tab + Mask nilai yang ada di tab Overview + default wallet wallet default @@ -625,7 +662,15 @@ Wallet is <b>encrypted</b> and currently <b>locked</b> Dompet saat ini <b>terenkripsi</b> dan <b>terkunci</b> - + + Original message: + Pesan original: + + + A fatal error occurred. %1 can no longer continue safely and will quit. + Error yang fatal telah terjadi. %1 tidak bisa berlanjut dengan selamat dan akan keluar. + + CoinControlDialog @@ -826,11 +871,23 @@ Make Blank Wallet Buat dompet kosong + + Use descriptors for scriptPubKey management + Pakai deskriptor untuk managemen scriptPubKey + + + Descriptor Wallet + Dompet Deskriptor + Create Membuat - + + Compiled without sqlite support (required for descriptor wallets) + Dikompilasi tanpa support sqlite (dibutuhkan untuk dompet deskriptor) + + EditAddressDialog @@ -1302,6 +1359,14 @@ Whether to show coin control features or not. Ingin menunjukkan cara pengaturan koin atau tidak. + + Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. + Hubungkan kepada Bitcoin network menggunakan proxy SOCKS5 yang terpisah untuk servis Tor onion + + + Use separate SOCKS&5 proxy to reach peers via Tor onion services: + Gunakan proxy SOCKS&5 terpisah untuk mencapai peers menggunakan servis Tor onion: + &Third party transaction URLs &URL transaksi pihak ketiga @@ -1437,9 +1502,97 @@ Current total balance in watch-only addresses Jumlah saldo di alamat hanya lihat - + + Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. + Mode privasi diaktivasi untuk tab Overview. Untuk mengunmask nilai-nilai, hapus centang yang ada di Settings>Mask values. + + PSBTOperationsDialog + + Dialog + Dialog + + + Sign Tx + Tanda tangan Tx + + + Broadcast Tx + Broadcast Tx + + + Copy to Clipboard + Copy ke Clipboard + + + Save... + Simpan... + + + Close + Tutup + + + Failed to load transaction: %1 + Gagal untuk memuat transaksi: %1 + + + Failed to sign transaction: %1 + Gagal untuk menandatangani transaksi: %1 + + + Could not sign any more inputs. + Tidak bisa menandatangani lagi input apapun. + + + Signed %1 inputs, but more signatures are still required. + Menandatangankan %1 input, tetapi tanda tangan lebih banyak masih dibutuhkan. + + + Signed transaction successfully. Transaction is ready to broadcast. + Berhasil menandatangani transaksi. Transaksi sudah siap untuk di broadcast + + + Unknown error processing transaction. + Error yang tidak diketahui memproses transaksi + + + Transaction broadcast successfully! Transaction ID: %1 + Transaksi berhasil di broadcast! ID Transaksi: %1 + + + Transaction broadcast failed: %1 + Broadcast transaksi gagal: %1 + + + PSBT copied to clipboard. + PSBT disalin ke clipboard + + + Save Transaction Data + Simpan data Transaksi + + + Partially Signed Transaction (Binary) (*.psbt) + Transaksi yang ditandatangani sebagian (Binary) (*.psbt) + + + PSBT saved to disk. + PSBT disimpan ke disk. + + + * Sends %1 to %2 + * Mengirim %1 ke %2 + + + Unable to calculate transaction fee or total transaction amount. + Tidak dapat menghitung biaya transaksi atau jumlah total transaksi. + + + Pays transaction fee: + Membayar biaya transaksi: + Total Amount Jumlah Keseluruhan @@ -1448,7 +1601,31 @@ or atau - + + Transaction is missing some information about inputs. + Transaksi kehilangan beberapa informasi seputar input. + + + Transaction still needs signature(s). + Transaksi masih membutuhkan tanda tangan(s). + + + (But this wallet cannot sign transactions.) + (Tetapi dompet ini tidak dapat menandatangani transaksi.) + + + (But this wallet does not have the right keys.) + (Tapi dompet ini tidak memiliki kunci yang tepat.) + + + Transaction is fully signed and ready for broadcast. + Transaksi telah ditandatangani sepenuhnya dan siap untuk broadcast. + + + Transaction status is unknown. + Status transaksi tidak diketahui. + + PaymentServer @@ -1613,6 +1790,10 @@ Error: %1 Error: %1 + + Error initializing settings: %1 + Kesalahan menginisialisasi pengaturan: %1 + %1 didn't yet exit safely... %1 masih belum keluar secara aman... @@ -1793,6 +1974,10 @@ Node window Jendela Node + + Current block height + Tinggi blok saat ini + Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. Buka file log debug %1 dari direktori data saat ini. Dapat memakan waktu beberapa detik untuk file log besar. @@ -1805,6 +1990,10 @@ Increase font size Menambah ukuran font + + Permissions + Izin + Services Layanan @@ -2056,13 +2245,29 @@ Could not unlock wallet. Tidak dapat membuka dompet. - + + Could not generate new %1 address + Tidak dapat membuat alamat %1 baru + + ReceiveRequestDialog + + Request payment to ... + Minta pembayaran ke ... + + + Address: + Alamat: + Amount: Nilai: + + Label: + Label: + Message: Pesan: @@ -2337,6 +2542,22 @@ Catatan: Karena biaya dihitung berdasarkan per byte, biaya "100 satoshi per kB" Are you sure you want to send? Apakah anda yakin ingin mengirimkan? + + Create Unsigned + Buat Tidak ditandai + + + Save Transaction Data + Simpan data Transaksi + + + Partially Signed Transaction (Binary) (*.psbt) + Transaksi yang ditandatangani sebagian (Binary) (*.psbt) + + + PSBT saved + PSBT disimpan + or atau @@ -2764,6 +2985,10 @@ Catatan: Karena biaya dihitung berdasarkan per byte, biaya "100 satoshi per kB" Credit Kredit + + matures in %n more block(s) + jatuh tempo dalam %n blok lagi + not accepted tidak diterima @@ -3139,9 +3364,25 @@ Catatan: Karena biaya dihitung berdasarkan per byte, biaya "100 satoshi per kB" Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. Menutup dompet terlalu lama dapat menyebabkan harus menyinkron ulang seluruh rantai jika pemangkasan diaktifkan. - + + Close all wallets + Tutup semua dompet + + + Are you sure you wish to close all wallets? + Apakah anda yakin ingin menutup seluruh dompet ? + + WalletFrame + + No wallet has been loaded. +Go to File > Open Wallet to load a wallet. +- OR - + Tidak ada dompet yang dimuat. +Pergi ke File > Open Wallet untuk memuat dompet. +- ATAU - + Create a new wallet Bikin dompet baru @@ -3220,6 +3461,26 @@ Catatan: Karena biaya dihitung berdasarkan per byte, biaya "100 satoshi per kB" Error Kesalahan + + Unable to decode PSBT from clipboard (invalid base64) + Tidak dapat membaca kode PSBT dari papan klip (base64 tidak valid) + + + Load Transaction Data + Memuat Data Transaksi + + + Partially Signed Transaction (*.psbt) + Transaksi yang Ditandatangani Sebagian (* .psbt) + + + PSBT file must be smaller than 100 MiB + File PSBT harus lebih kecil dari 100 MB + + + Unable to decode PSBT + Tidak dapat membaca kode PSBT + Backup Wallet Cadangkan Dompet @@ -3287,6 +3548,10 @@ Catatan: Karena biaya dihitung berdasarkan per byte, biaya "100 satoshi per kB" Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. Kesalahan membaca %s! Semua kunci dibaca dengan benar, tetapi data transaksi atau entri buku alamat mungkin hilang atau salah. + + More than one onion bind address is provided. Using %s for the automatically created Tor onion service. + Lebih dari satu alamat Onion Bind tersedia. Menggunakan %s untuk membuat Tor onion secara otomatis. + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. Periksa apakah tanggal dan waktu komputer anda benar! Jika jam anda salah, %s tidak akan berfungsi dengan baik. @@ -3295,6 +3560,18 @@ Catatan: Karena biaya dihitung berdasarkan per byte, biaya "100 satoshi per kB" Please contribute if you find %s useful. Visit %s for further information about the software. Silakan berkontribusi jika %s berguna. Kunjungi %s untuk informasi lebih lanjut tentang perangkat lunak. + + SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s + SQLiteDatabase: Gagal menyiapkan pernyataan untuk mengambil versi skema dompet sqlite: %s + + + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + SQLiteDatabase: Gagal menyiapkan pernyataan untuk mengambil id aplikasi: %s + + + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported + SQLiteDatabase: Versi skema dompet sqlite tidak diketahui %d. Hanya versi %d yang didukung + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct Blok basis data berisi blok yang tampaknya berasal dari masa depan. Ini mungkin karena tanggal dan waktu komputer anda diatur secara tidak benar. Bangun kembali blok basis data jika anda yakin tanggal dan waktu komputer anda benar @@ -3399,6 +3676,14 @@ Catatan: Karena biaya dihitung berdasarkan per byte, biaya "100 satoshi per kB" Failed to rescan the wallet during initialization Gagal untuk scan ulang dompet saat inisialisasi. + + Failed to verify database + Gagal memverifikasi database + + + Ignoring duplicate -wallet %s. + Mengabaikan duplikat -dompet %s. + Importing... mengimpor... @@ -3423,6 +3708,30 @@ Catatan: Karena biaya dihitung berdasarkan per byte, biaya "100 satoshi per kB" Invalid amount for -fallbackfee=<amount>: '%s' Jumlah yang tidak saf untuk -fallbackfee=<amount>: '%s' + + SQLiteDatabase: Failed to execute statement to verify database: %s + SQLiteDatabase: Gagal menjalankan pernyataan untuk memverifikasi database: %s + + + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s + SQLiteDatabase: Gagal mengambil versi skema dompet sqlite: %s + + + SQLiteDatabase: Failed to fetch the application id: %s + SQLiteDatabase: Gagal mengambil id aplikasi: %s + + + SQLiteDatabase: Failed to prepare statement to verify database: %s + SQLiteDatabase: Gagal menyiapkan pernyataan untuk memverifikasi database: %s + + + SQLiteDatabase: Failed to read database verification error: %s + SQLiteDatabase: Gagal membaca kesalahan verifikasi database: %s + + + SQLiteDatabase: Unexpected application id. Expected %u, got %u + SQLiteDatabase: ID aplikasi tidak terduga. Diharapkan %u, dapat %u + Specified blocks directory "%s" does not exist. Blocks yang ditentukan directori "%s" tidak ada. @@ -3507,14 +3816,42 @@ Catatan: Karena biaya dihitung berdasarkan per byte, biaya "100 satoshi per kB" Error: Listening for incoming connections failed (listen returned error %s) Error: Mendengarkan koneksi yang masuk gagal (dengarkan kesalahan yang dikembalikan %s) + + Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. + Tidak dapat mengupgrade dompet split non HD tanpa mengupgrade untuk mendukung keypool pra-split. Harap gunakan versi 169900 atau bukan versi yang ditentukan. + The transaction amount is too small to send after the fee has been deducted Jumlah transaksi terlalu kecil untuk dikirim setelah biaya dikurangi + + This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet + Kesalahan ini dapat terjadi jika dompet ini tidak dimatikan dengan bersih dan terakhir dimuat menggunakan build dengan versi Berkeley DB yang lebih baru. Jika demikian, silakan gunakan perangkat lunak yang terakhir memuat dompet ini + + + This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. + Ini adalah biaya transaksi maksimum yang Anda bayarkan (selain biaya normal) untuk memprioritaskan penghindaran pengeluaran sebagian daripada pemilihan koin biasa. + + + Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. + Transaksi membutuhkan alamat perubahan, tetapi kami tidak dapat membuatnya. Silahkan hubungi keypoolrefill terlebih dahulu. + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain Anda perlu membangun kembali basis data menggunakan -reindex untuk kembali ke mode tidak dipangkas. Ini akan mengunduh ulang seluruh blockchain + + A fatal internal error occurred, see debug.log for details + Terjadi kesalahan internal yang fatal, lihat debug.log untuk mengetahui detailnya + + + Cannot set -peerblockfilters without -blockfilterindex. + Tidak dapat menyetel -peerblockfilters tanpa -blockfilterindex. + + + Disk space is too low! + Ruang disk terlalu sedikit! + Error reading from database, shutting down. Kesalahan membaca dari basis data, mematikan. @@ -3527,6 +3864,14 @@ Catatan: Karena biaya dihitung berdasarkan per byte, biaya "100 satoshi per kB" Error: Disk space is low for %s Eror: Kapasitas penyimpanan penuh untuk %s + + Error: Keypool ran out, please call keypoolrefill first + Error: Keypool habis, harap panggil keypoolrefill terlebih dahulu + + + Fee rate (%s) is lower than the minimum fee rate setting (%s) + Tarif biaya (%s) lebih rendah dari pengaturan tarif biaya minimum (%s) + Invalid -onion address or hostname: '%s' Alamat -onion atau hostname tidak valid: '%s' @@ -3547,6 +3892,10 @@ Catatan: Karena biaya dihitung berdasarkan per byte, biaya "100 satoshi per kB" Need to specify a port with -whitebind: '%s' Perlu menentukan port dengan -whitebind: '%s' + + No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. + Tidak ada server proxy yang ditentukan. Gunakan -proxy=<ip> atau -proxy=<ip:port>. + Prune mode is incompatible with -blockfilterindex. Mode pemangkasan tidak kompatibel dengan -blockfilterindex. diff --git a/src/qt/locale/bitcoin_it.ts b/src/qt/locale/bitcoin_it.ts index 17bc6045f..2d94d3fc2 100644 --- a/src/qt/locale/bitcoin_it.ts +++ b/src/qt/locale/bitcoin_it.ts @@ -549,11 +549,11 @@ E' possibile firmare solo con indirizzi di tipo "legacy". &Mask values - &Valori della maschera + &Mascherare gli importi Mask the values in the Overview tab - Maschera i valori nella sezione "Panoramica" + Maschera gli importi nella sezione "Panoramica" default wallet @@ -884,7 +884,11 @@ E' possibile firmare solo con indirizzi di tipo "legacy". Create Crea - + + Compiled without sqlite support (required for descriptor wallets) + Compilato senza il supporto a sqlite (richiesto per i wallet descrittori) + + EditAddressDialog @@ -1502,7 +1506,7 @@ Per specificare più URL separarli con una barra verticale "|". Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. - Modalità privacy attivata per la scheda "Panoramica". Per smascherare i valori, deseleziona Impostazioni-> Valori maschera. + Modalità privacy attivata per la scheda "Panoramica". Per mostrare gli importi, deseleziona Impostazioni-> Mascherare gli importi. @@ -3584,6 +3588,14 @@ Vai su File > Apri Portafoglio per caricare un portafoglio. Please contribute if you find %s useful. Visit %s for further information about the software. Per favore contribuite se ritenete %s utile. Visitate %s per maggiori informazioni riguardo il software. + + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + SQLiteDatabase: Impossibile preparare l'istruzione per recuperare l'id dell'applicazione: %s  + + + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported + SQLiteDatabase: Versione dello schema del portafoglio sqlite sconosciuta %d. Solo la versione %d è supportata + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct Il database dei blocchi contiene un blocco che sembra provenire dal futuro. Questo può essere dovuto alla data e ora del tuo computer impostate in modo scorretto. Ricostruisci il database dei blocchi se sei certo che la data e l'ora sul tuo computer siano corrette @@ -3724,6 +3736,10 @@ Vai su File > Apri Portafoglio per caricare un portafoglio. SQLiteDatabase: Failed to execute statement to verify database: %s SQLiteDatabase: Errore nell'eseguire l'operazione di verifica del database: %s + + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s + SQLiteDatabase: Impossibile recuperare la versione dello schema del portafoglio sqlite: %s  + SQLiteDatabase: Failed to prepare statement to verify database: %s SQLiteDatabase: Errore nel verificare il database: %s @@ -3840,6 +3856,10 @@ Vai su File > Apri Portafoglio per caricare un portafoglio. This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet Questo errore potrebbe essersi verificato se questo portafoglio non è stato chiuso in modo pulito ed è stato caricato l'ultima volta utilizzando una build con una versione più recente di Berkeley DB. In tal caso, utilizza il software che ha caricato per ultimo questo portafoglio + + This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. + Questa è la commissione di transazione massima che puoi pagare (in aggiunta alla normale commissione) per dare la priorità ad una spesa parziale rispetto alla classica selezione delle monete. + Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. La transazione richiede un indirizzo di resto, ma non possiamo generarlo. Si prega di eseguire prima keypoolrefill. diff --git a/src/qt/locale/bitcoin_ja.ts b/src/qt/locale/bitcoin_ja.ts index f14c826bd..18b0507a4 100644 --- a/src/qt/locale/bitcoin_ja.ts +++ b/src/qt/locale/bitcoin_ja.ts @@ -487,6 +487,10 @@ Signing is only possible with addresses of the type 'legacy'. &Load PSBT from file... PSBTをファイルから読込 (&L) + + Load Partially Signed Bitcoin Transaction + 部分的に署名されたビットコインのトランザクションを読み込み + Load PSBT from clipboard... PSBTをクリップボードから読み込み @@ -543,6 +547,14 @@ Signing is only possible with addresses of the type 'legacy'. Show the %1 help message to get a list with possible Bitcoin command-line options %1 のヘルプ メッセージを表示し、使用可能な Bitcoin のコマンドラインオプション一覧を見る。 + + &Mask values + &値を隠す + + + Mask the values in the Overview tab + 概要タブにある値を隠す + default wallet デフォルトウォレット @@ -655,7 +667,11 @@ Signing is only possible with addresses of the type 'legacy'. Original message: オリジナルメッセージ: - + + A fatal error occurred. %1 can no longer continue safely and will quit. + 致命的なエラーが発生しました。%1 は安全に継続することができず終了するでしょう。 + + CoinControlDialog @@ -856,11 +872,23 @@ Signing is only possible with addresses of the type 'legacy'. Make Blank Wallet 空ウォレットを作成 + + Use descriptors for scriptPubKey management + scriptPubKeyの管理にDescriptorを使用します。 + + + Descriptor Wallet + Descriptorウォレット + Create 作成 - + + Compiled without sqlite support (required for descriptor wallets) + (Descriptorウォレットに必要な)sqliteサポート無しでコンパイル + + EditAddressDialog @@ -1332,6 +1360,14 @@ Signing is only possible with addresses of the type 'legacy'. Whether to show coin control features or not. コインコントロール機能を表示するかどうか。 + + Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. + Tor onion service用の別のSOCKS5プロキシを介してBitcoinネットワークに接続します。 + + + Use separate SOCKS&5 proxy to reach peers via Tor onion services: + Tor onion serviceを介してピアに到達するために別のSOCKS&5プロキシを使用します: + &Third party transaction URLs サードパーティの取引確認URL(&T) @@ -1467,7 +1503,11 @@ Signing is only possible with addresses of the type 'legacy'. Current total balance in watch-only addresses ウォッチ限定アドレスの現在の残高の総計 - + + Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. + 概要タブでプライバシーモードが有効になっています。値のマスクを解除するには、設定->マスクの値のチェックを外してください。 + + PSBTOperationsDialog @@ -1478,6 +1518,10 @@ Signing is only possible with addresses of the type 'legacy'. Sign Tx 署名されたトランザクション + + Broadcast Tx + Txをブロードキャスト + Copy to Clipboard クリップボードにコピー @@ -1498,10 +1542,30 @@ Signing is only possible with addresses of the type 'legacy'. Failed to sign transaction: %1 %1 : トランザクション署名失敗 + + Could not sign any more inputs. + これ以上インプットに署名できませんでした。 + + + Signed %1 inputs, but more signatures are still required. + %1個のインプットに署名しましたが、さらに多くの署名が必要です。 + Signed transaction successfully. Transaction is ready to broadcast. トランザクションへの署名が成功しました。トランザクションのブロードキャストの準備ができています。 + + Unknown error processing transaction. + トランザクション処理中の不明なエラー + + + Transaction broadcast successfully! Transaction ID: %1 + トランザクションのブロードキャストに成功しました!トランザクションID: %1 + + + Transaction broadcast failed: %1 + トランザクションのブロードキャストが失敗しました: %1 + PSBT copied to clipboard. PSBTをクリップボードにコピーしました. @@ -1522,6 +1586,10 @@ Signing is only possible with addresses of the type 'legacy'. * Sends %1 to %2 * %1 から %2 へ送信 + + Unable to calculate transaction fee or total transaction amount. + 取引手数料または合計取引金額を計算できません。 + Pays transaction fee: トランザクション手数料: @@ -1534,6 +1602,30 @@ Signing is only possible with addresses of the type 'legacy'. or または + + Transaction has %1 unsigned inputs. + トランザクションには %1 個の未署名インプットがあります。 + + + Transaction is missing some information about inputs. + トランザクションにインプットに関する情報がありません。 + + + Transaction still needs signature(s). + トランザクションにはまだ署名が必要です。 + + + (But this wallet cannot sign transactions.) + (しかしこのウォレットはトランザクションに署名できません。) + + + (But this wallet does not have the right keys.) + (しかし、このウォレットは正しい鍵を持っていません。) + + + Transaction is fully signed and ready for broadcast. + トランザクションは完全に署名され、ブロードキャストの準備ができています。 + Transaction status is unknown. トランザクションの状態が不明です. @@ -1703,6 +1795,10 @@ Signing is only possible with addresses of the type 'legacy'. Error: %1 エラー: %1 + + Error initializing settings: %1 + 設定の初期化エラー: %1 + %1 didn't yet exit safely... %1 はまだ安全に終了していません... @@ -1881,6 +1977,10 @@ Signing is only possible with addresses of the type 'legacy'. Node window ノードウィンドウ + + Current block height + 現在のブロック高 + Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. 現在のデータディレクトリから %1 のデバッグ用ログファイルを開きます。ログファイルが巨大な場合、数秒かかることがあります。 @@ -2152,7 +2252,11 @@ Signing is only possible with addresses of the type 'legacy'. Could not unlock wallet. ウォレットをアンロックできませんでした。 - + + Could not generate new %1 address + 新しい %1 アドレスを生成できませんでした + + ReceiveRequestDialog @@ -3290,6 +3394,14 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p WalletFrame + + No wallet has been loaded. +Go to File > Open Wallet to load a wallet. +- OR - + ウォレットがロードされていません。 +ファイル > ウォレットを開くを実行しウォレットをロードしてください。 +- もしくは - + Create a new wallet 新しいウォレットを作成 @@ -3368,6 +3480,10 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Error エラー + + Unable to decode PSBT from clipboard (invalid base64) + クリップボードのPSBTをデコードできません(無効なbase64) + Load Transaction Data トランザクションデータのロード @@ -3459,6 +3575,10 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Please contribute if you find %s useful. Visit %s for further information about the software. %s が有用だと感じられた方はぜひプロジェクトへの貢献をお願いします。ソフトウェアのより詳細な情報については %s をご覧ください。 + + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported + SQLiteDatabase: 未知のsqliteウォレットスキーマバージョン %d 。バージョン %d のみがサポートされています。 + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct ブロックデータベースに未来の時刻のブロックが含まれています。お使いのコンピューターの日付と時刻が間違っている可能性があります。コンピュータの日付と時刻が本当に正しい場合にのみ、ブロックデータベースの再構築を実行してください。 diff --git a/src/qt/locale/bitcoin_ka.ts b/src/qt/locale/bitcoin_ka.ts index 3581ba3c5..6d925365d 100644 --- a/src/qt/locale/bitcoin_ka.ts +++ b/src/qt/locale/bitcoin_ka.ts @@ -131,6 +131,10 @@ Repeat new passphrase გაიმეორეთ ახალი ფრაზა-პაროლი + + Show passphrase + აჩვენეთ საიდუმლო ფრაზა + Encrypt wallet საფულის დაშიფრვა @@ -171,6 +175,30 @@ Wallet encrypted საფულე დაშიფრულია + + Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. + შეიყვანეთ საფულის ახალი საიდუმლო ფრაზა .1 გამოიყენეთ მე –2 ან მეტი შემთხვევითი სიმბოლოების 2 ან 3 – ზე მეტი რვა ან მეტი სიტყვის პაროლი 3. + + + Enter the old passphrase and new passphrase for the wallet. + შეიყვანეთ ძველი საიდუმლო ფრაზა და ახალი საიდუმლო ფრაზა საფულისთვის + + + Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. + გახსოვდეთ, რომ თქვენი საფულის დაშიფვრა ვერ უზრუნველყოფს სრულად დაიცვას თქვენი ბიტკოინების მოპარვა კომპიუტერში მავნე პროგრამებით. + + + Wallet to be encrypted + დაშიფრულია საფულე + + + Your wallet is about to be encrypted. + თქვენი საფულე იშიფრება + + + Your wallet is now encrypted. + თქვენი საფულე ახლა დაშიფრულია + IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. მნიშვნელოვანი: ნებისმიერი საფულის წინა სარეზერვო კოპია, რომელიც თქვენ შექმენით, უნდა იყოს ჩანაცვლებული ახლად გენერირებული, დაშიფრული საფულის ფაილით. უსაფრთხოების მიზნებისთვის, დაუშიფრავი საფულის ფაილის წინა სარეზევო კოპიები გახდება გამოუყენებული იმ წამსვე, როდესაც დაიწყებთ ახალი, დაშიფრული საფულის გამოყენებას. @@ -214,7 +242,11 @@ IP/Netmask IP/ქსელის მასკა - + + Banned Until + სანამ აიკრძალა + + BitcoinGUI @@ -289,6 +321,14 @@ Open &URI... &URI-ის გახსნა... + + Create Wallet... + შექმენით საფულე + + + Create a new wallet + შექმენით ახალი საფულე + Wallet: საფულე: @@ -301,6 +341,10 @@ Network activity disabled. ქსელური აქტივობა გათიშულია. + + Click to enable network activity again. + დააჭირეთ ქსელის აქტივობის კვლავ ჩართვას + Reindexing blocks on disk... დისკზე ბლოკების რეინდექსაცია... @@ -381,6 +425,14 @@ &Command-line options საკომანდო სტრიქონის ოპ&ციები + + Indexing blocks on disk... + ინდექსაციის ბლოკები დისკზე + + + Processing blocks on disk... + დამუშავება ბლოკები დისკზე + %1 behind %1 გავლილია @@ -409,6 +461,38 @@ Up to date განახლებულია + + Node window + კვანძის ფანჯარა + + + Open node debugging and diagnostic console + გახსენით კვანძის გამართვის და დიაგნოსტიკური კონსოლი + + + &Sending addresses + მისამართების გაგზავნა + + + &Receiving addresses + მისამართების მიღება + + + Open a bitcoin: URI + გახსენით ბიტკოინი: URI + + + Open Wallet + ღია საფულე + + + Open a wallet + გახსენით საფულე + + + Close Wallet... + საფულის ფახურვა + default wallet ნაგულისხმევი საფულე @@ -1107,6 +1191,10 @@ Block chain ბლოკთა ჯაჭვი + + Node window + კვანძის ფანჯარა + Last block time ბოლო ბლოკის დრო @@ -1988,7 +2076,11 @@ WalletFrame - + + Create a new wallet + შექმენით ახალი საფულე + + WalletModel diff --git a/src/qt/locale/bitcoin_km.ts b/src/qt/locale/bitcoin_km.ts index 20ce9814f..de7f02cbf 100644 --- a/src/qt/locale/bitcoin_km.ts +++ b/src/qt/locale/bitcoin_km.ts @@ -3,7 +3,7 @@ AddressBookPage Right-click to edit address or label - ចុចម៉ៅស្តាំ ដើម្បីកែសម្រួលអាសយដ្ឋាន រឺស្លាក + ចុចម៉ៅស្តាំ ដើម្បីកែសម្រួលអាសយដ្ឋាន រឺស្លាកសញ្ញា Create a new address @@ -11,7 +11,7 @@ &New - ថ្មី + ថ្មី(&N) Copy the currently selected address to the system clipboard @@ -19,11 +19,11 @@ &Copy - ចម្លង + ចម្លង(&C) C&lose - បិទ + បិទ(&l) Delete the currently selected address from the list @@ -31,7 +31,7 @@ Enter address or label to search - វាយអាសយដ្ឋាន រឺ បិទស្លាក ដើម្បីស្វែងរក + បញ្ចូលអាសយដ្ឋាន រឺ ស្លាក​សញ្ញា ដើម្បីស្វែងរក Export the data in the current tab to a file @@ -39,11 +39,11 @@ &Export - នាំចេញ + នាំចេញ(&E) &Delete - លុប + លុប(&D) Choose the address to send coins to @@ -55,15 +55,15 @@ C&hoose - ជ្រើសរើស + ជ្រើសរើស(&h) Sending addresses - អាសយដ្ឋានដែលផ្ញើ + អាសយដ្ឋានសម្រាប់ផ្ញើ Receiving addresses - អាសយដ្ឋានដែលទទួល + អាសយដ្ឋានសម្រាប់ទទួល These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. @@ -71,15 +71,15 @@ &Copy Address - ចម្លងអាសយដ្ឋាន + ចម្លងអាសយដ្ឋាន(&C) Copy &Label - ចម្លង ស្លាក + ចម្លង ស្លាក​សញ្ញា(&L) &Edit - កែសម្រួល + កែសម្រួល(&E) Export Address List @@ -93,16 +93,12 @@ Exporting Failed ការនាំចេញបានបរាជ័យ - - There was an error trying to save the address list to %1. Please try again. - ទាំងនេះជាកំហុសព្យាយាម ដើម្បីរក្សាទុកបញ្ជីអាសយដ្ឋានទៅ %1 ។ សូមព្យាយាមម្ដងទៀត។ - - + AddressTableModel Label - ស្លាក + ស្លាកសញ្ញា Address @@ -110,7 +106,7 @@ (no label) - (គ្មាន​ស្លាក) + (គ្មាន​ស្លាក​សញ្ញា) @@ -273,21 +269,13 @@ Quit application បោះបង់កម្មវិធី - - &About %1 - អំពី %1 - - - Show information about %1 - បង្ហាញពត៌មានអំពី %1 - About &Qt អំពី Qt Show information about Qt - បង្ហាញពត៌មានអំពី Qt + បង្ហាញព័ត៍មានអំពី Qt &Options... @@ -381,6 +369,18 @@ Show or hide the main Window បង្ហាញ រឺលាក់ផ្ទាំងវីនដូដើម + + Encrypt the private keys that belong to your wallet + បំលែងលេខសំម្ងាត់សម្រាប់កាបូបអេឡិចត្រូនិច របស់អ្នកឲ្យទៅជាភាសាកុំព្យូទ័រ + + + Sign messages with your Bitcoin addresses to prove you own them + ចុះហត្ថលេខាលើសារ អាសយដ្ឋានប៊ីតខញរបស់អ្នក ដើម្បីបញ្ចាក់ថាអ្នកជាម្ចាស់ + + + Verify messages to ensure they were signed with specified Bitcoin addresses + ធ្វើការបញ្ចាក់សារ ដើម្បីធានាថាសារទាំំងនោះបានចុះហត្ថលេខា ជាមួយអាសយដ្ខានប៊ីតខញ + &File ឯកសារ @@ -389,20 +389,240 @@ &Settings ការកំណត់ + + &Help + ជំនួយ + + + Tabs toolbar + ធូបារថេប + + + Request payments (generates QR codes and bitcoin: URIs) + សំណើរទូរទាត់​(បង្កើតកូដ QR និង ប៊ីតខញ: URLs) + + + Show the list of used sending addresses and labels + បង្ហាញបញ្ចីរអាសយដ្ឋាន និង ស្លាកសញ្ញាបញ្ចូនបានប្រើប្រាស់ + + + Show the list of used receiving addresses and labels + បង្ហាញបញ្ចីរអាសយដ្ឋាន និង ស្លាកសញ្ញាទទួល បានប្រើប្រាស់ + + + &Command-line options + ជំរើសខំមែនឡាញ(&C) + + + Transactions after this will not yet be visible. + ប្រត្តិបត្តិការបន្ទាប់ពីនេះ នឹងមិនអាចទាន់មើលឃើញនៅឡើយទេ។ + Error បញ្ហា + + Warning + ក្រើនរំលឹកឲ្យប្រុងប្រយ័ត្ន + + + Information + ព័ត៍មាន + + + Up to date + ទាន់ពេល និង ទាន់សម័យ + + + &Load PSBT from file... + &ទាញយកPSBTពីឯកសារ... + + + Node window + Node window + + + Close wallet + Close wallet + + + Close all wallets + Close all wallets + + + default wallet + default wallet + + + &Window + &Window + + + Minimize + តូច + + + Error: %1 + Error: %1 + + + Sent transaction + ប្រត្តិបត្តិការបានបញ្ចូន + + + Incoming transaction + ប្រត្តិបត្តិការកំពុងមកដល់ + + + HD key generation is <b>enabled</b> + លេខសម្ងាត់ HD គឺ<b>ត្រូវបាន​បើក</b> + + + HD key generation is <b>disabled</b> + លេខសម្ងាត់ HD គឺ<b>ត្រូវបានបិទ</b> + + + Private key <b>disabled</b> + លេខសម្ងាត់ <b>ត្រូវបានបិទ</b> + + + Original message: + សារដើម + CoinControlDialog - (no label) - (គ្មាន​ឡាបែល) + Coin Selection + ជ្រើរើសកាក់ - + + Quantity: + បរិមាណ + + + Bytes: + Bytes: + + + Amount: + ចំនួន + + + Fee: + កម្រៃ​ + + + Dust: + Dust: + + + After Fee: + After Fee: + + + Change: + Change: + + + Amount + ចំនួន + + + Received with label + បានទទួលជាមួយនឹងស្លាកសញ្ញា + + + Received with address + បានទទួលជាមួយនឹងអាសយដ្ឋាន + + + Date + ថ្ងៃ + + + Confirmations + ការបញ្ចាក់ + + + Confirmed + បានបញ្ចាក់ + + + Copy address + ចម្លងអាសយដ្ឋាន + + + Copy label + ចម្លងស្លាក + + + Copy amount + ចម្លងចំនួន + + + Copy transaction ID + ចម្លង អត្តសញ្ញាណ​ប្រត្តិបត្តិការ + + + Lock unspent + បិទសោរ ប្រាក់មិនបានចំណាយ + + + Unlock unspent + បើកសោរ ប្រាក់មិនបានចំណាយ + + + Copy quantity + Copy quantity + + + Copy fee + Copy fee + + + Copy after fee + Copy after fee + + + Copy bytes + Copy bytes + + + Copy dust + Copy dust + + + Copy change + Copy change + + + yes + បាទ ឬ ចាស + + + no + ទេ + + + This label turns red if any recipient receives an amount smaller than the current dust threshold. + ស្លាកសញ្ញានេះបង្ហាញពណ៌ក្រហម ប្រសិនបើអ្នកទទួល ទទួលបានចំនួនមួយតិចជាងចំនួនចាប់ផ្តើមបច្ចុប្បន្ន។ + + + (no label) + (គ្មាន​ស្លាកសញ្ញា) + + + (change) + (ផ្លាស់ប្តូរ) + + CreateWalletActivity + + Create wallet failed + បង្កើតកាបូបអេឡិចត្រូនិច មិនជោគជ័យ + CreateWalletDialog @@ -414,15 +634,87 @@ Wallet Name ឈ្មោះកាបូប + + Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. + បំលែងកាបូបអេឡិចត្រូនិចជាកូដ។ កាបំលែងនេះ រួមជាមួយនឹងឃ្លាសម្ងាត់ដែលអ្នកអាចជ្រើសរើសបាន។ + + + Encrypt Wallet + បំលែងកាបូបអេឡិចត្រនិចទៅជាកូដ + + + Make Blank Wallet + ធ្វើឲ្យកាបូបអេឡិចត្រូនិចទទេ + + + Create + បង្កើត + EditAddressDialog - + + Edit Address + កែសម្រួលអាសយដ្ឋាន + + + &Label + &ស្លាកសញ្ញា + + + The label associated with this address list entry + ស្លាកសញ្ញានេះជាប់ទាក់ទងទៅនឹងការបញ្ចូលបញ្ចីរអាសយដ្ឋាន + + + &Address + &អាសយដ្ឋានបញ្ចូនថ្មី + + + New sending address + អាសយដ្ឋានបញ្ចូនថ្មី + + + Edit receiving address + កែប្រែអាសយដ្ឋានទទួល + + + Edit sending address + កែប្រែអាសយដ្ឋានបញ្ចូន + + + Could not unlock wallet. + មិនអាចបើកសោរ កាបូបអេឡិចត្រូនិចបាន។ + + + New key generation failed. + បង្កើតលេខសំម្ងាត់ថ្មីមិនជោគជ័យ។ + + FreespaceChecker - + + A new data directory will be created. + ទីតាំងផ្ទុកទិន្នន័យថ្មីមួយនឹងត្រូវបានបង្កើត។ + + + name + ឈ្មោះ + + + Path already exists, and is not a directory. + ផ្លូវទៅកាន់ទិន្នន័យមានរួចរាល់​ និង​ មិនមែនជាទីតាំង។ + + + Cannot create data directory here. + មិនអាចបង្កើតទីតាំងផ្ទុកទិន្នន័យនៅទីនេះ។ + + HelpMessageDialog + + version + ជំនាន់ + Intro @@ -430,9 +722,17 @@ Welcome សូមស្វាគមន៍ + + Use the default data directory + ប្រើទីតាំងផ្ទុកទិន្នន័យដែលបានកំណត់រួច + + + Use a custom data directory: + ប្រើទីតាំងផ្ទុកទិន្នន័យ ដែលមានការជ្រើសរើសមួយៈ + Bitcoin - Bitcoin + ប៊ីតខញ Error @@ -441,107 +741,959 @@ ModalOverlay + + Form + ទម្រង់ + + + Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. + ប្រត្តិបត្តិការថ្មីៗនេះប្រហែលជាមិនអាចមើលឃើញ ហេតុដូច្នេះសមតុល្យនៅក្នងកាបូបអេឡិចត្រូនិចរបស់អ្នកប្រហែលជាមិនត្រឹមត្រូវ។ ព័ត៌មានត្រឹមត្រូវនៅពេលដែលកាបូបអេឡិចត្រូនិចរបស់អ្នកបានធ្វើសមកាលកម្មជាមួយបណ្តាញប៊ឺតខញ សូមពិនិត្យព័ត៌មានលំម្អិតខាងក្រោម។ + + + Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network. + ព្យាយាមក្នុងការចំណាយប៊ីតខញដែលទទួលរងឥទ្ឋិពលពីប្រត្តិបត្តិការមិនទាន់ធ្វើការបង្ហាញ នឹងមិនត្រូវទទួលស្គាល់ពីបណ្តាញ។ + + + Number of blocks left + ចំនួនប្លុកដែលនៅសល់ + + + Unknown... + មិនទទួលស្គាល់... + + + Last block time + Last block time + + + Progress + កំពុងដំណើរការ + + + Progress increase per hour + ដំណើរការកើនឡើងក្នុងមួយម៉ោង + + + calculating... + កំពុងគណនា... + + + Estimated time left until synced + ពេលវេលាដែលរំពឹងទុកនៅសល់រហូតដល់បានធ្វើសមកាលកម្ម + + + Hide + Hide + + + Esc + ចាកចេញ + OpenURIDialog - + + Open bitcoin URI + បើកប៊ីតខញ​URl + + + URI: + URl: + + OpenWalletActivity + + Open wallet failed + បើកកាបូបអេឡិចត្រូនិច មិនជៅគជ័យ + + + Open wallet warning + ក្រើនរំលឹកឲ្យប្រយ័ត្នក្នុងការបើកកាបូបអេឡិចត្រូនិច + + + default wallet + កាបូបអេឡិចត្រូនិច លំនាំដើម + OptionsDialog + + Options + ជម្រើស + + + &Main + &សំខាន់ + + + Expert + អ្នកជំនាញ + + + &Window + &Window + + + Client will be shut down. Do you want to proceed? + ផ្ទាំងអតិថិជននិងត្រូវបិទ។ តើអ្នកចង់បន្តទៀតឫទេ? + + + Configuration options + ជម្រើសក្នុងការរៀបចំរចនាសម្ព័ន្ធ + + + The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file. + ការរៀបចំរចនាសម្ពន្ធ័ឯកសារ ត្រូវបានប្រើសម្រាប់អ្នកដែលមានបទពិសោធន៏ ក្នុងរៀបចំកែប្រែផ្នែកក្រាហ្វិកខាងមុននៃសុសវែ។ បន្ថែ​មលើនេះទៀត កាសរសេរបន្ថែមកូដ វានឹងធ្វើឲ្យមានការកែប្រែឯការសារនេះ។ + Error បញ្ហា + + This change would require a client restart. + ការផ្លាស់ប្តូរនេះនឹងត្រូវការចាប់ផ្តើមម៉ាស៊ីនកុំព្យូទ័រឡើងវិញ។​ + OverviewPage + + Form + ទម្រង់ + + + Available: + មាន + + + Your current spendable balance + សមតុល្យបច្ចុប្បន្នដែលអាចចាយបាន + + + Pending: + រងចាំ + + + Total: + សរុប + + + Spendable: + អាចចំណាយបានៈ + + + Recent transactions + ព្រឹត្តិបត្តិការថ្មីៗ + + + Unconfirmed transactions to watch-only addresses + ប្រឹត្តិបត្តិការមិនទាន់បញ្ចាក់ច្បាស់ ទៅកាន់ អាសយដ្ឋានសម្រាប់តែមើល + PSBTOperationsDialog + + Save... + ថែរក្សាទុក... + + + Save Transaction Data + Save Transaction Data + + + Partially Signed Transaction (Binary) (*.psbt) + Partially Signed Transaction (Binary) (*.psbt) + + + PSBT saved to disk. + PSBT បានរក្សាទុកក្នុងឌីស។ + + + Unable to calculate transaction fee or total transaction amount. + មិនអាចគណនាកម្រៃប្រត្តិបត្តិការ ឬ ចំនួនប្រត្តិបត្តិការសរុប។ + + + Pays transaction fee: + បង់កម្រៃប្រត្តិបត្តិការ + + + Total Amount + ចំនួនសរុប + + + or + + + + Transaction is missing some information about inputs. + ប្រត្តិបត្តិការមានព័ត៍មានពុំគ្រប់គ្រាន់អំពីការបញ្ចូល។ + PaymentServer + + Payment request error + ការស្នើរសុំទូរទាត់ប្រាក់ជួបបញ្ហា + PeerTableModel - + + User Agent + User Agent + + + Sent + បានបញ្ចូន + + + Received + បានទទួល + + QObject - + + Amount + ចំនួន + + + None + មិន + + + N/A + N/A + + + %n second(s) + %n វិនាទី + + + %n minute(s) + %n នាទី + + + Error: %1 + Error: %1 + + + unknown + unknown + + QRImageWidget - + + &Save Image... + &Save Image... + + + &Copy Image + &ថតចម្លង រូបភាព + + + Resulting URI too long, try to reduce the text for label / message. + លទ្ធផល URI វែងពែក សូមព្យាយមកាត់បន្ថយអក្សរសម្រាប់ ស្លាកសញ្ញា ឫ សារ។ + + + Error encoding URI into QR Code. + បញ្ហាក្នុងការបំលែង​URl ទៅជា QR កូដ។ + + + QR code support not available. + ការគាំទ្រ QR កូដមិនមាន។ + + + Save QR Code + រក្សាទុក QR កូដ + + + PNG Image (*.png) + រូបភាព PNG (*.png) + + RPCConsole + + N/A + N/A + + + &Information + ព័ត៍មាន + + + General + ទូទៅ + + + Received + Received + + + Sent + Sent + + + User Agent + ភ្ងាក់ងារអ្នកប្រើប្រាស់ + + + Node window + Node window + + + Decrease font size + បន្ថយទំហំអក្សរ + + + Increase font size + បង្កើនទំហំអក្សរ + + + Permissions + ការអនុញ្ញាត + + + Last block time + Last block time + ReceiveCoinsDialog + + &Amount: + &ចំនួន + + + &Label: + &ស្លាកសញ្ញា​ + + + &Message: + &សារ + + + An optional label to associate with the new receiving address. + ស្លាកសញ្ញាជាជម្រើសមួយ ទាក់ទងជាមួយនឹងអាសយដ្ឋានទទួលថ្មី។ + + + Use this form to request payments. All fields are <b>optional</b>. + ប្រើប្រាស់ទម្រង់នេះដើម្បីធ្វើការសំណូមពរទូរទាត់ប្រាក់។ រាល់ការបំពេញក្នុងប្រអប់ទាំងអស់​គឺ<b>ជាជម្រើស</b>។ + + + An optional amount to request. Leave this empty or zero to not request a specific amount. + ចំនួនជម្រើសមួយ សម្រាប់សំណើរ។ សូមទុកសូន្យ ឫ ទទេ ទៅដល់មិនសំណើរចំនួនជាក់លាក់ណាមួយ។ + + + An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request. + ស្លាកសញ្ញាជាជម្រើសមួយ ទាក់ទងជាមួយនឹងអាសយដ្ឋានទទួលថ្មី( ដែលអ្នកបានប្រើប្រាស់ ដើម្បីសម្គាល់វិក័យបត្រមួយ)។ វាក៏ត្រូវបានភ្ជាប់ជាមួយនឹងសំណើរទូរទាត់ប្រាក់។ + + + An optional message that is attached to the payment request and may be displayed to the sender. + សារជាជម្រើសមួយដែលភ្ជាប់ជាមួយសំណើរទូរទាត់ប្រាក់ និង ប្រហែលជាបង្ហាញទៅកាន់អ្នកបញ្ចូន។ + + + &Create new receiving address + &បង្កើតអាសយដ្ឋានទទួលថ្មី + + + Clear all fields of the form. + សំម្អាតគ្រប់ប្រអប់ទាំងអស់ក្នុងទម្រង់នេះ។ + + + Clear + សំម្អាត + + + Requested payments history + បានដាក់ស្នើរសុំយកប្រវត្តិការទូរទាត់ប្រាក់ + + + Show the selected request (does the same as double clicking an entry) + ធ្វើការបង្ហាញ សំណូមពរដែលត្រូវបានជ្រើសរើស​(ធ្វើដូចគ្នា ដោយចុចពីរដងសម្រាប់ការបញ្ចូលម្តង) + + + Show + បង្ហាញ + + + Remove the selected entries from the list + លុបចេញការបញ្ចូលដែលបានជ្រើសរើស ពីក្នុងបញ្ចីរ + + + Remove + លុបចេញ + + + Copy label + ថតចម្លងស្លាកសញ្ញា + + + Copy amount + Copy amount + + + Could not unlock wallet. + Could not unlock wallet. + ReceiveRequestDialog + + Amount: + Amount: + + + Label: + ស្លាកសញ្ញាៈ + + + Message: + Message: + Wallet: កាបូបចល័ត៖ + + Copy &Address + ចម្លង និង អាសយដ្ឋាន + + + &Save Image... + &Save Image... + RecentRequestsTableModel + + Date + Date + Label - ឡាបែល + ស្លាក​សញ្ញា + + + Message + Message (no label) - (គ្មាន​ឡាបែល) + (គ្មាន​ស្លាក​សញ្ញា) SendCoinsDialog + + Send Coins + Send Coins + + + Quantity: + Quantity: + + + Bytes: + Bytes: + + + Amount: + Amount: + + + Fee: + Fee: + + + After Fee: + After Fee: + + + Change: + Change: + + + Transaction Fee: + កម្រៃប្រត្តិបត្តិការ + + + Choose... + ជ្រើសរើស... + + + Hide + Hide + + + (Smart fee not initialized yet. This usually takes a few blocks...) + (ថ្លៃសេវាឆ្លាត មិនទាន់ចាប់ផ្តើមទេ។ វាជាទូរទៅវាត្រូវការប្លក់មួយចំនួនតូច...) + + + Send to multiple recipients at once + បញ្ចូនទៅកាន់អ្នកទទួលច្រើនអ្នកក្នុងពេលតែមួយ + + + Add &Recipient + បន្ថែម &អ្នកទទួល + + + Clear all fields of the form. + សម្អាតគ្រប់ប្រអប់ក្នុងទម្រង់នេះៈ + + + Dust: + Dust: + + + Clear &All + សម្អាត់ &ទាំងអស់ + + + Copy quantity + Copy quantity + + + Copy amount + Copy amount + + + Copy fee + Copy fee + + + Copy after fee + Copy after fee + + + Copy bytes + Copy bytes + + + Copy dust + Copy dust + + + Copy change + Copy change + + + Save Transaction Data + Save Transaction Data + + + Partially Signed Transaction (Binary) (*.psbt) + Partially Signed Transaction (Binary) (*.psbt) + + + PSBT saved + បានរក្សាទុកPSBT + + + or + + + + Transaction fee + Transaction fee + + + Total Amount + ចំនួនសរុប + + + To review recipient list click "Show Details..." + ពិនិត្យមើលឡើងវិញនូវបញ្ចីអ្នកទទួល ចុច ៉បង្ហាញព៍ត័មានលំអិត...៉ + + + Confirm send coins + បញ្ចាក់​ ក្នុងការបញ្ចូនកាក់ + (no label) - (គ្មាន​ឡាបែល) + (គ្មាន​ស្លាក​សញ្ញា) SendCoinsEntry - + + &Label: + &ស្លាក​សញ្ញា: + + + Choose previously used address + Choose previously used address + + + Alt+A + Alt+A + + + Paste address from clipboard + Paste address from clipboard + + + Alt+P + Alt+P + + + Use available balance + ប្រើប្រាស់សមតុល្យដែលមានសាច់ប្រាក់ + + + Message: + សារៈ + + + This is an unauthenticated payment request. + នេះជាសំណើរទូរទាត់ប្រាក់មិនទាន់បានបញ្ចាក់តាមច្បាប់ត្រឹមត្រូវ។ + + + This is an authenticated payment request. + នេះជាសំណើរទូរទាត់ប្រាក់ដែលបានបញ្ចាក់តាមច្បាប់ត្រឹមត្រូវ។ + + + Enter a label for this address to add it to the list of used addresses + បញ្ចូលស្លាក​សញ្ញាមួយ សម្រាប់អាសយដ្ឋាននេះ ដើម្បីបញ្ចូលវាទៅក្នងបញ្ចីរអាសយដ្ឋានដែលបានប្រើប្រាស់ + + + Pay To: + បង់ទៅកាន់ + + + Memo: + អនុស្សរណៈ + + ShutdownWindow - + + Do not shut down the computer until this window disappears. + សូមកុំទាន់បិទកុំព្យូទ័រនេះ រហូលទាល់តែវិនដូរនេះលុបបាត់។ + + SignVerifyMessageDialog - + + Choose previously used address + Choose previously used address + + + Alt+A + Alt+A + + + Paste address from clipboard + Paste address from clipboard + + + Alt+P + Alt+P + + + Enter the message you want to sign here + សូមបញ្ចូលពាក្យដែលអ្នកចង់បញ្ចូលនៅទីនេះ + + + Signature + ហត្ថលេខា + + + Clear &All + Clear &All + + + Click "Sign Message" to generate signature + ចុច ៉ហត្ថលេខា​ លើសារ​ ​ ៉​ដើម្បីបង្កើតហត្ថលេខា + + + The entered address is invalid. + អាសយដ្ឋានដែលបានបញ្ចូល មិនត្រឹមត្រូវ។ + + + Please check the address and try again. + សូមពិនិត្យអាសយដ្ឋាននេះឡើងវិញ រួចហើយព្យាយាមម្តងទៀត។ + + + Wallet unlock was cancelled. + បោះបង់ចោល ការដោះសោរកាបូបអេឡិចត្រូនិច។ + + + No error + មិនមានបញ្ហា + + + Message signed. + សារបានចុះហត្ថលេខា។ + + + The signature could not be decoded. + ការចុះហត្ថលេខានេះមិនគួរត្រូវបានបម្លែងទៅជាភាសាកុំព្យូទ័រទេ។ + + + Please check the signature and try again. + សូមពិនិត្យការចុះហត្ថលេខានេះឡើងវិញ រូចហើយព្យាយាមម្តងទៀត។ + + + Message verification failed. + សារបញ្ចាក់ មិនត្រឹមត្រូវ។ + + + Message verified. + សារត្រូវបានផ្ទៀងផ្ទាត់។ + + TrafficGraphWidget - + + KB/s + KB/s + + TransactionDesc - + + Open for %n more block(s) + បើក %n ប្លុកជាច្រើនទៀត + + + abandoned + បានបោះបង់ចោល + + + Status + ស្ថានភាព + + + Date + ថ្ងៃ + + + Source + ប្រភព + + + Generated + បានបង្កើត + + + unknown + unknown + + + To + ទៅកាន់ + + + own address + អាសយដ្ឋានផ្ទាល់ខ្លួន + + + watch-only + សម្រាប់តែមើល + + + label + ស្លាក​សញ្ញា + + + not accepted + មិនបានទទួល + + + Transaction fee + កម្រៃប្រត្តិបត្តិការ + + + Message + Message + + + Comment + យោលបល់ + + + Transaction ID + អត្តសញ្ញាណ ប្រត្តិបត្តិការ + + + Transaction total size + ទំហំសរុបប្រត្តិបត្តិការ + + + Transaction virtual size + ទំហំប្រត្តិបត្តិការជាក់ស្តែង + + + Transaction + ប្រត្តិបត្តិការ + + + Inputs + បញ្ចូល + + + Amount + ចំនួន + + + true + ត្រូវ + + + false + មិនត្រឹមត្រូវ + + TransactionDescDialog TransactionTableModel + + Date + ថ្ងៃ + + + Type + ប្រភេទ + Label - ឡាបែល + ស្លាក​សញ្ញា + + + Open for %n more block(s) + បើក %n ប្លុកជាច្រើនទៀត + + + Unconfirmed + មិនទាន់បានបញ្ចាក់ច្បាស់ + + + Abandoned + បានបោះបង់ + + + Received with + បានទទួលជាមួយនឹង + + + Received from + បានទទួលពី + + + Sent to + Sent to + + + Payment to yourself + បង់ប្រាក់ទៅខ្លួនអ្នក + + + Mined + បានរុករករ៉ែ + + + watch-only + សម្រាប់តែមើល + + + (n/a) + (មិនមាន) (no label) - (គ្មាន​ឡាបែល) + (គ្មាន​ស្លាកសញ្ញា) + + + Date and time that the transaction was received. + ថ្ងៃ និង ពេលវេលាដែលទទួលបានប្រត្តិបត្តិការ។ + + + Type of transaction. + ប្រភេទនៃប្រត្តិបត្តិការ TransactionView + + Received with + Received with + + + Sent to + Sent to + + + To yourself + ទៅកាន់ខ្លូនអ្នក + + + Mined + បានរុករករ៉ែ + + + Other + ផ្សេងទៀត + + + Enter address, transaction id, or label to search + បញ្ចូលអាសយដ្ឋាន អត្តសញ្ញាណប្រត្តិបត្តិការ ឫ ស្លាក​សញ្ញា ដើម្បីធ្វើការស្វែងរក + + + Min amount + ចំនួនតិចបំផុត + + + Abandon transaction + បោះបង់ប្រត្តិបត្តិការ + + + Increase transaction fee + តំឡើងកម្រៃប្រត្តិបត្តិការ + + + Copy address + ចម្លងអាសយដ្ឋាន + + + Copy label + ថតចម្លងស្លាកសញ្ញា + + + Copy amount + Copy amount + + + Copy transaction ID + Copy transaction ID + + + Edit label + កែប្រែស្លាកសញ្ញា + Comma separated file (*.csv) ឯកសារបំបែកដោយក្បៀស (*.csv) + + Confirmed + Confirmed + + + Date + Date + + + Type + Type + Label - ឡាបែល + ស្លាកសញ្ញា Address @@ -557,6 +1709,14 @@ WalletController + + Close wallet + Close wallet + + + Close all wallets + Close all wallets + WalletFrame @@ -567,7 +1727,27 @@ WalletModel - + + Send Coins + បញ្ជូនកាក់ + + + Increasing transaction fee failed + តំឡើងកម្រៃប្រត្តិបត្តិការមិនជោគជ័យ + + + Do you want to increase the fee? + តើអ្នកចង់តំឡើងកម្រៃដែរ ឫទេ? + + + Current fee: + កម្រៃបច្ចុប្បន្ន + + + default wallet + default wallet + + WalletView @@ -582,8 +1762,108 @@ Error បញ្ហា - + + Load Transaction Data + ទាញយកទិន្ន័យប្រត្តិបត្តិការ + + + Partially Signed Transaction (*.psbt) + ប្រត្តិបត្តិការ ដែលបានចុះហត្ថលេខាមិនពេញលេញ (*.psbt) + + + Backup Successful + ចំម្លងទុកដោយជោគជ័យ + + + Cancel + ចាកចេញ + + bitcoin-core - + + Transaction fee and change calculation failed + ការគណនា ការផ្លាស់ប្តូរ និង កម្រៃប្រត្តិបត្តការ មិនជោគជ័យ + + + The transaction amount is too small to send after the fee has been deducted + ចំនួនប្រត្តិបត្តិការមានទឹកប្រាក់ទំហំតិចតួច ក្នុងការផ្ញើរចេញទៅ បន្ទាប់ពីកំរៃត្រូវបានកាត់រួចរាល់ + + + This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. + នេះជាកម្រៃប្រត្តិបត្តិការតូចបំផុត ដែលអ្នកទូរទាត់ (បន្ថែមទៅលើកម្រៃធម្មតា)​​ ដើម្បីផ្តល់អាទិភាពលើការជៀសវៀងការចំណាយដោយផ្នែក សម្រាប់ការជ្រើសរើសកាក់ដោយទៀងទាត់។ + + + Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. + ប្រត្តិបត្តការនេះ ត្រូវការផ្លាស់ប្តូរអាសយដ្ឋាន​​ ប៉ុន្តែយើងមិនអាចបង្កើតវាបាន។ ដូច្នេះសូមហៅទៅកាន់ Keypoolrefill។ + + + Disk space is too low! + ទំហំឌីស មានកំរិតទាប + + + Error reading from database, shutting down. + បញ្ហា​ក្នុងការទទួលបានទិន្ន័យ​ ពីមូលដ្ឋានទិន្ន័យ ដូច្នេះកំពុងតែបិទ។ + + + Signing transaction failed + ប្រត្តិបត្តការចូល មិនជោគជ័យ + + + The transaction amount is too small to pay the fee + ចំនួនប្រត្តិបត្តិការមានទឹកប្រាក់ទំហំតូចពេក សម្រាប់បង់ប្រាក់ + + + Transaction amount too small + ចំនួនប្រត្តិបត្តិការមានទឹកប្រាក់ទំហំតូច + + + Transaction too large + ប្រត្តិបត្តការទឹកប្រាក់ មានទំហំធំ + + + Verifying wallet(s)... + កំពុងផ្ទៀងផ្ទាត់ កាបូបអេឡិចត្រូនិច... + + + -maxtxfee is set very high! Fees this large could be paid on a single transaction. + -maxtxfee មានតំម្លៃខ្ពស់ពេក។​ តំម្លៃនេះ អាចគួរត្រូវបានបង់សម្រាប់មួយប្រត្តិបត្តិការ។ + + + This is the transaction fee you may pay when fee estimates are not available. + អ្នកនឹងទូរទាត់ កម្រៃប្រត្តិបត្តិការនេះ នៅពេលណាដែល ទឹកប្រាក់នៃការប៉ាន់ស្មាន មិនទាន់មាន។ + + + This is the minimum transaction fee you pay on every transaction. + នេះជាកម្រៃប្រត្តិបត្តិការតិចបំផុត អ្នកបង់រាល់ពេលធ្វើប្រត្តិបត្តិការម្តងៗ។ + + + This is the transaction fee you will pay if you send a transaction. + នេះជាកម្រៃប្រត្តិបត្តិការ អ្នកនឹងបង់ប្រសិនបើអ្នកធ្វើប្រត្តិបត្តិការម្តង។ + + + Transaction amounts must not be negative + ចំនួនប្រត្តិបត្តិការ មិនអាចអវិជ្ជមានបានទេ + + + Loading block index... + កំពុងបង្ហាញ សន្ទស្សន៍ប្លុក + + + Loading wallet... + កំពុងបង្ហាញកាបូបអេឡិចត្រូនិច... + + + Cannot downgrade wallet + មិនអាចបន្ទាបកាបូបអេឡិត្រូនិច + + + Rescanning... + ការត្រួតពិនិត្យម្តងទៀត... + + + Done loading + បានធ្វើរួចរាល់ហើយ កំពុងបង្ហាញ + + \ No newline at end of file diff --git a/src/qt/locale/bitcoin_la.ts b/src/qt/locale/bitcoin_la.ts index 2eaf377d6..f3ea2dc24 100644 --- a/src/qt/locale/bitcoin_la.ts +++ b/src/qt/locale/bitcoin_la.ts @@ -1,6 +1,10 @@ AddressBookPage + + Right-click to edit address or label + Right-click to edit address or label + Create a new address Crea novam inscriptionem diff --git a/src/qt/locale/bitcoin_lv.ts b/src/qt/locale/bitcoin_lv.ts index b905ab6dc..80f01a186 100644 --- a/src/qt/locale/bitcoin_lv.ts +++ b/src/qt/locale/bitcoin_lv.ts @@ -163,6 +163,10 @@ Confirm wallet encryption Apstiprināt maciņa šifrēšanu + + Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! + Brīdinājums: Šifrējot Jūsu maciņu, gadījumā ja aizmirsīsiet savu paroli, Jūs NEATGRIEZENISKI ZAUDĒSIET VISUS SAVUS "BITKOINUS"! + Are you sure you wish to encrypt your wallet? Vai tu tiešām vēlies šifrēt savu maciņu? @@ -171,6 +175,14 @@ Wallet encrypted Maciņš šifrēts + + Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. + Ievadiet savu paroli Jūsu maciņam, lūdzu lietojiet vismaz desmit simbolus, astoņus vai vairāk vārdus. + + + Enter the old passphrase and new passphrase for the wallet. + Ievadiet veco un jauno paroli Jūsu maciņam + Wallet to be encrypted Maciņu nepieciešams šifrēt. @@ -183,6 +195,14 @@ Wallet encryption failed Maciņa šifrēšana neizdevās + + Wallet unlock failed + Maciņa atslēgšana neizdevās + + + Wallet decryption failed + Maciņa atšifrēšana neizdevās + BanTableModel @@ -221,6 +241,10 @@ Quit application Aizvērt programmu + + &About %1 + &Par %1 + About &Qt Par &Qt diff --git a/src/qt/locale/bitcoin_ml.ts b/src/qt/locale/bitcoin_ml.ts index c7ca619d5..8dd2264b5 100644 --- a/src/qt/locale/bitcoin_ml.ts +++ b/src/qt/locale/bitcoin_ml.ts @@ -688,7 +688,7 @@ Signing is only possible with addresses of the type 'legacy'. Dust: - പൊടി: + ഡസ്ട്: After Fee: @@ -700,7 +700,7 @@ Signing is only possible with addresses of the type 'legacy'. (un)select all - (അൺ) എല്ലാം തിരഞ്ഞെടുക്കുക + എല്ലാം തിരഞ്ഞു (എടുക്കുക /എടുക്കാതിരിക്കുക) Tree mode @@ -754,26 +754,154 @@ Signing is only possible with addresses of the type 'legacy'. Lock unspent ചെലവഴിക്കാത്തത് പൂട്ടുക + + Unlock unspent + അൺസ്പെന്റുകൾ അൺലോക്ക് ചെയ്യുക + + + Copy quantity + നിര്‍ദ്ധിഷ്‌ടസംഖ്യ / അളവ് പകർത്തുക + + + Copy fee + പകർത്തു ഫീസ് + + + Copy after fee + ശേഷമുള്ള ഫീ പകർത്തു + + + Copy bytes + ബൈറ്റ്സ് പകർത്തു + + + Copy dust + ഡസ്ട് പകർത്തു + + + Copy change + ചേഞ്ച് പകർത്തു + + + (%1 locked) + (%1 ലോക്ക് ആക്കിയിരിക്കുന്നു) + + + yes + അതെ / ശരി + + + no + ഇല്ല + + + This label turns red if any recipient receives an amount smaller than the current dust threshold. + ഏതെങ്കിലും സ്വീകർത്താവിന് നിലവിലെ ഡസ്ട് പരിധിയേക്കാൾ ചെറിയ തുക ലഭിക്കുകയാണെങ്കിൽ ഈ ലേബൽ ചുവപ്പായി മാറുന്നു. + + + Can vary +/- %1 satoshi(s) per input. + ഒരു ഇൻപുട്ടിന് +/-%1 സതോഷി(കൾ) വ്യത്യാസം ഉണ്ടാകാം. + (no label) (ലേബൽ ഇല്ല) - + + change from %1 (%2) + %1 (%2) ൽ നിന്ന് മാറ്റുക + + + (change) + (മാറ്റം) + + CreateWalletActivity - + + Creating Wallet <b>%1</b>... + വാലറ്റ് രൂപീകരിക്കുന്നു <b>%1</b>... + + + Create wallet failed + വാലറ്റ് രൂപീകരണം പരാജയപ്പെട്ടു + + + Create wallet warning + വാലറ്റ് രൂപീകരണത്തിലെ മുന്നറിയിപ്പ് + + CreateWalletDialog Create Wallet വാലറ്റ് / പണസഞ്ചി സൃഷ്ടിക്കുക : + + Wallet Name + വാലറ്റ് പേര് + + + Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. + എൻ‌ക്രിപ്റ്റ് വാലറ്റ് + + + Encrypt Wallet + എൻ‌ക്രിപ്റ്റ് വാലറ്റ് + + + Disable Private Keys + സ്വകാര്യ കീകൾ പ്രവർത്തനരഹിതമാക്കുക + + + Make Blank Wallet + ശൂന്യമായ വാലറ്റ് നിർമ്മിക്കുക + + + Create + സൃഷ്ടിക്കുക + EditAddressDialog - + + Edit Address + വിലാസം എഡിറ്റുചെയ്യുക + + + &Label + &ലേബൽ + + + &Address + & വിലാസം + + + New sending address + പുതിയ അയയ്‌ക്കുന്ന വിലാസം + + + Edit receiving address + സ്വീകരിക്കുന്ന വിലാസം എഡിറ്റുചെയ്യുക + + + Edit sending address + അയയ്‌ക്കുന്ന വിലാസം എഡിറ്റുചെയ്യുക + + + Could not unlock wallet. + വാലറ്റ് അൺലോക്കുചെയ്യാനായില്ല. + + + New key generation failed. + പുതിയ കീ ജനറേഷൻ പരാജയപ്പെട്ടു + + FreespaceChecker + + A new data directory will be created. + ഒരു പുതിയ ഡാറ്റ ഡയറക്ടറി സൃഷ്ടിക്കും. + name നാമധേയം / പേര് @@ -781,9 +909,25 @@ Signing is only possible with addresses of the type 'legacy'. HelpMessageDialog - + + version + പതിപ്പ് + + + Command-line options + കമാൻഡ്-ലൈൻ ഓപ്ഷനുകൾ + + Intro + + Welcome + സ്വാഗതം + + + Bitcoin + ബിറ്റ്കോയിൻ + Error പിശക് @@ -791,10 +935,22 @@ Signing is only possible with addresses of the type 'legacy'. ModalOverlay + + Form + ഫോം + + + Number of blocks left + അവശേഷിക്കുന്ന ബ്ലോക്കുകൾ + Unknown... അജ്ഞാതമായ + + Last block time + അവസാന ബ്ലോക്കിന്റെ സമയം + Progress പുരോഗതി @@ -827,6 +983,10 @@ Signing is only possible with addresses of the type 'legacy'. OverviewPage + + Form + ഫോം + Available: ലഭ്യമായ @@ -845,16 +1005,76 @@ Signing is only possible with addresses of the type 'legacy'. PaymentServer - + + URI handling + യു‌ആർ‌ഐ കൈകാര്യം ചെയ്യൽ + + + 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. + 'bitcoin://' എന്നത് ശരിയായ ഒരു URI അല്ല .പകരം 'bitcoin:' ഉപയോഗിക്കൂ + + + Cannot process payment request because BIP70 is not supported. + BIP70 പിന്തുണയ്‌ക്കാത്തതിനാൽ പേയ്‌മെന്റ് അഭ്യർത്ഥന പ്രോസസ്സ് ചെയ്യാൻ കഴിയില്ല. + + + Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. + BIP70 ലെ വ്യാപകമായ സുരക്ഷാ പോരായ്മകൾ കാരണം, വാലറ്റുകൾ സ്വിച്ചുചെയ്യാനുള്ള ഏതെങ്കിലും വ്യാപാര നിർദ്ദേശങ്ങൾ അവഗണിക്കണമെന്ന് ശക്തമായി ശുപാർശ ചെയ്യുന്നു. + + + If you are receiving this error you should request the merchant provide a BIP21 compatible URI. + നിങ്ങൾക്ക് ഈ പിശക് ലഭിക്കുകയാണെങ്കിൽ, വ്യാപാരിയോട് ഒരു BIP21 അനുയോജ്യമായ URI നൽകാൻ അഭ്യർത്ഥിക്കണം. + + + Invalid payment address %1 + പേയ്‌മെന്റ് വിലാസം അസാധുവാണ് %1 + + + URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters. + യു‌ആർ‌ഐ പാഴ്‌സുചെയ്യാൻ‌ കഴിയില്ല! അസാധുവായ ബിറ്റ്കോയിൻ വിലാസം അല്ലെങ്കിൽ കേടായ യു‌ആർ‌ഐ പാരാമീറ്ററുകൾ കാരണം ഇത് സംഭവിക്കാം. + + + Payment request file handling + പേയ്‌മെന്റ് അഭ്യർത്ഥന ഫയൽ കൈകാര്യം ചെയ്യൽ + + PeerTableModel - + + User Agent + ഉപയോക്തൃ ഏജൻറ് + + + Node/Service + നോഡ് /സേവനങ്ങൾ + + + NodeId + നോഡ്ഐഡി + + + Ping + പിംഗ് + + + Sent + അയക്കുക + + + Received + ലഭിച്ചവ + + QObject Amount തുക + + Enter a Bitcoin address (e.g. %1) + ഒരു ബിറ്റ്കോയിൻ വിലാസം നൽകുക(e.g. %1) + Error: %1 തെറ്റ് : %1 @@ -865,10 +1085,26 @@ Signing is only possible with addresses of the type 'legacy'. RPCConsole + + Received + ലഭിച്ചവ + + + Sent + അയക്കുക + + + User Agent + ഉപയോക്തൃ ഏജൻറ് + Node window നോഡ് വിൻഡോ + + Last block time + അവസാന ബ്ലോക്കിന്റെ സമയം + ReceiveCoinsDialog @@ -880,6 +1116,10 @@ Signing is only possible with addresses of the type 'legacy'. Copy amount തുക പകർത്തുക + + Could not unlock wallet. + വാലറ്റ് അൺലോക്കുചെയ്യാനായില്ല. + ReceiveRequestDialog @@ -937,10 +1177,34 @@ Signing is only possible with addresses of the type 'legacy'. Dust: പൊടി: + + Copy quantity + നിര്‍ദ്ധിഷ്‌ടസംഖ്യ / അളവ് പകർത്തുക + Copy amount തുക പകർത്തുക + + Copy fee + പകർത്തു ഫീസ് + + + Copy after fee + ശേഷമുള്ള ഫീ പകർത്തു + + + Copy bytes + ബൈറ്റ്സ് പകർത്തു + + + Copy dust + ഡസ്ട് പകർത്തു + + + Copy change + ചേഞ്ച് പകർത്തു + Payment request expired. പെയ്മെന്റിനുള്ള അഭ്യർത്ഥന കാലഹരണപ്പെട്ടു പോയിരിക്കുന്നു. @@ -952,12 +1216,32 @@ Signing is only possible with addresses of the type 'legacy'. SendCoinsEntry + + Choose previously used address + മുൻപ്‌ ഉപയോഗിച്ച അഡ്രസ് തെരഞ്ഞെടുക്കുക + + + The Bitcoin address to send the payment to + പേയ്മെന്റ് അയക്കേണ്ട ബിറ്കോയിൻ അഡ്രസ് + + + Alt+A + Alt+A + ShutdownWindow SignVerifyMessageDialog + + Choose previously used address + മുൻപ്‌ ഉപയോഗിച്ച അഡ്രസ് തെരഞ്ഞെടുക്കുക + + + Alt+A + Alt+A + TrafficGraphWidget @@ -1079,5 +1363,119 @@ Signing is only possible with addresses of the type 'legacy'. bitcoin-core + + Error reading from database, shutting down. + ഡാറ്റാബേസിൽ നിന്നും വായിച്ചെടുക്കുന്നതിനു തടസം നേരിട്ടു, പ്രവർത്തനം അവസാനിപ്പിക്കുന്നു. + + + Error upgrading chainstate database + ചെയിൻസ്റ്റേറ്റ് ഡാറ്റാബേസ് അപ്ഗ്രേഡ് ചെയ്യുന്നതിൽ തടസം നേരിട്ടു + + + Error: Disk space is low for %s + Error: %s ൽ ഡിസ്ക് സ്പേസ് വളരെ കുറവാണ് + + + Invalid -onion address or hostname: '%s' + തെറ്റായ ഒണിയൻ അഡ്രസ് അല്ലെങ്കിൽ ഹോസ്റ്റ്നെയിം: '%s' + + + Invalid -proxy address or hostname: '%s' + തെറ്റായ -പ്രോക്സി അഡ്രസ് അല്ലെങ്കിൽ ഹോസ്റ്റ് നെയിം : '%s' + + + Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) + തെറ്റായ തുക -paytxfee=<amount> :'%s' (ഏറ്റവും കുറഞ്ഞത് %s എങ്കിലും ആയിരിക്കണം ) + + + Invalid netmask specified in -whitelist: '%s' + -whitelist: '%s' ൽ രേഖപ്പെടുത്തിയിരിക്കുന്ന netmask തെറ്റാണ്  + + + Need to specify a port with -whitebind: '%s' + -whitebind: '%s' നൊടൊപ്പം ഒരു പോർട്ട് കൂടി നിർദ്ദേശിക്കേണ്ടതുണ്ട് + + + Prune mode is incompatible with -blockfilterindex. + -blockfilterindex നൊടൊപ്പം പൃണ് മോഡ് സാധ്യമല്ല . + + + Reducing -maxconnections from %d to %d, because of system limitations. + സിസ്റ്റത്തിന്റെ പരിമിധികളാൽ -maxconnections ന്റെ മൂല്യം %d ൽ നിന്നും %d യിലേക്ക് കുറക്കുന്നു. + + + Section [%s] is not recognized. + Section [%s] തിരിച്ചറിഞ്ഞില്ല. + + + Signing transaction failed + ഇടപാട് സൈൻ ചെയ്യുന്നത് പരാജയപ്പെട്ടു. + + + Specified -walletdir "%s" does not exist + നിർദേശിച്ച -walletdir "%s" നിലവിൽ ഇല്ല + + + Specified -walletdir "%s" is a relative path + നിർദേശിച്ച -walletdir "%s" ഒരു റിലേറ്റീവ് പാത്ത് ആണ് + + + Specified -walletdir "%s" is not a directory + നിർദേശിച്ച -walletdir "%s" ഒരു ഡയറക്ടറി അല്ല + + + The specified config file %s does not exist + + നിർദേശിച്ച കോൺഫിഗുറേഷൻ ഫയൽ %s നിലവിലില്ല + + + + The transaction amount is too small to pay the fee + ഇടപാട് മൂല്യം തീരെ കുറവായതിനാൽ പ്രതിഫലം നൽകാൻ കഴിയില്ല. + + + This is experimental software. + ഇത് പരീക്ഷിച്ചുകൊണ്ടിരിക്കുന്ന ഒരു സോഫ്റ്റ്‌വെയർ ആണ്. + + + Transaction amount too small + ഇടപാട് മൂല്യം വളരെ കുറവാണ് + + + Transaction too large + ഇടപാട് വളരെ വലുതാണ് + + + Unable to bind to %s on this computer (bind returned error %s) + ഈ കംപ്യൂട്ടറിലെ %s ൽ ബൈൻഡ് ചെയ്യാൻ സാധിക്കുന്നില്ല ( ബൈൻഡ് തിരികെ തന്ന പിശക് %s ) + + + Unable to create the PID file '%s': %s + PID ഫയൽ '%s': %s നിർമിക്കാൻ സാധിക്കുന്നില്ല + + + Unable to generate initial keys + പ്രാഥമിക കീ നിർമ്മിക്കാൻ സാധിക്കുന്നില്ല + + + Unknown -blockfilterindex value %s. + -blockfilterindex ന്റെ മൂല്യം %s മനസിലാക്കാൻ കഴിയുന്നില്ല. + + + Verifying wallet(s)... + വാലറ്റ്(കൾ) പരിശോധിക്കുന്നു... + + + Warning: unknown new rules activated (versionbit %i) + മുന്നറിയിപ്പ്: പുതിയ ഒരു നിയമം ആക്ടിവേറ്റ് ചെയ്തിരിക്കുന്നു (versionbit %i) + + + -maxtxfee is set very high! Fees this large could be paid on a single transaction. + -maxtxfee യുടെ മൂല്യം വളരെ വലുതാണ്! ഇത്രയും ഉയര്ന്ന പ്രതിഫലം ഒരൊറ്റ ഇടപാടിൽ നൽകാൻ സാധ്യതയുണ്ട്. + + + This is the transaction fee you may pay when fee estimates are not available. + പ്രതിഫലം മൂല്യനിർണയം ലഭ്യമാകാത്ത പക്ഷം നിങ്ങൾ നല്കേണ്ടിവരുന്ന ഇടപാട് പ്രതിഫലം ഇതാണ്. + \ No newline at end of file diff --git a/src/qt/locale/bitcoin_mr_IN.ts b/src/qt/locale/bitcoin_mr_IN.ts index 22eef2605..3b6fae76f 100644 --- a/src/qt/locale/bitcoin_mr_IN.ts +++ b/src/qt/locale/bitcoin_mr_IN.ts @@ -75,7 +75,7 @@ Copy &Label - &लेबल कॉपी करा + शिक्का कॉपी करा &Edit @@ -85,16 +85,24 @@ Export Address List पत्त्याची निर्यात करा + + Comma separated file (*.csv) + Comma separated file (*.csv) + Exporting Failed निर्यात अयशस्वी - + + There was an error trying to save the address list to %1. Please try again. + There was an error trying to save the address list to %1. Please try again. + + AddressTableModel Label - लेबल + शिक्का Address @@ -102,95 +110,2283 @@ (no label) - (लेबल नाही) + (शिक्का नाही) AskPassphraseDialog - + + Passphrase Dialog + Passphrase Dialog + + + Enter passphrase + Enter passphrase + + + New passphrase + New passphrase + + + Repeat new passphrase + Repeat new passphrase + + + Show passphrase + Show passphrase + + + Encrypt wallet + Encrypt wallet + + + This operation needs your wallet passphrase to unlock the wallet. + This operation needs your wallet passphrase to unlock the wallet. + + + Unlock wallet + Unlock wallet + + + This operation needs your wallet passphrase to decrypt the wallet. + This operation needs your wallet passphrase to decrypt the wallet. + + + Decrypt wallet + Decrypt wallet + + + Change passphrase + Change passphrase + + + Confirm wallet encryption + Confirm wallet encryption + + + Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! + Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! + + + Are you sure you wish to encrypt your wallet? + Are you sure you wish to encrypt your wallet? + + + Wallet encrypted + Wallet encrypted + + + Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. + Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. + + + Enter the old passphrase and new passphrase for the wallet. + Enter the old passphrase and new passphrase for the wallet. + + + Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. + Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. + + + Wallet to be encrypted + Wallet to be encrypted + + + Your wallet is about to be encrypted. + Your wallet is about to be encrypted. + + + Your wallet is now encrypted. + Your wallet is now encrypted. + + + IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. + IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. + + + Wallet encryption failed + Wallet encryption failed + + + Wallet encryption failed due to an internal error. Your wallet was not encrypted. + Wallet encryption failed due to an internal error. Your wallet was not encrypted. + + + The supplied passphrases do not match. + The supplied passphrases do not match. + + + Wallet unlock failed + Wallet unlock failed + + + The passphrase entered for the wallet decryption was incorrect. + The passphrase entered for the wallet decryption was incorrect. + + + Wallet decryption failed + Wallet decryption failed + + + Wallet passphrase was successfully changed. + Wallet passphrase was successfully changed. + + + Warning: The Caps Lock key is on! + Warning: The Caps Lock key is on! + + BanTableModel - + + IP/Netmask + IP/Netmask + + + Banned Until + Banned Until + + BitcoinGUI + + Sign &message... + Sign &message... + + + Synchronizing with network... + Synchronizing with network... + + + &Overview + &Overview + + + Show general overview of wallet + Show general overview of wallet + + + &Transactions + &Transactions + + + Browse transaction history + Browse transaction history + + + E&xit + E&xit + + + Quit application + Quit application + + + &About %1 + &About %1 + + + Show information about %1 + Show information about %1 + + + About &Qt + About &Qt + + + Show information about Qt + Show information about Qt + + + &Options... + &Options... + + + Modify configuration options for %1 + Modify configuration options for %1 + + + &Encrypt Wallet... + &Encrypt Wallet... + + + &Backup Wallet... + &Backup Wallet... + + + &Change Passphrase... + &Change Passphrase... + + + Open &URI... + Open &URI... + + + Create Wallet... + Create Wallet... + + + Create a new wallet + Create a new wallet + + + Wallet: + Wallet: + + + Click to disable network activity. + Click to disable network activity. + + + Network activity disabled. + Network activity disabled. + + + Click to enable network activity again. + Click to enable network activity again. + + + Syncing Headers (%1%)... + Syncing Headers (%1%)... + + + Reindexing blocks on disk... + Reindexing blocks on disk... + + + Proxy is <b>enabled</b>: %1 + Proxy is <b>enabled</b>: %1 + + + Send coins to a Bitcoin address + Send coins to a Bitcoin address + + + Backup wallet to another location + Backup wallet to another location + + + Change the passphrase used for wallet encryption + Change the passphrase used for wallet encryption + + + &Verify message... + &Verify message... + + + &Send + &Send + + + &Receive + &Receive + + + &Show / Hide + &Show / Hide + + + Show or hide the main Window + Show or hide the main Window + + + Encrypt the private keys that belong to your wallet + Encrypt the private keys that belong to your wallet + + + Sign messages with your Bitcoin addresses to prove you own them + Sign messages with your Bitcoin addresses to prove you own them + + + Verify messages to ensure they were signed with specified Bitcoin addresses + Verify messages to ensure they were signed with specified Bitcoin addresses + + + &File + &File + + + &Settings + &Settings + + + &Help + &Help + + + Tabs toolbar + Tabs toolbar + + + Request payments (generates QR codes and bitcoin: URIs) + Request payments (generates QR codes and bitcoin: URIs) + + + Show the list of used sending addresses and labels + Show the list of used sending addresses and labels + + + Show the list of used receiving addresses and labels + Show the list of used receiving addresses and labels + + + &Command-line options + &Command-line options + + + Indexing blocks on disk... + Indexing blocks on disk... + + + Processing blocks on disk... + Processing blocks on disk... + + + %1 behind + %1 behind + + + Last received block was generated %1 ago. + Last received block was generated %1 ago. + + + Transactions after this will not yet be visible. + Transactions after this will not yet be visible. + + + Error + Error + + + Warning + Warning + + + Information + Information + + + Up to date + Up to date + + + Node window + Node window + + + Open node debugging and diagnostic console + Open node debugging and diagnostic console + + + &Sending addresses + &Sending addresses + + + &Receiving addresses + &Receiving addresses + + + Open a bitcoin: URI + Open a bitcoin: URI + + + Open Wallet + Open Wallet + + + Open a wallet + Open a wallet + + + Close Wallet... + Close Wallet... + + + Close wallet + Close wallet + + + Show the %1 help message to get a list with possible Bitcoin command-line options + Show the %1 help message to get a list with possible Bitcoin command-line options + + + default wallet + default wallet + + + No wallets available + No wallets available + + + &Window + &Window + + + Minimize + Minimize + + + Zoom + Zoom + + + Main Window + Main Window + + + %1 client + %1 client + + + Connecting to peers... + Connecting to peers... + + + Catching up... + Catching up... + + + Error: %1 + Error: %1 + + + Warning: %1 + Warning: %1 + + + Date: %1 + + Date: %1 + + + + Amount: %1 + + Amount: %1 + + + + Wallet: %1 + + Wallet: %1 + + + + Type: %1 + + Type: %1 + + + + Label: %1 + + Label: %1 + + + + Address: %1 + + Address: %1 + + + + Sent transaction + Sent transaction + + + Incoming transaction + Incoming transaction + + + HD key generation is <b>enabled</b> + HD key generation is <b>enabled</b> + + + HD key generation is <b>disabled</b> + HD key generation is <b>disabled</b> + + + Private key <b>disabled</b> + Private key <b>disabled</b> + + + Wallet is <b>encrypted</b> and currently <b>unlocked</b> + Wallet is <b>encrypted</b> and currently <b>unlocked</b> + + + Wallet is <b>encrypted</b> and currently <b>locked</b> + Wallet is <b>encrypted</b> and currently <b>locked</b> + CoinControlDialog + + Coin Selection + Coin Selection + + + Quantity: + Quantity: + + + Bytes: + Bytes: + + + Amount: + Amount: + + + Fee: + Fee: + + + Dust: + Dust: + + + After Fee: + After Fee: + + + Change: + Change: + + + (un)select all + (un)select all + + + Tree mode + Tree mode + + + List mode + List mode + + + Amount + Amount + + + Received with label + Received with label + + + Received with address + Received with address + + + Date + Date + + + Confirmations + Confirmations + + + Confirmed + Confirmed + + + Copy address + Copy address + + + Copy label + Copy label + + + Copy amount + Copy amount + + + Copy transaction ID + Copy transaction ID + + + Lock unspent + Lock unspent + + + Unlock unspent + Unlock unspent + + + Copy quantity + Copy quantity + + + Copy fee + Copy fee + + + Copy after fee + Copy after fee + + + Copy bytes + Copy bytes + + + Copy dust + Copy dust + + + Copy change + Copy change + + + (%1 locked) + (%1 locked) + + + yes + yes + + + no + no + + + This label turns red if any recipient receives an amount smaller than the current dust threshold. + This label turns red if any recipient receives an amount smaller than the current dust threshold. + + + Can vary +/- %1 satoshi(s) per input. + Can vary +/- %1 satoshi(s) per input. + (no label) (लेबल नाही) - + + change from %1 (%2) + change from %1 (%2) + + + (change) + (change) + + CreateWalletActivity - + + Creating Wallet <b>%1</b>... + Creating Wallet <b>%1</b>... + + + Create wallet failed + Create wallet failed + + + Create wallet warning + Create wallet warning + + CreateWalletDialog + + Create Wallet + Create Wallet + + + Wallet Name + Wallet Name + + + Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. + Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. + + + Encrypt Wallet + Encrypt Wallet + + + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. + + + Disable Private Keys + Disable Private Keys + + + Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. + Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. + + + Make Blank Wallet + Make Blank Wallet + + + Create + Create + EditAddressDialog - + + Edit Address + Edit Address + + + &Label + &Label + + + The label associated with this address list entry + The label associated with this address list entry + + + The address associated with this address list entry. This can only be modified for sending addresses. + The address associated with this address list entry. This can only be modified for sending addresses. + + + &Address + &Address + + + New sending address + New sending address + + + Edit receiving address + Edit receiving address + + + Edit sending address + Edit sending address + + + The entered address "%1" is not a valid Bitcoin address. + The entered address "%1" is not a valid Bitcoin address. + + + Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address. + Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address. + + + The entered address "%1" is already in the address book with label "%2". + The entered address "%1" is already in the address book with label "%2". + + + Could not unlock wallet. + Could not unlock wallet. + + + New key generation failed. + New key generation failed. + + FreespaceChecker - + + A new data directory will be created. + A new data directory will be created. + + + name + name + + + Directory already exists. Add %1 if you intend to create a new directory here. + Directory already exists. Add %1 if you intend to create a new directory here. + + + Path already exists, and is not a directory. + Path already exists, and is not a directory. + + + Cannot create data directory here. + Cannot create data directory here. + + HelpMessageDialog - + + version + version + + + About %1 + About %1 + + + Command-line options + Command-line options + + Intro + + Welcome + Welcome + + + Welcome to %1. + Welcome to %1. + + + As this is the first time the program is launched, you can choose where %1 will store its data. + As this is the first time the program is launched, you can choose where %1 will store its data. + + + When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. + When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. + + + Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. + Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. + + + This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. + This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. + + + If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. + If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. + + + Use the default data directory + Use the default data directory + + + Use a custom data directory: + Use a custom data directory: + + + Bitcoin + Bitcoin + + + Discard blocks after verification, except most recent %1 GB (prune) + Discard blocks after verification, except most recent %1 GB (prune) + + + At least %1 GB of data will be stored in this directory, and it will grow over time. + At least %1 GB of data will be stored in this directory, and it will grow over time. + + + Approximately %1 GB of data will be stored in this directory. + Approximately %1 GB of data will be stored in this directory. + + + %1 will download and store a copy of the Bitcoin block chain. + %1 will download and store a copy of the Bitcoin block chain. + + + The wallet will also be stored in this directory. + The wallet will also be stored in this directory. + + + Error: Specified data directory "%1" cannot be created. + Error: Specified data directory "%1" cannot be created. + + + Error + Error + ModalOverlay - + + Form + Form + + + Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. + Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. + + + Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network. + Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network. + + + Number of blocks left + Number of blocks left + + + Unknown... + Unknown... + + + Last block time + Last block time + + + Progress + Progress + + + Progress increase per hour + Progress increase per hour + + + calculating... + calculating... + + + Estimated time left until synced + Estimated time left until synced + + + Hide + Hide + + + Esc + Esc + + + %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. + %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. + + + Unknown. Syncing Headers (%1, %2%)... + Unknown. Syncing Headers (%1, %2%)... + + OpenURIDialog - + + Open bitcoin URI + Open bitcoin URI + + + URI: + URI: + + OpenWalletActivity - + + Open wallet failed + Open wallet failed + + + Open wallet warning + Open wallet warning + + + default wallet + default wallet + + + Opening Wallet <b>%1</b>... + Opening Wallet <b>%1</b>... + + OptionsDialog - + + Options + Options + + + &Main + &Main + + + Automatically start %1 after logging in to the system. + Automatically start %1 after logging in to the system. + + + &Start %1 on system login + &Start %1 on system login + + + Size of &database cache + Size of &database cache + + + Number of script &verification threads + Number of script &verification threads + + + IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1) + IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1) + + + Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type. + Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type. + + + Hide the icon from the system tray. + Hide the icon from the system tray. + + + &Hide tray icon + &Hide tray icon + + + Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu. + Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu. + + + Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. + Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. + + + Open the %1 configuration file from the working directory. + Open the %1 configuration file from the working directory. + + + Open Configuration File + Open Configuration File + + + Reset all client options to default. + Reset all client options to default. + + + &Reset Options + &Reset Options + + + &Network + &Network + + + Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. + Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. + + + Prune &block storage to + Prune &block storage to + + + GB + GB + + + Reverting this setting requires re-downloading the entire blockchain. + Reverting this setting requires re-downloading the entire blockchain. + + + MiB + MiB + + + (0 = auto, <0 = leave that many cores free) + (0 = auto, <0 = leave that many cores free) + + + W&allet + W&allet + + + Expert + Expert + + + Enable coin &control features + Enable coin &control features + + + If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed. + If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed. + + + &Spend unconfirmed change + &Spend unconfirmed change + + + Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled. + Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled. + + + Map port using &UPnP + Map port using &UPnP + + + Accept connections from outside. + Accept connections from outside. + + + Allow incomin&g connections + Allow incomin&g connections + + + Connect to the Bitcoin network through a SOCKS5 proxy. + Connect to the Bitcoin network through a SOCKS5 proxy. + + + &Connect through SOCKS5 proxy (default proxy): + &Connect through SOCKS5 proxy (default proxy): + + + Proxy &IP: + Proxy &IP: + + + &Port: + &Port: + + + Port of the proxy (e.g. 9050) + Port of the proxy (e.g. 9050) + + + Used for reaching peers via: + Used for reaching peers via: + + + IPv4 + IPv4 + + + IPv6 + IPv6 + + + Tor + Tor + + + &Window + &Window + + + Show only a tray icon after minimizing the window. + Show only a tray icon after minimizing the window. + + + &Minimize to the tray instead of the taskbar + &Minimize to the tray instead of the taskbar + + + M&inimize on close + M&inimize on close + + + &Display + &Display + + + User Interface &language: + User Interface &language: + + + The user interface language can be set here. This setting will take effect after restarting %1. + The user interface language can be set here. This setting will take effect after restarting %1. + + + &Unit to show amounts in: + &Unit to show amounts in: + + + Choose the default subdivision unit to show in the interface and when sending coins. + Choose the default subdivision unit to show in the interface and when sending coins. + + + Whether to show coin control features or not. + Whether to show coin control features or not. + + + &Third party transaction URLs + &Third party transaction URLs + + + Options set in this dialog are overridden by the command line or in the configuration file: + Options set in this dialog are overridden by the command line or in the configuration file: + + + &OK + &OK + + + &Cancel + &Cancel + + + default + default + + + none + none + + + Confirm options reset + Confirm options reset + + + Client restart required to activate changes. + Client restart required to activate changes. + + + Client will be shut down. Do you want to proceed? + Client will be shut down. Do you want to proceed? + + + Configuration options + Configuration options + + + The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file. + The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file. + + + Error + Error + + + The configuration file could not be opened. + The configuration file could not be opened. + + + This change would require a client restart. + This change would require a client restart. + + + The supplied proxy address is invalid. + The supplied proxy address is invalid. + + OverviewPage + + Form + Form + + + The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. + The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. + + + Watch-only: + Watch-only: + + + Available: + Available: + + + Your current spendable balance + Your current spendable balance + + + Pending: + Pending: + + + Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance + Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance + + + Immature: + Immature: + + + Mined balance that has not yet matured + Mined balance that has not yet matured + + + Balances + Balances + + + Total: + Total: + + + Your current total balance + Your current total balance + + + Your current balance in watch-only addresses + Your current balance in watch-only addresses + + + Spendable: + Spendable: + + + Recent transactions + Recent transactions + + + Unconfirmed transactions to watch-only addresses + Unconfirmed transactions to watch-only addresses + + + Mined balance in watch-only addresses that has not yet matured + Mined balance in watch-only addresses that has not yet matured + + + Current total balance in watch-only addresses + Current total balance in watch-only addresses + PSBTOperationsDialog + + Total Amount + Total Amount + + + or + or + PaymentServer - + + Payment request error + Payment request error + + + Cannot start bitcoin: click-to-pay handler + Cannot start bitcoin: click-to-pay handler + + + URI handling + URI handling + + + 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. + 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. + + + Cannot process payment request because BIP70 is not supported. + Cannot process payment request because BIP70 is not supported. + + + Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. + Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. + + + If you are receiving this error you should request the merchant provide a BIP21 compatible URI. + If you are receiving this error you should request the merchant provide a BIP21 compatible URI. + + + Invalid payment address %1 + Invalid payment address %1 + + + URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters. + URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters. + + + Payment request file handling + Payment request file handling + + PeerTableModel - + + User Agent + User Agent + + + Node/Service + Node/Service + + + NodeId + NodeId + + + Ping + Ping + + + Sent + Sent + + + Received + Received + + QObject - + + Amount + Amount + + + Enter a Bitcoin address (e.g. %1) + Enter a Bitcoin address (e.g. %1) + + + %1 d + %1 d + + + %1 h + %1 h + + + %1 m + %1 m + + + %1 s + %1 s + + + None + None + + + N/A + N/A + + + %1 ms + %1 ms + + + %1 and %2 + %1 and %2 + + + %1 B + %1 B + + + %1 KB + %1 KB + + + %1 MB + %1 MB + + + %1 GB + %1 GB + + + Error: Specified data directory "%1" does not exist. + Error: Specified data directory "%1" does not exist. + + + Error: Cannot parse configuration file: %1. + Error: Cannot parse configuration file: %1. + + + Error: %1 + Error: %1 + + + %1 didn't yet exit safely... + %1 didn't yet exit safely... + + + unknown + unknown + + QRImageWidget - + + &Save Image... + &Save Image... + + + &Copy Image + &Copy Image + + + Resulting URI too long, try to reduce the text for label / message. + Resulting URI too long, try to reduce the text for label / message. + + + Error encoding URI into QR Code. + Error encoding URI into QR Code. + + + QR code support not available. + QR code support not available. + + + Save QR Code + Save QR Code + + + PNG Image (*.png) + PNG Image (*.png) + + RPCConsole - + + N/A + N/A + + + Client version + Client version + + + &Information + &Information + + + General + General + + + Using BerkeleyDB version + Using BerkeleyDB version + + + Datadir + Datadir + + + To specify a non-default location of the data directory use the '%1' option. + To specify a non-default location of the data directory use the '%1' option. + + + Blocksdir + Blocksdir + + + To specify a non-default location of the blocks directory use the '%1' option. + To specify a non-default location of the blocks directory use the '%1' option. + + + Startup time + Startup time + + + Network + Network + + + Name + Name + + + Number of connections + Number of connections + + + Block chain + Block chain + + + Memory Pool + Memory Pool + + + Current number of transactions + Current number of transactions + + + Memory usage + Memory usage + + + Wallet: + Wallet: + + + (none) + (none) + + + &Reset + &Reset + + + Received + Received + + + Sent + Sent + + + &Peers + &Peers + + + Banned peers + Banned peers + + + Select a peer to view detailed information. + Select a peer to view detailed information. + + + Direction + Direction + + + Version + Version + + + Starting Block + Starting Block + + + Synced Headers + Synced Headers + + + Synced Blocks + Synced Blocks + + + The mapped Autonomous System used for diversifying peer selection. + The mapped Autonomous System used for diversifying peer selection. + + + Mapped AS + Mapped AS + + + User Agent + User Agent + + + Node window + Node window + + + Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. + Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. + + + Decrease font size + Decrease font size + + + Increase font size + Increase font size + + + Services + Services + + + Connection Time + Connection Time + + + Last Send + Last Send + + + Last Receive + Last Receive + + + Ping Time + Ping Time + + + The duration of a currently outstanding ping. + The duration of a currently outstanding ping. + + + Ping Wait + Ping Wait + + + Min Ping + Min Ping + + + Time Offset + Time Offset + + + Last block time + Last block time + + + &Open + &Open + + + &Console + &Console + + + &Network Traffic + &Network Traffic + + + Totals + Totals + + + In: + In: + + + Out: + Out: + + + Debug log file + Debug log file + + + Clear console + Clear console + + + 1 &hour + 1 &hour + + + 1 &day + 1 &day + + + 1 &week + 1 &week + + + 1 &year + 1 &year + + + &Disconnect + &Disconnect + + + Ban for + Ban for + + + &Unban + &Unban + + + Welcome to the %1 RPC console. + Welcome to the %1 RPC console. + + + Use up and down arrows to navigate history, and %1 to clear screen. + Use up and down arrows to navigate history, and %1 to clear screen. + + + Type %1 for an overview of available commands. + Type %1 for an overview of available commands. + + + For more information on using this console type %1. + For more information on using this console type %1. + + + WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. + WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. + + + Network activity disabled + Network activity disabled + + + Executing command without any wallet + Executing command without any wallet + + + Executing command using "%1" wallet + Executing command using "%1" wallet + + + (node id: %1) + (node id: %1) + + + via %1 + via %1 + + + never + never + + + Inbound + Inbound + + + Outbound + Outbound + + + Unknown + Unknown + + ReceiveCoinsDialog + + &Amount: + &Amount: + + + &Label: + &Label: + + + &Message: + &Message: + + + An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network. + An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network. + + + An optional label to associate with the new receiving address. + An optional label to associate with the new receiving address. + + + Use this form to request payments. All fields are <b>optional</b>. + Use this form to request payments. All fields are <b>optional</b>. + + + An optional amount to request. Leave this empty or zero to not request a specific amount. + An optional amount to request. Leave this empty or zero to not request a specific amount. + + + An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request. + An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request. + + + An optional message that is attached to the payment request and may be displayed to the sender. + An optional message that is attached to the payment request and may be displayed to the sender. + + + &Create new receiving address + &Create new receiving address + + + Clear all fields of the form. + Clear all fields of the form. + + + Clear + Clear + + + Native segwit addresses (aka Bech32 or BIP-173) reduce your transaction fees later on and offer better protection against typos, but old wallets don't support them. When unchecked, an address compatible with older wallets will be created instead. + Native segwit addresses (aka Bech32 or BIP-173) reduce your transaction fees later on and offer better protection against typos, but old wallets don't support them. When unchecked, an address compatible with older wallets will be created instead. + + + Generate native segwit (Bech32) address + Generate native segwit (Bech32) address + + + Requested payments history + Requested payments history + + + Show the selected request (does the same as double clicking an entry) + Show the selected request (does the same as double clicking an entry) + + + Show + Show + + + Remove the selected entries from the list + Remove the selected entries from the list + + + Remove + Remove + + + Copy URI + Copy URI + + + Copy label + Copy label + + + Copy message + Copy message + + + Copy amount + Copy amount + + + Could not unlock wallet. + Could not unlock wallet. + ReceiveRequestDialog - + + Amount: + Amount: + + + Message: + Message: + + + Wallet: + Wallet: + + + Copy &URI + Copy &URI + + + Copy &Address + Copy &Address + + + &Save Image... + &Save Image... + + + Request payment to %1 + Request payment to %1 + + + Payment information + Payment information + + RecentRequestsTableModel + + Date + Date + Label लेबल + + Message + Message + (no label) (लेबल नाही) - + + (no message) + (no message) + + + (no amount requested) + (no amount requested) + + + Requested + Requested + + SendCoinsDialog + + Send Coins + Send Coins + + + Coin Control Features + Coin Control Features + + + Inputs... + Inputs... + + + automatically selected + automatically selected + + + Insufficient funds! + Insufficient funds! + + + Quantity: + Quantity: + + + Bytes: + Bytes: + + + Amount: + Amount: + + + Fee: + Fee: + + + After Fee: + After Fee: + + + Change: + Change: + + + If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address. + If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address. + + + Custom change address + Custom change address + + + Transaction Fee: + Transaction Fee: + + + Choose... + Choose... + + + Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain. + Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain. + + + Warning: Fee estimation is currently not possible. + Warning: Fee estimation is currently not possible. + + + Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size. + +Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis per kB" for a transaction size of 500 bytes (half of 1 kB) would ultimately yield a fee of only 50 satoshis. + Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size. + +Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis per kB" for a transaction size of 500 bytes (half of 1 kB) would ultimately yield a fee of only 50 satoshis. + + + per kilobyte + per kilobyte + + + Hide + Hide + + + Recommended: + Recommended: + + + Custom: + Custom: + + + (Smart fee not initialized yet. This usually takes a few blocks...) + (Smart fee not initialized yet. This usually takes a few blocks...) + + + Send to multiple recipients at once + Send to multiple recipients at once + + + Add &Recipient + Add &Recipient + + + Clear all fields of the form. + Clear all fields of the form. + + + Dust: + Dust: + + + Hide transaction fee settings + Hide transaction fee settings + + + When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process. + When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process. + + + A too low fee might result in a never confirming transaction (read the tooltip) + A too low fee might result in a never confirming transaction (read the tooltip) + + + Confirmation time target: + Confirmation time target: + + + Enable Replace-By-Fee + Enable Replace-By-Fee + + + With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk. + With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk. + + + Clear &All + Clear &All + + + Balance: + Balance: + + + Confirm the send action + Confirm the send action + + + S&end + S&end + + + Copy quantity + Copy quantity + + + Copy amount + Copy amount + + + Copy fee + Copy fee + + + Copy after fee + Copy after fee + + + Copy bytes + Copy bytes + + + Copy dust + Copy dust + + + Copy change + Copy change + + + %1 (%2 blocks) + %1 (%2 blocks) + + + Cr&eate Unsigned + Cr&eate Unsigned + + + Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + + + from wallet '%1' + from wallet '%1' + + + %1 to '%2' + %1 to '%2' + + + %1 to %2 + %1 to %2 + + + Do you want to draft this transaction? + Do you want to draft this transaction? + + + Are you sure you want to send? + Are you sure you want to send? + + + or + or + + + You can increase the fee later (signals Replace-By-Fee, BIP-125). + You can increase the fee later (signals Replace-By-Fee, BIP-125). + + + Please, review your transaction. + Please, review your transaction. + + + Transaction fee + Transaction fee + + + Not signalling Replace-By-Fee, BIP-125. + Not signalling Replace-By-Fee, BIP-125. + + + Total Amount + Total Amount + + + To review recipient list click "Show Details..." + To review recipient list click "Show Details..." + + + Confirm send coins + Confirm send coins + + + Confirm transaction proposal + Confirm transaction proposal + + + Send + Send + + + Watch-only balance: + Watch-only balance: + + + The recipient address is not valid. Please recheck. + The recipient address is not valid. Please recheck. + + + The amount to pay must be larger than 0. + The amount to pay must be larger than 0. + + + The amount exceeds your balance. + The amount exceeds your balance. + + + The total exceeds your balance when the %1 transaction fee is included. + The total exceeds your balance when the %1 transaction fee is included. + + + Duplicate address found: addresses should only be used once each. + Duplicate address found: addresses should only be used once each. + + + Transaction creation failed! + Transaction creation failed! + + + A fee higher than %1 is considered an absurdly high fee. + A fee higher than %1 is considered an absurdly high fee. + + + Payment request expired. + Payment request expired. + + + Warning: Invalid Bitcoin address + Warning: Invalid Bitcoin address + + + Warning: Unknown change address + Warning: Unknown change address + + + Confirm custom change address + Confirm custom change address + + + The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure? + The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure? + (no label) (लेबल नाही) @@ -198,72 +2394,1286 @@ SendCoinsEntry - + + A&mount: + A&mount: + + + Pay &To: + Pay &To: + + + &Label: + &Label: + + + Choose previously used address + Choose previously used address + + + The Bitcoin address to send the payment to + The Bitcoin address to send the payment to + + + Alt+A + Alt+A + + + Paste address from clipboard + Paste address from clipboard + + + Alt+P + Alt+P + + + Remove this entry + Remove this entry + + + The amount to send in the selected unit + The amount to send in the selected unit + + + The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. + The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. + + + S&ubtract fee from amount + S&ubtract fee from amount + + + Use available balance + Use available balance + + + Message: + Message: + + + This is an unauthenticated payment request. + This is an unauthenticated payment request. + + + This is an authenticated payment request. + This is an authenticated payment request. + + + Enter a label for this address to add it to the list of used addresses + Enter a label for this address to add it to the list of used addresses + + + A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. + A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. + + + Pay To: + Pay To: + + + Memo: + Memo: + + ShutdownWindow - + + %1 is shutting down... + %1 is shutting down... + + + Do not shut down the computer until this window disappears. + Do not shut down the computer until this window disappears. + + SignVerifyMessageDialog - + + Signatures - Sign / Verify a Message + Signatures - Sign / Verify a Message + + + &Sign Message + &Sign Message + + + You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. + You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. + + + The Bitcoin address to sign the message with + The Bitcoin address to sign the message with + + + Choose previously used address + Choose previously used address + + + Alt+A + Alt+A + + + Paste address from clipboard + Paste address from clipboard + + + Alt+P + Alt+P + + + Enter the message you want to sign here + Enter the message you want to sign here + + + Signature + Signature + + + Copy the current signature to the system clipboard + Copy the current signature to the system clipboard + + + Sign the message to prove you own this Bitcoin address + Sign the message to prove you own this Bitcoin address + + + Sign &Message + Sign &Message + + + Reset all sign message fields + Reset all sign message fields + + + Clear &All + Clear &All + + + &Verify Message + &Verify Message + + + Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! + Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! + + + The Bitcoin address the message was signed with + The Bitcoin address the message was signed with + + + The signed message to verify + The signed message to verify + + + The signature given when the message was signed + The signature given when the message was signed + + + Verify the message to ensure it was signed with the specified Bitcoin address + Verify the message to ensure it was signed with the specified Bitcoin address + + + Verify &Message + Verify &Message + + + Reset all verify message fields + Reset all verify message fields + + + Click "Sign Message" to generate signature + Click "Sign Message" to generate signature + + + The entered address is invalid. + The entered address is invalid. + + + Please check the address and try again. + Please check the address and try again. + + + The entered address does not refer to a key. + The entered address does not refer to a key. + + + Wallet unlock was cancelled. + Wallet unlock was cancelled. + + + No error + No error + + + Private key for the entered address is not available. + Private key for the entered address is not available. + + + Message signing failed. + Message signing failed. + + + Message signed. + Message signed. + + + The signature could not be decoded. + The signature could not be decoded. + + + Please check the signature and try again. + Please check the signature and try again. + + + The signature did not match the message digest. + The signature did not match the message digest. + + + Message verification failed. + Message verification failed. + + + Message verified. + Message verified. + + TrafficGraphWidget - + + KB/s + KB/s + + TransactionDesc - + + Open until %1 + Open until %1 + + + conflicted with a transaction with %1 confirmations + conflicted with a transaction with %1 confirmations + + + 0/unconfirmed, %1 + 0/unconfirmed, %1 + + + in memory pool + in memory pool + + + not in memory pool + not in memory pool + + + abandoned + abandoned + + + %1/unconfirmed + %1/unconfirmed + + + %1 confirmations + %1 confirmations + + + Status + Status + + + Date + Date + + + Source + Source + + + Generated + Generated + + + From + From + + + unknown + unknown + + + To + To + + + own address + own address + + + watch-only + watch-only + + + label + label + + + Credit + Credit + + + not accepted + not accepted + + + Debit + Debit + + + Total debit + Total debit + + + Total credit + Total credit + + + Transaction fee + Transaction fee + + + Net amount + Net amount + + + Message + Message + + + Comment + Comment + + + Transaction ID + Transaction ID + + + Transaction total size + Transaction total size + + + Transaction virtual size + Transaction virtual size + + + Output index + Output index + + + (Certificate was not verified) + (Certificate was not verified) + + + Merchant + Merchant + + + Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. + Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. + + + Debug information + Debug information + + + Transaction + Transaction + + + Inputs + Inputs + + + Amount + Amount + + + true + true + + + false + false + + TransactionDescDialog - + + This pane shows a detailed description of the transaction + This pane shows a detailed description of the transaction + + + Details for %1 + Details for %1 + + TransactionTableModel + + Date + Date + + + Type + Type + Label लेबल + + Open until %1 + Open until %1 + + + Unconfirmed + Unconfirmed + + + Abandoned + Abandoned + + + Confirming (%1 of %2 recommended confirmations) + Confirming (%1 of %2 recommended confirmations) + + + Confirmed (%1 confirmations) + Confirmed (%1 confirmations) + + + Conflicted + Conflicted + + + Immature (%1 confirmations, will be available after %2) + Immature (%1 confirmations, will be available after %2) + + + Generated but not accepted + Generated but not accepted + + + Received with + Received with + + + Received from + Received from + + + Sent to + Sent to + + + Payment to yourself + Payment to yourself + + + Mined + Mined + + + watch-only + watch-only + + + (n/a) + (n/a) + (no label) (लेबल नाही) - + + Transaction status. Hover over this field to show number of confirmations. + Transaction status. Hover over this field to show number of confirmations. + + + Date and time that the transaction was received. + Date and time that the transaction was received. + + + Type of transaction. + Type of transaction. + + + Whether or not a watch-only address is involved in this transaction. + Whether or not a watch-only address is involved in this transaction. + + + User-defined intent/purpose of the transaction. + User-defined intent/purpose of the transaction. + + + Amount removed from or added to balance. + Amount removed from or added to balance. + + TransactionView + + All + All + + + Today + Today + + + This week + This week + + + This month + This month + + + Last month + Last month + + + This year + This year + + + Range... + Range... + + + Received with + Received with + + + Sent to + Sent to + + + To yourself + To yourself + + + Mined + Mined + + + Other + Other + + + Enter address, transaction id, or label to search + Enter address, transaction id, or label to search + + + Min amount + Min amount + + + Abandon transaction + Abandon transaction + + + Increase transaction fee + Increase transaction fee + + + Copy address + Copy address + + + Copy label + Copy label + + + Copy amount + Copy amount + + + Copy transaction ID + Copy transaction ID + + + Copy raw transaction + Copy raw transaction + + + Copy full transaction details + Copy full transaction details + + + Edit label + Edit label + + + Show transaction details + Show transaction details + + + Export Transaction History + Export Transaction History + + + Comma separated file (*.csv) + Comma separated file (*.csv) + + + Confirmed + Confirmed + + + Watch-only + Watch-only + + + Date + Date + + + Type + Type + Label - लेबल + शिक्का Address पत्ता + + ID + ID + Exporting Failed निर्यात अयशस्वी - + + There was an error trying to save the transaction history to %1. + There was an error trying to save the transaction history to %1. + + + Exporting Successful + Exporting Successful + + + The transaction history was successfully saved to %1. + The transaction history was successfully saved to %1. + + + Range: + Range: + + + to + to + + UnitDisplayStatusBarControl - + + Unit to show amounts in. Click to select another unit. + Unit to show amounts in. Click to select another unit. + + WalletController + + Close wallet + Close wallet + + + Are you sure you wish to close the wallet <i>%1</i>? + Are you sure you wish to close the wallet <i>%1</i>? + + + Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. + Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. + WalletFrame - + + Create a new wallet + Create a new wallet + + WalletModel - + + Send Coins + Send Coins + + + Fee bump error + Fee bump error + + + Increasing transaction fee failed + Increasing transaction fee failed + + + Do you want to increase the fee? + Do you want to increase the fee? + + + Do you want to draft a transaction with fee increase? + Do you want to draft a transaction with fee increase? + + + Current fee: + Current fee: + + + Increase: + Increase: + + + New fee: + New fee: + + + Confirm fee bump + Confirm fee bump + + + Can't draft transaction. + Can't draft transaction. + + + PSBT copied + PSBT copied + + + Can't sign transaction. + Can't sign transaction. + + + Could not commit transaction + Could not commit transaction + + + default wallet + default wallet + + WalletView &Export - &एक्स्पोर्ट + निर्यात Export the data in the current tab to a file - सध्याच्या टॅबमधील डेटा एका फाईलमध्ये एक्स्पोर्ट करा + सध्याच्या टॅबमधील माहिती एका फाईलमध्ये निर्यात करा - + + Error + Error + + + Backup Wallet + Backup Wallet + + + Wallet Data (*.dat) + Wallet Data (*.dat) + + + Backup Failed + Backup Failed + + + There was an error trying to save the wallet data to %1. + There was an error trying to save the wallet data to %1. + + + Backup Successful + Backup Successful + + + The wallet data was successfully saved to %1. + The wallet data was successfully saved to %1. + + + Cancel + Cancel + + bitcoin-core - + + Distributed under the MIT software license, see the accompanying file %s or %s + Distributed under the MIT software license, see the accompanying file %s or %s + + + Prune configured below the minimum of %d MiB. Please use a higher number. + Prune configured below the minimum of %d MiB. Please use a higher number. + + + Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) + Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) + + + Pruning blockstore... + Pruning blockstore... + + + Unable to start HTTP server. See debug log for details. + Unable to start HTTP server. See debug log for details. + + + The %s developers + The %s developers + + + Cannot obtain a lock on data directory %s. %s is probably already running. + Cannot obtain a lock on data directory %s. %s is probably already running. + + + Cannot provide specific connections and have addrman find outgoing connections at the same. + Cannot provide specific connections and have addrman find outgoing connections at the same. + + + Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. + Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. + + + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. + + + Please contribute if you find %s useful. Visit %s for further information about the software. + Please contribute if you find %s useful. Visit %s for further information about the software. + + + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct + + + This is a pre-release test build - use at your own risk - do not use for mining or merchant applications + This is a pre-release test build - use at your own risk - do not use for mining or merchant applications + + + This is the transaction fee you may discard if change is smaller than dust at this level + This is the transaction fee you may discard if change is smaller than dust at this level + + + Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. + Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. + + + Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain + Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain + + + Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. + Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. + + + Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. + Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. + + + -maxmempool must be at least %d MB + -maxmempool must be at least %d MB + + + Cannot resolve -%s address: '%s' + Cannot resolve -%s address: '%s' + + + Change index out of range + Change index out of range + + + Config setting for %s only applied on %s network when in [%s] section. + Config setting for %s only applied on %s network when in [%s] section. + + + Copyright (C) %i-%i + Copyright (C) %i-%i + + + Corrupted block database detected + Corrupted block database detected + + + Could not find asmap file %s + Could not find asmap file %s + + + Could not parse asmap file %s + Could not parse asmap file %s + + + Do you want to rebuild the block database now? + Do you want to rebuild the block database now? + + + Error initializing block database + Error initializing block database + + + Error initializing wallet database environment %s! + Error initializing wallet database environment %s! + + + Error loading %s + Error loading %s + + + Error loading %s: Private keys can only be disabled during creation + Error loading %s: Private keys can only be disabled during creation + + + Error loading %s: Wallet corrupted + Error loading %s: Wallet corrupted + + + Error loading %s: Wallet requires newer version of %s + Error loading %s: Wallet requires newer version of %s + + + Error loading block database + Error loading block database + + + Error opening block database + Error opening block database + + + Failed to listen on any port. Use -listen=0 if you want this. + Failed to listen on any port. Use -listen=0 if you want this. + + + Failed to rescan the wallet during initialization + Failed to rescan the wallet during initialization + + + Importing... + Importing... + + + Incorrect or no genesis block found. Wrong datadir for network? + Incorrect or no genesis block found. Wrong datadir for network? + + + Initialization sanity check failed. %s is shutting down. + Initialization sanity check failed. %s is shutting down. + + + Invalid P2P permission: '%s' + Invalid P2P permission: '%s' + + + Invalid amount for -%s=<amount>: '%s' + Invalid amount for -%s=<amount>: '%s' + + + Invalid amount for -discardfee=<amount>: '%s' + Invalid amount for -discardfee=<amount>: '%s' + + + Invalid amount for -fallbackfee=<amount>: '%s' + Invalid amount for -fallbackfee=<amount>: '%s' + + + Specified blocks directory "%s" does not exist. + Specified blocks directory "%s" does not exist. + + + Unknown address type '%s' + Unknown address type '%s' + + + Unknown change type '%s' + Unknown change type '%s' + + + Upgrading txindex database + Upgrading txindex database + + + Loading P2P addresses... + Loading P2P addresses... + + + Loading banlist... + Loading banlist... + + + Not enough file descriptors available. + Not enough file descriptors available. + + + Prune cannot be configured with a negative value. + Prune cannot be configured with a negative value. + + + Prune mode is incompatible with -txindex. + Prune mode is incompatible with -txindex. + + + Replaying blocks... + Replaying blocks... + + + Rewinding blocks... + Rewinding blocks... + + + The source code is available from %s. + The source code is available from %s. + + + Transaction fee and change calculation failed + Transaction fee and change calculation failed + + + Unable to bind to %s on this computer. %s is probably already running. + Unable to bind to %s on this computer. %s is probably already running. + + + Unable to generate keys + Unable to generate keys + + + Unsupported logging category %s=%s. + Unsupported logging category %s=%s. + + + Upgrading UTXO database + Upgrading UTXO database + + + User Agent comment (%s) contains unsafe characters. + User Agent comment (%s) contains unsafe characters. + + + Verifying blocks... + Verifying blocks... + + + Wallet needed to be rewritten: restart %s to complete + Wallet needed to be rewritten: restart %s to complete + + + Error: Listening for incoming connections failed (listen returned error %s) + Error: Listening for incoming connections failed (listen returned error %s) + + + Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) + Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) + + + The transaction amount is too small to send after the fee has been deducted + The transaction amount is too small to send after the fee has been deducted + + + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain + + + Error reading from database, shutting down. + Error reading from database, shutting down. + + + Error upgrading chainstate database + Error upgrading chainstate database + + + Error: Disk space is low for %s + Error: Disk space is low for %s + + + Invalid -onion address or hostname: '%s' + Invalid -onion address or hostname: '%s' + + + Invalid -proxy address or hostname: '%s' + Invalid -proxy address or hostname: '%s' + + + Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) + Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) + + + Invalid netmask specified in -whitelist: '%s' + Invalid netmask specified in -whitelist: '%s' + + + Need to specify a port with -whitebind: '%s' + Need to specify a port with -whitebind: '%s' + + + Prune mode is incompatible with -blockfilterindex. + Prune mode is incompatible with -blockfilterindex. + + + Reducing -maxconnections from %d to %d, because of system limitations. + Reducing -maxconnections from %d to %d, because of system limitations. + + + Section [%s] is not recognized. + Section [%s] is not recognized. + + + Signing transaction failed + Signing transaction failed + + + Specified -walletdir "%s" does not exist + Specified -walletdir "%s" does not exist + + + Specified -walletdir "%s" is a relative path + Specified -walletdir "%s" is a relative path + + + Specified -walletdir "%s" is not a directory + Specified -walletdir "%s" is not a directory + + + The specified config file %s does not exist + + The specified config file %s does not exist + + + + The transaction amount is too small to pay the fee + The transaction amount is too small to pay the fee + + + This is experimental software. + This is experimental software. + + + Transaction amount too small + Transaction amount too small + + + Transaction too large + Transaction too large + + + Unable to bind to %s on this computer (bind returned error %s) + Unable to bind to %s on this computer (bind returned error %s) + + + Unable to create the PID file '%s': %s + Unable to create the PID file '%s': %s + + + Unable to generate initial keys + Unable to generate initial keys + + + Unknown -blockfilterindex value %s. + Unknown -blockfilterindex value %s. + + + Verifying wallet(s)... + Verifying wallet(s)... + + + Warning: unknown new rules activated (versionbit %i) + Warning: unknown new rules activated (versionbit %i) + + + -maxtxfee is set very high! Fees this large could be paid on a single transaction. + -maxtxfee is set very high! Fees this large could be paid on a single transaction. + + + This is the transaction fee you may pay when fee estimates are not available. + This is the transaction fee you may pay when fee estimates are not available. + + + Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments. + Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments. + + + %s is set very high! + %s is set very high! + + + Starting network threads... + Starting network threads... + + + The wallet will avoid paying less than the minimum relay fee. + The wallet will avoid paying less than the minimum relay fee. + + + This is the minimum transaction fee you pay on every transaction. + This is the minimum transaction fee you pay on every transaction. + + + This is the transaction fee you will pay if you send a transaction. + This is the transaction fee you will pay if you send a transaction. + + + Transaction amounts must not be negative + Transaction amounts must not be negative + + + Transaction has too long of a mempool chain + Transaction has too long of a mempool chain + + + Transaction must have at least one recipient + Transaction must have at least one recipient + + + Unknown network specified in -onlynet: '%s' + Unknown network specified in -onlynet: '%s' + + + Insufficient funds + Insufficient funds + + + Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable -fallbackfee. + Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable -fallbackfee. + + + Warning: Private keys detected in wallet {%s} with disabled private keys + Warning: Private keys detected in wallet {%s} with disabled private keys + + + Cannot write to data directory '%s'; check permissions. + Cannot write to data directory '%s'; check permissions. + + + Loading block index... + Loading block index... + + + Loading wallet... + Loading wallet... + + + Cannot downgrade wallet + Cannot downgrade wallet + + + Rescanning... + Rescanning... + + + Done loading + Done loading + + \ No newline at end of file diff --git a/src/qt/locale/bitcoin_ms.ts b/src/qt/locale/bitcoin_ms.ts deleted file mode 100644 index 7d9be93bc..000000000 --- a/src/qt/locale/bitcoin_ms.ts +++ /dev/null @@ -1,3688 +0,0 @@ - - - AddressBookPage - - Right-click to edit address or label - Klik-kanan untuk edit alamat ataupun label - - - Create a new address - Cipta alamat baru - - - &New - &Baru - - - Copy the currently selected address to the system clipboard - Salin alamat terpilih ke dalam sistem papan klip - - - &Copy - &Salin - - - C&lose - &Tutup - - - Delete the currently selected address from the list - Padam alamat semasa yang dipilih dari senaraiyang dipilih dari senarai - - - Enter address or label to search - Masukkan alamat atau label untuk carian - - - - Export the data in the current tab to a file - -Alihkan fail data ke dalam tab semasa - - - &Export - &Eksport - - - &Delete - &Padam - - - Choose the address to send coins to - Pilih alamat untuk hantar koin kepada - - - Choose the address to receive coins with - Pilih alamat untuk menerima koin dengan - - - C&hoose - &Pilih - - - Sending addresses - alamat-alamat penghantaran - - - Receiving addresses - alamat-alamat penerimaan - - - These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. - Ini adalah alamat Bitcoin anda untuk pembayaran. Periksa jumlah dan alamat penerima sebelum membuat penghantaran koin sentiasa. - - - &Copy Address - &Salin Aamat - - - Copy &Label - Salin & Label - - - &Edit - &Edit - - - Export Address List - Eskport Senarai Alamat - - - Comma separated file (*.csv) - Fail dibahagi oleh koma(*.csv) - - - Exporting Failed - Mengeksport Gagal - - - There was an error trying to save the address list to %1. Please try again. - Terdapat ralat semasa cubaan menyimpan senarai alamat kepada %1. Sila cuba lagi. - - - - AddressTableModel - - Label - Label - - - Address - Alamat - - - (no label) - (tiada label) - - - - AskPassphraseDialog - - Passphrase Dialog - Dialog frasa laluan - - - Enter passphrase - memasukkan frasa laluan - - - New passphrase - Frasa laluan baru - - - Repeat new passphrase - Ulangi frasa laluan baru - - - Show passphrase - Show passphrase - - - Encrypt wallet - Dompet encrypt - - - This operation needs your wallet passphrase to unlock the wallet. - Operasi ini perlukan frasa laluan dompet anda untuk membuka kunci dompet. - - - Unlock wallet - Membuka kunci dompet - - - This operation needs your wallet passphrase to decrypt the wallet. - Operasi ini memerlukan frasa laluan dompet anda untuk menyahsulit dompet. - - - Decrypt wallet - Menyahsulit dompet - - - Change passphrase - Menukar frasa laluan - - - Confirm wallet encryption - Mengesahkan enkripsi dompet - - - Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! - Amaran: Jika anda enkripkan dompet anda dan hilangkan frasa laluan, anda akan <b>ANDA AKAN HILANGKAN SEMUA BITCOIN ANDA</b>! - - - Are you sure you wish to encrypt your wallet? - Anda pasti untuk membuat enkripsi dompet anda? - - - Wallet encrypted - Dompet dienkripsi - - - Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. - Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. - - - Enter the old passphrase and new passphrase for the wallet. - Enter the old passphrase and new passphrase for the wallet. - - - Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. - Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. - - - Wallet to be encrypted - Wallet to be encrypted - - - Your wallet is about to be encrypted. - Your wallet is about to be encrypted. - - - Your wallet is now encrypted. - Your wallet is now encrypted. - - - IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. - PENTING: Apa-apa sandaran yang anda buat sebelum ini untuk fail dompet anda hendaklah digantikan dengan fail dompet enkripsi yang dijana baru. Untuk sebab-sebab keselamatan , sandaran fail dompet yang belum dibuat enkripsi sebelum ini akan menjadi tidak berguna secepat anda mula guna dompet enkripsi baru. - - - Wallet encryption failed - Enkripsi dompet gagal - - - Wallet encryption failed due to an internal error. Your wallet was not encrypted. - Enkripsi dompet gagal kerana ralat dalaman. Dompet anda tidak dienkripkan. - - - The supplied passphrases do not match. - Frasa laluan yang dibekalkan tidak sepadan. - - - Wallet unlock failed - Pembukaan kunci dompet gagal - - - The passphrase entered for the wallet decryption was incorrect. - Frasa laluan dimasukki untuk dekripsi dompet adalah tidak betul. - - - Wallet decryption failed - Dekripsi dompet gagal - - - Wallet passphrase was successfully changed. - Frasa laluan dompet berjaya ditukar. - - - Warning: The Caps Lock key is on! - Amaran: Kunci Caps Lock buka! - - - - BanTableModel - - IP/Netmask - IP/Netmask - - - Banned Until - Diharamkan sehingga - - - - BitcoinGUI - - Sign &message... - Tandatangan & mesej... - - - Synchronizing with network... - Penyegerakan dengan rangkaian... - - - &Overview - &Gambaran Keseluruhan - - - Show general overview of wallet - Tunjuk gambaran keseluruhan umum dompet - - - &Transactions - &Transaksi - - - Browse transaction history - Menyemak imbas sejarah transaksi - - - E&xit - &Keluar - - - Quit application - Berhenti aplikasi - - - &About %1 - &Mengenai%1 - - - Show information about %1 - Menunjuk informasi mengenai%1 - - - About &Qt - Mengenai &Qt - - - Show information about Qt - Menunjuk informasi megenai Qt - - - &Options... - Pilihan - - - Modify configuration options for %1 - Mengubah suai pilihan konfigurasi untuk %1 - - - &Encrypt Wallet... - &Enkripsi Dompet - - - &Backup Wallet... - &Dompet Sandaran... - - - &Change Passphrase... - &Menukar frasa-laluan - - - Open &URI... - Buka &URI... - - - Create Wallet... - Create Wallet... - - - Create a new wallet - Create a new wallet - - - Wallet: - dompet - - - Click to disable network activity. - Tekan untuk lumpuhkan rangkaian - - - Network activity disabled. - Aktiviti rangkaian dilumpuhkan - - - Click to enable network activity again. - Tekan untuk mengaktifkan rangkain semula - - - Syncing Headers (%1%)... - Penyelarasn tajuk (%1%)... - - - Reindexing blocks on disk... - Reindexi blok pada cakera... - - - Proxy is <b>enabled</b>: %1 - Proxy is <b>enabled</b>: %1 - - - Send coins to a Bitcoin address - Menghantar koin kepada alamat Bitcoin - - - Backup wallet to another location - Wallet sandaran ke lokasi lain - - - Change the passphrase used for wallet encryption - Tukar kata laluan untuk dompet disulitkan - - - &Verify message... - sahkan mesej - - - &Send - hantar - - - &Receive - terima - - - &Show / Hide - &tunjuk/sembunyi - - - Show or hide the main Window - tunjuk atau sembunyi tetingkap utama - - - Encrypt the private keys that belong to your wallet - sulitkan kata laluan milik peribadi anda - - - Sign messages with your Bitcoin addresses to prove you own them - sahkan mesej bersama alamat bitcoin anda untuk menunjukkan alamat ini anda punya - - - Verify messages to ensure they were signed with specified Bitcoin addresses - Sahkan mesej untuk memastikan mereka telah ditandatangani dengan alamat Bitcoin yang ditentukan - - - &File - fail - - - &Settings - tetapan - - - &Help - tolong - - - Tabs toolbar - Bar alat tab - - - - Request payments (generates QR codes and bitcoin: URIs) - Request payments (generates QR codes and bitcoin: URIs) - - - - Show the list of used sending addresses and labels - Tunjukkan senarai alamat dan label yang digunakan - - - - Show the list of used receiving addresses and labels - Show the list of used receiving addresses and labels - - - &Command-line options - &Command-line options - - - Indexing blocks on disk... - Indexing blocks on disk... - - - Processing blocks on disk... - Processing blocks on disk... - - - %1 behind - %1 behind - - - Last received block was generated %1 ago. - Last received block was generated %1 ago. - - - Transactions after this will not yet be visible. - Transactions after this will not yet be visible. - - - Error - Ralat - - - Warning - Amaran - - - Information - Notis - - - Up to date - Terkini - - - Node window - Node window - - - Open node debugging and diagnostic console - Open node debugging and diagnostic console - - - &Sending addresses - &Sending addresses - - - &Receiving addresses - &Receiving addresses - - - Open a bitcoin: URI - Open a bitcoin: URI - - - Open Wallet - Buka Wallet - - - Open a wallet - Open a wallet - - - Close Wallet... - Tutup Wallet... - - - Close wallet - Tutup Wallet - - - Show the %1 help message to get a list with possible Bitcoin command-line options - Show the %1 help message to get a list with possible Bitcoin command-line options - - - default wallet - dompet lalai - - - - No wallets available - No wallets available - - - &Window - &Window - - - Minimize - Minimize - - - Zoom - Zoom - - - Main Window - Main Window - - - %1 client - %1 client - - - Connecting to peers... - Connecting to peers... - - - Catching up... - Catching up... - - - Error: %1 - Error: %1 - - - Warning: %1 - Warning: %1 - - - Date: %1 - - Date: %1 - - - - Amount: %1 - - Amount: %1 - - - - Wallet: %1 - - Wallet: %1 - - - - Type: %1 - - Type: %1 - - - - Label: %1 - - Label: %1 - - - - Address: %1 - - Address: %1 - - - - Sent transaction - Sent transaction - - - Incoming transaction - Incoming transaction - - - HD key generation is <b>enabled</b> - HD key generation is <b>enabled</b> - - - HD key generation is <b>disabled</b> - HD key generation is <b>disabled</b> - - - Private key <b>disabled</b> - Private key <b>disabled</b> - - - Wallet is <b>encrypted</b> and currently <b>unlocked</b> - Wallet is <b>encrypted</b> and currently <b>unlocked</b> - - - Wallet is <b>encrypted</b> and currently <b>locked</b> - Wallet is <b>encrypted</b> and currently <b>locked</b> - - - - CoinControlDialog - - Coin Selection - Coin Selection - - - Quantity: - Quantity: - - - Bytes: - Bytes: - - - Amount: - Amount: - - - Fee: - Fee: - - - Dust: - Dust: - - - After Fee: - After Fee: - - - Change: - Change: - - - (un)select all - (un)select all - - - Tree mode - Tree mode - - - List mode - List mode - - - Amount - Amount - - - Received with label - Received with label - - - Received with address - Received with address - - - Date - Date - - - Confirmations - Confirmations - - - Confirmed - Confirmed - - - Copy address - Copy address - - - Copy label - Copy label - - - Copy amount - Copy amount - - - Copy transaction ID - Copy transaction ID - - - Lock unspent - Lock unspent - - - Unlock unspent - Unlock unspent - - - Copy quantity - Copy quantity - - - Copy fee - Copy fee - - - Copy after fee - Copy after fee - - - Copy bytes - Copy bytes - - - Copy dust - Copy dust - - - Copy change - Copy change - - - (%1 locked) - (%1 locked) - - - yes - yes - - - no - no - - - This label turns red if any recipient receives an amount smaller than the current dust threshold. - This label turns red if any recipient receives an amount smaller than the current dust threshold. - - - Can vary +/- %1 satoshi(s) per input. - Can vary +/- %1 satoshi(s) per input. - - - (no label) - (tiada label) - - - change from %1 (%2) - change from %1 (%2) - - - (change) - (change) - - - - CreateWalletActivity - - Creating Wallet <b>%1</b>... - Creating Wallet <b>%1</b>... - - - Create wallet failed - Create wallet failed - - - Create wallet warning - Create wallet warning - - - - CreateWalletDialog - - Create Wallet - Create Wallet - - - Wallet Name - Wallet Name - - - Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. - Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. - - - Encrypt Wallet - Encrypt Wallet - - - Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. - Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. - - - Disable Private Keys - Disable Private Keys - - - Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. - Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. - - - Make Blank Wallet - Make Blank Wallet - - - Create - Create - - - - EditAddressDialog - - Edit Address - Alamat - - - &Label - &Label - - - The label associated with this address list entry - The label associated with this address list entry - - - The address associated with this address list entry. This can only be modified for sending addresses. - The address associated with this address list entry. This can only be modified for sending addresses. - - - &Address - Alamat - - - New sending address - New sending address - - - Edit receiving address - Edit receiving address - - - Edit sending address - Edit sending address - - - The entered address "%1" is not a valid Bitcoin address. - The entered address "%1" is not a valid Bitcoin address. - - - Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address. - Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address. - - - The entered address "%1" is already in the address book with label "%2". - The entered address "%1" is already in the address book with label "%2". - - - Could not unlock wallet. - Could not unlock wallet. - - - New key generation failed. - New key generation failed. - - - - FreespaceChecker - - A new data directory will be created. - A new data directory will be created. - - - name - name - - - Directory already exists. Add %1 if you intend to create a new directory here. - Directory already exists. Add %1 if you intend to create a new directory here. - - - Path already exists, and is not a directory. - Path already exists, and is not a directory. - - - Cannot create data directory here. - Cannot create data directory here. - - - - HelpMessageDialog - - version - version - - - About %1 - About %1 - - - Command-line options - Command-line options - - - - Intro - - Welcome - Welcome - - - Welcome to %1. - Welcome to %1. - - - As this is the first time the program is launched, you can choose where %1 will store its data. - As this is the first time the program is launched, you can choose where %1 will store its data. - - - When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. - When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. - - - Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. - Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. - - - This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. - This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. - - - If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. - If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. - - - Use the default data directory - Use the default data directory - - - Use a custom data directory: - Use a custom data directory: - - - Bitcoin - Bitcoin - - - Discard blocks after verification, except most recent %1 GB (prune) - Discard blocks after verification, except most recent %1 GB (prune) - - - At least %1 GB of data will be stored in this directory, and it will grow over time. - At least %1 GB of data will be stored in this directory, and it will grow over time. - - - Approximately %1 GB of data will be stored in this directory. - Approximately %1 GB of data will be stored in this directory. - - - %1 will download and store a copy of the Bitcoin block chain. - %1 will download and store a copy of the Bitcoin block chain. - - - The wallet will also be stored in this directory. - The wallet will also be stored in this directory. - - - Error: Specified data directory "%1" cannot be created. - Error: Specified data directory "%1" cannot be created. - - - Error - Ralat - - - - ModalOverlay - - Form - Form - - - Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. - Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. - - - Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network. - Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network. - - - Number of blocks left - Number of blocks left - - - Unknown... - Unknown... - - - Last block time - Last block time - - - Progress - Progress - - - Progress increase per hour - Progress increase per hour - - - calculating... - calculating... - - - Estimated time left until synced - Estimated time left until synced - - - Hide - Hide - - - Esc - Esc - - - %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. - %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. - - - Unknown. Syncing Headers (%1, %2%)... - Unknown. Syncing Headers (%1, %2%)... - - - - OpenURIDialog - - Open bitcoin URI - Open bitcoin URI - - - URI: - URI: - - - - OpenWalletActivity - - Open wallet failed - Open wallet failed - - - Open wallet warning - Open wallet warning - - - default wallet - dompet lalai - - - - Opening Wallet <b>%1</b>... - Buka sedang Wallet <b>%1</b>... - - - - OptionsDialog - - Options - Options - - - &Main - &Main - - - Automatically start %1 after logging in to the system. - Automatically start %1 after logging in to the system. - - - &Start %1 on system login - &Start %1 on system login - - - Size of &database cache - Size of &database cache - - - Number of script &verification threads - Number of script &verification threads - - - IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1) - IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1) - - - Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type. - Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type. - - - Hide the icon from the system tray. - Hide the icon from the system tray. - - - &Hide tray icon - &Hide tray icon - - - Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu. - Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu. - - - Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. - Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. - - - Open the %1 configuration file from the working directory. - Open the %1 configuration file from the working directory. - - - Open Configuration File - Open Configuration File - - - Reset all client options to default. - Reset all client options to default. - - - &Reset Options - &Reset Options - - - &Network - &Network - - - Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. - Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. - - - Prune &block storage to - Prune &block storage to - - - GB - GB - - - Reverting this setting requires re-downloading the entire blockchain. - Reverting this setting requires re-downloading the entire blockchain. - - - MiB - MiB - - - (0 = auto, <0 = leave that many cores free) - (0 = auto, <0 = leave that many cores free) - - - W&allet - W&allet - - - Expert - Expert - - - Enable coin &control features - Enable coin &control features - - - If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed. - If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed. - - - &Spend unconfirmed change - &Spend unconfirmed change - - - Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled. - Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled. - - - Map port using &UPnP - Map port using &UPnP - - - Accept connections from outside. - Accept connections from outside. - - - Allow incomin&g connections - Allow incomin&g connections - - - Connect to the Bitcoin network through a SOCKS5 proxy. - Connect to the Bitcoin network through a SOCKS5 proxy. - - - &Connect through SOCKS5 proxy (default proxy): - &Connect through SOCKS5 proxy (default proxy): - - - Proxy &IP: - Proxy &IP: - - - &Port: - &Port: - - - Port of the proxy (e.g. 9050) - Port of the proxy (e.g. 9050) - - - Used for reaching peers via: - Used for reaching peers via: - - - IPv4 - IPv4 - - - IPv6 - IPv6 - - - Tor - Tor - - - &Window - &Window - - - Show only a tray icon after minimizing the window. - Show only a tray icon after minimizing the window. - - - &Minimize to the tray instead of the taskbar - &Minimize to the tray instead of the taskbar - - - M&inimize on close - M&inimize on close - - - &Display - &Display - - - User Interface &language: - User Interface &language: - - - The user interface language can be set here. This setting will take effect after restarting %1. - The user interface language can be set here. This setting will take effect after restarting %1. - - - &Unit to show amounts in: - &Unit to show amounts in: - - - Choose the default subdivision unit to show in the interface and when sending coins. - Choose the default subdivision unit to show in the interface and when sending coins. - - - Whether to show coin control features or not. - Whether to show coin control features or not. - - - &Third party transaction URLs - &Third party transaction URLs - - - Options set in this dialog are overridden by the command line or in the configuration file: - Options set in this dialog are overridden by the command line or in the configuration file: - - - &OK - &OK - - - &Cancel - &Cancel - - - default - default - - - none - none - - - Confirm options reset - Confirm options reset - - - Client restart required to activate changes. - Client restart required to activate changes. - - - Client will be shut down. Do you want to proceed? - Client will be shut down. Do you want to proceed? - - - Configuration options - Configuration options - - - The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file. - The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file. - - - Error - Ralat - - - The configuration file could not be opened. - The configuration file could not be opened. - - - This change would require a client restart. - This change would require a client restart. - - - The supplied proxy address is invalid. - The supplied proxy address is invalid. - - - - OverviewPage - - Form - Form - - - The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. - The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. - - - Watch-only: - Watch-only: - - - Available: - Available: - - - Your current spendable balance - Your current spendable balance - - - Pending: - Pending: - - - Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance - Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance - - - Immature: - Immature: - - - Mined balance that has not yet matured - Mined balance that has not yet matured - - - Balances - Balances - - - Total: - Total: - - - Your current total balance - Your current total balance - - - Your current balance in watch-only addresses - Your current balance in watch-only addresses - - - Spendable: - Spendable: - - - Recent transactions - Recent transactions - - - Unconfirmed transactions to watch-only addresses - Unconfirmed transactions to watch-only addresses - - - Mined balance in watch-only addresses that has not yet matured - Mined balance in watch-only addresses that has not yet matured - - - Current total balance in watch-only addresses - Current total balance in watch-only addresses - - - - PSBTOperationsDialog - - Total Amount - Total Amount - - - or - or - - - - PaymentServer - - Payment request error - Payment request error - - - Cannot start bitcoin: click-to-pay handler - Cannot start bitcoin: click-to-pay handler - - - URI handling - URI handling - - - 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. - 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. - - - Cannot process payment request because BIP70 is not supported. - Cannot process payment request because BIP70 is not supported. - - - Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. - Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. - - - If you are receiving this error you should request the merchant provide a BIP21 compatible URI. - If you are receiving this error you should request the merchant provide a BIP21 compatible URI. - - - Invalid payment address %1 - Invalid payment address %1 - - - URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters. - URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters. - - - Payment request file handling - Payment request file handling - - - - PeerTableModel - - User Agent - User Agent - - - Node/Service - Node/Service - - - NodeId - NodeId - - - Ping - Ping - - - Sent - Sent - - - Received - Received - - - - QObject - - Amount - Amount - - - Enter a Bitcoin address (e.g. %1) - Enter a Bitcoin address (e.g. %1) - - - %1 d - %1 d - - - %1 h - %1 h - - - %1 m - %1 m - - - %1 s - %1 s - - - None - None - - - N/A - N/A - - - %1 ms - %1 ms - - - %1 and %2 - %1 and %2 - - - %1 B - %1 B - - - %1 KB - %1 KB - - - %1 MB - %1 MB - - - %1 GB - %1 GB - - - Error: Specified data directory "%1" does not exist. - Error: Specified data directory "%1" does not exist. - - - Error: Cannot parse configuration file: %1. - Error: Cannot parse configuration file: %1. - - - Error: %1 - Error: %1 - - - %1 didn't yet exit safely... - %1 didn't yet exit safely... - - - unknown - unknown - - - - QRImageWidget - - &Save Image... - &Save Image... - - - &Copy Image - &Copy Image - - - Resulting URI too long, try to reduce the text for label / message. - Resulting URI too long, try to reduce the text for label / message. - - - Error encoding URI into QR Code. - Error encoding URI into QR Code. - - - QR code support not available. - QR code support not available. - - - Save QR Code - Save QR Code - - - PNG Image (*.png) - PNG Image (*.png) - - - - RPCConsole - - N/A - N/A - - - Client version - Client version - - - &Information - &Information - - - General - General - - - Using BerkeleyDB version - Using BerkeleyDB version - - - Datadir - Datadir - - - To specify a non-default location of the data directory use the '%1' option. - To specify a non-default location of the data directory use the '%1' option. - - - Blocksdir - Blocksdir - - - To specify a non-default location of the blocks directory use the '%1' option. - To specify a non-default location of the blocks directory use the '%1' option. - - - Startup time - Startup time - - - Network - Network - - - Name - Name - - - Number of connections - Number of connections - - - Block chain - Block chain - - - Memory Pool - Memory Pool - - - Current number of transactions - Current number of transactions - - - Memory usage - Memory usage - - - Wallet: - Wallet: - - - (none) - (none) - - - &Reset - &Reset - - - Received - Received - - - Sent - Sent - - - &Peers - &Peers - - - Banned peers - Banned peers - - - Select a peer to view detailed information. - Select a peer to view detailed information. - - - Direction - Direction - - - Version - Version - - - Starting Block - Starting Block - - - Synced Headers - Synced Headers - - - Synced Blocks - Synced Blocks - - - The mapped Autonomous System used for diversifying peer selection. - The mapped Autonomous System used for diversifying peer selection. - - - Mapped AS - Mapped AS - - - User Agent - User Agent - - - Node window - Node window - - - Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. - Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. - - - Decrease font size - Decrease font size - - - Increase font size - Increase font size - - - Services - Services - - - Connection Time - Connection Time - - - Last Send - Last Send - - - Last Receive - Last Receive - - - Ping Time - Ping Time - - - The duration of a currently outstanding ping. - The duration of a currently outstanding ping. - - - Ping Wait - Ping Wait - - - Min Ping - Min Ping - - - Time Offset - Time Offset - - - Last block time - Last block time - - - &Open - &Open - - - &Console - &Console - - - &Network Traffic - &Network Traffic - - - Totals - Totals - - - In: - In: - - - Out: - Out: - - - Debug log file - Debug log file - - - Clear console - Clear console - - - 1 &hour - 1 &hour - - - 1 &day - 1 &day - - - 1 &week - 1 &week - - - 1 &year - 1 &year - - - &Disconnect - &Disconnect - - - Ban for - Ban for - - - &Unban - &Unban - - - Welcome to the %1 RPC console. - Welcome to the %1 RPC console. - - - Use up and down arrows to navigate history, and %1 to clear screen. - Use up and down arrows to navigate history, and %1 to clear screen. - - - Type %1 for an overview of available commands. - Type %1 for an overview of available commands. - - - For more information on using this console type %1. - For more information on using this console type %1. - - - WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. - WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. - - - Network activity disabled - Network activity disabled - - - Executing command without any wallet - Executing command without any wallet - - - Executing command using "%1" wallet - Executing command using "%1" wallet - - - (node id: %1) - (node id: %1) - - - via %1 - via %1 - - - never - never - - - Inbound - Inbound - - - Outbound - Outbound - - - Unknown - Unknown - - - - ReceiveCoinsDialog - - &Amount: - &Amount: - - - &Label: - &Label: - - - &Message: - &Message: - - - An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network. - An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network. - - - An optional label to associate with the new receiving address. - An optional label to associate with the new receiving address. - - - Use this form to request payments. All fields are <b>optional</b>. - Use this form to request payments. All fields are <b>optional</b>. - - - An optional amount to request. Leave this empty or zero to not request a specific amount. - An optional amount to request. Leave this empty or zero to not request a specific amount. - - - An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request. - An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request. - - - An optional message that is attached to the payment request and may be displayed to the sender. - An optional message that is attached to the payment request and may be displayed to the sender. - - - &Create new receiving address - &Create new receiving address - - - Clear all fields of the form. - Clear all fields of the form. - - - Clear - Clear - - - Native segwit addresses (aka Bech32 or BIP-173) reduce your transaction fees later on and offer better protection against typos, but old wallets don't support them. When unchecked, an address compatible with older wallets will be created instead. - Native segwit addresses (aka Bech32 or BIP-173) reduce your transaction fees later on and offer better protection against typos, but old wallets don't support them. When unchecked, an address compatible with older wallets will be created instead. - - - Generate native segwit (Bech32) address - Generate native segwit (Bech32) address - - - Requested payments history - Requested payments history - - - Show the selected request (does the same as double clicking an entry) - Show the selected request (does the same as double clicking an entry) - - - Show - Show - - - Remove the selected entries from the list - Remove the selected entries from the list - - - Remove - Remove - - - Copy URI - Copy URI - - - Copy label - Copy label - - - Copy message - Copy message - - - Copy amount - Copy amount - - - Could not unlock wallet. - Could not unlock wallet. - - - - ReceiveRequestDialog - - Amount: - Amount: - - - Message: - Message: - - - Wallet: - dompet - - - Copy &URI - Copy &URI - - - Copy &Address - &Salin Alamat - - - &Save Image... - &Save Image... - - - Request payment to %1 - Request payment to %1 - - - Payment information - Payment information - - - - RecentRequestsTableModel - - Date - Date - - - Label - Label - - - Message - Message - - - (no label) - (tiada label) - - - (no message) - (no message) - - - (no amount requested) - (no amount requested) - - - Requested - Requested - - - - SendCoinsDialog - - Send Coins - Send Coins - - - Coin Control Features - Coin Control Features - - - Inputs... - Inputs... - - - automatically selected - automatically selected - - - Insufficient funds! - Insufficient funds! - - - Quantity: - Quantity: - - - Bytes: - Bytes: - - - Amount: - Amount: - - - Fee: - Fee: - - - After Fee: - After Fee: - - - Change: - Change: - - - If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address. - If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address. - - - Custom change address - Custom change address - - - Transaction Fee: - Transaction Fee: - - - Choose... - Choose... - - - Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain. - Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain. - - - Warning: Fee estimation is currently not possible. - Warning: Fee estimation is currently not possible. - - - Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size. - -Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis per kB" for a transaction size of 500 bytes (half of 1 kB) would ultimately yield a fee of only 50 satoshis. - Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size. - -Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis per kB" for a transaction size of 500 bytes (half of 1 kB) would ultimately yield a fee of only 50 satoshis. - - - per kilobyte - per kilobyte - - - Hide - Hide - - - Recommended: - Recommended: - - - Custom: - Custom: - - - (Smart fee not initialized yet. This usually takes a few blocks...) - (Smart fee not initialized yet. This usually takes a few blocks...) - - - Send to multiple recipients at once - Send to multiple recipients at once - - - Add &Recipient - Add &Recipient - - - Clear all fields of the form. - Clear all fields of the form. - - - Dust: - Dust: - - - Hide transaction fee settings - Hide transaction fee settings - - - When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process. - When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process. - - - A too low fee might result in a never confirming transaction (read the tooltip) - A too low fee might result in a never confirming transaction (read the tooltip) - - - Confirmation time target: - Confirmation time target: - - - Enable Replace-By-Fee - Enable Replace-By-Fee - - - With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk. - With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk. - - - Clear &All - Clear &All - - - Balance: - Baki - - - Confirm the send action - Confirm the send action - - - S&end - S&end - - - Copy quantity - Copy quantity - - - Copy amount - Copy amount - - - Copy fee - Copy fee - - - Copy after fee - Copy after fee - - - Copy bytes - Copy bytes - - - Copy dust - Copy dust - - - Copy change - Copy change - - - %1 (%2 blocks) - %1 (%2 blocks) - - - Cr&eate Unsigned - Cr&eate Unsigned - - - Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. - Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. - - - from wallet '%1' - from wallet '%1' - - - %1 to '%2' - %1 to '%2' - - - %1 to %2 - %1 to %2 - - - Do you want to draft this transaction? - Do you want to draft this transaction? - - - Are you sure you want to send? - Are you sure you want to send? - - - or - or - - - You can increase the fee later (signals Replace-By-Fee, BIP-125). - You can increase the fee later (signals Replace-By-Fee, BIP-125). - - - Please, review your transaction. - Please, review your transaction. - - - Transaction fee - Transaction fee - - - Not signalling Replace-By-Fee, BIP-125. - Not signalling Replace-By-Fee, BIP-125. - - - Total Amount - Total Amount - - - To review recipient list click "Show Details..." - To review recipient list click "Show Details..." - - - Confirm send coins - Confirm send coins - - - Confirm transaction proposal - Confirm transaction proposal - - - Send - Send - - - Watch-only balance: - Watch-only balance: - - - The recipient address is not valid. Please recheck. - The recipient address is not valid. Please recheck. - - - The amount to pay must be larger than 0. - The amount to pay must be larger than 0. - - - The amount exceeds your balance. - The amount exceeds your balance. - - - The total exceeds your balance when the %1 transaction fee is included. - The total exceeds your balance when the %1 transaction fee is included. - - - Duplicate address found: addresses should only be used once each. - Duplicate address found: addresses should only be used once each. - - - Transaction creation failed! - Transaction creation failed! - - - A fee higher than %1 is considered an absurdly high fee. - A fee higher than %1 is considered an absurdly high fee. - - - Payment request expired. - Payment request expired. - - - Warning: Invalid Bitcoin address - Warning: Invalid Bitcoin address - - - Warning: Unknown change address - Warning: Unknown change address - - - Confirm custom change address - Confirm custom change address - - - The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure? - The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure? - - - (no label) - (tiada label) - - - - SendCoinsEntry - - A&mount: - A&mount: - - - Pay &To: - Pay &To: - - - &Label: - &Label: - - - Choose previously used address - Choose previously used address - - - The Bitcoin address to send the payment to - The Bitcoin address to send the payment to - - - Alt+A - Alt+A - - - Paste address from clipboard - Paste address from clipboard - - - Alt+P - Alt+P - - - Remove this entry - Remove this entry - - - The amount to send in the selected unit - The amount to send in the selected unit - - - The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. - The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. - - - S&ubtract fee from amount - S&ubtract fee from amount - - - Use available balance - Use available balance - - - Message: - Message: - - - This is an unauthenticated payment request. - This is an unauthenticated payment request. - - - This is an authenticated payment request. - This is an authenticated payment request. - - - Enter a label for this address to add it to the list of used addresses - Enter a label for this address to add it to the list of used addresses - - - A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. - A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. - - - Pay To: - Pay To: - - - Memo: - Memo: - - - - ShutdownWindow - - %1 is shutting down... - %1 is shutting down... - - - Do not shut down the computer until this window disappears. - Do not shut down the computer until this window disappears. - - - - SignVerifyMessageDialog - - Signatures - Sign / Verify a Message - Signatures - Sign / Verify a Message - - - &Sign Message - &Sign Message - - - You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. - You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. - - - The Bitcoin address to sign the message with - The Bitcoin address to sign the message with - - - Choose previously used address - Choose previously used address - - - Alt+A - Alt+A - - - Paste address from clipboard - Paste address from clipboard - - - Alt+P - Alt+P - - - Enter the message you want to sign here - Enter the message you want to sign here - - - Signature - Signature - - - Copy the current signature to the system clipboard - Copy the current signature to the system clipboard - - - Sign the message to prove you own this Bitcoin address - Sign the message to prove you own this Bitcoin address - - - Sign &Message - Sign &Message - - - Reset all sign message fields - Reset all sign message fields - - - Clear &All - Clear &All - - - &Verify Message - &Verify Message - - - Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! - Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! - - - The Bitcoin address the message was signed with - The Bitcoin address the message was signed with - - - The signed message to verify - The signed message to verify - - - The signature given when the message was signed - The signature given when the message was signed - - - Verify the message to ensure it was signed with the specified Bitcoin address - Verify the message to ensure it was signed with the specified Bitcoin address - - - Verify &Message - Verify &Message - - - Reset all verify message fields - Reset all verify message fields - - - Click "Sign Message" to generate signature - Click "Sign Message" to generate signature - - - The entered address is invalid. - The entered address is invalid. - - - Please check the address and try again. - Please check the address and try again. - - - The entered address does not refer to a key. - The entered address does not refer to a key. - - - Wallet unlock was cancelled. - Wallet unlock was cancelled. - - - No error - No error - - - Private key for the entered address is not available. - Private key for the entered address is not available. - - - Message signing failed. - Message signing failed. - - - Message signed. - Message signed. - - - The signature could not be decoded. - The signature could not be decoded. - - - Please check the signature and try again. - Please check the signature and try again. - - - The signature did not match the message digest. - The signature did not match the message digest. - - - Message verification failed. - Message verification failed. - - - Message verified. - Message verified. - - - - TrafficGraphWidget - - KB/s - KB/s - - - - TransactionDesc - - Open until %1 - Open until %1 - - - conflicted with a transaction with %1 confirmations - conflicted with a transaction with %1 confirmations - - - 0/unconfirmed, %1 - 0/unconfirmed, %1 - - - in memory pool - in memory pool - - - not in memory pool - not in memory pool - - - abandoned - abandoned - - - %1/unconfirmed - %1/unconfirmed - - - %1 confirmations - %1 confirmations - - - Status - Status - - - Date - Date - - - Source - Source - - - Generated - Generated - - - From - From - - - unknown - unknown - - - To - To - - - own address - own address - - - watch-only - watch-only - - - label - label - - - Credit - Credit - - - not accepted - not accepted - - - Debit - Debit - - - Total debit - Total debit - - - Total credit - Total credit - - - Transaction fee - Transaction fee - - - Net amount - Net amount - - - Message - Message - - - Comment - Comment - - - Transaction ID - Transaction ID - - - Transaction total size - Transaction total size - - - Transaction virtual size - Transaction virtual size - - - Output index - Output index - - - (Certificate was not verified) - (Certificate was not verified) - - - Merchant - Merchant - - - Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. - Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. - - - Debug information - Debug information - - - Transaction - Transaction - - - Inputs - Inputs - - - Amount - Amount - - - true - true - - - false - false - - - - TransactionDescDialog - - This pane shows a detailed description of the transaction - This pane shows a detailed description of the transaction - - - Details for %1 - Details for %1 - - - - TransactionTableModel - - Date - Date - - - Type - Type - - - Label - Label - - - Open until %1 - Open until %1 - - - Unconfirmed - Unconfirmed - - - Abandoned - Abandoned - - - Confirming (%1 of %2 recommended confirmations) - Confirming (%1 of %2 recommended confirmations) - - - Confirmed (%1 confirmations) - Confirmed (%1 confirmations) - - - Conflicted - Conflicted - - - Immature (%1 confirmations, will be available after %2) - Immature (%1 confirmations, will be available after %2) - - - Generated but not accepted - Generated but not accepted - - - Received with - Received with - - - Received from - Received from - - - Sent to - Sent to - - - Payment to yourself - Payment to yourself - - - Mined - Mined - - - watch-only - watch-only - - - (n/a) - (n/a) - - - (no label) - (tiada label) - - - Transaction status. Hover over this field to show number of confirmations. - Transaction status. Hover over this field to show number of confirmations. - - - Date and time that the transaction was received. - Date and time that the transaction was received. - - - Type of transaction. - Type of transaction. - - - Whether or not a watch-only address is involved in this transaction. - Whether or not a watch-only address is involved in this transaction. - - - User-defined intent/purpose of the transaction. - User-defined intent/purpose of the transaction. - - - Amount removed from or added to balance. - Amount removed from or added to balance. - - - - TransactionView - - All - All - - - Today - Today - - - This week - This week - - - This month - This month - - - Last month - Last month - - - This year - This year - - - Range... - Range... - - - Received with - Received with - - - Sent to - Sent to - - - To yourself - To yourself - - - Mined - Mined - - - Other - Other - - - Enter address, transaction id, or label to search - Enter address, transaction id, or label to search - - - Min amount - Min amount - - - Abandon transaction - Abandon transaction - - - Increase transaction fee - Increase transaction fee - - - Copy address - Copy address - - - Copy label - Copy label - - - Copy amount - Copy amount - - - Copy transaction ID - Copy transaction ID - - - Copy raw transaction - Copy raw transaction - - - Copy full transaction details - Copy full transaction details - - - Edit label - Edit label - - - Show transaction details - Show transaction details - - - Export Transaction History - Export Transaction History - - - Comma separated file (*.csv) - Fail dibahagi oleh koma(*.csv) - - - Confirmed - Confirmed - - - Watch-only - Watch-only - - - Date - Date - - - Type - Type - - - Label - Label - - - Address - Alamat - - - ID - ID - - - Exporting Failed - Mengeksport Gagal - - - There was an error trying to save the transaction history to %1. - There was an error trying to save the transaction history to %1. - - - Exporting Successful - Exporting Successful - - - The transaction history was successfully saved to %1. - The transaction history was successfully saved to %1. - - - Range: - Range: - - - to - to - - - - UnitDisplayStatusBarControl - - Unit to show amounts in. Click to select another unit. - Unit to show amounts in. Click to select another unit. - - - - WalletController - - Close wallet - Tutup Wallet - - - Are you sure you wish to close the wallet <i>%1</i>? - Are you sure you wish to close the wallet <i>%1</i>? - - - Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. - Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. - - - - WalletFrame - - Create a new wallet - Create a new wallet - - - - WalletModel - - Send Coins - Send Coins - - - Fee bump error - Fee bump error - - - Increasing transaction fee failed - Increasing transaction fee failed - - - Do you want to increase the fee? - Do you want to increase the fee? - - - Do you want to draft a transaction with fee increase? - Do you want to draft a transaction with fee increase? - - - Current fee: - Current fee: - - - Increase: - Increase: - - - New fee: - New fee: - - - Confirm fee bump - Confirm fee bump - - - Can't draft transaction. - Can't draft transaction. - - - PSBT copied - PSBT copied - - - Can't sign transaction. - Can't sign transaction. - - - Could not commit transaction - Could not commit transaction - - - default wallet - dompet lalai - - - - - WalletView - - &Export - &Eksport - - - Export the data in the current tab to a file - -Alihkan fail data ke dalam tab semasa - - - Error - Ralat - - - Backup Wallet - Backup Wallet - - - Wallet Data (*.dat) - Wallet Data (*.dat) - - - Backup Failed - Backup Failed - - - There was an error trying to save the wallet data to %1. - There was an error trying to save the wallet data to %1. - - - Backup Successful - Backup Successful - - - The wallet data was successfully saved to %1. - The wallet data was successfully saved to %1. - - - Cancel - Cancel - - - - bitcoin-core - - Distributed under the MIT software license, see the accompanying file %s or %s - Distributed under the MIT software license, see the accompanying file %s or %s - - - Prune configured below the minimum of %d MiB. Please use a higher number. - Prune configured below the minimum of %d MiB. Please use a higher number. - - - Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) - Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) - - - Pruning blockstore... - Pruning blockstore... - - - Unable to start HTTP server. See debug log for details. - Unable to start HTTP server. See debug log for details. - - - The %s developers - The %s developers - - - Cannot obtain a lock on data directory %s. %s is probably already running. - Cannot obtain a lock on data directory %s. %s is probably already running. - - - Cannot provide specific connections and have addrman find outgoing connections at the same. - Cannot provide specific connections and have addrman find outgoing connections at the same. - - - Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. - Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. - - - Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. - Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. - - - Please contribute if you find %s useful. Visit %s for further information about the software. - Please contribute if you find %s useful. Visit %s for further information about the software. - - - The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct - The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct - - - This is a pre-release test build - use at your own risk - do not use for mining or merchant applications - This is a pre-release test build - use at your own risk - do not use for mining or merchant applications - - - This is the transaction fee you may discard if change is smaller than dust at this level - This is the transaction fee you may discard if change is smaller than dust at this level - - - Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. - Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. - - - Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain - Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain - - - Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. - Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. - - - Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. - Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. - - - -maxmempool must be at least %d MB - -maxmempool must be at least %d MB - - - Cannot resolve -%s address: '%s' - Cannot resolve -%s address: '%s' - - - Change index out of range - Change index out of range - - - Config setting for %s only applied on %s network when in [%s] section. - Config setting for %s only applied on %s network when in [%s] section. - - - Copyright (C) %i-%i - Copyright (C) %i-%i - - - Corrupted block database detected - Corrupted block database detected - - - Could not find asmap file %s - Could not find asmap file %s - - - Could not parse asmap file %s - Could not parse asmap file %s - - - Do you want to rebuild the block database now? - Do you want to rebuild the block database now? - - - Error initializing block database - Error initializing block database - - - Error initializing wallet database environment %s! - Error initializing wallet database environment %s! - - - Error loading %s - Error loading %s - - - Error loading %s: Private keys can only be disabled during creation - Error loading %s: Private keys can only be disabled during creation - - - Error loading %s: Wallet corrupted - Error loading %s: Wallet corrupted - - - Error loading %s: Wallet requires newer version of %s - Error loading %s: Wallet requires newer version of %s - - - Error loading block database - Error loading block database - - - Error opening block database - Error opening block database - - - Failed to listen on any port. Use -listen=0 if you want this. - Failed to listen on any port. Use -listen=0 if you want this. - - - Failed to rescan the wallet during initialization - Failed to rescan the wallet during initialization - - - Importing... - Importing... - - - Incorrect or no genesis block found. Wrong datadir for network? - Incorrect or no genesis block found. Wrong datadir for network? - - - Initialization sanity check failed. %s is shutting down. - Initialization sanity check failed. %s is shutting down. - - - Invalid P2P permission: '%s' - Invalid P2P permission: '%s' - - - Invalid amount for -%s=<amount>: '%s' - Invalid amount for -%s=<amount>: '%s' - - - Invalid amount for -discardfee=<amount>: '%s' - Invalid amount for -discardfee=<amount>: '%s' - - - Invalid amount for -fallbackfee=<amount>: '%s' - Invalid amount for -fallbackfee=<amount>: '%s' - - - Specified blocks directory "%s" does not exist. - Specified blocks directory "%s" does not exist. - - - Unknown address type '%s' - Unknown address type '%s' - - - Unknown change type '%s' - Unknown change type '%s' - - - Upgrading txindex database - Upgrading txindex database - - - Loading P2P addresses... - Loading P2P addresses... - - - Loading banlist... - Loading banlist... - - - Not enough file descriptors available. - Not enough file descriptors available. - - - Prune cannot be configured with a negative value. - Prune cannot be configured with a negative value. - - - Prune mode is incompatible with -txindex. - Prune mode is incompatible with -txindex. - - - Replaying blocks... - Replaying blocks... - - - Rewinding blocks... - Rewinding blocks... - - - The source code is available from %s. - The source code is available from %s. - - - Transaction fee and change calculation failed - Transaction fee and change calculation failed - - - Unable to bind to %s on this computer. %s is probably already running. - Unable to bind to %s on this computer. %s is probably already running. - - - Unable to generate keys - Unable to generate keys - - - Unsupported logging category %s=%s. - Unsupported logging category %s=%s. - - - Upgrading UTXO database - Upgrading UTXO database - - - User Agent comment (%s) contains unsafe characters. - User Agent comment (%s) contains unsafe characters. - - - Verifying blocks... - Verifying blocks... - - - Wallet needed to be rewritten: restart %s to complete - Wallet needed to be rewritten: restart %s to complete - - - Error: Listening for incoming connections failed (listen returned error %s) - Error: Listening for incoming connections failed (listen returned error %s) - - - Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) - Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) - - - The transaction amount is too small to send after the fee has been deducted - The transaction amount is too small to send after the fee has been deducted - - - You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain - You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain - - - Error reading from database, shutting down. - Error reading from database, shutting down. - - - Error upgrading chainstate database - Error upgrading chainstate database - - - Error: Disk space is low for %s - Error: Disk space is low for %s - - - Invalid -onion address or hostname: '%s' - Invalid -onion address or hostname: '%s' - - - Invalid -proxy address or hostname: '%s' - Invalid -proxy address or hostname: '%s' - - - Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) - Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) - - - Invalid netmask specified in -whitelist: '%s' - Invalid netmask specified in -whitelist: '%s' - - - Need to specify a port with -whitebind: '%s' - Need to specify a port with -whitebind: '%s' - - - Prune mode is incompatible with -blockfilterindex. - Prune mode is incompatible with -blockfilterindex. - - - Reducing -maxconnections from %d to %d, because of system limitations. - Reducing -maxconnections from %d to %d, because of system limitations. - - - Section [%s] is not recognized. - Section [%s] is not recognized. - - - Signing transaction failed - Signing transaction failed - - - Specified -walletdir "%s" does not exist - Specified -walletdir "%s" does not exist - - - Specified -walletdir "%s" is a relative path - Specified -walletdir "%s" is a relative path - - - Specified -walletdir "%s" is not a directory - Specified -walletdir "%s" is not a directory - - - The specified config file %s does not exist - - The specified config file %s does not exist - - - - The transaction amount is too small to pay the fee - The transaction amount is too small to pay the fee - - - This is experimental software. - This is experimental software. - - - Transaction amount too small - Transaction amount too small - - - Transaction too large - Transaction too large - - - Unable to bind to %s on this computer (bind returned error %s) - Unable to bind to %s on this computer (bind returned error %s) - - - Unable to create the PID file '%s': %s - Unable to create the PID file '%s': %s - - - Unable to generate initial keys - Unable to generate initial keys - - - Unknown -blockfilterindex value %s. - Unknown -blockfilterindex value %s. - - - Verifying wallet(s)... - Verifying wallet(s)... - - - Warning: unknown new rules activated (versionbit %i) - Warning: unknown new rules activated (versionbit %i) - - - -maxtxfee is set very high! Fees this large could be paid on a single transaction. - -maxtxfee is set very high! Fees this large could be paid on a single transaction. - - - This is the transaction fee you may pay when fee estimates are not available. - This is the transaction fee you may pay when fee estimates are not available. - - - Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments. - Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments. - - - %s is set very high! - %s is set very high! - - - Starting network threads... - Starting network threads... - - - The wallet will avoid paying less than the minimum relay fee. - The wallet will avoid paying less than the minimum relay fee. - - - This is the minimum transaction fee you pay on every transaction. - This is the minimum transaction fee you pay on every transaction. - - - This is the transaction fee you will pay if you send a transaction. - This is the transaction fee you will pay if you send a transaction. - - - Transaction amounts must not be negative - Transaction amounts must not be negative - - - Transaction has too long of a mempool chain - Transaction has too long of a mempool chain - - - Transaction must have at least one recipient - Transaction must have at least one recipient - - - Unknown network specified in -onlynet: '%s' - Unknown network specified in -onlynet: '%s' - - - Insufficient funds - Insufficient funds - - - Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable -fallbackfee. - Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable -fallbackfee. - - - Warning: Private keys detected in wallet {%s} with disabled private keys - Warning: Private keys detected in wallet {%s} with disabled private keys - - - Cannot write to data directory '%s'; check permissions. - Cannot write to data directory '%s'; check permissions. - - - Loading block index... - Loading block index... - - - Loading wallet... - Sedang baca wallet... - - - Cannot downgrade wallet - Cannot downgrade wallet - - - Rescanning... - Rescanning... - - - Done loading - Baca Selesai - - - \ No newline at end of file diff --git a/src/qt/locale/bitcoin_nl.ts b/src/qt/locale/bitcoin_nl.ts index b3d7179f3..8244c8c68 100644 --- a/src/qt/locale/bitcoin_nl.ts +++ b/src/qt/locale/bitcoin_nl.ts @@ -139,7 +139,7 @@ Ondertekenen is alleen mogelijk met adressen van het type 'legacy'. Show passphrase - Laat wachtwoord zien + Laat wachtwoordzin zien Encrypt wallet @@ -147,11 +147,11 @@ Ondertekenen is alleen mogelijk met adressen van het type 'legacy'. This operation needs your wallet passphrase to unlock the wallet. - Deze operatie vereist uw portemonneewachtwoord om de portemonnee te openen. + Deze bewerking heeft uw portemonnee-wachtwoordzin nodig om de portemonnee te ontgrendelen. Unlock wallet - Open portemonnee + portemonnee ontgrendelen<br><br> This operation needs your wallet passphrase to decrypt the wallet. @@ -163,11 +163,11 @@ Ondertekenen is alleen mogelijk met adressen van het type 'legacy'. Change passphrase - Wijzig wachtwoord + Wijzig wachtwoordzin Confirm wallet encryption - Bevestig versleuteling van de portemonnee + Bevestig de versleuteling van de portemonnee Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! diff --git a/src/qt/locale/bitcoin_pl.ts b/src/qt/locale/bitcoin_pl.ts index 9c76d93b7..698ec73ca 100644 --- a/src/qt/locale/bitcoin_pl.ts +++ b/src/qt/locale/bitcoin_pl.ts @@ -7,7 +7,7 @@ Create a new address - Utwórz nowy adres + Stwórz nowy portfel &New @@ -547,6 +547,14 @@ Podpisywanie jest możliwe tylko z adresami typu „legacy”. Show the %1 help message to get a list with possible Bitcoin command-line options Pokaż pomoc %1 aby zobaczyć listę wszystkich opcji lnii poleceń. + + &Mask values + &Schowaj wartości + + + Mask the values in the Overview tab + Schowaj wartości w zakładce Podsumowanie + default wallet domyślny portfel @@ -659,7 +667,11 @@ Podpisywanie jest możliwe tylko z adresami typu „legacy”. Original message: Wiadomość oryginalna: - + + A fatal error occurred. %1 can no longer continue safely and will quit. + Wystąpił fatalny błąd. %1 nie może być kontynuowany i zostanie zakończony. + + CoinControlDialog @@ -860,6 +872,10 @@ Podpisywanie jest możliwe tylko z adresami typu „legacy”. Make Blank Wallet Stwórz czysty portfel + + Use descriptors for scriptPubKey management + Użyj deskryptorów do zarządzania scriptPubKey + Descriptor Wallet Portfel deskryptora @@ -868,7 +884,11 @@ Podpisywanie jest możliwe tylko z adresami typu „legacy”. Create Stwórz - + + Compiled without sqlite support (required for descriptor wallets) + Skompilowano bez wsparcia sqlite (wymaganego dla deskryptorów potfeli) + + EditAddressDialog @@ -1483,13 +1503,25 @@ Podpisywanie jest możliwe tylko z adresami typu „legacy”. Current total balance in watch-only addresses Łączna kwota na podglądanych adresach - + + Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. + Tryb Prywatny został włączony dla zakłądki Podgląd. By odkryć wartości, odznacz Ustawienia->Ukrywaj wartości. + + PSBTOperationsDialog Dialog Dialog + + Sign Tx + Podpisz transakcję (Tx) + + + Broadcast Tx + Rozgłoś transakcję (Tx) + Copy to Clipboard Kopiuj do schowka @@ -1538,6 +1570,10 @@ Podpisywanie jest możliwe tylko z adresami typu „legacy”. Save Transaction Data Zapisz dane transakcji + + Partially Signed Transaction (Binary) (*.psbt) + Częściowo Podpisana Transakcja (*.psbt) + PSBT saved to disk. PSBT zapisane na dysk. @@ -2518,6 +2554,10 @@ Uwaga: Ponieważ opłata jest naliczana za każdy bajt, opłata "100 satoshi za Save Transaction Data Zapisz dane transakcji + + Partially Signed Transaction (Binary) (*.psbt) + Częściowo Podpisana Transakcja (*.psbt) + PSBT saved Zapisano PSBT @@ -3360,6 +3400,14 @@ Zwróć uwagę, że poprawnie zweryfikowana wiadomość potwierdza to, że nadaw WalletFrame + + No wallet has been loaded. +Go to File > Open Wallet to load a wallet. +- OR - + Portfel nie został wybrany. +Przejdź do Plik > Otwórz Portfel aby wgrać portfel. + + Create a new wallet Stwórz nowy portfel @@ -3641,6 +3689,10 @@ Zwróć uwagę, że poprawnie zweryfikowana wiadomość potwierdza to, że nadaw Failed to verify database Nie udało się zweryfikować bazy danych + + Ignoring duplicate -wallet %s. + Ignorowanie duplikatu -wallet %s + Importing... Importowanie… @@ -3786,6 +3838,10 @@ Zwróć uwagę, że poprawnie zweryfikowana wiadomość potwierdza to, że nadaw The transaction amount is too small to send after the fee has been deducted Zbyt niska kwota transakcji do wysłania po odjęciu opłaty + + This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet + Ten błąd mógł wystąpić jeżeli portfel nie został poprawnie zamknięty oraz był ostatnio załadowany przy użyciu buildu z nowszą wersją Berkley DB. Jeżeli tak, proszę użyć oprogramowania które ostatnio załadowało ten portfel + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain Musisz przebudować bazę używając parametru -reindex aby wrócić do trybu pełnego. To spowoduje ponowne pobranie całego łańcucha bloków @@ -3794,6 +3850,10 @@ Zwróć uwagę, że poprawnie zweryfikowana wiadomość potwierdza to, że nadaw A fatal internal error occurred, see debug.log for details Błąd: Wystąpił fatalny błąd wewnętrzny, sprawdź szczegóły w debug.log + + Cannot set -peerblockfilters without -blockfilterindex. + Nie można ustawić -peerblockfilters bez -blockfilterindex. + Disk space is too low! Zbyt mało miejsca na dysku! @@ -3814,6 +3874,10 @@ Zwróć uwagę, że poprawnie zweryfikowana wiadomość potwierdza to, że nadaw Error: Keypool ran out, please call keypoolrefill first Błąd: Pula kluczy jest pusta, odwołaj się do puli kluczy. + + Fee rate (%s) is lower than the minimum fee rate setting (%s) + Wartość opłaty (%s) jest mniejsza niż wartość minimalna w ustawieniach (%s) + Invalid -onion address or hostname: '%s' Niewłaściwy adres -onion lub nazwa hosta: '%s' @@ -3834,6 +3898,10 @@ Zwróć uwagę, że poprawnie zweryfikowana wiadomość potwierdza to, że nadaw Need to specify a port with -whitebind: '%s' Musisz określić port z -whitebind: '%s' + + No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. + Żaden serwer proxy nie jest ustawiony. Użyj -proxy=<ip> lub -proxy=<ip:port>. + Prune mode is incompatible with -blockfilterindex. Tryb ograniczony jest niekompatybilny z -blockfilterindex. diff --git a/src/qt/locale/bitcoin_pt.ts b/src/qt/locale/bitcoin_pt.ts index 82604fb0c..04f69e206 100644 --- a/src/qt/locale/bitcoin_pt.ts +++ b/src/qt/locale/bitcoin_pt.ts @@ -1365,6 +1365,10 @@ Assinar só é possível com endereços do tipo "legado". Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. Conecte-se a rede Bitcoin através de um proxy SOCKS5 separado para serviços Tor Onion + + Use separate SOCKS&5 proxy to reach peers via Tor onion services: + Use um proxy SOCKS5 separado para alcançar colegas por meio dos serviços Tor onion: + &Third party transaction URLs URLs de transação de &terceiros @@ -3573,6 +3577,10 @@ Ir para o arquivo > Abrir carteira para carregar a carteira Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. Erro ao ler %s! Todas as chaves foram lidas corretamente, mas os dados de transação ou as entradas no livro de endereços podem não existir ou estarem incorretos. + + More than one onion bind address is provided. Using %s for the automatically created Tor onion service. + Mais de um endereço de ligação onion é fornecido. Usando %s para o serviço Tor onion criado automaticamente. + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. Por favor verifique que a data e hora do seu computador estão certos! Se o relógio não estiver certo, o %s não funcionará corretamente. @@ -3581,6 +3589,18 @@ Ir para o arquivo > Abrir carteira para carregar a carteira Please contribute if you find %s useful. Visit %s for further information about the software. Por favor, contribua se achar que %s é útil. Visite %s para mais informação sobre o software. + + SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s + SQLiteDatabase: Falha ao preparar a instrução para buscar a versão do esquema da carteira sqlite: %s + + + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + SQLiteDatabase: Falha ao preparar a instrução para buscar o ID do aplicativo: %s + + + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported + SQLiteDatabase: Versão %d do esquema de carteira sqlite desconhecido. Apenas a versão %d é suportada + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct A base de dados de blocos contém um bloco que aparenta ser do futuro. Isto pode ser causado por uma data incorreta definida no seu computador. Reconstrua apenas a base de dados de blocos caso tenha a certeza de que a data e hora do seu computador estão corretos. @@ -3689,6 +3709,10 @@ Ir para o arquivo > Abrir carteira para carregar a carteira Failed to verify database Falha ao verificar base de dados + + Ignoring duplicate -wallet %s. + Ignorando -carteira %s duplicada. + Importing... A importar... @@ -3717,10 +3741,30 @@ Ir para o arquivo > Abrir carteira para carregar a carteira Invalid amount for -fallbackfee=<amount>: '%s' Valor inválido para -fallbackfee=<amount>: '%s' + + SQLiteDatabase: Failed to execute statement to verify database: %s + SQLiteDatabase: Falha ao executar a instrução para verificar o banco de dados: %s + + + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s + SQLiteDatabase: Falha ao buscar a versão do esquema da carteira sqlite: %s + + + SQLiteDatabase: Failed to fetch the application id: %s + SQLiteDatabase: Falha ao buscar o id do aplicativo: %s + + + SQLiteDatabase: Failed to prepare statement to verify database: %s + SQLiteDatabase: Falha ao preparar a instrução para verificar o banco de dados: %s + SQLiteDatabase: Failed to read database verification error: %s SQLiteDatabase: Falha ao ler base de dados erro de verificação %s + + SQLiteDatabase: Unexpected application id. Expected %u, got %u + SQLiteDatabase: ID de aplicativo inesperado. Esperado %u, obteve %u + Specified blocks directory "%s" does not exist. diff --git a/src/qt/locale/bitcoin_ro.ts b/src/qt/locale/bitcoin_ro.ts index b75b857f6..6b7a342f3 100644 --- a/src/qt/locale/bitcoin_ro.ts +++ b/src/qt/locale/bitcoin_ro.ts @@ -47,11 +47,11 @@ Choose the address to send coins to - Alege $adresa unde să trimiteţi monede + Alege adresa unde să trimiteţi monede Choose the address to receive coins with - Alege adresa la care sa primesti monedele cu + Alege adresa la care să primești monedele C&hoose @@ -175,6 +175,19 @@ Wallet encrypted Portofel criptat + + Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. + Introduceti o parola noua pentru portofel. <br/>Va rugam sa folositi o parola de <b> zece sau mai multe caractere</b>, sau <b>mai mult de opt cuvinte</b>. + + + Enter the old passphrase and new passphrase for the wallet. + Introduceţi vechea şi noua parolă pentru portofel. +  + + + Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. + Reţineti: criptarea portofelului dvs. nu vă poate proteja în totalitate bitcoin-urile împotriva furtului de malware care vă infectează computerul. + Wallet to be encrypted Portofel de criptat @@ -481,6 +494,10 @@ &Receiving addresses &Adresele de primire + + Open a bitcoin: URI + Deschidere bitcoin: o adresa URI sau o cerere de plată + Open Wallet Deschide portofel @@ -763,6 +780,10 @@ CreateWalletActivity + + Creating Wallet <b>%1</b>... + Creare Portofel <b>%1</b>... + Create wallet failed Crearea portofelului a eşuat @@ -798,6 +819,14 @@ Disable Private Keys Dezactivează cheile private + + Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. + Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. + + + Make Blank Wallet + Faceți Portofel gol + Create Creează @@ -1023,6 +1052,14 @@ OpenWalletActivity + + Open wallet failed + Deschiderea portofelului a eșuat + + + Open wallet warning + Atenționare la deschiderea portofelului + default wallet portofel implicit @@ -3325,6 +3362,10 @@ Nota: Cum taxa este calculata per byte, o taxa de "100 satoshi per kB" pentru o Error upgrading chainstate database Eroare la actualizarea bazei de date chainstate + + Error: Disk space is low for %s + Eroare: Spațiul pe disc este redus pentru %s + Invalid -onion address or hostname: '%s' Adresa sau hostname -onion invalide: '%s' @@ -3365,6 +3406,12 @@ Nota: Cum taxa este calculata per byte, o taxa de "100 satoshi per kB" pentru o Specified -walletdir "%s" is not a directory -walletdir "%s" specificat nu este un director + + The specified config file %s does not exist + + Fișierul de configurare specificat %s nu există + + The transaction amount is too small to pay the fee Suma tranzactiei este prea mica pentru plata taxei diff --git a/src/qt/locale/bitcoin_sl.ts b/src/qt/locale/bitcoin_sl.ts index 9f1d2bba7..04d93ca4d 100644 --- a/src/qt/locale/bitcoin_sl.ts +++ b/src/qt/locale/bitcoin_sl.ts @@ -3855,6 +3855,10 @@ Za odpiranje denarnice kliknite Datoteka > Odpri denarnico This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet Ta napaka se lahko pojavi, če denarnica ni bila pravilno zaprta in je bila nazadnje naložena s programsko opremo z novejšo verzijo Berkely DB. Če je temu tako, prosimo uporabite programsko opremo, s katero je bila ta denarnica nazadnje naložena. + + This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. + To je najvišja transakcijska provizija, ki jo plačate (poleg običajne provizije) za prednostno izogibanje delni porabi pred rednim izbiranjem kovancev. + Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. Transakcija potrebuje naslov za vračilo, ki pa ga ni moč ustvariti. Prosimo, najprej pokličite keypoolrefill. diff --git a/src/qt/locale/bitcoin_sr.ts b/src/qt/locale/bitcoin_sr.ts index ecdcceb0c..b381fc992 100644 --- a/src/qt/locale/bitcoin_sr.ts +++ b/src/qt/locale/bitcoin_sr.ts @@ -73,7 +73,7 @@ These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. Signing is only possible with addresses of the type 'legacy'. Ово су твоје Биткоин адресе за приманје уплата. Користи дугме „Направи нову адресу за примање” у картици за примање за креирање нових адреса. -Потписивање је могуђе само за адресе типа 'legacy'. +Потписивање је могуће само за адресе типа 'legacy'. &Copy Address @@ -329,7 +329,7 @@ Signing is only possible with addresses of the type 'legacy'. Create Wallet... - Направи Новчаник... + Направи новчаник... Create a new wallet @@ -393,7 +393,7 @@ Signing is only possible with addresses of the type 'legacy'. Show or hide the main Window - Прикажи или сакрији главни прозор + Прикажи или сакриј главни прозор Encrypt the private keys that belong to your wallet @@ -535,6 +535,10 @@ Signing is only possible with addresses of the type 'legacy'. No wallets available Нема доступних новчаника + + &Window + &Прозор + Minimize Умањи @@ -652,7 +656,7 @@ Signing is only possible with addresses of the type 'legacy'. Fee: - Накнада: + Провизија: Dust: @@ -923,7 +927,7 @@ Signing is only possible with addresses of the type 'legacy'. About %1 - Приближно %1 + О %1 Command-line options @@ -1021,15 +1025,15 @@ Signing is only possible with addresses of the type 'legacy'. Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. - Недавне трансакције можда не буду видљиве, зато салдо твог новчаника можда буде нетачан. Ова информација биђе тачна када новчаник заврши са синхронизацијом биткоин мреже, приказаној испод. + Недавне трансакције можда не буду видљиве, зато салдо твог новчаника може бити нетачан. Ова информација биће тачна када новчаник заврши са синхронизацијом биткоин мреже, приказаном испод. Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network. - Покушај слања биткоина који су под утицајем још не приказаних трансакција неће бити прихваћен од стране мреже. + Покушај трошења биткоина на које утичу још увек неприказане трансакције мрежа неће прихватити. Number of blocks left - Преостала количина блокова + Број преосталих блокова Unknown... @@ -1045,7 +1049,7 @@ Signing is only possible with addresses of the type 'legacy'. Progress increase per hour - Пораст напретка по часу + Повећање напретка по часу calculating... @@ -1883,7 +1887,7 @@ Signing is only possible with addresses of the type 'legacy'. &Network Traffic - & Саобраћај Мреже + &Мрежни саобраћај Totals @@ -2199,7 +2203,7 @@ Signing is only possible with addresses of the type 'legacy'. Fee: - Накнада: + Провизија: After Fee: @@ -2259,7 +2263,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p (Smart fee not initialized yet. This usually takes a few blocks...) - (Паметна накнада још није покренута. Ово уобичајено траје неколико блокова...) + (Паметна провизија још није покренута. Ово уобичајено траје неколико блокова...) Send to multiple recipients at once @@ -2287,7 +2291,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p A too low fee might result in a never confirming transaction (read the tooltip) - Сувише ниска накнада може резултовати у трансакцији која никад неће бити потврђена (прочитајте опис) + Сувише ниска провизија може резултовати да трансакција никада не буде потврђена (прочитајте опис) Confirmation time target: @@ -2347,7 +2351,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p %1 (%2 blocks) - %1 (%2 блокови) + %1 (%2 блокова) Cr&eate Unsigned @@ -3243,7 +3247,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Current fee: - Тренутна накнада: + Тренутна провизија: Increase: @@ -3251,7 +3255,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p New fee: - Нова накнада: + Нова провизија: Confirm fee bump @@ -3397,7 +3401,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p This is the transaction fee you may discard if change is smaller than dust at this level - Ово је накнада за трансакцију коју можете одбацити уколико је мања од нивоа прашине + Ову провизију можете обрисати уколико је кусур мањи од нивоа прашине Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. diff --git a/src/qt/locale/bitcoin_ta.ts b/src/qt/locale/bitcoin_ta.ts index bce945cd9..326065ee9 100644 --- a/src/qt/locale/bitcoin_ta.ts +++ b/src/qt/locale/bitcoin_ta.ts @@ -651,7 +651,7 @@ Amount: - விலை: + தொகை: Fee: @@ -683,7 +683,7 @@ Amount - விலை + தொகை Received with label @@ -1433,6 +1433,10 @@ PSBTOperationsDialog + + Close + நெருக்கமான + Total Amount முழு தொகை diff --git a/src/qt/locale/bitcoin_te.ts b/src/qt/locale/bitcoin_te.ts index fa2534bca..9d70a718c 100644 --- a/src/qt/locale/bitcoin_te.ts +++ b/src/qt/locale/bitcoin_te.ts @@ -195,20 +195,56 @@ Your wallet is about to be encrypted. మీ వాలెట్ గుప్తీకరించబోతోంది. + + Your wallet is now encrypted. + cheraveyu chirunama + + + IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. + ముఖ్యమైనది: మీరు మీ వాలెట్ ఫైల్‌తో చేసిన మునుపటి బ్యాకప్‌లను కొత్తగా రూపొందించిన, గుప్తీకరించిన వాలెట్ ఫైల్‌తో భర్తీ చేయాలి. భద్రతా కారణాల దృష్ట్యా, మీరు క్రొత్త, గుప్తీకరించిన వాలెట్ ఉపయోగించడం ప్రారంభించిన వెంటనే గుప్తీకరించని వాలెట్ ఫైల్ యొక్క మునుపటి బ్యాకప్‌లు నిరుపయోగంగా మారతాయి. + Wallet encryption failed జోలె సంకేతపరచడం విఫలమయ్యింది + + Wallet encryption failed due to an internal error. Your wallet was not encrypted. + lopali tappidam valla mee yokka wallet encryption samapthamu avaledu + + + The supplied passphrases do not match. + సరఫరా చేసిన పాస్‌ఫ్రేజ్‌లు సరిపోలడం లేదు. + BanTableModel BitcoinGUI + + Sign &message... + సంతకము మరియు సమాచారం + + + Synchronizing with network... + సమూహము తో సమకాలీకరణ చేయబడినది + + + &Overview + &అవలోకనం + E&xit నిష్క్రమించు + + Create a new wallet + <div></div> + + + Wallet: + ధనమును తీసుకొనిపోవు సంచి + &Send పంపు @@ -244,6 +280,10 @@ Quantity: పరిమాణం + + Amount + మొత్తం + Date తేదీ @@ -309,6 +349,10 @@ QObject + + Amount + మొత్తం + unknown తెలియదు @@ -325,6 +369,10 @@ ReceiveRequestDialog + + Wallet: + ధనమును తీసుకొనిపోవు సంచి + RecentRequestsTableModel @@ -398,6 +446,10 @@ Merchant వర్తకుడు + + Amount + మొత్తం + TransactionDescDialog @@ -452,7 +504,11 @@ WalletFrame - + + Create a new wallet + <div></div> + + WalletModel diff --git a/src/qt/locale/bitcoin_th.ts b/src/qt/locale/bitcoin_th.ts index 7d006a648..4955e204e 100644 --- a/src/qt/locale/bitcoin_th.ts +++ b/src/qt/locale/bitcoin_th.ts @@ -3,7 +3,7 @@ AddressBookPage Right-click to edit address or label - คลิกขวาเพื่อแก้ไขที่อยู่หรือชื่อ + คลิกขวาเพื่อแก้ไขที่อยู่หรือป้ายชื่อ Create a new address @@ -11,39 +11,39 @@ &New - ใหม่ + &ใหม่ Copy the currently selected address to the system clipboard - คัดลอกที่อยู่ที่เลือกอยู่ไปยังคลิบบอร์ดของระบบ + คัดลอกที่อยู่ที่เลือกในปัจจุบันไปยังคลิปบอร์ดของระบบ &Copy - คัดลอก + &คัดลอก C&lose - ปิด + &ปิด Delete the currently selected address from the list - ลบที่อยู่ที่เลือกไว้ออกจากรายการ + ลบที่อยู่ที่เลือกในปัจจุบันออกจากรายการ Enter address or label to search - ป้อนที่อยู่หรือฉลากเพื่อค้นหา + ป้อนที่อยู่หรือป้ายชื่อเพื่อค้นหา Export the data in the current tab to a file - ส่งออกข้อมูลที่อยู่ในแถบนี้ไปในไฟล์ + ส่งออกข้อมูลในแท็บปัจจุบันไปยังไฟล์ &Export - ส่งออก + &ส่งออก &Delete - ลบ + &ลบ Choose the address to send coins to @@ -55,15 +55,15 @@ C&hoose - เลือก + &เลือก Sending addresses - ที่อยู่ในการส่ง + ที่อยู่การส่ง Receiving addresses - ที่อยู่ในการรับ + ที่อยู่การรับ These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. @@ -71,15 +71,15 @@ &Copy Address - คัดลอกที่อยู่ + &คัดลอกที่อยู่ Copy &Label - คัดลอกชื่อ + &คัดลอกป้ายชื่อ &Edit - แก้ไข + &แก้ไข Export Address List @@ -87,7 +87,7 @@ Comma separated file (*.csv) - ไฟล์ที่คั่นด้วยจุลภาค (* .csv) + ไฟล์ที่คั่นด้วยจุลภาค (*.csv) Exporting Failed @@ -95,14 +95,14 @@ There was an error trying to save the address list to %1. Please try again. - เกิดข้อผิดพลาดขณะพยายามบันทึกรายการที่อยู่ไปยัง %1 กรุณาลองอีกครั้ง. + เกิดข้อผิดพลาดขณะพยายามบันทึกรายการที่อยู่ไปยัง %1 โปรดลองอีกครั้ง AddressTableModel Label - ฉลาก, ป้าย, + ป้ายชื่อ Address @@ -110,7 +110,7 @@ (no label) - (ไม่มีฉลาก) + (ไม่มีป้ายชื่อ) @@ -129,61 +129,85 @@ Repeat new passphrase - ทำซ้ำข้อความรหัสใหม่ + ทำซ้ำวลีรหัสผ่านใหม่ Show passphrase - ดูวลี + แสดงวลีรหัสผ่าน Encrypt wallet - กระเป๋าสตางค์ เข้ารหัส + เข้ารหัสกระเป๋าสตางค์ This operation needs your wallet passphrase to unlock the wallet. - การดำเนินการนี้ต้องการกระเป๋าสตางค์กระเป๋าสตางค์ของคุณเพื่อปลดล็อกกระเป๋าสตางค์ + การดำเนินการนี้ต้องการวลีรหัสผ่านกระเป๋าสตางค์ของคุณเพื่อปลดล็อคกระเป๋าสตางค์ Unlock wallet - ปลดล็อค กระเป๋าสตางค์  + ปลดล็อคกระเป๋าสตางค์ This operation needs your wallet passphrase to decrypt the wallet. - การดำเนินการนี้ ต้องการ รหัสผ่าน กระเป๋าสตางค์ ของคุณ เพื่อ ถอดรหัส กระเป๋าสตางค์ + การดำเนินการนี้ต้องการวลีรหัสผ่านกระเป๋าสตางค์ของคุณเพื่อถอดรหัสกระเป๋าสตางค์ Decrypt wallet - ถอดรหัส กระเป๋าสตางค์ + ถอดรหัสกระเป๋าสตางค์ Change passphrase - เปลี่ยน ข้อความรหัสผ่าน + เปลี่ยนวลีรหัสผ่าน Confirm wallet encryption - ยืนยันการเข้ารหัสกระเป๋าเงิน + ยืนยันการเข้ารหัสกระเป๋าสตางค์ Are you sure you wish to encrypt your wallet? - คุณแน่ใจหรือว่าต้องการเข้ารหัสกระเป๋าเงินของคุณ? + คุณแน่ใจหรือไม่ว่าต้องการเข้ารหัสกระเป๋าสตางค์ของคุณ? + + + Wallet encrypted + เข้ารหัสบัญชีเรียบร้อย + + + Your wallet is about to be encrypted. + บัญชีของคุณกำลังถูกเข้ารหัส + + + Your wallet is now encrypted. + บัญชีของคุณถูกเข้ารหัสเรียบร้อยแล้ว + + + Wallet encryption failed + การเข้ารหัสกระเป๋าสตางค์ล้มเหลว + + + Wallet unlock failed + การปลดล็อคกระเป๋าสตางค์ล้มเหลว + + + Wallet decryption failed + การถอดรหัสกระเป๋าสตางค์ล้มเหลว BanTableModel IP/Netmask - IP/Netmask (ตัวกรอง IP) + IP/Netmask Banned Until - ห้าม จนถึง + ห้ามจนถึง BitcoinGUI Sign &message... - เซ็นต์ชื่อด้วย &ข้อความ... + &เซ็นข้อความ... Synchronizing with network... @@ -195,11 +219,11 @@ Show general overview of wallet - แสดงภาพรวมทั่วไปของกระเป๋าเงิน + แสดงภาพรวมทั่วไปของกระเป๋าสตางค์ &Transactions - &การทำรายการ + &ธุรกรรม Browse transaction history @@ -211,7 +235,7 @@ Quit application - ออกจากโปรแกรม + ออกจากแอปพลิเคชัน &About %1 @@ -219,7 +243,7 @@ Show information about %1 - แสดงข้อมูล เกี่ยวกับ %1 + แสดงข้อมูลเกี่ยวกับ %1 About &Qt @@ -227,7 +251,7 @@ Show information about Qt - แสดงข้อมูล เกี่ยวกับ Qt + แสดงข้อมูลเกี่ยวกับ Qt &Options... @@ -235,27 +259,47 @@ Modify configuration options for %1 - ปรับปรุง ข้อมูลการตั้งค่าตัวเลือก สำหรับ %1 + ปรับเปลี่ยนตัวเลือกการกำหนดค่าสำหรับ %1 &Encrypt Wallet... - &กระเป๋าเงินเข้ารหัส + &เข้ารหัสกระเป๋าสตางค์... &Backup Wallet... - &สำรองกระเป๋าเงิน... + &สำรองข้อมูลกระเป๋าสตางค์... &Change Passphrase... - &เปลี่ยนรหัสผ่าน... + &เปลี่ยนวลีรหัสผ่าน... Open &URI... - เปิด &URI + &เปิด URI... Create Wallet... - สร้าง Wallet + สร้างกระเป๋าสตางค์... + + + Create a new wallet + สร้างกระเป๋าสตางค์ใหม่ + + + Wallet: + กระเป๋าสตางค์: + + + Click to disable network activity. + คลิกเพื่อปิดใช้งานกิจกรรมเครือข่าย + + + Click to enable network activity again. + คลิกเพื่อเปิดใช้งานกิจกรรมเครือข่ายอีกครั้ง + + + Syncing Headers (%1%)... + กำลังซิงค์ส่วนหัว (%1%)... Reindexing blocks on disk... @@ -263,11 +307,11 @@ Send coins to a Bitcoin address - ส่ง coins ไปยัง ที่เก็บ Bitcoin + ส่งเหรียญไปยังที่อยู่ Bitcoin Backup wallet to another location - สำรอง กระเป๋าเงินไปยัง ที่เก็บอื่น + สำรองข้อมูลกระเป๋าสตางค์ไปยังตำแหน่งที่ตั้งอื่น Change the passphrase used for wallet encryption @@ -291,11 +335,11 @@ Show or hide the main Window - แสดง หรือ ซ่อน หน้าหลัก + แสดงหรือซ่อนหน้าต่างหลัก Encrypt the private keys that belong to your wallet - เข้ารหัส private keys/ รหัสส่วนตัว สำหรับกระเป๋าเงินของท่าน + เข้ารหัสกุญแจส่วนตัวที่เป็นของกระเป๋าสตางค์ของคุณ Sign messages with your Bitcoin addresses to prove you own them @@ -319,7 +363,7 @@ Tabs toolbar - แถบเครื่องมือ + แถบเครื่องมือแท็บ Request payments (generates QR codes and bitcoin: URIs) @@ -363,7 +407,7 @@ Transactions after this will not yet be visible. - รายการหลังจากนี้ จะไม่แสดงให้เห็น + ธุรกรรมหลังจากนี้จะยังไม่สามารถมองเห็น Error @@ -381,13 +425,77 @@ Up to date ทันสมัย + + &Load PSBT from file... + &โหลด PSBT จากไฟล์... + + + Load PSBT from clipboard... + โหลด PSBT จากคลิปบอร์ด... + + + Node window + หน้าต่างโหนด + + + &Sending addresses + &ที่อยู่การส่ง + + + &Receiving addresses + &ที่อยู่การรับ + + + Open Wallet + เปิดกระเป๋าสตางค์ + + + Open a wallet + เปิดกระเป๋าสตางค์ + + + Close Wallet... + ปิดกระเป๋าสตางค์... + + + Close wallet + ปิดกระเป๋าสตางค์ + + + Close All Wallets... + ปิดกระเป๋าสตางค์ทั้งหมด... + + + Close all wallets + ปิดกระเป๋าสตางค์ทั้งหมด + Show the %1 help message to get a list with possible Bitcoin command-line options แสดง %1 ข้อความช่วยเหลือ เพื่อแสดงรายการ ตัวเลือกที่เป็นไปได้สำหรับ Bitcoin command-line + + default wallet + กระเป๋าสตางค์เริ่มต้น + + + No wallets available + ไม่มีกระเป๋าสตางค์ + &Window - &วันโดว์ + &หน้าต่าง + + + Minimize + ย่อ + + + Zoom + ซูม + + + Main Window + หน้าต่างหลัก %1 client @@ -397,6 +505,14 @@ Catching up... กำลังตามให้ทัน... + + Error: %1 + ข้อผิดพลาด: %1 + + + Warning: %1 + คำเตือน: %1 + Date: %1 @@ -407,6 +523,12 @@ Amount: %1 จำนวน: %1 + + + + Wallet: %1 + + กระเป๋าสตางค์: %1 @@ -443,16 +565,20 @@ Wallet is <b>encrypted</b> and currently <b>locked</b> กระเป๋าเงินถูก <b>เข้ารหัส</b> และในปัจจุบัน <b>ล็อค </b> + + Original message: + ข้อความดั้งเดิม: + CoinControlDialog Coin Selection - การเลือก Coin + การเลือกเหรียญ Quantity: - จำนวน: + ปริมาณ: Bytes: @@ -496,11 +622,11 @@ Received with label - รับโดยป้ายชื่อ (label) + รับด้วยป้ายชื่อ Received with address - รับโดยที่เก็บ + รับด้วยที่อยู่ Date @@ -532,21 +658,45 @@ (no label) - (ไม่มีฉลาก) + (ไม่มีป้ายชื่อ) - + + change from %1 (%2) + เปลี่ยนจาก %1 (%2) + + + (change) + (เปลี่ยน) + + CreateWalletActivity + + Creating Wallet <b>%1</b>... + กำลังสร้างกระเป๋าสตางค์ <b>%1</b>... + CreateWalletDialog + + Create Wallet + สร้างกระเป๋าสตางค์ + + + Wallet Name + ชื่อกระเป๋าสตางค์ + Encrypt Wallet - เข้ารหัสกระเป๋าเงิน + เข้ารหัสกระเป๋าสตางค์ + + + Disable Private Keys + ปิดใช้งานกุญแจส่วนตัว Make Blank Wallet - ทำกระเป๋าเงินเปล่า + สร้างกระเป๋าสตางค์เปล่า Create @@ -573,7 +723,23 @@ &Address - &ที่เก็บ + &ที่อยู่ + + + New sending address + ที่อยู่การส่งใหม่ + + + Edit receiving address + แก้ไขที่อยู่การรับ + + + Edit sending address + แก้ไขที่อยู่การส่ง + + + Could not unlock wallet. + ไม่สามารถปลดล็อคกระเป๋าสตางค์ @@ -588,22 +754,22 @@ Directory already exists. Add %1 if you intend to create a new directory here. - ไดเร็กทอรี่มีอยู่แล้ว ใส่เพิ่ม %1 หากท่านต้องการสร้างไดเร็กทอรี่ใหม่ที่นี่ + มีไดเรกทอรีอยู่แล้ว เพิ่ม %1 หากคุณต้องการสร้างไดเรกทอรีใหม่ที่นี่ Path already exists, and is not a directory. - พาธ มีอยู่แล้ว พาธนี่ไม่ใช่ไดเร็กทอรี่ + มีเส้นทางอยู่แล้วและไม่ใช่ไดเรกทอรี Cannot create data directory here. - ไม่สามารถสร้างไดเร็กทอรี่ข้อมูลที่นี่ + ไม่สามารถสร้างไดเรกทอรีข้อมูลที่นี่ HelpMessageDialog version - เวอร์ชั่น + รุ่น About %1 @@ -611,7 +777,7 @@ Command-line options - ตัวเลือก Command-line + ตัวเลือกบรรทัดคำสั่ง @@ -622,7 +788,7 @@ Welcome to %1. - ยินดีต้องรับสู่ %1 + ยินดีต้อนรับสู่ %1 As this is the first time the program is launched, you can choose where %1 will store its data. @@ -630,11 +796,11 @@ Use the default data directory - ใช้ไดเร็กทอรี่ข้อมูล ที่เป็นค่าเริ่มต้น + ใช้ไดเรกทอรีข้อมูลเริ่มต้น Use a custom data directory: - ใช้ไดเร็กทอรี่ข้อมูลที่ตั้งค่าเอง: + ใช้ไดเรกทอรีข้อมูลที่กำหนดเอง: Bitcoin @@ -671,6 +837,18 @@ Form รูป + + Progress + ความคืบหน้า + + + calculating... + กำลังคำนวณ... + + + Hide + ซ่อน + OpenURIDialog @@ -681,7 +859,15 @@ OpenWalletActivity - + + default wallet + กระเป๋าสตางค์เริ่มต้น + + + Opening Wallet <b>%1</b>... + กำลังเปิดกระเป๋าสตางค์ <b>%1</b>... + + OptionsDialog @@ -712,6 +898,10 @@ IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1) IP แอดเดส ของ proxy (เช่น IPv4: 127.0.0.1 / IPv6: ::1) + + &Hide tray icon + &ซ่อนไอคอนถาด + Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu. มินิไมซ์แอพ แทนการออกจากแอพพลิเคชั่น เมื่อวินโดว์ได้รับการปิด เมื่อเลือกตัวเลือกนี้ แอพพลิเคชั่น จะถูกปิด ก็ต่อเมื่อ มีการเลือกเมนู Exit/ออกจากระบบ เท่านั้น @@ -720,6 +910,10 @@ Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. URL แบบอื่น (ยกตัวอย่าง เอ็กพลอเลอร์บล็อก) ที่อยู่ใน เมนูรายการ ลำดับ %s ใน URL จะถูกเปลี่ยนด้วย รายการแฮช URL ที่เป็นแบบหลายๆอัน จะถูกแยก โดย เครื่องหมายเส้นบาร์ตั้ง | + + Open Configuration File + เปิดไฟล์การกำหนดค่า + Reset all client options to default. รีเซต ไคลเอ็นออพชั่น กลับไปเป็นค่าเริ่มต้น @@ -730,7 +924,7 @@ &Network - &เน็ตเวิร์ก + &เครือข่าย (0 = auto, <0 = leave that many cores free) @@ -738,7 +932,7 @@ W&allet - กระเ&ป๋าเงิน + &กระเป๋าสตางค์ Expert @@ -802,11 +996,27 @@ &Window - &วันโดว์ + &หน้าต่าง Show only a tray icon after minimizing the window. - แสดงเทรย์ไอคอน หลังมืนิไมส์วินโดว์ เท่านั้น + แสดงเฉพาะไอคอนถาดหลังจากย่อหน้าต่าง + + + User Interface &language: + &ภาษาส่วนติดต่อผู้ใช้: + + + &OK + &ตกลง + + + &Cancel + &ยกเลิก + + + Configuration options + ตัวเลือกการกำหนดค่า Error @@ -819,9 +1029,25 @@ Form รูป + + Balances + ยอดดุล + PSBTOperationsDialog + + Copy to Clipboard + คัดลอกไปยังคลิปบอร์ด + + + Save... + บันทึก... + + + Close + ปิด + PaymentServer @@ -835,38 +1061,142 @@ Amount จำนวน + + %n second(s) + %n วินาที + + + %n minute(s) + %n นาที + + + %n hour(s) + %n ชั่วโมง + + + %n day(s) + %n วัน + + + %n week(s) + %n สัปดาห์ + %1 and %2 %1 และ %2 + + %n year(s) + %n ปี + + + Error: %1 + ข้อผิดพลาด: %1 + QRImageWidget + + Save QR Code + บันทึกรหัส QR + RPCConsole + + Wallet: + กระเป๋าสตางค์: + + + Direction + ทิศทาง + + + Node window + หน้าต่างโหนด + + + &Open + &เปิด + + + &Console + &คอนโซล + ReceiveCoinsDialog &Label: - &ชื่อ: + &ป้ายชื่อ: + + + &Message: + &ข้อความ: + + + Clear + ล้าง + + + Show + แสดง + + + Remove + เอาออก + + + Copy URI + คัดลอก URI Copy label - คัดลอกป้ายกำกับ + คัดลอกป้ายชื่อ + + + Copy message + คัดลอกข้อความ Copy amount คัดลอกจำนวนเงิน + + Could not unlock wallet. + ไม่สามารถปลดล็อคกระเป๋าสตางค์ + ReceiveRequestDialog + + Address: + ที่อยู่: + Amount: จำนวน: + + Label: + ป้ายชื่อ: + + + Message: + ข้อความ: + + + Wallet: + กระเป๋าสตางค์: + + + Copy &URI + &คัดลอก URI + + + Copy &Address + &คัดลอกที่อยู่ + RecentRequestsTableModel @@ -876,11 +1206,15 @@ Label - ฉลาก, ป้าย, + ป้ายชื่อ + + + Message + ข้อความ (no label) - (ไม่มีฉลาก) + (ไม่มีป้ายชื่อ) @@ -913,6 +1247,22 @@ Change: เงินทอน: + + Choose... + เลือก... + + + Hide + ซ่อน + + + Recommended: + แนะนำ: + + + Custom: + กำหนดเอง: + Dust: เศษ: @@ -921,16 +1271,40 @@ Copy amount คัดลอกจำนวนเงิน + + from wallet '%1' + จากกระเป๋าสตางค์ '%1' + + + Send + ส่ง + (no label) - (ไม่มีฉลาก) + (ไม่มีป้ายชื่อ) SendCoinsEntry &Label: - &ชื่อ: + &ป้ายชื่อ: + + + Alt+A + Alt+A + + + Paste address from clipboard + วางที่อยู่จากคลิปบอร์ด + + + Alt+P + Alt+P + + + Message: + ข้อความ: @@ -938,16 +1312,60 @@ SignVerifyMessageDialog + + Alt+A + Alt+A + + + Paste address from clipboard + วางที่อยู่จากคลิปบอร์ด + + + Alt+P + Alt+P + + + Signature + ลายเซ็น + + + Sign &Message + &เซ็นข้อความ + + + No error + ไม่มีข้อผิดพลาด + TrafficGraphWidget TransactionDesc + + Status + สถานะ + Date วันที่ + + From + จาก + + + To + ถึง + + + Message + ข้อความ + + + Comment + ความคิดเห็น + Amount จำนวน @@ -962,24 +1380,52 @@ Date วันที่ + + Type + ชนิด + Label - ฉลาก, ป้าย, + ป้ายชื่อ (no label) - (ไม่มีฉลาก) + (ไม่มีป้ายชื่อ) TransactionView + + All + ทั้งหมด + + + Today + วันนี้ + + + This week + สัปดาห์นี้ + + + This month + เดือนนี้ + + + Last month + เดือนที่แล้ว + + + This year + ปีนี้ + Copy address คัดลอกที่อยู่ Copy label - คัดลอกป้ายกำกับ + คัดลอกป้ายชื่อ Copy amount @@ -989,6 +1435,10 @@ Copy transaction ID คัดลอก ID ธุรกรรม + + Edit label + แก้ไขป้ายชื่อ + Comma separated file (*.csv) ไฟล์ที่คั่นด้วยจุลภาค (* .csv) @@ -1001,14 +1451,22 @@ Date วันที่ + + Type + ชนิด + Label - ฉลาก, ป้าย, + ป้ายชื่อ Address ที่อยู่ + + ID + ID + Exporting Failed การส่งออกล้มเหลว @@ -1019,33 +1477,93 @@ WalletController - + + Close wallet + ปิดกระเป๋าสตางค์ + + + Close all wallets + ปิดกระเป๋าสตางค์ทั้งหมด + + + Are you sure you wish to close all wallets? + คุณแน่ใจหรือไม่ว่าต้องการปิดกระเป๋าสตางค์ทั้งหมด? + + WalletFrame - + + Create a new wallet + สร้างกระเป๋าสตางค์ + + WalletModel Send Coins ส่งเหรียญ - + + PSBT copied + คัดลอก PSBT แล้ว + + + default wallet + กระเป๋าสตางค์เริ่มต้น + + WalletView &Export - ส่งออก + &ส่งออก Export the data in the current tab to a file - ส่งออกข้อมูลที่อยู่ในแถบนี้ไปในไฟล์ + ส่งออกข้อมูลในแท็บปัจจุบันไปยังไฟล์ Error ข้อผิดพลาด - + + Backup Wallet + สำรองข้อมูลกระเป๋าสตางค์ + + + Wallet Data (*.dat) + ข้อมูลกระเป๋าสตางค์ (*.dat) + + + Backup Failed + การสำรองข้อมูลล้มเหลว + + + Cancel + ยกเลิก + + bitcoin-core + + Importing... + กำลังนำเข้า... + + + Unable to generate keys + ไม่สามารถสร้างกุญแจ + + + Upgrading UTXO database + กำลังอัปเกรดฐานข้อมูล UTXO + + + Loading wallet... + กำลังโหลดกระเป๋าสตางค์... + + + Cannot downgrade wallet + ไม่สามารถดาวน์เกรดกระเป๋าสตางค์ + \ No newline at end of file diff --git a/src/qt/locale/bitcoin_tr.ts b/src/qt/locale/bitcoin_tr.ts index d8d671dc6..ae7495bd8 100644 --- a/src/qt/locale/bitcoin_tr.ts +++ b/src/qt/locale/bitcoin_tr.ts @@ -3,7 +3,7 @@ AddressBookPage Right-click to edit address or label - Adresi veya etiketi düzenlemek için sağ tıklayınız. + Adresi veya etiketi düzenlemek için sağ tıklayın Create a new address @@ -11,7 +11,7 @@ &New - Yeni + &Yeni Copy the currently selected address to the system clipboard @@ -19,7 +19,7 @@ &Copy - Kopyala + &Kopyala C&lose @@ -49,6 +49,10 @@ Choose the address to send coins to Coin gönderilecek adresi seçiniz + + Choose the address to receive coins with + Bitcoinleri alacağınız adresi seçin + C&hoose S&ç @@ -65,6 +69,12 @@ These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. Bunlar Bitcoinleriniz için gönderici adreslerinizdir. Gönderim yapmadan önce her zaman tutarı ve alıcı adresi kontrol ediniz. + + + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + Bunlar ödeme almak için kullanacağınız bitcoin adreslerinizdir. Yeni adres oluşturmak için ödeme alma sekmesindeki 'Yeni alıcı adresi oluşturun' kısmına tıklayın. +İmzalama sadece 'legacy' tipindeki adreslerle mümkündür. &Copy Address @@ -76,7 +86,7 @@ Gönderim yapmadan önce her zaman tutarı ve alıcı adresi kontrol ediniz. &Edit - Düzenle + &Düzenle Export Address List @@ -103,7 +113,7 @@ Gönderim yapmadan önce her zaman tutarı ve alıcı adresi kontrol ediniz. Address - ADres + Adres (no label) @@ -112,6 +122,10 @@ Gönderim yapmadan önce her zaman tutarı ve alıcı adresi kontrol ediniz. AskPassphraseDialog + + Passphrase Dialog + Parola İletişim Kutusu + Enter passphrase Parolanızı giriniz. @@ -141,6 +155,10 @@ Cüzdan kilidini aç. Unlock wallet Cüzdan kilidini aç + + This operation needs your wallet passphrase to decrypt the wallet. + Bu işlem için cüzdanınızın parolası gerekiyor. + Decrypt wallet cüzdan şifresini çöz @@ -153,6 +171,10 @@ Cüzdan kilidini aç. Confirm wallet encryption Cüzdan şifrelemeyi onayla + + Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! + Uyarı: Cüzdanınızı şifreler ve parolanızı unutursanız <b>TÜM BITCOINLERINIZI KAYBEDERSİNİZ</b>! + Are you sure you wish to encrypt your wallet? Cüzdanınızı şifrelemek istediğinizden emin misiniz? @@ -161,6 +183,22 @@ Cüzdan kilidini aç. Wallet encrypted Cüzdan şifrelendi + + Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. + Cüzdan için yeni parolanızı girin. <br/>Lütfen <b>on veya daha fazla rastgele karakter</b>ya da <b>sekiz veya daha fazla sözcük</b> içeren bir parola kullanın. + + + Enter the old passphrase and new passphrase for the wallet. + Cüzdanınızın eski ve yeni parolasını giriniz. + + + Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. + Cüzdanınızı şifrelemenin bilgisayarınıza bulaşan kötü amaçlı yazılımlar tarafından bitcoinlerinizin çalınmasına karşı tamamen koruyamayacağını unutmayın. + + + Wallet to be encrypted + Şifrelenecek cüzdan + Your wallet is about to be encrypted. Cüzdanınız şifrelenmek üzere @@ -169,14 +207,34 @@ Cüzdan kilidini aç. Your wallet is now encrypted. Cüzdanınız şu an şifrelenmiş + + IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. + ÖNEMLİ: Yedeklediğiniz cüzdan dosyalarını yeni ve şifrelenmiş cüzdan dosyası ile değiştirmelisiniz. Güvenlik nedeniyle şifrelenmiş cüzdanı kullanmaya başladığınızda eski şifrelenmemiş cüzdan dosyaları kullanılamaz hale gelecektir. + Wallet encryption failed Cüzdan şifreleme başarısız oldu + + Wallet encryption failed due to an internal error. Your wallet was not encrypted. + Dahili bir hata nedeniyle cüzdan şifreleme başarısız oldu. Cüzdanınız şifrelenmedi. + + + The supplied passphrases do not match. + Girilen parolalar eşleşmiyor. + Wallet unlock failed Cüzdan kilidi açma başarız oldu + + The passphrase entered for the wallet decryption was incorrect. + Cüzdan parolasının kaldırılması için girilen parola yanlış. + + + Wallet decryption failed + Cüzdan parolasının kaldırılması başarısız oldu + Wallet passphrase was successfully changed. Cüzdan parolası başarılı bir şekilde değiştirildi @@ -217,7 +275,7 @@ Cüzdan kilidini aç. &Transactions - İşlemler + &İşlemler Browse transaction history @@ -225,11 +283,15 @@ Cüzdan kilidini aç. E&xit - Çıkış + &Çıkış Quit application - Uygulamayı kapat + Uygulamadan çık + + + &About %1 + &Hakkında %1 Show information about %1 @@ -245,7 +307,7 @@ Cüzdan kilidini aç. &Options... - Seçenekler + &Seçenekler... Modify configuration options for %1 @@ -269,7 +331,7 @@ Cüzdan kilidini aç. Create Wallet... - Cüzdan oluştur + Cüzdan Oluştur... Create a new wallet @@ -277,7 +339,7 @@ Cüzdan kilidini aç. Wallet: - Cüzdan + Cüzdan: Click to disable network activity. @@ -299,45 +361,109 @@ Cüzdan kilidini aç. Reindexing blocks on disk... Diskteki blokları yeniden indeksleme ... + + Proxy is <b>enabled</b>: %1 + Proxy <b>etkinleştirildi</b>: %1 + + + Send coins to a Bitcoin address + Bir Bitcoin adresine Bitcoin yolla + + + Backup wallet to another location + Cüzdanı diğer bir konumda yedekle + + + Change the passphrase used for wallet encryption + Cüzdan şifrelemesi için kullanılan parolayı değiştir + &Verify message... - Mesajı doğrula + &Mesajı doğrula... &Send - Gönder + &Gönder &Receive - &Teslim alınan + &Al &Show / Hide - Göster / Gizle + &Göster / Gizle Show or hide the main Window Ana pencereyi göster ve ya gizle + + Encrypt the private keys that belong to your wallet + Cüzdanınıza ait özel anahtarları şifreleyin + + + Sign messages with your Bitcoin addresses to prove you own them + Bitcoin adreslerine sahip olduğunuzu kanıtlamak için mesajlarınızı imzalayın + + + Verify messages to ensure they were signed with specified Bitcoin addresses + Belirtilen Bitcoin adresleriyle imzalandıklarından emin olmak için mesajları doğrulayın + &File - Dosya + &Dosya &Settings - Ayarlar + &Ayarlar &Help - Yardım + &Yardım Tabs toolbar Araç çubuğu sekmeleri + + Request payments (generates QR codes and bitcoin: URIs) + Ödeme isteyin (QR kodları ve bitcoin: URI'ler üretir) + + + Show the list of used sending addresses and labels + Kullanılan gönderim adreslerinin ve etiketlerin listesini göster + + + Show the list of used receiving addresses and labels + Kullanılan alım adreslerinin ve etiketlerin listesini göster + &Command-line options - Komut-satırı seçenekleri + &Komut satırı seçenekleri + + + %n active connection(s) to Bitcoin network + Bitcoin ağına %n etkin bağlantıBitcoin ağına %n etkin bağlantı + + + Indexing blocks on disk... + Diskteki bloklar indeksleniyor + + + Processing blocks on disk... + Diskteki bloklar işleniyor... + + + Processed %n block(s) of transaction history. + İşlem geçmişinin %n bloğu işlendi.İşlem geçmişinin %n bloklar işlendi. + + + Last received block was generated %1 ago. + Üretilen son blok %1 önce üretildi. + + + Transactions after this will not yet be visible. + Bundan sonraki işlemler henüz görüntülenemez. Error @@ -355,9 +481,45 @@ Cüzdan kilidini aç. Up to date Güncel + + &Load PSBT from file... + PSBT'yi dosyadan yükle ... + + + Load Partially Signed Bitcoin Transaction + Kısmen İmzalanmış Bitcoin İşlemini Yükle + + + Load PSBT from clipboard... + PBT'yi panadon yükle ... + + + Load Partially Signed Bitcoin Transaction from clipboard + Kısmen İmzalanmış Bitcoin işlemini panodan yükle + + + Node window + Düğüm penceresi + + + Open node debugging and diagnostic console + Açık düğüm hata ayıklama ve tanılama konsolu + + + &Sending addresses + & Adresleri gönderme + + + &Receiving addresses + & Adresler alınıyor + + + Open a bitcoin: URI + Bitcoin’i aç. + Open Wallet - Cüzdanı aç + Cüzdanı Aç Open a wallet @@ -365,15 +527,31 @@ Cüzdan kilidini aç. Close Wallet... - Çüzdan kapat + Cüzdanı Kapat... Close wallet - Cüzdan kapat + Cüzdanı kapat + + + Close All Wallets... + Tüm Cüzdanları Kapat... + + + Close all wallets + Tüm cüzdanları kapat + + + &Mask values + & Değerleri maskele + + + Mask the values in the Overview tab + Genel Bakış sekmesindeki değerleri maskeleyin default wallet - Varsayılan cüzdan + varsayılan cüzdan No wallets available @@ -381,7 +559,7 @@ Cüzdan kilidini aç. &Window - Pencere + &Pencere Minimize @@ -395,33 +573,166 @@ Cüzdan kilidini aç. Main Window Ana Pencere + + %1 client + %1 istemci + + + Connecting to peers... + Eşlere bağlanılıyor ... + + + + Catching up... + Yakalamak + + + Error: %1 + Hata: %1 + + + Warning: %1 + Uyarı: %1 + + + Date: %1 + + Tarih: %1 + + + + Amount: %1 + + Tutar: %1 + + + + Wallet: %1 + + Cüzdan: %1 + + + + Type: %1 + + Tür: %1 + + + + Label: %1 + + Etiket: %1 + + + + Address: %1 + + Adres: %1 + + + + Sent transaction + İşlem gönderildi + + + Incoming transaction + Gelen işlem + + + HD key generation is <b>enabled</b> + HD anahtar üreticiler kullanilabilir + + + HD key generation is <b>disabled</b> + HD anahtar üreticiler kullanılamaz + + + Private key <b>disabled</b> + Gizli anahtar oluşturma <b>devre dışı</b> + + + Wallet is <b>encrypted</b> and currently <b>unlocked</b> + Cüzdan <b>şifrelenmiş</b> ve şu anda <b>kilitli değil + + + Wallet is <b>encrypted</b> and currently <b>locked</b> + Cüzdan <b>şifrelenmiş</b> ve şu anda <b>kilitlidir + + + Original message: + Orjinal mesaj: + CoinControlDialog + + Coin Selection + Koin Seçimi + Quantity: - Miktar + Miktar: + + + Bytes: + Baytlar: Amount: - Miktar + Tutar: Fee: - Ücret + Ücret: + + + Dust: + Toz: + + + After Fee: + Ücret sonrası: Change: Değiştir + + (un)select all + tümünü seçmek + + + Tree mode + Ağaç kipi + + + List mode + Liste kipi + Amount - Mitar + Tutar + + + Received with label + Şu etiketle alındı + + + Received with address + Şu adresle alındı Date Tarih + + Confirmations + Doğrulamalar + + + Confirmed + Doğrulandı + Copy address Adresi kopyala @@ -438,6 +749,14 @@ Cüzdan kilidini aç. Copy transaction ID İşlem numarasını kopyala + + Lock unspent + harclanmamış + + + Unlock unspent + harclanmış + Copy quantity Miktarı kopyala @@ -446,6 +765,27 @@ Cüzdan kilidini aç. Copy fee Ücreti kopyala + + Copy after fee + Sonra ücret kopyası + + + + Copy bytes + Bitleri kopyala + + + Copy dust + toz kopyala + + + Copy change + Şansı kopyala + + + (%1 locked) + (%1'i kilitli) + yes evet @@ -454,10 +794,22 @@ Cüzdan kilidini aç. no hayır + + This label turns red if any recipient receives an amount smaller than the current dust threshold. + Herhangi bir alıcı mevcut toz eşiğinden daha düşük bir miktar alırsa bu etiket kırmızıya döner. + + + Can vary +/- %1 satoshi(s) per input. + Her girdi için +/- %1 satoshi değişebilir. + (no label) (etiket yok) + + change from %1 (%2) + %1 (%2)'den değişim + (change) (değiştir) @@ -465,6 +817,14 @@ Cüzdan kilidini aç. CreateWalletActivity + + Creating Wallet <b>%1</b>... + Cüzdan Oluşturuluyor <b>%1</b>... + + + Create wallet failed + Cüzdan oluşturma başarısız + Create wallet warning Cüzdan oluşturma uyarısı @@ -474,15 +834,31 @@ Cüzdan kilidini aç. CreateWalletDialog Create Wallet - Cüzdan oluştur + Cüzdan Oluştur Wallet Name - Cüzdan ismi + Cüzdan İsmi + + + Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. + Cüzdanı şifreleyin. Cüzdan seçtiğiniz bir anahtar parola kelimeleri ile şifrelenecektir. Encrypt Wallet - Cüzdanı şifrele + Cüzdanı Şifrele + + + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. + Bu cüzdan için özel anahtarları devre dışı bırakın. Özel anahtarları devre dışı bırakılan cüzdanların özel anahtarları olmayacak ve bir HD çekirdeği veya içe aktarılan özel anahtarları olmayacaktır. Bu, yalnızca saat cüzdanları için idealdir. + + + Disable Private Keys + Özel Kilidi (Private Key) kaldır + + + Make Blank Wallet + Boş Cüzdan Oluştur Create @@ -497,25 +873,45 @@ Cüzdan kilidini aç. &Label - Etiket + &Etiket &Address - Adres + &Adres + + + New sending address + Yeni gönderim adresi + + + Edit receiving address + Alım adresini düzenle + + + Edit sending address + Gönderme adresini düzenleyin + + + The entered address "%1" is not a valid Bitcoin address. + Girilen "%1" adresi geçerli bir Bitcoin adresi değildir. FreespaceChecker name - İsim + isim HelpMessageDialog version - Versiyon + sürüm + + + About %1 + %1 Hakkında Command-line options @@ -528,10 +924,30 @@ Cüzdan kilidini aç. Welcome Hoş geldiniz + + Welcome to %1. + %1'e hoşgeldiniz. + + + Use the default data directory + Varsayılan veri klasörünü kullan + + + Use a custom data directory: + Özel bir veri klasörü kullan: + Bitcoin Bitcoin + + At least %1 GB of data will be stored in this directory, and it will grow over time. + Bu dizinde en az %1 GB veri depolanacak ve zamanla büyüyecek. + + + The wallet will also be stored in this directory. + Cüzdan da bu dizinde depolanacaktır. + Error Hata @@ -539,13 +955,21 @@ Cüzdan kilidini aç. ModalOverlay + + Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. + Son işlemler henüz görünmeyebilir ve bu nedenle cüzdanınızın bakiyesi yanlış olabilir. Bu bilgiler, aşağıda detaylandırıldığı gibi, cüzdanınız bitcoin ağı ile senkronizasyonunu tamamladığında doğru olacaktır. + Unknown... - Bilinmeyen + Bilinmeyen... + + + Progress + İlerleme calculating... - Hesaplanıyor + hesaplanıyor... Hide @@ -559,7 +983,7 @@ Cüzdan kilidini aç. OpenWalletActivity default wallet - Varsayılan cüzdan + varsayılan cüzdan @@ -568,6 +992,26 @@ Cüzdan kilidini aç. Options Seçenekler + + Reset all client options to default. + İstemcinin tüm seçeneklerini varsayılan değerlere sıfırla. + + + &Reset Options + Seçenekleri &Sıfırla + + + &Network + &Ağ + + + GB + GB + + + W&allet + &Cüzdan + Proxy &IP: Proxy &IP: @@ -580,21 +1024,33 @@ Cüzdan kilidini aç. IPv6 IPv6 + + Tor + Tor + &Window - Pencere + &Pencere + + + &Display + &Görünüm + + + User Interface &language: + Kullanıcı arayüzü &dili: &OK - Tamam + &Tamam &Cancel - İptal + &İptal default - Varsayılan + varsayılan none @@ -611,13 +1067,25 @@ Cüzdan kilidini aç. OverviewPage + + Pending: + Bekliyor: + + + Mined balance that has not yet matured + ödenilmemiş miktar + Balances Hesaplar Total: - Toplam + Toplam: + + + Your current total balance + Güncel toplam bakiyeniz Spendable: @@ -634,6 +1102,50 @@ Cüzdan kilidini aç. Dialog Diyalog + + Sign Tx + İşlemi İmzalayın + + + Broadcast Tx + İşlemi Ağa Duyurun + + + Copy to Clipboard + Panoya kopyala + + + Save... + Kaydet... + + + Close + Kapat + + + Failed to load transaction: %1 + İşlem yüklenemedi: %1 + + + Failed to sign transaction: %1 + İşlem imzalanamadı: %1 + + + Signed transaction successfully. Transaction is ready to broadcast. + İşlem imzalandı ve ağa duyurulmaya hazır. + + + Transaction broadcast successfully! Transaction ID: %1 + İşlem ağa duyuruldu! İşlem kodu: %1 + + + Save Transaction Data + İşlem verilerini kaydet + + + Total Amount + Toplam Tutar + or veya @@ -645,9 +1157,17 @@ Cüzdan kilidini aç. Payment request error Ödeme isteği hatası + + 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. + 'bitcoin://' geçerli bir URI değil. Onun yerine 'bitcoin:' kullanın. + PeerTableModel + + Ping + Gecikme + Sent Gönderildi @@ -659,6 +1179,58 @@ Cüzdan kilidini aç. Amount Mitar + + Enter a Bitcoin address (e.g. %1) + Bir bitcoin adresi giriniz (örneğin %1) + + + %1 d + %1 g + + + %1 h + %1 sa + + + %1 m + %1 d + + + %1 s + %1 sn + + + %n second(s) + %n saniye%n saniye + + + %n minute(s) + %n dakika%n dakika + + + %n hour(s) + %n saat%n saat + + + %n day(s) + %n gün%n gün + + + %n week(s) + %n hafta%n hafta + + + %1 and %2 + %1 ve %2 + + + %n year(s) + %n yıl%n yıl + + + Error: %1 + Hata: %1 + unknown bilinmeyen @@ -666,16 +1238,40 @@ Cüzdan kilidini aç. QRImageWidget + + &Save Image... + Resmi &Kaydet... + + + &Copy Image + Resmi &Kopyala + Save QR Code - QR kodu kaydet + QR Kodu Kaydet RPCConsole + + Client version + İstemci sürümü + + + &Information + &Bilgi + + + General + Genel + + + Network + + Name - isim + İsim Memory usage @@ -683,7 +1279,11 @@ Cüzdan kilidini aç. Wallet: - Cüzdan + Cüzdan: + + + &Reset + &Sıfırla Sent @@ -691,16 +1291,80 @@ Cüzdan kilidini aç. Version - Versiyon + Sürüm + + + Node window + Düğüm penceresi + + + Increase font size + Yazıtipi boyutunu büyült + + + Permissions + İzinler Services Servisler + + Connection Time + Bağlantı Zamanı + + + &Open + &Aç + + + &Console + &Konsol + + + &Network Traffic + &Ağ Trafiği + + + Totals + Toplamlar + + + Debug log file + Hata ayıklama günlüğü + + + Clear console + Konsolu temizle + + + 1 &hour + 1 &saat + + + 1 &day + 1 &gün + + + 1 &week + 1 &hafta + + + 1 &year + 1 &yıl + + + &Disconnect + &Bağlantıyı Kes + never Hiçbir zaman + + Outbound + yurt dışı + Unknown Bilinmeyen @@ -708,6 +1372,30 @@ Cüzdan kilidini aç. ReceiveCoinsDialog + + &Amount: + miktar + + + &Label: + &Etiket: + + + &Message: + &Mesaj: + + + Clear + Temizle + + + Show + Göster + + + Remove + Kaldır + Copy label Etiketi kopyala @@ -723,6 +1411,10 @@ Cüzdan kilidini aç. ReceiveRequestDialog + + Address: + Adres: + Amount: Tutar: @@ -737,9 +1429,29 @@ Cüzdan kilidini aç. Wallet: - Cüzdan + Cüzdan: - + + Copy &URI + &URI'yi Kopyala + + + Copy &Address + &Adresi Kopyala + + + &Save Image... + Resmi &Kaydet... + + + Request payment to %1 + %1 'e ödeme talep et + + + Payment information + Ödeme bilgisi + + RecentRequestsTableModel @@ -750,6 +1462,10 @@ Cüzdan kilidini aç. Label Etiket + + Message + Mesaj + (no label) (etiket yok) @@ -761,6 +1477,10 @@ Cüzdan kilidini aç. Quantity: Miktar + + Bytes: + Bayt: + Amount: Miktar @@ -769,14 +1489,46 @@ Cüzdan kilidini aç. Fee: Ücret + + After Fee: + Ücret sonrası: + Change: Değiştir + + Transaction Fee: + İşlem Ücreti: + + + Choose... + Seç... + Hide Gizle + + Custom: + Özel: + + + Dust: + Toz: + + + Clear &All + Tümünü &Temizle + + + Balance: + Bakiye: + + + S&end + &Gönder + Copy quantity Miktarı kopyala @@ -789,6 +1541,51 @@ Cüzdan kilidini aç. Copy fee Ücreti kopyala + + Copy after fee + Sonra ücret kopyası + + + + Copy bytes + Bitleri kopyala + + + Copy dust + toz kopyala + + + Copy change + Şansı kopyala + + + %1 to %2 + %1 den %2'ye + + + Save Transaction Data + İşlem verilerini kaydet + + + PSBT saved + PSBT kaydedildi. + + + or + veya + + + Please, review your transaction. + Lütfen işleminizi gözden geçirin. + + + Transaction fee + İşlem ücreti + + + Send + Gönder + (no label) (etiket yok) @@ -796,26 +1593,126 @@ Cüzdan kilidini aç. SendCoinsEntry + + &Label: + &Etiket: + + + Alt+A + Alt+A + + + Alt+P + Alt+P + + + Message: + Mesaj: + ShutdownWindow SignVerifyMessageDialog + + Alt+A + Alt+A + + + Alt+P + Alt+P + + + Signature + İmza + + + Clear &All + Tümünü &Temizle + + + Verify &Message + &Mesajı Denetle + + + No error + Hata yok + TrafficGraphWidget - + + KB/s + KB/s + + TransactionDesc + + Status + Durum + Date Tarih + + Source + Kaynak + + + Generated + Oluşturuldu + + + From + Gönderen + unknown bilinmeyen + + To + Alıcı + + + own address + kendi adresiniz + + + watch-only + sadece-izlenen + + + label + etiket + + + Total debit + Toplam gider + + + Total credit + Toplam gelir + + + Transaction fee + İşlem ücreti + + + Net amount + Net tutar + + + Message + Mesaj + + + Comment + Yorum + Amount Mitar @@ -830,10 +1727,22 @@ Cüzdan kilidini aç. Date Tarih + + Type + Tür + Label Etiket + + Mined + Madenden + + + watch-only + sadece-izlenen + (no label) (etiket yok) @@ -841,6 +1750,42 @@ Cüzdan kilidini aç. TransactionView + + All + Tümü + + + Today + Bugün + + + This week + Bu hafta + + + This month + Bu ay + + + Last month + Geçen ay + + + This year + Bu yıl + + + Range... + Aralık... + + + Mined + Madenden + + + Other + Diğer + Copy address Adresi kopyala @@ -857,21 +1802,37 @@ Cüzdan kilidini aç. Copy transaction ID İşlem numarasını kopyala + + Edit label + Etiketi düzenle + + + Show transaction details + İşlem ayrıntılarını göster + Comma separated file (*.csv) Virgülle ayrılmış dosya (*.csv) + + Confirmed + Doğrulandı + Date Tarih + + Type + Tür + Label Etiket Address - ADres + Adres Exporting Failed @@ -887,6 +1848,10 @@ Cüzdan kilidini aç. Close wallet Cüzdan kapat + + Close all wallets + Tüm cüzdanları kapat + WalletFrame @@ -899,7 +1864,7 @@ Cüzdan kilidini aç. WalletModel default wallet - Varsayılan cüzdan + varsayılan cüzdan @@ -916,13 +1881,85 @@ Cüzdan kilidini aç. Error Hata - + + Backup Wallet + Cüzdanı Yedekle + + + Wallet Data (*.dat) + Cüzdan Verisi (*.dat) + + + Backup Failed + Yedekleme Başarısız + + + There was an error trying to save the wallet data to %1. + Cüzdan verisini %1'e kaydederken hata oluştu. + + + Backup Successful + Yedekleme Başarılı + + + The wallet data was successfully saved to %1. + Cüzdan verisi %1'e kaydedildi. + + + Cancel + İptal + + bitcoin-core + + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. + Lütfen bilgisayarınızın tarih ve saatinin doğruluğunu kontrol edin. Hata varsa %s doğru çalışmayacaktır. + + + Copyright (C) %i-%i + Telif Hakkı (C) %i-%i + + + The source code is available from %s. + %s'in kaynak kodu ulaşılabilir. + + + Verifying blocks... + Bloklar doğrulanıyor... + + + Error reading from database, shutting down. + Veritabanı okuma hatası, program kapatılıyor. + + + This is experimental software. + Bu deneysel bir uygulamadır. + + + Transaction amount too small + İşlem tutarı çok düşük + + + Transaction too large + İşlem çok büyük + + + Unable to bind to %s on this computer (bind returned error %s) + Bu bilgisayarda %s ögesine bağlanılamadı (bağlanma %s hatasını verdi) + + + Unable to generate initial keys + Başlangıç anahtarları üretilemiyor + Verifying wallet(s)... Cüzdan(lar) kontrol ediliyor... + + Warning: unknown new rules activated (versionbit %i) + Uyarı: Bilinmeyen yeni kurallar etkinleştirilmiştir (versionbit %i) + %s is set very high! %s çok yüksek ayarlanmış! @@ -965,7 +2002,7 @@ Cüzdan kilidini aç. Done loading - Yükleme tamamlandı. + Yükleme tamamlandı \ No newline at end of file diff --git a/src/qt/locale/bitcoin_uk.ts b/src/qt/locale/bitcoin_uk.ts index 3a1636223..b3b19fa81 100644 --- a/src/qt/locale/bitcoin_uk.ts +++ b/src/qt/locale/bitcoin_uk.ts @@ -3,485 +3,485 @@ AddressBookPage Right-click to edit address or label - Right-click to edit address or label + Клікніть правою кнопкою для редагування адреси чи мітки Create a new address - Create a new address + Створити нову адресу &New - &New + &Новий Copy the currently selected address to the system clipboard - Copy the currently selected address to the system clipboard + Копіювати виділену адресу в буфер обміну &Copy - &Copy + &Копіювати C&lose - C&lose + &Закрити Delete the currently selected address from the list - Delete the currently selected address from the list + Вилучити вибрану адресу з переліку Enter address or label to search - Enter address or label to search + Введіть адресу чи мітку для пошуку Export the data in the current tab to a file - Export the data in the current tab to a file + Експортувати дані з поточної вкладки в файл &Export - &Export + &Экспорт &Delete - &Delete + &Видалити Choose the address to send coins to - Choose the address to send coins to + Оберіть адресу для відправки монет Choose the address to receive coins with - Choose the address to receive coins with + Оберіть адресу для отримання монет C&hoose - C&hoose + &Вибрати Sending addresses - Sending addresses + Адреси відправлення Receiving addresses - Receiving addresses + Адреси отримання These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. - These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. + Це ваші адреси Bitcoin для надсилання платежів. Завжди перевіряйте суму та адресу одержувача перед відправленням монет. These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. Signing is only possible with addresses of the type 'legacy'. - These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. -Signing is only possible with addresses of the type 'legacy'. + Це ваші Біткойн адреси для отримання платежів. Використовуйте кнопку "Створити нову адресу для отримання" на вкладці отримання, щоб створити нові адреси. +Підпис можливий лише з адресами типу "legacy". &Copy Address - &Copy Address + &Скопіювати адресу Copy &Label - Copy &Label + Скопіювати &мітку &Edit - &Edit + &Редагувати Export Address List - Export Address List + Експортувати список адрес Comma separated file (*.csv) - Comma separated file (*.csv) + Файли (*.csv) розділені комами Exporting Failed - Exporting Failed + Помилка експорту There was an error trying to save the address list to %1. Please try again. - There was an error trying to save the address list to %1. Please try again. + Виникла помилка при спробі зберігання адрес до %1. Будь ласка спробуйте ще. AddressTableModel Label - Label + Мітка Address - Address + Адреса (no label) - (no label) + (немає мітки) AskPassphraseDialog Passphrase Dialog - Passphrase Dialog + Діалог введення паролю Enter passphrase - Enter passphrase + Введіть пароль New passphrase - New passphrase + Новий пароль Repeat new passphrase - Repeat new passphrase + Повторіть пароль Show passphrase - Show passphrase + Показати парольну фразу Encrypt wallet - Encrypt wallet + Зашифрувати гаманець This operation needs your wallet passphrase to unlock the wallet. - This operation needs your wallet passphrase to unlock the wallet. + Ця операція потребує пароль для розблокування гаманця. Unlock wallet - Unlock wallet + Розблокувати гаманець This operation needs your wallet passphrase to decrypt the wallet. - This operation needs your wallet passphrase to decrypt the wallet. + Ця операція потребує пароль для розшифрування гаманця. Decrypt wallet - Decrypt wallet + Розшифрувати гаманець Change passphrase - Change passphrase + Змінити пароль Confirm wallet encryption - Confirm wallet encryption + Підтвердіть шифрування гаманця Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! - Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! + Увага: Якщо ви зашифруєте гаманець і забудете пароль, ви <b>ВТРАТИТЕ ВСІ СВОЇ БІТКОІНИ</b>! Are you sure you wish to encrypt your wallet? - Are you sure you wish to encrypt your wallet? + Ви дійсно хочете зашифрувати свій гаманець? Wallet encrypted - Wallet encrypted + Гаманець зашифровано Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. - Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. + Введіть новий пароль для гаманця.<br/> Будь ласка, використовуйте пароль з <b>десяти або більше випадкових символів</b>, або <b> вісім або більше слів</b>. Enter the old passphrase and new passphrase for the wallet. - Enter the old passphrase and new passphrase for the wallet. + Введіть стару та нову парольну фразу для гаманця. Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. - Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. + Пам’ятайте, що шифрування гаманця не може повністю захистити ваші біткоіни від кражі, у випадку якщо ваш комп’ютер буде інфіковано шкідливими програмами. Wallet to be encrypted - Wallet to be encrypted + Гаманець який потрібно зашифрувати Your wallet is about to be encrypted. - Your wallet is about to be encrypted. + Ваш гаманець буде зашифровано. Your wallet is now encrypted. - Your wallet is now encrypted. + Ваш гаманець зашифровано. IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. - IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. + ВАЖЛИВО: Всі попередні резервні копії, які ви зробили з вашого файлу гаманця повинні бути замінені новоствореним, зашифрованим файлом гаманця. З міркувань безпеки, попередні резервні копії незашифрованого файлу гаманця стануть непридатними одразу ж, як тільки ви почнете використовувати новий, зашифрований гаманець. Wallet encryption failed - Wallet encryption failed + Не вдалося зашифрувати гаманець Wallet encryption failed due to an internal error. Your wallet was not encrypted. - Wallet encryption failed due to an internal error. Your wallet was not encrypted. + Виникла помилка під час шифрування гаманця. Ваш гаманець не було зашифровано. The supplied passphrases do not match. - The supplied passphrases do not match. + Введені паролі не співпадають. Wallet unlock failed - Wallet unlock failed + Не вдалося розблокувати гаманець The passphrase entered for the wallet decryption was incorrect. - The passphrase entered for the wallet decryption was incorrect. + Введено невірний пароль. Wallet decryption failed - Wallet decryption failed + Не вдалося розшифрувати гаманець Wallet passphrase was successfully changed. - Wallet passphrase was successfully changed. + Пароль було успішно змінено. Warning: The Caps Lock key is on! - Warning: The Caps Lock key is on! + Увага: ввімкнено Caps Lock! BanTableModel IP/Netmask - IP/Netmask + IP/Маска підмережі Banned Until - Banned Until + Заблоковано до BitcoinGUI Sign &message... - Sign &message... + Підписати &повідомлення Synchronizing with network... - Synchronizing with network... + Синхронізація з мережею... &Overview - &Overview + &Огляд Show general overview of wallet - Show general overview of wallet + Показати стан гаманця &Transactions - &Transactions + &Транзакції Browse transaction history - Browse transaction history + Переглянути історію транзакцій E&xit - E&xit + &Вихід Quit application - Quit application + Вийти &About %1 - &About %1 + П&ро %1 Show information about %1 - Show information about %1 + Показати інформацію про %1 About &Qt - About &Qt + &Про Qt Show information about Qt - Show information about Qt + Показати інформацію про Qt &Options... - &Options... + &Параметри Modify configuration options for %1 - Modify configuration options for %1 + Редагувати параметри для %1 &Encrypt Wallet... - &Encrypt Wallet... + &Шифрування гаманця... &Backup Wallet... - &Backup Wallet... + &Резервне копіювання гаманця... &Change Passphrase... - &Change Passphrase... + Змінити парол&ь... Open &URI... - Open &URI... + Відкрити &URI Create Wallet... - Create Wallet... + Створити Гаманець... Create a new wallet - Create a new wallet + Створити новий гаманець Wallet: - Wallet: + Гаманець: Click to disable network activity. - Click to disable network activity. + Натисніть, щоб вимкнути активність мережі. Network activity disabled. - Network activity disabled. + Мережева активність вимкнена. Click to enable network activity again. - Click to enable network activity again. + Натисніть, щоб знову активувати мережеву активність. Syncing Headers (%1%)... - Syncing Headers (%1%)... + Синхронізація заголовків (%1%)... Reindexing blocks on disk... - Reindexing blocks on disk... + Переіндексація блоків на диску ... Proxy is <b>enabled</b>: %1 - Proxy is <b>enabled</b>: %1 + Проксі <b>увімкнено</b>: %1 Send coins to a Bitcoin address - Send coins to a Bitcoin address + Відправити монети на вказану адресу Backup wallet to another location - Backup wallet to another location + Резервне копіювання гаманця в інше місце Change the passphrase used for wallet encryption - Change the passphrase used for wallet encryption + Змінити пароль, який використовується для шифрування гаманця &Verify message... - &Verify message... + П&еревірити повідомлення... &Send - &Send + &Відправити &Receive - &Receive + &Отримати &Show / Hide - &Show / Hide + Показа&ти / Приховати Show or hide the main Window - Show or hide the main Window + Показує або приховує головне вікно Encrypt the private keys that belong to your wallet - Encrypt the private keys that belong to your wallet + Зашифрувати закриті ключі, що знаходяться у вашому гаманці Sign messages with your Bitcoin addresses to prove you own them - Sign messages with your Bitcoin addresses to prove you own them + Підтвердіть, що Ви є власником повідомлення підписавши його Вашою Bitcoin-адресою Verify messages to ensure they were signed with specified Bitcoin addresses - Verify messages to ensure they were signed with specified Bitcoin addresses + Перевірте повідомлення для впевненості, що воно підписано вказаною Bitcoin-адресою &File - &File + &Файл &Settings - &Settings + &Налаштування &Help - &Help + &Довідка Tabs toolbar - Tabs toolbar + Панель дій Request payments (generates QR codes and bitcoin: URIs) - Request payments (generates QR codes and bitcoin: URIs) + Створити запит платежу (генерує QR-код та bitcoin: URI) Show the list of used sending addresses and labels - Show the list of used sending addresses and labels + Показати список адрес і міток, що були використані для відправлення Show the list of used receiving addresses and labels - Show the list of used receiving addresses and labels + Показати список адрес і міток, що були використані для отримання &Command-line options - &Command-line options + П&араметри командного рядка %n active connection(s) to Bitcoin network - %n active connection to Bitcoin network%n active connections to Bitcoin network%n active connections to Bitcoin network%n active connections to Bitcoin network + %n активне з'єднання з мережею Bitcoin%n активні з'єднання з мережею Bitcoin%n активних з'єднань з мережею Bitcoin%n активних з'єднань з мережею Bitcoin Indexing blocks on disk... - Indexing blocks on disk... + Індексація блоків на диску ... Processing blocks on disk... - Processing blocks on disk... + Обробка блоків на диску... Processed %n block(s) of transaction history. - Processed %n block of transaction history.Processed %n blocks of transaction history.Processed %n blocks of transaction history.Processed %n blocks of transaction history. + Оброблено %n блок історії транзакцій.Оброблено %n блоки історії транзакцій.Оброблено %n блоків історії транзакцій.Оброблено %n блоків історії транзакцій. %1 behind - %1 behind + %1 тому Last received block was generated %1 ago. - Last received block was generated %1 ago. + Останній отриманий блок було згенеровано %1 тому. Transactions after this will not yet be visible. - Transactions after this will not yet be visible. + Пізніші транзакції не буде видно. Error - Error + Помилка Warning - Warning + Попередження Information - Information + Інформація Up to date - Up to date + Синхронізовано &Load PSBT from file... @@ -501,524 +501,524 @@ Signing is only possible with addresses of the type 'legacy'. Node window - Node window + Вікно вузлів Open node debugging and diagnostic console - Open node debugging and diagnostic console + Відкрити консоль відлагоджування та діагностики &Sending addresses - &Sending addresses + &Адреси для відправлення &Receiving addresses - &Receiving addresses + &Адреси для отримання Open a bitcoin: URI - Open a bitcoin: URI + Відкрити біткоін URI Open Wallet - Open Wallet + Відкрити гаманець Open a wallet - Open a wallet + Відкрийте гаманець Close Wallet... - Close Wallet... + закрити Гаманець ... Close wallet - Close wallet + Закрити гаманець Close All Wallets... - Close All Wallets... + Закрити Всі Гаманці... Close all wallets - Close all wallets + Закрити всі гаманці Show the %1 help message to get a list with possible Bitcoin command-line options - Show the %1 help message to get a list with possible Bitcoin command-line options + Показати довідку %1 для отримання переліку можливих параметрів командного рядка. &Mask values - &Mask values + &Приховати значення Mask the values in the Overview tab - Mask the values in the Overview tab + Приховати значення на вкладці Огляд default wallet - default wallet + гаманець за змовчуванням No wallets available - No wallets available + Гаманців немає &Window - &Window + &Вікно Minimize - Minimize + Згорнути Zoom - Zoom + Збільшити Main Window - Main Window + Головне Вікно %1 client - %1 client + %1 клієнт Connecting to peers... - Connecting to peers... + Підключення до вузлів... Catching up... - Catching up... + Синхронізується... Error: %1 - Error: %1 + Помилка: %1 Warning: %1 - Warning: %1 + Попередження: %1 Date: %1 - Date: %1 + Дата: %1 Amount: %1 - Amount: %1 + Кількість: %1 Wallet: %1 - Wallet: %1 + Гаманець: %1 Type: %1 - Type: %1 + Тип: %1 Label: %1 - Label: %1 + Мітка: %1 Address: %1 - Address: %1 + Адреса: %1 Sent transaction - Sent transaction + Надіслані транзакції Incoming transaction - Incoming transaction + Отримані транзакції HD key generation is <b>enabled</b> - HD key generation is <b>enabled</b> + Генерація HD ключа <b>увімкнена</b> HD key generation is <b>disabled</b> - HD key generation is <b>disabled</b> + Генерація HD ключа<b>вимкнена</b> Private key <b>disabled</b> - Private key <b>disabled</b> + Закритого ключа <b>вимкнено</b> Wallet is <b>encrypted</b> and currently <b>unlocked</b> - Wallet is <b>encrypted</b> and currently <b>unlocked</b> + <b>Зашифрований</b> гаманець <b>розблоковано</b> Wallet is <b>encrypted</b> and currently <b>locked</b> - Wallet is <b>encrypted</b> and currently <b>locked</b> + <b>Зашифрований</b> гаманець <b>заблоковано</b> Original message: - Original message: + Первісне повідомлення: A fatal error occurred. %1 can no longer continue safely and will quit. - A fatal error occurred. %1 can no longer continue safely and will quit. + Сталася фатальна помилка. %1 більше не може продовжувати безпечно і завершить роботу. CoinControlDialog Coin Selection - Coin Selection + Вибір Монет Quantity: - Quantity: + Кількість: Bytes: - Bytes: + Байтів: Amount: - Amount: + Сума: Fee: - Fee: + Комісія: Dust: - Dust: + Пил: After Fee: - After Fee: + Після комісії: Change: - Change: + Решта: (un)select all - (un)select all + Вибрати/зняти всі Tree mode - Tree mode + Деревом List mode - List mode + Списком Amount - Amount + Кількість Received with label - Received with label + Отримано з позначкою Received with address - Received with address + Отримано з адресою Date - Date + Дата Confirmations - Confirmations + Підтверджень Confirmed - Confirmed + Підтверджені Copy address - Copy address + Копіювати адресу Copy label - Copy label + Копіювати мітку Copy amount - Copy amount + Копіювати суму Copy transaction ID - Copy transaction ID + Копіювати ID транзакції Lock unspent - Lock unspent + Заблокувати Unlock unspent - Unlock unspent + Розблокувати Copy quantity - Copy quantity + Скопіювати кількість Copy fee - Copy fee + Скопіювати комісію Copy after fee - Copy after fee + Скопіювати після комісії Copy bytes - Copy bytes + Скопіювати байти Copy dust - Copy dust + Скопіювати інше Copy change - Copy change + Скопіювати решту (%1 locked) - (%1 locked) + (%1 заблоковано) yes - yes + так no - no + ні This label turns red if any recipient receives an amount smaller than the current dust threshold. - This label turns red if any recipient receives an amount smaller than the current dust threshold. + Ця позначка стане червоною, якщо будь-який отримувач отримає суму, меншу за поточний поріг пилу. Can vary +/- %1 satoshi(s) per input. - Can vary +/- %1 satoshi(s) per input. + Може відрізнятися на +/- %1 сатоші за введені (no label) - (no label) + (без мітки) change from %1 (%2) - change from %1 (%2) + решта з %1 (%2) (change) - (change) + (решта) CreateWalletActivity Creating Wallet <b>%1</b>... - Creating Wallet <b>%1</b>... + Створення Гаманця <b>%1</b>... Create wallet failed - Create wallet failed + Помилка створення гаманця Create wallet warning - Create wallet warning + Попередження створення гаманця CreateWalletDialog Create Wallet - Create Wallet + Створити Гаманець Wallet Name - Wallet Name + Назва Гаманця Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. - Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. + Зашифруйте гаманець. Гаманець буде зашифрований за допомогою пароля на ваш вибір. Encrypt Wallet - Encrypt Wallet + Шифрувати Гаманець Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. - Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. + Вимкнути приватні ключі для цього гаманця. Гаманці з вимкнутими приватними ключами не матимуть приватних ключів і не можуть мати набір HD або імпортовані приватні ключі. Це ідеально підходить лише для тільки-огляд гаманців. Disable Private Keys - Disable Private Keys + Вимкнути приватні ключі Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. - Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. + Зробіть порожній гаманець. Порожні гаманці спочатку не мають приватних ключів або сценаріїв. Пізніше можна імпортувати приватні ключі та адреси або встановити HD-насіння. Make Blank Wallet - Make Blank Wallet + Створити пустий гаманець Use descriptors for scriptPubKey management - Use descriptors for scriptPubKey management + Використовуйте дескриптори для управління scriptPubKey Descriptor Wallet - Descriptor Wallet + Гаманець на базі дескрипторів Create - Create + Створити Compiled without sqlite support (required for descriptor wallets) - Compiled without sqlite support (required for descriptor wallets) + Зкомпільовано без підтримки sqlite (потрібно для гаманців дескрипторів) EditAddressDialog Edit Address - Edit Address + Редагувати адресу &Label - &Label + &Мітка The label associated with this address list entry - The label associated with this address list entry + Мітка, пов'язана з цим записом списку адрес The address associated with this address list entry. This can only be modified for sending addresses. - The address associated with this address list entry. This can only be modified for sending addresses. + Адреса, пов'язана з цим записом списку адрес. Це поле може бути модифіковане лише для адрес відправлення. &Address - &Address + &Адреса New sending address - New sending address + Нова адреса для відправлення Edit receiving address - Edit receiving address + Редагувати адресу для отримання Edit sending address - Edit sending address + Редагувати адресу для відправлення The entered address "%1" is not a valid Bitcoin address. - The entered address "%1" is not a valid Bitcoin address. + Введена адреса "%1" не є дійсною Bitcoin адресою. Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address. - Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address. + Адреса "%1" вже існує як отримувач з міткою "%2" і не може бути додана як відправник. The entered address "%1" is already in the address book with label "%2". - The entered address "%1" is already in the address book with label "%2". + Введена адреса "%1" вже присутня в адресній книзі з міткою "%2". Could not unlock wallet. - Could not unlock wallet. + Неможливо розблокувати гаманець. New key generation failed. - New key generation failed. + Не вдалося згенерувати нові ключі. FreespaceChecker A new data directory will be created. - A new data directory will be created. + Буде створено новий каталог даних. name - name + назва Directory already exists. Add %1 if you intend to create a new directory here. - Directory already exists. Add %1 if you intend to create a new directory here. + Каталог вже існує. Додайте %1, якщо ви мали намір створити там новий каталог. Path already exists, and is not a directory. - Path already exists, and is not a directory. + Шлях вже існує і не є каталогом. Cannot create data directory here. - Cannot create data directory here. + Тут неможливо створити каталог даних. HelpMessageDialog version - version + версія About %1 - About %1 + Про %1 Command-line options - Command-line options + Параметри командного рядка Intro Welcome - Welcome + Привітання Welcome to %1. - Welcome to %1. + Ласкаво просимо до %1. As this is the first time the program is launched, you can choose where %1 will store its data. - As this is the first time the program is launched, you can choose where %1 will store its data. + Оскільки це перший запуск програми, ви можете обрати, де %1 буде зберігати дані. When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. - When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. + Після натискання кнопки «OK» %1 почне завантажувати та обробляти повний ланцюжок блоків %4 (%2 ГБ), починаючи з найбільш ранніх транзакцій у %3, коли було запущено %4. Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. - Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. + Повернення цього параметра вимагає повторне завантаження всього ланцюга блоків. Швидше спочатку завантажити повний ланцюжок і обрізати його пізніше. Вимикає деякі розширені функції. This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. - This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. + Ця початкова синхронізація є дуже вимогливою, і може виявити проблеми з апаратним забезпеченням комп'ютера, які раніше не були непоміченими. Кожен раз, коли ви запускаєте %1, він буде продовжувати завантаження там, де він зупинився. If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. - If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. + Якщо ви вирішили обмежити збереження ланцюжка блоків (відсікання), історичні дані повинні бути завантажені та оброблені, але потім можуть бути видалені, щоб зберегти потрібний простір диска. Use the default data directory - Use the default data directory + Використовувати типовий каталог даних Use a custom data directory: - Use a custom data directory: + Використовувати свій каталог даних: Bitcoin @@ -1026,90 +1026,90 @@ Signing is only possible with addresses of the type 'legacy'. Discard blocks after verification, except most recent %1 GB (prune) - Discard blocks after verification, except most recent %1 GB (prune) + Відкинути блоки після перевірки, за винятком останніх %1 ГБ (прунінг) At least %1 GB of data will be stored in this directory, and it will grow over time. - At least %1 GB of data will be stored in this directory, and it will grow over time. + Принаймні, %1 ГБ даних буде збережено в цьому каталозі, і воно з часом зростатиме. Approximately %1 GB of data will be stored in this directory. - Approximately %1 GB of data will be stored in this directory. + Близько %1 ГБ даних буде збережено в цьому каталозі. %1 will download and store a copy of the Bitcoin block chain. - %1 will download and store a copy of the Bitcoin block chain. + %1 буде завантажувати та зберігати копію блокчейна. The wallet will also be stored in this directory. - The wallet will also be stored in this directory. + Гаманець також зберігатиметься в цьому каталозі. Error: Specified data directory "%1" cannot be created. - Error: Specified data directory "%1" cannot be created. + Помилка: неможливо створити обраний каталог даних «%1». Error - Error + Помилка %n GB of free space available - %n GB of free space available%n GB of free space available%n GB of free space available%n GB of free space available + Доступно %n ГБ вільного просторуДоступно %n ГБ вільного просторуДоступно %n ГБ вільного просторуДоступно %n ГБ вільного простору (of %n GB needed) - (of %n GB needed)(of %n GB needed)(of %n GB needed)(of %n GB needed) + (в той час, як необхідно %n ГБ)(в той час, як необхідно %n ГБ)(в той час, як необхідно %n ГБ)(в той час, як необхідно %n ГБ) (%n GB needed for full chain) - (%n GB needed for full chain)(%n GB needed for full chain)(%n GB needed for full chain)(%n GB needed for full chain) + (%n ГБ, необхідний для повного ланцюга)(%n ГБ, необхідних для повного ланцюга)(%n ГБ, необхідних для повного ланцюга)(%n ГБ, необхідних для повного ланцюга) ModalOverlay Form - Form + Форма Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. - Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. + Нещодавні транзакції ще не відображаються, тому баланс вашого гаманця може бути неточним. Ця інформація буде вірною після того, як ваш гаманець завершить синхронізацію з мережею біткойн, враховуйте показники нижче. Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network. - Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network. + Спроба відправити біткоїни, які ще не відображаються, не буде прийнята мережею. Number of blocks left - Number of blocks left + Залишилося блоків Unknown... - Unknown... + Невідомо... Last block time - Last block time + Час останнього блоку Progress - Progress + Прогрес Progress increase per hour - Progress increase per hour + Прогрес за годину calculating... - calculating... + рахування... Estimated time left until synced - Estimated time left until synced + Орієнтовний час до кінця синхронізації Hide - Hide + Приховати Esc @@ -1117,18 +1117,18 @@ Signing is only possible with addresses of the type 'legacy'. %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. - %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. + %1 синхронізується. Буде завантажено заголовки та блоки та перевірено їх до досягнення кінця ланцюга блоків. Unknown. Syncing Headers (%1, %2%)... - Unknown. Syncing Headers (%1, %2%)... + Невідомо. Синхронізація заголовків (%1, %2%) ... OpenURIDialog Open bitcoin URI - Open bitcoin URI + Відкрити біткоін URI URI: @@ -1139,106 +1139,106 @@ Signing is only possible with addresses of the type 'legacy'. OpenWalletActivity Open wallet failed - Open wallet failed + Помилка відкриття гаманця Open wallet warning - Open wallet warning + Попередження відкриття гаманця default wallet - default wallet + гаманець за змовчуванням Opening Wallet <b>%1</b>... - Opening Wallet <b>%1</b>... + Відкриття гаманця <b>%1</b>... OptionsDialog Options - Options + Параметри &Main - &Main + &Головні Automatically start %1 after logging in to the system. - Automatically start %1 after logging in to the system. + Автоматично запускати %1 при вході до системи. &Start %1 on system login - &Start %1 on system login + &Запускати %1 при вході в систему Size of &database cache - Size of &database cache + Розмір &кешу бази даних Number of script &verification threads - Number of script &verification threads + Кількість потоків &перевірки скриптів IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1) - IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1) + IP-адреса проксі-сервера (наприклад IPv4: 127.0.0.1 / IPv6: ::1) Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type. - Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type. + Показує, чи типово використовується проксі SOCKS5 для досягнення рівної участі для цього типу мережі. Hide the icon from the system tray. - Hide the icon from the system tray. + Приховати значок із системного лотка. &Hide tray icon - &Hide tray icon + &Приховати піктограму з лотка Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu. - Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu. + Згортати замість закриття. Якщо ця опція включена, програма закриється лише після вибору відповідного пункту в меню. Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. - Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. + Сторонні URL (наприклад, block explorer), що з'являться на вкладці транзакцій у вигляді пункту контекстного меню. %s в URL буде замінено на хеш транзакції. Для відокремлення URLів використовуйте вертикальну риску |. Open the %1 configuration file from the working directory. - Open the %1 configuration file from the working directory. + Відкрийте %1 файл конфігурації з робочого каталогу. Open Configuration File - Open Configuration File + Відкрити файл конфігурації Reset all client options to default. - Reset all client options to default. + Скинути всі параметри клієнта на типові. &Reset Options - &Reset Options + С&кинути параметри &Network - &Network + &Мережа Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. - Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. + Вимикає деякі нові властивості але всі блоки будуть повністю перевірені. Повернення цієї опції вимагає перезавантаження вього ланцюжка блоків. Фактичний розмір бази може бути дещо більший. Prune &block storage to - Prune &block storage to + Скоротити місце під блоки... GB - GB + ГБ Reverting this setting requires re-downloading the entire blockchain. - Reverting this setting requires re-downloading the entire blockchain. + Повернення цієї опції вимагає перезавантаження вього ланцюжка блоків. MiB @@ -1246,67 +1246,67 @@ Signing is only possible with addresses of the type 'legacy'. (0 = auto, <0 = leave that many cores free) - (0 = auto, <0 = leave that many cores free) + (0 = автоматично, <0 = вказує кількість вільних ядер) W&allet - W&allet + Г&аманець Expert - Expert + Експерт Enable coin &control features - Enable coin &control features + Ввімкнути &керування входами If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed. - If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed. + Якщо вимкнути витрату непідтвердженої решти, то решту від транзакції не можна буде використати, допоки ця транзакція не матиме хоча б одне підтвердження. Це також впливає на розрахунок балансу. &Spend unconfirmed change - &Spend unconfirmed change + &Витрачати непідтверджену решту Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled. - Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled. + Автоматично відкривати порт для клієнту біткоін на роутері. Працює лише якщо ваш роутер підтримує UPnP і ця функція увімкнена. Map port using &UPnP - Map port using &UPnP + Перенаправити порт за допомогою &UPnP Accept connections from outside. - Accept connections from outside. + Приймати з'єднання ззовні. Allow incomin&g connections - Allow incomin&g connections + Дозволити вхідні з'єднання Connect to the Bitcoin network through a SOCKS5 proxy. - Connect to the Bitcoin network through a SOCKS5 proxy. + Підключення до мережі Bitcoin через SOCKS5 проксі. &Connect through SOCKS5 proxy (default proxy): - &Connect through SOCKS5 proxy (default proxy): + &Підключення через SOCKS5 проксі (проксі за замовчуванням): Proxy &IP: - Proxy &IP: + &IP проксі: &Port: - &Port: + &Порт: Port of the proxy (e.g. 9050) - Port of the proxy (e.g. 9050) + Порт проксі-сервера (наприклад 9050) Used for reaching peers via: - Used for reaching peers via: + Приєднуватися до учасників через: IPv4 @@ -1322,660 +1322,660 @@ Signing is only possible with addresses of the type 'legacy'. &Window - &Window + &Вікно Show only a tray icon after minimizing the window. - Show only a tray icon after minimizing the window. + Показувати лише іконку в треї після згортання вікна. &Minimize to the tray instead of the taskbar - &Minimize to the tray instead of the taskbar + Мінімізувати &у трей M&inimize on close - M&inimize on close + Згортати замість закритт&я &Display - &Display + &Відображення User Interface &language: - User Interface &language: + Мов&а інтерфейсу користувача: The user interface language can be set here. This setting will take effect after restarting %1. - The user interface language can be set here. This setting will take effect after restarting %1. + Встановлює мову інтерфейсу. Зміни набудуть чинності після перезапуску %1. &Unit to show amounts in: - &Unit to show amounts in: + В&имірювати монети в: Choose the default subdivision unit to show in the interface and when sending coins. - Choose the default subdivision unit to show in the interface and when sending coins. + Виберіть одиницю вимірювання монет, яка буде відображатись в гаманці та при відправленні. Whether to show coin control features or not. - Whether to show coin control features or not. + Показати або сховати керування входами. Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. - Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. + Підключитися до мережі Біткойн через окремий проксі-сервер SOCKS5 для сервісів Tor. Use separate SOCKS&5 proxy to reach peers via Tor onion services: - Use separate SOCKS&5 proxy to reach peers via Tor onion services: + Використовувати окремий проксі-сервер SOCKS&5, щоб дістатися до вузлів через сервіси Tor: &Third party transaction URLs - &Third party transaction URLs + &URL-адреси транзакцій сторонніх розробників Options set in this dialog are overridden by the command line or in the configuration file: - Options set in this dialog are overridden by the command line or in the configuration file: + Параметри, задані в цьому діалоговому вікні, буде перевизначено командним рядком або в конфігураційному файлі: &OK - &OK + &Гаразд &Cancel - &Cancel + &Скасувати default - default + типово none - none + відсутні Confirm options reset - Confirm options reset + Підтвердження скидання параметрів Client restart required to activate changes. - Client restart required to activate changes. + Для застосування змін необхідно перезапустити клієнта. Client will be shut down. Do you want to proceed? - Client will be shut down. Do you want to proceed? + Клієнт буде вимкнено. Продовжити? Configuration options - Configuration options + Редагувати параметри The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file. - The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file. + Файл конфігурації використовується для вказування додаткових параметрів користувача, що перекривають настройки графічного інтерфейсу користувача. Крім того, будь-які параметри командного рядка замінять цей конфігураційний файл. Error - Error + Помилка The configuration file could not be opened. - The configuration file could not be opened. + Файл конфігурції не можливо відкрити This change would require a client restart. - This change would require a client restart. + Ця зміна вступить в силу після перезапуску клієнта The supplied proxy address is invalid. - The supplied proxy address is invalid. + Невірно вказано адресу проксі. OverviewPage Form - Form + Форма The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. - The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. + Показана інформація вже може бути застарілою. Ваш гаманець буде автоматично синхронізовано з мережею Bitcoin після встановлення підключення, але цей процес ще не завершено. Watch-only: - Watch-only: + Тільки спостереження: Available: - Available: + Наявно: Your current spendable balance - Your current spendable balance + Ваш поточний підтверджений баланс Pending: - Pending: + Очікується: Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance - Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance + Сума монет у непідтверджених транзакціях Immature: - Immature: + Незрілі: Mined balance that has not yet matured - Mined balance that has not yet matured + Баланс видобутих та ще недозрілих монет Balances - Balances + Баланси Total: - Total: + Всього: Your current total balance - Your current total balance + Ваш поточний сукупний баланс Your current balance in watch-only addresses - Your current balance in watch-only addresses + Ваш поточний баланс в адресах для спостереження Spendable: - Spendable: + Доступно: Recent transactions - Recent transactions + Останні транзакції Unconfirmed transactions to watch-only addresses - Unconfirmed transactions to watch-only addresses + Непідтверджені транзакції на адреси для спостереження Mined balance in watch-only addresses that has not yet matured - Mined balance in watch-only addresses that has not yet matured + Баланс видобутих та ще недозрілих монет на адресах для спостереження Current total balance in watch-only addresses - Current total balance in watch-only addresses + Поточний сукупний баланс в адресах для спостереження Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. - Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. + Режим конфіденційності активований для вкладки Огляд. Щоб демаскувати значення, зніміть прапорець Параметри-> Маскувати значення. PSBTOperationsDialog Dialog - Dialog + Діалог Sign Tx - Sign Tx + Підписати Tx Broadcast Tx - Broadcast Tx + Транслювати Tx Copy to Clipboard - Copy to Clipboard + Копіювати у буфер обміну Save... - Save... + Зберегти... Close - Close + Завершити Failed to load transaction: %1 - Failed to load transaction: %1 + Не вдалося завантажити транзакцію: %1 Failed to sign transaction: %1 - Failed to sign transaction: %1 + Не вдалося підписати транзакцію: %1 Could not sign any more inputs. - Could not sign any more inputs. + Не вдалося підписати більше входів. Signed %1 inputs, but more signatures are still required. - Signed %1 inputs, but more signatures are still required. + Підписано %1 входів, але все одно потрібно більше підписів. Signed transaction successfully. Transaction is ready to broadcast. - Signed transaction successfully. Transaction is ready to broadcast. + Транзакція успішно підписана. Транзакція готова до трансляції. Unknown error processing transaction. - Unknown error processing transaction. + Невідома помилка обробки транзакції. Transaction broadcast successfully! Transaction ID: %1 - Transaction broadcast successfully! Transaction ID: %1 + Транзакція успішно трансльована! Ідентифікатор транзакції: %1 Transaction broadcast failed: %1 - Transaction broadcast failed: %1 + Помилка трансляції транзакції: %1 PSBT copied to clipboard. - PSBT copied to clipboard. + PSBT скопійовано в буфер обміну. Save Transaction Data - Save Transaction Data + Зберегти дані транзакції Partially Signed Transaction (Binary) (*.psbt) - Partially Signed Transaction (Binary) (*.psbt) + Частково підписана транзакція (Binary) (* .psbt) PSBT saved to disk. - PSBT saved to disk. + PSBT збережено на диск. * Sends %1 to %2 - * Sends %1 to %2 + * Надсилає від %1 до %2 Unable to calculate transaction fee or total transaction amount. - Unable to calculate transaction fee or total transaction amount. + Неможливо розрахувати комісію за транзакцію або загальну суму транзакції. Pays transaction fee: - Pays transaction fee: + Оплачує комісію за транзакцію: Total Amount - Total Amount + Всього or - or + або Transaction has %1 unsigned inputs. - Transaction has %1 unsigned inputs. + Транзакція містить %1 непідписаних входів. Transaction is missing some information about inputs. - Transaction is missing some information about inputs. + У транзакції бракує певної інформації про вхідні дані. Transaction still needs signature(s). - Transaction still needs signature(s). + Для транзакції все ще потрібні підпис(и). (But this wallet cannot sign transactions.) - (But this wallet cannot sign transactions.) + (Але цей гаманець не може підписувати транзакції.) (But this wallet does not have the right keys.) - (But this wallet does not have the right keys.) + (Але цей гаманець не має правильних ключів.) Transaction is fully signed and ready for broadcast. - Transaction is fully signed and ready for broadcast. + Транзакція повністю підписана і готова до трансляції. Transaction status is unknown. - Transaction status is unknown. + Статус транзакції невідомий. PaymentServer Payment request error - Payment request error + Помилка запиту платежу Cannot start bitcoin: click-to-pay handler - Cannot start bitcoin: click-to-pay handler + Не вдається запустити біткойн: обробник клацни-плати URI handling - URI handling + Обробка URI 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. - 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. + 'bitcoin://' не вірний URI. Використовуйте 'bitcoin:'. Cannot process payment request because BIP70 is not supported. - Cannot process payment request because BIP70 is not supported. + Неможливо обробити платіжний запит, оскільки BIP70 не підтримується. Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. - Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. + Через поширені недоліки безпеки в BIP70 настійно рекомендується ігнорувати будь-які інструкції продавця щодо переключення гаманців. If you are receiving this error you should request the merchant provide a BIP21 compatible URI. - If you are receiving this error you should request the merchant provide a BIP21 compatible URI. + Якщо ви отримали цю помилку, ви повинні попросити продавця надати URI, сумісний з BIP21. Invalid payment address %1 - Invalid payment address %1 + Помилка в адресі платежу %1 URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters. - URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters. + Неможливо обробити URI! Причиною цього може бути некоректна Біткойн-адреса або неправильні параметри URI. Payment request file handling - Payment request file handling + Обробка файлу запиту платежу PeerTableModel User Agent - User Agent + Клієнт користувача Node/Service - Node/Service + Вузол/Сервіс NodeId - NodeId + Ідентифікатор вузла Ping - Ping + Затримка Sent - Sent + Відправлено Received - Received + Отримано QObject Amount - Amount + Кількість Enter a Bitcoin address (e.g. %1) - Enter a Bitcoin address (e.g. %1) + Введіть адресу Bitcoin (наприклад %1) %1 d - %1 d + %1 д %1 h - %1 h + %1 год %1 m - %1 m + %1 хв %1 s - %1 s + %1 с None - None + Відсутні N/A - N/A + Н/Д %1 ms - %1 ms + %1 мс %n second(s) - %n second%n seconds%n seconds%n seconds + %n секунда%n секунд%n секунд%n секунд %n minute(s) - %n minute%n minutes%n minutes%n minutes + %n хвилина%n хвилин%n хвилин%n хвилин %n hour(s) - %n hour%n hours%n hours%n hours + %n година%n годин%n годин%n годин %n day(s) - %n day%n days%n days%n days + %n день%n днів%n днів%n днів %n week(s) - %n week%n weeks%n weeks%n weeks + %n тиждень%n тижнів%n тижнів%n тижнів %1 and %2 - %1 and %2 + %1 та %2 %n year(s) - %n year%n years%n years%n years + %n рік%n років%n років%n років %1 B - %1 B + %1 Б %1 KB - %1 KB + %1 КБ %1 MB - %1 MB + %1 МБ %1 GB - %1 GB + %1 ГБ Error: Specified data directory "%1" does not exist. - Error: Specified data directory "%1" does not exist. + Помилка: Вказаного каталогу даних «%1» не існує. Error: Cannot parse configuration file: %1. - Error: Cannot parse configuration file: %1. + Помилка: Неможливо розібрати файл конфігурації: %1. Error: %1 - Error: %1 + Помилка: %1 Error initializing settings: %1 - Error initializing settings: %1 + Помилка ініціалізації налаштувань: %1 %1 didn't yet exit safely... - %1 didn't yet exit safely... + %1 безпечний вихід ще не виконано... unknown - unknown + невідомо QRImageWidget &Save Image... - &Save Image... + &Зберегти зображення... &Copy Image - &Copy Image + &Копіювати зображення Resulting URI too long, try to reduce the text for label / message. - Resulting URI too long, try to reduce the text for label / message. + Кінцевий URI занадто довгий, спробуйте зменшити текст для мітки / повідомлення. Error encoding URI into QR Code. - Error encoding URI into QR Code. + Помилка кодування URI в QR-код. QR code support not available. - QR code support not available. + Підтримка QR-коду недоступна. Save QR Code - Save QR Code + Зберегти QR-код PNG Image (*.png) - PNG Image (*.png) + Зображення PNG (*.png) RPCConsole N/A - N/A + Н/Д Client version - Client version + Версія клієнта &Information - &Information + &Інформація General - General + Загальна Using BerkeleyDB version - Using BerkeleyDB version + Використовується BerkeleyDB версії Datadir - Datadir + Каталог даних To specify a non-default location of the data directory use the '%1' option. - To specify a non-default location of the data directory use the '%1' option. + Для зазначення нестандартного шляху до каталогу даних, скористайтесь опцією '%1'. Blocksdir - Blocksdir + Каталог блоків To specify a non-default location of the blocks directory use the '%1' option. - To specify a non-default location of the blocks directory use the '%1' option. + Для зазначення нестандартного шляху до каталогу блоків, скористайтесь опцією '%1'. Startup time - Startup time + Час запуску Network - Network + Мережа Name - Name + Ім’я Number of connections - Number of connections + Кількість підключень Block chain - Block chain + Ланцюг блоків Memory Pool - Memory Pool + Пул пам'яті Current number of transactions - Current number of transactions + Поточне число транзакцій Memory usage - Memory usage + Використання пам'яті Wallet: - Wallet: + Гаманець: (none) - (none) + (відсутні) &Reset - &Reset + &Скинути Received - Received + Отримано Sent - Sent + Відправлено &Peers - &Peers + &Учасники Banned peers - Banned peers + Заблоковані вузли Select a peer to view detailed information. - Select a peer to view detailed information. + Виберіть учасника для перегляду детальнішої інформації Direction - Direction + Напрямок Version - Version + Версія Starting Block - Starting Block + Початковий Блок Synced Headers - Synced Headers + Синхронізовані Заголовки Synced Blocks - Synced Blocks + Синхронізовані Блоки The mapped Autonomous System used for diversifying peer selection. - The mapped Autonomous System used for diversifying peer selection. + Картована автономна система, що використовується для диверсифікації вибору вузлів. Mapped AS - Mapped AS + Картована Автономна Система User Agent - User Agent + Клієнт користувача Node window - Node window + Вікно вузлів Current block height @@ -1983,491 +1983,491 @@ Signing is only possible with addresses of the type 'legacy'. Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. - Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. + Відкрийте файл журналу налагодження %1 з поточного каталогу даних. Це може зайняти кілька секунд для файлів великого розміру. Decrease font size - Decrease font size + Зменшити розмір шрифту Increase font size - Increase font size + Збільшити розмір шрифту Permissions - Permissions + Дозволи Services - Services + Сервіси Connection Time - Connection Time + Час з'єднання Last Send - Last Send + Востаннє відправлено Last Receive - Last Receive + Востаннє отримано Ping Time - Ping Time + Затримка The duration of a currently outstanding ping. - The duration of a currently outstanding ping. + Тривалість поточної затримки. Ping Wait - Ping Wait + Поточна Затримка Min Ping - Min Ping + Мін Пінг Time Offset - Time Offset + Різниця часу Last block time - Last block time + Час останнього блоку &Open - &Open + &Відкрити &Console - &Console + &Консоль &Network Traffic - &Network Traffic + &Мережевий трафік Totals - Totals + Всього In: - In: + Вхідних: Out: - Out: + Вихідних: Debug log file - Debug log file + Файл звіту зневадження Clear console - Clear console + Очистити консоль 1 &hour - 1 &hour + 1 &годину 1 &day - 1 &day + 1 &день 1 &week - 1 &week + 1 &тиждень 1 &year - 1 &year + 1 &рік &Disconnect - &Disconnect + &Від'єднати Ban for - Ban for + Заблокувати на &Unban - &Unban + &Розблокувати Welcome to the %1 RPC console. - Welcome to the %1 RPC console. + Ласкаво просимо до консолі RPC %1. Use up and down arrows to navigate history, and %1 to clear screen. - Use up and down arrows to navigate history, and %1 to clear screen. + Використовуйте стрілки вгору та вниз для навігації історії та %1 для очищення екрана. Type %1 for an overview of available commands. - Type %1 for an overview of available commands. + Введіть %1 для перегляду доступних команд. For more information on using this console type %1. - For more information on using this console type %1. + Щоб отримати додаткові відомості про використання консолі введіть %1. WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. - WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. + ПОПЕРЕДЖЕННЯ. Шахраї активно вказували вводити тут команди і отримували доступ до вмісту гаманця користувачів. Не використовуйте цю консоль без повного розуміння наслідків виконання команд. Network activity disabled - Network activity disabled + Мережева активність вимкнена. Executing command without any wallet - Executing command without any wallet + Виконання команди без гаманця Executing command using "%1" wallet - Executing command using "%1" wallet + Виконання команди з гаманцем "%1" (node id: %1) - (node id: %1) + (ІД вузла: %1) via %1 - via %1 + через %1 never - never + ніколи Inbound - Inbound + Вхідний Outbound - Outbound + Вихідний Unknown - Unknown + Невідома ReceiveCoinsDialog &Amount: - &Amount: + &Кількість: &Label: - &Label: + &Мітка: &Message: - &Message: + &Повідомлення: An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network. - An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network. + Необов'язкове повідомлення на додаток до запиту платежу, котре буде показане під час відкриття запиту. Примітка: Це повідомлення не буде відправлено з платежем через мережу Bitcoin. An optional label to associate with the new receiving address. - An optional label to associate with the new receiving address. + Необов'язкове поле для мітки нової адреси отримувача. Use this form to request payments. All fields are <b>optional</b>. - Use this form to request payments. All fields are <b>optional</b>. + Використовуйте цю форму, щоб отримати платежі. Всі поля є <b>необов'язковими</b>. An optional amount to request. Leave this empty or zero to not request a specific amount. - An optional amount to request. Leave this empty or zero to not request a specific amount. + Необов'язкове поле для суми запиту. Залиште це поле пустим або впишіть нуль, щоб не надсилати у запиті конкретної суми. An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request. - An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request. + Необов'язкове поле для мітки нової адреси отримувача (використовується для ідентифікації рахунка). Він також додається до запиту на оплату. An optional message that is attached to the payment request and may be displayed to the sender. - An optional message that is attached to the payment request and may be displayed to the sender. + Необов’язкове повідомлення, яке додається до запиту на оплату і може відображати відправника. &Create new receiving address - &Create new receiving address + &Створити нову адресу Clear all fields of the form. - Clear all fields of the form. + Очистити всі поля в формі Clear - Clear + Очистити Native segwit addresses (aka Bech32 or BIP-173) reduce your transaction fees later on and offer better protection against typos, but old wallets don't support them. When unchecked, an address compatible with older wallets will be created instead. - Native segwit addresses (aka Bech32 or BIP-173) reduce your transaction fees later on and offer better protection against typos, but old wallets don't support them. When unchecked, an address compatible with older wallets will be created instead. + Чисті segwit адреси (відомі як Bech32 або BIP-173) зменшують ваші майбутні транзакційні комісії знижує комісію та пропонують кращий захист від помилок, але старі гаманці їх не підтримують. Якщо позначка знята, буде створено адресу, сумісну зі старими гаманцями. Generate native segwit (Bech32) address - Generate native segwit (Bech32) address + Згенерувати чисту segwit (Bech32) адресу Requested payments history - Requested payments history + Історія запитів платежу Show the selected request (does the same as double clicking an entry) - Show the selected request (does the same as double clicking an entry) + Показати вибраний запит (робить те ж саме, що й подвійний клік по запису) Show - Show + Показати Remove the selected entries from the list - Remove the selected entries from the list + Вилучити вибрані записи зі списку Remove - Remove + Вилучити Copy URI - Copy URI + Скопіювати адресу Copy label - Copy label + Скопіювати мітку Copy message - Copy message + Скопіювати повідомлення Copy amount - Copy amount + Копіювати суму Could not unlock wallet. - Could not unlock wallet. + Неможливо розблокувати гаманець. Could not generate new %1 address - Could not generate new %1 address + Неможливо згенерувати нову %1 адресу ReceiveRequestDialog Request payment to ... - Request payment to ... + Запит на оплату до ... Address: - Address: + Адреса: Amount: - Amount: + Сума: Label: - Label: + Мітка: Message: - Message: + Повідомлення: Wallet: - Wallet: + Гаманець: Copy &URI - Copy &URI + &Скопіювати URI Copy &Address - Copy &Address + Скопіювати &адресу &Save Image... - &Save Image... + &Зберегти зображення... Request payment to %1 - Request payment to %1 + Запит платежу на %1 Payment information - Payment information + Інформація про платіж RecentRequestsTableModel Date - Date + Дата Label - Label + Мітка Message - Message + Повідомлення (no label) - (no label) + (без мітки) (no message) - (no message) + (без повідомлення) (no amount requested) - (no amount requested) + (без суми) Requested - Requested + Запрошено SendCoinsDialog Send Coins - Send Coins + Відправити Coin Control Features - Coin Control Features + Керування монетами Inputs... - Inputs... + Входи... automatically selected - automatically selected + вибираються автоматично Insufficient funds! - Insufficient funds! + Недостатньо коштів! Quantity: - Quantity: + Кількість: Bytes: - Bytes: + Байтів: Amount: - Amount: + Сума: Fee: - Fee: + Комісія: After Fee: - After Fee: + Після комісії: Change: - Change: + Решта: If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address. - If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address. + Якщо це поле активовано, але адреса для решти відсутня або некоректна, то решта буде відправлена на новостворену адресу. Custom change address - Custom change address + Вказати адресу для решти Transaction Fee: - Transaction Fee: + Комісія за передачу: Choose... - Choose... + Виберіть... Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain. - Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain. + Використання зарезервованої комісії може призвести до виконання транзакції, підтвердження котрої займе години, або дні, або ніколи не буде підтверджено. Обміркуйте можливість вибору комісії вручну, або зачекайте завершення валідації повного ланцюгу. Warning: Fee estimation is currently not possible. - Warning: Fee estimation is currently not possible. + Попередження: оцінка розміру комісії наразі неможлива. Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size. Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis per kB" for a transaction size of 500 bytes (half of 1 kB) would ultimately yield a fee of only 50 satoshis. - Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size. + Вкажіть комісію за кБ (1000 байт) віртуального розміру транзакції. -Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis per kB" for a transaction size of 500 bytes (half of 1 kB) would ultimately yield a fee of only 50 satoshis. +Примітка: Оскільки комісія нараховується за байт, комісія "100 сатоші за кБ" для транзакції розміром 500 байт (половина 1 кБ) в результаті дасть комісію тільки 50 сатоші. per kilobyte - per kilobyte + за кілобайт Hide - Hide + Приховати Recommended: - Recommended: + Рекомендовано: Custom: - Custom: + Змінено: (Smart fee not initialized yet. This usually takes a few blocks...) - (Smart fee not initialized yet. This usually takes a few blocks...) + (Розумну оплату ще не ініціалізовано. Це, зазвичай, триває кілька блоків...) Send to multiple recipients at once - Send to multiple recipients at once + Відправити на декілька адрес Add &Recipient - Add &Recipient + Дод&ати одержувача Clear all fields of the form. - Clear all fields of the form. + Очистити всі поля в формі Dust: - Dust: + Пил: Hide transaction fee settings - Hide transaction fee settings + Приховати комісію за транзакцію When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process. - When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process. + Якщо обсяг транзакцій менше, ніж простір у блоках, майнери, а також вузли ретрансляції можуть стягувати мінімальну плату. Сплата лише цієї мінімальної суми може призвести до ніколи не підтверджуваної транзакції, коли буде більше попиту на біткойн-транзакції, ніж мережа може обробити. A too low fee might result in a never confirming transaction (read the tooltip) - A too low fee might result in a never confirming transaction (read the tooltip) + Занадто низька плата може призвести до ніколи не підтверджуваної транзакції (див. підказку) Confirmation time target: - Confirmation time target: + Час підтвердження: Enable Replace-By-Fee - Enable Replace-By-Fee + Увімкнути Заміна-Через-Комісію With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk. @@ -2475,222 +2475,222 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Clear &All - Clear &All + Очистити &все Balance: - Balance: + Баланс: Confirm the send action - Confirm the send action + Підтвердити відправлення S&end - S&end + &Відправити Copy quantity - Copy quantity + Копіювати кількість Copy amount - Copy amount + Копіювати суму Copy fee - Copy fee + Комісія Copy after fee - Copy after fee + Скопіювати після комісії Copy bytes - Copy bytes + Копіювати байти Copy dust - Copy dust + Скопіювати інше Copy change - Copy change + Скопіювати решту %1 (%2 blocks) - %1 (%2 blocks) + %1 (%2 блоків) Cr&eate Unsigned - Cr&eate Unsigned + С&творити непідписану Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. - Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + Створює частково підписану транзакцію Bitcoin (PSBT) для використання, наприклад, офлайн-гаманець %1 або гаманця, сумісного з PSBT. from wallet '%1' - from wallet '%1' + з гаманця '%1' %1 to '%2' - %1 to '%2' + %1 до '%2' %1 to %2 - %1 to %2 + %1 до %2 Do you want to draft this transaction? - Do you want to draft this transaction? + Ви хочете скласти цю транзакцію? Are you sure you want to send? - Are you sure you want to send? + Ви впевнені, що хочете відправити? Create Unsigned - Create Unsigned + Створити без підпису Save Transaction Data - Save Transaction Data + Зберегти дані транзакції Partially Signed Transaction (Binary) (*.psbt) - Partially Signed Transaction (Binary) (*.psbt) + Частково підписана транзакція (Binary) (* .psbt) PSBT saved - PSBT saved + PSBT збережено or - or + або You can increase the fee later (signals Replace-By-Fee, BIP-125). - You can increase the fee later (signals Replace-By-Fee, BIP-125). + Ви можете збільшити комісію пізніше (сигналізує Заміна-Через-Комісію, BIP-125). Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. - Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + Перегляньте свою пропозицію щодо транзакції. Це призведе до частково Підписаної Транзакції Біткойна (PSBT), яку ви можете зберегти або скопіювати, а потім підписати, наприклад, офлайн-гаманцем %1 або апаратним гаманецем, сумісний з PSBT. Please, review your transaction. - Please, review your transaction. + Будь-ласка, перевірте вашу транзакцію. Transaction fee - Transaction fee + Комісія Not signalling Replace-By-Fee, BIP-125. - Not signalling Replace-By-Fee, BIP-125. + Не сигналізує Заміна-Через-Комісію, BIP-125. Total Amount - Total Amount + Всього To review recipient list click "Show Details..." - To review recipient list click "Show Details..." + Щоб переглянути список одержувачів, натисніть "Показати деталі ..." Confirm send coins - Confirm send coins + Підтвердьте надсилання монет Confirm transaction proposal - Confirm transaction proposal + Підтвердити запропоновану комісію Send - Send + Відправити Watch-only balance: - Watch-only balance: + Баланс тільки спостереження: The recipient address is not valid. Please recheck. - The recipient address is not valid. Please recheck. + Неприпустима адреса отримувача. Будь ласка, перевірте. The amount to pay must be larger than 0. - The amount to pay must be larger than 0. + Сума платні повинна бути більше 0. The amount exceeds your balance. - The amount exceeds your balance. + Сума перевищує ваш баланс. The total exceeds your balance when the %1 transaction fee is included. - The total exceeds your balance when the %1 transaction fee is included. + Після додавання комісії %1, сума перевищить ваш баланс. Duplicate address found: addresses should only be used once each. - Duplicate address found: addresses should only be used once each. + Знайдено адресу, що дублюється: кожна адреса має бути вказана тільки один раз. Transaction creation failed! - Transaction creation failed! + Транзакцію не виконано! A fee higher than %1 is considered an absurdly high fee. - A fee higher than %1 is considered an absurdly high fee. + Комісія більша, ніж %1, вважається абсурдно високою. Payment request expired. - Payment request expired. + Запит платежу прострочено. Estimated to begin confirmation within %n block(s). - Estimated to begin confirmation within %n block.Estimated to begin confirmation within %n blocks.Estimated to begin confirmation within %n blocks.Estimated to begin confirmation within %n blocks. + Очікуваний початок підтвердження через %n блок.Очікуваний початок підтвердження протягом %n блоків.Очікуваний початок підтвердження протягом %n блоків.Очікуваний початок підтвердження протягом %n блоків. Warning: Invalid Bitcoin address - Warning: Invalid Bitcoin address + Увага: Неприпустима Біткойн-адреса. Warning: Unknown change address - Warning: Unknown change address + Увага: Невідома адреса для решти Confirm custom change address - Confirm custom change address + Підтвердити індивідуальну адресу для решти The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure? - The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure? + Адреса, яку ви обрали для решти, не є частиною цього гаманця. Будь-які або всі кошти з вашого гаманця можуть бути надіслані на цю адресу. Ви впевнені? (no label) - (no label) + (без мітки) SendCoinsEntry A&mount: - A&mount: + &Кількість: Pay &To: - Pay &To: + &Отримувач: &Label: - &Label: + &Мітка: Choose previously used address - Choose previously used address + Обрати ранiш використовувану адресу The Bitcoin address to send the payment to - The Bitcoin address to send the payment to + Адреса Bitcoin для відправлення платежу Alt+A @@ -2698,7 +2698,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Paste address from clipboard - Paste address from clipboard + Вставити адресу Alt+P @@ -2706,85 +2706,85 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Remove this entry - Remove this entry + Видалити цей запис The amount to send in the selected unit - The amount to send in the selected unit + Сума у вибраній одиниці, яку потрібно надіслати The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. - The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. + Комісію буде знято зі вказаної суми. До отримувача надійде менше біткоінів, ніж було вказано в полі кількості. Якщо ж отримувачів декілька - комісію буде розподілено між ними. S&ubtract fee from amount - S&ubtract fee from amount + В&ідняти комісію від суми Use available balance - Use available balance + Використати наявний баланс Message: - Message: + Повідомлення: This is an unauthenticated payment request. - This is an unauthenticated payment request. + Цей запит платежу не є автентифікованим. This is an authenticated payment request. - This is an authenticated payment request. + Цей запит платежу є автентифікованим. Enter a label for this address to add it to the list of used addresses - Enter a label for this address to add it to the list of used addresses + Введіть мітку для цієї адреси для додавання її в список використаних адрес A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. - A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. + Повідомлення, що було додане до bitcoin:URI та буде збережено разом з транзакцією для довідки. Примітка: Це повідомлення не буде відправлено в мережу Bitcoin. Pay To: - Pay To: + Отримувач: Memo: - Memo: + Нотатка: ShutdownWindow %1 is shutting down... - %1 is shutting down... + %1 припиняє роботу... Do not shut down the computer until this window disappears. - Do not shut down the computer until this window disappears. + Не вимикайте комп’ютер до зникнення цього вікна. SignVerifyMessageDialog Signatures - Sign / Verify a Message - Signatures - Sign / Verify a Message + Підписи - Підпис / Перевірка повідомлення &Sign Message - &Sign Message + &Підписати повідомлення You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. - You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. + Ви можете підписувати повідомлення/угоди своїми адресами, щоб довести можливість отримання біткоінів, що будуть надіслані на них. Остерігайтеся підписувати будь-що нечітке чи неочікуване, так як за допомогою фішинг-атаки вас можуть спробувати ввести в оману для отримання вашого підпису під чужими словами. Підписуйте лише чіткі твердження, з якими ви повністю згодні. The Bitcoin address to sign the message with - The Bitcoin address to sign the message with + Адреса Bitcoin для підпису цього повідомлення Choose previously used address - Choose previously used address + Обрати ранiш використовувану адресу Alt+A @@ -2792,7 +2792,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Paste address from clipboard - Paste address from clipboard + Вставити адресу Alt+P @@ -2800,604 +2800,604 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Enter the message you want to sign here - Enter the message you want to sign here + Введіть повідомлення, яке ви хочете підписати тут Signature - Signature + Підпис Copy the current signature to the system clipboard - Copy the current signature to the system clipboard + Копіювати поточну сигнатуру до системного буферу обміну Sign the message to prove you own this Bitcoin address - Sign the message to prove you own this Bitcoin address + Підпишіть повідомлення щоб довести, що ви є власником цієї адреси Sign &Message - Sign &Message + &Підписати повідомлення Reset all sign message fields - Reset all sign message fields + Скинути всі поля підпису повідомлення Clear &All - Clear &All + Очистити &все &Verify Message - &Verify Message + П&еревірити повідомлення Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! - Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! + Введіть нижче адресу отримувача, повідомлення (впевніться, що ви точно скопіювали символи завершення рядка, табуляцію, пробіли тощо) та підпис для перевірки повідомлення. Впевніться, що в підпис не було додано зайвих символів: це допоможе уникнути атак типу «людина посередині». Зауважте, що це лише засвідчує можливість отримання транзакцій підписувачем, але не в стані підтвердити джерело жодної транзакції! The Bitcoin address the message was signed with - The Bitcoin address the message was signed with + Адреса Bitcoin, якою було підписано це повідомлення The signed message to verify - The signed message to verify + Підписане повідомлення для підтвердження The signature given when the message was signed - The signature given when the message was signed + Підпис наданий при підписанні цього повідомлення Verify the message to ensure it was signed with the specified Bitcoin address - Verify the message to ensure it was signed with the specified Bitcoin address + Перевірте повідомлення для впевненості, що воно підписано вказаною Bitcoin-адресою Verify &Message - Verify &Message + Пере&вірити повідомлення Reset all verify message fields - Reset all verify message fields + Скинути всі поля перевірки повідомлення Click "Sign Message" to generate signature - Click "Sign Message" to generate signature + Натисніть кнопку «Підписати повідомлення», для отримання підпису The entered address is invalid. - The entered address is invalid. + Введена адреса не співпадає. Please check the address and try again. - Please check the address and try again. + Будь ласка, перевірте адресу та спробуйте ще. The entered address does not refer to a key. - The entered address does not refer to a key. + Введена адреса не відноситься до ключа. Wallet unlock was cancelled. - Wallet unlock was cancelled. + Розблокування гаманця було скасоване. No error - No error + Без помилок Private key for the entered address is not available. - Private key for the entered address is not available. + Приватний ключ для введеної адреси недоступний. Message signing failed. - Message signing failed. + Не вдалося підписати повідомлення. Message signed. - Message signed. + Повідомлення підписано. The signature could not be decoded. - The signature could not be decoded. + Підпис не можливо декодувати. Please check the signature and try again. - Please check the signature and try again. + Будь ласка, перевірте підпис та спробуйте ще. The signature did not match the message digest. - The signature did not match the message digest. + Підпис не збігається з хешем повідомлення. Message verification failed. - Message verification failed. + Не вдалося перевірити повідомлення. Message verified. - Message verified. + Повідомлення перевірено. TrafficGraphWidget KB/s - KB/s + КБ/с TransactionDesc Open for %n more block(s) - Open for %n more blockOpen for %n more blocksOpen for %n more blocksOpen for %n more blocks + Відкрито на %n блокВідкрито на %n блоківВідкрито на %n блоківВідкрито на %n блоків Open until %1 - Open until %1 + Відкрито до %1 conflicted with a transaction with %1 confirmations - conflicted with a transaction with %1 confirmations + конфліктує з транзакцією із %1 підтвердженнями 0/unconfirmed, %1 - 0/unconfirmed, %1 + 0/не підтверджено, %1 in memory pool - in memory pool + в пулі пам'яті not in memory pool - not in memory pool + не в пулі пам'яті abandoned - abandoned + відкинуто %1/unconfirmed - %1/unconfirmed + %1/не підтверджено %1 confirmations - %1 confirmations + %1 підтверджень Status - Status + Статут Date - Date + Дата Source - Source + Джерело Generated - Generated + Згенеровано From - From + Від unknown - unknown + невідомо To - To + Отримувач own address - own address + Власна адреса watch-only - watch-only + тільки спостереження label - label + мітка Credit - Credit + Кредит matures in %n more block(s) - matures in %n more blockmatures in %n more blocksmatures in %n more blocksmatures in %n more blocks + дозріє через %n блокдозріє через %n блоківдозріє через %n блоківдозріє через %n блоків not accepted - not accepted + не прийнято Debit - Debit + Дебет Total debit - Total debit + Загальний дебет Total credit - Total credit + Загальний кредит Transaction fee - Transaction fee + Комісія за транзакцію Net amount - Net amount + Загальна сума Message - Message + Повідомлення Comment - Comment + Коментар Transaction ID - Transaction ID + ID транзакції Transaction total size - Transaction total size + Розмір транзакції Transaction virtual size - Transaction virtual size + Віртуальний розмір транзакції Output index - Output index + Вихідний індекс (Certificate was not verified) - (Certificate was not verified) + (Сертифікат не підтверджено) Merchant - Merchant + Продавець Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. - Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. + Згенеровані монети стануть доступні для використання після %1 підтверджень. Коли ви згенерували цей блок, його було відправлено в мережу для внесення до ланцюжку блоків. Якщо блок не буде додано до ланцюжку блоків, його статус зміниться на «не підтверджено», і згенеровані монети неможливо буде витратити. Таке часом трапляється, якщо хтось згенерував інший блок на декілька секунд раніше. Debug information - Debug information + Налагоджувальна інформація Transaction - Transaction + Транзакція Inputs - Inputs + Входи Amount - Amount + Кількість true - true + вірний false - false + хибний TransactionDescDialog This pane shows a detailed description of the transaction - This pane shows a detailed description of the transaction + Даний діалог показує детальну статистику по вибраній транзакції Details for %1 - Details for %1 + Інформація по %1 TransactionTableModel Date - Date + Дата Type - Type + Тип Label - Label + Мітка Open for %n more block(s) - Open for %n more blockOpen for %n more blocksOpen for %n more blocksOpen for %n more blocks + Відкрито на %n блокВідкрито на %n блоківВідкрито на %n блоківВідкрито на %n блоків Open until %1 - Open until %1 + Відкрито до %1 Unconfirmed - Unconfirmed + Не підтверджено Abandoned - Abandoned + Відкинуті Confirming (%1 of %2 recommended confirmations) - Confirming (%1 of %2 recommended confirmations) + Підтверджується (%1 з %2 рекомендованих підтверджень) Confirmed (%1 confirmations) - Confirmed (%1 confirmations) + Підтверджено (%1 підтверджень) Conflicted - Conflicted + Суперечить Immature (%1 confirmations, will be available after %2) - Immature (%1 confirmations, will be available after %2) + Повністтю не підтверджено (%1 підтверджень, будуть доступні після %2) Generated but not accepted - Generated but not accepted + Згенеровано (не підтверджено) Received with - Received with + Отримано з Received from - Received from + Отримано від Sent to - Sent to + Відправлені на Payment to yourself - Payment to yourself + Відправлено собі Mined - Mined + Добуто watch-only - watch-only + тільки спостереження (n/a) - (n/a) + (н/д) (no label) - (no label) + (без мітки) Transaction status. Hover over this field to show number of confirmations. - Transaction status. Hover over this field to show number of confirmations. + Статус транзакції. Наведіть вказівник на це поле, щоб показати кількість підтверджень. Date and time that the transaction was received. - Date and time that the transaction was received. + Дата і час, коли транзакцію було отримано. Type of transaction. - Type of transaction. + Тип транзакції. Whether or not a watch-only address is involved in this transaction. - Whether or not a watch-only address is involved in this transaction. + Чи було залучено адресу для спостереження в цій транзакції. User-defined intent/purpose of the transaction. - User-defined intent/purpose of the transaction. + Визначений користувачем намір чи мета транзакції. Amount removed from or added to balance. - Amount removed from or added to balance. + Сума, додана чи знята з балансу. TransactionView All - All + Всі Today - Today + Сьогодні This week - This week + На цьому тижні This month - This month + Цього місяця Last month - Last month + Минулого місяця This year - This year + Цього року Range... - Range... + Діапазон від: Received with - Received with + Отримано з Sent to - Sent to + Відправлені на To yourself - To yourself + Відправлені собі Mined - Mined + Добуті Other - Other + Інше Enter address, transaction id, or label to search - Enter address, transaction id, or label to search + Введіть адресу, ідентифікатор транзакції або мітку для пошуку Min amount - Min amount + Мінімальна сума Abandon transaction - Abandon transaction + Відмовитися від транзакції Increase transaction fee - Increase transaction fee + Збільшить плату за транзакцію Copy address - Copy address + Скопіювати адресу Copy label - Copy label + Скопіювати мітку Copy amount - Copy amount + Скопіювати суму Copy transaction ID - Copy transaction ID + Скопіювати ID транзакції Copy raw transaction - Copy raw transaction + Скопіювати RAW транзакцію Copy full transaction details - Copy full transaction details + Скопіювати повні деталі транзакції Edit label - Edit label + Редагувати мітку Show transaction details - Show transaction details + Показати деталі транзакції Export Transaction History - Export Transaction History + Експортувати історію транзакцій Comma separated file (*.csv) - Comma separated file (*.csv) + Значення, розділені комою (*.csv) Confirmed - Confirmed + Підтверджено Watch-only - Watch-only + Тільки спостереження: Date - Date + Дата Type - Type + Тип Label - Label + Метка Address - Address + Адрес ID - ID + Ідентифікатор Exporting Failed - Exporting Failed + Помилка експорту There was an error trying to save the transaction history to %1. - There was an error trying to save the transaction history to %1. + Виникла помилка при спробі зберегти історію транзакцій до %1. Exporting Successful - Exporting Successful + Експортовано успішно The transaction history was successfully saved to %1. - The transaction history was successfully saved to %1. + Історію транзакцій було успішно збережено до %1. Range: - Range: + Діапазон: to - to + до UnitDisplayStatusBarControl Unit to show amounts in. Click to select another unit. - Unit to show amounts in. Click to select another unit. + Одиниця виміру монет. Натисніть для вибору іншої. WalletController Close wallet - Close wallet + закрити Гаманець Are you sure you wish to close the wallet <i>%1</i>? - Are you sure you wish to close the wallet <i>%1</i>? + Ви впевнені, що хочете закрити гаманець <i>%1</i>? Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. - Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. + Тримання гаманця закритим занадто довго може призвести до необхідності повторної синхронізації всього блокчейна, якщо скорочення (прунінг) ввімкнено. Close all wallets - Close all wallets + Закрити всі гаманці Are you sure you wish to close all wallets? - Are you sure you wish to close all wallets? + Ви впевнені, що бажаєте закрити всі гаманці? @@ -3406,692 +3406,690 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p No wallet has been loaded. Go to File > Open Wallet to load a wallet. - OR - - No wallet has been loaded. -Go to File > Open Wallet to load a wallet. -- OR - + Жоден гаманець не завантажений. Перейдіть у меню Файл > Відкрити гаманець, щоб завантажити гаманець. - АБО - Create a new wallet - Create a new wallet + Створити новий гаманець WalletModel Send Coins - Send Coins + Відправити Монети Fee bump error - Fee bump error + Помилка підвищення комісії Increasing transaction fee failed - Increasing transaction fee failed + Підвищення комісії за транзакцію не виконано Do you want to increase the fee? - Do you want to increase the fee? + Ви бажаєте збільшити комісію? Do you want to draft a transaction with fee increase? - Do you want to draft a transaction with fee increase? + Ви бажаєте підготувати транзакцію з підвищенням комісії? Current fee: - Current fee: + Поточна комісія: Increase: - Increase: + Збільшити: New fee: - New fee: + Нова комісія: Confirm fee bump - Confirm fee bump + Підтвердити підвищення комісії Can't draft transaction. - Can't draft transaction. + Неможливо підготувати транзакцію. PSBT copied - PSBT copied + PSBT скопійовано Can't sign transaction. - Can't sign transaction. + Не можливо підписати транзакцію. Could not commit transaction - Could not commit transaction + Не вдалось виконати транзакцію default wallet - default wallet + гаманець за замовчуванням WalletView &Export - &Export + &Експортувати Export the data in the current tab to a file - Export the data in the current tab to a file + Експортувати дані з поточної вкладки в файл Error - Error + Помилка Unable to decode PSBT from clipboard (invalid base64) - Unable to decode PSBT from clipboard (invalid base64) + Не вдається декодувати PSBT з буфера обміну (недійсний base64) Load Transaction Data - Load Transaction Data + Завантажити дані транзакції Partially Signed Transaction (*.psbt) - Partially Signed Transaction (*.psbt) + Частково підписана транзакція (* .psbt) PSBT file must be smaller than 100 MiB - PSBT file must be smaller than 100 MiB + Файл PSBT повинен бути менше 100 МіБ Unable to decode PSBT - Unable to decode PSBT + Не вдається декодувати PSBT Backup Wallet - Backup Wallet + Зробити резервне копіювання гаманця Wallet Data (*.dat) - Wallet Data (*.dat) + Данi гаманця (*.dat) Backup Failed - Backup Failed + Помилка резервного копіювання There was an error trying to save the wallet data to %1. - There was an error trying to save the wallet data to %1. + Виникла помилка при спробі зберегти дані гаманця до %1. Backup Successful - Backup Successful + Резервну копію створено успішно The wallet data was successfully saved to %1. - The wallet data was successfully saved to %1. + Дані гаманця успішно збережено в %1. Cancel - Cancel + Скасувати bitcoin-core Distributed under the MIT software license, see the accompanying file %s or %s - Distributed under the MIT software license, see the accompanying file %s or %s + Розповсюджується за ліцензією на програмне забезпечення MIT, дивіться супровідний файл %s або %s Prune configured below the minimum of %d MiB. Please use a higher number. - Prune configured below the minimum of %d MiB. Please use a higher number. + Встановлений розмір ланцюжка блоків є замалим (меншим за %d МіБ). Будь ласка, виберіть більше число. Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) - Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) + Операція відсікання: остання синхронізація вмісту гаманцю не обмежується діями над скороченими данними. Вам необхідно зробити переіндексацію -reindex (заново завантажити веcь ланцюжок блоків в разі появи скороченого ланцюга) Pruning blockstore... - Pruning blockstore... + Скорочення кількості блоків... Unable to start HTTP server. See debug log for details. - Unable to start HTTP server. See debug log for details. + Неможливо запустити HTTP-сервер. Детальніший опис наведено в журналі зневадження. The %s developers - The %s developers + Розробники %s Cannot obtain a lock on data directory %s. %s is probably already running. - Cannot obtain a lock on data directory %s. %s is probably already running. + Неможливо блокувати каталог даних %s. %s, ймовірно, вже працює. Cannot provide specific connections and have addrman find outgoing connections at the same. - Cannot provide specific connections and have addrman find outgoing connections at the same. + Неможливо встановити визначені з'єднання і одночасно використовувати addrman для встановлення вихідних з'єднань. Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. - Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. + Помилка читання %s! Всі ключі зчитано правильно, але записи в адресній книзі, або дані транзакцій можуть бути відсутніми чи невірними. More than one onion bind address is provided. Using %s for the automatically created Tor onion service. - More than one onion bind address is provided. Using %s for the automatically created Tor onion service. + Надано більше однієї адреси прив'язки служби Tor. Використання %s для автоматично створеної служби Tor. Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. - Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. + Перевірте правильність дати та часу комп'ютера. Якщо ваш годинник налаштовано невірно, %s не буде працювати належним чином. Please contribute if you find %s useful. Visit %s for further information about the software. - Please contribute if you find %s useful. Visit %s for further information about the software. + Будь ласка, зробіть внесок, якщо ви знаходите %s корисним. Відвідайте %s для отримання додаткової інформації про програмне забезпечення. SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s - SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s + SQLiteDatabase: Не вдалося підготувати оператор для отримання версії схеми гаманця: %s SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s - SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + SQLiteDatabase: Не вдалося підготувати оператор для отримання ідентифікатора програми: %s SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported - SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported + SQLiteDatabase: Невідома версія схеми гаманця %d. Підтримується лише версія %d The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct - The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct + Схоже, що база даних блоків містить блок з майбутнього. Це може статися із-за некоректно встановленої дати та/або часу. Перебудовуйте базу даних блоків лише тоді, коли ви переконані, що встановлено правильну дату і час This is a pre-release test build - use at your own risk - do not use for mining or merchant applications - This is a pre-release test build - use at your own risk - do not use for mining or merchant applications + Це перед-релізна тестова збірка - використовуйте на свій власний ризик - не використовуйте для майнінгу або в торговельних додатках This is the transaction fee you may discard if change is smaller than dust at this level - This is the transaction fee you may discard if change is smaller than dust at this level + Це комісія за транзакцію, яку ви можете відкинути, якщо решта менша, ніж пил на цьому рівні Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. - Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. + Неможливо відтворити блоки. Вам потрібно буде перебудувати базу даних, використовуючи -reindex-chainstate. Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain - Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain + Неможливо повернути базу даних в стан до розвилки. Вам потрібно буде перезавантажити ланцюжок блоків Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. - Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. + Увага: Мережа, здається, не повністю погоджується! Деякі добувачі напевно зазнають проблем. Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. - Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. + Попередження: неможливо досягти консенсусу з підключеними вузлами! Вам, або іншим вузлам необхідно оновити програмне забезпечення. -maxmempool must be at least %d MB - -maxmempool must be at least %d MB + -maxmempool має бути не менше %d МБ Cannot resolve -%s address: '%s' - Cannot resolve -%s address: '%s' + Неможливо перетворити -%s адресу: '%s' Change index out of range - Change index out of range + Індекс решти за межами діапазону Config setting for %s only applied on %s network when in [%s] section. - Config setting for %s only applied on %s network when in [%s] section. + Налаштування конфігурації %s застосовується лише для мережі %s у розділі [%s]. Copyright (C) %i-%i - Copyright (C) %i-%i + Всі права збережено. %i-%i Corrupted block database detected - Corrupted block database detected + Виявлено пошкоджений блок бази даних Could not find asmap file %s - Could not find asmap file %s + Неможливо знайти asmap файл %s Could not parse asmap file %s - Could not parse asmap file %s + Неможливо розібрати asmap файл %s Do you want to rebuild the block database now? - Do you want to rebuild the block database now? + Ви бажаєте перебудувати базу даних блоків зараз? Error initializing block database - Error initializing block database + Помилка ініціалізації бази даних блоків Error initializing wallet database environment %s! - Error initializing wallet database environment %s! + Помилка ініціалізації середовища бази даних гаманця %s! Error loading %s - Error loading %s + Помилка завантаження %s Error loading %s: Private keys can only be disabled during creation - Error loading %s: Private keys can only be disabled during creation + Помилка завантаження %s: Приватні ключі можуть бути тільки вимкнені при створенні Error loading %s: Wallet corrupted - Error loading %s: Wallet corrupted + Помилка завантаження %s: Гаманець пошкоджено Error loading %s: Wallet requires newer version of %s - Error loading %s: Wallet requires newer version of %s + Помилка завантаження %s: Гаманець потребує новішої версії %s Error loading block database - Error loading block database + Помилка завантаження бази даних блоків Error opening block database - Error opening block database + Помилка відкриття блоку бази даних Failed to listen on any port. Use -listen=0 if you want this. - Failed to listen on any port. Use -listen=0 if you want this. + Не вдалося слухати на жодному порту. Використовуйте -listen=0, якщо ви хочете цього. Failed to rescan the wallet during initialization - Failed to rescan the wallet during initialization + Помилка пересканування гаманця під час ініціалізації Failed to verify database - Failed to verify database + Не вдалося перевірити базу даних Ignoring duplicate -wallet %s. - Ignoring duplicate -wallet %s. + Ігнорування дубліката -wallet %s. Importing... - Importing... + Імпортування... Incorrect or no genesis block found. Wrong datadir for network? - Incorrect or no genesis block found. Wrong datadir for network? + Початковий блок некоректний/відсутній. Чи правильно вказано каталог даних для обраної мережі? Initialization sanity check failed. %s is shutting down. - Initialization sanity check failed. %s is shutting down. + Невдала перевірка правильності ініціалізації. %s закривається. Invalid P2P permission: '%s' - Invalid P2P permission: '%s' + Недійсний P2P дозвіл: '%s' Invalid amount for -%s=<amount>: '%s' - Invalid amount for -%s=<amount>: '%s' + Невірна сума -%s=<amount>: '%s' Invalid amount for -discardfee=<amount>: '%s' - Invalid amount for -discardfee=<amount>: '%s' + Невірна сума для -discardfee=<amount>: '%s' Invalid amount for -fallbackfee=<amount>: '%s' - Invalid amount for -fallbackfee=<amount>: '%s' + Невірна сума для -fallbackfee=<amount>: '%s' SQLiteDatabase: Failed to execute statement to verify database: %s - SQLiteDatabase: Failed to execute statement to verify database: %s + SQLiteDatabase: Не вдалося виконати оператор для перевірки бази даних: %s SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s - SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s + QLiteDatabase: Не вдалося отримати версію схеми гаманця: %s SQLiteDatabase: Failed to fetch the application id: %s - SQLiteDatabase: Failed to fetch the application id: %s + SQLiteDatabase: Не вдалося отримати ідентифікатор програми: %s SQLiteDatabase: Failed to prepare statement to verify database: %s - SQLiteDatabase: Failed to prepare statement to verify database: %s + SQLiteDatabase: Не вдалося підготувати оператор для перевірки бази даних: %s SQLiteDatabase: Failed to read database verification error: %s - SQLiteDatabase: Failed to read database verification error: %s + SQLiteDatabase: Не вдалося прочитати помилку перевірки бази даних: %s SQLiteDatabase: Unexpected application id. Expected %u, got %u - SQLiteDatabase: Unexpected application id. Expected %u, got %u + SQLiteDatabase: Несподіваний ідентифікатор програми. Очікується %u, отримано %u Specified blocks directory "%s" does not exist. - Specified blocks directory "%s" does not exist. + Зазначений каталог блоків "%s" не існує. Unknown address type '%s' - Unknown address type '%s' + Невідомий тип адреси '%s' Unknown change type '%s' - Unknown change type '%s' + Невідомий тип решти '%s' Upgrading txindex database - Upgrading txindex database + Оновлення бази даних txindex Loading P2P addresses... - Loading P2P addresses... + Завантаження P2P адрес... Loading banlist... - Loading banlist... + Завантаження бан-списку... Not enough file descriptors available. - Not enough file descriptors available. + Бракує доступних дескрипторів файлів. Prune cannot be configured with a negative value. - Prune cannot be configured with a negative value. + Розмір скороченого ланцюжка блоків не може бути від'ємним. Prune mode is incompatible with -txindex. - Prune mode is incompatible with -txindex. + Використання скороченого ланцюжка блоків несумісне з параметром -txindex. Replaying blocks... - Replaying blocks... + Відтворення блоків... Rewinding blocks... - Rewinding blocks... + Перетворювання блоків... The source code is available from %s. - The source code is available from %s. + Вихідний код доступний з %s. Transaction fee and change calculation failed - Transaction fee and change calculation failed + Не вдалось розрахувати обсяг комісії за транзакцію та решти Unable to bind to %s on this computer. %s is probably already running. - Unable to bind to %s on this computer. %s is probably already running. + Неможливо прив'язати %s на цьому комп'ютері. %s, ймовірно, вже працює. Unable to generate keys - Unable to generate keys + Не вдається створити ключі Unsupported logging category %s=%s. - Unsupported logging category %s=%s. + Непідтримувана категорія ведення журналу %s=%s. Upgrading UTXO database - Upgrading UTXO database + Оновлення бази даних UTXO User Agent comment (%s) contains unsafe characters. - User Agent comment (%s) contains unsafe characters. + Коментар до Клієнта Користувача (%s) містить небезпечні символи. Verifying blocks... - Verifying blocks... + Перевірка блоків... Wallet needed to be rewritten: restart %s to complete - Wallet needed to be rewritten: restart %s to complete + Гаманець вимагав перезапису: перезавантажте %s для завершення Error: Listening for incoming connections failed (listen returned error %s) - Error: Listening for incoming connections failed (listen returned error %s) + Помилка: Не вдалося налаштувати прослуховування вхідних підключень (listen повернув помилку: %s) %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. - %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. + %s пошкоджено. Спробуйте скористатися інструментом гаманця bitcoin-wallet для відновлення або відновлення резервної копії. Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. - Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. + Неможливо оновити спліт-гаманець, що не є HD, без оновлення, щоб підтримати попередньо розділений пул ключів. Будь ласка, використовуйте версію 169900 або не вказану версію. Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) - Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) + Неприпустима сума для -maxtxfee = <amount>: '%s' (плата повинна бути, принаймні %s, щоб запобігти зависанню транзакцій) The transaction amount is too small to send after the fee has been deducted - The transaction amount is too small to send after the fee has been deducted + Залишок від суми транзакції зі сплатою комісії занадто малий This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet - This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet + Ця помилка може статися, якщо цей гаманець не було чисто вимкнено і востаннє завантажений за допомогою збірки з новою версією Berkeley DB. Якщо так, будь ласка, використовуйте програмне забезпечення, яке востаннє завантажувало цей гаманець This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. - This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. + Це максимальна комісія за транзакцію, яку ви сплачуєте (на додаток до звичайної комісії), щоб надавати пріоритет частковому уникненню витрат перед регулярним вибором монет. Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. - Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. + Транзакція потребує наявності адреси для отримання решти, але ми не змогли її згенерувати. Будь ласка, спочатку виконайте регенерацію пулу ключів. You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain - You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain + Вам необхідно перебудувати базу даних з використанням -reindex для завантаження повного ланцюжка блоків. A fatal internal error occurred, see debug.log for details - A fatal internal error occurred, see debug.log for details + Виникла фатальна внутрішня помилка, дивіться подробиці в debug.log Cannot set -peerblockfilters without -blockfilterindex. - Cannot set -peerblockfilters without -blockfilterindex. + Неможливо встановити -peerblockfilters без -blockfilterindex. Disk space is too low! - Disk space is too low! + Місця на диску занадто мало! Error reading from database, shutting down. - Error reading from database, shutting down. + Помилка читання бази даних, припиняю роботу. Error upgrading chainstate database - Error upgrading chainstate database + Помилка оновлення бази даних стану ланцюжка Error: Disk space is low for %s - Error: Disk space is low for %s + Помилка: для %s бракує місця на диску Error: Keypool ran out, please call keypoolrefill first - Error: Keypool ran out, please call keypoolrefill first + Помилка: Пул ключів закінчився, будь-ласка, виконайте спочатку keypoolrefill Fee rate (%s) is lower than the minimum fee rate setting (%s) - Fee rate (%s) is lower than the minimum fee rate setting (%s) + Ставка комісії (%s) нижча за встановлену мінімальну ставку комісії (%s) Invalid -onion address or hostname: '%s' - Invalid -onion address or hostname: '%s' + Невірна адреса або ім'я хоста для -onion: '%s' Invalid -proxy address or hostname: '%s' - Invalid -proxy address or hostname: '%s' + Невірна адреса або ім'я хоста для -proxy: '%s' Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) - Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) + Вказано некоректну суму для параметру -paytxfee: «%s» (повинно бути щонайменше %s) Invalid netmask specified in -whitelist: '%s' - Invalid netmask specified in -whitelist: '%s' + Вказано неправильну маску підмережі для -whitelist: «%s» Need to specify a port with -whitebind: '%s' - Need to specify a port with -whitebind: '%s' + Необхідно вказати порт для -whitebind: «%s» No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. - No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. + Не вказано проксі-сервер. Використовуйте -proxy=<ip> або -proxy=<ip:port>. Prune mode is incompatible with -blockfilterindex. - Prune mode is incompatible with -blockfilterindex. + Використання скороченого ланцюжка блоків несумісне з параметром -blockfilterindex. Reducing -maxconnections from %d to %d, because of system limitations. - Reducing -maxconnections from %d to %d, because of system limitations. + Зменшення значення -maxconnections з %d до %d із-за обмежень системи. Section [%s] is not recognized. - Section [%s] is not recognized. + Розділ [%s] не розпізнано. Signing transaction failed - Signing transaction failed + Підписання транзакції не вдалося Specified -walletdir "%s" does not exist - Specified -walletdir "%s" does not exist + Вказаний каталог гаманця -walletdir "%s" не існує Specified -walletdir "%s" is a relative path - Specified -walletdir "%s" is a relative path + Вказаний каталог гаманця -walletdir "%s" є відносним шляхом Specified -walletdir "%s" is not a directory - Specified -walletdir "%s" is not a directory + Вказаний шлях -walletdir "%s" не є каталогом The specified config file %s does not exist - The specified config file %s does not exist + Зазначений файл конфігурації %s не існує The transaction amount is too small to pay the fee - The transaction amount is too small to pay the fee + Неможливо сплатити комісію із-за малої суми транзакції This is experimental software. - This is experimental software. + Це програмне забезпечення є експериментальним. Transaction amount too small - Transaction amount too small + Сума транзакції занадто мала Transaction too large - Transaction too large + Транзакція занадто велика Unable to bind to %s on this computer (bind returned error %s) - Unable to bind to %s on this computer (bind returned error %s) + Неможливо прив'язатися до %s на цьому комп'ютері (bind повернув помилку: %s) Unable to create the PID file '%s': %s - Unable to create the PID file '%s': %s + Неможливо створити PID файл '%s' :%s Unable to generate initial keys - Unable to generate initial keys + Не вдається створити початкові ключі Unknown -blockfilterindex value %s. - Unknown -blockfilterindex value %s. + Невідоме значення -blockfilterindex %s. Verifying wallet(s)... - Verifying wallet(s)... + Перевірка гаманця(ів)... Warning: unknown new rules activated (versionbit %i) - Warning: unknown new rules activated (versionbit %i) + Попередження: активовано невідомі нові правила (versionbit %i) -maxtxfee is set very high! Fees this large could be paid on a single transaction. - -maxtxfee is set very high! Fees this large could be paid on a single transaction. + Встановлено дуже велике значення -maxtxfee! Такі великі комісії можуть бути сплачені окремою транзакцією. This is the transaction fee you may pay when fee estimates are not available. - This is the transaction fee you may pay when fee estimates are not available. + Це комісія за транзакцію, яку ви можете сплатити, коли кошторисна вартість недоступна. Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments. - Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments. + Загальна довжина рядку мережевої версії (%i) перевищує максимально допустиму (%i). Зменшіть число чи розмір коментарів клієнта користувача. %s is set very high! - %s is set very high! + %s встановлено дуже високо! Starting network threads... - Starting network threads... + Запуск мережевих потоків... The wallet will avoid paying less than the minimum relay fee. - The wallet will avoid paying less than the minimum relay fee. + Гаманець не переведе кошти, якщо комісія становить менше мінімальної плати за транзакцію. This is the minimum transaction fee you pay on every transaction. - This is the minimum transaction fee you pay on every transaction. + Це мінімальна плата за транзакцію, яку ви сплачуєте за кожну операцію. This is the transaction fee you will pay if you send a transaction. - This is the transaction fee you will pay if you send a transaction. + Це транзакційна комісія, яку ви сплатите, якщо будете надсилати транзакцію. Transaction amounts must not be negative - Transaction amounts must not be negative + Сума транзакції не повинна бути від'ємною Transaction has too long of a mempool chain - Transaction has too long of a mempool chain + У транзакції занадто довгий ланцюг Transaction must have at least one recipient - Transaction must have at least one recipient + У транзакції повинен бути щонайменше один одержувач Unknown network specified in -onlynet: '%s' - Unknown network specified in -onlynet: '%s' + Невідома мережа вказана в -onlynet: «%s» Insufficient funds - Insufficient funds + Недостатньо коштів Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable -fallbackfee. - Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable -fallbackfee. + Оцінка комісії не вдалася. Fallbackfee вимкнено. Зачекайте кілька блоків або ввімкніть -fallbackfee. Warning: Private keys detected in wallet {%s} with disabled private keys - Warning: Private keys detected in wallet {%s} with disabled private keys + Попередження: Приватні ключі виявлено в гаманці {%s} з відключеними приватними ключами Cannot write to data directory '%s'; check permissions. - Cannot write to data directory '%s'; check permissions. + Неможливо записати до каталогу даних '%s'; перевірте дозвіли. Loading block index... - Loading block index... + Завантаження індексу блоків... Loading wallet... - Loading wallet... + Завантаження гаманця... Cannot downgrade wallet - Cannot downgrade wallet + Не вдається знити версію гаманця Rescanning... - Rescanning... + Сканування... Done loading - Done loading + Завантаження завершено \ No newline at end of file diff --git a/src/qt/locale/bitcoin_vi.ts b/src/qt/locale/bitcoin_vi.ts index d0fd45752..34ec8aef3 100644 --- a/src/qt/locale/bitcoin_vi.ts +++ b/src/qt/locale/bitcoin_vi.ts @@ -477,6 +477,14 @@ Up to date Đã cập nhật + + &Load PSBT from file... + &Tải dữ liệu PSBT từ tệp... + + + Load PSBT from clipboard... + Tải dữ liệu PSBT từ bộ nhớ tạm... + Node window Cửa sổ node @@ -1472,10 +1480,18 @@ Failed to sign transaction: %1 Đăng ký giao dịch thất bại :%1 + + PSBT copied to clipboard. + Dữ liệu PSBT được sao chép vào bộ nhớ tạm. + Save Transaction Data Lưu trữ giao dịch + + PSBT saved to disk. + Dữ liệu PSBT được lưu vào ổ đĩa. + * Sends %1 to %2 *Gửi %1 tới %2 @@ -1847,6 +1863,10 @@ Node window Cửa sổ node + + Current block height + Kích thước khối hiện tại + Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. Mở cái %1 debug log file từ danh mục dữ liệu hiện tại. Điều này cần vài giây cho large log files. diff --git a/src/qt/locale/bitcoin_zh_CN.ts b/src/qt/locale/bitcoin_zh_CN.ts index 8118ece04..2c8ad7d73 100644 --- a/src/qt/locale/bitcoin_zh_CN.ts +++ b/src/qt/locale/bitcoin_zh_CN.ts @@ -3,7 +3,7 @@ AddressBookPage Right-click to edit address or label - 右键单击以编辑地址或标签 + 22000631@qq.com guanlonghuang Create a new address diff --git a/src/qt/locale/bitcoin_zh_HK.ts b/src/qt/locale/bitcoin_zh_HK.ts index 56875462b..b48b2ce7e 100644 --- a/src/qt/locale/bitcoin_zh_HK.ts +++ b/src/qt/locale/bitcoin_zh_HK.ts @@ -29,6 +29,10 @@ Delete the currently selected address from the list 把目前選擇的位址從列表中刪除 + + Enter address or label to search + 輸入位址或標記以作搜尋 + Export the data in the current tab to a file 把目前分頁的資料匯出至檔案 diff --git a/src/qt/locale/bitcoin_zh_TW.ts b/src/qt/locale/bitcoin_zh_TW.ts index f31297785..52132e8bc 100644 --- a/src/qt/locale/bitcoin_zh_TW.ts +++ b/src/qt/locale/bitcoin_zh_TW.ts @@ -871,7 +871,11 @@ Signing is only possible with addresses of the type 'legacy'. Create 產生 - + + Compiled without sqlite support (required for descriptor wallets) + Compiled without sqlite support (required for descriptor wallets) + + EditAddressDialog @@ -3498,6 +3502,10 @@ Go to File > Open Wallet to load a wallet. Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. 讀取錢包檔 %s 時發生錯誤!所有的鑰匙都正確讀取了,但是交易資料或地址簿資料可能會缺少或不正確。 + + More than one onion bind address is provided. Using %s for the automatically created Tor onion service. + More than one onion bind address is provided. Using %s for the automatically created Tor onion service. + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. 請檢查電腦日期和時間是否正確!%s 沒辦法在時鐘不準的情況下正常運作。 @@ -3506,6 +3514,18 @@ Go to File > Open Wallet to load a wallet. Please contribute if you find %s useful. Visit %s for further information about the software. 如果你覺得 %s 有用,可以幫助我們。關於這個軟體的更多資訊請見 %s。 + + SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s + SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s + + + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + + + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct 區塊資料庫中有來自未來的區塊。可能是你電腦的日期時間不對。如果確定電腦日期時間沒錯的話,就重建區塊資料庫看看。 @@ -3602,6 +3622,14 @@ Go to File > Open Wallet to load a wallet. Failed to rescan the wallet during initialization 初始化時重新掃描錢包失敗了 + + Failed to verify database + Failed to verify database + + + Ignoring duplicate -wallet %s. + Ignoring duplicate -wallet %s. + Importing... 正在匯入中... @@ -3630,6 +3658,30 @@ Go to File > Open Wallet to load a wallet. Invalid amount for -fallbackfee=<amount>: '%s' 設定 -fallbackfee=<金額> 的金額無效: '%s' + + SQLiteDatabase: Failed to execute statement to verify database: %s + SQLiteDatabase: Failed to execute statement to verify database: %s + + + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s + + + SQLiteDatabase: Failed to fetch the application id: %s + SQLiteDatabase: Failed to fetch the application id: %s + + + SQLiteDatabase: Failed to prepare statement to verify database: %s + SQLiteDatabase: Failed to prepare statement to verify database: %s + + + SQLiteDatabase: Failed to read database verification error: %s + SQLiteDatabase: Failed to read database verification error: %s + + + SQLiteDatabase: Unexpected application id. Expected %u, got %u + SQLiteDatabase: Unexpected application id. Expected %u, got %u + Specified blocks directory "%s" does not exist. 指定的區塊目錄 "%s" 不存在。 diff --git a/src/qt/locale/bitcoin_zu.ts b/src/qt/locale/bitcoin_zu.ts index 0ff40282a..b45014a11 100644 --- a/src/qt/locale/bitcoin_zu.ts +++ b/src/qt/locale/bitcoin_zu.ts @@ -3,280 +3,4095 @@ AddressBookPage Right-click to edit address or label - Qhafaza kwesokudla ukuze uhlele ikheli noma ilebula + Right-click to edit address or label Create a new address - Dala ikheli elisha + Create a new address + + + &New + &New Copy the currently selected address to the system clipboard - Kopisha ikheli elikhethwe njengamanje ebhodini lokunameka lesistimu + Copy the currently selected address to the system clipboard + + + &Copy + &Copy + + + C&lose + C&lose Delete the currently selected address from the list - Susa ikheli elikhethwe njengamanje ohlwini + Delete the currently selected address from the list Enter address or label to search - Faka ikheli noma ilebula ukusesha + Enter address or label to search Export the data in the current tab to a file - Khiphela idatha kuthebhu yamanje kufayela + Export the data in the current tab to a file + + + &Export + &Export + + + &Delete + &Delete Choose the address to send coins to - Khetha ikheli ozothumela kulo izinhlamvu zemali + Choose the address to send coins to Choose the address to receive coins with - Khetha ikheli ukuthola izinhlamvu zemali nge + Choose the address to receive coins with + + + C&hoose + C&hoose Sending addresses - Kuthunyelwa amakheli + Sending addresses Receiving addresses - Ukuthola amakheli + Receiving addresses These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. - Lawa amakheli akho e-Bitcoin okuthumela izinkokhelo. Njalo hlola inani nekheli elitholwayo ngaphambi kokuthumela izinhlamvu zemali. + These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. + + + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + + + &Copy Address + &Copy Address + + + Copy &Label + Copy &Label + + + &Edit + &Edit Export Address List - Thumela Ikheli Langaphandle + Export Address List Comma separated file (*.csv) - Ifayela elihlukaniswe ngokhefana (* .csv) + Comma separated file (*.csv) Exporting Failed - Ukuthekelisa kwehlulekile + Exporting Failed - + + There was an error trying to save the address list to %1. Please try again. + There was an error trying to save the address list to %1. Please try again. + + AddressTableModel Label - Ilebuli + Label Address - Ikheli + Address (no label) - (akukho ilebula) + (no label) AskPassphraseDialog Passphrase Dialog - I-Passphrase Dialog + Passphrase Dialog Enter passphrase - Faka umushwana wokungena + Enter passphrase New passphrase - Umushwana omusha wokungena + New passphrase Repeat new passphrase - Phinda umushwana omusha wokungena + Repeat new passphrase Show passphrase - Khombisa umushwana wokungena + Show passphrase Encrypt wallet - Bethela isikhwama + Encrypt wallet This operation needs your wallet passphrase to unlock the wallet. - Lokhu kusebenza kudinga umushwana wakho wokungena wesikhwama ukuvula isikhwama. + This operation needs your wallet passphrase to unlock the wallet. Unlock wallet - Vula isikhwama semali + Unlock wallet This operation needs your wallet passphrase to decrypt the wallet. - Lo msebenzi udinga umushwana wakho wokungena wesikhwama ukukhipha isikhwama esikhwameni. + This operation needs your wallet passphrase to decrypt the wallet. Decrypt wallet - Ukhiphe isikhwama semali + Decrypt wallet Change passphrase - Shintsha umushwana wokungena + Change passphrase Confirm wallet encryption - Qinisekisa ukubethelwa kwe-wallet + Confirm wallet encryption Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! - Isexwayiso: Uma ubhala ngemfihlo isikhwama sakho futhi ulahlekelwe umushwana wakho wokungena, uzokwazi -Lahla YONKE IBITCOIN YAKHO! + Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! Are you sure you wish to encrypt your wallet? - Uqinisekile ukuthi ufisa ukubhala ngemfihlo isikhwama sakho? + Are you sure you wish to encrypt your wallet? Wallet encrypted - Kufakwe i-Wallet + Wallet encrypted - + + Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. + Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. + + + Enter the old passphrase and new passphrase for the wallet. + Enter the old passphrase and new passphrase for the wallet. + + + Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. + Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. + + + Wallet to be encrypted + Wallet to be encrypted + + + Your wallet is about to be encrypted. + Your wallet is about to be encrypted. + + + Your wallet is now encrypted. + Your wallet is now encrypted. + + + IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. + IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. + + + Wallet encryption failed + Wallet encryption failed + + + Wallet encryption failed due to an internal error. Your wallet was not encrypted. + Wallet encryption failed due to an internal error. Your wallet was not encrypted. + + + The supplied passphrases do not match. + The supplied passphrases do not match. + + + Wallet unlock failed + Wallet unlock failed + + + The passphrase entered for the wallet decryption was incorrect. + The passphrase entered for the wallet decryption was incorrect. + + + Wallet decryption failed + Wallet decryption failed + + + Wallet passphrase was successfully changed. + Wallet passphrase was successfully changed. + + + Warning: The Caps Lock key is on! + Warning: The Caps Lock key is on! + + BanTableModel - + + IP/Netmask + IP/Netmask + + + Banned Until + Banned Until + + BitcoinGUI - + + Sign &message... + Sign &message... + + + Synchronizing with network... + Synchronizing with network... + + + &Overview + &Overview + + + Show general overview of wallet + Show general overview of wallet + + + &Transactions + &Transactions + + + Browse transaction history + Browse transaction history + + + E&xit + E&xit + + + Quit application + Quit application + + + &About %1 + &About %1 + + + Show information about %1 + Show information about %1 + + + About &Qt + About &Qt + + + Show information about Qt + Show information about Qt + + + &Options... + &Options... + + + Modify configuration options for %1 + Modify configuration options for %1 + + + &Encrypt Wallet... + &Encrypt Wallet... + + + &Backup Wallet... + &Backup Wallet... + + + &Change Passphrase... + &Change Passphrase... + + + Open &URI... + Open &URI... + + + Create Wallet... + Create Wallet... + + + Create a new wallet + Create a new wallet + + + Wallet: + Wallet: + + + Click to disable network activity. + Click to disable network activity. + + + Network activity disabled. + Network activity disabled. + + + Click to enable network activity again. + Click to enable network activity again. + + + Syncing Headers (%1%)... + Syncing Headers (%1%)... + + + Reindexing blocks on disk... + Reindexing blocks on disk... + + + Proxy is <b>enabled</b>: %1 + Proxy is <b>enabled</b>: %1 + + + Send coins to a Bitcoin address + Send coins to a Bitcoin address + + + Backup wallet to another location + Backup wallet to another location + + + Change the passphrase used for wallet encryption + Change the passphrase used for wallet encryption + + + &Verify message... + &Verify message... + + + &Send + &Send + + + &Receive + &Receive + + + &Show / Hide + &Show / Hide + + + Show or hide the main Window + Show or hide the main Window + + + Encrypt the private keys that belong to your wallet + Encrypt the private keys that belong to your wallet + + + Sign messages with your Bitcoin addresses to prove you own them + Sign messages with your Bitcoin addresses to prove you own them + + + Verify messages to ensure they were signed with specified Bitcoin addresses + Verify messages to ensure they were signed with specified Bitcoin addresses + + + &File + &File + + + &Settings + &Settings + + + &Help + &Help + + + Tabs toolbar + Tabs toolbar + + + Request payments (generates QR codes and bitcoin: URIs) + Request payments (generates QR codes and bitcoin: URIs) + + + Show the list of used sending addresses and labels + Show the list of used sending addresses and labels + + + Show the list of used receiving addresses and labels + Show the list of used receiving addresses and labels + + + &Command-line options + &Command-line options + + + %n active connection(s) to Bitcoin network + %n active connection to Bitcoin network%n active connections to Bitcoin network + + + Indexing blocks on disk... + Indexing blocks on disk... + + + Processing blocks on disk... + Processing blocks on disk... + + + Processed %n block(s) of transaction history. + Processed %n block of transaction history.Processed %n blocks of transaction history. + + + %1 behind + %1 behind + + + Last received block was generated %1 ago. + Last received block was generated %1 ago. + + + Transactions after this will not yet be visible. + Transactions after this will not yet be visible. + + + Error + Error + + + Warning + Warning + + + Information + Information + + + Up to date + Up to date + + + &Load PSBT from file... + &Load PSBT from file... + + + Load Partially Signed Bitcoin Transaction + Load Partially Signed Bitcoin Transaction + + + Load PSBT from clipboard... + Load PSBT from clipboard... + + + Load Partially Signed Bitcoin Transaction from clipboard + Load Partially Signed Bitcoin Transaction from clipboard + + + Node window + Node window + + + Open node debugging and diagnostic console + Open node debugging and diagnostic console + + + &Sending addresses + &Sending addresses + + + &Receiving addresses + &Receiving addresses + + + Open a bitcoin: URI + Open a bitcoin: URI + + + Open Wallet + Open Wallet + + + Open a wallet + Open a wallet + + + Close Wallet... + Close Wallet... + + + Close wallet + Close wallet + + + Close All Wallets... + Close All Wallets... + + + Close all wallets + Close all wallets + + + Show the %1 help message to get a list with possible Bitcoin command-line options + Show the %1 help message to get a list with possible Bitcoin command-line options + + + &Mask values + &Mask values + + + Mask the values in the Overview tab + Mask the values in the Overview tab + + + default wallet + default wallet + + + No wallets available + No wallets available + + + &Window + &Window + + + Minimize + Minimize + + + Zoom + Zoom + + + Main Window + Main Window + + + %1 client + %1 client + + + Connecting to peers... + Connecting to peers... + + + Catching up... + Catching up... + + + Error: %1 + Error: %1 + + + Warning: %1 + Warning: %1 + + + Date: %1 + + Date: %1 + + + + Amount: %1 + + Amount: %1 + + + + Wallet: %1 + + Wallet: %1 + + + + Type: %1 + + Type: %1 + + + + Label: %1 + + Label: %1 + + + + Address: %1 + + Address: %1 + + + + Sent transaction + Sent transaction + + + Incoming transaction + Incoming transaction + + + HD key generation is <b>enabled</b> + HD key generation is <b>enabled</b> + + + HD key generation is <b>disabled</b> + HD key generation is <b>disabled</b> + + + Private key <b>disabled</b> + Private key <b>disabled</b> + + + Wallet is <b>encrypted</b> and currently <b>unlocked</b> + Wallet is <b>encrypted</b> and currently <b>unlocked</b> + + + Wallet is <b>encrypted</b> and currently <b>locked</b> + Wallet is <b>encrypted</b> and currently <b>locked</b> + + + Original message: + Original message: + + + A fatal error occurred. %1 can no longer continue safely and will quit. + A fatal error occurred. %1 can no longer continue safely and will quit. + + CoinControlDialog - + + Coin Selection + Coin Selection + + + Quantity: + Quantity: + + + Bytes: + Bytes: + + + Amount: + Amount: + + + Fee: + Fee: + + + Dust: + Dust: + + + After Fee: + After Fee: + + + Change: + Change: + + + (un)select all + (un)select all + + + Tree mode + Tree mode + + + List mode + List mode + + + Amount + Amount + + + Received with label + Received with label + + + Received with address + Received with address + + + Date + Date + + + Confirmations + Confirmations + + + Confirmed + Confirmed + + + Copy address + Copy address + + + Copy label + Copy label + + + Copy amount + Copy amount + + + Copy transaction ID + Copy transaction ID + + + Lock unspent + Lock unspent + + + Unlock unspent + Unlock unspent + + + Copy quantity + Copy quantity + + + Copy fee + Copy fee + + + Copy after fee + Copy after fee + + + Copy bytes + Copy bytes + + + Copy dust + Copy dust + + + Copy change + Copy change + + + (%1 locked) + (%1 locked) + + + yes + yes + + + no + no + + + This label turns red if any recipient receives an amount smaller than the current dust threshold. + This label turns red if any recipient receives an amount smaller than the current dust threshold. + + + Can vary +/- %1 satoshi(s) per input. + Can vary +/- %1 satoshi(s) per input. + + + (no label) + (no label) + + + change from %1 (%2) + change from %1 (%2) + + + (change) + (change) + + CreateWalletActivity - + + Creating Wallet <b>%1</b>... + Creating Wallet <b>%1</b>... + + + Create wallet failed + Create wallet failed + + + Create wallet warning + Create wallet warning + + CreateWalletDialog - + + Create Wallet + Create Wallet + + + Wallet Name + Wallet Name + + + Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. + Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. + + + Encrypt Wallet + Encrypt Wallet + + + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. + + + Disable Private Keys + Disable Private Keys + + + Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. + Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. + + + Make Blank Wallet + Make Blank Wallet + + + Use descriptors for scriptPubKey management + Use descriptors for scriptPubKey management + + + Descriptor Wallet + Descriptor Wallet + + + Create + Create + + + Compiled without sqlite support (required for descriptor wallets) + Compiled without sqlite support (required for descriptor wallets) + + EditAddressDialog - + + Edit Address + Edit Address + + + &Label + &Label + + + The label associated with this address list entry + The label associated with this address list entry + + + The address associated with this address list entry. This can only be modified for sending addresses. + The address associated with this address list entry. This can only be modified for sending addresses. + + + &Address + &Address + + + New sending address + New sending address + + + Edit receiving address + Edit receiving address + + + Edit sending address + Edit sending address + + + The entered address "%1" is not a valid Bitcoin address. + The entered address "%1" is not a valid Bitcoin address. + + + Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address. + Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address. + + + The entered address "%1" is already in the address book with label "%2". + The entered address "%1" is already in the address book with label "%2". + + + Could not unlock wallet. + Could not unlock wallet. + + + New key generation failed. + New key generation failed. + + FreespaceChecker - + + A new data directory will be created. + A new data directory will be created. + + + name + name + + + Directory already exists. Add %1 if you intend to create a new directory here. + Directory already exists. Add %1 if you intend to create a new directory here. + + + Path already exists, and is not a directory. + Path already exists, and is not a directory. + + + Cannot create data directory here. + Cannot create data directory here. + + HelpMessageDialog - + + version + version + + + About %1 + About %1 + + + Command-line options + Command-line options + + Intro - + + Welcome + Welcome + + + Welcome to %1. + Welcome to %1. + + + As this is the first time the program is launched, you can choose where %1 will store its data. + As this is the first time the program is launched, you can choose where %1 will store its data. + + + When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. + When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. + + + Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. + Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. + + + This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. + This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. + + + If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. + If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. + + + Use the default data directory + Use the default data directory + + + Use a custom data directory: + Use a custom data directory: + + + Bitcoin + Bitcoin + + + Discard blocks after verification, except most recent %1 GB (prune) + Discard blocks after verification, except most recent %1 GB (prune) + + + At least %1 GB of data will be stored in this directory, and it will grow over time. + At least %1 GB of data will be stored in this directory, and it will grow over time. + + + Approximately %1 GB of data will be stored in this directory. + Approximately %1 GB of data will be stored in this directory. + + + %1 will download and store a copy of the Bitcoin block chain. + %1 will download and store a copy of the Bitcoin block chain. + + + The wallet will also be stored in this directory. + The wallet will also be stored in this directory. + + + Error: Specified data directory "%1" cannot be created. + Error: Specified data directory "%1" cannot be created. + + + Error + Error + + + %n GB of free space available + %n GB of free space available%n GB of free space available + + + (of %n GB needed) + (of %n GB needed)(of %n GB needed) + + + (%n GB needed for full chain) + (%n GB needed for full chain)(%n GB needed for full chain) + + ModalOverlay - + + Form + Form + + + Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. + Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. + + + Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network. + Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network. + + + Number of blocks left + Number of blocks left + + + Unknown... + Unknown... + + + Last block time + Last block time + + + Progress + Progress + + + Progress increase per hour + Progress increase per hour + + + calculating... + calculating... + + + Estimated time left until synced + Estimated time left until synced + + + Hide + Hide + + + Esc + Esc + + + %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. + %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. + + + Unknown. Syncing Headers (%1, %2%)... + Unknown. Syncing Headers (%1, %2%)... + + OpenURIDialog - + + Open bitcoin URI + Open bitcoin URI + + + URI: + URI: + + OpenWalletActivity - + + Open wallet failed + Open wallet failed + + + Open wallet warning + Open wallet warning + + + default wallet + default wallet + + + Opening Wallet <b>%1</b>... + Opening Wallet <b>%1</b>... + + OptionsDialog - + + Options + Options + + + &Main + &Main + + + Automatically start %1 after logging in to the system. + Automatically start %1 after logging in to the system. + + + &Start %1 on system login + &Start %1 on system login + + + Size of &database cache + Size of &database cache + + + Number of script &verification threads + Number of script &verification threads + + + IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1) + IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1) + + + Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type. + Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type. + + + Hide the icon from the system tray. + Hide the icon from the system tray. + + + &Hide tray icon + &Hide tray icon + + + Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu. + Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu. + + + Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. + Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. + + + Open the %1 configuration file from the working directory. + Open the %1 configuration file from the working directory. + + + Open Configuration File + Open Configuration File + + + Reset all client options to default. + Reset all client options to default. + + + &Reset Options + &Reset Options + + + &Network + &Network + + + Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. + Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. + + + Prune &block storage to + Prune &block storage to + + + GB + GB + + + Reverting this setting requires re-downloading the entire blockchain. + Reverting this setting requires re-downloading the entire blockchain. + + + MiB + MiB + + + (0 = auto, <0 = leave that many cores free) + (0 = auto, <0 = leave that many cores free) + + + W&allet + W&allet + + + Expert + Expert + + + Enable coin &control features + Enable coin &control features + + + If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed. + If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed. + + + &Spend unconfirmed change + &Spend unconfirmed change + + + Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled. + Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled. + + + Map port using &UPnP + Map port using &UPnP + + + Accept connections from outside. + Accept connections from outside. + + + Allow incomin&g connections + Allow incomin&g connections + + + Connect to the Bitcoin network through a SOCKS5 proxy. + Connect to the Bitcoin network through a SOCKS5 proxy. + + + &Connect through SOCKS5 proxy (default proxy): + &Connect through SOCKS5 proxy (default proxy): + + + Proxy &IP: + Proxy &IP: + + + &Port: + &Port: + + + Port of the proxy (e.g. 9050) + Port of the proxy (e.g. 9050) + + + Used for reaching peers via: + Used for reaching peers via: + + + IPv4 + IPv4 + + + IPv6 + IPv6 + + + Tor + Tor + + + &Window + &Window + + + Show only a tray icon after minimizing the window. + Show only a tray icon after minimizing the window. + + + &Minimize to the tray instead of the taskbar + &Minimize to the tray instead of the taskbar + + + M&inimize on close + M&inimize on close + + + &Display + &Display + + + User Interface &language: + User Interface &language: + + + The user interface language can be set here. This setting will take effect after restarting %1. + The user interface language can be set here. This setting will take effect after restarting %1. + + + &Unit to show amounts in: + &Unit to show amounts in: + + + Choose the default subdivision unit to show in the interface and when sending coins. + Choose the default subdivision unit to show in the interface and when sending coins. + + + Whether to show coin control features or not. + Whether to show coin control features or not. + + + Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. + Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. + + + Use separate SOCKS&5 proxy to reach peers via Tor onion services: + Use separate SOCKS&5 proxy to reach peers via Tor onion services: + + + &Third party transaction URLs + &Third party transaction URLs + + + Options set in this dialog are overridden by the command line or in the configuration file: + Options set in this dialog are overridden by the command line or in the configuration file: + + + &OK + &OK + + + &Cancel + &Cancel + + + default + default + + + none + none + + + Confirm options reset + Confirm options reset + + + Client restart required to activate changes. + Client restart required to activate changes. + + + Client will be shut down. Do you want to proceed? + Client will be shut down. Do you want to proceed? + + + Configuration options + Configuration options + + + The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file. + The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file. + + + Error + Error + + + The configuration file could not be opened. + The configuration file could not be opened. + + + This change would require a client restart. + This change would require a client restart. + + + The supplied proxy address is invalid. + The supplied proxy address is invalid. + + OverviewPage - + + Form + Form + + + The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. + The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. + + + Watch-only: + Watch-only: + + + Available: + Available: + + + Your current spendable balance + Your current spendable balance + + + Pending: + Pending: + + + Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance + Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance + + + Immature: + Immature: + + + Mined balance that has not yet matured + Mined balance that has not yet matured + + + Balances + Balances + + + Total: + Total: + + + Your current total balance + Your current total balance + + + Your current balance in watch-only addresses + Your current balance in watch-only addresses + + + Spendable: + Spendable: + + + Recent transactions + Recent transactions + + + Unconfirmed transactions to watch-only addresses + Unconfirmed transactions to watch-only addresses + + + Mined balance in watch-only addresses that has not yet matured + Mined balance in watch-only addresses that has not yet matured + + + Current total balance in watch-only addresses + Current total balance in watch-only addresses + + + Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. + Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. + + PSBTOperationsDialog - + + Dialog + Dialog + + + Sign Tx + Sign Tx + + + Broadcast Tx + Broadcast Tx + + + Copy to Clipboard + Copy to Clipboard + + + Save... + Save... + + + Close + Close + + + Failed to load transaction: %1 + Failed to load transaction: %1 + + + Failed to sign transaction: %1 + Failed to sign transaction: %1 + + + Could not sign any more inputs. + Could not sign any more inputs. + + + Signed %1 inputs, but more signatures are still required. + Signed %1 inputs, but more signatures are still required. + + + Signed transaction successfully. Transaction is ready to broadcast. + Signed transaction successfully. Transaction is ready to broadcast. + + + Unknown error processing transaction. + Unknown error processing transaction. + + + Transaction broadcast successfully! Transaction ID: %1 + Transaction broadcast successfully! Transaction ID: %1 + + + Transaction broadcast failed: %1 + Transaction broadcast failed: %1 + + + PSBT copied to clipboard. + PSBT copied to clipboard. + + + Save Transaction Data + Save Transaction Data + + + Partially Signed Transaction (Binary) (*.psbt) + Partially Signed Transaction (Binary) (*.psbt) + + + PSBT saved to disk. + PSBT saved to disk. + + + * Sends %1 to %2 + * Sends %1 to %2 + + + Unable to calculate transaction fee or total transaction amount. + Unable to calculate transaction fee or total transaction amount. + + + Pays transaction fee: + Pays transaction fee: + + + Total Amount + Total Amount + + + or + or + + + Transaction has %1 unsigned inputs. + Transaction has %1 unsigned inputs. + + + Transaction is missing some information about inputs. + Transaction is missing some information about inputs. + + + Transaction still needs signature(s). + Transaction still needs signature(s). + + + (But this wallet cannot sign transactions.) + (But this wallet cannot sign transactions.) + + + (But this wallet does not have the right keys.) + (But this wallet does not have the right keys.) + + + Transaction is fully signed and ready for broadcast. + Transaction is fully signed and ready for broadcast. + + + Transaction status is unknown. + Transaction status is unknown. + + PaymentServer - + + Payment request error + Payment request error + + + Cannot start bitcoin: click-to-pay handler + Cannot start bitcoin: click-to-pay handler + + + URI handling + URI handling + + + 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. + 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. + + + Cannot process payment request because BIP70 is not supported. + Cannot process payment request because BIP70 is not supported. + + + Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. + Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. + + + If you are receiving this error you should request the merchant provide a BIP21 compatible URI. + If you are receiving this error you should request the merchant provide a BIP21 compatible URI. + + + Invalid payment address %1 + Invalid payment address %1 + + + URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters. + URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters. + + + Payment request file handling + Payment request file handling + + PeerTableModel - + + User Agent + User Agent + + + Node/Service + Node/Service + + + NodeId + NodeId + + + Ping + Ping + + + Sent + Sent + + + Received + Received + + QObject - + + Amount + Amount + + + Enter a Bitcoin address (e.g. %1) + Enter a Bitcoin address (e.g. %1) + + + %1 d + %1 d + + + %1 h + %1 h + + + %1 m + %1 m + + + %1 s + %1 s + + + None + None + + + N/A + N/A + + + %1 ms + %1 ms + + + %n second(s) + %n second%n seconds + + + %n minute(s) + %n minute%n minutes + + + %n hour(s) + %n hour%n hours + + + %n day(s) + %n day%n days + + + %n week(s) + %n week%n weeks + + + %1 and %2 + %1 and %2 + + + %n year(s) + %n year%n years + + + %1 B + %1 B + + + %1 KB + %1 KB + + + %1 MB + %1 MB + + + %1 GB + %1 GB + + + Error: Specified data directory "%1" does not exist. + Error: Specified data directory "%1" does not exist. + + + Error: Cannot parse configuration file: %1. + Error: Cannot parse configuration file: %1. + + + Error: %1 + Error: %1 + + + Error initializing settings: %1 + Error initializing settings: %1 + + + %1 didn't yet exit safely... + %1 didn't yet exit safely... + + + unknown + unknown + + QRImageWidget - + + &Save Image... + &Save Image... + + + &Copy Image + &Copy Image + + + Resulting URI too long, try to reduce the text for label / message. + Resulting URI too long, try to reduce the text for label / message. + + + Error encoding URI into QR Code. + Error encoding URI into QR Code. + + + QR code support not available. + QR code support not available. + + + Save QR Code + Save QR Code + + + PNG Image (*.png) + PNG Image (*.png) + + RPCConsole - + + N/A + N/A + + + Client version + Client version + + + &Information + &Information + + + General + General + + + Using BerkeleyDB version + Using BerkeleyDB version + + + Datadir + Datadir + + + To specify a non-default location of the data directory use the '%1' option. + To specify a non-default location of the data directory use the '%1' option. + + + Blocksdir + Blocksdir + + + To specify a non-default location of the blocks directory use the '%1' option. + To specify a non-default location of the blocks directory use the '%1' option. + + + Startup time + Startup time + + + Network + Network + + + Name + Name + + + Number of connections + Number of connections + + + Block chain + Block chain + + + Memory Pool + Memory Pool + + + Current number of transactions + Current number of transactions + + + Memory usage + Memory usage + + + Wallet: + Wallet: + + + (none) + (none) + + + &Reset + &Reset + + + Received + Received + + + Sent + Sent + + + &Peers + &Peers + + + Banned peers + Banned peers + + + Select a peer to view detailed information. + Select a peer to view detailed information. + + + Direction + Direction + + + Version + Version + + + Starting Block + Starting Block + + + Synced Headers + Synced Headers + + + Synced Blocks + Synced Blocks + + + The mapped Autonomous System used for diversifying peer selection. + The mapped Autonomous System used for diversifying peer selection. + + + Mapped AS + Mapped AS + + + User Agent + User Agent + + + Node window + Node window + + + Current block height + Current block height + + + Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. + Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. + + + Decrease font size + Decrease font size + + + Increase font size + Increase font size + + + Permissions + Permissions + + + Services + Services + + + Connection Time + Connection Time + + + Last Send + Last Send + + + Last Receive + Last Receive + + + Ping Time + Ping Time + + + The duration of a currently outstanding ping. + The duration of a currently outstanding ping. + + + Ping Wait + Ping Wait + + + Min Ping + Min Ping + + + Time Offset + Time Offset + + + Last block time + Last block time + + + &Open + &Open + + + &Console + &Console + + + &Network Traffic + &Network Traffic + + + Totals + Totals + + + In: + In: + + + Out: + Out: + + + Debug log file + Debug log file + + + Clear console + Clear console + + + 1 &hour + 1 &hour + + + 1 &day + 1 &day + + + 1 &week + 1 &week + + + 1 &year + 1 &year + + + &Disconnect + &Disconnect + + + Ban for + Ban for + + + &Unban + &Unban + + + Welcome to the %1 RPC console. + Welcome to the %1 RPC console. + + + Use up and down arrows to navigate history, and %1 to clear screen. + Use up and down arrows to navigate history, and %1 to clear screen. + + + Type %1 for an overview of available commands. + Type %1 for an overview of available commands. + + + For more information on using this console type %1. + For more information on using this console type %1. + + + WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. + WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. + + + Network activity disabled + Network activity disabled + + + Executing command without any wallet + Executing command without any wallet + + + Executing command using "%1" wallet + Executing command using "%1" wallet + + + (node id: %1) + (node id: %1) + + + via %1 + via %1 + + + never + never + + + Inbound + Inbound + + + Outbound + Outbound + + + Unknown + Unknown + + ReceiveCoinsDialog - + + &Amount: + &Amount: + + + &Label: + &Label: + + + &Message: + &Message: + + + An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network. + An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network. + + + An optional label to associate with the new receiving address. + An optional label to associate with the new receiving address. + + + Use this form to request payments. All fields are <b>optional</b>. + Use this form to request payments. All fields are <b>optional</b>. + + + An optional amount to request. Leave this empty or zero to not request a specific amount. + An optional amount to request. Leave this empty or zero to not request a specific amount. + + + An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request. + An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request. + + + An optional message that is attached to the payment request and may be displayed to the sender. + An optional message that is attached to the payment request and may be displayed to the sender. + + + &Create new receiving address + &Create new receiving address + + + Clear all fields of the form. + Clear all fields of the form. + + + Clear + Clear + + + Native segwit addresses (aka Bech32 or BIP-173) reduce your transaction fees later on and offer better protection against typos, but old wallets don't support them. When unchecked, an address compatible with older wallets will be created instead. + Native segwit addresses (aka Bech32 or BIP-173) reduce your transaction fees later on and offer better protection against typos, but old wallets don't support them. When unchecked, an address compatible with older wallets will be created instead. + + + Generate native segwit (Bech32) address + Generate native segwit (Bech32) address + + + Requested payments history + Requested payments history + + + Show the selected request (does the same as double clicking an entry) + Show the selected request (does the same as double clicking an entry) + + + Show + Show + + + Remove the selected entries from the list + Remove the selected entries from the list + + + Remove + Remove + + + Copy URI + Copy URI + + + Copy label + Copy label + + + Copy message + Copy message + + + Copy amount + Copy amount + + + Could not unlock wallet. + Could not unlock wallet. + + + Could not generate new %1 address + Could not generate new %1 address + + ReceiveRequestDialog - + + Request payment to ... + Request payment to ... + + + Address: + Address: + + + Amount: + Amount: + + + Label: + Label: + + + Message: + Message: + + + Wallet: + Wallet: + + + Copy &URI + Copy &URI + + + Copy &Address + Copy &Address + + + &Save Image... + &Save Image... + + + Request payment to %1 + Request payment to %1 + + + Payment information + Payment information + + RecentRequestsTableModel - Label - Ilebuli + Date + Date - + + Label + Label + + + Message + Message + + + (no label) + (no label) + + + (no message) + (no message) + + + (no amount requested) + (no amount requested) + + + Requested + Requested + + SendCoinsDialog - + + Send Coins + Send Coins + + + Coin Control Features + Coin Control Features + + + Inputs... + Inputs... + + + automatically selected + automatically selected + + + Insufficient funds! + Insufficient funds! + + + Quantity: + Quantity: + + + Bytes: + Bytes: + + + Amount: + Amount: + + + Fee: + Fee: + + + After Fee: + After Fee: + + + Change: + Change: + + + If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address. + If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address. + + + Custom change address + Custom change address + + + Transaction Fee: + Transaction Fee: + + + Choose... + Choose... + + + Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain. + Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain. + + + Warning: Fee estimation is currently not possible. + Warning: Fee estimation is currently not possible. + + + Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size. + +Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis per kB" for a transaction size of 500 bytes (half of 1 kB) would ultimately yield a fee of only 50 satoshis. + Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size. + +Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis per kB" for a transaction size of 500 bytes (half of 1 kB) would ultimately yield a fee of only 50 satoshis. + + + per kilobyte + per kilobyte + + + Hide + Hide + + + Recommended: + Recommended: + + + Custom: + Custom: + + + (Smart fee not initialized yet. This usually takes a few blocks...) + (Smart fee not initialized yet. This usually takes a few blocks...) + + + Send to multiple recipients at once + Send to multiple recipients at once + + + Add &Recipient + Add &Recipient + + + Clear all fields of the form. + Clear all fields of the form. + + + Dust: + Dust: + + + Hide transaction fee settings + Hide transaction fee settings + + + When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process. + When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process. + + + A too low fee might result in a never confirming transaction (read the tooltip) + A too low fee might result in a never confirming transaction (read the tooltip) + + + Confirmation time target: + Confirmation time target: + + + Enable Replace-By-Fee + Enable Replace-By-Fee + + + With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk. + With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk. + + + Clear &All + Clear &All + + + Balance: + Balance: + + + Confirm the send action + Confirm the send action + + + S&end + S&end + + + Copy quantity + Copy quantity + + + Copy amount + Copy amount + + + Copy fee + Copy fee + + + Copy after fee + Copy after fee + + + Copy bytes + Copy bytes + + + Copy dust + Copy dust + + + Copy change + Copy change + + + %1 (%2 blocks) + %1 (%2 blocks) + + + Cr&eate Unsigned + Cr&eate Unsigned + + + Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + + + from wallet '%1' + from wallet '%1' + + + %1 to '%2' + %1 to '%2' + + + %1 to %2 + %1 to %2 + + + Do you want to draft this transaction? + Do you want to draft this transaction? + + + Are you sure you want to send? + Are you sure you want to send? + + + Create Unsigned + Create Unsigned + + + Save Transaction Data + Save Transaction Data + + + Partially Signed Transaction (Binary) (*.psbt) + Partially Signed Transaction (Binary) (*.psbt) + + + PSBT saved + PSBT saved + + + or + or + + + You can increase the fee later (signals Replace-By-Fee, BIP-125). + You can increase the fee later (signals Replace-By-Fee, BIP-125). + + + Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + + + Please, review your transaction. + Please, review your transaction. + + + Transaction fee + Transaction fee + + + Not signalling Replace-By-Fee, BIP-125. + Not signalling Replace-By-Fee, BIP-125. + + + Total Amount + Total Amount + + + To review recipient list click "Show Details..." + To review recipient list click "Show Details..." + + + Confirm send coins + Confirm send coins + + + Confirm transaction proposal + Confirm transaction proposal + + + Send + Send + + + Watch-only balance: + Watch-only balance: + + + The recipient address is not valid. Please recheck. + The recipient address is not valid. Please recheck. + + + The amount to pay must be larger than 0. + The amount to pay must be larger than 0. + + + The amount exceeds your balance. + The amount exceeds your balance. + + + The total exceeds your balance when the %1 transaction fee is included. + The total exceeds your balance when the %1 transaction fee is included. + + + Duplicate address found: addresses should only be used once each. + Duplicate address found: addresses should only be used once each. + + + Transaction creation failed! + Transaction creation failed! + + + A fee higher than %1 is considered an absurdly high fee. + A fee higher than %1 is considered an absurdly high fee. + + + Payment request expired. + Payment request expired. + + + Estimated to begin confirmation within %n block(s). + Estimated to begin confirmation within %n block.Estimated to begin confirmation within %n blocks. + + + Warning: Invalid Bitcoin address + Warning: Invalid Bitcoin address + + + Warning: Unknown change address + Warning: Unknown change address + + + Confirm custom change address + Confirm custom change address + + + The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure? + The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure? + + + (no label) + (no label) + + SendCoinsEntry - + + A&mount: + A&mount: + + + Pay &To: + Pay &To: + + + &Label: + &Label: + + + Choose previously used address + Choose previously used address + + + The Bitcoin address to send the payment to + The Bitcoin address to send the payment to + + + Alt+A + Alt+A + + + Paste address from clipboard + Paste address from clipboard + + + Alt+P + Alt+P + + + Remove this entry + Remove this entry + + + The amount to send in the selected unit + The amount to send in the selected unit + + + The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. + The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. + + + S&ubtract fee from amount + S&ubtract fee from amount + + + Use available balance + Use available balance + + + Message: + Message: + + + This is an unauthenticated payment request. + This is an unauthenticated payment request. + + + This is an authenticated payment request. + This is an authenticated payment request. + + + Enter a label for this address to add it to the list of used addresses + Enter a label for this address to add it to the list of used addresses + + + A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. + A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. + + + Pay To: + Pay To: + + + Memo: + Memo: + + ShutdownWindow - + + %1 is shutting down... + %1 is shutting down... + + + Do not shut down the computer until this window disappears. + Do not shut down the computer until this window disappears. + + SignVerifyMessageDialog - + + Signatures - Sign / Verify a Message + Signatures - Sign / Verify a Message + + + &Sign Message + &Sign Message + + + You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. + You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. + + + The Bitcoin address to sign the message with + The Bitcoin address to sign the message with + + + Choose previously used address + Choose previously used address + + + Alt+A + Alt+A + + + Paste address from clipboard + Paste address from clipboard + + + Alt+P + Alt+P + + + Enter the message you want to sign here + Enter the message you want to sign here + + + Signature + Signature + + + Copy the current signature to the system clipboard + Copy the current signature to the system clipboard + + + Sign the message to prove you own this Bitcoin address + Sign the message to prove you own this Bitcoin address + + + Sign &Message + Sign &Message + + + Reset all sign message fields + Reset all sign message fields + + + Clear &All + Clear &All + + + &Verify Message + &Verify Message + + + Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! + Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! + + + The Bitcoin address the message was signed with + The Bitcoin address the message was signed with + + + The signed message to verify + The signed message to verify + + + The signature given when the message was signed + The signature given when the message was signed + + + Verify the message to ensure it was signed with the specified Bitcoin address + Verify the message to ensure it was signed with the specified Bitcoin address + + + Verify &Message + Verify &Message + + + Reset all verify message fields + Reset all verify message fields + + + Click "Sign Message" to generate signature + Click "Sign Message" to generate signature + + + The entered address is invalid. + The entered address is invalid. + + + Please check the address and try again. + Please check the address and try again. + + + The entered address does not refer to a key. + The entered address does not refer to a key. + + + Wallet unlock was cancelled. + Wallet unlock was cancelled. + + + No error + No error + + + Private key for the entered address is not available. + Private key for the entered address is not available. + + + Message signing failed. + Message signing failed. + + + Message signed. + Message signed. + + + The signature could not be decoded. + The signature could not be decoded. + + + Please check the signature and try again. + Please check the signature and try again. + + + The signature did not match the message digest. + The signature did not match the message digest. + + + Message verification failed. + Message verification failed. + + + Message verified. + Message verified. + + TrafficGraphWidget - + + KB/s + KB/s + + TransactionDesc - + + Open for %n more block(s) + Open for %n more blockOpen for %n more blocks + + + Open until %1 + Open until %1 + + + conflicted with a transaction with %1 confirmations + conflicted with a transaction with %1 confirmations + + + 0/unconfirmed, %1 + 0/unconfirmed, %1 + + + in memory pool + in memory pool + + + not in memory pool + not in memory pool + + + abandoned + abandoned + + + %1/unconfirmed + %1/unconfirmed + + + %1 confirmations + %1 confirmations + + + Status + Status + + + Date + Date + + + Source + Source + + + Generated + Generated + + + From + From + + + unknown + unknown + + + To + To + + + own address + own address + + + watch-only + watch-only + + + label + label + + + Credit + Credit + + + matures in %n more block(s) + matures in %n more blockmatures in %n more blocks + + + not accepted + not accepted + + + Debit + Debit + + + Total debit + Total debit + + + Total credit + Total credit + + + Transaction fee + Transaction fee + + + Net amount + Net amount + + + Message + Message + + + Comment + Comment + + + Transaction ID + Transaction ID + + + Transaction total size + Transaction total size + + + Transaction virtual size + Transaction virtual size + + + Output index + Output index + + + (Certificate was not verified) + (Certificate was not verified) + + + Merchant + Merchant + + + Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. + Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. + + + Debug information + Debug information + + + Transaction + Transaction + + + Inputs + Inputs + + + Amount + Amount + + + true + true + + + false + false + + TransactionDescDialog - + + This pane shows a detailed description of the transaction + This pane shows a detailed description of the transaction + + + Details for %1 + Details for %1 + + TransactionTableModel - Label - Ilebuli + Date + Date - + + Type + Type + + + Label + Label + + + Open for %n more block(s) + Open for %n more blockOpen for %n more blocks + + + Open until %1 + Open until %1 + + + Unconfirmed + Unconfirmed + + + Abandoned + Abandoned + + + Confirming (%1 of %2 recommended confirmations) + Confirming (%1 of %2 recommended confirmations) + + + Confirmed (%1 confirmations) + Confirmed (%1 confirmations) + + + Conflicted + Conflicted + + + Immature (%1 confirmations, will be available after %2) + Immature (%1 confirmations, will be available after %2) + + + Generated but not accepted + Generated but not accepted + + + Received with + Received with + + + Received from + Received from + + + Sent to + Sent to + + + Payment to yourself + Payment to yourself + + + Mined + Mined + + + watch-only + watch-only + + + (n/a) + (n/a) + + + (no label) + (no label) + + + Transaction status. Hover over this field to show number of confirmations. + Transaction status. Hover over this field to show number of confirmations. + + + Date and time that the transaction was received. + Date and time that the transaction was received. + + + Type of transaction. + Type of transaction. + + + Whether or not a watch-only address is involved in this transaction. + Whether or not a watch-only address is involved in this transaction. + + + User-defined intent/purpose of the transaction. + User-defined intent/purpose of the transaction. + + + Amount removed from or added to balance. + Amount removed from or added to balance. + + TransactionView + + All + All + + + Today + Today + + + This week + This week + + + This month + This month + + + Last month + Last month + + + This year + This year + + + Range... + Range... + + + Received with + Received with + + + Sent to + Sent to + + + To yourself + To yourself + + + Mined + Mined + + + Other + Other + + + Enter address, transaction id, or label to search + Enter address, transaction id, or label to search + + + Min amount + Min amount + + + Abandon transaction + Abandon transaction + + + Increase transaction fee + Increase transaction fee + + + Copy address + Copy address + + + Copy label + Copy label + + + Copy amount + Copy amount + + + Copy transaction ID + Copy transaction ID + + + Copy raw transaction + Copy raw transaction + + + Copy full transaction details + Copy full transaction details + + + Edit label + Edit label + + + Show transaction details + Show transaction details + + + Export Transaction History + Export Transaction History + Comma separated file (*.csv) - Ifayela elihlukaniswe ngokhefana (* .csv) + Comma separated file (*.csv) + + + Confirmed + Confirmed + + + Watch-only + Watch-only + + + Date + Date + + + Type + Type Label - Ilebuli + Label Address - Ikheli + Address + + + ID + ID Exporting Failed - Ukuthekelisa kwehlulekile + Exporting Failed - + + There was an error trying to save the transaction history to %1. + There was an error trying to save the transaction history to %1. + + + Exporting Successful + Exporting Successful + + + The transaction history was successfully saved to %1. + The transaction history was successfully saved to %1. + + + Range: + Range: + + + to + to + + UnitDisplayStatusBarControl - + + Unit to show amounts in. Click to select another unit. + Unit to show amounts in. Click to select another unit. + + WalletController - + + Close wallet + Close wallet + + + Are you sure you wish to close the wallet <i>%1</i>? + Are you sure you wish to close the wallet <i>%1</i>? + + + Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. + Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. + + + Close all wallets + Close all wallets + + + Are you sure you wish to close all wallets? + Are you sure you wish to close all wallets? + + WalletFrame - + + No wallet has been loaded. +Go to File > Open Wallet to load a wallet. +- OR - + No wallet has been loaded. +Go to File > Open Wallet to load a wallet. +- OR - + + + Create a new wallet + Create a new wallet + + WalletModel - + + Send Coins + Send Coins + + + Fee bump error + Fee bump error + + + Increasing transaction fee failed + Increasing transaction fee failed + + + Do you want to increase the fee? + Do you want to increase the fee? + + + Do you want to draft a transaction with fee increase? + Do you want to draft a transaction with fee increase? + + + Current fee: + Current fee: + + + Increase: + Increase: + + + New fee: + New fee: + + + Confirm fee bump + Confirm fee bump + + + Can't draft transaction. + Can't draft transaction. + + + PSBT copied + PSBT copied + + + Can't sign transaction. + Can't sign transaction. + + + Could not commit transaction + Could not commit transaction + + + default wallet + default wallet + + WalletView - Export the data in the current tab to a file - Khipha idatha kuthebhu yamanje kufayela + &Export + &Export - + + Export the data in the current tab to a file + Export the data in the current tab to a file + + + Error + Error + + + Unable to decode PSBT from clipboard (invalid base64) + Unable to decode PSBT from clipboard (invalid base64) + + + Load Transaction Data + Load Transaction Data + + + Partially Signed Transaction (*.psbt) + Partially Signed Transaction (*.psbt) + + + PSBT file must be smaller than 100 MiB + PSBT file must be smaller than 100 MiB + + + Unable to decode PSBT + Unable to decode PSBT + + + Backup Wallet + Backup Wallet + + + Wallet Data (*.dat) + Wallet Data (*.dat) + + + Backup Failed + Backup Failed + + + There was an error trying to save the wallet data to %1. + There was an error trying to save the wallet data to %1. + + + Backup Successful + Backup Successful + + + The wallet data was successfully saved to %1. + The wallet data was successfully saved to %1. + + + Cancel + Cancel + + bitcoin-core - + + Distributed under the MIT software license, see the accompanying file %s or %s + Distributed under the MIT software license, see the accompanying file %s or %s + + + Prune configured below the minimum of %d MiB. Please use a higher number. + Prune configured below the minimum of %d MiB. Please use a higher number. + + + Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) + Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) + + + Pruning blockstore... + Pruning blockstore... + + + Unable to start HTTP server. See debug log for details. + Unable to start HTTP server. See debug log for details. + + + The %s developers + The %s developers + + + Cannot obtain a lock on data directory %s. %s is probably already running. + Cannot obtain a lock on data directory %s. %s is probably already running. + + + Cannot provide specific connections and have addrman find outgoing connections at the same. + Cannot provide specific connections and have addrman find outgoing connections at the same. + + + Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. + Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. + + + More than one onion bind address is provided. Using %s for the automatically created Tor onion service. + More than one onion bind address is provided. Using %s for the automatically created Tor onion service. + + + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. + + + Please contribute if you find %s useful. Visit %s for further information about the software. + Please contribute if you find %s useful. Visit %s for further information about the software. + + + SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s + SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s + + + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + + + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported + + + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct + + + This is a pre-release test build - use at your own risk - do not use for mining or merchant applications + This is a pre-release test build - use at your own risk - do not use for mining or merchant applications + + + This is the transaction fee you may discard if change is smaller than dust at this level + This is the transaction fee you may discard if change is smaller than dust at this level + + + Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. + Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. + + + Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain + Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain + + + Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. + Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. + + + Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. + Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. + + + -maxmempool must be at least %d MB + -maxmempool must be at least %d MB + + + Cannot resolve -%s address: '%s' + Cannot resolve -%s address: '%s' + + + Change index out of range + Change index out of range + + + Config setting for %s only applied on %s network when in [%s] section. + Config setting for %s only applied on %s network when in [%s] section. + + + Copyright (C) %i-%i + Copyright (C) %i-%i + + + Corrupted block database detected + Corrupted block database detected + + + Could not find asmap file %s + Could not find asmap file %s + + + Could not parse asmap file %s + Could not parse asmap file %s + + + Do you want to rebuild the block database now? + Do you want to rebuild the block database now? + + + Error initializing block database + Error initializing block database + + + Error initializing wallet database environment %s! + Error initializing wallet database environment %s! + + + Error loading %s + Error loading %s + + + Error loading %s: Private keys can only be disabled during creation + Error loading %s: Private keys can only be disabled during creation + + + Error loading %s: Wallet corrupted + Error loading %s: Wallet corrupted + + + Error loading %s: Wallet requires newer version of %s + Error loading %s: Wallet requires newer version of %s + + + Error loading block database + Error loading block database + + + Error opening block database + Error opening block database + + + Failed to listen on any port. Use -listen=0 if you want this. + Failed to listen on any port. Use -listen=0 if you want this. + + + Failed to rescan the wallet during initialization + Failed to rescan the wallet during initialization + + + Failed to verify database + Failed to verify database + + + Ignoring duplicate -wallet %s. + Ignoring duplicate -wallet %s. + + + Importing... + Importing... + + + Incorrect or no genesis block found. Wrong datadir for network? + Incorrect or no genesis block found. Wrong datadir for network? + + + Initialization sanity check failed. %s is shutting down. + Initialization sanity check failed. %s is shutting down. + + + Invalid P2P permission: '%s' + Invalid P2P permission: '%s' + + + Invalid amount for -%s=<amount>: '%s' + Invalid amount for -%s=<amount>: '%s' + + + Invalid amount for -discardfee=<amount>: '%s' + Invalid amount for -discardfee=<amount>: '%s' + + + Invalid amount for -fallbackfee=<amount>: '%s' + Invalid amount for -fallbackfee=<amount>: '%s' + + + SQLiteDatabase: Failed to execute statement to verify database: %s + SQLiteDatabase: Failed to execute statement to verify database: %s + + + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s + + + SQLiteDatabase: Failed to fetch the application id: %s + SQLiteDatabase: Failed to fetch the application id: %s + + + SQLiteDatabase: Failed to prepare statement to verify database: %s + SQLiteDatabase: Failed to prepare statement to verify database: %s + + + SQLiteDatabase: Failed to read database verification error: %s + SQLiteDatabase: Failed to read database verification error: %s + + + SQLiteDatabase: Unexpected application id. Expected %u, got %u + SQLiteDatabase: Unexpected application id. Expected %u, got %u + + + Specified blocks directory "%s" does not exist. + Specified blocks directory "%s" does not exist. + + + Unknown address type '%s' + Unknown address type '%s' + + + Unknown change type '%s' + Unknown change type '%s' + + + Upgrading txindex database + Upgrading txindex database + + + Loading P2P addresses... + Loading P2P addresses... + + + Loading banlist... + Loading banlist... + + + Not enough file descriptors available. + Not enough file descriptors available. + + + Prune cannot be configured with a negative value. + Prune cannot be configured with a negative value. + + + Prune mode is incompatible with -txindex. + Prune mode is incompatible with -txindex. + + + Replaying blocks... + Replaying blocks... + + + Rewinding blocks... + Rewinding blocks... + + + The source code is available from %s. + The source code is available from %s. + + + Transaction fee and change calculation failed + Transaction fee and change calculation failed + + + Unable to bind to %s on this computer. %s is probably already running. + Unable to bind to %s on this computer. %s is probably already running. + + + Unable to generate keys + Unable to generate keys + + + Unsupported logging category %s=%s. + Unsupported logging category %s=%s. + + + Upgrading UTXO database + Upgrading UTXO database + + + User Agent comment (%s) contains unsafe characters. + User Agent comment (%s) contains unsafe characters. + + + Verifying blocks... + Verifying blocks... + + + Wallet needed to be rewritten: restart %s to complete + Wallet needed to be rewritten: restart %s to complete + + + Error: Listening for incoming connections failed (listen returned error %s) + Error: Listening for incoming connections failed (listen returned error %s) + + + %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. + %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. + + + Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. + Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. + + + Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) + Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) + + + The transaction amount is too small to send after the fee has been deducted + The transaction amount is too small to send after the fee has been deducted + + + This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet + This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet + + + This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. + This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. + + + Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. + Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. + + + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain + + + A fatal internal error occurred, see debug.log for details + A fatal internal error occurred, see debug.log for details + + + Cannot set -peerblockfilters without -blockfilterindex. + Cannot set -peerblockfilters without -blockfilterindex. + + + Disk space is too low! + Disk space is too low! + + + Error reading from database, shutting down. + Error reading from database, shutting down. + + + Error upgrading chainstate database + Error upgrading chainstate database + + + Error: Disk space is low for %s + Error: Disk space is low for %s + + + Error: Keypool ran out, please call keypoolrefill first + Error: Keypool ran out, please call keypoolrefill first + + + Fee rate (%s) is lower than the minimum fee rate setting (%s) + Fee rate (%s) is lower than the minimum fee rate setting (%s) + + + Invalid -onion address or hostname: '%s' + Invalid -onion address or hostname: '%s' + + + Invalid -proxy address or hostname: '%s' + Invalid -proxy address or hostname: '%s' + + + Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) + Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) + + + Invalid netmask specified in -whitelist: '%s' + Invalid netmask specified in -whitelist: '%s' + + + Need to specify a port with -whitebind: '%s' + Need to specify a port with -whitebind: '%s' + + + No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. + No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. + + + Prune mode is incompatible with -blockfilterindex. + Prune mode is incompatible with -blockfilterindex. + + + Reducing -maxconnections from %d to %d, because of system limitations. + Reducing -maxconnections from %d to %d, because of system limitations. + + + Section [%s] is not recognized. + Section [%s] is not recognized. + + + Signing transaction failed + Signing transaction failed + + + Specified -walletdir "%s" does not exist + Specified -walletdir "%s" does not exist + + + Specified -walletdir "%s" is a relative path + Specified -walletdir "%s" is a relative path + + + Specified -walletdir "%s" is not a directory + Specified -walletdir "%s" is not a directory + + + The specified config file %s does not exist + + The specified config file %s does not exist + + + + The transaction amount is too small to pay the fee + The transaction amount is too small to pay the fee + + + This is experimental software. + This is experimental software. + + + Transaction amount too small + Transaction amount too small + + + Transaction too large + Transaction too large + + + Unable to bind to %s on this computer (bind returned error %s) + Unable to bind to %s on this computer (bind returned error %s) + + + Unable to create the PID file '%s': %s + Unable to create the PID file '%s': %s + + + Unable to generate initial keys + Unable to generate initial keys + + + Unknown -blockfilterindex value %s. + Unknown -blockfilterindex value %s. + + + Verifying wallet(s)... + Verifying wallet(s)... + + + Warning: unknown new rules activated (versionbit %i) + Warning: unknown new rules activated (versionbit %i) + + + -maxtxfee is set very high! Fees this large could be paid on a single transaction. + -maxtxfee is set very high! Fees this large could be paid on a single transaction. + + + This is the transaction fee you may pay when fee estimates are not available. + This is the transaction fee you may pay when fee estimates are not available. + + + Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments. + Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments. + + + %s is set very high! + %s is set very high! + + + Starting network threads... + Starting network threads... + + + The wallet will avoid paying less than the minimum relay fee. + The wallet will avoid paying less than the minimum relay fee. + + + This is the minimum transaction fee you pay on every transaction. + This is the minimum transaction fee you pay on every transaction. + + + This is the transaction fee you will pay if you send a transaction. + This is the transaction fee you will pay if you send a transaction. + + + Transaction amounts must not be negative + Transaction amounts must not be negative + + + Transaction has too long of a mempool chain + Transaction has too long of a mempool chain + + + Transaction must have at least one recipient + Transaction must have at least one recipient + + + Unknown network specified in -onlynet: '%s' + Unknown network specified in -onlynet: '%s' + + + Insufficient funds + Insufficient funds + + + Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable -fallbackfee. + Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable -fallbackfee. + + + Warning: Private keys detected in wallet {%s} with disabled private keys + Warning: Private keys detected in wallet {%s} with disabled private keys + + + Cannot write to data directory '%s'; check permissions. + Cannot write to data directory '%s'; check permissions. + + + Loading block index... + Loading block index... + + + Loading wallet... + Loading wallet... + + + Cannot downgrade wallet + Cannot downgrade wallet + + + Rescanning... + Rescanning... + + + Done loading + Done loading + + \ No newline at end of file From e85dfdbf3101a5b128e879f548639e8bc4d791ea Mon Sep 17 00:00:00 2001 From: "W. J. van der Laan" Date: Fri, 16 Apr 2021 13:23:58 +0200 Subject: [PATCH 059/102] build: Bump version to 0.21.1rc1 --- build_msvc/bitcoin_config.h | 6 +++--- configure.ac | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/build_msvc/bitcoin_config.h b/build_msvc/bitcoin_config.h index 60661f121..01c552862 100644 --- a/build_msvc/bitcoin_config.h +++ b/build_msvc/bitcoin_config.h @@ -21,7 +21,7 @@ #define CLIENT_VERSION_MINOR 21 /* Build revision */ -#define CLIENT_VERSION_REVISION 0 +#define CLIENT_VERSION_REVISION 1 /* Copyright holder(s) before %s replacement */ #define COPYRIGHT_HOLDERS "The %s developers" @@ -253,7 +253,7 @@ #define PACKAGE_NAME "Bitcoin Core" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "Bitcoin Core 0.21.0" +#define PACKAGE_STRING "Bitcoin Core 0.21.1" /* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "bitcoin" @@ -262,7 +262,7 @@ #define PACKAGE_URL "https://bitcoincore.org/" /* Define to the version of this package. */ -#define PACKAGE_VERSION "0.21.0" +#define PACKAGE_VERSION "0.21.1" /* Define to necessary symbol if this constant uses a non-standard name on your system. */ diff --git a/configure.ac b/configure.ac index 86e57e5d4..e238c8bd6 100644 --- a/configure.ac +++ b/configure.ac @@ -1,9 +1,9 @@ AC_PREREQ([2.69]) define(_CLIENT_VERSION_MAJOR, 0) define(_CLIENT_VERSION_MINOR, 21) -define(_CLIENT_VERSION_REVISION, 0) +define(_CLIENT_VERSION_REVISION, 1) define(_CLIENT_VERSION_BUILD, 0) -define(_CLIENT_VERSION_RC, 0) +define(_CLIENT_VERSION_RC, 1) define(_CLIENT_VERSION_IS_RELEASE, true) define(_COPYRIGHT_YEAR, 2020) define(_COPYRIGHT_HOLDERS,[The %s developers]) From 329eafa7f4536524a569a9a14c7ca7fc02fad539 Mon Sep 17 00:00:00 2001 From: "W. J. van der Laan" Date: Fri, 16 Apr 2021 13:41:27 +0200 Subject: [PATCH 060/102] doc: Regenerate manual pages for 0.21.1rc1 Tree-SHA512: cc9cd502dc40d89f34b1b043e96df180f0e16ba7c6e039866b349d19aff582d1c4b4ab8e8960b4f427d72ad5f97c7c1e8fec3f2e008a0107dea33a2c8f13febc --- doc/man/bitcoin-cli.1 | 6 +++--- doc/man/bitcoin-qt.1 | 6 +++--- doc/man/bitcoin-tx.1 | 6 +++--- doc/man/bitcoin-wallet.1 | 6 +++--- doc/man/bitcoind.1 | 6 +++--- 5 files changed, 15 insertions(+), 15 deletions(-) diff --git a/doc/man/bitcoin-cli.1 b/doc/man/bitcoin-cli.1 index 50ef3ef96..4d21ecbab 100644 --- a/doc/man/bitcoin-cli.1 +++ b/doc/man/bitcoin-cli.1 @@ -1,7 +1,7 @@ .\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.13. -.TH BITCOIN-CLI "1" "January 2021" "bitcoin-cli v0.21.0.0" "User Commands" +.TH BITCOIN-CLI "1" "April 2021" "bitcoin-cli v0.21.1.0" "User Commands" .SH NAME -bitcoin-cli \- manual page for bitcoin-cli v0.21.0.0 +bitcoin-cli \- manual page for bitcoin-cli v0.21.1.0 .SH SYNOPSIS .B bitcoin-cli [\fI\,options\/\fR] \fI\, \/\fR[\fI\,params\/\fR] \fI\,Send command to Bitcoin Core\/\fR @@ -15,7 +15,7 @@ bitcoin-cli \- manual page for bitcoin-cli v0.21.0.0 .B bitcoin-cli [\fI\,options\/\fR] \fI\,help Get help for a command\/\fR .SH DESCRIPTION -Bitcoin Core RPC client version v0.21.0.0 +Bitcoin Core RPC client version v0.21.1.0 .SH OPTIONS .HP \-? diff --git a/doc/man/bitcoin-qt.1 b/doc/man/bitcoin-qt.1 index 9141b9399..cd152cebb 100644 --- a/doc/man/bitcoin-qt.1 +++ b/doc/man/bitcoin-qt.1 @@ -1,12 +1,12 @@ .\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.13. -.TH BITCOIN-QT "1" "January 2021" "bitcoin-qt v0.21.0.0" "User Commands" +.TH BITCOIN-QT "1" "April 2021" "bitcoin-qt v0.21.1.0" "User Commands" .SH NAME -bitcoin-qt \- manual page for bitcoin-qt v0.21.0.0 +bitcoin-qt \- manual page for bitcoin-qt v0.21.1.0 .SH SYNOPSIS .B bitcoin-qt [\fI\,command-line options\/\fR] .SH DESCRIPTION -Bitcoin Core version v0.21.0.0 +Bitcoin Core version v0.21.1.0 .SH OPTIONS .HP \-? diff --git a/doc/man/bitcoin-tx.1 b/doc/man/bitcoin-tx.1 index cf1dbd675..bfbbbbc9f 100644 --- a/doc/man/bitcoin-tx.1 +++ b/doc/man/bitcoin-tx.1 @@ -1,7 +1,7 @@ .\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.13. -.TH BITCOIN-TX "1" "January 2021" "bitcoin-tx v0.21.0.0" "User Commands" +.TH BITCOIN-TX "1" "April 2021" "bitcoin-tx v0.21.1.0" "User Commands" .SH NAME -bitcoin-tx \- manual page for bitcoin-tx v0.21.0.0 +bitcoin-tx \- manual page for bitcoin-tx v0.21.1.0 .SH SYNOPSIS .B bitcoin-tx [\fI\,options\/\fR] \fI\, \/\fR[\fI\,commands\/\fR] \fI\,Update hex-encoded bitcoin transaction\/\fR @@ -9,7 +9,7 @@ bitcoin-tx \- manual page for bitcoin-tx v0.21.0.0 .B bitcoin-tx [\fI\,options\/\fR] \fI\,-create \/\fR[\fI\,commands\/\fR] \fI\,Create hex-encoded bitcoin transaction\/\fR .SH DESCRIPTION -Bitcoin Core bitcoin\-tx utility version v0.21.0.0 +Bitcoin Core bitcoin\-tx utility version v0.21.1.0 .SH OPTIONS .HP \-? diff --git a/doc/man/bitcoin-wallet.1 b/doc/man/bitcoin-wallet.1 index 84c596c12..d521acd41 100644 --- a/doc/man/bitcoin-wallet.1 +++ b/doc/man/bitcoin-wallet.1 @@ -1,9 +1,9 @@ .\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.13. -.TH BITCOIN-WALLET "1" "January 2021" "bitcoin-wallet v0.21.0.0" "User Commands" +.TH BITCOIN-WALLET "1" "April 2021" "bitcoin-wallet v0.21.1.0" "User Commands" .SH NAME -bitcoin-wallet \- manual page for bitcoin-wallet v0.21.0.0 +bitcoin-wallet \- manual page for bitcoin-wallet v0.21.1.0 .SH DESCRIPTION -Bitcoin Core bitcoin\-wallet version v0.21.0.0 +Bitcoin Core bitcoin\-wallet version v0.21.1.0 .PP bitcoin\-wallet is an offline tool for creating and interacting with Bitcoin Core wallet files. By default bitcoin\-wallet will act on wallets in the default mainnet wallet directory in the datadir. diff --git a/doc/man/bitcoind.1 b/doc/man/bitcoind.1 index c4a7b30b1..a6a5d763d 100644 --- a/doc/man/bitcoind.1 +++ b/doc/man/bitcoind.1 @@ -1,12 +1,12 @@ .\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.13. -.TH BITCOIND "1" "January 2021" "bitcoind v0.21.0.0" "User Commands" +.TH BITCOIND "1" "April 2021" "bitcoind v0.21.1.0" "User Commands" .SH NAME -bitcoind \- manual page for bitcoind v0.21.0.0 +bitcoind \- manual page for bitcoind v0.21.1.0 .SH SYNOPSIS .B bitcoind [\fI\,options\/\fR] \fI\,Start Bitcoin Core\/\fR .SH DESCRIPTION -Bitcoin Core version v0.21.0.0 +Bitcoin Core version v0.21.1.0 .SH OPTIONS .HP \-? From 5577e0a4867c76f4d5b4c6ffad750a05017bd745 Mon Sep 17 00:00:00 2001 From: "W. J. van der Laan" Date: Mon, 19 Apr 2021 05:58:03 +0200 Subject: [PATCH 061/102] doc: Add PR and author list to release notes for 0.21.1 Tree-SHA512: c74b12dee645bd8d3dcff8d572a82369ea0895339d0d12e5360182421fa8cef4d3eba309ff7668e97dc24cd6afc800ab9ceb4eca5458085acf12c368f6c2f859 --- doc/release-notes.md | 52 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/doc/release-notes.md b/doc/release-notes.md index 6abb67150..3dc18e0a7 100644 --- a/doc/release-notes.md +++ b/doc/release-notes.md @@ -51,12 +51,64 @@ RPC 0.21.1 change log ================= +### Consensus +- #21377 Speedy trial support for versionbits (ajtowns) +- #21686 Speedy trial activation parameters for Taproot (achow101) + +### P2P protocol and network code +- #20852 allow CSubNet of non-IP networks (vasild) +- #21043 Avoid UBSan warning in ProcessMessage(…) (practicalswift) + +### Wallet +- #21166 Introduce DeferredSignatureChecker and have SignatureExtractorClass subclass it (achow101) +- #21083 Avoid requesting fee rates multiple times during coin selection (achow101) + +### RPC and other APIs +- #21201 Disallow sendtoaddress and sendmany when private keys disabled (achow101) + +### Build system +- #21486 link against -lsocket if required for `*ifaddrs` (fanquake) +- #20983 Fix MSVC build after gui#176 (hebasto) + +### Tests and QA +- #21380 Add fuzzing harness for versionbits (ajtowns) +- #20812 fuzz: Bump FuzzedDataProvider.h (MarcoFalke) +- #20740 fuzz: Update FuzzedDataProvider.h from upstream (LLVM) (practicalswift) +- #21446 Update vcpkg checkout commit (sipsorcery) +- #21397 fuzz: Bump FuzzedDataProvider.h (MarcoFalke) +- #21081 Fix the unreachable code at `feature_taproot` (brunoerg) +- #20562 Test that a fully signed tx given to signrawtx is unchanged (achow101) +- #21571 Make sure non-IP peers get discouraged and disconnected (vasild, MarcoFalke) +- #21489 fuzz: cleanups for versionbits fuzzer (ajtowns) + +### Miscellaneous +- #20861 BIP 350: Implement Bech32m and use it for v1+ segwit addresses (sipa) + +### Documentation +- #21384 add signet to bitcoin.conf documentation (jonatack) +- #21342 Remove outdated comment (hebasto) Credits ======= Thanks to everyone who directly contributed to this release: +- Aaron Clauson +- Andrew Chow +- Anthony Towns +- Bruno Garcia +- Fabian Jahr +- fanquake +- Hennadii Stepanov +- Jon Atack +- Luke Dashjr +- MarcoFalke +- Pieter Wuille +- practicalswift +- randymcmillan +- Sjors Provoost +- Vasil Dimov +- W. J. van der Laan As well as to everyone that helped with translations on [Transifex](https://www.transifex.com/bitcoin/bitcoin/). From d97d0d31a6f475a85fd792503a617ac584f38dfd Mon Sep 17 00:00:00 2001 From: "W. J. van der Laan" Date: Thu, 22 Apr 2021 22:10:07 +0200 Subject: [PATCH 062/102] doc: Merge release notes fragment, merge taproot description from wiki Co-authored-by: David A. Harding Co-authored-by: Jon Atack Co-authored-by: Pieter Wuille Tree-SHA512: dd9ac416ff22276833111198445d76cf8417012a6faad0c3560276f1dcf24586ff41c65ac3430fbf1e840aaa563d3dd101671cff306b0fd92aa2ee03bb7f926b --- doc/release-notes-20861.md | 13 ------ doc/release-notes.md | 93 +++++++++++++++++++++++++++++++++++++- 2 files changed, 91 insertions(+), 15 deletions(-) delete mode 100644 doc/release-notes-20861.md diff --git a/doc/release-notes-20861.md b/doc/release-notes-20861.md deleted file mode 100644 index 5c68e4ab0..000000000 --- a/doc/release-notes-20861.md +++ /dev/null @@ -1,13 +0,0 @@ -Updated RPCs ------------- - -- Due to [BIP 350](https://github.com/bitcoin/bips/blob/master/bip-0350.mediawiki) - being implemented, behavior for all RPCs that accept addresses is changed when - a native witness version 1 (or higher) is passed. These now require a Bech32m - encoding instead of a Bech32 one, and Bech32m encoding will be used for such - addresses in RPC output as well. No version 1 addresses should be created - for mainnet until consensus rules are adopted that give them meaning - (e.g. through [BIP 341](https://github.com/bitcoin/bips/blob/master/bip-0341.mediawiki)). - Once that happens, Bech32m is expected to be used for them, so this shouldn't - affect any production systems, but may be observed on other networks where such - addresses already have meaning (like signet). diff --git a/doc/release-notes.md b/doc/release-notes.md index 3dc18e0a7..d032fa842 100644 --- a/doc/release-notes.md +++ b/doc/release-notes.md @@ -44,9 +44,98 @@ when macOS "dark mode" is activated. Notable changes =============== -RPC ---- +## Taproot Soft Fork +Included in this release are the mainnet and testnet activation +parameters for the taproot soft fork (BIP341) which also adds support +for schnorr signatures (BIP340) and tapscript (BIP342). + +If activated, these improvements will allow users of single-signature +scripts, multisignature scripts, and complex contracts to all use +identical-appearing commitments that enhance their privacy and the +fungibility of all bitcoins. Spenders will enjoy lower fees and the +ability to resolve many multisig scripts and complex contracts with the +same efficiency, low fees, and large anonymity set as single-sig users. +Taproot and schnorr also include efficiency improvements for full nodes +such as the ability to batch signature verification. Together, the +improvements lay the groundwork for future potential +upgrades that may improve efficiency, privacy, and fungibility further. + +Activation for taproot is being managed using a variation of BIP9 +versionbits called Speedy Trial (described in BIP341). Taproot's +versionbit is bit 2, and nodes will begin tracking which blocks signal +support for taproot at the beginning of the first retarget period after +taproot’s start date of 24 April 2021. If 90% of blocks within a +2,016-block retarget period (about two weeks) signal support for taproot +prior to the first retarget period beginning after the time of 11 August +2021, the soft fork will be locked in, and taproot will then be active +as of block 709632 (expected in early or mid November). + +Should taproot not be locked in via Speedy Trial activation, it is +expected that a follow-up activation mechanism will be deployed, with +changes to address the reasons the Speedy Trial method failed. + +This release includes the ability to pay taproot addresses, although +payments to such addresses are not secure until taproot activates. +It also includes the ability to relay and mine taproot transactions +after activation. Beyond those two basic capabilities, this release +does not include any code that allows anyone to directly use taproot. +The addition of taproot-related features to Bitcoin Core's wallet is +expected in later releases once taproot activation is assured. + +All users, businesses, and miners are encouraged to upgrade to this +release (or a subsequent compatible release) unless they object to +activation of taproot. If taproot is locked in, then upgrading before +block 709632 is highly recommended to help enforce taproot's new rules +and to avoid the unlikely case of seeing falsely confirmed transactions. + +Miners who want to activate Taproot should preferably use this release +to control their signaling. The `getblocktemplate` RPC results will +automatically be updated to signal once the appropriate start has been +reached and continue signaling until the timeout occurs or taproot +activates. Alternatively, miners may manually start signaling on bit 2 +at any time; if taproot activates, they will need to ensure they update +their nodes before block 709632 or non-upgraded nodes could cause them to mine on +an invalid chain. See the [versionbits +FAQ](https://bitcoincore.org/en/2016/06/08/version-bits-miners-faq/) for +details. + + +For more information about taproot, please see the following resources: + +- Technical specifications + - [BIP340 Schnorr signatures for secp256k1](https://github.com/bitcoin/bips/blob/master/bip-0340.mediawiki) + - [BIP341 Taproot: SegWit version 1 spending rules](https://github.com/bitcoin/bips/blob/master/bip-0341.mediawiki) + - [BIP342 Validation of Taproot scripts](https://github.com/bitcoin/bips/blob/master/bip-0342.mediawiki) + +- Popular articles; + - [Taproot Is Coming: What It Is, and How It Will Benefit Bitcoin](https://bitcoinmagazine.com/technical/taproot-coming-what-it-and-how-it-will-benefit-bitcoin) + - [What do Schnorr Signatures Mean for Bitcoin?](https://academy.binance.com/en/articles/what-do-schnorr-signatures-mean-for-bitcoin) + - [The Schnorr Signature & Taproot Softfork Proposal](https://blog.bitmex.com/the-schnorr-signature-taproot-softfork-proposal/) + +- Development history overview + - [Taproot](https://bitcoinops.org/en/topics/taproot/) + - [Schnorr signatures](https://bitcoinops.org/en/topics/schnorr-signatures/) + - [Tapscript](https://bitcoinops.org/en/topics/tapscript/) + - [Soft fork activation](https://bitcoinops.org/en/topics/soft-fork-activation/) + +- Other + - [Questions and answers related to taproot](https://bitcoin.stackexchange.com/questions/tagged/taproot) + - [Taproot review](https://github.com/ajtowns/taproot-review) + +Updated RPCs +------------ + +- Due to [BIP 350](https://github.com/bitcoin/bips/blob/master/bip-0350.mediawiki) + being implemented, behavior for all RPCs that accept addresses is changed when + a native witness version 1 (or higher) is passed. These now require a Bech32m + encoding instead of a Bech32 one, and Bech32m encoding will be used for such + addresses in RPC output as well. No version 1 addresses should be created + for mainnet until consensus rules are adopted that give them meaning + (e.g. through [BIP 341](https://github.com/bitcoin/bips/blob/master/bip-0341.mediawiki)). + Once that happens, Bech32m is expected to be used for them, so this shouldn't + affect any production systems, but may be observed on other networks where such + addresses already have meaning (like signet). 0.21.1 change log ================= From 194b9b8792d9b0798fdb570b79fa51f1d1f5ebaf Mon Sep 17 00:00:00 2001 From: "W. J. van der Laan" Date: Thu, 29 Apr 2021 21:29:56 +0200 Subject: [PATCH 063/102] build: Bump RC to 0 (-final) Tree-SHA512: b63d8c2514fa34d4503da8a37fb42948e03610e06dae6aaef7ba3d2568efd3bb138e7510da569a49d83c2618fa697ba949d55880fc2884a75a87028259d7c544 --- configure.ac | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index e238c8bd6..6e13780e1 100644 --- a/configure.ac +++ b/configure.ac @@ -3,7 +3,7 @@ define(_CLIENT_VERSION_MAJOR, 0) define(_CLIENT_VERSION_MINOR, 21) define(_CLIENT_VERSION_REVISION, 1) define(_CLIENT_VERSION_BUILD, 0) -define(_CLIENT_VERSION_RC, 1) +define(_CLIENT_VERSION_RC, 0) define(_CLIENT_VERSION_IS_RELEASE, true) define(_COPYRIGHT_YEAR, 2020) define(_COPYRIGHT_HOLDERS,[The %s developers]) From 856de5bd5e4594d12c1d35704c49d0d086fc3d84 Mon Sep 17 00:00:00 2001 From: fdov Date: Mon, 12 Apr 2021 20:11:11 +0200 Subject: [PATCH 064/102] build,boost: update download url. - bintray is closing. - updated to jfrog.io. Github-Pull: #21662 Rebased-From: 36c10b9f4b181db6afa2f8cb7d4872b158768c16 --- depends/packages/boost.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/depends/packages/boost.mk b/depends/packages/boost.mk index d8bce108b..9bb203f11 100644 --- a/depends/packages/boost.mk +++ b/depends/packages/boost.mk @@ -1,6 +1,6 @@ package=boost $(package)_version=1_70_0 -$(package)_download_path=https://dl.bintray.com/boostorg/release/1.70.0/source/ +$(package)_download_path=https://boostorg.jfrog.io/artifactory/main/release/1.70.0/source/ $(package)_file_name=boost_$($(package)_version).tar.bz2 $(package)_sha256_hash=430ae8354789de4fd19ee52f3b1f739e1fba576f0aded0897c3c2bc00fb38778 $(package)_patches=unused_var_in_process.patch From 8584a4460d5219dd2423aeb3f1beecd3d5f15d19 Mon Sep 17 00:00:00 2001 From: "W. J. van der Laan" Date: Wed, 5 May 2021 16:13:47 +0200 Subject: [PATCH 065/102] doc: Archive and clean out release notes post-0.21.1 Tree-SHA512: 0ae93cb9dae1449318913a7a6f32c233aefddf77335dc1ad416e84beab39ab45cd863073ddc69a243bbb704951d99646f734717f71d9599a54592699f15d84ab --- doc/release-notes.md | 153 +--------------- doc/release-notes/release-notes-0.21.1.md | 203 ++++++++++++++++++++++ 2 files changed, 209 insertions(+), 147 deletions(-) create mode 100644 doc/release-notes/release-notes-0.21.1.md diff --git a/doc/release-notes.md b/doc/release-notes.md index d032fa842..8c9eed786 100644 --- a/doc/release-notes.md +++ b/doc/release-notes.md @@ -1,9 +1,9 @@ -0.21.1 Release Notes +0.21.x Release Notes ==================== -Bitcoin Core version 0.21.1 is now available from: +Bitcoin Core version 0.21.x is now available from: - + This minor release includes various bug fixes and performance improvements, as well as updated translations. @@ -44,160 +44,19 @@ when macOS "dark mode" is activated. Notable changes =============== -## Taproot Soft Fork - -Included in this release are the mainnet and testnet activation -parameters for the taproot soft fork (BIP341) which also adds support -for schnorr signatures (BIP340) and tapscript (BIP342). - -If activated, these improvements will allow users of single-signature -scripts, multisignature scripts, and complex contracts to all use -identical-appearing commitments that enhance their privacy and the -fungibility of all bitcoins. Spenders will enjoy lower fees and the -ability to resolve many multisig scripts and complex contracts with the -same efficiency, low fees, and large anonymity set as single-sig users. -Taproot and schnorr also include efficiency improvements for full nodes -such as the ability to batch signature verification. Together, the -improvements lay the groundwork for future potential -upgrades that may improve efficiency, privacy, and fungibility further. - -Activation for taproot is being managed using a variation of BIP9 -versionbits called Speedy Trial (described in BIP341). Taproot's -versionbit is bit 2, and nodes will begin tracking which blocks signal -support for taproot at the beginning of the first retarget period after -taproot’s start date of 24 April 2021. If 90% of blocks within a -2,016-block retarget period (about two weeks) signal support for taproot -prior to the first retarget period beginning after the time of 11 August -2021, the soft fork will be locked in, and taproot will then be active -as of block 709632 (expected in early or mid November). - -Should taproot not be locked in via Speedy Trial activation, it is -expected that a follow-up activation mechanism will be deployed, with -changes to address the reasons the Speedy Trial method failed. - -This release includes the ability to pay taproot addresses, although -payments to such addresses are not secure until taproot activates. -It also includes the ability to relay and mine taproot transactions -after activation. Beyond those two basic capabilities, this release -does not include any code that allows anyone to directly use taproot. -The addition of taproot-related features to Bitcoin Core's wallet is -expected in later releases once taproot activation is assured. - -All users, businesses, and miners are encouraged to upgrade to this -release (or a subsequent compatible release) unless they object to -activation of taproot. If taproot is locked in, then upgrading before -block 709632 is highly recommended to help enforce taproot's new rules -and to avoid the unlikely case of seeing falsely confirmed transactions. - -Miners who want to activate Taproot should preferably use this release -to control their signaling. The `getblocktemplate` RPC results will -automatically be updated to signal once the appropriate start has been -reached and continue signaling until the timeout occurs or taproot -activates. Alternatively, miners may manually start signaling on bit 2 -at any time; if taproot activates, they will need to ensure they update -their nodes before block 709632 or non-upgraded nodes could cause them to mine on -an invalid chain. See the [versionbits -FAQ](https://bitcoincore.org/en/2016/06/08/version-bits-miners-faq/) for -details. +RPC +--- -For more information about taproot, please see the following resources: - -- Technical specifications - - [BIP340 Schnorr signatures for secp256k1](https://github.com/bitcoin/bips/blob/master/bip-0340.mediawiki) - - [BIP341 Taproot: SegWit version 1 spending rules](https://github.com/bitcoin/bips/blob/master/bip-0341.mediawiki) - - [BIP342 Validation of Taproot scripts](https://github.com/bitcoin/bips/blob/master/bip-0342.mediawiki) - -- Popular articles; - - [Taproot Is Coming: What It Is, and How It Will Benefit Bitcoin](https://bitcoinmagazine.com/technical/taproot-coming-what-it-and-how-it-will-benefit-bitcoin) - - [What do Schnorr Signatures Mean for Bitcoin?](https://academy.binance.com/en/articles/what-do-schnorr-signatures-mean-for-bitcoin) - - [The Schnorr Signature & Taproot Softfork Proposal](https://blog.bitmex.com/the-schnorr-signature-taproot-softfork-proposal/) - -- Development history overview - - [Taproot](https://bitcoinops.org/en/topics/taproot/) - - [Schnorr signatures](https://bitcoinops.org/en/topics/schnorr-signatures/) - - [Tapscript](https://bitcoinops.org/en/topics/tapscript/) - - [Soft fork activation](https://bitcoinops.org/en/topics/soft-fork-activation/) - -- Other - - [Questions and answers related to taproot](https://bitcoin.stackexchange.com/questions/tagged/taproot) - - [Taproot review](https://github.com/ajtowns/taproot-review) - -Updated RPCs ------------- - -- Due to [BIP 350](https://github.com/bitcoin/bips/blob/master/bip-0350.mediawiki) - being implemented, behavior for all RPCs that accept addresses is changed when - a native witness version 1 (or higher) is passed. These now require a Bech32m - encoding instead of a Bech32 one, and Bech32m encoding will be used for such - addresses in RPC output as well. No version 1 addresses should be created - for mainnet until consensus rules are adopted that give them meaning - (e.g. through [BIP 341](https://github.com/bitcoin/bips/blob/master/bip-0341.mediawiki)). - Once that happens, Bech32m is expected to be used for them, so this shouldn't - affect any production systems, but may be observed on other networks where such - addresses already have meaning (like signet). - -0.21.1 change log +0.21.x change log ================= -### Consensus -- #21377 Speedy trial support for versionbits (ajtowns) -- #21686 Speedy trial activation parameters for Taproot (achow101) - -### P2P protocol and network code -- #20852 allow CSubNet of non-IP networks (vasild) -- #21043 Avoid UBSan warning in ProcessMessage(…) (practicalswift) - -### Wallet -- #21166 Introduce DeferredSignatureChecker and have SignatureExtractorClass subclass it (achow101) -- #21083 Avoid requesting fee rates multiple times during coin selection (achow101) - -### RPC and other APIs -- #21201 Disallow sendtoaddress and sendmany when private keys disabled (achow101) - -### Build system -- #21486 link against -lsocket if required for `*ifaddrs` (fanquake) -- #20983 Fix MSVC build after gui#176 (hebasto) - -### Tests and QA -- #21380 Add fuzzing harness for versionbits (ajtowns) -- #20812 fuzz: Bump FuzzedDataProvider.h (MarcoFalke) -- #20740 fuzz: Update FuzzedDataProvider.h from upstream (LLVM) (practicalswift) -- #21446 Update vcpkg checkout commit (sipsorcery) -- #21397 fuzz: Bump FuzzedDataProvider.h (MarcoFalke) -- #21081 Fix the unreachable code at `feature_taproot` (brunoerg) -- #20562 Test that a fully signed tx given to signrawtx is unchanged (achow101) -- #21571 Make sure non-IP peers get discouraged and disconnected (vasild, MarcoFalke) -- #21489 fuzz: cleanups for versionbits fuzzer (ajtowns) - -### Miscellaneous -- #20861 BIP 350: Implement Bech32m and use it for v1+ segwit addresses (sipa) - -### Documentation -- #21384 add signet to bitcoin.conf documentation (jonatack) -- #21342 Remove outdated comment (hebasto) Credits ======= Thanks to everyone who directly contributed to this release: -- Aaron Clauson -- Andrew Chow -- Anthony Towns -- Bruno Garcia -- Fabian Jahr -- fanquake -- Hennadii Stepanov -- Jon Atack -- Luke Dashjr -- MarcoFalke -- Pieter Wuille -- practicalswift -- randymcmillan -- Sjors Provoost -- Vasil Dimov -- W. J. van der Laan As well as to everyone that helped with translations on [Transifex](https://www.transifex.com/bitcoin/bitcoin/). diff --git a/doc/release-notes/release-notes-0.21.1.md b/doc/release-notes/release-notes-0.21.1.md new file mode 100644 index 000000000..d032fa842 --- /dev/null +++ b/doc/release-notes/release-notes-0.21.1.md @@ -0,0 +1,203 @@ +0.21.1 Release Notes +==================== + +Bitcoin Core version 0.21.1 is now available from: + + + +This minor release includes various bug fixes and performance +improvements, as well as updated translations. + +Please report bugs using the issue tracker at GitHub: + + + +To receive security and update notifications, please subscribe to: + + + +How to Upgrade +============== + +If you are running an older version, shut it down. Wait until it has completely +shut down (which might take a few minutes in some cases), then run the +installer (on Windows) or just copy over `/Applications/Bitcoin-Qt` (on Mac) +or `bitcoind`/`bitcoin-qt` (on Linux). + +Upgrading directly from a version of Bitcoin Core that has reached its EOL is +possible, but it might take some time if the data directory needs to be migrated. Old +wallet versions of Bitcoin Core are generally supported. + +Compatibility +============== + +Bitcoin Core is supported and extensively tested on operating systems +using the Linux kernel, macOS 10.12+, and Windows 7 and newer. Bitcoin +Core should also work on most other Unix-like systems but is not as +frequently tested on them. It is not recommended to use Bitcoin Core on +unsupported systems. + +From Bitcoin Core 0.20.0 onwards, macOS versions earlier than 10.12 are no +longer supported. Additionally, Bitcoin Core does not yet change appearance +when macOS "dark mode" is activated. + +Notable changes +=============== + +## Taproot Soft Fork + +Included in this release are the mainnet and testnet activation +parameters for the taproot soft fork (BIP341) which also adds support +for schnorr signatures (BIP340) and tapscript (BIP342). + +If activated, these improvements will allow users of single-signature +scripts, multisignature scripts, and complex contracts to all use +identical-appearing commitments that enhance their privacy and the +fungibility of all bitcoins. Spenders will enjoy lower fees and the +ability to resolve many multisig scripts and complex contracts with the +same efficiency, low fees, and large anonymity set as single-sig users. +Taproot and schnorr also include efficiency improvements for full nodes +such as the ability to batch signature verification. Together, the +improvements lay the groundwork for future potential +upgrades that may improve efficiency, privacy, and fungibility further. + +Activation for taproot is being managed using a variation of BIP9 +versionbits called Speedy Trial (described in BIP341). Taproot's +versionbit is bit 2, and nodes will begin tracking which blocks signal +support for taproot at the beginning of the first retarget period after +taproot’s start date of 24 April 2021. If 90% of blocks within a +2,016-block retarget period (about two weeks) signal support for taproot +prior to the first retarget period beginning after the time of 11 August +2021, the soft fork will be locked in, and taproot will then be active +as of block 709632 (expected in early or mid November). + +Should taproot not be locked in via Speedy Trial activation, it is +expected that a follow-up activation mechanism will be deployed, with +changes to address the reasons the Speedy Trial method failed. + +This release includes the ability to pay taproot addresses, although +payments to such addresses are not secure until taproot activates. +It also includes the ability to relay and mine taproot transactions +after activation. Beyond those two basic capabilities, this release +does not include any code that allows anyone to directly use taproot. +The addition of taproot-related features to Bitcoin Core's wallet is +expected in later releases once taproot activation is assured. + +All users, businesses, and miners are encouraged to upgrade to this +release (or a subsequent compatible release) unless they object to +activation of taproot. If taproot is locked in, then upgrading before +block 709632 is highly recommended to help enforce taproot's new rules +and to avoid the unlikely case of seeing falsely confirmed transactions. + +Miners who want to activate Taproot should preferably use this release +to control their signaling. The `getblocktemplate` RPC results will +automatically be updated to signal once the appropriate start has been +reached and continue signaling until the timeout occurs or taproot +activates. Alternatively, miners may manually start signaling on bit 2 +at any time; if taproot activates, they will need to ensure they update +their nodes before block 709632 or non-upgraded nodes could cause them to mine on +an invalid chain. See the [versionbits +FAQ](https://bitcoincore.org/en/2016/06/08/version-bits-miners-faq/) for +details. + + +For more information about taproot, please see the following resources: + +- Technical specifications + - [BIP340 Schnorr signatures for secp256k1](https://github.com/bitcoin/bips/blob/master/bip-0340.mediawiki) + - [BIP341 Taproot: SegWit version 1 spending rules](https://github.com/bitcoin/bips/blob/master/bip-0341.mediawiki) + - [BIP342 Validation of Taproot scripts](https://github.com/bitcoin/bips/blob/master/bip-0342.mediawiki) + +- Popular articles; + - [Taproot Is Coming: What It Is, and How It Will Benefit Bitcoin](https://bitcoinmagazine.com/technical/taproot-coming-what-it-and-how-it-will-benefit-bitcoin) + - [What do Schnorr Signatures Mean for Bitcoin?](https://academy.binance.com/en/articles/what-do-schnorr-signatures-mean-for-bitcoin) + - [The Schnorr Signature & Taproot Softfork Proposal](https://blog.bitmex.com/the-schnorr-signature-taproot-softfork-proposal/) + +- Development history overview + - [Taproot](https://bitcoinops.org/en/topics/taproot/) + - [Schnorr signatures](https://bitcoinops.org/en/topics/schnorr-signatures/) + - [Tapscript](https://bitcoinops.org/en/topics/tapscript/) + - [Soft fork activation](https://bitcoinops.org/en/topics/soft-fork-activation/) + +- Other + - [Questions and answers related to taproot](https://bitcoin.stackexchange.com/questions/tagged/taproot) + - [Taproot review](https://github.com/ajtowns/taproot-review) + +Updated RPCs +------------ + +- Due to [BIP 350](https://github.com/bitcoin/bips/blob/master/bip-0350.mediawiki) + being implemented, behavior for all RPCs that accept addresses is changed when + a native witness version 1 (or higher) is passed. These now require a Bech32m + encoding instead of a Bech32 one, and Bech32m encoding will be used for such + addresses in RPC output as well. No version 1 addresses should be created + for mainnet until consensus rules are adopted that give them meaning + (e.g. through [BIP 341](https://github.com/bitcoin/bips/blob/master/bip-0341.mediawiki)). + Once that happens, Bech32m is expected to be used for them, so this shouldn't + affect any production systems, but may be observed on other networks where such + addresses already have meaning (like signet). + +0.21.1 change log +================= + +### Consensus +- #21377 Speedy trial support for versionbits (ajtowns) +- #21686 Speedy trial activation parameters for Taproot (achow101) + +### P2P protocol and network code +- #20852 allow CSubNet of non-IP networks (vasild) +- #21043 Avoid UBSan warning in ProcessMessage(…) (practicalswift) + +### Wallet +- #21166 Introduce DeferredSignatureChecker and have SignatureExtractorClass subclass it (achow101) +- #21083 Avoid requesting fee rates multiple times during coin selection (achow101) + +### RPC and other APIs +- #21201 Disallow sendtoaddress and sendmany when private keys disabled (achow101) + +### Build system +- #21486 link against -lsocket if required for `*ifaddrs` (fanquake) +- #20983 Fix MSVC build after gui#176 (hebasto) + +### Tests and QA +- #21380 Add fuzzing harness for versionbits (ajtowns) +- #20812 fuzz: Bump FuzzedDataProvider.h (MarcoFalke) +- #20740 fuzz: Update FuzzedDataProvider.h from upstream (LLVM) (practicalswift) +- #21446 Update vcpkg checkout commit (sipsorcery) +- #21397 fuzz: Bump FuzzedDataProvider.h (MarcoFalke) +- #21081 Fix the unreachable code at `feature_taproot` (brunoerg) +- #20562 Test that a fully signed tx given to signrawtx is unchanged (achow101) +- #21571 Make sure non-IP peers get discouraged and disconnected (vasild, MarcoFalke) +- #21489 fuzz: cleanups for versionbits fuzzer (ajtowns) + +### Miscellaneous +- #20861 BIP 350: Implement Bech32m and use it for v1+ segwit addresses (sipa) + +### Documentation +- #21384 add signet to bitcoin.conf documentation (jonatack) +- #21342 Remove outdated comment (hebasto) + +Credits +======= + +Thanks to everyone who directly contributed to this release: + +- Aaron Clauson +- Andrew Chow +- Anthony Towns +- Bruno Garcia +- Fabian Jahr +- fanquake +- Hennadii Stepanov +- Jon Atack +- Luke Dashjr +- MarcoFalke +- Pieter Wuille +- practicalswift +- randymcmillan +- Sjors Provoost +- Vasil Dimov +- W. J. van der Laan + +As well as to everyone that helped with translations on +[Transifex](https://www.transifex.com/bitcoin/bitcoin/). From deff4e763e11f92e5cb7732cace7239fead4fba8 Mon Sep 17 00:00:00 2001 From: Kittywhiskers Van Gogh <63189531+kittywhiskers@users.noreply.github.com> Date: Wed, 12 May 2021 22:35:32 +0530 Subject: [PATCH 066/102] depends: update Qt 5.9 source url --- depends/packages/qt.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/depends/packages/qt.mk b/depends/packages/qt.mk index 2a9e06651..b53803c7c 100644 --- a/depends/packages/qt.mk +++ b/depends/packages/qt.mk @@ -1,6 +1,6 @@ PACKAGE=qt $(package)_version=5.9.8 -$(package)_download_path=https://download.qt.io/official_releases/qt/5.9/$($(package)_version)/submodules +$(package)_download_path=https://download.qt.io/archive/qt/5.9/$($(package)_version)/submodules $(package)_suffix=opensource-src-$($(package)_version).tar.xz $(package)_file_name=qtbase-$($(package)_suffix) $(package)_sha256_hash=9b9dec1f67df1f94bce2955c5604de992d529dde72050239154c56352da0907d From f2a88986a18f197f6a4690f5dcca248f6b6170e2 Mon Sep 17 00:00:00 2001 From: Jon Atack Date: Fri, 9 Apr 2021 20:13:52 +0200 Subject: [PATCH 067/102] p2p, bugfix: use NetPermissions::HasFlag() in CConnman::Bind() PF_NOBAN is a multi-flag that includes PF_DOWNLOAD, so the conditional in CConnman::Bind() using a bitwise AND will return the same result for both the "noban" status and the "download" status. Example: `PF_DOWNLOAD` is `0b1000000` `PF_NOBAN` is `0b1010000` This makes a check like `flags & PF_NOBAN` return `true` even if `flags` is equal to `PF_DOWNLOAD`. If `-whitebind=download@1.1.1.1:8765` is specified, then `1.1.1.1:8765` should be added to the list of local addresses. We only want to avoid adding to local addresses (that are advertised) a whitebind that has a `noban@` flag. As a result of a mis-check in `CConnman::Bind()` we would not have added `1.1.1.1:8765` to the local addresses in the example above. Co-authored-by: Vasil Dimov Github-Pull: bitcoin/bitcoin#21644 Rebased-From: dde69f20a01acca64ac21cb13993c6e4f8709f23 --- src/net.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/net.cpp b/src/net.cpp index 15e52de94..e0e806d95 100644 --- a/src/net.cpp +++ b/src/net.cpp @@ -2405,8 +2405,9 @@ NodeId CConnman::GetNewNodeId() bool CConnman::Bind(const CService &addr, unsigned int flags, NetPermissionFlags permissions) { - if (!(flags & BF_EXPLICIT) && !IsReachable(addr)) + if (!(flags & BF_EXPLICIT) && !IsReachable(addr)) { return false; + } bilingual_str strError; if (!BindListenPort(addr, strError, permissions)) { if ((flags & BF_REPORT_ERROR) && clientInterface) { @@ -2415,7 +2416,7 @@ bool CConnman::Bind(const CService &addr, unsigned int flags, NetPermissionFlags return false; } - if (addr.IsRoutable() && fDiscover && !(flags & BF_DONT_ADVERTISE) && !(permissions & PF_NOBAN)) { + if (addr.IsRoutable() && fDiscover && !(flags & BF_DONT_ADVERTISE) && !NetPermissions::HasFlag(permissions, NetPermissionFlags::PF_NOBAN)) { AddLocal(addr, LOCAL_BIND); } From 46320ba72f80dd865b05bbfe2654cde124859881 Mon Sep 17 00:00:00 2001 From: unknown Date: Wed, 14 Apr 2021 01:21:49 +0530 Subject: [PATCH 068/102] Remove user input from URI error message + Detailed error messages for invalid address + Used `IsValidDestination` instead of `IsValidDestinationString` + Referred to https://github.com/bitcoin/bitcoin/pull/20832 for solution Github-Pull: bitcoin-core/gui#280 Rebased-From: 3bad0b3fada9ab7c5b03d31dc33d72654c1ba2be --- src/qt/paymentserver.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/qt/paymentserver.cpp b/src/qt/paymentserver.cpp index 6c2db52f6..066857568 100644 --- a/src/qt/paymentserver.cpp +++ b/src/qt/paymentserver.cpp @@ -241,7 +241,7 @@ void PaymentServer::handleURIOrFile(const QString& s) tr("If you are receiving this error you should request the merchant provide a BIP21 compatible URI."), CClientUIInterface::ICON_WARNING); } - Q_EMIT message(tr("URI handling"), tr("Invalid payment address %1").arg(recipient.address), + Q_EMIT message(tr("URI handling"), tr("Invalid payment address"), CClientUIInterface::MSG_ERROR); } else From 09620b89f5f78434080196162c75e3e65cc8d47f Mon Sep 17 00:00:00 2001 From: Andrew Chow Date: Fri, 21 May 2021 11:49:01 -0400 Subject: [PATCH 069/102] Update Windows code signing certificate Github-Pull: bitcoin/bitcoin#22017 Rebased-From: 167fb1fc72e309587a8ef1d7844cb51a5483f54f --- contrib/windeploy/win-codesign.cert | 177 +++++++++++++--------------- 1 file changed, 83 insertions(+), 94 deletions(-) diff --git a/contrib/windeploy/win-codesign.cert b/contrib/windeploy/win-codesign.cert index 4023a5b63..e763df584 100644 --- a/contrib/windeploy/win-codesign.cert +++ b/contrib/windeploy/win-codesign.cert @@ -1,100 +1,89 @@ -----BEGIN CERTIFICATE----- -MIIFdDCCBFygAwIBAgIRAL98pqZb/N9LuNaNxKsHNGQwDQYJKoZIhvcNAQELBQAw -fDELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4G -A1UEBxMHU2FsZm9yZDEYMBYGA1UEChMPU2VjdGlnbyBMaW1pdGVkMSQwIgYDVQQD -ExtTZWN0aWdvIFJTQSBDb2RlIFNpZ25pbmcgQ0EwHhcNMjAwMzI0MDAwMDAwWhcN -MjEwMzI0MjM1OTU5WjCBtzELMAkGA1UEBhMCQ0gxDTALBgNVBBEMBDgwMDUxDjAM -BgNVBAgMBVN0YXRlMRAwDgYDVQQHDAdaw7xyaWNoMRcwFQYDVQQJDA5NYXR0ZW5n -YXNzZSAyNzEuMCwGA1UECgwlQml0Y29pbiBDb3JlIENvZGUgU2lnbmluZyBBc3Nv -Y2lhdGlvbjEuMCwGA1UEAwwlQml0Y29pbiBDb3JlIENvZGUgU2lnbmluZyBBc3Nv -Y2lhdGlvbjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMtxC8N4r/jE -OGOdFy/0UtiUvEczPZf9WYZz/7paAkc75XopHIE5/ssmoEX27gG9K00tf3Q62QAx -inZUPWkNTh8X0l+6uSGiIBFIV7dDgztIxnPcxaqw0k7Q2TEqKJvb5qm16zX6WfXJ -R2r6O5utUdQ3AarHnQq9fwdM1j5+ywS5u52te74ENgDMTMKUuB2J3KH1ASg5PAtO -CjPqPL+ZXJ7eT3M0Z+Lbu5ISZSqZB48BcCwOo/fOO0dAiLT9FE1iVtaCpBKHqGmd -glRjPzZdgDv8g28etRmk8wQ5pQmfL2gBjt/LtIgMPTdHHETKLxJO5H3y0CNx1vzL -ql7xNMxELxkCAwEAAaOCAbMwggGvMB8GA1UdIwQYMBaAFA7hOqhTOjHVir7Bu61n -GgOFrTQOMB0GA1UdDgQWBBSHBbl82FUJiUkXyyYJog1awYRsxjAOBgNVHQ8BAf8E -BAMCB4AwDAYDVR0TAQH/BAIwADATBgNVHSUEDDAKBggrBgEFBQcDAzARBglghkgB -hvhCAQEEBAMCBBAwQAYDVR0gBDkwNzA1BgwrBgEEAbIxAQIBAwIwJTAjBggrBgEF -BQcCARYXaHR0cHM6Ly9zZWN0aWdvLmNvbS9DUFMwQwYDVR0fBDwwOjA4oDagNIYy -aHR0cDovL2NybC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ29kZVNpZ25pbmdDQS5j -cmwwcwYIKwYBBQUHAQEEZzBlMD4GCCsGAQUFBzAChjJodHRwOi8vY3J0LnNlY3Rp -Z28uY29tL1NlY3RpZ29SU0FDb2RlU2lnbmluZ0NBLmNydDAjBggrBgEFBQcwAYYX -aHR0cDovL29jc3Auc2VjdGlnby5jb20wKwYDVR0RBCQwIoEgam9uYXNAYml0Y29p -bmNvcmVjb2Rlc2lnbmluZy5vcmcwDQYJKoZIhvcNAQELBQADggEBAAU59qJzQ2ED -aTMIQTsU01zIhZJ/xwQh78i0v2Mnr46RvzYrZOev+btF3SyUYD8veNnbYlY6yEYq -Vb+/PQnE3t1xlqR80qiTZCk/Wmxx/qKvQuWeRL5QQgvsCmWBpycQ7PNfwzOWxbPE -b0Hb2/VFFZfR9iltkfeInRUrzS96CJGYtm7dMf2JtnXYBcwpn1N8BSMH4nXVyN8g -VEE5KyjE7+/awYiSST7+e6Y7FE5AJ4f3FjqnRm+2XetTVqITwMLKZMoV283nSEeH -fA4FNAMGz9QeV38ol65NNqFP2vSSgVoPK79orqH9OOW2LSobt2qun+euddJIQeYV -CMP90b/2WPc= +MIIGQzCCBSugAwIBAgIQBSN7Cm16Z0UT9p7lA2jiKDANBgkqhkiG9w0BAQsFADBy +MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 +d3cuZGlnaWNlcnQuY29tMTEwLwYDVQQDEyhEaWdpQ2VydCBTSEEyIEFzc3VyZWQg +SUQgQ29kZSBTaWduaW5nIENBMB4XDTIxMDUyMTAwMDAwMFoXDTIyMDUyNjIzNTk1 +OVowgYAxCzAJBgNVBAYTAlVTMREwDwYDVQQIEwhEZWxhd2FyZTEOMAwGA1UEBxMF +TGV3ZXMxJjAkBgNVBAoTHUJpdGNvaW4gQ29yZSBDb2RlIFNpZ25pbmcgTExDMSYw +JAYDVQQDEx1CaXRjb2luIENvcmUgQ29kZSBTaWduaW5nIExMQzCCAiIwDQYJKoZI +hvcNAQEBBQADggIPADCCAgoCggIBAKe6xtFgKAQ68MvxwCjNtpgPobfDQCLKvCAN +uBKGYuub6ufQB5dhCLN9fjMgfg33AyauvU3PcEUDUWD3/k925bPqgxHC3E7YqoB+ +11b/2Y7a86okqUgcGgvKhaKoHmXxElpM9EjQHjJ0yL4QAR1Lp+9CMMW3wIulBYKt +wLIArFvbuQhMO/6rxL8frpK049v//WfQzB16GXuFnzN/6fDK7oOt5IrKTg4H6EY2 +fj4+QaUj0lNX7aHnZ6Ki45h2RUPDgN1ipRIuhM67npyZ/tdzPPjI3PUgfXCccN6D ++qWWnbbbvPuOht4ziPciVnPd57PqJmAOnLI86gisDfd7VKlcpOSEaagdUGvMbU6f +uAps818GwnJzwCGllxlKASCgXDAckLLvMuit4RfYAhhdhw5R0AsaWK0HW88oHOqi +U7eWlMCbSGk34x9hBrxYl7tvcNcLPWIPYrrhFWNFpkV8bVVIoV5rUNRgWvBcdOq1 +CCPTfsJp3nEH2WCoBghZquDZLSW12wMw2UsQyEojBeGhrR1inn8uK93wSnVCC8F4 +21yWNRMNe/LQVhmZDgFOen9r/WijBsBdQw1bL8N4zGdYv8+soqkrWzW417FfSx81 +pj4j5FEXYXXV5k/4/eBpIARXVRR8xya0nGkhNJmBk0jjDGD8fPW2gFQbqnUwAQ34 +vOr8NUqHAgMBAAGjggHEMIIBwDAfBgNVHSMEGDAWgBRaxLl7KgqjpepxA8Bg+S32 +ZXUOWDAdBgNVHQ4EFgQUVSLtZnifEHvd8z3E7AyLYNuDiaMwDgYDVR0PAQH/BAQD +AgeAMBMGA1UdJQQMMAoGCCsGAQUFBwMDMHcGA1UdHwRwMG4wNaAzoDGGL2h0dHA6 +Ly9jcmwzLmRpZ2ljZXJ0LmNvbS9zaGEyLWFzc3VyZWQtY3MtZzEuY3JsMDWgM6Ax +hi9odHRwOi8vY3JsNC5kaWdpY2VydC5jb20vc2hhMi1hc3N1cmVkLWNzLWcxLmNy +bDBLBgNVHSAERDBCMDYGCWCGSAGG/WwDATApMCcGCCsGAQUFBwIBFhtodHRwOi8v +d3d3LmRpZ2ljZXJ0LmNvbS9DUFMwCAYGZ4EMAQQBMIGEBggrBgEFBQcBAQR4MHYw +JAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmRpZ2ljZXJ0LmNvbTBOBggrBgEFBQcw +AoZCaHR0cDovL2NhY2VydHMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0U0hBMkFzc3Vy +ZWRJRENvZGVTaWduaW5nQ0EuY3J0MAwGA1UdEwEB/wQCMAAwDQYJKoZIhvcNAQEL +BQADggEBAOaJneI91NJgqghUxgc0AWQ01SAJTgN4z7xMQ3W0ZAtwGbA0byT7YRlj +j7h+j+hMX/JYkRJETTh8Nalq2tPWJBiMMEPOGFVttFER1pwouHkK9pSKyp4xRvNU +L0LPh7fE4EYMJoynys6ZTpMCHLku+X3jFat1+1moh9TJRvK5+ETZYGl0seFNU3mJ +dZzusObm4scffIGgi40kmmISKd5ZRuooRTu9FFR/3vpfbA+7Vg4RSH3CcQPo9bfk ++h/qRQhSfQInTBn7obRpIlvEcK782qivqseJGdtnTmcdVRShD5ckTVza1yv25uQz +l/yTqmG2LXlYjl5iMSdF0C1xYq6IsOA= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- -MIIF3jCCA8agAwIBAgIQAf1tMPyjylGoG7xkDjUDLTANBgkqhkiG9w0BAQwFADCB -iDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCk5ldyBKZXJzZXkxFDASBgNVBAcTC0pl -cnNleSBDaXR5MR4wHAYDVQQKExVUaGUgVVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNV -BAMTJVVTRVJUcnVzdCBSU0EgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMTAw -MjAxMDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCBiDELMAkGA1UEBhMCVVMxEzARBgNV -BAgTCk5ldyBKZXJzZXkxFDASBgNVBAcTC0plcnNleSBDaXR5MR4wHAYDVQQKExVU -aGUgVVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNVBAMTJVVTRVJUcnVzdCBSU0EgQ2Vy -dGlmaWNhdGlvbiBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIK -AoICAQCAEmUXNg7D2wiz0KxXDXbtzSfTTK1Qg2HiqiBNCS1kCdzOiZ/MPans9s/B -3PHTsdZ7NygRK0faOca8Ohm0X6a9fZ2jY0K2dvKpOyuR+OJv0OwWIJAJPuLodMkY -tJHUYmTbf6MG8YgYapAiPLz+E/CHFHv25B+O1ORRxhFnRghRy4YUVD+8M/5+bJz/ -Fp0YvVGONaanZshyZ9shZrHUm3gDwFA66Mzw3LyeTP6vBZY1H1dat//O+T23LLb2 -VN3I5xI6Ta5MirdcmrS3ID3KfyI0rn47aGYBROcBTkZTmzNg95S+UzeQc0PzMsNT -79uq/nROacdrjGCT3sTHDN/hMq7MkztReJVni+49Vv4M0GkPGw/zJSZrM233bkf6 -c0Plfg6lZrEpfDKEY1WJxA3Bk1QwGROs0303p+tdOmw1XNtB1xLaqUkL39iAigmT -Yo61Zs8liM2EuLE/pDkP2QKe6xJMlXzzawWpXhaDzLhn4ugTncxbgtNMs+1b/97l -c6wjOy0AvzVVdAlJ2ElYGn+SNuZRkg7zJn0cTRe8yexDJtC/QV9AqURE9JnnV4ee -UB9XVKg+/XRjL7FQZQnmWEIuQxpMtPAlR1n6BB6T1CZGSlCBst6+eLf8ZxXhyVeE -Hg9j1uliutZfVS7qXMYoCAQlObgOK6nyTJccBz8NUvXt7y+CDwIDAQABo0IwQDAd -BgNVHQ4EFgQUU3m/WqorSs9UgOHYm8Cd8rIDZsswDgYDVR0PAQH/BAQDAgEGMA8G -A1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEMBQADggIBAFzUfA3P9wF9QZllDHPF -Up/L+M+ZBn8b2kMVn54CVVeWFPFSPCeHlCjtHzoBN6J2/FNQwISbxmtOuowhT6KO -VWKR82kV2LyI48SqC/3vqOlLVSoGIG1VeCkZ7l8wXEskEVX/JJpuXior7gtNn3/3 -ATiUFJVDBwn7YKnuHKsSjKCaXqeYalltiz8I+8jRRa8YFWSQEg9zKC7F4iRO/Fjs -8PRF/iKz6y+O0tlFYQXBl2+odnKPi4w2r78NBc5xjeambx9spnFixdjQg3IM8WcR -iQycE0xyNN+81XHfqnHd4blsjDwSXWXavVcStkNr/+XeTWYRUc+ZruwXtuhxkYze -Sf7dNXGiFSeUHM9h4ya7b6NnJSFd5t0dCy5oGzuCr+yDZ4XUmFF0sbmZgIn/f3gZ -XHlKYC6SQK5MNyosycdiyA5d9zZbyuAlJQG03RoHnHcAP9Dc1ew91Pq7P8yF1m9/ -qS3fuQL39ZeatTXaw2ewh0qpKJ4jjv9cJ2vhsE/zB+4ALtRZh8tSQZXq9EfX7mRB -VXyNWQKV3WKdwrnuWih0hKWbt5DHDAff9Yk2dDLWKMGwsAvgnEzDHNb842m1R0aB -L6KCq9NjRHDEjf8tM7qtj3u1cIiuPhnPQCjY/MiQu12ZIvVS5ljFH4gxQ+6IHdfG -jjxDah2nGN59PRbxYvnKkKj9 +MIIFMDCCBBigAwIBAgIQBAkYG1/Vu2Z1U0O1b5VQCDANBgkqhkiG9w0BAQsFADBl +MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 +d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJv +b3QgQ0EwHhcNMTMxMDIyMTIwMDAwWhcNMjgxMDIyMTIwMDAwWjByMQswCQYDVQQG +EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNl +cnQuY29tMTEwLwYDVQQDEyhEaWdpQ2VydCBTSEEyIEFzc3VyZWQgSUQgQ29kZSBT +aWduaW5nIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA+NOzHH8O +Ea9ndwfTCzFJGc/Q+0WZsTrbRPV/5aid2zLXcep2nQUut4/6kkPApfmJ1DcZ17aq +8JyGpdglrA55KDp+6dFn08b7KSfH03sjlOSRI5aQd4L5oYQjZhJUM1B0sSgmuyRp +wsJS8hRniolF1C2ho+mILCCVrhxKhwjfDPXiTWAYvqrEsq5wMWYzcT6scKKrzn/p +fMuSoeU7MRzP6vIK5Fe7SrXpdOYr/mzLfnQ5Ng2Q7+S1TqSp6moKq4TzrGdOtcT3 +jNEgJSPrCGQ+UpbB8g8S9MWOD8Gi6CxR93O8vYWxYoNzQYIH5DiLanMg0A9kczye +n6Yzqf0Z3yWT0QIDAQABo4IBzTCCAckwEgYDVR0TAQH/BAgwBgEB/wIBADAOBgNV +HQ8BAf8EBAMCAYYwEwYDVR0lBAwwCgYIKwYBBQUHAwMweQYIKwYBBQUHAQEEbTBr +MCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5kaWdpY2VydC5jb20wQwYIKwYBBQUH +MAKGN2h0dHA6Ly9jYWNlcnRzLmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydEFzc3VyZWRJ +RFJvb3RDQS5jcnQwgYEGA1UdHwR6MHgwOqA4oDaGNGh0dHA6Ly9jcmw0LmRpZ2lj +ZXJ0LmNvbS9EaWdpQ2VydEFzc3VyZWRJRFJvb3RDQS5jcmwwOqA4oDaGNGh0dHA6 +Ly9jcmwzLmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydEFzc3VyZWRJRFJvb3RDQS5jcmww +TwYDVR0gBEgwRjA4BgpghkgBhv1sAAIEMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8v +d3d3LmRpZ2ljZXJ0LmNvbS9DUFMwCgYIYIZIAYb9bAMwHQYDVR0OBBYEFFrEuXsq +CqOl6nEDwGD5LfZldQ5YMB8GA1UdIwQYMBaAFEXroq/0ksuCMS1Ri6enIZ3zbcgP +MA0GCSqGSIb3DQEBCwUAA4IBAQA+7A1aJLPzItEVyCx8JSl2qB1dHC06GsTvMGHX +fgtg/cM9D8Svi/3vKt8gVTew4fbRknUPUbRupY5a4l4kgU4QpO4/cY5jDhNLrddf +RHnzNhQGivecRk5c/5CxGwcOkRX7uq+1UcKNJK4kxscnKqEpKBo6cSgCPC6Ro8Al +EeKcFEehemhor5unXCBc2XGxDI+7qPjFEmifz0DLQESlE/DmZAwlCEIysjaKJAL+ +L3J+HNdJRZboWR3p+nRka7LrZkPas7CM1ekN3fYBIM6ZMWM9CBoYs4GbT8aTEAb8 +B4H6i9r5gkn3Ym6hU/oSlBiFLpKR6mhsRDKyZqHnGKSaZFHv -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- -MIIF9TCCA92gAwIBAgIQHaJIMG+bJhjQguCWfTPTajANBgkqhkiG9w0BAQwFADCB -iDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCk5ldyBKZXJzZXkxFDASBgNVBAcTC0pl -cnNleSBDaXR5MR4wHAYDVQQKExVUaGUgVVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNV -BAMTJVVTRVJUcnVzdCBSU0EgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMTgx -MTAyMDAwMDAwWhcNMzAxMjMxMjM1OTU5WjB8MQswCQYDVQQGEwJHQjEbMBkGA1UE -CBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQK -Ew9TZWN0aWdvIExpbWl0ZWQxJDAiBgNVBAMTG1NlY3RpZ28gUlNBIENvZGUgU2ln -bmluZyBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAIYijTKFehif -SfCWL2MIHi3cfJ8Uz+MmtiVmKUCGVEZ0MWLFEO2yhyemmcuVMMBW9aR1xqkOUGKl -UZEQauBLYq798PgYrKf/7i4zIPoMGYmobHutAMNhodxpZW0fbieW15dRhqb0J+V8 -aouVHltg1X7XFpKcAC9o95ftanK+ODtj3o+/bkxBXRIgCFnoOc2P0tbPBrRXBbZO -oT5Xax+YvMRi1hsLjcdmG0qfnYHEckC14l/vC0X/o84Xpi1VsLewvFRqnbyNVlPG -8Lp5UEks9wO5/i9lNfIi6iwHr0bZ+UYc3Ix8cSjz/qfGFN1VkW6KEQ3fBiSVfQ+n -oXw62oY1YdMCAwEAAaOCAWQwggFgMB8GA1UdIwQYMBaAFFN5v1qqK0rPVIDh2JvA -nfKyA2bLMB0GA1UdDgQWBBQO4TqoUzox1Yq+wbutZxoDha00DjAOBgNVHQ8BAf8E -BAMCAYYwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHSUEFjAUBggrBgEFBQcDAwYI -KwYBBQUHAwgwEQYDVR0gBAowCDAGBgRVHSAAMFAGA1UdHwRJMEcwRaBDoEGGP2h0 -dHA6Ly9jcmwudXNlcnRydXN0LmNvbS9VU0VSVHJ1c3RSU0FDZXJ0aWZpY2F0aW9u -QXV0aG9yaXR5LmNybDB2BggrBgEFBQcBAQRqMGgwPwYIKwYBBQUHMAKGM2h0dHA6 -Ly9jcnQudXNlcnRydXN0LmNvbS9VU0VSVHJ1c3RSU0FBZGRUcnVzdENBLmNydDAl -BggrBgEFBQcwAYYZaHR0cDovL29jc3AudXNlcnRydXN0LmNvbTANBgkqhkiG9w0B -AQwFAAOCAgEATWNQ7Uc0SmGk295qKoyb8QAAHh1iezrXMsL2s+Bjs/thAIiaG20Q -BwRPvrjqiXgi6w9G7PNGXkBGiRL0C3danCpBOvzW9Ovn9xWVM8Ohgyi33i/klPeF -M4MtSkBIv5rCT0qxjyT0s4E307dksKYjalloUkJf/wTr4XRleQj1qZPea3FAmZa6 -ePG5yOLDCBaxq2NayBWAbXReSnV+pbjDbLXP30p5h1zHQE1jNfYw08+1Cg4LBH+g -S667o6XQhACTPlNdNKUANWlsvp8gJRANGftQkGG+OY96jk32nw4e/gdREmaDJhlI -lc5KycF/8zoFm/lv34h/wCOe0h5DekUxwZxNqfBZslkZ6GqNKQQCd3xLS81wvjqy -VVp4Pry7bwMQJXcVNIr5NsxDkuS6T/FikyglVyn7URnHoSVAaoRXxrKdsbwcCtp8 -Z359LukoTBh+xHsxQXGaSynsCz1XUNLK3f2eBVHlRHjdAd6xdZgNVCT98E7j4viD -vXK6yz067vBeF5Jobchh+abxKgoLpbn0nu6YMgWFnuv5gynTxix9vTp3Los3QqBq -gu07SqqUEKThDfgXxbZaeTMYkuO1dfih6Y4KJR7kHvGfWocj/5+kUZ77OYARzdu1 -xKeogG/lU9Tg46LC0lsa+jImLWpXcBw8pFguo/NbSwfcMlnzh6cabVg= +MIIDtzCCAp+gAwIBAgIQDOfg5RfYRv6P5WD8G/AwOTANBgkqhkiG9w0BAQUFADBl +MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 +d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJv +b3QgQ0EwHhcNMDYxMTEwMDAwMDAwWhcNMzExMTEwMDAwMDAwWjBlMQswCQYDVQQG +EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNl +cnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgQ0EwggEi +MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCtDhXO5EOAXLGH87dg+XESpa7c +JpSIqvTO9SA5KFhgDPiA2qkVlTJhPLWxKISKityfCgyDF3qPkKyK53lTXDGEKvYP +mDI2dsze3Tyoou9q+yHyUmHfnyDXH+Kx2f4YZNISW1/5WBg1vEfNoTb5a3/UsDg+ +wRvDjDPZ2C8Y/igPs6eD1sNuRMBhNZYW/lmci3Zt1/GiSw0r/wty2p5g0I6QNcZ4 +VYcgoc/lbQrISXwxmDNsIumH0DJaoroTghHtORedmTpyoeb6pNnVFzF1roV9Iq4/ +AUaG9ih5yLHa5FcXxH4cDrC0kqZWs72yl+2qp/C3xag/lRbQ/6GW6whfGHdPAgMB +AAGjYzBhMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQW +BBRF66Kv9JLLgjEtUYunpyGd823IDzAfBgNVHSMEGDAWgBRF66Kv9JLLgjEtUYun +pyGd823IDzANBgkqhkiG9w0BAQUFAAOCAQEAog683+Lt8ONyc3pklL/3cmbYMuRC +dWKuh+vy1dneVrOfzM4UKLkNl2BcEkxY5NM9g0lFWJc1aRqoR+pWxnmrEthngYTf +fwk8lOa4JiwgvT2zKIn3X/8i4peEH+ll74fg38FnSbNd67IJKusm7Xi+fT8r87cm +NW1fiQG2SVufAQWbqz0lwcy2f8Lxb4bG+mRo64EtlOtCt/qMHt1i8b5QZ7dsvfPx +H2sMNgcWfzd8qVttevESRmCD1ycEvkvOl77DZypoEd+A5wwzZr8TDRRu838fYxAe ++o0bJW1sj6W3YQGx0qMmoRBxna3iw/nDmVG3KwcIzi7mULKn+gpFL6Lw8g== -----END CERTIFICATE----- + From 65ce8330427114c2827d00a658d2e5887349c76a Mon Sep 17 00:00:00 2001 From: Andrew Chow Date: Thu, 7 Jan 2021 13:23:52 -0500 Subject: [PATCH 070/102] gitian: install signapple in gitian-osx-signer.yml Github-Pull: #20880 Rebased-From: 42bb1ea363286b088257cabccb686ef1887c1d3b --- contrib/gitian-descriptors/gitian-osx-signer.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/contrib/gitian-descriptors/gitian-osx-signer.yml b/contrib/gitian-descriptors/gitian-osx-signer.yml index a4f3219c2..5f0501756 100644 --- a/contrib/gitian-descriptors/gitian-osx-signer.yml +++ b/contrib/gitian-descriptors/gitian-osx-signer.yml @@ -7,9 +7,13 @@ architectures: - "amd64" packages: - "faketime" +- "python3-pip" remotes: - "url": "https://github.com/bitcoin-core/bitcoin-detached-sigs.git" "dir": "signature" +- "url": "https://github.com/achow101/signapple.git" + "dir": "signapple" + "commit": "c7e73aa27a7615ac9506559173f787e2906b25eb" files: - "bitcoin-osx-unsigned.tar.gz" script: | @@ -30,6 +34,13 @@ script: | chmod +x ${WRAP_DIR}/${prog} done + # Install signapple + cd signapple + python3 -m pip install -U pip setuptools + python3 -m pip install . + export PATH="$HOME/.local/bin":$PATH + cd .. + UNSIGNED=bitcoin-osx-unsigned.tar.gz SIGNED=bitcoin-osx-signed.dmg From 2f33e339a8903e79bf750367c073056bea4a9788 Mon Sep 17 00:00:00 2001 From: Andrew Chow Date: Thu, 7 Jan 2021 13:42:07 -0500 Subject: [PATCH 071/102] gitian: use signapple to apply the MacOS code signature Github-Pull: #20880 Rebased-From: 95b06d21852b28712db6c710e420a58bdc1a0944 --- .../gitian-descriptors/gitian-osx-signer.yml | 7 ++-- contrib/macdeploy/detached-sig-apply.sh | 36 ++----------------- 2 files changed, 7 insertions(+), 36 deletions(-) diff --git a/contrib/gitian-descriptors/gitian-osx-signer.yml b/contrib/gitian-descriptors/gitian-osx-signer.yml index 5f0501756..c204e6a3f 100644 --- a/contrib/gitian-descriptors/gitian-osx-signer.yml +++ b/contrib/gitian-descriptors/gitian-osx-signer.yml @@ -41,11 +41,12 @@ script: | export PATH="$HOME/.local/bin":$PATH cd .. - UNSIGNED=bitcoin-osx-unsigned.tar.gz + UNSIGNED_TARBALL=bitcoin-osx-unsigned.tar.gz + UNSIGNED_APP=dist/Bitcoin-Qt.app SIGNED=bitcoin-osx-signed.dmg - tar -xf ${UNSIGNED} + tar -xf ${UNSIGNED_TARBALL} OSX_VOLNAME="$(cat osx_volname)" - ./detached-sig-apply.sh ${UNSIGNED} signature/osx + ./detached-sig-apply.sh ${UNSIGNED_APP} signature/osx/dist ${WRAP_DIR}/genisoimage -no-cache-inodes -D -l -probe -V "${OSX_VOLNAME}" -no-pad -r -dir-mode 0755 -apple -o uncompressed.dmg signed-app ${WRAP_DIR}/dmg dmg uncompressed.dmg ${OUTDIR}/${SIGNED} diff --git a/contrib/macdeploy/detached-sig-apply.sh b/contrib/macdeploy/detached-sig-apply.sh index 5c5a85d3f..d481413cc 100755 --- a/contrib/macdeploy/detached-sig-apply.sh +++ b/contrib/macdeploy/detached-sig-apply.sh @@ -8,10 +8,9 @@ set -e UNSIGNED="$1" SIGNATURE="$2" -ARCH=x86_64 ROOTDIR=dist -TEMPDIR=signed.temp OUTDIR=signed-app +SIGNAPPLE=signapple if [ -z "$UNSIGNED" ]; then echo "usage: $0 " @@ -23,35 +22,6 @@ if [ -z "$SIGNATURE" ]; then exit 1 fi -rm -rf ${TEMPDIR} && mkdir -p ${TEMPDIR} -tar -C ${TEMPDIR} -xf ${UNSIGNED} -cp -rf "${SIGNATURE}"/* ${TEMPDIR} - -if [ -z "${PAGESTUFF}" ]; then - PAGESTUFF=${TEMPDIR}/pagestuff -fi - -if [ -z "${CODESIGN_ALLOCATE}" ]; then - CODESIGN_ALLOCATE=${TEMPDIR}/codesign_allocate -fi - -find ${TEMPDIR} -name "*.sign" | while read i; do - SIZE=$(stat -c %s "${i}") - TARGET_FILE="$(echo "${i}" | sed 's/\.sign$//')" - - echo "Allocating space for the signature of size ${SIZE} in ${TARGET_FILE}" - ${CODESIGN_ALLOCATE} -i "${TARGET_FILE}" -a ${ARCH} ${SIZE} -o "${i}.tmp" - - OFFSET=$(${PAGESTUFF} "${i}.tmp" -p | tail -2 | grep offset | sed 's/[^0-9]*//g') - if [ -z ${QUIET} ]; then - echo "Attaching signature at offset ${OFFSET}" - fi - - dd if="$i" of="${i}.tmp" bs=1 seek=${OFFSET} count=${SIZE} 2>/dev/null - mv "${i}.tmp" "${TARGET_FILE}" - rm "${i}" - echo "Success." -done -mv ${TEMPDIR}/${ROOTDIR} ${OUTDIR} -rm -rf ${TEMPDIR} +${SIGNAPPLE} apply ${UNSIGNED} ${SIGNATURE} +mv ${ROOTDIR} ${OUTDIR} echo "Signed: ${OUTDIR}" From 27d691b6b5b4a15dc3d1f9dd248a8880ab3ab326 Mon Sep 17 00:00:00 2001 From: Andrew Chow Date: Thu, 7 Jan 2021 13:50:22 -0500 Subject: [PATCH 072/102] gitian: use signapple to create the MacOS code signature Github-Pull: #20880 Rebased-From: f55eed251488d70d5e2e3a2965a4f8ec0c476853 --- contrib/macdeploy/detached-sig-create.sh | 35 ++++-------------------- 1 file changed, 6 insertions(+), 29 deletions(-) diff --git a/contrib/macdeploy/detached-sig-create.sh b/contrib/macdeploy/detached-sig-create.sh index 31a97f0a2..4f246cbb3 100755 --- a/contrib/macdeploy/detached-sig-create.sh +++ b/contrib/macdeploy/detached-sig-create.sh @@ -8,44 +8,21 @@ set -e ROOTDIR=dist BUNDLE="${ROOTDIR}/Bitcoin-Qt.app" -CODESIGN=codesign +SIGNAPPLE=signapple TEMPDIR=sign.temp -TEMPLIST=${TEMPDIR}/signatures.txt OUT=signature-osx.tar.gz -OUTROOT=osx +OUTROOT=osx/dist if [ -z "$1" ]; then - echo "usage: $0 " - echo "example: $0 -s MyIdentity" + echo "usage: $0 " + echo "example: $0 " exit 1 fi -rm -rf ${TEMPDIR} ${TEMPLIST} +rm -rf ${TEMPDIR} mkdir -p ${TEMPDIR} -${CODESIGN} -f --file-list ${TEMPLIST} "$@" "${BUNDLE}" - -grep -v CodeResources < "${TEMPLIST}" | while read i; do - TARGETFILE="${BUNDLE}/$(echo "${i}" | sed "s|.*${BUNDLE}/||")" - SIZE=$(pagestuff "$i" -p | tail -2 | grep size | sed 's/[^0-9]*//g') - OFFSET=$(pagestuff "$i" -p | tail -2 | grep offset | sed 's/[^0-9]*//g') - SIGNFILE="${TEMPDIR}/${OUTROOT}/${TARGETFILE}.sign" - DIRNAME="$(dirname "${SIGNFILE}")" - mkdir -p "${DIRNAME}" - echo "Adding detached signature for: ${TARGETFILE}. Size: ${SIZE}. Offset: ${OFFSET}" - dd if="$i" of="${SIGNFILE}" bs=1 skip=${OFFSET} count=${SIZE} 2>/dev/null -done - -grep CodeResources < "${TEMPLIST}" | while read i; do - TARGETFILE="${BUNDLE}/$(echo "${i}" | sed "s|.*${BUNDLE}/||")" - RESOURCE="${TEMPDIR}/${OUTROOT}/${TARGETFILE}" - DIRNAME="$(dirname "${RESOURCE}")" - mkdir -p "${DIRNAME}" - echo "Adding resource for: \"${TARGETFILE}\"" - cp "${i}" "${RESOURCE}" -done - -rm ${TEMPLIST} +${SIGNAPPLE} sign -f --detach "${TEMPDIR}/${OUTROOT}" "$@" "${BUNDLE}" tar -C "${TEMPDIR}" -czf "${OUT}" . rm -rf "${TEMPDIR}" From 5313d6aed2d8bd515401b3782c0bc352af423015 Mon Sep 17 00:00:00 2001 From: Andrew Chow Date: Thu, 7 Jan 2021 14:11:50 -0500 Subject: [PATCH 073/102] gitian: Remove codesign_allocate and pagestuff from MacOS build Github-Pull: #20880 Rebased-From: 2c403279e2f0f7c8c27c56d4e7b0573c59571f0a --- contrib/gitian-descriptors/gitian-osx.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/contrib/gitian-descriptors/gitian-osx.yml b/contrib/gitian-descriptors/gitian-osx.yml index df50f4518..6b1cb842f 100644 --- a/contrib/gitian-descriptors/gitian-osx.yml +++ b/contrib/gitian-descriptors/gitian-osx.yml @@ -138,8 +138,6 @@ script: | cp contrib/macdeploy/detached-sig-apply.sh unsigned-app-${i} cp contrib/macdeploy/detached-sig-create.sh unsigned-app-${i} cp ${BASEPREFIX}/${i}/native/bin/dmg ${BASEPREFIX}/${i}/native/bin/genisoimage unsigned-app-${i} - cp ${BASEPREFIX}/${i}/native/bin/${i}-codesign_allocate unsigned-app-${i}/codesign_allocate - cp ${BASEPREFIX}/${i}/native/bin/${i}-pagestuff unsigned-app-${i}/pagestuff mv dist unsigned-app-${i} pushd unsigned-app-${i} find . | sort | tar --mtime="$REFERENCE_DATETIME" --no-recursion --mode='u+rw,go+r-w,a+X' --owner=0 --group=0 -c -T - | gzip -9n > ${OUTDIR}/${DISTNAME}-osx-unsigned.tar.gz From 0fe60a84ae2f52e87ee07cd0243f09d45b0b15e2 Mon Sep 17 00:00:00 2001 From: Andrew Chow Date: Tue, 8 Jun 2021 16:30:43 -0400 Subject: [PATCH 074/102] Use latest signapple commit Update gitian and guix to use the same latest signapple commit Github-Pull: #22190 Rebased-From: 683d197970a533690ca1bd4d06d021900e87cb8b --- contrib/gitian-descriptors/gitian-osx-signer.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contrib/gitian-descriptors/gitian-osx-signer.yml b/contrib/gitian-descriptors/gitian-osx-signer.yml index c204e6a3f..ce992a170 100644 --- a/contrib/gitian-descriptors/gitian-osx-signer.yml +++ b/contrib/gitian-descriptors/gitian-osx-signer.yml @@ -13,7 +13,7 @@ remotes: "dir": "signature" - "url": "https://github.com/achow101/signapple.git" "dir": "signapple" - "commit": "c7e73aa27a7615ac9506559173f787e2906b25eb" + "commit": "b084cbbf44d5330448ffce0c7d118f75781b64bd" files: - "bitcoin-osx-unsigned.tar.gz" script: | From 7b0b201d109b6240f114498fc1b94af9cb85f26e Mon Sep 17 00:00:00 2001 From: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com> Date: Mon, 10 May 2021 21:45:18 +0300 Subject: [PATCH 075/102] wallet: Do not iterate a directory if having an error while accessing it This change prevents infinite looping for, for example, system folders on Windows. Github-Pull: #21907 Rebased-From: 29c9e2c2d2015ade47ed4497926363dea3f9c59b --- src/wallet/walletutil.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/wallet/walletutil.cpp b/src/wallet/walletutil.cpp index 04c2407a8..f8827604b 100644 --- a/src/wallet/walletutil.cpp +++ b/src/wallet/walletutil.cpp @@ -63,7 +63,12 @@ std::vector ListWalletDir() for (auto it = fs::recursive_directory_iterator(wallet_dir, ec); it != fs::recursive_directory_iterator(); it.increment(ec)) { if (ec) { - LogPrintf("%s: %s %s\n", __func__, ec.message(), it->path().string()); + if (fs::is_directory(*it)) { + it.no_push(); + LogPrintf("%s: %s %s -- skipping.\n", __func__, ec.message(), it->path().string()); + } else { + LogPrintf("%s: %s %s\n", __func__, ec.message(), it->path().string()); + } continue; } From c5357fa4151e1ac90427ae0493a7bb3e451f8de5 Mon Sep 17 00:00:00 2001 From: Andrew Poelstra Date: Fri, 18 Jun 2021 23:13:07 +0000 Subject: [PATCH 076/102] fuzz: add missing ECCVerifyHandle to base_encode_decode GitHub Pull: #22279 Rebased-From: 906d7913117c8f10934b37afa27ae8ac565da042 --- src/test/fuzz/base_encode_decode.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/test/fuzz/base_encode_decode.cpp b/src/test/fuzz/base_encode_decode.cpp index 8d49f93c2..f7b1a0300 100644 --- a/src/test/fuzz/base_encode_decode.cpp +++ b/src/test/fuzz/base_encode_decode.cpp @@ -14,6 +14,11 @@ #include #include +void initialize() +{ + static const ECCVerifyHandle verify_handle; +} + void test_one_input(const std::vector& buffer) { const std::string random_encoded_string(buffer.begin(), buffer.end()); From 70eac6fcd02b6c44cb4b1f2fb895eae147e3f490 Mon Sep 17 00:00:00 2001 From: MarcoFalke Date: Fri, 21 May 2021 10:52:46 +0200 Subject: [PATCH 077/102] Fix crash when parsing command line with -noincludeconf=0 Github-Pull: #22002 Rebased-From: fa9f711c3746ca3962f15224285a453744cd45b3 --- src/util/system.cpp | 2 +- test/functional/feature_includeconf.py | 9 ++++++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/util/system.cpp b/src/util/system.cpp index 5f30136fa..3512bb8bf 100644 --- a/src/util/system.cpp +++ b/src/util/system.cpp @@ -340,7 +340,7 @@ bool ArgsManager::ParseParameters(int argc, const char* const argv[], std::strin bool success = true; if (auto* includes = util::FindKey(m_settings.command_line_options, "includeconf")) { for (const auto& include : util::SettingsSpan(*includes)) { - error += "-includeconf cannot be used from commandline; -includeconf=" + include.get_str() + "\n"; + error += "-includeconf cannot be used from commandline; -includeconf=" + include.write() + "\n"; success = false; } } diff --git a/test/functional/feature_includeconf.py b/test/functional/feature_includeconf.py index 6f1a0cd34..8eb20adf5 100755 --- a/test/functional/feature_includeconf.py +++ b/test/functional/feature_includeconf.py @@ -43,7 +43,14 @@ class IncludeConfTest(BitcoinTestFramework): self.log.info("-includeconf cannot be used as command-line arg") self.stop_node(0) - self.nodes[0].assert_start_raises_init_error(extra_args=["-includeconf=relative2.conf"], expected_msg="Error: Error parsing command line arguments: -includeconf cannot be used from commandline; -includeconf=relative2.conf") + self.nodes[0].assert_start_raises_init_error( + extra_args=['-noincludeconf=0'], + expected_msg='Error: Error parsing command line arguments: -includeconf cannot be used from commandline; -includeconf=true', + ) + self.nodes[0].assert_start_raises_init_error( + extra_args=['-includeconf=relative2.conf'], + expected_msg='Error: Error parsing command line arguments: -includeconf cannot be used from commandline; -includeconf="relative2.conf"', + ) self.log.info("-includeconf cannot be used recursively. subversion should end with 'main; relative)/'") with open(os.path.join(self.options.tmpdir, "node0", "relative.conf"), "a", encoding="utf8") as f: From 513613d8a87337f1d1f639bc9426165c3b6be62e Mon Sep 17 00:00:00 2001 From: MarcoFalke Date: Thu, 20 May 2021 13:46:15 +0200 Subject: [PATCH 078/102] Cleanup -includeconf error message Remove the erroneous trailing newline '\n'. Also, print only the first value to remove needless redundancy in the error message. Github-Pull: #22002 Rebased-From: fad0867d6ab9430070aa7d60bf7617a6508e0586 --- src/util/system.cpp | 10 ++++------ test/functional/feature_includeconf.py | 2 +- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/src/util/system.cpp b/src/util/system.cpp index 3512bb8bf..a21d58a19 100644 --- a/src/util/system.cpp +++ b/src/util/system.cpp @@ -337,14 +337,12 @@ bool ArgsManager::ParseParameters(int argc, const char* const argv[], std::strin } // we do not allow -includeconf from command line - bool success = true; if (auto* includes = util::FindKey(m_settings.command_line_options, "includeconf")) { - for (const auto& include : util::SettingsSpan(*includes)) { - error += "-includeconf cannot be used from commandline; -includeconf=" + include.write() + "\n"; - success = false; - } + const auto& include{*util::SettingsSpan(*includes).begin()}; // pick first value as example + error = "-includeconf cannot be used from commandline; -includeconf=" + include.write(); + return false; } - return success; + return true; } Optional ArgsManager::GetArgFlags(const std::string& name) const diff --git a/test/functional/feature_includeconf.py b/test/functional/feature_includeconf.py index 8eb20adf5..6a1f3b0ef 100755 --- a/test/functional/feature_includeconf.py +++ b/test/functional/feature_includeconf.py @@ -48,7 +48,7 @@ class IncludeConfTest(BitcoinTestFramework): expected_msg='Error: Error parsing command line arguments: -includeconf cannot be used from commandline; -includeconf=true', ) self.nodes[0].assert_start_raises_init_error( - extra_args=['-includeconf=relative2.conf'], + extra_args=['-includeconf=relative2.conf', '-includeconf=no_warn.conf'], expected_msg='Error: Error parsing command line arguments: -includeconf cannot be used from commandline; -includeconf="relative2.conf"', ) From da816247f0c00e1644f7ebe2b848cfd6a5c7026e Mon Sep 17 00:00:00 2001 From: MarcoFalke Date: Thu, 3 Jun 2021 12:14:33 +0200 Subject: [PATCH 079/102] util: Properly handle -noincludeconf on command line This bug was introduced in commit fad0867d6ab9430070aa7d60bf7617a6508e0586. Unit test Co-Authored-By: Russell Yanofsky Github-Pull: #22137 Rebased-From: fa910b47656d0e69cccb1f31804f2b11aa45d053 --- src/test/util_tests.cpp | 19 +++++++++++++++++++ src/util/system.cpp | 11 +++++++---- 2 files changed, 26 insertions(+), 4 deletions(-) diff --git a/src/test/util_tests.cpp b/src/test/util_tests.cpp index 010b6adf1..cc58f6455 100644 --- a/src/test/util_tests.cpp +++ b/src/test/util_tests.cpp @@ -318,6 +318,25 @@ BOOST_FIXTURE_TEST_CASE(util_CheckValue, CheckValueTest) CheckValue(M::ALLOW_ANY, "-value=abc", Expect{"abc"}.String("abc").Int(0).Bool(false).List({"abc"})); } +struct NoIncludeConfTest { + std::string Parse(const char* arg) + { + TestArgsManager test; + test.SetupArgs({{"-includeconf", ArgsManager::ALLOW_ANY}}); + std::array argv{"ignored", arg}; + std::string error; + (void)test.ParseParameters(argv.size(), argv.data(), error); + return error; + } +}; + +BOOST_FIXTURE_TEST_CASE(util_NoIncludeConf, NoIncludeConfTest) +{ + BOOST_CHECK_EQUAL(Parse("-noincludeconf"), ""); + BOOST_CHECK_EQUAL(Parse("-includeconf"), "-includeconf cannot be used from commandline; -includeconf=\"\""); + BOOST_CHECK_EQUAL(Parse("-includeconf=file"), "-includeconf cannot be used from commandline; -includeconf=\"file\""); +} + BOOST_AUTO_TEST_CASE(util_ParseParameters) { TestArgsManager testArgs; diff --git a/src/util/system.cpp b/src/util/system.cpp index a21d58a19..0d8b669b7 100644 --- a/src/util/system.cpp +++ b/src/util/system.cpp @@ -336,11 +336,14 @@ bool ArgsManager::ParseParameters(int argc, const char* const argv[], std::strin m_settings.command_line_options[key].push_back(value); } - // we do not allow -includeconf from command line + // we do not allow -includeconf from command line, only -noincludeconf if (auto* includes = util::FindKey(m_settings.command_line_options, "includeconf")) { - const auto& include{*util::SettingsSpan(*includes).begin()}; // pick first value as example - error = "-includeconf cannot be used from commandline; -includeconf=" + include.write(); - return false; + const util::SettingsSpan values{*includes}; + // Range may be empty if -noincludeconf was passed + if (!values.empty()) { + error = "-includeconf cannot be used from commandline; -includeconf=" + values.begin()->write(); + return false; // pick first value as example + } } return true; } From f220368220abb11040fa944a853cda3d4f1fe84d Mon Sep 17 00:00:00 2001 From: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com> Date: Sat, 10 Apr 2021 15:09:25 +0300 Subject: [PATCH 080/102] qt: Do not use QClipboard::Selection on Windows and macOS. Windows and macOS do not support the global mouse selection. Github-Pull: bitcoin-core/gui#277 Rebased-From: 7f3a5980c1d54988a707b961fd2ef647cebb4c5b --- src/qt/guiutil.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/qt/guiutil.cpp b/src/qt/guiutil.cpp index bab17562a..cab015bdb 100644 --- a/src/qt/guiutil.cpp +++ b/src/qt/guiutil.cpp @@ -734,8 +734,11 @@ bool SetStartOnSystemStartup(bool fAutoStart) { return false; } void setClipboard(const QString& str) { - QApplication::clipboard()->setText(str, QClipboard::Clipboard); - QApplication::clipboard()->setText(str, QClipboard::Selection); + QClipboard* clipboard = QApplication::clipboard(); + clipboard->setText(str, QClipboard::Clipboard); + if (clipboard->supportsSelection()) { + clipboard->setText(str, QClipboard::Selection); + } } fs::path qstringToBoostPath(const QString &path) From 6ca54ce2ae0808513172c4945e38165e766e1381 Mon Sep 17 00:00:00 2001 From: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com> Date: Mon, 14 Jun 2021 23:37:40 +0300 Subject: [PATCH 081/102] qt: Do not extend recent transaction width to address/label string Github-Pull: bitcoin-core/gui#365 Rebased-From: 9ea1da6fc91e17bdaa722001b97aadf576f07f65 --- src/qt/overviewpage.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/qt/overviewpage.cpp b/src/qt/overviewpage.cpp index 6a6658454..2dea4e1bd 100644 --- a/src/qt/overviewpage.cpp +++ b/src/qt/overviewpage.cpp @@ -71,14 +71,12 @@ public: painter->setPen(foreground); QRect boundingRect; painter->drawText(addressRect, Qt::AlignLeft | Qt::AlignVCenter, address, &boundingRect); - int address_rect_min_width = boundingRect.width(); if (index.data(TransactionTableModel::WatchonlyRole).toBool()) { QIcon iconWatchonly = qvariant_cast(index.data(TransactionTableModel::WatchonlyDecorationRole)); QRect watchonlyRect(boundingRect.right() + 5, mainRect.top()+ypad+halfheight, 16, halfheight); iconWatchonly.paint(painter, watchonlyRect); - address_rect_min_width += 5 + watchonlyRect.width(); } if(amount < 0) @@ -107,7 +105,8 @@ public: QRect date_bounding_rect; painter->drawText(amountRect, Qt::AlignLeft | Qt::AlignVCenter, GUIUtil::dateTimeStr(date), &date_bounding_rect); - const int minimum_width = std::max(address_rect_min_width, amount_bounding_rect.width() + date_bounding_rect.width()); + // 0.4*date_bounding_rect.width() is used to visually distinguish a date from an amount. + const int minimum_width = 1.4 * date_bounding_rect.width() + amount_bounding_rect.width(); const auto search = m_minimum_width.find(index.row()); if (search == m_minimum_width.end() || search->second != minimum_width) { m_minimum_width[index.row()] = minimum_width; From e3f1da4bf3db120cc691a844d612fbc522f11fb9 Mon Sep 17 00:00:00 2001 From: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com> Date: Tue, 15 Jun 2021 00:20:00 +0300 Subject: [PATCH 082/102] qt: Draw "eye" sign at the beginning of watch-only addresses Github-Pull: bitcoin-core/gui#365 Rebased-From: cd46c11577a05f3dc9eac94f27a6985f6ba0509e --- src/qt/overviewpage.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/qt/overviewpage.cpp b/src/qt/overviewpage.cpp index 2dea4e1bd..dfe8b6f5b 100644 --- a/src/qt/overviewpage.cpp +++ b/src/qt/overviewpage.cpp @@ -68,17 +68,17 @@ public: foreground = brush.color(); } + if (index.data(TransactionTableModel::WatchonlyRole).toBool()) { + QIcon iconWatchonly = qvariant_cast(index.data(TransactionTableModel::WatchonlyDecorationRole)); + QRect watchonlyRect(addressRect.left(), addressRect.top(), 16, addressRect.height()); + iconWatchonly.paint(painter, watchonlyRect); + addressRect.setLeft(addressRect.left() + watchonlyRect.width() + 5); + } + painter->setPen(foreground); QRect boundingRect; painter->drawText(addressRect, Qt::AlignLeft | Qt::AlignVCenter, address, &boundingRect); - if (index.data(TransactionTableModel::WatchonlyRole).toBool()) - { - QIcon iconWatchonly = qvariant_cast(index.data(TransactionTableModel::WatchonlyDecorationRole)); - QRect watchonlyRect(boundingRect.right() + 5, mainRect.top()+ypad+halfheight, 16, halfheight); - iconWatchonly.paint(painter, watchonlyRect); - } - if(amount < 0) { foreground = COLOR_NEGATIVE; From 080b47d9ce6288e1725857b3026291981ef75e34 Mon Sep 17 00:00:00 2001 From: Pavol Rusnak Date: Fri, 24 Jul 2020 11:03:31 +0200 Subject: [PATCH 083/102] rpc: reset scantxoutset progress on finish Github-Pull: #19362 Rebased-From: 8c4129b4540f4f739413ed9a6fbfc78afc252f42 --- src/rpc/blockchain.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/rpc/blockchain.cpp b/src/rpc/blockchain.cpp index 90cf8d6d1..509107d88 100644 --- a/src/rpc/blockchain.cpp +++ b/src/rpc/blockchain.cpp @@ -2109,6 +2109,7 @@ public: if (g_scan_in_progress.exchange(true)) { return false; } + CHECK_NONFATAL(g_scan_progress == 0); m_could_reserve = true; return true; } @@ -2116,6 +2117,7 @@ public: ~CoinsViewScanReserver() { if (m_could_reserve) { g_scan_in_progress = false; + g_scan_progress = 0; } } }; @@ -2228,7 +2230,6 @@ static RPCHelpMan scantxoutset() std::vector input_txos; std::map coins; g_should_abort_scan = false; - g_scan_progress = 0; int64_t count = 0; std::unique_ptr pcursor; CBlockIndex* tip; From 89426c43fb75fabd72e6e16433dab7f8ee9c860c Mon Sep 17 00:00:00 2001 From: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com> Date: Mon, 12 Apr 2021 21:43:28 +0300 Subject: [PATCH 084/102] ci: Fix macOS brew install command Details: https://github.com/Homebrew/discussions/discussions/691 Github-Pull: #21663 Rebased-From: b7381552cd4f965c45f1560d9cfc2fb09dbfcc1d --- .cirrus.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.cirrus.yml b/.cirrus.yml index 237560fc2..5223c0bea 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -131,8 +131,9 @@ task: task: name: 'macOS 10.14 native [GOAL: install] [GUI] [no depends]' - macos_brew_addon_script: - - brew install boost libevent berkeley-db4 qt miniupnpc ccache zeromq qrencode sqlite libtool automake pkg-config gnu-getopt + brew_install_script: + - brew update + - brew install boost libevent berkeley-db4 qt@5 miniupnpc ccache zeromq qrencode sqlite libtool automake pkg-config gnu-getopt << : *GLOBAL_TASK_TEMPLATE osx_instance: # Use latest image, but hardcode version to avoid silent upgrades (and breaks) From 681f728a35b800d6f1cc359171b6b40de9ddb9a4 Mon Sep 17 00:00:00 2001 From: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com> Date: Thu, 26 Nov 2020 19:01:19 +0200 Subject: [PATCH 085/102] ci: Build with --enable-werror by default, and document exceptions Github-Pull: #20182 Rebased-From: 2f6fe4e4e9e9e35e713c0a20cf891b023592110a --- ci/test/00_setup_env_arm.sh | 2 +- ci/test/00_setup_env_mac.sh | 2 +- ci/test/00_setup_env_mac_host.sh | 2 +- ci/test/00_setup_env_win64.sh | 4 ++++ ci/test/06_script_a.sh | 5 ++++- 5 files changed, 11 insertions(+), 4 deletions(-) diff --git a/ci/test/00_setup_env_arm.sh b/ci/test/00_setup_env_arm.sh index 610e55c4c..42783197a 100644 --- a/ci/test/00_setup_env_arm.sh +++ b/ci/test/00_setup_env_arm.sh @@ -25,4 +25,4 @@ export RUN_FUNCTIONAL_TESTS=false export GOAL="install" # -Wno-psabi is to disable ABI warnings: "note: parameter passing for argument of type ... changed in GCC 7.1" # This could be removed once the ABI change warning does not show up by default -export BITCOIN_CONFIG="--enable-glibc-back-compat --enable-reduce-exports CXXFLAGS=-Wno-psabi --enable-werror --with-boost-process" +export BITCOIN_CONFIG="--enable-glibc-back-compat --enable-reduce-exports CXXFLAGS=-Wno-psabi --with-boost-process" diff --git a/ci/test/00_setup_env_mac.sh b/ci/test/00_setup_env_mac.sh index e4450a65c..033e1e051 100644 --- a/ci/test/00_setup_env_mac.sh +++ b/ci/test/00_setup_env_mac.sh @@ -15,4 +15,4 @@ export XCODE_BUILD_ID=11C505 export RUN_UNIT_TESTS=false export RUN_FUNCTIONAL_TESTS=false export GOAL="deploy" -export BITCOIN_CONFIG="--with-gui --enable-reduce-exports --enable-werror --with-boost-process" +export BITCOIN_CONFIG="--with-gui --enable-reduce-exports --with-boost-process" diff --git a/ci/test/00_setup_env_mac_host.sh b/ci/test/00_setup_env_mac_host.sh index 7c25a34cf..14f1ea3ec 100644 --- a/ci/test/00_setup_env_mac_host.sh +++ b/ci/test/00_setup_env_mac_host.sh @@ -9,7 +9,7 @@ export LC_ALL=C.UTF-8 export HOST=x86_64-apple-darwin16 export PIP_PACKAGES="zmq" export GOAL="install" -export BITCOIN_CONFIG="--with-gui --enable-reduce-exports --enable-werror --with-boost-process" +export BITCOIN_CONFIG="--with-gui --enable-reduce-exports --with-boost-process" export CI_OS_NAME="macos" export NO_DEPENDS=1 export OSX_SDK="" diff --git a/ci/test/00_setup_env_win64.sh b/ci/test/00_setup_env_win64.sh index 72cc3f63c..affaaaa1a 100644 --- a/ci/test/00_setup_env_win64.sh +++ b/ci/test/00_setup_env_win64.sh @@ -14,3 +14,7 @@ export RUN_FUNCTIONAL_TESTS=false export RUN_SECURITY_TESTS="true" export GOAL="deploy" export BITCOIN_CONFIG="--enable-reduce-exports --disable-gui-tests --without-boost-process" + +# Compiler for MinGW-w64 causes false -Wreturn-type warning. +# See https://sourceforge.net/p/mingw-w64/bugs/306/ +export NO_WERROR=1 diff --git a/ci/test/06_script_a.sh b/ci/test/06_script_a.sh index 17d765b86..d99068cb1 100755 --- a/ci/test/06_script_a.sh +++ b/ci/test/06_script_a.sh @@ -6,7 +6,10 @@ export LC_ALL=C.UTF-8 -BITCOIN_CONFIG_ALL="--disable-dependency-tracking --prefix=$DEPENDS_DIR/$HOST --bindir=$BASE_OUTDIR/bin --libdir=$BASE_OUTDIR/lib" +BITCOIN_CONFIG_ALL="--enable-suppress-external-warnings --disable-dependency-tracking --prefix=$DEPENDS_DIR/$HOST --bindir=$BASE_OUTDIR/bin --libdir=$BASE_OUTDIR/lib" +if [ -z "$NO_WERROR" ]; then + BITCOIN_CONFIG_ALL="${BITCOIN_CONFIG_ALL} --enable-werror" +fi DOCKER_EXEC "ccache --zero-stats --max-size=$CCACHE_SIZE" BEGIN_FOLD autogen From 55e941f5df18ce6d9b1ee8759f1419c5d1f03a8f Mon Sep 17 00:00:00 2001 From: MarcoFalke Date: Mon, 30 Nov 2020 20:58:25 +0100 Subject: [PATCH 086/102] test: Fix intermittent feature_taproot issue Github-Pull: #20535 Rebased-From: fa275e1539941b49fe206ff0bf110e3362bec6bb --- test/functional/feature_taproot.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/test/functional/feature_taproot.py b/test/functional/feature_taproot.py index 2b9b61487..987022b7c 100755 --- a/test/functional/feature_taproot.py +++ b/test/functional/feature_taproot.py @@ -1441,6 +1441,10 @@ class TaprootTest(BitcoinTestFramework): self.nodes[1].generate(101) self.test_spenders(self.nodes[1], spenders_taproot_active(), input_counts=[1, 2, 2, 2, 2, 3]) + # Re-connect nodes in case they have been disconnected + self.disconnect_nodes(0, 1) + self.connect_nodes(0, 1) + # Transfer value of the largest 500 coins to pre-taproot node. addr = self.nodes[0].getnewaddress() From 83dfe6c65ef6c30ca01348ee5059c3d76e03d1d3 Mon Sep 17 00:00:00 2001 From: Pieter Wuille Date: Thu, 5 Aug 2021 09:15:44 -0700 Subject: [PATCH 087/102] Rate limit the processing of incoming addr messages While limitations on the influence of attackers on addrman already exist (affected buckets are restricted to a subset based on incoming IP / network group), there is no reason to permit them to let them feed us addresses at more than a multiple of the normal network rate. This commit introduces a "token bucket" rate limiter for the processing of addresses in incoming ADDR and ADDRV2 messages. Every connection gets an associated token bucket. Processing an address in an ADDR or ADDRV2 message from non-whitelisted peers consumes a token from the bucket. If the bucket is empty, the address is ignored (it is not forwarded or processed). The token counter increases at a rate of 0.1 tokens per second, and will accrue up to a maximum of 1000 tokens (the maximum we accept in a single ADDR or ADDRV2). When a GETADDR is sent to a peer, it immediately gets 1000 additional tokens, as we actively desire many addresses from such peers (this may temporarily cause the token count to exceed 1000). The rate limit of 0.1 addr/s was chosen based on observation of honest nodes on the network. Activity in general from most nodes is either 0, or up to a maximum around 0.025 addr/s for recent Bitcoin Core nodes. A few (self-identified, through subver) crawler nodes occasionally exceed 0.1 addr/s. Github-Pull: #22387 Rebased-From: 0d64b8f709b4655d8702f810d4876cd8d96ded82 --- src/net_permissions.h | 3 ++- src/net_processing.cpp | 33 +++++++++++++++++++++++++ test/functional/p2p_addr_relay.py | 1 + test/functional/p2p_addrv2_relay.py | 1 + test/functional/p2p_invalid_messages.py | 1 + 5 files changed, 38 insertions(+), 1 deletion(-) diff --git a/src/net_permissions.h b/src/net_permissions.h index bba0ea169..3b841ab13 100644 --- a/src/net_permissions.h +++ b/src/net_permissions.h @@ -30,7 +30,8 @@ enum NetPermissionFlags { PF_NOBAN = (1U << 4) | PF_DOWNLOAD, // Can query the mempool PF_MEMPOOL = (1U << 5), - // Can request addrs without hitting a privacy-preserving cache + // Can request addrs without hitting a privacy-preserving cache, and send us + // unlimited amounts of addrs. PF_ADDR = (1U << 7), // True if the user did not specifically set fine grained permissions diff --git a/src/net_processing.cpp b/src/net_processing.cpp index f29be8d8a..019d00e7d 100644 --- a/src/net_processing.cpp +++ b/src/net_processing.cpp @@ -146,6 +146,13 @@ static constexpr uint32_t MAX_GETCFILTERS_SIZE = 1000; static constexpr uint32_t MAX_GETCFHEADERS_SIZE = 2000; /** the maximum percentage of addresses from our addrman to return in response to a getaddr message. */ static constexpr size_t MAX_PCT_ADDR_TO_SEND = 23; +/** The maximum rate of address records we're willing to process on average. Can be bypassed using + * the NetPermissionFlags::Addr permission. */ +static constexpr double MAX_ADDR_RATE_PER_SECOND{0.1}; +/** The soft limit of the address processing token bucket (the regular MAX_ADDR_RATE_PER_SECOND + * based increments won't go above this, but the MAX_ADDR_TO_SEND increment following GETADDR + * is exempt from this limit. */ +static constexpr size_t MAX_ADDR_PROCESSING_TOKEN_BUCKET{MAX_ADDR_TO_SEND}; struct COrphanTx { // When modifying, adapt the copy of this definition in tests/DoS_tests. @@ -454,6 +461,12 @@ struct Peer { /** Work queue of items requested by this peer **/ std::deque m_getdata_requests GUARDED_BY(m_getdata_requests_mutex); + /** Number of addr messages that can be processed from this peer. Start at 1 to + * permit self-announcement. */ + double m_addr_token_bucket{1.0}; + /** When m_addr_token_bucket was last updated */ + std::chrono::microseconds m_addr_token_timestamp{GetTime()}; + Peer(NodeId id) : m_id(id) {} }; @@ -2438,6 +2451,9 @@ void PeerManager::ProcessMessage(CNode& pfrom, const std::string& msg_type, CDat // Get recent addresses m_connman.PushMessage(&pfrom, CNetMsgMaker(greatest_common_version).Make(NetMsgType::GETADDR)); pfrom.fGetAddr = true; + // When requesting a getaddr, accept an additional MAX_ADDR_TO_SEND addresses in response + // (bypassing the MAX_ADDR_PROCESSING_TOKEN_BUCKET limit). + peer->m_addr_token_bucket += MAX_ADDR_TO_SEND; } if (!pfrom.IsInboundConn()) { @@ -2591,11 +2607,28 @@ void PeerManager::ProcessMessage(CNode& pfrom, const std::string& msg_type, CDat std::vector vAddrOk; int64_t nNow = GetAdjustedTime(); int64_t nSince = nNow - 10 * 60; + + // Update/increment addr rate limiting bucket. + const auto current_time = GetTime(); + if (peer->m_addr_token_bucket < MAX_ADDR_PROCESSING_TOKEN_BUCKET) { + // Don't increment bucket if it's already full + const auto time_diff = std::max(current_time - peer->m_addr_token_timestamp, std::chrono::microseconds{0}); + const double increment = std::chrono::duration(time_diff).count() * MAX_ADDR_RATE_PER_SECOND; + peer->m_addr_token_bucket = std::min(peer->m_addr_token_bucket + increment, MAX_ADDR_PROCESSING_TOKEN_BUCKET); + } + peer->m_addr_token_timestamp = current_time; + + const bool rate_limited = !pfrom.HasPermission(NetPermissionFlags::PF_ADDR); for (CAddress& addr : vAddr) { if (interruptMsgProc) return; + // Apply rate limiting. + if (rate_limited) { + if (peer->m_addr_token_bucket < 1.0) break; + peer->m_addr_token_bucket -= 1.0; + } // We only bother storing full nodes, though this may include // things which we would not make an outbound connection to, in // part because we may make feeler connections to them. diff --git a/test/functional/p2p_addr_relay.py b/test/functional/p2p_addr_relay.py index 80f262d0d..e95a5faa8 100755 --- a/test/functional/p2p_addr_relay.py +++ b/test/functional/p2p_addr_relay.py @@ -41,6 +41,7 @@ class AddrTest(BitcoinTestFramework): def set_test_params(self): self.setup_clean_chain = False self.num_nodes = 1 + self.extra_args = [["-whitelist=addr@127.0.0.1"]] def run_test(self): self.log.info('Create connection that sends addr messages') diff --git a/test/functional/p2p_addrv2_relay.py b/test/functional/p2p_addrv2_relay.py index 23ce3e5d0..5abeabb5f 100755 --- a/test/functional/p2p_addrv2_relay.py +++ b/test/functional/p2p_addrv2_relay.py @@ -49,6 +49,7 @@ class AddrTest(BitcoinTestFramework): def set_test_params(self): self.setup_clean_chain = True self.num_nodes = 1 + self.extra_args = [["-whitelist=addr@127.0.0.1"]] def run_test(self): self.log.info('Create connection that sends addrv2 messages') diff --git a/test/functional/p2p_invalid_messages.py b/test/functional/p2p_invalid_messages.py index db72a361d..3934e7611 100755 --- a/test/functional/p2p_invalid_messages.py +++ b/test/functional/p2p_invalid_messages.py @@ -57,6 +57,7 @@ class InvalidMessagesTest(BitcoinTestFramework): def set_test_params(self): self.num_nodes = 1 self.setup_clean_chain = True + self.extra_args = [["-whitelist=addr@127.0.0.1"]] def run_test(self): self.test_buffer() From 8df3e5bd84f2b2b60730034cbd71fe8f3276d434 Mon Sep 17 00:00:00 2001 From: Pieter Wuille Date: Thu, 15 Jul 2021 12:59:23 -0700 Subject: [PATCH 088/102] Randomize the order of addr processing Github-Pull: #22387 Rebased-From: 5648138f5949013331c017c740646e2f4013bc24 --- src/net_processing.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/net_processing.cpp b/src/net_processing.cpp index 019d00e7d..7ca8c10d8 100644 --- a/src/net_processing.cpp +++ b/src/net_processing.cpp @@ -2619,6 +2619,7 @@ void PeerManager::ProcessMessage(CNode& pfrom, const std::string& msg_type, CDat peer->m_addr_token_timestamp = current_time; const bool rate_limited = !pfrom.HasPermission(NetPermissionFlags::PF_ADDR); + Shuffle(vAddr.begin(), vAddr.end(), FastRandomContext()); for (CAddress& addr : vAddr) { if (interruptMsgProc) From aaa4833fc9c3d44378e232002f4b9b447a2d18cb Mon Sep 17 00:00:00 2001 From: Pieter Wuille Date: Thu, 1 Jul 2021 16:02:05 -0700 Subject: [PATCH 089/102] Functional tests for addr rate limiting Github-Pull: #22387 Rebased-From: b4ece8a1cda69cc268d39d21bba59c51fa2fb9ed --- test/functional/p2p_addr_relay.py | 77 +++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) diff --git a/test/functional/p2p_addr_relay.py b/test/functional/p2p_addr_relay.py index e95a5faa8..1b5c9533f 100755 --- a/test/functional/p2p_addr_relay.py +++ b/test/functional/p2p_addr_relay.py @@ -16,7 +16,10 @@ from test_framework.p2p import P2PInterface from test_framework.test_framework import BitcoinTestFramework from test_framework.util import ( assert_equal, + assert_greater_than_or_equal, ) +import os +import random import time ADDRS = [] @@ -43,6 +46,19 @@ class AddrTest(BitcoinTestFramework): self.num_nodes = 1 self.extra_args = [["-whitelist=addr@127.0.0.1"]] + def setup_rand_addr_msg(self, num): + addrs = [] + for i in range(num): + addr = CAddress() + addr.time = self.mocktime + i + addr.nServices = NODE_NETWORK | NODE_WITNESS + addr.ip = "%i.%i.%i.%i" % (random.randrange(128,169), random.randrange(1,255), random.randrange(1,255), random.randrange(1,255)) + addr.port = 8333 + addrs.append(addr) + msg = msg_addr() + msg.addrs = addrs + return msg + def run_test(self): self.log.info('Create connection that sends addr messages') addr_source = self.nodes[0].add_p2p_connection(P2PInterface()) @@ -65,6 +81,67 @@ class AddrTest(BitcoinTestFramework): self.nodes[0].setmocktime(int(time.time()) + 30 * 60) addr_receiver.sync_with_ping() + # The following test is backported. The original test also verified behavior for + # outbound peers, but lacking add_outbound_p2p_connection, those tests have been + # removed here. + for contype, tokens, no_relay in [("inbound", 1, False)]: + self.log.info('Test rate limiting of addr processing for %s peers' % contype) + self.stop_node(0) + os.remove(os.path.join(self.nodes[0].datadir, "regtest", "peers.dat")) + self.start_node(0, []) + self.mocktime = int(time.time()) + self.nodes[0].setmocktime(self.mocktime) + peer = self.nodes[0].add_p2p_connection(AddrReceiver()) + + # Check that we start off with empty addrman + addr_count_0 = len(self.nodes[0].getnodeaddresses(0)) + assert_equal(addr_count_0, 0) + + # Send 600 addresses. For all but the block-relay-only peer this should result in at least 1 address. + peer.send_and_ping(self.setup_rand_addr_msg(600)) + addr_count_1 = len(self.nodes[0].getnodeaddresses(0)) + assert_greater_than_or_equal(tokens, addr_count_1) + assert_greater_than_or_equal(addr_count_0 + 600, addr_count_1) + assert_equal(addr_count_1 > addr_count_0, tokens > 0) + + # Send 600 more addresses. For the outbound-full-relay peer (which we send a GETADDR, and thus will + # process up to 1001 incoming addresses), this means more entries will appear. + peer.send_and_ping(self.setup_rand_addr_msg(600)) + addr_count_2 = len(self.nodes[0].getnodeaddresses(0)) + assert_greater_than_or_equal(tokens, addr_count_2) + assert_greater_than_or_equal(addr_count_1 + 600, addr_count_2) + assert_equal(addr_count_2 > addr_count_1, tokens > 600) + + # Send 10 more. As we reached the processing limit for all nodes, this should have no effect. + peer.send_and_ping(self.setup_rand_addr_msg(10)) + addr_count_3 = len(self.nodes[0].getnodeaddresses(0)) + assert_greater_than_or_equal(tokens, addr_count_3) + assert_equal(addr_count_2, addr_count_3) + + # Advance the time by 100 seconds, permitting the processing of 10 more addresses. Send 200, + # but verify that no more than 10 are processed. + self.mocktime += 100 + self.nodes[0].setmocktime(self.mocktime) + new_tokens = 0 if no_relay else 10 + tokens += new_tokens + peer.send_and_ping(self.setup_rand_addr_msg(200)) + addr_count_4 = len(self.nodes[0].getnodeaddresses(0)) + assert_greater_than_or_equal(tokens, addr_count_4) + assert_greater_than_or_equal(addr_count_3 + new_tokens, addr_count_4) + + # Advance the time by 1000 seconds, permitting the processing of 100 more addresses. Send 200, + # but verify that no more than 100 are processed (and at least some). + self.mocktime += 1000 + self.nodes[0].setmocktime(self.mocktime) + new_tokens = 0 if no_relay else 100 + tokens += new_tokens + peer.send_and_ping(self.setup_rand_addr_msg(200)) + addr_count_5 = len(self.nodes[0].getnodeaddresses(0)) + assert_greater_than_or_equal(tokens, addr_count_5) + assert_greater_than_or_equal(addr_count_4 + new_tokens, addr_count_5) + assert_equal(addr_count_5 > addr_count_4, not no_relay) + + self.nodes[0].disconnect_p2ps() if __name__ == '__main__': AddrTest().main() From a653aacbd66a47edd6d14ddc62fec2d4038456b8 Mon Sep 17 00:00:00 2001 From: Pieter Wuille Date: Wed, 7 Jul 2021 11:44:40 -0700 Subject: [PATCH 090/102] Add logging and addr rate limiting statistics Includes logging improvements by Vasil Dimov and John Newbery. Github-Pull: #22387 Rebased-From: f424d601e1b6870e20bc60f5ccba36d2e210377b --- src/net_processing.cpp | 23 ++++++++++++++++++++++- src/net_processing.h | 3 +++ src/rpc/net.cpp | 2 ++ 3 files changed, 27 insertions(+), 1 deletion(-) diff --git a/src/net_processing.cpp b/src/net_processing.cpp index 7ca8c10d8..f926fd652 100644 --- a/src/net_processing.cpp +++ b/src/net_processing.cpp @@ -466,6 +466,10 @@ struct Peer { double m_addr_token_bucket{1.0}; /** When m_addr_token_bucket was last updated */ std::chrono::microseconds m_addr_token_timestamp{GetTime()}; + /** Total number of addresses that were dropped due to rate limiting. */ + std::atomic m_addr_rate_limited{0}; + /** Total number of addresses that were processed (excludes rate limited ones). */ + std::atomic m_addr_processed{0}; Peer(NodeId id) : m_id(id) {} }; @@ -919,6 +923,8 @@ bool GetNodeStateStats(NodeId nodeid, CNodeStateStats &stats) { PeerRef peer = GetPeerRef(nodeid); if (peer == nullptr) return false; stats.m_misbehavior_score = WITH_LOCK(peer->m_misbehavior_mutex, return peer->m_misbehavior_score); + stats.m_addr_processed = peer->m_addr_processed.load(); + stats.m_addr_rate_limited = peer->m_addr_rate_limited.load(); return true; } @@ -2619,6 +2625,8 @@ void PeerManager::ProcessMessage(CNode& pfrom, const std::string& msg_type, CDat peer->m_addr_token_timestamp = current_time; const bool rate_limited = !pfrom.HasPermission(NetPermissionFlags::PF_ADDR); + uint64_t num_proc = 0; + uint64_t num_rate_limit = 0; Shuffle(vAddr.begin(), vAddr.end(), FastRandomContext()); for (CAddress& addr : vAddr) { @@ -2627,7 +2635,10 @@ void PeerManager::ProcessMessage(CNode& pfrom, const std::string& msg_type, CDat // Apply rate limiting. if (rate_limited) { - if (peer->m_addr_token_bucket < 1.0) break; + if (peer->m_addr_token_bucket < 1.0) { + ++num_rate_limit; + continue; + } peer->m_addr_token_bucket -= 1.0; } // We only bother storing full nodes, though this may include @@ -2643,6 +2654,7 @@ void PeerManager::ProcessMessage(CNode& pfrom, const std::string& msg_type, CDat // Do not process banned/discouraged addresses beyond remembering we received them continue; } + ++num_proc; bool fReachable = IsReachable(addr); if (addr.nTime > nSince && !pfrom.fGetAddr && vAddr.size() <= 10 && addr.IsRoutable()) { @@ -2653,6 +2665,15 @@ void PeerManager::ProcessMessage(CNode& pfrom, const std::string& msg_type, CDat if (fReachable) vAddrOk.push_back(addr); } + peer->m_addr_processed += num_proc; + peer->m_addr_rate_limited += num_rate_limit; + LogPrint(BCLog::NET, "Received addr: %u addresses (%u processed, %u rate-limited) from peer=%d%s\n", + vAddr.size(), + num_proc, + num_rate_limit, + pfrom.GetId(), + fLogIPs ? ", peeraddr=" + pfrom.addr.ToString() : ""); + m_connman.AddNewAddresses(vAddrOk, pfrom.addr, 2 * 60 * 60); if (vAddr.size() < 1000) pfrom.fGetAddr = false; diff --git a/src/net_processing.h b/src/net_processing.h index 87eee566d..1982551dd 100644 --- a/src/net_processing.h +++ b/src/net_processing.h @@ -32,6 +32,7 @@ static const bool DEFAULT_PEERBLOCKFILTERS = false; /** Threshold for marking a node to be discouraged, e.g. disconnected and added to the discouragement filter. */ static const int DISCOURAGEMENT_THRESHOLD{100}; + class PeerManager final : public CValidationInterface, public NetEventsInterface { public: PeerManager(const CChainParams& chainparams, CConnman& connman, BanMan* banman, @@ -150,6 +151,8 @@ struct CNodeStateStats { int nSyncHeight = -1; int nCommonHeight = -1; std::vector vHeightInFlight; + uint64_t m_addr_processed = 0; + uint64_t m_addr_rate_limited = 0; }; /** Get statistics from node state */ diff --git a/src/rpc/net.cpp b/src/rpc/net.cpp index 298529e4e..49d480c5f 100644 --- a/src/rpc/net.cpp +++ b/src/rpc/net.cpp @@ -236,6 +236,8 @@ static RPCHelpMan getpeerinfo() heights.push_back(height); } obj.pushKV("inflight", heights); + obj.pushKV("addr_processed", statestats.m_addr_processed); + obj.pushKV("addr_rate_limited", statestats.m_addr_rate_limited); } if (IsDeprecatedRPCEnabled("whitelisted")) { // whitelisted is deprecated in v0.21 for removal in v0.22 From 2a5710805195ca54a02aff3540ceaefb9cb3b3e2 Mon Sep 17 00:00:00 2001 From: Pieter Wuille Date: Thu, 29 Jul 2021 16:57:26 -0700 Subject: [PATCH 091/102] Avoid Appveyor compilation failure --- src/rpc/misc.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/rpc/misc.cpp b/src/rpc/misc.cpp index 00f7445cf..cca4c6787 100644 --- a/src/rpc/misc.cpp +++ b/src/rpc/misc.cpp @@ -387,7 +387,8 @@ static RPCHelpMan setmocktime() } SetMockTime(time); if (request.context.Has()) { - for (const auto& chain_client : request.context.Get().chain_clients) { + const auto& chain_clients = request.context.Get().chain_clients; + for (const auto& chain_client : chain_clients) { chain_client->setMockTime(time); } } From bf672ce25a765bbebbefd4c28b2a6089a90b2a60 Mon Sep 17 00:00:00 2001 From: "W. J. van der Laan" Date: Wed, 11 Aug 2021 12:07:36 +0200 Subject: [PATCH 092/102] build: Bump version to 0.21.2rc1 Tree-SHA512: 73d4df24ad516ca54ab23bcbd686223447a208904bb18a7a34400daab6d4b07322a7f244504547c772ede08b9e8606291df9d101236d8fd6debcb43563d069ac --- build_msvc/bitcoin_config.h | 6 +++--- configure.ac | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/build_msvc/bitcoin_config.h b/build_msvc/bitcoin_config.h index 01c552862..7820b3945 100644 --- a/build_msvc/bitcoin_config.h +++ b/build_msvc/bitcoin_config.h @@ -21,7 +21,7 @@ #define CLIENT_VERSION_MINOR 21 /* Build revision */ -#define CLIENT_VERSION_REVISION 1 +#define CLIENT_VERSION_REVISION 2 /* Copyright holder(s) before %s replacement */ #define COPYRIGHT_HOLDERS "The %s developers" @@ -253,7 +253,7 @@ #define PACKAGE_NAME "Bitcoin Core" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "Bitcoin Core 0.21.1" +#define PACKAGE_STRING "Bitcoin Core 0.21.2" /* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "bitcoin" @@ -262,7 +262,7 @@ #define PACKAGE_URL "https://bitcoincore.org/" /* Define to the version of this package. */ -#define PACKAGE_VERSION "0.21.1" +#define PACKAGE_VERSION "0.21.2" /* Define to necessary symbol if this constant uses a non-standard name on your system. */ diff --git a/configure.ac b/configure.ac index 6e13780e1..f21ec0977 100644 --- a/configure.ac +++ b/configure.ac @@ -1,9 +1,9 @@ AC_PREREQ([2.69]) define(_CLIENT_VERSION_MAJOR, 0) define(_CLIENT_VERSION_MINOR, 21) -define(_CLIENT_VERSION_REVISION, 1) +define(_CLIENT_VERSION_REVISION, 2) define(_CLIENT_VERSION_BUILD, 0) -define(_CLIENT_VERSION_RC, 0) +define(_CLIENT_VERSION_RC, 1) define(_CLIENT_VERSION_IS_RELEASE, true) define(_COPYRIGHT_YEAR, 2020) define(_COPYRIGHT_HOLDERS,[The %s developers]) From e94e43376217618b13565adb4d320f2f79e55a3c Mon Sep 17 00:00:00 2001 From: "W. J. van der Laan" Date: Wed, 11 Aug 2021 13:20:20 +0200 Subject: [PATCH 093/102] doc: Update manual pages for 0.21.2 Tree-SHA512: 26870ec4b8423879ccdbe0d74670985bf73f4814d32ff5d2c312acdd766e93e07e6a69bfb58b0288be8ba402d283ce493684420b254f8535936cb061ee11c0d2 --- doc/man/bitcoin-cli.1 | 6 +++--- doc/man/bitcoin-qt.1 | 6 +++--- doc/man/bitcoin-tx.1 | 6 +++--- doc/man/bitcoin-wallet.1 | 6 +++--- doc/man/bitcoind.1 | 6 +++--- 5 files changed, 15 insertions(+), 15 deletions(-) diff --git a/doc/man/bitcoin-cli.1 b/doc/man/bitcoin-cli.1 index 4d21ecbab..3e9cbec3f 100644 --- a/doc/man/bitcoin-cli.1 +++ b/doc/man/bitcoin-cli.1 @@ -1,7 +1,7 @@ .\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.13. -.TH BITCOIN-CLI "1" "April 2021" "bitcoin-cli v0.21.1.0" "User Commands" +.TH BITCOIN-CLI "1" "August 2021" "bitcoin-cli v0.21.2.0" "User Commands" .SH NAME -bitcoin-cli \- manual page for bitcoin-cli v0.21.1.0 +bitcoin-cli \- manual page for bitcoin-cli v0.21.2.0 .SH SYNOPSIS .B bitcoin-cli [\fI\,options\/\fR] \fI\, \/\fR[\fI\,params\/\fR] \fI\,Send command to Bitcoin Core\/\fR @@ -15,7 +15,7 @@ bitcoin-cli \- manual page for bitcoin-cli v0.21.1.0 .B bitcoin-cli [\fI\,options\/\fR] \fI\,help Get help for a command\/\fR .SH DESCRIPTION -Bitcoin Core RPC client version v0.21.1.0 +Bitcoin Core RPC client version v0.21.2.0 .SH OPTIONS .HP \-? diff --git a/doc/man/bitcoin-qt.1 b/doc/man/bitcoin-qt.1 index cd152cebb..b61be86ff 100644 --- a/doc/man/bitcoin-qt.1 +++ b/doc/man/bitcoin-qt.1 @@ -1,12 +1,12 @@ .\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.13. -.TH BITCOIN-QT "1" "April 2021" "bitcoin-qt v0.21.1.0" "User Commands" +.TH BITCOIN-QT "1" "August 2021" "bitcoin-qt v0.21.2.0" "User Commands" .SH NAME -bitcoin-qt \- manual page for bitcoin-qt v0.21.1.0 +bitcoin-qt \- manual page for bitcoin-qt v0.21.2.0 .SH SYNOPSIS .B bitcoin-qt [\fI\,command-line options\/\fR] .SH DESCRIPTION -Bitcoin Core version v0.21.1.0 +Bitcoin Core version v0.21.2.0 .SH OPTIONS .HP \-? diff --git a/doc/man/bitcoin-tx.1 b/doc/man/bitcoin-tx.1 index bfbbbbc9f..02e17e33b 100644 --- a/doc/man/bitcoin-tx.1 +++ b/doc/man/bitcoin-tx.1 @@ -1,7 +1,7 @@ .\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.13. -.TH BITCOIN-TX "1" "April 2021" "bitcoin-tx v0.21.1.0" "User Commands" +.TH BITCOIN-TX "1" "August 2021" "bitcoin-tx v0.21.2.0" "User Commands" .SH NAME -bitcoin-tx \- manual page for bitcoin-tx v0.21.1.0 +bitcoin-tx \- manual page for bitcoin-tx v0.21.2.0 .SH SYNOPSIS .B bitcoin-tx [\fI\,options\/\fR] \fI\, \/\fR[\fI\,commands\/\fR] \fI\,Update hex-encoded bitcoin transaction\/\fR @@ -9,7 +9,7 @@ bitcoin-tx \- manual page for bitcoin-tx v0.21.1.0 .B bitcoin-tx [\fI\,options\/\fR] \fI\,-create \/\fR[\fI\,commands\/\fR] \fI\,Create hex-encoded bitcoin transaction\/\fR .SH DESCRIPTION -Bitcoin Core bitcoin\-tx utility version v0.21.1.0 +Bitcoin Core bitcoin\-tx utility version v0.21.2.0 .SH OPTIONS .HP \-? diff --git a/doc/man/bitcoin-wallet.1 b/doc/man/bitcoin-wallet.1 index d521acd41..22afd47d9 100644 --- a/doc/man/bitcoin-wallet.1 +++ b/doc/man/bitcoin-wallet.1 @@ -1,9 +1,9 @@ .\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.13. -.TH BITCOIN-WALLET "1" "April 2021" "bitcoin-wallet v0.21.1.0" "User Commands" +.TH BITCOIN-WALLET "1" "August 2021" "bitcoin-wallet v0.21.2.0" "User Commands" .SH NAME -bitcoin-wallet \- manual page for bitcoin-wallet v0.21.1.0 +bitcoin-wallet \- manual page for bitcoin-wallet v0.21.2.0 .SH DESCRIPTION -Bitcoin Core bitcoin\-wallet version v0.21.1.0 +Bitcoin Core bitcoin\-wallet version v0.21.2.0 .PP bitcoin\-wallet is an offline tool for creating and interacting with Bitcoin Core wallet files. By default bitcoin\-wallet will act on wallets in the default mainnet wallet directory in the datadir. diff --git a/doc/man/bitcoind.1 b/doc/man/bitcoind.1 index a6a5d763d..6535e7fe9 100644 --- a/doc/man/bitcoind.1 +++ b/doc/man/bitcoind.1 @@ -1,12 +1,12 @@ .\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.13. -.TH BITCOIND "1" "April 2021" "bitcoind v0.21.1.0" "User Commands" +.TH BITCOIND "1" "August 2021" "bitcoind v0.21.2.0" "User Commands" .SH NAME -bitcoind \- manual page for bitcoind v0.21.1.0 +bitcoind \- manual page for bitcoind v0.21.2.0 .SH SYNOPSIS .B bitcoind [\fI\,options\/\fR] \fI\,Start Bitcoin Core\/\fR .SH DESCRIPTION -Bitcoin Core version v0.21.1.0 +Bitcoin Core version v0.21.2.0 .SH OPTIONS .HP \-? From 89d148c8c65b3e6b6a8fb8b722efb4b6a7d0a375 Mon Sep 17 00:00:00 2001 From: "W. J. van der Laan" Date: Wed, 11 Aug 2021 13:22:47 +0200 Subject: [PATCH 094/102] qt: Translations update for 0.21.2rc1 Tree-SHA512: f0a74deb84711645ba112b364fbe958db51992f28d0ec87262dd0a21f1052a270f5fc8c13dfd6dc6f5a8a5580e7f1991b3de2d44e3a44252cd3c315dfc2e00ba --- src/qt/locale/bitcoin_af.ts | 4 + src/qt/locale/bitcoin_ar.ts | 214 ++- src/qt/locale/bitcoin_be.ts | 8 + src/qt/locale/bitcoin_bg.ts | 4 + src/qt/locale/bitcoin_bn.ts | 4 + src/qt/locale/bitcoin_bs.ts | 1348 ++++++++++++++- src/qt/locale/bitcoin_ca.ts | 8 + src/qt/locale/bitcoin_cs.ts | 8 + src/qt/locale/bitcoin_cy.ts | 4 + src/qt/locale/bitcoin_da.ts | 10 +- src/qt/locale/bitcoin_de.ts | 1924 ++++++++++----------- src/qt/locale/bitcoin_el.ts | 128 +- src/qt/locale/bitcoin_eo.ts | 4 + src/qt/locale/bitcoin_es.ts | 14 +- src/qt/locale/bitcoin_es_CL.ts | 72 +- src/qt/locale/bitcoin_es_CO.ts | 22 + src/qt/locale/bitcoin_es_DO.ts | 4 + src/qt/locale/bitcoin_es_MX.ts | 8 + src/qt/locale/bitcoin_es_VE.ts | 4 + src/qt/locale/bitcoin_et.ts | 14 +- src/qt/locale/bitcoin_eu.ts | 451 ++++- src/qt/locale/bitcoin_fa.ts | 400 +++-- src/qt/locale/bitcoin_fi.ts | 8 + src/qt/locale/bitcoin_fil.ts | 8 + src/qt/locale/bitcoin_fr.ts | 8 + src/qt/locale/bitcoin_gl_ES.ts | 6 +- src/qt/locale/bitcoin_he.ts | 18 +- src/qt/locale/bitcoin_hi.ts | 827 ++++++--- src/qt/locale/bitcoin_hr.ts | 4 + src/qt/locale/bitcoin_hu.ts | 266 +-- src/qt/locale/bitcoin_id.ts | 8 + src/qt/locale/bitcoin_is.ts | 4 + src/qt/locale/bitcoin_it.ts | 10 +- src/qt/locale/bitcoin_ja.ts | 92 + src/qt/locale/bitcoin_ka.ts | 16 + src/qt/locale/bitcoin_kk.ts | 4 + src/qt/locale/bitcoin_km.ts | 2106 ++++++++++++++++++++++- src/qt/locale/bitcoin_ko.ts | 8 + src/qt/locale/bitcoin_ku_IQ.ts | 86 +- src/qt/locale/bitcoin_ky.ts | 4 + src/qt/locale/bitcoin_la.ts | 60 +- src/qt/locale/bitcoin_lt.ts | 32 + src/qt/locale/bitcoin_lv.ts | 4 + src/qt/locale/bitcoin_mk.ts | 4 + src/qt/locale/bitcoin_ml.ts | 12 +- src/qt/locale/bitcoin_mn.ts | 4 + src/qt/locale/bitcoin_mr_IN.ts | 4 + src/qt/locale/bitcoin_my.ts | 84 + src/qt/locale/bitcoin_nb.ts | 50 +- src/qt/locale/bitcoin_nl.ts | 10 +- src/qt/locale/bitcoin_pam.ts | 4 + src/qt/locale/bitcoin_pl.ts | 30 +- src/qt/locale/bitcoin_pt.ts | 8 + src/qt/locale/bitcoin_pt_BR.ts | 48 +- src/qt/locale/bitcoin_ro.ts | 94 +- src/qt/locale/bitcoin_ru.ts | 850 +++++----- src/qt/locale/bitcoin_sk.ts | 323 +++- src/qt/locale/bitcoin_sl.ts | 16 + src/qt/locale/bitcoin_sn.ts | 4 + src/qt/locale/bitcoin_sq.ts | 4 + src/qt/locale/bitcoin_sr.ts | 14 +- src/qt/locale/bitcoin_sr@latin.ts | 4 + src/qt/locale/bitcoin_sv.ts | 4 + src/qt/locale/bitcoin_szl.ts | 4 + src/qt/locale/bitcoin_ta.ts | 36 +- src/qt/locale/bitcoin_te.ts | 132 +- src/qt/locale/bitcoin_th.ts | 2592 ++++++++++++++++++++++++++++- src/qt/locale/bitcoin_tr.ts | 1664 +++++++++++++++++- src/qt/locale/bitcoin_uk.ts | 8 + src/qt/locale/bitcoin_ur.ts | 227 ++- src/qt/locale/bitcoin_uz@Cyrl.ts | 4 + src/qt/locale/bitcoin_uz@Latn.ts | 4 + src/qt/locale/bitcoin_vi.ts | 74 +- src/qt/locale/bitcoin_zh_CN.ts | 12 +- src/qt/locale/bitcoin_zh_HK.ts | 106 +- src/qt/locale/bitcoin_zh_TW.ts | 8 + src/qt/locale/bitcoin_zu.ts | 4 + 77 files changed, 12532 insertions(+), 2150 deletions(-) diff --git a/src/qt/locale/bitcoin_af.ts b/src/qt/locale/bitcoin_af.ts index 058c02687..0cdab5970 100644 --- a/src/qt/locale/bitcoin_af.ts +++ b/src/qt/locale/bitcoin_af.ts @@ -807,6 +807,10 @@ Signing is only possible with addresses of the type 'legacy'. Create Wallet Create Wallet + + Wallet + Wallet + Wallet Name Wallet Name diff --git a/src/qt/locale/bitcoin_ar.ts b/src/qt/locale/bitcoin_ar.ts index 30d37f54c..79c7dd6f7 100644 --- a/src/qt/locale/bitcoin_ar.ts +++ b/src/qt/locale/bitcoin_ar.ts @@ -89,7 +89,7 @@ Signing is only possible with addresses of the type 'legacy'. Export Address List - تصدير قائمة العناوين + صدّر قائمة العناوين Comma separated file (*.csv) @@ -135,7 +135,7 @@ Signing is only possible with addresses of the type 'legacy'. Show passphrase - إظهار كلمة المرور + أظهر كلمة المرور Encrypt wallet @@ -443,10 +443,6 @@ Signing is only possible with addresses of the type 'legacy'. Processing blocks on disk... معالجة الكتل على القرص... - - Processed %n block(s) of transaction history. - Processed %n blocks of transaction history.Processed %n block of transaction history.Processed %n blocks of transaction history.Processed %n blocks of transaction history.Processed %n blocks of transaction history.تمت معالجة٪ n من كتل سجل المعاملات. - %1 behind خلف %1 @@ -837,6 +833,10 @@ Signing is only possible with addresses of the type 'legacy'. Create Wallet إنشاء محفظة + + Wallet + محفظة + Wallet Name إسم المحفظة @@ -849,6 +849,10 @@ Signing is only possible with addresses of the type 'legacy'. Encrypt Wallet تشفير محفظة + + Advanced Options + خيارات متقدمة + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. تعطيل المفاتيح الخاصة لهذه المحفظة. لن تحتوي المحافظ ذات المفاتيح الخاصة المعطلة على مفاتيح خاصة ولا يمكن أن تحتوي على مفتاح HD أو مفاتيح خاصة مستوردة. هذا مثالي لمحافظ مشاهدة فقط فقط. @@ -877,7 +881,11 @@ Signing is only possible with addresses of the type 'legacy'. Create إنشاء - + + Compiled without sqlite support (required for descriptor wallets) + تم تجميعه بدون دعم sqlite (مطلوب لمحافظ الواصف) + + EditAddressDialog @@ -1041,10 +1049,6 @@ Signing is only possible with addresses of the type 'legacy'. Error خطأ - - (of %n GB needed) - (من %n جيجابايت اللازمة)(من %n جيجابايت اللازمة)(من %n جيجابايت اللازمة)(من %n جيجابايت اللازمة)(من %n جيجابايت اللازمة)(من %n جيجابايت اللازمة) - ModalOverlay @@ -1124,7 +1128,7 @@ Signing is only possible with addresses of the type 'legacy'. default wallet - محفظة إفتراضية + المحفظة الإفتراضية Opening Wallet <b>%1</b>... @@ -1708,30 +1712,10 @@ Signing is only possible with addresses of the type 'legacy'. %1 ms %1 جزء من الثانية - - %n minute(s) - %n دقيقة%n دقيقة%n دقيقة%n دقيقة%n دقيقة%n دقيقة - - - %n hour(s) - %n ساعة%n ساعة%n ساعة%n ساعة%n ساعة%n ساعة - - - %n day(s) - %n أيام%n يوم%n أيام%n يوم%n أيام%n أيام - - - %n week(s) - %n أسابيع%n أسابيع%n أسابيع%n أسابيع%n أسابيع%n أسابيع - %1 and %2 %1 و %2 - - %n year(s) - %n سنوات%n سنوات%n سنوات%n سنوات%n سنوات%n سنوات - %1 B %1 بايت @@ -1910,6 +1894,14 @@ Signing is only possible with addresses of the type 'legacy'. Synced Blocks كتل متزامنة + + The mapped Autonomous System used for diversifying peer selection. + يستخدم النظام المستقل المعين لتنويع اختيار الأقران. + + + Mapped AS + تعيين AS + User Agent وكيل المستخدم @@ -2326,6 +2318,10 @@ Signing is only possible with addresses of the type 'legacy'. Choose... إختر … + + Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain. + يمكن أن يؤدي استخدام الرسوم الاحتياطية إلى إرسال معاملة تستغرق عدة ساعات أو أيام (أو أبدًا) للتأكيد. ضع في اعتبارك اختيار الرسوم يدويًا أو انتظر حتى تتحقق من صحة السلسلة الكاملة. + Warning: Fee estimation is currently not possible. تحذير: تقدير الرسوم غير ممكن في الوقت الحالي. @@ -2902,10 +2898,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Credit رصيد - - matures in %n more block(s) - تنضج خلال %n كتل إضافيةتنضج خلال %n كتل إضافيةتنضج خلال %n كتل إضافيةتنضج خلال %n كتل إضافيةتنضج خلال %n كتل إضافيةتنضج خلال %n كتل إضافية - not accepted غير مقبولة @@ -3012,10 +3004,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Label وسم - - Open for %n more block(s) - مفتوح لـ %n كتلة إضافيةمفتوح لـ %n كتلة إضافيةمفتوح لـ %n كتلة إضافيةمفتوح لـ %n كتلة إضافيةمفتوح لـ %n كتلة إضافيةمفتوح لـ %n كتلة إضافية - Open until %1 مفتوح حتى %1 @@ -3361,7 +3349,7 @@ Go to File > Open Wallet to load a wallet. default wallet - المحفظة إفتراضية + المحفظة الإفتراضية @@ -3493,10 +3481,26 @@ Go to File > Open Wallet to load a wallet. Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. غير قادر على اعادة الكتل. سوف تحتاج الى اعادة بناء قاعدة البيانات باستخدام - reindex-chainstate + + Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain + تعذر إرجاع قاعدة البيانات إلى حالة ما قبل الانقسام. سوف تحتاج إلى إعادة تنزيل blockchain + + + Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. + تحذير: يبدو أن الشبكة لا توافق تمامًا! يبدو أن بعض عمال المناجم يواجهون مشكلات. + + + Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. + تحذير: لا يبدو أننا نتفق تمامًا مع أقراننا! قد تحتاج إلى الترقية ، أو قد تحتاج العقد الأخرى إلى الترقية. + -maxmempool must be at least %d MB -الحد الأقصى للذاكرة على الأقل %d ميغابايت + + Cannot resolve -%s address: '%s' + لا يمكن الحل - %s العنوان: '%s' + Change index out of range فهرس الفكة خارج النطاق @@ -3513,6 +3517,14 @@ Go to File > Open Wallet to load a wallet. Do you want to rebuild the block database now? هل تريد إعادة بناء قاعدة بيانات الكتل الآن؟ + + Error initializing block database + Error initializing block database + + + Error initializing wallet database environment %s! + Error initializing wallet database environment %s! + Error loading %s خطأ في تحميل %s @@ -3585,10 +3597,38 @@ Go to File > Open Wallet to load a wallet. SQLiteDatabase: Failed to execute statement to verify database: %s SQLiteDatabase: فشل في تحضير التصريح لجلب التطبيق id: %s + + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s + + + SQLiteDatabase: Failed to fetch the application id: %s + SQLiteDatabase: Failed to fetch the application id: %s + + + SQLiteDatabase: Failed to prepare statement to verify database: %s + SQLiteDatabase: Failed to prepare statement to verify database: %s + + + SQLiteDatabase: Failed to read database verification error: %s + SQLiteDatabase: Failed to read database verification error: %s + + + SQLiteDatabase: Unexpected application id. Expected %u, got %u + SQLiteDatabase: Unexpected application id. Expected %u, got %u + + + Specified blocks directory "%s" does not exist. + Specified blocks directory "%s" does not exist. + Unknown address type '%s' عنوان غير صحيح : '%s' + + Unknown change type '%s' + Unknown change type '%s' + Upgrading txindex database تحديث قاعدة بيانات txindex @@ -3637,10 +3677,18 @@ Go to File > Open Wallet to load a wallet. Unable to generate keys غير قادر على توليد مفاتيح. + + Unsupported logging category %s=%s. + Unsupported logging category %s=%s. + Upgrading UTXO database ترقية قاعدة بيانات UTXO + + User Agent comment (%s) contains unsafe characters. + User Agent comment (%s) contains unsafe characters. + Verifying blocks... التحقق من الكتل... @@ -3649,6 +3697,14 @@ Go to File > Open Wallet to load a wallet. Wallet needed to be rewritten: restart %s to complete يلزم إعادة كتابة المحفظة: إعادة تشغيل %s لإكمال العملية + + Error: Listening for incoming connections failed (listen returned error %s) + Error: Listening for incoming connections failed (listen returned error %s) + + + %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. + %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. + Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) قيمة غير صالحة لـ -maxtxfee=<amount>: '%s' (يجب أن تحتوي على الحد الأدنى للعمولة من %s على الأقل لتجنب المعاملات العالقة. @@ -3657,10 +3713,30 @@ Go to File > Open Wallet to load a wallet. The transaction amount is too small to send after the fee has been deducted قيمة المعاملة صغيرة جدًا ولا يمكن إرسالها بعد خصم الرسوم + + This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet + This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet + + + This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. + This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. + + + Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. + Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain تحتاج إلى إعادة إنشاء قاعدة البيانات باستخدام -reindex للعودة إلى الوضعية الغير مجردة. هذا سوف يعيد تحميل سلسلة الكتل بأكملها + + A fatal internal error occurred, see debug.log for details + A fatal internal error occurred, see debug.log for details + + + Cannot set -peerblockfilters without -blockfilterindex. + Cannot set -peerblockfilters without -blockfilterindex. + Disk space is too low! تحذير: مساحة القرص منخفضة @@ -3673,10 +3749,54 @@ Go to File > Open Wallet to load a wallet. Error upgrading chainstate database خطأ في ترقية قاعدة بيانات chainstate + + Error: Disk space is low for %s + خطأ : مساحة القرص منخفضة ل %s + + + Error: Keypool ran out, please call keypoolrefill first + Error: Keypool ran out, please call keypoolrefill first + + + Fee rate (%s) is lower than the minimum fee rate setting (%s) + Fee rate (%s) is lower than the minimum fee rate setting (%s) + Invalid -onion address or hostname: '%s' عنوان اونيون غير صحيح : '%s' + + Invalid -proxy address or hostname: '%s' + Invalid -proxy address or hostname: '%s' + + + Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) + Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) + + + Invalid netmask specified in -whitelist: '%s' + Invalid netmask specified in -whitelist: '%s' + + + Need to specify a port with -whitebind: '%s' + Need to specify a port with -whitebind: '%s' + + + No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. + No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. + + + Prune mode is incompatible with -blockfilterindex. + Prune mode is incompatible with -blockfilterindex. + + + Reducing -maxconnections from %d to %d, because of system limitations. + Reducing -maxconnections from %d to %d, because of system limitations. + + + Section [%s] is not recognized. + لم يتم التعرف على القسم  [%s] + Signing transaction failed فشل توقيع المعاملة @@ -3691,6 +3811,10 @@ Go to File > Open Wallet to load a wallet. ملف المحفظة المحدد "%s" غير موجود + + Specified -walletdir "%s" is not a directory + Specified -walletdir "%s" is not a directory + The specified config file %s does not exist @@ -3717,6 +3841,10 @@ Go to File > Open Wallet to load a wallet. Unable to bind to %s on this computer (bind returned error %s) يتعذر الربط مع %s على هذا الكمبيوتر (الربط انتج خطأ %s) + + Unable to create the PID file '%s': %s + Unable to create the PID file '%s': %s + Unable to generate initial keys غير قادر على توليد مفاتيح أولية @@ -3737,6 +3865,10 @@ Go to File > Open Wallet to load a wallet. This is the transaction fee you may pay when fee estimates are not available. هذه هي رسوم المعاملة التي قد تدفعها عندما تكون عملية حساب الرسوم غير متوفرة. + + Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments. + Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments. + %s is set very high! %s عالٍ جداً diff --git a/src/qt/locale/bitcoin_be.ts b/src/qt/locale/bitcoin_be.ts index f2a022220..8677b8620 100644 --- a/src/qt/locale/bitcoin_be.ts +++ b/src/qt/locale/bitcoin_be.ts @@ -131,6 +131,10 @@ Repeat new passphrase Паўтарыце новую кодавую фразу + + Show passphrase + Паказаць кодавую фразу + Encrypt wallet Зашыфраваць гаманец. @@ -552,6 +556,10 @@ CreateWalletDialog + + Wallet + Гаманец + EditAddressDialog diff --git a/src/qt/locale/bitcoin_bg.ts b/src/qt/locale/bitcoin_bg.ts index 9ce074e4c..5da1e41e8 100644 --- a/src/qt/locale/bitcoin_bg.ts +++ b/src/qt/locale/bitcoin_bg.ts @@ -724,6 +724,10 @@ Create Wallet Създайте портфейл + + Wallet + портфейл + EditAddressDialog diff --git a/src/qt/locale/bitcoin_bn.ts b/src/qt/locale/bitcoin_bn.ts index e1b9bcdc6..c87bbcdc5 100644 --- a/src/qt/locale/bitcoin_bn.ts +++ b/src/qt/locale/bitcoin_bn.ts @@ -819,6 +819,10 @@ Signing is only possible with addresses of the type 'legacy'. Create Wallet Create Wallet + + Wallet + Wallet + Wallet Name Wallet Name diff --git a/src/qt/locale/bitcoin_bs.ts b/src/qt/locale/bitcoin_bs.ts index 4de1bd3a6..bc5cc8003 100644 --- a/src/qt/locale/bitcoin_bs.ts +++ b/src/qt/locale/bitcoin_bs.ts @@ -69,6 +69,11 @@ These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. Ovo su vaše Bitcoin adrese za slanje novca. Uvijek provjerite iznos i adresu primaoca prije slanja novca. + + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + Ovo su vaše Bitcoin adrese za primanje uplata. Upotrijebite dugme 'Stvori novu adresu prijema' na kartici primanja da biste kreirali nove adrese. Potpisivanje je moguće samo s adresama tipa 'legacy'. + &Copy Address &Kopirajte adresu @@ -100,59 +105,1150 @@ AddressTableModel - + + Label + Oznaka + + + Address + Adresa + + + (no label) + (nema oznake) + + AskPassphraseDialog - + + Passphrase Dialog + Dijalog Lozinke + + + Enter passphrase + Unesi lozinku + + + New passphrase + Nova lozinka + + + Repeat new passphrase + Ponovi novu lozinku + + + Show passphrase + Prikaži lozinku + + + Encrypt wallet + Šifriraj novčanik + + + This operation needs your wallet passphrase to unlock the wallet. + Za otključavanje novčanika za ovu operaciju potrebna je lozinka vašeg novčanika. + + + Unlock wallet + Otključajte novčanik + + + Change passphrase + Promijenite lozinku + + + Confirm wallet encryption + Potvrdite šifriranje novčanika + + + Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! + Upozorenje: Ako šifrirate novčanik i izgubite lozinku, <b>IZGUBIT ĆETE SVE SVOJE BITKOINE!</b> + + + Are you sure you wish to encrypt your wallet? + Jeste li sigurni da želite šifrirati novčanik? + + + Wallet encrypted + Novčanik šifriran + + + Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. + Unesite novu lozinku za novčanik.<br/>Upotrijebite lozinku od <b>deset ili više nasumičnih znakova</b> ili <b>osam ili više riječi</b>. + + + Enter the old passphrase and new passphrase for the wallet. + Unesite staru i novu lozinku za novčanik. + + + Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. + Imajte na umu da šifriranje vašeg novčanika ne može u potpunosti zaštititi vaše bitcoine od krađe zlonamjernim softverom koji zarazi vaš računar. + + + Wallet to be encrypted + Novčanik za šifriranje + + + Your wallet is about to be encrypted. + Novčanik će uskoro biti šifriran. + + + Your wallet is now encrypted. + Novčanik je sada šifriran. + + + IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. + VAŽNO: Sve prethodne sigurnosne kopije datoteke novčanika koje ste napravili treba zamijeniti novo generiranom, šifriranom datotekom novčanika. Iz sigurnosnih razloga, prethodne sigurnosne kopije nešifrirane datoteke novčanika postat će beskorisne čim započnete koristiti novi, šifrirani novčanik. + + + Wallet encryption failed + Šifriranje novčanika nije uspjelo + + + Wallet encryption failed due to an internal error. Your wallet was not encrypted. + Šifriranje novčanika nije uspjelo zbog interne greške. Vaš novčanik nije šifriran. + + + The supplied passphrases do not match. + Upisane lozinke se ne podudaraju. + + + Wallet unlock failed + Otključavanje novčanika nije uspjelo + + + The passphrase entered for the wallet decryption was incorrect. + Lozinka unesena za dešifriranje novčanika nije ispravna. + + + Wallet passphrase was successfully changed. + Lozinka za novčanik uspješno je promijenjena. + + + Warning: The Caps Lock key is on! + Upozorenje: Tipka Caps Lock je uključena! + + BanTableModel - + + IP/Netmask + IP/Netmask + + + Banned Until + Zabranjeno Do + + BitcoinGUI - + + Sign &message... + Potpiši i pošalji poruku... + + + Synchronizing with network... + Sinkronizacija s mrežom... + + + &Overview + &Pregled + + + Show general overview of wallet + Prikaži opšti pregled novčanika + + + &Transactions + &Transakcije + + + Browse transaction history + Pregledajte historiju transakcija + + + Quit application + Zatvori aplikaciju + + + &About %1 + &O %1 + + + Show information about %1 + Prikaži informacije o %1 + + + About &Qt + O &Qt + + + Show information about Qt + Prikaži informacije o Qt + + + &Options... + &Opcije... + + + Modify configuration options for %1 + Izmijenite opcije konfiguracije za %1 + + + &Encrypt Wallet... + &Šifriraj novčanik... + + + &Backup Wallet... + &Rezervni Novčanik... + + + &Change Passphrase... + &Promijeni lozinku... + + + Open &URI... + Otvori &URI... + + + Create Wallet... + Kreirajte novčanik... + + + Create a new wallet + Kreirajte novi novčanik + + + Wallet: + Novčanik: + + + Click to disable network activity. + Kliknite da onemogućite mrežne aktivnosti. + + + Network activity disabled. + Mrežna aktivnost je onemogućena. + + + Click to enable network activity again. + Kliknite da ponovo omogućite mrežne aktivnosti. + + + Syncing Headers (%1%)... + Sinkroniziranje Zaglavlja (%1%)... + + + Reindexing blocks on disk... + Ponovno indeksiranje blokova na disku... + + + Proxy is <b>enabled</b>: %1 + Proxy je <b>omogućen</b>: %1 + + + Send coins to a Bitcoin address + Pošaljite kovanice na Bitcoin adresu + + + Backup wallet to another location + Izradite sigurnosnu kopiju novčanika na drugoj lokaciji + + + Change the passphrase used for wallet encryption + Promijenite lozinku koja se koristi za šifriranje novčanika + + + &Verify message... + &Potvrdi poruku... + + + &Send + &Pošalji + + + &Receive + &Primite + + + &Show / Hide + &Prikaži / Sakrij + + + Show or hide the main Window + Prikažite ili sakrijte glavni prozor + + + Encrypt the private keys that belong to your wallet + Šifrirajte privatne ključeve koji pripadaju vašem novčaniku + + + Sign messages with your Bitcoin addresses to prove you own them + Potpišite poruke sa svojim Bitcoin adresama da biste dokazali da ste njihov vlasnik + + + Verify messages to ensure they were signed with specified Bitcoin addresses + Potvrdite poruke kako biste bili sigurni da su potpisane navedenim Bitcoin adresama + + + &File + &Datoteka + + + &Settings + &Postavke + + + &Help + &Pomoć + + + Tabs toolbar + Alatna traka kartica + + + Request payments (generates QR codes and bitcoin: URIs) + Zatražite uplate (generira QR kodove i bitcoin: URI-je) + + + Show the list of used sending addresses and labels + Prikažite listu korištenih adresa i oznaka za slanje + + + Show the list of used receiving addresses and labels + Prikažite listu korištenih adresa i oznaka za prijem + + + &Command-line options + &Opcije komandne linije + + + Indexing blocks on disk... + Indeksiranje blokova na disku... + + + Processing blocks on disk... + Obrada blokova na disku... + + + %1 behind + %1 iza + + + Last received block was generated %1 ago. + Posljednji primljeni blok generiran je prije %1. + + + Transactions after this will not yet be visible. + Transakcije nakon ovoga još neće biti vidljive. + + + Error + Greška + + + Warning + Upozorenje + + + Information + Informacije + + + Up to date + U toku + + + &Load PSBT from file... + &Učitaj PSBT iz datoteke... + + + Load Partially Signed Bitcoin Transaction + Učitajte Djelomično Potpisanu Bitcoin Transakciju + + + Load PSBT from clipboard... + Učitaj PSBT iz međuspremnika... + + + Load Partially Signed Bitcoin Transaction from clipboard + Učitajte djelomično potpisanu bitcoin transakciju iz međuspremnika + + + Node window + Prozor čvora + + + Open node debugging and diagnostic console + Otvorite čvor za ispravljanje pogrešaka i dijagnostičku konzolu + + + &Sending addresses + &Slanje adresa + + + &Receiving addresses + &Primanje adresa + + + Open a bitcoin: URI + Otvorite bitcoin: URI + + + Open Wallet + Otvorite Novčanik + + + Open a wallet + Otvorite Novčanik + + + Close Wallet... + Zatvori Novčanik... + + + Close wallet + Zatvori novčanik + + + Close All Wallets... + Zatvori sve novčanike... + + + Close all wallets + Zatvori sve novčanike + + + Show the %1 help message to get a list with possible Bitcoin command-line options + Pokažite %1 poruku za pomoć da biste dobili listu s mogućim opcijama Bitcoin naredbenog retka + + + &Mask values + &Vrijednosti maske + + + Mask the values in the Overview tab + Maskirajte vrijednosti na kartici Pregled + + + default wallet + zadani novčanik + + + No wallets available + Nema dostupnih novčanika + + + &Window + &Prozor + + + Minimize + Minimizirajte + + + Zoom + Zoom + + + Main Window + Glavni Prozor + + + %1 client + %1 klijent + + + Connecting to peers... + Povezivanje s vršnjacima... + + + Catching up... + Nadoknađujem... + + + Error: %1 + Greška: %1 + + + Warning: %1 + Upozorenje: %1 + + + Date: %1 + + Datum: %1 + + + Amount: %1 + + Iznos: %1 + + + + Wallet: %1 + + Novčanik: %1 + + + + Type: %1 + + Tip: %1 + + + + Label: %1 + + Oznaka: %1 + + + + Address: %1 + + Adresa: %1 + + + + Sent transaction + Pošalji transakciju + + + Incoming transaction + Dolazna transakcija + + + HD key generation is <b>enabled</b> + Stvaranje HD ključa je <b>omogućeno</b> + + + HD key generation is <b>disabled</b> + Stvaranje HD ključa je <b>onemogućeno</b> + + + Private key <b>disabled</b> + Privatni ključ je <b>onemogućen</b> + + + Wallet is <b>encrypted</b> and currently <b>locked</b> + Novčanik je <b>šifriran</b> i trenutno je <b>zaključan</b> + + + Original message: + Orginalna poruka: + + + A fatal error occurred. %1 can no longer continue safely and will quit. + Dogodila se fatalna greška. %1 više ne može sigurno nastaviti i prestat će raditi. + + CoinControlDialog - + + Coin Selection + Izbor Novčića + + + Quantity: + Količina: + + + Bytes: + Bajtovi: + + + Amount: + Iznos: + + + Fee: + Naknada: + + + Dust: + Prašina: + + + After Fee: + Naknada nakon plaćanja: + + + Change: + Promjena: + + + (un)select all + (ne)odaberi sve + + + Tree mode + Primaz kao stablo + + + List mode + Način liste + + + Amount + Iznos + + + Received with label + Primljeno sa etiketom + + + Received with address + Primljeno sa adresom + + + Date + Datum + + + Confirmations + Potvrde + + + Confirmed + Potvrđeno + + + Copy address + Kopiraj adresu + + + Copy label + Kopiraj naljepnicu + + + Copy amount + Kopiraj iznos + + + Copy transaction ID + Kopirajte ID transakcije + + + Lock unspent + Zaključaj nepotrošeno + + + Unlock unspent + Odključaj nepotrošeno + + + Copy quantity + Kopiraj količinu + + + Copy fee + Kopiraj naknadu + + + Copy after fee + Kopiraj vrijednost poslije naknade + + + Copy bytes + Kopiraj bajte + + + Copy dust + Kopiraj prašinu + + + Copy change + Kopiraj promjenu + + + (%1 locked) + (%1 zaključano) + + + yes + da + + + no + ne + + + This label turns red if any recipient receives an amount smaller than the current dust threshold. + Ova naljepnica postaje crvena ako bilo koji primatelj primi količinu manju od trenutnog praga prašine. + + + (no label) + (nema oznake) + + + change from %1 (%2) + promjena iz %1 (%2) + + + (change) + (promjeni) + + CreateWalletActivity - + + Creating Wallet <b>%1</b>... + Kreiranje novčanika <b>%1</b>... + + + Create wallet failed + Izrada novčanika nije uspjela + + + Create wallet warning + Stvorite upozorenje novčanika + + CreateWalletDialog - + + Create Wallet + Kreirajte Novčanik + + + Wallet + Novčanik + + + Wallet Name + Ime Novčanika + + + Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. + Šifrirajte novčanik. Novčanik će biti šifriran lozinkom po vašem izboru. + + + Encrypt Wallet + Šifrirajte Novčanik + + + Advanced Options + Napredne Opcije + + + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. + Onemogućite privatne ključeve za ovaj novčanik. Novčanici s onemogućenim privatnim ključevima neće imati privatne ključeve i ne mogu imati HD sjeme ili uvezene privatne ključeve. Ovo je idealno za novčanike za gledanje. + + + Disable Private Keys + Onemogućite Privatne Ključeve + + + Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. + Napravite prazan novčanik. Prazni novčanici u početku nemaju privatne ključeve ili skripte. Privatni ključevi i adrese mogu se kasnije uvoziti ili postaviti HD seme. + + + Make Blank Wallet + Napravi Prazan Novčanik + + + Use descriptors for scriptPubKey management + Koristite deskriptore za upravljanje scriptPubKey + + + Descriptor Wallet + Deskriptor Novčanik + + + Create + Napravi + + + Compiled without sqlite support (required for descriptor wallets) + Sastavljeno bez podrške za sqlite (potrebno za deskriptorske novčanike) + + EditAddressDialog - + + Edit Address + Uredi Adresu + + + &Label + &Oznaka + + + The label associated with this address list entry + Oznaka povezana s ovim unosom liste adresa + + + The address associated with this address list entry. This can only be modified for sending addresses. + Adresa povezana s ovim unosom liste adresa. Ovo se može izmijeniti samo za slanje adresa. + + + &Address + &Adresa + + + New sending address + Nova adresa za slanje + + + Edit receiving address + Uredite adresu prijema + + + Edit sending address + Uredite adresu za slanje + + + The entered address "%1" is not a valid Bitcoin address. + Unesena adresa "%1" nije važeća Bitcoin adresa. + + + Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address. + Adresa "%1" već postoji kao adresa primatelja s oznakom "%2" i zato se ne može dodati kao adresa za slanje. + + + The entered address "%1" is already in the address book with label "%2". + Unesena adresa "%1" već je u adresaru sa oznakom "%2". + + + Could not unlock wallet. + Nije moguće otključati novčanik. + + + New key generation failed. + Nova generacija ključeva nije uspjela. + + FreespaceChecker - + + A new data directory will be created. + Stvorit će se novi direktorij podataka. + + + name + ime + + + Directory already exists. Add %1 if you intend to create a new directory here. + Direktorij već postoji. Dodajte %1 ako ovdje namjeravate stvoriti novi direktorij. + + + Path already exists, and is not a directory. + Put već postoji i nije direktorij. + + + Cannot create data directory here. + Ovdje nije moguće stvoriti direktorij podataka. + + HelpMessageDialog - + + version + verzija + + + About %1 + O %1 + + + Command-line options + Opcije komandne linije + + Intro + + Welcome + Dobrodošli + + + Welcome to %1. + Dobrodošli u %1. + + + As this is the first time the program is launched, you can choose where %1 will store its data. + Zato što je ovo prvi put da se program pokreće, možete odabrati gdje će %1 čuvati svoje podatke. + + + When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. + Kada kliknete OK, %1 će početi preuzimati i obrađivati ​​puni lanac blokova %4 (%2GB), počevši od najranijih transakcija u %3 kada je %4 isprva pokrenut. + + + Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. + Vraćanje ove postavke zahtijeva ponovno preuzimanje cijelog lanca blokova. Brže je prvo preuzeti čitav lanac i kasnije ga obrezati. Onemogućava neke napredne funkcije. + This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. + + If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. + Ako ste odlučili ograničiti skladištenje lanca blokova (obrezivanje), povijesni podaci i dalje se moraju preuzeti i obraditi, ali će se nakon toga izbrisati kako bi se smanjila upotreba diska. + + + Use the default data directory + Koristite zadani direktorij podataka + + + Use a custom data directory: + Koristite prilagođeni direktorij podataka: + Bitcoin Bitcoin + + Discard blocks after verification, except most recent %1 GB (prune) + Odbaci blokove nakon provjere, osim najnovijih %1 GB (prune) + + + At least %1 GB of data will be stored in this directory, and it will grow over time. + Najmanje %1 GB podataka bit će pohranjeno u ovom direktoriju i vremenom će rasti. + + + Approximately %1 GB of data will be stored in this directory. + Otprilike %1 GB podataka bit će pohranjeno u ovom direktoriju. + + + %1 will download and store a copy of the Bitcoin block chain. + %1 će preuzeti i pohraniti kopiju lanca Bitcoin blokova. + + + The wallet will also be stored in this directory. + Novčanik će također biti pohranjen u ovom imeniku. + + + Error: Specified data directory "%1" cannot be created. + Greška: Navedeni direktorij podataka "%1" ne može se kreirati. + + + Error + Greška + ModalOverlay - + + Form + Obrazac + + + Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. + Nedavne transakcije možda još nisu vidljive, pa stoga stanje na vašem novčaniku može biti pogrešno. Ove će informacije biti točne nakon što se novčanik završi sa sinhronizacijom s bitcoin mrežom, kao što je detaljno opisano u nastavku. + + + Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network. + Pokušaj trošenja bitcoina na koje utječu još uvijek ne prikazane transakcije mreža neće prihvatiti. + + + Number of blocks left + Broj preostalih blokova + + + Unknown... + Nepoznato... + + + Last block time + Vrijeme zadnjeg bloka + + + Progress + Napredak + + + Progress increase per hour + Povećanje napretka po satu + + + calculating... + računanje... + + + Estimated time left until synced + Procijenjeno vrijeme do sinhronizacije + + + Hide + Sakrij + + + Esc + Esc + + + %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. + %1 se trenutno sinhronizira. Preuzet će zaglavlja i blokove sa vršnjaka i provjeriti ih dok ne dođu do vrha lanca blokova. + + + Unknown. Syncing Headers (%1, %2%)... + Nepoznato. Sinhronizacija Zaglavlja (%1, %2%)... + + OpenURIDialog - + + Open bitcoin URI + Otvorite bitcoin URI + + + URI: + URI: + + OpenWalletActivity + + default wallet + zadani novčanik + OptionsDialog + + Options + Opcije + + + &Main + &Glavni + + + Automatically start %1 after logging in to the system. + Automatski pokreni %1 nakon prijave u sistem. + + + &Start %1 on system login + &Pokrenite %1 na sistemskoj prijavi + + + Size of &database cache + Veličina predmemorije &database + + + IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1) + IP adresa proxyja (npr. IPv4: 127.0.0.1 / IPv6: ::1) + + + Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type. + Pokazuje da li se isporučeni zadani SOCKS5 proxy koristi za dosezanje vršnjaka putem ovog tipa mreže. + + + Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu. + Smanjite, umjesto da izađete iz aplikacije kada je prozor zatvoren. Kada je ova opcija omogućena, aplikacija će se zatvoriti tek nakon odabira Izlaz u izborniku. + + + Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. + URL-ovi trećih strana (npr. Istraživač blokova) koji se na kartici transakcija pojavljuju kao stavke kontekstnog izbornika.%s u URL-u se zamjenjuje hešom transakcije. Više URL-ova odvojeno je okomitom trakom |. + + + Open the %1 configuration file from the working directory. + Otvorite datoteku konfiguracije %1 iz radnog direktorija. + + + Open Configuration File + Otvorite Konfiguracijsku Datoteku + + + Reset all client options to default. + Vratite sve opcije klijenta na zadane. + + + &Reset Options + &Resetiraj opcije + + + &Network + &Mreža + + + GB + GB + + + Reverting this setting requires re-downloading the entire blockchain. + Vraćanje ove postavke zahtijeva ponovno preuzimanje cijelog lanca blokova. + + + MiB + MiB + + + (0 = auto, <0 = leave that many cores free) + (0 = automatski, <0 = ostavi toliko jezgara slobodnim) + + + Expert + Stručnjak + + + If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed. + Ako onemogućite trošenje nepotvrđene promjene, promjena iz transakcije neće se moći koristiti dok ta transakcija nema barem jednu potvrdu. Ovo također utječe na način izračunavanja vašeg stanja. + + + Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled. + Automatski otvorite port Bitcoin klijenta na usmjerivaču. Ovo radi samo kada vaš usmjerivač podržava UPnP i ako je omogućen. + + + Map port using &UPnP + Map port koristi &UPnP + + + Accept connections from outside. + Prihvatite veze izvana. + + + Connect to the Bitcoin network through a SOCKS5 proxy. + Povežite se s Bitcoin mrežom putem SOCKS5 proxyja. + + + Proxy &IP: + Proxy &IP: + + + Port of the proxy (e.g. 9050) + Port proxyja (npr. 9050) + + + Used for reaching peers via: + Koristi se za dosezanje vršnjaka putem: + + + IPv4 + IPv4 + + + IPv6 + IPv6 + + + Tor + Tor + + + &Window + &Prozor + + + Show only a tray icon after minimizing the window. + Prikažite samo ikonu ladice nakon umanjivanja prozora. + + + The user interface language can be set here. This setting will take effect after restarting %1. + Ovdje se može podesiti jezik korisničkog interfejsa. Ova postavka će stupiti na snagu nakon ponovnog pokretanja %1. + + + Error + Greška + OverviewPage + + Form + Obrazac + PSBTOperationsDialog @@ -165,25 +1261,153 @@ QObject - + + Amount + Iznos + + + Error: Specified data directory "%1" does not exist. + Greška: Navedeni direktorij podataka "%1" ne postoji. + + + Error: Cannot parse configuration file: %1. + Greška: Nije moguće parsirati konfiguracijsku datoteku: %1. + + + Error: %1 + Greška: %1 + + + %1 didn't yet exit safely... + %1 još nije sigurno izašlo... + + + unknown + nepoznato + + QRImageWidget RPCConsole + + Node window + Prozor čvora + + + Last block time + Vrijeme zadnjeg bloka + ReceiveCoinsDialog + + Copy label + Kopiraj naljepnicu + + + Copy amount + Kopiraj iznos + + + Could not unlock wallet. + Nije moguće otključati novčanik. + ReceiveRequestDialog + + Amount: + Iznos: + + + Wallet: + Novčanik: + RecentRequestsTableModel + + Date + Datum + + + Label + Oznaka + + + (no label) + (nema oznake) + SendCoinsDialog - + + Quantity: + Količina: + + + Bytes: + Bajtovi: + + + Amount: + Iznos: + + + Fee: + Naknada: + + + After Fee: + Naknada nakon plaćanja: + + + Change: + Promjena: + + + Hide + Sakrij + + + Dust: + Prašina: + + + Copy quantity + Kopiraj količinu + + + Copy amount + Kopiraj iznos + + + Copy fee + Kopiraj naknadu + + + Copy after fee + Kopiraj vrijednost poslije naknade + + + Copy bytes + Kopiraj bajte + + + Copy dust + Kopiraj prašinu + + + Copy change + Kopiraj promjenu + + + (no label) + (nema oznake) + + SendCoinsEntry @@ -197,7 +1421,15 @@ ShutdownWindow - + + %1 is shutting down... + %1 se gasi... + + + Do not shut down the computer until this window disappears. + Ne isključujte računar dok ovaj prozor ne nestane. + + SignVerifyMessageDialog @@ -214,12 +1446,36 @@ TransactionDesc + + Date + Datum + + + unknown + nepoznato + + + Amount + Iznos + TransactionDescDialog TransactionTableModel + + Date + Datum + + + Label + Oznaka + + + (no label) + (nema oznake) + TransactionView @@ -243,10 +1499,42 @@ This year Ove godine + + Copy address + Kopiraj adresu + + + Copy label + Kopiraj naljepnicu + + + Copy amount + Kopiraj iznos + + + Copy transaction ID + Kopirajte ID transakcije + Comma separated file (*.csv) Datoteka podataka odvojenih zarezima (*.csv) + + Confirmed + Potvrđeno + + + Date + Datum + + + Label + Oznaka + + + Address + Adresa + Exporting Failed Izvoz neuspješan @@ -254,16 +1542,36 @@ UnitDisplayStatusBarControl - + + Unit to show amounts in. Click to select another unit. + Jedinica u kojoj se prikazuju iznosi. Kliknite za odabir druge jedinice. + + WalletController + + Close wallet + Zatvori novčanik + + + Close all wallets + Zatvori sve novčanike + WalletFrame - + + Create a new wallet + Kreirajte novi novčanik + + WalletModel - + + default wallet + zadani novčanik + + WalletView @@ -274,6 +1582,10 @@ Export the data in the current tab to a file Izvezite podatke trenutne kartice u datoteku + + Error + Greška + bitcoin-core diff --git a/src/qt/locale/bitcoin_ca.ts b/src/qt/locale/bitcoin_ca.ts index d618c20bd..6a5c971a8 100644 --- a/src/qt/locale/bitcoin_ca.ts +++ b/src/qt/locale/bitcoin_ca.ts @@ -844,6 +844,10 @@ Només és possible firmar amb adreces del tipus "legacy". Create Wallet Crear cartera + + Wallet + Cartera + Wallet Name Nom de la cartera @@ -856,6 +860,10 @@ Només és possible firmar amb adreces del tipus "legacy". Encrypt Wallet Xifrar la cartera + + Advanced Options + Opcions avançades + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. Deshabilita les claus privades per a aquesta cartera. Carteres amb claus privades deshabilitades no tindran cap clau privada i no podran tenir cap llavor HD o importar claus privades. diff --git a/src/qt/locale/bitcoin_cs.ts b/src/qt/locale/bitcoin_cs.ts index f4a21f006..8356270dc 100644 --- a/src/qt/locale/bitcoin_cs.ts +++ b/src/qt/locale/bitcoin_cs.ts @@ -843,6 +843,10 @@ Signing is only possible with addresses of the type 'legacy'. Create Wallet Vytvořit peněženku + + Wallet + Peněženka + Wallet Name Název peněženky @@ -855,6 +859,10 @@ Signing is only possible with addresses of the type 'legacy'. Encrypt Wallet Zašifrovat peněženku + + Advanced Options + Pokročilé možnosti. + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. Vypnout soukromé klíče pro tuto peněženku. Peněženky s vypnutými soukromými klíči nebudou mít soukromé klíče a nemohou mít HD inicializaci ani importované soukromé klíče. Tohle je ideální pro peněženky pouze na sledování. diff --git a/src/qt/locale/bitcoin_cy.ts b/src/qt/locale/bitcoin_cy.ts index cd1fe6232..59f60e27e 100644 --- a/src/qt/locale/bitcoin_cy.ts +++ b/src/qt/locale/bitcoin_cy.ts @@ -610,6 +610,10 @@ CreateWalletDialog + + Wallet + Waled + EditAddressDialog diff --git a/src/qt/locale/bitcoin_da.ts b/src/qt/locale/bitcoin_da.ts index 05a836a51..8502bd6e9 100644 --- a/src/qt/locale/bitcoin_da.ts +++ b/src/qt/locale/bitcoin_da.ts @@ -843,6 +843,10 @@ Signing is only possible with addresses of the type 'legacy'. Create Wallet Opret tegnebog + + Wallet + Tegnebog + Wallet Name Navn på tegnebog @@ -855,6 +859,10 @@ Signing is only possible with addresses of the type 'legacy'. Encrypt Wallet Kryptér tegnebog + + Advanced Options + Avancerede Indstillinger + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. Slå private nøgler fra for denne tegnebog. Tegnebøger med private nøgler slået fra vil ikke have nogen private nøgler og kan ikke have et HD-seed eller importerede private nøgler. Dette er ideelt til kigge-tegnebøger. @@ -2737,7 +2745,7 @@ Note: Siden gebyret er kalkuleret på en per-byte basis, et gebyr på "100 satos A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. - En besked, som blev føjet til “bitcon:”-URI'en, som vil gemmes med transaktionen til din reference. Bemærk: Denne besked vil ikke blive sendt over Bitcoin-netværket. + En besked, som blev føjet til “bitcoin:”-URI'en, som vil gemmes med transaktionen til din reference. Bemærk: Denne besked vil ikke blive sendt over Bitcoin-netværket. Pay To: diff --git a/src/qt/locale/bitcoin_de.ts b/src/qt/locale/bitcoin_de.ts index ae1ac8568..6da7f67c7 100644 --- a/src/qt/locale/bitcoin_de.ts +++ b/src/qt/locale/bitcoin_de.ts @@ -3,337 +3,337 @@ AddressBookPage Right-click to edit address or label - Rechtsklick zum Bearbeiten der Adresse oder der Beschreibung + Right-click to edit address or label Create a new address - Neue Adresse erstellen + Create a new address &New - &Neu + &New Copy the currently selected address to the system clipboard - Ausgewählte Adresse in die Zwischenablage kopieren + Copy the currently selected address to the system clipboard &Copy - &Kopieren + &Copy C&lose - &Schließen + C&lose Delete the currently selected address from the list - Ausgewählte Adresse aus der Liste entfernen + Delete the currently selected address from the list Enter address or label to search - Zu suchende Adresse oder Bezeichnung eingeben + Enter address or label to search Export the data in the current tab to a file - Daten der aktuellen Ansicht in eine Datei exportieren + Export the data in the current tab to a file &Export - &Exportieren + &Export &Delete - &Löschen + &Delete Choose the address to send coins to - Wählen Sie die Adresse aus, an die Sie Bitcoins senden möchten + Choose the address to send coins to Choose the address to receive coins with - Wählen Sie die Adresse aus, mit der Sie Bitcoins empfangen wollen + Choose the address to receive coins with C&hoose - &Auswählen + C&hoose Sending addresses - Sendeadressen + Sending addresses Receiving addresses - Empfangsadressen + Receiving addresses These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. - Dies sind Ihre Bitcoin-Adressen zum Tätigen von Überweisungen. Bitte prüfen Sie den Betrag und die Adresse des Empfängers, bevor Sie Bitcoins überweisen. + These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. Signing is only possible with addresses of the type 'legacy'. - Dies sind Ihre Bitcoin-Adressen für den Empfang von Zahlungen. Verwenden Sie die 'Neue Empfangsadresse erstellen' Taste auf der Registerkarte "Empfangen", um neue Adressen zu erstellen. -Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich. + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. &Copy Address - &Adresse kopieren + &Copy Address Copy &Label - &Bezeichnung kopieren + Copy &Label &Edit - &Bearbeiten + &Edit Export Address List - Adressliste exportieren + Export Address List Comma separated file (*.csv) - Kommagetrennte-Datei (*.csv) + Comma separated file (*.csv) Exporting Failed - Exportieren fehlgeschlagen + Exporting Failed There was an error trying to save the address list to %1. Please try again. - Beim Speichern der Adressliste nach %1 ist ein Fehler aufgetreten. Bitte versuchen Sie es erneut. + There was an error trying to save the address list to %1. Please try again. AddressTableModel Label - Bezeichnung + Label Address - Adresse + Address (no label) - (keine Bezeichnung) + (no label) AskPassphraseDialog Passphrase Dialog - Passphrasendialog + Passphrase Dialog Enter passphrase - Passphrase eingeben + Enter passphrase New passphrase - Neue Passphrase + New passphrase Repeat new passphrase - Neue Passphrase bestätigen + Repeat new passphrase Show passphrase - Zeige Passphrase + Show passphrase Encrypt wallet - Wallet verschlüsseln + Encrypt wallet This operation needs your wallet passphrase to unlock the wallet. - Dieser Vorgang benötigt Ihre Passphrase, um die Wallet zu entsperren. + This operation needs your wallet passphrase to unlock the wallet. Unlock wallet - Wallet entsperren + Unlock wallet This operation needs your wallet passphrase to decrypt the wallet. - Dieser Vorgang benötigt Ihre Passphrase, um die Wallet zu entschlüsseln. + This operation needs your wallet passphrase to decrypt the wallet. Decrypt wallet - Wallet entschlüsseln + Decrypt wallet Change passphrase - Passphrase ändern + Change passphrase Confirm wallet encryption - Wallet-Verschlüsselung bestätigen + Confirm wallet encryption Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! - Warnung: Wenn Sie Ihre Wallet verschlüsseln und Ihre Passphrase verlieren, werden Sie <b>ALLE IHRE BITCOINS VERLIEREN</b>! + Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! Are you sure you wish to encrypt your wallet? - Sind Sie sich sicher, dass Sie Ihre Wallet verschlüsseln möchten? + Are you sure you wish to encrypt your wallet? Wallet encrypted - Wallet verschlüsselt + Wallet encrypted Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. - Geben Sie die neue Passphrase für die Wallet ein.<br/>Bitte benutzen Sie eine Passphrase bestehend aus <b>zehn oder mehr zufälligen Zeichen</b> oder <b>acht oder mehr Wörtern</b>. + Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. Enter the old passphrase and new passphrase for the wallet. - Geben Sie die alte und die neue Wallet-Passphrase ein. + Enter the old passphrase and new passphrase for the wallet. Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. - Beachten Sie, dass das Verschlüsseln Ihrer Wallet nicht komplett vor Diebstahl Ihrer Bitcoins durch Malware schützt, die Ihren Computer infiziert hat. + Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. Wallet to be encrypted - Wallet zu verschlüsseln + Wallet to be encrypted Your wallet is about to be encrypted. - Wallet wird verschlüsselt. + Your wallet is about to be encrypted. Your wallet is now encrypted. - Deine Wallet ist jetzt verschlüsselt. + Your wallet is now encrypted. IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. - WICHTIG: Alle vorherigen Wallet-Backups sollten durch die neu erzeugte, verschlüsselte Wallet ersetzt werden. Aus Sicherheitsgründen werden vorherige Backups der unverschlüsselten Wallet nutzlos, sobald Sie die neue, verschlüsselte Wallet verwenden. + IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. Wallet encryption failed - Wallet-Verschlüsselung fehlgeschlagen + Wallet encryption failed Wallet encryption failed due to an internal error. Your wallet was not encrypted. - Die Wallet-Verschlüsselung ist aufgrund eines internen Fehlers fehlgeschlagen. Ihre Wallet wurde nicht verschlüsselt. + Wallet encryption failed due to an internal error. Your wallet was not encrypted. The supplied passphrases do not match. - Die eingegebenen Passphrasen stimmen nicht überein. + The supplied passphrases do not match. Wallet unlock failed - Wallet-Entsperrung fehlgeschlagen + Wallet unlock failed The passphrase entered for the wallet decryption was incorrect. - Die eingegebene Passphrase zur Wallet-Entschlüsselung war nicht korrekt. + The passphrase entered for the wallet decryption was incorrect. Wallet decryption failed - Wallet-Entschlüsselung fehlgeschlagen + Wallet decryption failed Wallet passphrase was successfully changed. - Die Wallet-Passphrase wurde erfolgreich geändert. + Wallet passphrase was successfully changed. Warning: The Caps Lock key is on! - Warnung: Die Feststelltaste ist aktiviert! + Warning: The Caps Lock key is on! BanTableModel IP/Netmask - IP/Netzmaske + IP/Netmask Banned Until - Gesperrt bis + Banned Until BitcoinGUI Sign &message... - Nachricht s&ignieren... + Sign &message... Synchronizing with network... - Synchronisiere mit Netzwerk... + Synchronizing with network... &Overview - &Übersicht + &Overview Show general overview of wallet - Allgemeine Wallet-Übersicht anzeigen + Show general overview of wallet &Transactions - &Transaktionen + &Transactions Browse transaction history - Transaktionsverlauf durchsehen + Browse transaction history E&xit - &Beenden + E&xit Quit application - Anwendung beenden + Quit application &About %1 - Über %1 + &About %1 Show information about %1 - Informationen über %1 anzeigen + Show information about %1 About &Qt - Über &Qt + About &Qt Show information about Qt - Informationen über Qt anzeigen + Show information about Qt &Options... - &Konfiguration... + &Options... Modify configuration options for %1 - Konfiguration von %1 bearbeiten + Modify configuration options for %1 &Encrypt Wallet... - Wallet &verschlüsseln... + &Encrypt Wallet... &Backup Wallet... - Wallet &sichern... + &Backup Wallet... &Change Passphrase... - Passphrase &ändern... + &Change Passphrase... Open &URI... - &URI öffnen... + Open &URI... Create Wallet... - Wallet erstellen... + Create Wallet... Create a new wallet - Neue Wallet erstellen + Create a new wallet Wallet: @@ -341,215 +341,215 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich. Click to disable network activity. - Klicken zum Deaktivieren der Netzwerkaktivität. + Click to disable network activity. Network activity disabled. - Netzwerkaktivität deaktiviert. + Network activity disabled. Click to enable network activity again. - Klicken zum Aktivieren der Netzwerkaktivität. + Click to enable network activity again. Syncing Headers (%1%)... - Kopfdaten werden synchronisiert (%1%)... + Syncing Headers (%1%)... Reindexing blocks on disk... - Reindiziere Blöcke auf Datenträger... + Reindexing blocks on disk... Proxy is <b>enabled</b>: %1 - Proxy ist <b>aktiviert</b>: %1 + Proxy is <b>enabled</b>: %1 Send coins to a Bitcoin address - Bitcoins an eine Bitcoin-Adresse überweisen + Send coins to a Bitcoin address Backup wallet to another location - Eine Wallet-Sicherungskopie erstellen und abspeichern + Backup wallet to another location Change the passphrase used for wallet encryption - Ändert die Passphrase, die für die Wallet-Verschlüsselung benutzt wird + Change the passphrase used for wallet encryption &Verify message... - Nachricht &verifizieren... + &Verify message... &Send - &Überweisen + &Send &Receive - &Empfangen + &Receive &Show / Hide - &Anzeigen / Verstecken + &Show / Hide Show or hide the main Window - Das Hauptfenster anzeigen oder verstecken + Show or hide the main Window Encrypt the private keys that belong to your wallet - Verschlüsselt die zu Ihrer Wallet gehörenden privaten Schlüssel + Encrypt the private keys that belong to your wallet Sign messages with your Bitcoin addresses to prove you own them - Nachrichten signieren, um den Besitz Ihrer Bitcoin-Adressen zu beweisen + Sign messages with your Bitcoin addresses to prove you own them Verify messages to ensure they were signed with specified Bitcoin addresses - Nachrichten verifizieren, um sicherzustellen, dass diese mit den angegebenen Bitcoin-Adressen signiert wurden + Verify messages to ensure they were signed with specified Bitcoin addresses &File - &Datei + &File &Settings - &Einstellungen + &Settings &Help - &Hilfe + &Help Tabs toolbar - Registerkartenleiste + Tabs toolbar Request payments (generates QR codes and bitcoin: URIs) - Zahlungen anfordern (erzeugt QR-Codes und "bitcoin:"-URIs) + Request payments (generates QR codes and bitcoin: URIs) Show the list of used sending addresses and labels - Liste verwendeter Zahlungsadressen und Bezeichnungen anzeigen + Show the list of used sending addresses and labels Show the list of used receiving addresses and labels - Liste verwendeter Empfangsadressen und Bezeichnungen anzeigen + Show the list of used receiving addresses and labels &Command-line options - &Kommandozeilenoptionen + &Command-line options %n active connection(s) to Bitcoin network - %n aktive Verbindung zum Bitcoin-Netzwerk%n aktive Verbindungen zum Bitcoin-Netzwerk + %n active connection to Bitcoin network%n active connections to Bitcoin network Indexing blocks on disk... - Indiziere Blöcke auf Datenträger... + Indexing blocks on disk... Processing blocks on disk... - Verarbeite Blöcke auf Datenträger... + Processing blocks on disk... Processed %n block(s) of transaction history. - %n Block des Transaktionsverlaufs verarbeitet.%n Blöcke des Transaktionsverlaufs verarbeitet. + Processed %n block of transaction history.Processed %n blocks of transaction history. %1 behind - %1 im Rückstand + %1 behind Last received block was generated %1 ago. - Der letzte empfangene Block ist %1 alt. + Last received block was generated %1 ago. Transactions after this will not yet be visible. - Transaktionen hiernach werden noch nicht angezeigt. + Transactions after this will not yet be visible. Error - Fehler + Error Warning - Warnung + Warning Information - Hinweis + Information Up to date - Auf aktuellem Stand + Up to date &Load PSBT from file... - &Lade PSBT aus Datei... + &Load PSBT from file... Load Partially Signed Bitcoin Transaction - Lade teilsignierte Bitcoin-Transaktion + Load Partially Signed Bitcoin Transaction Load PSBT from clipboard... - Lade PSBT aus Zwischenablage + Load PSBT from clipboard... Load Partially Signed Bitcoin Transaction from clipboard - Lade teilsignierte Bitcoin-Transaktion aus Zwischenablage + Load Partially Signed Bitcoin Transaction from clipboard Node window - Knotenfenster + Node window Open node debugging and diagnostic console - Öffne Knotenkonsole für Fehlersuche und Diagnose + Open node debugging and diagnostic console &Sending addresses - &Versandadressen + &Sending addresses &Receiving addresses - &Empfangsadressen + &Receiving addresses Open a bitcoin: URI - bitcoin: URI öffnen + Open a bitcoin: URI Open Wallet - Wallet öffnen + Open Wallet Open a wallet - Eine Wallet öffnen + Open a wallet Close Wallet... - Wallet schließen... + Close Wallet... Close wallet - Wallet schließen + Close wallet Close All Wallets... - Schließe alle Brieftaschen... + Close All Wallets... Close all wallets - Schließe alle Brieftaschen + Close all wallets Show the %1 help message to get a list with possible Bitcoin command-line options - Zeige den "%1"-Hilfetext, um eine Liste mit möglichen Kommandozeilenoptionen zu erhalten + Show the %1 help message to get a list with possible Bitcoin command-line options &Mask values - &Blende Werte aus + &Blende die Werte aus Mask the values in the Overview tab @@ -557,58 +557,58 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich. default wallet - Standard Wallet + default wallet No wallets available - Keine Wallets verfügbar + No wallets available &Window - &Programmfenster + &Window Minimize - Minimieren + Minimize Zoom - Vergrößern + Zoom Main Window - Hauptfenster + Main Window %1 client - %1 Client + %1 client Connecting to peers... - Verbinde mit Netzwerk... + Connecting to peers... Catching up... - Hole auf... + Catching up... Error: %1 - Fehler: %1 + Error: %1 Warning: %1 - Warnung: %1 + Warning: %1 Date: %1 - Datum: %1 + Date: %1 Amount: %1 - Betrag: %1 + Amount: %1 @@ -620,405 +620,413 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich. Type: %1 - Typ: %1 + Type: %1 Label: %1 - Bezeichnung: %1 + Label: %1 Address: %1 - Adresse: %1 + Address: %1 Sent transaction - Gesendete Transaktion + Sent transaction Incoming transaction - Eingehende Transaktion + Incoming transaction HD key generation is <b>enabled</b> - HD Schlüssel Generierung ist <b>aktiviert</b> + HD key generation is <b>enabled</b> HD key generation is <b>disabled</b> - HD Schlüssel Generierung ist <b>deaktiviert</b> + HD key generation is <b>disabled</b> Private key <b>disabled</b> - Privater Schlüssel <b>deaktiviert</b> + Private key <b>disabled</b> Wallet is <b>encrypted</b> and currently <b>unlocked</b> - Wallet ist <b>verschlüsselt</b> und aktuell <b>entsperrt</b> + Wallet is <b>encrypted</b> and currently <b>unlocked</b> Wallet is <b>encrypted</b> and currently <b>locked</b> - Wallet ist <b>verschlüsselt</b> und aktuell <b>gesperrt</b> + Wallet is <b>encrypted</b> and currently <b>locked</b> Original message: - Original-Nachricht: + Original message: A fatal error occurred. %1 can no longer continue safely and will quit. - Ein fataler Fehler ist aufgetreten. %1 kann nicht länger sicher fortfahren und wird beendet. + A fatal error occurred. %1 can no longer continue safely and will quit. CoinControlDialog Coin Selection - Münzauswahl ("Coin Control") + Coin Selection Quantity: - Anzahl: + Quantity: Bytes: - Byte: + Bytes: Amount: - Betrag: + Amount: Fee: - Gebühr: + Fee: Dust: - "Staub": + Dust: After Fee: - Abzüglich Gebühr: + After Fee: Change: - Wechselgeld: + Change: (un)select all - Alles (de)selektieren + (un)select all Tree mode - Baumansicht + Tree mode List mode - Listenansicht + List mode Amount - Betrag + Amount Received with label - Empfangen über Bezeichnung + Received with label Received with address - Empfangen über Adresse + Received with address Date - Datum + Date Confirmations - Bestätigungen + Confirmations Confirmed - Bestätigt + Confirmed Copy address - Adresse kopieren + Copy address Copy label - Bezeichnung kopieren + Copy label Copy amount - Betrag kopieren + Copy amount Copy transaction ID - Transaktionskennung kopieren + Copy transaction ID Lock unspent - Nicht ausgegebenen Betrag sperren + Lock unspent Unlock unspent - Nicht ausgegebenen Betrag entsperren + Unlock unspent Copy quantity - Anzahl kopieren + Copy quantity Copy fee - Gebühr kopieren + Copy fee Copy after fee - Abzüglich Gebühr kopieren + Copy after fee Copy bytes - Byte kopieren + Copy bytes Copy dust - "Staub" kopieren + Copy dust Copy change - Wechselgeld kopieren + Copy change (%1 locked) - (%1 gesperrt) + (%1 locked) yes - ja + yes no - nein + no This label turns red if any recipient receives an amount smaller than the current dust threshold. - Diese Bezeichnung wird rot, wenn irgendein Empfänger einen Betrag kleiner als die derzeitige "Staubgrenze" erhält. + This label turns red if any recipient receives an amount smaller than the current dust threshold. Can vary +/- %1 satoshi(s) per input. - Kann pro Eingabe um +/- %1 Satoshi(s) abweichen. + Can vary +/- %1 satoshi(s) per input. (no label) - (keine Bezeichnung) + (no label) change from %1 (%2) - Wechselgeld von %1 (%2) + change from %1 (%2) (change) - (Wechselgeld) + (change) CreateWalletActivity Creating Wallet <b>%1</b>... - Erstelle Wallet<b>%1</b> ... + Creating Wallet <b>%1</b>... Create wallet failed - Fehler beim Wallet erstellen aufgetreten + Create wallet failed Create wallet warning - Warnung beim Wallet erstellen aufgetreten + Create wallet warning CreateWalletDialog Create Wallet - Wallet erstellen + Create Wallet + + + Wallet + Wallet Wallet Name - Wallet-Name + Wallet Name Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. - Verschlüssele das Wallet. Das Wallet wird mit einer Passphrase deiner Wahl verschlüsselt. + Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. Encrypt Wallet - Wallet verschlüsseln + Encrypt Wallet + + + Advanced Options + Advanced Options Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. - Deaktiviert private Schlüssel für dieses Wallet. Wallets mit deaktivierten privaten Schlüsseln werden keine privaten Schlüssel haben und können keinen HD Seed oder private Schlüssel importieren. Das ist ideal für Wallets, die nur beobachten. + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. Disable Private Keys - Private Keys deaktivieren + Disable Private Keys Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. - Erzeugt ein leeres Wallet. Leere Wallets haben zu Anfang keine privaten Schlüssel oder Scripte. Private Schlüssel oder Adressen können importiert werden, ebenso können jetzt oder später HD-Seeds gesetzt werden. + Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. Make Blank Wallet - Eine leere Wallet erstellen + Make Blank Wallet Use descriptors for scriptPubKey management - Deskriptoren für scriptPubKey Verwaltung nutzen + Use descriptors for scriptPubKey management Descriptor Wallet - Deskriptor-Brieftasche + Descriptor Wallet Create - Erstellen + Create Compiled without sqlite support (required for descriptor wallets) - Ohne SQLite-Unterstützung (erforderlich für Deskriptor-Brieftaschen) kompiliert + Compiled without sqlite support (required for descriptor wallets) EditAddressDialog Edit Address - Adresse bearbeiten + Edit Address &Label - &Bezeichnung + &Label The label associated with this address list entry - Bezeichnung, die dem Adresslisteneintrag zugeordnet ist. + The label associated with this address list entry The address associated with this address list entry. This can only be modified for sending addresses. - Adresse, die dem Adresslisteneintrag zugeordnet ist. Diese kann nur bei Zahlungsadressen verändert werden. + The address associated with this address list entry. This can only be modified for sending addresses. &Address - &Adresse + &Address New sending address - Neue Zahlungsadresse + New sending address Edit receiving address - Empfangsadresse bearbeiten + Edit receiving address Edit sending address - Zahlungsadresse bearbeiten + Edit sending address The entered address "%1" is not a valid Bitcoin address. - Die eingegebene Adresse "%1" ist keine gültige Bitcoin-Adresse. + The entered address "%1" is not a valid Bitcoin address. Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address. - Die Adresse "%1" existiert bereits als Empfangsadresse mit dem Label "%2" und kann daher nicht als Sendeadresse hinzugefügt werden. + Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address. The entered address "%1" is already in the address book with label "%2". - Die eingegebene Adresse "%1" befindet sich bereits im Adressbuch mit der Bezeichnung "%2". + The entered address "%1" is already in the address book with label "%2". Could not unlock wallet. - Wallet konnte nicht entsperrt werden. + Could not unlock wallet. New key generation failed. - Erzeugung eines neuen Schlüssels fehlgeschlagen. + New key generation failed. FreespaceChecker A new data directory will be created. - Es wird ein neues Datenverzeichnis angelegt. + A new data directory will be created. name - Name + name Directory already exists. Add %1 if you intend to create a new directory here. - Verzeichnis existiert bereits. Fügen Sie %1 an, wenn Sie beabsichtigen hier ein neues Verzeichnis anzulegen. + Directory already exists. Add %1 if you intend to create a new directory here. Path already exists, and is not a directory. - Pfad existiert bereits und ist kein Verzeichnis. + Path already exists, and is not a directory. Cannot create data directory here. - Datenverzeichnis kann hier nicht angelegt werden. + Cannot create data directory here. HelpMessageDialog version - Version + version About %1 - Über %1 + About %1 Command-line options - Kommandozeilenoptionen + Command-line options Intro Welcome - Willkommen + Welcome Welcome to %1. - Willkommen zu %1. + Welcome to %1. As this is the first time the program is launched, you can choose where %1 will store its data. - Da Sie das Programm gerade zum ersten Mal starten, können Sie nun auswählen wo %1 seine Daten ablegen wird. + As this is the first time the program is launched, you can choose where %1 will store its data. When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. - Wenn Sie auf OK klicken, beginnt %1 mit dem Herunterladen und Verarbeiten der gesamten %4-Blockchain (%2GB), beginnend mit den frühesten Transaktionen in %3 beim ersten Start von %4. + When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. - Um diese Einstellung wiederherzustellen, muss die gesamte Blockchain neu heruntergeladen werden. Es ist schneller, die gesamte Chain zuerst herunterzuladen und später zu bearbeiten. Deaktiviert einige erweiterte Funktionen. + Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. - Diese initiale Synchronisation führt zur hohen Last und kann Harewareprobleme, die bisher nicht aufgetreten sind, mit ihrem Computer verursachen. Jedes Mal, wenn Sie %1 ausführen, wird der Download zum letzten Synchronisationspunkt fortgesetzt. + This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. - Wenn Sie bewusst den Blockchain-Speicher begrenzen (pruning), müssen die historischen Daten dennoch heruntergeladen und verarbeitet werden. Diese Daten werden aber zum späteren Zeitpunkt gelöscht, um die Festplattennutzung niedrig zu halten. + If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. Use the default data directory - Standard-Datenverzeichnis verwenden + Use the default data directory Use a custom data directory: - Ein benutzerdefiniertes Datenverzeichnis verwenden: + Use a custom data directory: Bitcoin @@ -1026,90 +1034,90 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich. Discard blocks after verification, except most recent %1 GB (prune) - Verwerfe Blöcke nachdem sie verifiziert worden sind, ausser die %1 GB (prune) + Discard blocks after verification, except most recent %1 GB (prune) At least %1 GB of data will be stored in this directory, and it will grow over time. - Mindestens %1 GB Daten werden in diesem Verzeichnis gespeichert, und sie werden mit der Zeit zunehmen. + At least %1 GB of data will be stored in this directory, and it will grow over time. Approximately %1 GB of data will be stored in this directory. - Etwa %1 GB Daten werden in diesem Verzeichnis gespeichert. + Approximately %1 GB of data will be stored in this directory. %1 will download and store a copy of the Bitcoin block chain. - %1 wird eine Kopie der Bitcoin-Blockchain herunterladen und speichern. + %1 will download and store a copy of the Bitcoin block chain. The wallet will also be stored in this directory. - Die Wallet wird ebenfalls in diesem Verzeichnis gespeichert. + The wallet will also be stored in this directory. Error: Specified data directory "%1" cannot be created. - Fehler: Angegebenes Datenverzeichnis "%1" kann nicht angelegt werden. + Error: Specified data directory "%1" cannot be created. Error - Fehler + Error %n GB of free space available - %n GB freier Speicher verfügbar%n GB freier Speicher verfügbar + %n GB of free space available%n GB of free space available (of %n GB needed) - (von %n GB benötigt)(von %n GB benötigt) + (of %n GB needed)(of %n GB needed) (%n GB needed for full chain) - (%n GB benötigt für komplette Blockchain)(%n GB wird die komplette Blockchain benötigen) + (%n GB needed for full chain)(%n GB needed for full chain) ModalOverlay Form - Formular + Form Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. - Neueste Transaktionen werden eventuell noch nicht angezeigt, daher könnte Ihr Kontostand veraltet sein. Er wird korrigiert, sobald Ihr Wallet die Synchronisation mit dem Bitcoin-Netzwerk erfolgreich abgeschlossen hat. Details dazu finden sich weiter unten. + Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network. - Versuche, Bitcoins aus noch nicht angezeigten Transaktionen auszugeben, werden vom Netzwerk nicht akzeptiert. + Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network. Number of blocks left - Anzahl verbleibender Blöcke + Number of blocks left Unknown... - Unbekannt... + Unknown... Last block time - Letzte Blockzeit + Last block time Progress - Fortschritt + Progress Progress increase per hour - Fortschritt pro Stunde + Progress increase per hour calculating... - berechne... + calculating... Estimated time left until synced - Abschätzung der verbleibenden Zeit bis synchronisiert + Estimated time left until synced Hide - Ausblenden + Hide Esc @@ -1117,18 +1125,18 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich. %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. - %1 synchronisiert gerade. Es lädt Header und Blöcke von Gegenstellen und validiert sie bis zum Erreichen der Spitze der Blockkette. + %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. Unknown. Syncing Headers (%1, %2%)... - Unbekannt. Synchronisiere Headers (%1, %2%)... + Unknown. Syncing Headers (%1, %2%)... OpenURIDialog Open bitcoin URI - Öffne bitcoin URI + Open bitcoin URI URI: @@ -1139,98 +1147,98 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich. OpenWalletActivity Open wallet failed - Wallet öffnen fehlgeschlagen + Open wallet failed Open wallet warning - Wallet öffnen Warnung + Open wallet warning default wallet - Standard-Wallet + default wallet Opening Wallet <b>%1</b>... - Öffne Wallet <b>%1</b> ... + Opening Wallet <b>%1</b>... OptionsDialog Options - Konfiguration + Options &Main - &Allgemein + &Main Automatically start %1 after logging in to the system. - %1 nach der Anmeldung im System automatisch ausführen. + Automatically start %1 after logging in to the system. &Start %1 on system login - &Starte %1 nach Systemanmeldung + &Start %1 on system login Size of &database cache - Größe des &Datenbankpufferspeichers + Size of &database cache Number of script &verification threads - Anzahl an Skript-&Verifizierungs-Threads + Number of script &verification threads IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1) - IP-Adresse des Proxies (z.B. IPv4: 127.0.0.1 / IPv6: ::1) + IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1) Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type. - Zeigt an, ob der gelieferte Standard SOCKS5 Proxy verwendet wurde, um die Peers mit diesem Netzwerktyp zu erreichen. + Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type. Hide the icon from the system tray. - Verstecke das Icon von der Statusleiste. + Hide the icon from the system tray. &Hide tray icon - &Verstecke Statusleistensymbol + &Hide tray icon Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu. - Minimiert die Anwendung anstatt sie zu beenden wenn das Fenster geschlossen wird. Wenn dies aktiviert ist, müssen Sie die Anwendung über "Beenden" im Menü schließen. + Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu. Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. - Externe URLs (z.B. ein Block-Explorer), die im Kontextmenü des Transaktionsverlaufs eingefügt werden. In der URL wird %s durch den Transaktionshash ersetzt. Bei Angabe mehrerer URLs müssen diese durch "|" voneinander getrennt werden. + Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. Open the %1 configuration file from the working directory. - Öffnen Sie die %1 Konfigurationsdatei aus dem Arbeitsverzeichnis. + Open the %1 configuration file from the working directory. Open Configuration File - Konfigurationsdatei öffnen + Open Configuration File Reset all client options to default. - Setzt die Clientkonfiguration auf Standardwerte zurück. + Reset all client options to default. &Reset Options - Konfiguration &zurücksetzen + &Reset Options &Network - &Netzwerk + &Network Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. - Deaktiviert einige erweiterte Funktionen, aber alle Blöcke werden trotzdem vollständig validiert. Um diese Einstellung rückgängig zu machen, muss die gesamte Blockchain erneut heruntergeladen werden. Die tatsächliche Festplattennutzung kann etwas höher sein. + Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. Prune &block storage to - &Blockspeicher kürzen auf + Prune &block storage to GB @@ -1238,7 +1246,7 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich. Reverting this setting requires re-downloading the entire blockchain. - Wenn diese Einstellung rückgängig gemacht wird, muss die komplette Blockchain erneut heruntergeladen werden. + Reverting this setting requires re-downloading the entire blockchain. MiB @@ -1246,7 +1254,7 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich. (0 = auto, <0 = leave that many cores free) - (0 = automatisch, <0 = so viele Kerne frei lassen) + (0 = auto, <0 = leave that many cores free) W&allet @@ -1254,47 +1262,47 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich. Expert - Experten-Optionen + Expert Enable coin &control features - "&Coin Control"-Funktionen aktivieren + Enable coin &control features If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed. - Wenn Sie das Ausgeben von unbestätigtem Wechselgeld deaktivieren, kann das Wechselgeld einer Transaktion nicht verwendet werden, bis es mindestens eine Bestätigung erhalten hat. Dies wirkt sich auf die Berechnung des Kontostands aus. + If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed. &Spend unconfirmed change - &Unbestätigtes Wechselgeld darf ausgegeben werden + &Spend unconfirmed change Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled. - Automatisch den Bitcoin-Clientport auf dem Router öffnen. Dies funktioniert nur, wenn Ihr Router UPnP unterstützt und dies aktiviert ist. + Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled. Map port using &UPnP - Portweiterleitung via &UPnP + Map port using &UPnP Accept connections from outside. - Akzeptiere Verbindungen von außerhalb. + Accept connections from outside. Allow incomin&g connections - Erlaube eingehende Verbindungen + Allow incomin&g connections Connect to the Bitcoin network through a SOCKS5 proxy. - Über einen SOCKS5-Proxy mit dem Bitcoin-Netzwerk verbinden. + Connect to the Bitcoin network through a SOCKS5 proxy. &Connect through SOCKS5 proxy (default proxy): - Über einen SOCKS5-Proxy &verbinden (Standardproxy): + &Connect through SOCKS5 proxy (default proxy): Proxy &IP: - Proxy-&IP: + Proxy &IP: &Port: @@ -1302,11 +1310,11 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich. Port of the proxy (e.g. 9050) - Port des Proxies (z.B. 9050) + Port of the proxy (e.g. 9050) Used for reaching peers via: - Benutzt um Gegenstellen zu erreichen über: + Used for reaching peers via: IPv4 @@ -1322,55 +1330,59 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich. &Window - &Programmfenster + &Window Show only a tray icon after minimizing the window. - Nur ein Symbol im Infobereich anzeigen, nachdem das Programmfenster minimiert wurde. + Show only a tray icon after minimizing the window. &Minimize to the tray instead of the taskbar - In den Infobereich anstatt in die Taskleiste &minimieren + &Minimize to the tray instead of the taskbar M&inimize on close - Beim Schließen m&inimieren + M&inimize on close &Display - &Anzeige + &Display User Interface &language: - &Sprache der Benutzeroberfläche: + User Interface &language: The user interface language can be set here. This setting will take effect after restarting %1. - Die Sprache der Benutzeroberflächen kann hier festgelegt werden. Diese Einstellung wird nach einem Neustart von %1 wirksam werden. + The user interface language can be set here. This setting will take effect after restarting %1. &Unit to show amounts in: - &Einheit der Beträge: + &Unit to show amounts in: Choose the default subdivision unit to show in the interface and when sending coins. - Wählen Sie die standardmäßige Untereinheit, die in der Benutzeroberfläche und beim Überweisen von Bitcoins angezeigt werden soll. + Choose the default subdivision unit to show in the interface and when sending coins. Whether to show coin control features or not. - Legt fest, ob die "Coin Control"-Funktionen angezeigt werden. + Whether to show coin control features or not. Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. - Verbinde mit dem Bitcoin-Netzwerk über einen separaten SOCKS5-Proxy für Tor-Onion-Dienste. + Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. + + + Use separate SOCKS&5 proxy to reach peers via Tor onion services: + Use separate SOCKS&5 proxy to reach peers via Tor onion services: &Third party transaction URLs - &Externe Transaktions-URLs + &Third party transaction URLs Options set in this dialog are overridden by the command line or in the configuration file: - Einstellungen in diesem Dialog werden von der Kommandozeile oder in der Konfigurationsdatei überschrieben: + Options set in this dialog are overridden by the command line or in the configuration file: &OK @@ -1378,130 +1390,130 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich. &Cancel - &Abbrechen + &Cancel default - Standard + default none - keine + none Confirm options reset - Zurücksetzen der Konfiguration bestätigen + Confirm options reset Client restart required to activate changes. - Client-Neustart erforderlich, um Änderungen zu aktivieren. + Client restart required to activate changes. Client will be shut down. Do you want to proceed? - Client wird beendet. Möchten Sie den Vorgang fortsetzen? + Client will be shut down. Do you want to proceed? Configuration options - Konfigurationsoptionen + Configuration options The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file. - Die Konfigurationsdatei wird verwendet, um erweiterte Benutzeroptionen festzulegen, die die GUI-Einstellungen überschreiben. Darüber hinaus werden alle Befehlszeilenoptionen diese Konfigurationsdatei überschreiben. + The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file. Error - Fehler + Error The configuration file could not be opened. - Die Konfigurationsdatei konnte nicht geöffnet werden. + The configuration file could not be opened. This change would require a client restart. - Diese Änderung würde einen Client-Neustart erfordern. + This change would require a client restart. The supplied proxy address is invalid. - Die eingegebene Proxy-Adresse ist ungültig. + The supplied proxy address is invalid. OverviewPage Form - Formular + Form The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. - Die angezeigten Informationen sind möglicherweise nicht mehr aktuell. Ihre Wallet wird automatisch synchronisiert, nachdem eine Verbindung zum Bitcoin-Netzwerk hergestellt wurde. Dieser Prozess ist jedoch derzeit noch nicht abgeschlossen. + The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. Watch-only: - Nur-beobachtet: + Watch-only: Available: - Verfügbar: + Available: Your current spendable balance - Ihr aktuell verfügbarer Kontostand + Your current spendable balance Pending: - Ausstehend: + Pending: Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance - Gesamtbetrag aus unbestätigten Transaktionen, der noch nicht im aktuell verfügbaren Kontostand enthalten ist + Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance Immature: - Unreif: + Immature: Mined balance that has not yet matured - Erarbeiteter Betrag der noch nicht gereift ist + Mined balance that has not yet matured Balances - Kontostände + Balances Total: - Gesamtbetrag: + Total: Your current total balance - Ihr aktueller Gesamtbetrag + Your current total balance Your current balance in watch-only addresses - Ihr aktueller Kontostand in nur-beobachteten Adressen + Your current balance in watch-only addresses Spendable: - Verfügbar: + Spendable: Recent transactions - Letzte Transaktionen + Recent transactions Unconfirmed transactions to watch-only addresses - Unbestätigte Transaktionen an nur-beobachtete Adressen + Unconfirmed transactions to watch-only addresses Mined balance in watch-only addresses that has not yet matured - Erarbeiteter Betrag in nur-beobachteten Adressen der noch nicht gereift ist + Mined balance in watch-only addresses that has not yet matured Current total balance in watch-only addresses - Aktueller Gesamtbetrag in nur-beobachteten Adressen + Current total balance in watch-only addresses Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. - Datenschutz-Modus aktiviert für den Übersichtsreiter. Um die Werte einzublenden, Einstellungen->Werte ausblenden deaktivieren. + Datenschutz-Modus aktiviert für den Übersichtsreiter. Um die Werte einzublenden, deaktiviere Einstellungen->Werte ausblenden. @@ -1512,15 +1524,15 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich. Sign Tx - Signiere Tx + Sign Tx Broadcast Tx - Rundsende Tx + Broadcast Tx Copy to Clipboard - Kopiere in Zwischenablage + Copy to Clipboard Save... @@ -1528,161 +1540,161 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich. Close - Schließen + Close Failed to load transaction: %1 - Laden der Transaktion fehlgeschlagen: %1 + Failed to load transaction: %1 Failed to sign transaction: %1 - Signieren der Transaktion fehlgeschlagen: %1 + Failed to sign transaction: %1 Could not sign any more inputs. - Konnte keinerlei weitere Eingaben signieren. + Could not sign any more inputs. Signed %1 inputs, but more signatures are still required. - %1 Eingaben signiert, doch noch sind weitere Signaturen erforderlich. + Signed %1 inputs, but more signatures are still required. Signed transaction successfully. Transaction is ready to broadcast. - Transaktion erfolgreich signiert. Transaktion ist bereit für Rundsendung. + Signed transaction successfully. Transaction is ready to broadcast. Unknown error processing transaction. - Unbekannter Fehler bei der Transaktionsverarbeitung + Unknown error processing transaction. Transaction broadcast successfully! Transaction ID: %1 - Transaktion erfolgreich rundgesendet! Transaktions-ID: %1 + Transaction broadcast successfully! Transaction ID: %1 Transaction broadcast failed: %1 - Rundsenden der Transaktion fehlgeschlagen: %1 + Transaction broadcast failed: %1 PSBT copied to clipboard. - PSBT in Zwischenablage kopiert. + PSBT copied to clipboard. Save Transaction Data - Speichere Transaktionsdaten + Save Transaction Data Partially Signed Transaction (Binary) (*.psbt) - Teilsignierte Transaktion (Binärdatei) (*.psbt) + Partially Signed Transaction (Binary) (*.psbt) PSBT saved to disk. - PSBT auf Platte gespeichert. + PSBT saved to disk. * Sends %1 to %2 - * Sende %1 an %2 + * Sends %1 to %2 Unable to calculate transaction fee or total transaction amount. - Kann die Gebühr oder den Gesamtbetrag der Transaktion nicht berechnen. + Unable to calculate transaction fee or total transaction amount. Pays transaction fee: - Zahlt Transaktionsgebühr: + Pays transaction fee: Total Amount - Gesamtbetrag + Total Amount or - oder + or Transaction has %1 unsigned inputs. - Transaktion hat %1 unsignierte Eingaben. + Transaction has %1 unsigned inputs. Transaction is missing some information about inputs. - Der Transaktion fehlen einige Informationen über Eingaben. + Transaction is missing some information about inputs. Transaction still needs signature(s). - Transaktion erfordert weiterhin Signatur(en). + Transaction still needs signature(s). (But this wallet cannot sign transactions.) - (doch diese Wallet kann Transaktionen nicht signieren) + (But this wallet cannot sign transactions.) (But this wallet does not have the right keys.) - (doch diese Wallet hat nicht die richtigen Schlüssel) + (But this wallet does not have the right keys.) Transaction is fully signed and ready for broadcast. - Transaktion ist vollständig signiert und zur Rundsendung bereit. + Transaction is fully signed and ready for broadcast. Transaction status is unknown. - Transaktionsstatus ist unbekannt. + Transaction status is unknown. PaymentServer Payment request error - Fehler bei der Zahlungsanforderung + Payment request error Cannot start bitcoin: click-to-pay handler - Kann Bitcoin nicht starten: Klicken-zum-Bezahlen-Handler + Cannot start bitcoin: click-to-pay handler URI handling - URI-Verarbeitung + URI handling 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. - 'bitcoin://' ist kein gültiger URL. Bitte 'bitcoin:' nutzen. + 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. Cannot process payment request because BIP70 is not supported. - Zahlung kann aufgrund fehlender BIP70 Unterstützung nicht bearbeitet werden. + Cannot process payment request because BIP70 is not supported. Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. - Aufgrund der weit verbreiteten Sicherheitsmängel in BIP70 wird dringend empfohlen, dass alle Anweisungen des Händlers zum Wechseln von Wallets ignoriert werden. + Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. If you are receiving this error you should request the merchant provide a BIP21 compatible URI. - Wenn du diese Fehlermeldung erhälst, solltest du Kontakt mit dem Händler aufnehmen und eine mit BIP21 kompatible URL zur Verwendung nachfragen. + If you are receiving this error you should request the merchant provide a BIP21 compatible URI. Invalid payment address %1 - Ungültige Zahlungsadresse %1 + Invalid payment address %1 URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters. - URI kann nicht analysiert werden! Dies kann durch eine ungültige Bitcoin-Adresse oder fehlerhafte URI-Parameter verursacht werden. + URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters. Payment request file handling - Zahlungsanforderungsdatei-Verarbeitung + Payment request file handling PeerTableModel User Agent - User-Agent + User Agent Node/Service - Knoten/Dienst + Node/Service NodeId - Knotenkennung + NodeId Ping @@ -1690,26 +1702,26 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich. Sent - Übertragen + Sent Received - Empfangen + Received QObject Amount - Betrag + Amount Enter a Bitcoin address (e.g. %1) - Bitcoin-Adresse eingeben (z.B. %1) + Enter a Bitcoin address (e.g. %1) %1 d - %1 T + %1 d %1 h @@ -1717,7 +1729,7 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich. %1 m - %1 min + %1 m %1 s @@ -1725,11 +1737,11 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich. None - Keine + None N/A - k.A. + N/A %1 ms @@ -1737,31 +1749,31 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich. %n second(s) - %n Sekunde%n Sekunden + %n second%n seconds %n minute(s) - %n Minute%n Minuten + %n minute%n minutes %n hour(s) - %n Stunde%n Stunden + %n hour%n hours %n day(s) - %n Tag%n Tage + %n day%n days %n week(s) - %n Woche%n Wochen + %n week%n weeks %1 and %2 - %1 und %2 + %1 and %2 %n year(s) - %n Jahr%n Jahre + %n year%n years %1 B @@ -1781,105 +1793,105 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich. Error: Specified data directory "%1" does not exist. - Fehler: Angegebenes Datenverzeichnis "%1" existiert nicht. + Error: Specified data directory "%1" does not exist. Error: Cannot parse configuration file: %1. - Fehler: Konfigurationsdatei konnte nicht Verarbeitet werden: %1. + Error: Cannot parse configuration file: %1. Error: %1 - Fehler: %1 + Error: %1 Error initializing settings: %1 - Fehler beim Initialisieren der Einstellungen: %1 + Error initializing settings: %1 %1 didn't yet exit safely... - %1 wurde noch nicht sicher beendet... + %1 didn't yet exit safely... unknown - unbekannt + unknown QRImageWidget &Save Image... - Grafik &speichern... + &Save Image... &Copy Image - Grafik &kopieren + &Copy Image Resulting URI too long, try to reduce the text for label / message. - Resultierende URI ist zu lang, bitte den Text für Bezeichnung/Nachricht kürzen. + Resulting URI too long, try to reduce the text for label / message. Error encoding URI into QR Code. - Beim Enkodieren der URI in den QR-Code ist ein Fehler aufgetreten. + Error encoding URI into QR Code. QR code support not available. - QR Code Funktionalität nicht vorhanden + QR code support not available. Save QR Code - QR-Code speichern + Save QR Code PNG Image (*.png) - PNG-Grafik (*.png) + PNG Image (*.png) RPCConsole N/A - k.A. + N/A Client version - Client-Version + Client version &Information - Hinweis + &Information General - Allgemein + General Using BerkeleyDB version - Verwendete BerkeleyDB-Version + Using BerkeleyDB version Datadir - Datenverzeichnis + Datadir To specify a non-default location of the data directory use the '%1' option. - Verwenden Sie die Option '%1' um einen anderen, nicht standardmäßigen Speicherort für das Datenverzeichnis festzulegen. + To specify a non-default location of the data directory use the '%1' option. Blocksdir - Blockverzeichnis + Blocksdir To specify a non-default location of the blocks directory use the '%1' option. - Verwenden Sie die Option '%1' um einen anderen, nicht standardmäßigen Speicherort für das Blöckeverzeichnis festzulegen. + To specify a non-default location of the blocks directory use the '%1' option. Startup time - Startzeit + Startup time Network - Netzwerk + Network Name @@ -1887,59 +1899,59 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich. Number of connections - Anzahl der Verbindungen + Number of connections Block chain - Blockchain + Block chain Memory Pool - Speicher-Pool + Memory Pool Current number of transactions - Aktuelle Anzahl der Transaktionen + Current number of transactions Memory usage - Speichernutzung + Memory usage Wallet: - Wallet: + Wallet: (none) - (keine) + (none) &Reset - &Zurücksetzen + &Reset Received - Empfangen + Received Sent - Übertragen + Sent &Peers - &Gegenstellen + &Peers Banned peers - Gesperrte Gegenstellen + Banned peers Select a peer to view detailed information. - Gegenstelle auswählen, um detaillierte Informationen zu erhalten. + Select a peer to view detailed information. Direction - Richtung + Direction Version @@ -1947,333 +1959,333 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich. Starting Block - Start Block + Starting Block Synced Headers - Synchronisierte Kopfdaten + Synced Headers Synced Blocks - Synchronisierte Blöcke + Synced Blocks The mapped Autonomous System used for diversifying peer selection. - Das zugeordnete autonome System zur Diversifizierung der Gegenstellen-Auswahl. + The mapped Autonomous System used for diversifying peer selection. Mapped AS - Zugeordnetes AS + Mapped AS User Agent - User-Agent + User Agent Node window - Knotenfenster + Node window Current block height - Aktuelle Blockhöhe + Current block height Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. - Öffnet die %1-Debug-Protokolldatei aus dem aktuellen Datenverzeichnis. Dies kann bei großen Protokolldateien einige Sekunden dauern. + Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. Decrease font size - Schrift verkleinern + Decrease font size Increase font size - Schrift vergrößern + Increase font size Permissions - Berechtigungen + Permissions Services - Dienste + Services Connection Time - Verbindungsdauer + Connection Time Last Send - Letzte Übertragung + Last Send Last Receive - Letzter Empfang + Last Receive Ping Time - Ping-Zeit + Ping Time The duration of a currently outstanding ping. - Die Laufzeit eines aktuell ausstehenden Ping. + The duration of a currently outstanding ping. Ping Wait - Ping-Wartezeit + Ping Wait Min Ping - Minimaler Ping + Min Ping Time Offset - Zeitversatz + Time Offset Last block time - Letzte Blockzeit + Last block time &Open - &Öffnen + &Open &Console - &Konsole + &Console &Network Traffic - &Netzwerkauslastung + &Network Traffic Totals - Gesamtbetrag: + Totals In: - Eingehend: + In: Out: - Ausgehend: + Out: Debug log file - Debug-Protokolldatei + Debug log file Clear console - Konsole zurücksetzen + Clear console 1 &hour - 1 &Stunde + 1 &hour 1 &day - 1 &Tag + 1 &day 1 &week - 1 &Woche + 1 &week 1 &year - 1 &Jahr + 1 &year &Disconnect - &Trennen + &Disconnect Ban for - Sperren für + Ban for &Unban - &Entsperren + &Unban Welcome to the %1 RPC console. - Willkommen in der %1 RPC Konsole. + Welcome to the %1 RPC console. Use up and down arrows to navigate history, and %1 to clear screen. - Verwenden Sie die aufwärt- und abwärtszeigenden Pfeiltasten, um in der Historie zu navigieren. Verwenden Sie %1, um den Verlauf zu leeren. + Use up and down arrows to navigate history, and %1 to clear screen. Type %1 for an overview of available commands. - Bitte %1 eingeben, um eine Übersicht verfügbarer Befehle zu erhalten. + Type %1 for an overview of available commands. For more information on using this console type %1. - Für mehr Information über die Benützung dieser Konsole %1 eingeben. + For more information on using this console type %1. WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. - WARNUNG: Betrüger haben versucht, Benutzer dazu zu bringen, hier Befehle einzugeben, um ihr Wallet-Guthaben zu stehlen. Verwenden Sie diese Konsole nicht, ohne die Auswirkungen eines Befehls vollständig zu verstehen. + WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. Network activity disabled - Netzwerkaktivität deaktiviert + Network activity disabled Executing command without any wallet - Befehl wird ohne spezifizierte Wallet ausgeführt + Executing command without any wallet Executing command using "%1" wallet - Befehl wird mit Wallet "%1" ausgeführt + Executing command using "%1" wallet (node id: %1) - (Knotenkennung: %1) + (node id: %1) via %1 - über %1 + via %1 never - nie + never Inbound - Eingehend + Inbound Outbound - ausgehend + Outbound Unknown - Unbekannt + Unknown ReceiveCoinsDialog &Amount: - &Betrag: + &Amount: &Label: - &Bezeichnung: + &Label: &Message: - &Nachricht: + &Message: An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network. - Eine optionale Nachricht, die an die Zahlungsanforderung angehängt wird. Sie wird angezeigt, wenn die Anforderung geöffnet wird. Hinweis: Diese Nachricht wird nicht mit der Zahlung über das Bitcoin-Netzwerk gesendet. + An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network. An optional label to associate with the new receiving address. - Eine optionale Bezeichnung, die der neuen Empfangsadresse zugeordnet wird. + An optional label to associate with the new receiving address. Use this form to request payments. All fields are <b>optional</b>. - Verwenden Sie dieses Formular, um Zahlungen anzufordern. Alle Felder sind <b>optional</b>. + Use this form to request payments. All fields are <b>optional</b>. An optional amount to request. Leave this empty or zero to not request a specific amount. - Ein optional angeforderter Betrag. Lassen Sie dieses Feld leer oder setzen Sie es auf 0, um keinen spezifischen Betrag anzufordern. + An optional amount to request. Leave this empty or zero to not request a specific amount. An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request. - Ein optionales Etikett zu einer neuen Empfängeradresse (für dich zum Identifizieren einer Rechnung). Es wird auch der Zahlungsanforderung beigefügt. + An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request. An optional message that is attached to the payment request and may be displayed to the sender. - Eine optionale Nachricht, die der Zahlungsanforderung beigefügt wird und dem Absender angezeigt werden kann. + An optional message that is attached to the payment request and may be displayed to the sender. &Create new receiving address - Neue Empfangsadresse erstellen + &Create new receiving address Clear all fields of the form. - Alle Formularfelder zurücksetzen. + Clear all fields of the form. Clear - Zurücksetzen + Clear Native segwit addresses (aka Bech32 or BIP-173) reduce your transaction fees later on and offer better protection against typos, but old wallets don't support them. When unchecked, an address compatible with older wallets will be created instead. - Native SegWit-Adressen (alias Bech32 oder BIP-173) werden Ihre Transaktionsgebühren senken und bieten besseren Tippfehlerschutz, werden jedoch von alten Wallets nicht unterstützt. Wenn deaktiviert, wird eine mit älteren Wallets kompatible Adresse erstellt. + Native segwit addresses (aka Bech32 or BIP-173) reduce your transaction fees later on and offer better protection against typos, but old wallets don't support them. When unchecked, an address compatible with older wallets will be created instead. Generate native segwit (Bech32) address - Generiere native SegWit (Bech32) Adresse + Generate native segwit (Bech32) address Requested payments history - Verlauf der angeforderten Zahlungen + Requested payments history Show the selected request (does the same as double clicking an entry) - Ausgewählte Zahlungsanforderungen anzeigen (entspricht einem Doppelklick auf einen Eintrag) + Show the selected request (does the same as double clicking an entry) Show - Anzeigen + Show Remove the selected entries from the list - Ausgewählte Einträge aus der Liste entfernen + Remove the selected entries from the list Remove - Entfernen + Remove Copy URI - &URI kopieren + Copy URI Copy label - Bezeichnung kopieren + Copy label Copy message - Nachricht kopieren + Copy message Copy amount - Betrag kopieren + Copy amount Could not unlock wallet. - Wallet konnte nicht entsperrt werden. + Could not unlock wallet. Could not generate new %1 address - Konnte neue %1 Adresse nicht erzeugen. + Could not generate new %1 address ReceiveRequestDialog Request payment to ... - Zahlung anfordern an ... + Request payment to ... Address: - Adresse: + Address: Amount: - Betrag: + Amount: Label: - Bezeichnung: + Label: Message: - Nachricht: + Message: Wallet: @@ -2281,408 +2293,412 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich. Copy &URI - &URI kopieren + Copy &URI Copy &Address - &Adresse kopieren + Copy &Address &Save Image... - Grafik &speichern... + &Save Image... Request payment to %1 - Zahlung anfordern an %1 + Request payment to %1 Payment information - Zahlungsinformationen + Payment information RecentRequestsTableModel Date - Datum + Date Label - Bezeichnung + Label Message - Nachricht + Message (no label) - (keine Bezeichnung) + (no label) (no message) - (keine Nachricht) + (no message) (no amount requested) - (kein Betrag angefordert) + (no amount requested) Requested - Angefordert + Requested SendCoinsDialog Send Coins - Bitcoins überweisen + Send Coins Coin Control Features - "Coin Control"-Funktionen + Coin Control Features Inputs... - Eingaben... + Inputs... automatically selected - automatisch ausgewählt + automatically selected Insufficient funds! - Unzureichender Kontostand! + Insufficient funds! Quantity: - Anzahl: + Quantity: Bytes: - Byte: + Bytes: Amount: - Betrag: + Amount: Fee: - Gebühr: + Fee: After Fee: - Abzüglich Gebühr: + After Fee: Change: - Wechselgeld: + Change: If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address. - Wenn dies aktiviert ist, aber die Wechselgeld-Adresse leer oder ungültig ist, wird das Wechselgeld an eine neu generierte Adresse gesendet. + If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address. Custom change address - Benutzerdefinierte Wechselgeld-Adresse + Custom change address Transaction Fee: - Transaktionsgebühr: + Transaction Fee: Choose... - Auswählen... + Choose... Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain. - Die Verwendung der "fallbackfee" kann dazu führen, dass eine gesendete Transaktion erst nach mehreren Stunden oder Tagen (oder nie) bestätigt wird. Erwägen Sie, Ihre Gebühr manuell auszuwählen oder warten Sie, bis Sie die gesamte Chain validiert haben. + Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain. Warning: Fee estimation is currently not possible. - Achtung: Berechnung der Gebühr ist momentan nicht möglich. + Warning: Fee estimation is currently not possible. Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size. Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis per kB" for a transaction size of 500 bytes (half of 1 kB) would ultimately yield a fee of only 50 satoshis. - Geben sie eine angepasste Gebühr pro kB (1.000 Byte) virtueller Größe der Transaktion an. + Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size. -Hinweis: Eine Gebühr von "100 Satoshis pro kB" bei einer Größe der Transaktion von 500 Byte (einem halben kB) würde eine Gebühr von 50 Satoshis ergeben, da die Gebühr pro Byte berechnet wird. +Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis per kB" for a transaction size of 500 bytes (half of 1 kB) would ultimately yield a fee of only 50 satoshis. per kilobyte - pro Kilobyte + per kilobyte Hide - Ausblenden + Hide Recommended: - Empfehlungen: + Recommended: Custom: - Benutzerdefiniert: + Custom: (Smart fee not initialized yet. This usually takes a few blocks...) - (Intelligente Gebührenlogik ist noch nicht verfügbar. Normalerweise dauert dies einige Blöcke lang...) + (Smart fee not initialized yet. This usually takes a few blocks...) Send to multiple recipients at once - An mehrere Empfänger auf einmal überweisen + Send to multiple recipients at once Add &Recipient - Empfänger &hinzufügen + Add &Recipient Clear all fields of the form. - Alle Formularfelder zurücksetzen. + Clear all fields of the form. Dust: - "Staub": + Dust: Hide transaction fee settings - Einstellungen für Transaktionsgebühr nicht anzeigen + Hide transaction fee settings When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process. - Nur die minimale Gebühr zu bezahlen ist so lange in Ordnung, wie weniger Transaktionsvolumen als Platz in den Blöcken vorhanden ist. Aber Vorsicht, diese Option kann dazu führen, dass Transaktionen nicht bestätigt werden, wenn mehr Bedarf an Bitcoin-Transaktionen besteht als das Netzwerk verarbeiten kann. + When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process. A too low fee might result in a never confirming transaction (read the tooltip) - Eine niedrige Gebühr kann dazu führen das eine Transaktion niemals bestätigt wird (Lesen sie die Anmerkung). + A too low fee might result in a never confirming transaction (read the tooltip) Confirmation time target: - Bestätigungsziel: + Confirmation time target: Enable Replace-By-Fee - Aktiviere Replace-By-Fee + Enable Replace-By-Fee With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk. - Mit Replace-By-Fee (BIP-125) kann die Transaktionsgebühr nach dem Senden erhöht werden. Ohne dies wird eine höhere Gebühr empfohlen, um das Risiko einer hohen Transaktionszeit zu reduzieren. + With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk. Clear &All - &Zurücksetzen + Clear &All Balance: - Kontostand: + Balance: Confirm the send action - Überweisung bestätigen + Confirm the send action S&end - &Überweisen + S&end Copy quantity - Anzahl kopieren + Copy quantity Copy amount - Betrag kopieren + Copy amount Copy fee - Gebühr kopieren + Copy fee Copy after fee - Abzüglich Gebühr kopieren + Copy after fee Copy bytes - Byte kopieren + Copy bytes Copy dust - "Staub" kopieren + Copy dust Copy change - Wechselgeld kopieren + Copy change %1 (%2 blocks) - %1 (%2 Blöcke) + %1 (%2 blocks) Cr&eate Unsigned - Unsigniert erzeugen + Cr&eate Unsigned Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. - Erzeugt eine teilsignierte Bitcoin Transaktion (PSBT) zur Benutzung mit z.B. einem Offline %1 Wallet, oder einem kompatiblen Hardware Wallet. + Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. from wallet '%1' - von der Wallet '%1' + from wallet '%1' %1 to '%2' - %1 an '%2' + %1 to '%2' %1 to %2 - %1 an %2 + %1 to %2 Do you want to draft this transaction? - Möchtest du diesen Transaktionsentwurf anlegen? + Do you want to draft this transaction? Are you sure you want to send? - Wollen Sie die Überweisung ausführen? + Are you sure you want to send? Create Unsigned - Unsigniert erstellen + Create Unsigned Save Transaction Data - Speichere Transaktionsdaten + Save Transaction Data Partially Signed Transaction (Binary) (*.psbt) - Teilsignierte Transaktion (Binärdatei) (*.psbt) + Partially Signed Transaction (Binary) (*.psbt) PSBT saved - PSBT gespeichert + PSBT saved or - oder + or You can increase the fee later (signals Replace-By-Fee, BIP-125). - Sie können die Gebühr später erhöhen (zeigt Replace-By-Fee, BIP-125). + You can increase the fee later (signals Replace-By-Fee, BIP-125). + + + Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. Please, review your transaction. - Bitte überprüfen sie ihre Transaktion. + Please, review your transaction. Transaction fee - Transaktionsgebühr + Transaction fee Not signalling Replace-By-Fee, BIP-125. - Replace-By-Fee, BIP-125 wird nicht angezeigt. + Not signalling Replace-By-Fee, BIP-125. Total Amount - Gesamtbetrag + Total Amount To review recipient list click "Show Details..." - Um die Empfängerliste anzuzeigen, klicke auf "Details anzeigen..." + To review recipient list click "Show Details..." Confirm send coins - Überweisung bestätigen + Confirm send coins Confirm transaction proposal - Bestätige Transaktionsentwurf + Confirm transaction proposal Send - Senden + Send Watch-only balance: - Nur-Anzeige Saldo: + Watch-only balance: The recipient address is not valid. Please recheck. - Die Zahlungsadresse ist ungültig, bitte nochmals überprüfen. + The recipient address is not valid. Please recheck. The amount to pay must be larger than 0. - Der zu zahlende Betrag muss größer als 0 sein. + The amount to pay must be larger than 0. The amount exceeds your balance. - Der angegebene Betrag übersteigt Ihren Kontostand. + The amount exceeds your balance. The total exceeds your balance when the %1 transaction fee is included. - Der angegebene Betrag übersteigt aufgrund der Transaktionsgebühr in Höhe von %1 Ihren Kontostand. + The total exceeds your balance when the %1 transaction fee is included. Duplicate address found: addresses should only be used once each. - Doppelte Adresse entdeckt: Adressen sollten jeweils nur einmal benutzt werden. + Duplicate address found: addresses should only be used once each. Transaction creation failed! - Transaktionserstellung fehlgeschlagen! + Transaction creation failed! A fee higher than %1 is considered an absurdly high fee. - Eine höhere Gebühr als %1 wird als unsinnig hohe Gebühr angesehen. + A fee higher than %1 is considered an absurdly high fee. Payment request expired. - Zahlungsanforderung abgelaufen. + Payment request expired. Estimated to begin confirmation within %n block(s). - Voraussichtlicher Beginn der Bestätigung innerhalb von %n BlockVoraussichtlicher Beginn der Bestätigung innerhalb von %n Blöcken. + Estimated to begin confirmation within %n block.Estimated to begin confirmation within %n blocks. Warning: Invalid Bitcoin address - Warnung: Ungültige Bitcoin-Adresse + Warning: Invalid Bitcoin address Warning: Unknown change address - Warnung: Unbekannte Wechselgeld-Adresse + Warning: Unknown change address Confirm custom change address - Bestätige benutzerdefinierte Wechselgeld-Adresse + Confirm custom change address The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure? - Die ausgewählte Wechselgeld-Adresse ist nicht Bestandteil dieses Wallets. Einige oder alle Mittel aus Ihrem Wallet könnten an diese Adresse gesendet werden. Wollen Sie das wirklich? + The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure? (no label) - (keine Bezeichnung) + (no label) SendCoinsEntry A&mount: - Betra&g: + A&mount: Pay &To: - E&mpfänger: + Pay &To: &Label: - &Bezeichnung: + &Label: Choose previously used address - Bereits verwendete Adresse auswählen + Choose previously used address The Bitcoin address to send the payment to - Die Zahlungsadresse der Überweisung + The Bitcoin address to send the payment to Alt+A @@ -2690,7 +2706,7 @@ Hinweis: Eine Gebühr von "100 Satoshis pro kB" bei einer Größe der Transaktio Paste address from clipboard - Adresse aus der Zwischenablage einfügen + Paste address from clipboard Alt+P @@ -2698,47 +2714,47 @@ Hinweis: Eine Gebühr von "100 Satoshis pro kB" bei einer Größe der Transaktio Remove this entry - Diesen Eintrag entfernen + Remove this entry The amount to send in the selected unit - Zu sendender Betrag in der ausgewählten Einheit + The amount to send in the selected unit The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. - Die Gebühr wird vom zu überweisenden Betrag abgezogen. Der Empfänger wird also weniger Bitcoins erhalten, als Sie im Betrags-Feld eingegeben haben. Falls mehrere Empfänger ausgewählt wurden, wird die Gebühr gleichmäßig verteilt. + The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. S&ubtract fee from amount - Gebühr vom Betrag ab&ziehen + S&ubtract fee from amount Use available balance - Benutze verfügbaren Kontostand + Use available balance Message: - Nachricht: + Message: This is an unauthenticated payment request. - Dies ist keine beglaubigte Zahlungsanforderung. + This is an unauthenticated payment request. This is an authenticated payment request. - Dies ist eine beglaubigte Zahlungsanforderung. + This is an authenticated payment request. Enter a label for this address to add it to the list of used addresses - Adressbezeichnung eingeben, die dann zusammen mit der Adresse der Liste bereits verwendeter Adressen hinzugefügt wird. + Enter a label for this address to add it to the list of used addresses A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. - Eine an die "bitcoin:"-URI angefügte Nachricht, die zusammen mit der Transaktion gespeichert wird. Hinweis: Diese Nachricht wird nicht über das Bitcoin-Netzwerk gesendet. + A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. Pay To: - Empfänger: + Pay To: Memo: @@ -2749,34 +2765,34 @@ Hinweis: Eine Gebühr von "100 Satoshis pro kB" bei einer Größe der Transaktio ShutdownWindow %1 is shutting down... - %1 wird beendet... + %1 is shutting down... Do not shut down the computer until this window disappears. - Fahren Sie den Computer nicht herunter, bevor dieses Fenster verschwindet. + Do not shut down the computer until this window disappears. SignVerifyMessageDialog Signatures - Sign / Verify a Message - Signaturen - eine Nachricht signieren / verifizieren + Signatures - Sign / Verify a Message &Sign Message - Nachricht &signieren + &Sign Message You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. - Sie können Nachrichten/Vereinbarungen mit Hilfe Ihrer Adressen signieren, um zu beweisen, dass Sie Bitcoins empfangen können, die an diese Adressen überwiesen werden. Seien Sie vorsichtig und signieren Sie nichts Vages oder Willkürliches, um Ihre Indentität vor Phishingangriffen zu schützen. Signieren Sie nur vollständig-detaillierte Aussagen, mit denen Sie auch einverstanden sind. + You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. The Bitcoin address to sign the message with - Die Bitcoin-Adresse mit der die Nachricht signiert wird + The Bitcoin address to sign the message with Choose previously used address - Bereits verwendete Adresse auswählen + Choose previously used address Alt+A @@ -2784,7 +2800,7 @@ Hinweis: Eine Gebühr von "100 Satoshis pro kB" bei einer Größe der Transaktio Paste address from clipboard - Adresse aus der Zwischenablage einfügen + Paste address from clipboard Alt+P @@ -2792,119 +2808,119 @@ Hinweis: Eine Gebühr von "100 Satoshis pro kB" bei einer Größe der Transaktio Enter the message you want to sign here - Zu signierende Nachricht hier eingeben + Enter the message you want to sign here Signature - Signatur + Signature Copy the current signature to the system clipboard - Aktuelle Signatur in die Zwischenablage kopieren + Copy the current signature to the system clipboard Sign the message to prove you own this Bitcoin address - Die Nachricht signieren, um den Besitz dieser Bitcoin-Adresse zu beweisen + Sign the message to prove you own this Bitcoin address Sign &Message - &Nachricht signieren + Sign &Message Reset all sign message fields - Alle "Nachricht signieren"-Felder zurücksetzen + Reset all sign message fields Clear &All - &Zurücksetzen + Clear &All &Verify Message - Nachricht &verifizieren + &Verify Message Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! - Geben Sie die Zahlungsadresse des Empfängers, Nachricht (achten Sie darauf Zeilenumbrüche, Leerzeichen, Tabulatoren usw. exakt zu kopieren) und Signatur unten ein, um die Nachricht zu verifizieren. Vorsicht, interpretieren Sie nicht mehr in die Signatur hinein, als in der signierten Nachricht selber enthalten ist, um nicht von einem Man-in-the-middle-Angriff hinters Licht geführt zu werden. Beachten Sie dass dies nur beweist, dass die signierende Partei über diese Adresse Überweisungen empfangen kann. + Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! The Bitcoin address the message was signed with - Die Bitcoin-Adresse mit der die Nachricht signiert wurde + The Bitcoin address the message was signed with The signed message to verify - Die zu überprüfende signierte Nachricht + The signed message to verify The signature given when the message was signed - Die beim Signieren der Nachricht geleistete Signatur + The signature given when the message was signed Verify the message to ensure it was signed with the specified Bitcoin address - Die Nachricht verifizieren, um sicherzustellen, dass diese mit der angegebenen Bitcoin-Adresse signiert wurde + Verify the message to ensure it was signed with the specified Bitcoin address Verify &Message - &Nachricht verifizieren + Verify &Message Reset all verify message fields - Alle "Nachricht verifizieren"-Felder zurücksetzen + Reset all verify message fields Click "Sign Message" to generate signature - Auf "Nachricht signieren" klicken, um die Signatur zu erzeugen + Click "Sign Message" to generate signature The entered address is invalid. - Die eingegebene Adresse ist ungültig. + The entered address is invalid. Please check the address and try again. - Bitte überprüfen Sie die Adresse und versuchen Sie es erneut. + Please check the address and try again. The entered address does not refer to a key. - Die eingegebene Adresse verweist nicht auf einen Schlüssel. + The entered address does not refer to a key. Wallet unlock was cancelled. - Wallet-Entsperrung wurde abgebrochen. + Wallet unlock was cancelled. No error - Kein Fehler + No error Private key for the entered address is not available. - Privater Schlüssel zur eingegebenen Adresse ist nicht verfügbar. + Private key for the entered address is not available. Message signing failed. - Signierung der Nachricht fehlgeschlagen. + Message signing failed. Message signed. - Nachricht signiert. + Message signed. The signature could not be decoded. - Die Signatur konnte nicht dekodiert werden. + The signature could not be decoded. Please check the signature and try again. - Bitte überprüfen Sie die Signatur und versuchen Sie es erneut. + Please check the signature and try again. The signature did not match the message digest. - Die Signatur entspricht nicht dem "Message Digest". + The signature did not match the message digest. Message verification failed. - Verifizierung der Nachricht fehlgeschlagen. + Message verification failed. Message verified. - Nachricht verifiziert. + Message verified. @@ -2918,39 +2934,39 @@ Hinweis: Eine Gebühr von "100 Satoshis pro kB" bei einer Größe der Transaktio TransactionDesc Open for %n more block(s) - Offen für %n weiteren BlockOffen für %n weitere Blöcke + Open for %n more blockOpen for %n more blocks Open until %1 - Offen bis %1 + Open until %1 conflicted with a transaction with %1 confirmations - steht im Konflikt mit einer Transaktion mit %1 Bestätigungen + conflicted with a transaction with %1 confirmations 0/unconfirmed, %1 - 0/unbestätigt, %1 + 0/unconfirmed, %1 in memory pool - im Speicher-Pool + in memory pool not in memory pool - nicht im Speicher-Pool + not in memory pool abandoned - eingestellt + abandoned %1/unconfirmed - %1/unbestätigt + %1/unconfirmed %1 confirmations - %1 Bestätigungen + %1 confirmations Status @@ -2958,380 +2974,380 @@ Hinweis: Eine Gebühr von "100 Satoshis pro kB" bei einer Größe der Transaktio Date - Datum + Date Source - Quelle + Source Generated - Erzeugt + Generated From - Von + From unknown - unbekannt + unknown To - An + To own address - eigene Adresse + own address watch-only - beobachtet + watch-only label - Bezeichnung + label Credit - Gutschrift + Credit matures in %n more block(s) - reift noch %n weiteren Blockreift noch %n weitere Blöcke + matures in %n more blockmatures in %n more blocks not accepted - nicht angenommen + not accepted Debit - Belastung + Debit Total debit - Gesamtbelastung + Total debit Total credit - Gesamtgutschrift + Total credit Transaction fee - Transaktionsgebühr + Transaction fee Net amount - Nettobetrag + Net amount Message - Nachricht + Message Comment - Kommentar + Comment Transaction ID - Transaktionskennung + Transaction ID Transaction total size - Gesamte Transaktionsgröße + Transaction total size Transaction virtual size - Virtuelle Größe der Transaktion + Transaction virtual size Output index - Ausgabeindex + Output index (Certificate was not verified) - (Zertifikat wurde nicht verifiziert) + (Certificate was not verified) Merchant - Händler + Merchant Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. - Erzeugte Bitcoins müssen %1 Blöcke lang reifen, bevor sie ausgegeben werden können. Als Sie diesen Block erzeugten, wurde er an das Netzwerk übertragen, um ihn der Blockchain hinzuzufügen. Falls dies fehlschlägt wird der Status in "nicht angenommen" geändert und Sie werden keine Bitcoins gutgeschrieben bekommen. Das kann gelegentlich passieren, wenn ein anderer Knoten einen Block fast zeitgleich erzeugt. + Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. Debug information - Debug-Informationen + Debug information Transaction - Transaktion + Transaction Inputs - Eingaben + Inputs Amount - Betrag + Amount true - wahr + true false - falsch + false TransactionDescDialog This pane shows a detailed description of the transaction - Dieser Bereich zeigt eine detaillierte Beschreibung der Transaktion an + This pane shows a detailed description of the transaction Details for %1 - Details für %1 + Details for %1 TransactionTableModel Date - Datum + Date Type - Typ + Type Label - Bezeichnung + Label Open for %n more block(s) - Offen für %n weiteren BlockOffen für %n weitere Blöcke + Open for %n more blockOpen for %n more blocks Open until %1 - Offen bis %1 + Open until %1 Unconfirmed - Unbestätigt + Unconfirmed Abandoned - Eingestellt + Abandoned Confirming (%1 of %2 recommended confirmations) - Wird bestätigt (%1 von %2 empfohlenen Bestätigungen) + Confirming (%1 of %2 recommended confirmations) Confirmed (%1 confirmations) - Bestätigt (%1 Bestätigungen) + Confirmed (%1 confirmations) Conflicted - in Konflikt stehend + Conflicted Immature (%1 confirmations, will be available after %2) - Unreif (%1 Bestätigungen, wird verfügbar sein nach %2) + Immature (%1 confirmations, will be available after %2) Generated but not accepted - Generiert, aber nicht akzeptiert + Generated but not accepted Received with - Empfangen über + Received with Received from - Empfangen von + Received from Sent to - Überwiesen an + Sent to Payment to yourself - Eigenüberweisung + Payment to yourself Mined - Erarbeitet + Mined watch-only - beobachtet + watch-only (n/a) - (k.A.) + (n/a) (no label) - (keine Bezeichnung) + (no label) Transaction status. Hover over this field to show number of confirmations. - Transaktionsstatus. Fahren Sie mit der Maus über dieses Feld, um die Anzahl der Bestätigungen zu sehen. + Transaction status. Hover over this field to show number of confirmations. Date and time that the transaction was received. - Datum und Zeit als die Transaktion empfangen wurde. + Date and time that the transaction was received. Type of transaction. - Art der Transaktion + Type of transaction. Whether or not a watch-only address is involved in this transaction. - Zeigt an, ob eine beobachtete Adresse in diese Transaktion involviert ist. + Whether or not a watch-only address is involved in this transaction. User-defined intent/purpose of the transaction. - Benutzerdefinierte Absicht bzw. Verwendungszweck der Transaktion + User-defined intent/purpose of the transaction. Amount removed from or added to balance. - Der Betrag, der dem Kontostand abgezogen oder hinzugefügt wurde. + Amount removed from or added to balance. TransactionView All - Alle + All Today - Heute + Today This week - Diese Woche + This week This month - Diesen Monat + This month Last month - Letzten Monat + Last month This year - Dieses Jahr + This year Range... - Zeitraum... + Range... Received with - Empfangen über + Received with Sent to - Überwiesen an + Sent to To yourself - Eigenüberweisung + To yourself Mined - Erarbeitet + Mined Other - Andere + Other Enter address, transaction id, or label to search - Zu suchende Adresse, Transaktion oder Bezeichnung eingeben + Enter address, transaction id, or label to search Min amount - Mindestbetrag + Min amount Abandon transaction - Transaktion einstellen + Abandon transaction Increase transaction fee - Transaktionsgebühr erhöhen + Increase transaction fee Copy address - Adresse kopieren + Copy address Copy label - Bezeichnung kopieren + Copy label Copy amount - Betrag kopieren + Copy amount Copy transaction ID - Transaktionskennung kopieren + Copy transaction ID Copy raw transaction - Rohe Transaktion kopieren + Copy raw transaction Copy full transaction details - Vollständige Transaktionsdetails kopieren + Copy full transaction details Edit label - Bezeichnung bearbeiten + Edit label Show transaction details - Transaktionsdetails anzeigen + Show transaction details Export Transaction History - Transaktionsverlauf exportieren + Export Transaction History Comma separated file (*.csv) - Kommagetrennte-Datei (*.csv) + Comma separated file (*.csv) Confirmed - Bestätigt + Confirmed Watch-only - Nur beobachten + Watch-only Date - Datum + Date Type - Typ + Type Label - Bezeichnung + Label Address - Adresse + Address ID @@ -3339,57 +3355,57 @@ Hinweis: Eine Gebühr von "100 Satoshis pro kB" bei einer Größe der Transaktio Exporting Failed - Exportieren fehlgeschlagen + Exporting Failed There was an error trying to save the transaction history to %1. - Beim Speichern des Transaktionsverlaufs nach %1 ist ein Fehler aufgetreten. + There was an error trying to save the transaction history to %1. Exporting Successful - Exportieren erfolgreich + Exporting Successful The transaction history was successfully saved to %1. - Speichern des Transaktionsverlaufs nach %1 war erfolgreich. + The transaction history was successfully saved to %1. Range: - Zeitraum: + Range: to - bis + to UnitDisplayStatusBarControl Unit to show amounts in. Click to select another unit. - Die Einheit in der Beträge angezeigt werden. Klicken, um eine andere Einheit auszuwählen. + Unit to show amounts in. Click to select another unit. WalletController Close wallet - Wallet schließen + Close wallet Are you sure you wish to close the wallet <i>%1</i>? - Sind Sie sich sicher, dass Sie die Wallet <i>%1</i> schließen möchten? + Are you sure you wish to close the wallet <i>%1</i>? Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. - Wenn Sie die Wallet zu lange schließen, kann es dazu kommen, dass Sie die gesamte Chain neu synchronisieren müssen, wenn Pruning aktiviert ist. + Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. Close all wallets - Schließe alle Wallets + Close all wallets Are you sure you wish to close all wallets? - Sicher, dass Sie alle Wallets schließen möchten? + Are you sure you wish to close all wallets? @@ -3398,242 +3414,242 @@ Hinweis: Eine Gebühr von "100 Satoshis pro kB" bei einer Größe der Transaktio No wallet has been loaded. Go to File > Open Wallet to load a wallet. - OR - - Es wurde keine Brieftasche geladen. -Gehen Sie zu Datei > Öffnen Sie die Brieftasche, um eine Brieftasche zu laden. -- ODER- + No wallet has been loaded. +Go to File > Open Wallet to load a wallet. +- OR - Create a new wallet - Neue Wallet erstellen + Create a new wallet WalletModel Send Coins - Bitcoins überweisen + Send Coins Fee bump error - Gebührenerhöhungsfehler + Fee bump error Increasing transaction fee failed - Erhöhung der Transaktionsgebühr fehlgeschlagen + Increasing transaction fee failed Do you want to increase the fee? - Möchten Sie die Gebühr erhöhen? + Do you want to increase the fee? Do you want to draft a transaction with fee increase? - Möchtest du eine Transaktion mit erhöhter Gebühr entwerfen? + Do you want to draft a transaction with fee increase? Current fee: - Aktuelle Gebühr: + Current fee: Increase: - Erhöhung: + Increase: New fee: - Neue Gebühr: + New fee: Confirm fee bump - Gebührenerhöhung bestätigen + Confirm fee bump Can't draft transaction. - Kann Transaktion nicht entwerfen. + Can't draft transaction. PSBT copied - PSBT kopiert + PSBT copied Can't sign transaction. - Signierung der Transaktion fehlgeschlagen. + Can't sign transaction. Could not commit transaction - Konnte Transaktion nicht übergeben + Could not commit transaction default wallet - Standard Wallet + default wallet WalletView &Export - E&xportieren + &Export Export the data in the current tab to a file - Daten der aktuellen Ansicht in eine Datei exportieren + Export the data in the current tab to a file Error - Fehler + Error Unable to decode PSBT from clipboard (invalid base64) - Konnte PSBT aus Zwischenablage nicht entschlüsseln (ungültiges Base64) + Unable to decode PSBT from clipboard (invalid base64) Load Transaction Data - Lade Transaktionsdaten + Load Transaction Data Partially Signed Transaction (*.psbt) - Teilsignierte Transaktion (*.psbt) + Partially Signed Transaction (*.psbt) PSBT file must be smaller than 100 MiB - PSBT-Datei muss kleiner als 100 MiB sein + PSBT file must be smaller than 100 MiB Unable to decode PSBT - PSBT konnte nicht entschlüsselt werden + Unable to decode PSBT Backup Wallet - Wallet sichern + Backup Wallet Wallet Data (*.dat) - Wallet-Daten (*.dat) + Wallet Data (*.dat) Backup Failed - Sicherung fehlgeschlagen + Backup Failed There was an error trying to save the wallet data to %1. - Beim Speichern der Wallet-Daten nach %1 ist ein Fehler aufgetreten. + There was an error trying to save the wallet data to %1. Backup Successful - Sicherung erfolgreich + Backup Successful The wallet data was successfully saved to %1. - Speichern der Wallet-Daten nach %1 war erfolgreich. + The wallet data was successfully saved to %1. Cancel - Abbrechen + Cancel bitcoin-core Distributed under the MIT software license, see the accompanying file %s or %s - Veröffentlicht unter der MIT-Softwarelizenz, siehe beiliegende Datei %s oder %s. + Distributed under the MIT software license, see the accompanying file %s or %s Prune configured below the minimum of %d MiB. Please use a higher number. - Kürzungsmodus wurde kleiner als das Minimum in Höhe von %d MiB konfiguriert. Bitte verwenden Sie einen größeren Wert. + Prune configured below the minimum of %d MiB. Please use a higher number. Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) - Prune (Kürzung): Die letzte Synchronisation der Wallet liegt vor gekürzten (gelöschten) Blöcken. Es ist ein -reindex (erneuter Download der gesamten Blockchain im Fall eines gekürzten Knotens) notwendig. + Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) Pruning blockstore... - Kürze Block-Speicher... + Pruning blockstore... Unable to start HTTP server. See debug log for details. - Kann HTTP Server nicht starten. Siehe debug log für Details. + Unable to start HTTP server. See debug log for details. The %s developers - Die %s-Entwickler + The %s developers Cannot obtain a lock on data directory %s. %s is probably already running. - Datenverzeichnis %s kann nicht gesperrt werden. Evtl. wurde %s bereits gestartet. + Cannot obtain a lock on data directory %s. %s is probably already running. Cannot provide specific connections and have addrman find outgoing connections at the same. - Kann keine Verbindungen herstellen und addrman gleichzeitig ausgehende Verbindungen suchen lassen. + Cannot provide specific connections and have addrman find outgoing connections at the same. Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. - Lesen von %s fehlgeschlagen! Alle Schlüssel wurden korrekt gelesen, Transaktionsdaten bzw. Adressbucheinträge fehlen aber möglicherweise oder sind inkorrekt. + Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. More than one onion bind address is provided. Using %s for the automatically created Tor onion service. - Mehr als eine Onion-Bindungsadresse angegeben. Verwende %s für den automatisch erstellten Tor-Onion-Dienst. + More than one onion bind address is provided. Using %s for the automatically created Tor onion service. Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. - Bitte korrigieren Sie die Datums- und Uhrzeiteinstellungen Ihres Computers, da %s ansonsten nicht ordnungsgemäß funktionieren wird. + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. Please contribute if you find %s useful. Visit %s for further information about the software. - Wenn sie %s nützlich finden, sind Helfer sehr gern gesehen. Besuchen Sie %s um mehr über das Softwareprojekt zu erfahren. + Please contribute if you find %s useful. Visit %s for further information about the software. SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s - SQLite-Datenbank: Anfertigung der Anweisung, die SQLite-Brieftaschen-Schema-Version abzurufen fehlgeschlagen: %s + SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s - SQLiteDatabase: Konnte das Statement zum Abholen der Anwendungs-ID %s nicht vorbereiten. + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported - SQLite-Datenbank: Unbekannte SQLite-Brieftaschen-Schema-Version %d. Nur Version %d wird unterstützt. + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct - Die Block-Datenbank enthält einen Block, der in der Zukunft auftaucht. Dies kann daran liegen, dass die Systemzeit Ihres Computers falsch eingestellt ist. Stellen Sie die Block-Datenbank nur wieder her, wenn Sie sich sicher sind, dass Ihre Systemzeit korrekt eingestellt ist. + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct This is a pre-release test build - use at your own risk - do not use for mining or merchant applications - Dies ist eine Vorab-Testversion - Verwendung auf eigene Gefahr - nicht für Mining- oder Handelsanwendungen nutzen! + This is a pre-release test build - use at your own risk - do not use for mining or merchant applications This is the transaction fee you may discard if change is smaller than dust at this level - Dies ist die Transaktionsgebühr, die ggf. abgeschrieben wird, wenn das Wechselgeld "Staub" ist in dieser Stufe. + This is the transaction fee you may discard if change is smaller than dust at this level Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. - Fehler beim Verarbeiten von Blöcken. Sie müssen die Datenbank mit Hilfe des Arguments '-reindex-chainstate' neu aufbauen. + Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain - Sie müssen die Datenbank mit Hilfe von -reindex neu aufbauen, um zum Pre-Fork-Status zurückzukehren. Dies erfordert, dass die gesamte Blockchain erneut heruntergeladen wird. + Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. - Warnung: Das Netzwerk scheint nicht vollständig übereinzustimmen! Einige Miner scheinen Probleme zu haben. + Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. - Warnung: Wir scheinen nicht vollständig mit unseren Gegenstellen übereinzustimmen! Sie oder die anderen Knoten müssen unter Umständen Ihre Client-Software aktualisieren. + Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. -maxmempool must be at least %d MB - -maxmempool muss mindestens %d MB betragen + -maxmempool must be at least %d MB Cannot resolve -%s address: '%s' - Kann Adresse in -%s nicht auflösen: '%s' + Cannot resolve -%s address: '%s' Change index out of range - Position des Wechselgelds außerhalb des Bereichs + Change index out of range Config setting for %s only applied on %s network when in [%s] section. - Konfigurationseinstellungen für %s sind nur auf %s network gültig, wenn in Sektion [%s] + Config setting for %s only applied on %s network when in [%s] section. Copyright (C) %i-%i @@ -3641,451 +3657,449 @@ Gehen Sie zu Datei > Öffnen Sie die Brieftasche, um eine Brieftasche zu lade Corrupted block database detected - Beschädigte Blockdatenbank erkannt + Corrupted block database detected Could not find asmap file %s - Konnte die asmap Datei %s nicht finden + Could not find asmap file %s Could not parse asmap file %s - Konnte die asmap Datei %s nicht analysieren + Could not parse asmap file %s Do you want to rebuild the block database now? - Möchten Sie die Blockdatenbank jetzt neu aufbauen? + Do you want to rebuild the block database now? Error initializing block database - Fehler beim Initialisieren der Blockdatenbank + Error initializing block database Error initializing wallet database environment %s! - Fehler beim Initialisieren der Wallet-Datenbankumgebung %s! + Error initializing wallet database environment %s! Error loading %s - Fehler beim Laden von %s + Error loading %s Error loading %s: Private keys can only be disabled during creation - Fehler beim Laden von %s: Private Schlüssel können nur bei der Erstellung deaktiviert werden - + Error loading %s: Private keys can only be disabled during creation Error loading %s: Wallet corrupted - Fehler beim Laden von %s: Das Wallet ist beschädigt + Error loading %s: Wallet corrupted Error loading %s: Wallet requires newer version of %s - Fehler beim Laden von %s: Das Wallet benötigt eine neuere Version von %s + Error loading %s: Wallet requires newer version of %s Error loading block database - Fehler beim Laden der Blockdatenbank + Error loading block database Error opening block database - Fehler beim Öffnen der Blockdatenbank + Error opening block database Failed to listen on any port. Use -listen=0 if you want this. - Fehler: Es konnte kein Port abgehört werden. Wenn dies so gewünscht wird -listen=0 verwenden. + Failed to listen on any port. Use -listen=0 if you want this. Failed to rescan the wallet during initialization - Fehler: Wallet konnte während der Initialisierung nicht erneut gescannt werden. + Failed to rescan the wallet during initialization Failed to verify database - Verifizierung der Datenbank fehlgeschlagen + Failed to verify database Ignoring duplicate -wallet %s. - Ignoriere doppeltes -wallet %s. + Ignoring duplicate -wallet %s. Importing... - Importiere... + Importing... Incorrect or no genesis block found. Wrong datadir for network? - Fehlerhafter oder kein Genesis-Block gefunden. Falsches Datenverzeichnis für das Netzwerk? + Incorrect or no genesis block found. Wrong datadir for network? Initialization sanity check failed. %s is shutting down. - Initialisierungsplausibilitätsprüfung fehlgeschlagen. %s wird beendet. + Initialization sanity check failed. %s is shutting down. Invalid P2P permission: '%s' - Ungültige P2P Genehmigung: '%s' + Invalid P2P permission: '%s' Invalid amount for -%s=<amount>: '%s' - Ungültiger Betrag für -%s=<amount>: '%s' + Invalid amount for -%s=<amount>: '%s' Invalid amount for -discardfee=<amount>: '%s' - Ungültiger Betrag für -discardfee=<amount>: '%s' + Invalid amount for -discardfee=<amount>: '%s' Invalid amount for -fallbackfee=<amount>: '%s' - Ungültiger Betrag für -fallbackfee=<amount>: '%s' + Invalid amount for -fallbackfee=<amount>: '%s' SQLiteDatabase: Failed to execute statement to verify database: %s - SQLite-Datenbank: Anweisung, die Datenbank zu verifizieren fehlgeschlagen: %s + SQLiteDatabase: Failed to execute statement to verify database: %s SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s - SQLite-Datenbank: Abrufen der SQLite-Brieftaschen-Schema-Version fehlgeschlagen: %s + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s SQLiteDatabase: Failed to fetch the application id: %s - SQLite-Datenbank: Abrufen der Anwendungs-ID fehlgeschlagen: %s + SQLiteDatabase: Failed to fetch the application id: %s SQLiteDatabase: Failed to prepare statement to verify database: %s - SQLite-Datenbank: Anfertigung der Anweisung zum Verifizieren der Datenbank fehlgeschlagen: %s + SQLiteDatabase: Failed to prepare statement to verify database: %s SQLiteDatabase: Failed to read database verification error: %s - Datenbank konnte nicht gelesen werden -Verifikations-Error: %s + SQLiteDatabase: Failed to read database verification error: %s SQLiteDatabase: Unexpected application id. Expected %u, got %u - SQLiteDatabase: Unerwartete Anwendungs-ID. %u statt %u erhalten. + SQLiteDatabase: Unexpected application id. Expected %u, got %u Specified blocks directory "%s" does not exist. - Angegebener Blöcke-Ordner "%s" existiert nicht. + Specified blocks directory "%s" does not exist. Unknown address type '%s' - Unbekannter Adresstyp '%s' + Unknown address type '%s' Unknown change type '%s' - Unbekannter Änderungstyp '%s' + Unknown change type '%s' Upgrading txindex database - Erneuern der txindex Datenbank + Upgrading txindex database Loading P2P addresses... - Lade P2P-Adressen... + Loading P2P addresses... Loading banlist... - Lade Sperrliste... + Loading banlist... Not enough file descriptors available. - Nicht genügend Datei-Deskriptoren verfügbar. + Not enough file descriptors available. Prune cannot be configured with a negative value. - Kürzungsmodus kann nicht mit einem negativen Wert konfiguriert werden. + Prune cannot be configured with a negative value. Prune mode is incompatible with -txindex. - Kürzungsmodus ist nicht mit -txindex kompatibel. + Prune mode is incompatible with -txindex. Replaying blocks... - Blöcke werden erneut verarbeitet ... + Replaying blocks... Rewinding blocks... - Verifiziere Blöcke... + Rewinding blocks... The source code is available from %s. - Der Quellcode ist von %s verfügbar. + The source code is available from %s. Transaction fee and change calculation failed - Transaktionsgebühr- und Wechselgeldberechnung fehlgeschlagen + Transaction fee and change calculation failed Unable to bind to %s on this computer. %s is probably already running. - Kann auf diesem Computer nicht an %s binden. Evtl. wurde %s bereits gestartet. + Unable to bind to %s on this computer. %s is probably already running. Unable to generate keys - Schlüssel können nicht generiert werden + Unable to generate keys Unsupported logging category %s=%s. - Nicht unterstützte Protokollkategorie %s=%s. + Unsupported logging category %s=%s. Upgrading UTXO database - Aktualisierung der UTXO-Datenbank + Upgrading UTXO database User Agent comment (%s) contains unsafe characters. - Der User Agent Kommentar (%s) enthält unsichere Zeichen. + User Agent comment (%s) contains unsafe characters. Verifying blocks... - Verifiziere Blöcke... + Verifying blocks... Wallet needed to be rewritten: restart %s to complete - Wallet musste neu geschrieben werden: starten Sie %s zur Fertigstellung neu + Wallet needed to be rewritten: restart %s to complete Error: Listening for incoming connections failed (listen returned error %s) - Fehler: Abhören nach eingehenden Verbindungen fehlgeschlagen (listen meldete Fehler %s) + Error: Listening for incoming connections failed (listen returned error %s) %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. - %s korrupt. Versuche mit dem Wallet-Werkzeug bitcoin-wallet zu retten, oder eine Sicherung wiederherzustellen. + %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. - Ein Upgrade auf eine Nicht-HD-Split-Brieftasche ist nicht möglich, ohne ein Upgrade zur Unterstützung des Pre-Split-Keypools durchzuführen. Verwenden Sie bitte die Version 169900 oder keine angegebene Version. + Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) - Ungültiger Betrag für -maxtxfee=<amount>: '%s' (muss mindestens die minimale Weiterleitungsgebühr in Höhe von %s sein, um zu verhindern dass Transaktionen nicht bearbeitet werden) + Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) The transaction amount is too small to send after the fee has been deducted - Der Transaktionsbetrag ist zu klein, um ihn nach Abzug der Gebühr zu senden. + The transaction amount is too small to send after the fee has been deducted This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet - Dieser Fehler kann auftreten, wenn diese Brieftasche nicht ordnungsgemäß heruntergefahren und zuletzt mithilfe eines Builds mit einer neueren Version von Berkeley DB geladen wurde. Verwenden Sie in diesem Fall die Software, die diese Brieftasche zuletzt geladen hat + This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. - Dies ist die maximale Transaktionsgebühr, die Sie (zusätzlich zur normalen Gebühr) zahlen, um die teilweise Vermeidung von Ausgaben gegenüber der regulären Münzauswahl zu priorisieren. + This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. - Transaktion erfordert eine Wechselgeldadresse, die jedoch nicht erzeugt werden kann. Bitte zunächst keypoolrefill aufrufen. + Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain - Sie müssen die Datenbank mit Hilfe von -reindex neu aufbauen, um zum ungekürzten Modus zurückzukehren. Dies erfordert, dass die gesamte Blockchain erneut heruntergeladen wird. + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain A fatal internal error occurred, see debug.log for details - Ein fataler interner Fehler ist aufgetreten, siehe debug.log für Details + A fatal internal error occurred, see debug.log for details Cannot set -peerblockfilters without -blockfilterindex. - Kann -peerblockfilters nicht ohne -blockfilterindex setzen. + Cannot set -peerblockfilters without -blockfilterindex. Disk space is too low! - Freier Plattenspeicher zu gering! + Disk space is too low! Error reading from database, shutting down. - Fehler beim Lesen der Datenbank, Ausführung wird beendet. + Error reading from database, shutting down. Error upgrading chainstate database - Fehler bei der Aktualisierung einer Chainstate-Datenbank + Error upgrading chainstate database Error: Disk space is low for %s - Fehler: Zu wenig Speicherplatz auf der Festplatte %s + Error: Disk space is low for %s Error: Keypool ran out, please call keypoolrefill first - Fehler: Schlüsselspeicher ausgeschöpft, bitte zunächst keypoolrefill ausführen + Error: Keypool ran out, please call keypoolrefill first Fee rate (%s) is lower than the minimum fee rate setting (%s) - Der Gebührensatz (%s) ist niedriger als die Mindestgebührensatz (%s) Einstellung. + Fee rate (%s) is lower than the minimum fee rate setting (%s) Invalid -onion address or hostname: '%s' - Ungültige Onion-Adresse oder ungültiger Hostname: '%s' + Invalid -onion address or hostname: '%s' Invalid -proxy address or hostname: '%s' - Ungültige Proxy-Adresse oder ungültiger Hostname: '%s' + Invalid -proxy address or hostname: '%s' Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) - Ungültiger Betrag für -paytxfee=<amount>: '%s' (muss mindestens %s sein) + Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) Invalid netmask specified in -whitelist: '%s' - Ungültige Netzmaske angegeben in -whitelist: '%s' + Invalid netmask specified in -whitelist: '%s' Need to specify a port with -whitebind: '%s' - Angabe eines Ports benötigt für -whitebind: '%s' + Need to specify a port with -whitebind: '%s' No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. - Kein Proxy-Server angegeben. Nutze -proxy=<ip> oder -proxy=<ip:port>. + No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. Prune mode is incompatible with -blockfilterindex. - Kürzungsmodus ist nicht mit -blockfilterindex kompatibel. + Prune mode is incompatible with -blockfilterindex. Reducing -maxconnections from %d to %d, because of system limitations. - Reduziere -maxconnections von %d zu %d, aufgrund von Systemlimitierungen. + Reducing -maxconnections from %d to %d, because of system limitations. Section [%s] is not recognized. - Sektion [%s] ist nicht delegiert. + Section [%s] is not recognized. Signing transaction failed - Signierung der Transaktion fehlgeschlagen + Signing transaction failed Specified -walletdir "%s" does not exist - Angegebenes Verzeichnis "%s" existiert nicht + Specified -walletdir "%s" does not exist Specified -walletdir "%s" is a relative path - Angegebenes Verzeichnis "%s" ist ein relativer Pfad + Specified -walletdir "%s" is a relative path Specified -walletdir "%s" is not a directory - Angegebenes Verzeichnis "%s" ist kein Verzeichnis + Specified -walletdir "%s" is not a directory The specified config file %s does not exist - Die spezifische Konfigurationsdatei %s existiert nicht. + The specified config file %s does not exist The transaction amount is too small to pay the fee - Der Transaktionsbetrag ist zu niedrig, um die Gebühr zu bezahlen. + The transaction amount is too small to pay the fee This is experimental software. - Dies ist experimentelle Software. + This is experimental software. Transaction amount too small - Transaktionsbetrag zu niedrig + Transaction amount too small Transaction too large - Transaktion zu groß + Transaction too large Unable to bind to %s on this computer (bind returned error %s) - Kann auf diesem Computer nicht an %s binden (bind meldete Fehler %s) + Unable to bind to %s on this computer (bind returned error %s) Unable to create the PID file '%s': %s - Erstellung der PID-Datei '%s': %s ist nicht möglich + Unable to create the PID file '%s': %s Unable to generate initial keys - Initialschlüssel können nicht generiert werden + Unable to generate initial keys Unknown -blockfilterindex value %s. - Unbekannter -blockfilterindex Wert %s. + Unknown -blockfilterindex value %s. Verifying wallet(s)... - Verifiziere Wallet(s)... + Verifying wallet(s)... Warning: unknown new rules activated (versionbit %i) - Warnung: Unbekannte neue Regeln aktiviert (Versionsbit %i) + Warning: unknown new rules activated (versionbit %i) -maxtxfee is set very high! Fees this large could be paid on a single transaction. - -maxtxfee ist auf einen sehr hohen Wert festgelegt! Gebühren dieser Höhe könnten für eine einzelne Transaktion bezahlt werden. + -maxtxfee is set very high! Fees this large could be paid on a single transaction. This is the transaction fee you may pay when fee estimates are not available. - Das ist die Transaktionsgebühr, welche Sie zahlen müssten, wenn die Gebührenschätzungen nicht verfügbar sind. + This is the transaction fee you may pay when fee estimates are not available. Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments. - Gesamtlänge des Netzwerkversionstrings (%i) erreicht die maximale Länge (%i). Reduzieren Sie die Nummer oder die Größe von uacomments. + Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments. %s is set very high! - %s wurde sehr hoch eingestellt! + %s is set very high! Starting network threads... - Netzwerk-Threads werden gestartet... + Starting network threads... The wallet will avoid paying less than the minimum relay fee. - Das Wallet verhindert Zahlungen, die die Mindesttransaktionsgebühr nicht berücksichtigen. + The wallet will avoid paying less than the minimum relay fee. This is the minimum transaction fee you pay on every transaction. - Dies ist die kleinstmögliche Gebühr, die beim Senden einer Transaktion fällig wird. + This is the minimum transaction fee you pay on every transaction. This is the transaction fee you will pay if you send a transaction. - Dies ist die Gebühr, die beim Senden einer Transaktion fällig wird. + This is the transaction fee you will pay if you send a transaction. Transaction amounts must not be negative - Transaktionsbeträge dürfen nicht negativ sein. + Transaction amounts must not be negative Transaction has too long of a mempool chain - Die Speicherpoolkette der Transaktion ist zu lang. + Transaction has too long of a mempool chain Transaction must have at least one recipient - Die Transaktion muss mindestens einen Empfänger enthalten. + Transaction must have at least one recipient Unknown network specified in -onlynet: '%s' - Unbekannter Netztyp in -onlynet angegeben: '%s' + Unknown network specified in -onlynet: '%s' Insufficient funds - Unzureichender Kontostand + Insufficient funds Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable -fallbackfee. - Die Gebührenabschätzung schlug fehl. Fallbackfee ist deaktiviert. Warten Sie ein paar Blöcke oder aktivieren Sie -fallbackfee. + Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable -fallbackfee. Warning: Private keys detected in wallet {%s} with disabled private keys - Warnung: Es wurden private Schlüssel in der Wallet {%s} entdeckt, welche private Schlüssel jedoch deaktiviert hat. + Warning: Private keys detected in wallet {%s} with disabled private keys Cannot write to data directory '%s'; check permissions. - Es konnte nicht in das Datenverzeichnis '%s' geschrieben werden; Überprüfen Sie die Berechtigungen. + Cannot write to data directory '%s'; check permissions. Loading block index... - Lade Blockindex... + Loading block index... Loading wallet... - Lade Wallet... + Loading wallet... Cannot downgrade wallet - Wallet kann nicht auf eine ältere Version herabgestuft werden + Cannot downgrade wallet Rescanning... - Durchsuche erneut... + Rescanning... Done loading - Laden abgeschlossen + Done loading \ No newline at end of file diff --git a/src/qt/locale/bitcoin_el.ts b/src/qt/locale/bitcoin_el.ts index 8722cc544..9e545c474 100644 --- a/src/qt/locale/bitcoin_el.ts +++ b/src/qt/locale/bitcoin_el.ts @@ -69,6 +69,12 @@ These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. Αυτές είναι οι Bitcoin διευθύνσεις σας για να στέλνετε πληρωμές. Να ελέγχετε πάντα το ποσό, καθώς και τη διεύθυνση παραλήπτη πριν στείλετε νομίσματα. + + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + Αυτές είναι οι Bitcoin διευθύνσεις για την λήψη πληρωμών. Χρησιμοποιήστε το κουμπί 'Δημιουργία νέας διεύθυνσης λήψεων' στο παράθυρο λήψεων για την δημιουργία νέας διεύθυνσης. +Η υπογραφή είναι διαθέσιμη μόνο σε διευθύνσεις 'παλαιού τύπου'. + &Copy Address &Αντιγραφή Διεύθυνσης @@ -477,6 +483,22 @@ Up to date Ενημερωμένο + + &Load PSBT from file... + &Φόρτωση PSBT από αρχείο... + + + Load Partially Signed Bitcoin Transaction + Φόρτωση συναλλαγής Partially Signed Bitcoin + + + Load PSBT from clipboard... + Φόρτωση PSBT από το πρόχειρο... + + + Load Partially Signed Bitcoin Transaction from clipboard + Φόρτωση συναλλαγής Partially Signed Bitcoin από το πρόχειρο + Node window Κόμβος παράθυρο @@ -525,6 +547,14 @@ Show the %1 help message to get a list with possible Bitcoin command-line options Εμφάνισε το %1 βοηθητικό μήνυμα για λήψη μιας λίστας με διαθέσιμες επιλογές για Bitcoin εντολές + + &Mask values + &Απόκρυψη τιμών + + + Mask the values in the Overview tab + Απόκρυψη τιμών στην καρτέλα Επισκόπησης + default wallet Προεπιλεγμένο πορτοφόλι @@ -814,6 +844,10 @@ Create Wallet Δημιουργία Πορτοφολιού + + Wallet + Πορτοφόλι + Wallet Name Όνομα Πορτοφολιού @@ -826,6 +860,10 @@ Encrypt Wallet Κρυπτογράφηση Πορτοφολιού + + Advanced Options + Προχωρημένες ρυθμίσεις + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. Απενεργοποιήστε τα ιδιωτικά κλειδιά για αυτό το πορτοφόλι. Τα πορτοφόλια που έχουν απενεργοποιημένα ιδιωτικά κλειδιά δεν έχουν ιδιωτικά κλειδιά και δεν μπορούν να έχουν σπόρους HD ή εισαγόμενα ιδιωτικά κλειδιά. Αυτό είναι ιδανικό για πορτοφόλια μόνο για ρολόγια. @@ -842,6 +880,14 @@ Make Blank Wallet Δημιουργία Άδειου Πορτοφολιού + + Use descriptors for scriptPubKey management + χρήση περιγραφέων για την διαχείριση του scriptPubKey + + + Descriptor Wallet + Πορτοφόλι Περιγραφέα + Create Δημιουργία @@ -1310,6 +1356,14 @@ Whether to show coin control features or not. Επιλογή κατά πόσο να αναδείχνονται οι δυνατότητες ελέγχου κερμάτων. + + Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. + Συνδεθείτε στο δίκτυο Bitcoin μέσω ενός ξεχωριστού διακομιστή μεσολάβησης SOCKS5 για τις onion υπηρεσίες του Tor. + + + Use separate SOCKS&5 proxy to reach peers via Tor onion services: + Χρησιμοποιήστε ξεχωριστό διακομιστή μεσολάβησης SOCKS&5 για σύνδεση με αποδέκτες μέσω των υπηρεσιών onion του Tor: + Options set in this dialog are overridden by the command line or in the configuration file: Οι επιλογές που έχουν οριστεί σε αυτό το παράθυρο διαλόγου παραβλέπονται από τη γραμμή εντολών ή από το αρχείο διαμόρφωσης: @@ -1442,13 +1496,25 @@ Current total balance in watch-only addresses Το τρέχον συνολικό υπόλοιπο σε διευθύνσεις παρακολούθησης μόνο - + + Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. + Ενεργοποιήθηκε η κατάσταση ιδιωτικότητας στην καρτέλα Επισκόπησης. Για εμφάνιση των τιμών αποεπιλέξτε το Ρυθμίσεις->Απόκρυψη τιμών. + + PSBTOperationsDialog Dialog Διάλογος + + Sign Tx + Υπόγραψε Tx + + + Broadcast Tx + Αναμετάδωση Tx + Copy to Clipboard Αντιγραφή στο Πρόχειρο @@ -1502,6 +1568,10 @@ ID Συναλλαγής: %1 * Sends %1 to %2 * Στέλνει %1 προς %2 + + Unable to calculate transaction fee or total transaction amount. + Δεν είναι δυνατός ο υπολογισμός των κρατήσεων ή του συνολικού ποσού συναλλαγής. + Pays transaction fee: Πληρωμή τέλους συναλλαγής: @@ -1514,6 +1584,18 @@ ID Συναλλαγής: %1 or ή + + (But this wallet cannot sign transactions.) + (Αλλά αυτό το πορτοφόλι δεν μπορεί να υπογράψει συναλλαγές.) + + + (But this wallet does not have the right keys.) + (Αλλά αυτό το πορτοφόλι δεν έχει τα σωστά κλειδιά.) + + + Transaction is fully signed and ready for broadcast. + Η συναλλαγή είναι πλήρως υπογεγραμμένη και έτοιμη για αναμετάδωση. + Transaction status is unknown. Η κατάσταση της συναλλαγής είναι άγνωστη. @@ -1683,6 +1765,10 @@ ID Συναλλαγής: %1 Error: %1 Σφάλμα: %1 + + Error initializing settings: %1 + Σφάλμα έναρξης ρυθμίσεω: %1 + %1 didn't yet exit safely... Το %1 δεν έφυγε ακόμα με ασφάλεια... @@ -2133,7 +2219,11 @@ ID Συναλλαγής: %1 Could not unlock wallet. Δεν είναι δυνατό το ξεκλείδωμα του πορτοφολιού. - + + Could not generate new %1 address + Δεν πραγματοποιήθηκε παραγωγή νέας %1 διεύθυνσης + + ReceiveRequestDialog @@ -2148,6 +2238,10 @@ ID Συναλλαγής: %1 Amount: Ποσό: + + Label: + Ετικέτα: + Message: Μήνυμα: @@ -2419,10 +2513,18 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Are you sure you want to send? Είστε βέβαιοι ότι θέλετε να στείλετε; + + Create Unsigned + Δημιουργία Ανυπόγραφου + Save Transaction Data Αποθήκευση Δεδομένων Συναλλαγής + + PSBT saved + Το PSBT αποθηκεύτηκε + or ή @@ -2431,6 +2533,10 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p You can increase the fee later (signals Replace-By-Fee, BIP-125). Μπορείτε να αυξήσετε αργότερα την αμοιβή (σήματα Αντικατάσταση-By-Fee, BIP-125). + + Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + Παρακαλούμε, ελέγξτε την πρόταση συναλλαγής. Θα παραχθεί μια συναλλαγή Bitcoin με μερική υπογραφή (PSBT), την οποία μπορείτε να αντιγράψετε και στη συνέχεια να υπογράψετε με π.χ. ένα πορτοφόλι %1 εκτός σύνδεσης ή ένα πορτοφόλι υλικού συμβατό με το PSBT. + Please, review your transaction. Παρακαλούμε, ελέγξτε τη συναλλαγή σας. @@ -3246,9 +3352,21 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Close all wallets Κλείσιμο όλων των πορτοφολιών - + + Are you sure you wish to close all wallets? + Είσαι σίγουροι ότι επιθυμείτε το κλείσιμο όλων των πορτοφολιών; + + WalletFrame + + No wallet has been loaded. +Go to File > Open Wallet to load a wallet. +- OR - + Δεν έχει φορτωθεί κανένα πορτοφόλι. +Μεταβείτε στο Αρχείο>Άνοιγμα πορτοφολιού για φόρτωση. +-Η- + Create a new wallet Δημιουργία νέου Πορτοφολιού @@ -3510,6 +3628,10 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Failed to rescan the wallet during initialization Αποτυχία επανεγγραφής του πορτοφολιού κατά την αρχικοποίηση + + Failed to verify database + Η επιβεβαίωση της βάσης δεδομένων απέτυχε + Importing... Εισαγωγή... diff --git a/src/qt/locale/bitcoin_eo.ts b/src/qt/locale/bitcoin_eo.ts index 358805c93..15ad4af7e 100644 --- a/src/qt/locale/bitcoin_eo.ts +++ b/src/qt/locale/bitcoin_eo.ts @@ -723,6 +723,10 @@ Signing is only possible with addresses of the type 'legacy'. Create Wallet Krei Monujon + + Wallet + Monujo + Wallet Name Monujo-Nomo diff --git a/src/qt/locale/bitcoin_es.ts b/src/qt/locale/bitcoin_es.ts index d3be12395..1b9dbbc6c 100644 --- a/src/qt/locale/bitcoin_es.ts +++ b/src/qt/locale/bitcoin_es.ts @@ -3,11 +3,11 @@ AddressBookPage Right-click to edit address or label - Haz click con el botón derecho para editar una dirección o etiqueta + haz click derecho para editar dirección o etiqueta Create a new address - Crear una dirección nueva + crear un nueva direccion &New @@ -43,7 +43,7 @@ &Delete - &Borrar + Borrar Choose the address to send coins to @@ -844,6 +844,10 @@ Firmar solo es posible con correos del tipo Legacy. Create Wallet Crear monedero + + Wallet + Monedero + Wallet Name Nombre de monedero @@ -856,6 +860,10 @@ Firmar solo es posible con correos del tipo Legacy. Encrypt Wallet Cifrar monedero + + Advanced Options + Opciones avanzadas + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. Deshabilita las claves privadas para este monedero. Los monederos con claves privadas deshabilitadas no tendrán claves privadas y no podrán tener ni una semilla HD ni claves privadas importadas. Esto es ideal para monederos de solo lectura. diff --git a/src/qt/locale/bitcoin_es_CL.ts b/src/qt/locale/bitcoin_es_CL.ts index 1e78d60b8..be4556bee 100644 --- a/src/qt/locale/bitcoin_es_CL.ts +++ b/src/qt/locale/bitcoin_es_CL.ts @@ -492,10 +492,30 @@ Usa el boton "Crear nueva direccion de recibimiento" en la pestaña de recibir p Load Partially Signed Bitcoin Transaction Cargar transacción de Bitcoin parcialmente firmada + + Open Wallet + Abrir billetera + + + Open a wallet + Abrir una billetera + + + Close Wallet... + Cerrar billetera... + + + Close wallet + Cerrar billetera + Show the %1 help message to get a list with possible Bitcoin command-line options Muestre el mensaje de ayuda %1 para obtener una lista con posibles opciones de línea de comandos de Bitcoin + + default wallet + billetera predeterminada + &Window Ventana @@ -742,9 +762,29 @@ Usa el boton "Crear nueva direccion de recibimiento" en la pestaña de recibir p CreateWalletActivity - + + Create wallet failed + Crear billetera falló + + + Create wallet warning + Advertencia de crear billetera + + CreateWalletDialog + + Create Wallet + Crear Billetera + + + Wallet + Billetera + + + Create + Crear + EditAddressDialog @@ -962,6 +1002,10 @@ Usa el boton "Crear nueva direccion de recibimiento" en la pestaña de recibir p OpenWalletActivity + + default wallet + billetera predeterminada + OptionsDialog @@ -1287,6 +1331,14 @@ Usa el boton "Crear nueva direccion de recibimiento" en la pestaña de recibir p Dialog Cambiar contraseña + + Close + Cerrar + + + Total Amount + Monto total + or o @@ -1761,6 +1813,10 @@ Usa el boton "Crear nueva direccion de recibimiento" en la pestaña de recibir p An optional amount to request. Leave this empty or zero to not request a specific amount. Un monto opcional para solicitar. Deje esto vacío o en cero para no solicitar una cantidad específica. + + &Create new receiving address + &Crear una nueva dirección de recibo + Clear all fields of the form. Borre todos los campos del formulario. @@ -2043,6 +2099,10 @@ Tarifa de copia Transaction fee Comisión de transacción + + Total Amount + Monto total + Confirm send coins Confirmar el envió de monedas @@ -2729,6 +2789,10 @@ Tarifa de copia WalletController + + Close wallet + Cerrar billetera + WalletFrame @@ -2779,7 +2843,11 @@ Tarifa de copia Could not commit transaction No se pudo confirmar la transacción - + + default wallet + billetera predeterminada + + WalletView diff --git a/src/qt/locale/bitcoin_es_CO.ts b/src/qt/locale/bitcoin_es_CO.ts index 485d5ff21..e1a169596 100644 --- a/src/qt/locale/bitcoin_es_CO.ts +++ b/src/qt/locale/bitcoin_es_CO.ts @@ -69,6 +69,12 @@ These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. Estas son tus direcciones de Bitcoin para recibir pagos. Siempre revise el monto y la dirección de envío antes de enviar criptomonedas. + + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + Estas son tus direcciones Bitcoin para recibir pagos. Usa el botón 'Crear una nueva dirección para recibir' en la pestaña 'Recibir' para crear nuevas direcciones. +Firmar solo es posible con direcciones del tipo 'Legacy'. + &Copy Address &Copiar dirección @@ -131,6 +137,10 @@ Repeat new passphrase Repite nueva contraseña + + Show passphrase + Mostrar la frase de contraseña + Encrypt wallet Codificar billetera @@ -171,6 +181,14 @@ Wallet encrypted Billetera codificada + + Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. + Introduce la contraseña nueva para la billetera. <br/>Por favor utiliza una contraseña de <b>diez o más caracteres aleatorios</b>, u <b>ocho o más palabras</b>. + + + Enter the old passphrase and new passphrase for the wallet. + Ingresa la antigua frase de contraseña y la nueva frase de contraseña para la billetera. + IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. IMPORTANTE: Cualquier respaldo anterior que hayas hecho del archivo de tu billetera debe ser reemplazado por el nuevo archivo encriptado que has generado. Por razones de seguridad, todos los respaldos realizados anteriormente serán inutilizables al momento de que utilices tu nueva billetera encriptada. @@ -695,6 +713,10 @@ CreateWalletDialog + + Wallet + Cartera + Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. Crea una billetera en blanco. Las billeteras en blanco inicialmente no tienen llaves privadas o texto. Las llaves privadas y las direcciones pueden ser importadas, o se puede establecer una semilla HD, más tarde. diff --git a/src/qt/locale/bitcoin_es_DO.ts b/src/qt/locale/bitcoin_es_DO.ts index 561974f4c..87865d112 100644 --- a/src/qt/locale/bitcoin_es_DO.ts +++ b/src/qt/locale/bitcoin_es_DO.ts @@ -552,6 +552,10 @@ CreateWalletDialog + + Wallet + Billetera + EditAddressDialog diff --git a/src/qt/locale/bitcoin_es_MX.ts b/src/qt/locale/bitcoin_es_MX.ts index 1ac11def2..6a1d12243 100644 --- a/src/qt/locale/bitcoin_es_MX.ts +++ b/src/qt/locale/bitcoin_es_MX.ts @@ -843,6 +843,10 @@ Solicitar pagos (genera códigos QR y bitcoin: URI) Create Wallet Crear una cartera + + Wallet + Cartera + Wallet Name Nombre de la cartera @@ -855,6 +859,10 @@ Solicitar pagos (genera códigos QR y bitcoin: URI) Encrypt Wallet Encripta la cartera + + Advanced Options + Opciones avanzadas + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. Desactivar las llaves privadas de esta cartera. Las carteras con las llaves privadas desactivadas no tendrán llaves privadas y no podrán tener una semilla HD o llaves privadas importadas. Esto es ideal para las carteras "watch-only". diff --git a/src/qt/locale/bitcoin_es_VE.ts b/src/qt/locale/bitcoin_es_VE.ts index c54054b81..451cbc7ef 100644 --- a/src/qt/locale/bitcoin_es_VE.ts +++ b/src/qt/locale/bitcoin_es_VE.ts @@ -594,6 +594,10 @@ CreateWalletDialog + + Wallet + Monedero + EditAddressDialog diff --git a/src/qt/locale/bitcoin_et.ts b/src/qt/locale/bitcoin_et.ts index fc47aec50..8e60f0b11 100644 --- a/src/qt/locale/bitcoin_et.ts +++ b/src/qt/locale/bitcoin_et.ts @@ -461,6 +461,10 @@ Catching up... Jõuan järgi... + + Error: %1 + Tõrge %1 + Date: %1 @@ -632,6 +636,10 @@ CreateWalletDialog + + Wallet + Rahakott + EditAddressDialog @@ -861,7 +869,7 @@ The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. - Kuvatav info ei pruugi olla ajakohane. Ühenduse loomisel süngitakse sinu rahakott automaatselt Bitconi võrgustikuga, kuid see toiming on hetkel lõpetamata. + Kuvatav info ei pruugi olla ajakohane. Ühenduse loomisel süngitakse sinu rahakott automaatselt Bitcoin võrgustikuga, kuid see toiming on hetkel lõpetamata. Pending: @@ -971,6 +979,10 @@ %1 GB %1 GB + + Error: %1 + Tõrge %1 + unknown tundmatu diff --git a/src/qt/locale/bitcoin_eu.ts b/src/qt/locale/bitcoin_eu.ts index dd6c0dfe4..bd284c5c1 100644 --- a/src/qt/locale/bitcoin_eu.ts +++ b/src/qt/locale/bitcoin_eu.ts @@ -353,10 +353,18 @@ Reindexing blocks on disk... Blokeak diskoan berriro zerrendatzen... + + Proxy is <b>enabled</b>: %1 + Proxya <b>gaituta</b> dago : %1 + Send coins to a Bitcoin address Bidali txanponak Bitcoin helbide batera + + Backup wallet to another location + Diru-zorroaren segurtasun-kopia beste leku batean. + Change the passphrase used for wallet encryption Diruzorroa enkriptatzeko erabilitako pasahitza aldatu @@ -381,6 +389,14 @@ Show or hide the main Window Lehio nagusia erakutsi edo izkutatu + + Encrypt the private keys that belong to your wallet + Zure diru-zorroari dagozkion giltza pribatuak enkriptatu. + + + Sign messages with your Bitcoin addresses to prove you own them + Sinatu mezuak Bitcoinen helbideekin, zure jabea zarela frogatzeko. + Verify messages to ensure they were signed with specified Bitcoin addresses Egiaztatu mesua Bitcoin helbide espezifikoarekin erregistratu direla ziurtatzeko @@ -401,10 +417,38 @@ Tabs toolbar Fitxen tresna-barra + + Show the list of used sending addresses and labels + Erakutsi bidalketa-helbideen eta etiketen zerrenda + + + Show the list of used receiving addresses and labels + Harrera-helbideen eta etiketen zerrenda erakutsi + + + &Command-line options + &Komando-lerroaren aukerak + + + Indexing blocks on disk... + Blokeak diskoan indexatzen... + + + Processing blocks on disk... + Blokeak diskoan prozesatzen... + %1 behind %1 atzetik + + Last received block was generated %1 ago. + Jasotako azken blokea duela %1 sortu zen. + + + Transactions after this will not yet be visible. + Honen ondorengo transakzioak oraindik ez daude ikusgai. + Error Akatsa @@ -421,6 +465,10 @@ Up to date Eguneratua + + Node window + Adabegiaren leihoa + &Sending addresses &Helbideak bidaltzen @@ -429,6 +477,10 @@ &Receiving addresses &Helbideak jasotzen + + Open a bitcoin: URI + Ireki bitcoin bat: URI + Open Wallet Diruzorroa zabaldu @@ -457,6 +509,10 @@ default wallet Diruzorro lehenetsia + + No wallets available + Ez dago diru-zorrorik eskura + &Window &Lehioa @@ -473,6 +529,14 @@ Main Window Lehio nagusia + + %1 client + %1 bezeroa + + + Connecting to peers... + Pareekin konektatzen... + Catching up... Eguneratzen... @@ -503,6 +567,11 @@ Diruzorroa: %1 + + Type: %1 + + Mota: %1 + Label: %1 @@ -523,6 +592,18 @@ Incoming transaction Sartutako transakzioa + + HD key generation is <b>enabled</b> + HD gakoa sortzea <b>gaituta</b> dago + + + HD key generation is <b>disabled</b> + HD gakoa sortzea <b>desgaituta</b> dago + + + Private key <b>disabled</b> + Gako pribatua <b>desgaitua</b> + Wallet is <b>encrypted</b> and currently <b>unlocked</b> Zorroa <b>enkriptatuta</b> eta <b>desblokeatuta</b> dago une honetan @@ -531,6 +612,10 @@ Wallet is <b>encrypted</b> and currently <b>locked</b> Zorroa <b>enkriptatuta</b> eta <b>blokeatuta</b> dago une honetan + + Original message: + Jatorrizko mezua: + CoinControlDialog @@ -550,18 +635,42 @@ Amount: Kopurua: + + Fee: + Ordainketa: + Dust: Hautsa: + + After Fee: + Ordaindu ondoren: + Change: Bueltak: + + Tree mode + Zuhaitz modua + + + List mode + Zerrenda modua + Amount Kopurua + + Received with label + Etiketarekin jasoa + + + Received with address + Helbidearekin jasoa + Date Data @@ -582,6 +691,42 @@ Copy label Etiketa kopiatu + + Copy amount + zenbatekoaren kopia + + + Copy transaction ID + Kopiatu transakzioaren IDa + + + Lock unspent + Blokeatu erabili gabe + + + Unlock unspent + Desblokeatu gastatu gabe + + + Copy quantity + Kopia kopurua + + + Copy bytes + Kopiatu byte-ak + + + Copy dust + Kopiatu hautsa + + + Copy change + Kopiatu aldaketa + + + (%1 locked) + (%1 blokeatuta) + yes bai @@ -609,13 +754,21 @@ Create wallet failed Diruzorroa sortzen hutsegitea - + + Create wallet warning + Diru-zorroa sortzearen buruzko oharra + + CreateWalletDialog Create Wallet Diruzorroa sortu + + Wallet + Diru-zorroa + Wallet Name Diruzorroaren izena @@ -624,6 +777,18 @@ Encrypt Wallet Diruzorroa enkriptatu + + Advanced Options + Aukera aurreratuak + + + Disable Private Keys + Desgaitu gako pribatuak + + + Descriptor Wallet + Deskriptorearen zorroa + Create Sortu @@ -677,7 +842,15 @@ version bertsioa - + + About %1 + %1 inguru + + + Command-line options + Komando lerroaren aukerak + + Intro @@ -703,6 +876,10 @@ Form Inprimakia + + Number of blocks left + Gainerako blokeen kopurua. + Unknown... Ezezaguna... @@ -711,6 +888,10 @@ Last block time Azken blokearen unea + + Progress + Aurrerapena + calculating... kalkulatzen... @@ -719,9 +900,17 @@ Hide Izkutatu + + Esc + Esc + OpenURIDialog + + Open bitcoin URI + Ireki bitcoin URIa + URI: URI: @@ -741,7 +930,11 @@ default wallet Diruzorro lehenetsia - + + Opening Wallet <b>%1</b>... + Diru-zorroa irekitzen <b>%1</b>... + + OptionsDialog @@ -756,6 +949,78 @@ Size of &database cache Databasearen cache tamaina + + IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1) + Proxyaren IP helbidea (IPv4: 127.0.0.1 / IPv6: ::1 adibidez ) + + + &Hide tray icon + &Erretiluaren ikonoa ezkutatu + + + Open Configuration File + Ireki konfigurazio fitxategia + + + Reset all client options to default. + Bezeroaren aukera guztiak hasieratu. + + + &Reset Options + &Aukerak Hasieratu + + + &Network + &Sarea + + + GB + GB + + + MiB + MiB + + + Expert + Aditu + + + Enable coin &control features + Diruaren &kontrolaren ezaugarriak gaitu + + + Map port using &UPnP + Portua mapeatu &UPnP erabiliz + + + Accept connections from outside. + Kanpoko konexioak onartu + + + Allow incomin&g connections + Sarbide konexioak baimendu + + + Proxy &IP: + Proxyaren &IP helbidea: + + + &Port: + &Portua: + + + Port of the proxy (e.g. 9050) + Proxy portua (9050 adibidez) + + + IPv4 + IPv4 + + + IPv6 + IPv6 + Tor Tor @@ -768,6 +1033,10 @@ &Display &Pantaila + + User Interface &language: + Erabiltzaile-interfazearen &hizkuntza: + &Unit to show amounts in: Zenbatekoa azaltzeko &unitatea: @@ -780,10 +1049,22 @@ &Cancel &Ezeztatu + + default + lehenetsi + none Bat ere ez + + Confirm options reset + Berretsi aukeren berrezarpena + + + Client restart required to activate changes. + Bezeroa berrabiarazi behar da aldaketak aktibatzeko. + Configuration options Konfiguraketa aukerak @@ -803,10 +1084,22 @@ Form Inprimakia + + Watch-only: + Ikusi-bakarrik: + + + Available: + Eskuragarri: + Pending: Zai: + + Immature: + Ez dago eskuragarri: + Total: Guztira: @@ -814,12 +1107,40 @@ PSBTOperationsDialog + + Copy to Clipboard + Kopiatu arbelera + + + Save... + Gorde... + + + Close + Itxi + PaymentServer + + Payment request error + Ordainketa eskaera akatsa + + + Invalid payment address %1 + Ordainketa helbide baliogabea %1 + PeerTableModel + + User Agent + Erabiltzaile agentea + + + Node/Service + Adabegi / Zerbitzua + QObject @@ -841,6 +1162,14 @@ RPCConsole + + User Agent + Erabiltzaile agentea + + + Node window + Adabegiaren leihoa + Last block time Azken blokearen unea @@ -864,6 +1193,10 @@ Copy label Etiketa kopiatu + + Copy amount + zenbatekoaren kopia + Could not unlock wallet. Ezin da diruzorroa desblokeatu. @@ -925,6 +1258,14 @@ Amount: Kopurua: + + Fee: + Ordainketa: + + + After Fee: + Ordaindu ondoren: + Change: Bueltak: @@ -949,6 +1290,26 @@ Confirm the send action Bidalketa berretsi + + Copy quantity + Kopia kopurua + + + Copy amount + zenbatekoaren kopia + + + Copy bytes + Kopiatu byte-ak + + + Copy dust + Kopiatu hautsa + + + Copy change + Kopiatu aldaketa + Confirm send coins Txanponen bidalketa berretsi @@ -1014,6 +1375,22 @@ Alt+P Alt+P + + No error + Ez dago errorerik + + + Message signing failed. + Errorea mezua sinatzean + + + Message signed. + Mezua sinatuta. + + + Please check the signature and try again. + Mesedez, begiratu sinadura eta saiatu berriro. + TrafficGraphWidget @@ -1024,6 +1401,10 @@ Open until %1 Zabalik %1 arte + + abandoned + abandonatuta + %1/unconfirmed %1/konfirmatu gabe @@ -1032,14 +1413,66 @@ %1 confirmations %1 konfirmazio + + Status + Egoera + Date Data + + Source + Iturria + + + Generated + Sortua + + + From + Tik + unknown ezezaguna + + To + Ra + + + own address + zure helbidea + + + watch-only + ikusi bakarrik + + + label + etiketa + + + Credit + Kreditua + + + not accepted + Onartu gabe + + + Debit + Zorrak + + + Total debit + Zor totala + + + Total credit + Kreditu totala + Message Mezua @@ -1102,6 +1535,10 @@ Mined Meatua + + watch-only + ikusi bakarrik + (n/a) (n/a) @@ -1189,6 +1626,14 @@ Copy label Etiketa kopiatu + + Copy amount + zenbatekoaren kopia + + + Copy transaction ID + Kopiatu transakzioaren IDa + Comma separated file (*.csv) Komaz bereizitako artxiboa (*.csv) diff --git a/src/qt/locale/bitcoin_fa.ts b/src/qt/locale/bitcoin_fa.ts index 9f587344d..4d3d75c6e 100644 --- a/src/qt/locale/bitcoin_fa.ts +++ b/src/qt/locale/bitcoin_fa.ts @@ -3,11 +3,11 @@ AddressBookPage Right-click to edit address or label - برای ویرایش آدرس یا برچسب‌گذاری راست‌کلیک کنید + برای ویرایش آدرس یا برچسب کلیک راست کنید Create a new address - ایجاد یک آدرس جدید + ساختن یک نشانی تازه &New @@ -72,16 +72,17 @@ These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. Signing is only possible with addresses of the type 'legacy'. - نشانی رسید پرداختهای بیت کوین شما اینها(اینجا) هستند. دکمه رسید ادرس جدید را بزنید تا اد س جدبد را دریافت کنید -امضا فقط با ادرسهای ثابت (ماندگار) امکان پذیر میباشد. + این‌ها نشانی‌های بیت‌کوین شما برای دریافت پرداختی‌ها است. از دکمهٔ «ساختن نشانی دریافت تازه» در زبانهٔ دریافت برای ساخت نشانی جدید استفاده کنید. + +امضا کردن تنها با یک نشانی از گونهٔ میراث امکان‌پذیر است. &Copy Address - کپی آدرس + تکثیر نشانی Copy &Label - کپی برچسب + تکثیر برچسب &Edit @@ -89,15 +90,15 @@ Signing is only possible with addresses of the type 'legacy'. Export Address List - از فهرست آدرس خروجی گرفته شود + برون‌بری فهرست نشانی Comma separated file (*.csv) - فایل سی اس وی (*.csv) + فایل جدا شده با ویرگول (*.csv) Exporting Failed - گرفتن خروجی به مشکل خورد + برون‌بری شکست خورد There was an error trying to save the address list to %1. Please try again. @@ -127,35 +128,38 @@ Signing is only possible with addresses of the type 'legacy'. Enter passphrase - رمز/پَس فرِیز را وارد کنید + عبارت عبور را وارد کنید New passphrase - رمز/پَس فرِیز جدید را وارد کنید + عبارت عبور تازه را وارد کنید Repeat new passphrase - رمز/پَس فرِیز را دوباره وارد کنید + عبارت عبور تازه را دوباره وارد کنید Show passphrase - نمایش رمز + نمایش عبارت عبور Encrypt wallet - رمزگذاری کیف پول + رمزنگاری کیف پول This operation needs your wallet passphrase to unlock the wallet. - این عملیات نیاز به رمز کیف ‌پول شما دارد تا کیف پول باز شود + این عملیات برای باز کردن قفل کیف پول به عبارت عبور کیف پول شما نیاز دارد. +  Unlock wallet - بازکردن کیف ‌پول + قفل کیف پول را باز کنید +  This operation needs your wallet passphrase to decrypt the wallet. - برای انجام این عملیات، باید رمز کیف‌پول را وارد کنید. + این عملیات برای رمزگشایی کیف پول به عبارت عبور کیف پول شما نیاز دارد. +  Decrypt wallet @@ -171,11 +175,13 @@ Signing is only possible with addresses of the type 'legacy'. Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! - اخطار: اگر کیف‌پول خود را رمزگذاری کرده و رمز خود را فراموش کنید، شما <b>تمام بیت‌کوین‌های خود را از دست خواهید داد</b>! + هشدار: اگر کیف پول خود را رمزگذاری کنید و عبارت خود را گام کنید ، این کار را انجام می دهید <b>تمام کویت های خود را از دست </b>استفاده کنید! + Are you sure you wish to encrypt your wallet? - آیا از رمزگذاری کیف ‌پول خود اطمینان دارید؟ + آیا مطمئن هستید که می خواهید کیف پول خود را رمزگذاری کنید؟ +  Wallet encrypted @@ -191,8 +197,8 @@ Signing is only possible with addresses of the type 'legacy'. Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. - والت رمز بندی شد . -یاد داشته باشید که پنجره رمز شده نمی تواند کلا از سرقت نرم افزارهای مخرب محافظ کند + به یاد داشته باشید که رمزگذاری کیف پول شما نمی تواند به طور کامل از سرقت بیت کوین شما در اثر آلوده شدن رایانه به بدافزار محافظت کند. +  Wallet to be encrypted @@ -208,15 +214,18 @@ Signing is only possible with addresses of the type 'legacy'. IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. - مهم: هر بک‌آپ قبلی که از کیف‌پول خود گرفته‌اید، با نسخه‌ی جدید رمزنگاری‌شده جایگزین خواهد شد. به دلایل امنیتی، پس از رمزنگاری کیف‌پول، بک‌آپ‌های قدیمی شما بلااستفاده خواهد شد. + مهم: پشتیبان گیری قبلی که از پرونده کیف پول خود انجام داده اید باید با پرونده کیف پول رمزگذاری شده تازه ایجاد شده جایگزین شود. به دلایل امنیتی ، به محض شروع استفاده از کیف پول رمزگذاری شده جدید ، پشتیبان گیری قبلی از پرونده کیف پول رمزگذاری نشده فایده ای نخواهد داشت. +  Wallet encryption failed - خطا در رمزنگاری کیف‌پول + رمزگذاری کیف پول انجام نشد +  Wallet encryption failed due to an internal error. Your wallet was not encrypted. - رمزگذاری به علت خطای داخلی تایید نشد. کیف‌پول شما رمزگذاری نشد. + رمزگذاری کیف پول به دلیل خطای داخلی انجام نشد. کیف پول شما رمزگذاری نشده است. +  The supplied passphrases do not match. @@ -224,23 +233,28 @@ Signing is only possible with addresses of the type 'legacy'. Wallet unlock failed - خطا در بازکردن کیف‌پول + باز کردن قفل کیف پول انجام نشد +  The passphrase entered for the wallet decryption was incorrect. - رمز واردشده برای رمزگشایی کیف‌پول اشتباه است. + عبارت عبور وارد شده برای رمزگشایی کیف پول نادرست است. +  Wallet decryption failed - خطا در رمزگشایی کیف‌پول + رمزگشایی کیف پول ناموفق بود +  Wallet passphrase was successfully changed. - رمز کیف‌پول با موفقیت تغییر یافت. + عبارت عبور کیف پول با موفقیت تغییر کرد. +  Warning: The Caps Lock key is on! - اخطار: کلید Caps Lock فعال است! + هشدار: کلید کلاه قفل روشن است! +  @@ -270,7 +284,8 @@ Signing is only possible with addresses of the type 'legacy'. Show general overview of wallet - نمای کلی از wallet را نشان بده + نمایش کلی کیف پول +  &Transactions @@ -318,7 +333,7 @@ Signing is only possible with addresses of the type 'legacy'. &Backup Wallet... - تهیه نسخه پشتیبان از کیف پول + & "پشتیبان" انتخاب کیف پول ... &Change Passphrase... @@ -330,11 +345,13 @@ Signing is only possible with addresses of the type 'legacy'. Create Wallet... - ایجاد کیف پول + ایجاد کیف پول ... +  Create a new wallet - ساخت کیف پول جدید + کیف پول جدیدی ایجاد کنید +  Wallet: @@ -370,7 +387,8 @@ Signing is only possible with addresses of the type 'legacy'. Backup wallet to another location - گرفتن نسخه پیشتیبان در آدرسی دیگر + پشتیبان گیری از کیف پول به مکان دیگر +  Change the passphrase used for wallet encryption @@ -378,7 +396,8 @@ Signing is only possible with addresses of the type 'legacy'. &Verify message... - تایید پیام + & تأیید پیام ... +  &Send @@ -398,7 +417,8 @@ Signing is only possible with addresses of the type 'legacy'. Encrypt the private keys that belong to your wallet - رمزنگاری کلیدهای شخصی متعلق به کیف‌پول + کلیدهای خصوصی متعلق به کیف پول شما را رمزگذاری کنید +  Sign messages with your Bitcoin addresses to prove you own them @@ -406,7 +426,8 @@ Signing is only possible with addresses of the type 'legacy'. Verify messages to ensure they were signed with specified Bitcoin addresses - پیام‌ها را تائید کنید تا از امضاشدن آن‌ها با آدرس بیت‌کوین مطمئن شوید + پیام ها را تأیید کنید تا مطمئن شوید با آدرس های مشخص شده بیت کوین امضا شده اند +  &File @@ -442,7 +463,8 @@ Signing is only possible with addresses of the type 'legacy'. %n active connection(s) to Bitcoin network - %n ارتباط فعال به شبکه بیت‌کوین%n ارتباط فعال به شبکه بیت‌کوین + %n ارتباط فعال به شبکه بیت‌کوین٪ n اتصال فعال به شبکه Bitcoin +  Indexing blocks on disk... @@ -522,11 +544,13 @@ Signing is only possible with addresses of the type 'legacy'. Open Wallet - باز کردن حساب + کیف پول را باز کنید +  Open a wallet - باز کردن یک حساب + کیف پول را باز کنید +  Close Wallet... @@ -554,7 +578,8 @@ Signing is only possible with addresses of the type 'legacy'. default wallet - کیف پول پیش‌فرض + کیف پول پیش فرض +  No wallets available @@ -654,11 +679,13 @@ Signing is only possible with addresses of the type 'legacy'. Wallet is <b>encrypted</b> and currently <b>unlocked</b> - wallet رمزگذاری شد و در حال حاضر از حالت قفل در آمده است + کیف پول است <b> رمزگذاری شده </b> و در حال حاضر <b> تفسیر شده است </b> +  Wallet is <b>encrypted</b> and currently <b>locked</b> - wallet رمزگذاری شد و در حال حاضر قفل است + کیف پول است <b> رمزگذاری شده </b> و در حال حاضر <b> تفسیر شده </b> +  Original message: @@ -673,7 +700,8 @@ Signing is only possible with addresses of the type 'legacy'. CoinControlDialog Coin Selection - انتخاب کوین + انتخاب سکه +  Quantity: @@ -803,10 +831,6 @@ Signing is only possible with addresses of the type 'legacy'. This label turns red if any recipient receives an amount smaller than the current dust threshold. اگر هر گیرنده مقداری کمتر آستانه فعلی دریافت کند از این لیبل قرمز می‌شود. - - Can vary +/- %1 satoshi(s) per input. - Can vary +/- %1 satoshi(s) per input. - (no label) (برچسب ندارد) @@ -828,18 +852,25 @@ Signing is only possible with addresses of the type 'legacy'. Create wallet failed - کیف پول ایجاد نگردید + کیف پول "ایجاد" نشد +  Create wallet warning - هشدار ایجاد کیف پول + هشدار کیف پول ایجاد کنید +  CreateWalletDialog Create Wallet - ایجاد کیف پول + ایجاد کیف پول +  + + + Wallet + کیف پول Wallet Name @@ -853,6 +884,10 @@ Signing is only possible with addresses of the type 'legacy'. Encrypt Wallet رمز نگاری کیف پول + + Advanced Options + گزینه‌های پیشرفته + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. غیر فعال کردن کلیدهای خصوصی برای این کیف پول. کیف پول هایی با کلید های خصوصی غیر فعال هیچ کلید خصوصی نداشته و نمیتوانند HD داشته باشند و یا کلید های خصوصی دارد شدنی داشته باشند. این کیف پول ها صرفاً برای رصد مناسب هستند. @@ -951,17 +986,14 @@ Signing is only possible with addresses of the type 'legacy'. name نام - - Directory already exists. Add %1 if you intend to create a new directory here. - این پوشه در حال حاضر وجود دارد. اگر می‌خواهید یک دایرکتوری جدید در این‌جا ایجاد کنید، %1 را اضافه کنید. - Path already exists, and is not a directory. مسیر داده شده موجود است و به یک پوشه اشاره نمی‌کند. Cannot create data directory here. - نمیتوان در اینجا پوشه داده ساخت. + نمی توانید فهرست داده را در اینجا ایجاد کنید. +  @@ -1007,11 +1039,13 @@ Signing is only possible with addresses of the type 'legacy'. If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. - If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. + اگر تصمیم بگیرید که فضای ذخیره سازی زنجیره بلوک (هرس) را محدود کنید ، داده های تاریخی باید بارگیری و پردازش شود ، اما اگر آن را حذف کنید ، اگر شما دیسک کم استفاده کنید. +  Use the default data directory - استفاده کردن از پوشه داده پیشفرض + از فهرست داده شده پیش استفاده کنید +  Use a custom data directory: @@ -1070,7 +1104,8 @@ Signing is only possible with addresses of the type 'legacy'. Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. - Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. + معاملات اخیر ممکن است هنوز قابل مشاهده نباشند ، بنابراین ممکن است موجودی کیف پول شما نادرست باشد. به محض اینکه همگام سازی کیف پول شما با شبکه بیت کوین به پایان رسید ، این اطلاعات درست خواهد بود ، همانطور که در زیر توضیح داده شده است. +  Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network. @@ -1144,11 +1179,12 @@ Signing is only possible with addresses of the type 'legacy'. default wallet - کیف پول پیش‌فرض + کیف پول پیش فرض +  Opening Wallet <b>%1</b>... - Opening Wallet <b>%1</b>... + <b> افتتاح کیف پول </b> %1 @@ -1165,10 +1201,6 @@ Signing is only possible with addresses of the type 'legacy'. Automatically start %1 after logging in to the system. اجرای خودکار %1 بعد زمان ورود به سیستم. - - &Start %1 on system login - &Start %1 on system login - Size of &database cache اندازه کش پایگاه داده. @@ -1187,21 +1219,18 @@ Signing is only possible with addresses of the type 'legacy'. Hide the icon from the system tray. - Hide the icon from the system tray. + نماد را از سینی سیستم پنهان کنید. +  &Hide tray icon - مخفی کردن ایکون - + & پنهان کردن نماد سینی +  Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu. Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu. - - Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. - Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. - Open the %1 configuration file from the working directory. Open the %1 configuration file from the working directory. @@ -1212,7 +1241,8 @@ Signing is only possible with addresses of the type 'legacy'. Reset all client options to default. - ریست تمامی تنظیمات کلاینت به پیشفرض + تمام گزینه های مشتری را به طور پیش فرض بازنشانی کنید. +  &Reset Options @@ -1224,7 +1254,8 @@ Signing is only possible with addresses of the type 'legacy'. Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. - Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. + برخی از ویژگی های پیشرفته را غیرفعال می کند ، اما تمام بلوک ها هنوز به طور کامل تأیید می شوند. برگرداندن این تنظیم نیاز به بارگیری مجدد کل بلاکچین دارد. ممکن است استفاده واقعی از دیسک تا حدودی بیشتر باشد. +  Prune &block storage to @@ -1300,11 +1331,13 @@ Signing is only possible with addresses of the type 'legacy'. Port of the proxy (e.g. 9050) - پورت پراکسی (مثال ۹۰۵۰) + بندر پروکسی (به عنوان مثال 9050) +  Used for reaching peers via: - Used for reaching peers via: + برای دسترسی به همسالان از طریق: +  IPv4 @@ -1342,21 +1375,19 @@ Signing is only possible with addresses of the type 'legacy'. User Interface &language: زبان واسط کاربری: - - The user interface language can be set here. This setting will take effect after restarting %1. - The user interface language can be set here. This setting will take effect after restarting %1. - &Unit to show amounts in: واحد نمایشگر مقادیر: Choose the default subdivision unit to show in the interface and when sending coins. - انتخاب واحد پول مورد استفاده برای نمایش در پنجره‌ها و برای ارسال سکه. + واحد تقسیم پیش فرض را برای نشان دادن در رابط کاربری و هنگام ارسال سکه انتخاب کنید. +  Whether to show coin control features or not. - که امکانات کنترل کوین‌ها نشان داده شود یا نه. + آیا ویژگی های کنترل سکه را نشان می دهد یا خیر. +  Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. @@ -1392,7 +1423,8 @@ Signing is only possible with addresses of the type 'legacy'. Confirm options reset - تایید ریست تنظیمات + باز نشانی گزینه ها را تأیید کنید +  Client restart required to activate changes. @@ -1408,7 +1440,9 @@ Signing is only possible with addresses of the type 'legacy'. The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file. - The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file. + از پرونده پیکربندی برای انتخاب گزینه های کاربر پیشرفته استفاده می شود که تنظیمات ونک را نادیده می شود. بعلاوه ، هر گزینه خط فرمان این پرونده پیکربندی را لغو می کند.  + +  Error @@ -1435,7 +1469,8 @@ Signing is only possible with addresses of the type 'legacy'. The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. - اطلاعات نمایش داده شده ممکن است روزآمد نباشد. wallet شما به صورت خودکار بعد از برقراری اتصال با شبکه bitcoin به روز می شود اما این فرایند هنوز تکمیل نشده است. + اطلاعات نمایش داده شده ممکن است قدیمی باشد. کیف پول شما پس از برقراری اتصال به طور خودکار با شبکه Bitcoin همگام سازی می شود ، اما این روند هنوز کامل نشده است. +  Watch-only: @@ -1614,7 +1649,8 @@ Signing is only possible with addresses of the type 'legacy'. (But this wallet cannot sign transactions.) - (اما این کیف‌‌پول نمی‌تواند عملیات‌ها را امضا کند.) + (اما این کیف پول نمی تواند معاملات را امضا کند.) +  (But this wallet does not have the right keys.) @@ -1637,7 +1673,8 @@ Signing is only possible with addresses of the type 'legacy'. Cannot start bitcoin: click-to-pay handler - نمی‌توان بیت‌کوین را اجرا کرد: کنترل‌کنندهٔ کلیک-و-پرداخت + نمی توان بیت کوین را شروع کرد: کنترل کننده کلیک برای پرداخت +  URI handling @@ -1649,7 +1686,8 @@ Signing is only possible with addresses of the type 'legacy'. Cannot process payment request because BIP70 is not supported. - Cannot process payment request because BIP70 is not supported. + درخواست پرداخت قابل پردازش نیست زیرا BIP70 پشتیبانی نمی شود. +  Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. @@ -1657,7 +1695,8 @@ Signing is only possible with addresses of the type 'legacy'. If you are receiving this error you should request the merchant provide a BIP21 compatible URI. - If you are receiving this error you should request the merchant provide a BIP21 compatible URI. + اگر این خطا را دریافت می کنید باید از بازرگان بخواهید یک URI سازگار با BIP21 ارائه دهد. +  Invalid payment address %1 @@ -1905,7 +1944,8 @@ Signing is only possible with addresses of the type 'legacy'. Memory usage - حافظه استفاده شده + استفاده از حافظه +  Wallet: @@ -1961,7 +2001,8 @@ Signing is only possible with addresses of the type 'legacy'. The mapped Autonomous System used for diversifying peer selection. - The mapped Autonomous System used for diversifying peer selection. + سیستم خودمختار نگاشت شده برای متنوع سازی انتخاب همتا استفاده می شود. +  Mapped AS @@ -1979,10 +2020,6 @@ Signing is only possible with addresses of the type 'legacy'. Current block height ارتفاع فعلی بلوک - - Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. - Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. - Decrease font size کاهش دادن اندازه فونت @@ -2113,7 +2150,8 @@ Signing is only possible with addresses of the type 'legacy'. WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. - WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. + هشدار: کلاهبرداران فعال بوده و به کاربران می گویند که دستورات را در اینجا تایپ کرده و محتوای کیف پول آنها را سرقت کنند. بدون درک کامل پیامدهای یک دستور از این کنسول استفاده نکنید. +  Network activity disabled @@ -2123,18 +2161,10 @@ Signing is only possible with addresses of the type 'legacy'. Executing command without any wallet Executing command without any wallet - - Executing command using "%1" wallet - Executing command using "%1" wallet - (node id: %1) (شناسه گره: %1) - - via %1 - با %1 - never هیچ وقت @@ -2168,31 +2198,38 @@ Signing is only possible with addresses of the type 'legacy'. An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network. - An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network. + یک پیام اختیاری برای پیوست به درخواست پرداخت ، که با باز شدن درخواست نمایش داده می شود. توجه: پیام با پرداخت از طریق شبکه بیت کوین ارسال نمی شود. +  An optional label to associate with the new receiving address. - An optional label to associate with the new receiving address. + یک برچسب اختیاری برای ارتباط با آدرس دریافت کننده جدید. +  Use this form to request payments. All fields are <b>optional</b>. - از این فرم استفاده کنید برای درخواست پرداخت ها.تمامی گزینه ها <b>اختیاری</b>هستند. + برای درخواست پرداخت از این فرم استفاده کنید. همه زمینه ها <b> اختیاری </b>. +  An optional amount to request. Leave this empty or zero to not request a specific amount. - An optional amount to request. Leave this empty or zero to not request a specific amount. + مبلغ اختیاری برای درخواست این را خالی یا صفر بگذارید تا مبلغ مشخصی درخواست نشود. +  An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request. - An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request. + یک برچسب اختیاری برای ارتباط با آدرس دریافت کننده جدید (استفاده شده توسط شما برای شناسایی فاکتور). همچنین به درخواست پرداخت پیوست می شود. +  An optional message that is attached to the payment request and may be displayed to the sender. - An optional message that is attached to the payment request and may be displayed to the sender. + پیام اختیاری که به درخواست پرداخت پیوست شده و ممکن است برای فرستنده نمایش داده شود. +  &Create new receiving address - &Create new receiving address + & ایجاد آدرس دریافت جدید +  Clear all fields of the form. @@ -2216,7 +2253,8 @@ Signing is only possible with addresses of the type 'legacy'. Show the selected request (does the same as double clicking an entry) - Show the selected request (does the same as double clicking an entry) + نمایش درخواست انتخاب شده (همانند دوبار کلیک کردن بر روی ورودی) +  Show @@ -2259,7 +2297,8 @@ Signing is only possible with addresses of the type 'legacy'. ReceiveRequestDialog Request payment to ... - درخواست واریز به ... + درخواست پرداخت به ... +  Address: @@ -2341,7 +2380,8 @@ Signing is only possible with addresses of the type 'legacy'. Coin Control Features - قابلیت های کنترل کوین + ویژگی های کنترل سکه +  Inputs... @@ -2469,7 +2509,8 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk. - With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk. + با Replace-By-Fee (BIP-125) می توانید هزینه معامله را پس از ارسال آن افزایش دهید. بدون این ، ممکن است هزینه بیشتری برای جبران افزایش خطر تاخیر در معامله پیشنهاد شود. +  Clear &All @@ -2523,14 +2564,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Cr&eate Unsigned Cr&eate Unsigned - - Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. - Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. - - - from wallet '%1' - from wallet '%1' - %1 to '%2' %1 to '%2' @@ -2601,7 +2634,8 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Confirm transaction proposal - Confirm transaction proposal + پیشنهاد معامله را تأیید کنید +  Send @@ -2617,7 +2651,8 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p The amount to pay must be larger than 0. - میزان پولی کخ پرداخت می کنید باید بزرگتر از 0 باشد. + مبلغ پرداختی باید بیشتر از 0 باشد. +  The amount exceeds your balance. @@ -2676,7 +2711,8 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Pay &To: - پرداخت به: + پرداخت به: +  &Label: @@ -2688,7 +2724,8 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p The Bitcoin address to send the payment to - آدرس بیت کوین برای ارسال پرداحت به آن + آدرس Bitcoin برای ارسال پرداخت به +  Alt+A @@ -2728,11 +2765,13 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p This is an unauthenticated payment request. - This is an unauthenticated payment request. + این یک درخواست پرداخت غیرمجاز است. +  This is an authenticated payment request. - This is an authenticated payment request. + این یک درخواست پرداخت معتبر است. +  Enter a label for this address to add it to the list of used addresses @@ -2744,7 +2783,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Pay To: - پرداخت به: + پرداخت کردن Memo: @@ -2766,7 +2805,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p SignVerifyMessageDialog Signatures - Sign / Verify a Message - امضاها -ثبت/تایید پیام + امضا - امضاء کردن / تأیید کنید یک پیام &Sign Message @@ -2806,7 +2845,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Copy the current signature to the system clipboard - امضای فعلی را به حافظهٔ سیستم کپی کن + جریان را کپی کنید امضا به سیستم کلیپ بورد Sign the message to prove you own this Bitcoin address @@ -2818,7 +2857,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Reset all sign message fields - بازنشانی تمام فیلدهای پیام + تنظیم مجدد همه امضاء کردن زمینه های پیام Clear &All @@ -2826,7 +2865,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p &Verify Message - تایید پیام + & تأیید پیام Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! @@ -2838,7 +2877,8 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p The signed message to verify - The signed message to verify + پیام امضا شده برای تأیید +  The signature given when the message was signed @@ -2846,11 +2886,13 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Verify the message to ensure it was signed with the specified Bitcoin address - پیام را تایید کنید تا مطمئن شوید که توسط آدرس بیت‌کوین مشخص شده امضا شده است. + پیام را تأیید کنید تا مطمئن شوید با آدرس Bitcoin مشخص شده امضا شده است +  Verify &Message - تایید پیام + تأیید و پیام دهید +  Reset all verify message fields @@ -2866,8 +2908,8 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Please check the address and try again. - لطفاً آدرس را بررسی کرده و دوباره تلاش کنید. - + لطفا ادرس را بررسی کرده و دوباره امتحان کنید. +  The entered address does not refer to a key. @@ -2875,7 +2917,8 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Wallet unlock was cancelled. - قفل‌گشابی کیف‌پول لغو شد. + باز کردن قفل کیف پول لغو شد. +  No error @@ -3063,13 +3106,10 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Merchant بازرگان - - Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. - Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. - Debug information - اطلاعات دی باگ Debug + اطلاعات اشکال زدایی +  Transaction @@ -3145,10 +3185,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Conflicted Conflicted - - Immature (%1 confirmations, will be available after %2) - Immature (%1 confirmations, will be available after %2) - Generated but not accepted تولید شده ولی هنوز قبول نشده است @@ -3411,7 +3447,8 @@ Go to File > Open Wallet to load a wallet. Create a new wallet - ساخت کیف پول جدید + کیف پول جدیدی ایجاد کنید +  @@ -3470,7 +3507,8 @@ Go to File > Open Wallet to load a wallet. default wallet - کیف پول پیش‌فرض + کیف پول پیش فرض +  @@ -3509,7 +3547,8 @@ Go to File > Open Wallet to load a wallet. Backup Wallet - بازیابی یا پشتیبان گیری کیف پول + کیف پول پشتیبان +  Wallet Data (*.dat) @@ -3517,19 +3556,13 @@ Go to File > Open Wallet to load a wallet. Backup Failed - بازیابی یا پشتیبان گیری با خطا مواجه شد - - - There was an error trying to save the wallet data to %1. - There was an error trying to save the wallet data to %1. + پشتیبان گیری انجام نشد +  Backup Successful - بازیابی یا پشتیبان گیری موفقیت آمیز بود. - - - The wallet data was successfully saved to %1. - The wallet data was successfully saved to %1. + پشتیبان گیری موفقیت آمیز است +  Cancel @@ -3548,7 +3581,8 @@ Go to File > Open Wallet to load a wallet. Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) - Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) + هرس: آخرین هماهنگی کیف پول فراتر از داده های هرس شده است. شما باید دوباره -exe کنید (در صورت گره هرس شده دوباره کل بلاکچین را بارگیری کنید) +  Pruning blockstore... @@ -3556,7 +3590,8 @@ Go to File > Open Wallet to load a wallet. Unable to start HTTP server. See debug log for details. - Unable to start HTTP server. See debug log for details. + سرور HTTP راه اندازی نمی شود. برای جزئیات به گزارش اشکال زدایی مراجعه کنید. +  The %s developers @@ -3624,7 +3659,8 @@ Go to File > Open Wallet to load a wallet. Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. - Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. + هشدار: به نظر نمی رسد ما کاملاً با همسالان خود موافق هستیم! ممکن است به ارتقا نیاز داشته باشید یا گره های دیگر به ارتقا نیاز دارند. +  -maxmempool must be at least %d MB @@ -3678,10 +3714,6 @@ Go to File > Open Wallet to load a wallet. Error loading %s: Private keys can only be disabled during creation Error loading %s: Private keys can only be disabled during creation - - Error loading %s: Wallet corrupted - Error loading %s: Wallet corrupted - Error loading %s: Wallet requires newer version of %s Error loading %s: Wallet requires newer version of %s @@ -3700,7 +3732,8 @@ Go to File > Open Wallet to load a wallet. Failed to rescan the wallet during initialization - Failed to rescan the wallet during initialization + در هنگام مقداردهی اولیه ، مجدداً اسکن کیف پول انجام نشد +  Failed to verify database @@ -3856,7 +3889,8 @@ Go to File > Open Wallet to load a wallet. The transaction amount is too small to send after the fee has been deducted - مبلغ تراکنش کمتر از آن است که پس از کسر هزینه تراکنش قابل ارسال باشد + مبلغ معامله برای ارسال پس از کسر هزینه بسیار ناچیز است +  This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet @@ -3962,7 +3996,8 @@ Go to File > Open Wallet to load a wallet. The transaction amount is too small to pay the fee - حجم تراکنش بسیار کم است برای پرداخت کارمزد + مبلغ معامله برای پرداخت هزینه بسیار ناچیز است +  This is experimental software. @@ -4006,7 +4041,7 @@ Go to File > Open Wallet to load a wallet. This is the transaction fee you may pay when fee estimates are not available. - این هزینه تراکنشی است که در صورت عدم وجود هزینه تخمینی، پرداخت می کنید. + این است هزینه معامله ممکن است پرداخت چه زمانی هزینه تخمین در دسترس نیست Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments. @@ -4022,15 +4057,18 @@ Go to File > Open Wallet to load a wallet. The wallet will avoid paying less than the minimum relay fee. - The wallet will avoid paying less than the minimum relay fee. + کیف پول از پرداخت کمتر از حداقل هزینه رله جلوگیری خواهد کرد. +  This is the minimum transaction fee you pay on every transaction. - این کمترین فی تراکنش است که در هر تراکنش پرداخت می‌نمایید. + این حداقل هزینه معامله ای است که شما در هر معامله پرداخت می کنید. +  This is the transaction fee you will pay if you send a transaction. - این میزان کارمزد پرداختی شما در صورت ایجاد تراکنش انتقال میباشد. + این هزینه تراکنش است که در صورت ارسال معامله پرداخت خواهید کرد. +  Transaction amounts must not be negative @@ -4038,8 +4076,8 @@ Go to File > Open Wallet to load a wallet. Transaction has too long of a mempool chain - تراکنش بیش از حد طولانی از یک زنجیر مهر و موم شده است - + معاملات بسیار طولانی از یک زنجیره ممپول است +  Transaction must have at least one recipient @@ -4071,11 +4109,13 @@ Go to File > Open Wallet to load a wallet. Loading wallet... - wallet در حال لود شدن است... + در حال بارگیری کیف پول ... +  Cannot downgrade wallet - قابلیت برگشت به نسخه قبلی برای wallet امکان پذیر نیست + کاهش کیفیت کیف پول امکان پذیر نیست +  Rescanning... diff --git a/src/qt/locale/bitcoin_fi.ts b/src/qt/locale/bitcoin_fi.ts index 702f9b442..63c213808 100644 --- a/src/qt/locale/bitcoin_fi.ts +++ b/src/qt/locale/bitcoin_fi.ts @@ -844,6 +844,10 @@ Allekirjoitus on mahdollista vain 'legacy'-tyyppisillä osoitteilla.Create Wallet Luo lompakko + + Wallet + Lompakko + Wallet Name Lompakon nimi @@ -856,6 +860,10 @@ Allekirjoitus on mahdollista vain 'legacy'-tyyppisillä osoitteilla.Encrypt Wallet Salaa lompakko + + Advanced Options + Lisäasetukset + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. Poista tämän lompakon yksityiset avaimet käytöstä. Lompakot, joissa yksityiset avaimet on poistettu käytöstä, eivät sisällä yksityisiä avaimia, eikä niissä voi olla HD-juurisanoja tai tuotuja yksityisiä avaimia. Tämä on ihanteellinen katselulompakkoihin. diff --git a/src/qt/locale/bitcoin_fil.ts b/src/qt/locale/bitcoin_fil.ts index 496329953..326cba48e 100644 --- a/src/qt/locale/bitcoin_fil.ts +++ b/src/qt/locale/bitcoin_fil.ts @@ -790,6 +790,10 @@ Create Wallet Gumawa ng Pitaka + + Wallet + Walet + Wallet Name Pangalan ng Pitaka @@ -1476,6 +1480,10 @@ Unknown error processing transaction. Hindi kilalang error sa pagproseso ng transaksyon. + + Transaction broadcast successfully! Transaction ID: %1 + %1 + Total Amount Kabuuang Halaga diff --git a/src/qt/locale/bitcoin_fr.ts b/src/qt/locale/bitcoin_fr.ts index 6567f04ff..38851b288 100644 --- a/src/qt/locale/bitcoin_fr.ts +++ b/src/qt/locale/bitcoin_fr.ts @@ -844,6 +844,10 @@ Signing is only possible with addresses of the type 'legacy'. Create Wallet Create Wallet + + Wallet + Porte-monnaie + Wallet Name Wallet Name @@ -856,6 +860,10 @@ Signing is only possible with addresses of the type 'legacy'. Encrypt Wallet Encrypt Wallet + + Advanced Options + Options avancées + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. diff --git a/src/qt/locale/bitcoin_gl_ES.ts b/src/qt/locale/bitcoin_gl_ES.ts index 8639be9a2..b3afe7624 100644 --- a/src/qt/locale/bitcoin_gl_ES.ts +++ b/src/qt/locale/bitcoin_gl_ES.ts @@ -419,7 +419,7 @@ Request payments (generates QR codes and bitcoin: URIs) - Solicita pagamentos (xera un código QR e bitocin : URIs) + Solicita pagamentos (xera un código QR e bitcoin : URIs) Show the list of used sending addresses and labels @@ -798,6 +798,10 @@ Create Wallet Crea unha Carteira + + Wallet + Wallet + Wallet Name Nome da Carteira diff --git a/src/qt/locale/bitcoin_he.ts b/src/qt/locale/bitcoin_he.ts index 48d4935f3..fdaa295fc 100644 --- a/src/qt/locale/bitcoin_he.ts +++ b/src/qt/locale/bitcoin_he.ts @@ -7,7 +7,7 @@ Create a new address - יצירת כתובת חדשה + יצר כתובת חדשה &New @@ -47,7 +47,7 @@ Choose the address to send coins to - נא לבחור את הכתובת לשליחת המטבעות + בחר את הכתובת לשליחת המטבעות Choose the address to receive coins with @@ -841,6 +841,10 @@ Signing is only possible with addresses of the type 'legacy'. Create Wallet יצירת ארנק + + Wallet + ארנק + Wallet Name שם הארנק @@ -853,6 +857,10 @@ Signing is only possible with addresses of the type 'legacy'. Encrypt Wallet הצפנת ארנק + + Advanced Options + אפשרויות מתקדמות + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. נטרלו מפתחות פרטיים לארנק זה. ארנקים עם מפתחות פרטיים מנוטרלים יהיו מחוסרי מפתחות פרטיים וללא מקור HD או מפתחות מיובאים. זהו אידאלי לארנקי צפייה בלבד. @@ -881,7 +889,11 @@ Signing is only possible with addresses of the type 'legacy'. Create יצירה - + + Compiled without sqlite support (required for descriptor wallets) + מהודר ללא תמיכת sqlite (נחוץ לארנקי דסקריפטור) + + EditAddressDialog diff --git a/src/qt/locale/bitcoin_hi.ts b/src/qt/locale/bitcoin_hi.ts index 7e71f7fa8..deed5cf02 100644 --- a/src/qt/locale/bitcoin_hi.ts +++ b/src/qt/locale/bitcoin_hi.ts @@ -3,402 +3,405 @@ AddressBookPage Right-click to edit address or label - पता व नामपत्र बदलने के लिए दायीं कुंजी दबाइए + Right-click to edit address or label Create a new address - नया एड्रेस बनाएं + Create a new address &New - नया + &New Copy the currently selected address to the system clipboard - चुने हुए एड्रेस को सिस्टम क्लिपबोर्ड पर कॉपी करें + Copy the currently selected address to the system clipboard &Copy - &कॉपी + &Copy C&lose - &बंद करें + C&lose Delete the currently selected address from the list - चुने हुए एड्रेस को सूची से हटाएं + Delete the currently selected address from the list Enter address or label to search - ढूंढने के लिए एड्रेस या लेबल दर्ज करें + Enter address or label to search Export the data in the current tab to a file - डेटा को मौजूदा टैब से एक फ़ाइल में निर्यात करें + Export the data in the current tab to a file &Export - &निर्यात + &Export &Delete - &मिटाए + &Delete Choose the address to send coins to - कॉइन भेजने के लिए एड्रेस चुनें + Choose the address to send coins to Choose the address to receive coins with - कॉइन प्राप्त करने के लिए एड्रेस चुनें + Choose the address to receive coins with C&hoose - &चुनें + C&hoose Sending addresses - एड्रेस भेजे जा रहें हैं + Sending addresses Receiving addresses - एड्रेस प्राप्त किए जा रहें हैं + Receiving addresses These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. - भुगतान करने के लिए ये आपके बिटकॉइन एड्रेस हैं। कॉइन भेजने से पहले राशि और गंतव्य एड्रेस की हमेशा जाँच करें + These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. Signing is only possible with addresses of the type 'legacy'. - भुगतान प्राप्त करने के लिए ये आपके Bitcoin पते हैं। नए पते बनाने के लिए प्राप्त टैब में 'नया पता प्राप्त करें' बटन का उपयोग करें। -हस्ताक्षर केवल 'विरासत' प्रकार के पते से संभव है। + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. &Copy Address - &एड्रेस कॉपी करें + &Copy Address Copy &Label - कॉपी &लेबल + Copy &Label &Edit - &बदलाव करें + &Edit Export Address List - एड्रेस की सूची निर्यात करें + Export Address List Comma separated file (*.csv) - कौमा सेपरेटेड फाइल (* .csv) + Comma separated file (*.csv) Exporting Failed - निर्यात विफल रहा + Exporting Failed There was an error trying to save the address list to %1. Please try again. - एड्रेस की सूची को %1 में सहेजने का प्रयास करने में त्रुटि हुई। कृपया पुन: प्रयास करें। + There was an error trying to save the address list to %1. Please try again. AddressTableModel Label - लेबल + Label Address - एड्रेस + Address (no label) - (लेबल नहीं है) + (no label) AskPassphraseDialog Passphrase Dialog - पासफ़्रेज़ डायलॉग + Passphrase Dialog Enter passphrase - पासफ्रेज़ दर्ज करें + Enter passphrase New passphrase - नया पासफ्रेज़ + New passphrase Repeat new passphrase - नया पासफ्रेज़ दोबारा दर्ज करें + Repeat new passphrase Show passphrase - पासफ्रेज़ उजागर करे + Show passphrase Encrypt wallet - वॉलेट एन्क्रिप्ट करें + Encrypt wallet This operation needs your wallet passphrase to unlock the wallet. - इस संचालान हेतु कृपया अपने वॉलेट के सुरक्षा संवाद को दर्ज करें + This operation needs your wallet passphrase to unlock the wallet. Unlock wallet - बटुए को अनलॉक करें + Unlock wallet This operation needs your wallet passphrase to decrypt the wallet. - आपके वॉलेट को गोपनीय बनाने हेतु आपके वॉलेट का सुरक्षा संवाद अनिवार्य है + This operation needs your wallet passphrase to decrypt the wallet. Decrypt wallet - वॉलेट को डिक्रिप्ट करें + Decrypt wallet Change passphrase - पासफ़्रेज़ बदलें + Change passphrase Confirm wallet encryption - वॉलेट एन्क्रिप्शन की पुष्टि करें + Confirm wallet encryption Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! - चेतावनी: यदि आपने वॉलेट को एन्क्रिप्ट करने के बाद पदबंध खो दी तो <b>आप सारे बिटकॉइन खो देंगे </b>! + Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! Are you sure you wish to encrypt your wallet? - क्या आप सुनिश्चित हैं कि आप अपने वॉलेट को एन्क्रिप्ट करना चाहते हैं ? + Are you sure you wish to encrypt your wallet? Wallet encrypted - वॉलेट को एन्क्रिप्ट किया गया है + Wallet encrypted Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. - वॉलेट में नया सुरक्षा संवाद दर्ज करें | कृपया दस या उससे अधिक, या फिर आठ या उससे अधिक अव्यवस्थित अंको से ही अपना सुरक्षा संवाद बनाएं । + Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. Enter the old passphrase and new passphrase for the wallet. - वॉलेट में पुराना एवं नया सुरक्षा संवाद दर्ज करें । + Enter the old passphrase and new passphrase for the wallet. Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. - याद रखें कि अपने बटुए (वॉलेट) एन्क्रिप्ट करना आपके कंप्यूटर को संक्रमित करने वाले मैलवेयर द्वारा आपके बिटकॉइन को चोरी होने से पूरी तरह से सुरक्षित नहीं कर सकता है। + Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. Wallet to be encrypted - बटुए "वॉलेट" को एन्क्रिप्ट किया जाना है + Wallet to be encrypted Your wallet is about to be encrypted. - आपका बटुआ "वॉलेट" एन्क्रिप्टेड होने वाला है। + Your wallet is about to be encrypted. Your wallet is now encrypted. - आपका बटुआ "वॉलेट" एन्क्रिप्ट हो गया है। + Your wallet is now encrypted. IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. - महत्वपूर्ण: किसी भी पिछले बैकअप को आपने अपनी वॉलेट फ़ाइल से बनाया था, उसे नए जनरेट किए गए एन्क्रिप्टेड वॉलेट फ़ाइल से बदल दिया जाना चाहिए। सुरक्षा कारणों से, अनएन्क्रिप्टेड वॉलेट फ़ाइल के पिछले बैकअप बेकार हो जाएंगे जैसे ही आप नए, एन्क्रिप्टेड वॉलेट का उपयोग करना शुरू करते हैं। + IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. Wallet encryption failed - वॉलेट एन्क्रिप्शन विफल रहा + Wallet encryption failed Wallet encryption failed due to an internal error. Your wallet was not encrypted. - आंतरिक त्रुटि के कारण वॉलेट एन्क्रिप्शन विफल रहा। आपका वॉलेट "बटुआ" एन्क्रिप्ट नहीं किया गया था। + Wallet encryption failed due to an internal error. Your wallet was not encrypted. The supplied passphrases do not match. - आपूर्ति किए गए पासफ़्रेज़ मेल नहीं खाते हैं। + The supplied passphrases do not match. Wallet unlock failed - वॉलेट अनलॉक विफल रहा + Wallet unlock failed The passphrase entered for the wallet decryption was incorrect. - वॉलेट डिक्रिप्शन के लिए दर्ज किया गया पासफ़्रेज़ गलत था। + The passphrase entered for the wallet decryption was incorrect. Wallet decryption failed - वॉलेट डिक्रिप्शन विफल + Wallet decryption failed Wallet passphrase was successfully changed. - वॉलेट पासफ़्रेज़ को सफलतापूर्वक बदल दिया गया था। + Wallet passphrase was successfully changed. Warning: The Caps Lock key is on! - चेतावनी: कैप्स लॉक कुंजी चालू है! + Warning: The Caps Lock key is on! BanTableModel IP/Netmask - आईपी /नेटमास्क "Netmask" + IP/Netmask Banned Until - तक बैन कर दिया + Banned Until BitcoinGUI Sign &message... - हस्ताक्षर और संदेश ... + Sign &message... Synchronizing with network... - नेटवर्क से समकालिकरण जारी है ... + Synchronizing with network... &Overview - &विवरण + &Overview Show general overview of wallet - वॉलेट का सामानया विवरण दिखाए ! + Show general overview of wallet &Transactions - & लेन-देन - + &Transactions Browse transaction history - देखिए पुराने लेन-देन के विवरण ! + Browse transaction history E&xit - बाहर जायें + E&xit Quit application - अप्लिकेशन से बाहर निकलना ! + Quit application &About %1 - और %1 के बारे में + &About %1 Show information about %1 - %1 के बारे में जानकारी दिखाएं + Show information about %1 About &Qt - के बारे में और क्यूटी "Qt" + About &Qt Show information about Qt - क्यूटी "Qt" के बारे में जानकारी दिखाएँ + Show information about Qt &Options... - &विकल्प + &Options... + + + Modify configuration options for %1 + Modify configuration options for %1 &Encrypt Wallet... - और वॉलेट को गोपित "एन्क्रिप्ट" करें + &Encrypt Wallet... &Backup Wallet... - &बैकप वॉलेट + &Backup Wallet... &Change Passphrase... - और पासफ़्रेज़ बदलें + &Change Passphrase... Open &URI... - खोलें एवं एकसामन संसाधन को दर्शाएँ । + Open &URI... Create Wallet... - वॉलेट बनाएं + Create Wallet... Create a new wallet - नया वॉलेट बनाएं + Create a new wallet Wallet: - तिजोरी + Wallet: Click to disable network activity. - नेटवर्क एक्टिविटी बंद करने के लिए क्लिक करें + Click to disable network activity. Network activity disabled. - नेटवर्क एक्टिविटी बंद हो गई है. + Network activity disabled. Click to enable network activity again. - नेटवर्क एक्टिविटी दोबारा शुरू करने के लिए क्लिक करें. + Click to enable network activity again. Syncing Headers (%1%)... - हेडर्स सिंक हो रहे हैं (%1%)... + Syncing Headers (%1%)... Reindexing blocks on disk... - डिस्क पर ब्लॉक्स री-इंडेक्सिंग हो रहे हैं... + Reindexing blocks on disk... Proxy is <b>enabled</b>: %1 - प्रॉक्सी <b> चालू है </b> : %1 + Proxy is <b>enabled</b>: %1 Send coins to a Bitcoin address - इस पते पर बिटकौइन भेजें + Send coins to a Bitcoin address Backup wallet to another location - वॉलेट का दूसरी जगह पर बैकअप लें + Backup wallet to another location Change the passphrase used for wallet encryption - पहचान शब्द/अक्षर जो वॉलेट एनक्रिपशन के लिए इस्तेमाल किया है उसे बदलिए! + Change the passphrase used for wallet encryption &Verify message... - &मैसेज वैरीफ़ाई करें... + &Verify message... &Send - &भेजें + &Send &Receive - &प्राप्त करें + &Receive &Show / Hide - &दिखाएं/छिपाएं + &Show / Hide Show or hide the main Window - मुख्य विंडो को दिखाएं या छिपाएं + Show or hide the main Window Encrypt the private keys that belong to your wallet - अपने वॉलेट के निजी कुंजी को इन्क्रिप्ट करें + Encrypt the private keys that belong to your wallet Sign messages with your Bitcoin addresses to prove you own them - अपने बीटकॉइन पता से घोषणा को साइन करके इसे अपना होने का साबित करें + Sign messages with your Bitcoin addresses to prove you own them Verify messages to ensure they were signed with specified Bitcoin addresses @@ -406,19 +409,19 @@ Signing is only possible with addresses of the type 'legacy'. &File - &फाइल + &File &Settings - &सेट्टिंग्स + &Settings &Help - &मदद + &Help Tabs toolbar - टैबस टूलबार + Tabs toolbar Request payments (generates QR codes and bitcoin: URIs) @@ -436,6 +439,10 @@ Signing is only possible with addresses of the type 'legacy'. &Command-line options &Command-line options + + %n active connection(s) to Bitcoin network + %n active connection to Bitcoin network%n active connections to Bitcoin network + Indexing blocks on disk... Indexing blocks on disk... @@ -444,9 +451,13 @@ Signing is only possible with addresses of the type 'legacy'. Processing blocks on disk... Processing blocks on disk... + + Processed %n block(s) of transaction history. + Processed %n block of transaction history.Processed %n blocks of transaction history. + %1 behind - %1 पीछे + %1 behind Last received block was generated %1 ago. @@ -458,19 +469,35 @@ Signing is only possible with addresses of the type 'legacy'. Error - भूल + Error Warning - चेतावनी + Warning Information - जानकारी + Information Up to date - नवीनतम + Up to date + + + &Load PSBT from file... + &Load PSBT from file... + + + Load Partially Signed Bitcoin Transaction + Load Partially Signed Bitcoin Transaction + + + Load PSBT from clipboard... + Load PSBT from clipboard... + + + Load Partially Signed Bitcoin Transaction from clipboard + Load Partially Signed Bitcoin Transaction from clipboard Node window @@ -482,11 +509,11 @@ Signing is only possible with addresses of the type 'legacy'. &Sending addresses - &पते भेजे जा रहे हैं + &Sending addresses &Receiving addresses - &पते प्राप्त किए जा रहे हैं + &Receiving addresses Open a bitcoin: URI @@ -494,32 +521,40 @@ Signing is only possible with addresses of the type 'legacy'. Open Wallet - बटुआ खोलें + Open Wallet Open a wallet - बटुआ खोलें + Open a wallet Close Wallet... - बटुआ बंद करें... + Close Wallet... Close wallet - बटुआ बंद करें + Close wallet Close All Wallets... - सारे बटुएँ बंद करें... + Close All Wallets... Close all wallets - सारे बटुएँ बंद करें + Close all wallets Show the %1 help message to get a list with possible Bitcoin command-line options Show the %1 help message to get a list with possible Bitcoin command-line options + + &Mask values + &Mask values + + + Mask the values in the Overview tab + Mask the values in the Overview tab + default wallet default wallet @@ -602,11 +637,11 @@ Signing is only possible with addresses of the type 'legacy'. Sent transaction - भेजी ट्रांजक्शन + Sent transaction Incoming transaction - प्राप्त हुई ट्रांजक्शन + Incoming transaction HD key generation is <b>enabled</b> @@ -622,13 +657,21 @@ Signing is only possible with addresses of the type 'legacy'. Wallet is <b>encrypted</b> and currently <b>unlocked</b> - वॉलेट एन्क्रिप्टेड है तथा अभी लॉक्ड नहीं है + Wallet is <b>encrypted</b> and currently <b>unlocked</b> Wallet is <b>encrypted</b> and currently <b>locked</b> - वॉलेट एन्क्रिप्टेड है तथा अभी लॉक्ड है + Wallet is <b>encrypted</b> and currently <b>locked</b> - + + Original message: + Original message: + + + A fatal error occurred. %1 can no longer continue safely and will quit. + A fatal error occurred. %1 can no longer continue safely and will quit. + + CoinControlDialog @@ -637,7 +680,7 @@ Signing is only possible with addresses of the type 'legacy'. Quantity: - मात्रा : + Quantity: Bytes: @@ -645,7 +688,7 @@ Signing is only possible with addresses of the type 'legacy'. Amount: - राशि : + Amount: Fee: @@ -677,7 +720,7 @@ Signing is only possible with addresses of the type 'legacy'. Amount - राशि + Amount Received with label @@ -689,7 +732,7 @@ Signing is only possible with addresses of the type 'legacy'. Date - taareek + Date Confirmations @@ -697,7 +740,7 @@ Signing is only possible with addresses of the type 'legacy'. Confirmed - पक्का + Confirmed Copy address @@ -753,11 +796,11 @@ Signing is only possible with addresses of the type 'legacy'. yes - हाँ + yes no - नहीं + no This label turns red if any recipient receives an amount smaller than the current dust threshold. @@ -769,7 +812,7 @@ Signing is only possible with addresses of the type 'legacy'. (no label) - (कोई परचा नहीं ) + (no label) change from %1 (%2) @@ -801,6 +844,10 @@ Signing is only possible with addresses of the type 'legacy'. Create Wallet Create Wallet + + Wallet + Wallet + Wallet Name Wallet Name @@ -813,6 +860,10 @@ Signing is only possible with addresses of the type 'legacy'. Encrypt Wallet Encrypt Wallet + + Advanced Options + Advanced Options + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. @@ -829,20 +880,32 @@ Signing is only possible with addresses of the type 'legacy'. Make Blank Wallet Make Blank Wallet + + Use descriptors for scriptPubKey management + Use descriptors for scriptPubKey management + + + Descriptor Wallet + Descriptor Wallet + Create Create - + + Compiled without sqlite support (required for descriptor wallets) + Compiled without sqlite support (required for descriptor wallets) + + EditAddressDialog Edit Address - पता एडिट करना + Edit Address &Label - &लेबल + &Label The label associated with this address list entry @@ -854,7 +917,7 @@ Signing is only possible with addresses of the type 'legacy'. &Address - &पता + &Address New sending address @@ -916,7 +979,7 @@ Signing is only possible with addresses of the type 'legacy'. HelpMessageDialog version - संस्करण + version About %1 @@ -967,7 +1030,7 @@ Signing is only possible with addresses of the type 'legacy'. Bitcoin - बीटकोइन + Bitcoin Discard blocks after verification, except most recent %1 GB (prune) @@ -995,14 +1058,26 @@ Signing is only possible with addresses of the type 'legacy'. Error - भूल + Error - + + %n GB of free space available + %n GB of free space available%n GB of free space available + + + (of %n GB needed) + (of %n GB needed)(of %n GB needed) + + + (%n GB needed for full chain) + (%n GB needed for full chain)(%n GB needed for full chain) + + ModalOverlay Form - फार्म + Form Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. @@ -1091,7 +1166,7 @@ Signing is only possible with addresses of the type 'legacy'. OptionsDialog Options - विकल्प + Options &Main @@ -1183,7 +1258,7 @@ Signing is only possible with addresses of the type 'legacy'. W&allet - वॉलेट + W&allet Expert @@ -1293,6 +1368,14 @@ Signing is only possible with addresses of the type 'legacy'. Whether to show coin control features or not. Whether to show coin control features or not. + + Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. + Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. + + + Use separate SOCKS&5 proxy to reach peers via Tor onion services: + Use separate SOCKS&5 proxy to reach peers via Tor onion services: + &Third party transaction URLs &Third party transaction URLs @@ -1303,11 +1386,11 @@ Signing is only possible with addresses of the type 'legacy'. &OK - &ओके + &OK &Cancel - &कैन्सल + &Cancel default @@ -1339,7 +1422,7 @@ Signing is only possible with addresses of the type 'legacy'. Error - भूल + Error The configuration file could not be opened. @@ -1358,7 +1441,7 @@ Signing is only possible with addresses of the type 'legacy'. OverviewPage Form - फार्म + Form The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. @@ -1428,9 +1511,97 @@ Signing is only possible with addresses of the type 'legacy'. Current total balance in watch-only addresses Current total balance in watch-only addresses - + + Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. + Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. + + PSBTOperationsDialog + + Dialog + Dialog + + + Sign Tx + Sign Tx + + + Broadcast Tx + Broadcast Tx + + + Copy to Clipboard + Copy to Clipboard + + + Save... + Save... + + + Close + Close + + + Failed to load transaction: %1 + Failed to load transaction: %1 + + + Failed to sign transaction: %1 + Failed to sign transaction: %1 + + + Could not sign any more inputs. + Could not sign any more inputs. + + + Signed %1 inputs, but more signatures are still required. + Signed %1 inputs, but more signatures are still required. + + + Signed transaction successfully. Transaction is ready to broadcast. + Signed transaction successfully. Transaction is ready to broadcast. + + + Unknown error processing transaction. + Unknown error processing transaction. + + + Transaction broadcast successfully! Transaction ID: %1 + Transaction broadcast successfully! Transaction ID: %1 + + + Transaction broadcast failed: %1 + Transaction broadcast failed: %1 + + + PSBT copied to clipboard. + PSBT copied to clipboard. + + + Save Transaction Data + Save Transaction Data + + + Partially Signed Transaction (Binary) (*.psbt) + Partially Signed Transaction (Binary) (*.psbt) + + + PSBT saved to disk. + PSBT saved to disk. + + + * Sends %1 to %2 + * Sends %1 to %2 + + + Unable to calculate transaction fee or total transaction amount. + Unable to calculate transaction fee or total transaction amount. + + + Pays transaction fee: + Pays transaction fee: + Total Amount Total Amount @@ -1439,7 +1610,35 @@ Signing is only possible with addresses of the type 'legacy'. or or - + + Transaction has %1 unsigned inputs. + Transaction has %1 unsigned inputs. + + + Transaction is missing some information about inputs. + Transaction is missing some information about inputs. + + + Transaction still needs signature(s). + Transaction still needs signature(s). + + + (But this wallet cannot sign transactions.) + (But this wallet cannot sign transactions.) + + + (But this wallet does not have the right keys.) + (But this wallet does not have the right keys.) + + + Transaction is fully signed and ready for broadcast. + Transaction is fully signed and ready for broadcast. + + + Transaction status is unknown. + Transaction status is unknown. + + PaymentServer @@ -1514,7 +1713,7 @@ Signing is only possible with addresses of the type 'legacy'. QObject Amount - राशि + Amount Enter a Bitcoin address (e.g. %1) @@ -1542,17 +1741,40 @@ Signing is only possible with addresses of the type 'legacy'. N/A - लागू नही - + N/A %1 ms %1 ms + + %n second(s) + %n second%n seconds + + + %n minute(s) + %n minute%n minutes + + + %n hour(s) + %n hour%n hours + + + %n day(s) + %n day%n days + + + %n week(s) + %n week%n weeks + %1 and %2 %1 and %2 + + %n year(s) + %n year%n years + %1 B %1 B @@ -1581,13 +1803,17 @@ Signing is only possible with addresses of the type 'legacy'. Error: %1 Error: %1 + + Error initializing settings: %1 + Error initializing settings: %1 + %1 didn't yet exit safely... %1 didn't yet exit safely... unknown - अज्ञात + unknown @@ -1625,8 +1851,7 @@ Signing is only possible with addresses of the type 'legacy'. RPCConsole N/A - लागू नही - + N/A Client version @@ -1634,7 +1859,7 @@ Signing is only possible with addresses of the type 'legacy'. &Information - जानकारी + &Information General @@ -1760,6 +1985,10 @@ Signing is only possible with addresses of the type 'legacy'. Node window Node window + + Current block height + Current block height + Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. @@ -1772,6 +2001,10 @@ Signing is only possible with addresses of the type 'legacy'. Increase font size Increase font size + + Permissions + Permissions + Services Services @@ -1933,11 +2166,11 @@ Signing is only possible with addresses of the type 'legacy'. ReceiveCoinsDialog &Amount: - राशि : + &Amount: &Label: - लेबल: + &Label: &Message: @@ -2027,12 +2260,28 @@ Signing is only possible with addresses of the type 'legacy'. Could not unlock wallet. Could not unlock wallet. - + + Could not generate new %1 address + Could not generate new %1 address + + ReceiveRequestDialog + + Request payment to ... + Request payment to ... + + + Address: + Address: + Amount: - राशि : + Amount: + + + Label: + Label: Message: @@ -2040,7 +2289,7 @@ Signing is only possible with addresses of the type 'legacy'. Wallet: - तिजोरी + Wallet: Copy &URI @@ -2048,7 +2297,7 @@ Signing is only possible with addresses of the type 'legacy'. Copy &Address - &पता कॉपी करे + Copy &Address &Save Image... @@ -2067,11 +2316,11 @@ Signing is only possible with addresses of the type 'legacy'. RecentRequestsTableModel Date - taareek + Date Label - परचा + Label Message @@ -2079,7 +2328,7 @@ Signing is only possible with addresses of the type 'legacy'. (no label) - (कोई परचा नहीं ) + (no label) (no message) @@ -2098,7 +2347,7 @@ Signing is only possible with addresses of the type 'legacy'. SendCoinsDialog Send Coins - सिक्के भेजें| + Send Coins Coin Control Features @@ -2118,7 +2367,7 @@ Signing is only possible with addresses of the type 'legacy'. Quantity: - मात्रा : + Quantity: Bytes: @@ -2126,7 +2375,7 @@ Signing is only possible with addresses of the type 'legacy'. Amount: - राशि : + Amount: Fee: @@ -2194,7 +2443,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Send to multiple recipients at once - एक साथ कई प्राप्तकर्ताओं को भेजें + Send to multiple recipients at once Add &Recipient @@ -2238,11 +2487,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Balance: - बाकी रकम : + Balance: Confirm the send action - भेजने की पुष्टि करें + Confirm the send action S&end @@ -2308,6 +2557,22 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Are you sure you want to send? Are you sure you want to send? + + Create Unsigned + Create Unsigned + + + Save Transaction Data + Save Transaction Data + + + Partially Signed Transaction (Binary) (*.psbt) + Partially Signed Transaction (Binary) (*.psbt) + + + PSBT saved + PSBT saved + or or @@ -2316,6 +2581,10 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p You can increase the fee later (signals Replace-By-Fee, BIP-125). You can increase the fee later (signals Replace-By-Fee, BIP-125). + + Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + Please, review your transaction. Please, review your transaction. @@ -2384,6 +2653,10 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Payment request expired. Payment request expired. + + Estimated to begin confirmation within %n block(s). + Estimated to begin confirmation within %n block.Estimated to begin confirmation within %n blocks. + Warning: Invalid Bitcoin address Warning: Invalid Bitcoin address @@ -2402,22 +2675,22 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p (no label) - (कोई परचा नहीं ) + (no label) SendCoinsEntry A&mount: - अमाउंट: + A&mount: Pay &To: - प्राप्तकर्ता: + Pay &To: &Label: - लेबल: + &Label: Choose previously used address @@ -2429,15 +2702,15 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Alt+A - Alt-A + Alt+A Paste address from clipboard - Clipboard से एड्रेस paste करें + Paste address from clipboard Alt+P - Alt-P + Alt+P Remove this entry @@ -2481,7 +2754,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Pay To: - प्राप्तकर्ता: + Pay To: Memo: @@ -2523,15 +2796,15 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Alt+A - Alt-A + Alt+A Paste address from clipboard - Clipboard से एड्रेस paste करें + Paste address from clipboard Alt+P - Alt-P + Alt+P Enter the message you want to sign here @@ -2539,7 +2812,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Signature - हस्ताक्षर + Signature Copy the current signature to the system clipboard @@ -2659,6 +2932,10 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p TransactionDesc + + Open for %n more block(s) + Open for %n more blockOpen for %n more blocks + Open until %1 Open until %1 @@ -2697,15 +2974,15 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Date - दिनांक + Date Source - स्रोत + Source Generated - उत्पन्न + Generated From @@ -2713,7 +2990,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p unknown - अज्ञात + unknown To @@ -2735,6 +3012,10 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Credit Credit + + matures in %n more block(s) + matures in %n more blockmatures in %n more blocks + not accepted not accepted @@ -2809,7 +3090,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Amount - राशि + Amount true @@ -2824,7 +3105,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p TransactionDescDialog This pane shows a detailed description of the transaction - ये खिड़की आपको लेन-देन का विस्तृत विवरण देगी ! + This pane shows a detailed description of the transaction Details for %1 @@ -2835,7 +3116,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p TransactionTableModel Date - taareek + Date Type @@ -2843,7 +3124,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Label - परचा + Label + + + Open for %n more block(s) + Open for %n more blockOpen for %n more blocks Open until %1 @@ -2907,7 +3192,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p (no label) - (कोई परचा नहीं ) + (no label) Transaction status. Hover over this field to show number of confirmations. @@ -3038,11 +3323,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Comma separated file (*.csv) - कोमा द्वारा अलग की गई फ़ाइल (* .csv) + Comma separated file (*.csv) Confirmed - पक्का + Confirmed Watch-only @@ -3050,7 +3335,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Date - taareek + Date Type @@ -3058,11 +3343,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Label - परचा + Label Address - पता + Address ID @@ -3070,7 +3355,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Exporting Failed - निर्यात विफल रहा + Exporting Failed There was an error trying to save the transaction history to %1. @@ -3104,7 +3389,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p WalletController Close wallet - बटुआ बंद करें + Close wallet Are you sure you wish to close the wallet <i>%1</i>? @@ -3116,21 +3401,33 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Close all wallets - सारे बटुएँ बंद करें + Close all wallets - + + Are you sure you wish to close all wallets? + Are you sure you wish to close all wallets? + + WalletFrame + + No wallet has been loaded. +Go to File > Open Wallet to load a wallet. +- OR - + No wallet has been loaded. +Go to File > Open Wallet to load a wallet. +- OR - + Create a new wallet - नया वॉलेट बनाएं + Create a new wallet WalletModel Send Coins - सिक्के भेजें| + Send Coins Fee bump error @@ -3189,15 +3486,35 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p WalletView &Export - &निर्यात + &Export Export the data in the current tab to a file - डेटा को मौजूदा टैब से एक फ़ाइल में निर्यात करें + Export the data in the current tab to a file Error - भूल + Error + + + Unable to decode PSBT from clipboard (invalid base64) + Unable to decode PSBT from clipboard (invalid base64) + + + Load Transaction Data + Load Transaction Data + + + Partially Signed Transaction (*.psbt) + Partially Signed Transaction (*.psbt) + + + PSBT file must be smaller than 100 MiB + PSBT file must be smaller than 100 MiB + + + Unable to decode PSBT + Unable to decode PSBT Backup Wallet @@ -3266,6 +3583,10 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. + + More than one onion bind address is provided. Using %s for the automatically created Tor onion service. + More than one onion bind address is provided. Using %s for the automatically created Tor onion service. + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. @@ -3274,13 +3595,25 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Please contribute if you find %s useful. Visit %s for further information about the software. Please contribute if you find %s useful. Visit %s for further information about the software. + + SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s + SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s + + + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + + + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct This is a pre-release test build - use at your own risk - do not use for mining or merchant applications - यह एक पूर्व-रिलीज़ परीक्षण बिल्ड है - अपने जोखिम पर उपयोग करें - खनन या व्यापारी अनुप्रयोगों के लिए उपयोग न करें + This is a pre-release test build - use at your own risk - do not use for mining or merchant applications This is the transaction fee you may discard if change is smaller than dust at this level @@ -3378,6 +3711,14 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Failed to rescan the wallet during initialization Failed to rescan the wallet during initialization + + Failed to verify database + Failed to verify database + + + Ignoring duplicate -wallet %s. + Ignoring duplicate -wallet %s. + Importing... Importing... @@ -3406,6 +3747,30 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Invalid amount for -fallbackfee=<amount>: '%s' Invalid amount for -fallbackfee=<amount>: '%s' + + SQLiteDatabase: Failed to execute statement to verify database: %s + SQLiteDatabase: Failed to execute statement to verify database: %s + + + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s + + + SQLiteDatabase: Failed to fetch the application id: %s + SQLiteDatabase: Failed to fetch the application id: %s + + + SQLiteDatabase: Failed to prepare statement to verify database: %s + SQLiteDatabase: Failed to prepare statement to verify database: %s + + + SQLiteDatabase: Failed to read database verification error: %s + SQLiteDatabase: Failed to read database verification error: %s + + + SQLiteDatabase: Unexpected application id. Expected %u, got %u + SQLiteDatabase: Unexpected application id. Expected %u, got %u + Specified blocks directory "%s" does not exist. Specified blocks directory "%s" does not exist. @@ -3480,7 +3845,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Verifying blocks... - ब्लॉक्स जाँचे जा रहा है... + Verifying blocks... Wallet needed to be rewritten: restart %s to complete @@ -3490,6 +3855,14 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Error: Listening for incoming connections failed (listen returned error %s) Error: Listening for incoming connections failed (listen returned error %s) + + %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. + %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. + + + Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. + Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. + Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) @@ -3498,10 +3871,34 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p The transaction amount is too small to send after the fee has been deducted The transaction amount is too small to send after the fee has been deducted + + This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet + This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet + + + This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. + This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. + + + Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. + Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain + + A fatal internal error occurred, see debug.log for details + A fatal internal error occurred, see debug.log for details + + + Cannot set -peerblockfilters without -blockfilterindex. + Cannot set -peerblockfilters without -blockfilterindex. + + + Disk space is too low! + Disk space is too low! + Error reading from database, shutting down. Error reading from database, shutting down. @@ -3514,6 +3911,14 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Error: Disk space is low for %s Error: Disk space is low for %s + + Error: Keypool ran out, please call keypoolrefill first + Error: Keypool ran out, please call keypoolrefill first + + + Fee rate (%s) is lower than the minimum fee rate setting (%s) + Fee rate (%s) is lower than the minimum fee rate setting (%s) + Invalid -onion address or hostname: '%s' Invalid -onion address or hostname: '%s' @@ -3534,6 +3939,10 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Need to specify a port with -whitebind: '%s' Need to specify a port with -whitebind: '%s' + + No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. + No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. + Prune mode is incompatible with -blockfilterindex. Prune mode is incompatible with -blockfilterindex. @@ -3674,23 +4083,23 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Loading block index... - ब्लॉक इंडेक्स आ रहा है... + Loading block index... Loading wallet... - वॉलेट आ रहा है... + Loading wallet... Cannot downgrade wallet - वॉलेट को डाउनग्रेड नहीं कर सकते + Cannot downgrade wallet Rescanning... - रि-स्केनी-इंग... + Rescanning... Done loading - लोड हो गया| + Done loading \ No newline at end of file diff --git a/src/qt/locale/bitcoin_hr.ts b/src/qt/locale/bitcoin_hr.ts index 0e7c11a5c..c085da8dc 100644 --- a/src/qt/locale/bitcoin_hr.ts +++ b/src/qt/locale/bitcoin_hr.ts @@ -821,6 +821,10 @@ Create Wallet Stvorite novčanik + + Wallet + Novčanik + Wallet Name Ime novčanika diff --git a/src/qt/locale/bitcoin_hu.ts b/src/qt/locale/bitcoin_hu.ts index 24cd3a7d8..7462bb90e 100644 --- a/src/qt/locale/bitcoin_hu.ts +++ b/src/qt/locale/bitcoin_hu.ts @@ -584,7 +584,7 @@ Signing is only possible with addresses of the type 'legacy'. Connecting to peers... - Csatlakozás párokhoz... + Csatlakozás az ügyfelekhez… Catching up... @@ -842,6 +842,10 @@ Signing is only possible with addresses of the type 'legacy'. Create Wallet Tárca készítése + + Wallet + Tárca + Wallet Name Tárca neve @@ -854,6 +858,10 @@ Signing is only possible with addresses of the type 'legacy'. Encrypt Wallet Tárca titkosítása + + Advanced Options + Haladó beállítások + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. A tárcához tartozó privát kulcsok letiltása. Azok a tárcák, melyeknél a privát kulcsok le vannak tiltva, nem tartalmaznak privát kulcsokat és nem tartalmazhatnak HD magot vagy importált privát kulcsokat. Ez azoknál a tárcáknál ideális, melyeket csak megfigyelésre használnak. @@ -882,7 +890,11 @@ Signing is only possible with addresses of the type 'legacy'. Create Létrehozás - + + Compiled without sqlite support (required for descriptor wallets) + SQLLite támogatás nélkül fordítva (követelmény a descriptor wallet használatához) + + EditAddressDialog @@ -1111,7 +1123,7 @@ Signing is only possible with addresses of the type 'legacy'. %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. - %1 szinkronizálás alatt. Fejléceket és blokkokat tölt le a felektől, majd érvényesíti, amíg el nem éri a blokklánc tetejét. + %1 szinkronizálás alatt. Fejléceket és blokkokat tölt le az ügyfelektől, majd érvényesíti, amíg el nem éri a blokklánc tetejét. Unknown. Syncing Headers (%1, %2%)... @@ -1180,7 +1192,7 @@ Signing is only possible with addresses of the type 'legacy'. Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type. - Megmutatja, hogy az alapértelmezett SOCKS5 proxy van-e használatban, hogy elérje a párokat ennél a hálózati típusnál. + Megmutatja, hogy az alapértelmezett SOCKS5 proxy van-e használatban, hogy elérje az ügyfeleket ennél a hálózati típusnál. Hide the icon from the system tray. @@ -1300,7 +1312,7 @@ Signing is only possible with addresses of the type 'legacy'. Used for reaching peers via: - Párok elérésére használjuk ezen keresztül: + Ügyfelek elérésére használjuk ezen keresztül: IPv4 @@ -1358,6 +1370,10 @@ Signing is only possible with addresses of the type 'legacy'. Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. Csatlakozás a Bitcoin hálózathoz külön SOCKS5 proxy használatával a Tor rejtett szolgáltatásainak eléréséhez. + + Use separate SOCKS&5 proxy to reach peers via Tor onion services: + Külön SOCKS&5 proxy használata az ügyfelek Tor onion-on keresztüli eléréséhez: + &Third party transaction URLs &Harmadik féltől származó tranzakció URL-ek @@ -1372,7 +1388,7 @@ Signing is only possible with addresses of the type 'legacy'. &Cancel - Megszakítás + &Mégse default @@ -1668,7 +1684,7 @@ Signing is only possible with addresses of the type 'legacy'. PeerTableModel User Agent - User Agent + Felhasználói ügynök Node/Service @@ -1699,7 +1715,7 @@ Signing is only possible with addresses of the type 'legacy'. Enter a Bitcoin address (e.g. %1) - Ad meg egy Bitcoin címet (pl: %1) + Adjon meg egy Bitcoin-címet (pl.: %1) %1 d @@ -1779,7 +1795,7 @@ Signing is only possible with addresses of the type 'legacy'. Error: Cannot parse configuration file: %1. - Napaka: Ne morem razčleniti konfiguracijske datoteke: %1. + Hiba: A konfigurációs fájl nem értelmezhető: %1. Error: %1 @@ -1865,7 +1881,7 @@ Signing is only possible with addresses of the type 'legacy'. To specify a non-default location of the blocks directory use the '%1' option. - Az blokkk könyvárhoz kívánt nem alapértelmezett elérési úthoz használd a '%1' opciót + Az blokk könyvárhoz kívánt nem alapértelmezett elérési úthoz használd a '%1' opciót Startup time @@ -1921,15 +1937,15 @@ Signing is only possible with addresses of the type 'legacy'. &Peers - &Peerek + &Ügyfelek Banned peers - Kitiltott felek + Kitiltott ügyfelek Select a peer to view detailed information. - Peer kijelölése a részletes információkért + Válasszon ki egy ügyfelet a részletes információkért megtekintéséhez. Direction @@ -1953,15 +1969,15 @@ Signing is only possible with addresses of the type 'legacy'. The mapped Autonomous System used for diversifying peer selection. - A megadott "Önálló rendszer" használom a peer választás diverzifikálásához. + A leképezett Autonóm Rendszer az ügyfélválasztás változatossá tételéhez van felhasználva. Mapped AS - Felvett AS (önálló rendszer) + Leképezett AS User Agent - User Agent + Felhasználói ügynök Node window @@ -1973,7 +1989,7 @@ Signing is only possible with addresses of the type 'legacy'. Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. - A %1 debug log fájl megnyitása a jelenlegi könyvtárból. Ez néhány másodpercig eltarthat nagyobb log fájlok esetén. + A %1 hibakeresési naplófájl megnyitása a jelenlegi adatkönyvtárból. Ez néhány másodpercig eltarthat nagyobb naplófájlok esetén. Decrease font size @@ -2053,7 +2069,7 @@ Signing is only possible with addresses of the type 'legacy'. Debug log file - Debug naplófájl + Hibakeresési naplófájl Clear console @@ -2318,7 +2334,7 @@ Signing is only possible with addresses of the type 'legacy'. (no amount requested) - (nem kért összeget) + (nincs kért összeg) Requested @@ -2381,7 +2397,7 @@ Signing is only possible with addresses of the type 'legacy'. Transaction Fee: - Tranzakciós díj + Tranzakciós díj: Choose... @@ -2399,9 +2415,9 @@ Signing is only possible with addresses of the type 'legacy'. Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size. Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis per kB" for a transaction size of 500 bytes (half of 1 kB) would ultimately yield a fee of only 50 satoshis. - Add meg a választott tranzakciós díjat kB (1000 bájt) -onként a tranzakció virtuális méretére számolva. + Add meg a választott tranzakciós díjat kilobájtonként (1kB = 1000 bájt) a tranzakció virtuális méretére számolva. -Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" egy 500 bájtos (fél kB) tranzakciónál ténylegesen 50 satoshi lesz. +Megjegyzés: Mivel bájtonként lesz a díj kiszámolva ezért a "100 satoshi kB-onként" egy 500 bájtos (fél kB) tranzakciónál ténylegesen 50 satoshi lesz. per kilobyte @@ -2421,7 +2437,7 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" (Smart fee not initialized yet. This usually takes a few blocks...) - (Samodejni obračun provizije še ni pripravljen. Po navadi izračun traja nekaj blokov ...) + (Az intelligens díj még nem lett előkészítve. Ez általában eltart néhány blokkig…) Send to multiple recipients at once @@ -2461,7 +2477,7 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk. - A With Replace-By-Fee (BIP-125) funkciót használva küldés után is megemelheted a tranzakciós díjat. Ha ezt nem használod akkor magasabb díjat érdemes használni, hogy kisebb legyen a késedelem. + A Replace-By-Fee (BIP-125) funkciót használva küldés után is megemelheted a tranzakciós díjat. Ha ezt nem használod akkor magasabb díjat érdemes használni, hogy kisebb legyen a késedelem. Clear &All @@ -2513,7 +2529,7 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" Cr&eate Unsigned - &Aláírás nélkül létrehozása Unsigned + &Aláíratlan létrehozása Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. @@ -2529,7 +2545,7 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" %1 to %2 - %1 do %2 + %1-től %2-ig Do you want to draft this transaction? @@ -2561,7 +2577,7 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" You can increase the fee later (signals Replace-By-Fee, BIP-125). - Később növelheti a tranzakció díját (lásd Replace-By-Fee, BIP-125). + Később növelheti a tranzakció díját (Replace-By-Fee-t jelez, BIP-125). Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. @@ -2704,7 +2720,7 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. - Znesek plačila bo zmanjšan za znesek provizije. Prejemnik bo prejel manjše število kovancev, kot je bil vnešeni znesek. Če je prejemnikov več, bo provizija med njih enakomerno porazdeljena. + Az illeték le lesz vonva a küldött teljes összegből. A címzett kevesebb bitcoint fog megkapni, mint amennyit az összeg mezőben megadott. Amennyiben több címzett van kiválasztva, az illeték egyenlő mértékben lesz elosztva. S&ubtract fee from amount @@ -2732,7 +2748,7 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. - Sporočilo, ki ste ga pripeli na URI tipa bitcoin:. Shranjeno bo skupaj s podatki o transakciji. Opomba: Sporočilo ne bo poslano preko omrežja Bitcoin. + Egy üzenet a bitcoin: URI-hoz csatolva, amely a tranzakciócal együtt lesz eltárolva az Ön számára. Megjegyzés: Ez az üzenet nem kerül elküldésre a Bitcoin hálózaton keresztül. Pay To: @@ -2766,7 +2782,7 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. - S svojimi naslovi lahko podpisujete sporočila ali pogodbe in s tem dokazujete, da na teh naslovih lahko prejemate kovance. Bodite previdni in ne podpisujte ničesar nejasnega ali naključnega, ker vas zlikovci preko ribarjenja (phishing) lahko prelisičijo, da na njih prepišete svojo identiteto. Podpisujte samo podrobno opisane izjave, s katerimi se strinjate. + Címeivel aláírhatja az üzeneteket/egyezményeket, amivel bizonyíthatja, hogy át tudja venni az ezekre a címekre küldött bitcoin-t. Vigyázzon, hogy ne írjon alá semmi félreérthetőt, mivel a phising támadásokkal megpróbálhatják becsapni, hogy az azonosságát átírja másokra. Csak olyan részletes állításokat írjon alá, amivel egyetért. The Bitcoin address to sign the message with @@ -2810,7 +2826,7 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" Reset all sign message fields - Počisti vsa polja za vnos v oknu za podpisovanje + Az összes aláírási üzenetmező törlése Clear &All @@ -2822,7 +2838,7 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! - Da preverite verodostojnost sporočila, spodaj vnesite: prejemnikov naslov, prejeto sporočilo (pazljivo skopirajte vse prelome vrstic, presledke, tabulatorje ipd.,) in prejeti podpis. Da se izognete napadom tipa man-in-the-middle, vedite, da iz veljavnega podpisa ne sledi nič drugega, kot tisto, kar je navedeno v sporočilu. Podpis samo potrjuje dejstvo, da ima podpisnik v lasti prejemni naslov, ne more pa dokazati vira nobene transakcije! + Adja meg a fogadó címét, az üzenetet (megbizonyosodva arról, hogy az új-sor, szóköz, tab, stb. karaktereket is pontosan adta meg) és az aláírást az üzenet ellenőrzéséhez. Ügyeljen arra, ne gondoljon bele többet az aláírásba, mint amennyi az aláírt szövegben ténylegesen áll, hogy elkerülje a köztes-ember (man-in-the-middle) támadást. Megjegyzendő, hogy ez csak azt bizonyítja hogy az aláíró fél az adott címen tud fogadni, de azt nem tudja igazolni hogy képes-e akár egyetlen tranzakció feladására is! The Bitcoin address the message was signed with @@ -2834,7 +2850,7 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" The signature given when the message was signed - A kapott aláírás amikor az üzenet alá lett írva. + A kapott aláírás amikor az üzenet alá lett írva. Verify the message to ensure it was signed with the specified Bitcoin address @@ -2846,11 +2862,11 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" Reset all verify message fields - Počisti vsa polja za vnos v oknu za preverjanje + Az összes ellenőrzési üzenetmező törlése Click "Sign Message" to generate signature - Klikkeljen az "Üzenet Aláírása" -ra, hogy aláírást generáljon + Kattintson az "Üzenet aláírása" gombra, hogy aláírást generáljon The entered address is invalid. @@ -2862,7 +2878,7 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" The entered address does not refer to a key. - Vnešeni naslov se ne nanaša na ključ. + A megadott cím nem hivatkozik egy kulcshoz sem. Wallet unlock was cancelled. @@ -2894,7 +2910,7 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" The signature did not match the message digest. - Podpis ne ustreza rezultatu (digest) preverjanja. + Az aláírás nem egyezett az üzenet kivonatával. Message verification failed. @@ -2924,7 +2940,7 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" conflicted with a transaction with %1 confirmations - v sporu s transakcijo z %1 potrditvami + ütközött egy %1 megerősítéssel rendelkező tranzakcióval 0/unconfirmed, %1 @@ -2968,7 +2984,7 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" From - Küldő: + Küldő unknown @@ -3012,7 +3028,7 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" Total credit - Skupni kredit + Teljes jóváírás Transaction fee @@ -3044,7 +3060,7 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" Output index - Indeks izhoda + Kimeneti index (Certificate was not verified) @@ -3056,11 +3072,11 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. - Ustvarjeni kovanci morajo zoreti %1 blokov, preden jih lahko porabite. Ko ste ta blok ustvarili, je bil posredovan v omrežje, da bo dodan v verigo blokov. Če se bloku ni uspelo uvrstiti v verigo, se bo njegovo stanje spremenilo v "ni bilo sprejeto" in kovancev ne bo mogoče porabiti. To se včasih zgodi, če kak drug rudar v roku nekaj sekund hkrati z vami odkrije drug blok. + A frissen generált érméket csak %1 blokkal később tudod elkölteni. Ez a blokk nyomban szétküldésre került a hálózatba, amint legeneráltad, hogy hozzáadhassák a blokklánchoz. Ha nem kerül be a láncba, úgy az állapota "elutasítva"-ra módosul, és nem költheted el az érméket. Ez akkor következhet be időnként, ha egy másik csomópont mindössze néhány másodperc különbséggel generált le egy blokkot a tiédhez képest. Debug information - Debug információ + Hibakeresési információk Transaction @@ -3087,7 +3103,7 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" TransactionDescDialog This pane shows a detailed description of the transaction - Ez a mező a tranzakció részleteit mutatja + Ez a panel a tranzakció részleteit mutatja Details for %1 @@ -3190,15 +3206,15 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" Whether or not a watch-only address is involved in this transaction. - Egy csak megfigyelt cím érintett vagy nem ebben a tranzakcióban. + Függetlenül attól, hogy egy megfigyelési cím is szerepel ebben a tranzakcióban. User-defined intent/purpose of the transaction. - Uporabniško določen namen transakcije. + A tranzakció felhasználó által meghatározott szándéka/célja. Amount removed from or added to balance. - Znesek spremembe stanja sredstev. + Az egyenleghez jóváírt vagy ráterhelt összeg. @@ -3229,7 +3245,7 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" Range... - Tartomány... + Tartomány… Received with @@ -3253,7 +3269,7 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" Enter address, transaction id, or label to search - Vnesi naslov, ID transakcije, ali oznako za iskanje + Írja be a keresendő címet, tranzakció azonosítót vagy címkét Min amount @@ -3305,7 +3321,7 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" Comma separated file (*.csv) - Vesszővel elválasztott adatokat tartalmazó fájl + Vesszővel elválasztott adatokat tartalmazó fájl (*.csv) Confirmed @@ -3345,11 +3361,11 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" Exporting Successful - Sikeres Exportálás + Sikeres exportálás The transaction history was successfully saved to %1. - Zgodovina poteklih transakcij je bila uspešno shranjena v datoteko %1. + A tranzakciós előzmények sikeresen el lettek mentve ide: %1. Range: @@ -3357,14 +3373,14 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" to - za + meddig UnitDisplayStatusBarControl Unit to show amounts in. Click to select another unit. - Merska enota za prikaz zneskov. Kliknite za izbiro druge enote. + Egység, amelyben az összegek meg lesznek jelenítve. Kattintson ide, ha másik egységet szeretne kiválasztani. @@ -3375,7 +3391,7 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" Are you sure you wish to close the wallet <i>%1</i>? - Biztos, hogy bezárja a "%1" tárcát? + Biztos, hogy bezárja ezt a tárcát: <i>%1</i>? Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. @@ -3396,8 +3412,8 @@ Figyelem: Mivel bájtonként lesz a dj kiszámolva ezért a "100 satoshi per kB" No wallet has been loaded. Go to File > Open Wallet to load a wallet. - OR - - Nincs tárca megnyitva. -A Fájl > Megnyitás menüben lehet megnyitni. + Nincs tárca betöltve. +A "Fájl > Tárca megnyitása" menüben tölthet be egyet. - VAGY - @@ -3441,11 +3457,11 @@ A Fájl > Megnyitás menüben lehet megnyitni. Confirm fee bump - Erősitsd meg a díj emelését + Erősítsd meg a díj emelését Can't draft transaction. - Sikertelen tranzakciós piszkozat + Tranzakciós piszkozat létrehozása sikertelen. PSBT copied @@ -3461,7 +3477,7 @@ A Fájl > Megnyitás menüben lehet megnyitni. default wallet - Alapértelmezett tárca + alapértelmezett tárca @@ -3488,7 +3504,7 @@ A Fájl > Megnyitás menüben lehet megnyitni. Partially Signed Transaction (*.psbt) - Részlegesen Aláírt Tranzakció (PSBT bináris) (*.psbt) + Részlegesen Aláírt Tranzakció (*.psbt) PSBT file must be smaller than 100 MiB @@ -3512,7 +3528,7 @@ A Fájl > Megnyitás menüben lehet megnyitni. There was an error trying to save the wallet data to %1. - Hiba történt a pénztárca adatainak %1 mentésekor. + Hiba történt a pénztárca adatainak mentésekor ide: %1. Backup Successful @@ -3520,7 +3536,7 @@ A Fájl > Megnyitás menüben lehet megnyitni. The wallet data was successfully saved to %1. - A tárca adatai sikeresen elmentve %1. + A tárca adatai sikeresen el lettek mentve ide: %1. Cancel @@ -3531,11 +3547,11 @@ A Fájl > Megnyitás menüben lehet megnyitni. bitcoin-core Distributed under the MIT software license, see the accompanying file %s or %s - MIT szoftver licenc alapján terjesztve, tekintse meg a hozzátartozó fájlt %s or %s + MIT szoftver licenc alapján terjesztve, tekintse meg a hozzátartozó fájlt: %s vagy %s Prune configured below the minimum of %d MiB. Please use a higher number. - Nyesés megkísérlése a minimális %d MiB alatt. Kérjük, használjon egy magasabb értéket. + Nyesés konfigurálásának megkísérlése a minimális %d MiB alá. Kérjük, használjon egy magasabb értéket. Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) @@ -3543,11 +3559,11 @@ A Fájl > Megnyitás menüben lehet megnyitni. Pruning blockstore... - Obrezujem ... + Blokktároló nyesése… Unable to start HTTP server. See debug log for details. - HTTP szerver indítása sikertelen. A részleteket lásd: debug log. + HTTP szerver indítása sikertelen. A részletekért tekintse meg a hibakeresési naplót. The %s developers @@ -3565,21 +3581,37 @@ A Fájl > Megnyitás menüben lehet megnyitni. Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. Hiba %s beolvasása közben. Az összes kulcs sikeresen beolvasva, de a tranzakciós adatok és a címtár rekordok hiányoznak vagy sérültek. + + More than one onion bind address is provided. Using %s for the automatically created Tor onion service. + Egynél több társított onion cím lett megadva. %s használata az automatikusan létrehozott Tor onion szolgáltatáshoz. + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. - Opozorilo: Preverite, če sta datum in ura na vašem računalniku točna! %s ne bo deloval pravilno, če je nastavljeni čas nepravilen. + Ellenőrizze, hogy helyesen van-e beállítva a gépén a dátum és az idő! A %s nem fog megfelelően működni, ha rosszul van beállítva az óra. Please contribute if you find %s useful. Visit %s for further information about the software. - Kérlek támogasd ha hasznásnak találtad a %s-t. Az alábbi linken találsz bővebb információt a szoftverről %s. + Kérjük támogasson ha hasznosnak találta a %s-t. Az alábbi linken további információt találhat a szoftverről: %s. + + + SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s + SQLiteDatabase: Nem sikerült elkészíteni a parancsot az sqlite pénztárca séma verziójának lekéréséhez: %s + + + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + SQLiteDatabase: Nem sikerült elkészíteni az utasítást a következő alkalmazásazonosító lekérésére: %s + + + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported + SQLiteDatabase: Ismeretlen sqlite pénztárca séma verzió: %d. Csak az alábbi verzió támogatott: %d The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct - A blokk adatbázis tartalmaz egy blokkot ami a jövőből érkezettnek látszik. Ennek oka lehet, hogy a számítógéped dátum és idő beállítása helytelen. Csak akkor építsd újra a block adatbázist ha biztos vagy benne, hogy az időbeállítás helyes. + A blokk adatbázis tartalmaz egy blokkot ami a jövőből érkezettnek látszik. Ennek oka lehet, hogy a számítógéped dátum és idő beállítása helytelen. Csak akkor építsd újra a blokk adatbázist ha biztos vagy benne, hogy az időbeállítás helyes. This is a pre-release test build - use at your own risk - do not use for mining or merchant applications - Ez egy kiadás előtt álló, teszt verzió - csak saját felelősségre - ne használja bányászatra vagy kereskedéshez. + Ez egy kiadás előtt álló, teszt verzió - csak saját felelősségre használja - ne használja bányászatra vagy kereskedéshez. This is the transaction fee you may discard if change is smaller than dust at this level @@ -3587,7 +3619,7 @@ A Fájl > Megnyitás menüben lehet megnyitni. Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. - Ne morem ponoviti blokov. Podatkovno bazo bo potrebno ponovno zgraditi z uporabo ukaza -reindex-chainstate. + Blokkok visszajátszása nem lehetséges. Újra kell építenie az adatbázist a -reindex-chainstate opció használatával. Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain @@ -3599,7 +3631,7 @@ A Fájl > Megnyitás menüben lehet megnyitni. Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. - Opozorilo: Trenutno se s soležniki ne strinjamo v popolnosti! Mogoče bi morali vi ali drugi udeleženci posodobiti odjemalce. + Figyelem: Úgy tűnik, hogy nem értünk egyet teljesen az ügyfeleinkkel! Lehet, hogy frissítenie kell, vagy más csomópontoknak kell frissítenie. -maxmempool must be at least %d MB @@ -3607,11 +3639,11 @@ A Fájl > Megnyitás menüben lehet megnyitni. Cannot resolve -%s address: '%s' - Naslova -%s ni mogoče razrešiti: '%s' + -%s cím feloldása nem sikerült: '%s' Change index out of range - Indeks drobiža izven dovoljenega območja + Visszajáró index a tartományon kívül van Config setting for %s only applied on %s network when in [%s] section. @@ -3631,7 +3663,7 @@ A Fájl > Megnyitás menüben lehet megnyitni. Could not parse asmap file %s - %s beolvasása sikertelen + %s asmap fájl beolvasása sikertelen Do you want to rebuild the block database now? @@ -3681,17 +3713,21 @@ A Fájl > Megnyitás menüben lehet megnyitni. Failed to verify database Nem sikerült ellenőrizni az adatbázist + + Ignoring duplicate -wallet %s. + A duplikált -wallet %s figyelmen kívül hagyva. + Importing... Importálás Incorrect or no genesis block found. Wrong datadir for network? - Helytelen vagy nemlétező genézis blokk. Helytelen hálózati adatkönyvtár? + Helytelen vagy nemlétező ősblokk. Helytelen hálózati adatkönyvtár? Initialization sanity check failed. %s is shutting down. - %s bezárása folyamatban. A kezdeti hibátlansági teszt sikertelen. + Az indítási hitelességi teszt sikertelen. %s most leáll. Invalid P2P permission: '%s' @@ -3699,19 +3735,43 @@ A Fájl > Megnyitás menüben lehet megnyitni. Invalid amount for -%s=<amount>: '%s' - Neveljavna količina za -%s=<amount>: '%s' + Érvénytelen összeg, -%s=<amount>: '%s' Invalid amount for -discardfee=<amount>: '%s' - Neveljavna količina za -discardfee=<amount>: '%s' + Érvénytelen összeg, -discardfee=<amount>: '%s' Invalid amount for -fallbackfee=<amount>: '%s' - Neveljavna količina za -fallbackfee=<amount>: '%s' + Érvénytelen összeg, -fallbackfee=<amount>: '%s' + + + SQLiteDatabase: Failed to execute statement to verify database: %s + SQLiteDatabase: Nem sikerült végrehajtani az adatbázist ellenőrző utasítást: %s + + + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s + SQLiteDatabase: Nem sikerült lekérni az sqlite tárca séma verzióját: %s + + + SQLiteDatabase: Failed to fetch the application id: %s + SQLiteDatabase: Nem sikerült lekérni az alkalmazásazonosítót: %s + + + SQLiteDatabase: Failed to prepare statement to verify database: %s + SQLiteDatabase: Nem sikerült előkészíteni az adatbázist ellenőrző utasítást: %s + + + SQLiteDatabase: Failed to read database verification error: %s + SQLiteDatabase: Nem sikerült kiolvasni az adatbázis ellenőrzési hibát: %s + + + SQLiteDatabase: Unexpected application id. Expected %u, got %u + SQLiteDatabase: Váratlan alkalmazásazonosító. Várt: %u, helyette kapott: %u Specified blocks directory "%s" does not exist. - A megadott blokk "%s" nem létezik. + A megadott blokkönyvtár "%s" nem létezik. Unknown address type '%s' @@ -3739,7 +3799,7 @@ A Fájl > Megnyitás menüben lehet megnyitni. Prune cannot be configured with a negative value. - Nyesett üzemmódot nem lehet negatív értékkel kialakítani. + Nyesett üzemmódot nem lehet negatív értékkel konfigurálni. Prune mode is incompatible with -txindex. @@ -3747,7 +3807,7 @@ A Fájl > Megnyitás menüben lehet megnyitni. Replaying blocks... - Blokkok újrajátszása... + Blokkok visszajátszása… Rewinding blocks... @@ -3755,7 +3815,7 @@ A Fájl > Megnyitás menüben lehet megnyitni. The source code is available from %s. - A forráskód elérhető: %s. + A forráskód elérhető innen: %s. Transaction fee and change calculation failed @@ -3763,7 +3823,7 @@ A Fájl > Megnyitás menüben lehet megnyitni. Unable to bind to %s on this computer. %s is probably already running. - Na tem računalniku ni bilo mogoče vezati naslova %s. %s je verjetno že zagnan. + Ezen a gépen nem lehet ehhez társítani: %s. %s már valószínűleg fut. Unable to generate keys @@ -3771,15 +3831,15 @@ A Fájl > Megnyitás menüben lehet megnyitni. Unsupported logging category %s=%s. - Nem támogatott logolási kategória %s=%s + Nem támogatott naplózási kategória %s=%s Upgrading UTXO database - Blokk adatbázis frissítése + UTXO adatbázis frissítése User Agent comment (%s) contains unsafe characters. - Az ügyfélügynök megjegyzésben nem biztonságos karakter van: (%s)  + A felhasználói ügynök megjegyzés (%s) veszélyes karaktert tartalmaz. Verifying blocks... @@ -3791,11 +3851,11 @@ A Fájl > Megnyitás menüben lehet megnyitni. Error: Listening for incoming connections failed (listen returned error %s) - Napaka: Ni mogoče sprejemati dohodnih povezav (vrnjena napaka: %s) + Hiba: Figyelés a bejövő kapcsolatokra nem sikerült (a listen ezzel a hibával tért vissza: %s) %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. - %s sérült. Megpróbálhatod a bitcoint-wallet tárcaj mentő eszközt, vagy mentésből helyreállítani a tárcát. + %s sérült. Próbálja meg a bitcoint-wallet tárca mentő eszközt használni, vagy állítsa helyre egy biztonsági mentésből. Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. @@ -3831,7 +3891,7 @@ A Fájl > Megnyitás menüben lehet megnyitni. Cannot set -peerblockfilters without -blockfilterindex. - -peerblockfilters csak a -blockfilterindex -vel együtt állítható be. + A -peerblockfilters nem állítható be a -blockfilterindex opció nélkül. Disk space is too low! @@ -3859,11 +3919,11 @@ A Fájl > Megnyitás menüben lehet megnyitni. Invalid -onion address or hostname: '%s' - Érvénytelen -onion cím vagy hostname: '%s' + Érvénytelen -onion cím vagy hosztnév: '%s' Invalid -proxy address or hostname: '%s' - Érvénytelen -proxy cím vagy hostname: '%s' + Érvénytelen -proxy cím vagy hosztnév: '%s' Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) @@ -3875,7 +3935,7 @@ A Fájl > Megnyitás menüben lehet megnyitni. Need to specify a port with -whitebind: '%s' - Pri opciji -whitebind morate navesti vrata: %s + A -whitebind opcióhoz meg kell határoznia egy portot is: '%s' No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. @@ -3887,7 +3947,7 @@ A Fájl > Megnyitás menüben lehet megnyitni. Reducing -maxconnections from %d to %d, because of system limitations. - Zmanjšujem maksimalno število povezav (-maxconnections) iz %d na %d, zaradi sistemskih omejitev. + A -maxconnections csökkentése %d értékről %d értékre, a rendszer korlátai miatt. Section [%s] is not recognized. @@ -3899,20 +3959,20 @@ A Fájl > Megnyitás menüben lehet megnyitni. Specified -walletdir "%s" does not exist - A megadott "%s" -walletdir nem létezik + A megadott -walletdir "%s" nem létezik Specified -walletdir "%s" is a relative path - A megadott "%s" -walletdir relatív elérési út + A megadott -walletdir "%s" egy relatív elérési út Specified -walletdir "%s" is not a directory - A megadott "%s" -walletdir nem könyvtár + A megadott -walletdir "%s" nem könyvtár The specified config file %s does not exist - A megadott konfigurációs fájl %s nem található. + A megadott konfigurációs fájl %s nem található @@ -3933,7 +3993,7 @@ A Fájl > Megnyitás menüben lehet megnyitni. Unable to bind to %s on this computer (bind returned error %s) - Na tem računalniku ni bilo mogoče vezati naslova %s (vrnjena napaka: %s) + Ezen a számítógépen nem lehet ehhez társítani: %s (a bind ezzel a hibával tért vissza: %s) Unable to create the PID file '%s': %s @@ -3941,7 +4001,7 @@ A Fájl > Megnyitás menüben lehet megnyitni. Unable to generate initial keys - Ne zmorem ustvariti začetnih ključev + Kezdő kulcsok létrehozása sikertelen Unknown -blockfilterindex value %s. @@ -3953,7 +4013,7 @@ A Fájl > Megnyitás menüben lehet megnyitni. Warning: unknown new rules activated (versionbit %i) - Opozorilo: neznana nova pravila aktivirana (verzija %i) + Figyelem: ismeretlen új szabályok aktiválva (verzióbit %i) -maxtxfee is set very high! Fees this large could be paid on a single transaction. diff --git a/src/qt/locale/bitcoin_id.ts b/src/qt/locale/bitcoin_id.ts index 216a1ec96..e4ffeb2b8 100644 --- a/src/qt/locale/bitcoin_id.ts +++ b/src/qt/locale/bitcoin_id.ts @@ -843,6 +843,10 @@ Signing is only possible with addresses of the type 'legacy'. Create Wallet Bikin dompet + + Wallet + Dompet + Wallet Name Nama Dompet @@ -855,6 +859,10 @@ Signing is only possible with addresses of the type 'legacy'. Encrypt Wallet Enkripsi Dompet + + Advanced Options + Opsi Lanjutan + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. Nonaktifkan private keys dompet ini. Dompet dengan private keys nonaktif tidak akan memiliki private keys dan tidak dapat memiliki seed HD atau private keys impor. Ini sangat ideal untuk dompet watch-only. diff --git a/src/qt/locale/bitcoin_is.ts b/src/qt/locale/bitcoin_is.ts index 61e9078e1..f82b82184 100644 --- a/src/qt/locale/bitcoin_is.ts +++ b/src/qt/locale/bitcoin_is.ts @@ -576,6 +576,10 @@ CreateWalletDialog + + Wallet + Veski + EditAddressDialog diff --git a/src/qt/locale/bitcoin_it.ts b/src/qt/locale/bitcoin_it.ts index 2d94d3fc2..200d51985 100644 --- a/src/qt/locale/bitcoin_it.ts +++ b/src/qt/locale/bitcoin_it.ts @@ -3,7 +3,7 @@ AddressBookPage Right-click to edit address or label - Fai clic con il tasto destro del mouse per modificare l'indirizzo oppure l'etichetta + Clicca con il tasto destro del mouse per modificare l'indirizzo oppure l'etichetta Create a new address @@ -844,6 +844,10 @@ E' possibile firmare solo con indirizzi di tipo "legacy". Create Wallet Crea Portafoglio. + + Wallet + Portafoglio + Wallet Name Nome Portafoglio @@ -856,6 +860,10 @@ E' possibile firmare solo con indirizzi di tipo "legacy". Encrypt Wallet Cripta Portafoglio + + Advanced Options + Opzioni avanzate + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. Disabilita chiavi private per questo portafoglio. Un portafoglio con chiavi private disabilitate non può avere o importare chiavi private e non può avere un HD seed. Questo è ideale per portafogli watch-only. diff --git a/src/qt/locale/bitcoin_ja.ts b/src/qt/locale/bitcoin_ja.ts index 18b0507a4..b0eb87ce8 100644 --- a/src/qt/locale/bitcoin_ja.ts +++ b/src/qt/locale/bitcoin_ja.ts @@ -844,6 +844,10 @@ Signing is only possible with addresses of the type 'legacy'. Create Wallet ウォレットを作成する + + Wallet + ウォレット + Wallet Name ウォレット名 @@ -856,6 +860,10 @@ Signing is only possible with addresses of the type 'legacy'. Encrypt Wallet ウォレットを暗号化する + + Advanced Options + 高度なオプション + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. このウォレットの秘密鍵を無効にします。秘密鍵が無効になっているウォレットには秘密鍵はなく、HDシードまたはインポートされた秘密鍵を持つこともできません。これはウォッチ限定のウォレットに最適です。 @@ -2259,6 +2267,10 @@ Signing is only possible with addresses of the type 'legacy'. ReceiveRequestDialog + + Request payment to ... + 支払いをリクエスト... + Address: アドレス: @@ -2569,6 +2581,10 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p You can increase the fee later (signals Replace-By-Fee, BIP-125). 手数料は後から上乗せ可能です(Replace-By-Fee(手数料の上乗せ: BIP-125)機能が有効)。 + + Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + トランザクション提案を確認してください。これにより、部分的に署名されたビットコイン・トランザクション(PSBT)が作成されます。これを保存するかコピーして例えばオフラインの %1 ウォレットやPSBTを扱えるハードウェアウォレットで残りの署名が出来ます。 + Please, review your transaction. 取引内容の最終確認をしてください。 @@ -3567,6 +3583,10 @@ Go to File > Open Wallet to load a wallet. Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. %s の読み込み中にエラーが発生しました! 全ての鍵は正しく読み込めましたが、取引データやアドレス帳の項目が失われたか、正しくない可能性があります。 + + More than one onion bind address is provided. Using %s for the automatically created Tor onion service. + 2つ以上のonionアドレスが与えられました。%sを自動的に作成されたTorのonionサービスとして使用します。 + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. お使いのコンピューターの日付と時刻が正しいことを確認してください! PCの時計が正しくない場合 %s は正確に動作しません。 @@ -3575,6 +3595,14 @@ Go to File > Open Wallet to load a wallet. Please contribute if you find %s useful. Visit %s for further information about the software. %s が有用だと感じられた方はぜひプロジェクトへの貢献をお願いします。ソフトウェアのより詳細な情報については %s をご覧ください。 + + SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s + SQLiteDatabase: sqliteウォレットのスキーマバージョンを取得するプリペアドステートメントの作成に失敗しました: %s + + + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + SQLiteDatabase: アプリケーションIDを取得するプリペアドステートメントの作成に失敗しました: %s + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported SQLiteDatabase: 未知のsqliteウォレットスキーマバージョン %d 。バージョン %d のみがサポートされています。 @@ -3687,6 +3715,10 @@ Go to File > Open Wallet to load a wallet. Failed to verify database データベースの検証に失敗しました + + Ignoring duplicate -wallet %s. + 重複するウォレット%sを無視します。 + Importing... インポート中... @@ -3715,6 +3747,30 @@ Go to File > Open Wallet to load a wallet. Invalid amount for -fallbackfee=<amount>: '%s' -fallbackfee=<amount> オプションに対する不正な amount: '%s' + + SQLiteDatabase: Failed to execute statement to verify database: %s + SQLiteDatabase: データベースを検証するステートメントの実行に失敗しました: %s + + + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s + SQLiteDatabase: sqliteのウォレットスキーマバージョンの取得に失敗しました: %s + + + SQLiteDatabase: Failed to fetch the application id: %s + SQLiteDatabase: アプリケーションIDを取得できませんでした: %s + + + SQLiteDatabase: Failed to prepare statement to verify database: %s + SQLiteDatabase: データベースを検証するプリペアドステートメントの作成に失敗しました: %s + + + SQLiteDatabase: Failed to read database verification error: %s + SQLiteDatabase: データベース検証エラーの読み込みに失敗しました: %s + + + SQLiteDatabase: Unexpected application id. Expected %u, got %u + SQLiteDatabase: 予期しないアプリケーションIDです。期待したものは%uで、%uを受け取りました。 + Specified blocks directory "%s" does not exist. 指定されたブロックディレクトリ "%s" は存在しません。 @@ -3799,6 +3855,14 @@ Go to File > Open Wallet to load a wallet. Error: Listening for incoming connections failed (listen returned error %s) エラー: 内向きの接続をリッスンするのに失敗しました(%s エラーが返却されました) + + %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. + %sが破損しています。ウォレットのツールbitcoin-walletを使って復旧するか、バックアップから復元してみてください。 + + + Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. + 事前分割キープールをサポートするようにアップグレードしないと、非HD分割ウォレットをアップグレードすることはできません。バージョン169900 を使うか、バージョンを指定しないでください。 + Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) -maxtxfee=<amount> オプションに対する不正な amount: '%s'(トランザクション詰まり防止のため、最小中継手数料の %s より大きくする必要があります) @@ -3807,10 +3871,30 @@ Go to File > Open Wallet to load a wallet. The transaction amount is too small to send after the fee has been deducted 取引の手数料差引後金額が小さすぎるため、送金できません。 + + This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet + このエラーはこのウォレットが正常にシャットダウンされず、前回ウォレットが読み込まれたときに新しいバージョンのBerkeley DBを使ったソフトウェアを利用していた場合に起こる可能性があります。もしそうであれば、このウォレットを前回読み込んだソフトウェアを使ってください + + + This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. + これは、通常のコイン選択よりも部分支払いの回避を優先するコイン選択を行う際に(通常の手数料に加えて)支払う最大のトランザクション手数料です。 + + + Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. + トランザクションはお釣りアドレスが必要ですが、アドレスを生成することができません。まず最初にkeypoolrefillを実行してください。 + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain 非剪定モードに戻るためには -reindex オプションを指定してデータベースを再構築する必要があります。 ブロックチェーン全体の再ダウンロードが必要となります。 + + A fatal internal error occurred, see debug.log for details + 致命的な内部エラーが発生しました。詳細はデバッグ用のログファイル debug.log を参照してください + + + Cannot set -peerblockfilters without -blockfilterindex. + -blockfilterindex のオプション無しでは -peerblockfilters を設定できません。 + Disk space is too low! ディスク容量不足! @@ -3827,6 +3911,14 @@ Go to File > Open Wallet to load a wallet. Error: Disk space is low for %s エラー: %s 用のディスク容量が不足しています + + Error: Keypool ran out, please call keypoolrefill first + エラー: 鍵プールが枯渇しました。まずはじめに keypoolrefill を呼び出してください + + + Fee rate (%s) is lower than the minimum fee rate setting (%s) + 手数料率(%s)が最低手数料率の設定(%s)を下回っています + Invalid -onion address or hostname: '%s' -onion オプションに対する不正なアドレスまたはホスト名: '%s' diff --git a/src/qt/locale/bitcoin_ka.ts b/src/qt/locale/bitcoin_ka.ts index 6d925365d..bdf467807 100644 --- a/src/qt/locale/bitcoin_ka.ts +++ b/src/qt/locale/bitcoin_ka.ts @@ -497,10 +497,18 @@ default wallet ნაგულისხმევი საფულე + + No wallets available + არ არის ჩატვირთული საფულე. + &Window &ფანჯარა + + Main Window + ძირითადი ფანჯარა + %1 client %1 კლიენტი @@ -612,6 +620,10 @@ Amount თანხა + + Received with address + მიღებულია მისამართისამებრ + Date თარიღი @@ -698,6 +710,10 @@ CreateWalletDialog + + Wallet + საფულე + EditAddressDialog diff --git a/src/qt/locale/bitcoin_kk.ts b/src/qt/locale/bitcoin_kk.ts index 5b56827b9..956a805f7 100644 --- a/src/qt/locale/bitcoin_kk.ts +++ b/src/qt/locale/bitcoin_kk.ts @@ -146,6 +146,10 @@ CreateWalletDialog + + Wallet + Әмиян + EditAddressDialog diff --git a/src/qt/locale/bitcoin_km.ts b/src/qt/locale/bitcoin_km.ts index de7f02cbf..d1d19f476 100644 --- a/src/qt/locale/bitcoin_km.ts +++ b/src/qt/locale/bitcoin_km.ts @@ -3,7 +3,7 @@ AddressBookPage Right-click to edit address or label - ចុចម៉ៅស្តាំ ដើម្បីកែសម្រួលអាសយដ្ឋាន រឺស្លាកសញ្ញា + ចុចម៉ៅស្តាំ ដើម្បីកែសម្រួលអាសយដ្ឋាន រឺស្លាកសញ្ញា Create a new address @@ -15,7 +15,7 @@ Copy the currently selected address to the system clipboard - ចម្លងអាសយដ្ឋានបច្ចុប្បន្នដែលបានជ្រើសទៅក្ដារតម្រៀបរបស់ប្រព័ន្ធ + ចម្លងអាសយដ្ឋានបច្ចុប្បន្នដែលបានជ្រើសទៅក្ដារប្រព័ន្ធក្តារម្រៀប &Copy @@ -69,6 +69,12 @@ These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. ទាំងនេះ​គឺជាអាសយដ្ឋាន Bitcoin របស់អ្នកសម្រាប់ធ្វើការផ្ញើការបង់ប្រាក់។ តែងតែពិនិត្យមើលចំនួនប្រាក់ និងអាសយដ្ឋានដែលទទួល មុនពេលផ្ញើប្រាក់។ + + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + &Copy Address ចម្លងអាសយដ្ឋាន(&C) @@ -179,6 +185,10 @@ Enter the old passphrase and new passphrase for the wallet. វាយបញ្ចូលឃ្លាសម្ងាត់ចាស់ និងឃ្លាសសម្លាត់ថ្មី សម្រាប់កាបូបចល័តរបស់អ្នក។ + + Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. + Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. + Wallet to be encrypted កាបូបចល័ត ដែលត្រូវបានអ៊ិនគ្រីប @@ -191,6 +201,10 @@ Your wallet is now encrypted. កាបូបចល័តរបស់អ្នក ឥឡូវត្រូវបានអ៊ិនគ្រីប។ + + IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. + IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. + Wallet encryption failed កាបូបចល័ត បានអ៊ិនគ្រីបបរាជ័យ @@ -271,7 +285,7 @@ About &Qt - អំពី Qt + អំពី &Qt Show information about Qt @@ -351,19 +365,19 @@ &Verify message... - ផ្ទៀងផ្ទាត់សារ... + &ផ្ទៀងផ្ទាត់សារ... &Send - ផ្ងើ + &ផ្ងើរ &Receive - ទទួល + &ទទួល &Show / Hide - បង្ហាញ/លាក់បាំង + &បង្ហាញ/លាក់បាំង Show or hide the main Window @@ -391,7 +405,7 @@ &Help - ជំនួយ + &ជំនួយ Tabs toolbar @@ -413,6 +427,22 @@ &Command-line options ជំរើសខំមែនឡាញ(&C) + + %n active connection(s) to Bitcoin network + %n active connections to Bitcoin network + + + Indexing blocks on disk... + Indexing blocks on disk... + + + Processing blocks on disk... + ប្ល៊ុកកំពុងដំណើរការនៅលើថាសឌឺស... + + + Processed %n block(s) of transaction history. + បានដំណើរការ %n ប្លុ៊កនៃប្រវត្តិប្រត្តិបត្តិការ។ + Transactions after this will not yet be visible. ប្រត្តិបត្តិការបន្ទាប់ពីនេះ នឹងមិនអាចទាន់មើលឃើញនៅឡើយទេ។ @@ -437,37 +467,109 @@ &Load PSBT from file... &ទាញយកPSBTពីឯកសារ... + + Load Partially Signed Bitcoin Transaction + បង្ហាញប្រត្តិបត្តិការប៊ីតខញដែលបានចុះហត្ថលេខាដោយផ្នែក + + + Load PSBT from clipboard... + បង្ហាញ​PSBT ពី​ក្ដារតម្រៀប... + + + Load Partially Signed Bitcoin Transaction from clipboard + បង្ហាញប្រត្តិបត្តិការប៊ីតខញដែលបានចុះហត្ថលេខាដោយផ្នែកពីក្ដារតម្រៀប + Node window Node window + + Open node debugging and diagnostic console + Open node debugging and diagnostic console + + + &Sending addresses + &Sending addresses + + + &Receiving addresses + &អាសយដ្ឋានទទួល + + + Open a bitcoin: URI + បើកប៊ីតខញមួយៈ URl + + + Open Wallet + បើកកាបូបអេឡិចត្រូនិច + + + Open a wallet + បើកកាបូបអេឡិចត្រូនិចមួយ + + + Close Wallet... + បិទកាបូបអេឡិចត្រូនិច... + Close wallet - Close wallet + បិទកាបូបអេឡិចត្រូនិច + + + Close All Wallets... + បិទកាបូបអេឡិចត្រូនិចទាំងអស់... Close all wallets - Close all wallets + បិទកាបូបអេឡិចត្រូនិចទាំងអស់ + + + Show the %1 help message to get a list with possible Bitcoin command-line options + Show the %1 help message to get a list with possible Bitcoin command-line options + + + &Mask values + &Mask values + + + Mask the values in the Overview tab + Mask the values in the Overview tab default wallet default wallet + + No wallets available + មិនមានកាបូបអេឡិចត្រូនិច + &Window - &Window + &វិនដូ Minimize តូច - Error: %1 - Error: %1 + Zoom + Zoom + + + Main Window + Main Window + + + Connecting to peers... + កំពុងភ្ចាប់ជាមួយនឹងមិត្តភក្តិ... + + + Catching up... + កំពុងតែចាប់យក... Sent transaction - ប្រត្តិបត្តិការបានបញ្ចូន + បានបញ្ចូនប្រត្តិបត្តិការ Incoming transaction @@ -485,11 +587,23 @@ Private key <b>disabled</b> លេខសម្ងាត់ <b>ត្រូវបានបិទ</b> + + Wallet is <b>encrypted</b> and currently <b>unlocked</b> + កាបូបអេឡិចត្រូនិចគឺ<b>ត្រូវបានបំលែងជាកូដ</b>និងបច្ចុប្បន្ន<b>ត្រូវបានចាក់សោរ</b> + + + Wallet is <b>encrypted</b> and currently <b>locked</b> + កាបូបអេឡិចត្រនិច<b>ត្រូវបានបំលែងជាកូដ</b>និងបច្ចុប្បន្ន<b>ត្រូវបានចាក់សោរ</b> + Original message: សារដើម - + + A fatal error occurred. %1 can no longer continue safely and will quit. + A fatal error occurred. %1 can no longer continue safely and will quit. + + CoinControlDialog @@ -524,6 +638,18 @@ Change: Change: + + (un)select all + (កុំ)ជ្រើសរើសទាំងអស់ + + + Tree mode + Tree mode + + + List mode + List mode + Amount ចំនួន @@ -558,11 +684,11 @@ Copy amount - ចម្លងចំនួន + ថតចម្លងចំនួន Copy transaction ID - ចម្លង អត្តសញ្ញាណ​ប្រត្តិបត្តិការ + ថតចម្លងអត្តសញ្ញាណ​ប្រត្តិបត្តិការ Lock unspent @@ -574,7 +700,7 @@ Copy quantity - Copy quantity + ថតចម្លងបរិមាណ Copy fee @@ -608,6 +734,10 @@ This label turns red if any recipient receives an amount smaller than the current dust threshold. ស្លាកសញ្ញានេះបង្ហាញពណ៌ក្រហម ប្រសិនបើអ្នកទទួល ទទួលបានចំនួនមួយតិចជាងចំនួនចាប់ផ្តើមបច្ចុប្បន្ន។ + + Can vary +/- %1 satoshi(s) per input. + Can vary +/- %1 satoshi(s) per input. + (no label) (គ្មាន​ស្លាកសញ្ញា) @@ -623,13 +753,21 @@ Create wallet failed បង្កើតកាបូបអេឡិចត្រូនិច មិនជោគជ័យ - + + Create wallet warning + Create wallet warning + + CreateWalletDialog Create Wallet បង្កើតកាបូប + + Wallet + កាបូប + Wallet Name ឈ្មោះកាបូប @@ -642,15 +780,43 @@ Encrypt Wallet បំលែងកាបូបអេឡិចត្រនិចទៅជាកូដ + + Advanced Options + ជម្រើសមានមុខងារច្រើន + + + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. + + + Disable Private Keys + Disable Private Keys + + + Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. + Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. + Make Blank Wallet ធ្វើឲ្យកាបូបអេឡិចត្រូនិចទទេ + + Use descriptors for scriptPubKey management + Use descriptors for scriptPubKey management + + + Descriptor Wallet + Descriptor Wallet + Create បង្កើត - + + Compiled without sqlite support (required for descriptor wallets) + Compiled without sqlite support (required for descriptor wallets) + + EditAddressDialog @@ -665,6 +831,10 @@ The label associated with this address list entry ស្លាកសញ្ញានេះជាប់ទាក់ទងទៅនឹងការបញ្ចូលបញ្ចីរអាសយដ្ឋាន + + The address associated with this address list entry. This can only be modified for sending addresses. + The address associated with this address list entry. This can only be modified for sending addresses. + &Address &អាសយដ្ឋានបញ្ចូនថ្មី @@ -715,12 +885,32 @@ version ជំនាន់ - + + Command-line options + Command-line options + + Intro Welcome - សូមស្វាគមន៍ + សូមស្វាគមន៏ + + + When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. + When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. + + + Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. + Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. + + + This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. + This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. + + + If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. + If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. Use the default data directory @@ -734,11 +924,47 @@ Bitcoin ប៊ីតខញ + + Discard blocks after verification, except most recent %1 GB (prune) + Discard blocks after verification, except most recent %1 GB (prune) + + + At least %1 GB of data will be stored in this directory, and it will grow over time. + At least %1 GB of data will be stored in this directory, and it will grow over time. + + + Approximately %1 GB of data will be stored in this directory. + Approximately %1 GB of data will be stored in this directory. + + + %1 will download and store a copy of the Bitcoin block chain. + %1 will download and store a copy of the Bitcoin block chain. + + + The wallet will also be stored in this directory. + The wallet will also be stored in this directory. + + + Error: Specified data directory "%1" cannot be created. + Error: Specified data directory "%1" cannot be created. + Error បញ្ហា - + + %n GB of free space available + %n ជីហ្គាប៊ៃ នៃចន្លោះផ្ទុកដោយមិនគិតកម្រៃ + + + (of %n GB needed) + (នៃ%n ជីហ្គាប៊ៃ ដែលត្រូវការ) + + + (%n GB needed for full chain) + (%n GB needed for full chain) + + ModalOverlay @@ -763,7 +989,7 @@ Last block time - Last block time + ពេវេលាប្លុកជុងក្រោយ Progress @@ -789,7 +1015,15 @@ Esc ចាកចេញ - + + %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. + %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. + + + Unknown. Syncing Headers (%1, %2%)... + Unknown. Syncing Headers (%1, %2%)... + + OpenURIDialog @@ -826,14 +1060,234 @@ &Main &សំខាន់ + + Size of &database cache + Size of &database cache + + + Number of script &verification threads + Number of script &verification threads + + + IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1) + IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1) + + + Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type. + Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type. + + + Hide the icon from the system tray. + Hide the icon from the system tray. + + + &Hide tray icon + &Hide tray icon + + + Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu. + Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu. + + + Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. + Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. + + + Open the %1 configuration file from the working directory. + Open the %1 configuration file from the working directory. + + + Open Configuration File + Open Configuration File + + + Reset all client options to default. + Reset all client options to default. + + + &Reset Options + &ជម្រើសការកែសម្រួលឡើងវិញ + + + &Network + &Network + + + Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. + Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. + + + Prune &block storage to + Prune &block storage to + + + GB + ជីហ្គាប៊ៃ + + + Reverting this setting requires re-downloading the entire blockchain. + Reverting this setting requires re-downloading the entire blockchain. + + + MiB + MiB + + + (0 = auto, <0 = leave that many cores free) + (0 = auto, <0 = leave that many cores free) + + + W&allet + កា&បូបអេឡិចត្រូនិច + Expert អ្នកជំនាញ + + Enable coin &control features + Enable coin &control features + + + If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed. + If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed. + + + &Spend unconfirmed change + &Spend unconfirmed change + + + Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled. + Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled. + + + Map port using &UPnP + Map port using &UPnP + + + Accept connections from outside. + ទទួលការតភ្ជាប់ពីខាងក្រៅ។ + + + Allow incomin&g connections + អនុញ្ញាតឲ្យមានការតភ្ជាប់ដែលចូលមក + + + Connect to the Bitcoin network through a SOCKS5 proxy. + ភ្ជាប់ទៅកាន់បណ្តាញប៊ឺតខញតាមរយៈ​ SOCKS5 proxy។ + + + &Connect through SOCKS5 proxy (default proxy): + &Connect through SOCKS5 proxy (default proxy): + + + Proxy &IP: + Proxy &IP: + + + &Port: + &រុនដោត + + + Port of the proxy (e.g. 9050) + Port of the proxy (e.g. 9050) + + + Used for reaching peers via: + Used for reaching peers via: + + + IPv4 + IPv4 + + + IPv6 + IPv6 + + + Tor + Tor + &Window &Window + + Show only a tray icon after minimizing the window. + Show only a tray icon after minimizing the window. + + + &Minimize to the tray instead of the taskbar + &Minimize to the tray instead of the taskbar + + + M&inimize on close + M&inimize on close + + + &Display + &បង្ហាញ + + + User Interface &language: + User Interface &language: + + + The user interface language can be set here. This setting will take effect after restarting %1. + The user interface language can be set here. This setting will take effect after restarting %1. + + + &Unit to show amounts in: + &Unit to show amounts in: + + + Choose the default subdivision unit to show in the interface and when sending coins. + Choose the default subdivision unit to show in the interface and when sending coins. + + + Whether to show coin control features or not. + Whether to show coin control features or not. + + + Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. + Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. + + + Use separate SOCKS&5 proxy to reach peers via Tor onion services: + Use separate SOCKS&5 proxy to reach peers via Tor onion services: + + + &Third party transaction URLs + &Third party transaction URLs + + + Options set in this dialog are overridden by the command line or in the configuration file: + Options set in this dialog are overridden by the command line or in the configuration file: + + + &OK + &OK + + + &Cancel + &Cancel + + + default + default + + + none + none + + + Confirm options reset + បញ្ចាក់ជម្រើសការកែសម្រួលឡើងវិញ + + + Client restart required to activate changes. + Client restart required to activate changes. + Client will be shut down. Do you want to proceed? ផ្ទាំងអតិថិជននិងត្រូវបិទ។ តើអ្នកចង់បន្តទៀតឫទេ? @@ -850,20 +1304,36 @@ Error បញ្ហា + + The configuration file could not be opened. + The configuration file could not be opened. + This change would require a client restart. ការផ្លាស់ប្តូរនេះនឹងត្រូវការចាប់ផ្តើមម៉ាស៊ីនកុំព្យូទ័រឡើងវិញ។​ - + + The supplied proxy address is invalid. + The supplied proxy address is invalid. + + OverviewPage Form ទម្រង់ + + The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. + ព័ត៏មានបានបង្ហាញអាចហួសសពុលភាព។ កាបូបអេឡិចត្រូនិចរបស់អ្នកធ្វើសមកាលកម្មជាមួយនឹងបណ្តាញប៊ីតខញដោយស្វ័យប្រវត្ត បន្ទាប់ពីមានការតភ្ជាប់ ប៉ុន្តែដំណើរការនេះមិនទាន់បានបញ្ចប់នៅឡើយ។ + + + Watch-only: + សម្រាប់តែមើលៈ + Available: - មាន + មានៈ Your current spendable balance @@ -871,12 +1341,36 @@ Pending: - រងចាំ + រងចាំៈ + + + Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance + សរុបប្រត្តឹបត្តិការដែលមិនទាន់បានបញ្ចាក់ និង រាប់ចំពោះសមតុល្យដែលមានទឹកប្រាក់សម្រាប់សំណាយ + + + Immature: + មិនទាន់មានលក្ខណៈគ្រប់គ្រាន់ៈ + + + Mined balance that has not yet matured + សមតុល្យរ៉ែដែលបានជីកមិនទាន់មានលក្ខណៈគ្រប់គ្រាន់ + + + Balances + សមតុល្យច្រើន Total: សរុប + + Your current total balance + សរុបបច្ចុប្បន្នភាពសមតុល្យរបស់អ្នក + + + Your current balance in watch-only addresses + បច្ចុប្បន្នភាពសមតុល្យរបស់អ្នកនៅក្នុងអាសយដ្ឋានសម្រាប់តែមើល + Spendable: អាចចំណាយបានៈ @@ -889,13 +1383,65 @@ Unconfirmed transactions to watch-only addresses ប្រឹត្តិបត្តិការមិនទាន់បញ្ចាក់ច្បាស់ ទៅកាន់ អាសយដ្ឋានសម្រាប់តែមើល - + + Mined balance in watch-only addresses that has not yet matured + Mined balance in watch-only addresses that has not yet matured + + + Current total balance in watch-only addresses + Current total balance in watch-only addresses + + + Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. + Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. + + PSBTOperationsDialog + + Dialog + Dialog + + + Sign Tx + Sign Tx + + + Broadcast Tx + Broadcast Tx + + + Copy to Clipboard + ថតចម្លងទៅកាន់ក្ដារតម្រៀប + Save... ថែរក្សាទុក... + + Close + បិទ + + + Could not sign any more inputs. + Could not sign any more inputs. + + + Signed %1 inputs, but more signatures are still required. + Signed %1 inputs, but more signatures are still required. + + + Signed transaction successfully. Transaction is ready to broadcast. + ប្រត្តិបត្តិការបានចុះហត្ថលេខាដោយជោគជ័យ។​ ប្រត្តិបត្តិការគឺរួចរាល់ក្នុងការផ្សព្វផ្សាយ។ + + + Unknown error processing transaction. + ពុំស្គាល់ប្រត្តិបត្តិការកំពុងដំណើរការជួបបញ្ហា។ + + + PSBT copied to clipboard. + PSBT ត្រូវបានថតចម្លងទៅកាន់ក្ដារតម្រៀប។ + Save Transaction Data Save Transaction Data @@ -928,20 +1474,84 @@ Transaction is missing some information about inputs. ប្រត្តិបត្តិការមានព័ត៍មានពុំគ្រប់គ្រាន់អំពីការបញ្ចូល។ - + + Transaction still needs signature(s). + ប្រត្តិបត្តិការត្រូវការហត្ថលេខាមួយ (ឬ​ ច្រើន)។ + + + (But this wallet cannot sign transactions.) + (ប៉ុន្តែកាបូបអេឡិចត្រូនិចនេះមិនអាច ចុះហត្ថលេខាលើប្រត្តិបត្តិការ។) + + + (But this wallet does not have the right keys.) + (ប៉ុន្តែកាបូបអេឡិចត្រូនិចនេះមិនមានលេខសម្ងាត់ត្រឹមត្រូវ) + + + Transaction is fully signed and ready for broadcast. + ប្រត្តិបត្តិការ​បានចុះហត្ថលេខាពេញលេញ និង រួចរាល់សម្រាប់ផ្សព្វផ្សាយជាដំណឹង។ + + + Transaction status is unknown. + ស្ថានភាពប្រត្តិបត្តិការមិនត្រូវបានស្គាល់។ + + PaymentServer Payment request error ការស្នើរសុំទូរទាត់ប្រាក់ជួបបញ្ហា - + + Cannot start bitcoin: click-to-pay handler + Cannot start bitcoin: click-to-pay handler + + + URI handling + URI handling + + + 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. + 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. + + + Cannot process payment request because BIP70 is not supported. + Cannot process payment request because BIP70 is not supported. + + + Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. + Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. + + + If you are receiving this error you should request the merchant provide a BIP21 compatible URI. + If you are receiving this error you should request the merchant provide a BIP21 compatible URI. + + + URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters. + URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters. + + + Payment request file handling + Payment request file handling + + PeerTableModel User Agent User Agent + + Node/Service + Node/Service + + + NodeId + NodeId + + + Ping + Ping + Sent បានបញ្ចូន @@ -957,6 +1567,22 @@ Amount ចំនួន + + %1 d + %1 d + + + %1 h + %1 h + + + %1 m + %1 m + + + %1 s + %1 s + None មិន @@ -973,20 +1599,48 @@ %n minute(s) %n នាទី + + %n hour(s) + &n ម៉ោង + + + %n day(s) + %n ថ្ងៃ + + + %n week(s) + %nសប្តាហ៍ + + + %n year(s) + %n ឆ្នាំ + + + Error: Specified data directory "%1" does not exist. + Error: Specified data directory "%1" does not exist. + + + Error: Cannot parse configuration file: %1. + Error: Cannot parse configuration file: %1. + Error: %1 Error: %1 + + Error initializing settings: %1 + Error initializing settings: %1 + unknown - unknown + មិនស្គាល់ QRImageWidget &Save Image... - &Save Image... + &រក្សាទុក រូបភាព... &Copy Image @@ -1019,6 +1673,10 @@ N/A N/A + + Client version + Client version + &Information ព័ត៍មាន @@ -1027,13 +1685,117 @@ General ទូទៅ + + Using BerkeleyDB version + ការប្រើប្រាស់ជំនាន់ BerkeleyDB + + + Datadir + Datadir + + + To specify a non-default location of the data directory use the '%1' option. + To specify a non-default location of the data directory use the '%1' option. + + + Blocksdir + Blocksdir + + + To specify a non-default location of the blocks directory use the '%1' option. + To specify a non-default location of the blocks directory use the '%1' option. + + + Startup time + ពេលវេលាចាប់ផ្តើម + + + Network + បណ្តាញ + + + Name + ឈ្មោះ + + + Number of connections + ចំនួនតភ្ជាប់ + + + Block chain + Block chain + + + Memory Pool + Memory Pool + + + Current number of transactions + បច្ចុប្បន្នភាពចំនួនប្រត្តិបត្តិការ + + + Memory usage + ការប្រើប្រាស់អង្គចងចាំ + + + Wallet: + កាបូបអេឡិចត្រូនិចៈ + + + (none) + (មិនមាន) + + + &Reset + &កែសម្រួលឡើងវិញ + Received - Received + បានទទួល Sent - Sent + បានបញ្ចូន + + + &Peers + &មិត្តភក្រ្ត័ + + + Banned peers + មិត្តភក្រ្ត័ត្រូវបានហាមឃាត់ + + + Select a peer to view detailed information. + ជ្រើសរើសមិត្តភក្រ្ត័ម្នាក់ដើម្បីមើលពត័មានលំម្អិត។ + + + Direction + ទិសដៅ + + + Version + ជំនាន់ + + + Starting Block + កំពុងចាប់ផ្តើមប៊្លុក + + + Synced Headers + Synced Headers + + + Synced Blocks + Synced Blocks + + + The mapped Autonomous System used for diversifying peer selection. + The mapped Autonomous System used for diversifying peer selection. + + + Mapped AS + Mapped AS User Agent @@ -1043,6 +1805,14 @@ Node window Node window + + Current block height + Current block height + + + Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. + Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. + Decrease font size បន្ថយទំហំអក្សរ @@ -1055,11 +1825,151 @@ Permissions ការអនុញ្ញាត + + Services + សេវាកម្ម + + + Connection Time + ពេលវាលាតភ្ជាប់ + + + Last Send + បញ្ចូនចុងក្រោយ + + + Last Receive + ទទួលចុងក្រោយ + + + Ping Time + Ping Time + + + The duration of a currently outstanding ping. + The duration of a currently outstanding ping. + + + Ping Wait + Ping Wait + + + Min Ping + Min Ping + + + Time Offset + Time Offset + Last block time Last block time - + + &Open + &Open + + + &Console + &Console + + + &Network Traffic + &ចរាចរណ៍បណ្តាញ + + + Totals + សរុប + + + In: + ចូលៈ + + + Out: + ចេញៈ + + + Debug log file + Debug log file + + + Clear console + Clear console + + + 1 &hour + 1 &hour + + + 1 &day + 1 &day + + + 1 &week + 1 &week + + + 1 &year + 1 &year + + + &Disconnect + &Disconnect + + + Ban for + Ban for + + + &Unban + &Unban + + + Welcome to the %1 RPC console. + Welcome to the %1 RPC console. + + + For more information on using this console type %1. + For more information on using this console type %1. + + + WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. + WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. + + + Network activity disabled + សកម្មភាពបណ្តាញ ត្រូវបានដាក់អោយប្រើការលែងបាន។ + + + Executing command without any wallet + ប្រត្តិបត្តិបញ្ជារដោយគ្មានកាបូបអេឡិចត្រូនិច។ + + + (node id: %1) + (node id: %1) + + + via %1 + via %1 + + + never + មិនដែល + + + Inbound + Inbound + + + Outbound + Outbound + + + Unknown + Unknown + + ReceiveCoinsDialog @@ -1074,6 +1984,10 @@ &Message: &សារ + + An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network. + សារជាជម្រើសមួយក្នុងការភ្ជាប់ទៅនឹងសំណើរទូរទាត់ប្រាក់ ដែលនឹងត្រូវបង្ហាញនៅពេលដែលសំណើរត្រូវបានបើក។ កំណត់ចំណាំៈ សារនេះនឹងមិនត្រូវបានបញ្ចូនជាមួយការទូរទាត់ប្រាក់នៅលើបណ្តាញប៊ីតខញ។ + An optional label to associate with the new receiving address. ស្លាកសញ្ញាជាជម្រើសមួយ ទាក់ទងជាមួយនឹងអាសយដ្ឋានទទួលថ្មី។ @@ -1100,11 +2014,19 @@ Clear all fields of the form. - សំម្អាតគ្រប់ប្រអប់ទាំងអស់ក្នុងទម្រង់នេះ។ + សម្អាតគ្រប់ប្រអប់ទាំងអស់ក្នុងទម្រង់នេះ។ Clear - សំម្អាត + សម្អាត + + + Native segwit addresses (aka Bech32 or BIP-173) reduce your transaction fees later on and offer better protection against typos, but old wallets don't support them. When unchecked, an address compatible with older wallets will be created instead. + Native segwit addresses (aka Bech32 or BIP-173) reduce your transaction fees later on and offer better protection against typos, but old wallets don't support them. When unchecked, an address compatible with older wallets will be created instead. + + + Generate native segwit (Bech32) address + Generate native segwit (Bech32) address Requested payments history @@ -1126,21 +2048,37 @@ Remove លុបចេញ + + Copy URI + ថតចម្លងURl + Copy label ថតចម្លងស្លាកសញ្ញា + + Copy message + ថតចម្លងសារ + Copy amount - Copy amount + ថតចម្លងចំនួន Could not unlock wallet. - Could not unlock wallet. + មិនអាចដោះសោរកាបូបអេឡិចត្រូនិច។ ReceiveRequestDialog + + Request payment to ... + សំណើរទូរទាត់ប្រាក់ទៅកាន់... + + + Address: + អាសយដ្ឋានៈ + Amount: Amount: @@ -1151,21 +2089,29 @@ Message: - Message: + សារៈ Wallet: កាបូបចល័ត៖ + + Copy &URI + ថតចម្លង &RUl + Copy &Address - ចម្លង និង អាសយដ្ឋាន + ថតចម្លង និង អាសយដ្ឋាន &Save Image... &Save Image... - + + Payment information + ព័ត៏មានទូរទាត់ប្រាក់ + + RecentRequestsTableModel @@ -1178,18 +2124,46 @@ Message - Message + សារ (no label) (គ្មាន​ស្លាក​សញ្ញា) - + + (no message) + (មិនមានសារ) + + + (no amount requested) + (មិនចំនួនបានស្នើរសុំ) + + + Requested + បានស្នើរសុំ + + SendCoinsDialog Send Coins - Send Coins + បញ្ចូនកាក់ + + + Coin Control Features + លក្ខណៈពិសេសក្នុងត្រួតពិនិត្យកាក់ + + + Inputs... + បញ្ចូល... + + + automatically selected + បានជ្រើសរើសដោយស្វ័យប្រវត្តិ + + + Insufficient funds! + ប្រាក់មិនគ្រប់គ្រាន់! Quantity: @@ -1215,6 +2189,14 @@ Change: Change: + + If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address. + If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address. + + + Custom change address + ជ្រើសរើសផ្លាស់ប្តូរអាសយដ្ឋាន + Transaction Fee: កម្រៃប្រត្តិបត្តិការ @@ -1223,9 +2205,37 @@ Choose... ជ្រើសរើស... + + Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain. + Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain. + + + Warning: Fee estimation is currently not possible. + Warning: Fee estimation is currently not possible. + + + Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size. + +Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis per kB" for a transaction size of 500 bytes (half of 1 kB) would ultimately yield a fee of only 50 satoshis. + Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size. + +Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis per kB" for a transaction size of 500 bytes (half of 1 kB) would ultimately yield a fee of only 50 satoshis. + + + per kilobyte + per kilobyte + Hide - Hide + លាក់ + + + Recommended: + បានណែនាំៈ + + + Custom: + Custom: (Smart fee not initialized yet. This usually takes a few blocks...) @@ -1247,9 +2257,45 @@ Dust: Dust: + + Hide transaction fee settings + Hide transaction fee settings + + + When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process. + When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process. + + + A too low fee might result in a never confirming transaction (read the tooltip) + កម្រៃទាបពេកមិនអាចធ្វើឲ្យបញ្ចាក់ពីប្រត្តិបត្តិការ​(សូមអាន ប្រអប់សារ) + + + Confirmation time target: + ការបញ្ចាក់ទិសដៅពេលវេលាៈ + + + Enable Replace-By-Fee + Enable Replace-By-Fee + + + With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk. + With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk. + Clear &All - សម្អាត់ &ទាំងអស់ + សម្អាត &ទាំងអស់ + + + Balance: + សមតុល្យៈ + + + Confirm the send action + បញ្ចាក់សកម្មភាពបញ្ចូន + + + S&end + ប&ញ្ជូន Copy quantity @@ -1279,9 +2325,41 @@ Copy change Copy change + + %1 (%2 blocks) + %1 (%2 blocks) + + + Cr&eate Unsigned + Cr&eate Unsigned + + + Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + + + from wallet '%1' + from wallet '%1' + + + %1 to '%2' + %1 to '%2' + + + Do you want to draft this transaction? + Do you want to draft this transaction? + + + Are you sure you want to send? + តើអ្នកច្បាស់ថាអ្នកចង់បញ្ចូន? + + + Create Unsigned + Create Unsigned + Save Transaction Data - Save Transaction Data + រក្សាទិន្នន័យប្រត្តិបត្តិការ Partially Signed Transaction (Binary) (*.psbt) @@ -1295,9 +2373,21 @@ or + + You can increase the fee later (signals Replace-By-Fee, BIP-125). + អ្នកអាចបង្កើនកម្រៃពេលក្រោយ( សញ្ញា ជំនួសដោយកម្រៃ BIP-125)។ + + + Please, review your transaction. + សូមពិនិត្យប្រត្តិបត្តិការទឹកប្រាក់របស់អ្នកសារឡើងវិញ។ + Transaction fee - Transaction fee + កម្រៃប្រត្តិបត្តិការ + + + Not signalling Replace-By-Fee, BIP-125. + Not signalling Replace-By-Fee, BIP-125. Total Amount @@ -1311,6 +2401,62 @@ Confirm send coins បញ្ចាក់​ ក្នុងការបញ្ចូនកាក់ + + Confirm transaction proposal + បញ្ចាក់សំណើរប្រត្តិបត្តិការ + + + Send + បញ្ចូន + + + Watch-only balance: + សមតុល្យសម្រាប់តែមើលៈ + + + The recipient address is not valid. Please recheck. + អាសយដ្ឋានអ្នកទទួលមិនត្រឹមត្រូវ។ សូមពិនិត្យម្តងទៀត។ + + + The amount to pay must be larger than 0. + ចំនួនទឹកប្រាក់ដែលត្រូវបងត្រូវតែធំជាង ០។ + + + The amount exceeds your balance. + ចំនួនលើសសមតុល្យរបស់អ្នក។ + + + Duplicate address found: addresses should only be used once each. + អាសយដ្ឋានស្ទួនត្រូវបានរកឃើញៈ គ្រប់អាសយដ្ឋានគួរត្រូវបានប្រើតែម្តង + + + Transaction creation failed! + បង្កើតប្រត្តិបត្តិការមិនជោគជ័យ! + + + Payment request expired. + សំណើរទូរទាត់ប្រាក់បានផុតកំណត់។ + + + Estimated to begin confirmation within %n block(s). + Estimated to begin confirmation within %n blocks. + + + Warning: Invalid Bitcoin address + Warning: Invalid Bitcoin address + + + Warning: Unknown change address + Warning: Unknown change address + + + Confirm custom change address + Confirm custom change address + + + The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure? + The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure? + (no label) (គ្មាន​ស្លាក​សញ្ញា) @@ -1318,13 +2464,25 @@ SendCoinsEntry + + A&mount: + ចំ&នួនៈ + + + Pay &To: + ទូរទាត់ទៅ&កាន់ៈ + &Label: &ស្លាក​សញ្ញា: Choose previously used address - Choose previously used address + ជ្រើសរើសអាសយដ្ឋានដែលបានប្រើពីមុន + + + The Bitcoin address to send the payment to + អាសយដ្ឋានប៊ីតខញក្នុងការបញ្ចូនការទូរទាត់ប្រាក់ទៅកាន់ Alt+A @@ -1332,12 +2490,28 @@ Paste address from clipboard - Paste address from clipboard + ថតចម្លងអាសយដ្ឋានពីក្ដារតម្រៀប Alt+P Alt+P + + Remove this entry + លុបការបញ្ចូលនេះ + + + The amount to send in the selected unit + The amount to send in the selected unit + + + The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. + The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. + + + S&ubtract fee from amount + S&ubtract fee from amount + Use available balance ប្រើប្រាស់សមតុល្យដែលមានសាច់ប្រាក់ @@ -1358,6 +2532,10 @@ Enter a label for this address to add it to the list of used addresses បញ្ចូលស្លាក​សញ្ញាមួយ សម្រាប់អាសយដ្ឋាននេះ ដើម្បីបញ្ចូលវាទៅក្នងបញ្ចីរអាសយដ្ឋានដែលបានប្រើប្រាស់ + + A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. + A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. + Pay To: បង់ទៅកាន់ @@ -1376,9 +2554,25 @@ SignVerifyMessageDialog + + Signatures - Sign / Verify a Message + ហត្ថលេខា ចុះហត្ថលេខា ឬ ផ្ទៀងផ្ទាត់សារមួយ + + + &Sign Message + &ចុះហត្ថលេខា សារ + + + You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. + You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. + + + The Bitcoin address to sign the message with + អាសយដ្ឋានប៊ីតខញនេះ ចុះហត្ថលេខានៅលើសារ + Choose previously used address - Choose previously used address + ជ្រើសរើសអាសយដ្ឋានដែលបានប្រើពីមុន Alt+A @@ -1386,7 +2580,7 @@ Paste address from clipboard - Paste address from clipboard + ថតចម្លងអាសយដ្ឋាណពីក្ដារតម្រៀប Alt+P @@ -1400,9 +2594,57 @@ Signature ហត្ថលេខា + + Copy the current signature to the system clipboard + ចម្លងហត្ថលេខដែលមានបច្ចុប្បន្នទៅកាន់ប្រព័ន្ធក្តារតមៀប + + + Sign the message to prove you own this Bitcoin address + ចុះហត្ថលេខាលើសារនេះដើម្បីបង្ហាញថាលោកអ្នកជាម្ចាស់អាសយដ្ឋានប៊ីតខញ + + + Sign &Message + ហត្ថលេខា & សារ + + + Reset all sign message fields + កែសម្រួលឡើងវិញគ្រប់សារហត្ថលេខាទាំងអស់ឡើងវិញ + Clear &All - Clear &All + សម្អាត &ទាំងអស់ + + + &Verify Message + &ផ្ទៀងផ្ទាត់សារ + + + Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! + Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! + + + The Bitcoin address the message was signed with + The Bitcoin address the message was signed with + + + The signed message to verify + សារដែលបានចុះហត្ថលេខា ដើម្បីបញ្ចាក់ + + + The signature given when the message was signed + ហត្ថលេខាត្រូវបានផ្តល់នៅពេលដែលសារត្រូវបានចុះហត្ថលេខា + + + Verify the message to ensure it was signed with the specified Bitcoin address + ផ្ទៀងផ្ទាត់សារដើម្បីធានាថាវាត្រូវបានចុះហត្ថលេខាជាមួយនឹងអាសយដ្ឋានប៊ីតខញជាក់លាក់។ + + + Verify &Message + ផ្ទៀងផ្ទាត់&សារ + + + Reset all verify message fields + កែសម្រួលឡើងវិញគ្រប់សារផ្ទៀងផ្ទាត់ទាំងអស់ Click "Sign Message" to generate signature @@ -1416,6 +2658,10 @@ Please check the address and try again. សូមពិនិត្យអាសយដ្ឋាននេះឡើងវិញ រួចហើយព្យាយាមម្តងទៀត។ + + The entered address does not refer to a key. + The entered address does not refer to a key. + Wallet unlock was cancelled. បោះបង់ចោល ការដោះសោរកាបូបអេឡិចត្រូនិច។ @@ -1424,6 +2670,14 @@ No error មិនមានបញ្ហា + + Private key for the entered address is not available. + Private key for the entered address is not available. + + + Message signing failed. + ការចុះហត្ថលេខាលើសារមិនជោគជ័យ។ + Message signed. សារបានចុះហត្ថលេខា។ @@ -1436,6 +2690,10 @@ Please check the signature and try again. សូមពិនិត្យការចុះហត្ថលេខានេះឡើងវិញ រូចហើយព្យាយាមម្តងទៀត។ + + The signature did not match the message digest. + ហត្ថលេខានេះមិនត្រូវទៅនឹងសារដែលបានបំលែងរួច។ + Message verification failed. សារបញ្ចាក់ មិនត្រឹមត្រូវ។ @@ -1458,6 +2716,22 @@ Open for %n more block(s) បើក %n ប្លុកជាច្រើនទៀត + + conflicted with a transaction with %1 confirmations + conflicted with a transaction with %1 confirmations + + + 0/unconfirmed, %1 + 0/unconfirmed, %1 + + + in memory pool + in memory pool + + + not in memory pool + not in memory pool + abandoned បានបោះបង់ចោល @@ -1478,9 +2752,13 @@ Generated បានបង្កើត + + From + ពី + unknown - unknown + មិនស្គាល់ To @@ -1498,14 +2776,38 @@ label ស្លាក​សញ្ញា + + Credit + Credit + + + matures in %n more block(s) + matures in %n more blocks + not accepted មិនបានទទួល + + Debit + Debit + + + Total debit + Total debit + + + Total credit + Total credit + Transaction fee កម្រៃប្រត្តិបត្តិការ + + Net amount + Net amount + Message Message @@ -1526,6 +2828,26 @@ Transaction virtual size ទំហំប្រត្តិបត្តិការជាក់ស្តែង + + Output index + Output index + + + (Certificate was not verified) + (Certificate was not verified) + + + Merchant + Merchant + + + Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. + Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. + + + Debug information + Debug information + Transaction ប្រត្តិបត្តិការ @@ -1549,6 +2871,10 @@ TransactionDescDialog + + This pane shows a detailed description of the transaction + This pane shows a detailed description of the transaction + TransactionTableModel @@ -1576,6 +2902,18 @@ Abandoned បានបោះបង់ + + Conflicted + បានប្រឆាំងតទល់គ្នា + + + Immature (%1 confirmations, will be available after %2) + Immature (%1 confirmations, will be available after %2) + + + Generated but not accepted + បានបង្កើត ប៉ុន្តែមិនបានទទួល + Received with បានទទួលជាមួយនឹង @@ -1586,7 +2924,7 @@ Sent to - Sent to + បានបញ្ចូនទៅកាន់ Payment to yourself @@ -1608,6 +2946,10 @@ (no label) (គ្មាន​ស្លាកសញ្ញា) + + Transaction status. Hover over this field to show number of confirmations. + ស្ថានភាពប្រត្តិបត្តិការ។ អូសម៉ៅដាក់លើប្រអប់នេះដើម្បីបង្ហាញចំនួននៃការបញ្ចាក់។ + Date and time that the transaction was received. ថ្ងៃ និង ពេលវេលាដែលទទួលបានប្រត្តិបត្តិការ។ @@ -1616,16 +2958,56 @@ Type of transaction. ប្រភេទនៃប្រត្តិបត្តិការ - + + Whether or not a watch-only address is involved in this transaction. + Whether or not a watch-only address is involved in this transaction. + + + User-defined intent/purpose of the transaction. + User-defined intent/purpose of the transaction. + + + Amount removed from or added to balance. + ចំនួនទឹកប្រាក់បានដកចេញ ឬដាក់ចូលទៅក្នុងសមតុល្យ។ + + TransactionView + + All + ទាំងអស់ + + + Today + ថ្ងៃនេះ + + + This week + សប្តាហ៍នេះ + + + This month + ខែនេះ + + + Last month + ខែមុន + + + This year + ឆ្នាំនេះ + + + Range... + Range... + Received with - Received with + បានទទួលជាមួយនឹង Sent to - Sent to + បានបញ្ចូនទៅកាន់ To yourself @@ -1665,31 +3047,51 @@ Copy amount - Copy amount + ថតចម្លងចំនួន Copy transaction ID - Copy transaction ID + ថតចម្លងអត្តសញ្ញាណប្រត្តិបត្តិការ + + + Copy raw transaction + Copy raw transaction + + + Copy full transaction details + ថតចម្លងភាពលំម្អិតនៃប្រត្តិបត្តិការពេញលេញ Edit label កែប្រែស្លាកសញ្ញា + + Show transaction details + បង្ហាញភាពលំម្អិតនៃប្រត្តិបត្តិការ + + + Export Transaction History + ប្រវត្តិនៃការនាំចេញប្រត្តិបត្តិការ + Comma separated file (*.csv) ឯកសារបំបែកដោយក្បៀស (*.csv) Confirmed - Confirmed + បានបញ្ចាក់រួចរាល់ + + + Watch-only + សម្រាប់តែមើល Date - Date + ថ្ងៃ Type - Type + ប្រភេទ Label @@ -1699,30 +3101,66 @@ Address អាសយដ្ឋាន + + ID + អត្តសញ្ញាណ + Exporting Failed បរាជ័យការបញ្ជូនចេញ - + + Exporting Successful + កំពុងនាំចេញដោយជោគជ័យ + + + Range: + លំដាប់ពីៈ + + + to + ទៅកាន់ + + UnitDisplayStatusBarControl - + + Unit to show amounts in. Click to select another unit. + Unit to show amounts in. Click to select another unit. + + WalletController Close wallet - Close wallet + បិតកាបូបអេឡិចត្រូនិច + + + Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. + Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. Close all wallets - Close all wallets + បិទកាបូបអេឡិចត្រូនិចទាំងអស់ - + + Are you sure you wish to close all wallets? + តើអ្នកច្បាស់ថាអ្នកចង់បិទកាបូបអេឡិចត្រូនិចទាំងអស់? + + WalletFrame + + No wallet has been loaded. +Go to File > Open Wallet to load a wallet. +- OR - + មិនមានកាបូបអេឡិចត្រូនិចបង្ហាញ។ +ចូលឯកសារ‍»បើកកាបូបអេឡិចត្រូនិចដើម្បីបង្ហាញកាបូបមួយ +ឬ + Create a new wallet - បង្កើតកាបូបចល័តថ្មី + បង្កើតកាបូបចល័តថ្មីមួយ @@ -1731,6 +3169,10 @@ Send Coins បញ្ជូនកាក់ + + Fee bump error + Fee bump error + Increasing transaction fee failed តំឡើងកម្រៃប្រត្តិបត្តិការមិនជោគជ័យ @@ -1739,10 +3181,42 @@ Do you want to increase the fee? តើអ្នកចង់តំឡើងកម្រៃដែរ ឫទេ? + + Do you want to draft a transaction with fee increase? + Do you want to draft a transaction with fee increase? + Current fee: កម្រៃបច្ចុប្បន្ន + + Increase: + Increase: + + + New fee: + New fee: + + + Confirm fee bump + Confirm fee bump + + + Can't draft transaction. + Can't draft transaction. + + + PSBT copied + PSBT copied + + + Can't sign transaction. + មិនអាចចុះហត្ថលេខាលើប្រត្តិបត្តិការ។ + + + Could not commit transaction + មិនបានធ្វើប្រត្តិបត្តិការ + default wallet default wallet @@ -1762,6 +3236,10 @@ Error បញ្ហា + + Unable to decode PSBT from clipboard (invalid base64) + មិនអាចបកស្រាយអក្សរសម្ងាត់​PSBT ពី​ក្ដារតម្រៀប (មូដ្ឋាន៦៤ មិនត្រឹមត្រូវ) + Load Transaction Data ទាញយកទិន្ន័យប្រត្តិបត្តិការ @@ -1770,6 +3248,26 @@ Partially Signed Transaction (*.psbt) ប្រត្តិបត្តិការ ដែលបានចុះហត្ថលេខាមិនពេញលេញ (*.psbt) + + PSBT file must be smaller than 100 MiB + PSBT file must be smaller than 100 MiB + + + Unable to decode PSBT + Unable to decode PSBT + + + Backup Wallet + Backup Wallet + + + Wallet Data (*.dat) + ទិន្នន័យកាបូបអេឡិចត្រូនិច(*.dat) + + + Backup Failed + ថតចម្លងទុកមិនទទួលបានជោគជ័យ + Backup Successful ចំម្លងទុកដោយជោគជ័យ @@ -1781,14 +3279,330 @@ bitcoin-core + + Distributed under the MIT software license, see the accompanying file %s or %s + Distributed under the MIT software license, see the accompanying file %s or %s + + + Prune configured below the minimum of %d MiB. Please use a higher number. + Prune configured below the minimum of %d MiB. Please use a higher number. + + + Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) + Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) + + + Pruning blockstore... + Pruning blockstore... + + + Unable to start HTTP server. See debug log for details. + Unable to start HTTP server. See debug log for details. + + + The %s developers + The %s developers + + + Cannot obtain a lock on data directory %s. %s is probably already running. + Cannot obtain a lock on data directory %s. %s is probably already running. + + + Cannot provide specific connections and have addrman find outgoing connections at the same. + Cannot provide specific connections and have addrman find outgoing connections at the same. + + + Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. + Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. + + + More than one onion bind address is provided. Using %s for the automatically created Tor onion service. + More than one onion bind address is provided. Using %s for the automatically created Tor onion service. + + + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. + + + Please contribute if you find %s useful. Visit %s for further information about the software. + Please contribute if you find %s useful. Visit %s for further information about the software. + + + SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s + SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s + + + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + + + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported + + + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct + + + This is a pre-release test build - use at your own risk - do not use for mining or merchant applications + This is a pre-release test build - use at your own risk - do not use for mining or merchant applications + + + This is the transaction fee you may discard if change is smaller than dust at this level + This is the transaction fee you may discard if change is smaller than dust at this level + + + Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. + Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. + + + Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain + Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain + + + Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. + Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. + + + Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. + Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. + + + -maxmempool must be at least %d MB + -maxmempool must be at least %d MB + + + Cannot resolve -%s address: '%s' + Cannot resolve -%s address: '%s' + + + Change index out of range + Change index out of range + + + Config setting for %s only applied on %s network when in [%s] section. + Config setting for %s only applied on %s network when in [%s] section. + + + Copyright (C) %i-%i + Copyright (C) %i-%i + + + Corrupted block database detected + Corrupted block database detected + + + Could not find asmap file %s + Could not find asmap file %s + + + Could not parse asmap file %s + Could not parse asmap file %s + + + Do you want to rebuild the block database now? + Do you want to rebuild the block database now? + + + Error initializing block database + Error initializing block database + + + Error initializing wallet database environment %s! + Error initializing wallet database environment %s! + + + Error loading %s + Error loading %s + + + Error loading %s: Private keys can only be disabled during creation + Error loading %s: Private keys can only be disabled during creation + + + Error loading %s: Wallet corrupted + Error loading %s: Wallet corrupted + + + Error loading %s: Wallet requires newer version of %s + Error loading %s: Wallet requires newer version of %s + + + Error loading block database + Error loading block database + + + Error opening block database + Error opening block database + + + Failed to listen on any port. Use -listen=0 if you want this. + Failed to listen on any port. Use -listen=0 if you want this. + + + Failed to rescan the wallet during initialization + Failed to rescan the wallet during initialization + + + Failed to verify database + មិនបានជោគជ័យក្នុងការបញ្ចាក់ មូលដ្ឋានទិន្នន័យ + + + Ignoring duplicate -wallet %s. + Ignoring duplicate -wallet %s. + + + Importing... + កំពុងតែនាំចូល... + + + Incorrect or no genesis block found. Wrong datadir for network? + Incorrect or no genesis block found. Wrong datadir for network? + + + Initialization sanity check failed. %s is shutting down. + Initialization sanity check failed. %s is shutting down. + + + Invalid P2P permission: '%s' + ការអនុញ្ញាត P2P មិនត្រឹមត្រូវៈ​ '%s' + + + Invalid amount for -%s=<amount>: '%s' + ចំនួនមិនត្រឹមត្រូវសម្រាប់ -%s=<amount>: '%s' + + + Invalid amount for -discardfee=<amount>: '%s' + ចំនួនមិនត្រឹមត្រូវសម្រាប់ -discardfee=<amount>: '%s' + + + Invalid amount for -fallbackfee=<amount>: '%s' + ចំនួនមិនត្រឹមត្រូវសម្រាប់ -fallbackfee=<amount> : '%s' + + + SQLiteDatabase: Failed to execute statement to verify database: %s + SQLiteDatabase: Failed to execute statement to verify database: %s + + + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s + + + SQLiteDatabase: Failed to fetch the application id: %s + SQLiteDatabase: Failed to fetch the application id: %s + + + SQLiteDatabase: Failed to prepare statement to verify database: %s + SQLiteDatabase: Failed to prepare statement to verify database: %s + + + SQLiteDatabase: Failed to read database verification error: %s + SQLiteDatabase: Failed to read database verification error: %s + + + SQLiteDatabase: Unexpected application id. Expected %u, got %u + SQLiteDatabase: Unexpected application id. Expected %u, got %u + + + Specified blocks directory "%s" does not exist. + Specified blocks directory "%s" does not exist. + + + Unknown address type '%s' + Unknown address type '%s' + + + Unknown change type '%s' + Unknown change type '%s' + + + Upgrading txindex database + កំពុងធ្វើឲ្យប្រសើរឡើងមូលដ្ឋានទិន្នន័យ txindex + + + Loading P2P addresses... + កំពុងបង្ហាញអាសយដ្ឋាន​ P2P... + + + Loading banlist... + កំពុងបង្ហាញ banlist... + + + Not enough file descriptors available. + Not enough file descriptors available. + + + Prune cannot be configured with a negative value. + Prune cannot be configured with a negative value. + + + Prune mode is incompatible with -txindex. + Prune mode is incompatible with -txindex. + + + Replaying blocks... + Replaying blocks... + + + Rewinding blocks... + Rewinding blocks... + + + The source code is available from %s. + The source code is available from %s. + Transaction fee and change calculation failed ការគណនា ការផ្លាស់ប្តូរ និង កម្រៃប្រត្តិបត្តការ មិនជោគជ័យ + + Unable to bind to %s on this computer. %s is probably already running. + Unable to bind to %s on this computer. %s is probably already running. + + + Unable to generate keys + Unable to generate keys + + + Unsupported logging category %s=%s. + Unsupported logging category %s=%s. + + + Upgrading UTXO database + Upgrading UTXO database + + + User Agent comment (%s) contains unsafe characters. + User Agent comment (%s) contains unsafe characters. + + + Verifying blocks... + Verifying blocks... + + + Wallet needed to be rewritten: restart %s to complete + Wallet needed to be rewritten: restart %s to complete + + + Error: Listening for incoming connections failed (listen returned error %s) + Error: Listening for incoming connections failed (listen returned error %s) + + + %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. + %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. + + + Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. + Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. + The transaction amount is too small to send after the fee has been deducted ចំនួនប្រត្តិបត្តិការមានទឹកប្រាក់ទំហំតិចតួច ក្នុងការផ្ញើរចេញទៅ បន្ទាប់ពីកំរៃត្រូវបានកាត់រួចរាល់ + + This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet + This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet + This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. នេះជាកម្រៃប្រត្តិបត្តិការតូចបំផុត ដែលអ្នកទូរទាត់ (បន្ថែមទៅលើកម្រៃធម្មតា)​​ ដើម្បីផ្តល់អាទិភាពលើការជៀសវៀងការចំណាយដោយផ្នែក សម្រាប់ការជ្រើសរើសកាក់ដោយទៀងទាត់។ @@ -1797,6 +3611,18 @@ Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. ប្រត្តិបត្តការនេះ ត្រូវការផ្លាស់ប្តូរអាសយដ្ឋាន​​ ប៉ុន្តែយើងមិនអាចបង្កើតវាបាន។ ដូច្នេះសូមហៅទៅកាន់ Keypoolrefill។ + + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain + + + A fatal internal error occurred, see debug.log for details + A fatal internal error occurred, see debug.log for details + + + Cannot set -peerblockfilters without -blockfilterindex. + Cannot set -peerblockfilters without -blockfilterindex. + Disk space is too low! ទំហំឌីស មានកំរិតទាប @@ -1805,14 +3631,88 @@ Error reading from database, shutting down. បញ្ហា​ក្នុងការទទួលបានទិន្ន័យ​ ពីមូលដ្ឋានទិន្ន័យ ដូច្នេះកំពុងតែបិទ។ + + Error upgrading chainstate database + Error upgrading chainstate database + + + Error: Disk space is low for %s + Error: Disk space is low for %s + + + Error: Keypool ran out, please call keypoolrefill first + Error: Keypool ran out, please call keypoolrefill first + + + Fee rate (%s) is lower than the minimum fee rate setting (%s) + Fee rate (%s) is lower than the minimum fee rate setting (%s) + + + Invalid -onion address or hostname: '%s' + Invalid -onion address or hostname: '%s' + + + Invalid -proxy address or hostname: '%s' + Invalid -proxy address or hostname: '%s' + + + Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) + Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) + + + Invalid netmask specified in -whitelist: '%s' + Invalid netmask specified in -whitelist: '%s' + + + Need to specify a port with -whitebind: '%s' + Need to specify a port with -whitebind: '%s' + + + No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. + No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. + + + Prune mode is incompatible with -blockfilterindex. + Prune mode is incompatible with -blockfilterindex. + + + Reducing -maxconnections from %d to %d, because of system limitations. + Reducing -maxconnections from %d to %d, because of system limitations. + + + Section [%s] is not recognized. + Section [%s] is not recognized. + Signing transaction failed ប្រត្តិបត្តការចូល មិនជោគជ័យ + + Specified -walletdir "%s" does not exist + Specified -walletdir "%s" does not exist + + + Specified -walletdir "%s" is a relative path + Specified -walletdir "%s" is a relative path + + + Specified -walletdir "%s" is not a directory + Specified -walletdir "%s" is not a directory + + + The specified config file %s does not exist + + The specified config file %s does not exist + + The transaction amount is too small to pay the fee ចំនួនប្រត្តិបត្តិការមានទឹកប្រាក់ទំហំតូចពេក សម្រាប់បង់ប្រាក់ + + This is experimental software. + This is experimental software. + Transaction amount too small ចំនួនប្រត្តិបត្តិការមានទឹកប្រាក់ទំហំតូច @@ -1821,10 +3721,30 @@ Transaction too large ប្រត្តិបត្តការទឹកប្រាក់ មានទំហំធំ + + Unable to bind to %s on this computer (bind returned error %s) + Unable to bind to %s on this computer (bind returned error %s) + + + Unable to create the PID file '%s': %s + Unable to create the PID file '%s': %s + + + Unable to generate initial keys + Unable to generate initial keys + + + Unknown -blockfilterindex value %s. + Unknown -blockfilterindex value %s. + Verifying wallet(s)... កំពុងផ្ទៀងផ្ទាត់ កាបូបអេឡិចត្រូនិច... + + Warning: unknown new rules activated (versionbit %i) + សេចក្តីប្រកាសអាសន្នៈ ច្បាប់ថ្មីដែលមិនត្រូវបានទទួលស្គាល់ ត្រូវបានដាក់ឲ្យប្រើ​ (versionbit %i) + -maxtxfee is set very high! Fees this large could be paid on a single transaction. -maxtxfee មានតំម្លៃខ្ពស់ពេក។​ តំម្លៃនេះ អាចគួរត្រូវបានបង់សម្រាប់មួយប្រត្តិបត្តិការ។ @@ -1833,6 +3753,22 @@ This is the transaction fee you may pay when fee estimates are not available. អ្នកនឹងទូរទាត់ កម្រៃប្រត្តិបត្តិការនេះ នៅពេលណាដែល ទឹកប្រាក់នៃការប៉ាន់ស្មាន មិនទាន់មាន។ + + Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments. + ប្រវែងខ្សែបណ្តាញសរុប(%i) លើសប្រវែងខ្សែដែលវែងបំផុត (%i)។ កាត់បន្ថយចំនួន ​ឬទំហំនៃ uacomments ។ + + + %s is set very high! + %s ត្រូវបានកំណត់យ៉ាងខ្ពស់ + + + Starting network threads... + កំពុងចាប់ផ្តើមបណ្តាញដែលប្រើប្រាស់ថាមពលតិច... + + + The wallet will avoid paying less than the minimum relay fee. + ប្រត្តិបត្តិការមានខ្សែចង្វាក់រងចាំដើម្បីធ្វើការផ្ទៀងផ្ទាត់វែង + This is the minimum transaction fee you pay on every transaction. នេះជាកម្រៃប្រត្តិបត្តិការតិចបំផុត អ្នកបង់រាល់ពេលធ្វើប្រត្តិបត្តិការម្តងៗ។ @@ -1845,6 +3781,34 @@ Transaction amounts must not be negative ចំនួនប្រត្តិបត្តិការ មិនអាចអវិជ្ជមានបានទេ + + Transaction has too long of a mempool chain + ប្រត្តិបត្តិការមានខ្សែចង្វាក់រងចាំដើម្បីធ្វើការផ្ទៀងផ្ទាត់វែង + + + Transaction must have at least one recipient + ប្រត្តិបត្តិការត្រូវមានអ្នកទទួលម្នាក់យ៉ាងតិចបំផុត + + + Unknown network specified in -onlynet: '%s' + Unknown network specified in -onlynet: '%s' + + + Insufficient funds + មូលនិធិមិនគ្រប់គ្រាន់ + + + Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable -fallbackfee. + ការវាយតម្លៃកំម្រៃមិនជោគជ័យ។ Fallbackfee ត្រូវបានដាក់ឲ្យប្រើលែងកើត។ រងចាំប្លុក ឬក៏ ដាក់ឲ្យប្រើឡើងវិញនូវ Fallbackfee។ + + + Warning: Private keys detected in wallet {%s} with disabled private keys + សេចក្តីប្រកាសអាសន្នៈ​ លេខសំម្ងាត់ត្រូវបានស្វែងរកឃើញនៅក្នុងកាបូបអេឡិចត្រូនិច​ {%s} ជាមួយនិងលេខសំម្ងាត់ត្រូវបានដាក់ឲ្យលែងប្រើលែងកើត + + + Cannot write to data directory '%s'; check permissions. + មិនអាចសរសេរទៅកាន់ កន្លែងផ្ទុកទិន្នន័យ​ '%s'; ពិនិត្យមើលការអនុញ្ញាត។ + Loading block index... កំពុងបង្ហាញ សន្ទស្សន៍ប្លុក diff --git a/src/qt/locale/bitcoin_ko.ts b/src/qt/locale/bitcoin_ko.ts index fa14a43f9..9578dc87e 100644 --- a/src/qt/locale/bitcoin_ko.ts +++ b/src/qt/locale/bitcoin_ko.ts @@ -844,6 +844,10 @@ Signing is only possible with addresses of the type 'legacy'. Create Wallet 지갑 생성하기 + + Wallet + 지갑 + Wallet Name 지갑 이름 @@ -856,6 +860,10 @@ Signing is only possible with addresses of the type 'legacy'. Encrypt Wallet 지갑 암호화 + + Advanced Options + 고급 옵션 + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. 이 지갑에 대한 개인 키를 비활성화합니다. 개인 키가 비활성화 된 지갑에는 개인 키가 없으며 HD 시드 또는 가져온 개인 키를 가질 수 없습니다. 이는 조회-전용 지갑에 이상적입니다. diff --git a/src/qt/locale/bitcoin_ku_IQ.ts b/src/qt/locale/bitcoin_ku_IQ.ts index dfadaa80b..817eb1b27 100644 --- a/src/qt/locale/bitcoin_ku_IQ.ts +++ b/src/qt/locale/bitcoin_ku_IQ.ts @@ -87,6 +87,18 @@ Signing is only possible with addresses of the type 'legacy'. &Edit &دەسکاریکردن + + Export Address List + لیستی ناونیشان هاوردە بکە + + + Comma separated file (*.csv) + فایلی جیاکراوە بە کۆما (*.csv) + + + Exporting Failed + هەناردەکردن سەرکەوتوو نەبوو + There was an error trying to save the address list to %1. Please try again. هەڵەیەک ڕوویدا لە هەوڵی خەزنکردنی لیستی ناونیشانەکە بۆ %1. تکایە دووبارە هەوڵ دەوە. @@ -94,13 +106,39 @@ Signing is only possible with addresses of the type 'legacy'. AddressTableModel + + Label + پێناسەکردن + Address ناوونیشان - + + (no label) + (بێ ناونیشان) + + + + AskPassphraseDialog + + Passphrase Dialog + دیالۆگی دەستەواژەی تێپەڕبوون + + + Enter passphrase + دەستەواژەی تێپەڕبوون بنووسە + + + New passphrase + دەستەواژەی تێپەڕی نوێ + + + Repeat new passphrase + دووبارەکردنەوەی دەستەواژەی تێپەڕی نوێ + Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. دەستەواژەی تێپەڕەوی نوێ تێبنووسە بۆ جزدان.1 تکایە دەستەواژەی تێپەڕێک بەکاربێنە لە 2ten یان زیاتر لە هێما هەڕەمەکیەکان2، یان 38 یان زیاتر ووشەکان3. @@ -222,6 +260,12 @@ Signing is only possible with addresses of the type 'legacy'. no نەخێر + + (no label) + (بێ ناونیشان) + + + CreateWalletActivity @@ -530,10 +574,20 @@ Signing is only possible with addresses of the type 'legacy'. Date رێکەت + + Label + پێناسەکردن + Message پەیام + + (no label) + (بێ ناونیشان) + + + SendCoinsDialog @@ -601,7 +655,13 @@ Signing is only possible with addresses of the type 'legacy'. The recipient address is not valid. Please recheck. ناونیشانی وەرگرتنەکە دروست نییە. تکایە دووبارە پشکنین بکەوە. - + + (no label) + (بێ ناونیشان) + + + + SendCoinsEntry @@ -690,10 +750,20 @@ Signing is only possible with addresses of the type 'legacy'. Type جۆر + + Label + پێناسەکردن + Sent to ناردن بۆ + + (no label) + (بێ ناونیشان) + + + TransactionView @@ -729,6 +799,10 @@ Signing is only possible with addresses of the type 'legacy'. Copy full transaction details Copy full transaction details + + Comma separated file (*.csv) + فایلی جیاکراوە بە کۆما (*.csv) + Date رێکەت @@ -737,10 +811,18 @@ Signing is only possible with addresses of the type 'legacy'. Type جۆر + + Label + پێناسەکردن + Address ناوونیشان + + Exporting Failed + هەناردەکردن سەرکەوتوو نەبوو + to بۆ diff --git a/src/qt/locale/bitcoin_ky.ts b/src/qt/locale/bitcoin_ky.ts index 04fabae0e..5633cda2f 100644 --- a/src/qt/locale/bitcoin_ky.ts +++ b/src/qt/locale/bitcoin_ky.ts @@ -82,6 +82,10 @@ CreateWalletDialog + + Wallet + Капчык + EditAddressDialog diff --git a/src/qt/locale/bitcoin_la.ts b/src/qt/locale/bitcoin_la.ts index f3ea2dc24..7ebfc2749 100644 --- a/src/qt/locale/bitcoin_la.ts +++ b/src/qt/locale/bitcoin_la.ts @@ -9,10 +9,22 @@ Create a new address Crea novam inscriptionem + + &New + &Novus + Copy the currently selected address to the system clipboard Copia inscriptionem iam selectam in latibulum systematis + + &Copy + &Transcribe + + + C&lose + C&laude + Delete the currently selected address from the list Dele active selectam inscriptionem ex enumeratione @@ -49,6 +61,10 @@ &Edit &Muta + + Export Address List + Exporta Index Inscriptionum + Comma separated file (*.csv) Comma Separata Plica (*.csv) @@ -87,6 +103,10 @@ Repeat new passphrase Itera novam tesseram + + Show passphrase + Ostende tesseram + Encrypt wallet Cifra cassidile @@ -166,7 +186,11 @@ BanTableModel - + + Banned Until + Interdictum usque ad + + BitcoinGUI @@ -201,6 +225,10 @@ Quit application Exi applicatione + + &About %1 + &De %1 + About &Qt Informatio de &Qt @@ -225,6 +253,18 @@ &Change Passphrase... &Muta tesseram... + + Open &URI... + Aperi &URI... + + + Create Wallet... + Creare Cassidilium + + + Create a new wallet + Creare novum cassidilium + Reindexing blocks on disk... Recreans indicem frustorum in disco... @@ -348,6 +388,10 @@ CoinControlDialog + + Bytes: + Octecti: + Amount: Quantitas: @@ -390,6 +434,10 @@ CreateWalletDialog + + Wallet + Cassidile + EditAddressDialog @@ -767,6 +815,10 @@ Insufficient funds! Inopia nummorum + + Bytes: + Octecti: + Amount: Quantitas: @@ -1296,7 +1348,11 @@ WalletFrame - + + Create a new wallet + Creare novum casidillium + + WalletModel diff --git a/src/qt/locale/bitcoin_lt.ts b/src/qt/locale/bitcoin_lt.ts index 2abe7274d..2fbe7ae37 100644 --- a/src/qt/locale/bitcoin_lt.ts +++ b/src/qt/locale/bitcoin_lt.ts @@ -481,6 +481,10 @@ Close wallet Uždaryti Piniginę + + Close all wallets + Uždaryti visas pinigines + Show the %1 help message to get a list with possible Bitcoin command-line options Rodyti %1 pagalbos žinutę su Bitcoin pasirinkimo komandomis @@ -593,6 +597,10 @@ Wallet is <b>encrypted</b> and currently <b>locked</b> Piniginė <b>užšifruota</b> ir šiuo metu <b>užrakinta</b> + + Original message: + Orginali žinutė: + CoinControlDialog @@ -766,6 +774,10 @@ Create Wallet Sukurti Piniginę + + Wallet + Piniginė + Wallet Name Piniginės Pavadinimas @@ -778,6 +790,10 @@ Encrypt Wallet Užkoduoti Piniginę + + Advanced Options + Išplėstiniai nustatymai + Disable Private Keys Atjungti Privačius Raktus @@ -1384,6 +1400,10 @@ Dialog Dialogas + + Close + Uždaryti + Total Amount Visas kiekis @@ -1723,6 +1743,10 @@ Increase font size Padidinti šrifto dydį + + Permissions + Leidimai + Services Paslaugos @@ -2235,6 +2259,10 @@ Pastaba: Kadangi mokestis apskaičiuojamas pagal baitą, mokestis už „100 sat Are you sure you want to send? Ar tikrai norite siųsti? + + Create Unsigned + Sukurti nepasirašytą + or ar @@ -2981,6 +3009,10 @@ Pastaba: Kadangi mokestis apskaičiuojamas pagal baitą, mokestis už „100 sat Are you sure you wish to close the wallet <i>%1</i>? Ar tikrai norite uždaryti piniginę <i>%1</i>? + + Close all wallets + Uždaryti visas pinigines + WalletFrame diff --git a/src/qt/locale/bitcoin_lv.ts b/src/qt/locale/bitcoin_lv.ts index 80f01a186..7b20ce478 100644 --- a/src/qt/locale/bitcoin_lv.ts +++ b/src/qt/locale/bitcoin_lv.ts @@ -462,6 +462,10 @@ CreateWalletDialog + + Wallet + Maciņš + EditAddressDialog diff --git a/src/qt/locale/bitcoin_mk.ts b/src/qt/locale/bitcoin_mk.ts index 1c430b486..2e05735e7 100644 --- a/src/qt/locale/bitcoin_mk.ts +++ b/src/qt/locale/bitcoin_mk.ts @@ -252,6 +252,10 @@ CreateWalletDialog + + Wallet + Паричник + EditAddressDialog diff --git a/src/qt/locale/bitcoin_ml.ts b/src/qt/locale/bitcoin_ml.ts index 8dd2264b5..7b4b19de4 100644 --- a/src/qt/locale/bitcoin_ml.ts +++ b/src/qt/locale/bitcoin_ml.ts @@ -19,7 +19,7 @@ &Copy - & പകർത്തുക + &പകർത്തുക C&lose @@ -906,7 +906,15 @@ Signing is only possible with addresses of the type 'legacy'. name നാമധേയം / പേര് - + + Path already exists, and is not a directory. + പാത്ത് ഇതിനകം നിലവിലുണ്ട്, അത് ഒരു ഡയറക്ടറിയല്ല. + + + Cannot create data directory here. + ഡാറ്റ ഡയറക്ടറി ഇവിടെ സൃഷ്ടിക്കാൻ കഴിയില്ല. + + HelpMessageDialog diff --git a/src/qt/locale/bitcoin_mn.ts b/src/qt/locale/bitcoin_mn.ts index dabfb97f3..521573a06 100644 --- a/src/qt/locale/bitcoin_mn.ts +++ b/src/qt/locale/bitcoin_mn.ts @@ -330,6 +330,10 @@ CreateWalletDialog + + Wallet + Түрүйвч + EditAddressDialog diff --git a/src/qt/locale/bitcoin_mr_IN.ts b/src/qt/locale/bitcoin_mr_IN.ts index 3b6fae76f..da2428c0f 100644 --- a/src/qt/locale/bitcoin_mr_IN.ts +++ b/src/qt/locale/bitcoin_mr_IN.ts @@ -790,6 +790,10 @@ Create Wallet Create Wallet + + Wallet + Wallet + Wallet Name Wallet Name diff --git a/src/qt/locale/bitcoin_my.ts b/src/qt/locale/bitcoin_my.ts index 71fd243c2..02c817ae4 100644 --- a/src/qt/locale/bitcoin_my.ts +++ b/src/qt/locale/bitcoin_my.ts @@ -25,6 +25,10 @@ Delete the currently selected address from the list လက်ရှိရွေးထားတဲ့ လိပ်စာကို ဖျက်မယ်။ + + Enter address or label to search + လိပ်စာရိုက်ထည့်ပါ + Export the data in the current tab to a file လက်ရှိ tab မှာရှိတဲ့ဒေတာတွေကို ဖိုင်လ်မှာသိမ်းမယ်။ @@ -37,9 +41,33 @@ &Delete &ဖျက် + + Choose the address to send coins to + လိပ်စာကိုပေးပို့ဖို့လိပ်စာရွေးချယ်ပါ + + + Sending addresses + လိပ်စာပေးပို့နေသည် + + + Receiving addresses + လိပ်စာလက်ခံရရှိသည် + + + Exporting Failed + တင်ပို့မှုမအောင်မြင်ပါ + AddressTableModel + + Label + တံဆိပ် + + + Address + လိပ်စာ + AskPassphraseDialog @@ -61,9 +89,29 @@ Information အချက်အလက် + + Up to date + နောက်ဆုံးပေါ် + + + Zoom + ချဲ့ + CoinControlDialog + + Date + နေ့စွဲ + + + yes + ဟုတ်တယ် + + + no + မဟုတ်ဘူး + CreateWalletActivity @@ -132,6 +180,14 @@ RecentRequestsTableModel + + Date + နေ့စွဲ + + + Label + တံဆိပ် + SendCoinsDialog @@ -150,15 +206,43 @@ TransactionDesc + + Date + နေ့စွဲ + TransactionDescDialog TransactionTableModel + + Date + နေ့စွဲ + + + Label + တံဆိပ် + TransactionView + + Date + နေ့စွဲ + + + Label + တံဆိပ် + + + Address + လိပ်စာ + + + Exporting Failed + တင်ပို့မှုမအောင်မြင်ပါ + UnitDisplayStatusBarControl diff --git a/src/qt/locale/bitcoin_nb.ts b/src/qt/locale/bitcoin_nb.ts index 07f59d3b2..38b587b40 100644 --- a/src/qt/locale/bitcoin_nb.ts +++ b/src/qt/locale/bitcoin_nb.ts @@ -39,7 +39,7 @@ &Export - &Eksport + &Eksporter &Delete @@ -84,7 +84,7 @@ Signing is only possible with addresses of the type 'legacy'. &Edit - R&ediger + &Rediger Export Address List @@ -126,19 +126,19 @@ Signing is only possible with addresses of the type 'legacy'. Enter passphrase - Oppgi passord setning + Oppgi passordfrase New passphrase - Ny passord setning + Ny passordfrase Repeat new passphrase - Repeter passorsetningen + Repeter passordfrasen Show passphrase - Vis adgangsfrase + Vis passordfrase Encrypt wallet @@ -146,7 +146,7 @@ Signing is only possible with addresses of the type 'legacy'. This operation needs your wallet passphrase to unlock the wallet. - Denne operasjonen krever passordsetningen for å låse opp lommeboken. + Denne operasjonen krever passordfrasen for å låse opp lommeboken. Unlock wallet @@ -154,7 +154,7 @@ Signing is only possible with addresses of the type 'legacy'. This operation needs your wallet passphrase to decrypt the wallet. - Denne operasjonen krever passordsetningen for å dekryptere lommeboken. + Denne operasjonen krever passordfrasen for å dekryptere lommeboken. Decrypt wallet @@ -162,7 +162,7 @@ Signing is only possible with addresses of the type 'legacy'. Change passphrase - Endre passordsetningen + Endre passordfrase Confirm wallet encryption @@ -170,7 +170,7 @@ Signing is only possible with addresses of the type 'legacy'. Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! - Advarsel: Dersom du krypterer lommeboken og mister passordsetningen vil du <b>MISTE ALLE DINE BITCOIN</b>! + Advarsel: Dersom du krypterer lommeboken og mister passordfrasen vil du <b>MISTE ALLE DINE BITCOIN</b>! Are you sure you wish to encrypt your wallet? @@ -186,7 +186,7 @@ Signing is only possible with addresses of the type 'legacy'. Enter the old passphrase and new passphrase for the wallet. - Svriv inn den gamle passfrasen og den nye passordfrasen for lommeboken. + Skriv inn den gamle passordfrasen og den nye passordfrasen for lommeboken. Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. @@ -218,7 +218,7 @@ Signing is only possible with addresses of the type 'legacy'. The supplied passphrases do not match. - De oppgitte passordsetningene er forskjellige. + De oppgitte passordfrasene er forskjellige. Wallet unlock failed @@ -226,7 +226,7 @@ Signing is only possible with addresses of the type 'legacy'. The passphrase entered for the wallet decryption was incorrect. - Passordsetningen som ble oppgitt for å dekryptere lommeboken var feil. + Passordfrasen som ble oppgitt for å dekryptere lommeboken var feil. Wallet decryption failed @@ -234,7 +234,7 @@ Signing is only possible with addresses of the type 'legacy'. Wallet passphrase was successfully changed. - Passordsetningen for lommeboken ble endret + Passordfrasen for lommeboken ble endret Warning: The Caps Lock key is on! @@ -320,7 +320,7 @@ Signing is only possible with addresses of the type 'legacy'. &Change Passphrase... - &Endre passordsetning + &Endre passordfrase... Open &URI... @@ -372,7 +372,7 @@ Signing is only possible with addresses of the type 'legacy'. Change the passphrase used for wallet encryption - Endre passordsetningen for kryptering av lommeboken + Endre passordfrasen for kryptering av lommeboken &Verify message... @@ -843,6 +843,10 @@ Signing is only possible with addresses of the type 'legacy'. Create Wallet Lag lommebok + + Wallet + Lommebok + Wallet Name Lommeboknavn @@ -855,6 +859,10 @@ Signing is only possible with addresses of the type 'legacy'. Encrypt Wallet Krypter Lommebok + + Advanced Options + Avanserte alternativer + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. Deaktiver private nøkler for denne lommeboken. Lommebøker med private nøkler er deaktivert vil ikke ha noen private nøkler og kan ikke ha en HD seed eller importerte private nøkler. Dette er ideelt for loomebøker som kun er klokker. @@ -1059,7 +1067,11 @@ Signing is only possible with addresses of the type 'legacy'. (of %n GB needed) (av %n GB som trengs)(av %n GB som trengs) - + + (%n GB needed for full chain) + (%n GB kreves for hele kjeden)(%n GB kreves for hele kjeden) + + ModalOverlay @@ -3758,6 +3770,10 @@ Gå til Fil > Åpne lommebok for å laste en lommebok. %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. %s korrupt. Prøv å bruk lommebokverktøyet bitcoin-wallet til å fikse det eller laste en backup. + + Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. + Kan ikke oppgradere en delt lommebok uten HD uten å oppgradere til støtte for forhåndsdelt tastatur. Bruk -upgradewallet = 169900 eller -upgradewallet uten versjon spesifisert. + Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) Ugyldig beløp for -maxtxfee=<amount>: '%s' (må være minst minimum relé gebyr på %s for å hindre fastlåste transaksjoner) diff --git a/src/qt/locale/bitcoin_nl.ts b/src/qt/locale/bitcoin_nl.ts index 8244c8c68..11ff0fd49 100644 --- a/src/qt/locale/bitcoin_nl.ts +++ b/src/qt/locale/bitcoin_nl.ts @@ -3,7 +3,7 @@ AddressBookPage Right-click to edit address or label - rechts klikken op adres of label te wijzigen + Rechtermuisklik om adres of label te wijzigen Create a new address @@ -844,6 +844,10 @@ Ondertekenen is alleen mogelijk met adressen van het type 'legacy'.Create Wallet Creëer wallet + + Wallet + Portemonnee + Wallet Name Wallet Naam @@ -856,6 +860,10 @@ Ondertekenen is alleen mogelijk met adressen van het type 'legacy'.Encrypt Wallet Versleutel portemonnee + + Advanced Options + Geavanceerde Opties + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. Schakel privésleutels uit voor deze portemonnee. Portommonees met privésleutels uitgeschakeld hebben deze niet en kunnen geen HD seed of geimporteerde privésleutels bevatten. diff --git a/src/qt/locale/bitcoin_pam.ts b/src/qt/locale/bitcoin_pam.ts index e747fcc5a..05ae40a44 100644 --- a/src/qt/locale/bitcoin_pam.ts +++ b/src/qt/locale/bitcoin_pam.ts @@ -382,6 +382,10 @@ CreateWalletDialog + + Wallet + Wallet + EditAddressDialog diff --git a/src/qt/locale/bitcoin_pl.ts b/src/qt/locale/bitcoin_pl.ts index 698ec73ca..76b37e962 100644 --- a/src/qt/locale/bitcoin_pl.ts +++ b/src/qt/locale/bitcoin_pl.ts @@ -7,7 +7,7 @@ Create a new address - Stwórz nowy portfel + Stwórz nowy adres &New @@ -844,6 +844,10 @@ Podpisywanie jest możliwe tylko z adresami typu „legacy”. Create Wallet Stwórz portfel + + Wallet + Portfel + Wallet Name Nazwa portfela @@ -856,6 +860,10 @@ Podpisywanie jest możliwe tylko z adresami typu „legacy”. Encrypt Wallet Zaszyfruj portfel + + Advanced Options + Opcje Zaawansowane + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. Wyłącz klucze prywatne dla tego portfela. Portfel z wyłączonymi kluczami prywatnymi nie może zawierać zaimportowanych kluczy prywatnych ani ustawionego seeda HD. Jest to idealne rozwiązanie dla portfeli śledzących (watch-only). @@ -3581,6 +3589,14 @@ Przejdź do Plik > Otwórz Portfel aby wgrać portfel. Please contribute if you find %s useful. Visit %s for further information about the software. Wspomóż proszę, jeśli uznasz %s za użyteczne. Odwiedź %s, aby uzyskać więcej informacji o tym oprogramowaniu. + + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + SQLiteDatabase: Nie udało się przygotować zapytania do pobrania identyfikatora aplikacji: %s + + + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported + SQLiteDatabase: Nieznany schemat portfela sqlite wersji %d. Obsługiwana jest tylko wersja %d + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct Baza bloków zawiera blok, który wydaje się pochodzić z przyszłości. Może to wynikać z nieprawidłowego ustawienia daty i godziny Twojego komputera. Bazę danych bloków dobuduj tylko, jeśli masz pewność, że data i godzina twojego komputera są poprawne @@ -3830,6 +3846,14 @@ Przejdź do Plik > Otwórz Portfel aby wgrać portfel. Error: Listening for incoming connections failed (listen returned error %s) Błąd: Nasłuchiwanie połączeń przychodzących nie powiodło się (nasłuch zwrócił błąd %s) + + %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. + %s jest uszkodzony. Spróbuj użyć narzędzia bitcoin-portfel, aby uratować portfel lub przywrócić kopię zapasową. + + + Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. + Nie można zaktualizować portfela rozdzielnego bez HD, bez aktualizacji obsługi podzielonej bazy kluczy. Użyj wersji 169900 lub jej nie określaj. + Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) Niewłaściwa ilość dla -maxtxfee=<ilość>: '%s' (musi wynosić przynajmniej minimalną wielkość %s aby zapobiec utknięciu transakcji) @@ -3842,6 +3866,10 @@ Przejdź do Plik > Otwórz Portfel aby wgrać portfel. This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet Ten błąd mógł wystąpić jeżeli portfel nie został poprawnie zamknięty oraz był ostatnio załadowany przy użyciu buildu z nowszą wersją Berkley DB. Jeżeli tak, proszę użyć oprogramowania które ostatnio załadowało ten portfel + + This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. + Jest to maksymalna opłata transakcyjna, którą płacisz (oprócz normalnej opłaty) za priorytetowe traktowanie unikania częściowych wydatków w stosunku do regularnego wyboru monet. + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain Musisz przebudować bazę używając parametru -reindex aby wrócić do trybu pełnego. To spowoduje ponowne pobranie całego łańcucha bloków diff --git a/src/qt/locale/bitcoin_pt.ts b/src/qt/locale/bitcoin_pt.ts index 04f69e206..d29a8bfa3 100644 --- a/src/qt/locale/bitcoin_pt.ts +++ b/src/qt/locale/bitcoin_pt.ts @@ -844,6 +844,10 @@ Assinar só é possível com endereços do tipo "legado". Create Wallet Criar Carteira + + Wallet + Carteira + Wallet Name Nome da Carteira @@ -856,6 +860,10 @@ Assinar só é possível com endereços do tipo "legado". Encrypt Wallet Encriptar Carteira + + Advanced Options + Opções avançadas + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. Desative chaves privadas para esta carteira. As carteiras com chaves privadas desativadas não terão chaves privadas e não poderão ter uma semente em HD ou chaves privadas importadas. Isso é ideal para carteiras sem movimentos. diff --git a/src/qt/locale/bitcoin_pt_BR.ts b/src/qt/locale/bitcoin_pt_BR.ts index aadbcc6a8..1c7bfc922 100644 --- a/src/qt/locale/bitcoin_pt_BR.ts +++ b/src/qt/locale/bitcoin_pt_BR.ts @@ -3,7 +3,8 @@ AddressBookPage Right-click to edit address or label - Clique com o botão direito para editar endereço ou rótulo + Botão direito para editar endereço ou rótulo + Create a new address @@ -31,7 +32,7 @@ Enter address or label to search - Procure um endereço ou rótulo + Insira um endereço ou rótulo para pesquisar Export the data in the current tab to a file @@ -47,11 +48,11 @@ Choose the address to send coins to - Escolha o endereço para enviar moedas + Escolha o endereço para enviar BitCoins Choose the address to receive coins with - Escolha o endereço para receber moedas + Escolha o endereço para receber BitCoins C&hoose @@ -67,7 +68,7 @@ These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. - Estes são os seus endereços para enviar pagamentos. Sempre cheque a quantia e o endereço do destinatário antes de enviar moedas. + Estes são os seus endereços para enviar pagamentos. Sempre cheque a quantia e o endereço do destinatário antes de enviar BitCoins. These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. @@ -211,7 +212,7 @@ Somente é possível assinar com endereços do tipo 'legado'. Wallet encryption failed - Falha ao criptografar carteira + Falha ao criptografar a carteira Wallet encryption failed due to an internal error. Your wallet was not encrypted. @@ -844,6 +845,10 @@ Somente é possível assinar com endereços do tipo 'legado'. Create Wallet Criar Carteira + + Wallet + Carteira + Wallet Name Nome da Carteira @@ -856,6 +861,10 @@ Somente é possível assinar com endereços do tipo 'legado'. Encrypt Wallet Criptografar Carteira + + Advanced Options + Opções Avançadas + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. Desabilitar chaves privadas para esta carteira. Carteiras com chaves privadas desabilitadas não terão chaves privadas e não podem receber importação de palavras "seed" HD ou importação de chaves privadas. Isso é ideal para carteiras apenas de consulta. @@ -1117,7 +1126,7 @@ Somente é possível assinar com endereços do tipo 'legado'. %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. - %1 esta sincronizando. irá baixar e validar uma cópia dos Cabeçalhos e Blocos dos Pares até que alcance o final do block chain. + %1 esta sincronizando. Os cabeçalhos e blocos serão baixados dos nós e validados até que alcance o final do block chain. Unknown. Syncing Headers (%1, %2%)... @@ -1306,7 +1315,7 @@ Somente é possível assinar com endereços do tipo 'legado'. Used for reaching peers via: - Usado para alcançar pares via: + Usado para alcançar nós via: IPv4 @@ -1366,7 +1375,7 @@ Somente é possível assinar com endereços do tipo 'legado'. Use separate SOCKS&5 proxy to reach peers via Tor onion services: - Use um proxy SOCKS&5 separado para alcançar pares via serviços Tor onion: + Use um proxy SOCKS&5 separado para alcançar os nós via serviços Tor: &Third party transaction URLs @@ -1871,7 +1880,7 @@ Somente é possível assinar com endereços do tipo 'legado'. Blocksdir - Blocksdir + Pasta dos blocos To specify a non-default location of the blocks directory use the '%1' option. @@ -1931,7 +1940,7 @@ Somente é possível assinar com endereços do tipo 'legado'. &Peers - &Pares + &Nós Banned peers @@ -1963,7 +1972,7 @@ Somente é possível assinar com endereços do tipo 'legado'. The mapped Autonomous System used for diversifying peer selection. - O sistema autônomo delineado usado para a diversificação da seleção de pares. + O sistema autônomo delineado usado para a diversificação de seleção de nós. Mapped AS @@ -3623,7 +3632,7 @@ Go to File > Open Wallet to load a wallet. Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. - Atenção: Nós não parecemos concordar plenamente com nossos pares! Você pode precisar atualizar ou outros pares podem precisar atualizar. + Atenção: Nós não parecemos concordar plenamente com nossos nós! Você pode precisar atualizar ou outros nós podem precisar atualizar. -maxmempool must be at least %d MB @@ -3763,8 +3772,7 @@ Go to File > Open Wallet to load a wallet. Specified blocks directory "%s" does not exist. - -Diretório de blocos especificados "%s" não existe. + Diretório de blocos especificado "%s" não existe. Unknown address type '%s' @@ -3844,7 +3852,7 @@ Diretório de blocos especificados "%s" não existe. Error: Listening for incoming connections failed (listen returned error %s) - Erro: Escutar conexões de entrada falhou (vincular retornou erro %s) + Erro: A escuta de conexões de entrada falhou (vincular retornou erro %s) %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. @@ -3888,7 +3896,7 @@ Diretório de blocos especificados "%s" não existe. Disk space is too low! - Espaço em disco muito baixo! + Espaço em disco insuficiente! Error reading from database, shutting down. @@ -4018,7 +4026,7 @@ Diretório de blocos especificados "%s" não existe. Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments. - O tamanho total da string de versão da rede (%i) excede o tamanho máximo (%i). Reduza o número ou tamanho de uacomments. + O tamanho total da string de versão da rede (%i) excede o tamanho máximo (%i). Reduza o número ou o tamanho dos comentários. %s is set very high! @@ -4034,7 +4042,7 @@ Diretório de blocos especificados "%s" não existe. This is the minimum transaction fee you pay on every transaction. - Esta é a taxa mínima que você paga em todas as transação. + Esta é a taxa mínima que você paga em todas as transações. This is the transaction fee you will pay if you send a transaction. @@ -4070,7 +4078,7 @@ Diretório de blocos especificados "%s" não existe. Cannot write to data directory '%s'; check permissions. - Não foi possível escrever no diretório de dados '%s': verifique as permissões. + Não foi possível escrever no diretório '%s': verifique as permissões. Loading block index... diff --git a/src/qt/locale/bitcoin_ro.ts b/src/qt/locale/bitcoin_ro.ts index 6b7a342f3..b174a9e92 100644 --- a/src/qt/locale/bitcoin_ro.ts +++ b/src/qt/locale/bitcoin_ro.ts @@ -69,6 +69,12 @@ These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. Acestea sunt adresele tale Bitcoin pentru efectuarea platilor. Intotdeauna verifica atent suma de plata si adresa beneficiarului inainte de a trimite monede. + + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + Acestea sunt adresele Bitcoin pentru primirea plăților. Folosiți butonul " Creați o nouă adresă de primire" din fila de primire pentru a crea noi adrese. +Semnarea este posibilă numai cu adrese de tip "legacy". + &Copy Address &Copiază Adresa @@ -478,6 +484,22 @@ Up to date Actualizat + + &Load PSBT from file... + &Încarcă PSBT din fișier... + + + Load Partially Signed Bitcoin Transaction + Încărcați Tranzacția Bitcoin Parțial Semnată + + + Load PSBT from clipboard... + Încărcați PSBT din clipboard... + + + Load Partially Signed Bitcoin Transaction from clipboard + Încărcați Tranzacția Bitcoin Parțial Semnată din clipboard + Node window Fereastra nodului @@ -514,10 +536,26 @@ Close wallet Inchide portofel + + Close All Wallets... + Inchide Portofelele + + + Close all wallets + Închideți toate portofelele + Show the %1 help message to get a list with possible Bitcoin command-line options Arată mesajul de ajutor %1 pentru a obţine o listă cu opţiunile posibile de linii de comandă Bitcoin + + &Mask values + &Valorile măștii + + + Mask the values in the Overview tab + Mascați valorile din fila Prezentare generală + default wallet portofel implicit @@ -626,7 +664,15 @@ Wallet is <b>encrypted</b> and currently <b>locked</b> Portofelul este <b>criptat</b> iar în momentul de faţă este <b>blocat</b> - + + Original message: + Mesajul original: + + + A fatal error occurred. %1 can no longer continue safely and will quit. + A apărut o eroare fatală.%1 nu mai poate continua în siguranță și va ieși din program. + + CoinControlDialog @@ -799,6 +845,10 @@ Create Wallet Crează portofel + + Wallet + Portofel + Wallet Name Numele portofelului @@ -811,6 +861,10 @@ Encrypt Wallet Criptează portofelul. + + Advanced Options + Optiuni Avansate + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. Dezactivează cheile private pentru acest portofel. Portofelele cu cheile private dezactivate nu vor avea chei private şi nu vor putea avea samanţă HD sau chei private importate. Ideal pentru portofele marcate doar pentru citire. @@ -827,11 +881,23 @@ Make Blank Wallet Faceți Portofel gol + + Use descriptors for scriptPubKey management + Utilizați descriptori pentru gestionarea scriptPubKey + + + Descriptor Wallet + Descriptor Portofel + Create Creează - + + Compiled without sqlite support (required for descriptor wallets) + Compilat fără suport sqlite (necesar pentru portofele descriptor) + + EditAddressDialog @@ -943,6 +1009,10 @@ When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. Cand apasati OK, %1 va incepe descarcarea si procesarea intregului %4 blockchain (%2GB) incepand cu cele mai vechi tranzactii din %3 de la lansarea initiala a %4. + + Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. + Revenirea la această setare necesită re-descărcarea întregului blockchain. Este mai rapid să descărcați mai întâi rețeaua complet și să o fragmentați mai târziu. Dezactivează unele funcții avansate. + This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. Sincronizarea initiala necesita foarte multe resurse, si poate releva probleme de hardware ale computerului care anterior au trecut neobservate. De fiecare data cand rulati %1, descarcarea va continua de unde a fost intrerupta. @@ -1042,6 +1112,10 @@ Hide Ascunde + + Esc + Iesire + OpenURIDialog @@ -1401,6 +1475,14 @@ PSBTOperationsDialog + + Save... + Salveaza + + + Close + Inchide + Total Amount Suma totală @@ -1562,6 +1644,10 @@ Error: %1 Eroare: %1 + + Error initializing settings: %1 + Eroare de inițializare a setărilor: %1 + %1 didn't yet exit safely... %1 nu a fost inchis in siguranta... @@ -3006,6 +3092,10 @@ Nota: Cum taxa este calculata per byte, o taxa de "100 satoshi per kB" pentru o Close wallet Inchide portofel + + Close all wallets + Închideți toate portofelele + WalletFrame diff --git a/src/qt/locale/bitcoin_ru.ts b/src/qt/locale/bitcoin_ru.ts index 2b7cb995a..f5ceb5108 100644 --- a/src/qt/locale/bitcoin_ru.ts +++ b/src/qt/locale/bitcoin_ru.ts @@ -15,7 +15,7 @@ Copy the currently selected address to the system clipboard - Копировать текущий выделенный адрес в буфер обмена + Копировать выделенный сейчас адрес в буфер обмена &Copy @@ -27,7 +27,7 @@ Delete the currently selected address from the list - Удалить текущий выбранный адрес из списка + Удалить выделенный сейчас адрес из списка Enter address or label to search @@ -67,12 +67,12 @@ These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. - Это ваши Биткойн-адреса для отправки платежей. Всегда проверяйте количество и адрес получателя перед отправкой перевода. + Это ваши биткоин-адреса для отправки платежей. Всегда проверяйте сумму и адрес получателя перед отправкой перевода. These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. Signing is only possible with addresses of the type 'legacy'. - Это ваши Биткойн адреса для получения платежей. Используйте кнопку «Создать новый адрес для получения» на вкладке Получить, чтобы создать новые адреса. + Это ваши биткоин-адреса для получения платежей. Используйте кнопку «Создать новый адрес для получения» на вкладке Получить, чтобы создать новые адреса. Подписание возможно только с адресами типа "legacy". @@ -123,31 +123,31 @@ Signing is only possible with addresses of the type 'legacy'. AskPassphraseDialog Passphrase Dialog - Пароль + Парольная фраза Enter passphrase - Введите пароль + Введите парольную фразу New passphrase - Новый пароль + Новая парольная фраза Repeat new passphrase - Повторите новый пароль + Повторите новую парольную фразу Show passphrase - Показать пароль + Показать парольную фразу Encrypt wallet - Зашифровать электронный кошелёк + Зашифровать кошелёк This operation needs your wallet passphrase to unlock the wallet. - Для выполнения операции требуется пароль от вашего кошелька. + Для выполнения операции нужно расшифровать ваш кошелёк при помощи парольной фразы. Unlock wallet @@ -155,7 +155,7 @@ Signing is only possible with addresses of the type 'legacy'. This operation needs your wallet passphrase to decrypt the wallet. - Данная операция требует введения пароля для расшифровки вашего кошелька. + Для выполнения операции нужно расшифровать ваш кошелёк при помощи парольной фразы. Decrypt wallet @@ -163,7 +163,7 @@ Signing is only possible with addresses of the type 'legacy'. Change passphrase - Изменить пароль + Изменить парольную фразу Confirm wallet encryption @@ -171,7 +171,7 @@ Signing is only possible with addresses of the type 'legacy'. Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! - Предупреждение: Если вы зашифруете кошелёк и потеряете пароль, вы <b>ПОТЕРЯЕТЕ ВСЕ ВАШИ БИТКОЙНЫ</b>! + Предупреждение: если вы зашифруете кошелёк и потеряете парольную фразу, вы <b>ПОТЕРЯЕТЕ ВСЕ ВАШИ БИТКОИНЫ</b>! Are you sure you wish to encrypt your wallet? @@ -183,15 +183,15 @@ Signing is only possible with addresses of the type 'legacy'. Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. - Введите новый пароль для кошелька.<br/>Используйте пароль, состоящий из <b>десяти или более случайных символов</b> или <b>восьми или более слов</b>. + Введите новую парольную фразу для кошелька.<br/>Используйте парольную фразу из <b>десяти или более случайных символов</b> или <b>восьми или более слов</b>. Enter the old passphrase and new passphrase for the wallet. - Введите старый и новый пароль для кошелька. + Введите старую и новую парольную фразу для кошелька. Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. - Помните, что шифрование вашего кошелька не может полностью защитить ваши биткойны от кражи вредоносными программами, заражающими ваш компьютер. + Помните, что шифрование кошелька не может полностью защитить ваши биткоины от кражи вредоносными программами, заражающими ваш компьютер. Wallet to be encrypted @@ -207,7 +207,7 @@ Signing is only possible with addresses of the type 'legacy'. IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. - ВАЖНО: любые предыдущие резервные копия вашего кошелька, выполненные вами, необходимо заменить новым сгенерированным, зашифрованным файлом кошелька. В целях безопасности предыдущие резервные копии незашифрованного файла кошелька утратят пригодность после начала использования нового зашифрованного кошелька. + ВАЖНО: любые резервные копии вашего кошелька, которые вы делали ранее, необходимо заменить файлом с зашифрованным кошельком, который только что был сгенерирован. В целях безопасности предыдущие резервные копии незашифрованного кошелька станут непригодными для использования после того, как вы начнёте использовать новый, зашифрованный кошелёк. Wallet encryption failed @@ -219,7 +219,7 @@ Signing is only possible with addresses of the type 'legacy'. The supplied passphrases do not match. - Введённые пароли не совпадают. + Введённые парольные фразы не совпадают. Wallet unlock failed @@ -227,7 +227,7 @@ Signing is only possible with addresses of the type 'legacy'. The passphrase entered for the wallet decryption was incorrect. - Пароль, введенный при шифровании кошелька, некорректен. + Парольная фраза, введённая для расшифровки кошелька, неверна. Wallet decryption failed @@ -235,7 +235,7 @@ Signing is only possible with addresses of the type 'legacy'. Wallet passphrase was successfully changed. - Пароль кошелька успешно изменён. + Парольная фраза кошелька успешно изменена. Warning: The Caps Lock key is on! @@ -246,11 +246,11 @@ Signing is only possible with addresses of the type 'legacy'. BanTableModel IP/Netmask - IP/Маска подсети + IP/маска подсети Banned Until - Заблокировано до + Забанен до @@ -289,7 +289,7 @@ Signing is only possible with addresses of the type 'legacy'. &About %1 - &О %1 + &О программе %1 Show information about %1 @@ -305,7 +305,7 @@ Signing is only possible with addresses of the type 'legacy'. &Options... - &Параметры + &Параметры... Modify configuration options for %1 @@ -317,11 +317,11 @@ Signing is only possible with addresses of the type 'legacy'. &Backup Wallet... - &Резервная копия кошелька... + &Создать резервную копию кошелька... &Change Passphrase... - &Изменить пароль... + &Изменить парольную фразу... Open &URI... @@ -361,19 +361,19 @@ Signing is only possible with addresses of the type 'legacy'. Proxy is <b>enabled</b>: %1 - Прокси <b>включен</b>: %1 + Прокси <b>включён</b>: %1 Send coins to a Bitcoin address - Послать средства на Биткойн-адрес + Отправить средства на биткоин-адрес Backup wallet to another location - Выполнить резервное копирование кошелька в другом месте расположения + Создать резервную копию кошелька в другом расположении Change the passphrase used for wallet encryption - Изменить пароль, используемый для шифрования кошелька + Изменить парольную фразу, используемую для шифрования кошелька &Verify message... @@ -401,11 +401,11 @@ Signing is only possible with addresses of the type 'legacy'. Sign messages with your Bitcoin addresses to prove you own them - Подписывайте сообщения Биткойн-адресами, чтобы подтвердить, что это написали именно вы + Подписывайте сообщения вашими биткоин-адресами, чтобы доказать, что вы ими владеете Verify messages to ensure they were signed with specified Bitcoin addresses - Проверяйте сообщения, чтобы убедиться, что они подписаны конкретными Биткойн-адресами + Проверяйте сообщения, чтобы убедиться, что они подписаны конкретными биткоин-адресами &File @@ -425,31 +425,31 @@ Signing is only possible with addresses of the type 'legacy'. Request payments (generates QR codes and bitcoin: URIs) - Запросить платеж + Запросить платёж (генерирует QR-коды и URI протокола bitcoin:) Show the list of used sending addresses and labels - Показать список использованных адресов и меток получателей + Показать список адресов, на которые были отправлены средства, и их меток Show the list of used receiving addresses and labels - Показать список использованных адресов и меток получателей + Показать список адресов, на которые были получены средства, и их меток &Command-line options - Опции командной строки + Параметры командной строки %n active connection(s) to Bitcoin network - %n активное подключение к сети Bitcoin%n активных подключения к сети Bitcoin%n активных подключений к сети Bitcoin%n активных подключений к сети Биткойн + %n активное подключение к сети Bitcoin%n активных подключения к сети Bitcoin%n активных подключений к сети Bitcoin%n активных подключений к сети биткоина Indexing blocks on disk... - Выполняется индексирование блоков на диске... + Индексация блоков на диске... Processing blocks on disk... - Выполняется обработка блоков на диске... + Обработка блоков на диске... Processed %n block(s) of transaction history. @@ -457,7 +457,7 @@ Signing is only possible with addresses of the type 'legacy'. %1 behind - Выполнено %1 + Отстаём на %1 Last received block was generated %1 ago. @@ -465,7 +465,7 @@ Signing is only possible with addresses of the type 'legacy'. Transactions after this will not yet be visible. - После этого транзакции больше не будут видны. + Транзакции, отправленные позднее, пока не будут видны. Error @@ -481,7 +481,7 @@ Signing is only possible with addresses of the type 'legacy'. Up to date - Готов + Синхронизировано &Load PSBT from file... @@ -489,7 +489,7 @@ Signing is only possible with addresses of the type 'legacy'. Load Partially Signed Bitcoin Transaction - Загрузить Частично Подписанные Биткойн Транзакции (PSBT) + Загрузить частично подписанные биткоин-транзакции (PSBT) Load PSBT from clipboard... @@ -497,7 +497,7 @@ Signing is only possible with addresses of the type 'legacy'. Load Partially Signed Bitcoin Transaction from clipboard - Загрузить Частично Подписанную Транзакцию из буфера обмена + Загрузить частично подписанную биткоин-транзакцию из буфера обмена Node window @@ -509,19 +509,19 @@ Signing is only possible with addresses of the type 'legacy'. &Sending addresses - &Адреса для отправлений + &Адреса для отправки &Receiving addresses - &Адреса для получений + &Адреса для получения Open a bitcoin: URI - Открыть биткойн: URI + Открыть URI протокола bitcoin: Open Wallet - Открыть Кошелёк + Открыть кошелёк Open a wallet @@ -529,7 +529,7 @@ Signing is only possible with addresses of the type 'legacy'. Close Wallet... - Закрыть Кошелёк... + Закрыть кошелёк... Close wallet @@ -573,11 +573,11 @@ Signing is only possible with addresses of the type 'legacy'. Zoom - Увеличение + Масштаб Main Window - Главное Окно + Главное окно %1 client @@ -608,7 +608,7 @@ Signing is only possible with addresses of the type 'legacy'. Amount: %1 - Объем: %1 + Сумма: %1 @@ -645,15 +645,15 @@ Signing is only possible with addresses of the type 'legacy'. HD key generation is <b>enabled</b> - Генерация HD ключа <b>включена</b> + HD-генерация ключей <b>включена</b> HD key generation is <b>disabled</b> - Генерация HD ключа <b>выключена</b> + HD-генерация ключей <b>выключена</b> Private key <b>disabled</b> - Приватный ключ <b>отключен</b> + Приватный ключ <b>отключён</b> Wallet is <b>encrypted</b> and currently <b>unlocked</b> @@ -677,7 +677,7 @@ Signing is only possible with addresses of the type 'legacy'. CoinControlDialog Coin Selection - Выбор коинов + Выбор монет Quantity: @@ -689,7 +689,7 @@ Signing is only possible with addresses of the type 'legacy'. Amount: - Количество: + Сумма: Fee: @@ -737,11 +737,11 @@ Signing is only possible with addresses of the type 'legacy'. Confirmations - Подтверждения + Подтверждений Confirmed - Подтвержденные + Подтверждено Copy address @@ -757,15 +757,15 @@ Signing is only possible with addresses of the type 'legacy'. Copy transaction ID - Копировать ID транзакции + Копировать идентификатор транзакции Lock unspent - Заблокировать непотраченное + Заблокировать остаток Unlock unspent - Разблокировать непотраченное + Разблокировать остаток Copy quantity @@ -773,11 +773,11 @@ Signing is only possible with addresses of the type 'legacy'. Copy fee - Скопировать комиссию + Копировать комиссию Copy after fee - Скопировать после комиссии + Копировать сумму после комиссии Copy bytes @@ -805,11 +805,11 @@ Signing is only possible with addresses of the type 'legacy'. This label turns red if any recipient receives an amount smaller than the current dust threshold. - Эта метка становится красной, если получатель получит меньшую сумму, чем текущий порог пыли. + Эта метка становится красной, если получатель получит сумму меньше, чем текущий порог пыли. Can vary +/- %1 satoshi(s) per input. - Может меняться +/- %1 сатоши(ей) за вход. + Может меняться +/- %1 сатоши за вход. (no label) @@ -817,7 +817,7 @@ Signing is only possible with addresses of the type 'legacy'. change from %1 (%2) - изменить с %1 (%2) + сдача с %1 (%2) (change) @@ -845,21 +845,29 @@ Signing is only possible with addresses of the type 'legacy'. Create Wallet Создать кошелёк + + Wallet + Кошелёк + Wallet Name Название кошелька Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. - Зашифровать кошелёк. Кошелёк будет зашифрован паролем на ваш выбор. + Зашифровать кошелёк. Кошелёк будет зашифрован при помощи выбранной вами парольной фразы. Encrypt Wallet Зашифровать кошелёк + + Advanced Options + Дополнительные опции + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. - Отключить приватные ключи для этого кошелька. Кошельки с отключенными приватными ключами не будут иметь приватных ключей и HD мастер-ключа или импортированных приватных ключей. Это подходит только кошелькам для часов. + Отключить приватные ключи для этого кошелька. В кошельках с отключёнными приватными ключами не сохраняются приватные ключи, в них нельзя создать HD мастер-ключ или импортировать приватные ключи. Это удобно для наблюдающих кошельков. Disable Private Keys @@ -867,7 +875,7 @@ Signing is only possible with addresses of the type 'legacy'. Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. - Сделать пустой кошелёк. Чистые кошельки изначально не имеют приватных ключей или скриптов. Позже можно импортировать приватные ключи и адреса или установить HD мастер-ключ. + Создать пустой кошелёк. В пустых кошельках изначально нет приватных ключей или скриптов. Позднее можно импортировать приватные ключи и адреса, либо установить HD мастер-ключ. Make Blank Wallet @@ -902,11 +910,11 @@ Signing is only possible with addresses of the type 'legacy'. The label associated with this address list entry - Метка, связанная с этим списком адресов + Метка, связанная с этой записью в адресной книге The address associated with this address list entry. This can only be modified for sending addresses. - Адрес, связанный с этой записью списка адресов. Он может быть изменён только для адресов отправки. + Адрес, связанный с этой записью адресной книги. Он может быть изменён только для адресов отправки. &Address @@ -926,7 +934,7 @@ Signing is only possible with addresses of the type 'legacy'. The entered address "%1" is not a valid Bitcoin address. - Введенный адрес "%1" не является действительным Биткойн-адресом. + Введенный адрес "%1" не является действительным биткоин-адресом. Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address. @@ -957,11 +965,11 @@ Signing is only possible with addresses of the type 'legacy'. Directory already exists. Add %1 if you intend to create a new directory here. - Каталог уже существует. Добавьте %1, если хотите создать новую директорию здесь. + Директория уже существует. Добавьте %1, если хотите создать здесь новую директорию. Path already exists, and is not a directory. - Данный путь уже существует и это не каталог. + Данный путь уже существует, и это не директория. Cannot create data directory here. @@ -980,7 +988,7 @@ Signing is only possible with addresses of the type 'legacy'. Command-line options - Опции командной строки + Параметры командной строки @@ -995,23 +1003,23 @@ Signing is only possible with addresses of the type 'legacy'. As this is the first time the program is launched, you can choose where %1 will store its data. - Поскольку программа запущена впервые, вы должны указать где %1 будет хранить данные. + Поскольку программа запущена впервые, вы можете выбрать, где %1 будет хранить свои данные. When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. - Когда вы нажмете ОК, %1 начнет загружать и обрабатывать полную цепочку блоков %4 (%2ГБ), начиная с самых ранних транзакций в %3, когда %4 был первоначально запущен. + Когда вы нажмёте ОК, %1 начнет скачивать и обрабатывать полную цепочку блоков %4а (%2 ГБ), начиная с самых первых транзакций в %3, когда %4 был изначально запущен. Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. - Восстановление этого параметра в последствии требует повторной загрузки всей цепочки блоков. Быстрее будет сначала скачать полную цепочку, а потом - обрезать. Это также отключает некоторые расширенные функции. + Возврат этого параметра в прежнее положение потребует повторного скачивания всей цепочки блоков. Быстрее будет сначала скачать полную цепочку, а потом - обрезать. Отключает некоторые расширенные функции. This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. - Первоначальная синхронизация очень сложна и может выявить проблемы с оборудованием вашего компьютера, которые ранее оставались незамеченными. Каждый раз, когда вы запускаете %1, будет продолжена загрузка с места остановки. + Эта начальная синхронизация очень требовательна к ресурсам и может выявить проблемы с оборудованием вашего компьютера, которые ранее оставались незамеченными. Каждый раз, когда вы запускаете %1, скачивание будет продолжено с места остановки. If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. - Если вы указали сокращать объём хранимого блокчейна (pruning), все исторические данные все равно должны быть скачаны и обработаны, но впоследствии они будут удалены для экономии места на диске. + Если вы решили ограничить объём хранимого блокчейна (обрезка), все исторические данные всё равно необходимо скачать и обработать, но впоследствии они будут удалены для экономии места на диске. Use the default data directory @@ -1023,23 +1031,23 @@ Signing is only possible with addresses of the type 'legacy'. Bitcoin - Bitcoin Core + биткоин Discard blocks after verification, except most recent %1 GB (prune) - Отменить блоки после проверки, кроме самых последних %1 ГБ (обрезать) + Не сохранять блоки после проверки, кроме самых последних %1 ГБ (обрезать) At least %1 GB of data will be stored in this directory, and it will grow over time. - Как минимум %1 ГБ данных будет сохранен в эту директорию. Со временем размер будет увеличиваться. + В эту директорию будет сохранено не менее %1 ГБ данных, и со временем их объём будет увеличиваться. Approximately %1 GB of data will be stored in this directory. - Приблизительно %1 ГБ данных будет сохранено в эту директорию. + В эту директорию будет сохранено приблизительно %1 ГБ данных. %1 will download and store a copy of the Bitcoin block chain. - %1 скачает и сохранит копию цепи блоков. + %1 скачает и сохранит копию цепочки блоков биткоина. The wallet will also be stored in this directory. @@ -1055,15 +1063,15 @@ Signing is only possible with addresses of the type 'legacy'. %n GB of free space available - %n ГБ свободного места%n ГБ свободного места%n ГБ свободного места%n ГБ свободного места + %n ГБ свободного места%n ГБ свободного места%n ГБ свободного местаДоступно %n ГБ свободного места (of %n GB needed) - (требуется %n ГБ)(%n ГБ требуется)(%n ГБ требуется)(%n ГБ требуется) + (требуется %n ГБ)(%n ГБ требуется)(%n ГБ требуется)(из требуемых %n ГБ) (%n GB needed for full chain) - (%n ГБ необходимо для полного блокчейна)(%n ГБ необходимо для полного блокчейна)(%n ГБ необходимо для полного блокчейна)(%n ГБ необходимо для полного блокчейна) + (%n ГБ необходимо для полного блокчейна)(%n ГБ необходимо для полного блокчейна)(%n ГБ необходимо для полного блокчейна)(необходимо %n ГБ для полной цепочки блоков) @@ -1074,11 +1082,11 @@ Signing is only possible with addresses of the type 'legacy'. Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. - Последние транзакции пока могут быть не видны, поэтому вы можете видеть некорректный баланс ваших кошельков. Отображаемая информация будет верна после завершения синхронизации. Прогресс синхронизации вы можете видеть ниже. + Недавние транзакции могут быть пока не видны, и поэтому отображаемый баланс вашего кошелька может быть неверным. Информация станет верной после завершения синхронизации с сетью биткоина, прогресс которой вы можете видеть ниже. Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network. - Попытка потратить средства, использованные в транзакциях, которые ещё не синхронизированы, будет отклонена сетью. + Попытка потратить средства, затронутые не видными пока транзакциями, будет отклонена сетью. Number of blocks left @@ -1098,15 +1106,15 @@ Signing is only possible with addresses of the type 'legacy'. Progress increase per hour - Прогресс за час + Прирост прогресса за час calculating... - выполняется вычисление... + вычисляется... Estimated time left until synced - Расчетное время, оставшееся до синхронизации + Расчётное время до завершения синхронизации Hide @@ -1118,18 +1126,18 @@ Signing is only possible with addresses of the type 'legacy'. %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. - %1 синхронизировано. Заголовки и блоки будут скачиваться с узлов сети и проверяться до тех пор пока не будет достигнут конец цепи блоков. + %1 в настоящий момент синхронизируется. Заголовки и блоки будут скачиваться с узлов сети и проверяться до тех пор, пока не будет достигнут конец цепочки блоков. Unknown. Syncing Headers (%1, %2%)... - Неизвестно. Синхронизация заголовков (%1, %2%)... + Неизвестно. Синхронизируются заголовки (%1, %2%)... OpenURIDialog Open bitcoin URI - Открыть URI биткойна + Открыть URI биткоина URI: @@ -1144,26 +1152,26 @@ Signing is only possible with addresses of the type 'legacy'. Open wallet warning - Кошелёк открыт + Внимание: кошелёк открыт default wallet - Кошелёк по умолчанию + кошелёк по умолчанию Opening Wallet <b>%1</b>... - Кошелёк открывается <b>%1</b>... + Открывается кошелёк <b>%1</b>... OptionsDialog Options - Опции + Параметры &Main - &Главный + &Главные Automatically start %1 after logging in to the system. @@ -1179,7 +1187,7 @@ Signing is only possible with addresses of the type 'legacy'. Number of script &verification threads - Количество потоков для проверки скрипта + Количество потоков для &проверки скрипта IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1) @@ -1191,23 +1199,23 @@ Signing is only possible with addresses of the type 'legacy'. Hide the icon from the system tray. - Убрать значок с области уведомлений. + Убрать значок из области уведомлений. &Hide tray icon - &Скрыть иконку из трея + &Скрыть иконку в области уведомлений Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu. - Сворачивать вместо закрытия. Если данная опция будет выбрана — приложение закроется только после выбора соответствующего пункта в меню. + Сворачивать вместо выхода из приложения при закрытии окна. Если данный параметр включён — приложение закроется только после нажатия "Выход" в меню. Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. - Сторонние URL-адреса (например, обозреватель блоков), которые отображаются на вкладке транзакции как элементы контекстного меню. %s в URL заменяется хэшем транзакции. Несколько URL-адресов разделены вертикальной чертой |. + Сторонние URL-адреса (например, обозреватель блоков), которые будут показаны на вкладке транзакций как элементы контекстного меню. %s в URL будет заменён на хэш транзакции. Несколько URL-адресов разделяются вертикальной чертой |. Open the %1 configuration file from the working directory. - Откройте файл конфигурации %1 из рабочего каталога. + Открывает файл конфигурации %1 из рабочей директории. Open Configuration File @@ -1215,7 +1223,7 @@ Signing is only possible with addresses of the type 'legacy'. Reset all client options to default. - Сбросить все опции клиента к значениям по умолчанию. + Сбросить все параметры клиента к значениям по умолчанию. &Reset Options @@ -1227,11 +1235,11 @@ Signing is only possible with addresses of the type 'legacy'. Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. - Отключает некоторые дополнительные функции, но все блоки по-прежнему будут полностью проверены. Для возврата к этому параметру необходимо повторно загрузить весь блокчейн. Фактическое использование диска может быть несколько больше. + Отключает некоторые дополнительные функции, но все блоки по-прежнему будут полностью проверены. Возврат этого параметра в прежнее значение потребует повторного скачивания всей цепочки блоков. Фактическое использование диска может быть несколько больше. Prune &block storage to - Сокращать объём хранимого блокчейна до + Обрезать объём хранимых блоков до GB @@ -1239,7 +1247,7 @@ Signing is only possible with addresses of the type 'legacy'. Reverting this setting requires re-downloading the entire blockchain. - Отмена этой настройки требует повторного скачивания всего блокчейна. + Возврат этой настройки в прежнее значение требует повторного скачивания всей цепочки блоков. MiB @@ -1247,15 +1255,15 @@ Signing is only possible with addresses of the type 'legacy'. (0 = auto, <0 = leave that many cores free) - (0=авто, <0 = оставить столько ядер свободными) + (0 = автоматически, <0 = оставить столько ядер свободными) W&allet - К&ошелёк + &Кошелёк Expert - Эксперт + Экспертные настройки Enable coin &control features @@ -1263,15 +1271,15 @@ Signing is only possible with addresses of the type 'legacy'. If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed. - При отключении траты неподтверждённой сдачи сдача от транзакции не может быть использована до тех пор пока у этой транзакции не будет хотя бы одно подтверждение. Это также влияет как ваш баланс рассчитывается. + Если вы отключите трату неподтверждённой сдачи, сдачу от транзакции нельзя будет использвать до тех пор, пока у этой транзакции не будет хотя бы одного подтверждения. Это также влияет на расчёт вашего баланса. &Spend unconfirmed change - &Тратить неподтвержденную сдачу + &Тратить неподтверждённую сдачу Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled. - Автоматически открыть порт для Биткойн-клиента на маршрутизаторе. Работает, если ваш маршрутизатор поддерживает UPnP, и данная функция включена. + Автоматически открыть порт биткоин-клиента на маршрутизаторе. Работает, если ваш маршрутизатор поддерживает UPnP, и данная функция включена. Map port using &UPnP @@ -1283,15 +1291,15 @@ Signing is only possible with addresses of the type 'legacy'. Allow incomin&g connections - Разрешить входящие подключения + Разрешить входящие соединения Connect to the Bitcoin network through a SOCKS5 proxy. - Подключиться к сети Биткойн через прокси SOCKS5. + Подключиться к сети биткоина через прокси SOCKS5. &Connect through SOCKS5 proxy (default proxy): - &Выполнить подключение через прокси SOCKS5 (прокси по умолчанию): + &Подключаться через прокси SOCKS5 (прокси по умолчанию): Proxy &IP: @@ -1331,15 +1339,15 @@ Signing is only possible with addresses of the type 'legacy'. &Minimize to the tray instead of the taskbar - &Сворачивать в системный лоток вместо панели задач + &Сворачивать в область уведомлений вместо панели задач M&inimize on close - С&вернуть при закрытии + С&ворачивать при закрытии &Display - &Отображение + &Внешний вид User Interface &language: @@ -1355,15 +1363,15 @@ Signing is only possible with addresses of the type 'legacy'. Choose the default subdivision unit to show in the interface and when sending coins. - Выберите единицу измерения монет при отображении и отправке. + Выберите единицу измерения, которая будет показана по умолчанию в интерфейсе и при отправке монет. Whether to show coin control features or not. - Показывать ли опцию управления монетами. + Показывать ли параметры управления монетами. Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. - Подключаться к Биткойн-сети через отдельный прокси SOCKS5 для скрытых сервисов Tor. + Подключаться к сети биткоина через отдельный прокси SOCKS5 для скрытых сервисов Tor. Use separate SOCKS&5 proxy to reach peers via Tor onion services: @@ -1371,11 +1379,11 @@ Signing is only possible with addresses of the type 'legacy'. &Third party transaction URLs - &Ссылки на транзакции сторонних сервисов + &URL транзакций на сторонних сервисах Options set in this dialog are overridden by the command line or in the configuration file: - Параметры, установленные в этом диалоговом окне, переопределяются командной строкой или в файле конфигурации: + Параметры, установленные в этом диалоговом окне, были переопределены командной строкой или в файле конфигурации: &OK @@ -1383,7 +1391,7 @@ Signing is only possible with addresses of the type 'legacy'. &Cancel - &Отмена + О&тмена default @@ -1403,15 +1411,15 @@ Signing is only possible with addresses of the type 'legacy'. Client will be shut down. Do you want to proceed? - Клиент будет закрыт. Продолжить далее? + Клиент будет закрыт. Продолжить? Configuration options - Опции конфигурации + Параметтры конфигурации The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file. - Файл конфигурации используется для указания расширенных пользовательских параметров, которые переопределяют настройки графического интерфейса. Кроме того, любые параметры командной строки будут переопределять этот файл конфигурации. + Файл конфигурации используется для указания расширенных пользовательских параметров, которые будут иметь приоритет над настройками в графическом интерфейсе. Параметры командной строки имеют приоритет над файлом конфигурации. Error @@ -1438,11 +1446,11 @@ Signing is only possible with addresses of the type 'legacy'. The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. - Отображаемая информация может быть устаревшей. Ваш кошелёк автоматически синхронизируется с сетью Биткойн после подключения, но этот процесс пока не завершён. + Показанная информация может быть устаревшей. Ваш кошелёк автоматически синхронизируется с сетью биткоина после подключения, но этот процесс пока не завершён. Watch-only: - Только просмотр: + Только наблюдение: Available: @@ -1450,7 +1458,7 @@ Signing is only possible with addresses of the type 'legacy'. Your current spendable balance - Ваш доступный баланс + Ваш баланс, который можно расходовать Pending: @@ -1458,7 +1466,7 @@ Signing is only possible with addresses of the type 'legacy'. Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance - Общая сумма всех транзакций, которые до сих пор не подтверждены и не учитываются в расходном балансе + Общая сумма всех транзакций, которые ещё не подтверждены и не учитываются в балансе, который можно расходовать Immature: @@ -1478,11 +1486,11 @@ Signing is only possible with addresses of the type 'legacy'. Your current total balance - Ваш текущий баланс: + Ваш текущий итоговый баланс Your current balance in watch-only addresses - Ваш текущий баланс (только чтение): + Ваш текущий баланс в наблюдаемых адресах Spendable: @@ -1494,26 +1502,26 @@ Signing is only possible with addresses of the type 'legacy'. Unconfirmed transactions to watch-only addresses - Неподтвержденные транзакции для просмотра по адресам + Неподтвержденные транзакции на наблюдаемые адреса Mined balance in watch-only addresses that has not yet matured - Баланс добытых монет на адресах наблюдения, который ещё не созрел + Баланс добытых монет на наблюдаемых адресах, который ещё не созрел Current total balance in watch-only addresses - Текущий общий баланс на адресах наблюдения + Текущий итоговый баланс на наблюдаемых адресах Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. - Режим приватности включен для вкладки обзора. Чтобы показать данные, отключите настройку Скрыть Значения. + Включён режим приватности для вкладки обзора. Чтобы показать данные, отключите пункт Настройки -> Скрыть значения. PSBTOperationsDialog Dialog - Dialog + Диалог Sign Tx @@ -1521,7 +1529,7 @@ Signing is only possible with addresses of the type 'legacy'. Broadcast Tx - Отправить Tx + Отправить транзакцию Copy to Clipboard @@ -1561,7 +1569,7 @@ Signing is only possible with addresses of the type 'legacy'. Transaction broadcast successfully! Transaction ID: %1 - Транзакция успешно отправлена! ID транзакции: %1 + Транзакция успешно отправлена! Идентификатор транзакции: %1 Transaction broadcast failed: %1 @@ -1577,7 +1585,7 @@ Signing is only possible with addresses of the type 'legacy'. Partially Signed Transaction (Binary) (*.psbt) - Частично Подписанная Транзакция (Бинарный файл) (*.psbt) + Частично подписанная транзакция (двоичный файл) (*.psbt) PSBT saved to disk. @@ -1585,11 +1593,11 @@ Signing is only possible with addresses of the type 'legacy'. * Sends %1 to %2 - * Отправляет %1 к %2 + * Отправляет %1 на %2 Unable to calculate transaction fee or total transaction amount. - Не удалось сосчитать сумму комиссии или общую сумму транзакции. + Не удалось вычислить сумму комиссии или общую сумму транзакции. Pays transaction fee: @@ -1597,7 +1605,7 @@ Signing is only possible with addresses of the type 'legacy'. Total Amount - Общая сумма + Итоговая сумма or @@ -1621,7 +1629,7 @@ Signing is only possible with addresses of the type 'legacy'. (But this wallet does not have the right keys.) - (Но этот кошелёк не имеет необходимые ключи.) + (Но этот кошелёк не имеет необходимых ключей.) Transaction is fully signed and ready for broadcast. @@ -1640,15 +1648,15 @@ Signing is only possible with addresses of the type 'legacy'. Cannot start bitcoin: click-to-pay handler - Не удаётся запустить биткойн: обработчик click-to-pay + Не удаётся запустить обработчик click-to-pay для протокола bitcoin: URI handling - Обработка идентификатора + Обработка URI 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. - 'bitcoin://' неверный URI. Используйте 'bitcoin:' вместо этого. + «bitcoin://» — это неверный URI. Используйте вместо него «bitcoin:». Cannot process payment request because BIP70 is not supported. @@ -1656,23 +1664,23 @@ Signing is only possible with addresses of the type 'legacy'. Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. - Из-за широко распространенных недостатков безопасности в BIP70 настоятельно рекомендуется игнорировать любые торговые инструкции по переключению кошельков. + Из-за широко распространённых уязвимостей в BIP70 настоятельно рекомендуется игнорировать любые инструкции продавцов сменить кошелёк. If you are receiving this error you should request the merchant provide a BIP21 compatible URI. - Если вы получили эту ошибку, вам следует запросить у продавца BIP21 совместимый URI. + Если вы получили эту ошибку, вам следует запросить у продавца URI, совместимый с BIP21. Invalid payment address %1 - Неверный адрес %1 + Неверный платёжный адрес %1 URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters. - Не удалось обработать идентификатор! Это может быть связано с неверным Биткойн-адресом или неправильными параметрами идентификатора. + Не удалось обработать URI! Это может быть вызвано тем, что биткоин-адрес неверен или параметры URI неправильно сформированы. Payment request file handling - Обработка запроса платежа + Обработка файла с запросом платежа @@ -1706,11 +1714,11 @@ Signing is only possible with addresses of the type 'legacy'. QObject Amount - Количество + Сумма Enter a Bitcoin address (e.g. %1) - Введите биткойн-адрес (напр. %1) + Введите биткоин-адрес (напр. %1) %1 d @@ -1730,11 +1738,11 @@ Signing is only possible with addresses of the type 'legacy'. None - Ни один + Нет N/A - Н/Д + Н/д %1 ms @@ -1742,11 +1750,11 @@ Signing is only possible with addresses of the type 'legacy'. %n second(s) - %n секунда%n секунд%n секунд%n секунд + %n секунда%n секунды%n секунд%n секунд %n minute(s) - %n минута%n минут%n минут%n минут + %n минута%n минуты%n минут%n минут %n hour(s) @@ -1754,11 +1762,11 @@ Signing is only possible with addresses of the type 'legacy'. %n day(s) - %n день%n дней%n дней%n дней + %n день%n дня%n дней%n дней %n week(s) - %n неделя%n недель%n недель%n недель + %n неделя%n недели%n недель%n недель %1 and %2 @@ -1790,7 +1798,7 @@ Signing is only possible with addresses of the type 'legacy'. Error: Cannot parse configuration file: %1. - Ошибка : Невозможно разобрать файл конфигурации: %1. + Ошибка: Невозможно разобрать файл конфигурации: %1. Error: %1 @@ -1802,7 +1810,7 @@ Signing is only possible with addresses of the type 'legacy'. %1 didn't yet exit safely... - %1 ещё не завершился безопасно... + %1 ещё не закрылся безопасно... unknown @@ -1837,14 +1845,14 @@ Signing is only possible with addresses of the type 'legacy'. PNG Image (*.png) - PNG Image (*.png) + Изображение PNG (*.png) RPCConsole N/A - Н/Д + Н/д Client version @@ -1852,7 +1860,7 @@ Signing is only possible with addresses of the type 'legacy'. &Information - Информация + &Информация General @@ -1868,7 +1876,7 @@ Signing is only possible with addresses of the type 'legacy'. To specify a non-default location of the data directory use the '%1' option. - Чтобы указать нестандартное расположение каталога данных, используйте этот параметр '%1'. + Чтобы указать нестандартное расположение директории для данных, используйте параметр '%1'. Blocksdir @@ -1876,7 +1884,7 @@ Signing is only possible with addresses of the type 'legacy'. To specify a non-default location of the blocks directory use the '%1' option. - Чтобы указать нестандартное расположение каталога данных с блоками, используйте этот параметр '%1'. + Чтобы указать нестандартное расположение директории для блоков, используйте параметр '%1'. Startup time @@ -1896,7 +1904,7 @@ Signing is only possible with addresses of the type 'legacy'. Block chain - Блокчейн + Цепочка блоков Memory Pool @@ -1916,7 +1924,7 @@ Signing is only possible with addresses of the type 'legacy'. (none) - (ни один) + (нет) &Reset @@ -1932,15 +1940,15 @@ Signing is only possible with addresses of the type 'legacy'. &Peers - &Пиры + &Узлы Banned peers - Заблокированные пиры + Заблокированные узлы Select a peer to view detailed information. - Выберите пира для просмотра детальной информации. + Выберите узел для просмотра детальной информации. Direction @@ -1964,11 +1972,11 @@ Signing is only possible with addresses of the type 'legacy'. The mapped Autonomous System used for diversifying peer selection. - The mapped Autonomous System used for diversifying peer selection. + Подключённая автономная система, используемая для диверсификации узлов, к которым производится подключение. Mapped AS - Mapped AS + Подключённая АС User Agent @@ -1984,7 +1992,7 @@ Signing is only possible with addresses of the type 'legacy'. Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. - Открыть отладочный лог-файл %1 с текущего каталога данных. Для больших лог-файлов это может занять несколько секунд. + Открыть файл журнала отладки %1 из текущей директории данных. Для больших файлов журнала это может занять несколько секунд. Decrease font size @@ -2008,15 +2016,15 @@ Signing is only possible with addresses of the type 'legacy'. Last Send - Последние отправленные + Посл. время отправки Last Receive - Последние полученные + Посл. время получения Ping Time - Время отклика Ping + Время отклика The duration of a currently outstanding ping. @@ -2024,15 +2032,15 @@ Signing is only possible with addresses of the type 'legacy'. Ping Wait - Отклик Подождите + Ожидание отклика Min Ping - Минимальное время отклика Ping + Мин. время отклика Time Offset - Временный офсет + Временной сдвиг Last block time @@ -2088,7 +2096,7 @@ Signing is only possible with addresses of the type 'legacy'. &Disconnect - &Отключиться + О&тключиться Ban for @@ -2096,11 +2104,11 @@ Signing is only possible with addresses of the type 'legacy'. &Unban - Отменить запрет + &Разбанить Welcome to the %1 RPC console. - Добро пожаловать в %1 RPC-консоль + Добро пожаловать в RPC-консоль %1. Use up and down arrows to navigate history, and %1 to clear screen. @@ -2108,7 +2116,7 @@ Signing is only possible with addresses of the type 'legacy'. Type %1 for an overview of available commands. - Ввести %1 для обзора доступных команд. + Введите %1 для показа доступных команд. For more information on using this console type %1. @@ -2116,7 +2124,7 @@ Signing is only possible with addresses of the type 'legacy'. WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. - ВНИМАНИЕ: Мошенники предлагали пользователям вводить сюда команды, похищая таким образом содержимое их кошельков. Не используйте эту консоль без полного понимания смысла команд. + ВНИМАНИЕ: Известны случаи, когда мошенники просят пользователей вводить сюда команды и таким образом похищают содержимое их кошельков. Не используйте эту консоль без полного понимания последствий вводимых вами команд. Network activity disabled @@ -2128,7 +2136,7 @@ Signing is only possible with addresses of the type 'legacy'. Executing command using "%1" wallet - Выполнение команды с помощью "%1" кошелька + Выполнение команды с помощью кошелька "%1" (node id: %1) @@ -2159,7 +2167,7 @@ Signing is only possible with addresses of the type 'legacy'. ReceiveCoinsDialog &Amount: - &Количество: + &Сумма: &Label: @@ -2171,7 +2179,7 @@ Signing is only possible with addresses of the type 'legacy'. An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network. - Необязательное сообщение для запроса платежа, которое будет показано при открытии запроса. Заметьте: сообщение не будет отправлено вместе с платежом через сеть Биткойн. + Необязательное сообщение для запроса платежа, которое будет показано при открытии запроса. Внимание: это сообщение не будет отправлено вместе с платежом через сеть биткоина. An optional label to associate with the new receiving address. @@ -2179,15 +2187,15 @@ Signing is only possible with addresses of the type 'legacy'. Use this form to request payments. All fields are <b>optional</b>. - Заполните форму для запроса платежей. Все поля <b>необязательны</b>. + Используйте эту форму, чтобы запросить платёж. Все поля <b>необязательны</b>. An optional amount to request. Leave this empty or zero to not request a specific amount. - Необязательная сумма для запроса. Оставьте пустым или укажите ноль, чтобы не запрашивать определённую сумму. + Необязательная сумма, платёж на которую вы запрашиваете. Оставьте пустой или введите ноль, чтобы не запрашивать определённую сумму. An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request. - Необязательная метка, ассоциированная с новым адресом приёма (используется вами, чтобы идентифицировать выставленный счёт). Также она присоединяется к запросу платежа. + Необязательная метка, которая будет присвоена новому адресу получения (чтобы вы могли идентифицировать выставленный счёт). Также она присоединяется к запросу платежа. An optional message that is attached to the payment request and may be displayed to the sender. @@ -2199,7 +2207,7 @@ Signing is only possible with addresses of the type 'legacy'. Clear all fields of the form. - Очистить все поля формы. + Очищает все поля формы. Clear @@ -2207,19 +2215,19 @@ Signing is only possible with addresses of the type 'legacy'. Native segwit addresses (aka Bech32 or BIP-173) reduce your transaction fees later on and offer better protection against typos, but old wallets don't support them. When unchecked, an address compatible with older wallets will be created instead. - "Родные" segwit-адреса (Bech32 или BIP-173) в дальнейшем уменьшат комиссии ваших транзакций и предоставят улучшенную защиту от опечаток, однако старые кошельки не поддерживают эти адреса. Если не выбрано, будет создан совместимый со старыми кошелёк. + "Родные" segwit-адреса (Bech32 или BIP-173) уменьшают комиссии ваших транзакций в будущем и предоставляют улучшенную защиту от опечаток, однако старые кошельки их не поддерживают. Если галочка не установлена, будет создан адрес, совместимый со старыми кошельками. Generate native segwit (Bech32) address - Создать "родной" segwit (Bech32) адрес + Генерировать "родной" segwit-адрес (Bech32) Requested payments history - История платежных запросов + История запросов платежей Show the selected request (does the same as double clicking an entry) - Отобразить выбранный запрос (выполняет то же, что и двойной щелчок на записи) + Показывает выбранный запрос (двойной щелчок на записи делает то же самое) Show @@ -2227,7 +2235,7 @@ Signing is only possible with addresses of the type 'legacy'. Remove the selected entries from the list - Удалить выбранные записи со списка + Удаляет выбранные записи из списка Remove @@ -2270,7 +2278,7 @@ Signing is only possible with addresses of the type 'legacy'. Amount: - Количество: + Сумма: Label: @@ -2290,7 +2298,7 @@ Signing is only possible with addresses of the type 'legacy'. Copy &Address - Копировать &Адрес + Копировать &адрес &Save Image... @@ -2325,11 +2333,11 @@ Signing is only possible with addresses of the type 'legacy'. (no message) - (нет сообщений) + (нет сообщения) (no amount requested) - (не указана запрашиваемая сумма) + (сумма не указана) Requested @@ -2344,7 +2352,7 @@ Signing is only possible with addresses of the type 'legacy'. Coin Control Features - Опции управления монетами + Функции управления монетами Inputs... @@ -2352,7 +2360,7 @@ Signing is only possible with addresses of the type 'legacy'. automatically selected - выбрано автоматически + выбираются автоматически Insufficient funds! @@ -2368,7 +2376,7 @@ Signing is only possible with addresses of the type 'legacy'. Amount: - Количество: + Сумма: Fee: @@ -2400,7 +2408,7 @@ Signing is only possible with addresses of the type 'legacy'. Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain. - Использование резервной комиссии может привести к отправке транзакции, для подтверждения которой потребуется несколько часов или дней (или никогда). Попробуйте выбрать свою комиссию вручную или подождите, пока вы не подтвердите всю цепочку. + Использование комиссии по умолчанию может привести к отправке транзакции, для подтверждения которой потребуется несколько часов или дней (или которая никогда не подтвердится). Рекомендуется указать комиссию вручную или подождать, пока не закончится проверка всей цепочки блоков. Warning: Fee estimation is currently not possible. @@ -2410,9 +2418,9 @@ Signing is only possible with addresses of the type 'legacy'. Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size. Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis per kB" for a transaction size of 500 bytes (half of 1 kB) would ultimately yield a fee of only 50 satoshis. - Укажите пользовательскую плату за килобайт (1000 байт) виртуального размера транзакции. + Укажите пользовательскую комиссию за КБ (1000 байт) виртуального размера транзакции. -Примечание: Так как комиссия рассчитывается на основе каждого байта, комиссия "100 сатошей за КБ " для транзакции размером 500 байт (половина 1 КБ) в конечном счете приведет к сбору только 50 сатошей. +Примечание: так как комиссия рассчитывается пропорционально размеру в байтах, комиссия «100 сатоши за КБ» для транзакции размером 500 байт (половина 1 КБ) приведет к сбору в размере всего 50 сатоши. per kilobyte @@ -2456,7 +2464,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process. - Когда объем транзакций меньше, чем пространство в блоках, майнеры, а также ретранслирующие узлы могут устанавливать минимальную плату. Платить только эту минимальную комиссию - это хорошо, но имейте в виду, что это может привести к тому, что транзакция никогда не будет подтверждена, если будет больше биткойн-транзакций, чем может обработать сеть. + Когда объём транзакций меньше, чем пространство в блоках, майнеры и ретранслирующие узлы могут устанавливать минимальную плату. Платить только эту минимальную комиссию вполне допустимо, но примите во внимание, что это может привести к тому, что ваша транзакция никогда не подтвердится, если транзакций окажется больше, чем может обработать сеть. A too low fee might result in a never confirming transaction (read the tooltip) @@ -2472,11 +2480,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk. - С помощью Replace-By-Fee (BIP-125) вы можете увеличить комиссию за транзакцию после ее отправки. Без этого может быть рекомендована более высокая комиссия для компенсации повышенного риска задержки транзакции. + С помощью Replace-By-Fee (BIP-125) вы можете увеличить комиссию за транзакцию после её отправки. Без этого может быть рекомендованная комиссия может увеличиться для компенсации повышения риска задержки транзакции. Clear &All - Очистить &Всё + Очистить &всё Balance: @@ -2484,7 +2492,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Confirm the send action - Подтвердить отправку + Подтвердите отправку S&end @@ -2500,23 +2508,23 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Copy fee - Скопировать комиссию + Копировать комиссию Copy after fee - Скопировать после комиссии + Копировать после комиссии Copy bytes - Скопировать байты + Копировать байты Copy dust - Скопировать пыль + Копировать пыль Copy change - Скопировать сдачу + Копировать сдачу %1 (%2 blocks) @@ -2524,11 +2532,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Cr&eate Unsigned - Создать Без Подписи + Создать без подписи Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. - Создает Частично Подписанную Биткойн Транзакцию (PSBT), чтобы использовать её, например, с оффлайн %1 кошельком, или PSBT-совместимым аппаратным кошельком. + Создает частично подписанную биткоин-транзакцию (PSBT), чтобы использовать её, например, с офлайновым кошельком %1, или PSBT-совместимым аппаратным кошельком. from wallet '%1' @@ -2548,11 +2556,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Are you sure you want to send? - Вы действительно хотите выполнить отправку? + Вы действительно хотите отправить средства? Create Unsigned - Создать Без Подписи + Создать без подписи Save Transaction Data @@ -2560,7 +2568,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Partially Signed Transaction (Binary) (*.psbt) - Частично Подписанная Транзакция (Бинарный файл) (*.psbt) + Частично подписанная транзакция (двоичный файл) (*.psbt) PSBT saved @@ -2572,15 +2580,15 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p You can increase the fee later (signals Replace-By-Fee, BIP-125). - Вы можете увеличить комиссию позже (Replace-By-Fee, BIP-125). + Вы можете увеличить комиссию позже (указан Replace-By-Fee, BIP-125). Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. - Пожалуйста, пересмотрите ваше транзакционное предложение. Это создаст Частично Подписанную Биткойн Транзакцию (PSBT), которую можно сохранить или копировать и использовать для подписи, например, с оффлайн %1 кошельком, или PSBT-совместимым аппаратным кошельком. + Пожалуйста, ещё раз просмотрите черновик вашей транзакции. Будет создана частично подписанная биткойн-транзакцию (PSBT), которую можно сохранить или скопировать, после чего подписать, например, офлайновым кошельком %1, или PSBT-совместимым аппаратным кошельком. Please, review your transaction. - Пожалуйста, ознакомьтесь с вашей транзакцией. + Пожалуйста, ещё раз просмотрите вашу транзакцией. Transaction fee @@ -2588,11 +2596,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Not signalling Replace-By-Fee, BIP-125. - Не сигнализирует Replace-By-Fee, BIP-125. + Не указан Replace-By-Fee, BIP-125. Total Amount - Общая сумма + Итоговая сумма To review recipient list click "Show Details..." @@ -2600,11 +2608,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Confirm send coins - Подтвердить отправку монет + Подтвердите отправку монет Confirm transaction proposal - Подтвердите предложенную транзакцию + Подтвердите черновик транзакции Send @@ -2612,7 +2620,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Watch-only balance: - Баланс только для просмотра: + Наблюдаемый баланс: The recipient address is not valid. Please recheck. @@ -2624,19 +2632,19 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p The amount exceeds your balance. - Количество превышает ваш баланс. + Сумма превышает ваш баланс. The total exceeds your balance when the %1 transaction fee is included. - Сумма с учётом комиссии %1 превышает ваш баланс. + Итоговая сумма с учётом комиссии %1 превышает ваш баланс. Duplicate address found: addresses should only be used once each. - Обнаружен дублирующийся адрес: используйте каждый адрес однократно. + Обнаружен дублирующийся адрес: используйте каждый адрес только один раз. Transaction creation failed! - Создание транзакции завершилось неудачей! + Не удалось создать транзакцию! A fee higher than %1 is considered an absurdly high fee. @@ -2648,15 +2656,15 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Estimated to begin confirmation within %n block(s). - Предполагаемое подтверждение в течение %n блока.Предполагаемое подтверждение в течение %n блоков.Предполагаемое подтверждение в течение %n блоков.Предполагаемое подтверждение в течение %n блоков. + Предполагаемое подтверждение в течение %n блока.Предполагаемое подтверждение в течение %n блоков.Предполагаемое подтверждение в течение %n блоков.Первое подтверждение предполагается в течение %n блоков. Warning: Invalid Bitcoin address - Предупреждение: Неверный Биткойн-адрес + Предупреждение: неверный биткоин-адрес Warning: Unknown change address - Предупреждение: Неизвестный адрес сдачи + Предупреждение: неизвестный адрес сдачи Confirm custom change address @@ -2664,7 +2672,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure? - Выбранный вами адрес для сдачи не принадлежит этому кошельку. Часть или все средства могут быть отправлены на этот адрес. Вы уверены? + Выбранный вами адрес для сдачи не принадлежит этому кошельку. Часть или все средства в вашем кошельке могут быть отправлены на этот адрес. Вы уверены? (no label) @@ -2675,11 +2683,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p SendCoinsEntry A&mount: - &Количество: + &Сумма: Pay &To: - &Заплатить: + &Отправить на: &Label: @@ -2687,11 +2695,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Choose previously used address - Выбрать предыдущий использованный адрес + Выбрать ранее использованный адрес The Bitcoin address to send the payment to - Биткойн-адрес, на который отправить платёж + Биткоин-адрес, на который нужно отправить платёж Alt+A @@ -2711,11 +2719,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p The amount to send in the selected unit - The amount to send in the selected unit + Сумма к отправке в выбранных единицах The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. - С отправляемой суммы будет удержана комиссия. Получателю придёт меньше биткойнов, чем вы вводите в поле количества. Если выбрано несколько получателей, комиссия распределяется поровну. + Комиссия будет вычтена из отправляемой суммы. Получателю придёт меньше биткоинов, чем вы ввели в поле «Сумма». Если выбрано несколько получателей, комиссия распределяется поровну. S&ubtract fee from amount @@ -2739,15 +2747,15 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Enter a label for this address to add it to the list of used addresses - Введите метку для этого адреса, чтобы добавить его в список используемых адресов + Введите метку для этого адреса, чтобы добавить его в список использованных адресов A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. - Сообщение, прикрепленное к биткойн-идентификатору, будет сохранено вместе с транзакцией для вашего сведения. Заметьте: Сообщение не будет отправлено через сеть Биткойн. + Сообщение, которое было прикреплено к URI и которое будет сохранено вместе с транзакцией для вашего сведения. Обратите внимание: сообщение не будет отправлено через сеть биткоина. Pay To: - Выполнить оплату в пользу: + Отправить на: Memo: @@ -2769,23 +2777,23 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p SignVerifyMessageDialog Signatures - Sign / Verify a Message - Подписи - Подписать / Проверить Сообщение + Подписи - подписать / проверить сообщение &Sign Message - &Подписать Сообщение + &Подписать сообщение You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. - Вы можете подписывать сообщения/соглашения своими адресами, чтобы доказать свою возможность получать биткойны на них. Будьте осторожны, не подписывайте что-то неопределённое или случайное, так как фишинговые атаки могут обманным путём заставить вас подписать нежелательные сообщения. Подписывайте только те сообщения, с которыми вы согласны вплоть до мелочей. + Вы можете подписывать сообщения/соглашения своими адресами, чтобы доказать, что вы можете получать биткоины на них. Будьте осторожны и не подписывайте непонятные или случайные сообщения, так как мошенники могут таким образом пытаться присвоить вашу личность. Подписывайте только такие сообщения, с которыми вы согласны вплоть до мелочей. The Bitcoin address to sign the message with - Биткойн-адрес, которым подписать сообщение + Биткоин-адрес, которым подписать сообщение Choose previously used address - Выбрать предыдущий использованный адрес + Выбрать ранее использованный адрес Alt+A @@ -2801,7 +2809,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Enter the message you want to sign here - Введите сообщение для подписи + Введите здесь сообщение, которое вы хотите подписать Signature @@ -2813,31 +2821,31 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Sign the message to prove you own this Bitcoin address - Подписать сообщение, чтобы доказать владение Биткойн-адресом + Подписать сообщение, чтобы доказать владение биткоин-адресом Sign &Message - Подписать &Сообщение + Подписать &сообщение Reset all sign message fields - Сбросить значения всех полей подписывания сообщений + Сбросить значения всех полей Clear &All - Очистить &Всё + Очистить &всё &Verify Message - &Проверить Сообщение + &Проверить сообщение Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! - Введите ниже адрес получателя, сообщение (убедитесь, что переводы строк, пробелы, табы и т.п. в точности скопированы) и подпись, чтобы проверить сообщение. Убедитесь, что не скопировали лишнего в подпись, сравнив с самим подписываемым сообщением, чтобы не стать жертвой атаки "man-in-the-middle". Заметьте, что эта операция удостоверяет лишь авторство подписавшего, но не может удостоверить отправителя транзакции. + Введите ниже адрес получателя, сообщение (убедитесь, что переводы строк, пробелы, знаки табуляции и т. п. скопированы в точности) и подпись, чтобы проверить сообщение. Убедитесь, что вы не придаёте сообщению большего смысла, чем оно на самом деле несёт, чтобы не стать жертвой атаки "человек посередине". Обратите внимание, что подпись доказывает лишь то, что подписавший может получать биткоины на этот адрес, но никак не то, что он отправил какую-либо транзакцию! The Bitcoin address the message was signed with - Биткойн-адрес, которым было подписано сообщение + Биткоин-адрес, которым было подписано сообщение The signed message to verify @@ -2845,15 +2853,15 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p The signature given when the message was signed - The signature given when the message was signed + Подпись, созданная при подписании сообщения Verify the message to ensure it was signed with the specified Bitcoin address - Проверить сообщение, чтобы убедиться, что оно было подписано указанным Биткойн-адресом + Проверить сообщение, чтобы убедиться, что оно действительно подписано указанным биткоин-адресом Verify &Message - Проверить &Сообщение + Проверить &сообщение Reset all verify message fields @@ -2869,7 +2877,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Please check the address and try again. - Необходимо проверить адрес и выполнить повторную попытку. + Проверьте адрес и попробуйте ещё раз. The entered address does not refer to a key. @@ -2881,7 +2889,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p No error - Без ошибок + Нет ошибок Private key for the entered address is not available. @@ -2897,7 +2905,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p The signature could not be decoded. - Невозможно расшифровать подпись. + Невозможно декодировать подпись. Please check the signature and try again. @@ -2927,35 +2935,35 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p TransactionDesc Open for %n more block(s) - Открыть еще на %n блокОткрыть еще на %n блоковОткрыть еще на %n блоковОткрыть еще на %n блоков + Открыть еще на %n блокОткрыть еще на %n блоковОткрыть еще на %n блоковОткрыта в течение ещё %n блоков Open until %1 - Открыто до %1 + Открыта до %1 conflicted with a transaction with %1 confirmations - конфликт с транзакцией с %1 подтверждениями + конфликтует с транзакцией с %1 подтверждениями 0/unconfirmed, %1 - 0/не подтверждено, %1 + 0 / не подтверждено, %1 in memory pool - в мемпуле + в пуле памяти not in memory pool - не в мемпуле + не в пуле памяти abandoned - заброшено + отброшена %1/unconfirmed - %1/не подтверждено + %1 / не подтверждено %1 confirmations @@ -2975,7 +2983,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Generated - Создано автоматически + Сгенерировано From @@ -2987,7 +2995,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p To - Для + Кому own address @@ -2995,7 +3003,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p watch-only - только просмотр + наблюдаемый label @@ -3007,11 +3015,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p matures in %n more block(s) - созревает еще в %n блокахсозревает еще в %n блокахсозревает еще в %n блокахсозревает еще в %n блоках + созревает еще в %n блокахсозревает еще в %n блокахсозревает еще в %n блокахсозреет через %n блоков not accepted - не принято + не принят Debit @@ -3019,11 +3027,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Total debit - Всего дебет + Итого дебет Total credit - Всего кредит + Итого кредит Transaction fee @@ -3031,7 +3039,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Net amount - Чистая сумма + Сумма нетто Message @@ -3043,7 +3051,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Transaction ID - ID транзакции + Идентификатор транзакции Transaction total size @@ -3063,11 +3071,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Merchant - Мерчант + Продавец Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. - Созданные автоматически монеты должны подождать %1 блоков, прежде чем они могут быть потрачены. Когда вы создали автоматически этот блок, он был отправлен в сеть для добавления в цепочку блоков. Если он не попадёт в цепь, его статус изменится на "не принят", и монеты будут недействительны. Это иногда происходит в случае, если другой узел создаст автоматически блок на несколько секунд раньше вас. + Сгенерированные монеты должны созреть в течение %1 блоков, прежде чем смогут быть потрачены. Когда вы сгенерировали этот блок, он был отправлен в сеть для добавления в цепочку блоков. Если он не попадёт в цепочку, его статус изменится на "не принят", и монеты будут недействительны. Это иногда происходит в случае, если другой узел сгенерирует блок на несколько секунд раньше вас. Debug information @@ -3083,7 +3091,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Amount - Количество + Сумма true @@ -3102,7 +3110,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Details for %1 - Детальная информация по %1 + Подробности по %1 @@ -3121,19 +3129,19 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Open for %n more block(s) - Открыть еще на %n блокОткрыть еще на %n блоковОткрыть еще на %n блоковОткрыть еще на %n блоков + Открыть еще на %n блокОткрыть еще на %n блоковОткрыть еще на %n блоковОткрыта в течение ещё %n блоков Open until %1 - Открыто до %1 + Открыта до %1 Unconfirmed - Неподтвержденный + Не подтверждена Abandoned - Заброшено + Отброшена Confirming (%1 of %2 recommended confirmations) @@ -3141,19 +3149,19 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Confirmed (%1 confirmations) - Подтверждено (%1 подтверждений) + Подтверждена (%1 подтверждений) Conflicted - В противоречии + Конфликтует Immature (%1 confirmations, will be available after %2) - Незрелый (%1 подтверждений, будет доступно после %2) + Незрелая (%1 подтверждений, будет доступно после %2) Generated but not accepted - Создано автоматически, но не принято + Сгенерирована, но не принята Received with @@ -3165,15 +3173,15 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Sent to - Отправить + Отправлена Payment to yourself - Отправлено себе + Платёж себе Mined - Добыто + Добыта watch-only @@ -3181,7 +3189,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p (n/a) - (недоступно) + (н/д) (no label) @@ -3189,7 +3197,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Transaction status. Hover over this field to show number of confirmations. - Статус транзакции. Для отображения количества подтверждений необходимо навести курсор на это поле. + Статус транзакции. Наведите курсор на это поле для отображения количества подтверждений. Date and time that the transaction was received. @@ -3201,15 +3209,15 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Whether or not a watch-only address is involved in this transaction. - Использовался ли в транзакции адрес для наблюдения. + Использовался ли в транзакции наблюдаемый адрес. User-defined intent/purpose of the transaction. - Определяемое пользователем намерение/цель транзакции. + Определяемое пользователем назначение/цель транзакции. Amount removed from or added to balance. - Снятая или добавленная к балансу сумма. + Сумма, вычтенная из баланса или добавленная к нему. @@ -3248,7 +3256,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Sent to - Отправить + Отправлено на To yourself @@ -3264,15 +3272,15 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Enter address, transaction id, or label to search - Введите адрес, ID транзакции или метку для поиска + Введите адрес, идентификатор транзакции или метку для поиска Min amount - Минимальное количество + Мин. сумма Abandon transaction - Отказ от транзакции + Отбросить транзакцию Increase transaction fee @@ -3292,23 +3300,23 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Copy transaction ID - Копировать ID транзакции + Копировать идентификатор транзакции Copy raw transaction - Копировать raw транзакцию + Копировать исходный код транзакции Copy full transaction details - Копировать все детали транзакции + Копировать все подробности транзакции Edit label - Изменить метку + Редактировать метку Show transaction details - Отобразить детали транзакции + Показать подробности транзакции Export Transaction History @@ -3320,11 +3328,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Confirmed - Подтвержденные + Подтверждена Watch-only - Только наблюдение + Наблюдаемая Date @@ -3344,7 +3352,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p ID - ID + Идентификатр Exporting Failed @@ -3360,7 +3368,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p The transaction history was successfully saved to %1. - Историю транзакций было успешно сохранено в %1. + История транзакций была успешно сохранена в %1. Range: @@ -3375,7 +3383,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p UnitDisplayStatusBarControl Unit to show amounts in. Click to select another unit. - Единица измерения количества монет. Щёлкните для выбора другой единицы. + Единицы, в которой указываются суммы. Нажмите для выбора других единиц. @@ -3390,7 +3398,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. - Слишком длительное закрытие кошелька может привести к необходимости повторной синхронизации всей цепочки, если включено сокращение. + Закрытие кошелька на слишком долгое время может привести к необходимости повторной синхронизации всей цепочки, если включена обрезка. Close all wallets @@ -3407,8 +3415,8 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p No wallet has been loaded. Go to File > Open Wallet to load a wallet. - OR - - Кошелёк не был загружен. -Откройте вкладку Файл > Открыть Кошелёк чтобы загрузить кошелёк. + Нет загруженных кошельков. +Выберите в меню Файл -> Открыть кошелёк, чтобы загрузить кошелёк. - ИЛИ - @@ -3424,7 +3432,7 @@ Go to File > Open Wallet to load a wallet. Fee bump error - Ошибка оплаты + Ошибка повышения комиссии Increasing transaction fee failed @@ -3432,11 +3440,11 @@ Go to File > Open Wallet to load a wallet. Do you want to increase the fee? - Желаете увеличить комиссию? + Вы хотите увеличить комиссию? Do you want to draft a transaction with fee increase? - Do you want to draft a transaction with fee increase? + Вы хотите создать черновик транзакции с увеличением комиссии? Current fee: @@ -3444,7 +3452,7 @@ Go to File > Open Wallet to load a wallet. Increase: - Увеличить + Увеличение: New fee: @@ -3452,7 +3460,7 @@ Go to File > Open Wallet to load a wallet. Confirm fee bump - Подтвердите оплату + Подтвердите увеличение комиссии Can't draft transaction. @@ -3468,11 +3476,11 @@ Go to File > Open Wallet to load a wallet. Could not commit transaction - Не удалось выполнить транзакцию + Не удалось отправить транзакцию default wallet - Кошелёк по умолчанию + кошелёк по умолчанию @@ -3499,11 +3507,11 @@ Go to File > Open Wallet to load a wallet. Partially Signed Transaction (*.psbt) - Частично Подписанная Транзакция (*.psbt) + Частично подписанная транзакция (*.psbt) PSBT file must be smaller than 100 MiB - Файл PSBT должен быть меньше 100 мегабит. + Файл PSBT должен быть меньше 100 МиБ Unable to decode PSBT @@ -3519,7 +3527,7 @@ Go to File > Open Wallet to load a wallet. Backup Failed - Создание резервной копии кошелька завершилось неудачей + Резервное копирование не удалось There was an error trying to save the wallet data to %1. @@ -3546,19 +3554,19 @@ Go to File > Open Wallet to load a wallet. Prune configured below the minimum of %d MiB. Please use a higher number. - Удаление блоков выставлено ниже, чем минимум в %d Мб. Пожалуйста, используйте большее значение. + Обрезка блоков выставлена меньше, чем минимум в %d МиБ. Пожалуйста, используйте большее значение. Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) - Удаление: последняя синхронизация кошелька вышла за рамки удаленных данных. Вам нужен -reindex (скачать всю цепь блоков в случае удаленного узла) + Обрезка: последняя синхронизация кошелька вышла за рамки обрезанных данных. Необходимо сделать -reindex (снова скачать всю цепочку блоков, если у вас узел с обрезкой) Pruning blockstore... - Очистка хранилища блоков... + Обрезка хранилища блоков... Unable to start HTTP server. See debug log for details. - Невозможно запустить HTTP-сервер. Для получения более детальной информации необходимо обратиться к журналу отладки. + Невозможно запустить HTTP-сервер. См. журнал отладки. The %s developers @@ -3566,11 +3574,11 @@ Go to File > Open Wallet to load a wallet. Cannot obtain a lock on data directory %s. %s is probably already running. - Невозможно заблокировать каталог данных %s. %s, возможно, уже работает. + Невозможно заблокировать каталог данных %s. Вероятно, %s уже запущен. Cannot provide specific connections and have addrman find outgoing connections at the same. - Не удается предоставить определенные подключения и найти исходящие соединения при этом. + Не удаётся предоставить определённые соединения, чтобы при этом addrman нашёл в них исходящие соединения. Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. @@ -3578,31 +3586,31 @@ Go to File > Open Wallet to load a wallet. More than one onion bind address is provided. Using %s for the automatically created Tor onion service. - Предоставлен более чем один адрес подключения к скрытым сервисам. %s используется для подключения к автоматически созданному сервису Tor. + Предоставлен более чем один onion-адрес для привязки. Для автоматически созданного onion-сервиса Tor будет использован %s. Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. - Пожалуйста, убедитесь в корректности установки времени и даты на вашем компьютере! Если время установлено неверно, %s не будет работать правильно. + Пожалуйста, убедитесь, что на вашем компьютере верно установлены дата и время. Если ваши часы неверны, %s не будет работать правильно. Please contribute if you find %s useful. Visit %s for further information about the software. - Пожалуйста, внесите свой вклад, если вы найдете %s полезными. Посетите %s для получения дополнительной информации о программном обеспечении. + Пожалуйста, внесите свой вклад, если вы считаете %s полезным. Посетите %s для получения дополнительной информации о программном обеспечении. SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s - SQLiteDatabase: Не удалось приготовить утверждение чтобы загрузить sqlite кошелёк версии: %s + SQLiteDatabase: Не удалось подготовить запрос, чтобы загрузить версию схемы sqlite кошелька: %s SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s - SQLiteDatabase: Не удалось приготовить утверждение чтобы загрузить id приложения: %s + SQLiteDatabase: Не удалось подготовить запрос, чтобы загрузить id приложения: %s SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported - SQLiteDatabase: Кошелёк sqlite имеет неизвестную версию %d. Поддерживается только версия %d + SQLiteDatabase: Неизвестная версия схемы sqlite кошелька: %d. Поддерживается только версия %d The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct - База данных блоков содержит блок, который появляется из будущего. Это может произойти из-за некорректно установленных даты и времени на вашем компьютере. Остается только перестраивать базу блоков, если вы уверены, что дата и время корректны. + В базе данных блоков найден блок из будущего. Это может произойти из-за неверно установленных даты и времени на вашем компьютере. Перестраивайте базу данных блоков только если вы уверены, что дата и время установлены верно. This is a pre-release test build - use at your own risk - do not use for mining or merchant applications @@ -3610,27 +3618,27 @@ Go to File > Open Wallet to load a wallet. This is the transaction fee you may discard if change is smaller than dust at this level - Это плата за транзакцию, которую вы можете отменить, если изменения меньше, чем пыль + Это комиссия за транзакцию, которую вы можете отбросить, если сдача меньше, чем пыль на этом уровне Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. - Невозможно воспроизвести блоки. Вам нужно будет перестроить базу данных, используя -reindex-chaintate. + Невозможно воспроизвести блоки. Вам необходимо перестроить базу данных, используя -reindex-chaintate. Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain - Невозможно отмотать базу данных до предфоркового состояния. Вам будет необходимо перекачать цепочку блоков. + Невозможно откатить базу данных до предфоркового состояния. Вам необходимо заново скачать цепочку блоков. Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. - Внимание: Похоже, в сети нет полного согласия! Некоторые майнеры, возможно, испытывают проблемы. + Внимание: по-видимому, в сети нет полного согласия! Некоторые майнеры, возможно, испытывают проблемы. Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. - Внимание: Мы не полностью согласны с подключенными участниками! Вам или другим участникам, возможно, следует обновиться. + Внимание: мы не полностью согласны с другими узлами! Вам или другим участникам, возможно, следует обновить клиент. -maxmempool must be at least %d MB - -maxmempool должен быть как минимум %d Мб + -maxmempool должен быть как минимум %d МБ Cannot resolve -%s address: '%s' @@ -3638,39 +3646,39 @@ Go to File > Open Wallet to load a wallet. Change index out of range - Изменение индекса вне диапазона + Индекс сдачи вне диапазона Config setting for %s only applied on %s network when in [%s] section. - Настройка конфигурации для %s применяется только в %s сети во [%s] разделе. + Настройка конфигурации %s применяется в сети %s только если находится в разделе [%s]. Copyright (C) %i-%i - Авторское право (©) %i-%i + Copyright (C) %i-%i Corrupted block database detected - БД блоков повреждена + Обнаружена повреждённая база данных блоков Could not find asmap file %s - Не могу найти asmap файл %s + Невозможно найти файл asmap %s Could not parse asmap file %s - Не могу разобрать asmap файл %s + Не могу разобрать файл asmap %s Do you want to rebuild the block database now? - Пересобрать БД блоков прямо сейчас? + Пересобрать базу данных блоков прямо сейчас? Error initializing block database - Ошибка инициализации БД блоков + Ошибка инициализации базы данных блоков Error initializing wallet database environment %s! - Ошибка инициализации окружения БД кошелька %s! + Ошибка инициализации окружения базы данных кошелька %s! Error loading %s @@ -3678,7 +3686,7 @@ Go to File > Open Wallet to load a wallet. Error loading %s: Private keys can only be disabled during creation - Ошибка загрузки %s: Приватные ключи можно отключить только при создании + Ошибка загрузки %s: приватные ключи можно отключить только при создании Error loading %s: Wallet corrupted @@ -3686,15 +3694,15 @@ Go to File > Open Wallet to load a wallet. Error loading %s: Wallet requires newer version of %s - Ошибка загрузки %s: кошелёк требует более поздней версии %s + Ошибка загрузки %s: кошелёк требует более новой версии %s Error loading block database - Ошибка чтения БД блоков + Ошибка чтения базы данных блоков Error opening block database - Не удалось открыть БД блоков + Не удалось открыть базу данных блоков Failed to listen on any port. Use -listen=0 if you want this. @@ -3702,7 +3710,7 @@ Go to File > Open Wallet to load a wallet. Failed to rescan the wallet during initialization - Не удалось повторно сканировать кошелёк во время инициализации + Не удалось пересканировать кошелёк во время инициализации Failed to verify database @@ -3710,7 +3718,7 @@ Go to File > Open Wallet to load a wallet. Ignoring duplicate -wallet %s. - Игнорировать повторы -wallet %s. + Игнорируются повторные параметры -wallet %s. Importing... @@ -3718,7 +3726,7 @@ Go to File > Open Wallet to load a wallet. Incorrect or no genesis block found. Wrong datadir for network? - Неверный или отсутствующий начальный блок. Неправильный каталог данных для сети? + Неверный или отсутствующий начальный блок. Неверно указана директория данных для этой сети? Initialization sanity check failed. %s is shutting down. @@ -3734,19 +3742,19 @@ Go to File > Open Wallet to load a wallet. Invalid amount for -discardfee=<amount>: '%s' - Недопустимая сумма для -discardfee=<amount>: '%s' + Неверная сумма для -discardfee=<amount>: '%s' Invalid amount for -fallbackfee=<amount>: '%s' - Недопустимая сумма для -fallbackfee=<amount>: '%s' + Неверная сумма для -fallbackfee=<amount>: '%s' SQLiteDatabase: Failed to execute statement to verify database: %s - SQLiteDatabase: Не удалось произвести проверку базы данных: %s + SQLiteDatabase: Не удалось выполнить запрос для проверки базы данных: %s SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s - SQLiteDatabase: Не удалось загрузить sqlite кошелёк версии: %s + SQLiteDatabase: Не удалось загрузить версию схемы sqlite кошелька: %s SQLiteDatabase: Failed to fetch the application id: %s @@ -3754,7 +3762,7 @@ Go to File > Open Wallet to load a wallet. SQLiteDatabase: Failed to prepare statement to verify database: %s - SQLiteDatabase: Не удалось приготовить утверждение для проверки базы данных: %s + SQLiteDatabase: Не удалось подготовить запрос для проверки базы данных: %s SQLiteDatabase: Failed to read database verification error: %s @@ -3762,23 +3770,23 @@ Go to File > Open Wallet to load a wallet. SQLiteDatabase: Unexpected application id. Expected %u, got %u - SQLiteDatabase: Неожиданный id приложения. Ожидалось %u, а получено %u + SQLiteDatabase: Неожиданный id приложения. Ожидалось %u, но получено %u Specified blocks directory "%s" does not exist. - Указанная директория с блоками "%s" не существует. + Указанная директория для блоков "%s" не существует. Unknown address type '%s' - Адрес неизвестного типа '%s' + Неизвестный тип адреса '%s' Unknown change type '%s' - Неизвестный тип адреса для сдачи '%s' + Неизвестный тип сдачи '%s' Upgrading txindex database - Обновление БД txindex + Обновление базы данных txindex Loading P2P addresses... @@ -3786,27 +3794,27 @@ Go to File > Open Wallet to load a wallet. Loading banlist... - Загрузка черного списка... + Загрузка чёрного списка... Not enough file descriptors available. - Недоступно достаточное количество дескрипторов файла. + Недостаточно доступных файловых дескрипторов. Prune cannot be configured with a negative value. - Удаление блоков не может использовать отрицательное значение. + Обрезка блоков не может использовать отрицательное значение. Prune mode is incompatible with -txindex. - Режим удаления блоков несовместим с -txindex. + Режим обрезки несовместим с -txindex. Replaying blocks... - Пересборка блоков... + Воспроизведение блоков... Rewinding blocks... - Перемотка блоков... + Откат блоков... The source code is available from %s. @@ -3818,7 +3826,7 @@ Go to File > Open Wallet to load a wallet. Unable to bind to %s on this computer. %s is probably already running. - Невозможно привязаться к %s на этом компьютере. Возможно, %s уже работает. + Невозможно привязаться к %s на этом компьютере. Возможно, %s уже запущен. Unable to generate keys @@ -3830,11 +3838,11 @@ Go to File > Open Wallet to load a wallet. Upgrading UTXO database - Обновление БД UTXO + Обновление базы данных UTXO User Agent comment (%s) contains unsafe characters. - Комментарий пользователя (%s) содержит небезопасные символы. + Комментарий User Agent (%s) содержит небезопасные символы. Verifying blocks... @@ -3842,7 +3850,7 @@ Go to File > Open Wallet to load a wallet. Wallet needed to be rewritten: restart %s to complete - Необходимо перезаписать кошелёк, перезапустите %s для завершения операции. + Необходимо перезаписать кошелёк, перезапустите %s для завершения операции Error: Listening for incoming connections failed (listen returned error %s) @@ -3850,15 +3858,15 @@ Go to File > Open Wallet to load a wallet. %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. - %s испорчен. Попробуйте восстановить с помощью инструмента bitcoin-wallet, или используйте резервную копию. + %s испорчен. Попробуйте восстановить с помощью инструмента bitcoin-wallet или восстановите из резервной копии. Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. - Невозможно обновить не разделенный HD кошелёк без обновления для поддержки предварительно разделенного пула ключей. Пожалуйста, используйте версию 169900 или повторите без указания версии. + Невозможно обновить разделённый кошелёк без HD, не обновившись для поддержки предварительно разделённого пула ключей. Пожалуйста, используйте версию 169900 или повторите без указания версии. Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) - Неверное значение для -maxtxfee=<amount>: '%s' (минимальная комиссия трансляции %s для предотвращения зависания транзакций) + Неверное значение для -maxtxfee=<amount>: '%s' (должна быть не ниже минимально ретранслируемой комиссии %s для предотвращения зависания транзакций) The transaction amount is too small to send after the fee has been deducted @@ -3870,7 +3878,7 @@ Go to File > Open Wallet to load a wallet. This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. - Это максимальная транзакция, которую вы заплатите (в добавок к обычной плате) для избежания затрат по причине отбора монет. + Это максимальная транзакция, которую вы заплатите (в добавок к обычной плате), чтобы отдать приоритет избежанию частичной траты перед обычным управлением монетами. Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. @@ -3878,7 +3886,7 @@ Go to File > Open Wallet to load a wallet. You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain - Вам необходимо пересобрать базу данных с помощью -reindex, чтобы вернуться к полному режиму. Это приведёт к перезагрузке всей цепи блоков + Вам необходимо пересобрать базу данных с помощью -reindex, чтобы вернуться к полному режиму. Это приведёт к повторному скачиванию всей цепочки блоков A fatal internal error occurred, see debug.log for details @@ -3886,7 +3894,7 @@ Go to File > Open Wallet to load a wallet. Cannot set -peerblockfilters without -blockfilterindex. - Не удалось поставить -peerblockfilters без использования -blockfilterindex. + Нельзя указывать -peerblockfilters без -blockfilterindex. Disk space is too low! @@ -3894,23 +3902,23 @@ Go to File > Open Wallet to load a wallet. Error reading from database, shutting down. - Ошибка чтения с базы данных, выполняется закрытие. + Ошибка чтения из базы данных, программа закрывается. Error upgrading chainstate database - Ошибка обновления БД состояния цепи + Ошибка обновления базы данных chainstate Error: Disk space is low for %s - Ошибка: На диске недостаточно места для %s + Ошибка: на диске недостаточно места для %s Error: Keypool ran out, please call keypoolrefill first - Пул ключей опустел, пожалуйста сначала выполните keypoolrefill + Ошибка: пул ключей опустел, пожалуйста сначала выполните keypoolrefill Fee rate (%s) is lower than the minimum fee rate setting (%s) - Количество комисии (%s) меньше чем настроенное минимальное количество комисии (%s). + Уровень комиссии (%s) меньше, чем значение настройки минимального уровня комиссии (%s). Invalid -onion address or hostname: '%s' @@ -3922,7 +3930,7 @@ Go to File > Open Wallet to load a wallet. Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) - Неверное количество в параметре -paytxfee=<amount>: '%s' (должно быть как минимум %s) + Неверная сумма для -paytxfee=<amount>: '%s' (должно быть как минимум %s) Invalid netmask specified in -whitelist: '%s' @@ -3934,15 +3942,15 @@ Go to File > Open Wallet to load a wallet. No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. - Не указан прокси сервер. Используйте -proxy=<ip> или -proxy=<ip:port> + Не указан прокси-сервер. Используйте -proxy=<ip> или -proxy=<ip:port> Prune mode is incompatible with -blockfilterindex. - Режим удаления блоков несовместим с -blockfilterindex. + Режим обрезки несовместим с -blockfilterindex. Reducing -maxconnections from %d to %d, because of system limitations. - Уменьшите -maxconnections с %d до %d, из-за ограничений системы. + Уменьшите -maxconnections с %d до %d из-за ограничений системы. Section [%s] is not recognized. @@ -3950,7 +3958,7 @@ Go to File > Open Wallet to load a wallet. Signing transaction failed - Подписание транзакции завершилось неудачей + Подписание транзакции не удалось Specified -walletdir "%s" does not exist @@ -3962,7 +3970,7 @@ Go to File > Open Wallet to load a wallet. Specified -walletdir "%s" is not a directory - Указанный -walletdir "%s" не является каталогом + Указанный -walletdir "%s" не является директорией The specified config file %s does not exist @@ -3976,7 +3984,7 @@ Go to File > Open Wallet to load a wallet. This is experimental software. - Это экспериментальное ПО. + Это экспериментальная программа. Transaction amount too small @@ -4004,15 +4012,15 @@ Go to File > Open Wallet to load a wallet. Verifying wallet(s)... - Проверка кошелька(ов)... + Проверка кошелька(-ов)... Warning: unknown new rules activated (versionbit %i) - Внимание: Неизвестные правила вступили в силу (versionbit %i) + Внимание: неизвестные правила вступили в силу (versionbit %i) -maxtxfee is set very high! Fees this large could be paid on a single transaction. - Установлено очень большое значение -maxtxfee. Такие большие комиссии могут быть уплачены в отдельной транзакции. + Установлено очень большое значение -maxtxfee! Такие большие комиссии могут быть уплачены в отдельной транзакции. This is the transaction fee you may pay when fee estimates are not available. @@ -4032,7 +4040,7 @@ Go to File > Open Wallet to load a wallet. The wallet will avoid paying less than the minimum relay fee. - Кошелёк будет избегать оплат меньше минимальной комиссии передачи. + Кошелёк будет стараться не платить меньше, чем минимальная комиссии ретрансляции. This is the minimum transaction fee you pay on every transaction. @@ -4048,7 +4056,7 @@ Go to File > Open Wallet to load a wallet. Transaction has too long of a mempool chain - В транзакции слишком длинная цепочка + В транзакции слишком длинная цепочка пула памяти Transaction must have at least one recipient @@ -4056,7 +4064,7 @@ Go to File > Open Wallet to load a wallet. Unknown network specified in -onlynet: '%s' - Неизвестная сеть, указанная в -onlynet: '%s' + Неизвестная сеть указана в -onlynet: '%s' Insufficient funds @@ -4068,7 +4076,7 @@ Go to File > Open Wallet to load a wallet. Warning: Private keys detected in wallet {%s} with disabled private keys - Предупреждение: Приватные ключи обнаружены в кошельке {%s} с отключенными приватными ключами + Предупреждение: приватные ключи обнаружены в кошельке {%s} с отключенными приватными ключами Cannot write to data directory '%s'; check permissions. @@ -4080,15 +4088,15 @@ Go to File > Open Wallet to load a wallet. Loading wallet... - Загрузка электронного кошелька... + Загрузка кошелька... Cannot downgrade wallet - Не удаётся понизить версию электронного кошелька + Невозможно понизить версию кошелька Rescanning... - Сканирование... + Повторное сканирование... Done loading diff --git a/src/qt/locale/bitcoin_sk.ts b/src/qt/locale/bitcoin_sk.ts index 6fe8859a8..fe4d8806e 100644 --- a/src/qt/locale/bitcoin_sk.ts +++ b/src/qt/locale/bitcoin_sk.ts @@ -3,7 +3,7 @@ AddressBookPage Right-click to edit address or label - Kliknutím pravým tlačidlom upraviť adresu alebo popis + Kliknutím pravým tlačidlom upravíte adresu alebo popis Create a new address @@ -15,7 +15,7 @@ Copy the currently selected address to the system clipboard - Zkopírovať práve zvolenú adresu + Skopírovať zvolenú adresu &Copy @@ -69,6 +69,11 @@ These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. Toto sú Vaše Bitcoin adresy pre posielanie platieb. Vždy skontrolujte sumu a prijímaciu adresu pred poslaním mincí. + + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + Toto sú vaše Bitcoin adresy pre prijímanie platieb. Pre vytvorenie nových adries kliknite na "Vytvoriť novú prijímaciu adresu" na karte "Prijať". Podpisovanie je možné iba s adresami typu "legacy". + &Copy Address &Kopírovať adresu @@ -225,7 +230,7 @@ Wallet decryption failed - Zlyhalo šifrovanie peňaženky. + Dešifrovanie peňaženky zlyhalo Wallet passphrase was successfully changed. @@ -355,7 +360,7 @@ Proxy is <b>enabled</b>: %1 - Proxy je <b>zapnuté</b>: %1 + Proxy sú <b>zapnuté</b>: %1 Send coins to a Bitcoin address @@ -395,11 +400,11 @@ Sign messages with your Bitcoin addresses to prove you own them - Podpísať správu s vašou adresou Bitcoin aby ste preukázali že ju vlastníte + Podpísať správu s vašou Bitcoin adresou, aby ste preukázali, že ju vlastníte Verify messages to ensure they were signed with specified Bitcoin addresses - Overiť či správa bola podpísaná uvedenou Bitcoin adresou + Overiť, či boli správy podpísané uvedenou Bitcoin adresou &File @@ -415,7 +420,7 @@ Tabs toolbar - Lišta záložiek + Lišta nástrojov Request payments (generates QR codes and bitcoin: URIs) @@ -477,6 +482,22 @@ Up to date Aktualizovaný + + &Load PSBT from file... + &Načítať PSBT zo súboru... + + + Load Partially Signed Bitcoin Transaction + Načítať sčasti podpísanú Bitcoin transakciu + + + Load PSBT from clipboard... + Načítať skopírovanú PSBT... + + + Load Partially Signed Bitcoin Transaction from clipboard + Načítať čiastočne podpísanú Bitcoin transakciu, ktorú ste skopírovali + Node window Uzlové okno @@ -513,10 +534,26 @@ Close wallet Zatvoriť peňaženku + + Close All Wallets... + Zatvoriť Všetky Peňaženky... + + + Close all wallets + Zatvoriť všetky peňaženky + Show the %1 help message to get a list with possible Bitcoin command-line options Ukáž %1 zoznam možných nastavení Bitcoinu pomocou príkazového riadku + + &Mask values + &Skryť hodnoty + + + Mask the values in the Overview tab + Skryť hodnoty v karte "Prehľad" + default wallet predvolená peňaženka @@ -547,7 +584,7 @@ Connecting to peers... - Pripája sa k partnerom... + Pripája sa k peerom... Catching up... @@ -625,7 +662,15 @@ Wallet is <b>encrypted</b> and currently <b>locked</b> Peňaženka je <b>zašifrovaná</b> a momentálne <b>zamknutá</b> - + + Original message: + Originálna správa: + + + A fatal error occurred. %1 can no longer continue safely and will quit. + Kritická chyba. %1 nemôže ďalej bezpečne pokračovať a ukončí sa. + + CoinControlDialog @@ -798,6 +843,10 @@ Create Wallet Vytvoriť peňaženku + + Wallet + Peňaženka + Wallet Name Názov peňaženky @@ -810,6 +859,10 @@ Encrypt Wallet Zašifrovať peňaženku + + Advanced Options + Rozšírené nastavenia + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. Vypnúť súkromné kľúče pre túto peňaženku. Peňaženky s vypnutými súkromnými kľúčmi nebudú mať súkromné kľúče a nemôžu mať HD inicializáciu ani importované súkromné kľúče. Toto je ideálne pre peňaženky iba na sledovanie. @@ -944,7 +997,7 @@ Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. - Zvrátenie tohto nastavenia vyžaduje opätovné stiahnutie celého reťazca blokov. Je rýchlejšie najprv stiahnuť celý reťazec blokov a potom ho redukovať neskôr. Vypne niektoré pokročilé funkcie. + Zvrátenie tohto nastavenia vyžaduje opätovné stiahnutie celého blockchainu. Je rýchlejšie najprv stiahnuť celý reťazec blokov a potom ho redukovať neskôr. Vypne niektoré pokročilé funkcie. This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. @@ -1059,7 +1112,7 @@ %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. - %1 sa práve synchronizuje. Sťahujú sa hlavičky a bloky od partnerov. Tie sa budú sa overovať až sa kompletne overí celý reťazec blokov - blockchain. + %1 sa práve synchronizuje. Sťahujú sa hlavičky a bloky od peerov. Tie sa budú sa overovať až sa kompletne overí celý reťazec blokov - blockchain. Unknown. Syncing Headers (%1, %2%)... @@ -1128,7 +1181,7 @@ Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type. - Ukazuje, či se zadaná východzia SOCKS5 proxy používá k pripojovaniu k peerom v rámci tohoto typu siete. + Ukazuje, či sa zadaná východzia SOCKS5 proxy používa k pripojovaniu k peerom v rámci tohto typu siete. Hide the icon from the system tray. @@ -1168,7 +1221,7 @@ Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. - Zakáže niektoré pokročilé funkcie, ale všetky bloky budú stále plne overené. Obnovenie tohto nastavenia vyžaduje opätovné prevzatie celého reťazca blokov. Skutočné využitie disku môže byť o niečo vyššie. + Zakáže niektoré pokročilé funkcie, ale všetky bloky budú stále plne overené. Obnovenie tohto nastavenia vyžaduje opätovné prevzatie celého blockchainu. Skutočné využitie disku môže byť o niečo vyššie. Prune &block storage to @@ -1180,7 +1233,7 @@ Reverting this setting requires re-downloading the entire blockchain. - Obnovenie tohto nastavenia vyžaduje opätovné stiahnutie celého reťazca blokov. + Obnovenie tohto nastavenia vyžaduje opätovné stiahnutie celého blockchainu. MiB @@ -1232,7 +1285,7 @@ &Connect through SOCKS5 proxy (default proxy): - &Pripojiť cez proxy server SOCKS5 (predvolený proxy). + &Pripojiť cez proxy server SOCKS5 (predvolený proxy): Proxy &IP: @@ -1302,6 +1355,14 @@ Whether to show coin control features or not. Či zobrazovať možnosti kontroly mincí alebo nie. + + Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. + Pripojiť k Bitcoin sieti skrz samostatnú SOCKS5 proxy pre službu Tor. + + + Use separate SOCKS&5 proxy to reach peers via Tor onion services: + Použiť samostatný SOCKS&5 proxy server na nadviazanie spojenia s peer-mi cez službu Tor: + &Third party transaction URLs URL transakcií tretích strán @@ -1437,17 +1498,97 @@ Current total balance in watch-only addresses Aktuálny celkový zostatok pre adries ktoré sa iba sledujú - + + Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. + Na karte "Prehľad" je aktivovaný súkromný mód, pre odkrytie hodnôt odškrtnite v nastaveniach "Skryť hodnoty" + + PSBTOperationsDialog Dialog Dialóg + + Sign Tx + Podpísať transakciu + + + Broadcast Tx + Odoslať transakciu + + + Copy to Clipboard + Skopírovať + Save... Uložiť... + + Close + Zatvoriť + + + Failed to load transaction: %1 + Nepodarilo sa načítať transakciu: %1 + + + Failed to sign transaction: %1 + Nepodarilo sa podpísať transakciu: %1 + + + Could not sign any more inputs. + Nie je možné podpísať žiadne ďalšie vstupy. + + + Signed %1 inputs, but more signatures are still required. + Podpísaných %1 vstupov, no ešte sú požadované ďalšie podpisy. + + + Signed transaction successfully. Transaction is ready to broadcast. + Transakcia bola úspešne podpísaná a je pripravená na odoslanie. + + + Unknown error processing transaction. + Neznáma chyba pri spracovávaní transakcie + + + Transaction broadcast successfully! Transaction ID: %1 + Transakcia bola úspešne odoslaná! ID transakcie: %1 + + + Transaction broadcast failed: %1 + Odosielanie transakcie zlyhalo: %1 + + + PSBT copied to clipboard. + PSBT bola skopírovaná. + + + Save Transaction Data + Uložiť údaje z transakcie + + + Partially Signed Transaction (Binary) (*.psbt) + Čiastočne podpísaná transakcia (binárna) (*.psbt) + + + PSBT saved to disk. + PSBT bola uložená na disk. + + + * Sends %1 to %2 + * Pošle %1 do %2 + + + Unable to calculate transaction fee or total transaction amount. + Nepodarilo sa vypočítať poplatok za transakciu alebo celkovú sumu transakcie. + + + Pays transaction fee: + Zaplatí poplatok za transakciu: + Total Amount Celková suma @@ -1456,7 +1597,35 @@ or alebo - + + Transaction has %1 unsigned inputs. + Transakcia má %1 nepodpísaných vstupov. + + + Transaction is missing some information about inputs. + Transakcii chýbajú niektoré informácie o vstupoch. + + + Transaction still needs signature(s). + Transakcii stále chýbajú podpis(y). + + + (But this wallet cannot sign transactions.) + (Ale táto peňaženka nemôže podpisovať transakcie) + + + (But this wallet does not have the right keys.) + (Ale táto peňaženka nemá správne kľúče) + + + Transaction is fully signed and ready for broadcast. + Transakcia je plne podpísaná a je pripravená na odoslanie. + + + Transaction status is unknown. + Status transakcie je neznámy. + + PaymentServer @@ -1786,7 +1955,7 @@ The mapped Autonomous System used for diversifying peer selection. - Mapovaný nezávislý - Autonómny Systém používaný na rozšírenie vzájomného výberu partnerov. + Mapovaný nezávislý - Autonómny Systém používaný na rozšírenie vzájomného výberu peerov. Mapped AS @@ -1800,6 +1969,10 @@ Node window Uzlové okno + + Current block height + Aktuálne číslo bloku + Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. Otvoriť %1 ladiaci výpis z aktuálnej zložky. Pre veľké súbory to môže chvíľu trvať. @@ -1812,6 +1985,10 @@ Increase font size Zväčšiť písmo + + Permissions + Povolenia + Services Služby @@ -2067,9 +2244,21 @@ Could not unlock wallet. Nepodarilo sa odomknúť peňaženku. - + + Could not generate new %1 address + Nepodarilo sa vygenerovať novú %1 adresu + + ReceiveRequestDialog + + Request payment to ... + Požiadať o platbu pre ... + + + Address: + Adresa: + Amount: Suma: @@ -2326,7 +2515,7 @@ Poznámka: Keďže poplatok je počítaný za bajt, poplatok o hodnote "100 sato Cr&eate Unsigned - Vytvoriť bez podpisu + Vy&tvoriť bez podpisu Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. @@ -2352,6 +2541,22 @@ Poznámka: Keďže poplatok je počítaný za bajt, poplatok o hodnote "100 sato Are you sure you want to send? Určite chcete odoslať transakciu? + + Create Unsigned + Vytvoriť bez podpisu + + + Save Transaction Data + Uložiť údaje z transakcie + + + Partially Signed Transaction (Binary) (*.psbt) + Čiastočne podpísaná transakcia (binárna) (*.psbt) + + + PSBT saved + PSBT uložená + or alebo @@ -3174,9 +3379,25 @@ Poznámka: Keďže poplatok je počítaný za bajt, poplatok o hodnote "100 sato Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. Zatvorenie peňaženky na príliš dlhú dobu môže mať za následok potrebu znova synchronizovať celý reťazec blokov (blockchain) v prípade, že je aktivované redukovanie blokov. - + + Close all wallets + Zatvoriť všetky peňaženky + + + Are you sure you wish to close all wallets? + Naozaj si želáte zatvoriť všetky peňaženky? + + WalletFrame + + No wallet has been loaded. +Go to File > Open Wallet to load a wallet. +- OR - + Nie je načítaná žiadna peňaženka. +Choďte do Súbor > Otvoriť Peňaženku, pre načítanie peňaženky. +- ALEBO - + Create a new wallet Vytvoriť novú peňaženku @@ -3226,7 +3447,7 @@ Poznámka: Keďže poplatok je počítaný za bajt, poplatok o hodnote "100 sato PSBT copied - PSBT skopírovaný + PSBT skopírovaná Can't sign transaction. @@ -3255,6 +3476,26 @@ Poznámka: Keďže poplatok je počítaný za bajt, poplatok o hodnote "100 sato Error Chyba + + Unable to decode PSBT from clipboard (invalid base64) + Nepodarilo sa dekódovať skopírovanú PSBT (invalid base64) + + + Load Transaction Data + Načítať údaje o transakcii + + + Partially Signed Transaction (*.psbt) + Čiastočne podpísaná transakcia (*.psbt) + + + PSBT file must be smaller than 100 MiB + Súbor PSBT musí byť menší než 100 MiB + + + Unable to decode PSBT + Nepodarilo sa dekódovať PSBT + Backup Wallet Zálohovanie peňaženky @@ -3296,7 +3537,7 @@ Poznámka: Keďže poplatok je počítaný za bajt, poplatok o hodnote "100 sato Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) - Redukovanie: posledná synchronizácia peňaženky prebehla pred časmi blokov v redukovaných dátach. Je potrebné vykonať -reindex (v prípade redukovaného režimu stiahne znovu celý reťazec blokov) + Redukovanie: posledná synchronizácia peňaženky prebehla pred časmi blokov v redukovaných dátach. Je potrebné vykonať -reindex (v prípade redukovaného režimu stiahne znovu celý blockchain) Pruning blockstore... @@ -3348,7 +3589,7 @@ Poznámka: Keďže poplatok je počítaný za bajt, poplatok o hodnote "100 sato Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain - Nedará sa vrátiť databázu do stavu pred rozdelením. Budete musieť znovu stiahnuť celý reťaztec blokov + Nedará sa vrátiť databázu do stavu pred rozdelením. Budete musieť znovu stiahnuť celý blockchain Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. @@ -3434,6 +3675,14 @@ Poznámka: Keďže poplatok je počítaný za bajt, poplatok o hodnote "100 sato Failed to rescan the wallet during initialization Počas inicializácie sa nepodarila pre-skenovať peňaženka + + Failed to verify database + Nepodarilo sa overiť databázu + + + Ignoring duplicate -wallet %s. + Ignorujú sa duplikátne -wallet %s. + Importing... Prebieha import ... @@ -3462,6 +3711,10 @@ Poznámka: Keďže poplatok je počítaný za bajt, poplatok o hodnote "100 sato Invalid amount for -fallbackfee=<amount>: '%s' Neplatná suma pre -fallbackfee=<amount>: '%s' + + SQLiteDatabase: Unexpected application id. Expected %u, got %u + SQLiteDatabase: Neočakávané ID aplikácie: %u. Očakávané: %u + Specified blocks directory "%s" does not exist. Zadaný adresár blokov "%s" neexistuje. @@ -3556,7 +3809,19 @@ Poznámka: Keďže poplatok je počítaný za bajt, poplatok o hodnote "100 sato You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain - K návratu k neredukovanému režimu je potrebné prestavať databázu použitím -reindex. Tiež sa znova stiahne celý reťazec blokov + K návratu k neredukovanému režimu je potrebné prestavať databázu použitím -reindex. Tiež sa znova stiahne celý blockchain + + + A fatal internal error occurred, see debug.log for details + Nastala fatálna interná chyba, pre viac informácií pozrite debug.log + + + Cannot set -peerblockfilters without -blockfilterindex. + Nepodarilo sa určiť -peerblockfilters bez -blockfilterindex. + + + Disk space is too low! + Nedostatok miesta na disku! Error reading from database, shutting down. @@ -3570,6 +3835,10 @@ Poznámka: Keďže poplatok je počítaný za bajt, poplatok o hodnote "100 sato Error: Disk space is low for %s Chyba: Málo miesta na disku pre %s + + Fee rate (%s) is lower than the minimum fee rate setting (%s) + Zvolený poplatok (%s) je nižší ako nastavený minimálny poplatok (%s) + Invalid -onion address or hostname: '%s' Neplatná -onion adresa alebo hostiteľ: '%s' @@ -3590,6 +3859,10 @@ Poznámka: Keďže poplatok je počítaný za bajt, poplatok o hodnote "100 sato Need to specify a port with -whitebind: '%s' Je potrebné zadať port s -whitebind: '%s' + + No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. + Nie je špecifikovaný proxy server. Použite -proxy=<ip> alebo -proxy=<ip:port>. + Prune mode is incompatible with -blockfilterindex. Režim redukovania je nekompatibilný s -blockfilterindex. diff --git a/src/qt/locale/bitcoin_sl.ts b/src/qt/locale/bitcoin_sl.ts index 04d93ca4d..30df573d1 100644 --- a/src/qt/locale/bitcoin_sl.ts +++ b/src/qt/locale/bitcoin_sl.ts @@ -844,6 +844,10 @@ Podpisovanje je možno le s podedovanimi ("legacy") naslovi. Create Wallet Ustvari denarnico + + Wallet + Denarnica + Wallet Name Ime denarnice @@ -856,6 +860,10 @@ Podpisovanje je možno le s podedovanimi ("legacy") naslovi. Encrypt Wallet Šifriraj denarnico + + Advanced Options + Napredne možnosti + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. Onemogoči zasebne ključe za to denarnico. Denarnice z onemogočenimi zasebnimi ključi ne bodo imele zasebnih ključev in ne morejo imeti HD-semena ali uvoženih zasebnih ključev. To je primerno za opazovane denarnice. @@ -3575,6 +3583,10 @@ Za odpiranje denarnice kliknite Datoteka > Odpri denarnico Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. Napaka pri branju %s! Vsi ključi so bili prebrani pravilno, vendar so lahko vnosi o transakcijah ali vnosi naslovov nepravilni ali manjkajo. + + More than one onion bind address is provided. Using %s for the automatically created Tor onion service. + Nastavljen je več kot en onion-naslov. Za samodejno ustvarjeno storitev na Toru uporabljam %s. + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. Opozorilo: Preverite, če sta datum in ura na vašem računalniku točna! %s ne bo deloval pravilno, če je nastavljeni čas nepravilen. @@ -3703,6 +3715,10 @@ Za odpiranje denarnice kliknite Datoteka > Odpri denarnico Failed to verify database Preverba podatkovne baze je spodletela. + + Ignoring duplicate -wallet %s. + Podvojen -wallet %s -- ne upoštevam. + Importing... Uvažam ... diff --git a/src/qt/locale/bitcoin_sn.ts b/src/qt/locale/bitcoin_sn.ts index fa8b9cee2..1e53ffdd2 100644 --- a/src/qt/locale/bitcoin_sn.ts +++ b/src/qt/locale/bitcoin_sn.ts @@ -142,6 +142,10 @@ CreateWalletDialog + + Wallet + Chikwama + EditAddressDialog diff --git a/src/qt/locale/bitcoin_sq.ts b/src/qt/locale/bitcoin_sq.ts index 066e9d85e..8fd858a58 100644 --- a/src/qt/locale/bitcoin_sq.ts +++ b/src/qt/locale/bitcoin_sq.ts @@ -367,6 +367,10 @@ Signing is only possible with addresses of the type 'legacy'. CreateWalletDialog + + Wallet + Portofol + EditAddressDialog diff --git a/src/qt/locale/bitcoin_sr.ts b/src/qt/locale/bitcoin_sr.ts index b381fc992..8a72ccd11 100644 --- a/src/qt/locale/bitcoin_sr.ts +++ b/src/qt/locale/bitcoin_sr.ts @@ -635,6 +635,10 @@ Signing is only possible with addresses of the type 'legacy'. Wallet is <b>encrypted</b> and currently <b>locked</b> Новчаник јс <b>шифрован</b> и тренутно <b>закључан</b> + + Original message: + Оригинална порука: + CoinControlDialog @@ -808,6 +812,10 @@ Signing is only possible with addresses of the type 'legacy'. Create Wallet Направи новчаник + + Wallet + Новчаник + Wallet Name Име Новчаника @@ -1486,7 +1494,11 @@ Signing is only possible with addresses of the type 'legacy'. or или - + + Transaction status is unknown. + Статус трансакције је непознат. + + PaymentServer diff --git a/src/qt/locale/bitcoin_sr@latin.ts b/src/qt/locale/bitcoin_sr@latin.ts index bfed8b96a..4607912ea 100644 --- a/src/qt/locale/bitcoin_sr@latin.ts +++ b/src/qt/locale/bitcoin_sr@latin.ts @@ -488,6 +488,10 @@ CreateWalletDialog + + Wallet + Novčanik + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. Onemogućite privatne ključeve za ovaj novčanik. Novčanici sa isključenim privatnim ključevima neće imati privatne ključeve i ne mogu imati HD seme ili uvezene privatne ključeve. Ovo je idealno za novčanike samo za gledanje. diff --git a/src/qt/locale/bitcoin_sv.ts b/src/qt/locale/bitcoin_sv.ts index 83b86ce2d..c88ffa8d0 100644 --- a/src/qt/locale/bitcoin_sv.ts +++ b/src/qt/locale/bitcoin_sv.ts @@ -827,6 +827,10 @@ Försök igen. Create Wallet Skapa plånbok + + Wallet + Plånbok + Wallet Name Namn på plånboken diff --git a/src/qt/locale/bitcoin_szl.ts b/src/qt/locale/bitcoin_szl.ts index 9b00ac58d..a455368ab 100644 --- a/src/qt/locale/bitcoin_szl.ts +++ b/src/qt/locale/bitcoin_szl.ts @@ -686,6 +686,10 @@ CreateWalletDialog + + Wallet + Portmanyj + EditAddressDialog diff --git a/src/qt/locale/bitcoin_ta.ts b/src/qt/locale/bitcoin_ta.ts index 326065ee9..6b2afcd05 100644 --- a/src/qt/locale/bitcoin_ta.ts +++ b/src/qt/locale/bitcoin_ta.ts @@ -55,7 +55,7 @@ C&hoose - தே&ர்வுசெய் + தே&ர்வுசெய் Sending addresses @@ -69,6 +69,12 @@ These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. இவை பணம் அனுப்புவதற்கு உங்களின் பிட்காயின் முகவரிகள். பிட்காயின்களை அனுப்புவதற்கு முன் எப்பொழுதும் தொகையும் பெறுதலையும் சரிபார்க்கவும். + + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + பிட்காயின் பெறுவதற்காக உங்கள் முகவரி இவை. புதிய முகவரிகளை உருவாக்க 'புதிய முகவரியை உருவாக்கு' என்ற பட்டனை கிளிக் செய்யவும். +கையொப்பமிடுவது 'மரபு' வகையின் முகவரிகளால் மட்டுமே சாத்தியமாகும். + &Copy Address &காபி முகவரி @@ -486,6 +492,10 @@ ஓரளவு கையொப்பமிடப்பட்ட பிட்காயின் பரிவர்த்தனையை ஏற்றவும் + + Load PSBT from clipboard... + கிளிப்போர்டிலிருந்து PSBT ஐ ஏற்றவும் ... + Node window நோட் விண்டோ @@ -522,10 +532,26 @@ Close wallet வாலட்டை மூடு + + Close All Wallets... + அனைத்து பணப்பைகள் மூடு... + + + Close all wallets + அனைத்து பணப்பைகள் மூடு + Show the %1 help message to get a list with possible Bitcoin command-line options சாத்தியமான Bitcoin கட்டளை-வரி விருப்பங்களைக் கொண்ட பட்டியலைப் பெற %1 உதவிச் செய்தியைக் காட்டு + + &Mask values + &மதிப்புகளை மறைக்கவும் + + + Mask the values in the Overview tab + கண்ணோட்டம் தாவலில் மதிப்புகளை மறைக்கவும் + default wallet அடிப்படை வாலட் @@ -807,6 +833,10 @@ Create Wallet வாலட்டை உருவாக்கு + + Wallet + பணப்பை + Wallet Name வாலட் பெயர் @@ -3050,6 +3080,10 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. வாலட்டை அதிக நேரம் மூடுவதாலும் ப்ரூனிங் இயக்கப்பட்டாலோ முழு செயினை ரீசிங்க் செய்வதற்கு இது வழிவகுக்கும். + + Close all wallets + அனைத்து பணப்பைகள் மூடு + WalletFrame diff --git a/src/qt/locale/bitcoin_te.ts b/src/qt/locale/bitcoin_te.ts index 9d70a718c..7d4428b6d 100644 --- a/src/qt/locale/bitcoin_te.ts +++ b/src/qt/locale/bitcoin_te.ts @@ -215,10 +215,38 @@ The supplied passphrases do not match. సరఫరా చేసిన పాస్‌ఫ్రేజ్‌లు సరిపోలడం లేదు. - + + Wallet unlock failed + వాలెట్ అన్‌లాక్ విఫలమైంది + + + The passphrase entered for the wallet decryption was incorrect. + వాలెట్ డిక్రిప్షన్ కోసం నమోదు చేసిన పాస్‌ఫ్రేజ్ తప్పు. + + + Wallet decryption failed + వాలెట్ డీక్రిప్షన్ విఫలమైంది + + + Wallet passphrase was successfully changed. + వాలెట్ పాస్‌ఫ్రేజ్ విజయవంతంగా మార్చబడింది. + + + Warning: The Caps Lock key is on! + హెచ్చరిక: క్యాప్స్ లాక్ కీ ఆన్‌లో ఉంది! + + BanTableModel - + + IP/Netmask + ఐపి/నెట్‌మాస్క్ + + + Banned Until + వరకు నిషేధించబడింది + + BitcoinGUI @@ -233,10 +261,66 @@ &Overview &అవలోకనం + + Show general overview of wallet + జోలె యొక్క సాధారణ అవలోకనాన్ని చూపించు + + + &Transactions + &లావాదేవీలు + + + Browse transaction history + లావాదేవీ చరిత్రను బ్రౌజ్ చేయండి + E&xit నిష్క్రమించు + + Quit application + అప్లికేషన్ నిష్క్రమణ  + + + &About %1 + &గురించి %1 + + + Show information about %1 + %1 గురించి సమాచారాన్ని చూపించు + + + About &Qt + గురించి & Qt + + + Show information about Qt + Qt గురించి సమాచారాన్ని చూపించు + + + &Options... + &ఎంపికలు... + + + Modify configuration options for %1 + %1 కోసం కాన్ఫిగరేషన్ ఎంపికలను సవరించండి + + + &Encrypt Wallet... + & జోలెను గుప్తీకరించండి... + + + &Change Passphrase... + పాస్‌ఫ్రేజ్‌ని మార్చండి + + + Open &URI... + తెరువు &URI ... + + + Create Wallet... + జోలెను సృష్టించండి... + Create a new wallet <div></div> @@ -245,10 +329,50 @@ Wallet: ధనమును తీసుకొనిపోవు సంచి + + Click to disable network activity. + నెట్‌వర్క్ కార్యాచరణను నిలిపివేయడానికి క్లిక్ చేయండి. + + + Network activity disabled. + నెట్‌వర్క్ కార్యాచరణ నిలిపివేయబడింది. + + + Click to enable network activity again. + నెట్‌వర్క్ కార్యాచరణను మళ్లీ ప్రారంభించడానికి క్లిక్ చేయండి. + + + Syncing Headers (%1%)... + శీర్షికలను సమకాలీకరిస్తోంది (%1%)... + + + Reindexing blocks on disk... + డిస్క్‌లో బ్లాక్‌లను రీఇన్డెక్సింగ్ చేస్తుంది... + + + Send coins to a Bitcoin address + బిట్‌కాయిన్ చిరునామాకు నాణేలను పంపండి + + + Backup wallet to another location + మరొక ప్రదేశానికి జోలెను బ్యాకప్ చెయండి + + + Change the passphrase used for wallet encryption + వాలెట్ గుప్తీకరణకు ఉపయోగించే పాస్‌ఫ్రేజ్‌ని మార్చండి + + + &Verify message... + సందేశాన్ని ధృవీకరించండి + &Send పంపు + + &Receive + స్వీకరించండి + Error లోపం @@ -298,6 +422,10 @@ CreateWalletDialog + + Wallet + వాలెట్ + EditAddressDialog diff --git a/src/qt/locale/bitcoin_th.ts b/src/qt/locale/bitcoin_th.ts index 4955e204e..0389831d6 100644 --- a/src/qt/locale/bitcoin_th.ts +++ b/src/qt/locale/bitcoin_th.ts @@ -69,6 +69,12 @@ These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. ที่อยู่ Bitcoin ของคุณสำหรับการส่งการชำระเงิน โปรดตรวจสอบจำนวนเงินและที่อยู่รับก่อนที่จะส่งเหรียญ + + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + &Copy Address &คัดลอกที่อยู่ @@ -163,6 +169,10 @@ Confirm wallet encryption ยืนยันการเข้ารหัสกระเป๋าสตางค์ + + Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! + Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! + Are you sure you wish to encrypt your wallet? คุณแน่ใจหรือไม่ว่าต้องการเข้ารหัสกระเป๋าสตางค์ของคุณ? @@ -171,6 +181,22 @@ Wallet encrypted เข้ารหัสบัญชีเรียบร้อย + + Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. + Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. + + + Enter the old passphrase and new passphrase for the wallet. + Enter the old passphrase and new passphrase for the wallet. + + + Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. + Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. + + + Wallet to be encrypted + Wallet to be encrypted + Your wallet is about to be encrypted. บัญชีของคุณกำลังถูกเข้ารหัส @@ -179,19 +205,43 @@ Your wallet is now encrypted. บัญชีของคุณถูกเข้ารหัสเรียบร้อยแล้ว + + IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. + IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. + Wallet encryption failed การเข้ารหัสกระเป๋าสตางค์ล้มเหลว + + Wallet encryption failed due to an internal error. Your wallet was not encrypted. + Wallet encryption failed due to an internal error. Your wallet was not encrypted. + + + The supplied passphrases do not match. + The supplied passphrases do not match. + Wallet unlock failed การปลดล็อคกระเป๋าสตางค์ล้มเหลว + + The passphrase entered for the wallet decryption was incorrect. + The passphrase entered for the wallet decryption was incorrect. + Wallet decryption failed การถอดรหัสกระเป๋าสตางค์ล้มเหลว - + + Wallet passphrase was successfully changed. + Wallet passphrase was successfully changed. + + + Warning: The Caps Lock key is on! + Warning: The Caps Lock key is on! + + BanTableModel @@ -293,6 +343,10 @@ Click to disable network activity. คลิกเพื่อปิดใช้งานกิจกรรมเครือข่าย + + Network activity disabled. + Network activity disabled. + Click to enable network activity again. คลิกเพื่อเปิดใช้งานกิจกรรมเครือข่ายอีกครั้ง @@ -305,6 +359,10 @@ Reindexing blocks on disk... กำลังทำดัชนี ที่เก็บบล็อก ใหม่ ในดิสก์... + + Proxy is <b>enabled</b>: %1 + Proxy is <b>enabled</b>: %1 + Send coins to a Bitcoin address ส่งเหรียญไปยังที่อยู่ Bitcoin @@ -429,14 +487,26 @@ &Load PSBT from file... &โหลด PSBT จากไฟล์... + + Load Partially Signed Bitcoin Transaction + Load Partially Signed Bitcoin Transaction + Load PSBT from clipboard... โหลด PSBT จากคลิปบอร์ด... + + Load Partially Signed Bitcoin Transaction from clipboard + Load Partially Signed Bitcoin Transaction from clipboard + Node window หน้าต่างโหนด + + Open node debugging and diagnostic console + Open node debugging and diagnostic console + &Sending addresses &ที่อยู่การส่ง @@ -445,6 +515,10 @@ &Receiving addresses &ที่อยู่การรับ + + Open a bitcoin: URI + Open a bitcoin: URI + Open Wallet เปิดกระเป๋าสตางค์ @@ -473,6 +547,14 @@ Show the %1 help message to get a list with possible Bitcoin command-line options แสดง %1 ข้อความช่วยเหลือ เพื่อแสดงรายการ ตัวเลือกที่เป็นไปได้สำหรับ Bitcoin command-line + + &Mask values + &Mask values + + + Mask the values in the Overview tab + Mask the values in the Overview tab + default wallet กระเป๋าสตางค์เริ่มต้น @@ -501,6 +583,10 @@ %1 client %1 ลูกค้า + + Connecting to peers... + Connecting to peers... + Catching up... กำลังตามให้ทัน... @@ -557,6 +643,18 @@ Incoming transaction การทำรายการขาเข้า + + HD key generation is <b>enabled</b> + HD key generation is <b>enabled</b> + + + HD key generation is <b>disabled</b> + HD key generation is <b>disabled</b> + + + Private key <b>disabled</b> + Private key <b>disabled</b> + Wallet is <b>encrypted</b> and currently <b>unlocked</b> ระเป๋าเงินถูก <b>เข้ารหัส</b> และในขณะนี้ <b>ปลดล็อคแล้ว</b> @@ -569,7 +667,11 @@ Original message: ข้อความดั้งเดิม: - + + A fatal error occurred. %1 can no longer continue safely and will quit. + A fatal error occurred. %1 can no longer continue safely and will quit. + + CoinControlDialog @@ -656,6 +758,58 @@ Copy transaction ID คัดลอก ID ธุรกรรม + + Lock unspent + Lock unspent + + + Unlock unspent + Unlock unspent + + + Copy quantity + Copy quantity + + + Copy fee + Copy fee + + + Copy after fee + Copy after fee + + + Copy bytes + Copy bytes + + + Copy dust + Copy dust + + + Copy change + Copy change + + + (%1 locked) + (%1 locked) + + + yes + yes + + + no + no + + + This label turns red if any recipient receives an amount smaller than the current dust threshold. + This label turns red if any recipient receives an amount smaller than the current dust threshold. + + + Can vary +/- %1 satoshi(s) per input. + Can vary +/- %1 satoshi(s) per input. + (no label) (ไม่มีป้ายชื่อ) @@ -675,34 +829,74 @@ Creating Wallet <b>%1</b>... กำลังสร้างกระเป๋าสตางค์ <b>%1</b>... - + + Create wallet failed + Create wallet failed + + + Create wallet warning + Create wallet warning + + CreateWalletDialog Create Wallet สร้างกระเป๋าสตางค์ + + Wallet + กระเป๋าเงิน + Wallet Name ชื่อกระเป๋าสตางค์ + + Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. + Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. + Encrypt Wallet เข้ารหัสกระเป๋าสตางค์ + + Advanced Options + Advanced Options + + + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. + Disable Private Keys ปิดใช้งานกุญแจส่วนตัว + + Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. + Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. + Make Blank Wallet สร้างกระเป๋าสตางค์เปล่า + + Use descriptors for scriptPubKey management + Use descriptors for scriptPubKey management + + + Descriptor Wallet + Descriptor Wallet + Create สร้าง - + + Compiled without sqlite support (required for descriptor wallets) + Compiled without sqlite support (required for descriptor wallets) + + EditAddressDialog @@ -737,11 +931,27 @@ Edit sending address แก้ไขที่อยู่การส่ง + + The entered address "%1" is not a valid Bitcoin address. + The entered address "%1" is not a valid Bitcoin address. + + + Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address. + Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address. + + + The entered address "%1" is already in the address book with label "%2". + The entered address "%1" is already in the address book with label "%2". + Could not unlock wallet. ไม่สามารถปลดล็อคกระเป๋าสตางค์ - + + New key generation failed. + New key generation failed. + + FreespaceChecker @@ -794,6 +1004,22 @@ As this is the first time the program is launched, you can choose where %1 will store its data. นี่เป็นการรันโปรแกรมครั้งแรก ท่านสามารถเลือก ว่าจะเก็บข้อมูลไว้ที่ %1 + + When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. + When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. + + + Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. + Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. + + + This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. + This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. + + + If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. + If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. + Use the default data directory ใช้ไดเรกทอรีข้อมูลเริ่มต้น @@ -806,10 +1032,22 @@ Bitcoin Bitcoin + + Discard blocks after verification, except most recent %1 GB (prune) + Discard blocks after verification, except most recent %1 GB (prune) + + + At least %1 GB of data will be stored in this directory, and it will grow over time. + At least %1 GB of data will be stored in this directory, and it will grow over time. + Approximately %1 GB of data will be stored in this directory. ประมาณ %1 GB ของข้อมูลจะเก็บในไดเร็กทอรี่ + + %1 will download and store a copy of the Bitcoin block chain. + %1 will download and store a copy of the Bitcoin block chain. + The wallet will also be stored in this directory. The wallet เก็บใว้ในไดเร็กทอรี่ @@ -830,28 +1068,76 @@ (of %n GB needed) (ต้องการพื้นที่ %n GB) - + + (%n GB needed for full chain) + (%n GB needed for full chain) + + ModalOverlay Form รูป + + Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. + Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. + + + Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network. + Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network. + + + Number of blocks left + Number of blocks left + + + Unknown... + Unknown... + + + Last block time + Last block time + Progress ความคืบหน้า + + Progress increase per hour + Progress increase per hour + calculating... กำลังคำนวณ... + + Estimated time left until synced + Estimated time left until synced + Hide ซ่อน - + + Esc + Esc + + + %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. + %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. + + + Unknown. Syncing Headers (%1, %2%)... + Unknown. Syncing Headers (%1, %2%)... + + OpenURIDialog + + Open bitcoin URI + Open bitcoin URI + URI: URI: @@ -859,6 +1145,14 @@ OpenWalletActivity + + Open wallet failed + Open wallet failed + + + Open wallet warning + Open wallet warning + default wallet กระเป๋าสตางค์เริ่มต้น @@ -898,6 +1192,14 @@ IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1) IP แอดเดส ของ proxy (เช่น IPv4: 127.0.0.1 / IPv6: ::1) + + Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type. + Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type. + + + Hide the icon from the system tray. + Hide the icon from the system tray. + &Hide tray icon &ซ่อนไอคอนถาด @@ -910,6 +1212,10 @@ Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. URL แบบอื่น (ยกตัวอย่าง เอ็กพลอเลอร์บล็อก) ที่อยู่ใน เมนูรายการ ลำดับ %s ใน URL จะถูกเปลี่ยนด้วย รายการแฮช URL ที่เป็นแบบหลายๆอัน จะถูกแยก โดย เครื่องหมายเส้นบาร์ตั้ง | + + Open the %1 configuration file from the working directory. + Open the %1 configuration file from the working directory. + Open Configuration File เปิดไฟล์การกำหนดค่า @@ -926,6 +1232,26 @@ &Network &เครือข่าย + + Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. + Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. + + + Prune &block storage to + Prune &block storage to + + + GB + GB + + + Reverting this setting requires re-downloading the entire blockchain. + Reverting this setting requires re-downloading the entire blockchain. + + + MiB + MiB + (0 = auto, <0 = leave that many cores free) (0 = อัตโนมัติ, <0 = ปล่อย คอร์ อิสระ) @@ -958,6 +1284,14 @@ Map port using &UPnP จองพอร์ต โดยใช้ &UPnP + + Accept connections from outside. + Accept connections from outside. + + + Allow incomin&g connections + Allow incomin&g connections + Connect to the Bitcoin network through a SOCKS5 proxy. เชื่อมต่อกับ Bitcoin เน็ตเวิร์ก ผ่านพร็อกซี่แบบ SOCKS5 @@ -1002,10 +1336,54 @@ Show only a tray icon after minimizing the window. แสดงเฉพาะไอคอนถาดหลังจากย่อหน้าต่าง + + &Minimize to the tray instead of the taskbar + &Minimize to the tray instead of the taskbar + + + M&inimize on close + M&inimize on close + + + &Display + &Display + User Interface &language: &ภาษาส่วนติดต่อผู้ใช้: + + The user interface language can be set here. This setting will take effect after restarting %1. + The user interface language can be set here. This setting will take effect after restarting %1. + + + &Unit to show amounts in: + &Unit to show amounts in: + + + Choose the default subdivision unit to show in the interface and when sending coins. + Choose the default subdivision unit to show in the interface and when sending coins. + + + Whether to show coin control features or not. + Whether to show coin control features or not. + + + Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. + Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. + + + Use separate SOCKS&5 proxy to reach peers via Tor onion services: + Use separate SOCKS&5 proxy to reach peers via Tor onion services: + + + &Third party transaction URLs + &Third party transaction URLs + + + Options set in this dialog are overridden by the command line or in the configuration file: + Options set in this dialog are overridden by the command line or in the configuration file: + &OK &ตกลง @@ -1014,28 +1392,144 @@ &Cancel &ยกเลิก + + default + default + + + none + none + + + Confirm options reset + Confirm options reset + + + Client restart required to activate changes. + Client restart required to activate changes. + + + Client will be shut down. Do you want to proceed? + Client will be shut down. Do you want to proceed? + Configuration options ตัวเลือกการกำหนดค่า + + The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file. + The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file. + Error ข้อผิดพลาด - + + The configuration file could not be opened. + The configuration file could not be opened. + + + This change would require a client restart. + This change would require a client restart. + + + The supplied proxy address is invalid. + The supplied proxy address is invalid. + + OverviewPage Form รูป + + The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. + The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. + + + Watch-only: + Watch-only: + + + Available: + Available: + + + Your current spendable balance + Your current spendable balance + + + Pending: + Pending: + + + Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance + Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance + + + Immature: + Immature: + + + Mined balance that has not yet matured + Mined balance that has not yet matured + Balances ยอดดุล - + + Total: + Total: + + + Your current total balance + Your current total balance + + + Your current balance in watch-only addresses + Your current balance in watch-only addresses + + + Spendable: + Spendable: + + + Recent transactions + Recent transactions + + + Unconfirmed transactions to watch-only addresses + Unconfirmed transactions to watch-only addresses + + + Mined balance in watch-only addresses that has not yet matured + Mined balance in watch-only addresses that has not yet matured + + + Current total balance in watch-only addresses + Current total balance in watch-only addresses + + + Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. + Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. + + PSBTOperationsDialog + + Dialog + Dialog + + + Sign Tx + Sign Tx + + + Broadcast Tx + Broadcast Tx + Copy to Clipboard คัดลอกไปยังคลิปบอร์ด @@ -1048,19 +1542,211 @@ Close ปิด - + + Failed to load transaction: %1 + Failed to load transaction: %1 + + + Failed to sign transaction: %1 + Failed to sign transaction: %1 + + + Could not sign any more inputs. + Could not sign any more inputs. + + + Signed %1 inputs, but more signatures are still required. + Signed %1 inputs, but more signatures are still required. + + + Signed transaction successfully. Transaction is ready to broadcast. + Signed transaction successfully. Transaction is ready to broadcast. + + + Unknown error processing transaction. + Unknown error processing transaction. + + + Transaction broadcast successfully! Transaction ID: %1 + Transaction broadcast successfully! Transaction ID: %1 + + + Transaction broadcast failed: %1 + Transaction broadcast failed: %1 + + + PSBT copied to clipboard. + PSBT copied to clipboard. + + + Save Transaction Data + Save Transaction Data + + + Partially Signed Transaction (Binary) (*.psbt) + Partially Signed Transaction (Binary) (*.psbt) + + + PSBT saved to disk. + PSBT saved to disk. + + + * Sends %1 to %2 + * Sends %1 to %2 + + + Unable to calculate transaction fee or total transaction amount. + Unable to calculate transaction fee or total transaction amount. + + + Pays transaction fee: + Pays transaction fee: + + + Total Amount + Total Amount + + + or + or + + + Transaction has %1 unsigned inputs. + Transaction has %1 unsigned inputs. + + + Transaction is missing some information about inputs. + Transaction is missing some information about inputs. + + + Transaction still needs signature(s). + Transaction still needs signature(s). + + + (But this wallet cannot sign transactions.) + (But this wallet cannot sign transactions.) + + + (But this wallet does not have the right keys.) + (But this wallet does not have the right keys.) + + + Transaction is fully signed and ready for broadcast. + Transaction is fully signed and ready for broadcast. + + + Transaction status is unknown. + Transaction status is unknown. + + PaymentServer - + + Payment request error + Payment request error + + + Cannot start bitcoin: click-to-pay handler + Cannot start bitcoin: click-to-pay handler + + + URI handling + URI handling + + + 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. + 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. + + + Cannot process payment request because BIP70 is not supported. + Cannot process payment request because BIP70 is not supported. + + + Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. + Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. + + + If you are receiving this error you should request the merchant provide a BIP21 compatible URI. + If you are receiving this error you should request the merchant provide a BIP21 compatible URI. + + + Invalid payment address %1 + Invalid payment address %1 + + + URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters. + URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters. + + + Payment request file handling + Payment request file handling + + PeerTableModel - + + User Agent + User Agent + + + Node/Service + Node/Service + + + NodeId + NodeId + + + Ping + Ping + + + Sent + Sent + + + Received + Received + + QObject Amount จำนวน + + Enter a Bitcoin address (e.g. %1) + Enter a Bitcoin address (e.g. %1) + + + %1 d + %1 d + + + %1 h + %1 h + + + %1 m + %1 m + + + %1 s + %1 s + + + None + None + + + N/A + N/A + + + %1 ms + %1 ms + %n second(s) %n วินาที @@ -1089,32 +1775,276 @@ %n year(s) %n ปี + + %1 B + %1 B + + + %1 KB + %1 KB + + + %1 MB + %1 MB + + + %1 GB + %1 GB + + + Error: Specified data directory "%1" does not exist. + Error: Specified data directory "%1" does not exist. + + + Error: Cannot parse configuration file: %1. + Error: Cannot parse configuration file: %1. + Error: %1 ข้อผิดพลาด: %1 - + + Error initializing settings: %1 + Error initializing settings: %1 + + + %1 didn't yet exit safely... + %1 didn't yet exit safely... + + + unknown + unknown + + QRImageWidget + + &Save Image... + &Save Image... + + + &Copy Image + &Copy Image + + + Resulting URI too long, try to reduce the text for label / message. + Resulting URI too long, try to reduce the text for label / message. + + + Error encoding URI into QR Code. + Error encoding URI into QR Code. + + + QR code support not available. + QR code support not available. + Save QR Code บันทึกรหัส QR - + + PNG Image (*.png) + PNG Image (*.png) + + RPCConsole + + N/A + N/A + + + Client version + Client version + + + &Information + &Information + + + General + General + + + Using BerkeleyDB version + Using BerkeleyDB version + + + Datadir + Datadir + + + To specify a non-default location of the data directory use the '%1' option. + To specify a non-default location of the data directory use the '%1' option. + + + Blocksdir + Blocksdir + + + To specify a non-default location of the blocks directory use the '%1' option. + To specify a non-default location of the blocks directory use the '%1' option. + + + Startup time + Startup time + + + Network + Network + + + Name + Name + + + Number of connections + Number of connections + + + Block chain + Block chain + + + Memory Pool + Memory Pool + + + Current number of transactions + Current number of transactions + + + Memory usage + Memory usage + Wallet: กระเป๋าสตางค์: + + (none) + (none) + + + &Reset + &Reset + + + Received + Received + + + Sent + Sent + + + &Peers + &Peers + + + Banned peers + Banned peers + + + Select a peer to view detailed information. + Select a peer to view detailed information. + Direction ทิศทาง + + Version + Version + + + Starting Block + Starting Block + + + Synced Headers + Synced Headers + + + Synced Blocks + Synced Blocks + + + The mapped Autonomous System used for diversifying peer selection. + The mapped Autonomous System used for diversifying peer selection. + + + Mapped AS + Mapped AS + + + User Agent + User Agent + Node window หน้าต่างโหนด + + Current block height + Current block height + + + Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. + Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. + + + Decrease font size + Decrease font size + + + Increase font size + Increase font size + + + Permissions + Permissions + + + Services + Services + + + Connection Time + Connection Time + + + Last Send + Last Send + + + Last Receive + Last Receive + + + Ping Time + Ping Time + + + The duration of a currently outstanding ping. + The duration of a currently outstanding ping. + + + Ping Wait + Ping Wait + + + Min Ping + Min Ping + + + Time Offset + Time Offset + + + Last block time + Last block time + &Open &เปิด @@ -1123,9 +2053,121 @@ &Console &คอนโซล - + + &Network Traffic + &Network Traffic + + + Totals + Totals + + + In: + In: + + + Out: + Out: + + + Debug log file + Debug log file + + + Clear console + Clear console + + + 1 &hour + 1 &hour + + + 1 &day + 1 &day + + + 1 &week + 1 &week + + + 1 &year + 1 &year + + + &Disconnect + &Disconnect + + + Ban for + Ban for + + + &Unban + &Unban + + + Welcome to the %1 RPC console. + Welcome to the %1 RPC console. + + + Use up and down arrows to navigate history, and %1 to clear screen. + Use up and down arrows to navigate history, and %1 to clear screen. + + + Type %1 for an overview of available commands. + Type %1 for an overview of available commands. + + + For more information on using this console type %1. + For more information on using this console type %1. + + + WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. + WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. + + + Network activity disabled + Network activity disabled + + + Executing command without any wallet + Executing command without any wallet + + + Executing command using "%1" wallet + Executing command using "%1" wallet + + + (node id: %1) + (node id: %1) + + + via %1 + via %1 + + + never + never + + + Inbound + Inbound + + + Outbound + Outbound + + + Unknown + Unknown + + ReceiveCoinsDialog + + &Amount: + &Amount: + &Label: &ป้ายชื่อ: @@ -1134,14 +2176,66 @@ &Message: &ข้อความ: + + An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network. + An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network. + + + An optional label to associate with the new receiving address. + An optional label to associate with the new receiving address. + + + Use this form to request payments. All fields are <b>optional</b>. + Use this form to request payments. All fields are <b>optional</b>. + + + An optional amount to request. Leave this empty or zero to not request a specific amount. + An optional amount to request. Leave this empty or zero to not request a specific amount. + + + An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request. + An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request. + + + An optional message that is attached to the payment request and may be displayed to the sender. + An optional message that is attached to the payment request and may be displayed to the sender. + + + &Create new receiving address + &Create new receiving address + + + Clear all fields of the form. + Clear all fields of the form. + Clear ล้าง + + Native segwit addresses (aka Bech32 or BIP-173) reduce your transaction fees later on and offer better protection against typos, but old wallets don't support them. When unchecked, an address compatible with older wallets will be created instead. + Native segwit addresses (aka Bech32 or BIP-173) reduce your transaction fees later on and offer better protection against typos, but old wallets don't support them. When unchecked, an address compatible with older wallets will be created instead. + + + Generate native segwit (Bech32) address + Generate native segwit (Bech32) address + + + Requested payments history + Requested payments history + + + Show the selected request (does the same as double clicking an entry) + Show the selected request (does the same as double clicking an entry) + Show แสดง + + Remove the selected entries from the list + Remove the selected entries from the list + Remove เอาออก @@ -1166,9 +2260,17 @@ Could not unlock wallet. ไม่สามารถปลดล็อคกระเป๋าสตางค์ - + + Could not generate new %1 address + Could not generate new %1 address + + ReceiveRequestDialog + + Request payment to ... + Request payment to ... + Address: ที่อยู่: @@ -1197,7 +2299,19 @@ Copy &Address &คัดลอกที่อยู่ - + + &Save Image... + &Save Image... + + + Request payment to %1 + Request payment to %1 + + + Payment information + Payment information + + RecentRequestsTableModel @@ -1216,13 +2330,41 @@ (no label) (ไม่มีป้ายชื่อ) - + + (no message) + (no message) + + + (no amount requested) + (no amount requested) + + + Requested + Requested + + SendCoinsDialog Send Coins ส่งเหรียญ + + Coin Control Features + Coin Control Features + + + Inputs... + Inputs... + + + automatically selected + automatically selected + + + Insufficient funds! + Insufficient funds! + Quantity: จำนวน: @@ -1247,10 +2389,42 @@ Change: เงินทอน: + + If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address. + If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address. + + + Custom change address + Custom change address + + + Transaction Fee: + Transaction Fee: + Choose... เลือก... + + Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain. + Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain. + + + Warning: Fee estimation is currently not possible. + Warning: Fee estimation is currently not possible. + + + Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size. + +Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis per kB" for a transaction size of 500 bytes (half of 1 kB) would ultimately yield a fee of only 50 satoshis. + Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size. + +Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis per kB" for a transaction size of 500 bytes (half of 1 kB) would ultimately yield a fee of only 50 satoshis. + + + per kilobyte + per kilobyte + Hide ซ่อน @@ -1263,22 +2437,242 @@ Custom: กำหนดเอง: + + (Smart fee not initialized yet. This usually takes a few blocks...) + (Smart fee not initialized yet. This usually takes a few blocks...) + + + Send to multiple recipients at once + Send to multiple recipients at once + + + Add &Recipient + Add &Recipient + + + Clear all fields of the form. + Clear all fields of the form. + Dust: เศษ: + + Hide transaction fee settings + Hide transaction fee settings + + + When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process. + When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process. + + + A too low fee might result in a never confirming transaction (read the tooltip) + A too low fee might result in a never confirming transaction (read the tooltip) + + + Confirmation time target: + Confirmation time target: + + + Enable Replace-By-Fee + Enable Replace-By-Fee + + + With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk. + With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk. + + + Clear &All + Clear &All + + + Balance: + Balance: + + + Confirm the send action + Confirm the send action + + + S&end + S&end + + + Copy quantity + Copy quantity + Copy amount คัดลอกจำนวนเงิน + + Copy fee + Copy fee + + + Copy after fee + Copy after fee + + + Copy bytes + Copy bytes + + + Copy dust + Copy dust + + + Copy change + Copy change + + + %1 (%2 blocks) + %1 (%2 blocks) + + + Cr&eate Unsigned + Cr&eate Unsigned + + + Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + from wallet '%1' จากกระเป๋าสตางค์ '%1' + + %1 to '%2' + %1 to '%2' + + + %1 to %2 + %1 to %2 + + + Do you want to draft this transaction? + Do you want to draft this transaction? + + + Are you sure you want to send? + Are you sure you want to send? + + + Create Unsigned + Create Unsigned + + + Save Transaction Data + Save Transaction Data + + + Partially Signed Transaction (Binary) (*.psbt) + Partially Signed Transaction (Binary) (*.psbt) + + + PSBT saved + PSBT saved + + + or + or + + + You can increase the fee later (signals Replace-By-Fee, BIP-125). + You can increase the fee later (signals Replace-By-Fee, BIP-125). + + + Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + + + Please, review your transaction. + Please, review your transaction. + + + Transaction fee + Transaction fee + + + Not signalling Replace-By-Fee, BIP-125. + Not signalling Replace-By-Fee, BIP-125. + + + Total Amount + Total Amount + + + To review recipient list click "Show Details..." + To review recipient list click "Show Details..." + + + Confirm send coins + Confirm send coins + + + Confirm transaction proposal + Confirm transaction proposal + Send ส่ง + + Watch-only balance: + Watch-only balance: + + + The recipient address is not valid. Please recheck. + The recipient address is not valid. Please recheck. + + + The amount to pay must be larger than 0. + The amount to pay must be larger than 0. + + + The amount exceeds your balance. + The amount exceeds your balance. + + + The total exceeds your balance when the %1 transaction fee is included. + The total exceeds your balance when the %1 transaction fee is included. + + + Duplicate address found: addresses should only be used once each. + Duplicate address found: addresses should only be used once each. + + + Transaction creation failed! + Transaction creation failed! + + + A fee higher than %1 is considered an absurdly high fee. + A fee higher than %1 is considered an absurdly high fee. + + + Payment request expired. + Payment request expired. + + + Estimated to begin confirmation within %n block(s). + Estimated to begin confirmation within %n blocks. + + + Warning: Invalid Bitcoin address + Warning: Invalid Bitcoin address + + + Warning: Unknown change address + Warning: Unknown change address + + + Confirm custom change address + Confirm custom change address + + + The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure? + The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure? + (no label) (ไม่มีป้ายชื่อ) @@ -1286,10 +2680,26 @@ SendCoinsEntry + + A&mount: + A&mount: + + + Pay &To: + Pay &To: + &Label: &ป้ายชื่อ: + + Choose previously used address + Choose previously used address + + + The Bitcoin address to send the payment to + The Bitcoin address to send the payment to + Alt+A Alt+A @@ -1302,16 +2712,88 @@ Alt+P Alt+P + + Remove this entry + Remove this entry + + + The amount to send in the selected unit + The amount to send in the selected unit + + + The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. + The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. + + + S&ubtract fee from amount + S&ubtract fee from amount + + + Use available balance + Use available balance + Message: ข้อความ: - + + This is an unauthenticated payment request. + This is an unauthenticated payment request. + + + This is an authenticated payment request. + This is an authenticated payment request. + + + Enter a label for this address to add it to the list of used addresses + Enter a label for this address to add it to the list of used addresses + + + A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. + A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. + + + Pay To: + Pay To: + + + Memo: + Memo: + + ShutdownWindow - + + %1 is shutting down... + %1 is shutting down... + + + Do not shut down the computer until this window disappears. + Do not shut down the computer until this window disappears. + + SignVerifyMessageDialog + + Signatures - Sign / Verify a Message + Signatures - Sign / Verify a Message + + + &Sign Message + &Sign Message + + + You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. + You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. + + + The Bitcoin address to sign the message with + The Bitcoin address to sign the message with + + + Choose previously used address + Choose previously used address + Alt+A Alt+A @@ -1324,24 +2806,168 @@ Alt+P Alt+P + + Enter the message you want to sign here + Enter the message you want to sign here + Signature ลายเซ็น + + Copy the current signature to the system clipboard + Copy the current signature to the system clipboard + + + Sign the message to prove you own this Bitcoin address + Sign the message to prove you own this Bitcoin address + Sign &Message &เซ็นข้อความ + + Reset all sign message fields + Reset all sign message fields + + + Clear &All + Clear &All + + + &Verify Message + &Verify Message + + + Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! + Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! + + + The Bitcoin address the message was signed with + The Bitcoin address the message was signed with + + + The signed message to verify + The signed message to verify + + + The signature given when the message was signed + The signature given when the message was signed + + + Verify the message to ensure it was signed with the specified Bitcoin address + Verify the message to ensure it was signed with the specified Bitcoin address + + + Verify &Message + Verify &Message + + + Reset all verify message fields + Reset all verify message fields + + + Click "Sign Message" to generate signature + Click "Sign Message" to generate signature + + + The entered address is invalid. + The entered address is invalid. + + + Please check the address and try again. + Please check the address and try again. + + + The entered address does not refer to a key. + The entered address does not refer to a key. + + + Wallet unlock was cancelled. + Wallet unlock was cancelled. + No error ไม่มีข้อผิดพลาด - + + Private key for the entered address is not available. + Private key for the entered address is not available. + + + Message signing failed. + Message signing failed. + + + Message signed. + Message signed. + + + The signature could not be decoded. + The signature could not be decoded. + + + Please check the signature and try again. + Please check the signature and try again. + + + The signature did not match the message digest. + The signature did not match the message digest. + + + Message verification failed. + Message verification failed. + + + Message verified. + Message verified. + + TrafficGraphWidget - + + KB/s + KB/s + + TransactionDesc + + Open for %n more block(s) + Open for %n more blocks + + + Open until %1 + Open until %1 + + + conflicted with a transaction with %1 confirmations + conflicted with a transaction with %1 confirmations + + + 0/unconfirmed, %1 + 0/unconfirmed, %1 + + + in memory pool + in memory pool + + + not in memory pool + not in memory pool + + + abandoned + abandoned + + + %1/unconfirmed + %1/unconfirmed + + + %1 confirmations + %1 confirmations + Status สถานะ @@ -1350,14 +2976,70 @@ Date วันที่ + + Source + Source + + + Generated + Generated + From จาก + + unknown + unknown + To ถึง + + own address + own address + + + watch-only + watch-only + + + label + label + + + Credit + Credit + + + matures in %n more block(s) + matures in %n more blocks + + + not accepted + not accepted + + + Debit + Debit + + + Total debit + Total debit + + + Total credit + Total credit + + + Transaction fee + Transaction fee + + + Net amount + Net amount + Message ข้อความ @@ -1366,14 +3048,70 @@ Comment ความคิดเห็น + + Transaction ID + Transaction ID + + + Transaction total size + Transaction total size + + + Transaction virtual size + Transaction virtual size + + + Output index + Output index + + + (Certificate was not verified) + (Certificate was not verified) + + + Merchant + Merchant + + + Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. + Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. + + + Debug information + Debug information + + + Transaction + Transaction + + + Inputs + Inputs + Amount จำนวน - + + true + true + + + false + false + + TransactionDescDialog - + + This pane shows a detailed description of the transaction + This pane shows a detailed description of the transaction + + + Details for %1 + Details for %1 + + TransactionTableModel @@ -1388,11 +3126,99 @@ Label ป้ายชื่อ + + Open for %n more block(s) + Open for %n more blocks + + + Open until %1 + Open until %1 + + + Unconfirmed + Unconfirmed + + + Abandoned + Abandoned + + + Confirming (%1 of %2 recommended confirmations) + Confirming (%1 of %2 recommended confirmations) + + + Confirmed (%1 confirmations) + Confirmed (%1 confirmations) + + + Conflicted + Conflicted + + + Immature (%1 confirmations, will be available after %2) + Immature (%1 confirmations, will be available after %2) + + + Generated but not accepted + Generated but not accepted + + + Received with + Received with + + + Received from + Received from + + + Sent to + Sent to + + + Payment to yourself + Payment to yourself + + + Mined + Mined + + + watch-only + watch-only + + + (n/a) + (n/a) + (no label) (ไม่มีป้ายชื่อ) - + + Transaction status. Hover over this field to show number of confirmations. + Transaction status. Hover over this field to show number of confirmations. + + + Date and time that the transaction was received. + Date and time that the transaction was received. + + + Type of transaction. + Type of transaction. + + + Whether or not a watch-only address is involved in this transaction. + Whether or not a watch-only address is involved in this transaction. + + + User-defined intent/purpose of the transaction. + User-defined intent/purpose of the transaction. + + + Amount removed from or added to balance. + Amount removed from or added to balance. + + TransactionView @@ -1419,6 +3245,46 @@ This year ปีนี้ + + Range... + Range... + + + Received with + Received with + + + Sent to + Sent to + + + To yourself + To yourself + + + Mined + Mined + + + Other + Other + + + Enter address, transaction id, or label to search + Enter address, transaction id, or label to search + + + Min amount + Min amount + + + Abandon transaction + Abandon transaction + + + Increase transaction fee + Increase transaction fee + Copy address คัดลอกที่อยู่ @@ -1435,10 +3301,26 @@ Copy transaction ID คัดลอก ID ธุรกรรม + + Copy raw transaction + Copy raw transaction + + + Copy full transaction details + Copy full transaction details + Edit label แก้ไขป้ายชื่อ + + Show transaction details + Show transaction details + + + Export Transaction History + Export Transaction History + Comma separated file (*.csv) ไฟล์ที่คั่นด้วยจุลภาค (* .csv) @@ -1447,6 +3329,10 @@ Confirmed ยืนยันแล้ว + + Watch-only + Watch-only + Date วันที่ @@ -1471,16 +3357,48 @@ Exporting Failed การส่งออกล้มเหลว - + + There was an error trying to save the transaction history to %1. + There was an error trying to save the transaction history to %1. + + + Exporting Successful + Exporting Successful + + + The transaction history was successfully saved to %1. + The transaction history was successfully saved to %1. + + + Range: + Range: + + + to + to + + UnitDisplayStatusBarControl - + + Unit to show amounts in. Click to select another unit. + Unit to show amounts in. Click to select another unit. + + WalletController Close wallet ปิดกระเป๋าสตางค์ + + Are you sure you wish to close the wallet <i>%1</i>? + Are you sure you wish to close the wallet <i>%1</i>? + + + Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. + Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. + Close all wallets ปิดกระเป๋าสตางค์ทั้งหมด @@ -1492,6 +3410,14 @@ WalletFrame + + No wallet has been loaded. +Go to File > Open Wallet to load a wallet. +- OR - + No wallet has been loaded. +Go to File > Open Wallet to load a wallet. +- OR - + Create a new wallet สร้างกระเป๋าสตางค์ @@ -1503,10 +3429,54 @@ Send Coins ส่งเหรียญ + + Fee bump error + Fee bump error + + + Increasing transaction fee failed + Increasing transaction fee failed + + + Do you want to increase the fee? + Do you want to increase the fee? + + + Do you want to draft a transaction with fee increase? + Do you want to draft a transaction with fee increase? + + + Current fee: + Current fee: + + + Increase: + Increase: + + + New fee: + New fee: + + + Confirm fee bump + Confirm fee bump + + + Can't draft transaction. + Can't draft transaction. + PSBT copied คัดลอก PSBT แล้ว + + Can't sign transaction. + Can't sign transaction. + + + Could not commit transaction + Could not commit transaction + default wallet กระเป๋าสตางค์เริ่มต้น @@ -1526,6 +3496,26 @@ Error ข้อผิดพลาด + + Unable to decode PSBT from clipboard (invalid base64) + Unable to decode PSBT from clipboard (invalid base64) + + + Load Transaction Data + Load Transaction Data + + + Partially Signed Transaction (*.psbt) + Partially Signed Transaction (*.psbt) + + + PSBT file must be smaller than 100 MiB + PSBT file must be smaller than 100 MiB + + + Unable to decode PSBT + Unable to decode PSBT + Backup Wallet สำรองข้อมูลกระเป๋าสตางค์ @@ -1538,6 +3528,18 @@ Backup Failed การสำรองข้อมูลล้มเหลว + + There was an error trying to save the wallet data to %1. + There was an error trying to save the wallet data to %1. + + + Backup Successful + Backup Successful + + + The wallet data was successfully saved to %1. + The wallet data was successfully saved to %1. + Cancel ยกเลิก @@ -1545,18 +3547,544 @@ bitcoin-core + + Distributed under the MIT software license, see the accompanying file %s or %s + Distributed under the MIT software license, see the accompanying file %s or %s + + + Prune configured below the minimum of %d MiB. Please use a higher number. + Prune configured below the minimum of %d MiB. Please use a higher number. + + + Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) + Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) + + + Pruning blockstore... + Pruning blockstore... + + + Unable to start HTTP server. See debug log for details. + Unable to start HTTP server. See debug log for details. + + + The %s developers + The %s developers + + + Cannot obtain a lock on data directory %s. %s is probably already running. + Cannot obtain a lock on data directory %s. %s is probably already running. + + + Cannot provide specific connections and have addrman find outgoing connections at the same. + Cannot provide specific connections and have addrman find outgoing connections at the same. + + + Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. + Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. + + + More than one onion bind address is provided. Using %s for the automatically created Tor onion service. + More than one onion bind address is provided. Using %s for the automatically created Tor onion service. + + + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. + + + Please contribute if you find %s useful. Visit %s for further information about the software. + Please contribute if you find %s useful. Visit %s for further information about the software. + + + SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s + SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s + + + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + + + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported + + + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct + + + This is a pre-release test build - use at your own risk - do not use for mining or merchant applications + This is a pre-release test build - use at your own risk - do not use for mining or merchant applications + + + This is the transaction fee you may discard if change is smaller than dust at this level + This is the transaction fee you may discard if change is smaller than dust at this level + + + Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. + Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. + + + Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain + Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain + + + Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. + Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. + + + Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. + Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. + + + -maxmempool must be at least %d MB + -maxmempool must be at least %d MB + + + Cannot resolve -%s address: '%s' + Cannot resolve -%s address: '%s' + + + Change index out of range + Change index out of range + + + Config setting for %s only applied on %s network when in [%s] section. + Config setting for %s only applied on %s network when in [%s] section. + + + Copyright (C) %i-%i + Copyright (C) %i-%i + + + Corrupted block database detected + Corrupted block database detected + + + Could not find asmap file %s + Could not find asmap file %s + + + Could not parse asmap file %s + Could not parse asmap file %s + + + Do you want to rebuild the block database now? + Do you want to rebuild the block database now? + + + Error initializing block database + Error initializing block database + + + Error initializing wallet database environment %s! + Error initializing wallet database environment %s! + + + Error loading %s + Error loading %s + + + Error loading %s: Private keys can only be disabled during creation + Error loading %s: Private keys can only be disabled during creation + + + Error loading %s: Wallet corrupted + Error loading %s: Wallet corrupted + + + Error loading %s: Wallet requires newer version of %s + Error loading %s: Wallet requires newer version of %s + + + Error loading block database + Error loading block database + + + Error opening block database + Error opening block database + + + Failed to listen on any port. Use -listen=0 if you want this. + Failed to listen on any port. Use -listen=0 if you want this. + + + Failed to rescan the wallet during initialization + Failed to rescan the wallet during initialization + + + Failed to verify database + Failed to verify database + + + Ignoring duplicate -wallet %s. + Ignoring duplicate -wallet %s. + Importing... กำลังนำเข้า... + + Incorrect or no genesis block found. Wrong datadir for network? + Incorrect or no genesis block found. Wrong datadir for network? + + + Initialization sanity check failed. %s is shutting down. + Initialization sanity check failed. %s is shutting down. + + + Invalid P2P permission: '%s' + Invalid P2P permission: '%s' + + + Invalid amount for -%s=<amount>: '%s' + Invalid amount for -%s=<amount>: '%s' + + + Invalid amount for -discardfee=<amount>: '%s' + Invalid amount for -discardfee=<amount>: '%s' + + + Invalid amount for -fallbackfee=<amount>: '%s' + Invalid amount for -fallbackfee=<amount>: '%s' + + + SQLiteDatabase: Failed to execute statement to verify database: %s + SQLiteDatabase: Failed to execute statement to verify database: %s + + + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s + + + SQLiteDatabase: Failed to fetch the application id: %s + SQLiteDatabase: Failed to fetch the application id: %s + + + SQLiteDatabase: Failed to prepare statement to verify database: %s + SQLiteDatabase: Failed to prepare statement to verify database: %s + + + SQLiteDatabase: Failed to read database verification error: %s + SQLiteDatabase: Failed to read database verification error: %s + + + SQLiteDatabase: Unexpected application id. Expected %u, got %u + SQLiteDatabase: Unexpected application id. Expected %u, got %u + + + Specified blocks directory "%s" does not exist. + Specified blocks directory "%s" does not exist. + + + Unknown address type '%s' + Unknown address type '%s' + + + Unknown change type '%s' + Unknown change type '%s' + + + Upgrading txindex database + Upgrading txindex database + + + Loading P2P addresses... + Loading P2P addresses... + + + Loading banlist... + Loading banlist... + + + Not enough file descriptors available. + Not enough file descriptors available. + + + Prune cannot be configured with a negative value. + Prune cannot be configured with a negative value. + + + Prune mode is incompatible with -txindex. + Prune mode is incompatible with -txindex. + + + Replaying blocks... + Replaying blocks... + + + Rewinding blocks... + Rewinding blocks... + + + The source code is available from %s. + The source code is available from %s. + + + Transaction fee and change calculation failed + Transaction fee and change calculation failed + + + Unable to bind to %s on this computer. %s is probably already running. + Unable to bind to %s on this computer. %s is probably already running. + Unable to generate keys ไม่สามารถสร้างกุญแจ + + Unsupported logging category %s=%s. + Unsupported logging category %s=%s. + Upgrading UTXO database กำลังอัปเกรดฐานข้อมูล UTXO + + User Agent comment (%s) contains unsafe characters. + User Agent comment (%s) contains unsafe characters. + + + Verifying blocks... + Verifying blocks... + + + Wallet needed to be rewritten: restart %s to complete + Wallet needed to be rewritten: restart %s to complete + + + Error: Listening for incoming connections failed (listen returned error %s) + Error: Listening for incoming connections failed (listen returned error %s) + + + %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. + %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. + + + Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. + Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. + + + Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) + Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) + + + The transaction amount is too small to send after the fee has been deducted + The transaction amount is too small to send after the fee has been deducted + + + This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet + This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet + + + This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. + This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. + + + Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. + Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. + + + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain + + + A fatal internal error occurred, see debug.log for details + A fatal internal error occurred, see debug.log for details + + + Cannot set -peerblockfilters without -blockfilterindex. + Cannot set -peerblockfilters without -blockfilterindex. + + + Disk space is too low! + Disk space is too low! + + + Error reading from database, shutting down. + Error reading from database, shutting down. + + + Error upgrading chainstate database + Error upgrading chainstate database + + + Error: Disk space is low for %s + Error: Disk space is low for %s + + + Error: Keypool ran out, please call keypoolrefill first + Error: Keypool ran out, please call keypoolrefill first + + + Fee rate (%s) is lower than the minimum fee rate setting (%s) + Fee rate (%s) is lower than the minimum fee rate setting (%s) + + + Invalid -onion address or hostname: '%s' + Invalid -onion address or hostname: '%s' + + + Invalid -proxy address or hostname: '%s' + Invalid -proxy address or hostname: '%s' + + + Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) + Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) + + + Invalid netmask specified in -whitelist: '%s' + Invalid netmask specified in -whitelist: '%s' + + + Need to specify a port with -whitebind: '%s' + Need to specify a port with -whitebind: '%s' + + + No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. + No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. + + + Prune mode is incompatible with -blockfilterindex. + Prune mode is incompatible with -blockfilterindex. + + + Reducing -maxconnections from %d to %d, because of system limitations. + Reducing -maxconnections from %d to %d, because of system limitations. + + + Section [%s] is not recognized. + Section [%s] is not recognized. + + + Signing transaction failed + Signing transaction failed + + + Specified -walletdir "%s" does not exist + Specified -walletdir "%s" does not exist + + + Specified -walletdir "%s" is a relative path + Specified -walletdir "%s" is a relative path + + + Specified -walletdir "%s" is not a directory + Specified -walletdir "%s" is not a directory + + + The specified config file %s does not exist + + The specified config file %s does not exist + + + + The transaction amount is too small to pay the fee + The transaction amount is too small to pay the fee + + + This is experimental software. + This is experimental software. + + + Transaction amount too small + Transaction amount too small + + + Transaction too large + Transaction too large + + + Unable to bind to %s on this computer (bind returned error %s) + Unable to bind to %s on this computer (bind returned error %s) + + + Unable to create the PID file '%s': %s + Unable to create the PID file '%s': %s + + + Unable to generate initial keys + Unable to generate initial keys + + + Unknown -blockfilterindex value %s. + Unknown -blockfilterindex value %s. + + + Verifying wallet(s)... + Verifying wallet(s)... + + + Warning: unknown new rules activated (versionbit %i) + Warning: unknown new rules activated (versionbit %i) + + + -maxtxfee is set very high! Fees this large could be paid on a single transaction. + -maxtxfee is set very high! Fees this large could be paid on a single transaction. + + + This is the transaction fee you may pay when fee estimates are not available. + This is the transaction fee you may pay when fee estimates are not available. + + + Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments. + Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments. + + + %s is set very high! + %s is set very high! + + + Starting network threads... + Starting network threads... + + + The wallet will avoid paying less than the minimum relay fee. + The wallet will avoid paying less than the minimum relay fee. + + + This is the minimum transaction fee you pay on every transaction. + This is the minimum transaction fee you pay on every transaction. + + + This is the transaction fee you will pay if you send a transaction. + This is the transaction fee you will pay if you send a transaction. + + + Transaction amounts must not be negative + Transaction amounts must not be negative + + + Transaction has too long of a mempool chain + Transaction has too long of a mempool chain + + + Transaction must have at least one recipient + Transaction must have at least one recipient + + + Unknown network specified in -onlynet: '%s' + Unknown network specified in -onlynet: '%s' + + + Insufficient funds + Insufficient funds + + + Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable -fallbackfee. + Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable -fallbackfee. + + + Warning: Private keys detected in wallet {%s} with disabled private keys + Warning: Private keys detected in wallet {%s} with disabled private keys + + + Cannot write to data directory '%s'; check permissions. + Cannot write to data directory '%s'; check permissions. + + + Loading block index... + Loading block index... + Loading wallet... กำลังโหลดกระเป๋าสตางค์... @@ -1565,5 +4093,13 @@ Cannot downgrade wallet ไม่สามารถดาวน์เกรดกระเป๋าสตางค์ - + + Rescanning... + Rescanning... + + + Done loading + Done loading + + \ No newline at end of file diff --git a/src/qt/locale/bitcoin_tr.ts b/src/qt/locale/bitcoin_tr.ts index ae7495bd8..333b18e10 100644 --- a/src/qt/locale/bitcoin_tr.ts +++ b/src/qt/locale/bitcoin_tr.ts @@ -836,6 +836,10 @@ Cüzdan kilidini aç. Create Wallet Cüzdan Oluştur + + Wallet + Cüzdan + Wallet Name Cüzdan İsmi @@ -848,6 +852,10 @@ Cüzdan kilidini aç. Encrypt Wallet Cüzdanı Şifrele + + Advanced Options + Ek Seçenekler + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. Bu cüzdan için özel anahtarları devre dışı bırakın. Özel anahtarları devre dışı bırakılan cüzdanların özel anahtarları olmayacak ve bir HD çekirdeği veya içe aktarılan özel anahtarları olmayacaktır. Bu, yalnızca saat cüzdanları için idealdir. @@ -856,15 +864,31 @@ Cüzdan kilidini aç. Disable Private Keys Özel Kilidi (Private Key) kaldır + + Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. + Boş bir cüzdan yapın. Boş cüzdanlar başlangıçta özel anahtarlara veya komut dosyalarına sahip değildir. Özel anahtarlar ve adresler içe aktarılabilir veya daha sonra bir HD tohum ayarlanabilir. + Make Blank Wallet Boş Cüzdan Oluştur + + Use descriptors for scriptPubKey management + scriptPubKey yönetimi için tanımlayıcıları kullanın + + + Descriptor Wallet + Tanımlayıcı Cüzdan + Create Oluştur - + + Compiled without sqlite support (required for descriptor wallets) + Sqlite desteği olmadan derlenmiş. (tanımlayıcı cüzdanlar için gereklidir) + + EditAddressDialog @@ -875,6 +899,14 @@ Cüzdan kilidini aç. &Label &Etiket + + The label associated with this address list entry + Bu adres listesi girişiyle ilişkili etiket + + + The address associated with this address list entry. This can only be modified for sending addresses. + Bu adres listesi girişiyle ilişkili adres. Bu sadece adreslerin gönderilmesi için değiştirilebilir + &Address &Adres @@ -895,14 +927,34 @@ Cüzdan kilidini aç. The entered address "%1" is not a valid Bitcoin address. Girilen "%1" adresi geçerli bir Bitcoin adresi değildir. - + + Could not unlock wallet. + Cüzdanın kilidi açılamadı. + + + New key generation failed. + Yeni anahtar oluşturma başarısız oldu. + + FreespaceChecker + + A new data directory will be created. + Yeni bir veri klasörü oluşturulacaktır. + name isim - + + Path already exists, and is not a directory. + Halihazırda bir yol var ve bu bir klasör değildir. + + + Cannot create data directory here. + Burada veri klasörü oluşturulamaz. + + HelpMessageDialog @@ -928,6 +980,18 @@ Cüzdan kilidini aç. Welcome to %1. %1'e hoşgeldiniz. + + As this is the first time the program is launched, you can choose where %1 will store its data. + Bu programın ilk kez başlatılmasından dolayı %1 yazılımının verilerini nerede saklayacağını seçebilirsiniz. + + + Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. + Bu ayarın geri döndürülmesi, tüm blok zincirinin yeniden indirilmesini gerektirir. Önce tüm zinciri indirmek ve daha sonra veri budamak daha hızlıdır. Bazı gelişmiş özellikleri devre dışı bırakır. + + + If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. + Blok zinciri depolamayı (veri budama) sınırlamayı seçtiyseniz, geçmiş veriler yine de indirilmeli ve işlenmelidir, ancak disk kullanımınızı düşük tutmak için daha sonra silinecektir. + Use the default data directory Varsayılan veri klasörünü kullan @@ -944,54 +1008,182 @@ Cüzdan kilidini aç. At least %1 GB of data will be stored in this directory, and it will grow over time. Bu dizinde en az %1 GB veri depolanacak ve zamanla büyüyecek. + + Approximately %1 GB of data will be stored in this directory. + Yaklaşık %1 GB veri bu klasörde depolanacak. + + + %1 will download and store a copy of the Bitcoin block chain. + %1 Bitcoin blok zincirinin bir kopyasını indirecek ve depolayacak. + The wallet will also be stored in this directory. Cüzdan da bu dizinde depolanacaktır. + + Error: Specified data directory "%1" cannot be created. + Hata: Belirtilen "%1" veri klasörü oluşturulamaz. + Error Hata - + + %n GB of free space available + %n GB boş alan kullanılabilir%n GB boş alan mevcuttur + + + (of %n GB needed) + (gereken %n GB alandan)(gereken %n GB alandan) + + + (%n GB needed for full chain) + (%n GB tam zincir için gerekli)(%n GB tam zincir için gerekli) + + ModalOverlay + + Form + Form + Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. Son işlemler henüz görünmeyebilir ve bu nedenle cüzdanınızın bakiyesi yanlış olabilir. Bu bilgiler, aşağıda detaylandırıldığı gibi, cüzdanınız bitcoin ağı ile senkronizasyonunu tamamladığında doğru olacaktır. + + Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network. + Henüz görüntülenmeyen işlemlerden etkilenen bitcoinleri harcama girişiminde bulunmak ağ tarafından kabul edilmeyecektir. + + + Number of blocks left + Kalan blok sayısı + Unknown... Bilinmeyen... + + Last block time + Son blok zamanı + Progress İlerleme + + Progress increase per hour + Saat başı ilerleme artışı + calculating... hesaplanıyor... + + Estimated time left until synced + Senkronize edilene kadar kalan tahmini süre + Hide Gizle - + + Esc + Esc + + + Unknown. Syncing Headers (%1, %2%)... + Bilinmeyen. Başlıklar Eşitleniyor (%1, %2%)... + + OpenURIDialog - + + Open bitcoin URI + Bitcoin URI aç + + + URI: + URI: + + OpenWalletActivity + + Open wallet failed + Cüzdan açma başarısız + + + Open wallet warning + Açık cüzdan uyarısı + default wallet varsayılan cüzdan - + + Opening Wallet <b>%1</b>... + <b>%1</b> cüzdanı açolıyor... + + OptionsDialog Options Seçenekler + + &Main + &Genel + + + Automatically start %1 after logging in to the system. + Sisteme giriş yaptıktan sonra otomatik olarak %1'i başlat. + + + &Start %1 on system login + &Açılışta %1 açılsın + + + Size of &database cache + &veritabanı önbellek boyutu + + + Number of script &verification threads + Betik &doğrulama iş parçacığı sayısı + + + IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1) + Proxy'nin IP Adresi (ör: IPv4: 127.0.0.1 / IPv6: ::1) + + + Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type. + Bu şebeke türü yoluyla eşlere bağlanmak için belirtilen varsayılan SOCKS5 vekil sunucusunun kullanılıp kullanılmadığını gösterir. + + + Hide the icon from the system tray. + Simgeyi sistem tepsisinden gizleyin. + + + &Hide tray icon + &Simgeyi gizle + + + Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu. + Pencere kapatıldığında uygulamadan çıkmak yerine uygulamayı küçültür. Bu seçenek etkinleştirildiğinde, uygulama sadece menüden çıkış seçildiğinde kapanacaktır. + + + Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. + İşlemler sekmesinde bağlam menüsü unsurları olarak görünen üçüncü taraf bağlantıları (mesela bir blok tarayıcısı). URL'deki %s, işlem hash değeri ile değiştirilecektir. Birden çok bağlantılar düşey çubuklar | ile ayrılacaktır. + + + Open the %1 configuration file from the working directory. + Çalışma dizininden %1  yapılandırma dosyasını aç. + + + Open Configuration File + Yapılandırma Dosyasını Aç + Reset all client options to default. İstemcinin tüm seçeneklerini varsayılan değerlere sıfırla. @@ -1004,18 +1196,90 @@ Cüzdan kilidini aç. &Network &Ağ + + Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. + Bazı gelişmiş özellikleri devre dışı bırakır ancak tüm bloklar yine de tam olarak doğrulanacaktır. Bu ayarın geri alınması, tüm blok zincirinin yeniden indirilmesini gerektirir. Gerçek disk kullanımı biraz daha yüksek olabilir. + + + Prune &block storage to + Depolamayı küçültmek &engellemek için + GB GB + + Reverting this setting requires re-downloading the entire blockchain. + Bu ayarın geri alınması, tüm blok zincirinin yeniden indirilmesini gerektirir. + + + MiB + MiB + + + (0 = auto, <0 = leave that many cores free) + (0 = otomatik, <0 = bu kadar çekirdeği kullanma) + W&allet &Cüzdan + + Expert + Gelişmiş + + + Enable coin &control features + Para &kontrolü özelliklerini etkinleştir + + + If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed. + Onaylanmamış bozuk para harcamasını devre dışı bırakırsanız, bir işlemdeki bozukl para, o işlem en az bir onay alana kadar kullanılamaz. Bu aynı zamanda bakiyenizin nasıl hesaplandığını da etkiler. + + + &Spend unconfirmed change + & Onaylanmamış bozuk parayı harcayın + + + Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled. + Yönlendiricide Bitcoin istemci portlarını otomatik olarak açar. Bu, sadece yönlendiricinizin UPnP desteği bulunuyorsa ve etkinse çalışabilir. + + + Map port using &UPnP + Portları &UPnP kullanarak haritala + + + Accept connections from outside. + Dışarıdan bağlantıları kabul et. + + + Allow incomin&g connections + Gelen bağlantılara izin ver + + + Connect to the Bitcoin network through a SOCKS5 proxy. + Bitcoin ağına bir SOCKS5 vekil sunucusu aracılığıyla bağlan. + + + &Connect through SOCKS5 proxy (default proxy): + SOCKS5 vekil sunucusu aracılığıyla &bağlan (varsayılan vekil sunucusu): + Proxy &IP: Proxy &IP: + + &Port: + &Port: + + + Port of the proxy (e.g. 9050) + Vekil sunucunun portu (mesela 9050) + + + Used for reaching peers via: + Eşlere ulaşmak için kullanılır, şu üzerinden: + IPv4 IPv4 @@ -1032,6 +1296,18 @@ Cüzdan kilidini aç. &Window &Pencere + + Show only a tray icon after minimizing the window. + Küçültüldükten sonra sadece tepsi simgesi göster. + + + &Minimize to the tray instead of the taskbar + İşlem çubuğu yerine sistem çekmecesine &küçült + + + M&inimize on close + Kapatma sırasında k&üçült + &Display &Görünüm @@ -1040,6 +1316,34 @@ Cüzdan kilidini aç. User Interface &language: Kullanıcı arayüzü &dili: + + The user interface language can be set here. This setting will take effect after restarting %1. + Kullanıcı arayüzünün dili burada belirtilebilir. Bu ayar %1 tekrar başlatıldığında etkinleşecektir. + + + &Unit to show amounts in: + Tutarı göstermek için &birim: + + + Choose the default subdivision unit to show in the interface and when sending coins. + Bitcoin gönderildiğinde arayüzde gösterilecek varsayılan alt birimi seçiniz. + + + Whether to show coin control features or not. + Para kontrol özelliklerinin gösterilip gösterilmeyeceğini ayarlar. + + + Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. + Tor Onion hizmetleri için ayrı bir SOCKS5 proxy aracılığıyla Bitcoin ağına bağlanın. + + + Use separate SOCKS&5 proxy to reach peers via Tor onion services: + Tor onion hizmetleri aracılığıyla eşlere ulaşmak için ayrı SOCKS&5 proxy kullanın: + + + &Third party transaction URLs + &Üçüncü parti işlem URL'leri + &OK &Tamam @@ -1060,17 +1364,73 @@ Cüzdan kilidini aç. Confirm options reset Seçenekleri sıfırlamayı onayla + + Client restart required to activate changes. + Değişikliklerin uygulanması için istemcinin yeniden başlatılması lazımdır. + + + Client will be shut down. Do you want to proceed? + İstemci kapanacaktır. Devam etmek istiyor musunuz? + + + Configuration options + Yapılandırma seçenekleri + + + The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file. + Yapılandırma dosyası, grafik arayüzü ayarlarını geçersiz kılacak gelişmiş kullanıcı seçeneklerini belirtmek için kullanılır. Ayrıca, herhangi bir komut satırı seçeneği bu yapılandırma dosyasını geçersiz kılacaktır. + Error Hata - + + The configuration file could not be opened. + Yapılandırma dosyası açılamadı. + + + This change would require a client restart. + Bu değişiklik istemcinin tekrar başlatılmasını gerektirir. + + + The supplied proxy address is invalid. + Girilen vekil sunucu adresi geçersizdir. + + OverviewPage + + Form + Form + + + The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. + Görüntülenen bilgiler güncel olmayabilir. Bağlantı kurulduğunda cüzdanınız otomatik olarak Bitcoin ağı ile senkronize olur ancak bu işlem henüz tamamlanmamıştır. + + + Watch-only: + Sadece-izlenen: + + + Available: + Mevcut: + + + Your current spendable balance + Güncel harcanabilir bakiyeniz + Pending: Bekliyor: + + Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance + Henüz doğrulanmamış ve harcanabilir bakiyeye eklenmemiş işlemlerin toplamı + + + Immature: + Olgunlaşmamış: + Mined balance that has not yet matured ödenilmemiş miktar @@ -1087,6 +1447,10 @@ Cüzdan kilidini aç. Your current total balance Güncel toplam bakiyeniz + + Your current balance in watch-only addresses + Sadece izlenen adreslerdeki güncel bakiyeniz + Spendable: Harcanabilir @@ -1095,6 +1459,18 @@ Cüzdan kilidini aç. Recent transactions Yakın zamandaki işlemler + + Unconfirmed transactions to watch-only addresses + Sadece izlenen adreslere gelen doğrulanmamış işlemler + + + Mined balance in watch-only addresses that has not yet matured + Sadece izlenen adreslerin henüz olgunlaşmamış oluşturulan bakiyeleri + + + Current total balance in watch-only addresses + Sadece izlenen adreslerdeki güncel toplam bakiye + PSBTOperationsDialog @@ -1130,6 +1506,10 @@ Cüzdan kilidini aç. Failed to sign transaction: %1 İşlem imzalanamadı: %1 + + Could not sign any more inputs. + Daha fazla girdi imzalanamıyor. + Signed transaction successfully. Transaction is ready to broadcast. İşlem imzalandı ve ağa duyurulmaya hazır. @@ -1138,10 +1518,18 @@ Cüzdan kilidini aç. Transaction broadcast successfully! Transaction ID: %1 İşlem ağa duyuruldu! İşlem kodu: %1 + + PSBT copied to clipboard. + PSBT panoya kopyalandı. + Save Transaction Data İşlem verilerini kaydet + + PSBT saved to disk. + PSBT diske kaydedildi. + Total Amount Toplam Tutar @@ -1150,20 +1538,56 @@ Cüzdan kilidini aç. or veya - + + Transaction status is unknown. + İşlem durumu bilinmiyor. + + PaymentServer Payment request error Ödeme isteği hatası + + Cannot start bitcoin: click-to-pay handler + Bitcoin başlatılamadı: tıkla-ve-öde yöneticisi + + + URI handling + URI yönetimi + 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. 'bitcoin://' geçerli bir URI değil. Onun yerine 'bitcoin:' kullanın. - + + Invalid payment address %1 + %1 ödeme adresi geçersizdir + + + URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters. + URI ayrıştırılamıyor! Bunun nedeni geçersiz bir Bitcoin adresi veya hatalı biçimlendirilmiş URI değişkenleri olabilir. + + + Payment request file handling + Ödeme talebi dosyası yönetimi + + PeerTableModel + + User Agent + Kullanıcı Yazılımı + + + Node/Service + Düğüm/Servis + + + NodeId + Düğüm ID'si + Ping Gecikme @@ -1172,7 +1596,11 @@ Cüzdan kilidini aç. Sent Gönderildi - + + Received + Alınan + + QObject @@ -1199,6 +1627,18 @@ Cüzdan kilidini aç. %1 s %1 sn + + None + Boş + + + N/A + Mevcut değil + + + %1 ms + %1 ms + %n second(s) %n saniye%n saniye @@ -1227,10 +1667,38 @@ Cüzdan kilidini aç. %n year(s) %n yıl%n yıl + + %1 B + %1 B + + + %1 KB + %1 KB + + + %1 MB + %1 MB + + + %1 GB + %1 GB + + + Error: Specified data directory "%1" does not exist. + Hata: Belirtilen "%1" veri klasörü yoktur. + + + Error: Cannot parse configuration file: %1. + Hata: %1 yapılandırma dosyası ayrıştırılamadı. + Error: %1 Hata: %1 + + %1 didn't yet exit safely... + %1 henüz güvenli bir şekilde çıkış yapmamıştır... + unknown bilinmeyen @@ -1246,13 +1714,33 @@ Cüzdan kilidini aç. &Copy Image Resmi &Kopyala + + Resulting URI too long, try to reduce the text for label / message. + Sonuç URI çok uzun, etiket ya da ileti metnini kısaltmayı deneyiniz. + + + Error encoding URI into QR Code. + URI'nin QR koduna kodlanmasında hata oluştu. + + + QR code support not available. + QR kodu desteği mevcut değil. + Save QR Code QR Kodu Kaydet - + + PNG Image (*.png) + PNG Resmi (*.png) + + RPCConsole + + N/A + Mevcut değil + Client version İstemci sürümü @@ -1265,6 +1753,18 @@ Cüzdan kilidini aç. General Genel + + Using BerkeleyDB version + Kullanılan BerkeleyDB sürümü + + + Datadir + Veri konumu + + + Startup time + Başlangıç zamanı + Network @@ -1273,6 +1773,22 @@ Cüzdan kilidini aç. Name İsim + + Number of connections + Bağlantı sayısı + + + Block chain + Blok zinciri + + + Memory Pool + Bellek Alanı + + + Current number of transactions + Güncel işlem sayısı + Memory usage Bellek kullanımı @@ -1281,22 +1797,74 @@ Cüzdan kilidini aç. Wallet: Cüzdan: + + (none) + (yok) + &Reset &Sıfırla + + Received + Alınan + Sent Gönderildi + + &Peers + &Eşler + + + Banned peers + Yasaklı eşler + + + Select a peer to view detailed information. + Ayrıntılı bilgi görmek için bir eş seçin. + + + Direction + Yönlendirme + Version Sürüm + + Starting Block + Başlangıç Bloku + + + Synced Headers + Eşleşmiş Üstbilgiler + + + Synced Blocks + Eşleşmiş Bloklar + + + User Agent + Kullanıcı Yazılımı + Node window Düğüm penceresi + + Current block height + Şu anki blok yüksekliği + + + Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. + Güncel veri klasöründen %1 hata ayıklama kütük dosyasını açar. Büyük kütük dosyaları için bu birkaç saniye alabilir. + + + Decrease font size + Font boyutunu küçült + Increase font size Yazıtipi boyutunu büyült @@ -1313,6 +1881,38 @@ Cüzdan kilidini aç. Connection Time Bağlantı Zamanı + + Last Send + Son Gönderme + + + Last Receive + Son Alma + + + Ping Time + Ping Süresi + + + The duration of a currently outstanding ping. + Güncel olarak göze çarpan bir ping'in süresi. + + + Ping Wait + Ping Beklemesi + + + Min Ping + En Düşük Ping + + + Time Offset + Saat Farkı + + + Last block time + Son blok zamanı + &Open &Aç @@ -1329,6 +1929,14 @@ Cüzdan kilidini aç. Totals Toplamlar + + In: + İçeri: + + + Out: + Dışarı: + Debug log file Hata ayıklama günlüğü @@ -1357,10 +1965,62 @@ Cüzdan kilidini aç. &Disconnect &Bağlantıyı Kes + + Ban for + Yasakla + + + &Unban + &Yasaklamayı Kaldır + + + Welcome to the %1 RPC console. + %1 RPC konsoluna hoş geldiniz. + + + Use up and down arrows to navigate history, and %1 to clear screen. + Geçmişte gezinmek için yukarı ve aşağı oklarını kullanın ve ekranı temizlemek için %1 kullanın. + + + Type %1 for an overview of available commands. + Mevcut komutlara göz atmak için %1 yazın. + + + For more information on using this console type %1. + Bu konsolun kullanımı hakkında daha fazla bilgi için %1 yazın. + + + WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. + UYARI: Bitcoin dolandırıcılarının çok fazla etkin olduğu zamanlarda, dolandırıcılar bazı kullanıcılara buraya komutlar yazmalarını söylerek onların cüzdanlarındaki bitcoinleri çalmışlardır. Bir komutun sonuçlarını tam olarak anlamadan bu konsolu kullanmayın. + + + Network activity disabled + Ağ etkinliği devre dışı bırakıldı + + + Executing command without any wallet + Komut cüzdan olmadan çalıştırılıyor. + + + Executing command using "%1" wallet + Komut "%1" cüzdanı kullanılarak çalıştırılıyor. + + + (node id: %1) + (düğüm kimliği: %1) + + + via %1 + %1 vasıtasıyla + never Hiçbir zaman + + Inbound + Gelen + Outbound yurt dışı @@ -1384,22 +2044,70 @@ Cüzdan kilidini aç. &Message: &Mesaj: + + An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network. + Talep açıldığında gösterilecek, isteğinize dayalı, ödeme talebi ile ilişkilendirilecek bir ileti. Not: Bu ileti ödeme ile birlikte Bitcoin ağı üzerinden gönderilmeyecektir. + + + An optional label to associate with the new receiving address. + Yeni alım adresi ile ilişkili, seçiminize dayalı etiket. + + + Use this form to request payments. All fields are <b>optional</b>. + Ödeme talep etmek için bu formu kullanın. Tüm alanlar <b>seçime dayalıdır</b>. + + + An optional amount to request. Leave this empty or zero to not request a specific amount. + Seçiminize dayalı talep edilecek tutar. Belli bir tutar talep etmemek için bunu boş bırakın veya sıfır değerini kullanın. + + + &Create new receiving address + Yeni alıcı adresi oluştur + + + Clear all fields of the form. + Formdaki tüm alanları temizle. + Clear Temizle + + Generate native segwit (Bech32) address + Yerli segwit (Bech32) adresi oluştur + + + Requested payments history + Talep edilen ödemelerin tarihçesi + + + Show the selected request (does the same as double clicking an entry) + Seçilen talebi göster (bir unsura çift tıklamakla aynı anlama gelir) + Show Göster + + Remove the selected entries from the list + Seçilen unsurları listeden kaldır + Remove Kaldır + + Copy URI + URI'yi kopyala + Copy label Etiketi kopyala + + Copy message + Mesajı kopyala + Copy amount Miktar kopyala @@ -1470,9 +2178,41 @@ Cüzdan kilidini aç. (no label) (etiket yok) - + + (no message) + (mesaj yok) + + + (no amount requested) + (tutar talep edilmedi) + + + Requested + Talep edilen + + SendCoinsDialog + + Send Coins + Bitcoini Gönder + + + Coin Control Features + Para kontrolü özellikleri + + + Inputs... + Girdiler... + + + automatically selected + otomatik seçilmiş + + + Insufficient funds! + Yetersiz fon! + Quantity: Miktar @@ -1497,6 +2237,14 @@ Cüzdan kilidini aç. Change: Değiştir + + If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address. + Bu etkinleştirildiyse fakat para üstü adresi boş ya da geçersizse para üstü yeni oluşturulan bir adrese gönderilecektir. + + + Custom change address + Özel para üstü adresi + Transaction Fee: İşlem Ücreti: @@ -1505,18 +2253,54 @@ Cüzdan kilidini aç. Choose... Seç... + + Warning: Fee estimation is currently not possible. + Uyarı: Ücret tahmini şu anda mümkün değildir. + + + per kilobyte + kilobayt başı + Hide Gizle + + Recommended: + Tavsiye edilen: + Custom: Özel: + + (Smart fee not initialized yet. This usually takes a few blocks...) + (Zeki ücret henüz başlatılmadı. Bu genelde birkaç blok alır...) + + + Send to multiple recipients at once + Birçok alıcıya aynı anda gönder + + + Add &Recipient + &Alıcı ekle + + + Clear all fields of the form. + Formdaki tüm alanları temizle. + Dust: Toz: + + Hide transaction fee settings + İşlem ücreti ayarlarını gizle + + + Confirmation time target: + Doğrulama süresi hedefi: + Clear &All Tümünü &Temizle @@ -1525,6 +2309,10 @@ Cüzdan kilidini aç. Balance: Bakiye: + + Confirm the send action + Yollama etkinliğini teyit ediniz + S&end &Gönder @@ -1558,10 +2346,18 @@ Cüzdan kilidini aç. Copy change Şansı kopyala + + %1 (%2 blocks) + %1(%2 blok) + %1 to %2 %1 den %2'ye + + Are you sure you want to send? + Göndermek istediğinizden emin misiniz? + Save Transaction Data İşlem verilerini kaydet @@ -1582,10 +2378,62 @@ Cüzdan kilidini aç. Transaction fee İşlem ücreti + + Confirm send coins + Bitcoin gönderimini onaylayın + Send Gönder + + The recipient address is not valid. Please recheck. + Alıcı adresi geçerli değildir. Lütfen tekrar kontrol ediniz. + + + The amount to pay must be larger than 0. + Ödeyeceğiniz tutarın 0'dan yüksek olması gerekir. + + + The amount exceeds your balance. + Tutar bakiyenizden yüksektir. + + + The total exceeds your balance when the %1 transaction fee is included. + Toplam, %1 işlem ücreti eklendiğinde bakiyenizi geçmektedir. + + + Duplicate address found: addresses should only be used once each. + Tekrarlayan adres bulundu: adresler sadece bir kez kullanılmalıdır. + + + Transaction creation failed! + İşlem oluşturma başarısız! + + + A fee higher than %1 is considered an absurdly high fee. + %1 tutarından yüksek bir ücret saçma derecede yüksek bir ücret olarak kabul edilir. + + + Payment request expired. + Ödeme talebinin geçerlilik süresi bitti. + + + Warning: Invalid Bitcoin address + Uyarı: geçersiz Bitcoin adresi + + + Warning: Unknown change address + Uyarı: Bilinmeyen para üstü adresi + + + Confirm custom change address + Özel para üstü adresini onayla + + + The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure? + Para üstü için seçtiğiniz adres bu cüzdanın bir parçası değil. Cüzdanınızdaki bir miktar veya tüm para bu adrese gönderilebilir. Emin misiniz? + (no label) (etiket yok) @@ -1593,53 +2441,237 @@ Cüzdan kilidini aç. SendCoinsEntry + + A&mount: + T&utar: + + + Pay &To: + &Şu adrese öde: + &Label: &Etiket: + + Choose previously used address + Önceden kullanılmış adres seç + + + The Bitcoin address to send the payment to + Ödemenin yollanacağı Bitcoin adresi + Alt+A Alt+A + + Paste address from clipboard + Panodan adres yapıştır + Alt+P Alt+P + + Remove this entry + Bu ögeyi kaldır + + + The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. + Ücret yollanan tutardan alınacaktır. Alıcı tutar alanına girdiğinizden daha az bitcoin alacaktır. Eğer birden çok alıcı seçiliyse ücret eşit olarak bölünecektir. + + + S&ubtract fee from amount + Ücreti tutardan düş + + + Use available balance + Mevcut bakiyeyi kullan + Message: Mesaj: - + + This is an unauthenticated payment request. + Bu, kimliği doğrulanmamış bir ödeme talebidir. + + + This is an authenticated payment request. + Bu, kimliği doğrulanmış bir ödeme talebidir. + + + Enter a label for this address to add it to the list of used addresses + Kullanılmış adres listesine eklemek için bu adrese bir etiket girin + + + A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. + Referans için bitcoin: URI'siyle iliştirilmiş işlemle birlikte depolanacak bir ileti. Not: Bu mesaj Bitcoin ağı üzerinden gönderilmeyecektir. + + + Pay To: + Şu adrese öde: + + + Memo: + Not: + + ShutdownWindow - + + %1 is shutting down... + %1 kapanıyor... + + + Do not shut down the computer until this window disappears. + Bu pencere kalkıncaya dek bilgisayarı kapatmayınız. + + SignVerifyMessageDialog + + Signatures - Sign / Verify a Message + İmzalar - İleti İmzala / Kontrol et + + + &Sign Message + İleti &imzala + + + You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. + Adreslerinize yollanan bitcoinleri alabileceğiniz ispatlamak için adreslerinizle iletiler/anlaşmalar imzalayabilirsiniz. Oltalama saldırılarının kimliğinizi imzanızla elde etmeyi deneyebilecekleri için belirsiz ya da rastgele hiçbir şey imzalamamaya dikkat ediniz. Sadece ayrıntılı açıklaması olan ve tümüne katıldığınız ifadeleri imzalayınız. + + + The Bitcoin address to sign the message with + İletinin imzalanmasında kullanılacak Bitcoin adresi + + + Choose previously used address + Önceden kullanılmış adres seç + Alt+A Alt+A + + Paste address from clipboard + Panodan adres yapıştır + Alt+P Alt+P + + Enter the message you want to sign here + İmzalamak istediğiniz iletiyi burada giriniz + Signature İmza + + Copy the current signature to the system clipboard + Güncel imzayı sistem panosuna kopyala + + + Sign the message to prove you own this Bitcoin address + Bu Bitcoin adresinin sizin olduğunu ispatlamak için iletiyi imzalayın + + + Sign &Message + &İletiyi imzala + + + Reset all sign message fields + Tüm ileti alanlarını sıfırla + Clear &All Tümünü &Temizle + + &Verify Message + İletiyi &kontrol et + + + Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! + Alıcının adresini, iletiyi (satır sonları, boşluklar, sekmeler vs. karakterleri tam olarak kopyaladığınızdan emin olunuz) ve imzayı aşağıya giriniz. Bir ortadaki adam saldırısı tarafından kandırılmaya engel olmak için imzadan, imzalı iletinin içeriğini aşan bir anlam çıkarmamaya dikkat ediniz. Bunun sadece imzalayan tarafın adres ile alım yapabildiğini ispatladığını ve herhangi bir işlemin gönderi tarafını kanıtlayamayacağını unutmayınız! + + + The Bitcoin address the message was signed with + İletinin imzalanmasında kullanılan Bitcoin adresi + + + Verify the message to ensure it was signed with the specified Bitcoin address + Belirtilen Bitcoin adresi ile imzalandığını doğrulamak için iletiyi kontrol et + Verify &Message &Mesajı Denetle + + Reset all verify message fields + Tüm ileti kontrolü alanlarını sıfırla + + + Click "Sign Message" to generate signature + İmzayı oluşturmak için "İletiyi İmzala"ya tıklayın + + + The entered address is invalid. + Girilen adres geçersizdir. + + + Please check the address and try again. + Lütfen adresi kontrol edip tekrar deneyiniz. + + + The entered address does not refer to a key. + Girilen adres herhangi bir anahtara işaret etmemektedir. + + + Wallet unlock was cancelled. + Cüzdan kilidinin açılması iptal edildi. + No error Hata yok - + + Private key for the entered address is not available. + Girilen adres için özel anahtar mevcut değildir. + + + Message signing failed. + Mesaj imzalama başarısız. + + + Message signed. + Mesaj imzalandı. + + + The signature could not be decoded. + İmzanın kodu çözülemedi. + + + Please check the signature and try again. + Lütfen imzayı kontrol edip tekrar deneyiniz. + + + The signature did not match the message digest. + İmza iletinin özeti ile eşleşmedi. + + + Message verification failed. + İleti doğrulaması başarısız oldu. + + + Message verified. + Mesaj doğrulandı. + + TrafficGraphWidget @@ -1649,6 +2681,38 @@ Cüzdan kilidini aç. TransactionDesc + + Open until %1 + %1 değerine dek açık + + + conflicted with a transaction with %1 confirmations + %1 doğrulamalı bir işlem ile çelişti + + + 0/unconfirmed, %1 + 0/doğrulanmamış, %1 + + + in memory pool + bellek alanında + + + not in memory pool + bellek alanında değil + + + abandoned + terk edilmiş + + + %1/unconfirmed + %1/doğrulanmadı + + + %1 confirmations + %1 doğrulama + Status Durum @@ -1689,6 +2753,18 @@ Cüzdan kilidini aç. label etiket + + Credit + Kredi + + + not accepted + kabul edilmedi + + + Debit + Çekilen Tutar + Total debit Toplam gider @@ -1713,14 +2789,66 @@ Cüzdan kilidini aç. Comment Yorum + + Transaction ID + İşlem ID'si + + + Transaction total size + İşlemin toplam boyutu + + + Output index + Çıktı indeksi + + + (Certificate was not verified) + (Sertifika doğrulanmadı) + + + Merchant + Tüccar + + + Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. + Oluşturulan bitcoin'lerin harcanabilmelerinden önce %1 blok beklemeleri gerekmektedir. Bu blok, oluşturduğunuzda, blok zincirine eklenmesi için ağda yayınlandı. Zincire eklenmesi başarısız olursa, durumu "kabul edilmedi" olarak değiştirilecek ve harcanamayacaktır. Bu, bazen başka bir düğüm sizden birkaç saniye önce ya da sonra blok oluşturursa meydana gelebilir. + + + Debug information + Hata ayıklama bilgisi + + + Transaction + İşlem + + + Inputs + Girdiler + Amount Mitar - + + true + doğru + + + false + yanlış + + TransactionDescDialog - + + This pane shows a detailed description of the transaction + Bu pano işlemin ayrıntılı açıklamasını gösterir + + + Details for %1 + %1 için ayrıntılar + + TransactionTableModel @@ -1735,6 +2863,54 @@ Cüzdan kilidini aç. Label Etiket + + Open until %1 + %1 değerine dek açık + + + Unconfirmed + Doğrulanmamış + + + Abandoned + Terk edilmiş + + + Confirming (%1 of %2 recommended confirmations) + Doğrulanıyor (%1 kere doğrulandı, önerilen doğrulama sayısı %2) + + + Confirmed (%1 confirmations) + Doğrulandı (%1 doğrulama) + + + Conflicted + Çakıştı + + + Immature (%1 confirmations, will be available after %2) + Olgunlaşmamış (%1 doğrulama, %2 doğrulama sonra kullanılabilir olacaktır) + + + Generated but not accepted + Oluşturuldu ama kabul edilmedi + + + Received with + Şununla alındı + + + Received from + Alındığı kişi + + + Sent to + Gönderildiği adres + + + Payment to yourself + Kendinize ödeme + Mined Madenden @@ -1743,11 +2919,39 @@ Cüzdan kilidini aç. watch-only sadece-izlenen + + (n/a) + (mevcut değil) + (no label) (etiket yok) - + + Transaction status. Hover over this field to show number of confirmations. + İşlem durumu. Doğrulama sayısını görüntülemek için fare imlecini bu alanın üzerinde tutunuz. + + + Date and time that the transaction was received. + İşlemin alındığı tarih ve zaman. + + + Type of transaction. + İşlemin türü. + + + Whether or not a watch-only address is involved in this transaction. + Bu işleme sadece-izlenen bir adresin dahil edilip, edilmediği. + + + User-defined intent/purpose of the transaction. + İşlemin kullanıcı tanımlı amacı. + + + Amount removed from or added to balance. + Bakiyeden kaldırılan ya da bakiyeye eklenen tutar. + + TransactionView @@ -1778,6 +2982,18 @@ Cüzdan kilidini aç. Range... Aralık... + + Received with + Şununla alındı + + + Sent to + Gönderildiği adres + + + To yourself + Kendinize + Mined Madenden @@ -1786,6 +3002,22 @@ Cüzdan kilidini aç. Other Diğer + + Enter address, transaction id, or label to search + Aramak için adres, gönderim numarası ya da etiket yazınız + + + Min amount + En düşük tutar + + + Abandon transaction + İşlemden vazgeç + + + Increase transaction fee + İşlem ücretini artır + Copy address Adresi kopyala @@ -1802,6 +3034,14 @@ Cüzdan kilidini aç. Copy transaction ID İşlem numarasını kopyala + + Copy raw transaction + Ham işlemi kopyala + + + Copy full transaction details + Tüm işlem ayrıntılarını kopyala + Edit label Etiketi düzenle @@ -1810,6 +3050,10 @@ Cüzdan kilidini aç. Show transaction details İşlem ayrıntılarını göster + + Export Transaction History + İşlem Tarihçesini Dışarı Aktar + Comma separated file (*.csv) Virgülle ayrılmış dosya (*.csv) @@ -1818,6 +3062,10 @@ Cüzdan kilidini aç. Confirmed Doğrulandı + + Watch-only + Sadece izlenen + Date Tarih @@ -1834,25 +3082,65 @@ Cüzdan kilidini aç. Address Adres + + ID + ID + Exporting Failed Dışa Aktarım Başarısız Oldu - + + There was an error trying to save the transaction history to %1. + İşlem tarihçesinin %1 konumuna kaydedilmeye çalışıldığı sırada bir hata meydana geldi. + + + Exporting Successful + Dışarı Aktarma Başarılı + + + The transaction history was successfully saved to %1. + İşlem tarihçesi %1 konumuna başarıyla kaydedildi. + + + Range: + Tarih Aralığı: + + + to + Alıcı + + UnitDisplayStatusBarControl - + + Unit to show amounts in. Click to select another unit. + Tutarı göstermek için birim. Başka bir birim seçmek için tıklayınız. + + WalletController Close wallet Cüzdan kapat + + Are you sure you wish to close the wallet <i>%1</i>? + <i>%1</i> cüzdanını kapatmak istediğinizden emin misiniz? + + + Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. + Cüzdanı çok uzun süre kapatmak, veri budama etkinleştirilmişse tüm zinciri yeniden senkronize etmek zorunda kalmanıza neden olabilir. + Close all wallets Tüm cüzdanları kapat - + + Are you sure you wish to close all wallets? + Tüm cüzdanları kapatmak istediğinizden emin misiniz? + + WalletFrame @@ -1862,6 +3150,42 @@ Cüzdan kilidini aç. WalletModel + + Send Coins + Bitcoini Gönder + + + Increasing transaction fee failed + İşlem ücreti artırma başarısız oldu + + + Do you want to increase the fee? + Ücreti artırmak istiyor musunuz? + + + Current fee: + Geçerli ücret: + + + Increase: + Artış: + + + New fee: + Yeni ücret: + + + PSBT copied + PSBT kopyalandı + + + Can't sign transaction. + İşlem imzalanamıyor. + + + Could not commit transaction + Alışveriş taahüt edilemedi. + default wallet varsayılan cüzdan @@ -1912,26 +3236,290 @@ Cüzdan kilidini aç. bitcoin-core + + Distributed under the MIT software license, see the accompanying file %s or %s + MIT yazılım lisansı altında dağıtılmıştır, beraberindeki %s ya da %s dosyasına bakınız. + + + Prune configured below the minimum of %d MiB. Please use a higher number. + Budama, en düşük değer olan %d MiB'den düşük olarak ayarlanmıştır. Lütfen daha yüksek bir sayı kullanınız. + + + Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) + Budama: son cüzdan eşleşmesi budanmış verilerin ötesine gitmektedir. -reindex kullanmanız gerekmektedir (Budanmış düğüm ise tüm blok zincirini tekrar indirmeniz gerekir.) + + + Pruning blockstore... + Blockstore budanıyor... + + + Unable to start HTTP server. See debug log for details. + HTTP sunucusu başlatılamadı. Ayrıntılar için debug.log dosyasına bakınız. + + + The %s developers + %s geliştiricileri + + + Cannot obtain a lock on data directory %s. %s is probably already running. + %s veri dizininde kilit elde edilemedi. %s muhtemelen hâlihazırda çalışmaktadır. + + + Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. + %s dosyasının okunması sırasında bir hata meydana geldi! Tüm anahtarlar doğru bir şekilde okundu, ancak işlem verileri ya da adres defteri ögeleri hatalı veya eksik olabilir. + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. Lütfen bilgisayarınızın tarih ve saatinin doğruluğunu kontrol edin. Hata varsa %s doğru çalışmayacaktır. + + Please contribute if you find %s useful. Visit %s for further information about the software. + %s programını faydalı buluyorsanız lütfen katkıda bulununuz. Yazılım hakkında daha fazla bilgi için %s adresini ziyaret ediniz. + + + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct + Blok veritabanı gelecekten gibi görünen bir blok içermektedir. Bu, bilgisayarınızın saat ve tarihinin yanlış ayarlanmış olmasından kaynaklanabilir. Blok veritabanını sadece bilgisayarınızın tarih ve saatinin doğru olduğundan eminseniz yeniden derleyin. + + + This is a pre-release test build - use at your own risk - do not use for mining or merchant applications + Bu kararlı sürümden önceki bir deneme sürümüdür. - risklerini bilerek kullanma sorumluluğu sizdedir - bitcoin oluşturmak ya da ticari uygulamalar için kullanmayınız + + + Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain + Veritabanını çatallama öncesi duruma geri sarmak mümkün değil. Blok zincirini tekrar indirmeniz gerekmektedir + + + Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. + Uyarı: Ağ üyeleri aralarında tamamen anlaşmış gibi gözükmüyor! Bazı madenciler sorun yaşıyor gibi görünmektedir. + + + Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. + Uyarı: Ağ eşlerimizle tamamen anlaşamamışız gibi görünüyor! Güncelleme yapmanız gerekebilir ya da diğer düğümlerin güncelleme yapmaları gerekebilir. + + + -maxmempool must be at least %d MB + -maxmempool en az %d MB olmalıdır + + + Cannot resolve -%s address: '%s' + Çözümlenemedi - %s adres: '%s' + + + Change index out of range + Aralık dışında değişiklik indeksi + Copyright (C) %i-%i Telif Hakkı (C) %i-%i + + Corrupted block database detected + Bozuk blok veritabanı tespit edildi + + + Do you want to rebuild the block database now? + Blok veritabanını şimdi yeniden inşa etmek istiyor musunuz? + + + Error initializing block database + Blok veritabanını başlatılırken bir hata meydana geldi + + + Error initializing wallet database environment %s! + %s cüzdan veritabanı ortamının başlatılmasında hata meydana geldi! + + + Error loading %s + %s unsurunun yüklenmesinde hata oluştu + + + Error loading %s: Wallet corrupted + %s unsurunun yüklenmesinde hata oluştu: bozuk cüzdan + + + Error loading %s: Wallet requires newer version of %s + %s unsurunun yüklenmesinde hata oluştu: cüzdan %s programının yeni bir sürümüne ihtiyaç duyuyor + + + Error loading block database + Blok veritabanının yüklenmesinde hata + + + Error opening block database + Blok veritabanının açılışı sırasında hata + + + Failed to listen on any port. Use -listen=0 if you want this. + Herhangi bir portun dinlenmesi başarısız oldu. Bunu istiyorsanız -listen=0 seçeneğini kullanınız. + + + Failed to rescan the wallet during initialization + Başlatma sırasında cüzdanı yeniden tarama işlemi başarısız oldu + + + Importing... + İçe aktarılıyor... + + + Incorrect or no genesis block found. Wrong datadir for network? + Yanlış ya da bulunamamış doğuş bloğu. Ağ için yanlış veri klasörü mü? + + + Initialization sanity check failed. %s is shutting down. + Başlatma sınaması başarısız oldu. %s kapatılıyor. + + + Invalid amount for -%s=<amount>: '%s' + -%s=<tutar> için geçersiz tutar: '%s' + + + Invalid amount for -discardfee=<amount>: '%s' + Geçersiz miktarda -discardfee=<amount>:'%s' + + + Invalid amount for -fallbackfee=<amount>: '%s' + -fallbackfee=<tutar> için geçersiz tutar: '%s' + + + Unknown address type '%s' + Bilinmeyen adres türü '%s' + + + Loading P2P addresses... + P2P adresleri yükleniyor... + + + Loading banlist... + Yasaklama listesi yükleniyor... + + + Not enough file descriptors available. + Kafi derecede dosya tanımlayıcıları mevcut değil. + + + Prune cannot be configured with a negative value. + Budama negatif bir değerle yapılandırılamaz. + + + Prune mode is incompatible with -txindex. + Budama kipi -txindex ile uyumsuzdur. + + + Replaying blocks... + Bloklar tekrar işleniyor... + + + Rewinding blocks... + Bloklar geri sarılıyor... + The source code is available from %s. %s'in kaynak kodu ulaşılabilir. + + Transaction fee and change calculation failed + İşlem ücreti ve para üstü hesaplamasında hata meydana geldi. + + + Unable to bind to %s on this computer. %s is probably already running. + Bu bilgisayarda %s unsuruna bağlanılamadı. %s muhtemelen hâlihazırda çalışmaktadır. + + + Unable to generate keys + Anahtarlar oluşturulamıyor + + + Unsupported logging category %s=%s. + Desteklenmeyen günlük kategorisi %s=%s. + + + Upgrading UTXO database + UTXO veritabanı yükseltiliyor + + + User Agent comment (%s) contains unsafe characters. + Kullanıcı Aracı açıklaması (%s) güvensiz karakterler içermektedir. + Verifying blocks... Bloklar doğrulanıyor... + + Wallet needed to be rewritten: restart %s to complete + Cüzdanın tekrar yazılması gerekiyordu: işlemi tamamlamak için %s programını yeniden başlatınız + + + Error: Listening for incoming connections failed (listen returned error %s) + Hata: İçeri gelen bağlantıların dinlenmesi başarısız oldu (dinleme %s hatasını verdi) + + + Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) + -maxtxfee=<tutar> için geçersiz tutar: '%s' (Sıkışmış işlemleri önlemek için en az %s değerinde en düşük aktarım ücretine eşit olmalıdır) + + + The transaction amount is too small to send after the fee has been deducted + Bu işlem, tutar düşüldükten sonra göndermek için çok düşük + + + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain + Budama olmayan kipe dönmek için veritabanını -reindex ile tekrar derlemeniz gerekir. Bu, tüm blok zincirini tekrar indirecektir + + + Disk space is too low! + Disk alanı çok düşük! + Error reading from database, shutting down. Veritabanı okuma hatası, program kapatılıyor. + + Error upgrading chainstate database + Zincirdurumu veritabanı yükseltme hatası + + + Invalid -onion address or hostname: '%s' + Geçersiz -onion adresi veya ana makine adı: '%s' + + + Invalid -proxy address or hostname: '%s' + Geçersiz -proxy adresi veya ana makine adı: '%s' + + + Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) + -paytxfee=<tutar>:'%s' unsurunda geçersiz tutar (asgari %s olması lazımdır) + + + Invalid netmask specified in -whitelist: '%s' + -whitelist: '%s' unsurunda geçersiz bir ağ maskesi belirtildi + + + Need to specify a port with -whitebind: '%s' + -whitebind: '%s' ile bir port belirtilmesi lazımdır + + + Reducing -maxconnections from %d to %d, because of system limitations. + Sistem sınırlamaları sebebiyle -maxconnections %d değerinden %d değerine düşürülmüştür. + + + Signing transaction failed + İşlemin imzalanması başarısız oldu + + + Specified -walletdir "%s" does not exist + Belirtilen -walletdir "%s" mevcut değil + + + Specified -walletdir "%s" is a relative path + Belirtilen -walletdir "%s" göreceli bir yoldur + + + Specified -walletdir "%s" is not a directory + Belirtilen -walletdir "%s" bir dizin değildir + + + The transaction amount is too small to pay the fee + İşlemdeki bitcoin tutarı ücreti ödemek için çok düşük + This is experimental software. Bu deneysel bir uygulamadır. @@ -1960,6 +3548,18 @@ Cüzdan kilidini aç. Warning: unknown new rules activated (versionbit %i) Uyarı: Bilinmeyen yeni kurallar etkinleştirilmiştir (versionbit %i) + + -maxtxfee is set very high! Fees this large could be paid on a single transaction. + -maxtxfee çok yüksek bir değere ayarlanmış! Bu denli yüksek ücretler tek bir işlemde ödenebilir. + + + This is the transaction fee you may pay when fee estimates are not available. + İşlem ücret tahminleri mevcut olmadığında ödeyebileceğiniz işlem ücreti budur. + + + Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments. + Ağ sürümü zincirinin toplam boyutu (%i) en yüksek boyutu geçmektedir (%i). Kullanıcı aracı açıklamasının sayısı veya boyutunu azaltınız. + %s is set very high! %s çok yüksek ayarlanmış! @@ -1984,18 +3584,38 @@ Cüzdan kilidini aç. Transaction amounts must not be negative İşlem tutarı negatif olmamalıdır. + + Transaction has too long of a mempool chain + İşlem çok uzun bir mempool zincirine sahip + Transaction must have at least one recipient İşlem en az bir adet alıcıya sahip olmalı. + + Unknown network specified in -onlynet: '%s' + -onlynet için bilinmeyen bir ağ belirtildi: '%s' + Insufficient funds Yetersiz bakiye + + Cannot write to data directory '%s'; check permissions. + Veriler '%s' klasörüne yazılamıyor ; yetkilendirmeyi kontrol edin. + + + Loading block index... + Blok dizini yükleniyor ... + Loading wallet... Cüzdan yükleniyor... + + Cannot downgrade wallet + Cüzdan eski biçime geri alınamaz + Rescanning... Yeniden taranıyor... diff --git a/src/qt/locale/bitcoin_uk.ts b/src/qt/locale/bitcoin_uk.ts index b3b19fa81..5d2a20488 100644 --- a/src/qt/locale/bitcoin_uk.ts +++ b/src/qt/locale/bitcoin_uk.ts @@ -844,6 +844,10 @@ Signing is only possible with addresses of the type 'legacy'. Create Wallet Створити Гаманець + + Wallet + Гаманець + Wallet Name Назва Гаманця @@ -856,6 +860,10 @@ Signing is only possible with addresses of the type 'legacy'. Encrypt Wallet Шифрувати Гаманець + + Advanced Options + Додаткові параметри + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. Вимкнути приватні ключі для цього гаманця. Гаманці з вимкнутими приватними ключами не матимуть приватних ключів і не можуть мати набір HD або імпортовані приватні ключі. Це ідеально підходить лише для тільки-огляд гаманців. diff --git a/src/qt/locale/bitcoin_ur.ts b/src/qt/locale/bitcoin_ur.ts index e199aae73..cc9a227af 100644 --- a/src/qt/locale/bitcoin_ur.ts +++ b/src/qt/locale/bitcoin_ur.ts @@ -69,6 +69,11 @@ These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. یہ آپ کے ادائیگی بھیجنے کے لئے بٹ کوائن ایڈریس ہیں.سکے بھیجنے سے پہلے ہمیشہ رقم اور وصول کنندہ پتہ چیک کریں۔ + + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + ادائیگیوں کے لئے آپ کے بٹ کوائن ایڈریس ہیں۔ نئے پتے بنانے کے لئے وصول کنندہ ٹیب میں 'نیا وصول کنندہ پتہ بنائیں' بٹن کا استعمال کریں۔دستخط صرف 'میراثی' قسم کے پتے کے ساتھ ہی ممکن ہے۔ + &Copy Address &پتا نقل کریں @@ -139,10 +144,18 @@ Encrypt wallet بٹوے کو خفیہ کریں + + This operation needs your wallet passphrase to unlock the wallet. + پرس کو غیر مقفل کرنے کے لئے اس آپریشن کو آپ کے بٹوے کا پاسفریز درکار ہے۔ + Unlock wallet بستہ کھولیں + + This operation needs your wallet passphrase to decrypt the wallet. + اس آپریشن کو بٹوے کو کھولنے کے لئے یا ڈکرپٹ کرنے کے لئے آپ کے بٹوے کا پاس فراز ضروری ہے۔ + Decrypt wallet ڈکرپٹ والیٹ @@ -155,12 +168,124 @@ Confirm wallet encryption پرس کی خفیہ کاری کی تصدیق کریں - + + Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! + انتباہ: اگر آپ اپنا بٹوہ انکرپٹ کرتے ہیں اور اپنا پاس فریز کھو دیتے ہیں تو ، آپ اپنے تمام بٹکوئنز کھو دیں گے. + + + Are you sure you wish to encrypt your wallet? + کیا آپ واقعی اپنے بٹوے کو خفیہ کرنا چاہتے ہیں؟ + + + Wallet encrypted + بٹوے کو خفیہ کردہ + + + Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. + پرس کے لئے نیا پاسفریج درج کریں۔ براہ کرم دس یا زیادہ بے ترتیب حرفوں ، یا آٹھ یا زیادہ الفاظ کا پاس فریز استعمال کریں۔ + + + Enter the old passphrase and new passphrase for the wallet. + پرس کے لئے پرانا پاسفریج اور نیا پاسفریز درج کریں۔ + + + Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. + یاد رکھیں کہ آپ کے پرس کو خفیہ کرنا آپ کے بٹ کوائنز کو میلویئر/چور سے آپ کے کمپیوٹر میں انفیکشن لگانے کے ذریعہ چوری ہونے سے پوری طرح محفوظ نہیں رکھ سکتا ہے۔ + + + Wallet to be encrypted + بٹوے کو خفیہ کرنا ہے + + + Your wallet is about to be encrypted. + آپ کا پرس خفیہ ہونے والا ہے۔ + + + Your wallet is now encrypted. + آپ کا پرس اب خفیہ ہے۔ + + + IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. + اہم: کسی بھی پچھلے بیک اپ کو جو آپ نے اپنی بٹوے فائل سے بنایا ہے اس کی جگہ نئی تیار کردہ ، خفیہ کردہ والیٹ فائل کی جگہ لینا چاہئے۔ سیکیورٹی وجوہات کی بناء پر ، بغیر خفیہ کردہ والیٹ فائل کا پچھلا بیک اپ بیکار ہوجائے گا جیسے ہی آپ نیا ، خفیہ کردہ پرس استعمال کرنا شروع کردیں گے۔ + + + Wallet encryption failed + والیٹ کی خفیہ کاری ناکام ہوگئی + + + Wallet encryption failed due to an internal error. Your wallet was not encrypted. + اندرونی خامی کے سبب والیٹ کی خفیہ کاری ناکام ہوگئی۔ آپ کا پرس خفیہ نہیں ہوا تھا۔ + + + The supplied passphrases do not match. + فراہم کردہ پاسفریز مماثل نہیں ہیں۔ + + + Wallet unlock failed + والیٹ انلاک ناکام ہوگیا + + + The passphrase entered for the wallet decryption was incorrect. + بٹوے کی ڈکرپشن کے لئے درج کردہ پاس فریس غلط تھا۔ + + + Wallet decryption failed + بٹوے کی ڈکرپشن ناکام ہوگئ + + + Wallet passphrase was successfully changed. + والیٹ کا پاسفریز کامیابی کے ساتھ تبدیل کردیا گیا تھا۔ + + + Warning: The Caps Lock key is on! + انتباہ: کیپس لاک کی آن ہے! + + BanTableModel - + + IP/Netmask + آئی پی / نیٹ ماسک + + + Banned Until + تک پابندی عائد + + BitcoinGUI + + Sign &message... + سائن اور پیغام ... + + + Synchronizing with network... + نیٹ ورک کے ساتھ ہم وقت سازی ہو رہی ہے… + + + &Overview + اور جائزہ + + + Show general overview of wallet + پرس کا عمومی جائزہ دکھائیں + + + &Transactions + اور لین دین + + + Browse transaction history + ٹرانزیکشن ہسٹری کو براؤز کریں + + + E&xit + باہر نکلیں + + + Quit application + درخواست چھوڑ دیں + &About %1 &معلومات%1 @@ -169,10 +294,82 @@ Show information about %1 %1 کے بارے میں معلومات دکھایں + + About &Qt + کے بارے میں &Qt + + + Show information about Qt + Qt کے بارے میں معلومات دکھائیں + + + Modify configuration options for %1 + %1 اختیارات کے لئےترتیب ترمیم کریں + + + Create a new wallet + ایک نیا پرس بنائیں + + + Wallet: + پرس: + + + Network activity disabled. + نیٹ ورک کی سرگرمی غیر فعال ہے۔ + + + Proxy is <b>enabled</b>: %1 + پراکسی فعال ہے:%1 + + + Send coins to a Bitcoin address + بٹ کوائن ایڈریس پر سکے بھیجیں + + + Backup wallet to another location + کسی دوسرے مقام پر بیک اپ والیٹ + + + Change the passphrase used for wallet encryption + بٹوے کی خفیہ کاری کے لئے استعمال ہونے والا پاسفریز تبدیل کریں + + + &Send + &بھیجیں + + + &Receive + &وصول کریں + + + &Show / Hide + &دکھانا چھپانا + + + Show or hide the main Window + مین ونڈو دکھائیں یا چھپائیں + + + Encrypt the private keys that belong to your wallet + Encrypt the private keys that belong to your wallet + + + Sign messages with your Bitcoin addresses to prove you own them + اپنے ویکیپیڈیا پتوں کے ساتھ پیغامات پر دستخط کریں تاکہ آپ ان کے مالک ہوں + + + Verify messages to ensure they were signed with specified Bitcoin addresses + پیغامات کی توثیق کریں تاکہ یہ یقینی بن سکے کہ ان پر بٹ کوائن کے مخصوص پتوں پر دستخط ہوئے ہیں + Error نقص + + Error: %1 + خرابی:%1 + CoinControlDialog @@ -257,6 +454,22 @@ Amount رقم + + Error: Specified data directory "%1" does not exist. + خرابی: مخصوص ڈیٹا ڈائریکٹری "" %1 موجود نہیں ہے۔ + + + Error: Cannot parse configuration file: %1. + خرابی: کنفگریشن فائل کا تجزیہ نہیں کیا جاسکتا۔%1. + + + Error: %1 + خرابی:%1 + + + Error initializing settings: %1 + ترتیبات کو شروع کرنے میں خرابی:%1 + QRImageWidget @@ -273,6 +486,10 @@ Amount: رقم: + + Wallet: + پرس: + Copy &Address کاپی پتہ @@ -388,7 +605,11 @@ WalletFrame - + + Create a new wallet + ایک نیا پرس بنائیں + + WalletModel diff --git a/src/qt/locale/bitcoin_uz@Cyrl.ts b/src/qt/locale/bitcoin_uz@Cyrl.ts index e5dd58d3c..f77c4d341 100644 --- a/src/qt/locale/bitcoin_uz@Cyrl.ts +++ b/src/qt/locale/bitcoin_uz@Cyrl.ts @@ -554,6 +554,10 @@ CreateWalletDialog + + Wallet + Ҳамён + EditAddressDialog diff --git a/src/qt/locale/bitcoin_uz@Latn.ts b/src/qt/locale/bitcoin_uz@Latn.ts index 93455f2fb..5382ad87f 100644 --- a/src/qt/locale/bitcoin_uz@Latn.ts +++ b/src/qt/locale/bitcoin_uz@Latn.ts @@ -1,6 +1,10 @@ AddressBookPage + + Right-click to edit address or label + Manzil yoki yorliqni tahrirlash uchun oʻng tugmani bosing + Create a new address Yangi manzil yaratish diff --git a/src/qt/locale/bitcoin_vi.ts b/src/qt/locale/bitcoin_vi.ts index 34ec8aef3..af6e5f2dd 100644 --- a/src/qt/locale/bitcoin_vi.ts +++ b/src/qt/locale/bitcoin_vi.ts @@ -533,6 +533,14 @@ Show the %1 help message to get a list with possible Bitcoin command-line options Hiển thị %1 tin nhắn hỗ trợ để nhận được danh sách Bitcoin command-line khả dụng + + &Mask values + &Mask values + + + Mask the values in the Overview tab + Mask the values in the Overview tab + default wallet ví mặc định @@ -818,6 +826,10 @@ Create Wallet Tạo Ví + + Wallet + + Wallet Name Tên Ví @@ -1453,7 +1465,11 @@ Current total balance in watch-only addresses Tổng số dư hiện tại trong watch-only addresses - + + Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. + Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. + + PSBTOperationsDialog @@ -1480,6 +1496,10 @@ Failed to sign transaction: %1 Đăng ký giao dịch thất bại :%1 + + Signed transaction successfully. Transaction is ready to broadcast. + Signed transaction successfully. Transaction is ready to broadcast. + PSBT copied to clipboard. Dữ liệu PSBT được sao chép vào bộ nhớ tạm. @@ -1488,6 +1508,10 @@ Save Transaction Data Lưu trữ giao dịch + + Partially Signed Transaction (Binary) (*.psbt) + Partially Signed Transaction (Binary) (*.psbt) + PSBT saved to disk. Dữ liệu PSBT được lưu vào ổ đĩa. @@ -2145,6 +2169,10 @@ ReceiveRequestDialog + + Request payment to ... + Request payment to ... + Address: Địa chỉ @@ -2431,10 +2459,18 @@ Lưu ý: Vì phí được tính trên cơ sở mỗi byte, nên phí "100 satos Are you sure you want to send? Bạn chắc chắn muốn gửi chứ? + + Create Unsigned + Create Unsigned + Save Transaction Data Lưu trữ giao dịch + + Partially Signed Transaction (Binary) (*.psbt) + Partially Signed Transaction (Binary) (*.psbt) + PSBT saved PSBT đã lưu @@ -3350,6 +3386,10 @@ Lưu ý: Vì phí được tính trên cơ sở mỗi byte, nên phí "100 satos Error Lỗi + + Unable to decode PSBT from clipboard (invalid base64) + Unable to decode PSBT from clipboard (invalid base64) + Load Transaction Data Tải thông tin giao dịch @@ -3433,6 +3473,10 @@ Lưu ý: Vì phí được tính trên cơ sở mỗi byte, nên phí "100 satos Please contribute if you find %s useful. Visit %s for further information about the software. Please contribute if you find %s useful. Visit %s for further information about the software. + + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct @@ -3541,6 +3585,10 @@ Lưu ý: Vì phí được tính trên cơ sở mỗi byte, nên phí "100 satos Failed to verify database Lỗi xác nhận dữ liệu + + Ignoring duplicate -wallet %s. + Ignoring duplicate -wallet %s. + Importing... Importing... @@ -3569,6 +3617,14 @@ Lưu ý: Vì phí được tính trên cơ sở mỗi byte, nên phí "100 satos Invalid amount for -fallbackfee=<amount>: '%s' Invalid amount for -fallbackfee=<amount>: '%s' + + SQLiteDatabase: Failed to fetch the application id: %s + SQLiteDatabase: Failed to fetch the application id: %s + + + SQLiteDatabase: Unexpected application id. Expected %u, got %u + SQLiteDatabase: Unexpected application id. Expected %u, got %u + Specified blocks directory "%s" does not exist. Thư mục chứa các khối được chỉ ra "%s" không tồn tại @@ -3653,6 +3709,10 @@ Lưu ý: Vì phí được tính trên cơ sở mỗi byte, nên phí "100 satos Error: Listening for incoming connections failed (listen returned error %s) Error: Listening for incoming connections failed (listen returned error %s) + + %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. + %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. + Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) @@ -3661,6 +3721,14 @@ Lưu ý: Vì phí được tính trên cơ sở mỗi byte, nên phí "100 satos The transaction amount is too small to send after the fee has been deducted The transaction amount is too small to send after the fee has been deducted + + This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet + This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet + + + This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. + This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain @@ -3685,6 +3753,10 @@ Lưu ý: Vì phí được tính trên cơ sở mỗi byte, nên phí "100 satos Error: Disk space is low for %s Lỗi: Đĩa trống ít quá cho %s + + Fee rate (%s) is lower than the minimum fee rate setting (%s) + Fee rate (%s) is lower than the minimum fee rate setting (%s) + Invalid -onion address or hostname: '%s' Invalid -onion address or hostname: '%s' diff --git a/src/qt/locale/bitcoin_zh_CN.ts b/src/qt/locale/bitcoin_zh_CN.ts index 2c8ad7d73..f86588e47 100644 --- a/src/qt/locale/bitcoin_zh_CN.ts +++ b/src/qt/locale/bitcoin_zh_CN.ts @@ -3,7 +3,7 @@ AddressBookPage Right-click to edit address or label - 22000631@qq.com guanlonghuang + 鼠标右击编辑地址或标签 Create a new address @@ -844,6 +844,10 @@ Signing is only possible with addresses of the type 'legacy'. Create Wallet 创建钱包 + + Wallet + 钱包 + Wallet Name 钱包名称 @@ -856,6 +860,10 @@ Signing is only possible with addresses of the type 'legacy'. Encrypt Wallet 加密钱包 + + Advanced Options + 进阶设定 + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. 禁用此钱包的私钥。被禁用私钥的钱包将不会含有任何私钥,而且也不能含有HD种子或导入的私钥。作为仅观察钱包,这是比较理想的。 @@ -3120,7 +3128,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis p Open for %n more block(s) - 在额外的%n个区块前状态待定 + 在进一步同步完%n个区块前状态待定 Open until %1 diff --git a/src/qt/locale/bitcoin_zh_HK.ts b/src/qt/locale/bitcoin_zh_HK.ts index b48b2ce7e..abb7fceb9 100644 --- a/src/qt/locale/bitcoin_zh_HK.ts +++ b/src/qt/locale/bitcoin_zh_HK.ts @@ -131,6 +131,10 @@ Repeat new passphrase 重複新密碼 + + Show passphrase + 顯示密碼 + Encrypt wallet 加密錢包 @@ -171,6 +175,30 @@ Wallet encrypted 錢包已加密 + + Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. + 輸入錢包的新密碼。<br/>密碼請用<b>10 個或以上的隨機字元</b>,或是<b>8 個或以上的字詞</b>。 + + + Enter the old passphrase and new passphrase for the wallet. + 請輸入舊密碼和新密碼至錢包。 + + + Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. + 請記得將錢包加密不能完全防止你的 Bitcoins 經被入侵電腦的惡意程式偷取。 + + + Wallet to be encrypted + 需要加密的錢包 + + + Your wallet is about to be encrypted. + 您的錢包將被加密 + + + Your wallet is now encrypted. + 您的錢包剛剛完成加密 + IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. 重要: 請改用新產生的加密錢包檔,來取代所以舊錢包檔的備份。為安全計,當你開始使用新的加密錢包檔後,舊錢包檔的備份就不能再使用了。 @@ -293,6 +321,18 @@ Open &URI... 開啓網址... &U + + Create Wallet... + 建立錢包... + + + Create a new wallet + 新增一個錢包 + + + Wallet: + 錢包: + Reindexing blocks on disk... 正在為磁碟區塊重建索引... @@ -361,15 +401,49 @@ Information 資訊 + + Up to date + 已更新至最新版本 + + + Open Wallet + 開啟錢包 + + + Open a wallet + 開啟一個錢包 + + + default wallet + 預設錢包 + + + Main Window + 主視窗 + + + Error: %1 + 錯誤: %1 + Date: %1 日期: %1 + + + + Wallet: %1 + + 錢包: %1 CoinControlDialog + + Confirmed + 已確認 + (no label) (無標記) @@ -380,6 +454,10 @@ CreateWalletDialog + + Wallet + 錢包 + EditAddressDialog @@ -409,6 +487,10 @@ OpenWalletActivity + + default wallet + 預設錢包 + OptionsDialog @@ -499,6 +581,10 @@ %n year(s) %n 年 + + Error: %1 + 錯誤: %1 + QRImageWidget @@ -543,6 +629,10 @@ ReceiveRequestDialog + + Wallet: + 錢包: + RecentRequestsTableModel @@ -605,6 +695,10 @@ Comma separated file (*.csv) 逗號分隔檔 (*.csv) + + Confirmed + 已確認 + Label 標記 @@ -626,10 +720,18 @@ WalletFrame - + + Create a new wallet + 新增一個錢包 + + WalletModel - + + default wallet + 預設錢包 + + WalletView diff --git a/src/qt/locale/bitcoin_zh_TW.ts b/src/qt/locale/bitcoin_zh_TW.ts index 52132e8bc..eb0f3d73a 100644 --- a/src/qt/locale/bitcoin_zh_TW.ts +++ b/src/qt/locale/bitcoin_zh_TW.ts @@ -831,6 +831,10 @@ Signing is only possible with addresses of the type 'legacy'. Create Wallet 新增錢包 + + Wallet + 錢包 + Wallet Name 錢包名稱 @@ -843,6 +847,10 @@ Signing is only possible with addresses of the type 'legacy'. Encrypt Wallet 加密錢包 + + Advanced Options + 進階選項 + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. 禁用此錢包的私鑰。取消了私鑰的錢包將沒有私鑰,並且不能有HD種子或匯入的私鑰。這是只能看的錢包的理想選擇。 diff --git a/src/qt/locale/bitcoin_zu.ts b/src/qt/locale/bitcoin_zu.ts index b45014a11..1561c3b31 100644 --- a/src/qt/locale/bitcoin_zu.ts +++ b/src/qt/locale/bitcoin_zu.ts @@ -844,6 +844,10 @@ Signing is only possible with addresses of the type 'legacy'. Create Wallet Create Wallet + + Wallet + Wallet + Wallet Name Wallet Name From 2873e01c6a257519247267ccbced5973e18ab019 Mon Sep 17 00:00:00 2001 From: fanquake Date: Tue, 17 Aug 2021 13:50:57 +0800 Subject: [PATCH 095/102] doc: add inital PR and author list to 0.21.2 release notes Any further updates / version number adjustments can be done prior to final. --- doc/release-notes.md | 64 +++++++++++++++++++++++++++++++++++++------- 1 file changed, 54 insertions(+), 10 deletions(-) diff --git a/doc/release-notes.md b/doc/release-notes.md index 8c9eed786..b381a3325 100644 --- a/doc/release-notes.md +++ b/doc/release-notes.md @@ -1,9 +1,9 @@ -0.21.x Release Notes +0.21.2rc1 Release Notes ==================== -Bitcoin Core version 0.21.x is now available from: +Bitcoin Core version 0.21.2rc1 is now available from: - + This minor release includes various bug fixes and performance improvements, as well as updated translations. @@ -41,22 +41,66 @@ From Bitcoin Core 0.20.0 onwards, macOS versions earlier than 10.12 are no longer supported. Additionally, Bitcoin Core does not yet change appearance when macOS "dark mode" is activated. -Notable changes -=============== -RPC ---- - - -0.21.x change log +0.21.2rc1 change log ================= +### P2P protocol and network code + +- #21644 use NetPermissions::HasFlag() in CConnman::Bind() (jonatack) +- #22569 Rate limit the processing of rumoured addresses (sipa) + +### Wallet + +- #21907 Do not iterate a directory if having an error while accessing it (hebasto) + +### RPC + +- #19361 Reset scantxoutset progress before inferring descriptors (prusnak) + +### Build System + +- #21932 depends: update Qt 5.9 source url (kittywhiskers) +- #22017 Update Windows code signing certificate (achow101) +- #22191 Use custom MacOS code signing tool (achow101) + +### Tests and QA + +- #20182 Build with --enable-werror by default, and document exceptions (hebasto) +- #20535 Fix intermittent feature_taproot issue (MarcoFalke) +- #21663 Fix macOS brew install command (hebasto) +- #22279 add missing ECCVerifyHandle to base_encode_decode (apoelstra) + +### GUI + +- #277 Do not use QClipboard::Selection on Windows and macOS. (hebasto) +- #280 Remove user input from URI error message (prayank23) +- #365 Draw "eye" sign at the beginning of watch-only addresses (hebasto) + +### Miscellaneous + +- #22002 Fix crash when parsing command line with -noincludeconf=0 (MarcoFalke) +- #22137 util: Properly handle -noincludeconf on command line (take 2) (MarcoFalke) + Credits ======= Thanks to everyone who directly contributed to this release: +- Andrew Chow +- Andrew Poelstra +- fanquake +- Hennadii Stepanov +- Jon Atack +- Kittywhiskers Van Gogh +- Luke Dashjr +- MarcoFalke +- Pavol Rusnak +- Pieter Wuille +- prayank23 +- W. J. van der Laan + As well as to everyone that helped with translations on [Transifex](https://www.transifex.com/bitcoin/bitcoin/). From 2a7568999cbc7cd09e71c07d0a2871b9a9343ef0 Mon Sep 17 00:00:00 2001 From: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com> Date: Fri, 27 Aug 2021 00:07:27 +0300 Subject: [PATCH 096/102] qt: Pre-0.21.2rc2 translations update --- src/Makefile.qt_locale.include | 8 + src/qt/bitcoin_locale.qrc | 8 + src/qt/locale/bitcoin_az.ts | 467 ++++ src/qt/locale/bitcoin_bs.ts | 32 +- src/qt/locale/bitcoin_el.ts | 4 + src/qt/locale/bitcoin_es_CO.ts | 278 ++- src/qt/locale/bitcoin_es_MX.ts | 4 + src/qt/locale/bitcoin_ga.ts | 4081 +++++++++++++++++++++++++++++++ src/qt/locale/bitcoin_gl.ts | 1921 +++++++++++++++ src/qt/locale/bitcoin_gu.ts | 343 +++ src/qt/locale/bitcoin_id.ts | 2 +- src/qt/locale/bitcoin_kl.ts | 347 +++ src/qt/locale/bitcoin_ms.ts | 4114 ++++++++++++++++++++++++++++++++ src/qt/locale/bitcoin_nl.ts | 2 +- src/qt/locale/bitcoin_no.ts | 222 ++ src/qt/locale/bitcoin_tr.ts | 8 + src/qt/locale/bitcoin_ug.ts | 267 +++ 17 files changed, 12097 insertions(+), 11 deletions(-) create mode 100644 src/qt/locale/bitcoin_az.ts create mode 100644 src/qt/locale/bitcoin_ga.ts create mode 100644 src/qt/locale/bitcoin_gl.ts create mode 100644 src/qt/locale/bitcoin_gu.ts create mode 100644 src/qt/locale/bitcoin_kl.ts create mode 100644 src/qt/locale/bitcoin_ms.ts create mode 100644 src/qt/locale/bitcoin_no.ts create mode 100644 src/qt/locale/bitcoin_ug.ts diff --git a/src/Makefile.qt_locale.include b/src/Makefile.qt_locale.include index e7a065969..1554c3ffd 100644 --- a/src/Makefile.qt_locale.include +++ b/src/Makefile.qt_locale.include @@ -2,6 +2,7 @@ QT_TS = \ qt/locale/bitcoin_af.ts \ qt/locale/bitcoin_am.ts \ qt/locale/bitcoin_ar.ts \ + qt/locale/bitcoin_az.ts \ qt/locale/bitcoin_be.ts \ qt/locale/bitcoin_bg.ts \ qt/locale/bitcoin_bn.ts \ @@ -27,7 +28,10 @@ QT_TS = \ qt/locale/bitcoin_fi.ts \ qt/locale/bitcoin_fil.ts \ qt/locale/bitcoin_fr.ts \ + qt/locale/bitcoin_ga.ts \ + qt/locale/bitcoin_gl.ts \ qt/locale/bitcoin_gl_ES.ts \ + qt/locale/bitcoin_gu.ts \ qt/locale/bitcoin_he.ts \ qt/locale/bitcoin_hi.ts \ qt/locale/bitcoin_hr.ts \ @@ -38,6 +42,7 @@ QT_TS = \ qt/locale/bitcoin_ja.ts \ qt/locale/bitcoin_ka.ts \ qt/locale/bitcoin_kk.ts \ + qt/locale/bitcoin_kl.ts \ qt/locale/bitcoin_km.ts \ qt/locale/bitcoin_ko.ts \ qt/locale/bitcoin_ku_IQ.ts \ @@ -49,10 +54,12 @@ QT_TS = \ qt/locale/bitcoin_ml.ts \ qt/locale/bitcoin_mn.ts \ qt/locale/bitcoin_mr_IN.ts \ + qt/locale/bitcoin_ms.ts \ qt/locale/bitcoin_my.ts \ qt/locale/bitcoin_nb.ts \ qt/locale/bitcoin_ne.ts \ qt/locale/bitcoin_nl.ts \ + qt/locale/bitcoin_no.ts \ qt/locale/bitcoin_pam.ts \ qt/locale/bitcoin_pl.ts \ qt/locale/bitcoin_pt.ts \ @@ -72,6 +79,7 @@ QT_TS = \ qt/locale/bitcoin_te.ts \ qt/locale/bitcoin_th.ts \ qt/locale/bitcoin_tr.ts \ + qt/locale/bitcoin_ug.ts \ qt/locale/bitcoin_uk.ts \ qt/locale/bitcoin_ur.ts \ qt/locale/bitcoin_uz@Cyrl.ts \ diff --git a/src/qt/bitcoin_locale.qrc b/src/qt/bitcoin_locale.qrc index e5df50665..5931652d7 100644 --- a/src/qt/bitcoin_locale.qrc +++ b/src/qt/bitcoin_locale.qrc @@ -3,6 +3,7 @@ locale/bitcoin_af.qm locale/bitcoin_am.qm locale/bitcoin_ar.qm + locale/bitcoin_az.qm locale/bitcoin_be.qm locale/bitcoin_bg.qm locale/bitcoin_bn.qm @@ -28,7 +29,10 @@ locale/bitcoin_fi.qm locale/bitcoin_fil.qm locale/bitcoin_fr.qm + locale/bitcoin_ga.qm + locale/bitcoin_gl.qm locale/bitcoin_gl_ES.qm + locale/bitcoin_gu.qm locale/bitcoin_he.qm locale/bitcoin_hi.qm locale/bitcoin_hr.qm @@ -39,6 +43,7 @@ locale/bitcoin_ja.qm locale/bitcoin_ka.qm locale/bitcoin_kk.qm + locale/bitcoin_kl.qm locale/bitcoin_km.qm locale/bitcoin_ko.qm locale/bitcoin_ku_IQ.qm @@ -50,10 +55,12 @@ locale/bitcoin_ml.qm locale/bitcoin_mn.qm locale/bitcoin_mr_IN.qm + locale/bitcoin_ms.qm locale/bitcoin_my.qm locale/bitcoin_nb.qm locale/bitcoin_ne.qm locale/bitcoin_nl.qm + locale/bitcoin_no.qm locale/bitcoin_pam.qm locale/bitcoin_pl.qm locale/bitcoin_pt.qm @@ -73,6 +80,7 @@ locale/bitcoin_te.qm locale/bitcoin_th.qm locale/bitcoin_tr.qm + locale/bitcoin_ug.qm locale/bitcoin_uk.qm locale/bitcoin_ur.qm locale/bitcoin_uz@Cyrl.qm diff --git a/src/qt/locale/bitcoin_az.ts b/src/qt/locale/bitcoin_az.ts new file mode 100644 index 000000000..d100652ff --- /dev/null +++ b/src/qt/locale/bitcoin_az.ts @@ -0,0 +1,467 @@ + + + AddressBookPage + + Right-click to edit address or label + Ünvana və ya etiketə düzəliş etmək üçün sağ düyməsi ilə klikləyin + + + Create a new address + Yeni bir ünvan yaradın + + + &New + &Yeni + + + Copy the currently selected address to the system clipboard + Hazırki seçilmiş ünvanı sistem lövhəsinə kopyalayın + + + &Copy + &Kopyala + + + C&lose + Bağla + + + Delete the currently selected address from the list + Hazırki seçilmiş ünvanı siyahıdan silin + + + Enter address or label to search + Axtarmaq üçün ünvan və ya etiket daxil edin + + + Export the data in the current tab to a file + Hazırki vərəqdəki verilənləri fayla ixrac edin + + + &Export + &İxrac + + + &Delete + &Sil + + + Choose the address to send coins to + Pul göndəriləcək ünvanı seçin + + + Choose the address to receive coins with + Pul alınacaq ünvanı seçin + + + C&hoose + Seç + + + Sending addresses + Göndərilən ünvanlar + + + Receiving addresses + Alınan ünvanlar + + + These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. + Bunlar ödənişləri göndərmək üçün Bitcoin ünvanlarınızdır. Pul göndərməkdən əvvəl həmişə miqdarı və göndəriləcək ünvanı yoxlayın. + + + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + Bunlar ödəniş almaq üçün Bitcoin ünvanlarınızdır. Yeni ünvan yaratmaq üçün alacaqlar vərəqində 'Yeni alacaq ünvan yarat' düyməsini istifadə edin. +Daxil olma, yalnız 'qanuni' tipli ünvanlar ilə mümkündür. + + + &Copy Address + &Ünvanı kopyala + + + Copy &Label + Etiketi kopyala + + + &Edit + &Düzəliş et + + + Export Address List + Ünvan siyahısını ixrac et + + + Comma separated file (*.csv) + Vergüllə ayrılmış fayl (*.csv) + + + Exporting Failed + İxrac edilmədi + + + There was an error trying to save the address list to %1. Please try again. + Ünvan siyahısını %1 daxilində saxlamağı sınayarkən xəta baş verdi. Zəhmət olmasa yenidən sınayın. + + + + AddressTableModel + + Label + Etiket + + + Address + Ünvan + + + (no label) + (etiket yoxdur) + + + + AskPassphraseDialog + + Passphrase Dialog + Şifrə İfadə Dialoqu + + + Enter passphrase + Şifrə ifadəsini daxil edin + + + New passphrase + Yeni şifrə ifadəsi + + + Repeat new passphrase + Şifrə ifadəsini təkrarlayın + + + Show passphrase + Şifrə ifadəsini göstər + + + Encrypt wallet + Cüzdanı şifrələyin + + + This operation needs your wallet passphrase to unlock the wallet. + Bu əməliyyat, cüzdanın kilidini açmaq üçün cüzdan şifrə ifadəsinə ehtiyac duyur. + + + Unlock wallet + Cüzdanın kilidini açın + + + This operation needs your wallet passphrase to decrypt the wallet. + Bu əməliyyat, cüzdanın şifrəsini açmaq üçün cüzdan şifrə ifadəsinə ehtiyac duyur. + + + Decrypt wallet + Cüzdanın şifrəsini açın + + + Change passphrase + Şifrə ifadəsini dəyişdir + + + Confirm wallet encryption + Cüzdan şifrələməsini təsdiqləyin + + + Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. + Unutmayın ki, cüzdanınızın şifrələməsi bitcoinlərinizi kompüterinizə zərərli proqram tərəfindən oğurlanmaqdan tamamilə qoruya bilməz. + + + Wallet to be encrypted + Cüzdan şifrələnəcək + + + Your wallet is about to be encrypted. + Cüzdanınız şifrələnmək üzrədir. + + + Your wallet is now encrypted. + Cüzdanınız artıq şifrələnib. + + + + BanTableModel + + + BitcoinGUI + + &Settings + &Tənzimləmələr + + + Error + Xəta + + + Warning + Xəbərdarlıq + + + Information + Məlumat + + + Open a wallet + Bir pulqabı aç + + + + CoinControlDialog + + Copy quantity + Miqdarı kopyalayın + + + Copy change + Dəyişikliyi kopyalayın + + + (no label) + (etiket yoxdur) + + + + CreateWalletActivity + + + CreateWalletDialog + + + EditAddressDialog + + + FreespaceChecker + + + HelpMessageDialog + + + Intro + + Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. + Bu tənzimləməni geri almaq bütün blok zəncirinin yenidən endirilməsini tələb edəcək. Əvvəlcə tam zənciri endirmək və sonra budamaq daha sürətlidir. Bəzi qabaqcıl özəllikləri sıradan çıxarar. + + + Error + Xəta + + + + ModalOverlay + + + OpenURIDialog + + + OpenWalletActivity + + + OptionsDialog + + Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. + Bəzi qabaqcıl özəllikləri sıradan çıxardar, ancaq bütün bloklar tamamilə təsdiqlənmiş qalacaq. Bu tənzimləməni geri almaq bütün blok zəncirinin yenidən endirilməsini tələb edəcək. Aktual disk istifadəsi biraz daha yüksək ola bilər. + + + Reverting this setting requires re-downloading the entire blockchain. + Bu tənzimləməni geri almaq bütün blok zəncirinin yenidən endirilməsini tələb edəcək. + + + Map port using &UPnP + &UPnP istifadə edən xəritə portu + + + The user interface language can be set here. This setting will take effect after restarting %1. + İstifadəçi interfeys dili burada tənzimlənə bilər. Bu tənzimləmə %1 yenidən başladıldıqdan sonra təsirli olacaq. + + + Error + Xəta + + + + OverviewPage + + + PSBTOperationsDialog + + + PaymentServer + + + PeerTableModel + + + QObject + + + QRImageWidget + + + RPCConsole + + &Reset + &Sıfırla + + + + ReceiveCoinsDialog + + + ReceiveRequestDialog + + + RecentRequestsTableModel + + Label + Etiket + + + (no label) + (etiket yoxdur) + + + + SendCoinsDialog + + Copy quantity + Miqdarı kopyalayın + + + Copy change + Dəyişikliyi kopyalayın + + + (no label) + (etiket yoxdur) + + + + SendCoinsEntry + + + ShutdownWindow + + + SignVerifyMessageDialog + + + TrafficGraphWidget + + + TransactionDesc + + + TransactionDescDialog + + + TransactionTableModel + + Label + Etiket + + + (no label) + (etiket yoxdur) + + + + TransactionView + + Other + Başqa + + + Comma separated file (*.csv) + Vergüllə ayrılmış fayl (*.csv) + + + Label + Etiket + + + Address + Ünvan + + + Exporting Failed + İxrac edilmədi + + + + UnitDisplayStatusBarControl + + + WalletController + + + WalletFrame + + + WalletModel + + + WalletView + + &Export + &İxrac + + + Export the data in the current tab to a file + Hazırki vərəqdəki verilənləri fayla ixrac edin + + + Error + Xəta + + + + bitcoin-core + + Replaying blocks... + Bloklar yenidən səsləndirilir... + + + The source code is available from %s. + Mənbə kodu %s-dən əldə edilə bilər. + + + Insufficient funds + Yetərsiz balans + + + Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable -fallbackfee. + Ödəniş təxmin edilmədi. Fallbackfee sıradan çıxarıldı. Bir neçə blok gözləyin və ya Fallbackfee-ni fəallaşdırın. + + + Warning: Private keys detected in wallet {%s} with disabled private keys + Xəbərdarlıq: Gizli açarlar, sıradan çıxarılmış gizli açarlar ilə {%s} pulqabısında aşkarlandı. + + + Cannot write to data directory '%s'; check permissions. + '%s' verilənlər kateqoriyasına yazıla bilmir; icazələri yoxlayın. + + + Loading wallet... + Pulqabı yüklənir... + + + Cannot downgrade wallet + Pulqabı əvvəlki versiyaya keçirilə bilmir + + + Rescanning... + Yenidən tədqiq edilir... + + + Done loading + Yükləmə tamamlandı + + + \ No newline at end of file diff --git a/src/qt/locale/bitcoin_bs.ts b/src/qt/locale/bitcoin_bs.ts index bc5cc8003..cf97d83fd 100644 --- a/src/qt/locale/bitcoin_bs.ts +++ b/src/qt/locale/bitcoin_bs.ts @@ -152,6 +152,14 @@ Signing is only possible with addresses of the type 'legacy'. Unlock wallet Otključajte novčanik + + This operation needs your wallet passphrase to decrypt the wallet. + Ova radnja treba lozinku vašeg novčanika da dešifrira novčanik. + + + Decrypt wallet + Dešifrirati novčanik + Change passphrase Promijenite lozinku @@ -220,6 +228,10 @@ Signing is only possible with addresses of the type 'legacy'. The passphrase entered for the wallet decryption was incorrect. Lozinka unesena za dešifriranje novčanika nije ispravna. + + Wallet decryption failed + Dešifriranje novčanika neuspješno + Wallet passphrase was successfully changed. Lozinka za novčanik uspješno je promijenjena. @@ -978,10 +990,6 @@ Signing is only possible with addresses of the type 'legacy'. Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. Vraćanje ove postavke zahtijeva ponovno preuzimanje cijelog lanca blokova. Brže je prvo preuzeti čitav lanac i kasnije ga obrezati. Onemogućava neke napredne funkcije. - - This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. - This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. - If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. Ako ste odlučili ograničiti skladištenje lanca blokova (obrezivanje), povijesni podaci i dalje se moraju preuzeti i obraditi, ali će se nakon toga izbrisati kako bi se smanjila upotreba diska. @@ -1162,6 +1170,10 @@ Signing is only possible with addresses of the type 'legacy'. &Network &Mreža + + Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. + Onemogućuje neke napredne stavke ali svi blokovi će i dalje biti u potpunosti validni(provjereni). Opoziv ove postavke zahtijeva ponovno skidanje čitavog blockchaina. Stvarna iskorištenost diska može da bude nešto veća. + GB GB @@ -1242,6 +1254,10 @@ Signing is only possible with addresses of the type 'legacy'. Error Greška + + The configuration file could not be opened. + Konfiguracijski falj nije bilo moguce otvoriti. + OverviewPage @@ -1249,6 +1265,14 @@ Signing is only possible with addresses of the type 'legacy'. Form Obrazac + + The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. + Moguće je da su prikazane informacije zastarjele.Vaš novčanik se automatski sinhronizira sa Bitcoin mrežom nakon što je konekcija uspostavljena, ali proces nije još uvijek dovršen. + + + Recent transactions + Nedavne transakcije + PSBTOperationsDialog diff --git a/src/qt/locale/bitcoin_el.ts b/src/qt/locale/bitcoin_el.ts index 9e545c474..593df1305 100644 --- a/src/qt/locale/bitcoin_el.ts +++ b/src/qt/locale/bitcoin_el.ts @@ -1000,6 +1000,10 @@ Signing is only possible with addresses of the type 'legacy'. Welcome to %1. Καλωσήρθες στο %1. + + When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. + Όταν κάνετε κλικ στο OK, το %1 θα ξεκινήσει τη λήψη και την επεξεργασία της πλήρους αλυσίδας μπλοκ% 4 (%2GB) αρχίζοντας από τις πρώτες συναλλαγές στο %3 όταν αρχικά ξεκίνησε το %4. + Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. Η επαναφορά αυτής της ρύθμισης απαιτεί εκ νέου λήψη ολόκληρου του μπλοκ αλυσίδας. Είναι πιο γρήγορο να κατεβάσετε πρώτα την πλήρη αλυσίδα και να την κλαδέψετε αργότερα. Απενεργοποιεί ορισμένες προηγμένες λειτουργίες. diff --git a/src/qt/locale/bitcoin_es_CO.ts b/src/qt/locale/bitcoin_es_CO.ts index e1a169596..9856c121d 100644 --- a/src/qt/locale/bitcoin_es_CO.ts +++ b/src/qt/locale/bitcoin_es_CO.ts @@ -189,6 +189,22 @@ Firmar solo es posible con direcciones del tipo 'Legacy'. Enter the old passphrase and new passphrase for the wallet. Ingresa la antigua frase de contraseña y la nueva frase de contraseña para la billetera. + + Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. + Recuerda que cifrar tu billetera no garantiza total protección de robo de tus bitcoins si tu ordenador es infectado con malware. + + + Wallet to be encrypted + Billetera a cifrar + + + Your wallet is about to be encrypted. + Tu billetera esta a punto de ser encriptada. + + + Your wallet is now encrypted. + Tu billetera ha sido cifrada. + IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. IMPORTANTE: Cualquier respaldo anterior que hayas hecho del archivo de tu billetera debe ser reemplazado por el nuevo archivo encriptado que has generado. Por razones de seguridad, todos los respaldos realizados anteriormente serán inutilizables al momento de que utilices tu nueva billetera encriptada. @@ -311,6 +327,14 @@ Firmar solo es posible con direcciones del tipo 'Legacy'. Open &URI... Abrir y url... + + Create Wallet... + Crear billetera... + + + Create a new wallet + Crear una nueva billetera + Wallet: Billetera: @@ -459,10 +483,66 @@ Firmar solo es posible con direcciones del tipo 'Legacy'. Up to date Actualizado + + Load Partially Signed Bitcoin Transaction from clipboard + Cargar una transacción de Bitcoin parcialmente firmada desde el Portapapeles + + + Node window + Ventana del nodo + + + Open node debugging and diagnostic console + Abrir la consola de depuración y diagnóstico del nodo + + + &Sending addresses + &Direcciones de envío + + + &Receiving addresses + &Direcciones de entrega + + + Open a bitcoin: URI + Abrir un bitcoin: URI + + + Open Wallet + Abrir billetera + + + Open a wallet + Abrir una billetera + + + Close Wallet... + Cerrar billetera... + + + Close wallet + Cerrar billetera + + + Close All Wallets... + Cerrar todas las billeteras... + + + Close all wallets + Cerrar todas las billeteras + Show the %1 help message to get a list with possible Bitcoin command-line options Mostrar el mensaje de ayuda %1 para obtener una lista de los posibles comandos de Bitcoin + + default wallet + billetera predeterminada + + + No wallets available + No hay billeteras disponibles + &Window Ventana @@ -471,6 +551,10 @@ Firmar solo es posible con direcciones del tipo 'Legacy'. Minimize Minimizar + + Zoom + Acercar + Main Window Ventana principal @@ -491,6 +575,10 @@ Firmar solo es posible con direcciones del tipo 'Legacy'. Error: %1 Error: %1 + + Warning: %1 + Advertencia: %1 + Date: %1 @@ -555,6 +643,10 @@ Firmar solo es posible con direcciones del tipo 'Legacy'. Wallet is <b>encrypted</b> and currently <b>locked</b> La billetera esta <b>codificada</b> y actualmente <b>bloqueda</b> + + Original message: + Mensaje original: + CoinControlDialog @@ -710,17 +802,69 @@ Firmar solo es posible con direcciones del tipo 'Legacy'. CreateWalletActivity - + + Creating Wallet <b>%1</b>... + Creando billetera <b>%1</b>... + + + Create wallet failed + Fallo al crear la billetera + + + Create wallet warning + Advertencia al crear la billetera + + CreateWalletDialog + + Create Wallet + Crear Billetera + Wallet Cartera + + Wallet Name + Nombre de la billetera + + + Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. + Encriptar la billetera. La billetera será encriptada con una contraseña de tu elección. + + + Encrypt Wallet + Encriptar la billetera + + + Advanced Options + Opciones avanzadas + + + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. + Desactivar las claves privadas para esta billetera. Las billeteras con claves privadas desactivadas no tendrán claves privadas y no podrán tener ninguna semilla HD o claves privadas importadas. Esto es ideal para billeteras de solo lectura. + + + Disable Private Keys + Desactivar las claves privadas + Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. Crea una billetera en blanco. Las billeteras en blanco inicialmente no tienen llaves privadas o texto. Las llaves privadas y las direcciones pueden ser importadas, o se puede establecer una semilla HD, más tarde. + + Make Blank Wallet + Crear billetera vacía + + + Descriptor Wallet + Descriptor de la billetera + + + Create + Crear + EditAddressDialog @@ -928,6 +1072,10 @@ Firmar solo es posible con direcciones del tipo 'Legacy'. Hide Ocultar + + Esc + Esc + Unknown. Syncing Headers (%1, %2%)... Desconocido. Sincronizando cabeceras (%1, %2%)... @@ -942,6 +1090,10 @@ Firmar solo es posible con direcciones del tipo 'Legacy'. OpenWalletActivity + + default wallet + billetera predeterminada + OptionsDialog @@ -1264,11 +1416,35 @@ Firmar solo es posible con direcciones del tipo 'Legacy'. PSBTOperationsDialog + + Dialog + Dialogo + + + Save... + Guardar... + + + Close + Cerrar + + + Save Transaction Data + Guardar datos de la transacción + + + Total Amount + Monto total + or o - + + Transaction status is unknown. + El estado de la transacción es desconocido. + + PaymentServer @@ -1503,6 +1679,14 @@ Firmar solo es posible con direcciones del tipo 'Legacy'. Memory usage Memoria utilizada + + Wallet: + Billetera: + + + (none) + (ninguno) + &Reset &Reestablecer @@ -1552,6 +1736,14 @@ Firmar solo es posible con direcciones del tipo 'Legacy'. User Agent User Agent + + Node window + Ventana del nodo + + + Current block height + Altura del bloque actual + Decrease font size Disminuir tamaño de fuente @@ -1560,6 +1752,10 @@ Firmar solo es posible con direcciones del tipo 'Legacy'. Increase font size Aumentar tamaño de fuente + + Permissions + Permisos + Services Servicios @@ -1790,10 +1986,18 @@ Firmar solo es posible con direcciones del tipo 'Legacy'. ReceiveRequestDialog + + Address: + Dirección: + Amount: Cantidad: + + Label: + Etiqueta: + Message: Mensaje: @@ -1949,6 +2153,10 @@ Firmar solo es posible con direcciones del tipo 'Legacy'. Dust: Polvo: + + Hide transaction fee settings + Esconder ajustes de la tarifa de transacción + Confirmation time target: Objetivo de tiempo de confirmación @@ -2001,6 +2209,10 @@ Firmar solo es posible con direcciones del tipo 'Legacy'. %1 (%2 blocks) %1 (%2 bloques) + + from wallet '%1' + desde la billetera '%1' + %1 to %2 %1 a %2 @@ -2009,18 +2221,38 @@ Firmar solo es posible con direcciones del tipo 'Legacy'. Are you sure you want to send? ¿Seguro que quiere enviar? + + Save Transaction Data + Guardar datos de la transacción + or o + + Please, review your transaction. + Por favor, revise su transacción. + Transaction fee Comisión de transacción + + Total Amount + Monto total + Confirm send coins Confirmar el envió de monedas + + Confirm transaction proposal + Confirmar la propuesta de transacción + + + Send + Enviar + The recipient address is not valid. Please recheck. La dirección de envío no es válida. Por favor revisala. @@ -2037,6 +2269,10 @@ Firmar solo es posible con direcciones del tipo 'Legacy'. The total exceeds your balance when the %1 transaction fee is included. El total sobrepasa tu saldo cuando se incluyen %1 como comisión de envió. + + Duplicate address found: addresses should only be used once each. + Dirección duplicada encontrada: las direcciones sólo deben ser utilizadas una vez. + Transaction creation failed! ¡Fallo al crear la transacción! @@ -2112,6 +2348,10 @@ Firmar solo es posible con direcciones del tipo 'Legacy'. S&ubtract fee from amount Restar comisiones del monto. + + Use available balance + Usar el saldo disponible + Message: Mensaje: @@ -2246,6 +2486,10 @@ Firmar solo es posible con direcciones del tipo 'Legacy'. Wallet unlock was cancelled. El desbloqueo del monedero fue cancelado. + + No error + No hay error + Private key for the entered address is not available. La llave privada para la dirección introducida no está disponible. @@ -2703,10 +2947,26 @@ Firmar solo es posible con direcciones del tipo 'Legacy'. WalletController - + + Close wallet + Cerrar billetera + + + Close all wallets + Cerrar todas las billeteras + + + Are you sure you wish to close all wallets? + ¿Está seguro de que desea cerrar todas las billeteras? + + WalletFrame - + + Create a new wallet + Crear una nueva billetera + + WalletModel @@ -2749,7 +3009,11 @@ Firmar solo es posible con direcciones del tipo 'Legacy'. Could not commit transaction No se pudo confirmar la transacción - + + default wallet + billetera predeterminada + + WalletView @@ -2764,6 +3028,10 @@ Firmar solo es posible con direcciones del tipo 'Legacy'. Error Error + + Load Transaction Data + Cargar datos de la transacción + Backup Wallet Respaldar monedero diff --git a/src/qt/locale/bitcoin_es_MX.ts b/src/qt/locale/bitcoin_es_MX.ts index 6a1d12243..9b7716b63 100644 --- a/src/qt/locale/bitcoin_es_MX.ts +++ b/src/qt/locale/bitcoin_es_MX.ts @@ -287,6 +287,10 @@ Signing is only possible with addresses of the type 'legacy'. Quit application Salir de la aplicación + + &About %1 + %Acerca de%1 + Show information about %1 Mostrar información acerca de %1 diff --git a/src/qt/locale/bitcoin_ga.ts b/src/qt/locale/bitcoin_ga.ts new file mode 100644 index 000000000..206770a08 --- /dev/null +++ b/src/qt/locale/bitcoin_ga.ts @@ -0,0 +1,4081 @@ + + + AddressBookPage + + Right-click to edit address or label + Deaschliceáil chun eagarthóireacht seoladh nó lipéad + + + Create a new address + Cruthaigh seoladh nua + + + &New + &Nua + + + Copy the currently selected address to the system clipboard + Cóipeáil an seoladh atá roghnaithe faoi láthair chuig gearrthaisce an chórais + + + &Copy + &Cóipeáil + + + C&lose + D&ún + + + Delete the currently selected address from the list + Scrios an seoladh atá roghnaithe faoi láthair ón liosta + + + Enter address or label to search + Cuir isteach an seoladh nó lipéad le cuardach + + + Export the data in the current tab to a file + Easpórtáil na sonraí an cluaisín reatha chuig comhad + + + &Export + &Easpórtáil + + + &Delete + &Scrios + + + Choose the address to send coins to + Roghnaigh an seoladh chun boinn a sheoladh chuig + + + Choose the address to receive coins with + Roghnaigh an seoladh chun boinn a fháil leis + + + C&hoose + &Roghnaigh + + + Sending addresses + Seoltaí seoladh + + + Receiving addresses + Seoltaí glacadh + + + These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. + Seo iad do sheoltaí Bitcoin chun íocaíochtaí a sheoladh. Seiceáil i gcónaí an méid agus an seoladh glactha sula seoltar boinn. + + + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + Seo iad do sheoltaí Bitcoin chun glacadh le híocaíochtaí. Úsáid an cnaipe ‘Cruthaigh seoladh glactha nua’ sa cluaisín glactha chun seoltaí nua a chruthú. +Ní féidir síniú ach le seoltaí 'oidhreachta'. + + + &Copy Address + &Cóipeáil Seoladh + + + Copy &Label + Cóipeáil &Lipéad + + + &Edit + &Eagarthóireacht + + + Export Address List + Easpórtáil Liosta Seoltaí + + + Comma separated file (*.csv) + Comhad athróige camógdheighilte (*.csv) + + + Exporting Failed + Theip ar Easpórtáil + + + + AddressTableModel + + Label + Lipéad + + + Address + Seoladh + + + (no label) + (gan lipéad) + + + + AskPassphraseDialog + + Passphrase Dialog + Dialóg Pasfhrása + + + Enter passphrase + Cuir isteach pasfhrása + + + New passphrase + Pasfhrása nua + + + Repeat new passphrase + Athdhéan pasfhrása nua + + + Show passphrase + Taispeáin pasfhrása + + + Encrypt wallet + Criptigh sparán + + + This operation needs your wallet passphrase to unlock the wallet. + Teastaíonn pasfhrása an sparán uait chun an sparán a dhíghlasáil. + + + Unlock wallet + Díghlasáil sparán + + + This operation needs your wallet passphrase to decrypt the wallet. + Teastaíonn pasfhrása an sparán uait chun an sparán a dhíchriptiú. + + + Decrypt wallet + Díchriptigh sparán + + + Change passphrase + Athraigh pasfhrása + + + Confirm wallet encryption + Deimhnigh criptiú sparán + + + Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! + Rabhadh: Má chriptíonn tú do sparán agus má chailleann tú do pasfhrása, <b>caillfidh tú GACH CEANN DE DO BITCOIN</b>! + + + Are you sure you wish to encrypt your wallet? + An bhfuil tú cinnte gur mian leat do sparán a chriptiú? + + + Wallet encrypted + Sparán criptithe + + + Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. + Iontráil an pasfhrása nua don sparán. <br/>Le do thoil úsáid pasfhocail de <b>dheich gcarachtar randamacha nó níos mó</b>, nó </b>ocht bhfocal nó níos mó</b>. + + + Enter the old passphrase and new passphrase for the wallet. + Cuir isteach an sean pasfhrása agus an pasfhrása nua don sparán. + + + Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. + Cuimhnigh nach dtugann chriptiú do sparán cosaint go hiomlán do do bitcoins ó bheith goidte ag bogearraí mailíseacha atá ag ionfhabhtú do ríomhaire. + + + Wallet to be encrypted + Sparán le criptiú + + + Your wallet is about to be encrypted. + Tá do sparán ar tí a chriptithe. + + + Your wallet is now encrypted. + Tá do sparán criptithe anois. + + + IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. + TÁBHACHTACH: Ba cheart an comhad sparán criptithe nua-ghinte a chur in ionad aon chúltacaí a rinne tú de do chomhad sparán roimhe seo. Ar chúiseanna slándála, beidh cúltacaí roimhe seo den chomhad sparán neamhchriptithe gan úsáid chomh luaithe agus a thosaíonn tú ag úsáid an sparán nua criptithe. + + + Wallet encryption failed + Theip ar chriptiú sparán + + + Wallet encryption failed due to an internal error. Your wallet was not encrypted. + Theip ar chriptiú sparán mar gheall ar earráid inmheánach. Níor criptíodh do sparán. + + + The supplied passphrases do not match. + Ní hionann na pasfhocail a sholáthraítear. + + + Wallet unlock failed + Theip ar dhíghlasáil sparán + + + The passphrase entered for the wallet decryption was incorrect. + Bhí an pasfhrása iontráilte le haghaidh díchriptiú an sparán mícheart. + + + Wallet decryption failed + Theip ar dhíchriptiú sparán + + + Wallet passphrase was successfully changed. + Athraíodh pasfhrása sparán go rathúil. + + + Warning: The Caps Lock key is on! + Rabhadh: Tá an eochair Glas Ceannlitreacha ar! + + + + BanTableModel + + IP/Netmask + PI/Mascadhidirlíon + + + Banned Until + Coiscthe Go Dtí + + + + BitcoinGUI + + Sign &message... + Sínigh &teachtaireacht + + + Synchronizing with network... + Sioncrónú leis an líonra ... + + + &Overview + &Forléargas + + + Show general overview of wallet + Taispeáin forbhreathnú ginearálta den sparán + + + &Transactions + &Idirbheart + + + Browse transaction history + Brabhsáil stair an idirbhirt + + + E&xit + &Scoir + + + Quit application + Scoir feidhm + + + &About %1 + &Maidir le %1 + + + About &Qt + Maidir le &Qt + + + Show information about Qt + Taispeáin faisnéis faoi Qt + + + &Options... + &Roghanna... + + + &Encrypt Wallet... + &Criptigh Sparán... + + + &Backup Wallet... + &Cúltaca Sparán + + + &Change Passphrase... + &Athraigh Pasfhrása + + + Open &URI... + Oscail &URI... + + + Create Wallet... + Cruthaigh Sparán + + + Create a new wallet + Cruthaigh sparán nua + + + Wallet: + Sparán: + + + Click to disable network activity. + Cliceáil chun gníomhaíocht líonra a dhíchumasú. + + + Network activity disabled. + Gníomhaíocht líonra díchumasaithe. + + + Click to enable network activity again. + Cliceáil chun gníomhaíocht líonra a chumasú arís. + + + Syncing Headers (%1%)... + Sioncronú Ceanntáscaí (%1%)... + + + Reindexing blocks on disk... + Réinnéacsú bloic ar dhiosca + + + Proxy is <b>enabled</b>: %1 + Seachfhreastalaí <b>cumasaithe</b>: %1 + + + Send coins to a Bitcoin address + Seol boinn chuig seoladh Bitcoin + + + Backup wallet to another location + Cúltacaigh Sparán chuig suíomh eile + + + Change the passphrase used for wallet encryption + Athraigh an pasfhrása a úsáidtear le haghaidh criptiú sparán + + + &Verify message... + &Fíoraigh teachtaireacht... + + + &Send + &Seol + + + &Receive + &Glac + + + &Show / Hide + &Taispeáin / Folaigh + + + Show or hide the main Window + Taispeáin nó folaigh an phríomhfhuinneog + + + Encrypt the private keys that belong to your wallet + Criptigh na heochracha príobháideacha a bhaineann le do sparán + + + Sign messages with your Bitcoin addresses to prove you own them + Sínigh teachtaireachtaí le do sheoltaí Bitcoin chun a chruthú gur leat iad + + + Verify messages to ensure they were signed with specified Bitcoin addresses + Teachtaireachtaí a fhíorú lena chinntiú go raibh siad sínithe le seoltaí sainithe Bitcoin + + + &File + &Comhad + + + &Settings + &Socruithe + + + &Help + C&abhair + + + Tabs toolbar + Barra uirlisí cluaisíní + + + Request payments (generates QR codes and bitcoin: URIs) + Iarr íocaíochtaí (gineann cóid QR agus bitcoin: URIs) + + + Show the list of used sending addresses and labels + Taispeáin an liosta de seoltaí seoladh úsáidte agus na lipéid + + + Show the list of used receiving addresses and labels + Taispeáin an liosta de seoltaí glacadh úsáidte agus lipéid + + + &Command-line options + &Roghanna líne na n-orduithe + + + %n active connection(s) to Bitcoin network + %n nasc gníomhach chuig líonra Bitcoin%n nasc ghníomhacha chuig líonra Bitcoin%n nasc ghníomhacha chuig líonra Bitcoin%n nasc ghníomhacha chuig líonra Bitcoin%n nasc ghníomhacha chuig líonra Bitcoin + + + Indexing blocks on disk... + Innéacsú bloic ar dhiosca... + + + Processing blocks on disk... + Próiseáil bloic ar dhiosca + + + Processed %n block(s) of transaction history. + Próiseáladh %n bhloc de stair idirbhirt.Próiseáladh %n bhloc de stair idirbhirt.Próiseáladh %n mbloic de stair idirbhirt.Próiseáladh %n mbloic de stair idirbhirt.Próiseáladh %n mbloic de stair idirbhirt. + + + %1 behind + %1 taobh thiar + + + Last received block was generated %1 ago. + Gineadh an bloc deireanach a fuarthas %1 ó shin. + + + Transactions after this will not yet be visible. + Ní bheidh idirbhearta ina dhiaidh seo le feiceáil go fóill. + + + Error + Earráid + + + Warning + Rabhadh + + + Information + Faisnéis + + + Up to date + Suas chun dáta + + + &Load PSBT from file... + &Lódáil IBSP ón gcomhad... + + + Load Partially Signed Bitcoin Transaction + Lódáil Idirbheart Bitcoin Sínithe go Páirteach + + + Load PSBT from clipboard... + Lódáil IBSP ón gearrthaisce... + + + Load Partially Signed Bitcoin Transaction from clipboard + Lódáil Idirbheart Bitcoin Sínithe go Páirteach ón gearrthaisce + + + Node window + Fuinneog nód + + + Open node debugging and diagnostic console + Oscail dífhabhtúchán nód agus consól diagnóiseach + + + &Sending addresses + &Seoltaí seoladh + + + &Receiving addresses + S&eoltaí glacadh + + + Open a bitcoin: URI + Oscail bitcoin: URI + + + Open Wallet + Oscail Sparán + + + Open a wallet + Oscail sparán + + + Close Wallet... + Dún Sparán... + + + Close wallet + Dún sparán + + + Close All Wallets... + Dún Gach Sparán... + + + Close all wallets + Dún gach sparán + + + Show the %1 help message to get a list with possible Bitcoin command-line options + Taispeáin an %1 teachtaireacht chabhrach chun liosta a fháil de roghanna Bitcoin líne na n-orduithe féideartha + + + &Mask values + &Luachanna maisc + + + Mask the values in the Overview tab + Masc na luachanna sa gcluaisín Forléargas + + + default wallet + sparán réamhshocraithe + + + No wallets available + Níl aon sparán ar fáil + + + &Window + &Fuinneog + + + Minimize + Íoslaghdaigh + + + Zoom + Zúmáil + + + Main Window + Príomhfhuinneog + + + %1 client + %1 cliaint + + + Connecting to peers... + Ag nascadh le piaraí... + + + Catching up... + Ag teacht suas... + + + Error: %1 + Earráid: %1 + + + Warning: %1 + Rabhadh: %1 + + + Date: %1 + + Dáta: %1 + + + + Amount: %1 + + Suim: %1 + + + + Wallet: %1 + + Sparán: %1 + + + + Type: %1 + + Cineál: %1 + + + + Label: %1 + + Lipéad: %1 + + + + Address: %1 + + Seoladh: %1 + + + + Sent transaction + Idirbheart seolta + + + Incoming transaction + Idirbheart ag teacht isteach + + + HD key generation is <b>enabled</b> + Tá giniúint eochair Cinnteachaíocha Ordlathach <b>cumasaithe</b> + + + HD key generation is <b>disabled</b> + Tá giniúint eochair Cinnteachaíocha Ordlathach <b>díchumasaithe</b> + + + Private key <b>disabled</b> + Eochair phríobháideach <b>díchumasaithe</b> + + + Wallet is <b>encrypted</b> and currently <b>unlocked</b> + Sparán <b>criptithe</b>agus <b>díghlasáilte</b>faoi láthair + + + Wallet is <b>encrypted</b> and currently <b>locked</b> + Sparán <b>criptithe</b> agus <b>glasáilte</b> faoi láthair + + + Original message: + Teachtaireacht bhunaidh: + + + A fatal error occurred. %1 can no longer continue safely and will quit. + Tharla earráid mharfach. Ní féidir le %1 leanúint ar aghaidh go sábháilte agus scoirfidh sé. + + + + CoinControlDialog + + Coin Selection + Roghnú Bonn + + + Quantity: + Méid: + + + Bytes: + Bearta: + + + Amount: + Suim: + + + Fee: + Táille: + + + Dust: + Dusta: + + + After Fee: + Iar-tháille: + + + Change: + Sóinseáil: + + + (un)select all + (neamh)roghnaigh gach rud + + + Tree mode + Mód crann + + + List mode + Mód liosta + + + Amount + Suim + + + Received with label + Lipéad faighte le + + + Received with address + Seoladh faighte le + + + Date + Dáta + + + Confirmations + Dearbhuithe + + + Confirmed + Deimhnithe + + + Copy address + Cóipeáil seoladh + + + Copy label + Cóipeáil lipéad + + + Copy amount + Cóipeáil suim + + + Copy transaction ID + Cóipeáil aitheantas idirbhirt + + + Lock unspent + Glasáil nár caitheadh + + + Unlock unspent + Díghlasáil nár caitheadh + + + Copy quantity + Cóipeáil méid + + + Copy fee + Cóipeáíl táille + + + Copy after fee + Cóipeáíl iar-tháille + + + Copy bytes + Cóipeáíl bearta + + + Copy dust + Cóipeáíl dusta + + + Copy change + Cóipeáíl sóinseáil + + + (%1 locked) + (%1 glasáilte) + + + yes + + + + no + níl + + + This label turns red if any recipient receives an amount smaller than the current dust threshold. + Casann an lipéad seo dearg má fhaigheann aon fhaighteoir méid níos lú ná an tairseach reatha dusta. + + + Can vary +/- %1 satoshi(s) per input. + Athraitheach +/- %1 satosh(í) in aghaidh an ionchuir. + + + (no label) + (gan lipéad) + + + change from %1 (%2) + sóinseáil ó %1 (%2) + + + (change) + (sóinseáil) + + + + CreateWalletActivity + + Creating Wallet <b>%1</b>... + Sparán a Chruthú <b>%1</b>... + + + Create wallet failed + Theip ar chruthú sparán + + + Create wallet warning + Rabhadh cruthú sparán + + + + CreateWalletDialog + + Create Wallet + Cruthaigh Sparán + + + Wallet + Sparán + + + Wallet Name + Ainm Sparán + + + Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. + Criptigh an sparán. Beidh an sparán criptithe le pasfhrása de do rogha. + + + Encrypt Wallet + Criptigh Sparán + + + Advanced Options + Ardroghanna + + + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. + Díchumasaigh eochracha príobháideacha don sparán seo. Ní bheidh eochracha príobháideacha ag sparán a bhfuil eochracha príobháideacha díchumasaithe agus ní féidir síol Cinnteachaíocha Ordlathach nó eochracha príobháideacha iompórtáilte a bheith acu. Tá sé seo idéalach do sparán faire-amháin. + + + Disable Private Keys + Díchumasaigh Eochracha Príobháideacha + + + Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. + Déan sparán glan. Níl eochracha príobháideacha nó scripteanna ag sparán glan i dtosach. Is féidir eochracha agus seoltaí príobháideacha a iompórtáil, nó is féidir síol Cinnteachaíocha Ordlathach a shocrú níos déanaí. + + + Make Blank Wallet + Déan Sparán Glan + + + Use descriptors for scriptPubKey management + Úsáid tuairisceoirí le haghaidh bainistíochta scriptPubKey + + + Descriptor Wallet + Sparán Tuairisceoir + + + Create + Cruthaigh + + + Compiled without sqlite support (required for descriptor wallets) + Tiomsaithe gan tacíocht sqlite (riachtanach do sparán tuairisceora) + + + + EditAddressDialog + + Edit Address + Eagarthóireacht Seoladh + + + &Label + &Lipéad + + + The label associated with this address list entry + An lipéad chomhcheangailte leis an iontráil liosta seoltaí seo + + + The address associated with this address list entry. This can only be modified for sending addresses. + An seoladh chomhcheangailte leis an iontráil liosta seoltaí seo. Ní féidir é seo a mionathraithe ach do seoltaí seoladh. + + + &Address + &Seoladh + + + New sending address + Seoladh nua seoladh + + + Edit receiving address + Eagarthóireacht seoladh glactha + + + Edit sending address + Eagarthóireacht seoladh seoladh + + + Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address. + Tá seoladh "%1" ann cheana mar sheoladh glactha le lipéad "%2" agus mar sin ní féidir é a chur leis mar sheoladh seolta. + + + The entered address "%1" is already in the address book with label "%2". + Tá an seoladh a iontráladh "%1" sa leabhar seoltaí cheana féin le lipéad "%2" + + + Could not unlock wallet. + Níorbh fhéidir sparán a dhíghlasáil. + + + New key generation failed. + Theip ar giniúint eochair nua. + + + + FreespaceChecker + + A new data directory will be created. + Cruthófar eolaire sonraíocht nua. + + + name + ainm + + + Directory already exists. Add %1 if you intend to create a new directory here. + Tá eolaire ann cheana féin. Cuir %1 leis má tá sé ar intinn agat eolaire nua a chruthú anseo. + + + Path already exists, and is not a directory. + Tá cosán ann cheana, agus ní eolaire é. + + + Cannot create data directory here. + Ní féidir eolaire sonraíocht a chruthú anseo. + + + + HelpMessageDialog + + version + leagan + + + About %1 + Maidir le %1 + + + Command-line options + Roghanna líne na n-orduithe + + + + Intro + + Welcome + Fáilte + + + Welcome to %1. + Fáilte go %1. + + + As this is the first time the program is launched, you can choose where %1 will store its data. + Mar gurb é seo an chéad uair a lainseáil an clár, is féidir leat a roghnú cá stórálfaidh %1 a chuid sonraí. + + + When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. + Nuair a chliceálann tú Togha, tosóidh %1 ag íoslódáil agus ag próiseáil an blocshlabhra iomlán %4 (%2GB) ag tosú leis na hidirbhearta is luaithe %3 nuair a lainseáil %4 i dtosach. + + + Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. + Teastaíonn an blocshlabhra iomlán a íoslódáil arís chun an socrú seo a fhilleadh. Tá sé níos sciobtha an slabhra iomlán a íoslódáil ar dtús agus é a bhearradh níos déanaí. Díchumasaíodh roinnt ardgnéithe. + + + This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. + Tá an sioncrónú tosaigh seo an-dhian, agus d’fhéadfadh sé fadhbanna crua-earraí a nochtadh le do ríomhaire nach tugadh faoi deara roimhe seo. Gach uair a ritheann tú %1, leanfaidh sé ar aghaidh ag íoslódáil san áit ar fhág sé as. + + + If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. + Má roghnaigh tú stóráil blocshlabhra a theorannú (bearradh), fós caithfear na sonraí stairiúla a íoslódáil agus a phróiseáil, ach scriosfar iad ina dhiaidh sin chun d’úsáid diosca a choinneáil íseal. + + + Use the default data directory + Úsáid an comhadlann sonraí réamhshocrú + + + Use a custom data directory: + Úsáid comhadlann sonraí saincheaptha: + + + Bitcoin + Bitcoin + + + Discard blocks after verification, except most recent %1 GB (prune) + Scrios bloic tar éis fíorú, ach amháin %1 GB is déanaí (bearradh) + + + At least %1 GB of data will be stored in this directory, and it will grow over time. + Ar a laghad stórálfar %1 GB de shonraí sa comhadlann seo, agus fásfaidh sé le himeacht ama. + + + Approximately %1 GB of data will be stored in this directory. + Stórálfar thart ar %1 GB de shonraí sa comhadlann seo. + + + %1 will download and store a copy of the Bitcoin block chain. + Íoslódáileafar %1 and stórálfaidh cóip de bhlocshlabhra Bitcoin. + + + The wallet will also be stored in this directory. + Stórálfar an sparán san eolaire seo freisin. + + + Error: Specified data directory "%1" cannot be created. + Earráid: Ní féidir eolaire sonraí sainithe "%1" a chruthú. + + + Error + Earráid + + + %n GB of free space available + %n GB de saorspás ar fáil%n GB de saorspás ar fáil%n GB de saorspás ar fáil%n GB de saorspás ar fáil%n GB de saorspás ar fáil + + + (of %n GB needed) + (de %n GB ag teastáil)(de %n GB ag teastáil)(de %n GB ag teastáil)(de %n GB ag teastáil)(de %n GB ag teastáil) + + + (%n GB needed for full chain) + (%n GB ag teastáil do slabhra iomlán)(%n GB ag teastáil do slabhra iomlán)(%n GB ag teastáil do slabhra iomlán)(%n GB ag teastáil do slabhra iomlán)(%n GB ag teastáil do slabhra iomlán) + + + + ModalOverlay + + Form + Foirm + + + Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. + B’fhéidir nach mbeidh idirbhearta dheireanacha le feiceáil fós, agus dá bhrí sin d’fhéadfadh go mbeadh iarmhéid do sparán mícheart. Beidh an faisnéis seo ceart nuair a bheidh do sparán críochnaithe ag sioncrónú leis an líonra bitcoin, mar atá luaite thíos. + + + Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network. + Ní ghlacfaidh an líonra le hiarrachtí bitcoins a chaitheamh a mbaineann le hidirbhearta nach bhfuil ar taispeáint go fóill. + + + Number of blocks left + Líon na mbloic fágtha + + + Unknown... + Anaithnid... + + + Last block time + Am bloc deireanach + + + Progress + Dul chun cinn + + + Progress increase per hour + Méadú dul chun cinn in aghaidh na huaire + + + calculating... + Comhaireamh... + + + Estimated time left until synced + Measta am fágtha go dtí sioncrónaithe + + + Hide + Folaigh + + + Esc + Esc + + + %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. + Tá %1 ag sioncronú faoi láthair. Déanfaidh sé é a íoslódáil agus a fíorú ar ceanntásca agus bloic ó phiaraí go dtí barr an blocshlabhra. + + + Unknown. Syncing Headers (%1, %2%)... + Anaithnid. Ceanntásca Sioncronú (%1, %2%)... + + + + OpenURIDialog + + Open bitcoin URI + Oscail URI bitcoin + + + URI: + URI: + + + + OpenWalletActivity + + Open wallet failed + Theip ar oscail sparán + + + Open wallet warning + Rabhadh oscail sparán + + + default wallet + sparán réamhshocraithe + + + Opening Wallet <b>%1</b>... + Oscailt Sparán <b>%1</b>... + + + + OptionsDialog + + Options + Roghanna + + + &Main + &Príomh + + + Automatically start %1 after logging in to the system. + Tosaigh %1 go huathoibríoch tar éis logáil isteach sa chóras. + + + &Start %1 on system login + &Tosaigh %1 ar logáil isteach an chórais + + + Size of &database cache + Méid taisce &bunachar sonraí + + + Number of script &verification threads + Líon snáitheanna &fíorú scripte + + + IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1) + Seoladh IP an seachfhreastalaí (m.sh. IPv4: 127.0.0.1 / IPv6: ::1) + + + Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type. + Taispeánann má úsáidtear an seachfhreastalaí SOCKS5 réamhshocraithe a sholáthraítear chun piaraí a bhaint amach tríd an gcineál líonra seo. + + + Hide the icon from the system tray. + Folaigh an deilbhín ón tráidire córais. + + + &Hide tray icon + &Folaigh deilbhín tráidire + + + Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu. + Íoslaghdaigh in ionad scoir an feidhmchlár nuair a bhíonn an fhuinneog dúnta. Nuair a chumasófar an rogha seo, ní dhúnfar an feidhmchlár ach amháin tar éis Scoir a roghnú sa roghchlár. + + + Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. + URLanna tríú páirtí (e.g. taiscéalaí bloc) atá le feiceáil sa chluaisín idirbhearta mar mhíreanna roghchláir comhthéacs. Cuirtear hais idirbheart in ionad %s san URL. Tá URLanna iolracha scartha le barra ingearach |. + + + Open the %1 configuration file from the working directory. + Oscail an comhad cumraíochta %1 ón eolaire oibre. + + + Open Configuration File + Oscail Comhad Cumraíochta + + + Reset all client options to default. + Athshocraigh gach rogha cliant chuig réamhshocraithe. + + + &Reset Options + &Roghanna Athshocraigh + + + &Network + &Líonra + + + Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. + Díchumasaigh roinnt ardgnéithe ach beidh gach bloc bailíochtaithe go hiomlán fós. Teastaíonn an blocshlabhra iomlán a íoslódáil arís chun an socrú seo a fhilleadh. D’fhéadfadh úsáid iarbhír diosca a bheith beagán níos airde. + + + Prune &block storage to + &Bearr stóráil bloc chuig + + + GB + GB + + + Reverting this setting requires re-downloading the entire blockchain. + Teastaíonn an blocshlabhra iomlán a íoslódáil arís chun an socrú seo a fhilleadh. + + + MiB + MiB + + + (0 = auto, <0 = leave that many cores free) + (0 = uath, <0 = fág an méid sin cóir saor) + + + W&allet + Sp&arán + + + Expert + Saineolach + + + Enable coin &control features + &Cumasaigh gnéithe rialúchán bonn + + + If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed. + Má dhíchumasaíonn tú caiteachas sóinseáil neamhdheimhnithe, ní féidir an t-athrú ó idirbheart a úsáid go dtí go mbeidh deimhniú amháin ar a laghad ag an idirbheart sin. Bíonn tionchar aige seo freisin ar an gcaoi a ríomhtar d’iarmhéid. + + + &Spend unconfirmed change + Caith &sóinseáil neamhdheimhnithe + + + Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled. + Oscail port cliant Bitcoin go huathoibríoch ar an ródaire. Ní oibríonn sé seo ach nuair a thacaíonn do ródaire le UPnP agus nuair a chumasaítear é. + + + Map port using &UPnP + Mapáil port ag úsáid &UPnP + + + Accept connections from outside. + Glac le naisc ón taobh amuigh. + + + Allow incomin&g connections + Ceadai&gh naisc isteach + + + Connect to the Bitcoin network through a SOCKS5 proxy. + Ceangail leis an líonra Bitcoin trí sheachfhreastalaí SOCKS5. + + + &Connect through SOCKS5 proxy (default proxy): + &Ceangail trí seachfhreastalaí SOCKS5 (seachfhreastalaí réamhshocraithe): + + + Proxy &IP: + Seachfhreastalaí &IP: + + + &Port: + &Port: + + + Port of the proxy (e.g. 9050) + Port an seachfhreastalaí (m.sh. 9050) + + + Used for reaching peers via: + Úsáidtear chun sroicheadh piaraí trí: + + + IPv4 + IPv4 + + + IPv6 + IPv6 + + + Tor + Tor + + + &Window + &Fuinneog + + + Show only a tray icon after minimizing the window. + Ná taispeáin ach deilbhín tráidire t'éis an fhuinneog a íoslaghdú. + + + &Minimize to the tray instead of the taskbar + &Íoslaghdaigh an tráidire in ionad an tascbharra + + + M&inimize on close + Í&oslaghdaigh ar dhúnadh + + + &Display + &Taispeáin + + + User Interface &language: + T&eanga Chomhéadain Úsáideora: + + + The user interface language can be set here. This setting will take effect after restarting %1. + Is féidir teanga an chomhéadain úsáideora a shocrú anseo. Tiocfaidh an socrú seo i bhfeidhm t'éis atosú %1. + + + &Unit to show amounts in: + &Aonad chun suimeanna a thaispeáint: + + + Choose the default subdivision unit to show in the interface and when sending coins. + Roghnaigh an t-aonad foroinnte réamhshocraithe le taispeáint sa chomhéadan agus nuair a sheoltar boinn. + + + Whether to show coin control features or not. + Gnéithe rialúchán bonn a thaispeáint nó nach. + + + Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. + Ceangail le líonra Bitcoin trí seachfhreastalaí SOCKS5 ar leith do sheirbhísí Tor oinniún. + + + Use separate SOCKS&5 proxy to reach peers via Tor onion services: + Úsáid seachfhreastalaí SOCKS5 ar leith chun sroicheadh piaraí trí sheirbhísí Tor oinniún: + + + &Third party transaction URLs + &URLanna idirbheart tríú páirtí + + + Options set in this dialog are overridden by the command line or in the configuration file: + Tá na roghanna socraithe sa dialóg seo sáraithe ag líne na n-orduithe nó sa chomhad cumraíochta: + + + &OK + &Togha + + + &Cancel + &Cealaigh + + + default + réamhshocrú + + + none + ceann ar bith + + + Confirm options reset + Deimhnigh athshocrú roghanna + + + Client restart required to activate changes. + Atosú cliant ag teastáil chun athruithe a ghníomhachtú. + + + Client will be shut down. Do you want to proceed? + Múchfar an cliant. Ar mhaith leat dul ar aghaidh? + + + Configuration options + Roghanna cumraíochta + + + The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file. + Úsáidtear an comhad cumraíochta chun ardroghanna úsáideora a shonrú a sháraíonn socruithe GUI. Freisin, sáróidh aon roghanna líne na n-orduithe an comhad cumraíochta seo. + + + Error + Earráid + + + The configuration file could not be opened. + Ní fhéadfaí an comhad cumraíochta a oscailt. + + + This change would require a client restart. + Theastódh cliant a atosú leis an athrú seo. + + + The supplied proxy address is invalid. + Tá an seoladh seachfhreastalaí soláthartha neamhbhailí. + + + + OverviewPage + + Form + Foirm + + + The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. + Féadfaidh an fhaisnéis a thaispeántar a bheith as dáta. Déanann do sparán sioncrónú go huathoibríoch leis an líonra Bitcoin tar éis nasc a bhunú, ach níl an próiseas seo críochnaithe fós. + + + Watch-only: + Faire-amháin: + + + Available: + Ar fáil: + + + Your current spendable balance + D'iarmhéid reatha inchaite + + + Pending: + Ar feitheamh: + + + Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance + Iomlán na n-idirbheart nár deimhniú fós, agus nach bhfuil fós ag comhaireamh i dtreo an iarmhéid inchaite. + + + Immature: + Neamhaibí: + + + Mined balance that has not yet matured + Iarmhéid mianadóireacht nach bhfuil fós aibithe + + + Balances + Iarmhéideanna + + + Total: + Iomlán: + + + Your current total balance + D'iarmhéid iomlán reatha + + + Your current balance in watch-only addresses + D'iarmhéid iomlán reatha i seoltaí faire-amháin + + + Spendable: + Ar fáil le caith: + + + Recent transactions + Idirbhearta le déanaí + + + Unconfirmed transactions to watch-only addresses + Idirbhearta neamhdheimhnithe chuig seoltaí faire-amháin + + + Mined balance in watch-only addresses that has not yet matured + Iarmhéid mianadóireacht i seoltaí faire-amháin nach bhfuil fós aibithe + + + Current total balance in watch-only addresses + Iarmhéid iomlán reatha i seoltaí faire-amháin + + + Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. + Modh príobháideachta gníomhachtaithe don chluaisín Forbhreathnú. Chun na luachanna a nochtú, díthiceáil Socruithe->Luachanna maisc. + + + + PSBTOperationsDialog + + Dialog + Dialóg + + + Sign Tx + Sínigh Tx + + + Broadcast Tx + Craol Tx + + + Copy to Clipboard + Cóipeáil chuig Gearrthaisce + + + Save... + Sábháil... + + + Close + Dún + + + Failed to load transaction: %1 + Theip ar lódáil idirbheart: %1 + + + Failed to sign transaction: %1 + Theip ar síniú idirbheart: %1 + + + Could not sign any more inputs. + Níorbh fhéidir níos mó ionchuir a shíniú. + + + Signed %1 inputs, but more signatures are still required. + Ionchuir %1 sínithe, ach tá tuilleadh sínithe fós ag teastáil. + + + Signed transaction successfully. Transaction is ready to broadcast. + Idirbheart sínithe go rathúil. Idirbheart réidh le craoladh. + + + Unknown error processing transaction. + Earráide anaithnid ag próiseáil idirbheart. + + + Transaction broadcast successfully! Transaction ID: %1 + Craoladh idirbheart go rathúil! Aitheantas Idirbheart: %1 + + + Transaction broadcast failed: %1 + Theip ar chraoladh idirbhirt: %1 + + + PSBT copied to clipboard. + Cóipeáladh IBSP chuig an gearrthaisce. + + + Save Transaction Data + Sábháil Sonraí Idirbheart + + + Partially Signed Transaction (Binary) (*.psbt) + Idirbheart Sínithe go Páirteach (Dénártha) (*.psbt) + + + PSBT saved to disk. + IBSP sábháilte ar dhiosca. + + + * Sends %1 to %2 + * Seolann %1 chuig %2 + + + Unable to calculate transaction fee or total transaction amount. + Ní féidir táille idirbhirt nó méid iomlán an idirbhirt a ríomh. + + + Pays transaction fee: + Íocann táille idirbhirt: + + + Total Amount + Iomlán + + + or + + + + Transaction has %1 unsigned inputs. + Tá %1 ionchur gan sín ag an idirbheart. + + + Transaction is missing some information about inputs. + Tá roinnt faisnéise faoi ionchuir in easnamh san idirbheart. + + + Transaction still needs signature(s). + Tá síni(ú/the) fós ag teastáil ón idirbheart. + + + (But this wallet cannot sign transactions.) + (Ach ní féidir leis an sparán seo idirbhearta a shíniú.) + + + (But this wallet does not have the right keys.) + (Ach níl na heochracha cearta ag an sparán seo.) + + + Transaction is fully signed and ready for broadcast. + Tá an t-idirbheart sínithe go hiomlán agus réidh le craoladh. + + + Transaction status is unknown. + Ní fios stádas idirbhirt. + + + + PaymentServer + + Payment request error + Earráid iarratais íocaíocht + + + Cannot start bitcoin: click-to-pay handler + Ní féidir bitcoin a thosú: láimhseálaí cliceáil-chun-íoc + + + URI handling + Láimhseála URI + + + 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. + Ní URI bailí é 'bitcoin://'. Úsáid 'bitcoin:' ina ionad. + + + Cannot process payment request because BIP70 is not supported. + Ní féidir iarratas íocaíocht a phróiseáil mar nach dtacaítear le BIP70. + + + Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. + Mar gheall ar lochtanna slándála forleathan i BIP70 moltar go láidir neamhaird a thabhairt d’aon treoracha ceannaí chun sparán a athrú. + + + If you are receiving this error you should request the merchant provide a BIP21 compatible URI. + Má fheiceann tú tá an earráid seo ba chóir duit iarraidh ar an ceannaí URI comhoiriúnach BIP21 a sholáthar. + + + Invalid payment address %1 + Seoladh íocaíochta neamhbhailí %1 + + + URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters. + Ní féidir URI a pharsáil! Is féidir le seoladh neamhbhailí Bitcoin nó paraiméadair URI drochfhoirmithe a bheith mar an chúis. + + + Payment request file handling + Iarratas ar íocaíocht láimhseáil comhad + + + + PeerTableModel + + User Agent + Gníomhaire Úsáideora + + + Node/Service + Nód/Seirbhís + + + NodeId + AitheantasNód + + + Ping + Ping + + + Sent + Seolta + + + Received + Faighte + + + + QObject + + Amount + Suim + + + Enter a Bitcoin address (e.g. %1) + Iontráil seoladh Bitcoin (m.sh.%1) + + + %1 d + %1 l + + + %1 h + %1 u + + + %1 m + %1 n + + + %1 s + %1 s + + + None + Faic + + + N/A + N/B + + + %1 ms + %1 ms + + + %n second(s) + %n soicind%n soicind%n soicind%n soicind%n soicind + + + %n minute(s) + %n nóiméad%n nóiméad%n nóiméad%n nóiméad%n nóiméad + + + %n hour(s) + %n uair%n uair%n uair%n uair%n uair + + + %n day(s) + %n lá%n lá%n lá%n lá%n lá + + + %n week(s) + %n seachtain%n sheachtain%n seachtaine%n seachtainí%n seachtainí + + + %1 and %2 + %1 agus %2 + + + %n year(s) + %n bhliain%n bhliain%n bliana%n bliain%n bliain + + + %1 B + %1 B + + + %1 KB + %1 KB + + + %1 MB + %1 MB + + + %1 GB + %1 GB + + + Error: Specified data directory "%1" does not exist. + Earráid: Níl eolaire sonraí sainithe "%1" ann. + + + Error: Cannot parse configuration file: %1. + Earráid: Ní féidir parsáil comhad cumraíochta: %1. + + + Error: %1 + Earráid: %1 + + + Error initializing settings: %1 + Earráid túsú socruithe: %1 + + + %1 didn't yet exit safely... + Níor scoir %1 go sábháilte fós... + + + unknown + neamhaithnid + + + + QRImageWidget + + &Save Image... + &Sábháil Íomhá... + + + &Copy Image + &Cóipeáil Íomhá + + + Resulting URI too long, try to reduce the text for label / message. + URI mar thoradh ró-fhada, déan iarracht an téacs don lipéad / teachtaireacht a laghdú. + + + Error encoding URI into QR Code. + Earráid ag ionchódú URI chuig chód QR. + + + QR code support not available. + Níl tacaíocht cód QR ar fáil. + + + Save QR Code + Sabháil cód QR. + + + PNG Image (*.png) + Íomhá GIL (*.png) + + + + RPCConsole + + N/A + N/B + + + Client version + Leagan cliant + + + &Information + &Faisnéis + + + General + Ginearálta + + + Using BerkeleyDB version + Ag úsáid leagan BerkeleyDB + + + Datadir + Eolsonraí + + + To specify a non-default location of the data directory use the '%1' option. + Chun suíomh neamh-réamhshocraithe den eolaire sonraí a sainigh úsáid an rogha '%1'. + + + Blocksdir + Eolbloic + + + To specify a non-default location of the blocks directory use the '%1' option. + Chun suíomh neamh-réamhshocraithe den eolaire bloic a sainigh úsáid an rogha '%1'. + + + Startup time + Am tosaithe + + + Network + Líonra + + + Name + Ainm + + + Number of connections + Líon naisc + + + Block chain + Blocshlabhra + + + Memory Pool + Linn Cuimhne + + + Current number of transactions + Líon reatha h-idirbheart + + + Memory usage + Úsáid cuimhne + + + Wallet: + Sparán: + + + (none) + (ceann ar bith) + + + &Reset + &Athshocraigh + + + Received + Faighte + + + Sent + Seolta + + + &Peers + &Piaraí + + + Banned peers + &Piaraí coiscthe + + + Select a peer to view detailed information. + Roghnaigh piara chun faisnéis mhionsonraithe a fheiceáil. + + + Direction + Treo + + + Version + Leagan + + + Starting Block + Bloc Tosaigh + + + Synced Headers + Ceanntásca Sioncronaithe + + + Synced Blocks + Bloic Sioncronaithe + + + The mapped Autonomous System used for diversifying peer selection. + An Córas Uathrialach mapáilte a úsáidtear chun roghnú piaraí a éagsúlú. + + + Mapped AS + CU Mapáilte + + + User Agent + Gníomhaire Úsáideora + + + Node window + Fuinneog nód + + + Current block height + Airde bloc reatha + + + Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. + Oscail an comhad loga dífhabhtaithe %1 ón eolaire sonraí reatha. Tógfaidh sé seo cúpla soicind do chomhaid loga móra. + + + Decrease font size + Laghdaigh clómhéid + + + Increase font size + Méadaigh clómhéid + + + Permissions + Ceadanna + + + Services + Seirbhísí + + + Connection Time + Am Ceangail + + + Last Send + Seol Deireanach + + + Last Receive + Glac Deireanach + + + Ping Time + Am Ping + + + The duration of a currently outstanding ping. + Tréimhse reatha ping fós amuigh + + + Ping Wait + Feitheamh Ping + + + Min Ping + Íos-Ping + + + Time Offset + Fritháireamh Ama + + + Last block time + Am bloc deireanach + + + &Open + &Oscail + + + &Console + &Consól + + + &Network Traffic + &Trácht Líonra + + + Totals + Iomlán + + + In: + Isteach: + + + Out: + Amach: + + + Debug log file + Comhad logála dífhabhtaigh + + + Clear console + Glan consól + + + 1 &hour + 1 &uair + + + 1 &day + 1 &lá + + + 1 &week + 1 &seachtain + + + 1 &year + 1 &bhliain + + + &Disconnect + &Scaoil + + + Ban for + Cosc do + + + &Unban + &Díchosc + + + Welcome to the %1 RPC console. + Fáilte chuig an consól %1 RPC. + + + Use up and down arrows to navigate history, and %1 to clear screen. + Úsáid saigheada suas agus síos chun an stair a nascleanúint, agus %1 chun an scáileán a ghlanadh. + + + Type %1 for an overview of available commands. + Clóscríobh %1 chun forbhreathnú ar na horduithe ar fáil. + + + WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. + RABHADH: Bhí caimiléirí gníomhach, ag rá le húsáideoirí orduithe a chlóscríobh anseo, ag goid a bhfuil ina sparán. Ná húsáid an consól seo gan tuiscint iomlán a fháil ar iarmhairtí ordú. + + + Network activity disabled + Gníomhaíocht líonra díchumasaithe + + + Executing command without any wallet + Ag rith ordú gan aon sparán + + + Executing command using "%1" wallet + Ag rith ordú ag úsáid sparán "%1" + + + (node id: %1) + (aitheantas nód: %1) + + + via %1 + trí %1 + + + never + riamh + + + Inbound + Isteach + + + Outbound + Amach + + + Unknown + Anaithnid + + + + ReceiveCoinsDialog + + &Amount: + &Suim + + + &Label: + &Lipéad + + + &Message: + &Teachtaireacht + + + An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network. + Teachtaireacht roghnach le ceangal leis an iarratas íocaíocht, a thaispeánfar nuair a osclaítear an iarraidh. Nóta: Ní sheolfar an teachtaireacht leis an íocaíocht thar líonra Bitcoin. + + + An optional label to associate with the new receiving address. + Lipéad roghnach chun comhcheangail leis an seoladh glactha nua. + + + Use this form to request payments. All fields are <b>optional</b>. + Úsáid an fhoirm seo chun íocaíochtaí a iarraidh. Tá gach réimse <b>roghnach</b>. + + + An optional amount to request. Leave this empty or zero to not request a specific amount. + Suim roghnach le hiarraidh. Fág é seo folamh nó nialas chun ná iarr méid ar leith. + + + An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request. + Lipéad roghnach chun é a comhcheangail leis an seoladh glactha nua (a úsáideann tú chun sonrasc a aithint). Tá sé ceangailte leis an iarraidh ar íocaíocht freisin. + + + An optional message that is attached to the payment request and may be displayed to the sender. + Teachtaireacht roghnach atá ceangailte leis an iarratas ar íocaíocht agus a fhéadfar a thaispeáint don seoltóir. + + + &Create new receiving address + &Cruthaigh seoladh glactha nua + + + Clear all fields of the form. + Glan gach réimse den fhoirm. + + + Clear + Glan + + + Native segwit addresses (aka Bech32 or BIP-173) reduce your transaction fees later on and offer better protection against typos, but old wallets don't support them. When unchecked, an address compatible with older wallets will be created instead. + Laghdaíonn seoltaí dúchasacha segwit (nó mar is fearr aithne Bech32 nó BIP-173) do tháillí idirbhirt ar ball agus tugann siad cosaint níos fearr i gcoinne earráid chló, ach ní thacaíonn sean-sparán leo. Nuair atá díthiceáilte, cruthófar seoladh atá comhoiriúnach le sparán níos sine. + + + Generate native segwit (Bech32) address + Cruthaigh seoladh dúchasach segwit (Bech32) + + + Requested payments history + Stair na n-íocaíochtaí iarrtha + + + Show the selected request (does the same as double clicking an entry) + Taispeáin an iarraidh roghnaithe (déanann sé an rud céanna le hiontráil a déchliceáil) + + + Show + Taispeáin + + + Remove the selected entries from the list + Bain na hiontrálacha roghnaithe ón liosta + + + Remove + Bain + + + Copy URI + Cóipeáil URI + + + Copy label + Cóipeáil lipéad + + + Copy message + Cóipeáil teachtaireacht + + + Copy amount + Cóipeáil suim + + + Could not unlock wallet. + Níorbh fhéidir sparán a dhíghlasáil. + + + Could not generate new %1 address + Níorbh fhéidir seoladh nua %1 a ghiniúint + + + + ReceiveRequestDialog + + Request payment to ... + Iarr íocaíocht chuig ... + + + Address: + Seoladh: + + + Amount: + Suim: + + + Label: + Lipéad: + + + Message: + Teachtaireacht: + + + Wallet: + Sparán: + + + Copy &URI + Cóipeáil &URI + + + Copy &Address + Cóipeáil &Seoladh + + + &Save Image... + &Sábháil Íomhá... + + + Request payment to %1 + Iarr íocaíocht chuig %1 + + + Payment information + Faisnéis íocaíochta + + + + RecentRequestsTableModel + + Date + Dáta + + + Label + Lipéad + + + Message + Teachtaireacht + + + (no label) + (gan lipéad) + + + (no message) + (gan teachtaireacht) + + + (no amount requested) + (níor iarradh aon suim) + + + Requested + Iarrtha + + + + SendCoinsDialog + + Send Coins + Seol Boinn + + + Coin Control Features + Gnéithe Rialú Bonn + + + Inputs... + Ionchuir... + + + automatically selected + roghnaithe go huathoibríoch + + + Insufficient funds! + Neamhleor airgead! + + + Quantity: + Méid: + + + Bytes: + Bearta: + + + Amount: + Suim: + + + Fee: + Táille: + + + After Fee: + Iar-tháille: + + + Change: + Sóinseáil: + + + If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address. + Má ghníomhachtaítear é seo, ach go bhfuil an seoladh sóinseáil folamh nó neamhbhailí, seolfar sóinseáil chuig seoladh nua-ghinte. + + + Custom change address + Seoladh sóinseáil saincheaptha + + + Transaction Fee: + Táille Idirbheart: + + + Choose... + Roghnaigh... + + + Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain. + Má úsáidtear an táilletacachumas is féidir idirbheart a sheoladh a thógfaidh roinnt uaireanta nó laethanta (nó riamh) dearbhú. Smaoinigh ar do tháille a roghnú de láimh nó fan go mbeidh an slabhra iomlán bailíochtaithe agat. + + + Warning: Fee estimation is currently not possible. + Rabhadh: Ní féidir meastachán táillí a dhéanamh faoi láthair. + + + Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size. + +Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis per kB" for a transaction size of 500 bytes (half of 1 kB) would ultimately yield a fee of only 50 satoshis. + Sainigh táille saincheaptha in aghaidh an kB (1,000 beart) de mhéid fíorúil an idirbhirt. + +Nóta: Ós rud é go ríomhtar an táille ar bunús gach beart, ní thabharfadh táille “100 satoshis in aghaidh an kB” do idirbhirt de mhéid 500 beart (leath de 1 kB) táille ach 50 satoshis sa deireadh. + + + per kilobyte + in aghaidh an cilibheart + + + Hide + Folaigh + + + Recommended: + Molta: + + + Custom: + Saincheaptha: + + + (Smart fee not initialized yet. This usually takes a few blocks...) + (Níor túsú táille chliste fós. De ghnáth tógann sé seo cúpla bloc ...) + + + Send to multiple recipients at once + Seol chuig faighteoirí iolracha ag an am céanna + + + Add &Recipient + Cuir &Faighteoir + + + Clear all fields of the form. + Glan gach réimse den fhoirm. + + + Dust: + Dusta: + + + Hide transaction fee settings + Folaigh socruithe táillí idirbhirt + + + When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process. + Nuair a bhíonn méid idirbhirt níos lú ná spás sna bloic, féadfaidh mianadóirí chomh maith le nóid athsheachadadh táille íosta a fhorfheidhmiú. Tá sé sách maith an táille íosta seo a íoc, ach bíodh a fhios agat go bhféadfadh idirbheart nach ndeimhnítear riamh a bheith mar thoradh air seo a nuair a bhíonn níos mó éilimh ar idirbhearta bitcoin ná mar is féidir leis an líonra a phróiseáil. + + + A too low fee might result in a never confirming transaction (read the tooltip) + D’fhéadfadh idirbheart nach ndeimhnítear riamh a bheith mar thoradh ar tháille ró-íseal (léigh an leid uirlise) + + + Confirmation time target: + Sprioc am dearbhaithe: + + + Enable Replace-By-Fee + Cumasaigh Athchuir-Le-Táille + + + With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk. + Le Athchuir-Le-Táille (BIP-125) is féidir leat táille idirbhirt a mhéadú tar éis é a sheoladh. Gan é seo, féadfar táille níos airde a mholadh chun riosca méadaithe moille idirbheart a cúitigh. + + + Clear &All + &Glan Gach + + + Balance: + Iarmhéid + + + Confirm the send action + Deimhnigh an gníomh seol + + + S&end + S&eol + + + Copy quantity + Cóipeáil méid + + + Copy amount + Cóipeáil suim + + + Copy fee + Cóipeáíl táille + + + Copy after fee + Cóipeáíl iar-tháille + + + Copy bytes + Cóipeáíl bearta + + + Copy dust + Cóipeáíl dusta + + + Copy change + Cóipeáíl sóinseáil + + + %1 (%2 blocks) + %1 (%2 bloic) + + + Cr&eate Unsigned + Cruthaigh Gan Sín + + + Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + Cruthaíonn Idirbheart Bitcoin Sínithe go Páirteach (IBSP) le húsáid le e.g. sparán as líne %1, nó sparán crua-earraí atá comhoiriúnach le IBSP. + + + from wallet '%1' + ó sparán '%1' + + + %1 to '%2' + %1 go '%2' + + + %1 to %2 + %1 go %2 + + + Do you want to draft this transaction? + Ar mhaith leat an t-idirbheart seo a dhréachtú? + + + Are you sure you want to send? + An bhfuil tú cinnte gur mhaith leat seoladh? + + + Create Unsigned + Cruthaigh Gan Sín + + + Save Transaction Data + Sábháil Sonraí Idirbheart + + + Partially Signed Transaction (Binary) (*.psbt) + Idirbheart Sínithe go Páirteach (Dénártha) (*.psbt) + + + PSBT saved + IBSP sábháilte + + + or + + + + You can increase the fee later (signals Replace-By-Fee, BIP-125). + Féadfaidh tú an táille a mhéadú níos déanaí (comhartha chuig Athchuir-Le-Táille, BIP-125). + + + Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + Le do thoil, déan athbhreithniú ar do thogra idirbhirt. Tabharfaidh sé seo Idirbheart Bitcoin Sínithe go Páirteach (IBSP) ar féidir leat a shábháil nó a chóipeáil agus a shíniú ansin le m.sh. sparán as líne %1, nó sparán crua-earraí atá comhoiriúnach le IBSP. + + + Please, review your transaction. + Le do thoil, déan athbhreithniú ar d’idirbheart. + + + Transaction fee + Táille idirbhirt + + + Not signalling Replace-By-Fee, BIP-125. + Níl comhartha chuig Athchuir-Le-Táille, BIP-125 + + + Total Amount + Iomlán + + + To review recipient list click "Show Details..." + Chun liosta na bhfaighteoirí a athbhreithniú cliceáil "Taispeáin Sonraí..." + + + Confirm send coins + Deimhnigh seol boinn + + + Confirm transaction proposal + Deimhnigh togra idirbhirt + + + Send + Seol + + + Watch-only balance: + Iarmhéid faire-amháin: + + + The recipient address is not valid. Please recheck. + Níl seoladh an fhaighteora bailí. Athsheiceáil le do thoil. + + + The amount to pay must be larger than 0. + Caithfidh an méid le híoc a bheith níos mó ná 0. + + + The amount exceeds your balance. + Sáraíonn an méid d’iarmhéid. + + + The total exceeds your balance when the %1 transaction fee is included. + Sáraíonn an t-iomlán d’iarmhéid nuair a chuirtear an táille idirbhirt %1 san áireamh. + + + Duplicate address found: addresses should only be used once each. + Seoladh dúblach faighte: níor cheart seoltaí a úsáid ach uair amháin an ceann. + + + Transaction creation failed! + Theip ar chruthú idirbheart! + + + A fee higher than %1 is considered an absurdly high fee. + Meastar gur táille áiféiseach ard í táille níos airde ná %1. + + + Payment request expired. + Iarratas íocaíocht éagtha. + + + Estimated to begin confirmation within %n block(s). + Meastar go dtosóidh deimhniú laistigh de %n bhloc.Meastar go dtosóidh deimhniú laistigh de %n bhloc.Meastar go dtosóidh deimhniú laistigh de %n bloc.Meastar go dtosóidh deimhniú laistigh de %n bloc.Meastar go dtosóidh deimhniú laistigh de %n bloc. + + + Warning: Invalid Bitcoin address + Rabhadh: Seoladh neamhbhailí Bitcoin + + + Warning: Unknown change address + Rabhadh: Seoladh sóinseáil anaithnid + + + Confirm custom change address + Deimhnigh seoladh sóinseáil saincheaptha + + + The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure? + Ní cuid den sparán seo an seoladh a roghnaigh tú le haghaidh sóinseáil. Féadfar aon chistí nó gach ciste i do sparán a sheoladh chuig an seoladh seo. An bhfuil tú cinnte? + + + (no label) + (gan lipéad) + + + + SendCoinsEntry + + A&mount: + &Suim: + + + Pay &To: + Íoc &Chuig: + + + &Label: + &Lipéad + + + Choose previously used address + Roghnaigh seoladh a úsáideadh roimhe seo + + + The Bitcoin address to send the payment to + Seoladh Bitcoin chun an íocaíocht a sheoladh chuig + + + Alt+A + Alt+A + + + Paste address from clipboard + Greamaigh seoladh ón gearrthaisce + + + Alt+P + Alt+P + + + Remove this entry + Bain an iontráil seo + + + The amount to send in the selected unit + An méid atá le seoladh san aonad roghnaithe + + + The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. + Bainfear an táille ón méid a sheolfar. Gheobhaidh an faighteoir níos lú bitcoins ná mar a iontrálann tú sa réimse méid. Má roghnaítear faighteoirí iolracha, roinntear an táille go cothrom. + + + S&ubtract fee from amount + &Dealaigh táille ón suim + + + Use available balance + Úsáid iarmhéid inúsáidte + + + Message: + Teachtaireacht: + + + This is an unauthenticated payment request. + Iarratas íocaíocht neamhfíordheimhnithe é seo. + + + This is an authenticated payment request. + Iarratas íocaíocht fíordheimhnithe é seo. + + + Enter a label for this address to add it to the list of used addresses + Iontráil lipéad don seoladh seo chun é a chur le liosta na seoltaí úsáidte + + + A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. + Teachtaireacht a bhí ceangailte leis an bitcoin: URI a stórálfar leis an idirbheart le haghaidh do thagairt. Nóta: Ní sheolfar an teachtaireacht seo thar líonra Bitcoin. + + + Pay To: + Íoc chuig: + + + Memo: + Meamram: + + + + ShutdownWindow + + %1 is shutting down... + Tá %1 ag múchadh... + + + Do not shut down the computer until this window disappears. + Ná múch an ríomhaire go dtí go n-imíonn an fhuinneog seo. + + + + SignVerifyMessageDialog + + Signatures - Sign / Verify a Message + Sínithe - Sínigh / Dearbhaigh Teachtaireacht + + + &Sign Message + &Sínigh Teachtaireacht + + + You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. + Féadfaidh tú teachtaireachtaí / comhaontuithe a shíniú le do sheoltaí chun a chruthú gur féidir leat bitcoins a sheoltear chucu a fháil. Bí cúramach gan aon rud doiléir nó randamach a shíniú, mar d’fhéadfadh ionsaithe fioscaireachta iarracht ar d’aitheantas a shíniú chucu. Ná sínigh ach ráitis lán-mhionsonraithe a aontaíonn tú leo. + + + The Bitcoin address to sign the message with + An seoladh Bitcoin chun an teachtaireacht a shíniú le + + + Choose previously used address + Roghnaigh seoladh a úsáideadh roimhe seo + + + Alt+A + Alt+A + + + Paste address from clipboard + Greamaigh seoladh ón gearrthaisce + + + Alt+P + Alt+P + + + Enter the message you want to sign here + Iontráil an teachtaireacht a theastaíonn uait a shíniú anseo + + + Signature + Síniú + + + Copy the current signature to the system clipboard + Cóipeáil an síniú reatha chuig gearrthaisce an chórais + + + Sign the message to prove you own this Bitcoin address + Sínigh an teachtaireacht chun a chruthú gur leat an seoladh Bitcoin seo + + + Sign &Message + Sínigh &Teachtaireacht + + + Reset all sign message fields + Athshocraigh gach réimse sínigh teachtaireacht + + + Clear &All + &Glan Gach + + + &Verify Message + &Fíoraigh Teachtaireacht + + + Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! + Cuir isteach seoladh an ghlacadóra, teachtaireacht (déan cinnte go gcóipeálann tú bristeacha líne, spásanna, táib, srl. go díreach) agus sínigh thíos chun an teachtaireacht a fhíorú. Bí cúramach gan níos mó a léamh isteach sa síniú ná mar atá sa teachtaireacht sínithe féin, ionas nach dtarlóidh ionsaí socadáin duit. Tabhair faoi deara nach gcruthóidh sé seo ach go bhfaigheann an páirtí sínithe leis an seoladh, ní féidir leis seolta aon idirbhirt a chruthú! + + + The Bitcoin address the message was signed with + An seoladh Bitcoin a síníodh an teachtaireacht leis + + + The signed message to verify + An teachtaireacht sínithe le fíorú + + + The signature given when the message was signed + An síniú a tugadh nuair a síníodh an teachtaireacht + + + Verify the message to ensure it was signed with the specified Bitcoin address + Fíoraigh an teachtaireacht lena chinntiú go raibh sí sínithe leis an seoladh Bitcoin sainithe + + + Verify &Message + Fíoraigh &Teachtaireacht + + + Reset all verify message fields + Athshocraigh gach réimse fíorú teachtaireacht + + + Click "Sign Message" to generate signature + Cliceáil "Sínigh Teachtaireacht" chun síniú a ghiniúint + + + The entered address is invalid. + Tá an seoladh a iontráladh neamhbhailí. + + + Please check the address and try again. + Seiceáil an seoladh le do thoil agus triail arís. + + + The entered address does not refer to a key. + Ní thagraíonn an seoladh a iontráladh d’eochair. + + + Wallet unlock was cancelled. + Cuireadh díghlasáil sparán ar ceal. + + + No error + Níl earráid + + + Private key for the entered address is not available. + Níl eochair phríobháideach don seoladh a iontráladh ar fáil. + + + Message signing failed. + Theip ar shíniú teachtaireachtaí. + + + Message signed. + Teachtaireacht sínithe. + + + The signature could not be decoded. + Ní fhéadfaí an síniú a dhíchódú. + + + Please check the signature and try again. + Seiceáil an síniú le do thoil agus triail arís. + + + The signature did not match the message digest. + Níor meaitseáil an síniú leis an aschur haisfheidhme. + + + Message verification failed. + Theip ar fhíorú teachtaireachta. + + + Message verified. + Teachtaireacht fíoraithe. + + + + TrafficGraphWidget + + KB/s + KB/s + + + + TransactionDesc + + Open for %n more block(s) + Oscailte ar feadh %n bhloc eileOscailte ar feadh %n bhloc eileOscailte ar feadh %n bhloc eileOscailte ar feadh %n bloc eileOscailte ar feadh %n bloc eile + + + Open until %1 + Oscailte go dtí %1 + + + conflicted with a transaction with %1 confirmations + faoi choimhlint le idirbheart le %1 dearbhuithe + + + 0/unconfirmed, %1 + 0/neamhdheimhnithe, %1 + + + in memory pool + i linn cuimhne + + + not in memory pool + ní i linn cuimhne + + + abandoned + tréigthe + + + %1/unconfirmed + %1/neamhdheimhnithe + + + %1 confirmations + %1 dearbhuithe + + + Status + Stádas + + + Date + Dáta + + + Source + Foinse + + + Generated + Ghinte + + + From + Ó + + + unknown + neamhaithnid + + + To + Chuig + + + own address + seoladh féin + + + watch-only + faire-amháin + + + label + lipéad + + + Credit + Creidmheas + + + matures in %n more block(s) + aibíonn i %n bhloc eileaibíonn i %n bhloc eileaibíonn i %n bhloc eileaibíonn i %n bhloc eileaibíonn i %n bhloc eile + + + not accepted + ní ghlactar leis + + + Debit + Dochar + + + Total debit + Dochar iomlán + + + Total credit + Creidmheas iomlán + + + Transaction fee + Táille idirbhirt + + + Net amount + Glanmhéid + + + Message + Teachtaireacht + + + Comment + Trácht + + + Transaction ID + Aitheantas Idirbheart + + + Transaction total size + Méid iomlán an idirbhirt + + + Transaction virtual size + Méid fíorúil idirbhirt + + + Output index + Innéacs aschuir + + + (Certificate was not verified) + (Níor fíoraíodh teastas) + + + Merchant + Ceannaí + + + Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. + Caithfidh Boinn ghinte aibíocht %1 bloic sular féidir iad a chaitheamh. Nuair a ghin tú an bloc seo, craoladh é chuig an líonra le cur leis an mblocshlabhra. Má theipeann sé fáíl isteach sa slabhra, athróidh a staid go "ní ghlactar" agus ní bheidh sé inchaite. D’fhéadfadh sé seo tarlú ó am go chéile má ghineann nód eile bloc laistigh de chúpla soicind ó do cheann féin. + + + Debug information + Eolas dífhabhtúcháin + + + Transaction + Idirbheart + + + Inputs + Ionchuir + + + Amount + Suim + + + true + fíor + + + false + bréagach + + + + TransactionDescDialog + + This pane shows a detailed description of the transaction + Taispeánann an phána seo mionchuntas den idirbheart + + + Details for %1 + Sonraí do %1 + + + + TransactionTableModel + + Date + Dáta + + + Type + Cinéal + + + Label + Lipéad + + + Open for %n more block(s) + Oscailte ar feadh %n bhloc eileOscailte ar feadh %n bhloc eileOscailte ar feadh %n bhloc eileOscailte ar feadh %n bloc eileOscailte ar feadh %n bloc eile + + + Open until %1 + Oscailte go dtí %1 + + + Unconfirmed + Neamhdheimhnithe + + + Abandoned + Tréigthe + + + Confirming (%1 of %2 recommended confirmations) + Deimhniú (%1 de %2 dearbhuithe molta) + + + Confirmed (%1 confirmations) + Deimhnithe (%1 dearbhuithe) + + + Conflicted + Faoi choimhlint + + + Immature (%1 confirmations, will be available after %2) + Neamhaibí (%1 dearbhuithe, ar fáil t'éis %2) + + + Generated but not accepted + Ginte ach ní ghlactar + + + Received with + Faighte le + + + Received from + Faighte ó + + + Sent to + Seolta chuig + + + Payment to yourself + Íocaíocht chugat féin + + + Mined + Mianáilte + + + watch-only + faire-amháin + + + (n/a) + (n/b) + + + (no label) + (gan lipéad) + + + Transaction status. Hover over this field to show number of confirmations. + Stádas idirbhirt. Ainligh os cionn an réimse seo chun líon na dearbhuithe a thaispeáint. + + + Date and time that the transaction was received. + Dáta agus am a fuarthas an t-idirbheart. + + + Type of transaction. + Cineál idirbhirt. + + + Whether or not a watch-only address is involved in this transaction. + An bhfuil nó nach bhfuil seoladh faire-amháin bainteach leis an idirbheart seo. + + + User-defined intent/purpose of the transaction. + Cuspóir sainithe ag an úsáideoir/aidhm an idirbhirt. + + + Amount removed from or added to balance. + Méid a bhaintear as nó a chuirtear leis an iarmhéid. + + + + TransactionView + + All + Gach + + + Today + Inniu + + + This week + An tseachtain seo + + + This month + An mhí seo + + + Last month + An mhí seo caite + + + This year + An bhliain seo + + + Range... + Raon... + + + Received with + Faighte le + + + Sent to + Seolta chuig + + + To yourself + Chugat fhéin + + + Mined + Mianáilte + + + Other + Other + + + Enter address, transaction id, or label to search + Iontráil seoladh, aitheantas idirbhirt, nó lipéad chun cuardach + + + Min amount + Íosmhéid + + + Abandon transaction + Tréig idirbheart + + + Increase transaction fee + Méadaigh táille idirbheart + + + Copy address + Cóipeáil seoladh + + + Copy label + Cóipeáil lipéad + + + Copy amount + Cóipeáil suim + + + Copy transaction ID + Cóipeáil aitheantas idirbhirt + + + Copy raw transaction + Cóipeáil idirbheart loma + + + Copy full transaction details + Cóipeáil sonraí iomlán idirbhirt + + + Edit label + Eagarthóireacht lipéad + + + Show transaction details + Taispeáin sonraí idirbhirt + + + Export Transaction History + Easpórtáil Stair Idirbheart + + + Comma separated file (*.csv) + Comhad athróige camógdheighilte (*.csv) + + + Confirmed + Deimhnithe + + + Watch-only + Faire-amháin + + + Date + Dáta + + + Type + Cinéal + + + Label + Lipéad + + + Address + Seoladh + + + ID + Aitheantas + + + Exporting Failed + Theip ar Easpórtáil + + + There was an error trying to save the transaction history to %1. + Bhí earráid ag triail stair an idirbhirt a shábháil go %1. + + + Exporting Successful + Easpórtáil Rathúil + + + Range: + Raon: + + + to + go + + + + UnitDisplayStatusBarControl + + Unit to show amounts in. Click to select another unit. + Aonad chun suimeanna a thaispeáint. Cliceáil chun aonad eile a roghnú. + + + + WalletController + + Close wallet + Dún sparán + + + Are you sure you wish to close the wallet <i>%1</i>? + An bhfuil tú cinnte gur mian leat an sparán a dhúnadh <i>%1</i>? + + + Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. + Mar thoradh ar dúnadh an sparán ar feadh ró-fhada, d’fhéadfadh gá sioncronú leis an slabhra iomlán arís má tá bearradh cumasaithe. + + + Close all wallets + Dún gach sparán + + + Are you sure you wish to close all wallets? + An bhfuil tú cinnte gur mhaith leat gach sparán a dhúnadh? + + + + WalletFrame + + No wallet has been loaded. +Go to File > Open Wallet to load a wallet. +- OR - + Níor lódáil aon sparán. +Téigh go Comhad > Oscail Sparán chun sparán a lódáil. +- NÓ - + + + Create a new wallet + Cruthaigh sparán nua + + + + WalletModel + + Send Coins + Seol Boinn + + + Fee bump error + Earráid preab táille + + + Increasing transaction fee failed + Theip ar méadú táille idirbhirt + + + Do you want to increase the fee? + Ar mhaith leat an táille a mhéadú? + + + Do you want to draft a transaction with fee increase? + Ar mhaith leat idirbheart a dhréachtú le táillí ardaithe? + + + Current fee: + Táille reatha: + + + Increase: + Méadú: + + + New fee: + Táille nua: + + + Confirm fee bump + Dearbhaigh preab táille + + + Can't draft transaction. + Ní féidir dréachtú idirbheart. + + + PSBT copied + IBSP cóipeáilte + + + Can't sign transaction. + Ní féidir síniú idirbheart. + + + Could not commit transaction + Níorbh fhéidir feidhmiú idirbheart + + + default wallet + sparán réamhshocraithe + + + + WalletView + + &Export + &Easpórtáil + + + Export the data in the current tab to a file + Easpórtáil na sonraí sa táb reatha chuig comhad + + + Error + Earráid + + + Unable to decode PSBT from clipboard (invalid base64) + Ní féidir IBSP a dhíchódú ón ghearrthaisce (Bun64 neamhbhailí) + + + Load Transaction Data + Lódáil Sonraí Idirbheart + + + Partially Signed Transaction (*.psbt) + Idirbheart Sínithe go Páirteach (*.psbt) + + + PSBT file must be smaller than 100 MiB + Caithfidh comhad IBSP a bheith níos lú ná 100 MiB + + + Unable to decode PSBT + Ní féidir díchódú IBSP + + + Backup Wallet + Sparán Chúltaca + + + Wallet Data (*.dat) + Sonraíocht Sparán (*.dat) + + + Backup Failed + Theip ar cúltacú + + + There was an error trying to save the wallet data to %1. + Earráid ag triail sonraí an sparán a shábháil go %1. + + + Backup Successful + Cúltaca Rathúil + + + The wallet data was successfully saved to %1. + Sábháladh sonraí an sparán go rathúil chuig %1. + + + Cancel + Cealaigh + + + + bitcoin-core + + Distributed under the MIT software license, see the accompanying file %s or %s + Dáilte faoin gceadúnas bogearraí MIT, féach na comhad atá in éindí %s nó %s + + + Prune configured below the minimum of %d MiB. Please use a higher number. + Bearradh cumraithe faoi bhun an íosmhéid %d MiB. Úsáid uimhir níos airde le do thoil. + + + Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) + Bearradh: téann sioncrónú deireanach an sparán thar sonraí bearrtha. Ní mór duit -reindex (déan an blockchain iomlán a íoslódáil arís i gcás nód bearrtha) + + + Pruning blockstore... + Ag bearradh stórbloic... + + + Unable to start HTTP server. See debug log for details. + Ní féidir freastalaí HTTP a thosú. Féach loga dífhabhtúcháin le tuilleadh sonraí. + + + The %s developers + Forbróirí %s + + + Cannot obtain a lock on data directory %s. %s is probably already running. + Ní féidir glas a fháil ar eolaire sonraí %s. Is dócha go bhfuil %s ag rith cheana. + + + Cannot provide specific connections and have addrman find outgoing connections at the same. + Ní féidir naisc shonracha a sholáthar agus addrman ar thóir naisc amach ag an am céanna. + + + Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. + Earráid ag léamh %s! Léigh gach eochair i gceart, ach d’fhéadfadh sonraí idirbhirt nó iontrálacha leabhar seoltaí a bheidh in easnamh nó mícheart. + + + More than one onion bind address is provided. Using %s for the automatically created Tor onion service. + Tá níos mó ná seoladh ceangail oinniún amháin curtha ar fáil. Ag baint úsáide as %s don tseirbhís Tor oinniún a cruthaíodh go huathoibríoch. + + + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. + Le do thoil seiceáil go bhfuil dáta agus am do ríomhaire ceart! Má tá do chlog mícheart, ní oibreoidh %s i gceart. + + + Please contribute if you find %s useful. Visit %s for further information about the software. + Tabhair le do thoil má fhaigheann tú %s úsáideach. Tabhair cuairt ar %s chun tuilleadh faisnéise a fháil faoin bogearraí. + + + SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s + SQLiteDatabase: Theip ar an ráiteas a ullmhú chun scéime sparán sqlite a fháil le leagan: %s + + + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + SQLiteDatabase: Theip ar an ráiteas a ullmhú chun aitheantas feidhmchlár: %s a fháil + + + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported + SQLiteDatabase: Leagan scéime sparán sqlite anaithnid %d. Ní thacaítear ach le leagan %d + + + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct + Tá bloc sa bhunachar sonraí ar cosúil gur as na todhchaí é. B'fhéidir go bhfuil dháta agus am do ríomhaire socraithe go mícheart. Ná déan an bunachar sonraí bloic a atógáil ach má tá tú cinnte go bhfuil dáta agus am do ríomhaire ceart + + + This is a pre-release test build - use at your own risk - do not use for mining or merchant applications + Tógáil tástála réamheisiúint é seo - úsáid ar do riosca fhéin - ná húsáid le haghaidh iarratas mianadóireachta nó ceannaí + + + This is the transaction fee you may discard if change is smaller than dust at this level + Is é seo an táille idirbhirt a fhéadfaidh tú cuileáil má tá sóinseáil níos lú ná dusta ag an leibhéal seo + + + Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. + Ní féidir bloic a aithrise. Beidh ort an bunachar sonraí a atógáil ag úsáid -reindex-chainstate. + + + Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain + Ní féidir an bunachar sonraí a atochras chuig stát réamh-fhorc. Beidh ort an blocshlabhra a athlódáil + + + Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. + Rabhadh: Is cosúil nach n-aontaíonn an líonra uilig! Is cosúil go bhfuil fadhbanna ag roinnt mianadóirí. + + + Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. + Rabhadh: Is cosúil nach n-aontaímid go hiomlán lenár piaraí! B’fhéidir go mbeidh ort uasghrádú a dhéanamh, nó b’fhéidir go mbeidh ar nóid eile uasghrádú. + + + -maxmempool must be at least %d MB + Caithfidh -maxmempool a bheith ar a laghad %d MB + + + Cannot resolve -%s address: '%s' + Ní féidir réiteach seoladh -%s: '%s' + + + Change index out of range + Innéacs sóinseáil as raon + + + Config setting for %s only applied on %s network when in [%s] section. + Ní chuirtear socrú cumraíochta do %s i bhfeidhm ach ar líonra %s nuair atá sé sa rannán [%s]. + + + Copyright (C) %i-%i + Cóipcheart (C) %i-%i + + + Corrupted block database detected + Braitheadh bunachar sonraí bloic truaillithe + + + Could not find asmap file %s + Níorbh fhéidir comhad asmap %s a fháil + + + Could not parse asmap file %s + Níorbh fhéidir comhad asmap %s a pharsáil + + + Do you want to rebuild the block database now? + Ar mhaith leat an bunachar sonraí bloic a atógáil anois? + + + Error initializing block database + Earráid ag túsú bunachar sonraí bloic + + + Error initializing wallet database environment %s! + Earráid ag túsú timpeallacht bunachar sonraí sparán %s! + + + Error loading %s + Earráid lódáil %s + + + Error loading %s: Private keys can only be disabled during creation + Earráid lódáil %s: Ní féidir eochracha príobháideacha a dhíchumasú ach le linn cruthaithe + + + Error loading %s: Wallet corrupted + Earráid lódáil %s: Sparán truaillithe + + + Error loading %s: Wallet requires newer version of %s + Earráid lódáil %s: Éilíonn sparán leagan níos nuaí de %s + + + Error loading block database + Earráid ag lódáil bunachar sonraí bloic + + + Error opening block database + Earráid ag oscailt bunachar sonraí bloic + + + Failed to listen on any port. Use -listen=0 if you want this. + Theip ar éisteacht ar aon phort. Úsáid -listen=0 más é seo atá uait. + + + Failed to rescan the wallet during initialization + Theip athscanadh ar an sparán le linn túsúchán + + + Failed to verify database + Theip ar fhíorú an mbunachar sonraí + + + Ignoring duplicate -wallet %s. + Neamhaird ar sparán dhúbailt %s. + + + Importing... + Iompórtáil... + + + Incorrect or no genesis block found. Wrong datadir for network? + Bloc geineasas mícheart nó ní aimsithe. datadir mícheart don líonra? + + + Initialization sanity check failed. %s is shutting down. + Theip ar seiceáil slánchiall túsúchán. Tá %s ag múchadh. + + + Invalid P2P permission: '%s' + Cead neamhbhailí P2P: '%s' + + + Invalid amount for -%s=<amount>: '%s' + Suim neamhbhailí do -%s=<amount>: '%s' + + + Invalid amount for -discardfee=<amount>: '%s' + Suim neamhbhailí do -discardfee=<amount>: '%s' + + + Invalid amount for -fallbackfee=<amount>: '%s' + Suim neamhbhailí do -fallbackfee=<amount>: '%s' + + + SQLiteDatabase: Failed to execute statement to verify database: %s + SQLiteDatabase: Theip ar rith ráiteas chun an bunachar sonraí a fhíorú: %s + + + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s + SQLiteDatabase: Theip scéime sparán sqlite, leagan: %s a fháil + + + SQLiteDatabase: Failed to fetch the application id: %s + SQLiteDatabase: Theip aitheantas feidhmchlár: %s a fháil + + + SQLiteDatabase: Failed to prepare statement to verify database: %s + SQLiteDatabase: Theip ar ullmhú ráiteas chun bunachar sonraí: %s a fhíorú + + + SQLiteDatabase: Failed to read database verification error: %s + SQLiteDatabase: Theip ar léamh earráid fíorú bunachar sonraí: %s + + + SQLiteDatabase: Unexpected application id. Expected %u, got %u + SQLiteDatabase: Aitheantas feidhmchlár nach raibh súil leis. Ag súil le %u, fuair %u + + + Specified blocks directory "%s" does not exist. + Níl eolaire bloic shonraithe "%s" ann. + + + Unknown address type '%s' + Anaithnid cineál seoladh '%s' + + + Unknown change type '%s' + Anaithnid cineál sóinseáil '%s' + + + Upgrading txindex database + Ag uasghrádú bunachar sonraí txindex + + + Loading P2P addresses... + Lódáil seoltaí P2P... + + + Loading banlist... + Lódáil liosta coisc... + + + Not enough file descriptors available. + Níl dóthain tuairisceoirí comhaid ar fáil. + + + Prune cannot be configured with a negative value. + Ní féidir Bearradh a bheidh cumraithe le luach diúltach. + + + Prune mode is incompatible with -txindex. + Tá an mód bearrtha neamh-chomhoiriúnach le -txindex. + + + Replaying blocks... + Aithrisáil bloic... + + + Rewinding blocks... + Atochraisáil bloic... + + + The source code is available from %s. + Tá an cód foinseach ar fáil ó %s. + + + Transaction fee and change calculation failed + Theip ar ríomh táille idirbhirt agus sóinseáil + + + Unable to bind to %s on this computer. %s is probably already running. + Ní féidir ceangal le %s ar an ríomhaire seo. Is dócha go bhfuil %s ag rith cheana féin. + + + Unable to generate keys + Ní féidir eochracha a ghiniúint + + + Unsupported logging category %s=%s. + Catagóir logáil gan tacaíocht %s=%s. + + + Upgrading UTXO database + Ag uasghrádú bunachar sonraí UTXO + + + User Agent comment (%s) contains unsafe characters. + Tá carachtair neamhshábháilte i nóta tráchta (%s) Gníomhaire Úsáideora. + + + Verifying blocks... + Fíorú bloic... + + + Wallet needed to be rewritten: restart %s to complete + Ba ghá an sparán a athscríobh: atosaigh %s chun críochnú + + + Error: Listening for incoming connections failed (listen returned error %s) + Earráid: Theip ar éisteacht le naisc teacht-isteach (chuir éist earráid %s ar ais) + + + %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. + Tá %s truaillithe. Triail an uirlis sparán bitcoin-wallet a úsáid chun tharrtháil nó chun cúltaca a athbhunú. + + + Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. + Ní féidir sparán scoilte neamh-HD a uasghrádú gan uasghrádú chun tacú le heochairpholl réamh-scoilte. Úsáid leagan 169900 le do thoil nó gan leagan sonraithe. + + + Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) + Suim neamhbhailí do -maxtxfee =<amount>: '%s' (caithfidh ar a laghad an táille minrelay de %s chun idirbhearta greamaithe a chosc) + + + The transaction amount is too small to send after the fee has been deducted + Tá méid an idirbhirt ró-bheag le seoladh agus an táille asbhainte + + + This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet + D’fhéadfadh an earráid seo tarlú mura múchadh an sparán seo go glan agus go ndéanfaí é a lódáil go deireanach ag úsáid tiomsú le leagan níos nuaí de Berkeley DB. Más ea, bain úsáid as na bogearraí a rinne an sparán seo a lódáil go deireanach. + + + This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. + Is é seo an uasmhéid táille idirbhirt a íocann tú (i dteannta leis an ngnáth-tháille) chun tosaíocht a thabhairt do sheachaint páirteach caiteachais thar gnáth roghnú bonn. + + + Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. + Teastaíonn seoladh sóinseáil ón idirbheart, ach ní féidir linn é a ghiniúint. Cuir glaoch ar keypoolrefill ar dtús. + + + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain + Ní mór duit an bunachar sonraí a atógáil ag baint úsáide as -reindex chun dul ar ais go mód neamhbhearrtha. Déanfaidh sé seo an blockchain iomlán a athlódáil + + + A fatal internal error occurred, see debug.log for details + Tharla earráid mharfach inmheánach, féach debug.log le haghaidh sonraí + + + Cannot set -peerblockfilters without -blockfilterindex. + Ní féidir -peerblockfilters a shocrú gan -blockfilterindex. + + + Disk space is too low! + Tá spás ar diosca ró-íseal! + + + Error reading from database, shutting down. + Earráid ag léamh ón mbunachar sonraí, ag múchadh. + + + Error upgrading chainstate database + Earráid ag uasghrádú bunachar sonraí chainstate + + + Error: Disk space is low for %s + Earráid: Tá spás ar diosca íseal do %s + + + Error: Keypool ran out, please call keypoolrefill first + Earráid: Rith keypool amach, glaoigh ar keypoolrefill ar dtús + + + Fee rate (%s) is lower than the minimum fee rate setting (%s) + Tá an ráta táillí (%s) níos ísle ná an socrú íosta rátaí táille (%s). + + + Invalid -onion address or hostname: '%s' + Seoladh neamhbhailí -onion nó óstainm: '%s' + + + Invalid -proxy address or hostname: '%s' + Seoladh seachfhreastalaí nó ainm óstach neamhbhailí: '%s' + + + Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) + Suim neamhbhailí do -paytxfee =<amount>: '%s' (caithfidh sé a bheith %s ar a laghad) + + + Invalid netmask specified in -whitelist: '%s' + Mascghréas neamhbhailí sonraithe sa geal-liosta: '%s' + + + Need to specify a port with -whitebind: '%s' + Is gá port a shainiú le -whitebind: '%s' + + + No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. + Níl seachfhreastalaí sainithe. Úsáid -proxy=<ip> nó -proxy=<ip:port>. + + + Prune mode is incompatible with -blockfilterindex. + Tá mód bearrtha neamh-chomhoiriúnach le -blockfilterindex. + + + Reducing -maxconnections from %d to %d, because of system limitations. + Laghdú -maxconnections ó %d go %d, mar gheall ar shrianadh an chórais. + + + Section [%s] is not recognized. + Ní aithnítear rannán [%s]. + + + Signing transaction failed + Theip ar síniú idirbheart + + + Specified -walletdir "%s" does not exist + Níl -walletdir "%s" sonraithe ann + + + Specified -walletdir "%s" is a relative path + Is cosán spleách é -walletdir "%s" sonraithe + + + Specified -walletdir "%s" is not a directory + Ní eolaire é -walletdir "%s" sonraithe + + + The specified config file %s does not exist + + Níl an comhad cumraíochta sonraithe %s ann + + + + The transaction amount is too small to pay the fee + Tá suim an idirbhirt ró-bheag chun an táille a íoc + + + This is experimental software. + Is bogearraí turgnamhacha é seo. + + + Transaction amount too small + Méid an idirbhirt ró-bheag + + + Transaction too large + Idirbheart ró-mhór + + + Unable to bind to %s on this computer (bind returned error %s) + Ní féidir ceangal le %s ar an ríomhaire seo (thug ceangail earráid %s ar ais) + + + Unable to create the PID file '%s': %s + Níorbh fhéidir cruthú comhad PID '%s': %s + + + Unable to generate initial keys + Ní féidir eochracha tosaigh a ghiniúint + + + Unknown -blockfilterindex value %s. + Luach -blockfilterindex %s anaithnid. + + + Verifying wallet(s)... + Fíorú spará(i)n... + + + Warning: unknown new rules activated (versionbit %i) + Rabhadh: rialacha nua anaithnid gníomhachtaithe (versionbit %i) + + + -maxtxfee is set very high! Fees this large could be paid on a single transaction. + Tá -maxtxfee socraithe an-ard! D’fhéadfaí íoc ar tháillí chomh ard seo in idirbheart amháin. + + + This is the transaction fee you may pay when fee estimates are not available. + Seo an táille idirbhirt a fhéadfaidh tú íoc nuair nach bhfuil meastacháin táillí ar fáil. + + + Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments. + Sáraíonn fad iomlán na sreinge leagan líonra (%i) an fad uasta (%i). Laghdaigh líon nó méid na uacomments. + + + %s is set very high! + Tá %s socraithe an-ard! + + + Starting network threads... + Ag tosú snáitheanna líonra... + + + The wallet will avoid paying less than the minimum relay fee. + Seachnóidh an sparán níos lú ná an táille athsheachadán íosta a íoc. + + + This is the minimum transaction fee you pay on every transaction. + Is é seo an táille idirbhirt íosta a íocann tú ar gach idirbheart. + + + This is the transaction fee you will pay if you send a transaction. + Seo an táille idirbhirt a íocfaidh tú má sheolann tú idirbheart. + + + Transaction amounts must not be negative + Níor cheart go mbeadh suimeanna idirbhirt diúltach + + + Transaction has too long of a mempool chain + Tá slabhra mempool ró-fhada ag an idirbheart + + + Transaction must have at least one recipient + Caithfidh ar a laghad faighteoir amháin a bheith ag idirbheart + + + Unknown network specified in -onlynet: '%s' + Líonra anaithnid sonraithe san -onlynet: '%s' + + + Insufficient funds + Neamhleor ciste + + + Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable -fallbackfee. + Theip ar mheastachán táillí. Tá fallbackfee díchumasaithe. Fan cúpla bloc nó cumasaigh -fallbackfee. + + + Warning: Private keys detected in wallet {%s} with disabled private keys + Rabhadh: Eochracha príobháideacha braite i sparán {%s} le heochracha príobháideacha díchumasaithe + + + Cannot write to data directory '%s'; check permissions. + Ní féidir scríobh chuig eolaire sonraí '%s'; seiceáil ceadanna. + + + Loading block index... + Lódáil innéacs bloic... + + + Loading wallet... + Lódáil sparán... + + + Cannot downgrade wallet + Ní féidir íosghrádú sparán + + + Rescanning... + Ag athscanadh... + + + Done loading + Lódáil déanta + + + \ No newline at end of file diff --git a/src/qt/locale/bitcoin_gl.ts b/src/qt/locale/bitcoin_gl.ts new file mode 100644 index 000000000..7fe23b400 --- /dev/null +++ b/src/qt/locale/bitcoin_gl.ts @@ -0,0 +1,1921 @@ + + + AddressBookPage + + Create a new address + Crear un novo enderezo + + + &New + &Novo + + + Copy the currently selected address to the system clipboard + Copiar o enderezo seleccionado ao cartafol + + + &Copy + &Copiar + + + C&lose + &Pechar + + + Delete the currently selected address from the list + Borrar o enderezo actualmente seleccionado da listaxe + + + Enter address or label to search + Introduce enderezo ou etiqueta para buscar + + + Export the data in the current tab to a file + Exportar os datos da pestaña actual a un arquivo. + + + &Export + &Exportar + + + &Delete + &Borrar + + + Choose the address to send coins to + Escolle a dirección á que enviar moedas + + + Choose the address to receive coins with + Escolle a dirección da que recibir moedas + + + C&hoose + &Escoller + + + Sending addresses + Enviando enderezos + + + Receiving addresses + Recibindo enderezos + + + These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. + Estas son as túas direccións Bitcoin para enviar pagos. Revisa sempre a cantidade e a dirección receptora antes de enviar moedas. + + + &Copy Address + &Copiar Enderezo + + + Copy &Label + Copiar &Etiqueta + + + &Edit + &Editar + + + Export Address List + Exportar Lista de Enderezos + + + Comma separated file (*.csv) + Arquivo separado por comas (*.csv) + + + Exporting Failed + Exportación falida + + + + AddressTableModel + + Label + Etiqueta + + + Address + Enderezo + + + (no label) + (sen etiqueta) + + + + AskPassphraseDialog + + Passphrase Dialog + Diálogo de Contrasinal + + + Enter passphrase + Introduce contrasinal + + + New passphrase + Novo contrasinal + + + Repeat new passphrase + Repite novo contrasinal + + + Encrypt wallet + Encriptar moedeiro + + + This operation needs your wallet passphrase to unlock the wallet. + Esta operación precisa o contrasinal do teu moedeiro para desbloquear o moedeiro. + + + Unlock wallet + Desbloquear moedeiro + + + This operation needs your wallet passphrase to decrypt the wallet. + Esta operación precisa o contrasinal do teu moedeiro para desencriptar o moedeiro. + + + Decrypt wallet + Desencriptar moedeiro + + + Change passphrase + Cambiar contrasinal + + + Confirm wallet encryption + Confirmar encriptación de moedeiro + + + Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! + Precaución: Se encriptas o teu moedeiro e perdes o teu contrasinal, ti <b>PERDERÁS TÓDOLOS TEUS BITCOINS</b>! + + + Are you sure you wish to encrypt your wallet? + Estás seguro de que desexas encriptar o teu moedeiro? + + + Wallet encrypted + Moedeiro encriptado + + + IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. + IMPORTANTE: Calquera copia de seguridade previa que fixeses do teu arquivo de moedeiro debería ser substituída polo recén xerado arquivo encriptado de moedeiro. Por razóns de seguridade, as copias de seguridade previas de un arquivo de moedeiro desencriptado tornaránse inútiles no momento no que comeces a emprega-lo novo, encriptado, moedeiro. + + + Wallet encryption failed + Encriptación de moedeiro fallida + + + Wallet encryption failed due to an internal error. Your wallet was not encrypted. + A encriptación do moedeiro fallou por mor dun erro interno. O teu moedeiro non foi encriptado. + + + The supplied passphrases do not match. + Os contrasinais suministrados non coinciden. + + + Wallet unlock failed + Desbloqueo de moedeiro fallido + + + The passphrase entered for the wallet decryption was incorrect. + O contrasinal introducido para a desencriptación do moedeiro foi incorrecto. + + + Wallet decryption failed + Desencriptación de moedeiro fallida + + + Wallet passphrase was successfully changed. + Cambiouse con éxito o contrasinal do moedeiro. + + + Warning: The Caps Lock key is on! + Aviso: O Bloqueo de Maiúsculas está activo! + + + + BanTableModel + + + BitcoinGUI + + Sign &message... + &Asinar mensaxe... + + + Synchronizing with network... + Sincronizando coa rede... + + + &Overview + &Vista xeral + + + Show general overview of wallet + Amosar vista xeral do moedeiro + + + &Transactions + &Transaccións + + + Browse transaction history + Navegar historial de transaccións + + + E&xit + &Saír + + + Quit application + Saír da aplicación + + + About &Qt + Acerca de &Qt + + + Show information about Qt + Amosar información acerca de Qt + + + &Options... + &Opcións... + + + &Encrypt Wallet... + &Encriptar Moedeiro... + + + &Backup Wallet... + Copia de &Seguridade do Moedeiro... + + + &Change Passphrase... + &Cambiar contrasinal... + + + Wallet: + Moedeiro: + + + Reindexing blocks on disk... + Reindexando bloques no disco... + + + Send coins to a Bitcoin address + Enviar moedas a unha dirección Bitcoin + + + Backup wallet to another location + Facer copia de seguridade do moedeiro noutra localización + + + Change the passphrase used for wallet encryption + Cambiar o contrasinal empregado para a encriptación do moedeiro + + + &Verify message... + &Verificar mensaxe... + + + &Send + &Enviar + + + &Receive + &Recibir + + + &Show / Hide + &Amosar/Agachar + + + Show or hide the main Window + Amosar ou agachar a xanela principal + + + Encrypt the private keys that belong to your wallet + Encriptar as claves privadas que pertencen ao teu moedeiro + + + Sign messages with your Bitcoin addresses to prove you own them + Asina mensaxes cos teus enderezos Bitcoin para probar que che pertencen + + + Verify messages to ensure they were signed with specified Bitcoin addresses + Verifica mensaxes para asegurar que foron asinados con enderezos Bitcoin específicos. + + + &File + &Arquivo + + + &Settings + Axus&tes + + + &Help + A&xuda + + + Tabs toolbar + Barra de ferramentas + + + Request payments (generates QR codes and bitcoin: URIs) + Solicitar pagamentos (xera códigos QR e bitcoin: URIs) + + + Show the list of used sending addresses and labels + Amosar a listaxe de enderezos e etiquetas usadas para enviar + + + Show the list of used receiving addresses and labels + Amosar a listaxe de etiquetas e enderezos usadas para recibir + + + &Command-line options + Opcións da liña de comandos + + + %1 behind + %1 detrás + + + Last received block was generated %1 ago. + O último bloque recibido foi xerado fai %1. + + + Transactions after this will not yet be visible. + As transaccións despois desta non serán aínda visibles. + + + Error + Erro + + + Warning + Aviso + + + Information + Información + + + Up to date + Actualizado + + + Open Wallet + Abrir Moedeiro + + + Open a wallet + Abrir un moedeiro + + + Close Wallet... + Pechar Moedeiro... + + + Close wallet + Pechar moedeiro + + + default wallet + moedeiro por defecto + + + No wallets available + Non hai moedeiros dispoñíbeis + + + &Window + &Xanela + + + Minimize + Minimizar + + + Zoom + Zoom + + + Main Window + Xanela Principal + + + %1 client + %1 cliente + + + Catching up... + Poñendo ao día... + + + Sent transaction + Transacción enviada + + + Incoming transaction + Transacción entrante + + + Wallet is <b>encrypted</b> and currently <b>unlocked</b> + O moedeiro está <b>encriptado</b> e actualmente <b>desbloqueado</b> + + + Wallet is <b>encrypted</b> and currently <b>locked</b> + O moedeiro está <b>encriptado</b> e actualmente <b>bloqueado</b> + + + + CoinControlDialog + + Quantity: + Cantidade: + + + Bytes: + Bytes: + + + Amount: + Importe: + + + Fee: + Taxa: + + + Change: + Cambiar: + + + (un)select all + (des)selecciona todo + + + Tree mode + Modo árbore + + + List mode + Modo lista + + + Amount + Cantidade + + + Date + Data + + + Confirmations + Confirmacións + + + Confirmed + Confirmado + + + Copy address + Copiar dirección + + + Copy label + Copiar etiqueta + + + Copy amount + Copiar cantidade + + + Copy transaction ID + Copiar ID de transacción + + + Lock unspent + Bloquear o aforrado + + + Unlock unspent + Desbloquear o aforrado + + + Copy quantity + Copiar cantidade + + + Copy fee + Copiar pago + + + Copy after fee + Copiar despóis do pago + + + Copy bytes + Copiar bytes + + + Copy change + Copiar cambio + + + (%1 locked) + (%1 bloqueado) + + + yes + si + + + no + non + + + (no label) + (sen etiqueta) + + + (change) + (cambio) + + + + CreateWalletActivity + + + CreateWalletDialog + + Wallet + Moedeiro + + + + EditAddressDialog + + Edit Address + Modificar Enderezo + + + &Label + &Etiqueta + + + The label associated with this address list entry + A etiqueta asociada con esta entrada da listaxe de enderezos + + + The address associated with this address list entry. This can only be modified for sending addresses. + O enderezo asociado con esta entrada na listaxe de enderezos. Esta so pode ser modificada por enderezos para enviar. + + + &Address + &Enderezo + + + New sending address + Nova dirección para enviar + + + Edit receiving address + Modificar dirección para recibir + + + Edit sending address + Modificar dirección para enviar + + + The entered address "%1" is not a valid Bitcoin address. + A dirección introducida '%1' non é unha dirección Bitcoin válida. + + + Could not unlock wallet. + Non se puido desbloquear o moedeiro. + + + New key generation failed. + A xeración de nova clave fallou. + + + + FreespaceChecker + + A new data directory will be created. + Crearáse un novo directorio de datos. + + + name + nome + + + Directory already exists. Add %1 if you intend to create a new directory here. + O directorio xa existe. Engade %1 se queres crear un novo directorio aquí. + + + Path already exists, and is not a directory. + A ruta xa existe e non é un directorio. + + + Cannot create data directory here. + Non se pode crear directorio de datos aquí + + + + HelpMessageDialog + + version + versión + + + Command-line options + Opcións da liña de comandos + + + + Intro + + Welcome + Benvido + + + Welcome to %1. + Benvido a %1. + + + Use the default data directory + Empregar o directorio de datos por defecto + + + Use a custom data directory: + Empregar un directorio de datos personalizado + + + Bitcoin + Bitcoin + + + Error + Erro + + + + ModalOverlay + + Form + Formulario + + + Last block time + Hora do último bloque + + + calculating... + calculando... + + + + OpenURIDialog + + URI: + URI: + + + + OpenWalletActivity + + default wallet + moedeiro por defecto + + + + OptionsDialog + + Options + Opcións + + + &Main + &Principal + + + Reset all client options to default. + Restaurar todas as opcións de cliente ás por defecto + + + &Reset Options + Opcións de &Restaurar + + + &Network + &Rede + + + GB + GB + + + W&allet + Moedeiro + + + Expert + Experto + + + Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled. + Abrir automáticamente o porto do cliente Bitcoin no router. Esto so funciona se o teu router soporta UPnP e está habilitado. + + + Map port using &UPnP + Mapear porto empregando &UPnP + + + Proxy &IP: + &IP do Proxy: + + + &Port: + &Porto: + + + Port of the proxy (e.g. 9050) + Porto do proxy (exemplo: 9050) + + + IPv4 + IPv4 + + + IPv6 + IPv6 + + + Tor + Tor + + + &Window + &Xanela + + + Show only a tray icon after minimizing the window. + Amosar so unha icona na bandexa tras minimizar a xanela. + + + &Minimize to the tray instead of the taskbar + &Minimizar á bandexa en lugar de á barra de tarefas. + + + M&inimize on close + M&inimizar ao pechar + + + &Display + &Visualización + + + User Interface &language: + &Linguaxe de interface de usuario: + + + &Unit to show amounts in: + &Unidade na que amosar as cantidades: + + + Choose the default subdivision unit to show in the interface and when sending coins. + Escolle a unidade de subdivisión por defecto para amosar na interface e ao enviar moedas. + + + &OK + &OK + + + &Cancel + &Cancelar + + + default + por defecto + + + Confirm options reset + Confirmar opcións de restaurar + + + Configuration options + Opcións de configuración + + + Error + Erro + + + The configuration file could not be opened. + O arquivo de configuración non puido ser aberto. + + + This change would require a client restart. + Este cambio requeriría un reinicio do cliente. + + + The supplied proxy address is invalid. + O enderezo de proxy suministrado é inválido. + + + + OverviewPage + + Form + Formulario + + + The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. + A información amosada por estar desactualizada. O teu moedeiro sincronízase automáticamente coa rede Bitcoin despois de que se estableza unha conexión, mais este proceso non está todavía rematado. + + + Your current spendable balance + O teu balance actualmente dispoñible + + + Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance + Total de transaccións que aínda teñen que ser confirmadas, e non contan todavía dentro do balance gastable + + + Immature: + Inmaduro: + + + Mined balance that has not yet matured + O balance minado todavía non madurou + + + Total: + Total: + + + Your current total balance + O teu balance actual total + + + Recent transactions + Transaccións recentes + + + + PSBTOperationsDialog + + + PaymentServer + + Payment request error + Erro na solicitude de pagamento + + + URI handling + Manexo de URI + + + Invalid payment address %1 + Dirección de pago %1 inválida + + + + PeerTableModel + + + QObject + + Amount + Cantidade + + + %1 h + %1 h + + + %1 m + %1 m + + + N/A + N/A + + + %1 B + %1 B + + + %1 KB + %1 KB + + + %1 MB + %1 MB + + + %1 GB + %1 GB + + + Error: Specified data directory "%1" does not exist. + Erro: O directorio de datos especificado "%1" non existe. + + + unknown + descoñecido + + + + QRImageWidget + + &Save Image... + &Gardar Imaxe... + + + &Copy Image + &Copiar Imaxe + + + Resulting URI too long, try to reduce the text for label / message. + A URI resultante é demasiado larga, tenta reducir o texto para a etiqueta / mensaxe. + + + Error encoding URI into QR Code. + Erro codificando URI nun Código QR. + + + Save QR Code + Gardar Código QR + + + + RPCConsole + + N/A + N/A + + + Client version + Versión do cliente + + + &Information + &Información + + + Startup time + Tempo de arranque + + + Network + Rede + + + Number of connections + Número de conexións + + + Block chain + Cadea de bloques + + + Last block time + Hora do último bloque + + + &Open + &Abrir + + + &Console + &Consola + + + &Network Traffic + &Tráfico de Rede + + + Totals + Totais + + + In: + Dentro: + + + Out: + Fóra: + + + Debug log file + Arquivo de log de depuración + + + Clear console + Limpar consola + + + + ReceiveCoinsDialog + + &Amount: + &Cantidade: + + + &Label: + &Etiqueta: + + + &Message: + &Mensaxe: + + + Clear all fields of the form. + Limpar tódolos campos do formulario + + + Clear + Limpar + + + Copy label + Copiar etiqueta + + + Copy amount + Copiar cantidade + + + Could not unlock wallet. + Non se puido desbloquear o moedeiro. + + + + ReceiveRequestDialog + + Amount: + Importe: + + + Message: + Mensaxe: + + + Wallet: + Moedeiro: + + + Copy &URI + Copiar &URI + + + Copy &Address + Copiar &Enderezo + + + &Save Image... + &Gardar Imaxe... + + + Request payment to %1 + Solicitar pago a %1 + + + Payment information + Información de Pago + + + + RecentRequestsTableModel + + Date + Data + + + Label + Etiqueta + + + Message + Mensaxe + + + (no label) + (sen etiqueta) + + + + SendCoinsDialog + + Send Coins + Moedas Enviadas + + + Insufficient funds! + Fondos insuficientes + + + Quantity: + Cantidade: + + + Bytes: + Bytes: + + + Amount: + Importe: + + + Fee: + Taxa: + + + Change: + Cambiar: + + + Transaction Fee: + Tarifa de transacción: + + + Send to multiple recipients at once + Enviar a múltiples receptores á vez + + + Add &Recipient + Engadir &Receptor + + + Clear all fields of the form. + Limpar tódolos campos do formulario + + + Clear &All + Limpar &Todo + + + Balance: + Balance: + + + Confirm the send action + Confirmar a acción de envío + + + S&end + &Enviar + + + Copy quantity + Copiar cantidade + + + Copy amount + Copiar cantidade + + + Copy fee + Copiar pago + + + Copy after fee + Copiar despóis do pago + + + Copy bytes + Copiar bytes + + + Copy change + Copiar cambio + + + %1 to %2 + %1 a %2 + + + Are you sure you want to send? + Seguro que queres enviar? + + + Transaction fee + Tarifa de transacción + + + Confirm send coins + Confirmar envío de moedas + + + The amount to pay must be larger than 0. + A cantidade a pagar debe ser maior que 0. + + + The amount exceeds your balance. + A cantidade sobrepasa o teu balance. + + + The total exceeds your balance when the %1 transaction fee is included. + O total sobrepasa o teu balance cando se inclúe a tarifa de transacción %1. + + + Payment request expired. + Solicitude de pagamento expirada. + + + Warning: Invalid Bitcoin address + Atención: Enderezo Bitcoin non válido + + + Warning: Unknown change address + Atención: Enderezo de cambio desconocido + + + (no label) + (sen etiqueta) + + + + SendCoinsEntry + + A&mount: + &Cantidade: + + + Pay &To: + Pagar &A: + + + &Label: + &Etiqueta: + + + Choose previously used address + Escoller dirección previamente usada + + + Alt+A + Alt+A + + + Paste address from clipboard + Pegar enderezo dende portapapeis + + + Alt+P + Alt+P + + + Remove this entry + Eliminar esta entrada + + + Message: + Mensaxe: + + + Enter a label for this address to add it to the list of used addresses + Introduce unha etiqueta para esta dirección para engadila á listaxe de direccións empregadas + + + Pay To: + Pagar A: + + + Memo: + Memo: + + + + ShutdownWindow + + + SignVerifyMessageDialog + + Signatures - Sign / Verify a Message + Sinaturas - Asinar / Verificar unha Mensaxe + + + &Sign Message + &Asinar Mensaxe + + + Choose previously used address + Escoller dirección previamente usada + + + Alt+A + Alt+A + + + Paste address from clipboard + Pegar enderezo dende portapapeis + + + Alt+P + Alt+P + + + Enter the message you want to sign here + Introduce a mensaxe que queres asinar aquí + + + Signature + Sinatura + + + Copy the current signature to the system clipboard + Copiar a sinatura actual ao portapapeis do sistema + + + Sign the message to prove you own this Bitcoin address + Asina a mensaxe para probar que posúes este enderezo Bitcoin + + + Sign &Message + Asinar &Mensaxe + + + Reset all sign message fields + Restaurar todos os campos de sinatura de mensaxe + + + Clear &All + Limpar &Todo + + + &Verify Message + &Verificar Mensaxe + + + Verify the message to ensure it was signed with the specified Bitcoin address + Verificar a mensaxe para asegurar que foi asinada coa dirección Bitcoin especificada + + + Verify &Message + Verificar &Mensaxe + + + Reset all verify message fields + Restaurar todos os campos de verificación de mensaxe + + + Click "Sign Message" to generate signature + Click en "Asinar Mensaxe" para xerar sinatura + + + The entered address is invalid. + A dirección introducida é inválida. + + + Please check the address and try again. + Por favor comproba a dirección e proba de novo. + + + The entered address does not refer to a key. + A dirección introducida non se refire a ninguna clave. + + + Wallet unlock was cancelled. + Cancelouse o desbloqueo do moedeiro. + + + Private key for the entered address is not available. + A clave privada da dirección introducida non está dispoñible. + + + Message signing failed. + Fallou a sinatura da mensaxe. + + + Message signed. + Mensaxe asinada. + + + The signature could not be decoded. + A sinatura non puido ser decodificada. + + + Please check the signature and try again. + Por favor revise a sinatura e probe de novo. + + + The signature did not match the message digest. + A sinatura non coincide co resumo da mensaxe. + + + Message verification failed. + A verificación da mensaxe fallou. + + + Message verified. + Mensaxe verificada. + + + + TrafficGraphWidget + + KB/s + KB/s + + + + TransactionDesc + + Open until %1 + Aberto ata %1 + + + %1/unconfirmed + %1/sen confirmar + + + %1 confirmations + %1 confirmacións + + + Status + Estado + + + Date + Data + + + Source + Orixe + + + Generated + Xerado + + + From + Dende + + + unknown + descoñecido + + + To + A + + + own address + dirección propia + + + label + etiqueta + + + Credit + Crédito + + + not accepted + non aceptado + + + Debit + Débito + + + Transaction fee + Tarifa de transacción + + + Net amount + Cantidade neta + + + Message + Mensaxe + + + Comment + Comentario + + + Transaction ID + ID de Transacción + + + Merchant + Comerciante + + + Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. + As moedas xeradas deben madurar %1 bloques antes de que poidan ser gastadas. Cando xeraste este bloque, foi propagado á rede para ser engadido á cadeas de bloques. Se falla ao tentar meterse na cadea, o seu estado cambiará a "non aceptado" e non poderá ser gastado. Esto pode ocorrir ocasionalmente se outro nodo xera un bloque en poucos segundos de diferencia co teu. + + + Debug information + Información de depuración + + + Transaction + Transacción + + + Inputs + Entradas + + + Amount + Cantidade + + + true + verdadeiro + + + false + falso + + + + TransactionDescDialog + + This pane shows a detailed description of the transaction + Este panel amosa unha descripción detallada da transacción + + + + TransactionTableModel + + Date + Data + + + Type + Tipo + + + Label + Etiqueta + + + Open until %1 + Aberto ata %1 + + + Confirmed (%1 confirmations) + Confirmado (%1 confirmacións) + + + Generated but not accepted + Xerado pero non aceptado + + + Received with + Recibido con + + + Received from + Recibido de + + + Sent to + Enviado a + + + Payment to yourself + Pago a ti mesmo + + + Mined + Minado + + + (n/a) + (n/a) + + + (no label) + (sen etiqueta) + + + Transaction status. Hover over this field to show number of confirmations. + Estado da transacción. Pasa por riba deste campo para amosar o número de confirmacións. + + + Date and time that the transaction was received. + Data e hora na que foi recibida a transacción. + + + Type of transaction. + Tipo de transacción. + + + Amount removed from or added to balance. + Cantidade borrada ou engadida no balance. + + + + TransactionView + + All + Todo + + + Today + Hoxe + + + This week + Esta semana + + + This month + Este mes + + + Last month + O último mes + + + This year + Este ano + + + Range... + Periodo... + + + Received with + Recibido con + + + Sent to + Enviado a + + + To yourself + A ti mesmo + + + Mined + Minado + + + Other + Outro + + + Min amount + Cantidade mínima + + + Copy address + Copiar dirección + + + Copy label + Copiar etiqueta + + + Copy amount + Copiar cantidade + + + Copy transaction ID + Copiar ID de transacción + + + Edit label + Modificar etiqueta + + + Show transaction details + Amosar detalles da transacción + + + Export Transaction History + Exportar Historial de Transaccións + + + Comma separated file (*.csv) + Arquivo separado por comas (*.csv) + + + Confirmed + Confirmado + + + Date + Data + + + Type + Tipo + + + Label + Etiqueta + + + Address + Enderezo + + + ID + ID + + + Exporting Failed + Exportación falida + + + There was an error trying to save the transaction history to %1. + Houbo un erro intentando salvar o historial de transaccións a %1. + + + Exporting Successful + Exportado correctamente + + + The transaction history was successfully saved to %1. + O historial de transaccións foi salvado correctamente en %1. + + + Range: + Periodo: + + + to + a + + + + UnitDisplayStatusBarControl + + + WalletController + + Close wallet + Pechar moedeiro + + + + WalletFrame + + + WalletModel + + Send Coins + Moedas Enviadas + + + default wallet + moedeiro por defecto + + + + WalletView + + &Export + &Exportar + + + Export the data in the current tab to a file + Exportar os datos da pestaña actual a un arquivo. + + + Error + Erro + + + Backup Wallet + Copia de Seguridade de Moedeiro + + + Wallet Data (*.dat) + Datos de Moedeiro (*.dat) + + + Backup Failed + Copia de Seguridade Fallida + + + There was an error trying to save the wallet data to %1. + Houbo un erro intentando gardar os datos de moedeiro en %1. + + + Backup Successful + Copia de Seguridade Correcta + + + The wallet data was successfully saved to %1. + Os datos do moedeiro foron gardados correctamente en %1. + + + + bitcoin-core + + This is a pre-release test build - use at your own risk - do not use for mining or merchant applications + Esta é unha build de test pre-lanzamento - emprégaa baixo o teu propio risco - non empregar para minado ou aplicacións de comerciantes + + + Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. + Precaución: A rede non parece estar totalmente de acordo! Algúns mineitos parecen estar experimentando problemas. + + + Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. + Precaución: Non parece que esteamos totalmente de acordo cos nosos pares! Pode que precises actualizar, ou outros nodos poden precisar actualizarse. + + + Corrupted block database detected + Detectada base de datos de bloques corrupta. + + + Do you want to rebuild the block database now? + Queres reconstruír a base de datos de bloques agora? + + + Error initializing block database + Erro inicializando a base de datos de bloques + + + Error initializing wallet database environment %s! + Erro inicializando entorno de base de datos de moedeiro %s! + + + Error loading block database + Erro cargando base de datos do bloque + + + Error opening block database + Erro abrindo base de datos de bloques + + + Failed to listen on any port. Use -listen=0 if you want this. + Fallou escoitar en calquera porto. Emprega -listen=0 se queres isto. + + + Incorrect or no genesis block found. Wrong datadir for network? + Bloque xénese incorrecto ou non existente. Datadir erróneo para a rede? + + + Not enough file descriptors available. + Non hai suficientes descritores de arquivo dispoñibles. + + + Verifying blocks... + Verificando bloques... + + + Signing transaction failed + Fallou a sinatura da transacción + + + Transaction amount too small + A cantidade da transacción é demasiado pequena + + + Transaction too large + A transacción é demasiado grande + + + Unknown network specified in -onlynet: '%s' + Rede descoñecida especificada en -onlynet: '%s' + + + Insufficient funds + Fondos insuficientes + + + Loading block index... + Cargando índice de bloques... + + + Loading wallet... + Cargando moedeiro... + + + Cannot downgrade wallet + Non se pode desactualizar o moedeiro + + + Rescanning... + Rescaneando... + + + Done loading + Carga completa + + + \ No newline at end of file diff --git a/src/qt/locale/bitcoin_gu.ts b/src/qt/locale/bitcoin_gu.ts new file mode 100644 index 000000000..1d627cf86 --- /dev/null +++ b/src/qt/locale/bitcoin_gu.ts @@ -0,0 +1,343 @@ + + + AddressBookPage + + Right-click to edit address or label + સરનામું અથવા લેબલ બદલવા માટે જમણું-ક્લિક કરો + + + Create a new address + નવું સરનામું બનાવો + + + &New + નવું + + + Copy the currently selected address to the system clipboard + હાલમાં પસંદ કરેલા સરનામાંને સિસ્ટમ ક્લિપબોર્ડ પર નકલ કરો + + + &Copy + & નકલ કરો + + + C&lose + & બંધ કરો + + + Delete the currently selected address from the list + સૂચિમાંથી હાલમાં પસંદ કરેલું સરનામું કાઢી નાખો + + + Enter address or label to search + શોધવા માટે સરનામું અથવા લેબલ દાખલ કરો + + + Export the data in the current tab to a file + હાલ માં પસંદ કરેલ માહિતી ને ફાઇલમાં નિકાસ કરો + + + &Export + & નિકાસ કરો + + + &Delete + & કાઢી નાખો + + + Choose the address to send coins to + સિક્કા મોકલવા માટે સરનામું પસંદ કરો + + + Choose the address to receive coins with + સિક્કા મેળવવા માટે સરનામું પસંદ કરો + + + C&hoose + & પસંદ કરો + + + Sending addresses + મોકલવા માટે ના સરનામાં + + + Receiving addresses + મેળવવા માટે ના સરનામાં + + + These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. + આ તમારા ચુકવણી કરવા માટે ના સરનામાં છે, હંમેશા કિંમત અને મોકલવાના ના સરનામાં ચકાસી લેવા સિક્કા આપતા પહેલા. + + + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + આ તમારુ ચૂકવણું લેવા માટે નું સરનામા છે. નવું સરનામું બનાવા માટે "મેળવવા" માટે ની ટેબ માં "ચૂકવણું લેવા માટે નવું સરનામુ બનાવો" બટન વાપરો. +ડિજિટલી સહી કરવા માટે 'legacy એટલેકે જુના પ્રકાર નુ' પ્રકાર નું સરનામું હોવું જરૂરી છે. + + + &Copy Address + & સરનામુ નકલ કરો + + + Copy &Label + નકલ & લેબલ + + + &Edit + & બદલો + + + Export Address List + સરનામાં ની સૂચિ નો નિકાસ કરો + + + Comma separated file (*.csv) + અલ્પવિરામ થી જુદા પડલી માહિતી ની યાદી (*.csv) + + + Exporting Failed + નિકાસ ની પ્ર્રાક્રિયા નિષ્ફળ ગયેલ છે + + + + AddressTableModel + + Label + ચિઠ્ઠી + + + Address + સરનામુ + + + (no label) + લેબલ નથી + + + + AskPassphraseDialog + + Passphrase Dialog + ગુપ્ત શબ્દ માટે નુ ડાયલોગ + + + Enter passphrase + ગુપ્ત શબ્દ દાખલ કરો + + + New passphrase + નવો ગુપ્ત શબ્દ + + + Repeat new passphrase + ગુપ્ત શબ્દ ફરી નાખો + + + Show passphrase + ગુપ્ત શબ્દ જોવો + + + Encrypt wallet + સાંકેતિક પાકીટ + + + This operation needs your wallet passphrase to unlock the wallet. + પાકીટ અવલોકન જરુરી છે પાકીટ ઓપન કરવા માટે + + + Unlock wallet + પાકીટ ખુલ્લુ + + + This operation needs your wallet passphrase to decrypt the wallet. + પાકીટ કામગીરી જરુરી છે ગુપ્ત પાકીટ ડિક્રિપ્ટ કરવા માટે + + + Decrypt wallet + ડિક્રિપ્ટ પાકીટ + + + Change passphrase + ગુપ્ત શબ્દ બદલો + + + Confirm wallet encryption + એન્ક્રિપ્શન ખાતરી કરો + + + Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! + ચેતવણી: જો તમે તમારું વletલેટ એન્ક્રિપ્ટ કરો છો અને તમારો પાસફ્રેઝ ખોવાઈ જાય છે, તો તમે તમારા બધા બિટકોઇન્સ ગુમાવશો! + + + Are you sure you wish to encrypt your wallet? + શું તમે ખરેખર તમારા પાકીટને એન્ક્રિપ્ટ કરવા માંગો છો? + + + Wallet encrypted + પાકીટ એન્ક્રિપ્ટ થયેલ + + + + BanTableModel + + + BitcoinGUI + + + CoinControlDialog + + (no label) + લેબલ નથી + + + + CreateWalletActivity + + + CreateWalletDialog + + + EditAddressDialog + + + FreespaceChecker + + + HelpMessageDialog + + + Intro + + + ModalOverlay + + + OpenURIDialog + + + OpenWalletActivity + + + OptionsDialog + + + OverviewPage + + + PSBTOperationsDialog + + + PaymentServer + + + PeerTableModel + + + QObject + + + QRImageWidget + + + RPCConsole + + + ReceiveCoinsDialog + + + ReceiveRequestDialog + + + RecentRequestsTableModel + + Label + ચિઠ્ઠી + + + (no label) + લેબલ નથી + + + + SendCoinsDialog + + (no label) + લેબલ નથી + + + + SendCoinsEntry + + + ShutdownWindow + + + SignVerifyMessageDialog + + + TrafficGraphWidget + + + TransactionDesc + + + TransactionDescDialog + + + TransactionTableModel + + Label + ચિઠ્ઠી + + + (no label) + લેબલ નથી + + + + TransactionView + + Comma separated file (*.csv) + અલ્પવિરામ થી જુદા પડલી માહિતી ની યાદી (*.csv) + + + Label + ચિઠ્ઠી + + + Address + સરનામુ + + + Exporting Failed + નિકાસ ની પ્ર્રાક્રિયા નિષ્ફળ ગયેલ છે + + + + UnitDisplayStatusBarControl + + + WalletController + + + WalletFrame + + + WalletModel + + + WalletView + + &Export + & નિકાસ કરો + + + Export the data in the current tab to a file + હાલ માં પસંદ કરેલ માહિતી ને ફાઇલમાં નિકાસ કરો + + + + bitcoin-core + + \ No newline at end of file diff --git a/src/qt/locale/bitcoin_id.ts b/src/qt/locale/bitcoin_id.ts index e4ffeb2b8..bcad30b82 100644 --- a/src/qt/locale/bitcoin_id.ts +++ b/src/qt/locale/bitcoin_id.ts @@ -1045,7 +1045,7 @@ Signing is only possible with addresses of the type 'legacy'. %1 will download and store a copy of the Bitcoin block chain. - %1 akan mengunduh dan menyimpan salinan Bitcoin block chain. + %1 akan mengunduh dan menyimpan salinan Bitcoin blockchain. The wallet will also be stored in this directory. diff --git a/src/qt/locale/bitcoin_kl.ts b/src/qt/locale/bitcoin_kl.ts new file mode 100644 index 000000000..87a681ff7 --- /dev/null +++ b/src/qt/locale/bitcoin_kl.ts @@ -0,0 +1,347 @@ + + + AddressBookPage + + &New + &Nutaamik sanagit + + + &Copy + &Kopeeruk + + + C&lose + M&atuguk + + + Delete the currently selected address from the list + Allattorsimaffimminngaanniit toqqakkat peeruk + + + &Delete + &Peeruk + + + + AddressTableModel + + Label + Taaguut + + + + AskPassphraseDialog + + Enter passphrase + Isissutissaq allaguk + + + New passphrase + Isissutissaq nutaaq sanajuk + + + Repeat new passphrase + Isissutissaq ilaaqqiguk + + + Show passphrase + Isissutissaq nuisiguk + + + Encrypt wallet + Aningaasiviit kode-leruk + + + Unlock wallet + Aningaasiviit parnaarunnaaruk + + + Decrypt wallet + Aningaasivik kodea peeruk + + + Change passphrase + Isertaatik allanngortiguk + + + Confirm wallet encryption + Aningaasivippit matuersaataa uppernarsaruk + + + Wallet encrypted + Angingaasivik paasipuminaappoq + + + Wallet passphrase was successfully changed. + Aningaasiviup isissutissaa taarserpoq + + + + BanTableModel + + IP/Netmask + IP/Netmask + + + + BitcoinGUI + + Wallet: + Aningaasivik: + + + &Show / Hide + &Nuisiguk / Tarrisiguk + + + Open Wallet + Ammaruk aningaasivik + + + Amount: %1 + + Bitcoin amerlassusaa: %1 + + + + + CoinControlDialog + + Fee: + Akileraarut: + + + After Fee: + Akileraarut peereerlugu: + + + Amount + Bitcoin amerlassusaa + + + Date + Ulloq + + + Confirmations + Akuersissutit + + + Confirmed + Akuerineqarpoq + + + + CreateWalletActivity + + + CreateWalletDialog + + + EditAddressDialog + + &Label + &Taajuut + + + Could not unlock wallet. + Aningaasivik ammarneqanngilaq + + + + FreespaceChecker + + + HelpMessageDialog + + + Intro + + Welcome + Tikilluarit + + + Welcome to %1. + Tikilluarit uunga %1 + + + Bitcoin + Bitcoin + + + + ModalOverlay + + Hide + Tarrisiguk + + + Esc + Esc + + + + OpenURIDialog + + + OpenWalletActivity + + + OptionsDialog + + Options + Toqqagassat + + + + OverviewPage + + + PSBTOperationsDialog + + + PaymentServer + + + PeerTableModel + + + QObject + + Amount + Aningaasat amerlassusaa + + + %1 d + %1 d + + + %1 h + %1 t + + + %1 m + %1 m + + + %1 s + %1 s + + + + QRImageWidget + + + RPCConsole + + + ReceiveCoinsDialog + + Could not unlock wallet. + Aningaasivik ammarneqanngilaq + + + + ReceiveRequestDialog + + Wallet: + Aningaasivik: + + + + RecentRequestsTableModel + + Date + Ulloq + + + Label + Taaguut + + + + SendCoinsDialog + + Fee: + Akileraarut + + + After Fee: + Akileraarut peereerlugu: + + + Hide + Tarrisiguk + + + + SendCoinsEntry + + + ShutdownWindow + + + SignVerifyMessageDialog + + + TrafficGraphWidget + + + TransactionDesc + + Date + Ulloq + + + Amount + Aningaasat amerlassusaa + + + + TransactionDescDialog + + + TransactionTableModel + + Date + Ulloq + + + Label + Taaguut + + + + TransactionView + + Confirmed + Akuerineqarpoq + + + Date + Ulloq + + + Label + Taaguut + + + + UnitDisplayStatusBarControl + + + WalletController + + + WalletFrame + + + WalletModel + + + WalletView + + + bitcoin-core + + \ No newline at end of file diff --git a/src/qt/locale/bitcoin_ms.ts b/src/qt/locale/bitcoin_ms.ts new file mode 100644 index 000000000..c7fffe750 --- /dev/null +++ b/src/qt/locale/bitcoin_ms.ts @@ -0,0 +1,4114 @@ + + + AddressBookPage + + Right-click to edit address or label + Klik-kanan untuk edit alamat ataupun label + + + Create a new address + Cipta alamat baru + + + &New + &Baru + + + Copy the currently selected address to the system clipboard + Salin alamat terpilih ke dalam sistem papan klip + + + &Copy + &Salin + + + C&lose + &Tutup + + + Delete the currently selected address from the list + Padam alamat semasa yang dipilih dari senaraiyang dipilih dari senarai + + + Enter address or label to search + Masukkan alamat atau label untuk carian + + + + Export the data in the current tab to a file + +Alihkan fail data ke dalam tab semasa + + + &Export + &Eksport + + + &Delete + &Padam + + + Choose the address to send coins to + Pilih alamat untuk hantar koin kepada + + + Choose the address to receive coins with + Pilih alamat untuk menerima koin dengan + + + C&hoose + &Pilih + + + Sending addresses + alamat-alamat penghantaran + + + Receiving addresses + alamat-alamat penerimaan + + + These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. + Ini adalah alamat Bitcoin anda untuk pembayaran. Periksa jumlah dan alamat penerima sebelum membuat penghantaran koin sentiasa. + + + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + + + &Copy Address + &Salin Aamat + + + Copy &Label + Salin & Label + + + &Edit + &Edit + + + Export Address List + Eskport Senarai Alamat + + + Comma separated file (*.csv) + Fail dibahagi oleh koma(*.csv) + + + Exporting Failed + Mengeksport Gagal + + + There was an error trying to save the address list to %1. Please try again. + Terdapat ralat semasa cubaan menyimpan senarai alamat kepada %1. Sila cuba lagi. + + + + AddressTableModel + + Label + Label + + + Address + Alamat + + + (no label) + (tiada label) + + + + AskPassphraseDialog + + Passphrase Dialog + Dialog frasa laluan + + + Enter passphrase + memasukkan frasa laluan + + + New passphrase + Frasa laluan baru + + + Repeat new passphrase + Ulangi frasa laluan baru + + + Show passphrase + Show passphrase + + + Encrypt wallet + Dompet encrypt + + + This operation needs your wallet passphrase to unlock the wallet. + Operasi ini perlukan frasa laluan dompet anda untuk membuka kunci dompet. + + + Unlock wallet + Membuka kunci dompet + + + This operation needs your wallet passphrase to decrypt the wallet. + Operasi ini memerlukan frasa laluan dompet anda untuk menyahsulit dompet. + + + Decrypt wallet + Menyahsulit dompet + + + Change passphrase + Menukar frasa laluan + + + Confirm wallet encryption + Mengesahkan enkripsi dompet + + + Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>! + Amaran: Jika anda enkripkan dompet anda dan hilangkan frasa laluan, anda akan <b>ANDA AKAN HILANGKAN SEMUA BITCOIN ANDA</b>! + + + Are you sure you wish to encrypt your wallet? + Anda pasti untuk membuat enkripsi dompet anda? + + + Wallet encrypted + Dompet dienkripsi + + + Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. + Enter the new passphrase for the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>. + + + Enter the old passphrase and new passphrase for the wallet. + Enter the old passphrase and new passphrase for the wallet. + + + Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. + Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer. + + + Wallet to be encrypted + Wallet to be encrypted + + + Your wallet is about to be encrypted. + Your wallet is about to be encrypted. + + + Your wallet is now encrypted. + Your wallet is now encrypted. + + + IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet. + PENTING: Apa-apa sandaran yang anda buat sebelum ini untuk fail dompet anda hendaklah digantikan dengan fail dompet enkripsi yang dijana baru. Untuk sebab-sebab keselamatan , sandaran fail dompet yang belum dibuat enkripsi sebelum ini akan menjadi tidak berguna secepat anda mula guna dompet enkripsi baru. + + + Wallet encryption failed + Enkripsi dompet gagal + + + Wallet encryption failed due to an internal error. Your wallet was not encrypted. + Enkripsi dompet gagal kerana ralat dalaman. Dompet anda tidak dienkripkan. + + + The supplied passphrases do not match. + Frasa laluan yang dibekalkan tidak sepadan. + + + Wallet unlock failed + Pembukaan kunci dompet gagal + + + The passphrase entered for the wallet decryption was incorrect. + Frasa laluan dimasukki untuk dekripsi dompet adalah tidak betul. + + + Wallet decryption failed + Dekripsi dompet gagal + + + Wallet passphrase was successfully changed. + Frasa laluan dompet berjaya ditukar. + + + Warning: The Caps Lock key is on! + Amaran: Kunci Caps Lock buka! + + + + BanTableModel + + IP/Netmask + IP/Netmask + + + Banned Until + Diharamkan sehingga + + + + BitcoinGUI + + Sign &message... + Tandatangan & mesej... + + + Synchronizing with network... + Penyegerakan dengan rangkaian... + + + &Overview + &Gambaran Keseluruhan + + + Show general overview of wallet + Tunjuk gambaran keseluruhan umum dompet + + + &Transactions + &Transaksi + + + Browse transaction history + Menyemak imbas sejarah transaksi + + + E&xit + &Keluar + + + Quit application + Berhenti aplikasi + + + &About %1 + &Mengenai%1 + + + Show information about %1 + Menunjuk informasi mengenai%1 + + + About &Qt + Mengenai &Qt + + + Show information about Qt + Menunjuk informasi megenai Qt + + + &Options... + Pilihan + + + Modify configuration options for %1 + Mengubah suai pilihan konfigurasi untuk %1 + + + &Encrypt Wallet... + &Enkripsi Dompet + + + &Backup Wallet... + &Dompet Sandaran... + + + &Change Passphrase... + &Menukar frasa-laluan + + + Open &URI... + Buka &URI... + + + Create Wallet... + Create Wallet... + + + Create a new wallet + Create a new wallet + + + Wallet: + dompet + + + Click to disable network activity. + Tekan untuk lumpuhkan rangkaian + + + Network activity disabled. + Aktiviti rangkaian dilumpuhkan + + + Click to enable network activity again. + Tekan untuk mengaktifkan rangkain semula + + + Syncing Headers (%1%)... + Penyelarasn tajuk (%1%)... + + + Reindexing blocks on disk... + Reindexi blok pada cakera... + + + Proxy is <b>enabled</b>: %1 + Proxy is <b>enabled</b>: %1 + + + Send coins to a Bitcoin address + Menghantar koin kepada alamat Bitcoin + + + Backup wallet to another location + Wallet sandaran ke lokasi lain + + + Change the passphrase used for wallet encryption + Tukar kata laluan untuk dompet disulitkan + + + &Verify message... + sahkan mesej + + + &Send + hantar + + + &Receive + terima + + + &Show / Hide + &tunjuk/sembunyi + + + Show or hide the main Window + tunjuk atau sembunyi tetingkap utama + + + Encrypt the private keys that belong to your wallet + sulitkan kata laluan milik peribadi anda + + + Sign messages with your Bitcoin addresses to prove you own them + sahkan mesej bersama alamat bitcoin anda untuk menunjukkan alamat ini anda punya + + + Verify messages to ensure they were signed with specified Bitcoin addresses + Sahkan mesej untuk memastikan mereka telah ditandatangani dengan alamat Bitcoin yang ditentukan + + + &File + fail + + + &Settings + tetapan + + + &Help + tolong + + + Tabs toolbar + Bar alat tab + + + + Request payments (generates QR codes and bitcoin: URIs) + Request payments (generates QR codes and bitcoin: URIs) + + + + Show the list of used sending addresses and labels + Tunjukkan senarai alamat dan label yang digunakan + + + + Show the list of used receiving addresses and labels + Show the list of used receiving addresses and labels + + + &Command-line options + &Command-line options + + + %n active connection(s) to Bitcoin network + %n active connections to Bitcoin network + + + Indexing blocks on disk... + Indexing blocks on disk... + + + Processing blocks on disk... + Processing blocks on disk... + + + Processed %n block(s) of transaction history. + Processed %n blocks of transaction history. + + + %1 behind + %1 behind + + + Last received block was generated %1 ago. + Last received block was generated %1 ago. + + + Transactions after this will not yet be visible. + Transactions after this will not yet be visible. + + + Error + Ralat + + + Warning + Amaran + + + Information + Notis + + + Up to date + Terkini + + + &Load PSBT from file... + &Load PSBT from file... + + + Load Partially Signed Bitcoin Transaction + Load Partially Signed Bitcoin Transaction + + + Load PSBT from clipboard... + Load PSBT from clipboard... + + + Load Partially Signed Bitcoin Transaction from clipboard + Load Partially Signed Bitcoin Transaction from clipboard + + + Node window + Node window + + + Open node debugging and diagnostic console + Open node debugging and diagnostic console + + + &Sending addresses + &Sending addresses + + + &Receiving addresses + &Receiving addresses + + + Open a bitcoin: URI + Open a bitcoin: URI + + + Open Wallet + Buka Wallet + + + Open a wallet + Open a wallet + + + Close Wallet... + Tutup Wallet... + + + Close wallet + Tutup Wallet + + + Close All Wallets... + Close All Wallets... + + + Close all wallets + Close all wallets + + + Show the %1 help message to get a list with possible Bitcoin command-line options + Show the %1 help message to get a list with possible Bitcoin command-line options + + + &Mask values + &Mask values + + + Mask the values in the Overview tab + Mask the values in the Overview tab + + + default wallet + dompet lalai + + + + No wallets available + No wallets available + + + &Window + &Window + + + Minimize + Minimize + + + Zoom + Zoom + + + Main Window + Main Window + + + %1 client + %1 client + + + Connecting to peers... + Connecting to peers... + + + Catching up... + Catching up... + + + Error: %1 + Error: %1 + + + Warning: %1 + Warning: %1 + + + Date: %1 + + Date: %1 + + + + Amount: %1 + + Amount: %1 + + + + Wallet: %1 + + Wallet: %1 + + + + Type: %1 + + Type: %1 + + + + Label: %1 + + Label: %1 + + + + Address: %1 + + Address: %1 + + + + Sent transaction + Sent transaction + + + Incoming transaction + Incoming transaction + + + HD key generation is <b>enabled</b> + HD key generation is <b>enabled</b> + + + HD key generation is <b>disabled</b> + HD key generation is <b>disabled</b> + + + Private key <b>disabled</b> + Private key <b>disabled</b> + + + Wallet is <b>encrypted</b> and currently <b>unlocked</b> + Wallet is <b>encrypted</b> and currently <b>unlocked</b> + + + Wallet is <b>encrypted</b> and currently <b>locked</b> + Wallet is <b>encrypted</b> and currently <b>locked</b> + + + Original message: + Original message: + + + A fatal error occurred. %1 can no longer continue safely and will quit. + A fatal error occurred. %1 can no longer continue safely and will quit. + + + + CoinControlDialog + + Coin Selection + Coin Selection + + + Quantity: + Quantity: + + + Bytes: + Bytes: + + + Amount: + Amount: + + + Fee: + Fee: + + + Dust: + Dust: + + + After Fee: + After Fee: + + + Change: + Change: + + + (un)select all + (un)select all + + + Tree mode + Tree mode + + + List mode + List mode + + + Amount + Amount + + + Received with label + Received with label + + + Received with address + Received with address + + + Date + Date + + + Confirmations + Confirmations + + + Confirmed + Confirmed + + + Copy address + Copy address + + + Copy label + Copy label + + + Copy amount + Copy amount + + + Copy transaction ID + Copy transaction ID + + + Lock unspent + Lock unspent + + + Unlock unspent + Unlock unspent + + + Copy quantity + Copy quantity + + + Copy fee + Copy fee + + + Copy after fee + Copy after fee + + + Copy bytes + Copy bytes + + + Copy dust + Copy dust + + + Copy change + Copy change + + + (%1 locked) + (%1 locked) + + + yes + yes + + + no + no + + + This label turns red if any recipient receives an amount smaller than the current dust threshold. + This label turns red if any recipient receives an amount smaller than the current dust threshold. + + + Can vary +/- %1 satoshi(s) per input. + Can vary +/- %1 satoshi(s) per input. + + + (no label) + (tiada label) + + + change from %1 (%2) + change from %1 (%2) + + + (change) + (change) + + + + CreateWalletActivity + + Creating Wallet <b>%1</b>... + Creating Wallet <b>%1</b>... + + + Create wallet failed + Create wallet failed + + + Create wallet warning + Create wallet warning + + + + CreateWalletDialog + + Create Wallet + Create Wallet + + + Wallet + dompet + + + Wallet Name + Wallet Name + + + Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. + Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice. + + + Encrypt Wallet + Encrypt Wallet + + + Advanced Options + Advanced Options + + + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. + Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets. + + + Disable Private Keys + Disable Private Keys + + + Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. + Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time. + + + Make Blank Wallet + Make Blank Wallet + + + Use descriptors for scriptPubKey management + Use descriptors for scriptPubKey management + + + Descriptor Wallet + Descriptor Wallet + + + Create + Create + + + Compiled without sqlite support (required for descriptor wallets) + Compiled without sqlite support (required for descriptor wallets) + + + + EditAddressDialog + + Edit Address + Alamat + + + &Label + &Label + + + The label associated with this address list entry + The label associated with this address list entry + + + The address associated with this address list entry. This can only be modified for sending addresses. + The address associated with this address list entry. This can only be modified for sending addresses. + + + &Address + Alamat + + + New sending address + New sending address + + + Edit receiving address + Edit receiving address + + + Edit sending address + Edit sending address + + + The entered address "%1" is not a valid Bitcoin address. + The entered address "%1" is not a valid Bitcoin address. + + + Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address. + Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address. + + + The entered address "%1" is already in the address book with label "%2". + The entered address "%1" is already in the address book with label "%2". + + + Could not unlock wallet. + Could not unlock wallet. + + + New key generation failed. + New key generation failed. + + + + FreespaceChecker + + A new data directory will be created. + A new data directory will be created. + + + name + name + + + Directory already exists. Add %1 if you intend to create a new directory here. + Directory already exists. Add %1 if you intend to create a new directory here. + + + Path already exists, and is not a directory. + Path already exists, and is not a directory. + + + Cannot create data directory here. + Cannot create data directory here. + + + + HelpMessageDialog + + version + version + + + About %1 + About %1 + + + Command-line options + Command-line options + + + + Intro + + Welcome + Welcome + + + Welcome to %1. + Welcome to %1. + + + As this is the first time the program is launched, you can choose where %1 will store its data. + As this is the first time the program is launched, you can choose where %1 will store its data. + + + When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. + When you click OK, %1 will begin to download and process the full %4 block chain (%2GB) starting with the earliest transactions in %3 when %4 initially launched. + + + Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. + Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features. + + + This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. + This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off. + + + If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. + If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low. + + + Use the default data directory + Use the default data directory + + + Use a custom data directory: + Use a custom data directory: + + + Bitcoin + Bitcoin + + + Discard blocks after verification, except most recent %1 GB (prune) + Discard blocks after verification, except most recent %1 GB (prune) + + + At least %1 GB of data will be stored in this directory, and it will grow over time. + At least %1 GB of data will be stored in this directory, and it will grow over time. + + + Approximately %1 GB of data will be stored in this directory. + Approximately %1 GB of data will be stored in this directory. + + + %1 will download and store a copy of the Bitcoin block chain. + %1 will download and store a copy of the Bitcoin block chain. + + + The wallet will also be stored in this directory. + The wallet will also be stored in this directory. + + + Error: Specified data directory "%1" cannot be created. + Error: Specified data directory "%1" cannot be created. + + + Error + Ralat + + + %n GB of free space available + %n GB of free space available + + + (of %n GB needed) + (of %n GB needed) + + + (%n GB needed for full chain) + (%n GB needed for full chain) + + + + ModalOverlay + + Form + Form + + + Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. + Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below. + + + Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network. + Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network. + + + Number of blocks left + Number of blocks left + + + Unknown... + Unknown... + + + Last block time + Last block time + + + Progress + Progress + + + Progress increase per hour + Progress increase per hour + + + calculating... + calculating... + + + Estimated time left until synced + Estimated time left until synced + + + Hide + Hide + + + Esc + Esc + + + %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. + %1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain. + + + Unknown. Syncing Headers (%1, %2%)... + Unknown. Syncing Headers (%1, %2%)... + + + + OpenURIDialog + + Open bitcoin URI + Open bitcoin URI + + + URI: + URI: + + + + OpenWalletActivity + + Open wallet failed + Open wallet failed + + + Open wallet warning + Open wallet warning + + + default wallet + dompet lalai + + + + Opening Wallet <b>%1</b>... + Buka sedang Wallet <b>%1</b>... + + + + OptionsDialog + + Options + Options + + + &Main + &Main + + + Automatically start %1 after logging in to the system. + Automatically start %1 after logging in to the system. + + + &Start %1 on system login + &Start %1 on system login + + + Size of &database cache + Size of &database cache + + + Number of script &verification threads + Number of script &verification threads + + + IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1) + IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1) + + + Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type. + Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type. + + + Hide the icon from the system tray. + Hide the icon from the system tray. + + + &Hide tray icon + &Hide tray icon + + + Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu. + Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu. + + + Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. + Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |. + + + Open the %1 configuration file from the working directory. + Open the %1 configuration file from the working directory. + + + Open Configuration File + Open Configuration File + + + Reset all client options to default. + Reset all client options to default. + + + &Reset Options + &Reset Options + + + &Network + &Network + + + Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. + Disables some advanced features but all blocks will still be fully validated. Reverting this setting requires re-downloading the entire blockchain. Actual disk usage may be somewhat higher. + + + Prune &block storage to + Prune &block storage to + + + GB + GB + + + Reverting this setting requires re-downloading the entire blockchain. + Reverting this setting requires re-downloading the entire blockchain. + + + MiB + MiB + + + (0 = auto, <0 = leave that many cores free) + (0 = auto, <0 = leave that many cores free) + + + W&allet + W&allet + + + Expert + Expert + + + Enable coin &control features + Enable coin &control features + + + If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed. + If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed. + + + &Spend unconfirmed change + &Spend unconfirmed change + + + Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled. + Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled. + + + Map port using &UPnP + Map port using &UPnP + + + Accept connections from outside. + Accept connections from outside. + + + Allow incomin&g connections + Allow incomin&g connections + + + Connect to the Bitcoin network through a SOCKS5 proxy. + Connect to the Bitcoin network through a SOCKS5 proxy. + + + &Connect through SOCKS5 proxy (default proxy): + &Connect through SOCKS5 proxy (default proxy): + + + Proxy &IP: + Proxy &IP: + + + &Port: + &Port: + + + Port of the proxy (e.g. 9050) + Port of the proxy (e.g. 9050) + + + Used for reaching peers via: + Used for reaching peers via: + + + IPv4 + IPv4 + + + IPv6 + IPv6 + + + Tor + Tor + + + &Window + &Window + + + Show only a tray icon after minimizing the window. + Show only a tray icon after minimizing the window. + + + &Minimize to the tray instead of the taskbar + &Minimize to the tray instead of the taskbar + + + M&inimize on close + M&inimize on close + + + &Display + &Display + + + User Interface &language: + User Interface &language: + + + The user interface language can be set here. This setting will take effect after restarting %1. + The user interface language can be set here. This setting will take effect after restarting %1. + + + &Unit to show amounts in: + &Unit to show amounts in: + + + Choose the default subdivision unit to show in the interface and when sending coins. + Choose the default subdivision unit to show in the interface and when sending coins. + + + Whether to show coin control features or not. + Whether to show coin control features or not. + + + Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. + Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services. + + + Use separate SOCKS&5 proxy to reach peers via Tor onion services: + Use separate SOCKS&5 proxy to reach peers via Tor onion services: + + + &Third party transaction URLs + &Third party transaction URLs + + + Options set in this dialog are overridden by the command line or in the configuration file: + Options set in this dialog are overridden by the command line or in the configuration file: + + + &OK + &OK + + + &Cancel + &Cancel + + + default + default + + + none + none + + + Confirm options reset + Confirm options reset + + + Client restart required to activate changes. + Client restart required to activate changes. + + + Client will be shut down. Do you want to proceed? + Client will be shut down. Do you want to proceed? + + + Configuration options + Configuration options + + + The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file. + The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file. + + + Error + Ralat + + + The configuration file could not be opened. + The configuration file could not be opened. + + + This change would require a client restart. + This change would require a client restart. + + + The supplied proxy address is invalid. + The supplied proxy address is invalid. + + + + OverviewPage + + Form + Form + + + The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. + The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet. + + + Watch-only: + Watch-only: + + + Available: + Available: + + + Your current spendable balance + Your current spendable balance + + + Pending: + Pending: + + + Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance + Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance + + + Immature: + Immature: + + + Mined balance that has not yet matured + Mined balance that has not yet matured + + + Balances + Balances + + + Total: + Total: + + + Your current total balance + Your current total balance + + + Your current balance in watch-only addresses + Your current balance in watch-only addresses + + + Spendable: + Spendable: + + + Recent transactions + Recent transactions + + + Unconfirmed transactions to watch-only addresses + Unconfirmed transactions to watch-only addresses + + + Mined balance in watch-only addresses that has not yet matured + Mined balance in watch-only addresses that has not yet matured + + + Current total balance in watch-only addresses + Current total balance in watch-only addresses + + + Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. + Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings->Mask values. + + + + PSBTOperationsDialog + + Dialog + Dialog + + + Sign Tx + Sign Tx + + + Broadcast Tx + Broadcast Tx + + + Copy to Clipboard + Copy to Clipboard + + + Save... + Save... + + + Close + Close + + + Failed to load transaction: %1 + Failed to load transaction: %1 + + + Failed to sign transaction: %1 + Failed to sign transaction: %1 + + + Could not sign any more inputs. + Could not sign any more inputs. + + + Signed %1 inputs, but more signatures are still required. + Signed %1 inputs, but more signatures are still required. + + + Signed transaction successfully. Transaction is ready to broadcast. + Signed transaction successfully. Transaction is ready to broadcast. + + + Unknown error processing transaction. + Unknown error processing transaction. + + + Transaction broadcast successfully! Transaction ID: %1 + Transaction broadcast successfully! Transaction ID: %1 + + + Transaction broadcast failed: %1 + Transaction broadcast failed: %1 + + + PSBT copied to clipboard. + PSBT copied to clipboard. + + + Save Transaction Data + Save Transaction Data + + + Partially Signed Transaction (Binary) (*.psbt) + Partially Signed Transaction (Binary) (*.psbt) + + + PSBT saved to disk. + PSBT saved to disk. + + + * Sends %1 to %2 + * Sends %1 to %2 + + + Unable to calculate transaction fee or total transaction amount. + Unable to calculate transaction fee or total transaction amount. + + + Pays transaction fee: + Pays transaction fee: + + + Total Amount + Total Amount + + + or + or + + + Transaction has %1 unsigned inputs. + Transaction has %1 unsigned inputs. + + + Transaction is missing some information about inputs. + Transaction is missing some information about inputs. + + + Transaction still needs signature(s). + Transaction still needs signature(s). + + + (But this wallet cannot sign transactions.) + (But this wallet cannot sign transactions.) + + + (But this wallet does not have the right keys.) + (But this wallet does not have the right keys.) + + + Transaction is fully signed and ready for broadcast. + Transaction is fully signed and ready for broadcast. + + + Transaction status is unknown. + Transaction status is unknown. + + + + PaymentServer + + Payment request error + Payment request error + + + Cannot start bitcoin: click-to-pay handler + Cannot start bitcoin: click-to-pay handler + + + URI handling + URI handling + + + 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. + 'bitcoin://' is not a valid URI. Use 'bitcoin:' instead. + + + Cannot process payment request because BIP70 is not supported. + Cannot process payment request because BIP70 is not supported. + + + Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. + Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored. + + + If you are receiving this error you should request the merchant provide a BIP21 compatible URI. + If you are receiving this error you should request the merchant provide a BIP21 compatible URI. + + + Invalid payment address %1 + Invalid payment address %1 + + + URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters. + URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters. + + + Payment request file handling + Payment request file handling + + + + PeerTableModel + + User Agent + User Agent + + + Node/Service + Node/Service + + + NodeId + NodeId + + + Ping + Ping + + + Sent + Sent + + + Received + Received + + + + QObject + + Amount + Amount + + + Enter a Bitcoin address (e.g. %1) + Enter a Bitcoin address (e.g. %1) + + + %1 d + %1 d + + + %1 h + %1 h + + + %1 m + %1 m + + + %1 s + %1 s + + + None + None + + + N/A + N/A + + + %1 ms + %1 ms + + + %n second(s) + %n seconds + + + %n minute(s) + %n minutes + + + %n hour(s) + %n hours + + + %n day(s) + %n days + + + %n week(s) + %n weeks + + + %1 and %2 + %1 and %2 + + + %n year(s) + %n years + + + %1 B + %1 B + + + %1 KB + %1 KB + + + %1 MB + %1 MB + + + %1 GB + %1 GB + + + Error: Specified data directory "%1" does not exist. + Error: Specified data directory "%1" does not exist. + + + Error: Cannot parse configuration file: %1. + Error: Cannot parse configuration file: %1. + + + Error: %1 + Error: %1 + + + Error initializing settings: %1 + Error initializing settings: %1 + + + %1 didn't yet exit safely... + %1 didn't yet exit safely... + + + unknown + unknown + + + + QRImageWidget + + &Save Image... + &Save Image... + + + &Copy Image + &Copy Image + + + Resulting URI too long, try to reduce the text for label / message. + Resulting URI too long, try to reduce the text for label / message. + + + Error encoding URI into QR Code. + Error encoding URI into QR Code. + + + QR code support not available. + QR code support not available. + + + Save QR Code + Save QR Code + + + PNG Image (*.png) + PNG Image (*.png) + + + + RPCConsole + + N/A + N/A + + + Client version + Client version + + + &Information + &Information + + + General + General + + + Using BerkeleyDB version + Using BerkeleyDB version + + + Datadir + Datadir + + + To specify a non-default location of the data directory use the '%1' option. + To specify a non-default location of the data directory use the '%1' option. + + + Blocksdir + Blocksdir + + + To specify a non-default location of the blocks directory use the '%1' option. + To specify a non-default location of the blocks directory use the '%1' option. + + + Startup time + Startup time + + + Network + Network + + + Name + Name + + + Number of connections + Number of connections + + + Block chain + Block chain + + + Memory Pool + Memory Pool + + + Current number of transactions + Current number of transactions + + + Memory usage + Memory usage + + + Wallet: + Wallet: + + + (none) + (none) + + + &Reset + &Reset + + + Received + Received + + + Sent + Sent + + + &Peers + &Peers + + + Banned peers + Banned peers + + + Select a peer to view detailed information. + Select a peer to view detailed information. + + + Direction + Direction + + + Version + Version + + + Starting Block + Starting Block + + + Synced Headers + Synced Headers + + + Synced Blocks + Synced Blocks + + + The mapped Autonomous System used for diversifying peer selection. + The mapped Autonomous System used for diversifying peer selection. + + + Mapped AS + Mapped AS + + + User Agent + User Agent + + + Node window + Node window + + + Current block height + Current block height + + + Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. + Open the %1 debug log file from the current data directory. This can take a few seconds for large log files. + + + Decrease font size + Decrease font size + + + Increase font size + Increase font size + + + Permissions + Permissions + + + Services + Services + + + Connection Time + Connection Time + + + Last Send + Last Send + + + Last Receive + Last Receive + + + Ping Time + Ping Time + + + The duration of a currently outstanding ping. + The duration of a currently outstanding ping. + + + Ping Wait + Ping Wait + + + Min Ping + Min Ping + + + Time Offset + Time Offset + + + Last block time + Last block time + + + &Open + &Open + + + &Console + &Console + + + &Network Traffic + &Network Traffic + + + Totals + Totals + + + In: + In: + + + Out: + Out: + + + Debug log file + Debug log file + + + Clear console + Clear console + + + 1 &hour + 1 &hour + + + 1 &day + 1 &day + + + 1 &week + 1 &week + + + 1 &year + 1 &year + + + &Disconnect + &Disconnect + + + Ban for + Ban for + + + &Unban + &Unban + + + Welcome to the %1 RPC console. + Welcome to the %1 RPC console. + + + Use up and down arrows to navigate history, and %1 to clear screen. + Use up and down arrows to navigate history, and %1 to clear screen. + + + Type %1 for an overview of available commands. + Type %1 for an overview of available commands. + + + For more information on using this console type %1. + For more information on using this console type %1. + + + WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. + WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command. + + + Network activity disabled + Network activity disabled + + + Executing command without any wallet + Executing command without any wallet + + + Executing command using "%1" wallet + Executing command using "%1" wallet + + + (node id: %1) + (node id: %1) + + + via %1 + via %1 + + + never + never + + + Inbound + Inbound + + + Outbound + Outbound + + + Unknown + Unknown + + + + ReceiveCoinsDialog + + &Amount: + &Amount: + + + &Label: + &Label: + + + &Message: + &Message: + + + An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network. + An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network. + + + An optional label to associate with the new receiving address. + An optional label to associate with the new receiving address. + + + Use this form to request payments. All fields are <b>optional</b>. + Use this form to request payments. All fields are <b>optional</b>. + + + An optional amount to request. Leave this empty or zero to not request a specific amount. + An optional amount to request. Leave this empty or zero to not request a specific amount. + + + An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request. + An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request. + + + An optional message that is attached to the payment request and may be displayed to the sender. + An optional message that is attached to the payment request and may be displayed to the sender. + + + &Create new receiving address + &Create new receiving address + + + Clear all fields of the form. + Clear all fields of the form. + + + Clear + Clear + + + Native segwit addresses (aka Bech32 or BIP-173) reduce your transaction fees later on and offer better protection against typos, but old wallets don't support them. When unchecked, an address compatible with older wallets will be created instead. + Native segwit addresses (aka Bech32 or BIP-173) reduce your transaction fees later on and offer better protection against typos, but old wallets don't support them. When unchecked, an address compatible with older wallets will be created instead. + + + Generate native segwit (Bech32) address + Generate native segwit (Bech32) address + + + Requested payments history + Requested payments history + + + Show the selected request (does the same as double clicking an entry) + Show the selected request (does the same as double clicking an entry) + + + Show + Show + + + Remove the selected entries from the list + Remove the selected entries from the list + + + Remove + Remove + + + Copy URI + Copy URI + + + Copy label + Copy label + + + Copy message + Copy message + + + Copy amount + Copy amount + + + Could not unlock wallet. + Could not unlock wallet. + + + Could not generate new %1 address + Could not generate new %1 address + + + + ReceiveRequestDialog + + Request payment to ... + Request payment to ... + + + Address: + Address: + + + Amount: + Amount: + + + Label: + Label: + + + Message: + Message: + + + Wallet: + dompet + + + Copy &URI + Copy &URI + + + Copy &Address + &Salin Alamat + + + &Save Image... + &Save Image... + + + Request payment to %1 + Request payment to %1 + + + Payment information + Payment information + + + + RecentRequestsTableModel + + Date + Date + + + Label + Label + + + Message + Message + + + (no label) + (tiada label) + + + (no message) + (no message) + + + (no amount requested) + (no amount requested) + + + Requested + Requested + + + + SendCoinsDialog + + Send Coins + Send Coins + + + Coin Control Features + Coin Control Features + + + Inputs... + Inputs... + + + automatically selected + automatically selected + + + Insufficient funds! + Insufficient funds! + + + Quantity: + Quantity: + + + Bytes: + Bytes: + + + Amount: + Amount: + + + Fee: + Fee: + + + After Fee: + After Fee: + + + Change: + Change: + + + If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address. + If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address. + + + Custom change address + Custom change address + + + Transaction Fee: + Transaction Fee: + + + Choose... + Choose... + + + Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain. + Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain. + + + Warning: Fee estimation is currently not possible. + Warning: Fee estimation is currently not possible. + + + Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size. + +Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis per kB" for a transaction size of 500 bytes (half of 1 kB) would ultimately yield a fee of only 50 satoshis. + Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size. + +Note: Since the fee is calculated on a per-byte basis, a fee of "100 satoshis per kB" for a transaction size of 500 bytes (half of 1 kB) would ultimately yield a fee of only 50 satoshis. + + + per kilobyte + per kilobyte + + + Hide + Hide + + + Recommended: + Recommended: + + + Custom: + Custom: + + + (Smart fee not initialized yet. This usually takes a few blocks...) + (Smart fee not initialized yet. This usually takes a few blocks...) + + + Send to multiple recipients at once + Send to multiple recipients at once + + + Add &Recipient + Add &Recipient + + + Clear all fields of the form. + Clear all fields of the form. + + + Dust: + Dust: + + + Hide transaction fee settings + Hide transaction fee settings + + + When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process. + When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process. + + + A too low fee might result in a never confirming transaction (read the tooltip) + A too low fee might result in a never confirming transaction (read the tooltip) + + + Confirmation time target: + Confirmation time target: + + + Enable Replace-By-Fee + Enable Replace-By-Fee + + + With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk. + With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk. + + + Clear &All + Clear &All + + + Balance: + Baki + + + Confirm the send action + Confirm the send action + + + S&end + S&end + + + Copy quantity + Copy quantity + + + Copy amount + Copy amount + + + Copy fee + Copy fee + + + Copy after fee + Copy after fee + + + Copy bytes + Copy bytes + + + Copy dust + Copy dust + + + Copy change + Copy change + + + %1 (%2 blocks) + %1 (%2 blocks) + + + Cr&eate Unsigned + Cr&eate Unsigned + + + Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + + + from wallet '%1' + from wallet '%1' + + + %1 to '%2' + %1 to '%2' + + + %1 to %2 + %1 to %2 + + + Do you want to draft this transaction? + Do you want to draft this transaction? + + + Are you sure you want to send? + Are you sure you want to send? + + + Create Unsigned + Create Unsigned + + + Save Transaction Data + Save Transaction Data + + + Partially Signed Transaction (Binary) (*.psbt) + Partially Signed Transaction (Binary) (*.psbt) + + + PSBT saved + PSBT saved + + + or + or + + + You can increase the fee later (signals Replace-By-Fee, BIP-125). + You can increase the fee later (signals Replace-By-Fee, BIP-125). + + + Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet. + + + Please, review your transaction. + Please, review your transaction. + + + Transaction fee + Transaction fee + + + Not signalling Replace-By-Fee, BIP-125. + Not signalling Replace-By-Fee, BIP-125. + + + Total Amount + Total Amount + + + To review recipient list click "Show Details..." + To review recipient list click "Show Details..." + + + Confirm send coins + Confirm send coins + + + Confirm transaction proposal + Confirm transaction proposal + + + Send + Send + + + Watch-only balance: + Watch-only balance: + + + The recipient address is not valid. Please recheck. + The recipient address is not valid. Please recheck. + + + The amount to pay must be larger than 0. + The amount to pay must be larger than 0. + + + The amount exceeds your balance. + The amount exceeds your balance. + + + The total exceeds your balance when the %1 transaction fee is included. + The total exceeds your balance when the %1 transaction fee is included. + + + Duplicate address found: addresses should only be used once each. + Duplicate address found: addresses should only be used once each. + + + Transaction creation failed! + Transaction creation failed! + + + A fee higher than %1 is considered an absurdly high fee. + A fee higher than %1 is considered an absurdly high fee. + + + Payment request expired. + Payment request expired. + + + Estimated to begin confirmation within %n block(s). + Estimated to begin confirmation within %n blocks. + + + Warning: Invalid Bitcoin address + Warning: Invalid Bitcoin address + + + Warning: Unknown change address + Warning: Unknown change address + + + Confirm custom change address + Confirm custom change address + + + The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure? + The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure? + + + (no label) + (tiada label) + + + + SendCoinsEntry + + A&mount: + A&mount: + + + Pay &To: + Pay &To: + + + &Label: + &Label: + + + Choose previously used address + Choose previously used address + + + The Bitcoin address to send the payment to + The Bitcoin address to send the payment to + + + Alt+A + Alt+A + + + Paste address from clipboard + Paste address from clipboard + + + Alt+P + Alt+P + + + Remove this entry + Remove this entry + + + The amount to send in the selected unit + The amount to send in the selected unit + + + The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. + The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally. + + + S&ubtract fee from amount + S&ubtract fee from amount + + + Use available balance + Use available balance + + + Message: + Message: + + + This is an unauthenticated payment request. + This is an unauthenticated payment request. + + + This is an authenticated payment request. + This is an authenticated payment request. + + + Enter a label for this address to add it to the list of used addresses + Enter a label for this address to add it to the list of used addresses + + + A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. + A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network. + + + Pay To: + Pay To: + + + Memo: + Memo: + + + + ShutdownWindow + + %1 is shutting down... + %1 is shutting down... + + + Do not shut down the computer until this window disappears. + Do not shut down the computer until this window disappears. + + + + SignVerifyMessageDialog + + Signatures - Sign / Verify a Message + Signatures - Sign / Verify a Message + + + &Sign Message + &Sign Message + + + You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. + You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to. + + + The Bitcoin address to sign the message with + The Bitcoin address to sign the message with + + + Choose previously used address + Choose previously used address + + + Alt+A + Alt+A + + + Paste address from clipboard + Paste address from clipboard + + + Alt+P + Alt+P + + + Enter the message you want to sign here + Enter the message you want to sign here + + + Signature + Signature + + + Copy the current signature to the system clipboard + Copy the current signature to the system clipboard + + + Sign the message to prove you own this Bitcoin address + Sign the message to prove you own this Bitcoin address + + + Sign &Message + Sign &Message + + + Reset all sign message fields + Reset all sign message fields + + + Clear &All + Clear &All + + + &Verify Message + &Verify Message + + + Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! + Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction! + + + The Bitcoin address the message was signed with + The Bitcoin address the message was signed with + + + The signed message to verify + The signed message to verify + + + The signature given when the message was signed + The signature given when the message was signed + + + Verify the message to ensure it was signed with the specified Bitcoin address + Verify the message to ensure it was signed with the specified Bitcoin address + + + Verify &Message + Verify &Message + + + Reset all verify message fields + Reset all verify message fields + + + Click "Sign Message" to generate signature + Click "Sign Message" to generate signature + + + The entered address is invalid. + The entered address is invalid. + + + Please check the address and try again. + Please check the address and try again. + + + The entered address does not refer to a key. + The entered address does not refer to a key. + + + Wallet unlock was cancelled. + Wallet unlock was cancelled. + + + No error + No error + + + Private key for the entered address is not available. + Private key for the entered address is not available. + + + Message signing failed. + Message signing failed. + + + Message signed. + Message signed. + + + The signature could not be decoded. + The signature could not be decoded. + + + Please check the signature and try again. + Please check the signature and try again. + + + The signature did not match the message digest. + The signature did not match the message digest. + + + Message verification failed. + Message verification failed. + + + Message verified. + Message verified. + + + + TrafficGraphWidget + + KB/s + KB/s + + + + TransactionDesc + + Open for %n more block(s) + Open for %n more blocks + + + Open until %1 + Open until %1 + + + conflicted with a transaction with %1 confirmations + conflicted with a transaction with %1 confirmations + + + 0/unconfirmed, %1 + 0/unconfirmed, %1 + + + in memory pool + in memory pool + + + not in memory pool + not in memory pool + + + abandoned + abandoned + + + %1/unconfirmed + %1/unconfirmed + + + %1 confirmations + %1 confirmations + + + Status + Status + + + Date + Date + + + Source + Source + + + Generated + Generated + + + From + From + + + unknown + unknown + + + To + To + + + own address + own address + + + watch-only + watch-only + + + label + label + + + Credit + Credit + + + matures in %n more block(s) + matures in %n more blocks + + + not accepted + not accepted + + + Debit + Debit + + + Total debit + Total debit + + + Total credit + Total credit + + + Transaction fee + Transaction fee + + + Net amount + Net amount + + + Message + Message + + + Comment + Comment + + + Transaction ID + Transaction ID + + + Transaction total size + Transaction total size + + + Transaction virtual size + Transaction virtual size + + + Output index + Output index + + + (Certificate was not verified) + (Certificate was not verified) + + + Merchant + Merchant + + + Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. + Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours. + + + Debug information + Debug information + + + Transaction + Transaction + + + Inputs + Inputs + + + Amount + Amount + + + true + true + + + false + false + + + + TransactionDescDialog + + This pane shows a detailed description of the transaction + This pane shows a detailed description of the transaction + + + Details for %1 + Details for %1 + + + + TransactionTableModel + + Date + Date + + + Type + Type + + + Label + Label + + + Open for %n more block(s) + Open for %n more blocks + + + Open until %1 + Open until %1 + + + Unconfirmed + Unconfirmed + + + Abandoned + Abandoned + + + Confirming (%1 of %2 recommended confirmations) + Confirming (%1 of %2 recommended confirmations) + + + Confirmed (%1 confirmations) + Confirmed (%1 confirmations) + + + Conflicted + Conflicted + + + Immature (%1 confirmations, will be available after %2) + Immature (%1 confirmations, will be available after %2) + + + Generated but not accepted + Generated but not accepted + + + Received with + Received with + + + Received from + Received from + + + Sent to + Sent to + + + Payment to yourself + Payment to yourself + + + Mined + Mined + + + watch-only + watch-only + + + (n/a) + (n/a) + + + (no label) + (tiada label) + + + Transaction status. Hover over this field to show number of confirmations. + Transaction status. Hover over this field to show number of confirmations. + + + Date and time that the transaction was received. + Date and time that the transaction was received. + + + Type of transaction. + Type of transaction. + + + Whether or not a watch-only address is involved in this transaction. + Whether or not a watch-only address is involved in this transaction. + + + User-defined intent/purpose of the transaction. + User-defined intent/purpose of the transaction. + + + Amount removed from or added to balance. + Amount removed from or added to balance. + + + + TransactionView + + All + All + + + Today + Today + + + This week + This week + + + This month + This month + + + Last month + Last month + + + This year + This year + + + Range... + Range... + + + Received with + Received with + + + Sent to + Sent to + + + To yourself + To yourself + + + Mined + Mined + + + Other + Other + + + Enter address, transaction id, or label to search + Enter address, transaction id, or label to search + + + Min amount + Min amount + + + Abandon transaction + Abandon transaction + + + Increase transaction fee + Increase transaction fee + + + Copy address + Copy address + + + Copy label + Copy label + + + Copy amount + Copy amount + + + Copy transaction ID + Copy transaction ID + + + Copy raw transaction + Copy raw transaction + + + Copy full transaction details + Copy full transaction details + + + Edit label + Edit label + + + Show transaction details + Show transaction details + + + Export Transaction History + Export Transaction History + + + Comma separated file (*.csv) + Fail dibahagi oleh koma(*.csv) + + + Confirmed + Confirmed + + + Watch-only + Watch-only + + + Date + Date + + + Type + Type + + + Label + Label + + + Address + Alamat + + + ID + ID + + + Exporting Failed + Mengeksport Gagal + + + There was an error trying to save the transaction history to %1. + There was an error trying to save the transaction history to %1. + + + Exporting Successful + Exporting Successful + + + The transaction history was successfully saved to %1. + The transaction history was successfully saved to %1. + + + Range: + Range: + + + to + to + + + + UnitDisplayStatusBarControl + + Unit to show amounts in. Click to select another unit. + Unit to show amounts in. Click to select another unit. + + + + WalletController + + Close wallet + Tutup Wallet + + + Are you sure you wish to close the wallet <i>%1</i>? + Are you sure you wish to close the wallet <i>%1</i>? + + + Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. + Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled. + + + Close all wallets + Close all wallets + + + Are you sure you wish to close all wallets? + Are you sure you wish to close all wallets? + + + + WalletFrame + + No wallet has been loaded. +Go to File > Open Wallet to load a wallet. +- OR - + No wallet has been loaded. +Go to File > Open Wallet to load a wallet. +- OR - + + + Create a new wallet + Create a new wallet + + + + WalletModel + + Send Coins + Send Coins + + + Fee bump error + Fee bump error + + + Increasing transaction fee failed + Increasing transaction fee failed + + + Do you want to increase the fee? + Do you want to increase the fee? + + + Do you want to draft a transaction with fee increase? + Do you want to draft a transaction with fee increase? + + + Current fee: + Current fee: + + + Increase: + Increase: + + + New fee: + New fee: + + + Confirm fee bump + Confirm fee bump + + + Can't draft transaction. + Can't draft transaction. + + + PSBT copied + PSBT copied + + + Can't sign transaction. + Can't sign transaction. + + + Could not commit transaction + Could not commit transaction + + + default wallet + dompet lalai + + + + + WalletView + + &Export + &Eksport + + + Export the data in the current tab to a file + +Alihkan fail data ke dalam tab semasa + + + Error + Ralat + + + Unable to decode PSBT from clipboard (invalid base64) + Unable to decode PSBT from clipboard (invalid base64) + + + Load Transaction Data + Load Transaction Data + + + Partially Signed Transaction (*.psbt) + Partially Signed Transaction (*.psbt) + + + PSBT file must be smaller than 100 MiB + PSBT file must be smaller than 100 MiB + + + Unable to decode PSBT + Unable to decode PSBT + + + Backup Wallet + Backup Wallet + + + Wallet Data (*.dat) + Wallet Data (*.dat) + + + Backup Failed + Backup Failed + + + There was an error trying to save the wallet data to %1. + There was an error trying to save the wallet data to %1. + + + Backup Successful + Backup Successful + + + The wallet data was successfully saved to %1. + The wallet data was successfully saved to %1. + + + Cancel + Cancel + + + + bitcoin-core + + Distributed under the MIT software license, see the accompanying file %s or %s + Distributed under the MIT software license, see the accompanying file %s or %s + + + Prune configured below the minimum of %d MiB. Please use a higher number. + Prune configured below the minimum of %d MiB. Please use a higher number. + + + Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) + Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node) + + + Pruning blockstore... + Pruning blockstore... + + + Unable to start HTTP server. See debug log for details. + Unable to start HTTP server. See debug log for details. + + + The %s developers + The %s developers + + + Cannot obtain a lock on data directory %s. %s is probably already running. + Cannot obtain a lock on data directory %s. %s is probably already running. + + + Cannot provide specific connections and have addrman find outgoing connections at the same. + Cannot provide specific connections and have addrman find outgoing connections at the same. + + + Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. + Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect. + + + More than one onion bind address is provided. Using %s for the automatically created Tor onion service. + More than one onion bind address is provided. Using %s for the automatically created Tor onion service. + + + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. + Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly. + + + Please contribute if you find %s useful. Visit %s for further information about the software. + Please contribute if you find %s useful. Visit %s for further information about the software. + + + SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s + SQLiteDatabase: Failed to prepare the statement to fetch sqlite wallet schema version: %s + + + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + SQLiteDatabase: Failed to prepare the statement to fetch the application id: %s + + + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported + SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported + + + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct + The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct + + + This is a pre-release test build - use at your own risk - do not use for mining or merchant applications + This is a pre-release test build - use at your own risk - do not use for mining or merchant applications + + + This is the transaction fee you may discard if change is smaller than dust at this level + This is the transaction fee you may discard if change is smaller than dust at this level + + + Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. + Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate. + + + Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain + Unable to rewind the database to a pre-fork state. You will need to redownload the blockchain + + + Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. + Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues. + + + Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. + Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade. + + + -maxmempool must be at least %d MB + -maxmempool must be at least %d MB + + + Cannot resolve -%s address: '%s' + Cannot resolve -%s address: '%s' + + + Change index out of range + Change index out of range + + + Config setting for %s only applied on %s network when in [%s] section. + Config setting for %s only applied on %s network when in [%s] section. + + + Copyright (C) %i-%i + Copyright (C) %i-%i + + + Corrupted block database detected + Corrupted block database detected + + + Could not find asmap file %s + Could not find asmap file %s + + + Could not parse asmap file %s + Could not parse asmap file %s + + + Do you want to rebuild the block database now? + Do you want to rebuild the block database now? + + + Error initializing block database + Error initializing block database + + + Error initializing wallet database environment %s! + Error initializing wallet database environment %s! + + + Error loading %s + Error loading %s + + + Error loading %s: Private keys can only be disabled during creation + Error loading %s: Private keys can only be disabled during creation + + + Error loading %s: Wallet corrupted + Error loading %s: Wallet corrupted + + + Error loading %s: Wallet requires newer version of %s + Error loading %s: Wallet requires newer version of %s + + + Error loading block database + Error loading block database + + + Error opening block database + Error opening block database + + + Failed to listen on any port. Use -listen=0 if you want this. + Failed to listen on any port. Use -listen=0 if you want this. + + + Failed to rescan the wallet during initialization + Failed to rescan the wallet during initialization + + + Failed to verify database + Failed to verify database + + + Ignoring duplicate -wallet %s. + Ignoring duplicate -wallet %s. + + + Importing... + Importing... + + + Incorrect or no genesis block found. Wrong datadir for network? + Incorrect or no genesis block found. Wrong datadir for network? + + + Initialization sanity check failed. %s is shutting down. + Initialization sanity check failed. %s is shutting down. + + + Invalid P2P permission: '%s' + Invalid P2P permission: '%s' + + + Invalid amount for -%s=<amount>: '%s' + Invalid amount for -%s=<amount>: '%s' + + + Invalid amount for -discardfee=<amount>: '%s' + Invalid amount for -discardfee=<amount>: '%s' + + + Invalid amount for -fallbackfee=<amount>: '%s' + Invalid amount for -fallbackfee=<amount>: '%s' + + + SQLiteDatabase: Failed to execute statement to verify database: %s + SQLiteDatabase: Failed to execute statement to verify database: %s + + + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s + SQLiteDatabase: Failed to fetch sqlite wallet schema version: %s + + + SQLiteDatabase: Failed to fetch the application id: %s + SQLiteDatabase: Failed to fetch the application id: %s + + + SQLiteDatabase: Failed to prepare statement to verify database: %s + SQLiteDatabase: Failed to prepare statement to verify database: %s + + + SQLiteDatabase: Failed to read database verification error: %s + SQLiteDatabase: Failed to read database verification error: %s + + + SQLiteDatabase: Unexpected application id. Expected %u, got %u + SQLiteDatabase: Unexpected application id. Expected %u, got %u + + + Specified blocks directory "%s" does not exist. + Specified blocks directory "%s" does not exist. + + + Unknown address type '%s' + Unknown address type '%s' + + + Unknown change type '%s' + Unknown change type '%s' + + + Upgrading txindex database + Upgrading txindex database + + + Loading P2P addresses... + Loading P2P addresses... + + + Loading banlist... + Loading banlist... + + + Not enough file descriptors available. + Not enough file descriptors available. + + + Prune cannot be configured with a negative value. + Prune cannot be configured with a negative value. + + + Prune mode is incompatible with -txindex. + Prune mode is incompatible with -txindex. + + + Replaying blocks... + Replaying blocks... + + + Rewinding blocks... + Rewinding blocks... + + + The source code is available from %s. + The source code is available from %s. + + + Transaction fee and change calculation failed + Transaction fee and change calculation failed + + + Unable to bind to %s on this computer. %s is probably already running. + Unable to bind to %s on this computer. %s is probably already running. + + + Unable to generate keys + Unable to generate keys + + + Unsupported logging category %s=%s. + Unsupported logging category %s=%s. + + + Upgrading UTXO database + Upgrading UTXO database + + + User Agent comment (%s) contains unsafe characters. + User Agent comment (%s) contains unsafe characters. + + + Verifying blocks... + Verifying blocks... + + + Wallet needed to be rewritten: restart %s to complete + Wallet needed to be rewritten: restart %s to complete + + + Error: Listening for incoming connections failed (listen returned error %s) + Error: Listening for incoming connections failed (listen returned error %s) + + + %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. + %s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup. + + + Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. + Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use version 169900 or no version specified. + + + Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) + Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions) + + + The transaction amount is too small to send after the fee has been deducted + The transaction amount is too small to send after the fee has been deducted + + + This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet + This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet + + + This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. + This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection. + + + Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. + Transaction needs a change address, but we can't generate it. Please call keypoolrefill first. + + + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain + You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain + + + A fatal internal error occurred, see debug.log for details + A fatal internal error occurred, see debug.log for details + + + Cannot set -peerblockfilters without -blockfilterindex. + Cannot set -peerblockfilters without -blockfilterindex. + + + Disk space is too low! + Disk space is too low! + + + Error reading from database, shutting down. + Error reading from database, shutting down. + + + Error upgrading chainstate database + Error upgrading chainstate database + + + Error: Disk space is low for %s + Error: Disk space is low for %s + + + Error: Keypool ran out, please call keypoolrefill first + Error: Keypool ran out, please call keypoolrefill first + + + Fee rate (%s) is lower than the minimum fee rate setting (%s) + Fee rate (%s) is lower than the minimum fee rate setting (%s) + + + Invalid -onion address or hostname: '%s' + Invalid -onion address or hostname: '%s' + + + Invalid -proxy address or hostname: '%s' + Invalid -proxy address or hostname: '%s' + + + Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) + Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s) + + + Invalid netmask specified in -whitelist: '%s' + Invalid netmask specified in -whitelist: '%s' + + + Need to specify a port with -whitebind: '%s' + Need to specify a port with -whitebind: '%s' + + + No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. + No proxy server specified. Use -proxy=<ip> or -proxy=<ip:port>. + + + Prune mode is incompatible with -blockfilterindex. + Prune mode is incompatible with -blockfilterindex. + + + Reducing -maxconnections from %d to %d, because of system limitations. + Reducing -maxconnections from %d to %d, because of system limitations. + + + Section [%s] is not recognized. + Section [%s] is not recognized. + + + Signing transaction failed + Signing transaction failed + + + Specified -walletdir "%s" does not exist + Specified -walletdir "%s" does not exist + + + Specified -walletdir "%s" is a relative path + Specified -walletdir "%s" is a relative path + + + Specified -walletdir "%s" is not a directory + Specified -walletdir "%s" is not a directory + + + The specified config file %s does not exist + + The specified config file %s does not exist + + + + The transaction amount is too small to pay the fee + The transaction amount is too small to pay the fee + + + This is experimental software. + This is experimental software. + + + Transaction amount too small + Transaction amount too small + + + Transaction too large + Transaction too large + + + Unable to bind to %s on this computer (bind returned error %s) + Unable to bind to %s on this computer (bind returned error %s) + + + Unable to create the PID file '%s': %s + Unable to create the PID file '%s': %s + + + Unable to generate initial keys + Unable to generate initial keys + + + Unknown -blockfilterindex value %s. + Unknown -blockfilterindex value %s. + + + Verifying wallet(s)... + Verifying wallet(s)... + + + Warning: unknown new rules activated (versionbit %i) + Warning: unknown new rules activated (versionbit %i) + + + -maxtxfee is set very high! Fees this large could be paid on a single transaction. + -maxtxfee is set very high! Fees this large could be paid on a single transaction. + + + This is the transaction fee you may pay when fee estimates are not available. + This is the transaction fee you may pay when fee estimates are not available. + + + Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments. + Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments. + + + %s is set very high! + %s is set very high! + + + Starting network threads... + Starting network threads... + + + The wallet will avoid paying less than the minimum relay fee. + The wallet will avoid paying less than the minimum relay fee. + + + This is the minimum transaction fee you pay on every transaction. + This is the minimum transaction fee you pay on every transaction. + + + This is the transaction fee you will pay if you send a transaction. + This is the transaction fee you will pay if you send a transaction. + + + Transaction amounts must not be negative + Transaction amounts must not be negative + + + Transaction has too long of a mempool chain + Transaction has too long of a mempool chain + + + Transaction must have at least one recipient + Transaction must have at least one recipient + + + Unknown network specified in -onlynet: '%s' + Unknown network specified in -onlynet: '%s' + + + Insufficient funds + Insufficient funds + + + Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable -fallbackfee. + Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable -fallbackfee. + + + Warning: Private keys detected in wallet {%s} with disabled private keys + Warning: Private keys detected in wallet {%s} with disabled private keys + + + Cannot write to data directory '%s'; check permissions. + Cannot write to data directory '%s'; check permissions. + + + Loading block index... + Loading block index... + + + Loading wallet... + Sedang baca wallet... + + + Cannot downgrade wallet + Cannot downgrade wallet + + + Rescanning... + Rescanning... + + + Done loading + Baca Selesai + + + \ No newline at end of file diff --git a/src/qt/locale/bitcoin_nl.ts b/src/qt/locale/bitcoin_nl.ts index 11ff0fd49..bc9b0a5db 100644 --- a/src/qt/locale/bitcoin_nl.ts +++ b/src/qt/locale/bitcoin_nl.ts @@ -3,7 +3,7 @@ AddressBookPage Right-click to edit address or label - Rechtermuisklik om adres of label te wijzigen + Rechtermuisklik om adres of label aan te passen Create a new address diff --git a/src/qt/locale/bitcoin_no.ts b/src/qt/locale/bitcoin_no.ts new file mode 100644 index 000000000..5355bc16d --- /dev/null +++ b/src/qt/locale/bitcoin_no.ts @@ -0,0 +1,222 @@ + + + AddressBookPage + + Right-click to edit address or label + Høyreklikk for å redigere addressen eller etikketen + + + Create a new address + Lag en ny adresse + + + &New + &Ny + + + + Copy the currently selected address to the system clipboard + Kopier den valgte adressen til systemutklippstavlen + + + &Copy + &Kopier + + + C&lose + C&Tap + + + Delete the currently selected address from the list + Slett den valgte adressen fra listen + + + Enter address or label to search + Tast inn adressen eller etiketten for å søke + + + Export the data in the current tab to a file + Eksporter dataen i gjeldende fane til en fil + + + &Export + &Eksporter + + + &Delete + &Slett + + + Choose the address to send coins to + Velg adressen du vil sende mynter til + + + Choose the address to receive coins with + Velg adressen du vil motta mynter med + + + Sending addresses + Sender adresser + + + Receiving addresses + Mottar adresser + + + These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. + Dette er dine Bitcoin adresser for å sende betalinger.Alltid sjekk mengden og mottaker adressen før du sender mynter. + + + &Copy Address + &Koper adresse + + + Export Address List + Eksporter adresse liste + + + Exporting Failed + Eksportering feilet + + + + AddressTableModel + + Address + Adresse + + + + AskPassphraseDialog + + + BanTableModel + + + BitcoinGUI + + + CoinControlDialog + + + CreateWalletActivity + + + CreateWalletDialog + + + EditAddressDialog + + + FreespaceChecker + + + HelpMessageDialog + + + Intro + + + ModalOverlay + + + OpenURIDialog + + + OpenWalletActivity + + + OptionsDialog + + + OverviewPage + + + PSBTOperationsDialog + + + PaymentServer + + + PeerTableModel + + + QObject + + + QRImageWidget + + + RPCConsole + + + ReceiveCoinsDialog + + + ReceiveRequestDialog + + + RecentRequestsTableModel + + + SendCoinsDialog + + + SendCoinsEntry + + + ShutdownWindow + + + SignVerifyMessageDialog + + + TrafficGraphWidget + + + TransactionDesc + + + TransactionDescDialog + + + TransactionTableModel + + + TransactionView + + Address + Adresse + + + Exporting Failed + Eksportering feilet + + + + UnitDisplayStatusBarControl + + + WalletController + + + WalletFrame + + + WalletModel + + + WalletView + + &Export + &Eksporter + + + Export the data in the current tab to a file + Eksporter dataen i gjeldende fane til en fil + + + + bitcoin-core + + \ No newline at end of file diff --git a/src/qt/locale/bitcoin_tr.ts b/src/qt/locale/bitcoin_tr.ts index 333b18e10..fef8c9e8b 100644 --- a/src/qt/locale/bitcoin_tr.ts +++ b/src/qt/locale/bitcoin_tr.ts @@ -1530,6 +1530,10 @@ Cüzdan kilidini aç. PSBT saved to disk. PSBT diske kaydedildi. + + Pays transaction fee: + İşlem ücreti:<br> + Total Amount Toplam Tutar @@ -1538,6 +1542,10 @@ Cüzdan kilidini aç. or veya + + Transaction still needs signature(s). + İşlemin hala imza(lar)a ihtiyacı var. + Transaction status is unknown. İşlem durumu bilinmiyor. diff --git a/src/qt/locale/bitcoin_ug.ts b/src/qt/locale/bitcoin_ug.ts new file mode 100644 index 000000000..60252f9aa --- /dev/null +++ b/src/qt/locale/bitcoin_ug.ts @@ -0,0 +1,267 @@ + + + AddressBookPage + + Right-click to edit address or label + ئوڭ كۇنۇپكا چېكىلسە ئادرېس ياكى بەلگىنى تەھرىرلەيدۇ + + + Create a new address + يېڭى ئادرېس قۇر + + + &New + يېڭى(&N) + + + Copy the currently selected address to the system clipboard + نۆۋەتتە تاللىغان ئادرېسنى سىستېما چاپلاش تاختىسىغا كۆچۈرىدۇ + + + &Copy + كۆچۈر(&C) + + + C&lose + تاقا(&L) + + + Delete the currently selected address from the list + نۆۋەتتە تاللانغان ئادرېسنى تىزىمدىن ئۆچۈرىدۇ + + + Enter address or label to search + ئىزدەيدىغان ئادرېس ياكى بەلگىنى كىرگۈزۈڭ + + + Export the data in the current tab to a file + نۆۋەتتىكى بەتكۈچتىكى سانلىق مەلۇماتنى ھۆججەتكە چىقىرىدۇ + + + &Export + چىقار(&E) + + + &Delete + ئۆچۈر(&D) + + + Choose the address to send coins to + تەڭگىنى ئەۋەتىدىغان ئادرېسنى تاللاڭ + + + Choose the address to receive coins with + تەڭگىنى تاپشۇرۇۋالىدىغان ئادرېسنى تاللاڭ + + + C&hoose + تاللا(&H) + + + Sending addresses + يوللاش ئادرېسى + + + Receiving addresses + تاپشۇرۇۋېلىش ئادرېسى + + + These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins. + بۇلار سىز Bitcoin چىقىم قىلىدىغان ئادرېس. تەڭگە چىقىم قىلىشتىن ئىلگىرى، سومما ۋە تاپشۇرۇۋېلىش ئادرېسىنىڭ توغرا ئىكەنلىكىنى تەكشۈرۈشنى ئۇنۇتماڭ. + + + These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses. +Signing is only possible with addresses of the type 'legacy'. + بۇ Bitcoin تاپشۇرۇۋېلىشقا ئىشلىتىدىغان ئادرېسىڭىز. «قوبۇللاش» بەتكۈچتىكى «يېڭى تاپشۇرۇۋېلىش ئادرېسى قۇر» توپچىنى چېكىپ يېڭى ئادرېس قۇرالايسىز. +پەقەت «ئەنئەنىۋى(legacy)» تىپتىكى ئادرېسلا ئىمزانى قوللايدۇ. + + + Export Address List + ئادرېس تىزىمىنى چىقار + + + Exporting Failed + چىقىرالمىدى + + + There was an error trying to save the address list to %1. Please try again. + ئادرېس تىزىمىنى %1 غا ساقلاشنى سىناۋاتقاندا خاتالىق كۆرۈلدى. قايتا سىناڭ. + + + + AddressTableModel + + Label + بەلگە + + + Address + ئادرېس + + + (no label) + (بەلگە يوق) + + + + AskPassphraseDialog + + + BanTableModel + + + BitcoinGUI + + + CoinControlDialog + + (no label) + (بەلگە يوق) + + + + CreateWalletActivity + + + CreateWalletDialog + + + EditAddressDialog + + + FreespaceChecker + + + HelpMessageDialog + + + Intro + + + ModalOverlay + + + OpenURIDialog + + + OpenWalletActivity + + + OptionsDialog + + + OverviewPage + + + PSBTOperationsDialog + + + PaymentServer + + + PeerTableModel + + + QObject + + + QRImageWidget + + + RPCConsole + + + ReceiveCoinsDialog + + + ReceiveRequestDialog + + + RecentRequestsTableModel + + Label + بەلگە + + + (no label) + (بەلگە يوق) + + + + SendCoinsDialog + + (no label) + (بەلگە يوق) + + + + SendCoinsEntry + + + ShutdownWindow + + + SignVerifyMessageDialog + + + TrafficGraphWidget + + + TransactionDesc + + + TransactionDescDialog + + + TransactionTableModel + + Label + بەلگە + + + (no label) + (بەلگە يوق) + + + + TransactionView + + Label + بەلگە + + + Address + ئادرېس + + + Exporting Failed + چىقىرالمىدى + + + + UnitDisplayStatusBarControl + + + WalletController + + + WalletFrame + + + WalletModel + + + WalletView + + &Export + چىقار(&E) + + + Export the data in the current tab to a file + نۆۋەتتىكى بەتكۈچتىكى سانلىق مەلۇماتنى ھۆججەتكە چىقىرىدۇ + + + + bitcoin-core + + \ No newline at end of file From 2d7f2606c193dd14307243816d40180867a0d913 Mon Sep 17 00:00:00 2001 From: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com> Date: Wed, 18 Aug 2021 18:33:11 +0300 Subject: [PATCH 097/102] ci: Run fuzzer task for the master branch only Github-Pull: bitcoin/bitcoin#22730 Rebased-From: 5a9e255e5a324e7aa0b63a9634aa3cfda9a300bd --- .cirrus.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.cirrus.yml b/.cirrus.yml index 5223c0bea..4fad68831 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -107,6 +107,7 @@ task: task: name: 'x86_64 Linux [GOAL: install] [focal] [no depends, only system libs, sanitizers: fuzzer,address,undefined]' + only_if: $CIRRUS_BRANCH == $CIRRUS_DEFAULT_BRANCH || $CIRRUS_BASE_BRANCH == $CIRRUS_DEFAULT_BRANCH << : *GLOBAL_TASK_TEMPLATE container: image: ubuntu:focal From d9b18c12903e3ed3b06e1452852159e5b713ff28 Mon Sep 17 00:00:00 2001 From: Rafael Sadowski Date: Mon, 16 Aug 2021 06:34:02 +0200 Subject: [PATCH 098/102] Fix build with Boost 1.77.0 BOOST_FILESYSTEM_C_STR changed to accept the path as an argument Github-Pull: bitcoin/bitcoin#22713 Rebased-From: acb7aad27ec8a184808aa7905887e3b2c5d54e9c --- src/fs.cpp | 4 ++++ src/wallet/test/db_tests.cpp | 4 ++++ src/wallet/test/init_test_fixture.cpp | 4 ++++ 3 files changed, 12 insertions(+) diff --git a/src/fs.cpp b/src/fs.cpp index eef9c81de..3aba47976 100644 --- a/src/fs.cpp +++ b/src/fs.cpp @@ -236,7 +236,11 @@ void ofstream::close() } #else // __GLIBCXX__ +#if BOOST_VERSION >= 107700 +static_assert(sizeof(*BOOST_FILESYSTEM_C_STR(fs::path())) == sizeof(wchar_t), +#else static_assert(sizeof(*fs::path().BOOST_FILESYSTEM_C_STR) == sizeof(wchar_t), +#endif // BOOST_VERSION >= 107700 "Warning: This build is using boost::filesystem ofstream and ifstream " "implementations which will fail to open paths containing multibyte " "characters. You should delete this static_assert to ignore this warning, " diff --git a/src/wallet/test/db_tests.cpp b/src/wallet/test/db_tests.cpp index 8f0083cd2..82cc645d6 100644 --- a/src/wallet/test/db_tests.cpp +++ b/src/wallet/test/db_tests.cpp @@ -18,7 +18,11 @@ BOOST_AUTO_TEST_CASE(getwalletenv_file) std::string test_name = "test_name.dat"; const fs::path datadir = GetDataDir(); fs::path file_path = datadir / test_name; +#if BOOST_VERSION >= 107700 + std::ofstream f(BOOST_FILESYSTEM_C_STR(file_path)); +#else std::ofstream f(file_path.BOOST_FILESYSTEM_C_STR); +#endif // BOOST_VERSION >= 107700 f.close(); std::string filename; diff --git a/src/wallet/test/init_test_fixture.cpp b/src/wallet/test/init_test_fixture.cpp index c80310045..24a0063dd 100644 --- a/src/wallet/test/init_test_fixture.cpp +++ b/src/wallet/test/init_test_fixture.cpp @@ -31,7 +31,11 @@ InitWalletDirTestingSetup::InitWalletDirTestingSetup(const std::string& chainNam fs::create_directories(m_walletdir_path_cases["default"]); fs::create_directories(m_walletdir_path_cases["custom"]); fs::create_directories(m_walletdir_path_cases["relative"]); +#if BOOST_VERSION >= 107700 + std::ofstream f(BOOST_FILESYSTEM_C_STR(m_walletdir_path_cases["file"])); +#else std::ofstream f(m_walletdir_path_cases["file"].BOOST_FILESYSTEM_C_STR); +#endif // BOOST_VERSION >= 107700 f.close(); } From 82c5208ddcfc51ffcb8b03b5f750bbcebd994599 Mon Sep 17 00:00:00 2001 From: fanquake Date: Sat, 28 Aug 2021 15:54:02 +0800 Subject: [PATCH 099/102] doc: update release notes for rc2 --- doc/release-notes.md | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/doc/release-notes.md b/doc/release-notes.md index b381a3325..f99bc59cc 100644 --- a/doc/release-notes.md +++ b/doc/release-notes.md @@ -1,9 +1,9 @@ -0.21.2rc1 Release Notes +0.21.2rc2 Release Notes ==================== -Bitcoin Core version 0.21.2rc1 is now available from: +Bitcoin Core version 0.21.2rc2 is now available from: - + This minor release includes various bug fixes and performance improvements, as well as updated translations. @@ -42,7 +42,7 @@ longer supported. Additionally, Bitcoin Core does not yet change appearance when macOS "dark mode" is activated. -0.21.2rc1 change log +0.21.2rc2 change log ================= ### P2P protocol and network code @@ -63,6 +63,7 @@ when macOS "dark mode" is activated. - #21932 depends: update Qt 5.9 source url (kittywhiskers) - #22017 Update Windows code signing certificate (achow101) - #22191 Use custom MacOS code signing tool (achow101) +- #22713 Fix build with Boost 1.77.0 (sizeofvoid) ### Tests and QA @@ -70,6 +71,7 @@ when macOS "dark mode" is activated. - #20535 Fix intermittent feature_taproot issue (MarcoFalke) - #21663 Fix macOS brew install command (hebasto) - #22279 add missing ECCVerifyHandle to base_encode_decode (apoelstra) +- #22730 Run fuzzer task for the master branch only (hebasto) ### GUI @@ -99,6 +101,7 @@ Thanks to everyone who directly contributed to this release: - Pavol Rusnak - Pieter Wuille - prayank23 +- Rafael Sadowski - W. J. van der Laan From b8f5fb7c6bc2aac3b6313ba796f3ed11101caf65 Mon Sep 17 00:00:00 2001 From: fanquake Date: Sat, 28 Aug 2021 16:01:20 +0800 Subject: [PATCH 100/102] build: bump version to 0.21.2rc2 --- configure.ac | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index f21ec0977..0b2de0906 100644 --- a/configure.ac +++ b/configure.ac @@ -3,7 +3,7 @@ define(_CLIENT_VERSION_MAJOR, 0) define(_CLIENT_VERSION_MINOR, 21) define(_CLIENT_VERSION_REVISION, 2) define(_CLIENT_VERSION_BUILD, 0) -define(_CLIENT_VERSION_RC, 1) +define(_CLIENT_VERSION_RC, 2) define(_CLIENT_VERSION_IS_RELEASE, true) define(_COPYRIGHT_YEAR, 2020) define(_COPYRIGHT_HOLDERS,[The %s developers]) From 4f00278f29ee0ffaf8c7d6726104f7cf722c6a4b Mon Sep 17 00:00:00 2001 From: Ross Nicoll Date: Sat, 4 Sep 2021 09:12:23 +0100 Subject: [PATCH 101/102] Fix up functional tests * Update rpc_signrawtransaction.py with Doge-compatible fee values. * Replace addresses in rpc_invalid_address_message.py with Dogecoin prefixes. --- test/functional/rpc_invalid_address_message.py | 6 +++--- test/functional/rpc_signrawtransaction.py | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/test/functional/rpc_invalid_address_message.py b/test/functional/rpc_invalid_address_message.py index 814f50c9e..a34b4f4a3 100755 --- a/test/functional/rpc_invalid_address_message.py +++ b/test/functional/rpc_invalid_address_message.py @@ -8,15 +8,15 @@ from test_framework.test_framework import BitcoinTestFramework from test_framework.util import assert_raises_rpc_error -BECH32_VALID = 'bcrt1qtmp74ayg7p24uslctssvjm06q5phz4yrxucgnv' -BECH32_INVALID_BECH32 = 'bcrt1p0xlxvlhemja6c4dqv22uapctqupfhlxm9h8z3k2e72q4k9hcz7vqdmchcc' +BECH32_VALID = 'dcrt1qtmp74ayg7p24uslctssvjm06q5phz4yrrsejrj' +BECH32_INVALID_BECH32 = 'dcrt1p0xlxvlhemja6c4dqv22uapctqupfhlxm9h8z3k2e72q4k9hcz7vqhzy0as' BECH32_INVALID_BECH32M = 'bcrt1qw508d6qejxtdg4y5r3zarvary0c5xw7k35mrzd' BECH32_INVALID_VERSION = 'bcrt130xlxvlhemja6c4dqv22uapctqupfhlxm9h8z3k2e72q4k9hcz7vqynjegk' BECH32_INVALID_SIZE = 'bcrt1s0xlxvlhemja6c4dqv22uapctqupfhlxm9h8z3k2e72q4k9hcz7v8n0nx0muaewav25430mtr' BECH32_INVALID_V0_SIZE = 'bcrt1qw508d6qejxtdg4y5r3zarvary0c5xw7kqqq5k3my' BECH32_INVALID_PREFIX = 'bc1pw508d6qejxtdg4y5r3zarvary0c5xw7kw508d6qejxtdg4y5r3zarvary0c5xw7k7grplx' -BASE58_VALID = 'mipcBbFg9gMiCh81Kj8tqqdgoZub1ZJRfn' +BASE58_VALID = 'ngLGV6xaxmFHZFB6g6DX7YjMjDY8dnvuTw' BASE58_INVALID_PREFIX = '17VZNX1SN5NtKa8UQFxwQbFeFc3iqRYhem' INVALID_ADDRESS = 'asfah14i8fajz0123f' diff --git a/test/functional/rpc_signrawtransaction.py b/test/functional/rpc_signrawtransaction.py index fb285206e..ce485cfb5 100755 --- a/test/functional/rpc_signrawtransaction.py +++ b/test/functional/rpc_signrawtransaction.py @@ -256,7 +256,7 @@ class SignRawTransactionsTest(BitcoinTestFramework): vout = find_vout_for_address(self.nodes[0], txid, address) self.nodes[0].generate(1) utxo = self.nodes[0].listunspent()[0] - amt = Decimal(1) + utxo["amount"] - Decimal(0.00001) + amt = Decimal(1) + utxo["amount"] - Decimal(0.001) tx = self.nodes[0].createrawtransaction( [{"txid": txid, "vout": vout, "sequence": 1},{"txid": utxo["txid"], "vout": utxo["vout"]}], [{self.nodes[0].getnewaddress(): amt}], @@ -292,7 +292,7 @@ class SignRawTransactionsTest(BitcoinTestFramework): vout = find_vout_for_address(self.nodes[0], txid, address) self.nodes[0].generate(1) utxo = self.nodes[0].listunspent()[0] - amt = Decimal(1) + utxo["amount"] - Decimal(0.00001) + amt = Decimal(1) + utxo["amount"] - Decimal(0.001) tx = self.nodes[0].createrawtransaction( [{"txid": txid, "vout": vout},{"txid": utxo["txid"], "vout": utxo["vout"]}], [{self.nodes[0].getnewaddress(): amt}], From 88a97130309ba40539c75dfa669db3afebc66952 Mon Sep 17 00:00:00 2001 From: Ross Nicoll Date: Tue, 21 Sep 2021 23:15:24 +0100 Subject: [PATCH 102/102] Convert invalid addresses to Doge --- test/functional/rpc_invalid_address_message.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/test/functional/rpc_invalid_address_message.py b/test/functional/rpc_invalid_address_message.py index a34b4f4a3..5e344349d 100755 --- a/test/functional/rpc_invalid_address_message.py +++ b/test/functional/rpc_invalid_address_message.py @@ -10,11 +10,11 @@ from test_framework.util import assert_raises_rpc_error BECH32_VALID = 'dcrt1qtmp74ayg7p24uslctssvjm06q5phz4yrrsejrj' BECH32_INVALID_BECH32 = 'dcrt1p0xlxvlhemja6c4dqv22uapctqupfhlxm9h8z3k2e72q4k9hcz7vqhzy0as' -BECH32_INVALID_BECH32M = 'bcrt1qw508d6qejxtdg4y5r3zarvary0c5xw7k35mrzd' -BECH32_INVALID_VERSION = 'bcrt130xlxvlhemja6c4dqv22uapctqupfhlxm9h8z3k2e72q4k9hcz7vqynjegk' -BECH32_INVALID_SIZE = 'bcrt1s0xlxvlhemja6c4dqv22uapctqupfhlxm9h8z3k2e72q4k9hcz7v8n0nx0muaewav25430mtr' -BECH32_INVALID_V0_SIZE = 'bcrt1qw508d6qejxtdg4y5r3zarvary0c5xw7kqqq5k3my' -BECH32_INVALID_PREFIX = 'bc1pw508d6qejxtdg4y5r3zarvary0c5xw7kw508d6qejxtdg4y5r3zarvary0c5xw7k7grplx' +BECH32_INVALID_BECH32M = 'dcrt1qw508d6qejxtdg4y5r3zarvary0c5xw7k5c6ejn' +BECH32_INVALID_VERSION = 'dcrt130xlxvlhemja6c4dqv22uapctqupfhlxm9h8z3k2e72q4k9hcz7vq72wpd7' +BECH32_INVALID_SIZE = 'dcrt1s0xlxvlhemja6c4dqv22uapctqupfhlxm9h8z3k2e72q4k9hcz7v8n0nx0muaewav254t575s' +BECH32_INVALID_V0_SIZE = 'dcrt1qw508d6qejxtdg4y5r3zarvary0c5xw7kqq2z6vya' +BECH32_INVALID_PREFIX = 'dc1pw508d6qejxtdg4y5r3zarvary0c5xw7kw508d6qejxtdg4y5r3zarvary0c5xw7k52pzt8' BASE58_VALID = 'ngLGV6xaxmFHZFB6g6DX7YjMjDY8dnvuTw' BASE58_INVALID_PREFIX = '17VZNX1SN5NtKa8UQFxwQbFeFc3iqRYhem'