Pages:
Author

Topic: [announce] Namecoin - a distributed naming system based on Bitcoin - page 33. (Read 597092 times)

hero member
Activity: 784
Merit: 544
Hmm ... I get a similar error:

Code:
{"jsonrpc":"1.0","id":"curltext","error":{"code":0,"message":"Server returned HTTP response code: 500 for URL: https://namecoin.webbtc.com/name/d/domob.json?history&with_height&with_rawtx&with_mrkl_branch&with_tx_idx&raw","data":{"exceptionTypeName":"java.io.IOException","message":"Server returned HTTP response code: 500 for URL: https://namecoin.webbtc.com/name/d/domob.json?history&with_height&with_rawtx&with_mrkl_branch&with_tx_idx&raw"}}}

Check the terminal, where namecoinj is running while the curl command is executed. There might be an exception, including "HTTP response code: 500" (see below), which in my case correlates with the curl command. I think, there lies the dog buried.

Code:
java.lang.reflect.InvocationTargetException: null
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_162]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_162]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_162]
at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_162]
at com.googlecode.jsonrpc4j.JsonRpcServer.invoke(JsonRpcServer.java:513) [jsonrpc4j-1.1.jar!/:na]
at com.googlecode.jsonrpc4j.JsonRpcServer.handleObject(JsonRpcServer.java:384) [jsonrpc4j-1.1.jar!/:na]
at com.googlecode.jsonrpc4j.JsonRpcServer.handleNode(JsonRpcServer.java:293) [jsonrpc4j-1.1.jar!/:na]
at com.googlecode.jsonrpc4j.JsonRpcServer.handle(JsonRpcServer.java:230) [jsonrpc4j-1.1.jar!/:na]
at com.googlecode.jsonrpc4j.JsonRpcServer.handle(JsonRpcServer.java:207) [jsonrpc4j-1.1.jar!/:na]
at com.googlecode.jsonrpc4j.spring.JsonServiceExporter.handleRequest(JsonServiceExporter.java:40) [jsonrpc4j-1.1.jar!/:na]
at org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter.handle(HttpRequestHandlerAdapter.java:51) [spring-webmvc-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:967) [spring-webmvc-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:901) [spring-webmvc-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970) [spring-webmvc-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872) [spring-webmvc-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:661) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846) [spring-webmvc-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) [tomcat-embed-websocket-8.5.15.jar!/:8.5.15]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99) [spring-web-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at org.springframework.web.filter.HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFilter.java:105) [spring-web-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:81) [spring-web-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197) [spring-web-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-4.3.9.RELEASE.jar!/:4.3.9.RELEASE]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:861) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_162]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_162]
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-embed-core-8.5.15.jar!/:8.5.15]
at java.lang.Thread.run(Thread.java:748) [na:1.8.0_162]
Caused by: java.io.IOException: Server returned HTTP response code: 500 for URL: https://namecoin.webbtc.com/name/d/domob.json?history&with_height&with_rawtx&with_mrkl_branch&with_tx_idx&raw
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1894) ~[na:1.8.0_162]
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1492) ~[na:1.8.0_162]
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:263) ~[na:1.8.0_162]
at java.net.URL.openStream(URL.java:1045) ~[na:1.8.0_162]
at com.fasterxml.jackson.core.JsonFactory._optimizedStreamFromURL(JsonFactory.java:1547) ~[jackson-core-2.8.8.jar!/:2.8.8]
at com.fasterxml.jackson.core.JsonFactory.createParser(JsonFactory.java:783) ~[jackson-core-2.8.8.jar!/:2.8.8]
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2797) ~[jackson-databind-2.8.8.jar!/:2.8.8]
at org.libdohj.names.NameLookupLatestRestMerkleApi.getUntrustedNameHistory(NameLookupLatestRestMerkleApi.java:130) ~[libdohj-namecoin-0.14-SNAPSHOT.jar!/:na]
at org.libdohj.names.NameLookupLatestRestMerkleApi.getLatestUntrustedNameData(NameLookupLatestRestMerkleApi.java:103) ~[libdohj-namecoin-0.14-SNAPSHOT.jar!/:na]
at org.libdohj.names.NameLookupLatestRestMerkleApi.getNameTransaction(NameLookupLatestRestMerkleApi.java:63) ~[libdohj-namecoin-0.14-SNAPSHOT.jar!/:na]
at org.namecoin.bitcoinj.spring.service.NameLookupService.name_show(NameLookupService.java:157) ~[bitcoinj-server-0.2.7-SNAPSHOT.jar!/:na]
... 55 common frames omitted

I did not set the environment variable as recommended in the instructions. And I used OpendJDK.
hero member
Activity: 784
Merit: 544
I installed the ConsensusJ light client now, and it runs (instructions are here). But I run into a problem.

I will also try it in the evening and will come back to you.  Smiley
legendary
Activity: 3906
Merit: 6249
Decentralization Maximalist
I installed the ConsensusJ light client now, and it runs (instructions are here). But I run into a problem.

When I try to access the RPC server via curl, I get an HTTP error 500 ("Internal Server Error"). I used the example in the documentation:

Code:
curl --user user:pass --data-binary '{"jsonrpc":"1.0","id":"curltext","method":"name_show","params":["d/domob"]}' -H 'content-type:text/plain;' http://127.0.0.1:8080

and the error I got was:

Code:
{"jsonrpc":"1.0","id":"curltext","error":{"code":0,"message":"Server returned HTTP response code: 500 for URL: https://namecoin.webbtc.com/name/d/nf.json?history&with_height&with_rawtx&with_mrkl_branch&with_tx_idx&raw","data":{"exceptionTypeName":"java.io.IOException","message":"Server returned HTTP response code: 500 for URL: https://namecoin.webbtc.com/name/d/nf.json?history&with_height&with_rawtx&with_mrkl_branch&with_tx_idx&raw"}}}

It's strange that it connects to a "webbtc.com" domain (a block explorer), and when I enter the URL mentioned in the error in a browser, I also get the Internal Server Error. So I think there's some configuration step I missed ... it should use my own client and not a block explorer to lookup a name, or not?

I don't know also how to set up the RPC user and password. Normally there should be a "$coin.conf" file to setup these things, but simply placing a "namecoin.conf" in the directory doesn't change anything (I also didn't really expect that to work, haha).
copper member
Activity: 112
Merit: 0
You never knows until you try
The only reason I never bought namecoin is because there is no electrum.Not too many peeps want to spend all day downloading a whole blockchain and less want to leave coins sitting on an exchange either.
agree, usually it takes few hours, even not few Wink
sr. member
Activity: 429
Merit: 266
The only reason I never bought namecoin is because there is no electrum.Not too many peeps want to spend all day downloading a whole blockchain and less want to leave coins sitting on an exchange either.
legendary
Activity: 3906
Merit: 6249
Decentralization Maximalist
A light client would be perfect. But what about this:
Quote
It synchronizes faster and uses less storage than Namecoin Core, but trusts Namecoin miners more than Namecoin Core does.

Does a light client not fully depend on the set of full nodes?
You're right. I think this is the general problem light clients have (see Thin Client Security, I think you may know it already). As ConsensusJ seems to be based on BitcoinJ, it seems to feature a different security model than Electrum (it selects a set of full nodes and compares their data, instead of selecting one single "trustworthy" node).

In the case of Namecoin name registrations, there is less potential for attacks to occur for the average user (although there may be so when the project becomes really popular). Additionally, the light client, as far as I understand this documentation website  does only support name lookups but not registrations of new names. (I'm starting with that and still haven't installed it, so I may be wrong with this; the installation procedure seems to be still no "one-click-procedure", that is other usability challenge to improve ...)
sr. member
Activity: 672
Merit: 250
Namecoin has many useful functions, therefore it is impossible to consider it simply as an ordinary coin. It is an innovation that will show itself to the world. I read information about the Safinus project as an investment platform. I also see a lot of revolutionary innovations there

Namecoin also has an incredible history in the crypto space. I hope it can go back up again as it is one of the oldest coins out there!
I agree in many respects with you and your opinion. Now probably have to still look and technology that will be in demand in the future. But this coin test of time and I think it is still manifest themselves in the future.
newbie
Activity: 62
Merit: 0
Namecoin (NMC) all-in-one info now added here:

https://chatoncrypto.com/Crypto/C/31-NMC-Namecoin


Thanks.
hero member
Activity: 784
Merit: 544
PS: Just saw that there is an actively developed light client called ConsensusJ. It seems to be still experimental, but I'll look at it.

A light client would be perfect. But what about this:

Quote
It synchronizes faster and uses less storage than Namecoin Core, but trusts Namecoin miners more than Namecoin Core does.

Does a light client not fully depend on the set of full nodes?

 Huh
hero member
Activity: 784
Merit: 544
Is this a plan?
Looks very good for me.

Done.

https://github.com/B-DNS/Firefox/issues/5

Now we have to wait. I am not sure anymore, whether the project is alive or not. Last code changes were done 5 months ago.

I would recommend, that we wait for a week or two and then fork the project.
legendary
Activity: 3906
Merit: 6249
Decentralization Maximalist
Is this a plan?
Looks very good for me.

The second part could be to investigate if the Electrum client is capable to resolve NMC addresses for "a little bit more advanced" users. I think however that this wouldn't be a very easy task, as I just looked into Electrum-NMC's github repo, and it seems to be 1) a bit old (its codebase is older than the "big vulnerability fix" earlier this year) and 2) is not marked as "ready for the end user".

So likely it needs the attention of skilled developers.

PS: Just saw that there is an actively developed light client called ConsensusJ. It seems to be still experimental, but I'll look at it.
hero member
Activity: 784
Merit: 544
Yes, but the IP of the server with the Namecoin daemon being configurable would be better.

I see.

I haven't still looked into the details, [...]

Me neither. And I feel bad about that. However, it is also important to figure out a reasonable roadmap.

[...] but in the Blockchain DNS Chrome extension there seems no easy way to choose a custom server to do the resolution (e.g. without changing the code). In theory you could configure that "alternative DNS server" address in the browser settings without any extension, but that's already too difficult for most users (otherwise, there would be much more OpenNIC users, for example).

So an extension based on Blockchain DNS with a default server and an easy-to-use interface (e.g. with infographics and explanations, these details are important for usability and mass adoption, I think) to change the server would be the best way to go, for me. The extension could contain a (regularly updated) list of available servers.

Okay. Then let's conclude: We do not need to develop an addon from scratch. We can use blockchain-dns as a starting point. Convincing the developer(s) of this addon to do the work for us would be most efficient. Alternatively, I could fork the github-repository and we introduce the corresponding changes. Which is clearly more work, but I think the hardest part is to get used to new concepts.

But firstly, we should contact the developer(s). The project looks alive. I can do this via github. I am traveling this weekend and could contact them Sunday evening.

Is this a plan?
legendary
Activity: 3906
Merit: 6249
Decentralization Maximalist
Hmm ... I think some "centralized" server is always necessary, otherwise people must download and maintain their own copy of the namecoin blockchain.
Yes, but the IP of the server with the Namecoin daemon being configurable would be better. I haven't still looked into the details, but in the Blockchain DNS Chrome extension there seems no easy way to choose a custom server to do the resolution (e.g. without changing the code). In theory you could configure that "alternative DNS server" address in the browser settings without any extension, but that's already too difficult for most users (otherwise, there would be much more OpenNIC users, for example).

So an extension based on Blockchain DNS with a default server and an easy-to-use interface (e.g. with infographics and explanations, these details are important for usability and mass adoption, I think) to change the server would be the best way to go, for me. The extension could contain a (regularly updated) list of available servers.

Quote
This restricts usability too much. Or is there something like a light client for namecoin which only keeps track of the domain names?
There seems to be an Electrum client for Namecoin, but I never tried it and so I don't know if it is sufficient to keep track of the domain names.
newbie
Activity: 84
Merit: 0
Any road maps I can check on? Any websites I can find more information?
member
Activity: 161
Merit: 11
A long coin is developed. Because of this, it is hard for the project to remain active and hope that the project side will remain passionate.
hero member
Activity: 784
Merit: 544
is there some sort of chat client we can all talk about this coin? like a telegram or slack?

There is a specific forum for Namecoin. See

https://forum.namecoin.org/

If you register there, check also out the following message:

https://forum.namecoin.org/viewtopic.php?f=2&t=2691&sid=68679f2b45b976d36abaf55b4331c17a
hero member
Activity: 784
Merit: 544
That's the spirit. You can't expect people to do the work for you. If you want a great community you have to start yourself.

True. But I can expect people to help me with information. Four eyes see more than two. And analogously, two brains know more than one.
hero member
Activity: 784
Merit: 544
That is, if you know about some existing and working broswer-app being open source, please post this here. d5000 already mentioned PeerName, but I am not sure if this project is open source.
I just saw that Blockchain DNS is also available for Firefox (and Chrome, as I already wrote), according to its own webpage. It has a Github repository, and is open source (Unlicense = Public Domain software). I had never seen this project before, so I still didn't test it but I'll give it a try (at a first glance, on Chromium it works fine, while I couldn't test it that easily with my FF because I use the older ESR version and it requires FF 55).

Thanks d5000. This project looks promising. I have the same problem with the firefox version number. There are Linux-distros which are behind the current firefox version so that the addon won't work. Nevertheless, I will look into the github repository.

The project, however, like PeerName, uses a centralized server to resolve the .bit domains. But as far as I understand the website you could set up your own service to do this. Maybe one can take this as a base for a totally decentralized application, e.g. where you can simply put in the IP of the server to do the "hard work" via an easy user interface?

Hmm ... I think some "centralized" server is always necessary, otherwise people must download and maintain their own copy of the namecoin blockchain. This restricts usability too much. Or is there something like a light client for namecoin which only keeps track of the domain names?

If I mix-up too many concepts, please correct me.
full member
Activity: 133
Merit: 100
That's the spirit. You can't expect people to do the work for you. If you want a great community you have to start yourself. As for me, I put another few hundreds dollars in Namecoin today. Total stack is 2000NMC. Only 1/3 to my accumulation target.
legendary
Activity: 3906
Merit: 6249
Decentralization Maximalist
That is, if you know about some existing and working broswer-app being open source, please post this here. d5000 already mentioned PeerName, but I am not sure if this project is open source.
I just saw that Blockchain DNS is also available for Firefox (and Chrome, as I already wrote), according to its own webpage. It has a Github repository, and is open source (Unlicense = Public Domain software). I had never seen this project before, so I still didn't test it but I'll give it a try (at a first glance, on Chromium it works fine, while I couldn't test it that easily with my FF because I use the older ESR version and it requires FF 55).

The project, however, like PeerName, uses a centralized server to resolve the .bit domains. But as far as I understand the website you could set up your own service to do this. Maybe one can take this as a base for a totally decentralized application, e.g. where you can simply put in the IP of the server to do the "hard work" via an easy user interface?
Pages:
Jump to: