8

Advantages of OP_CHECKMULTISIG over Shamir Secret Sharing for k-of-n: There is no need to reconstruct the actual secret key on one specific machine. With SSS, you're inherently relying on that one machine being able to verify that what it's going to sign is what is intended - otherwise you may e.g. be sending your entire balance instead of just the payment ...


8

Can I recover btc sent to an incorrect address? Confirmed Bitcoin transactions cannot be cancelled, reversed, undone or recovered. The only person who can give you your money back is the recipient, by creating a new transaction to send the same amount back to you. I realize now that I had a malware copy of electrum If the initial mishap was due to a ...


8

The site is a joke, or at best a confusing attempt to educate. It literally lists all private keys, from low to high, as private keys are just numbers. There are of course way more than can be reasonably computed and stored, so the pages are just generated on the fly. If you ask for private keys starting at number N, it on the fly computes the public keys ...


6

As the original author of the WIF format, honestly: the question had never occurred to me, but I think it does make sense. At the time the only existing Base58Check format was the P2PKH address format for mainnet and testnet, which had a network byte. To create the WIF format I just modified it to set the high bit in the version byte, and changed the payload ...


5

Well, it's very simple. Traditional wallets just generate multiple private keys. A private key is basically a randomly generated number. You can generate several of those, and store them all in a file. This poses a challenge with backups, because you have to keep saving new backups - and even if you do, as you continue using the wallet, your coins could be ...


5

Modern wallets are hierarchical deterministic (HD) wallets. A root key is used to derive an effectively infinite number of private keys using systems such as BIP32. Each derivation results in a single public/private keypair, and hence a single address at that level. Prior to the usage of HD wallets, things were a bit more straighforward - every time you ...


4

There are a few steps involved here. You create an address. That address is the hash of the public key corresponding to a private key you generated. This is a purely local operation. No communication with the network (or anyone) takes place. You give that address to someone. They create a transaction that credits (the hash of) your public key. This hash is ...


4

In ECDSA, the private key is a scalar 256-bit number. The public key is a elliptic curve point on the secp256k1 curve. Elliptic curves are abelian groups made up of the set of points resulting from repeatedly applying its group operation starting with its base point G. The group operation is the addition of two points. So, starting with the base point as the ...


4

Most early transactions including rewards for early blocks go to P2PK outputs and we don't know who owns them, Satoshi or others. In these output scripts (unlike the common ones today) we use the public key itself instead of its hash. Some people refer to this as being "less secure" which is both right and wrong. When you spend from an address you ...


3

TL;DR: You don't need to bruteforce anything here (at least almost), and can recover the missing last 7 characters on an average PC at home within less than 1 second using a simple Python script! In detail: In your picture there are 7 characters missing at the end of the private key (figured out by comparing with a test-printout using the same HTML file). ...


3

You can verify the legitimacy of Coinkite's Coldcard key generation, assuming that you've used Coldcard's feature of generating the entropy for the seed words by throwing dice (the key generated will be based on your dice throws and so wasn't surreptitiously built into the card). The web page https://coldcardwallet.com/docs/verifying-dice-roll-math gives ...


2

If your end goal is to wipe an old mobile phone to use exclusively as a cheap hardware wallet, I'd consider a Raspberry Pi. They can even be flashed to work exclusively as a Trezor device and can be built for sub $100 USD.


2

It has to be brute forced. There are a couple of ways but basically it is replacing each character by base-58 chars and checking the key. The amount of time that process takes depends on the number of characters missing and slightly on whether the key is compressed or uncompressed and a little on your luck. However if your key is compressed and is missing up ...


2

The Bitcoin would then be whatever addresses your watch only wallet is watching. Bitcoin Core won't just generate a keypair and throw away the private key, that would result in fund loss. In a wallet with private keys disabled, it will only use what has been imported into it in order to create addresses. If nothing has been imported into it, then it won't be ...


2

In theory it is possible to have a collision in this way. However in practice, doing so is basically the same as randomly generating new private keys and hoping for a collision.


2

I want to change the margin of the elliptic curve to the new N value, while doing so I want to keep the parameters Standard G-point Generator Secp256k1 What do you mean by "margin"? What you're asking for is a contradiction. The generator order N is a property of the curve and its generator. It is not something that can be chosen independently. It ...


2

The elliptic curve is secp256k1: y2 = x3 + 7 (mod p) where the field size is p = 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F. The curve order of secp256k1 is: n = 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141 The public key P (point) is calculated by multiplying the private key d (scalar) by the generator point G (...


2

Yes. The main idea of mnemonic backups is that the mnemonic encodes a master private key. All other addresses that your wallet generates are derived from this initial secret. To recover your transaction history and funds, you would need to go further than just to derive a single public key. You would need to rederive all of the wallet's addresses and then ...


2

A modern Bitcoin wallet program can generate many private-keys, each private-key has a public-key. For the most common transaction types, a Bitcoin-address is derived from the public-key. As you say it is normal to generate a new address (i.e. a new set of keys) for each transaction. This is because all the transaction data is public knowledge - it is in the ...


2

Using Elliptical Curve Digital Signature Algorithm (ECDSA), the private key is used to generate the public key, a secure hash function is then applied to the public key and a checksum appended to produce a Base58 formatted bitcoin address. A private key collision is theoretically possible, but practically impossible due to the sheer number of them available ...


2

You have reduced the level of security by making it so that an adversary only needs to figure out your three-word phrase rather than your 24-word phrase. Assuming 170,000 English words from which you derive your phrase, your three-word phrase only has 52 bits of entropy. In practice, it will probably be less than this because your set of words may not be ...


2

Have you checked the "Keys, Addresses" chapter from "Mastering Bitcoin"? You can read it for free here: https://github.com/bitcoinbook/bitcoinbook/blob/develop/ch04.asciidoc The Generating a Public Key section has also a visual representation for the "multiplication of a point G by an integer k on an elliptic curve"


2

There is no known way to 'efficiently' guess at the private key for a specific address. The best method is simply brute force guess-and-check, and given the massive address-space, the chance of guessing correctly is essentially zero.


2

No, you need the private key that the address in question was derived from. There is no mechanism for the wider network to determine that an address was derived from a private key, that was derived from a specific xpriv. The transaction signature must be created using the private key that is related to the address in question.


2

Sadly if you lost your seed phrase (12 or 24 words) you won't be able to regenerate your private key and get your funds control back. Best advice, look harder where you wrote it or stored it. PS. Never write your seed phrase in any online place or take any picture, just piece of paper very well stored.


2

No, you need the password to spend any money in the wallet. The keys are encrypted with the password you provided.


2

It's the same relationship between the branches of a tree and the seed you put in the earth that grows into that tree. We have a seed that can be used to derive child branches and child keys which makes the relationship is one directional (you can always derive the child key by having the seed but you can't compute the seed from the child key). Take a look ...


2

If the private keys are visible to you on your AWS account, then they'd be visible to anyone who has your session tokens (i.e. if a hacker would simply need to take your cookies to view the keys). So it's not only the cloud provider you'd need to worry about. Always best to sign transactions on your own node which has no connection to your online accounts. ...


2

Is it ok to store private keys in cloud provider (such as AWS, Firebase) secrets (enviroment variables) in cloud functions (such as lambdas or firebase cloud functions)? That's up to you. If you trust them sufficiently to effectively have the ability to steal your coins, or trust you could successfully get compensation from them in case that happens, this ...


2

Miners offer up blocks to the network hoping that their offerings will be accepted. Other nodes may accept or reject such blocks. A node that accepts a block adds that block to their copy of the blockchain. Nodes that don't accept a particular block don't add it to their copy of the blockchain and don't pass on that block to anyone else. Any miner that is ...


Only top voted, non community-wiki answers of a minimum length are eligible