Welcome, Guest. Please login or register.

Author Topic: Bitmessage DNS integration  (Read 11571 times)

AyrA

  • BM-Bc7Rspa4zxAPy9PK26vmcyoovftipStp
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1261
  • Karma: +75/-7
  • bitmessage.ch and timeservice operator
    • View Profile
    • AyrAs Homepage
Bitmessage DNS integration
« on: September 26, 2013, 05:39:05 AM »
BitDNS
Bitmessage DNS integration and namecoin tunnel.

What?
This tool will allow you to look up bitmessage names, that have been set up according to the current proposal. Additionally it contains an address book so you can store individual addresses or groups for faster lookup.

Why DNS?
DNS is easy to use and is accessible for almost everyone without third party software.
With namecoin, you can pull all registered E-mail or BM addresses from the blockchain with simple commands which is unacceptable for some people.

You just said "no third party", but ...
The Bitmessage client has only namecoin capability built into it. DNS is not natively supported (yet).

How to get it?
Just download the precompiled tool, place it anywhere on your drive and launch it after bitmessage.
Source code is available on GitHub
How to set it up?
  • Start Bitmessage
  • Start BitDNS
  • Open the Bitmessage settings window, go into the namecoin tab
  • Configure Namecoind for localhost and port 8337 (do not use 8336)
  • Enter a username and a password. This is optional, if you do not plan on using namecoin at all and only want to use DNS (see next question)
  • Click "Test" and you should see a message, that namecoin 0.12.34.56 is alive
  • Click OK

I can use namecoin too?
Yes. If you also enter your namecoin API username and password in bitmessage, the BitDNS server will forward all namecoin requests to your namecoind instance and answer all DNS requests too. Namecoind must be running on port 8336 for this to work (this is the default setting).

What if I do not want namecoin?
Just don't install namecoin then. The client will still try to forward requests to your namecoin instance, but if none is available, it will correctly format an error response for bitmessage. The tool will never ever look up DNS names, if your query does not starts with "DNS/".

How to use it?
To get it running after the initial setup, just launch it. It places a context menu icon in the tray. The address book can be opened with a double click If you have set it up correctly in bitmessage, you can see a "Fetch Namecoin ID" button on bitmessage. To fetch a namecoin ID, just enter the name (or id/name) in the field and click the button. To fetch a DNS record, enter "DNS/name", for example "DNS/list.ayra.ch"

Address book
The client has an address book feature. You can add entries with an address and a label. You can use the sdame label multiple times for different addresses to create address groups. If you send update messages to multiple addresses, store all addresses with the same label (for example "update") and then in the client enter ad/update as destination. The address book saves changes instantly.

How do I check a DNS name?
You can use this page to look up bitmessage records and test them if you wish.

How do I get a DNS name?
You can buy a DNS name for cheap (some providers even accept bitcoin) everywhere in the internet. It costs you usually 5$ to 10$ a year.
If you know somebody who owns a domain, he probably even sets up the record for free for you because it does not causes any troubles with existing services.

Image
Screenshot of address book:

The attached screenshot shows the bitmessage example configuration
« Last Edit: September 29, 2013, 01:30:06 PM by AyrA »
My Address: BM-Bc7Rspa4zxAPy9PK26vmcyoovftipStp
Bitmessage Time Service (Subscribe): BM-BcbRqcFFSQUUmXFKsPJgVQPSiFA3Xash
Support the Multipart Message Declaration Draft for Bitmessage: https://bitmessage.org/forum/index.php/topic,1553.0.html
Free Bitmessage to E-Mail Gateway: https://bitmessage.ch

nimda

  • Full Member
  • ***
  • Posts: 156
  • Karma: +12/-2
    • View Profile
Re: Bitmessage DNS integration
« Reply #1 on: September 27, 2013, 04:59:38 PM »
Namecheap accepts Bitcoin! ;)
It's 90% UI from here. uPnP is a must.
BM-2DARKo7LcCvBiXyyabT5vNxgQ32pBqScuk

AyrA

  • BM-Bc7Rspa4zxAPy9PK26vmcyoovftipStp
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1261
  • Karma: +75/-7
  • bitmessage.ch and timeservice operator
    • View Profile
    • AyrAs Homepage
Re: Bitmessage DNS integration
« Reply #2 on: September 29, 2013, 01:38:32 PM »
the client has been updated to version 2. It now offers an address book feature. You can now easily create address groups and send message to multiple users with a few mouse clicks.
My Address: BM-Bc7Rspa4zxAPy9PK26vmcyoovftipStp
Bitmessage Time Service (Subscribe): BM-BcbRqcFFSQUUmXFKsPJgVQPSiFA3Xash
Support the Multipart Message Declaration Draft for Bitmessage: https://bitmessage.org/forum/index.php/topic,1553.0.html
Free Bitmessage to E-Mail Gateway: https://bitmessage.ch

Coolguy

  • Newbie
  • *
  • Posts: 16
  • Karma: +1/-0
    • View Profile
Re: Bitmessage DNS integration
« Reply #3 on: September 30, 2013, 01:08:51 PM »
I see what you are doing with DNS, but my question is why would someone want to post their BM address in a txt file on their dns? How will this benefit anyone to be able to lookup an address? Is this more of a human readable feature or am I missing the point?

AyrA

  • BM-Bc7Rspa4zxAPy9PK26vmcyoovftipStp
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1261
  • Karma: +75/-7
  • bitmessage.ch and timeservice operator
    • View Profile
    • AyrAs Homepage
Re: Bitmessage DNS integration
« Reply #4 on: September 30, 2013, 04:49:41 PM »
I see what you are doing with DNS, but my question is why would someone want to post their BM address in a txt file on their dns? How will this benefit anyone to be able to lookup an address? Is this more of a human readable feature or am I missing the point?
Yes, being human readable is one advantage. I can tell you to send a Message to BM-Bc7Rspa4zxAPy9PK26vmcyoovftipStp or to send a message to ayra.ch. Due to the nature how DNS is built, ayra.ch still points to an E-mail server and a Webserver without any conflicts. DNS is present everywhere, I can either look up names directly with system built in tools, or I can use a third party service if I do not want to leak my IP.
Entries in DNS are hidden. If I did not told you, that list.ayra.ch poionts to a Bitmessage address, there is no way of finding this out except to try to resolve the name. In namecoin everything that has ever happened is exposed to the general public. You can run the namecoind.exe and I can give you a small little script, that extracts every E-mail and bitmessage address via the official API. In other words, namecoin does not provides any privacy at all: https://github.com/AyrA/ncExtract

namecoin is an interesting Idea, but the blockchain is already over 1 gigabyte in size and it takes hours for first timers to sync to the network.

You are also mistaking text files with txt records. A txt record is embedded in the DNS system itself. Many companies use TXT records for various informations, most commonly public keys, private keys or spf records. Example windows command to grab TXT from the microsoft.com:
cmd /k nslookup -type=TXT microsoft.com 192.71.245.208 (The query will not be made against microsoft servers, an OpenNIC server in italy is used)
My Address: BM-Bc7Rspa4zxAPy9PK26vmcyoovftipStp
Bitmessage Time Service (Subscribe): BM-BcbRqcFFSQUUmXFKsPJgVQPSiFA3Xash
Support the Multipart Message Declaration Draft for Bitmessage: https://bitmessage.org/forum/index.php/topic,1553.0.html
Free Bitmessage to E-Mail Gateway: https://bitmessage.ch

Coolguy

  • Newbie
  • *
  • Posts: 16
  • Karma: +1/-0
    • View Profile
Re: Bitmessage DNS integration
« Reply #5 on: September 30, 2013, 05:44:01 PM »
Beautiful, I see better now. I suppose each user or group of users could have their own TXT entry on the same domain.

jose.ayra.ch
sales.ayra.ch
betty.ayra.ch
etc.

However, if you wanted to remain anonymous, but publicized it's difficult to hide from the whois data lookup.



AyrA

  • BM-Bc7Rspa4zxAPy9PK26vmcyoovftipStp
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1261
  • Karma: +75/-7
  • bitmessage.ch and timeservice operator
    • View Profile
    • AyrAs Homepage
Re: Bitmessage DNS integration
« Reply #6 on: September 30, 2013, 05:58:02 PM »
Beautiful, I see better now. I suppose each user or group of users could have their own TXT entry on the same domain.

jose.ayra.ch
sales.ayra.ch
betty.ayra.ch
etc.

However, if you wanted to remain anonymous, but publicized it's difficult to hide from the whois data lookup.
There are companies like whoisguard, which protect the whois data. They still folow search warrants and court orders so it is not bullet proof. As an alternative, free services will eventually pop up, once the DNS proposal is approved, but this only happens if we request it, because atheros is currently against it and the BitDNS application is my form of "protest" against this decision. Also I wanted a better address book with address grouping function.
My Address: BM-Bc7Rspa4zxAPy9PK26vmcyoovftipStp
Bitmessage Time Service (Subscribe): BM-BcbRqcFFSQUUmXFKsPJgVQPSiFA3Xash
Support the Multipart Message Declaration Draft for Bitmessage: https://bitmessage.org/forum/index.php/topic,1553.0.html
Free Bitmessage to E-Mail Gateway: https://bitmessage.ch

Smurff

  • Newbie
  • *
  • Posts: 26
  • Karma: +0/-1
    • View Profile
Re: Bitmessage DNS integration
« Reply #7 on: October 01, 2013, 04:37:44 AM »
Beautiful, I see better now. I suppose each user or group of users could have their own TXT entry on the same domain.

jose.ayra.ch
sales.ayra.ch
betty.ayra.ch
etc.

However, if you wanted to remain anonymous, but publicized it's difficult to hide from the whois data lookup.
There are companies like whoisguard, which protect the whois data. They still folow search warrants and court orders so it is not bullet proof. As an alternative, free services will eventually pop up, once the DNS proposal is approved, but this only happens if we request it, because atheros is currently against it and the BitDNS application is my form of "protest" against this decision. Also I wanted a better address book with address grouping function.

Can you summarize why Atheros is against it?  Or sorry, could you link to the thread in which the discussion took place?
BM-GtanUQHd8CzJ1XkUzJssrd9kEgk3VLKT

AyrA

  • BM-Bc7Rspa4zxAPy9PK26vmcyoovftipStp
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1261
  • Karma: +75/-7
  • bitmessage.ch and timeservice operator
    • View Profile
    • AyrAs Homepage
Re: Bitmessage DNS integration
« Reply #8 on: October 01, 2013, 07:35:01 AM »
Can you summarize why Atheros is against it?  Or sorry, could you link to the thread in which the discussion took place?
He claims, that DNS is too unsecure: https://bitmessage.org/forum/index.php/topic,2563.msg6683.html#msg6683
This claim is not wrong, but claiming namecoin to be more secure is weird, if I can see every name that was ever registered in a blockchain with all data ever stored in it (PGP keys, E-mail addresses, IPs, etc) I don't think namecoin serves any privacy purpose at all. With DNS I must know the name to look up. With namecoin I can run an empty query to get all informations stored in the blockchain and then can find out aliases for addresses in a reverse way.
Demonstration is here: https://github.com/AyrA/ncExtract

I am not against namecoin
While namecoin is a good idea to solve the address length issue we should actually inform the user that they are violating the attempts of bitmessage to protect your privacy. I am sure if I track down all Bitmessage addresses I can find out real names or addresses from some of the people because the user has chosen a username he widely uses somewhere else where his address can be linked to the name.
It would probably better to have the name in an double SHA-1 form in the public key itself so we do not depend on an external tool (which costs money to be used). If we integrate it into the public key, a name disappears from the network if the address becomes inactive. This way, the user name database stays clean without somebody actually cleaning it (I think make this into a proposal ...)
« Last Edit: October 01, 2013, 07:38:37 AM by AyrA »
My Address: BM-Bc7Rspa4zxAPy9PK26vmcyoovftipStp
Bitmessage Time Service (Subscribe): BM-BcbRqcFFSQUUmXFKsPJgVQPSiFA3Xash
Support the Multipart Message Declaration Draft for Bitmessage: https://bitmessage.org/forum/index.php/topic,1553.0.html
Free Bitmessage to E-Mail Gateway: https://bitmessage.ch

Coolguy

  • Newbie
  • *
  • Posts: 16
  • Karma: +1/-0
    • View Profile
Re: Bitmessage DNS integration
« Reply #9 on: October 01, 2013, 06:23:30 PM »
Does bitdns.exe work with v4.1? I just updated and it quit working.

AyrA

  • BM-Bc7Rspa4zxAPy9PK26vmcyoovftipStp
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1261
  • Karma: +75/-7
  • bitmessage.ch and timeservice operator
    • View Profile
    • AyrAs Homepage
Re: Bitmessage DNS integration
« Reply #10 on: October 02, 2013, 05:03:55 AM »
your process must be named "bitmessage.exe". You probably need to rename the executable. It should work theoretically because I have it running too
My Address: BM-Bc7Rspa4zxAPy9PK26vmcyoovftipStp
Bitmessage Time Service (Subscribe): BM-BcbRqcFFSQUUmXFKsPJgVQPSiFA3Xash
Support the Multipart Message Declaration Draft for Bitmessage: https://bitmessage.org/forum/index.php/topic,1553.0.html
Free Bitmessage to E-Mail Gateway: https://bitmessage.ch

Coolguy

  • Newbie
  • *
  • Posts: 16
  • Karma: +1/-0
    • View Profile
Re: Bitmessage DNS integration
« Reply #11 on: October 02, 2013, 10:17:59 AM »
your process must be named "bitmessage.exe". You probably need to rename the executable. It should work theoretically because I have it running too

That's it. I am humbled. Thank you!

domob

  • Newbie
  • *
  • Posts: 43
  • Karma: +5/-0
    • View Profile
Re: Bitmessage DNS integration
« Reply #12 on: October 10, 2013, 07:56:42 AM »
Can you summarize why Atheros is against it?  Or sorry, could you link to the thread in which the discussion took place?
He claims, that DNS is too unsecure: https://bitmessage.org/forum/index.php/topic,2563.msg6683.html#msg6683
This claim is not wrong, but claiming namecoin to be more secure is weird, if I can see every name that was ever registered in a blockchain with all data ever stored in it (PGP keys, E-mail addresses, IPs, etc) I don't think namecoin serves any privacy purpose at all. With DNS I must know the name to look up. With namecoin I can run an empty query to get all informations stored in the blockchain and then can find out aliases for addresses in a reverse way.
Demonstration is here: https://github.com/AyrA/ncExtract

I am not against namecoin
While namecoin is a good idea to solve the address length issue we should actually inform the user that they are violating the attempts of bitmessage to protect your privacy. I am sure if I track down all Bitmessage addresses I can find out real names or addresses from some of the people because the user has chosen a username he widely uses somewhere else where his address can be linked to the name.
It would probably better to have the name in an double SHA-1 form in the public key itself so we do not depend on an external tool (which costs money to be used). If we integrate it into the public key, a name disappears from the network if the address becomes inactive. This way, the user name database stays clean without somebody actually cleaning it (I think make this into a proposal ...)

My point of view is that the "unsecure" in DNS means that DNS can be manipulated by a central authority (the DNS registers) - which is unlikely to occur, but if you don't mind relying on such a centralised party, then you can just use encrypted emails or XMPP or whatever and don't need Bitmessage, which is designed to be completely decentralised for a good reason.  Namecoin names can not be manipulated by any third-party, just like the Bitcoin network can't be manipulated (at least not without a very unlikely 51% attack or by discovering private keys via side-channels).

It is true that the Namecoin blockchain provides a way to discover all identity names and the data that the respective users stored with them, including Bitmessage addresses.  But this data is actually meant to be public, otherwise the users did some severe mistakes.  The same is true for the username - if I use id/domob to store my Bitmessage address, it is my own responsibility to make sure that I don't mind everyone to know that this particular address of mine (I could still have ones which I only use privately for certain purposes / with certain contacts) is connected to the nickname of "domob", based on which in my case someone can find quite a lot of information.  But only information I want to be public.

Note that I don't see how this relates to DNS, isn't the same true also with DNS?  If I look up your Bitmessage address based on "ayra.ch", this also connects the address to your nickname.  I may even be able to find out a lot more information from the WHOIS data, in case it contains values of yours and not your registration company.

I'm also not against DNS, since it can also be a useful addition for those who want to be reachable by public names and don't need the anonymity possible with Bitmessage - but I think that Namecoin is actually more secure / a bit more anonymous (although probably more complicated to set up, in particular for those who just want to send and not have their own names).
Donations: 1domobKsPZ5cWk2kXssD8p8ES1qffGUCm
BM-GtQnWM3vcdorfqpKXsmfHQ4rVYPG5pKS

AyrA

  • BM-Bc7Rspa4zxAPy9PK26vmcyoovftipStp
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1261
  • Karma: +75/-7
  • bitmessage.ch and timeservice operator
    • View Profile
    • AyrAs Homepage
Re: Bitmessage DNS integration
« Reply #13 on: October 10, 2013, 08:30:05 AM »
Note that I don't see how this relates to DNS, isn't the same true also with DNS?  If I look up your Bitmessage address based on "ayra.ch", this also connects the address to your nickname.  I may even be able to find out a lot more information from the WHOIS data, in case it contains values of yours and not your registration company.
But DNS does not allows you to harvest informations without knowing what to look for. With namecoin, I have the full address database on my own computer and can do whatever I want. With DNS you atleast need a lot of bandwith to try every possible name, also DNS does not stores the history of records. If I change my whois informations, the old ones are gone for good, if nobody manually stores them somewhere else apart from DNS. In the blockchain, the information stays forever, so I can basically abuse it and store CP content in the blockchain. If I do this often enough, ISPs will certainly try to shut down namecoin.
My Address: BM-Bc7Rspa4zxAPy9PK26vmcyoovftipStp
Bitmessage Time Service (Subscribe): BM-BcbRqcFFSQUUmXFKsPJgVQPSiFA3Xash
Support the Multipart Message Declaration Draft for Bitmessage: https://bitmessage.org/forum/index.php/topic,1553.0.html
Free Bitmessage to E-Mail Gateway: https://bitmessage.ch