Vessel 0-0-8 - Configurable Steem node + new default node!

in #steem-project7 years ago

What is Vessel?
Vessel is a desktop wallet for the Steem blockchain, which you can download and use on your computer. Vessel is free to use and open source, and is designed to be a way to help secure your account on the Steem blockchain. While using Vessel, your keys/password never leave your computer, transactions are signed within the app, and then broadcast to the network much like any other downloadable cryptocurrency wallet.

Previous updates about Vessel:

2017/05/24 - 0.0.7 Release
2017/05/24 - 0.0.6 Release
2017/05/20 - Initial Release
Download Vessel
Vessel is still beta software and it's recommended that you treat it as such. Before committing irreversible actions on your account (such as large outgoing transfers), please test with smaller amounts to ensure it's working properly on your computer.

Download available on github for macOS, Windows and Linux.

Releases: https://github.com/aaroncox/vessel/releases
Bug Reports: https://github.com/aaroncox/vessel/issues
Source Code: https://github.com/aaroncox/vessel
What's new in 0.0.8
This is a small release, it has two small changes:

steem node selection: You can now specify which Steem RPC node you'd like Vessel to use.
default node changed: The default connection for Vessel now goes to https://wallet.steem.ws, instead of https://steemd.steemit.com. If you'd prefer to use the original, feel free to update it.
Changing the Steem Node
U5du4ecGKNddVEsE8hmWKBZ7hqu4qtx_1680x8400.png
Within the settings are of Vessel, you can now specify your Preferred Steem Node.

Simply enter the full URL of the node in the box and click the blue Update button to apply the change.

The currently used node (if any) will be displayed above the button.

Vessel will now automatically connect to this node from here on out.

The new "default" node
Users who update won't have to do anything if they don't want to change nodes. I've setup a new server at https://wallet.steem.ws specifically for Vessel and other wallet usage. If you don't set a value in the preferred node or the value isn't valid, it will use this new node by default.

This node isn't a full node, it's a node tailored specifically for wallet functions. If you're curious as to how the node was configured, read on.

steemd - cmake flags
The following is the settings used when setting up wallet.steem.ws:

cmake -DCMAKE_BUILD_TYPE=Release -DCLEAR_VOTES=ON -DLOW_MEMORY_NODE=ON ..
Clear votes is set to ON (though, unsure of how helpful considering votes aren't part of account history) and it's set to be a low memory node. From what I understand the low memory flag prevents it from storing non-critical information (like json_metadata on accounts).

steemd - config.ini
rpc-endpoint = 127.0.0.1:8090

public-api = database_api login_api account_by_key_api network_broadcast_api raw_block_api
enable-plugin = witness account_history account_by_key raw_block
history-whitelist-ops = transfer_operation transfer_to_vesting_operation withdraw_vesting_operation feed_publish_operation convert_operation account_create_operation account_update_operation witness_update_operation account_witness_vote_operation account_witness_proxy_operation pow_operation custom_operation report_over_production_operation custom_json_operation set_withdraw_vesting_route_operation limit_order_create2_operation challenge_authority_operation prove_authority_operation request_account_recovery_operation recover_account_operation change_recovery_account_operation escrow_transfer_operation escrow_dispute_operation escrow_release_operation pow2_operation escrow_approve_operation transfer_to_savings_operation transfer_from_savings_operation cancel_transfer_from_savings_operation custom_binary_operation decline_voting_rights_operation reset_account_operation set_reset_account_operation claim_reward_balance_operation delegate_vesting_shares_operation account_create_with_delegation_operation fill_convert_request_operation author_reward_operation curation_reward_operation comment_reward_operation liquidity_reward_operation interest_operation fill_vesting_withdraw_operation fill_order_operation shutdown_witness_operation fill_transfer_from_savings_operation hardfork_operation comment_payout_update_operation return_vesting_delegation_operation comment_benefactor_reward_operation producer_reward_operation

bcd-trigger = [[0,10],[85,300]]
follow-max-feed-size = 500
bucket-size = [15,60,300,3600,86400]
history-per-size = 5760
enable-stale-production = false
required-participation = false

shared-file-size = 40G
shared-file-dir = /dev/shm
The node itself makes use of the history-whitelist-ops option. This option lets you specify which types of account history you want the server to keep track of for use within every account's history.

Currently it's set to every type of operation involving funds and excludes anything to do with the social networking aspects of Steem.

nginx - vhost
upstream websockets {
server 127.0.0.1:8090;
}

server {
listen 80;
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/wallet.steem.ws/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/wallet.steem.ws/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

server_name wallet.steem.ws;
root /var/www/html/;

keepalive_timeout 65;
keepalive_requests 100000;
sendfile on;
tcp_nopush on;
tcp_nodelay on;

location ~ ^(/|/ws) {
    limit_req zone=ws burst=5;
    access_log off;
    proxy_pass http://websockets;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_next_upstream error timeout invalid_header http_500;
    proxy_connect_timeout 2;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
}

}
This is the nginx frontend setup to serve the connection out to the world. Pretty standard, but figured I'd include it for anyone else looking to replicate wallet.steem.ws.

Thanks!
Thanks for using Vessel and now I'm off to go add this feature to chainBB!

Sort:  

Congratulations @sexstory! You have completed some achievement on Steemit and have been rewarded with new badge(s) :

Award for the number of upvotes

Click on any badge to view your own Board of Honor on SteemitBoard.
For more information about SteemitBoard, click here

If you no longer want to receive notifications, reply to this comment with the word STOP

By upvoting this notification, you can help all Steemit users. Learn how here!

Coin Marketplace

STEEM 0.19
TRX 0.13
JST 0.029
BTC 58809.44
ETH 3151.28
USDT 1.00
SBD 2.43