Bitcoin Forum
May 24, 2024, 09:39:57 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: « 1 ... 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 [83] 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 ... 158 »
1641  Bitcoin / Development & Technical Discussion / Exploring alternative full node implementations - Gocoin on: July 26, 2022, 01:14:28 PM
WebUI

To access WebUI, just type 127.0.0.1:8833 or localhost:8833 on your Browser. You'll see homepage of Gocoin which show some statistic about your node. Most parts is easy to understand if you already use Bitcoin Core with primary intention to run full node. I don't what SPB refers though.



"Transactions" tab shows your node mempool. Compared with Bitcoin Core, Gocoin show more detail information about your node mempool statistic. You can enable/disable memory pool and transaction relay here. You also can upload and broadcast transaction as well. I haven't test this feature yet, so i don't know accepted transaction file format.



If you scroll down, you also can see list of transaction on your node mempool. It's quite detailed where it shows total signature operation and time to verify the transaction in milliseconds (ms). You also can choose how much transaction to be shown and how it's sorted.



"Blocks" tab show some newest blocks. It's quite interesting to see total signature operation of each block, which rarely shown on Bitcoin block explorer. The rest is something you can see on most block explorer.



"Miners" tab show statistic about miner during last 24 hours. I like how Gocoin show how much BTC earned by miner/pool from transaction fees.



"Counters" tab show lots of statistic about your node. Most of you won't find it's interesting, unless you're trying to analyze something.



TextUI

TextUI is available after you start Gocoin from terminal, load all UTXO/mempool to RAM and optionally start WebUI server. When you enter help, there are 56 available commands. But i'll just show few command here. By the way, the TextUI doesn't support key up to show previous typed command.

Code:
Gocoin client version 1.10.1
Using config file gocoin.conf
Using modernc.org/memory package to skip GC for UTXO records
Public auth key: @2295tiTyJeYkL8aroquqbuA8EEt5YPYCGQouSfGu7t9Gv
Using libsecp256k1.a for ECVerify, SchnorrVerify & CheckPayToContact
Blockchain open in 1m16.1746388s.  5078 + 9374 MB of RAM used (6024)
Connect to bitcoin network via 127.0.0.1:8333
1404 transactions taking 990429 Bytes loaded from mempool.dmp
201 transactions use 212 memory inputs
Starting WebUI at 127.0.0.1:8833
ssl_cert/ca.crt not found
> help
The following 56 commands are supported:
   allbal, ab - Show Allbalance statistics
   balance, a - List balance of given bitcoin address (or raw public key)
   ban - Ban a peer specified by IP
   bchain, b - Display blockchain statistics
   bip9 - Analyze current blockchain for BIP9 bits (add 'all' to see more)
   cache - Show blocks cached in memory
   configload, cl - Re-load settings from the common file
   configsave, cs - Save current settings to a common file
   configset, cfg - Set a specific common value - use JSON, omit top {}
   conn - Connect to the given node (specify IP and optionally a port)
   counters, c - Show all kind of debug counters
   dlimit, dl - Set maximum download speed. The value is in KB/second - 0 for unlimited
   drop - Disconenct from node with a given IP
   friends - Show current friends settings
   getmp, mpg - Send getmp message to the peer with the given ID
   help, h, ? - Shows this help
   info, i - Shows general info about the node
   inv - Send inv message to all the peers - specify type & hash
   kill - Kill the node. WARNING: not safe - use 'quit' instead
   maxouts, o - Show addresses with highest number of outputs [0,1,2,3 or count]
   mem - Show detailed memory stats (optionally free, gc or a numeric param)
   mempool, mp - Show the mempool statistics
   minerstat, m - Look for the miner ID in recent blocks (optionally specify number of hours)
   net, n - Show network statistics. Specify ID to see its details.
   newblock, nb - build a new block
   nodestat, ns - Shows all known nodes version statistics
   peeradd, pa - Add a peer to the database, mark it as alive
   peerdel, pd - Delete peer from the DB
   peers, p - Operation on pers database ('peers help' for help)
   pend - Show pending blocks, to be fetched
   purge - Purge all unspendable outputs from UTXO database
   quit, q - Quit the node
   rd - Show recently disconnected incoming connections
   redo - Redo last block
   richest, r - Show addresses with most coins [0,1,2,3 or count]
   savebl - Saves a block with a given hash to a binary file
   saveutxo, s - Save UTXO database now
   trust, t - Assume all donwloaded blocks trusted (1) or un-trusted (0)
   tx1send, stx1 - Broadcast transaction to a single random peer (identified by a given <txid>)
   txcheck, txc - Verify consistency of mempool
   txchild, ch - show all the children fo the given tx
   txdecode, td - Decode a transaction from memory pool (identified by a given <txid>)
   txdel, dtx - Remove a transaction from memory pool (identified by a given <txid>)
   txlist, ltx - List all the transaction loaded into memory pool up to 1MB space <max_size>
   txlistban, ltxb - List the transaction that we have rejected
   txload, tx - Load transaction data from the given file, decode it and store in memory
   txmpload, mpl - Load transaction from the given file (must be in mempool.dmp format)
   txmpsave, mps - Save memory pool to disk
   txsave - Save raw transaction from memory pool to disk
   txsend, stx - Broadcast transaction from memory pool (identified by a given <txid>)
   txsendall, stxa - Broadcast all the transactions (what you see after ltx)
   ulimit, ul - Set maximum upload speed. The value is in KB/second - 0 for unlimited
   unban - Unban a peer specified by IP[:port] (or 'unban all')
   undo - Undo last block
   utxo, u - Display UTXO-db statistics
   wallet, w - Enable (on) or disable (off) wallet functionality

allbal or ab shows Bitcoin distribution on each address. I just found out there are at least 11500 Bitcoin stored on Taproot address.

Code:
> ab
AllBalMinVal: 0.00100000   UseMapCnt: 100
AllBalancesP2KH:  9316080 records, 15769961 outputs, 8453062.37091608 BTC, 8065 maps
AllBalancesP2SH:  4880392 records, 8708172 outputs, 5060770.48319191 BTC, 4659 maps
AllBalancesP2WKH:  6008374 records, 9031904 outputs, 3097910.65303046 BTC, 2387 maps
AllBalancesP2WSH:  423467 records, 494987 outputs, 734667.71948642 BTC, 78 maps
AllBalancesP2TAP:  29907 records, 32859 outputs, 11509.20487519 BTC, 2 maps
Ready in 2.336s

balance or a show balance of an address or raw public key. The result is quite detailed which show when and how much an address receive Bitcoin. I really like this feature since it's fast and not exist on Bitcoin. But i wonder why the developer chose a as short hand option rather than b, bl or bal.

Code:
> a bc1qu8ujv03v0g4h4dpvempm9snkrrmrue4m5dsmtf
bc1qu8ujv03v0g4h4dpvempm9snkrrmrue4m5dsmtf has 0.06024620 BTC in 4 records:
     0.01468000 BTC 2760df3b1f0ca44b0f698a34017c7c70b631dfea2707c5ecdecacdb327b3494c-003 737049
     0.01528000 BTC 601fedd571bdfc1d2a1942820b8a215989a4183178b4b3bb9f22ecd1ccdd2540-002 740308
     0.01600750 BTC 4e3a91f58e2fb0669ab8430eb5c4271c75ad7d0be6f52b54fddebfff648791a1-004 744138
     0.01427870 BTC f811c517cc2cf53cf37cde949b58e1176edf9406e06ee229ca23e5977cb2ffce-001 746595
Ready in 0.001s

richest or r show Bitcoin address with most Bitcoin. It also can show richest Bitcoin addressed based on address type. I wouldn't use it much, but it's good this feature exist.

Code:
> richest help
Specify the address type or/and number of top records to display
Valid address types: 0-P2K, 1-P2SH, 2-P2WKH, 3-P2WSH, 4-P2TAP
Ready in 0.000s
> richest 1 5
Counting only addr type P2SH
5059253.17916417 BTC in 8708418 unspent recs from 4880479 P2SH addresses
Top addresses with at least 0.00000000 BTC: 4880479
1 34xp4vRoCGJym3xR7yCVPFHoCNxv4Twseo 252597.22065495 BTC in 141 inputs
2 3LYJfcfHPXYJreMsASk2jkn69LWEYKzexb 125351.13621699 BTC in 15 inputs
3 3M219KR5vEneNb47ewrPfWyb5jQ2DjxRP6 101266.00000000 BTC in 2 inputs
4 37XuVSEpWW4trkfmvWzegTHQt7BdktSKUs 94505.32948895 BTC in 11 inputs
5 3Kzh9qAqVWQhEsfQz7zEQL1EuSx5tyNLNS 66688.63295257 BTC in 157 inputs
Ready in 6.100s
> richest 4 20
Counting only addr type P2TAP
11509.27100655 BTC in 32859 unspent recs from 29907 P2TAP addresses
Top addresses with at least 0.00000000 BTC: 29907
1 bc1ptev79mgw2a8gva285qjx4waunsmwtscz86tv38wylggrvsrdtxdspyg8j7 2000.00089559 BTC in 2 inputs
2 bc1pgr6fsrurg8mz3rymkkfsagrl03dhaj5ep7da7kurhwftc433dynq6hn24l 675.00000000 BTC in 1 inputs
3 bc1pxt5ytk0x4zsx3mknaksy33wju537ry4j7gwnvv232lhgu7hthalqs5e9td 616.59237878 BTC in 1 inputs
4 bc1p6qspdmx9dl88udm8uw3g2m2sxnqcaz2u4jh8wujsz5766499w98qzm48yf 260.00000000 BTC in 1 inputs
5 bc1p6xvd3dkw05zm30ztwcmdlgc8cc5tg3umxr3spnrdfzaenyke9ezs4j6a27 212.71608460 BTC in 1 inputs
6 bc1pmxywlfzfwuucfy28udfgzu4nnm7kyakscvy80fyzzdggzxgvuw0s4g7897 210.92668965 BTC in 1 inputs
7 bc1p8v9752vmw730tc5hm05cuy62aegdngvrkes0qqfjjjrj2lt9s0yqhdv7ht 200.00000000 BTC in 1 inputs
8 bc1ppz5umrxdysczu7ks3q9u9rkhcctuvdamlcw8v88m6hw4vd3n6npqf9rrpj 178.12582122 BTC in 1 inputs
9 bc1pylqj8tcer64h2ampy00s8eq97vqmmkq0ecupe5rk4l8ulucc77xsqwpryg 169.33314128 BTC in 1 inputs
10 bc1ptw0jdnxmjyknrctlacvmgz0dkd28kfax3xq8rs7xm9ty3u0w9qls3hm9gf 150.00000000 BTC in 1 inputs
11 bc1pn7dm6hv05hmmkuqeqmw9a52rtlx9gqa6u746k2pqle0nua2psdasqdx6ww 139.70007253 BTC in 1 inputs
12 bc1pq9zdsct8ffh3nq9p2rwaj6jrrcpuydmnvrek3e0gjke0lnjpgjpq2h9tae 108.99998237 BTC in 1 inputs
13 bc1p2tv3e8qtksfas4xe7zpt8sya0tc4tm97mul3pv7p0psruf5t6npqe3und9 100.99825585 BTC in 1 inputs
14 bc1p5tx3jfy8yhmwqgh4y3j9uscy0vh24qxjpv0ey0pxqamsz7dn7f0qq3ggkn 100.10100000 BTC in 3 inputs
15 bc1pz25hq6hwp6fsgw2mkepu53q6tqqc57gyk0en45459727rhu7a35seeml2s 99.99999878 BTC in 1 inputs
16 bc1phf8s5phcur3tdf9684yxspz72vlqq99xy26lzw4fru0vvapkxjnqpy7q44 98.67490552 BTC in 2 inputs
17 bc1pa63l4zkwjhq54ucnxkgjwqga3ge7c4mzqqgc9d4s3va2s7e7ga7s2qdt5e 88.96373094 BTC in 1 inputs
18 bc1pk5rcyd308ld4e9dkd8yehd602tr5c5xrgh2ewmgj8y9fk44mnsnqcwp59l 85.02946910 BTC in 1 inputs
19 bc1pv6pe8wfp6yq2np6j6npqhfsavjpsdaemp4kv87usx9zw8lxssfmquhz525 81.39410000 BTC in 3 inputs
20 bc1pj66nqend9wsey6dd5q7cqvxq97y70pey7j0lswgmvwmwcnylynvsfsuaau 80.00174160 BTC in 1 inputs
Ready in 0.034s

Gocoin configuration

As i said earlier, Gocoin can be configured through gocoin.conf file. But i just realized you can edit it from WebUI homepage. But what surprise me is there are few field which isn't mention on Gocoin config documentation[1] which are RPC., TXPool.Debug and Memory.FreeAtStart. The RPC is limited to experimentation mining API though[2], so it's not interesting feature for me.



Reducing RAM

Since Gocoin RAM usage is quite high, i tried to reduce it's RAM consumption. Based on Gocoin documentation page[1,3]. there are few action i could do. First action is compressing UTXO records. With tools i compiled earlier, it only reduce UTXO.db file from 8.5GB to 8.2GB on the HDD. Second action is modifying gocoin.conf which involve memory, you can see my modification below.

Code:
{
    ...
    "Memory": {
        "GCPercTrshold": 20,
        "UseGoHeap": false,
        "MaxCachedBlks": 24,
        "CacheOnDisk": true,
        "PurgeUnspendableUTXO": true
    },
    ...
}

I managed to reduce RAM consumption to ~14.9GB. IMO it's rather small reduction since Gocoin usually use 17-19GB RAM. But there's nothing much i could do since Gocoin still store all UTXO to RAM.



Conclusion

Aside from RAM usage, Gocoin appear to be decent Bitcoin full node implementation. It's very impressive single developer write Gocoin alone. I don't need instant access to UXO though, so Gocoin isn't suitable for me. But even if i do, the RPC currently limited to mining-related feature.

Some things i like,
* Minimum dependency with easy compilation process
* Lots of features on TextUI
* Neat WebUI, although some feature only available on TextUI
* Lots of external tools
* Fast sync time, which only hold back by my HDD


Some things i don't like,
* Load all UTXO to RAM
* Incomplete documentation
* RPC only support mining-related feature, even though many feature exist on TextUI




[1] https://gocoin.pl/gocoin_manual_config.html
[2] https://gocoin.pl/gocoin_issues.html
[3] https://gocoin.pl/gocoin_tweaks.html
1642  Bitcoin / Development & Technical Discussion / Exploring alternative full node implementations - Gocoin on: July 26, 2022, 01:13:55 PM
Intro

Inspired by tiltedIceCream reply[1] on thread "Why aren't alternative implementations encouraged?"[2], i'm inspirited to try alternative Bitcoin full node implementation. Based on Jameson Lopp benchmark[3], Gocoin seems to have good performance so i decide to give a try.

Basic info

  • It's written in Go language (golang).
  • It's solely developed by piotr_n[4].
  • It has both full node and wallet functionally.
  • It's developed since 2013[5].
  • Gocoin load all UTXO to RAM.

My system

  • Debian-based OS
  • Old 6 core CPU
  • 32GB RAM
  • 3.5" HDD (Both Bitcoin Core and Gocoin data stored here)
  • Bitcoin Core 23.0
  • Gocoin 1.10.1

Compile and installation

The documentation[6] only mention i need git and golang on my system. Since it doesn't mention required golang version, i just use golang provided my distro. I receive golang 1.18.1 which is only slightly older than newest version (1.18.4[7]).

Code:
sudo apt update && sudo apt install golang-go
go version

When i read tweak page[8], Gocoin also support using external secp256k1 library from Bitcoin Core. So i decide to install secp256k1 on my system and clone Gocoin 1.10.1.

Code:
sudo apt-get install gcc automake autoconf libtool make git libgmp-dev
git clone --depth 1 --branch v23.0 https://github.com/bitcoin/bitcoin.git
cd bitcoin/src/secp256k1/
./autogen.sh
./configure --enable-module-schnorrsig
make
sudo make install

Using Gocoin built-in benchmark, external secp256k1 library have 40% faster performance on my system. So i decide to use external secp256k1 library by copying sipasec.go to parent directory.

Code:
git clone --depth 1 --branch 1.10.1 https://github.com/piotrnar/gocoin
cd lib/others/cgo/ec_bench/
go run gonative.go
go run sipasec.go

cd ../../../../client/speedups/
cp sipasec.go ..

Finally it's time to compile Gocoin. You could just compile the client to run full node, but i try to compile everything. It's straightforward and only took few seconds. Both client and wallet compiled with no problem, although 5 external Gocoin failed to compile. I only managed to fix utxo_compress and utxo_decompress after using latest code from Gocoin latest commit.

Code:
cd /path/to/gocoin
cd client/
go build
cd ../wallet/
go build
cd ../tools/
for item in *go; do go build $item; done;

Code:
# command-line-arguments
./utxo_benchmark.go:33:38: invalid operation: cannot slice k (variable of type int)
./utxo_benchmark.go:43:37: cannot use v (variable of type map[utxo.UtxoKeyType][]byte) as type []byte in argument to binary.LittleEndian.Uint32
./utxo_benchmark.go:51:32: cannot use k (variable of type int) as type utxo.UtxoKeyType in argument to utxo.NewUtxoRecStatic
./utxo_benchmark.go:51:35: cannot use v (variable of type map[utxo.UtxoKeyType][]byte) as type []byte in argument to utxo.NewUtxoRecStatic
./utxo_benchmark.go:59:26: cannot use k (variable of type int) as type utxo.UtxoKeyType in argument to utxo.NewUtxoRec
./utxo_benchmark.go:59:29: cannot use v (variable of type map[utxo.UtxoKeyType][]byte) as type []byte in argument to utxo.NewUtxoRec
# command-line-arguments
./verify_script.go:19:54: undefined: syscall.Proc
./verify_script.go:35:22: undefined: syscall.Syscall9
./verify_script.go:45:21: undefined: syscall.LoadDLL
# command-line-arguments
./verify_tx.go:24:42: undefined: syscall.Proc
./verify_tx.go:37:22: undefined: syscall.Syscall9
./verify_tx.go:47:21: undefined: syscall.LoadDLL

Initial Block Download (IBD)

Here's my gocoin.conf which mashed together from Jameson Lopp blog[3] and Gocoin documentation[9-10]. I also configure Gocoin only connect to my Bitcoin Core node. gocoin.conf should be located on directory where you run/launch client file.

Code:
{
    "Memory.CacheOnDisk": false,
    "LastTrustedBlock": "00000000000000000000dbf2ac1b8bbebf83f8d3bd9f9c4a6a5a250548291224",
    "AllBalances.AutoLoad": false,
    "UTXOSave.SecondsToTake": 0,
    "Net.ListenTCP": false,
    "Net.MaxOutCons": 20,
    "Memory.GCPercTrshold": 100,
    "Memory.UseGoHeap": true,
    "Stat.NoCounters": true,
    "Datadir":"/path/to/my/hdd",
    "ConnectOnly": "127.0.0.1:8333",
    "WebUI.ServerMode": true
}

The sync process took about 6.8 hours. As expected, HDD is the only bottleneck on sync process where my Bitcoin Core report sent speed 11-18MB/s speed. Gocoin RAM usage after IBD is 23.1GB, although it's reduced to 19GB after i close and open Gocoin again. Directory size of Gocoin is about 354GB, while Bitcoin Core is about 493GB (txindex, blockfilterindex, coinstatsindex enabled). I have to say Gocoin web UI is rather nice.





[1] https://bitcointalk.org/index.php?topic=5406961.msg60608073#msg60608073
[2] https://bitcointalk.org/index.php?topic=5406961.20
[3] https://blog.lopp.net/2021-bitcoin-node-performance-tests-2/
[4] https://bitcointalk.org/index.php?topic=199306.0
[5] https://github.com/piotrnar/gocoin/tree/aae8e1774fdfe8bae99bccb5c3fd6113ad7fbc95
[6] https://gocoin.pl/gocoin_installation.html
[7] https://go.dev/dl/
[8] https://gocoin.pl/gocoin_tweaks.html
[9] https://gocoin.pl/gocoin_performance.html
[10] https://gocoin.pl/gocoin_manual_config.html
1643  Economy / Reputation / Re: I would like to address my negative trust feedback and apologise on: July 26, 2022, 09:17:01 AM
From my own little language of code and GitHub, I believe all open source code is free to use by anyone. Isn't that correct?

This isn't true, bustadice doesn't give license to their source code. Without any license it only means the source code is available and usually it's interpreted as all rights reserved. But even with license, usually there are few limitation and obligation. Here's snippet from GitHub documentation,

You're under no obligation to choose a license. However, without a license, the default copyright laws apply, meaning that you retain all rights to your source code and no one may reproduce, distribute, or create derivative works from your work. If you're creating an open source project, we strongly encourage you to include an open source license.
1644  Bitcoin / Development & Technical Discussion / Re: [DISCUSSION] BIP-notatether-messageverify: Standardizes message verification on: July 25, 2022, 12:51:16 PM
- Else, if the address begins with 'bc1q', assume it is P2WPKH, encode the address using Bech32, with version 'q', and compare it with the read address. If they match, succeed verification, else fail.

Why don't you check bc1q followed by 38 ASCII character to determine whether an address is P2WPKH? BIP 141 clearly state this.

If the version byte is 0, and the witness program is 20 bytes:

    It is interpreted as a pay-to-witness-public-key-hash (P2WPKH) program.

Don't forget 20 bytes include q (in bc1q) which is witness version and the rest 19 bytes represent 38 ASCII character.
1645  Bitcoin / Bitcoin Discussion / Re: Debunking the "Bitcoin is an environmental disaster" argument. on: July 24, 2022, 12:29:23 PM
Video of the Bitcoin Mining Council 22Q1 Briefing:


The video title of link you shared is "Bitcoin Mining Council Q4 2021 Briefing", the correct link for 22Q1 is https://www.youtube.com/watch?v=uotDxbKJmlo. Their video also state the slides available on their website, but i couldn't find any relevant page/file. Fortunately @saylor on Twitter share the link, so here's the direct link for those who want to see 22Q2 slides https://bitcoinminingcouncil.com/wp-content/uploads/2022/07/2022.07.19-BMC-Presentation-Q2-22-Presentation.pdf.
1646  Bitcoin / Development & Technical Discussion / Re: The Lightning Network FAQ on: July 24, 2022, 11:39:56 AM
Raspibolt bitcoin user management doesn't make root accessible.
I've used to run chmod 777 to give all permissions. Bad practice?  Lips sealed

I'd say it's horrible practice. It could break application which have very strict permission check, although i'm not sure any LN implementation has such strict permission check. I remember my acquaintance broke their OS by chmod 777 /.

And of course I restrict user's home directories as much as possible (usually 700 or occasionally 750).

Do you ever see any application broke when you use 700? Usually i'd use 750.
1647  Bitcoin / Bitcoin Technical Support / Re: Bitcoin address to mine on: July 23, 2022, 11:57:22 AM
Hello everyone,

I’m currently mining on solo ck but using NiceHash Bitcoin address for payout. Will this address support it?
Or should I use my Coinbase address?

1. If you could afford to buy mining hardware and perform solo mining, i strongly recommend you to buy hardware wallet or computer/laptop only to manage your Bitcoin wallet.
2. Based on commit message of ckpool source code[1], it looks like they support Native/Bech32 Segwit address.

[1] https://bitbucket.org/ckolivas/ckpool/commits/61513a765b12947fae30535179194b1672dc82b5
1648  Bitcoin / Development & Technical Discussion / Re: Why aren't alternative implementations encouraged? on: July 22, 2022, 01:01:14 PM
A real-world case study of this approach can be showcased through web browsers. Sure most browsers are based on chromium but browsers like Safari and Firefox (and spin-offs like the Tor browser) have unique approaches to protocol implementations that many internet users value.

It's great example. Now i'm inspired to try running alternate Bitcoin full node implementation and will write short review/guide about it within next few days.

--snip--

as for saying 'its just following consensus'. which you forget, whom is in control of consensus changes. yep one dev team, and who is that dev team.. (rhetorical)

Just wondering, do you think are any implementation which do more than following most/all consensus? If yes, do you currently run such implementation (even if it's not running 24/7)?
1649  Economy / Economics / Re: "Surprisingly, Tail Emission Is Not Inflationary" -- A post by Peter Todd on: July 21, 2022, 12:13:33 PM
the point is bitcoin being opensource means people can look at and change the code and given that, we can pretty much assume every aspect of bitcoin will be put under a microscope and there will always be factions that want this change or that. one of the weaknesses of bitcoin not being immutable code...

Are you trying to imply Bitcoin protocol and it's implementation should be closed source? I find it's ridiculous. Even Windows have to deal with people/company who reluctant to upgrade through WoW and LTSC.

mining centralization

Unfortunately Bitcoin miner not interested to use P2Pool[1] which development stopped on 2018[2]. Since Monero is mentioned here, i'd like to mention P2Pool for Monero is actively developed[3] with ~4.7% network hashrate[4].

[1] http://p2pool.in/
[2] https://github.com/p2pool/p2pool
[3] https://github.com/SChernykh/p2pool/
[4] https://p2pool.io/#blocks
1650  Bitcoin / Hardware wallets / Re: Coinkite ColdCard Mk4 Review on: July 20, 2022, 01:02:18 PM
<Snip>
Oh, I get it. So the code is publicly available and you can inspect and verify it if you want. But you are not allowed to use their code for your own software needs and forks. That's OK. It still means it's open-source then. It's an unorthodox way to go about things, but that's their decision.

License used by Mk4 firmware ("Commons Clause") is quite controversial. Few people/group say it's harmful for open source ecosystem[1-2]. The creator also agree it's not really open source either[3]. I'm not fan of this license either since AFAIK it's quite restrictive on practice.

[1] https://drewdevault.com/2018/08/22/Commons-clause-will-destroy-open-source.html
[2] https://www.gnu.org/licenses/license-list.html#comclause
[3] https://commonsclause.com/
1651  Economy / Service Discussion / Re: Finding BTC payment gateway without KYC on: July 20, 2022, 12:20:15 PM
Self-hosted such as BTCPay would be most ideal option. But if you're looking for easier option where you don't mind some privacy trade-off, consider Coinbase Commerce and Mycelium Gear. You just need to give your master public key and use their API.
1652  Bitcoin / Development & Technical Discussion / Re: Multiple hidden services on 1 bitcoin node on: July 19, 2022, 12:30:22 PM
Also keep in mind if it gets a lot of hits that depending on what you are doing it will handle some requests in the order they are received NOT in a multi-threaded simultaneous way.

Bitcoind uses a worker pool to divide up the incoming RPC calls, which has a size of 4 workers by default, can be changed from the command line. So actually by default it will be handling 4 RPCs at a time (assuming there are indeed 4 cores on the system).


Talking about workers size, i just remember Bitcoin Core also has option to configure queue size of RPC work. By default it's 16, which may not sufficient since OP plan to utilize 10 hidden services.
1653  Bitcoin / Project Development / Re: Bitcoin Trading Simulator App (new $100 Trading Competition) on: July 18, 2022, 11:44:10 AM
Any feedback is helpful and appreciated.

I don't have Apple device, but is it true that your app also support macOS? If yes, you should mention it on this thread as well to potentially see more feedback.

  • How will the application be funded if everything is free?

If you check their App Store page, it has 3 "In-App Purchases".

1. Pro Trading $1.99
2. Pro Trading $11.99
3. Remove Ads $14.99
1654  Other / Beginners & Help / Re: Two person having the same seed phrase on: July 17, 2022, 12:35:53 PM
My question is what if cryptocurrency continues to exist in the next 100 years is it possible for anyone who create a wallet to continue have a different Seed phrase?

It's possible, but it's not probable. But within next 100 years, it's likely we'll see new version of seed phrase which designed to be more secure (as in harder to brute force).
1655  Bitcoin / Development & Technical Discussion / Re: Can we sign 3 messages from 3 addreses with same private key on: July 17, 2022, 11:47:03 AM
Is it possible to check private key used to sign three messages by technique?

What actually possible is determining whether those message use same public key. Signing message/transaction expose public key of an address.
1656  Economy / Service Discussion / Re: Recent events should make you withdraw all your coins to your own wallet: Part 2 on: July 17, 2022, 11:28:39 AM
I'm now seeing people complaining on Reddit and Twitter about what Celsius have said in their bankruptcy filings, as highlighted in this article: https://gizmodo.com/celsius-bankrupt-billion-money-crypto-bitcoin-price-cel-1849181797
Quote
The bankruptcy filing notes that users who signed up for Celsius all agreed to terms of service that allowed Celsius to just stop withdrawals at any time. And it’s honestly a bit shocking to see it all laid out in the bankruptcy paperwork in such stark terms:

It's only a bit shocking now? Was it not a bit shocking when you read in it in their Terms of Service before you deposited your conis? You did read their Terms of Service, right? Roll Eyes

Do you really think people read ToS? Using website to estimate reading time on average reading speed[1], Celsius ToS has 15193 words which could took 116.9 minutes to read whole thing. Prank by GameStation on April Fool[2] also prove almost 90% people didn't found out questionable part of ToS.

[1] https://wordstotime.com/
[2] https://www.cnet.com/culture/online-game-shoppers-duped-into-selling-souls/
1657  Other / Meta / Re: How Would You Make Bitcointalk Better If You Were The Boss ? on: July 16, 2022, 12:15:40 PM
1. Remove cloudflare

Do you have better way to protect this forum from DDoS attack?
A few hosting providers have native (either on or very close to their internal network) DDoS protection. It's usually a semi-expensive add-on, but (IMHO) is preferable to joining the disturbing trend of putting more and more of the Internet behind Cloudflare.

For a forum that values decentralization, I found the choice a little incongruent.

But, I suppose it's easy to be principled when you're not the one paying the bill.

Relevant thread, Moving to Cloudflare. IMO it's unlikely Bitcointalk remove CloudFlare anytime soon unless someone with experience mitigating large scale DDoS give advice to theymos.
1658  Bitcoin / Development & Technical Discussion / Re: Why do we have Nested Segwit and Native Segwit? on: July 16, 2022, 11:20:08 AM
If exchanges are lazy again, will we have Nested Taproot just like why we have Nested Segwit?

Nested Taproot as in P2SH-P2TR? It's unlikely it'll happen due to security concern[1].

While SegWit was a huge leap (completely new address type), taproot is just a baby step forward (let's say SegWit v2).

To be precise, Taproot use Bech32m[2] address (similar with Bech32, except it use 0x2bc830a3 as constant).

[1] https://github.com/bitcoin/bips/blob/master/bip-0341.mediawiki#cite_note-3
[2] https://github.com/bitcoin/bips/blob/master/bip-0350.mediawiki
1659  Other / Beginners & Help / Re: [Tutorial] Install a Block Explorer [iquidus] on Ubuntu Server 18.04 on: July 15, 2022, 11:15:47 AM
okay i went through the checklist now how do i bring the actual block explorer up in my browser?

With default settings.json file[1], you should able to do it by entering localhost:3001 on your browser.

[1] https://github.com/iquidus/explorer/blob/master/settings.json.template#L35
1660  Bitcoin / Development & Technical Discussion / Re: Python BTC Local Webserver on: July 14, 2022, 12:14:43 PM
This is great tool, it reminds me of directory.io. But i'd like to mention the private key/address is overlapped on my browser (Firefox).



- Check address balance from bloomfilter file database with play sound when found

I add address from 1st page to bloomfilter and restart the server, only to found out the sound is quite loud. A warning would be appreciated in future Tongue.

- BloomFilter file creation (first download txt database from http://addresses.loyce.club/)

I only try it with small txt file, but what's RAM usage of this tool use when we use list address from Loyce?
Pages: « 1 ... 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 [83] 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 ... 158 »
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!