elective-stereophonic
elective-stereophonic
A simpler Gateway built in to official client  
Please login or register.

Login with username, password and session length
Advanced search  

News:

Latest Stable Nxt Client: Nxt 1.12.2

Pages: 1 [2] 3  All

Author Topic: A simpler Gateway built in to official client  (Read 7445 times)

Eadeqa

  • Hero Member
  • *****
  • Karma: +83/-68
  • Offline Offline
  • Posts: 1888
    • View Profile
Re: A simpler Gateway built in to official client
« Reply #20 on: June 19, 2014, 07:05:53 am »


are there things I can do to make MGW simpler for users other than integrating it into standard GUI?

I haven't yet tried it,but am I am trying now.  What's the start up time with NXTservices_M08f? It's been something like an hour and it's scanning the blockchain?

I don't think this will work. In fact the user should not have to install anything on his computer. It should work with just GUI and NRS



Logged
NXT-GZYP-FMRT-FQ9K-3YQGS

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: A simpler Gateway built in to official client
« Reply #21 on: June 19, 2014, 07:09:39 am »


are there things I can do to make MGW simpler for users other than integrating it into standard GUI?

I haven't yet tried it,but am I am trying now.  What's the start up time with NXTservices_M08f? It's been something like an hour and it's scanning the blockchain?

I don't think this will work. In fact the user should not have to install anything on his computer. It should work with just GUI and NRS
I am working on speeding it up. There is also a libcurl wierdness and I have to put a couple millisecond delay that makes it 10 times slower. Hopefully someone can find that bug and most of the slowness issues will be solved
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

Eadeqa

  • Hero Member
  • *****
  • Karma: +83/-68
  • Offline Offline
  • Posts: 1888
    • View Profile
Re: A simpler Gateway built in to official client
« Reply #22 on: June 19, 2014, 07:14:57 am »

I am working on speeding it up. There is also a libcurl wierdness and I have to put a couple millisecond delay that makes it 10 times slower. Hopefully someone can find that bug and most of the slowness issues will be solved


Is it possible to make it work with just GUI and NRS without the user installing anything? The user could generate BTC address by sending a request on NRS (messaging system) , and the remote server would returns the depositing address via Nxt messaging system.



Logged
NXT-GZYP-FMRT-FQ9K-3YQGS

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: A simpler Gateway built in to official client
« Reply #23 on: June 19, 2014, 07:20:01 am »

I am working on speeding it up. There is also a libcurl wierdness and I have to put a couple millisecond delay that makes it 10 times slower. Hopefully someone can find that bug and most of the slowness issues will be solved


Is it possible to make it work with just GUI and NRS without the user installing anything? The user could generate BTC address by sending a request on NRS (messaging system) , and the remote server would returns the depositing address via Nxt messaging system.
Yes I think I can do that. I had been so concentrating on a peer verified gateway that I pushed all the MGW code (other than actual wallets and payments) into all the nodes.

Currently there is:
A) just NXT blockchain to track assets and AM's
B) updating MGW status without blockchain info (assets and AM's)
C) linkage to bitcoin-qt to get blockchain info, this recreates MGW internal state on each node at level C)

Now if you dont care about even B), then I can simply make a version that does A) without any history. The deposit address received would need to be stored locally so an AM isnt needed each time you run the GUI, but I think that is like storing the contact info locally.

When we have an actual GUI to store the deposit addresses, I can make a lean version real quick

James

P.S. Two great feedbacks within 1 hour! Great work. Thanks!!
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

Eadeqa

  • Hero Member
  • *****
  • Karma: +83/-68
  • Offline Offline
  • Posts: 1888
    • View Profile
Re: A simpler Gateway built in to official client
« Reply #24 on: June 19, 2014, 07:30:37 am »

Ok, then as far as I am concerned, I am only interested in GUI (preferably written in Javascript -- maybe even clone of Wesley client with extra options for gateway). From a user perspective, they should not have to deal with NXTservices at all. That should be server side code only (even totally closed source, I don't care). All the communications between the servers and users could be done via Nxt messaging system (like generating depositing address) and withdrawals could be done by sending asset back to to the issuer and including the withdrawal address in that transaction (the GUI client should check if the withdrawal address is valid BTC address before sending the transaction to catch user errors). 

There is nothing more to do from user perspective.

« Last Edit: June 19, 2014, 07:34:57 am by Eadeqa »
Logged
NXT-GZYP-FMRT-FQ9K-3YQGS

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: A simpler Gateway built in to official client
« Reply #25 on: June 19, 2014, 07:33:44 am »

Ok, then as far as I am concerned, I am only interested in GUI (preferably written in Javascript -- maybe even clone of Wesley client with extra options for gateway). From a user perspective, they should not have to deal with NXTservices at all. That should be server side code only (even totally closed source, I don't care). All the communications between the servers and users could be done via Nxt messaging system (like generating depositing address) and withdrawals could be done by sending asset back to to the issuer.
Thats pretty much how it works now plus all the MGW state duplication and I can just disable that
I am hoping wesley can integrate the AM processing into the official GUI, but if not the longzai version can support the lite mode

Thanks again! I knew you would be helpful. You want some MGW assets? You have earned them

James
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

Eadeqa

  • Hero Member
  • *****
  • Karma: +83/-68
  • Offline Offline
  • Posts: 1888
    • View Profile
Re: A simpler Gateway built in to official client
« Reply #26 on: June 19, 2014, 07:41:55 am »

Quote
Thats pretty much how it works now plus all the MGW state duplication and I can just disable that
I am hoping wesley can integrate the AM processing into the official GUI, but if not the longzai version can support the lite mode

Since Wesley client is open source and free to use, it shouldn't be a problem to just clone it and release it with extra options for gateway. It should be easy to do  for any Javascript developer (maybe even Wesley himself?)  I doubt JL will agree to including it in official distribution due to centralization issue.

Quote
Thanks again! I knew you would be helpful. You want some MGW assets? You have earned them

Sure
Logged
NXT-GZYP-FMRT-FQ9K-3YQGS

Graviton

  • Sr. Member
  • ****
  • Karma: +62/-30
  • Offline Offline
  • Posts: 297
    • View Profile
    • DGEX
Re: A simpler Gateway built in to official client
« Reply #27 on: June 19, 2014, 08:17:32 am »

and I still think Dgex should look into implementing it in OffSpring.
Thanks Eadeqa for the trust! DGEX is working on such a system since a while. UI independent, full JSON driven interface with passthrough to AE.

Quote
It can be all automated with very quick withdrawals and deposits but yet remain very secure (close to 100% if servers are physically secure).
Close to 100% is far cry. Most of the hacks unfortunately occur at frontend software, middle layer, social engineering or a combination of these.
Logged
* dgex.com operator * nextcoin.org founder * mofowallet.com multiwallet founding member

Eadeqa

  • Hero Member
  • *****
  • Karma: +83/-68
  • Offline Offline
  • Posts: 1888
    • View Profile
Re: A simpler Gateway built in to official client
« Reply #28 on: June 19, 2014, 08:23:44 am »

Close to 100% is far cry. Most of the hacks unfortunately occur at frontend software, middle layer, social engineering or a combination of these.

This maybe true, but if everything (deposit addresses, withdrawal) go through Nxt blockchain,  it will not be your error if a user loses his Nxt password 

No logins/passwords (not https issues) and your server would have unknown IP
Logged
NXT-GZYP-FMRT-FQ9K-3YQGS

Graviton

  • Sr. Member
  • ****
  • Karma: +62/-30
  • Offline Offline
  • Posts: 297
    • View Profile
    • DGEX
Re: A simpler Gateway built in to official client
« Reply #29 on: June 19, 2014, 08:41:00 am »

and your server would have unknown IP
That's what we do since December. The frontend still has an IP and procedures that forward actions to the secret server. Manipulations can be carried out all the same no matter how many middle layers you have before the secret backend.

Quote
No logins/passwords (not https issues)
I see your point in simplifying the process up to a point of no user accounts. I have been thinking of this. I'll need to talk to Dirk about the blockchain things. He already figured out authentication can be done through blockchain messaging.
Logged
* dgex.com operator * nextcoin.org founder * mofowallet.com multiwallet founding member

Eadeqa

  • Hero Member
  • *****
  • Karma: +83/-68
  • Offline Offline
  • Posts: 1888
    • View Profile
Re: A simpler Gateway built in to official client
« Reply #30 on: June 19, 2014, 08:46:28 am »

That's what we do since December. The frontend still has an IP and procedures that forward actions to the secret server. Manipulations can be carried out all the same no matter how many middle layers you have before the secret backend.

It's not the same as the frontend knows (or talks to) secret server. If you do it via Nxt blockchain, there is no front end. The secret server only checks the blockchain and has no direct link to frontend.
Logged
NXT-GZYP-FMRT-FQ9K-3YQGS

Eadeqa

  • Hero Member
  • *****
  • Karma: +83/-68
  • Offline Offline
  • Posts: 1888
    • View Profile
Re: A simpler Gateway built in to official client
« Reply #31 on: June 19, 2014, 09:05:42 am »

He already figured out authentication can be done through blockchain messaging.

By the way, I don't know what that means. All Nxt messages are already "authenticated" as they are signed just as all Nxt transactions. Changing anything in the message will invalidate the signature.

A Nxt user sends a message asking for deposit address. The secret server sees the message in the blockchain (no direct link to the user -- no front end).  The server sends back depositing address via Nxt message. That address can't be changed as it's already signed (curve25519). It can even be encrypted (AES) The OffSpring client only have to check if the response was sent by asset issuer.


« Last Edit: June 19, 2014, 09:09:06 am by Eadeqa »
Logged
NXT-GZYP-FMRT-FQ9K-3YQGS

Graviton

  • Sr. Member
  • ****
  • Karma: +62/-30
  • Offline Offline
  • Posts: 297
    • View Profile
    • DGEX
Re: A simpler Gateway built in to official client
« Reply #32 on: June 19, 2014, 09:10:23 am »

By the way, I don't know what that means.
DGEX login authentication :)

The blockchain thing with non-accounts indeed removes most of the weak links, you're right about that.
Logged
* dgex.com operator * nextcoin.org founder * mofowallet.com multiwallet founding member

rudeboi

  • Hero Member
  • *****
  • Karma: +55/-4
  • Offline Offline
  • Posts: 633
  • Nxt Organization Member
    • View Profile
Re: A simpler Gateway built in to official client
« Reply #33 on: June 19, 2014, 09:58:10 pm »

I think most would want mgw in the official gui, however there are issues of doing this. The best approach I think would be addon support like xbmc.

If there wasn't any kind of official GUI support even by add on, then I like the idea of a clone of the wesley source with mgw support.

This then gives users the choice if they want mgw version at their own risk, I would expect most nxters to try, this would put pressure on adoption into the main gui.

In the same way it wouldn't stop other teams from producing more centralised add ons ie DGEX addon, let the user decide what they want to use.
Logged
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬  ▄▀▀▀▀▀▀▀▀▄  ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬●  nimirum  ●▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
▬▬▬ ◖ENDING CENSORSHIP ONLINE◗  ◖ ICO OPEN NOW◗ ▬▬▬

valarmg

  • Hero Member
  • *****
  • Karma: +178/-57
  • Offline Offline
  • Posts: 1766
    • View Profile
Re: A simpler Gateway built in to official client
« Reply #34 on: June 19, 2014, 10:10:57 pm »

I think most would want mgw in the official gui, however there are issues of doing this. The best approach I think would be addon support like xbmc.

If there wasn't any kind of official GUI support even by add on, then I like the idea of a clone of the wesley source with mgw support.

This then gives users the choice if they want mgw version at their own risk, I would expect most nxters to try, this would put pressure on adoption into the main gui.

In the same way it wouldn't stop other teams from producing more centralised add ons ie DGEX addon, let the user decide what they want to use.

Most likely the initial release of the MGW will be via a cloned client. However, ultimately, something like this could be the best solution. https://nxtforum.org/nxt-improvement-proposals/plugin-feature-to-nxt-client-(wesley's-ui)-proposal-thread
Logged
NXT-CSED-4PK5-AR4V-6UB5V

VanBreuk

  • Hero Member
  • *****
  • Karma: +362/-19
  • Offline Offline
  • Posts: 2772
    • View Profile
Re: A simpler Gateway built in to official client
« Reply #35 on: June 19, 2014, 10:25:51 pm »

Thanks for the feedback, keeping an eye on this. Some of the ideas mentioned can make some of the work I'm doing (i.e. NXTservices installers) completely unnecessary for MGW, and might change a lot of things in the user documentation. So maybe I will put some things on hold.
Logged
GPG Fingerprint: B020 D1C1 F289 3B2C 3577  9EAD 455D D175 5913 C7F1

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: A simpler Gateway built in to official client
« Reply #36 on: June 20, 2014, 02:38:58 am »

Thanks for the feedback, keeping an eye on this. Some of the ideas mentioned can make some of the work I'm doing (i.e. NXTservices installers) completely unnecessary for MGW, and might change a lot of things in the user documentation. So maybe I will put some things on hold.
There will be several levels of MGW clients

I will be defining a generic AM based gateway deposit address request and withdrawal "protocol" that can be used by any gateway, including MGW. The user just has to put in the gateway's NXT address and so the client will be gateway agnostic. At this level it has a very good chance of being adopted by the official GUI since it is just a way to configure which gateway you want to use. At this level all you would be able to do is to get a deposit address and do withdraws, but that is all most people would need to do. The big advantage is that there is no software to install and just one NXT address to put in.

The next level is what we currently have when you run NXTservices without linking up bitcoind (litecoind, etc). It will allow you to track the MGW tx and balances via AM's and do all the NXTservices calls that dont require bitcoind linkup.

The most advanced level is where you link up the bitcoind. This will allow you to fully reproduce MGW status, NXTsubatomic transactions and any other NXTservices functions that requires bitcoin blockchain. Mostly for advanced users or those that want to do NXTsubatomic trades.

So, we clearly need documentation of all these levels

James

P.S. For some reason, I am having problems concentrating. Will call it an early day today and hope to do better tomorrow
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer

Eadeqa

  • Hero Member
  • *****
  • Karma: +83/-68
  • Offline Offline
  • Posts: 1888
    • View Profile
Re: A simpler Gateway built in to official client
« Reply #37 on: June 20, 2014, 05:08:04 am »


The deposit address received would need to be stored locally so an AM isnt needed each time you run the GUI, but I think that is like storing the contact info locally.

Deposit address does not have to be stored locally as they are on the blockchain. Nothing on the blockchain is deleted, so the user will always see the same deposit address on various machines.
« Last Edit: June 20, 2014, 05:31:55 am by Eadeqa »
Logged
NXT-GZYP-FMRT-FQ9K-3YQGS

Eadeqa

  • Hero Member
  • *****
  • Karma: +83/-68
  • Offline Offline
  • Posts: 1888
    • View Profile
Re: A simpler Gateway built in to official client
« Reply #38 on: June 20, 2014, 06:50:16 am »

I updated my original post, as I think all exchanges should use Nxt blockchain :)
Logged
NXT-GZYP-FMRT-FQ9K-3YQGS

jl777

  • Hero Member
  • *****
  • Karma: +718/-123
  • Offline Offline
  • Posts: 6170
    • View Profile
Re: A simpler Gateway built in to official client
« Reply #39 on: June 20, 2014, 08:47:13 am »


The deposit address received would need to be stored locally so an AM isnt needed each time you run the GUI, but I think that is like storing the contact info locally.

Deposit address does not have to be stored locally as they are on the blockchain. Nothing on the blockchain is deleted, so the user will always see the same deposit address on various machines.
So you are suggesting to rescan the blockchain on every login?
Otherwise how will the webGUI know what the deposit address is?
Logged
There are over 1000 people in SuperNET slack! http://slackinvite.supernet.org/ automatically sends you an invite

I am just a simple C programmer
Pages: 1 [2] 3  All
 

elective-stereophonic
elective-stereophonic
assembly
assembly