Bitcoin Forum
July 16, 2024, 01:20:06 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: « 1 2 3 4 5 6 7 8 9 10 [11] 12 13 14 »
201  Bitcoin / Bitcoin Technical Support / Re: Bitcoin Core 0.17.1 unable to create non segwit adresses on: January 08, 2019, 08:14:37 PM
Hi,

since you are on windows maybe you don't start bitcoin-core using the command line. You can still generate new legacy addresses by typing
Code:
getnewaddress "testLegacy" legacy
on the debug window.

Ref : https://bitcoincore.org/en/doc/0.17.0/rpc/wallet/getnewaddress/
202  Bitcoin / Development & Technical Discussion / Re: My transactions get stuck in memory pool !!! on: January 08, 2019, 05:31:49 PM
Are you sure your transaction is in the mempool ? Try
Code:
getrawmempool 1
Hi, yes. I'm pretty sure. I used the command(It works without 1) and  I got that transaction ID. If you run it too, you can see it. Very strange!


The `1` parameter was in order to get more details http://chainquery.com/bitcoin-api/getrawmempool . It is indeed very strange, don't you modify any part of the code ? How did you set up the network ?
203  Bitcoin / Development & Technical Discussion / Re: My transactions get stuck in memory pool !!! on: January 08, 2019, 04:28:54 PM
Hi,

Are you sure your transaction is in the mempool ? Try
Code:
getrawmempool 1
to be sure and to know a little more about your tx.
204  Bitcoin / Development & Technical Discussion / Re: Storing data in bitcoin blockchain on: January 07, 2019, 03:33:45 PM
I think it's a good idea, but isn't it spam in the bitcoin block chain?
You pay so that full nodes stock this data forever, so it is not spam. However it could be seen as inappropriate.

Shouldn't there be a separate blockchain for document verification, so the bitcoin blockchain can be only about transferring money?
Why the Bitcoin block chain is used is because it is the one with the more chainwork, which makes it the most unlikely to change.

You are utilizing blockchain for which it has been invented.
The block chain has been designed to order transactions.
205  Bitcoin / Development & Technical Discussion / Re: spend P2SH output on: January 06, 2019, 06:42:11 PM
Thank you for response, CodingEnthusiast

I have found the solution : I should push the OPs from which are composed the locking script. So just adding 0x02 before my 2 OPs made my tx be valid :
Code:
script_sig : OP_2 0x02 OP_2 OP_EQUAL
I think that being pushed, the OP_EQUAL is interpreted as data and not executed.
206  Bitcoin / Development & Technical Discussion / spend P2SH output on: January 06, 2019, 05:20:56 PM
Hi,

I am playing around with raw transactions and have succesfully created a P2SH output with the locking script set to
Code:
OP_2 OP_EQUAL
following the bip16 standard. Thus my script_pubkey looks like :
Code:
OP_HASH160 <ripemd160(sha256(OP_2 OP_EQUAL))> OP_EQUAL
OP_HASH160 5c9081ddd7c74d71e183b104abcc3f74be54c9c7 OP_EQUAL
a9145c9081ddd7c74d71e183b104abcc3f74be54c9c787

When trying to spend it I naively created a transaction which spends it with the script_sig :
Code:
OP_2 OP_2 OP_EQUAL
As the example  (for a classic P2PK the P2SH way) in the bip is :
Code:
scriptSig: [signature] {[pubkey] OP_CHECKSIG}
which I interpreted as :
Code:
scriptSig: [unlocking scrip] {locking script}

But I ended up with an error (64: scriptsig-not-pushonly) because there is OP_EQUAL, but the script will be evaluated as :
Code:
OP_2 OP_2 OP_EQUAL OP_HASH160 5c9081ddd7c74d71e183b104abcc3f74be54c9c7 OP_EQUAL
So here is my question : how to make the hash match without putting the script in the script_sig ? Moreover HASH160 will only hash the top item on the stack..
207  Bitcoin / Development & Technical Discussion / Re: What libraries for secp256k1 have been used for bitcoin in the past? on: January 06, 2019, 12:23:03 PM
Is it possible that at least one of them had an exploit in them?
Making all of the transactions/addresses sent during that period vulnerable to attack?
Hi,

To answer the question in the title : since 0.10, bitcoin-core uses its own implementation of secp256k1 : https://github.com/bitcoin/bitcoin/tree/v0.10.0/src/secp256k1 (BIP66). It previously used OpenSSL.
To answer the question in the post :
Is it possible that at least one of them had an exploit in them?
A bug in OpenSSL which could have caused a consensus failure in Bitcoin is what accelerated the move to using libsecp.

Making all of the transactions/addresses sent during that period vulnerable to attack?
How ?
208  Bitcoin / Development & Technical Discussion / Re: What languages do I need for blockchain programming? on: January 06, 2019, 12:15:21 PM
for starters bitcoin's script is not meant for writing smart contracts since bitcoin is a currency and doesn't really need that kind of contract capability. in fact majority of the current OP codes are unnecessary.
Bitcoin is a programmable currency, I think it needs this capability

additionally if we ignore the capability power, writing a script in bitcoin can be very easy only if you design a simple "wrapper" for it like a user friendly GUI that translates your purposes into scripts!
I've seen this which is closer to what you are talking about : https://ivy-lang.org/bitcoin. However it is not what I meant, I said that Script syntax is close to the internal operation of transactions and in order to use it you have to know how they work, or you cannot do anything. Then I said that Solidity on Ethereum put a higher level of abstraction which leads to issues creating by dev not knowing how the EVM works. I made this comparison because we were talking about C/C++ and Python/JS.
209  Bitcoin / Development & Technical Discussion / Re: 10, 10 year old Bitcoins in 10 alternate universes! on: January 05, 2019, 02:43:28 PM
Going to have to throw my hands up and admit I don't really understand these... any other external factors taken into consideration, or are all alternate versions working on the same assumptions of today?
The differences are in:
- The elliptic curve that was used which are all over Fp but have different variable values. This will affect the security and also is used in the following:
-- Calculation of `e` (based on size of the curve, for example for secp256k1 chances of trimming e is highly unlikely but in other curves it has a higher chance of happening, not a security disadvantage though)
-- Choice of hash function that was used for these alternatives and needs to match the size of the curve. The function itself is used for:
--- Getting transaction ID (for example in outpoint of btc521 in second post you can see the hash is a 64 byte one which is the result of a SHA512)
--- In rfc6979's HMAC function (for getting a deterministic k value)
--- Hash of the message for signing (for calculating e afterwards)

Are we saying that speed and size of transactions were all that affected adoption? And security itself wasn't actually the biggest consideration (or are we assuming Schnorr is also the most secure?).
I didn't get into the topic about security that much, and I'm no expert. I can't begin to assume why Satoshi chose this curve but it is a good one right in the middle. It offers a good enough security and it is fast. And by that time ECDSA was more popular than ECSDSA.
When security is concerned choice of the curve is based the "strength" of the curve. Bitcoin's curve offers 128 bits of security and according to SEC1 document it offers security beyond 2030 (which is just an estimation made in 2009).
As for Schnorr, the security (AFAIK) is the same because you are still using the same curve with the same hash functions. The only difference is in calculation of the signature which is still pretty much the same. Schnorr (whether it is the original 1991 patented one or any of the other 4 alternatives or if it is the Sipa's implementation) is getting rid of 2 multiplicative inverse modulo n which exist in ECDSA and adds some hashing in there but everything else is the same. You still choose the same random k, multiply that with a point (G) for calculation of r and get s based on that.
Hi,

Schnorr signatures are in a way more secure :
Quote
Schnorr signatures have a security proof, which is not true for ECDSA. In addition, they are also non-malleable, so a third-party that does not have access to a private key cannot modify the signature without invalidating it.
More about them here.
210  Bitcoin / Development & Technical Discussion / Re: What languages do I need for blockchain programming? on: January 05, 2019, 02:32:53 PM
<...>
Did you read my answer ? I don't have the absolute truth but these journalist-marketing-like affirmations are not accurate.

I just noticed your answer darosior, yes you are right and your response is great helpful. I was just trying to help OP by referring to my own researches as i also keep asking about where to start learning how to code for blockchain. And afaik, c/c++ are mandatory to start programming for newbies as it for professionals, are guides and tutorials helpful to master such a complicated language? what do i also need to start learning c/c++ ?? I still think there is a difference gap between free courses and paied ones. The question stil remain the same; where to start?
According to me, and it's only my opinion, C/C++ are the better language to start because there is less abstraction and I think a beginner needs to know what's going on when he does something, or he'll ending up doing things wrong. C is not so complicated and I would even say it is easier to understand than Python or Javascript : these two language put a high level of abstraction (Python is my favorite language I'm trying to be objective) and sometimes you'll have issues you won't even understand because of these abstractions, or worse issues that you could not see and someone with a better understanding can exploit.. In return you will be able to build great things with less effort and faster with these languages.

In order to link this to the subject of the thread, I think it is the same with Bitcoin/other cc networks : a concrete example is Solidity. Before Solidity people who wanted to do smart contracts had to use Script and in order to do so, understand how transactions work on Bitcoin. With Solidity people without a real understanding of what's going on under the hood on Ethereum are building smart contracts obviously insecure without even noticing it.

PS : I saw that your pseudo is in French so if you want guides you can checkout zeste de savoir or openclassrooms. But please open a new thread if you want to discuss this, in order to not be out of the scope of this thread.

EDIT : Of course, links I gave you provide free courses. Knowledge is free, please don't do the mistake of paying for courses selling dreams.
211  Bitcoin / Bitcoin Technical Support / Re: Old bitcoin wallet.dat files needed on: January 04, 2019, 07:27:08 PM
3. Older protocol have P2PK transaction which used on IP Transaction

P2PK and send to IP are two different concepts.
P2PK is simply Pay to Public key which was changed into Pay to Public key Hash later on. in the early versions your output script was the public key but now we are including the RIPEMD160(SHA256(pubkey)) instead.

Pay to IP is not a script type, it was more like a "communication option" and a client feature rather than being a bitcoin feature. meaning your client opened up a socket on a certain IP:Port and then tried connecting, if it  succeeded with the handshake then it sent a different message asking for a public key/address so that it can make payment to it. the next step was the same as having the public key already and sending to it.

@OP: are you trying to "dig" the wallet for altcoins? Wink

Any idea why they stopped doing that? I was thinking it might have been down to the use of tor but now I'm not sure if it was more of a request style system. Maybe it's a privacy thing?
Hi,

there was no way to be sure the public key sent by the receiving node was not a middle-man. More info in this thread.
212  Bitcoin / Bitcoin Technical Support / Re: [bitcoind] several bitcoind instances with one blockchain on: January 04, 2019, 07:19:51 PM
hi,
I wanted to give my server users the ability to run their own bitcoind instances without the need to duplicate the downloaded blockchain for each of the bitcoind instances.
I want to save space on HDD in this way. We need to have 10 bitcoind instances (each user has his own wallet.dat). I can run bitcoind on other ports but I do not know how to make him use one blockchain. The datadir parametr does not help.

is it possible what he wants to do? or is there any other way? Huh

Hi,

maybe the multi-wallet support is what you are looking for.
213  Bitcoin / Development & Technical Discussion / Re: What languages do I need for blockchain programming? on: January 04, 2019, 02:22:33 PM
In no way am I confused, by blockchain programming I mean I want to program a blockchain. I’m not asking what a blockchain is as I’ve known for a long while, I want to be able to build custom blockchain solutions. Meaning I want to be able to program and run a blockchain, block explorer, wallet, and cryptocurrency. With this I’m sure I could work on established networks as well and I plan to learn solidity for smart contract programming.
Ok, so what do you mean by "program a blockchain" ? You don't want to build/use a network ? What is a custom blockchain solution ? An application using a network like Bitcoin ?

Meaning I want to be able to program and run a blockchain, block explorer, wallet, and cryptocurrency.
In order to do so you need a network, and it seems pretty close to what Bitcoin is.
214  Bitcoin / Development & Technical Discussion / Re: What languages do I need for blockchain programming? on: January 04, 2019, 01:27:39 PM
In the blockchain developement zone, best-known programming languages that can be used in the making of blockchain are:
C++ most known coding language.
Java used in website designing as it is easy to connect the link between blocks of information.
Python can perform many tasks with a single command and it makes the work of building blocks with relevant information and linking them together so much easier.
Ruby enables the use of a mix of languages to create a blockchain that cannot be easily hacked by its users.
Solidity :
Quote
Solidity is a contract-based language that is primarily used to enhance the use of EVM machines. One of the reasons why programmers prefer using this language to build the blockchain is the fact that it can catch hold of any iteration at the time of coding. It saves you a lot of time while creating the message to send across to another user. You can easily procure information and tutorials on the language that makes it accessible to the masses. It is one of the best expressions that you can use for smart contracts or blockchain for that matter.
Source: https://dzone.com/articles/what-are-the-top-5-blockchain-programming-language

Java, Python, & Ruby are generally easier for newcomers as they have less of a learning curve while C++ & Solidity usually take more time to learn.


*am not a programmer but just trying to share ideas based on my daily searches in the web, please correct me if you find something wrong.
Did you read my answer ? I don't have the absolute truth but these journalist-marketing-like affirmations are not accurate.
215  Bitcoin / Development & Technical Discussion / Re: What languages do I need for blockchain programming? on: January 04, 2019, 01:00:45 PM
I am trying to get into blockchain programming from having no programming experience, right now I am slowly learning C++, once I feel a little comfortable with it I am going to start learning blockchain development from courses regardless of the languages they use (which shouldn't be a problem because learning C++ is to give me the knowledge of programming in general and to apply C++ as well). But I see all of these different githubs and courses that use javascript and javascript derived languages (node.js, react.js, etc), those that use c++, those that use python, those that use GO, and I am at a loss. What should I learn exactly? Do I need to know all of these languages for not too complex blockchain applications?

My plan was to just learn c++ and then start studying the blockchain programming while learning the syntax of other languages as I need them, but how can you make a blockchain, cryptocurrency, explorer, wallet, etc utilizing all of the languages above? Do I need to?
Hi,

I do think that learning C/C++ as the first language is the best way to start. By being able to read C++ you can read the whole bitcoin-core code which is, I think, what you mean by "blockchain programing".

But you are confused with the term "blockchain" : a block chain is a database and in most cases just a set of transactions, you won't "programm a blockchain" as you won't programm a MariaDB. However you can use datas from a MariaDB database, or from a block chain for an application or interact with it : here you can differenciate two things.

1) You want to know how Bitcoin (the network, defined by a protocol) works and C++ is the good way to go.
2) You want to make some mobile or web applications which would interact with the Bitcoin network (or another, like Ethereum or Stellar) and in order to do so a scripting language in more often used (mostly Javascript).

Theses two paths are not incompatible but it is easier (required ^^) to go from 1) 2) than from to 2) to 1).

To conclude I would recommend you to learn and practice C++, trying to learn some parts of bitcoin-core (the reference implementation of the Bitcoin protocol) and then to choose what you want to do. Check this thread it can helps you to start with Bitcoin.
216  Bitcoin / Development & Technical Discussion / Re: Understanding The Satoshi Codebase (Series) PART 1 - on: January 04, 2019, 12:47:11 PM
Updating the OP_Code sections to include the descriptions of each OP code.
Looking for collaboration on this to try have the entire codebase in sections if anyone is willing to help with this please send me a PM to being collaboration
Hi,

They are already described here, why do you want to redescribe them ?
217  Bitcoin / Development & Technical Discussion / Re: Generate New BTC address with private key on: January 03, 2019, 12:58:45 PM
Hello.
Please, help me.
I'm looking for API to create/generate new BTC address and download its private key.
Thanks a lot!

I need 1000 wallets.


Hi,

you don't need an API for that. An address is (not all, but basically) the hash of a public key. The public key is derived from a private one. The private key is just a random number. In order to have 1000 addresses, you just need to generate 1000 random numbers : it's the whole point of Bitcoin, you don't ask for a Bitcoin account (ask an API or anything), you generate one. I made a quick explanation here if you want to implement it, it just takes about 30 lines of code and you take control over your money  Wink .

Besides, I think you are confused with what is a wallet. A wallet is an interface to the Bitcoin network : it stores your addresses and private keys and uses them to craft transactions. Once you generated your key pairs yourself, you just need an (open source) wallet to interact with the Bitcoin network.
218  Bitcoin / Development & Technical Discussion / Re: Decentralised bitcoin address book on: January 03, 2019, 12:45:37 PM
I've often thought Bitcoin has a similar issue to TOR, no one without money can derive an address they can easily remember. Facebook had to devote an entire datacentre to mine Facebookcorewwwi.onion for example for a week. 

Got any experience with Namecoin? I remember this project trying to solve the problem of decentralized name-derivation vs human readability but I never looked into the technical aspects to be honest.

While the idea is great, it's barely used and the community almost non-existent (at least on reddit/medium).
I think too that what you (OP) are talking about is not far from what Namecoin offers. The project is not actually trying, but does work and provides .bit domains, but most of the people use DNS servers that does not resolve those .bit domains and that's why they are not used.
Like what the Ethereum Foundation is trying to do with ENS, you can use domains to make friendlier addresses for an end-user. I remember Dash is trying to provide something similar but I haven't dived in it.
219  Bitcoin / Development & Technical Discussion / Re: Move away from all zero bits prefix? on: December 30, 2018, 12:52:53 PM
Anyway, there is no reason why you couldn't add a blockchain identifier to every block and it would not need to be part of the block hash. On the other hand, every blockchain is unique, so is it really necessary?

My idea is that adding a blockchain identifier to the block would allow miners to mine any of a myriad of Bitcoin-like coins on the same ASIC hardware and know which is which in the block. It would make the miners agnostic about the different blockchains of this type.

https://en.bitcoin.it/wiki/Merged_mining_specification
https://github.com/namecoin/wiki/blob/master/Merged-Mining.mediawiki
 Wink
220  Other / Beginners & Help / Re: Where I can get a list of Bitcoin based cryptocurrencies on: December 30, 2018, 12:50:58 PM
Hi all!

How can I get list of all bitcoin-based cryptocurrencies  such as Dash, Dogecoin, Litecoin, what else ?

does ist actually still matter weather cryptocurrency is bitcoin based?
Hi,

I think it does matter since 99.9% of cryptocurrencies have the same coinbase as Bitcoin (namely Ethereum and Stellar hasn't, maybe some others too) and not having the same codebase means having built something sustainable from scratch without reusing a working solution. I think it means more work (even if some have taken the same codebase but did a lot of work).
Pages: « 1 2 3 4 5 6 7 8 9 10 [11] 12 13 14 »
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!