Pages:
Author

Topic: [BETA] Dark Exchange: a 100% decentralized p2p exchange - page 5. (Read 15725 times)

full member
Activity: 164
Merit: 100
Quote
## Usage
Dark Exchange is currently under development and cannot be run yet.
=(

Fixed this to point to the wiki. Smiley

https://github.com/macourtney/Dark-Exchange
newbie
Activity: 21
Merit: 0
"lein run" complained about not finding drift*-SNAPSHOT, changed that and it runs. Takes A LOT of memory though Sad, which is not really unexpected for Java in general...

Why not use (native!), it would make things look less ugly Smiley

I also got the same error here.

What do you think of seesaw BTW? I guess it's the best that clojure has available currently.

Edit: Got two peers, so me and dev only? The search list should (for testing at least) really display all the offers , or at least all offers that use a preffered currency. I put a "bitcoin for euro by mail" offer, does someone see it?

EDIT2: On the first run, the identity tab was empty. Restarted it w/ and w/o :development: It was faster, takes a bit less memory, I now have an identity displayed. How are the normal and :development versions different other than that they maintain separate identities?
full member
Activity: 164
Merit: 100
newbie
Activity: 51
Merit: 0
Quote
## Usage
Dark Exchange is currently under development and cannot be run yet.
=(
hero member
Activity: 686
Merit: 501
Stephen Reed
I installed I2P OK.
Then I downloaded and installed Dark Exchange.  After I created an account OK, I attempted to trade US dollars for bitcoins and this error occurred...


Code:
ERROR [darkexchange.model.interceptors.signature-interceptor]: an error occured while signing or verifying a signature on the client side.
java.security.NoSuchAlgorithmException: Error constructing implementation (algorithm: SHA1WithRSAEncryption, provider: BC, class: org.bouncycastle.jce.provider.JDKDigestSignature$SHA1WithRSAEncryption)
at java.security.Provider$Service.newInstance(Provider.java:1245)
at sun.security.jca.GetInstance.getInstance(GetInstance.java:220)
at sun.security.jca.GetInstance.getInstance(GetInstance.java:190)
at java.security.Signature.getInstance(Signature.java:324)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at clojure.lang.Reflector.invokeMatchingMethod(Reflector.java:90)
at clojure.lang.Reflector.invokeStaticMethod(Reflector.java:202)
at darkexchange.model.security$sign.invoke(security.clj:139)
at darkexchange.model.user$sign.invoke(user.clj:141)
at darkexchange.model.interceptors.signature_interceptor$sign.invoke(signature_interceptor.clj:17)
at darkexchange.model.interceptors.signature_interceptor$client_interceptor.invoke(signature_interceptor.clj:47)
at darkexchange.model.interceptors.interceptor_util$compose_interceptors$fn__4707$fn__4708.invoke(interceptor_util.clj:4)
at darkexchange.model.interceptors.identity_interceptor$client_interceptor.invoke(identity_interceptor.clj:17)
at darkexchange.model.interceptors.interceptor_util$compose_interceptors$fn__4707.invoke(interceptor_util.clj:4)
at darkexchange.model.interceptors.interceptor_util$run_interceptors.invoke(interceptor_util.clj:9)
at darkexchange.model.interceptors.client_interceptors$run_interceptors.invoke(client_interceptors.clj:10)
at darkexchange.model.client$send_message.invoke(client.clj:26)
at darkexchange.model.peer$get_peers_from.invoke(peer.clj:98)
at darkexchange.model.peer$all_network_destinations.invoke(peer.clj:152)
at darkexchange.model.peer$download_peers_background.invoke(peer.clj:159)
at darkexchange.model.peer$download_peers_background.invoke(peer.clj:164)
at darkexchange.model.peer$download_peers_background.invoke(peer.clj:155)
at clojure.lang.AFn.run(AFn.java:24)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.SecurityException: class "org.bouncycastle.crypto.Digest"'s signer information does not match signer information of other classes in the same package
at java.lang.ClassLoader.checkCerts(ClassLoader.java:807)
at java.lang.ClassLoader.preDefineClass(ClassLoader.java:488)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:626)
at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
at java.lang.Class.getConstructor0(Class.java:2699)
at java.lang.Class.newInstance0(Class.java:326)
at java.lang.Class.newInstance(Class.java:308)
at java.security.Provider$Service.newInstance(Provider.java:1221)
... 26 more
ERROR [darkexchange.model.interceptors.signature-interceptor]: an error occured while signing or verifying a signature on the client side.
java.security.NoSuchAlgorithmException: Error constructing implementation (algorithm: SHA1WithRSAEncryption, provider: BC, class: org.bouncycastle.jce.provider.JDKDigestSignature$SHA1WithRSAEncryption)
at java.security.Provider$Service.newInstance(Provider.java:1245)
at sun.security.jca.GetInstance.getInstance(GetInstance.java:220)
at sun.security.jca.GetInstance.getInstance(GetInstance.java:190)
at java.security.Signature.getInstance(Signature.java:324)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at clojure.lang.Reflector.invokeMatchingMethod(Reflector.java:90)
at clojure.lang.Reflector.invokeStaticMethod(Reflector.java:202)
at darkexchange.model.security$sign.invoke(security.clj:139)
at darkexchange.model.user$sign.invoke(user.clj:141)
at darkexchange.model.interceptors.signature_interceptor$sign.invoke(signature_interceptor.clj:17)
at darkexchange.model.interceptors.signature_interceptor$client_interceptor.invoke(signature_interceptor.clj:47)
at darkexchange.model.interceptors.interceptor_util$compose_interceptors$fn__4707$fn__4708.invoke(interceptor_util.clj:4)
at darkexchange.model.interceptors.identity_interceptor$client_interceptor.invoke(identity_interceptor.clj:17)
at darkexchange.model.interceptors.interceptor_util$compose_interceptors$fn__4707.invoke(interceptor_util.clj:4)
at darkexchange.model.interceptors.interceptor_util$run_interceptors.invoke(interceptor_util.clj:9)
at darkexchange.model.interceptors.client_interceptors$run_interceptors.invoke(client_interceptors.clj:10)
at darkexchange.model.client$send_message.invoke(client.clj:26)
at darkexchange.model.calls.notify$call.invoke(notify.clj:10)
at darkexchange.model.peer$notify_destination.invoke(peer.clj:92)
at darkexchange.model.peer$notify_all_peers.invoke(peer.clj:134)
at darkexchange.model.peer$add_destinations.invoke(peer.clj:147)
at darkexchange.model.peer$download_peers_background.invoke(peer.clj:161)
at darkexchange.model.peer$download_peers_background.invoke(peer.clj:164)
at darkexchange.model.peer$download_peers_background.invoke(peer.clj:155)
at clojure.lang.AFn.run(AFn.java:24)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.SecurityException: class "org.bouncycastle.crypto.Digest"'s signer information does not match signer information of other classes in the same package
at java.lang.ClassLoader.checkCerts(ClassLoader.java:807)
at java.lang.ClassLoader.preDefineClass(ClassLoader.java:488)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:626)
at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
at java.lang.Class.getConstructor0(Class.java:2699)
at java.lang.Class.newInstance0(Class.java:326)
at java.lang.Class.newInstance(Class.java:308)
at java.security.Provider$Service.newInstance(Provider.java:1221)
... 28 more

full member
Activity: 164
Merit: 100
TL;DR: https://github.com/macourtney/Dark-Exchange

You read that right! Dark Exchange is a 100% decentralized p2p exchange. No more worrying about exchange websites going down or locking your account. You now have complete control of your bitcoin exchanges and accounts.

Because Dark Exchange is decentralized, it can't work like Mt Gox or Trade Hill. Instead, it works more like bitcoin-otc and Bitcoin Market. You post offers and others accept them, or you can search all of the offers on the network and select the one you want. Dark Exchange will walk you through the process of completing a trade.

Advantages:

1. Dark Exchange can never be shutdown by anyone (including me) for any reason. As long as there are at least two nodes on the network, the exchange is up and running. (Actually this is more of a goal than a feature at this point. Though I tried to program it this way, I'm not sure if it will really stand up to real world use yet. But, that's why it's called Beta.)

2. No bitcoins or other money is held on a central server. You have complete control over your money the entire time.

3. Virtually all currencies and payment methods are supported. Any currencies or payment methods not already included can be added quickly.

4. No commissions. Free to use.

5. Open source. All source code for Dark Exchange can be found at: https://github.com/macourtney/Dark-Exchange

6. Runs on the I2P network. All connections are end to end encrypted, and privacy is under your control.


Dark Exchange is in Beta right now. Though I've run as many tests as I can think of on it, I'm sure it won't work exactly as advertised right now. I'm looking for intrepid people interested in helping me test Dark Exchange by using it.

All information on how to to download, install and use Dark Exchange can be found on the Dark Exchange wiki: https://github.com/macourtney/Dark-Exchange/wiki

If you have any troubles installing or using the exchange, let me know so I can start entering in issues to make Dark Exchange better.


And since it's the 4th.. Let's all declare independence from centralization with Dark Exchange! Smiley
Pages:
Jump to: