OpenBazaar and namecoin

dionyziz
Posts: 1
Joined: Mon Sep 29, 2014 7:21 pm
Location: Athens, Greece
Contact:

OpenBazaar and namecoin

Post by dionyziz »

Hello,

I'm an OpenBazaar developer working on our trust and identity system. OpenBazaar is a decentralized anonymous censorship-resistant peer-to-peer marketplace where people can buy, sell, and discover products freely, with zero trading fees, and trade securely using bitcoin. Our trust and identity system is the portion that allows users to trust each other while remaining pseudonymous. We are planning to employ various mechanisms to achieve trust on the network, including reputation pledges via proof-of-burn, webs-of-trust, trust-as-risk, 2-of-3 multisig with arbiters and other means.

I wanted to let the namecoin community know that we'll be using namecoin in our project as part of our trust system and explain the structure we'll be making use of, briefly. Namecoin can serve to resolve Zooko's triangle, and we want to use it in this manner. OpenBazaar already addresses two of the three of Zooko's triangle vertices: decentralization and security. Our decentralization is based on a kademlia-style DHT, and our security is based on our internal node identifiers, GUIDs, which correspond directly to elliptic curve public keys.

The plan is to allow users to have a user-friendly name associated with their market which is displayed when their market is visited and other users can use to visit their stores. We will utilize the id/ namecoin namespace for this. We will be adding an 'openbazaar' key to the existing JSON, whose value is going to be the GUID of the node in question. id/dionyziz serves as an example.

A market in OpenBazaar has certain metadata associated with it and this metadata is exchanged in a peer-to-peer fashion on the OpenBazaar network. Each market will include its namecoin name along with this metadata, if such a name is available. That way, the name of a market can become known to a visitor of the market. On the other hand, to query the namecoin blockchain, we may use obelisk or a DNSChain server.

I'm posting this here so that we can solicit feedback from the namecoin community and let you know our plans for the way we aim to use namecoin. This is also a good chance to indicate to us if some of the things we're planning are wrong or should be done in a different way.

Thanks for your time.

signup292
Posts: 79
Joined: Sun Mar 02, 2014 11:02 pm

.

Post by signup292 »

.
Last edited by signup292 on Sun Feb 22, 2015 1:09 am, edited 1 time in total.

domob
Posts: 1129
Joined: Mon Jun 24, 2013 11:27 am
Contact:

Re: OpenBazaar and namecoin

Post by domob »

Welcome here, and thanks for joining the discussion! I've already looked through your reputation papers and noticed that you'll be using id/, which I like very much (I'm the NameID developer ;)). Also, I find your project (and the ideas you have about reputation - which seems to be the "key issue" to resolve for such a system) really interesting, and am looking forward to it! I even tried to run the beta, but it seems that I either were not patient enough yet or that it really requires to accept incoming connections, which is not possible for me at the moment. But I guess this will be resolved when you integrate Tor (and hidden services?) in the future. I'll join as a tester then! :)

Your idea about using id/ to associate human-readable names to node ID's seems totally sound. (And I guess you'll be using the node ID's in turn as public keys of some sort, like Bitmessage/Bitcoin addresses or .onion URLs.) In my personal opinion, that's actually even more a "perfect" usecase for Namecoin than the DNS itself. From my point of view, it is totally fine if you use "openbazaar" to include node ID's into the JSON. There's been some discussion of some general structure for including "user names" and the like (Facebook, Github, Twitter, like that - but the OpenBazaar shop name could also be seen as that), but if noone else objects, just go forward with that. Let me know if you want me to show that info on NameID somehow.

Regarding the resolver, I'm not sure if using DNSChains is the best way forward - it requires to either trust a server operator (which negates most of Namecoin's benefit) or to run a DNSChains server yourself (which makes things even more complicated than just running the stock client). If you are interested in a suggestion, you should ideally use NMControl or even namecoind's RPC interface directly (NMControl is a "higher-level layer" that can be used to transparently use different "backend sources" for the data, like the blockchain itself, some API server that the user explicitly decides to trust or a flat file with exported data). There's even some Python code available to do the communication (based on what I did for Bitmessage last year and extended by phelix). If you need any help about the Namecoin integration, let me know - my time is limited, but I'm interested in OpenBazaar myself and already worked on some id/ integrations in the past.
BTC: 1domobKsPZ5cWk2kXssD8p8ES1qffGUCm | NMC: NCdomobcmcmVdxC5yxMitojQ4tvAtv99pY
BM-GtQnWM3vcdorfqpKXsmfHQ4rVYPG5pKS
Use your Namecoin identity as OpenID: https://nameid.org/

phelix
Posts: 1634
Joined: Thu Aug 18, 2011 6:59 am

Re: OpenBazaar and namecoin

Post by phelix »

Thank you for the heads-up.

We will add OpenBazaar to the id/ namespace specification. Or you can do it yourself if you like: https://wiki.namecoin.info/index.php?title=Identity

Is there an URI scheme or a particular way that we can link to an OpenBazaar node?

With the DHT is it possible to store files that we could link to from the Namecoin blockchain? Can OpenBazaar be used to sell files from the DHT?
nx.bit - some namecoin stats
nf.bit - shortcut to this forum

biolizard89
Posts: 2001
Joined: Tue Jun 05, 2012 6:25 am
os: linux

Re: OpenBazaar and namecoin

Post by biolizard89 »

I agree with domob on all points; this is very nice work.

As domob says, NMControl would probably be a better fit than DNSChain; we can provide sample code if it's helpful. If you're not aware, the Namecoin blockchain is quite small and is a short download... last time I downloaded it, it was about an hour and about 1.1 GB. So I imagine a lot of users would prefer to store a local blockchain for the increased security.

This may or not be on topic, but it would be quite cool to use OpenBazaar for facilitating atomic trading of Namecoin names -- we have scripts (ANTPY) which can trade Namecoin names for NMC currency with no risk to either party, but we've been looking for a good way to help buyers and sellers find each other... would OpenBazaar be a potential solution sometime in the future? (I realize this wouldn't be likely to happen soon, which is totally fine -- just looking for areas of future collaboration.)

Regarding namespace usage, I agree with domob that id/ is the preferred namespace. (We might have a more formal statement on that soon for people who are interested in the reasoning there.)
Jeremy Rand, Lead Namecoin Application Engineer
NameID: id/jeremy
DyName: Dynamic DNS update client for .bit domains.

Donations: BTC 1EcUWRa9H6ZuWPkF3BDj6k4k1vCgv41ab8 ; NMC NFqbaS7ReiQ9MBmsowwcDSmp4iDznjmEh5

itani101
Posts: 2
Joined: Sat Aug 03, 2013 3:36 am
os: mac

Re: OpenBazaar and namecoin

Post by itani101 »

Are the names case sensitive? For example "market" and "Market" are treated as different names in the Namecoin client. Also the client will also let you register symbols like "#" "$" "&" "!" etc. So could you have "$" as an id/?

signup292
Posts: 79
Joined: Sun Mar 02, 2014 11:02 pm

.

Post by signup292 »

.
Last edited by signup292 on Sun Feb 22, 2015 1:08 am, edited 1 time in total.

domob
Posts: 1129
Joined: Mon Jun 24, 2013 11:27 am
Contact:

Re: OpenBazaar and namecoin

Post by domob »

itani101 wrote:Are the names case sensitive? For example "market" and "Market" are treated as different names in the Namecoin client. Also the client will also let you register symbols like "#" "$" "&" "!" etc. So could you have "$" as an id/?
In principle, names are case sensitive and can be arbitrary (including binary). However, for id/ names the spec defines only certain names to be valid - see http://wiki.namecoin.info/?title=Identity. It is up to client programs that use id/ to follow that proposal, but I think it makes sense for OpenBazaar to do that. I. e., they won't allow names not conforming to the spec to be entered and they sanitise input (make lower case, for instance) in something like a "send to" or "search for name" input box.
BTC: 1domobKsPZ5cWk2kXssD8p8ES1qffGUCm | NMC: NCdomobcmcmVdxC5yxMitojQ4tvAtv99pY
BM-GtQnWM3vcdorfqpKXsmfHQ4rVYPG5pKS
Use your Namecoin identity as OpenID: https://nameid.org/

itani101
Posts: 2
Joined: Sat Aug 03, 2013 3:36 am
os: mac

Re: OpenBazaar and namecoin

Post by itani101 »

In principle, names are case sensitive and can be arbitrary (including binary). However, for id/ names the spec defines only certain names to be valid - see http://wiki.namecoin.info/?title=Identity. It is up to client programs that use id/ to follow that proposal, but I think it makes sense for OpenBazaar to do that. I. e., they won't allow names not conforming to the spec to be entered and they sanitise input (make lower case, for instance) in something like a "send to" or "search for name" input box.
Thanks that makes sense.
Otherwise it would be more difficult to register a blockchain hash for example.
Why?

signup292
Posts: 79
Joined: Sun Mar 02, 2014 11:02 pm

.

Post by signup292 »

.
Last edited by signup292 on Sun Feb 22, 2015 1:07 am, edited 1 time in total.

Post Reply