C# lib Ditch 2.0 for Graphene from Steepshot team

in #steem7 years ago

The library can be used by C# clients to make the signing of transactions on the client side and not to transfer private keys to the server.

Ditch_20.PNG

Usage

The essence of the library is to generate a transaction according to the required operations (vote, comment, etc.), sign the transaction and broadcast to Graphene-based blockchain. For transaction signing we announced earlier our standalone Cryptography.ECDSA lib which is being used by Ditch lib for the signing purpose.

Github_icon.PNG

Github link

Supported chains

  • Steem
  • Golos

Updates

  • The project now supports .NetStandard
  • Changed the way of building transactions (becomes more flexible).
  • New operations

See full changelog on Github

.Net dev status

Lib nameDescriptionAct. version
Cryptography.ECDSAImplementation of ECDSA for transaction signing2.1
DitchCreate and broadcast transactions to blockchain2.0

Team progress on .Net encryption & signing

Discuss

1493588297_social-56.png in Telegram
steemit-chat_360.png in Steemit.chat
64x64.png email us

Sort:  

Very good. I am a c# developer and was looking for this. Thanks

Wow thank you for sharing this lovely post i'm a web developer and i use c# and asp.net mvc5 in my web applications that i make. I'm glad to have some articles like this in steemit community! Keep it up my friend and keep posting great things like this!

Very cool.

This looks like an interesting tool. Could you provide use-examples perhaps?

Thanks for sharing!

....
//set global properties
GlobalSettings.Init(UserLogin, PrivatePostingKey, ChainManager.KnownChains.Steem);
_operationManager = new OperationManager();
....

//Create new post with some beneficiaries
var op1 = new PostOperation(parentPermlink, GlobalSettings.Login, permlink, title, body, jsonMetadata);
var op2 = new BeneficiaresOperation(GlobalSettings.Login, permlink, GlobalSettings.ChainInfo.SbdSymbol, new Beneficiary(beneficiar, 1000));
var responce = _operationManager.BroadcastOberations(op1, op2);
....
//UpVote
var op1 = new UpVoteOperation(GlobalSettings.Login, author, permlink);
var responce = _operationManager.BroadcastOberations(op1);
....

Was wondering the same.

Our dev answered the question? Or do you need any further explanations? Well, If you are going to develop an app for Steem, then you will need to focus only on the client side. Operations with the blockchain will be performed by the library. Gradually we add support for new operations to the Ditch lib if there are still any.

Got a compile time error with VS 2017. Severity Code Description Project File Line Suppression State
Error CS1729 'ErrorResponse' does not contain a constructor that takes 1 arguments Ditch F:\steem\Ditch-master\Sources\Ditch\WebSocketManager.cs 103 Active

My bad.
File added to repository. Also fixed some typos

Thanks works now. Also good job fixing the typos on BeneficiariesOperation and BroadcastOperations.

thank you.will checkout the github

Well done post You deserve for getting Upvote from me. I appreciate on it and like it so much . Waiting for your latest post. Keep your good work and steeming on. Let's walk to my blog. I have a latest post. Your upvote is high motivation for me. Almost all Steemians do their best on this site. Keep steeming and earning.

This comment has received a 0.21 % upvote from @booster thanks to: @hamzaoui.

Are there any CLI Wallets I can use for testing this?

Could you clarify your question? Are you asking about Command Line Interface for Ditch or about Steem CLI Wallet program?

I mean the steem CLI Wallet. Does this API need any RPC IPs or similar nodes for it to work?

Ditch interacts with steemd.steemit.com through websockets by default.

However, you can write and use your custom ChainManager to interact with other nodes.

More info here https://github.com/Chainers/Ditch/blob/master/Sources/Ditch/ChainManager.cs

tools are valued

Very good information, it help to be updated on what is going on around the world.

great job mate and thanks to inform about this great project.