Open Alias support? #32284

issue albassort openend this issue on April 16, 2025
  1. albassort commented at 6:36 am on April 16, 2025: none

    Please describe the feature you’d like to see added.

    https://openalias.org/

    Address are long, domains are designed to solve this very same issue. Other BTC wallets support it.

    Describe the solution you’d like

    Make address fields interchangeable with domains. If it cant pass a checksum/contains “.” interpret as an address. Next, do a dns lookup and check if the subdomain exists, has a TXT record, then parse it. ./bitcoin-cli sendtoaddress donate.albassort.com 0.0001

    Describe any alternatives you’ve considered

    No response

    Please leave any additional context

    No response

  2. albassort added the label Feature on Apr 16, 2025
  3. albassort commented at 6:37 am on April 16, 2025: none
    I could make a PR for if anyone is interested. This is more testing the waters :)
  4. maflcko commented at 7:31 am on April 16, 2025: member
    How is this different from BIP 353?
  5. albassort commented at 7:36 am on April 16, 2025: none

    BIP 353

    Wasn’t aware there was a BIP for this. But, this BIP is silly, OpenAlias is an existing open standard built to support BTC and already does in various clients. A new standard is not needed.

  6. maflcko commented at 8:22 am on April 16, 2025: member
    My understanding from reading the BIP pull discussion is that OA (v1) had shortcomings, so OA v2 could possibly be compatible with BIP 353, or vice-versa, but I don’t know if anyone is working on that, or if my understanding is still current.
  7. laanwj added the label Wallet on Apr 16, 2025
  8. laanwj commented at 10:16 am on April 16, 2025: member

    No concept NACK but FWIW, both BIP 353 and this would be hard to implement within the context of bitcoin core’s wallet. Because of build system security we’re hesitant to add additional dependencies and doing DNSSEC TXT lookups would definitely need at least one.

    Which does mean that if we cross that bridge, they’re similar enough we could pretty easily support both.

  9. albassort commented at 1:34 pm on April 16, 2025: none

    No concept NACK but FWIW, both BIP 353 and this would be hard to implement within the context of bitcoin core’s wallet. Because of build system security we’re hesitant to add additional dependencies and doing DNSSEC TXT lookups would definitely need at least one.

    Which does mean that if we cross that bridge, they’re similar enough we could pretty easily support both.

    I don’t think this claim holds up given Monero’s implementation only has these includes https://github.com/monero-project/monero/blob/3b01c490953fe92f3c6628fa31d280a4f0490d28/src/common/dns_utils.cpp

     0#include "common/dns_utils.h"
     1// check local first (in the event of static or in-source compilation of libunbound)
     2#include "misc_language.h"
     3#include "unbound.h"
     4
     5#include <deque>
     6#include <set>
     7#include <stdlib.h>
     8#include "include_base_utils.h"
     9#include "common/threadpool.h"
    10#include "crypto/crypto.h"
    11#include <boost/thread/mutex.hpp>
    12#include <boost/algorithm/string/join.hpp>
    13#include <boost/optional.hpp>
    14#include <boost/utility/string_ref.hpp>
    

    https://github.com/monero-project/monero/blob/3b01c490953fe92f3c6628fa31d280a4f0490d28/src/common/dns_utils.cpp#L298

    Heres the function which does DNSSEC

  10. pinheadmz commented at 1:41 pm on April 16, 2025: member
    unbound is the dependency here, which monero is relying on for DNSSEC
  11. albassort commented at 1:45 pm on April 16, 2025: none

    unbound is the dependency here, which monero is relying on for DNSSEC

    OOPS. Err. Maybe this is a close

  12. laanwj commented at 1:46 pm on April 16, 2025: member
    From what i see in debian, libunbound depends on libevent (which we actually already have as a dependency, but would like to get rid of) and OpenSSL (we’d really like to avoid this one).
  13. maflcko commented at 1:55 pm on April 16, 2025: member

    For the cli, you are probably better off just using a small (existing?) tool, with the benefit that it works on any past and future version of Bitcoin Core:

    0 ./bitcoin-cli sendtoaddress $( ./tool-bla.py donate.example.com ) 0.0001
    

    For the gui, idk, but it is possible that it already ships with a network stack: https://github.com/bitcoin/bitcoin/blob/cdc32994feadf3f15df3cfac5baae36b4b011462/src/qt/CMakeLists.txt#L223


github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2025-04-19 06:12 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me