Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Jan 31 2019 13:53
    zawasp synchronize #650
  • Jan 31 2019 13:47
    zawasp synchronize #650
  • Jan 31 2019 13:44
    zawasp commented #650
  • Jan 31 2019 13:43
    zawasp commented #650
  • Jan 31 2019 12:25
    NicolasDorier commented #650
  • Jan 31 2019 12:25
    NicolasDorier commented #650
  • Jan 31 2019 10:57
    zawasp synchronize #650
  • Jan 31 2019 10:50
    zawasp synchronize #650
  • Jan 31 2019 10:40
    zawasp synchronize #650
  • Jan 31 2019 10:36
    zawasp opened #650
  • Jan 31 2019 07:47
    NicolasDorier commented #649
  • Jan 31 2019 07:47

    NicolasDorier on v4.1.1.81

    (compare)

  • Jan 31 2019 07:46

    NicolasDorier on master

    bump (compare)

  • Jan 31 2019 07:45
    NicolasDorier commented #649
  • Jan 31 2019 07:45

    NicolasDorier on master

    Fix DivideByZeroException when … (compare)

  • Jan 31 2019 07:45
    NicolasDorier closed #649
  • Jan 31 2019 07:45
    NicolasDorier closed #648
  • Jan 31 2019 00:38
    knocte commented #648
  • Jan 30 2019 17:19
    lontivero commented #648
  • Jan 30 2019 17:19
    lontivero commented #648
Jorn Vanloofsvelt
@JVanloofsvelt
Oh I see
Jorn Vanloofsvelt
@JVanloofsvelt
Did you want to make a Bitcoin wallet in wasm? @Kukks
Andrew Camilleri
@Kukks
Kind of, but also general Bitcoin tooling
Jorn Vanloofsvelt
@JVanloofsvelt
For fun, for profit?
Jorn Vanloofsvelt
@JVanloofsvelt
The slowest part of the Key derivation is the EC math:
var q = ECKey.CURVE.G.Multiply(parse256LL).Add(ECKey.GetPublicKeyParameters().Q);
Andrew Camilleri
@Kukks
Which lib is it using for that?
Jorn Vanloofsvelt
@JVanloofsvelt
Its the Bouncy Castle code
I guess it's mostly just a managed code implementation, not as optimized as native libraries
Jorn Vanloofsvelt
@JVanloofsvelt
It's the loop inside ImplShamirsTrickWNaf()
Jorn Vanloofsvelt
@JVanloofsvelt
best to wait for .NET 6 :)
Jorn Vanloofsvelt
@JVanloofsvelt
@NicolasDorier What's the state of QBitNinja and the indexer? Is it rather up to date, or in serious need of modernization/new development?
Documentation appears to be limited, if I'm not mistaken
Jorn Vanloofsvelt
@JVanloofsvelt
@Kukks Looks like I was able to improve it a lot
Jorn Vanloofsvelt
@JVanloofsvelt
What is the purpose of HDKeySets? I more or less understand how a HD wallet works, there is one root key-pair to derive from, but what's the purpose of the HDKeySet class that derives from multiple roots in parallel?
Oops, that should be a question for the QBitNinja channel :) I'm talking about this project: https://github.com/MetacoSA/QBitNinja/tree/master/QBitNinja
Jorn Vanloofsvelt
@JVanloofsvelt
Ah, I guess it's supposed to hold different public keys that make up a multi sig transaction
Milad Raeisi
@miladsoft
hi to all
Makwe Quintin
@QuintinMakwe

Good day everyone,
Happy to be here!!

Uhm I've read about HDwallets and understand to a great degree how it works. But ran into a couple of issues, I'd appreciate any suggestion from anyone, thanks in advance.

So the first problem I have is how to generate an xpubkey and xprivkey, I know I have to sum a privateKey and publicKey with a chain code and hash but really don't know how to go about this or know of a library in node or js that can help me. I'd appreciate a recommendation.

The second issue is a design a issue.

I'd love to observe all the public addresses in my wallet app from a single point which was why I chose to use HD wallets.

Now I'm confused as to how I should structure it, I have two implementation I'm considering.

First consideration
User A derivation path -> m/44/0/0/i and m/44/0/1/i
User B derivation path -> m/44/0/1/i and m/44/0/1/i

Second consideration
User A derivation path -> m/44/0/0/i and m/44/0/1/i
User B derivation path -> m/44/0/0/i and m/44/0/1/i

Andrew Camilleri
@Kukks
Hey all, just for your information, the main maintainer of NBitcoin is more often available over at https://chat.btcpayserver.org
We usually have a bridge connecting this chat over to a channel there but it is unreliable and often goes down. I would suggest you all transition there for faster help :)
Andres G. Aragoneses
@knocte
Kukks: would be great to have a mattermost instance that had channels for NBitcoin, BtcPayServer, Wasabi, etc
Andrew Camilleri
@Kukks

Kukks: would be great to have a mattermost instance that had channels for NBitcoin, BtcPayServer, Wasabi, etc

I agree, though we do use the https://chat.btcpayserver.org/ mattermost instance for everything (we have NBXplorer, NBitcoin, many btcpay channels, etc). A wasabi bridge would be nice but that's up to them :) ping @nopara73

Andres G. Aragoneses
@knocte
there's a wasabi mattermost?
I'd prefer just one instance, not bridges... I have already so many tabs in my browser
btw does mattermost offer an IRC bridge?
Andrew Camilleri
@Kukks
They still use the tumblebit slack :)
Yes, we've been using matterbridge and have had a btcpay mattermost <> freenode channel for a while
though it is not reliable as when channels that are mapped get deleted the bridge crashes and doesnt signal that it died
Andres G. Aragoneses
@knocte
so the freenode channel is only bridging btcPayServer room? how about the NBitcoin rooms et al?
Maedeh Zebhi
@maede71

hi
I created a transaction,
I have an error, when broadcast it in the blockcypher:

"StatusCode: BadRequest, Content-Type: application/json, Content-Length: 213)"
"{\"error\": \"Error validating transaction: Transaction 96ac292567476cfd7096b7cba634902031e5d60af9707732b4cdc3b63ecab549 orphaned, missing reference 00000000003767ab1d81bf5e85365b0664d98ca96c6887d27a1e19406a5dab21.\"}"
verified by the Nbitcoin:

 var feeRate = new FeeRate((long)32563);
 var transactionBuilder = txBuilder
                        .AddCoins(coins.Select(x => x.ToScriptCoin(secretKey.PubKey.WitHash.ScriptPubKey)).ToList())
                        .AddKeys(secretKey)
                        .Send(destination, vm.Amount.ToStringValue())
                        .SubtractFees()
                        .SetChange(secretKey.GetAddress(ScriptPubKeyType.SegwitP2SH))
                        .SendEstimatedFees(feeRate)
                        .Then();

  var tx = transactionBuilder.BuildTransaction(true);
  var fee = tx.GetFee(transactionBuilder.FindSpentCoins(tx));

    if (!txBuilder.Verify(tx))
    return new NBitcoinCreateTransactionResponse
      {
         Message = MessageResource.DontVerifyTx,
         Result = ResultType.Warning
      };

    BroadcastTransaction(tx);
Veria70
@Veria70
Hello
Everybody I need a help :)
I'm starter on NBitcoin :D i want to create Pubkey & WIF & Address From My own Private Key (not a generator) I know it's not common and safe for me but i want to use my own Crypto random generator, i create console application C# and take NBitcoin from nuget
Andres G. Aragoneses
@knocte
did you read the book?
Veria70
@Veria70
no :D
Key privateKey = new Key(); // generate a random private key
in the book
give me a link about my question pls
var bitcoinPrivateKey = new BitcoinSecret("XXXXXXXXXXXXXXXXXXXXXXXXXX", Network.Main); is it my answer?
Andres G. Aragoneses
@knocte
looks like it
Veria70
@Veria70
but this class give me error "Invalid hash of the base 58 string"
MyPrivateKey is Byte[]
var Base58SecKey = Encoders.Base58.EncodeData(MyPrivateKey);
Key key = new Key();
key.FromBytes(MyPrivateKey);
pantonis
@pantonis
Hello guys.
Can I read and parse local copy of the block files using NBitcoin?
Manolo-Valdes
@Manolo-Valdes
hi guys. there is a way to submitBlock and others mining capabilities using NBitcoin Node class or any implementation in NbitCoin? thanks in advance
Manolo-Valdes
@Manolo-Valdes
hi guys. Does var txids = node.GetMempool(); works? I always got an error like node is not in connected state
            using (var node = Node.ConnectToLocal(Network.TestNet)) //Connect to the node
            {
                var txids = node.GetMempool();
                var txz = node.GetMempoolTransactions();
                Thread.Sleep(500); //Wait a bit
            }
thanks in advance
Prayank
@prayank23

listunspent 0 99999 "[\"tb1qy7vv88mc0nzz8cex0p2fd34v7506xuvmrm6r3f\"]"

This works in bitcoin-cli. What is the correct syntax to do this using NBitcoin?

var rpc = new RPCClient("user3:password3", "localhost:18444", Network.TestNet);
var response = rpc.SendCommand(RPCOperations.listunspent, 0, 0);

Not sure how should I mention the address. Gives error in everything I tried.