BitShares Forum

Main => Technical Support => Topic started by: xeroc on June 08, 2015, 06:21:54 pm

Title: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: xeroc on June 08, 2015, 06:21:54 pm
BitShares 2.0 Articles
Community Questions for the Development Team

Prior to the announcement, the BitShares community was asked to collect a set of their concerns that they would like
answered together with the announcement.

1.How fast is BitShares 2.0 really going to be (in TPS)?

   BitShares 2.0 will be capable of handling over 100.000 (100k) transaction per second on commodity hardware with
   parallel architectural optimizations in mind. You can find more about how the performance improvement has been
   achieved in the corresponding technology page (http://bitshares.github.io/technology/high-performance-and-scalability)
   The measurement parameters and a discussion is given in a separate blog article (http://bitshares.github.io/blog/2015/06/08/measuring-performance/).

2.Will we see approval voting for hard forks?

   Yes. In BitShares 2.0, not even the core developers will be able to modify the protocol at will. Hard forks will only
   be accepted by the protocol with BTS holder approval.

3.Will there be a referral system available at launch?

   Yes. And you can earn up to $80 per user (per lifetime) referred.

4.Are Turing complete scripts/applications on the roadmap?

   We are considering Turing complete models which are economically viable.  There are several ideas about this around
   the office, and we plan to try some of them out in due course.

5.Will the separated Worker/Delegate/Signer proposal be implemented in time?

   Yes. In BitShares 2.0 we will see workers, who grow and development the ecosystem, block signers (called witnesses)
   to ensure block chain security, and delegates which define the variable settings of the
   block chain, such as block interval, price feeds, and more.  Any changes to the variable settings have an
   approval period, ensuring that BTS holders have the final say in the chain parameters.

6.What has been done to stabilize the user interface and make it user friendly/more responsive?

   A lot has been done to this regard. Mainly, the full client has been separated into a lightweight client which
   connects to a set of trusted servers, and an optional core client that handles the full block chain and P2P
   networking. Furthermore, the lightweight client has been rewritten to employ next generation web technologies
   (websockets, react.js,...) to ensure a highly responsive interface.

7.Can we expect a fast, professional GUI experience within this year?

   Absolutely! With the move to react.js and websockets, the user interface will be much more responsive, stable and
   professional looking.

8.Will the new client be more resource efficient?

   In BitShares 2.0, communications with the core client are handled with the websockets protocol. Thus the core client
   could be either run on a separated machine, or by some else entirely on a trust-less basis. The BitShares network
   will be entirely accessible via web browser, either hosted locally or by a third party service provider similar to
   blockchain.info (with private keys being stored locally only!). This also makes the access to the BitShares network
   TOR compatible if required.

9.Have there been any ideas to increase voting participation (e.g. cold storage voting, simplified voting procedure)?

   Besides cold storage voting which will be available in BitShares 2.0 too, the block chain supports transfer of voting
   power to someone else without risking funds. Furthermore, with BitShares 2.0 the BitShares funds do not need to be
   moved entirely to vote with your full stake, which simplifies the voting process to a single "Apply" button press.

10.Will we see relative orders in the decentralized exchange?

    There is no plan to add relative orders, as part of the effort to reduce dependence on the price feed long-term.

11.Will I be able to use bitUSD as collateral to short a bitAssets?

    Yes. BitShares 2.0 goes even further and offers a far better alternative: Collateralized Bonds. Collateralized Bonds
    enable arbitrary shorting between any two assets, guaranteed interest, and no risk of being force settled.   This
    system privatizes the yield to individual bonds and the terms and leverage available can be far more flexible.  In
    effect, BitUSD becomes cash and a Bond becomes a Certificate of Deposit.

12.Will we be able to close short orders using the collateral?

    Users will be able to adjust their margin call price to trigger an early margin call, which will close out your
    short position.

13.How can KYC and AML be acknowledged in BitShares such that it does not affect BTS holders?

    KYC/AML are supported for user-issued assets, but not BTS, thus it does not affect BTS holders, but only users who
    wish to hold a restricted token.  Businesses that run on top of BitShares and issue their own UIA (user issued asset),
    such as gateways and merchants, will have tools to help their UIA comply with their local KYC, AML and CTF regulations.
    These tools will only affect users who own such UIA's.

14.What has been done to attract more 3rd party developers?

    The API has been improved significantly to allow fast and reliable integration via websockets and push
    notifications! Furthermore, a lot of effort has been taken for proper documentation.

15.What measures have been taken to ensure that newly written code does not introduce many bugs or reveal hidden design assumptions that are no longer valid?

    While it's impossible to guarantee any code is bug-free, we have been writing unit tests, integration tests, and
    regression tests with every new feature implemented. Our tests currently exercise around 90% of the code, and we're
    going to be increasing that number before launch.
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: kenCode on June 08, 2015, 06:59:00 pm
VERY nice writeup, thank you xeroc +5% +5% +5%
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: karnal on June 08, 2015, 09:31:10 pm
+5%+ very concise indeed. Thanks for writing it up!
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: Tuck Fheman on June 08, 2015, 10:44:34 pm
 +5%
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: alt on June 08, 2015, 11:38:11 pm
 +5%
proud of you
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: Ben Mason on June 09, 2015, 01:25:18 pm
Read it 4 times and loved every syllable  +5%
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: infovortice2013 on June 09, 2015, 02:35:07 pm
Will be TITAN privacy system deleted?

will be dividens , burning fees deleted ?

will be social consensus deleted?

what happen with founders accounts? will have some privileges?



Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: Shentist on June 09, 2015, 09:32:22 pm
will the browserclient have blocktrades.us and metaexchange.info integrated?
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: bytemaster on June 09, 2015, 09:33:52 pm
will the browserclient have blocktrades.us and metaexchange.info integrated?

Yes, actually it will have a fiat deposit integrated.   
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: Shentist on June 09, 2015, 09:35:45 pm
will the browserclient have blocktrades.us and metaexchange.info integrated?

Yes, actually it will have a fiat deposit integrated.

 +5% for blocktrades and metaexchange and  +5% +5% for FIAT
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: Method-X on June 09, 2015, 11:00:59 pm
will the browserclient have blocktrades.us and metaexchange.info integrated?

Yes, actually it will have a fiat deposit integrated.

 +5% +5% +5% +5% +5%
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: Tuck Fheman on June 10, 2015, 12:31:16 am
6.What has been done to stabilize the user interface and make it user friendly/more responsive?

   A lot has been done to this regard. Mainly, the full client has been separated into a lightweight client which
   connects to a set of trusted servers, and an optional core client that handles the full block chain and P2P
   networking. Furthermore, the lightweight client has been rewritten to employ next generation web technologies

Ahhh, now bytemaster's reply from a month ago (https://bitsharestalk.org/index.php/topic,15692.msg203923.html#msg203923) makes sense.
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: mindphlux on June 10, 2015, 09:56:20 am
What about native ios and android apps? Are they planned?

I see https://github.com/cryptonomex/graphene-ui/tree/master/ios, is this just a ios-view for the webwallet when you login via your iphone?
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: svk on June 10, 2015, 02:12:03 pm
What about native ios and android apps? Are they planned?

I see https://github.com/cryptonomex/graphene-ui/tree/master/ios, is this just a ios-view for the webwallet when you login via your iphone?

No it's the initial framework for a native iOS app. We plan to build the native apps using React Native which is currently only available for iOS, although the Android version should be out soon as well. What this does is enable us to build native apps while reusing large parts of the code from the full web client.
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: mindphlux on June 10, 2015, 02:27:18 pm
Interesting, thank you. So there will be native wallets for both iOS and android.
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: svk on June 10, 2015, 02:28:35 pm
Interesting, thank you. So there will be native wallets for both iOS and android.

Yes that is the plan, although it will take a little longer.
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: mirrax on June 13, 2015, 07:04:03 am
+6%

looks good
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: Thom on June 21, 2015, 06:00:05 pm
Bytemaster has spoken to the reduced RAM requirements of the full node, saying in his interview with Adam Lavine only 1GB is needed for current ecosystem size.

How big will the transaction volume need to get it before it outgrows a 4GB RAM system?

@xeroc: on point #3 you have $80, but I believe you mean 80% of transaction fees with a lifetime subscription and 50% for an annual subscription, inclusive of the subscriber and all referred accounts.
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: arhag on June 21, 2015, 06:42:19 pm
Bytemaster has spoken to the reduced RAM requirements of the full node, saying in his interview with Adam Lavine only 1GB is needed for current ecosystem size.

How big will the transaction volume need to get it before it outgrows a 4GB RAM system?

I think it has less to do with transaction volume and more to do with the amount of adoption. The nodes need to be able to store the full database (anything that needs to be accessed by the single-threaded transaction processing engine in order for it to do its job, and anything that can potentially be updated as a result of processing the transactions) in RAM. So it scales with the number of accounts, the number of assets, the number of orders in the order books, etc. If done right, I think it should not scale with time (other than due to the natural growth in accounts, assets, smart contracts, orders, etc. that we expect to see over time due to growth and user adoption).

I think a fair first attempt at approximating database size over time is to model it as proportional to the number of users. This of course requires all kinds of assumptions about how the average user uses the system (how many accounts do they have, how many orders do they typically have in the markets, what other features of the network are being used and to what extent). It also requires predicting how the number of users will grow over time. But I think the main takeaway point from bytemaster's comments were that it is unlikely to be the bottleneck anytime soon even given current technology (and of course memory density will continue to increase while getting cheaper). The more likely bottleneck will be bandwidth and CPU clock speed, but even that is something we don't have to worry about until BitShares is much much bigger and more successful.
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: Thom on June 21, 2015, 08:34:23 pm
Yep, I bet that's right. The point of the question is at what point (users / transaction volume) will the avg, user no longer be able to run a full node?

It testing is as thorough as we're led to believe, to the point of benchmarking transaction throughput in the neighborhood of 180,000 transactions / sec, then I would certainly hope they would be able to provide some type of projection about the rate of ecosystem growth and the requirements on RAM / bandwidth / CPU as adoption / use expands.

Not only am I asking to plan for necessary VPS upgrades and failover servers, but it is also my plan to run a full node as long as possible to support a local wallet. There's no question in my mind that there is less vulnerability on a one wallet / one server configuration than the multi-user-server configuration that will become the dominant standard. I prefer to be as safe and secure as I can and see how this entirely new code base it going to workout before I rely on it in the multi-user-server configuration. Better safe than sorry approach.
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: nickelback70 on June 23, 2015, 02:55:51 pm
Hello friends,

I am a newbie and a fan of bitshares.  I have been purchasing bitshares on an exchange.

I am wondering if Bitshares 2.0 will include a web wallet and can you can speculate on a release date.

Thanks.
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: lil_jay890 on June 23, 2015, 02:57:34 pm
I would speculate that the release of BTS2.0 will be around early September if everything goes according to plan.
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: Pheonike on June 23, 2015, 03:12:22 pm
Hello friends,

I am a newbie and a fan of bitshares.  I have been purchasing bitshares on an exchange.

I am wondering if Bitshares 2.0 will include a web wallet and can you can speculate on a release date.

Thanks.

Yes there will be a webwallet.
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: MrJeans on July 21, 2015, 09:32:15 pm
How does one go about establishing a trading pair for a UIA.
So if I wanted to buy NOTES with my bitUSD. How would I go about issuing such a buy order.

I assume I would need to wait for someone who then wants to sell NOTES for bitUSD. Is there a minimum market depth requirement?

Followup question: If a user issues a UIA and then sells it on the market at a set price to raise funds, can the user specify the trading pair with which he is selling the UIA (eg selling the UIA at 40bitEUR per asset token.
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: svk on July 22, 2015, 06:21:17 am
Any pair is instantly available once the asset is created, there's no minimum market depth AFAIK, however you might want to focus on the major ones, ie against BTS, CNY or USD.

You can find these markets by searching in the client.

Once you've issued say 100 units of UIA asset to yourself, simply go to your desired market and place a sell order.
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: MrJeans on July 22, 2015, 10:35:54 am
Any pair is instantly available once the asset is created, there's no minimum market depth AFAIK, however you might want to focus on the major ones, ie against BTS, CNY or USD.

You can find these markets by searching in the client.

Once you've issued say 100 units of UIA asset to yourself, simply go to your desired market and place a sell order.
Thanks  :)
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: Blazin8888 on July 22, 2015, 11:24:35 pm
Random question ... I was reading this article from  http://www.maxkeiser.com/2015/07/bitshares-nyse/ and it said "BitShares 2.0 introduces the smartchain which strives to be the next evolution of the smart chain. The smartchain aims to provide a platform for thousands of chains competing to offer varying services across the globe."

So does this mean other alt coins will be able to hop on to the bitshares platform? I don't understand this entirely. It sounds like the internet of blockchains almost....something like that. Can someone help me understand this? Are you guys telling me coinmarketcap.com will be rendered useless ....this will be a huge game changer? makes me think ...
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: Tuck Fheman on July 22, 2015, 11:27:57 pm
So does this mean other alt coins will be able to hop on to the bitshares platform?

bytemaster (https://soundcloud.com/beyond-bitcoin-hangouts/pt1-beyond-bitcoin-ann-of-btsv2-06-09-2015-dev-hangout-s3#t=1:01:23) : We’re trying to provide incentives for any coin to abandon their coin and move it to an asset on the BitShares platform. There is one major altcoin going to be doing that some time “This Summer”.
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: Blazin8888 on July 22, 2015, 11:29:31 pm
So does this mean other alt coins will be able to hop on to the bitshares platform?

bytemaster (https://soundcloud.com/beyond-bitcoin-hangouts/pt1-beyond-bitcoin-ann-of-btsv2-06-09-2015-dev-hangout-s3#t=1:01:23) : We’re trying to provide incentives for any coin to abandon their coin and move it to an asset on the BitShares platform. There is one major altcoin going to be doing that some time “This Summer”.

How would that effect the coin supply and everyone holding those coins ?

Also what if people have those alts on cold storage and you guys do the switch...will their coins be affected ?
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: Tuck Fheman on July 22, 2015, 11:34:50 pm
How would that effect the coin supply and everyone holding those coins ?

I guess we'll find out "this summer". ;)

Also what if people have those alts on cold storage and you guys do the switch...will their coins be affected ?

I would assume all coins on the old chain simply move to the new chain. They can then claim the new coins with their old wallet key from the old coin. Just like when we went from PTS to BTSX, I assume. I ran out of quotes from Dan to answer you, so now you have to rely on my known to be faulty knowledge. ;)

BTW these are good questions for this weeks Dev Hangout, you should attend and ask Dan ... https://beyondbitcoin.org ... https://beyondbitcoin.org/mumbleinfo

You can also post your questions here ... https://bitsharestalk.org/index.php/topic,16318.msg224830.html#msg224830
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: Blazin8888 on July 31, 2015, 12:19:06 am
Will there be a Bitshares 2.0 implementation in the QT wallet as well eventually? For those who prefer not to use a browser.


Also when backing up my Bitshares wallet in the QT client it says "Export" I assume that is how you back it up? Dont most QT wallets say "backup wallet"
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: xeroc on July 31, 2015, 08:21:14 am
Will there be a Bitshares 2.0 implementation in the QT wallet as well eventually? For those who prefer not to use a browser.
Actually, both wallets (0.9 and 2.0) are written in web technology .. and the QT client is essentially a costum made browser.
Anyway, because for 2.0 the devs chose REACT, a native APP (also for android/ios) should be doable.

Quote
Also when backing up my Bitshares wallet in the QT client it says "Export" I assume that is how you back it up? Dont most QT wallets say "backup wallet"
It depends, the export contains some more information than only your Wallet (btw, each account should be considered its own wallet) ...
but if you feel it should read differntly, just go to github find that string in the code, replace it and send a pull request :D
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: Spectral on August 16, 2015, 01:48:30 pm
Hi, I have a question regarding migration to BitShares 2.0:

On the following blogpost:
https://bitshares.org/blog/2015/06/08/migrating-to-bitshares-2.0/

I found this:
“Update: All account names registered on or after 2015-06-18 (US Eastern time) will be migrated if and only if they were registered using the BitShares Faucet.”

Is this really true? Let's assume I register an account today using the Linux command-line client and transfer funds to it. Will this account and its funds not be migrated to BitShares 2.0?
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: xeroc on August 16, 2015, 01:50:10 pm
Is this really true? Let's assume I register an account today using the Linux command-line client and transfer funds to it. Will this account and its funds not be migrated to BitShares 2.0?
your funds will be migrated .. but your account name may end up with a prefix .. for example .. you registered "ralf" today .. and in bts2 it may end up being called "bts-ralf" intead ..
funds will still be in that account .. independent of it's actual name
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: Blazin8888 on September 15, 2015, 09:36:22 pm
http://www.forbes.com/sites/mikemontgomery/2015/09/15/bitcoin-is-only-the-beginning-for-blockchain-technology/


Can we contact this San Francisco start up called "chain" they are hooked up with the Nasdaq. Would be a good move
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: Akado on September 20, 2015, 03:43:45 pm
I saw someone asking why there is no info about the dev team on BitShares. I believe BitShares will be operated by everyone through worker proposals but do you think it would be good to add that info about cryptonomex team and saying they're operating it temporarily while 2.0 doesn't launch?

Note: this person was just trying to spread FUD but nonetheless, it can be nice for new people to see a few faces there. It transmits more confidence and safety regarding the project

josh-2cef: why does the bts website not have detail on the team?
mightygoodkarma: Polo users pick that.
Sarah: BTC very cheap borrowing costs, borrowing too expensive BTS
Carpentier: BTS donw ETH down
Blurb: vnl flipflopping
AlphaProMega: guys I just got home from my business trip! :D
24hrVolume: Carpentier, just a better time to buy
Ak74u: its the 2.0 countdown 23 days left better get bts while still cheap
duckien: i thinks bts will down to 1700 if 2.0 is error.
Bodet: bonus, English is an offical language in HK
josh-2cef: BTS will crash just like all the others
24hrVolume: Bodet, hells kitchen ?
Blurb: AlphaProMega, you missed all the really good stuff ;P
josh-2cef: anon dev is a huge red flag
AlphaProMega: Blurb, enlighten me brother! :D
josh-2cef: games with releases and timing
josh-2cef: pretty obious
josh-2cef: obvious
Blurb: just a zing, tho BTS is being interesting
AlphaProMega: Blurb, indeed I've been Long BTS for the last 8 days or so
josh-2cef: well ya better take profits
Bodet: 24hrVolume, Hong Kong
24hrVolume: ah
Bodet: 24hrVolume, could be the same :-D
josh-2cef: "this time is different"
24hrVolume: Bodet, lol
AlphaProMega: Blurb, looks like BTS is gonna fall a bit though, I wonder how low is the next wave
josh-2cef: probably believed BitStake too XBS
ironsigwo: "believe again"
josh-2cef: lol
Blurb: dunno, lotta shorting action tho
AlphaProMega: Blurb, intriguing.
randaletouri: josh-2cef, anon dev? you didn't do enough research yet ;)
duckien: stellar is die
BestTradingServices: nice one with angular by kryo, highlight walls: http://codepen.io/kryo2k/full/dojKaO
josh-2cef: Ok, so you have to dig through all sorts of *bleep* to find them? Why not have a team page on the site?
Eddy: take care all
randaletouri: josh-2cef, idk, probably because the team is too big
josh-2cef: oh so it is a community now, sure
josh-2cef: people need leadership
randaletouri: josh-2cef, bitsharestalk.org
josh-2cef: so a separate forum ... like .... ready .... PAYCOIN?
josh-2cef: lol
josh-2cef: geez all the signs are there people
mightygoodkarma: POLO TIP: Wonder how you are doing with your trades? Hate analyzing numbers in your head or on paper? Test drive the Trading History Analyzer. Happy trading!
CryptoGuppy: josh-2cef, your FUD is of substandard quality. Please improve.
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: Tobo on October 12, 2015, 03:19:50 pm
this SETL platform sounds like Bitshare2.0 - http://www.coindesk.com/blockchain-platform-setl-exceeds-1-billion-transaction-milestone/
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: Thom on October 15, 2015, 01:43:04 pm
Is the websocket TLS interface of the witness_node functional now? If not it seems like a major shortcoming, as MITM attacks can occur between the browser and witness server. I am running a local seed node and want to enable a secure SSL (i.e. TLS) websocket channel for use with mobile devices.

I will make this node publicly accessable for people in my local community, who have confidence in my computer skills and would feel more secure knowing a local guy was running the server their wallets connect to. It also allows me to track activity in my local area.

They want a point of contact to run their pitch-forks into if something goes wrong rather than some nebulous "cloud" contact.

Code: [Select]
# Endpoint for TLS websocket RPC to listen on
rpc-tls-endpoint = 1.2.3.4:5000

# The TLS certificate file for this server
server-pem = serverWeb.crt

# Password for this certificate
server-pem-password = "this is the password for self signed cert used for www"

If so is there not a config parameter for the private half of the key as well? When I config a web server like nginx or apache there is the public .crt file and the private server.key file. Why only one in witness config?
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: svk on October 15, 2015, 02:00:00 pm
Is the websocket TLS interface of the witness_node functional now? If not it seems like a major shortcoming, as MITM attacks can occur between the browser and witness server. I am running a local seed node and want to enable a secure SSL (i.e. TLS) websocket channel for use with mobile devices.

I will make this node publicly accessable for people in my local community, who have confidence in my computer skills and would feel more secure knowing a local guy was running the server their wallets connect to. It also allows me to track activity in my local area.

They want a point of contact to run their pitch-forks into if something goes wrong rather than some nebulous "cloud" contact.

Code: [Select]
# Endpoint for TLS websocket RPC to listen on
rpc-tls-endpoint = 1.2.3.4:5000

# The TLS certificate file for this server
server-pem = serverWeb.crt

# Password for this certificate
server-pem-password = "this is the password for self signed cert used for www"

If so is there not a config parameter for the private half of the key as well? When I config a web server like nginx or apache there is the public .crt file and the private server.key file. Why only one in witness config?

Valentine told me we're using proxying for secure websocket to normal websocket so I don't think the witness_node can do wss directly.
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: openledger on October 15, 2015, 02:06:23 pm
Can someone tell me if we have the answers to the following questions I would like added to OpenLedger for one, and asume similar could be good in any other wallet. I know of course some of this, but lack some technical details, and maybe somebody already posted some of it:

How do I change my account and move funds to OpenLedger?
How do I withdraw and deposit BTC and LTC on OpenLedger?
How do I connect to CCEDK from OpenLedger?
How do I buy BitUSD with USD and have it added to my account on OpenLedger
How do I buy BitEUR with EUR and have it added to my account on OpenLedger
How do I buy BitCNY with CNY and have it added to my account on OpenLedger
How do I sell BitUSD to USD to make a witdrawal to my bank account
How do I sell BitEUR to EUR to make a witdrawal to my bank account
How do I sell BitCNY to CNY to make a witdrawal to my bank account

Rgds

Ronny Boesing
CCEDK
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: Thom on October 15, 2015, 02:09:20 pm
Is the websocket TLS interface of the witness_node functional now? If not it seems like a major shortcoming, as MITM attacks can occur between the browser and witness server. I am running a local seed node and want to enable a secure SSL (i.e. TLS) websocket channel for use with mobile devices.

I will make this node publicly accessable for people in my local community, who have confidence in my computer skills and would feel more secure knowing a local guy was running the server their wallets connect to. It also allows me to track activity in my local area.

They want a point of contact to run their pitch-forks into if something goes wrong rather than some nebulous "cloud" contact.

Code: [Select]
# Endpoint for TLS websocket RPC to listen on
rpc-tls-endpoint = 1.2.3.4:5000

# The TLS certificate file for this server
server-pem = serverWeb.crt

# Password for this certificate
server-pem-password = "this is the password for self signed cert used for www"

If so is there not a config parameter for the private half of the key as well? When I config a web server like nginx or apache there is the public .crt file and the private server.key file. Why only one in witness config?

Valentine told me we're using proxying for secure websocket to normal websocket so I don't think the witness_node can do wss directly.

Yet clearly it is anticipated, based on the comments in the config.ini.

But you did address the question. It may not be as efficient, but I'll look into how to setup a proxy server using nginx. I know how to setup SSL with sef-signed SSL cert for that, just a matter of forwarding those requests to 127.0.0.1:8090. Sounds easy, but may not be so to implement.

 +5% for your response svk.
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: svk on October 15, 2015, 02:11:32 pm
Is the websocket TLS interface of the witness_node functional now? If not it seems like a major shortcoming, as MITM attacks can occur between the browser and witness server. I am running a local seed node and want to enable a secure SSL (i.e. TLS) websocket channel for use with mobile devices.

I will make this node publicly accessable for people in my local community, who have confidence in my computer skills and would feel more secure knowing a local guy was running the server their wallets connect to. It also allows me to track activity in my local area.

They want a point of contact to run their pitch-forks into if something goes wrong rather than some nebulous "cloud" contact.

Code: [Select]
# Endpoint for TLS websocket RPC to listen on
rpc-tls-endpoint = 1.2.3.4:5000

# The TLS certificate file for this server
server-pem = serverWeb.crt

# Password for this certificate
server-pem-password = "this is the password for self signed cert used for www"

If so is there not a config parameter for the private half of the key as well? When I config a web server like nginx or apache there is the public .crt file and the private server.key file. Why only one in witness config?

Valentine told me we're using proxying for secure websocket to normal websocket so I don't think the witness_node can do wss directly.

Yet clearly it is anticipated, based on the comments in the config.ini.

But you did address the question. It may not be as efficient, but I'll look into how to setup a proxy server using nginx. I know how to setup SSL with sef-signed SSL cert for that, just a matter of forwarding those requests to 127.0.0.1:8090. Sounds easy, but may not be so to implement.

 +5% for your response svk.

Yes I did mean to say "yet", as I'm sure it will get added eventually, they just haven't had the time yet. GL with the proxy, nginx is generally nice to work with so should be ok :)
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: Thom on October 15, 2015, 02:16:30 pm
Yes I did mean to say "yet", as I'm sure it will get added eventually, they just haven't had the time yet. GL with the proxy, nginx is generally nice to work with so should be ok :)

Indeed. An answer was quick to find. Here is the basic nginix configuration needed for a proxy, assuming you already have a server defined to accept SSL requests:

Code: [Select]
server {
       listen 443;
       server_name mydomain.com;

       location / {
                proxy_pass http://localhost:8090;
       }
}

Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: Thom on October 15, 2015, 05:26:06 pm
Well, the nginx http proxy was just that easy. I can point my browser at it and the witness responds:

Code: [Select]
11 eof_exception: End Of File
stringstream
    {}
    th_a  sstream.cpp:109 peek

    {"str":""}
    th_a  json.cpp:478 from_string

That's using an https:// prefix. If I use wss:// that's a different story.

How are you doing the proxy for https://bitshares.openledger.info/ ?
What web server are you using?
Will another protocol definition be required?

Here's the nginx config that proxied the https --> rpc:8090
Quote
server {
        listen 443 ssl;
        server_name thom.domain.mine;

        ssl on;
        ssl_certificate /etc/nginx/ssl/certs/server.crt;
        ssl_certificate_key /etc/nginx/ssl/private/server.key;
        ssl_session_cache shared:SSL:1m;
        ssl_session_timeout 5m;

#       ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
#       ssl_ciphers "HIGH:!aNULL:!MD5 or HIGH:!aNULL:!MD5:!3DES";
#       ssl_prefer_server_ciphers on;

       location /wallet {
                proxy_pass http://localhost:8090;
       }
}
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: Thom on October 16, 2015, 08:23:14 pm
Here's how to use nginx as an SSL proxy server for wss connections. I found this, which is almost exactly what is needed: https://github.com/nicokaiser/nginx-websocket-proxy/blob/master/simple-wss.conf (https://github.com/nicokaiser/nginx-websocket-proxy/blob/master/simple-wss.conf).

Code: [Select]
# WebSocketSecure SSL Endpoint
#
# The proxy is also an SSL endpoint for WSS and HTTPS connections.
# So the clients can use wss:// connections
# (e.g. from pages served via HTTPS) which work better with broken
# proxy servers, etc.

server {
    listen 443;

    # host name to respond to
    server_name <yourServerIP or domain name>;

    # your SSL configuration
    ssl on;
    # See https://www.digitalocean.com/community/tutorials/how-to-create-an-ssl-certificate-on-nginx-for-ubuntu-14-04
    ssl_certificate /etc/ssl/localcerts/ws.example.com.bundle.crt;
    ssl_certificate_key /etc/ssl/localcerts/ws.example.com.key;

    location / {
        # switch off logging
        #access_log off;

        # redirect all HTTP traffic to localhost:8090
        proxy_pass http://localhost:8090;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        # WebSocket support (nginx 1.4)
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }
}

If you go to settings, click the + button and enter another API url, then go to the left and click on the URL displayed it will show a drop down list of all API connection URLs available. Select the wss://<yourLocalServerIP>/ws you just entered from the drop down list, then reload the page to connect to the server. Go to the Explorer and you should see the blockchain update.
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: brads on October 16, 2015, 08:37:27 pm
I succesfully used this configuration for a reverse proxy to a selfmade wss chat.

worker_processes 1;

events {
    worker_connections 1024;
}

http {
    upstream wsbackends {
        server 127.0.0.1:8081;
    }

    map $http_upgrade $connection_upgrade {
        default upgrade;
        '' close;
    }

    server {
        listen 192.168.1.92:443 ssl;
        ssl on;
        ssl_certificate cert.pem;
        ssl_certificate_key cert.key;
        ssl_session_cache off;
        ssl_session_timeout 5m;
        ssl_ciphers HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers on;

        location / {
            proxy_http_version 1.1;
            proxy_connect_timeout 5;
            proxy_pass http://wsbackends;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection $connection_upgrade;
            proxy_read_timeout 86400;
        }
    }
}
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: JA on October 17, 2015, 01:16:03 am
Here's how to use nginx as an SSL proxy server for wss connections. I found this, which is almost exactly what is needed:

 (https://github.com/nicokaiser/nginx-websocket-proxy/blob/master/simple-
[/quote)
I succesfully used this configuration for a reverse proxy to a selfmade wss chat.

both your configs work for me for https.
https://sync.cryptofeed.net
but i still cant connect the light wallet via wss://sync.cryptofeed.net

edit: are you guys testing with your light wallet or with the online wallet?
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: xeroc on October 17, 2015, 02:27:52 am
+5%

Would anyone of you mind writing this all together into a markdown/reStrucut tutorial so that I can put it into docs.bts.eu?
That would be awesome!
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: JA on October 17, 2015, 02:48:50 am
FUUUUUUUUUUUUUUUUUUUUUU....
it was working all along!
just the light wallet doesnt work with it
The online wallet is working

+5%

Would anyone of you mind writing this all together into a markdown/reStrucut tutorial so that I can put it into docs.bts.eu?
That would be awesome!
i will write one on beyondbitcoin.org
if you want, you can use it

EDIT: https://beyondbitcoin.org/how-to-graphene-websocket-over-ssl-with-nginx-ubuntu-14-04/
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: brads on October 17, 2015, 05:03:29 am
Beware of self-signed certificates, they make websocket (wss) connection silently fail (Firefox at least).
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: JA on October 17, 2015, 03:27:05 pm
ok
wss://sync.cryptofeed.net has now proper ssl sertficate from StartSSL.com (free)
so it can also be used in the light wallet

i will monitor nginx and see how many connections and bandwith etc.... it uses

would be nice if you could connect your client to it so i can make proper statistics
i will post them here on the forums without the ip's of course
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: Thom on October 17, 2015, 07:57:45 pm
One minor point - you should add this to your last step in the tutorial:

Quote
Not quite all you need to do -- after clicking the "Confirm" button you must also select the URL you just entered from the drop list on the left and refresh your browser to connect to it.
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: JA on October 17, 2015, 08:07:38 pm
One minor point - you should add this to your last step in the tutorial:

Quote
Not quite all you need to do -- after clicking the "Confirm" button you must also select the URL you just entered from the drop list on the left and refresh your browser to connect to it.
yea thanks updated
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: xeroc on October 20, 2015, 11:26:09 am
FUUUUUUUUUUUUUUUUUUUUUU....
it was working all along!
just the light wallet doesnt work with it
The online wallet is working

+5%

Would anyone of you mind writing this all together into a markdown/reStrucut tutorial so that I can put it into docs.bts.eu?
That would be awesome!
i will write one on beyondbitcoin.org
if you want, you can use it

EDIT: https://beyondbitcoin.org/how-to-graphene-websocket-over-ssl-with-nginx-ubuntu-14-04/

Cool .. I'll put it there .. with a link to bb
Title: Re: [BitShares 2.0] Community Questions for the Devs (Discussion)
Post by: tarugo on April 13, 2016, 06:18:17 pm
Hi guys,

how about putting a phone number where one can call you for some q&a. something like this website: http://theswedishnumber.com/