Bitcoin Forum

Alternate cryptocurrencies => Announcements (Altcoins) => Topic started by: mrpandabear on November 22, 2021, 11:58:20 PM



Title: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on November 22, 2021, 11:58:20 PM
Hi Guys,

I wrote a bitcoin like cryptocurrency called BAMBOO (formerly known as PandaCoin):
https://github.com/mr-pandabear/bamboo

Bamboo makes use of ED25519 https://ed25519.cr.yp.to/ (https://ed25519.cr.yp.to/) which has half the public key size of SECP256k1 (the signing scheme used by BTC and ETH)... the verification speeds of ED25519 are empirically 8-10x that of SECP256k1. All of this means we can have much lower block minting times with larger transaction counts per block as well as faster startup times for new nodes. Other notable differences from bitcoin:
- 25k transactions per block
- 90 second block mint time
- Account-based model instead of UTXO model

The goal of the currency is to be an efficient store of value with fast transactions built with minimal, elegant code.

The first iteration of the chain has just launched and you can view the block explorer here:
http://ec2-34-218-176-84.us-west-2.compute.amazonaws.com/

Quick start scripts for installing a Bamboo node for Ubuntu & Centos can be found here:
https://github.com/mr-pandabear/bamboo-utils

Best,

Mr. PandaBear

You can reach us on:
Reddit @ https://www.reddit.com/r/bmb_official/ (https://www.reddit.com/r/bmb_official/)
Twitter @ https://twitter.com/bmb_bamboo (https://twitter.com/bmb_bamboo)
Telegram @ http://t.me/teampandacoin  (http://t.me/teampandacoin)
Discord @ https://discord.gg/2m9m2cnBk7 (https://discord.gg/2m9m2cnBk7)





Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: ttl99 on November 23, 2021, 01:44:06 AM
I'm interested, how can I help?


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on November 23, 2021, 04:15:19 AM
Do you have Mac or Linux? If so I can send you the pre-compiled binaries for running the miner.

If you have an AWS account you could also setup a node -- I have a starter shell script for Ubuntu 18.02 that installs everything end to end.


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: MMOStars on November 23, 2021, 03:36:05 PM
Binaries for windows?


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on November 23, 2021, 04:29:50 PM
I can generate binaries for windows, yes.


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: AllForOneA41 on November 23, 2021, 06:05:08 PM
I can generate binaries for windows, yes.

where I can download prebuild release for windows or linux ?
Or make a step by step guide on how to compile it on linux , preffer windows release :D


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: AllForOneA41 on November 23, 2021, 07:27:35 PM
I can generate binaries for windows, yes.

Any eta ???


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: ttl99 on November 23, 2021, 10:18:59 PM
hello I use windows if you can send me the binaries to run the miner I will gladly support the coin, greetings


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: ttl99 on November 23, 2021, 10:20:44 PM
By the way, if you already have the wallet for the currency, please also send it to me to install it.
lucck  ;D ;D ;D ;D


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on November 24, 2021, 03:02:31 AM
Okay guys! I've gotten the Linux miner binaries up here:
https://github.com/mr-pandabear/panda-miners

You can also see the status of the network:
http://ec2-34-218-176-84.us-west-2.compute.amazonaws.com/

:D


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: AllForOneA41 on November 24, 2021, 09:33:39 AM
Okay guys! I've gotten the Linux miner binaries up here:
https://github.com/mr-pandabear/panda-miners

You can also see the status of the network:
http://ec2-34-218-176-84.us-west-2.compute.amazonaws.com/

:D

Nice explorer looks great can You make some documentation on how to transfer coins ?


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: AllForOneA41 on November 24, 2021, 01:39:06 PM
I would also know what is a block confirmation time or how many blocks are needed to confirm.
Im asking becasue in my miner window I see confirmed amount is grather than I see in explorer.
So why there is mismatch with balaces comparing inside miner and explorer do I need to wait till all mined coins confirm ?


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: cm952777 on November 24, 2021, 03:32:41 PM
How to create a wallet and mine in windows? Can you provide windows operation methods?


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on November 24, 2021, 04:26:05 PM
So there is a slight bug in the miner that shows the pre-tax amount. There is a 2.5% tax that goes to founder wallets for the first 2M blocks. There are up to 100k founder wallets. I will post a keygen app that will enable you to create a founder wallet later tonight.

The basic idea behind the founder wallet is that it is a keypair you have to mine... so it takes about ~2 hours to get a founding wallet. Once you have it you earn from the transactions of the network... these payouts are given once every 10k blocks. If your miner is setup with a founder wallet than you will receive the full amount shown by the miner in it's output.

ALSO the miner only shows the totals made since you started running it, not the total balance in your wallet. For that you should check the block. I'm going to make some UX improvements today to help clarify these things.

There is a CLI that can be used to send transactions.  Unfortunately there is a slight bug in the mempool that I'm trying to fix today that makes it difficult to confirm transactions.

Windows is still on the back burner -- I think I will need to hire someone on upwork to do the conversion.


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: wanganxiu on November 24, 2021, 04:44:07 PM
It's kind of like a scam. . . This is unfair to start, and the windows wallet is not prepared


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on November 24, 2021, 05:10:15 PM
The founder wallet is open to anyone and the keygen only takes a few hours to generate. It is meant to reward the people who join the network early on (up to 100k users). If you think that's a poor idea I can remove the taxes for future blocks.

My thought was that having founder wallets would incentivize folks to grow the network, since they receive a fee of 2.5% of transactions for 2 years on it but maybe I'm mistaken. This is day 2 of the chain being up so it's not impossible to update the nodes so that the tax is not applied after block 4000 or so. What do people think?

I don't think it is a scam -- it is clearly stated in the readme on github, but I understand if it's a poor idea.


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on November 24, 2021, 05:37:02 PM
Okay. I decided to remove the tax -- pushing an update soon. Hang tight! Network will be down for an hour or so.


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on November 24, 2021, 06:04:48 PM
Network is back up. I pushed a fork that removed all taxes -- so balances should reflect the full amount.


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: wanganxiu on November 24, 2021, 06:09:20 PM
It is possible to collect taxes, at least you start fairly. . The windows wallet also needs to be released. Let everyone participate. . Instead of a few people mining there, mining a lot of coins


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: AllForOneA41 on November 24, 2021, 06:43:08 PM
It is possible to collect taxes, at least you start fairly. . The windows wallet also needs to be released. Let everyone participate. . Instead of a few people mining there, mining a lot of coins

The early addopters are always revarded with coins this is how it is when we will get any Discord or Telegram channel ?




[ERROR] 11-24-2021 18:48:20: run_mining: Could not get chain length from any host
[ERROR] 11-24-2021 18:48:22: run_mining: Could not get chain length from any host
[ERROR] 11-24-2021 18:48:23: run_mining: Could not get chain length from any host
[ERROR] 11-24-2021 18:48:25: run_mining: Could not get chain length from any host
[ERROR] 11-24-2021 18:48:26: run_mining: Could not get chain length from any host
[ERROR] 11-24-2021 18:48:27: run_mining: Could not get chain length from any host
[ERROR] 11-24-2021 18:48:29: run_mining: Could not get chain length from any host
[ERROR] 11-24-2021 18:48:30: run_mining: Could not get chain length from any host
[ERROR] 11-24-2021 18:48:31: run_mining: Could not get chain length from any host
[ERROR] 11-24-2021 18:48:33: run_mining: Could not get chain length from any host


network down ???




So there is a slight bug in the miner that shows the pre-tax amount. There is a 2.5% tax that goes to founder wallets for the first 2M blocks. There are up to 100k founder wallets. I will post a keygen app that will enable you to create a founder wallet later tonight.

The basic idea behind the founder wallet is that it is a keypair you have to mine... so it takes about ~2 hours to get a founding wallet. Once you have it you earn from the transactions of the network... these payouts are given once every 10k blocks. If your miner is setup with a founder wallet than you will receive the full amount shown by the miner in it's output.

ALSO the miner only shows the totals made since you started running it, not the total balance in your wallet. For that you should check the block. I'm going to make some UX improvements today to help clarify these things.

There is a CLI that can be used to send transactions.  Unfortunately there is a slight bug in the mempool that I'm trying to fix today that makes it difficult to confirm transactions.

Windows is still on the back burner -- I think I will need to hire someone on upwork to do the conversion.

how long the network will be down ?

[moderator's note: consecutive posts merged]


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on November 24, 2021, 07:14:14 PM
I'm still working on getting the network back up with all the taxes removed. Hang tight. Should be up within a few hours, I'll post here when it's up.

I make up backups of the blockchain so all the mining is still secured.


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: AllForOneA41 on November 24, 2021, 07:20:32 PM
I'm still working on getting the network back up with all the taxes removed. Hang tight. Should be up within a few hours, I'll post here when it's up.

I make up backups of the blockchain so all the mining is still secured.

Thanks for reply :D


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on November 24, 2021, 07:20:51 PM
Okay it's back up. You can continue mining. Sorry for these issues!

EDIT: Working on audit and fixes to all totals displayed on the website ... system still up and ready to mine


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: AllForOneA41 on November 25, 2021, 01:07:45 PM
Okay it's back up. You can continue mining. Sorry for these issues!

EDIT: Working on audit and fixes to all totals displayed on the website ... system still up and ready to mine

Any chance to make some community on Discord or Telegram so we can start invite more members for PandaCoin ?


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: ttl99 on November 25, 2021, 04:16:23 PM
miner windows??


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on November 25, 2021, 04:39:12 PM
Miner for windows will hopefully be ready by Dec 1st.

Regarding Discord + Telegram : I want to make sure all the remaining items are worked out before sharing to a broader audience. My thought is this should be around December 15th or so.

The following still need to be done:
1 - Wallet Application
2 - Optimized mempool
3 - Windows Miner


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on November 25, 2021, 09:27:54 PM
Quick update -- made a lot of progress on the Wallet GUI today. The UX is pretty much complete:

https://imgur.com/a/xVP3Ee6

I'll work on it all day tomorrow and hopefully can have it released by Saturday :)


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: AllForOneA41 on November 25, 2021, 09:47:23 PM
Miner for windows will hopefully be ready by Dec 1st.

Regarding Discord + Telegram : I want to make sure all the remaining items are worked out before sharing to a broader audience. My thought is this should be around December 15th or so.

The following still need to be done:
1 - Wallet Application
2 - Optimized mempool
3 - Windows Miner

Great wallet also looks good :)


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: iamHTV on November 26, 2021, 01:27:26 AM
how i help, i want to mine this coin on my window computer, pls make video to this tutorial of mine, thanks


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on November 26, 2021, 04:28:18 PM
Windows miner coming Dec 1st or so! Stay tuned.



Okay. Have a quick update on the diverging totals and discovered the culprit, you can read the github issue here:
https://github.com/mr-pandabear/panda-coin/issues/2

Summary is that chain forks were not handled consistently, the fix requires generating a new genesis block check at ~block 8500. Everyone's balances will be preserved. Going to go offline for the next hour and a half.

[moderator's note: consecutive posts merged]

Ok. We fixed it. There is a new genesis block so that everyone's previous mining amounts are preserved. Unfortunately we had to step the chain back to where the split happened so we went from ~7500 blocks -> ~200 blocks. It will grow back quickly enough just a few days of extra work.


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: AllForOneA41 on November 26, 2021, 08:22:42 PM
Ok. We fixed it. There is a new genesis block so that everyone's previous mining amounts are preserved. Unfortunately we had to step the chain back to where the split happened so we went from ~7500 blocks -> ~200 blocks. It will grow back quickly enough just a few days of extra work.

Ok I restart my miners and think that is a good idea to do so am I correct ?


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on November 27, 2021, 05:48:51 AM
Yep! The nodes are live so you'll continue to earn coins. No one lost anything because I copied the earned coins into the new genesis block.


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: Salamande on November 27, 2021, 05:27:03 PM
I still have more in what my miner says VS the block explorer  ???


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on November 27, 2021, 06:24:59 PM
How big is the discrepancy? If you've been running it continuously while the fork happened then some of those earned blocks may have been lost but it shouldn't be more than 5-10 blocks worth of coin.



Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: Salamande on November 27, 2021, 08:10:08 PM
much more than that and restarted mining after the fork.


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: AllForOneA41 on November 28, 2021, 02:23:47 PM
How big is the discrepancy? If you've been running it continuously while the fork happened then some of those earned blocks may have been lost but it shouldn't be more than 5-10 blocks worth of coin.



Hey Im curious can I set two miners to same address and can I run multithreads or it uses one cpu by default ?


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on November 28, 2021, 04:50:26 PM
@Salamande : Could you send me your public wallet address and I can investigate? This is in your keys.json file ( you can open it with a text editor and it will say "wallet": "<50 digit hex number>" ... you could also copy it from the block explorer.

@AllForOneA41: The easiest way to run multi-threads is to just launch the miner app multiple times. The OS should automatically devote a CPU to each process.


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: AllForOneA41 on November 28, 2021, 05:12:52 PM
@Salamande : Could you send me your public wallet address and I can investigate? This is in your keys.json file ( you can open it with a text editor and it will say "wallet": "<50 digit hex number>" ... you could also copy it from the block explorer.

@AllForOneA41: The easiest way to run multi-threads is to just launch the miner app multiple times. The OS should automatically devote a CPU to each process.

Thanks for the reply and I have few more questions:

Do we have any max supply?
Do we will have any block halving ?


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on November 28, 2021, 05:43:30 PM
Mining fees will be fixed at 50BMB until block 2M -- this means a total supply of 100M BMB. No block halving. Based on the block mint rate network will switch to TX fee based mining ~2 years from inception.


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: Mandolorian on November 28, 2021, 10:06:29 PM
After generating keys.json i try to mine and got an error

Quote
[STATUS] 11-28-2021 23:52:56: Adding host: http://ec2-54-189-82-240.us-west-2.compute.amazonaws.com:3000
[STATUS] 11-28-2021 23:52:56: Adding host: http://ec2-44-227-179-62.us-west-2.compute.amazonaws.com:3000
[STATUS] 11-28-2021 23:52:56: Adding host: http://ec2-35-83-163-26.us-west-2.compute.amazonaws.com:3000
[STATUS] 11-28-2021 23:52:56: Adding host: http://ec2-35-84-249-159.us-west-2.compute.amazonaws.com:3000
[STATUS] 11-28-2021 23:52:56: Running miner
terminate called after throwing an instance of 'nlohmann::detail::parse_error'
  what():  [json.exception.parse_error.101] parse error at line 1, column 1: syntax error while parsing value - unexpected end of input; expected '[', '{', or a literal


what's my mistake?


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on November 28, 2021, 10:11:01 PM
You shouldn't move the key.json file from where the keygen app creates it -- you can make a copy though. You get this error when you delete or move the keyss.json file.

What is the path you are running the miner from and what is the path of where you stored keys.json?


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: Mandolorian on November 28, 2021, 10:19:16 PM
You shouldn't move the key.json file from where the keygen app creates it -- you can make a copy though. You get this error when you delete or move the keys.json file.


Thanks for the answer! I did not touch the file


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on November 28, 2021, 10:21:37 PM
I see. I wasn't able to replicate this. Are you running Linux or Mac? What is the path you are running the Miner from?


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: Mandolorian on November 28, 2021, 10:26:49 PM
I see. I wasn't able to replicate this. Are you running Linux or Mac? What is the path you are running the Miner from?
Linux Mint
panda-coin/bin/miner

maybe I made a mistake somewhere during the installation


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on November 28, 2021, 10:58:38 PM
Oh got it. You are building from source? In this case you need to make a folder
panda-coin/keys

Copy your keys.json into the keys folder and rename it "miner2.json" ... it should work then.

I have binaries available here:
https://github.com/mr-pandabear/panda-miners

You will need to install lib-leveldb before using the binary:
sudo apt-get -y install libleveldb-dev

For Mac:
brew install leveldb


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: Mandolorian on November 29, 2021, 12:32:20 AM
Oh got it. You are building from source? In this case you need to make a folder
panda-coin/keys
Thank you, now everything works


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: danglingnullptr on November 30, 2021, 09:51:44 AM
There are several problems with the current codebase:

1. The difficulty rebalance is based on floating point arithmetic and therefore platform dependent and not portable. Furthermore compiler flags such as --ffast-math will affect the difficulty computation and the log2 function used may also yield slightly different results on different platforms depending on its implementation.
https://github.com/mr-pandabear/panda-coin/blob/0641629b9ea6e195b99cc8b65e099d76ad934fe8/src/core/blockchain.cpp#L185-L187
2. The longest chain is chosen based on the chain lengths reported by the peers. A malicious peer can just lie and bring the whole program down by then sending garbage data.
https://github.com/mr-pandabear/panda-coin/blob/0641629b9ea6e195b99cc8b65e099d76ad934fe8/src/core/api.cpp#L11-L15
3. The longest chain is defined in terms of number of blocks which is a serious mistake, it should be based on the total work.
https://github.com/mr-pandabear/panda-coin/blob/0641629b9ea6e195b99cc8b65e099d76ad934fe8/src/core/host_manager.cpp#L81
4. The peer communication is based on HTTP requests and is not async. A peer that does not respond or purposefully delays its response can disturb the node.

I want to inform you all about these severe problems with the current codebase. I could easily write a program that brings the whole pandacoin node down by exploiting above flaws 2. and 4. The other flaw 1. will manifest sooner or later and 3. is a total nonsense, I could just solo mine a longer chain in terms of number of blocks by keeping my difficulty low by manipulating timestamps. Then I my chain has less total work but more block count and it will be accepted and wipe the real chain. Yay, all coins are mine then.

Please send some monero tip money for my effort to review the codebase: 86Juw7yZ313E8u2nfHBqKGGLKmki3Tg41CAZjwCTgNpk2DqqAMSR2d3KEwu6evrkMQ3eLzwbEfx9thL aYud3JgC7NxTf5eM


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on November 30, 2021, 10:40:15 PM
Thanks for your insights. I'll work to address these this weekend.
1) This was a definite oversight... having different difficulty results computed by different nodes will definitely lead to problems when nodes run on multiple platforms out of control. The fix is pretty simple though.
2) You are right, I can implement a consensus mechanism to look at the total chain work across multiple nodes and reject nodes which have more than some delta from the group.
3)  This is a great find and also hopefully a quick fix: I can change the endpoint /block_count to /total_work and do the chain selection that way.
4) I don't think this is that big of a deal -- the nodes have timeouts and the host manager randomizes the peer node. I agree that introducing lots of dead nodes would seriously slow down because each host is read synchronously. Changing these requests to run in parallel should fix things.

EDIT: @danglingnullptr : sent you a tip, really appreciate your work!


Also just an FYI: These exploits necessitate that a malicious node can add itself to the network. Right now this is impossible because we control the master host list -- this means in the short term mining the coin is still safe. We just need to make the above changes before allowing anonymous actors to run nodes and manage hostlists. This will happen only once the network is more battle tested

@Salamande,

I ran all the mining transactions through my checker and your balance seems correct. The issue is probably the miner's display (?) but I'm not sure how it would be different. One thing to note is that it appears your miner was running prior to the fork -- because you have a total in the genesis block. Unless you restarted the miner the totals on the miner would be wrong by however many blocks you mined while the chain was in an inconsistent state. If you have the raw amounts the totals are off by I can take a look to see if it is reasonable. It shouldn't be more than 20-30 blocks because that is the amount of time the network was down prior to being restored.

Full list of transactions:
https://pastebin.com/dETiqZTV


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: danglingnullptr on December 01, 2021, 09:42:21 AM
Thanks for the tip. Here are some more thoughts:

5) The hash depends on sizeof(int) which is also platform dependent: https://github.com/mr-pandabear/panda-coin/blob/0641629b9ea6e195b99cc8b65e099d76ad934fe8/src/core/block.cpp#L176
6) concerning 1) The fix is not super easy because you have to first rewrite the difficulty adjustment it in terms of integer computations such as in bitcoin's code and then verify that your current chain still satisfies these changes (if it already retargeted until now which I did not check)
Please use uint32_t or uint64_t instead of int for 5) and 6) to have no platform dependence.
7) concerning 2) The delta idea won't help because an attacker can read the code and still lie to have a longer chain within the delta range in order to be selected as block download source.


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: Salamande on December 01, 2021, 01:14:54 PM
Thanks for the lookup.

Just a question, for now is it just for testing, or you will launch the coin later on that blockchain, or restart over?

What do you want to acheive exactly as a new coin?


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: AllForOneA41 on December 01, 2021, 02:16:44 PM
Thanks for the lookup.

Just a question, for now is it just for testing, or you will launch the coin later on that blockchain, or restart over?

What do you want to acheive exactly as a new coin?

From what I understand the coins will stay as a reward for helping in secure chain and tests :)


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on December 01, 2021, 04:45:11 PM
For all intents and purposes, this is a "live chain". The only restriction that we have now is that only people we know are running nodes exactly so that we can discover any flaws prior to a broader open launch. Distributed systems without trust are hard to get right and this is a brand new codebase (not a fork of bitcoin)

We aren't treating this chain as a testnet or anything like that (for instance when we forked the chain we copied back the mined rewards into the genesis block of the forked chain).

The main goal of the coin is to prove we can do faster transactions with lower fees by optimizing things like the signature scheme, mempool synchronization, and block mint time. Bitcoin has a 10 minute block mint time and 1MB limit of data per block. We have a 3MB max datablock size but blocks are minted every 30 seconds... so theoretically we should have ~60x the transactions per second of Bitcoin. The problem of course is that these blocks must spread through the network quickly, we chose 3MB because this seems like a reasonable amount of data to transfer with high speed (~1-2 sec). The larger problem was actually verifying all the signatures within the 30 second window. With 10k signatures the Bitcoin signing algorithm (SECP256k1) took almost 17 seconds on my machine to verify. With ED5519 that dropped down to a second.

@danglingnullptr: I see your point regarding the consensus problem. It seems the only real way to fix this is to download multiple copies of the blockchain from each host and verify them in parallel, then reject the ones that are fake or have less POW than other chains. What do you think of that idea?

Regarding the float math issue: My thought is to use MPFR and run the float computations on non-native floats : https://www.mpfr.org/


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: danglingnullptr on December 01, 2021, 06:49:42 PM
Couldn't help it ;D: https://www.youtube.com/watch?v=4uP7O2mM10A&t=18s

8 ) Concerning the consensus problem: The way to go is to separate header and block downloads. Chain of headers are downloaded from peers to a) known who has the longest (most work) chain.and b) to known which peers have which blocks corresponding to this longest chain. Furthermore bad actors need to be banned based on IPv4. Enabling IPv6 is more difficult because there are so many of them, one approach is to block IPv6 subnet wise.

9) I do not completely oversee if MPFR will solve all problems. It is better to do this retargeting computation without floats similar to bitcoin. It is based on 256 bit numbers that are composed of multiple 64 bit numbers.You will need such large numbers for the concept of total work anyways. Programming such a retargeting function without floats is time-consuming but I think it is the only way.

10) The miner continues to mine if others find a block first (because the miner is not informed). This is really unfair for people with smaller hashrate because their mining problem is updated less frequently (only when the mineHash function returns https://github.com/mr-pandabear/panda-coin/blob/a1291fd9c8713818b8ad522e646a1b62a270e7e7/src/tools/miner.cpp#L71) and therefore they mining an already mined block most of the time (more % of time than faster miners). This gives then an additional disadvantage to their bad hashrate.

11) The mineHash function is inefficient. I have easily achieved a 10x speedup of this function in debug mode by rearranging some code. I could also turn on optimization flags, and other tricks to further increase my advantage (if I wanted mined this coin, maybe later). Please optimize this function a bit. But a good thing: One cannot use stratum protocol miners for this coin due to the custom mining function. So no one can just rent SHA256 hashrate.

I wish you all the best to become the dragon warrior :) but I cannot further contribute because I have to focus on other things.


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on December 01, 2021, 08:57:31 PM
Good point. Blockheaders should do the trick.

Could you share some of the mods you made to improve mineHash? I changed concat hashes as follows and it got a lot faster:
SHA256Hash concatHashes(SHA256Hash& a, SHA256Hash& b) {
        char data[64];
        memcpy(data, (char*)a.data(), 32);
        memcpy(&data[32], (char*)b.data(), 32);
        SHA256Hash fullHash  = SHA256((const char*)data, 64);
        return fullHash;
}

:) Funnily enough, Kung-Fu Panda was the movie that inspired my github handle


@Salamande: I found the culprit of the inaccurate mining fees displayed on the miner:
https://github.com/mr-pandabear/panda-coin/blob/0641629b9ea6e195b99cc8b65e099d76ad934fe8/src/tools/miner.cpp#L65

The miner records payments for any solved block, even if it's not accepted. This means we are counting fees that are earned by rejected blocks which would obviously make the total displayed on the miner much higher.

I will be pushing an updated miner with a faster mineHash function and addressing danglingnullptr's observation that miners should "give up" on blocks once it is impossible for them to be accepted.


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: danglingnullptr on December 02, 2021, 09:39:00 AM
Could you share some of the mods you made to improve mineHash?
Sure but is it OK for you if I reregister as Master Shifu then?


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on December 02, 2021, 05:10:40 PM
 ;D Works for me.

EDIT:

I have uploaded new binaries with a more performant mineHash function. If you are mining I highly recommend updating to this version as you will not be competitive in the mining pool with the old version... you might occasionally win a block but your chances are lower than if you have the fast hash version.

Furthermore, now the miner will constantly check to see if the block it is mining has already been solved, and will give up instead of wasting work.

Both these changes will increase the overall hashrate of the network.

Binaries:
https://github.com/mr-pandabear/panda-coin/releases/tag/v0.2-miner-alpha

Source:
https://github.com/mr-pandabear/panda-coin


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: Mandolorian on December 03, 2021, 01:16:20 AM

Binaries:
https://github.com/mr-pandabear/panda-coin/releases/tag/v0.2-miner-alpha

Source:
https://github.com/mr-pandabear/panda-coin

I'm trying to compile from source and get a few errors like this one

Quote
/panda-coin/src/tools/benchmark.cpp:42:54: error: call of overloaded ‘concatHashes(SHA256Hash&, SHA256Hash&)’ is ambiguous
   42 |     SHA256Hash fullHash  = concatHashes(target, nonce);


How to use binaries on Linux?


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on December 03, 2021, 01:35:41 AM
You should just be able to download and unzip the binaries and run them.

If you just run "make miner" instead of "make" it should do the trick. That benchmarking code is cruft I need to remove. I'll update the build instructions on github.


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: Mandolorian on December 03, 2021, 01:56:59 AM
You should just be able to download and unzip the binaries and run them.
I get this
Quote
./miner: error while loading shared libraries: libleveldb.so.1: cannot open shared object file: No such file or directory
But LevelDB is installed. I'll try to build the miner from source.

EDIT:

Works  :)


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: AllForOneA41 on December 03, 2021, 06:35:55 AM
When windows miner and discord community channel ?


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: danglingnullptr on December 03, 2021, 09:16:49 AM
Have no time atm, here is the code I have chosen for mining:

SHA256Hash mineHashShifu(SHA256Hash target, unsigned char challengeSize) {
    vector<uint8_t> concat;
    concat.resize(2*32);
    for(size_t i = 0; i < 32; i++) concat=target;
    // fill with random data for privacy (one cannot guess number of tries later)
    for(size_t i=32; i<64;++i) concat=rand()%256;
    while (true) {
        *reinterpret_cast<uint64_t*>(concat.data()+32)+=1;
        SHA256Hash fullHash  = SHA256((const char*)concat.data(), concat.size());
        bool found= checkLeadingZeroBits(fullHash, challengeSize);
        if (found) {
            SHA256Hash solution;
            memcpy(solution.data(),concat.data()+32,32);
            return solution;
        }
    }
}

So I do not call the concat function but manipulate right in place, furthermore one does not have to update every entry to get a new hash, I just directly write to the buffer using reinterpret_cast. 64 bits is enough for now but later at some point one has to also manipulate other bits (at every overflow of *reinterpret_cast<uint64_t*>(concat.data()+32) one should increase *reinterpret_cast<uint64_t*>(concat.data()+40) by one, then one has 128 bits. This can then be continued to get more bits changed when mining becomes that difficult. So this code is just for now because it only changes 64 bits.

Maybe I have time again in a few days to watch the progress of this project.


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on December 03, 2021, 07:57:47 PM
Nice stuff! I'll get this merged in. Great point regarding not needing to generate an entirely new random solution each time.


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: Lind on December 05, 2021, 05:49:44 PM
When windows miner and discord community channel ?

This (Discord mostly). + Create a telegram group pls, so ppl can reach you dear Dev.  :)


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: AllForOneA41 on December 06, 2021, 01:03:16 PM
If anyone will have problems with LevelDB on Ubuntu 20.04 you can install it  by

sudo apt-get install libsnappy-dev

export VER="1.20"
wget https://github.com/google/leveldb/archive/v${VER}.tar.gz
tar xvf v${VER}.tar.gz
rm -f v${VER}.tar.gz


cd leveldb-${VER}


make
sudo scp -r out-static/lib* out-shared/lib* "/usr/local/lib"
cd include
sudo scp -r leveldb /usr/local/include
sudo ldconfig



Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on December 06, 2021, 04:59:26 PM
Sorry about the windows stuff. The C++ compiler on windows (MingW) is really hard to get working. I've hired some expert devs on Upwork but they still haven't gotten back to me.

Telegram: I have downloaded it. You can reach me @mrpandabear7 -- I'm not familiar with the app, I'm assuming I need to make an open group that allows invitees to invite others?

EDIT: The group is available at t.me/teampandacoin Thanks @Mando


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on December 14, 2021, 06:29:05 PM
Okay! Finally we have Windows miner binaries available:
https://github.com/mr-pandabear/panda-coin/files/7709628/win32_release_binaries.zip

As stated before:
Run keygen.exe, this generates a keys.json file in the same folder as miner.exe, copy this file and keep it safe.
Run miner.exe, the miner will start running and should indicate that it is loading blocks to solve.

You may need to disable Windows defender if you get alerts starting it up -- sometimes it wrongfully labels the binaries as viruses.


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: Salamande on December 16, 2021, 01:56:59 AM
Is there some wallet functions implemented? Ex: sending coins


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on December 16, 2021, 05:07:18 AM
UPDATE: Miner source code now updated to use fast SHA256 implementation lifted from : https://github.com/ckolivas/cgminer
This will increase hashrate by 2x.

@Salamande: It is available via CLI and there is a wallet for Mac OSX. I think the CLI is not in perfect condition right now but if you'd like to transfer coins I can patch it up. Transactions on the network are a little iffy right now because of how the mem pool is implemented (if your transaction doesn't go through in a specified block it gets discarded). You can transact but it might require 3-4 attempts to get a transaction through. This is currently the highest priority update for me before public launch.
Mac OSX wallet:
https://github.com/mr-pandabear/panda-gui/releases/download/0.1.0-alpha/PandaWallet-MacOSX.zip

What platform are you using?




Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: Salamande on December 16, 2021, 01:33:29 PM
UPDATE: Miner source code now updated to use fast SHA256 implementation lifted from : https://github.com/ckolivas/cgminer
This will increase hashrate by 2x.

@Salamande: It is available via CLI and there is a wallet for Mac OSX. I think the CLI is not in perfect condition right now but if you'd like to transfer coins I can patch it up. Transactions on the network are a little iffy right now because of how the mem pool is implemented (if your transaction doesn't go through in a specified block it gets discarded). You can transact but it might require 3-4 attempts to get a transaction through. This is currently the highest priority update for me before public launch.
Mac OSX wallet:
https://github.com/mr-pandabear/panda-gui/releases/download/0.1.0-alpha/PandaWallet-MacOSX.zip

What platform are you using?




I'm using Linux for now.

Another question:

Seems like I don't get blocks anymore? Also tried the windows miner, same thing? Nothing in the last 24hr


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on December 17, 2021, 06:54:10 AM
The easiest way to send coins right now on Linux is with the cli:

make cli
./bin/cli

This will lookup the keys.json file to determine the coins source. It will ask for to wallet address, amount, tx fees and then send the transaction to the network. Transactions should be pretty reliable once the mempool fix I've been so busy implementing. It's ready and tested on the test net and will push this weekend.


Re: blocks... yes it has gotten more difficult...  it seems like there is some competition on the network. We're getting consistent 15-20 sec block times at a difficulty of 34. Based on Github stats we're getting 15-16 clones per day so the competition is definitely higher if that many folks are running the miner.



*** UPDATE *** We just pushed a change that will break your Miner when there is a non-empty block .... if you have not pulled from the latest version of master or are using the Linux/Mac OSX/Windows  binaries. I'll post new versions of the binaries later tonight but in the meantime we will see an increase in block times when transactions are present until all miners update to a compatible miner version as the old miner will fail to mine blocks with the new transaction format. Not a huge deal if you don't update your miner as there aren't that many transactions on the network yet.


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: Salamande on December 20, 2021, 12:47:34 AM
REALLY NICE update on the miner  :o

Good job on adding multithread, and periodic report!

I am the only one getting a good amount of rejected? (about 25-28% on avg)


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: Lind on December 20, 2021, 08:53:37 AM
REALLY NICE update on the miner  :o

Good job on adding multithread, and periodic report!

I am the only one getting a good amount of rejected? (about 25-28% on avg)

Not just you, it just means the chain is ahead of us, so our block is orphaned, that is what rejected means. Those other miners have a bigger hashrate. (more than 51% so it becomes the valid chain/block)


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on January 02, 2022, 07:28:10 AM
Here is the current proposal for block halving:
https://imgur.com/BjOSufc

First 1M reward = 50BMB
Next 1M reward = 25BMB
Next 2M reward = 12.5BMB

Gives a total circulation of 100M BMB. I will be pushing a very major update to main net in the coming weeks and will release the nodes into the wild...so anyone and their mother should be able to run a node now. This is how the network grows up.

Unfortunately we have made optimizations that require us to restart the chain. We will, of course, maintain wallets that have been mined in the new genesis when this happens so miner totals will remain unaffected. I encourage you guys to continue mining and stress testing the infra. So far we have been getting less and less downtime.

I regret having to re-fork, but there just wasn't any other way possible to do proper block-halving as well as the other updates we needed in an elegant fashion.

Changes we are implementing:
-- Removal of transaction nonces and blockID storage within transactions -- this saves 12 bytes per transaction
-- Block Halving as described above
-- Improved difficulty calculations
-- Switching block mint time from 30 sec -> 1 min
-- Switching difficulty calc from once every 100 blocks to every 10,000 blocks (weekly)
-- Increasing max TX per block from 10K to 25K [more THROUGHPUT]
-- Block header verification in peer discovery (this was a MAJOR flaw in the last version) ... prevents sybill attacks as long as >10% nodes are honest in the network.
-- Ability to browse and view transactions in MemPool (Web UX)

No future forks will happen from this point on -- not that I have a say in the matter: once the nodes are running in the wild it is off to the races and no longer in my hands.

Thank you all for supporting my endeavor. It was a lot of work to write a new crypto codebase from the ground up -- especially for a single developer but I think it's finally coming close to release ready.

The next release will include:

MINER:
Windows binary + sources
Mac OSX binary + sources
Linux binary + sources

CLI WALLET:
Windows binary + sources
Mac OSX binary + sources
Linux binary + sources

NODE SERVER:
Mac OSX binary + sources
Linux binary + sources


Next up on the roadmap:

1. Release the Windows/Linux/MacOSX GUI Wallet
2. Improved Block Explorer that can show all transactions for a wallet etc.

Realistically these last two items will take until mid Feb to complete.


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: Mandolorian on January 02, 2022, 09:31:40 AM

Great job and good news!)

-- Switching difficulty calc from once every 100 blocks to every 10,000 blocks (weekly)

But are you sure this is a good idea?


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on January 03, 2022, 02:37:44 AM
I'm not 100% on the 10k block change. The main issue I'm solving for is that we don't want really small block times as a result of miner manipulation. Small block times causes tons of forks in the chain and lowers the overall usability of the network (though it benefits miners as they need to extend fewer resources to mine coins). At the early stage, if we have very few miners, a miner can pull out for a while, wait for difficulty to drop, then start mining again. If it takes 1 week to do this the incentive for this manipulation is much lower.


In addition to the short term roadmap, here are two longer term roadmap items that I'm contemplating and would appreciate feedback on:

1) Digital asset support. This would enable the creation of "digital assets" which can be listed as for sale and transferred amongst participants. The implementation of this functionality is actually fairly simple. You can create a SHA256 hash that you "own" in exchange for a minting fee paid to miners. This asset can then be listed "for sale" at a specified price. Anyone can initiate a transfer of funds to you in exchange for switching them to be the owner. Everything in PandaCoin is an account based model like ETH, (rather than UTXO like bitcoin) -- which actually makes this pretty straightforward to implement.

2) More ASIC/GPU resistant algorithms: There are a lot, e.g GhostRider, Scrypt, X16R that would be fairly simple to integrate. Part of me wants to do something totally new here, in particular, adding an additional NP-Complete challenge check. See:

- https://pphili.github.io/2017/09/01/blockchain.html
- https://pure.royalholloway.ac.uk/portal/files/39587484/Accepted_Manuscript.pdf
 
Beyond these two, I don't want to add too many features. The goal has always been to have a simple store of value currency with fast transactions and not too many bells and whistles.


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrankin on January 03, 2022, 05:31:25 AM
Happy to host some nodes to help with start-up. As per other requests, a Discord server would be very helpful for speedy communication. Also agree with you considering making it harder for ASIC/GPU miners :)


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on January 03, 2022, 07:29:16 AM
I have other higher priority items but had an itch to pontificate... I sat down and hacked for a bit and came up with something I think should be memory-hard (ASIC resistant) and cross-platform compatible. It's inspired by the basic thesis of scrypt: build a large vector of expensive to compute random numbers and access them in a random fashion to generate the final hash. We would simply wrap our POW answer with memoryHardHash when validating our POW. I re-purpose SHA256 as an RNG here.

Would love someone to take a look at this (@danglingnullptr are you still here?!)
-----

#define NUM_SHA_DIGESTS 1000

SHA256Hash memoryHardHash(SHA256Hash &a) {
    vector<SHA256Hash> digests;
    SHA256Hash last = a;
    // Build vector of SHA hashes
    for(int i = 0; i < NUM_SHA_DIGESTS; i++) {
        SHA256Hash h = SHA256((const char*)last.data(), 32);
        digests.push_back(h);
        last = h;
    }
    
    SHA256Hash newA = NULL_SHA256_HASH;

    uint32_t val = *(uint32_t*)digests[0].data();
    uint32_t nextIdx = val % NUM_SHA_DIGESTS;
    for (int i = 0; i < 32; i++) {
        uint8_t stripe = 0;
        for(int i = 0; i < NUM_SHA_DIGESTS; i++) {
            uint8_t delta = val % (32 - sizeof(uint32_t));
            val = *(uint32_t*)(digests[nextIdx].data() + delta);
            nextIdx = val % NUM_SHA_DIGESTS;
            stripe += *((uint8_t*)&val);
        }
        newA = stripe;
    }

    return newA;
}

-----
Of course we will want to make some perf tweaks (e.g pre-allocating the 256MB vector rather than pushing on to it... but the basic algorithm should be pretty clear).


I'm not confident it works, but if it does ... we will have a huge win for ASIC + GPU resistance :D + I will have invented a new POW algorithm =)


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on January 03, 2022, 09:30:49 AM
The block mint time is only 30 seconds, there is enough hash rate in the network that it is unlikely to get a block unless you run the miner for a while. I would try overnight and see if you get something. What are your specs?


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: danglingnullptr on January 05, 2022, 06:35:39 PM
Will look at the code in more detail tomorrow but for now I do not understand :
1. Why you are overwriting newA in every loop iteration?
2. Why does this loop have 32 rounds?
3. Where did you define SHA256Hash& SHA256Hash::operator=( uint8_t) ? Maybe I will see it when I look at the rest of your project, but for now this means that your final hash can only have 256 different values because this is true for the variable stripe.
Some comments:
a) Please do not i for both the outer and the inner loop (even though i is not accessed),
b) Some people say preincrement is faster than postincrement, so use ++i.



I think you meant newA[i|=stripe so I am considering this(Note: Now I see that brackets are not printed in this forum because this notation is used for links so I do this [i|, i.e. closing with |):
-------
#define NUM_SHA_DIGESTS 1000
SHA256Hash memoryHardHash(SHA256Hash &a) {
    vector<SHA256Hash> digests;
    SHA256Hash last = a;
    // Build vector of SHA hashes
    for(int i = 0; i < NUM_SHA_DIGESTS; i++) {
        SHA256Hash h = SHA256((const char*)last.data(), 32);
        digests.push_back(h);
        last = h;
    }
   
    SHA256Hash newA = NULL_SHA256_HASH;

    uint32_t val = *(uint32_t*)digests[0].data();
    uint32_t nextIdx = val % NUM_SHA_DIGESTS;
    for (int i = 0; i < 32; ++i) {
        uint8_t stripe = 0;
        for(int j = 0; j < NUM_SHA_DIGESTS; ++j) {
            uint8_t delta = val % (32 - sizeof(uint32_t));
            val = *(uint32_t*)(digests[nextIdx].data() + delta);
            nextIdx = val % NUM_SHA_DIGESTS;
            stripe += *((uint8_t*)&val);
        }
        newA[i| = stripe;
    }

    return newA;
}
------

This is a bad hash function because a good hash function should have uncorrelated and approximate random outputs. The above function will return complete 0 vectors with higher probability than other outputs because in case that initially val==0 (which is roughly in about 1/10^10 of the cases) in all iterations delta==0 and nextIdx==0 and val==0 such that stripe==0 and newA== NULL_SHA256_HASH (which satisfies even the most difficult target) is returned (which is 1/(2^256) of all possible outputs). Therefore this output occurs disproportionately more often, orders of magnitudes more often. Something similar happens for val equal to multiples of the divisors in the modulo operations because then still delta==0 and nextId==0 such that newA will have one byte repeated, i.e. for val equal to multiples of the least common multiple of  32-4 and NUM_SHA_DIGESTS, which is 7000. This means at least every 7000th input will yield an output with one byte repeated.
I would not roll out my own hash function. It can easily happen that your hash function does not scatter well in its return values such that some targets might become unmineable which will kill your blockchain. (Do you really known that it is possible that a certain number of leading zeros can be achieved as an output?). In your case it is the opposite: every 10^10 hashes you can easily have one that has complete zeros, i.e. will certainly mine the block at every difficulty.

[moderator's note: consecutive posts merged]


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: Nouratoshi Selvimoto on January 06, 2022, 03:55:49 PM
Hi, Where can i find the miner binaries for windows ??

thnx in advance !


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: MMOStars on January 06, 2022, 10:59:35 PM
Hi, Where can i find the miner binaries for windows ??

thnx in advance !

Don't recommend supporting such projects, the linux release was released and windows mining was not available for a long while. Pathetic for launch for a blockchain.


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: danglingnullptr on January 07, 2022, 05:36:25 PM
I have seen on Github that there was a hack of malicious miners that manipulate timestamps. The fix is a bit fragile because
1. https://github.com/mr-pandabear/panda-coin/blob/44875696e210e1359d109d7a08cc795209b6b2fb/src/server/blockchain.cpp#L303 depends on the server timestamp they can be out of sync especially it the project goes decentralized one day. Bitcoin uses a 2 hour tolerance I think.
2. And it uses a median rule, see https://en.bitcoin.it/wiki/Block_timestamp instead of your hard rule of strictly increasing timestamps https://github.com/mr-pandabear/panda-coin/blob/44875696e210e1359d109d7a08cc795209b6b2fb/src/server/blockchain.cpp#L301
Maybe adopt these things?
Furthermore, I spotted another bug of undefined behaviour: You cannot do C-style casts or reinterpret_casts at arbitrary addresses because of memory alignment https://stackoverflow.com/a/32590117. For example processors cannot access aligned 4 byte integer types at addresses not equal to a multiple of 4, so casting as done in
https://github.com/mr-pandabear/panda-coin/blob/44875696e210e1359d109d7a08cc795209b6b2fb/src/tools/server.cpp#L166
or https://github.com/mr-pandabear/panda-coin/blob/44875696e210e1359d109d7a08cc795209b6b2fb/src/tools/server.cpp#L184
is undefined behaviour. Such castings appear at more places in the code base.

And I was not the attacker exploiting the mining timestamp bug. I am not even mining this coin as it is not decentralized at this stage. Amazon AWS where the central servers are located (and thus the NSA) track all miners' IPs if they are not using a proxy. But it is instructive to see this project grow and I like the clean code of mrpandabaer :)

Furthermore
Hi, Where can i find the miner binaries for windows ??

thnx in advance !



Don't recommend supporting such projects, the linux release was released and windows mining was not available for a long while. Pathetic for launch for a blockchain.
I think every project starts only one platform in its early stage (for Bitcoin it was Windows). That's normal, not pathetic. In return for the user inconvenience you get more coins at this stage because there is less competition.


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: mrpandabear on January 07, 2022, 10:54:38 PM
Windows binaries are available on the github project page (https://github.com/mr-pandabear/panda-coin/)

Direct link: https://github.com/mr-pandabear/panda-coin/releases/download/v0.2-alpha/panda-coin-win-20211221.zip


@danglingnullptr ... so here is explanation of the questions you posit:

{EDIT: so the issue is that the forum messes up the array code ... the code posted in the forum has the array brackets removed it should be newA [ i ] }

I link the code in a github gist here: https://gist.github.com/mr-pandabear/2a97a1f008145d81ccb3982c71248c93


1. Why you are overwriting newA in every loop iteration?
newA is of type std::array<uint8_t,32> ... so the outer loop fills in each "stripe" of the hash, while the inner loop computes the value of the stripe. This is why it is "newA [ i ] = stripe"

2. Why does this loop have 32 rounds?
To fill in each of the 32 bytes of the output SHA256 Hash

3. Where did you define SHA256Hash& SHA256Hash::operator=( uint8_t) ? Maybe I will see it when I look at the rest of your project, but for now this means that your final hash can only have 256 different values because this is true for the variable stripe.
(See above)


The idea here is that we use the values of the vector of SHA digests to generate the value of each stripe. These SHA digests *must* be stored in memory because they are randomly accessed based on the previous value. val and nextIdx create a random pointer into the hash and the nextIdx is a function of the previously read value within the SHA hash.

You can think of the value of newA[ i ] to be a sum of a random walk over the 8 byte portions within the (large) vector of SHA256Hashes we generate.


Great catches re: Timestamp medians (didn't know that was how Bitcoin does it!)... as well as the C style casts. They are used in a few places and will need to be re-written to be portable.


Title: Re: New coin using ED25519 signing keys -- need help getting it off the ground
Post by: danglingnullptr on January 08, 2022, 06:46:35 AM
Thank you, the questions only arised because of the messed assignment "newA = stripe" (seems like 32 times overwritten using operator SHA256Hash::operator=( uint8_t) ). A moderator merged with my second post where I had already figured out. There I say
This is a bad hash function because a good hash function should have uncorrelated and approximate random outputs. The above function will return complete 0 vectors with higher probability than other outputs because in case that initially val==0 (which is roughly in about 1/10^10 of the cases) in all iterations delta==0 and nextIdx==0 and val==0 such that stripe==0 and newA== NULL_SHA256_HASH (which satisfies even the most difficult target) is returned (which is 1/(2^256) of all possible outputs). Therefore this output occurs disproportionately more often, orders of magnitudes more often. Something similar happens for val equal to multiples of the divisors in the modulo operations because then still delta==0 and nextId==0 such that newA will have one byte repeated, i.e. for val equal to multiples of the least common multiple of  32-4 and NUM_SHA_DIGESTS, which is 7000. This means at least every 7000th input will yield an output with one byte repeated.
I would not roll out my own hash function. It can easily happen that your hash function does not scatter well in its return values such that some targets might become unmineable which will kill your blockchain. (Do you really known that it is possible that a certain number of leading zeros can be achieved as an output?). In your case it is the opposite: every 10^10 hashes you can easily have one that has complete zeros, i.e. will certainly mine the block at every difficulty.

[moderator's note: consecutive posts merged]
and this still holds true. What I'm saying is that for example every 2^32 tries the value
uint32_t val = *(uint32_t*)digests[0].data();
will be uint32_t(0) and in this case the function will return NULL_SHA256_HASH, i.e. this output will be overrepresented because NULL_SHA256_HASH should only occur every 2^256 hashes. Not only overrepresented but also will break difficulty adjustment. If blocks are mined too quickly, the difficulty adjustment cannot do something against it because if NULL_SHA256_HASH is returned it will always mine a new block even the with strictest difficulty requirement. Furthermore multiple blocks in the chain could have the same hash NULL_SHA256_HASH.

And why are you not using a RAII lock such as unique_lock or lock_guard here https://github.com/mr-pandabear/panda-coin/commit/0dd7b6a6ac266ec597da522198d395ee3d7b492a#diff-bef89388d9552fd0e9f163ac736709c197fe7888c036658069689d33f5275020R267


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on January 08, 2022, 06:25:13 PM
Okay I absolutely see the problem perfectly now!  :o


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: AllForOneA41 on January 08, 2022, 07:40:37 PM
Thanks for discord !! I see also rename on git to Bamboo does Panda can beat Doge :D:D:D



Hi, Where can i find the miner binaries for windows ??

thnx in advance !

Don't recommend supporting such projects, the linux release was released and windows mining was not available for a long while. Pathetic for launch for a blockchain.

Are You an Noob mate? there are a Linux VMs for Window where you can easly run new projects are you first day in crypto space ?


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Lind on January 09, 2022, 03:01:20 PM
Thanks for discord !! I see also rename on git to Bamboo does Panda can beat Doge :D:D:D



Hi, Where can i find the miner binaries for windows ??

thnx in advance !

Don't recommend supporting such projects, the linux release was released and windows mining was not available for a long while. Pathetic for launch for a blockchain.

Are You an Noob mate? there are a Linux VMs for Window where you can easly run new projects are you first day in crypto space ?

Well the unit was Bamboo to begin with, even in the miner so...  BMB is the ticker.  ;)


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on January 09, 2022, 10:22:19 PM
Mainnet is now up again, everything went smoothly :D

If you want to run a node please try it out. We have support for Ubuntu and CentOS at the moment:
https://github.com/mr-pandabear/bamboo-utils


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: danglingnullptr on January 10, 2022, 11:03:32 AM
Unfortunately I have to say that this project gets fishy now. Several things destroy trust:

1. mrpandabear has broken his promise that there won't exist more than 100M coins, in fact he said in https://github.com/mr-pandabear/bamboo/blob/c9c274d2405c3e98e5095e8894ecde0b815b614d/README.md (https://github.com/mr-pandabear/bamboo/blob/c9c274d2405c3e98e5095e8894ecde0b815b614d/README.md):
Quote
, which yields a total final circulation of 100M BMB
Now there will exist more than 106.6 million because he transferred previous balances and started the chain again at block 1. It is very important that there will never exist more coins than claimed.
2. No one can verify whether this transfer is correct. For transparency, one should
   a) make the previous chain public such that everyone can verify, for example as a zip file.
   b) include the last hash of the previous chain in the genesis block header's previous hash field such that it is proven that the presented previous chain was not tampered. Unfortunately, a) and b) did not happen.
3. I verified that mrpandabear created coins out of thin air, which is very disappointing. Here is the proof:
In the genesis.hpp file https://github.com/mr-pandabear/bamboo/blob/c9c274d2405c3e98e5095e8894ecde0b815b614d/src/server/genesis.hpp (https://github.com/mr-pandabear/bamboo/blob/c9c274d2405c3e98e5095e8894ecde0b815b614d/src/server/genesis.hpp):
Code:
void addGenesisTransactions(Block &b) {
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00E9826757F00E3379D7D769983F0039428AC2A2657CAE43E4"), 7055500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("003ED0F94E04FB9AE467D712D0B86C8005BF528B5D34B5CDAA"), 2796500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00834DD96D6EF642B6790073D176C254B4B2384B529654E90C"), 2616500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("000499952F5B98DDAD2F9CB9085420CB1628450236F77643AA"), 2541820000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0074B1415B9E224724C8A17B5E2E39C7C8A310ABEAD58F4269"), 2533500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0003EFFB219BB4C782677BC1B036005A9884AADC7815E312BA"), 2509000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00D038EC8DA84703D1D4CD16B362960CA54AAE51E4A484C9E8"), 2495500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0017E700398C34409C213DD6977E40DE8E16E51A87F27CD988"), 2493000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00DE5E40E97D00A1B64EB7529F7DB89E7D5A1E857682C26250"), 2484500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00437E53BA063C24AC1A49FA4BB2A57CBD6EB6AE13AD29812B"), 2474500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0069D123253FB8C3C766622804A95781D72C5803116AD3C9F1"), 2457500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0049A42C07A55CADA8FEDC267E7657AADD824DB1D874E388C1"), 2450500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00D79306A08E1A5BA97E5C6EA182E77C1DEF6547EBB02D4416"), 2427500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00E31527CF3B7C8AF1D1B0EAEFB0AC2915234A4534A895DD24"), 2415000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0009CE8CE2619A8C392A36B9EB90897CB2968AE6DBE0FD0451"), 2256500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00E7F4F6B35B2B828353FA0AF95375DDF81BAC0F56B29A55C8"), 2240000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00A4D04A5B88E5D5A81070E2CD119568E4229F78D058633144"), 2145000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("002049A12D5CC39C1D58B12CD6894611ED6A9DC0CABEAF41BD"), 2081500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00A46B35E7E1C97598B2DB8191C48854C1370F4C4975D4D86D"), 2063500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0089CE8E002103B40ECF45DD7550C288434DD1EDBFD90D99F3"), 1748500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0040B77A814E0E0DAC7178F43A829B140D25DFCBDB12A64683"), 1572000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00340179E56547C8228D2F5793B032171DE8C91AA5668C0B5F"), 1340999997, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0095557B94A368FE2529D3EB33E6BF1276D175D27A4E876249"), 1325310047, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00A33A1E6A434CBD9C53E98489D9A2E02A0BB6CF6416141381"), 1042500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("000D96B31BC1ED85CEC7FCC7439C54AFE2663821979D646DC7"), 908960000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("003C35463F9A3D7E75784A801DFE37A9437822CC2A5CAC38A0"), 885000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0062050663701707233C8FFA0C2F969A1B4BCD7F526951808C"), 874000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00D368B6A8C88D240D43A92D05307A35588DE465B7C0DF94BB"), 824000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00C886980F3A31114D482ECE2D8A8C1CF835FE16563814147D"), 747999989, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0092AA9566D3DE6146E54187F91B6ED84870D56FB98D0217D8"), 670500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00615126A3C7A0EEEB2DD19E630081D396BD5D1B80BFA4E5F7"), 548500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00098588687833782A40C1DFCFA863F5C3190F4301DFCE8DA3"), 524000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00DD367D49C047B1F2D4786B67718E533846AB432957C38AAF"), 356500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00A28BB4EDD6334D97A63ABA6EF60E5AB2E0DADCCC26306918"), 310500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("008969DEA9270340ABE71D58717C181EB1220E977F68DA7A37"), 225500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("008E3EE0FD84750B3268C97A96CEBCFFDED88BCA41DB2C2EEB"), 165500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00F5DDEBDFA303DCDBFC12F0C97602AFF4CDB615A9B45929C7"), 150000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0081114D47D958F2B6C5AE8F7A63C00F8C7559AAA60E2FD384"), 126000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00850AA6DE249ACF35639230164E075592001FD6B7B6E1D227"), 102000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("002AE8DBAEAB076D5F88BDB73DC6FD844DC78C2C535ACA144A"), 101000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00B6027FE79D7364B59EECE0F425B4DFBC63421712A74B46EC"), 99000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00B968EED036C9EDEC1D07E767E0F3ADE705B06F130455ED66"), 94000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("003B61AF65D2FED09EBFE65E17933FDC971010853B3B9CBE3E"), 87500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0024FCC5A3CEE5C847E25A960F6A3949DF2561F0D9479BE474"), 86500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0090B14CCB3A1DE9AD58D4784AFB9D8645E23328442D38C49A"), 85500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("009F56D22641A07B598865A5497F125449247E36DABE464C79"), 83000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("005403D3F3CAE6820FA13695D8891826CCE0C368C80D5BD1A5"), 76000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("005FC69F59C0D179D7F89DC643178957DEE6152FD1EC9F4EE5"), 65900000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00B28B48A25AFFBF80122963F2CB7957571AE2612B0126BF0D"), 62500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00288D23F3219B77DF332645C0378766023306EF9C7873DE8E"), 62000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00B304C18FC109BA8F9BC7B888F0255BF8D8DF61DBF2422F00"), 56500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00A1EA31E833383634E1A18162E89AAEBF933C8EE9D43C8093"), 47500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0006221CD3645BA006C153EDB5B1D7DA34BC45A03AA207FA12"), 43824507, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00C1639A6B204EEF08B737D2AA5878ACCFA001B3755CE50B33"), 42000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0076FFF46D89146495C43BC6E8BFA94BB8F5619A95419B15A9"), 36000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00BDCB7E9F4D90DA6FD92ADA494DE72001B9AE79DD4564F265"), 33000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00FC60ABABF0A2D278F1669BC2376FC7092A720B0D69143CC7"), 30500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0035191220AB8C16D11525A70064BFDC973CEDB4E6573501DC"), 24500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("007F1B0A28351269B341F9942848C71ED43C5EA302C28734A7"), 24000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0025043A4DDD629425B7353C5FC5A4BC3C698BEF26580ABD4D"), 19500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00C6036D01FF40900D6924A8EEF12382952C63700C42826A69"), 19500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0007E1BB3C1B85281AB42BC86E851B055EF2C50E0F3F0C529B"), 19500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00E0B9D8E7C6D643331EB7CD116F1C77A9D01697489AA323F5"), 16000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("002645B783D84D79B398866006994E91F76069F7C30538658F"), 13500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("005A12B59868CCAA9C0DFC1B9E8A7003D7517DF75A03F9BE6E"), 13500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00F37273AE040BE8B911B438F60B331563CAFADB0DC2457C13"), 12500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00541AC2AB6EE552B9A5C721C64A59B55CBFBCD6B371B5F12B"), 11000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0073DD2958990A7D7EDDA6FA455C787986091CC91CB649463A"), 11000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0038339C95AE62901F1C2A81510E14B01487E62CCBD4982DD0"), 11000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00F8DC5BD1A68FDDF1B410791DFF22B637262F716479735108"), 11000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0095B122957B6353EE66F0230500D7079C63C88B237F9085BE"), 9000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00DEEBA031BBF39FAFC3EFBFDEC6ACDBC1F278BF6282AEDFD7"), 8000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00FDD9CF8ABC2E9147FBEC5FB2E4A83677660F1DD01D816280"), 6500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("001BD86ECA961597AA9C5905AF6192D375A88B0F72D576574D"), 6500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("009D80EE0F1A802C3A713E84E92060549E5C5DD1A773E7FDCB"), 6000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00AFBE7F1F1B3725BCB60B24165FC3A56A6844E5874B603B43"), 5500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00537B5A6D62BFBAC9CC03C6DABEC089D7DD624DD614FC1D77"), 5500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("001AAE6EA3E0BB5115C6AA55348F29D56415982B31842EFA2C"), 5000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00E18F9B6BB1A0B947C23D023F3A41AB8DA8126A2D5686972B"), 5000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00ADB00B563C112F6ADD73775F93FCD13AB65CB9CFDE67FF02"), 5000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0009D39E34BFC00CF4747C2FA410029A3348A9D7A736DB83FB"), 4500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0003AC1436F083A9FE1574E991B6E52C507AE351F803AEECDB"), 4000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0091E0E2141F661A55B81ACE97CC299FF918A11B9AA3E0FB88"), 4000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00803F09D2D6C4F32072A04434B11D6AD75D36A4F5C340BA04"), 3000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("006FC530AEEC0EEC8965148B5C28BC6335EB5D1916B9E3FF0B"), 2500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0030DEF022CE9FAB1FDADE1A08A98F64D1BE2E8D92B6818426"), 2000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("001A9493BDC70A9A3981BA921482C58FD34B4FE8934FCCE20B"), 1500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00FEE017AEB0A0CE19EBC4D19FE77A875A54AB7F7156C119CF"), 1000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00CFBEA8019F4BBD7811BABDD05553825C1144DD080840A4E1"), 1000000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("008B9453983F79616C7113623B97FE6BC1717B3DD267D8A3B8"), 500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0088F3F3B90D55B0AAC72511EBE856CB467ED5F3D1293E9ABD"), 500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00982CD377F2852599A5EF509A4D983E52A1488503E9A31872"), 500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0033A31CC7E9ABBB174E279AC3DF06F2D862AF87F7C8608769"), 500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00AF9FAE89447B47D542FDC1AFA772DF263712DD79F0CE5D67"), 500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0098A8E20EC73F00124958E69801D3196340042E01DD9D3D95"), 500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00C82D5092E8D7D8339F650704C35C7A090358B95667C677BB"), 500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("001573FC0EE22B7416A1DCED7A4F27009E7FC18FE3C86FA50D"), 500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("00EFF6FF40314D9220A0A3437868022547F777D93597691FAD"), 500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("007B864FFFB370432C366BD28254DAE7E61F35D60A1AC705FD"), 500000, NULL_KEY, 0, 0));
b.addTransaction(Transaction(NULL_ADDRESS, stringToWalletAddress("0066ED5DBC6C0BEAC820656DCA50BC424678A3698DA833DD1F"), 3953, NULL_KEY, 0, 0));
}
Why do so many accounts have such special numbers? 11000000 = 1100 BMB appears four times, why do people stop mining when the have exactly this number of BMB? This looks like prepared accounts, look at the amounts. If there are reserved community accounts this should be made clear in advance. It is not legit to silently prepare such accounts without telling people.

The balances sum up to 66474818493 which is 6647481.8493 BMB. But mrpandabear says on discord that the fork is at block 125990
Quote
Hey everyone. We are going to do the fork tonight. I recommend everyone currently mining STOP (you won't earn anything after block 125990 on the fork),[...]
In accordance to the readme.md file the reward is 50 BMB for every of the 125990 blocks:
Code:
uint32_t BlockChain::getCurrentMiningFee() {
    if (this->numBlocks < 1000000) {
        return BMB(50.0);
    } else if (this->numBlocks < 2000000) {
        return BMB(25.0);
    }  else if (this->numBlocks < 4000000) {
        return BMB(12.5);
    } else {
        return BMB(0.0);
    }
}
So there cannot exist more than 50*125990=6299500 BMB at block 125990. So I ask: Where do the 6647481.8493-6299500 = 347981.8493 BMB come from??? He just added them to some of the accounts and we can't verify. These BMB should not exist.
________________
Edit:
I want to think that mrpandabear is honest so I try to explain the issues:
Maybe 1. is just a mistake and this can be fixed by declaring that the block count starts with a higher number to compensate for the already mined number of coins.
2. Should really be done. a) Could you please give us the previous chain as zip? b) Very sad that the previous last hash was not included in the restarted chain. :( :( :(
3. Maybe the imbalance is due to a previous restart where you preserved peoples' balances in the genesis block (see 1., you should always forward the initial block count appropriately when you start with a premined genesis block and 2a) provide the old chain and 2b) include the previous chain's last hash in the previous hash header field of the new genesis block).

BUT: I cannot understand why the total number of coins is not a multiple of 50 BMB. Something must be wrong here, no matter how often you copied people's balances into the new genesis block. Coins are not destroyed, only transferred. And the account balances look like prepared. You can just write any balance here and we should be able to verify (Please do 2.).

I hope and want to believe that all this is just a mistake and not on purpose.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Salamande on January 10, 2022, 11:13:15 PM
Newest version of miner show 0 Net hash rate?


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on January 12, 2022, 04:01:27 AM
Thanks for the questions -- I'll try to answer clearly.

-- 1. you are correct that there will be ~106.6M BMB minted, not 100M as originally promised. This is because old balances from two forks have been added. The first fork happened at block 7750 (which I believe is also discussed in this thread)... this accounts for an additional 388,750BMB ... I carried through those balances to the second fork. README.md has been updated to reflect this fact.

-- 2. There is no desire to obfuscate the fact that these additional balances are added. It is my fault that I did not update the README.md on github ... in fact the headerfile you mentioned is there precisely for purpose of transparency...I could have just left it out of the codebase as the chain just reads "genesis.json". There is no desire to hide anything -- there is a very clear "genesis.json" file that is used as the genesis block. These decisions to preserve accounts is made because community members sacrificed their hardware early on to stress test things on a codebase that we know is very young. You can also see the code for generating the new genesis block commented out here:
https://github.com/mr-pandabear/bamboo/blob/master/src/server/blockchain.cpp#L127

-- 3. There was some sloppiness in how the transfer was done. There are a lot of test transactions that were done for amounts < 1/1000 BMB all from my accounts. You can see these in src/tools/simulate.cpp ... some of these accounts were discarded or merged to prevent too many dummy accounts.
https://github.com/mr-pandabear/bamboo/blob/master/src/tools/simulate.cpp

All in all I would have preferred *NOT* to carry through folks accounts in the codebase as it is sloppy but that would not be fair to those early testers who used their hardware.

The first versions of the chain was all hosted on single EC2 boxes and was not truly distributed... now we have made it so that anyone can run a node and the project can grow, in fact many such nodes are running today. With community run nodes we will no longer be doing these types of sloppy updates.

http://ec2-34-218-176-84.us-west-2.compute.amazonaws.com/


Also the fork balances are computed at block 125,180 *NOT* 125,990. I will be the first to admit that this is some sloppiness and bad communication on my part. The file used to generate the genesis block can be found here on Google Drive. Each line is a JSON blob of the block:
https://drive.google.com/file/d/1GCkDhYJNCy5OBFaVDdAjohqqwW8izmrF/view?usp=sharing

** I encourage you all to explore this data in depth. Searching for bugs here is important so we can prevent them in the future. For example you will find a tx with value 18446744073709551615 ... this was due to an overflow bug and not included in the amounts. **

I also include a spreadsheet of all transactions != 50BMB:
https://gist.github.com/mr-pandabear/d96c08fe3d063dad9a2602175bacbfa6

As you can see there are many transactions for 5/10,000 of a BMB or less to dummy accounts for load testing. It would be excessive to preserve all of these in the genesis block creation code.

I encourage you to apply Hanlon's razor to this instance : we were sloppy in transferring balances. Some blocks towards the end of the fork were lost... transactions < 50 BMB were merged and placed into the genesis account '0095557B94A368FE2529D3EB33E6BF1276D175D27A4E876249'  because these all correspond to funds I was using for testing.

I hope this answers the questions and provide some clarity! We are still early in the project these balances are not worth anything until we can get the codebase truly distributed and grow the number of public nodes. The whole point of a cryptocurrency is that it will be physically impossible to do these sort of fork fixes once we are truly "live".








Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Lind on January 12, 2022, 07:49:46 AM
Newest version of miner show 0 Net hash rate?

Rebuild it, now it shows hash based on last 10 blocks averaged.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: danglingnullptr on January 12, 2022, 10:36:02 AM
Sounds good, but you could account for the additional BMB by adjusting the function: the block bounds 10000000, 2000000, 4000000 could decreased by some number such that we pretend that the block count does not start at 1 but at a higher number (this is actually true because of the previously mined blocks). This way we could keep the 100 M total amount.
Code:
uint32_t BlockChain::getCurrentMiningFee() {
    if (this->numBlocks < 1000000) {
        return BMB(50.0);
    } else if (this->numBlocks < 2000000) {
        return BMB(25.0);
    }  else if (this->numBlocks < 4000000) {
        return BMB(12.5);
    } else {
        return BMB(0.0);
    }
}

I have made a short check and there are discrepancies, here are the meld screenshot for the sorted balances, I think negative numbers are due to the initial distribution. And I did not account for the overflow error transaction. Left are your genesis block values and on the right are the values I computed:
https://pasteboard.co/yVYBqPrmBlsd.png
https://pasteboard.co/27r9Dz6YMJE9.png
https://pasteboard.co/l0RGLdDvJKMa.png

But I can confirm that you genesis balances look mostly correct. I used the julia code

Code:
using JSON, DataFrames, CSV
function add(dict,account,amount)
    if !haskey(dict,account)
        dict[account]=0;
    end
    dict[account]+=amount
end

path="all.txt"
balances=Dict{String,Int128}()
lines=readlines(path);
for line = [lines[1]]
for t=JSON.parse(line)["transactions"]
add(balances,t["from"],-t["amount"])
add(balances,t["to"],t["amount"])
if t["amount"]<0
    print(t["amount"])
end
end
end

df=DataFrame(address=collect(keys(balances)), balance=collect(values(balances)))
sort!(df,[:balance],rev=true)
print(df[:,:balance])
CSV.write("balances.csv",df)

BTW there is a code formatting option in this forum that would not have messed up the code before.
If I have time I will look at the file in depth. Some XMR please :)


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on January 12, 2022, 05:09:39 PM
What is your XMR address? I appreciate the efforts and discussion here and transparency is critical for the project.

I did some calculations on my end, and it turns out there is actually some BMB missing:
6647750   Expected ( (125180+7750) * 50)
6647481.8493 Minted in new genesis

6647750 - 6647481.8493 = 268.1507 BMB Missing

Here is code used to compute, note that I added in fees paid to miners for solving blocks. This happened only quite rarely on test transactions and for very small amounts.
https://gist.github.com/mr-pandabear/62742eb4f91b92e11f68b5c552c2a4c8

My inclination is rather than patch to correct this, we leave the system as is and accept that there will be 99,999,XXX BMB instead of 100M.


Best,

Mr. Panda


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: danglingnullptr on January 12, 2022, 08:09:35 PM
Thank you, my XMR address is 86Juw7yZ313E8u2nfHBqKGGLKmki3Tg41CAZjwCTgNpk2DqqAMSR2d3KEwu6evrkMQ3eLzwbEfx9thL aYud3JgC7NxTf5eM
I will have a detailed look on this. Do you also have the file of the first fork?


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on January 13, 2022, 02:53:00 AM
I sent a small tip... TXID: eacad9737bae2c77032e6b475dfd7156a1c7dc79b3918f1ec2f3cc7f05e377a0 ... will send more later when I get a chance to buy some XMR (it is quite difficult to get).


Unfortunately the original first fork data is missing, the best I can do is provide you the generation of that genesis block here:
https://github.com/mr-pandabear/bamboo/commit/fcca96e28cc654c277433a9a14bd92ecad37d238#diff-aed855b92f4becac396ee70bea5d07170391986f0ee4c81776ea265c3d092928



Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: danglingnullptr on January 13, 2022, 07:07:38 AM
Will do some more investigations when I have more time. Here are a few things:

1. In https://github.com/mr-pandabear/bamboo/blob/fcca96e28cc654c277433a9a14bd92ecad37d238/src/core/blockchain.cpp#L68 use `auto& pair` instead of `auto pair` because otherwise you copy while you only need a reference. Only copy small types such as ints or pointers.

2. In block 75136 of `all.txt` there are two self-addressed transactions, one of which has negative transaction amount:
Code:
julia> blocks[75136]["transactions"][1]
Dict{String, Any} with 9 entries:
  "amount"     => 1000
  "fee"        => 0
  "signature"  => "B4E285D5D8494CBA90C0B5093C5FB35DDC0FB779315536C439286F667544A1E5BFB7A2E94E…
  "id"         => 0
  "signingKey" => "79288F16DFF26D08A2426F7A0513EAE5ED680F1B5133D3CF862DEFC8D5BBCB3F"
  "to"         => "0095557B94A368FE2529D3EB33E6BF1276D175D27A4E876249"
  "from"       => "0095557B94A368FE2529D3EB33E6BF1276D175D27A4E876249"
  "timestamp"  => "1640340456"
  "nonce"      => "PN2qmWqB"

julia> blocks[75136]["transactions"][2]
Dict{String, Any} with 9 entries:
  "amount"     => -1
  "fee"        => 560968
  "signature"  => "E9EB42D190145DE95AEB5937145DABF1C1B213BD1E43FD261901D1B74DAF5058556F099047…
  "id"         => 0
  "signingKey" => "79288F16DFF26D08A2426F7A0513EAE5ED680F1B5133D3CF862DEFC8D5BBCB3F"
  "to"         => "0095557B94A368FE2529D3EB33E6BF1276D175D27A4E876249"
  "from"       => "0095557B94A368FE2529D3EB33E6BF1276D175D27A4E876249"
  "timestamp"  => "1640340618"
  "nonce"      => "PN2qmWqB"

3. For me it does not make sense to have a timestamp for transactions. How is it assigned? By the transaction creator or miner? Then it can be faked. The only half-reliable time in blockchain is the block creation time which is protected e.g. in bitcoin by the median and 2 hour rules from below and above.

4.
... will send more later when I get a chance to buy some XMR (it is quite difficult to get).
Have never tried but always found this interesting https://www.getmonero.org/2021/08/20/atomic-swaps.html?

5.
I did some calculations on my end, and it turns out there is actually some BMB missing:
6647750   Expected ( (125180+7750) * 50)
6647481.8493 Minted in new genesis

6647750 - 6647481.8493 = 268.1507 BMB Missing

Here is code used to compute, note that I added in fees paid to miners for solving blocks. This happened only quite rarely on test transactions and for very small amounts.
https://gist.github.com/mr-pandabear/62742eb4f91b92e11f68b5c552c2a4c8

My inclination is rather than patch to correct this, we leave the system as is and accept that there will be 99,999,XXX BMB instead of 100M.
To me this only shows that there are missing some coins of the additional coins that are added to 100M. So there will still be more than 100M? Or am I missing something? Do you plan to do this:
you could account for the additional BMB by adjusting the function: the block bounds 10000000, 2000000, 4000000 could decreased by some number such that we pretend that the block count does not start at 1 but at a higher number (this is actually true because of the previously mined blocks). This way we could keep the 100 M total amount.
Code:
uint32_t BlockChain::getCurrentMiningFee() {
    if (this->numBlocks < 1000000) {
        return BMB(50.0);
    } else if (this->numBlocks < 2000000) {
        return BMB(25.0);
    }  else if (this->numBlocks < 4000000) {
        return BMB(12.5);
    } else {
        return BMB(0.0);
    }
}
Then these coins will indeed be missing to 100M (if you decrease the bounds by 125180+7750).

6. Some privacy remarks: Discord is not good for privacy, you cannot use tor (they then want your phone number). Please do also announce important things here. Furthermore, if I was you I would clear my cookies and browser history more frequently to not get tracked: obviously, you and many others did not notice that the GitHub readme does not show the bamboo image anymore because you still have it in cache since you renamed the project: https://github.com/mr-pandabear/panda-website/raw/master/site/static/logo.png is no longer a valid link.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on January 13, 2022, 09:32:55 PM
1. Yes, some sloppiness here.
2. Self addressed transactions are not a problem ... they just equate to a no-op. Ofc, there is the potential for an attacker to flood the system with self-addressed transactions or zero-valued transactions. This edge case should be handled.

 The negative -1 transaction you showed is the one that caused a faulty tx of sz 2^64 that I ignored during the fork. The ledger was never updated but the block was not rejected so it was a bug :/

3. Two transactions with exact same contents cannot be executed twice ... you can think of timestamp as a nonce parameter. if I want to send 2BMB twice to same recepient the signature and hash of transaction is the same unless I change the timestamp.

4. I think I used this or something similar to get Monero first time.

5. I am still not sure if I really want to mess with it. I think the cleanest solution is just to mint an additional 6.6M coins and leave it at that.

6.  I'm not so worried about Discord at the moment. BMB makes lesser claims to anonymity than something like Monero... our security guarantees are not much more than what Bitcoin offers. I agree though that if the coin gains value (which we all hope it does) ... then it will be important for those with large holdings such as early miners to remain anonymous lest they become targets for attackers. Nice catch on the repo image... yeah it was cached on my machine and I made the website repo private it broke


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: danglingnullptr on January 14, 2022, 08:33:32 AM
3. But then this is just a nonce and not a timestamp right? There are no rules for this value that enforce it to be approximately the timestamp, right? So it should not be called `timestamp`?
4. Impressed! So did atomic swaps work for you?
5. I would not do it, you can leave it as it is. Normally one would need to ask the holders if they are fine with this 6% inflation because the value of their cons then decrease but I think it is ok in this case. I just mentioned it because you said there are coins missing and that there would be less than 100M
Quote
and accept that there will be 99,999,XXX BMB instead of 100M.
which is not correct (I misunderstood you obviously, since you now agree that there are additional  ~6M coins)
6. My point is not that you should not use Discord but that it should not be the only channel to get news because people concerned about privacy don't want to use it but still want to follow this project.


7. https://github.com/mr-pandabear/bamboo/blob/master/src/server/executor.cpp#L202 variable `nonces` unused

8. I found a bug:
Code:
void MerkleTree::setItems(vector<Transaction>& items) {
    std::sort(items.begin(), items.end(), [](const Transaction & a, const Transaction & b) -> bool {
        return SHA256toString(a.getHash()) > SHA256toString(b.getHash());
    });
    queue<shared_ptr<HashTree>> q;
    for(auto item : items) {
        SHA256Hash h = item.getHash();
        this->fringeNodes[h] =  make_shared<HashTree>(h);
        q.push(this->fringeNodes[h]);
    }

    if (q.size()%2 == 1) {
        auto repeat = make_shared<HashTree>(q.back()->hash);
        q.push(repeat);
    }
    
    while(q.size()>1) {
        shared_ptr<HashTree> a = q.front();
        q.pop();
        shared_ptr<HashTree> b = q.front();
        q.pop();
        shared_ptr<HashTree> root = make_shared<HashTree>(NULL_SHA256_HASH);
        root->left = a;
        root->right = b;
        a->parent = root;
        b->parent = root;
        root->hash = concatHashes(a->hash, b->hash);
        q.push(root);
    }
    this->root = q.front();
}

The while loop has a bug, think of 6 elements, after 3 iterations, 3 elements are left, then after 4 iterations 2 elements are left. But these two are in different heights, your merkle tree will look like

Code:
       x 
      / \
     x   \
    / \   \
   x   x   x
  / \ / \ / \
  x x x x x x

which is wrong because the overall root is the parent of elements in two different heights. You only check for odd number of leaves and correct this once for the leaves and do not correct odd numbers in later stages.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on January 14, 2022, 05:26:55 PM
3. Yeah, I'll make a note to rename this in the codebase. The set<string> nonce was there to originally implement a per block nonce (in fact there was no TXDB in the original version and transactions were only accepted with a particular blockID to ensure that they could not be repeated in future blocks... this design was very cumbersome as you'd have to discard and re-submit transactions if they didn't make it into a particular block. A 5 character nonce string was used to ensure a lack of repeats within a given block but removed with the introduction of the txdb). TXDB was introduced in this commit:
https://github.com/mr-pandabear/bamboo/commit/b2c09d315bdc2acb5f817755df10391f61f0cdc0#diff-70e9ec68696d98d3955ce2a5ba9954596b47e14c812d2b13ee724a2529a0a5e7

4. Yes they worked like a charm :) I used https://unstoppableswap.net/

5. My plan is to correct for the larger 6.6M but not the 268.1507 ... yes agree that the 6.6M coins were minted :D

6. Makes sense, will make a note to put announcements here as well. Speaking of which we released a Windows light wallet:
https://github.com/mr-pandabear/bamboo-wallet/releases/tag/v0.0.1-alpha

7. See 3.

8. I didn't feel fully confident in the Merkle tree implementation and had an itch I'd get it wrong. Luckily it seems the bug you point out just prevents verification in log(TX count) hashes ... but is enough to prevent tampering with block contents (I think?). The ideal would be to use a good open source implementation. I'll probably swap it out.



Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: danglingnullptr on January 15, 2022, 04:29:07 PM
3. Maybe use Meson? I think its easier and cleaner than CMake and has -Wall -Winvalid-pch -Wnon-virtual-dtor -Wextra -Wpedantic warnings by default.
4. So there you can get XMR :)
5. Sounds good.
8. I would not use an open source implementation because it introduces too much bloat. It is not too difficult to implement the merkle tree. Especially since you do not need the O(log(TXs)) verification for now.
For example fill in the leaves hashes in a vector v and iterate i=0 to (length+1)/2 and put the hash of v[2i] || v[2i+2] into v taking special care to duplicate the last value in odd cases then resize to (length+1)/2. Do this until the vector length is 1. I think this should work?
 Furthermore I think you don't need a tree construction with shared pointers, do you? And yes, it is correct that block contents are still protected against tampering. When correcting this please do future forks without starting the chain from scratch. Do a case distinction in the block verification that is sensitive to the block height and executes the forked verification code for specific heights.

Will do some more investigation when I have more time.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on January 16, 2022, 01:00:24 AM
I re-wrote a much simpler Merkle hash computation here:
https://github.com/mr-pandabear/bamboo/blob/b2dd0f392f3be3b2db861bc450268ae88135d987/src/core/merkle_tree.cpp

So the problem we will introduce by creating a new Merkle calculation is that we will now have two hashing schemes and need to handle validating each one differently based on block number. This is a little bit ugly. I wonder how bad the construction I had earlier is in terms of the length of the proofs it would generate. If it's not that bad my inclination is to just leave it and we will have slightly non-standard Merkle proofs.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: danglingnullptr on January 16, 2022, 07:05:36 AM
I think your implementation is good but the assignment https://github.com/mr-pandabear/bamboo/blob/b2dd0f392f3be3b2db861bc450268ae88135d987/src/core/merkle_tree.cpp#L33 should replaced by a move using std::move(). The compiler won't do it automatically.

Your non-standard Merkle proofs will be shorter or equally long. When they are carefully designed, they can be tailored to your non-standard computation. But who needs Merkle proofs? Only SVP nodes right? And these nodes are not really necessary for a cryptocurrency, people can just run a full node when they are concerned about privacy or use a public block chain explorer when they are noobs.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on January 16, 2022, 08:25:37 AM
Interesting project, I will wait for the result of the development. Fingers cross. BTW is there a discord channel for Bamboo?


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Mandolorian on January 16, 2022, 09:54:01 AM
Interesting project, I will wait for the result of the development. Fingers cross. BTW is there a discord channel for Bamboo?

Telegram @ http://t.me/teampandacoin
Discord @ https://discord.gg/aFBzuKVg86


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on January 16, 2022, 09:15:38 PM
Interesting project, I will wait for the result of the development. Fingers cross. BTW is there a discord channel for Bamboo?

Telegram @ http://t.me/teampandacoin
Discord @ https://discord.gg/aFBzuKVg86

Thank you, it is good to be here with you guys. Fingers cross for bright future. I think that we might see here interesting times soon.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Salamande on January 17, 2022, 01:07:06 AM
Net hashrate climbing, any way to create pool mining?


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on January 17, 2022, 09:48:17 AM
Mining pool would be really good way to spread the hash rate.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: danglingnullptr on January 17, 2022, 07:09:15 PM
I can write a mining pool, it is a fair amount of work but doable. So how much XMR would you be willing to give me (write me a personal message)? Plus I would like to keep the code for 2 months and host the pool for 5% pool fee (as I said, I don't have any BMB at the moment and now it starts getting interesting). Then after two months I would hand over the code to the community.

Nice idea with the 'leaves' unit :)


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on January 18, 2022, 02:41:03 AM
That is a really interesting proposition, sent you a DM (let me know if you received it)

You have a good eye.  I think in addition to implementing the pool a deeper code review of, blockchain.cpp, executor.cpp, header_chain.cpp and node synchronization logic from you would also be helpful to make sure the project is as stable as possible as we start to throw more nodes and hash rate at it.

The real vision of this project is to have the most lightweight and minimal production grade blockchain codebase out there that is as simple to understand as possible and is very good at one thing: transactions between person A and B. No frills or fat. I'm slowly getting there but the more help from knowledgeable people the better.

Also: Regarding the cross platform portability of structs / memory alignment issues you pointed out earlier -- what do you think is the best fix? Something like protocol buffers or MessagePack?

EDIT:
For further transparency, I have also found a copy of the chain that happened prior to the first fork (blocks 1 - 7750):
https://drive.google.com/file/d/1XrlbXUlNISf_x04wYiV3FYMr2gKi7NH5/view?usp=sharing



Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: danglingnullptr on January 18, 2022, 07:18:37 AM
Yes, received it.

I will also look at these cpp files and the other blocks when I have more time.

The struct memory alignment problem is not a protocol problem but a parsing problem. Please don't spoil the project with protocol buffers (msgpack is leaner and nicer but still, you don't need it, just memcpy).

Just memcpy POD-wise with fixed-size data types into a temporary and copy from that instead of reinterpret_cast<>ing. Then it will be fine.
I don't know atm if you did that but don't cast or memcpy large objects because then alignment of member variables matters. Do it for every data type individually: memcpy uint64_t, uint32_t and such things and use use htonl and ntohl, single bytes can be read directly (obviously, because they don't require alignment). Floats are platform dependent and are problematic.

I would write serialization and parsing functions for your data types (or use msgpack if you don't want to do it by hand)
For example instead of
https://github.com/mr-pandabear/bamboo/blob/1ac855ff08db053d5fe10803ec60f86f1227351d/src/core/block.cpp#L48

you would add a serialization function and a parsing function for https://github.com/mr-pandabear/bamboo/blob/1ac855ff08db053d5fe10803ec60f86f1227351d/src/core/block.hpp#L11-L19
by overloading a stream operator for serializing the member types and write a corresponding parser. You would have to write a cursor class that does bound checking and throws in case of bound violations. It is some work but it would play out nicely in the end. Or you just use messagepack (or protocol buffers if you really want to but I don't it). It depends on the number of objects you want to serialize and on the time you want to spend.



1. Unsafe reinterpret_cast conversion https://github.com/mr-pandabear/bamboo/blob/1ac855ff08db053d5fe10803ec60f86f1227351d/src/core/api.cpp#L118 Maybe define another type which stores headers as byte sequence with getters? Then you can just initialize them with memcpy. These things need to be done ASAP.
2. No need for lambda callback https://github.com/mr-pandabear/bamboo/blob/1ac855ff08db053d5fe10803ec60f86f1227351d/src/core/header_chain.cpp#L52 since this already happens in a separate thread, the value vector can be returned by the function instead of being a void function. Or better return failure and return the other values by modifying a reference but don't use a lambda.
3. Special attention has to be payed whether the total work computation is correct. https://github.com/mr-pandabear/bamboo/blob/1ac855ff08db053d5fe10803ec60f86f1227351d/src/core/header_chain.cpp#L66 Do you have tests for this? This definitively needs some test and it needs to be wrapped into a function (which has to be tested) to be on the safe side. Instead of `totalWork+= base.pow((int)block.getDifficulty());` you need something like `totalWork.add(block.getDifficulty())` or `totalWork.add(block)`
4. Bad style: https://github.com/mr-pandabear/bamboo/blob/1ac855ff08db053d5fe10803ec60f86f1227351d/src/core/header_chain.cpp#L76 Are there exceptions you don't know the type of? Don't do this to be on the safe side. If you know that your HTTP request only throw exceptions derived from std::exception then if there is another exception you do not expect, you should crash the program because it could be something strange that you would not find out about otherwise. https://www.quora.com/What-does-crash-early-mean-in-software-engineering Never catch all. Actually you should not even catch std::exception but subclasses used in your HTTP client (if there are such, didn't check, otherwise it is a bad library).

Have no time now, will continue later.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on January 19, 2022, 02:17:02 AM
Okay, got rid of the lambdas and added tests for the totalWork computation.

PR ready for handling network serialization/deserialization properly:
https://github.com/mr-pandabear/bamboo/pull/36/files

This diff would be especially helpful to get feedback:
https://github.com/mr-pandabear/bamboo/pull/36/files#diff-77098f03ea93c1f33e959abf1779714cbf9ac364d993ef4f91877a6168ef5540


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: danglingnullptr on January 19, 2022, 08:05:10 AM
This pull/36 looks good I just have some comments:

1. https://github.com/mr-pandabear/bamboo/pull/36/files#diff-eae33aa8c4451ec780de10579fcb2ea0e24eb73f51d763a644d80269796e5e16R13-R34 There should be functions that
a) allocate a temporary
b) memcpy into it
c) advance the cursor automatically by the correct number of bytes (take char& argument and advance it)
d) return the temporary
This way, everything will get cleaner, just write such functions for uint8_t, uint16_t, uint32_t uint64_t.

2. Where is htonll defined (64 bit version). Didn't now about it, I thought the 64 bit version does not exist and one has to use be64toh?
3. The bounds checks such as https://github.com/mr-pandabear/bamboo/pull/36/files#diff-b82141a62c41308dc177b35e12e9aedcea86c92d94ddc96e7c35570b0499c4a3R176 are error-prone, I would really use exceptions directly in the parser functions such as https://github.com/mr-pandabear/bamboo/pull/36/files#diff-77098f03ea93c1f33e959abf1779714cbf9ac364d993ef4f91877a6168ef5540R12 to check for range overflow, exceptions are not that expensive. So you would write a class containing a cursor and a buffer end and would take instances of this type as parameter of the parser by reference and advance the internal cursor and do the bounds check against the end, throwing in case of an overflow. This makes everything so much easier and cleaner.
4. https://github.com/mr-pandabear/bamboo/pull/36/files#diff-b82141a62c41308dc177b35e12e9aedcea86c92d94ddc96e7c35570b0499c4a3R176 Why are you allowing excessive bytes? I would consider it as an invalid submit if there are some more bytes at the end, i.e. if buffer.size() - sizeof(BlockHeader) % sizeof(TransactionInfo) != 0. Finally, all bytes should be consumed.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on January 21, 2022, 06:45:07 PM
Quick update:

Yesterday the network had a breach where an issue with the public key to wallet verification enabled somone to steal and re-sell 800K BMB.

The patch for this issue was simple, and the cost of not having the patch catastrophic (it enabled anyone to steal funds with a simple tampering of transaction data because the signature attached to a transaction was not checked against the withdrawing wallet to ensure they were both from the same private key).

Luckily the funds were returned by the buyer.

You can see the patch here:
https://github.com/mr-pandabear/bamboo/commit/e8336611c3f4add703e925d65c581dfc516cc0bd#diff-bb0926cbaf68b7b7f85dbfae0e096e891684164d8b0602fac0cc3ebbccb1885aR122


The network has now been patched and is functioning as normal.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Lind on January 21, 2022, 09:12:11 PM
Quick update:

Yesterday the network had a breach where an issue with the public key to wallet verification enabled somone to steal and re-sell 800K BMB.

The patch for this issue was simple, and the cost of not having the patch catastrophic (it enabled anyone to steal funds with a simple tampering of transaction data because the signature attached to a transaction was not checked against the withdrawing wallet to ensure they were both from the same private key).

Luckily the funds were returned by the buyer.

You can see the patch here:
https://github.com/mr-pandabear/bamboo/commit/e8336611c3f4add703e925d65c581dfc516cc0bd#diff-bb0926cbaf68b7b7f85dbfae0e096e891684164d8b0602fac0cc3ebbccb1885aR122


The network has now been patched and is functioning as normal.


Great work, I am glad it was discovered this early in development and just 2 people were affected.   :)


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on February 15, 2022, 04:27:29 PM
We had another attack on the network and the chain was forked. Miners lost blocks between 18K and ~34K.

This was a very complex attack and nearly 3M BMB were stolen by attackers in total. The stolen funds have been recovered and placed in a community account.

Details on the origins of the attack and it's mitigation are available in this post-mortem:
https://www.dropbox.com/s/12b8js0kvfvtv79/Bamboo_Attack_Post-Mortem.pdf?dl=1 (https://www.dropbox.com/s/12b8js0kvfvtv79/Bamboo_Attack_Post-Mortem.pdf?dl=1)



Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on February 15, 2022, 04:30:34 PM
We had another attack on the network and the chain was forked. Miners lost blocks between 18K and ~34K.

This was a very complex attack and nearly 3M BMB were stolen by attackers in total. The stolen funds have been recovered and placed in a community account.

Details on the origins of the attack and it's mitigation are available in this post-mortem:
https://www.dropbox.com/s/12b8js0kvfvtv79/Bamboo_Attack_Post-Mortem.pdf?dl=1 (https://www.dropbox.com/s/12b8js0kvfvtv79/Bamboo_Attack_Post-Mortem.pdf?dl=1)



Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Lind on February 16, 2022, 11:30:52 PM
We had another attack on the network and the chain was forked. Miners lost blocks between 18K and ~34K.

This was a very complex attack and nearly 3M BMB were stolen by attackers in total. The stolen funds have been recovered and placed in a community account.

Details on the origins of the attack and it's mitigation are available in this post-mortem:
https://www.dropbox.com/s/12b8js0kvfvtv79/Bamboo_Attack_Post-Mortem.pdf?dl=1 (https://www.dropbox.com/s/12b8js0kvfvtv79/Bamboo_Attack_Post-Mortem.pdf?dl=1)



I see, it must have been frustrating and a difficult situation for all, but things are back on track. Excellent news!

When will you have a complete whitepaper?  :)
You mentioned a draft version on discord. I'm thrilled to check it out when it is finalized, it should be there when you set up a website for the project.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on February 20, 2022, 09:40:03 PM
Whitepaper will come soon and also our website will come with it. We are still in early stage and our progress is going further. We would like to invite new people with this to join also our discord: https://discord.gg/3H29Zhrz7C


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on February 21, 2022, 02:03:41 AM
Whitepaper now available here:
 https://www.dropbox.com/s/lctbgrhv53vcpla/Bamboo-Whitepaper.pdf?dl=1

Website coming soon!


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on February 21, 2022, 08:30:54 PM
Bamboo offers light code, faster transactions and our own blockchain (we are not a fork of any other coins out there).



https://github.com/De-Crypted/dcrptd-miner/releases/tag/1.0.0.rc8


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on March 01, 2022, 04:29:09 AM
We've launched pool mining and GPU miner. Together these improvements have yielded hash rates up to 175+ GHashes/sec

We're launching a new program to expand the reach of the network: Node operators are offered 50BMB monthly (there is a small staking fee to ensure quality node operation) The goal is to reach 100 nodes by mid-May. Message us on discord if you're interested!

https://discord.gg/H7CMnXrY


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: EuroTrader79 on March 05, 2022, 08:18:22 AM
At the moment the team is working on another pool and numbers of nodes to secure the network is rising. Website should be online soon.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: tmn098 on March 05, 2022, 01:30:04 PM
We've launched pool mining and GPU miner. Together these improvements have yielded hash rates up to 175+ GHashes/sec

We're launching a new program to expand the reach of the network: Node operators are offered 50BMB monthly (there is a small staking fee to ensure quality node operation) The goal is to reach 100 nodes by mid-May. Message us on discord if you're interested!

https://discord.gg/H7CMnXrY

I can't get the gpu miner to work.  It launches, but shuts down after a couple seconds. 


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on March 05, 2022, 02:56:35 PM
If you post in the discord we will help you get it running!


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on March 08, 2022, 06:56:09 PM
Our website is going to be released soon. Plus there is work continuing on new pool.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: ultiex on March 09, 2022, 02:55:00 AM
It is important that you be transparent. The marketing process is very important. You should share more clearly your point of view, about your responsibilities, direction and real desires


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on March 11, 2022, 07:51:20 AM
It is important that you be transparent. The marketing process is very important. You should share more clearly your point of view, about your responsibilities, direction and real desires
Yes that is our important move at the moment. People can read everything about us incl our whitepaper on our discord channel. We do not want to promise big things, we are aiming to be nice store of value project. Simple as that. But as I wrote, more is to be found on our discord channel: https://discord.gg/3H29Zhrz7C


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: thikachhey on March 11, 2022, 08:09:51 AM
Can you fix the link to discord? Its showing invalid invite.
You need to "edit invite link" in the bottom and set it to Expire after "Never"


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on March 12, 2022, 02:12:41 PM
Can you fix the link to discord? Its showing invalid invite.
You need to "edit invite link" in the bottom and set it to Expire after "Never"
Ok so here is new invite link on our discord: https://discord.gg/3qt4kJXDfv


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on March 12, 2022, 07:08:57 PM
I've updated the link in the main post -- seems it was expiired : https://discord.gg/2m9m2cnBk7


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: throwaway4u on March 13, 2022, 04:27:39 PM
Seems quite interesting


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on March 13, 2022, 05:59:08 PM
Seems quite interesting
Welcome to our project.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: EuroTrader79 on March 13, 2022, 06:48:12 PM
Seems quite interesting
It is nice to see new face here. Welcome to Bamboo


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: throwaway4u on March 14, 2022, 01:03:45 PM
Seems quite interesting
Welcome to our project.

Thanks!!  :D  What's the total supply?


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on March 14, 2022, 04:19:04 PM
Seems quite interesting
Welcome to our project.

Thanks!!  :D  What's the total supply?
Total supply is 100mil BMB, but at the moment there is bit over 8.1mil BMB mined.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: EuroTrader79 on March 14, 2022, 05:34:34 PM
Seems quite interesting
Welcome to our project.

Thanks!!  :D  What's the total supply?
Total supply is 100mil BMB, but at the moment there is bit over 8.1mil BMB mined.
You forgot about the coins taken out from the hacker who tried to mess with the network. Out of the 8mil BMB there are something over 3mil coins that will be used over time for payment of volunteers who are willing to help us to make the dream come true..


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: throwaway4u on March 15, 2022, 04:42:20 PM
Transaction fees? What are the advantages of a simpler version of bitcoin if you can elaborate?


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on March 15, 2022, 05:42:46 PM
Transaction fees? What are the advantages of a simpler version of bitcoin if you can elaborate?
Transaction fees are 0, at the moment we had to rise it for 1 leaf ( 0.0001BMB ) to secure the network in case someone would flood the network with fake transactions. This transaction fee will be taken again out after we will secure the network against such behavior. Just a small information: 0.0001 is the max decimal, we dont have more decimal numbers like other coins out there. What are the advantages? Well each one should read our whitepaper to understand our tech. In short, we dont promise any best latest updates and improvements. We would like to be interesting and easy to use for people. That is why our code is also lightweight in compare to other coins out there.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: EuroTrader79 on March 15, 2022, 06:20:10 PM
We are new project that is not forked from previous coins that are already out there, we are created from the scratch. And we are at the moment easy to mine.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on March 15, 2022, 07:03:17 PM
Currently we have 43miners and 89Gh/s network hash rate. Very nice for new project.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: throwaway4u on March 16, 2022, 06:05:41 PM
Listed? Where can we buy it?


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on March 16, 2022, 06:42:54 PM
Listed? Where can we buy it?
We are not yet listed, we dont actually hurry on listing. But there is one smaller exchange in our list where will we list as starting one.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: EuroTrader79 on March 17, 2022, 06:06:05 PM
And btw we have a new gpu miner: https://github.com/De-Crypted/dcrptd-miner/releases/tag/1.0.0.rc9


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Lind on March 18, 2022, 10:21:55 AM
And btw we have a new gpu miner: https://github.com/De-Crypted/dcrptd-miner/releases/tag/1.0.0.rc9

Good news!

Come to mine folks and join Discord please, you can reach the pool operator there - yea there is an operating pool.  ;)
The community is growing, come now and don't regret it later, that's my advice.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Salamande on March 20, 2022, 12:13:12 AM
Dear Bamboo coin family, we are pleased to announce our newest miner: https://github.com/De-Crypted/dcrptd-miner/releases/tag/1.0.0.rc10 Nice mining

Following this project till the first days, still growing small steps at a time, but always growing...good!


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on March 22, 2022, 06:55:26 PM
We would like to announce our reddit profile: https://www.reddit.com/r/bmb_official/
come and join us there.
We have twitter account: https://twitter.com/bmb_bamboo


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on March 26, 2022, 02:31:40 AM
We are about to release some very cool updates. Our node server is being ported to run in WebAssembly using the emscripten SDK. This will enable anyone to host a bamboo node simply by opening a tab in their browser. We believe this is the first time any cryptocurrency has had this capability and it will allow our network of nodes to grow much faster -- no download or complicated server configuration necessary :)


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Lind on March 27, 2022, 07:30:55 PM
We are about to release some very cool updates. Our node server is being ported to run in WebAssembly using the emscripten SDK. This will enable anyone to host a bamboo node simply by opening a tab in their browser. We believe this is the first time any cryptocurrency has had this capability and it will allow our network of nodes to grow much faster -- no download or complicated server configuration necessary :)

That is an interesting idea, are you planning some kind of web/browser wallet connected to this? It just brings the question, like a next step, but I don't know if that can be done securely. Like some malwares can infect browsers and etc..


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Salamande on April 06, 2022, 01:48:13 AM
We are testing new stable AMD miner, we will release it soon. Just waiting for few confirmations.
New miner released: https://github.com/De-Crypted/dcrptd-miner/releases/tag/1.0.0
Welcome to Bamboo mining

Multi-Gpu, solo mining... hell yes!


Nice work  8)


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on April 08, 2022, 06:51:06 PM
At the moment there is ongoing development of our browser node implementation. After we will have it fully working, we will release the info on discord, reddit and twitter profiles. In the mean time we would like to invite users to our pool or solo mining to grab some Bamboos.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: throwaway4u on April 12, 2022, 02:10:14 PM
Have been tracking it for a while now...so far, very promising. Waiting for the browser nodes to be deployed


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on April 13, 2022, 06:25:42 PM
Have been tracking it for a while now...so far, very promising. Waiting for the browser nodes to be deployed
We are working on the browser node system to release it ASAP. We will release the info soon as it is fully operational. Thank you for supporting Bamboo.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on April 20, 2022, 10:24:08 PM
Miner update, we have released new miner today: https://github.com/De-Crypted/dcrptd-miner/releases/tag/1.1.1

    Added worker name support for Shifupool. Set it along with wallet address wallet_address.worker_name
    Added hotkeys for pause and resume (and help)
    P - Pause
    R - Resume
    S - Periodic report stats
    H - Help


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on April 24, 2022, 10:14:32 PM
Browser nodes update: After some development work it seems that our browser nodes system is working and it is stable. One can even run the node thru chrome browser on smart phone. We will post more info soon. Stay tuned and keep mining..


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on April 24, 2022, 11:45:07 PM
As mentioned we are now the first cryptocurrency to run a full node in browser over WebRTC.

This is pretty big leap -- a big barrier to entry to running nodes is the network setup -- the requirement that one have an externally accessible IP address -- Bamboo no longer requires this. Our vision is to have hundreds of thousands of nodes as literally anyone that has a browser can now host an ephemeral node, no externally accessible IP required.

You can try it out on chrome now at:
https://mrpandabear.org (https://mrpandabear.org)


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Lind on May 01, 2022, 08:21:52 PM
As mentioned we are now the first cryptocurrency to run a full node in browser over WebRTC.

This is pretty big leap -- a big barrier to entry to running nodes is the network setup -- the requirement that one have an externally accessible IP address -- Bamboo no longer requires this. Our vision is to have hundreds of thousands of nodes as literally anyone that has a browser can now host an ephemeral node, no externally accessible IP required.

You can try it out on chrome now at:
https://mrpandabear.org (https://mrpandabear.org)

Good job! That could break some barriers for some people and it would result in a geographically diverse node network: some located and running on each continents.

My advice: You should organize an invitation contest or something to grow your community. + Spread the BMB supply among more users.  ;)


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Salamande on May 03, 2022, 01:28:37 AM
As mentioned we are now the first cryptocurrency to run a full node in browser over WebRTC.

This is pretty big leap -- a big barrier to entry to running nodes is the network setup -- the requirement that one have an externally accessible IP address -- Bamboo no longer requires this. Our vision is to have hundreds of thousands of nodes as literally anyone that has a browser can now host an ephemeral node, no externally accessible IP required.

You can try it out on chrome now at:
https://mrpandabear.org (https://mrpandabear.org)

Good job! That could break some barriers for some people and it would result in a geographically diverse node network: some located and running on each continents.

My advice: You should organize an invitation contest or something to grow your community. + Spread the BMB supply among more users.  ;)

Agree with that, how about an airdrop or something like that with that community fund?


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Lind on May 07, 2022, 08:08:04 PM
As mentioned we are now the first cryptocurrency to run a full node in browser over WebRTC.

This is pretty big leap -- a big barrier to entry to running nodes is the network setup -- the requirement that one have an externally accessible IP address -- Bamboo no longer requires this. Our vision is to have hundreds of thousands of nodes as literally anyone that has a browser can now host an ephemeral node, no externally accessible IP required.

You can try it out on chrome now at:
https://mrpandabear.org (https://mrpandabear.org)

Good job! That could break some barriers for some people and it would result in a geographically diverse node network: some located and running on each continents.

My advice: You should organize an invitation contest or something to grow your community. + Spread the BMB supply among more users.  ;)

Agree with that, how about an airdrop or something like that with that community fund?

Oh they did just that, some tips and a Discord Invite Contest.  ;D Sweet! They try to limit alt accounts too, these guys are experienced haha. Seems like they heard our call Salamande. I read you can SOLO GPU MINE now or use the POOL.

SOURCE:
https://www.reddit.com/r/bmb_official/comments/ukb8kh/discord_invitation_contest/ (https://www.reddit.com/r/bmb_official/comments/ukb8kh/discord_invitation_contest/)


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on May 10, 2022, 05:51:12 PM
We are opening up a Bug Bounty!

10k BMB/existential bug, previously unreported.

Submit a script that causes the nodes to crash or to tamper with balances. Extra 10k for a patch fixing it.

Submit here:
https://t.co/s239GAXIOg


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Lind on May 24, 2022, 12:02:07 PM
Development News!  ;)

No updates will be made without a trial run and consensus from the community.

  • Algo change Soon™. Pufferfish algorithm is now integrated with Bamboo. BMB team is deciding on roll out.
  • They won't add the new algorithm to the live chain until DCRPTD miner + Shifupool are compatible.
  • Next up Team will be evaluating techniques to protect against 51% attack.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: maikrothaman on May 24, 2022, 02:29:25 PM
The project can never get real adoption. When your token gets listed most of the miners will dump their coins and keep the project low.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on May 25, 2022, 05:56:26 AM
The project can never get real adoption. When your token gets listed most of the miners will dump their coins and keep the project low.
Well first thing is that we are not token, we are pure crypto that is created from scratch. Who would have dumped such project?


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on June 12, 2022, 02:38:03 PM
PUFFERFISH2 algorithm has now been released to live node. @Decrypted and @CoinfuMasterShifu have run pool and miner against testnet and everythinig appears to be functional. The switchover will happen at block 124,500 with the first pufferfish mined block being 124,501.

@Decrypted will be releasing an updated miner that will be necessary to continue mining bamboo past block 124,500. Will post to this thread to give the update once miner is released.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on July 04, 2022, 04:28:28 PM
We are going to be listed at Exbitron exchange anytime. Stay tuned for more info..


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on July 05, 2022, 01:47:07 AM
We are now tradable on Exbitron!

https://www.exbitron.com/trading/bmbusdt


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matusik484 on July 05, 2022, 03:54:42 PM
https://raw.githubusercontent.com/JustFragger/crypto-icons/main/logo/BTCTALK.png


Bamboo available for trading on Exbitron Exchange, with pairs BTC and USDT!

BMB/USDT : https://www.exbitron.com/trading/bmbusdt
BMB/BTC : https://www.exbitron.com/trading/bmbbtc

>Low trading fees only 0,2%, and withdrawal fees are small too ;)
>Easy to use UI
>Discord and Telegram support

Support :

Discord: http://discord.gg/PctkfqDPgm
Telegram: https://t.me/exbitron_en

Happy Trading!


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on August 12, 2022, 04:01:23 PM
New wallet is out: https://github.com/f10crypto/bamboowallet/releases/tag/v0.1.5
-fixed ui issue after sending transaction
-fixed error message after successful transaction
-fixed too many requests issue
-linux binary available


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on August 20, 2022, 10:46:17 AM
We have new exchange listing: https://xeggex.com/post/new_listing_bamboo_bmb come and join us. Happy trading


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on August 23, 2022, 02:07:23 AM
Quick announcement: Members of our dev team are working on adding web miner (WASM) support to ShifuPool. This is a really exciting development :) You will soon be able to mine directly on the web!


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on August 23, 2022, 05:23:50 PM
You can mine BMB with: https://github.com/doktor83/SRBMiner-Multi/releases/tag/1.0.6


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Lind on August 29, 2022, 01:55:04 PM
Quick announcement: Members of our dev team are working on adding web miner (WASM) support to ShifuPool. This is a really exciting development :) You will soon be able to mine directly on the web!

Very nice! I expect a huge boost in worker numbers and hopefully this new feature can pull in new potential users. Can you update the roadmap/future plans section? Maybe add a blog(post) tab to your site where you can comment/explain/give insights/sneak peeks from devs viewpoint from time to time.  8) Would be cool.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on September 14, 2022, 12:57:42 AM
We are now listed on TradeOgre!  :)

Check it out:
https://tradeogre.com/exchange/BTC-BMB


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Lind on September 14, 2022, 10:11:56 AM
We are now listed on TradeOgre!  :)

Check it out:
https://tradeogre.com/exchange/BTC-BMB

Excellent! Could you tell me about Bamboo Networks future vision, what you have in store for us? Next steps and such, investors would be happy to learn more. How is the new algo holding up? How you see crypto in a few years and Bamboo in it?


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: BANZAIII on September 15, 2022, 12:20:48 AM
dcrptd miner has an error in the directory, why doesn't someone answer from github about miner problems, who does this?  What GPUs can be used for mining?


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Lind on September 15, 2022, 03:20:25 PM
dcrptd miner has an error in the directory, why doesn't someone answer from github about miner problems, who does this?  What GPUs can be used for mining?

None of them. SRBMiner-Multi CPU & GPU Miner has an added AMD RDNA2 GPU support for Pufferfish2 Algo.

https://github.com/doktor83/SRBMiner-Multi/releases/tag/1.0.7


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on September 15, 2022, 04:03:49 PM
We are now listed on TradeOgre!  :)

Check it out:
https://tradeogre.com/exchange/BTC-BMB

Excellent! Could you tell me about Bamboo Networks future vision, what you have in store for us? Next steps and such, investors would be happy to learn more. How is the new algo holding up? How you see crypto in a few years and Bamboo in it?

I am going to be sharing a new whitepaper soon. Ultimately I see Bamboo as layer-1 of an entirely new ecosystem of apps that are all extensions of the core Bamboo blockchain. The next step will be introducing what I call "programs", programs are new blockchains which represent locked capital on layer-1... these chains execute on their own over the locked capital pool and can implement any verifiable program using something called zero-knowledge proofs. At the core this is very similar to a smart contract, except all smart contracts will be required to be verifiable in bamboo... there is nothing analagous to the EVM in ethereum where code actually runs on Layer 1.

At present I am diving very deeply into how to compile programs written in C to an architecture known as TinyRAM using a project called pequin:
https://github.com/pepper-project/pequin

The core of my vision is that these verifiable programs should be very easy to write and compile... which is currently not the case. More to share later.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Lind on September 15, 2022, 04:25:59 PM
We are now listed on TradeOgre!  :)

Check it out:
https://tradeogre.com/exchange/BTC-BMB

Excellent! Could you tell me about Bamboo Networks future vision, what you have in store for us? Next steps and such, investors would be happy to learn more. How is the new algo holding up? How you see crypto in a few years and Bamboo in it?

I am going to be sharing a new whitepaper soon. Ultimately I see Bamboo as layer-1 of an entirely new ecosystem of apps that are all extensions of the core Bamboo blockchain. The next step will be introducing what I call "programs", programs are new blockchains which represent locked capital on layer-1... these chains execute on their own over the locked capital pool and can implement any verifiable program using something called zero-knowledge proofs. At the core this is very similar to a smart contract, except all smart contracts will be required to be verifiable in bamboo... there is nothing analagous to the EVM in ethereum where code actually runs on Layer 1.

At present I am diving very deeply into how to compile programs written in C to an architecture known as TinyRAM using a project called pequin:
https://github.com/pepper-project/pequin

The core of my vision is that these verifiable programs should be very easy to write and compile... which is currently not the case. More to share later.

So its possible to run sidechains and other stuff similar to tokens, but its not as limited and complicated? A compact ecosystem with more room to build upon? Thats very ambitious.  :D


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: mrpandabear on September 15, 2022, 04:54:19 PM
Yes essentially a smart contract is implemented as a sidechain outputting verifiable state transformation of a locked capital pool. You can do many things with it


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Lind on September 20, 2022, 04:42:06 PM
Yes essentially a smart contract is implemented as a sidechain outputting verifiable state transformation of a locked capital pool. You can do many things with it

How its going? Can you tell us about this locked capital idea? Like how much you would need to lock?


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on September 21, 2022, 08:58:51 PM
You can mine BMB now with RX5xxx cards: https://bitcointalk.org/index.php?topic=5190081.0
Thank your work Doctor83


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: sxemini on September 22, 2022, 11:34:13 AM
Windows or Linux wallet? I only see a mac version on github.

https://github.com/f10crypto/bamboowallet/releases


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Lind on September 27, 2022, 05:24:33 PM
New miner version yaay!

https://github.com/doktor83/SRBMiner-Multi/releases/tag/1.0.9

"Added algorithm 'pufferfish2bmb' for Polaris/Vega cards"  8)


October 8th:

Update: New miner with Nvidia Support!  :o

https://github.com/andru-kun/wildrig-multi/releases/tag/0.33.1


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on October 10, 2022, 02:24:39 PM
We are happy to announce that we have stable hash rate of over 3Mh/s and that we have miners for both Amd and Nvidia Gpus, you can still mine with your Cpu which is still efficient at the moment.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Lind on October 17, 2022, 09:36:54 AM
Seems like devs have made it, simple NFT in code and it is working.  I started to give up after all this silence, so its nice to see this project is going strong and is not abandoned. Thought volume and liquidity could be better, maybe we have to wait until next bullrun.  :-\

Source: https://twitter.com/bmb_bamboo/status/1581935613426937860


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on October 28, 2022, 06:45:47 AM
So after some testing we have decided that for now we will just implement Layer-2 in our main chain and we will stick with that until we will find a solution how to make it POS chain. Basically that will make us smarter, lighter and faster version of Ethereum with one exception, all these chains were presale (ok ETH was until now minable after the presale ended). You can mine us from the genesis block.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: TeamBamboo on November 08, 2022, 09:35:39 PM
Hello guys Bamboo Team account here!

We declare our intention to recruit new team members!

About us:
Bamboo is a community coin with friendly people.

We are looking for:
- a lead developer who can provide Bamboo with a strong vision and a clear development directory
- additional developer(s)


Get to know our codebase:
https://github.com/bamboo-crypto/bamboo

We can dedicate parts of the Community Fund to reward hard work, based on merit and you would become a full team member of course.
Coding knowledge is needed!


Join our Community and we will have a chat with you.  :)

DC: https://discord.com/invite/crfkWjxYyT
TG: https://t.me/bambooBMB


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Lind on November 21, 2022, 10:22:48 PM
Bamboo Anniversary is upon us, nice to see this coin still going esp since it can be mined with both CPU and GPU.


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: TeamBamboo on November 23, 2022, 08:09:14 PM
Welcome our newcomers to the team!

MikeO - Jr. Mod - Discord/other wallet/code counselor
mattip - Jr. Mod - Discord /code counselor/supporting tasks


We are still open to more people to join!

Thanks for your attention. 🙂

Bamboo Family:
DC: https://discord.com/invite/crfkWjxYyT
TG: https://t.me/bambooBMB


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Pandanite on December 14, 2022, 03:10:37 PM
Welcome to a new stage!

After a community vote to find a new name for our project, Bamboo rebrands to Pandanite (PDN)! 🎉

Our goal is to build a great community blockchain.

New bitcointalk topic can be found here: https://bitcointalk.org/index.php?topic=5428374.0


Title: privacy
Post by: maikrothaman on December 23, 2022, 10:53:03 AM
Welcome to a new stage!

After a community vote to find a new name for our project, Bamboo rebrands to Pandanite (PDN)! 🎉

Our goal is to build a great community blockchain.

New bitcointalk topic can be found here: https://bitcointalk.org/index.php?topic=5428374.0

I enjoy Pandanite (formerly Bamboo). Unique Selling Points are necessary, though. You should probably pay attention to scalability, privacy, or app integrations.


Title: Re: privacy
Post by: Pandanite on January 06, 2023, 10:16:38 PM
Welcome to a new stage!

After a community vote to find a new name for our project, Bamboo rebrands to Pandanite (PDN)! 🎉

Our goal is to build a great community blockchain.

New bitcointalk topic can be found here: https://bitcointalk.org/index.php?topic=5428374.0

I enjoy Pandanite (formerly Bamboo). Unique Selling Points are necessary, though. You should probably pay attention to scalability, privacy, or app integrations.

Guess I will just post here for now. As the question is here.

How about "twothirding"?

Pandanite is minted by miners who earn rewards so this stays the same.
However mining payments will occur using the *thwothirding* algorithm, which yields a total final circulation of ~100M PDN:
- 50 PDN per block until block 666666
- 50\*(2/3) PDN per block from blocks 666667 to 2\*666666
- 50\*(2/3)^2 PDN per block from blocks 2\*66666+1 to 3\*666666
etc.

Height is 330,973 when I wrote this so another 335694 blocks to go.

So the event will come to pass faster: from every 666.666 +1 block  -  so first "twothriding" will give us a 33.33333* PDN Block Reward instead of 25 in case of a a classic having event :) Original design was 1 million + 1 block to be minted, then stopped at a certain point - 12,5.
We think this is better this way and a kind of unique trait which fits PDN, as classic of POW coins use halving (BTC too) and there are others with other implementations.



Title: Re: privacy
Post by: Lind on January 10, 2023, 12:35:59 PM

Interesting idea and can be a good characteristic for PDN.  :o

I hope more people will find this coin as time goes by. POW coins wit their own chain have a strong claim to exist, unlike tokens. Thanks for the update Team!


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Pandanite on January 14, 2023, 01:23:28 PM
Exbitron name + ticker change on pairs. Thanks for the patience.


"UNPLANNED MAINTENANCE AT 15:00 CET (2PM UTC)

System maintenance + new upgrades to system
Bamboo (BMB) change to Pandanite (PDN)

Exchange will go to maintenance mode for 30 minutes - 1 hour. (might be faster only ETA)
"


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on February 28, 2023, 03:03:01 PM
We have a small article about PDN: https://www.publish0x.com/crypto-bits/pandanitepdn-a-free-and-worthy-implementation-to-win-you-ove-xxzezlx
Update: new explorer available:  https://pandascan.io


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: matejbilahora on July 13, 2023, 10:02:49 PM
Just a small update, we have twothirding in place.


Title: https://shifu.mrpandabear.org/ and SrbMiner
Post by: Oleh.Hello on September 18, 2023, 07:00:32 PM
Hello.
Is it possible to mine on https://shifu.mrpandabear.org/ with SrbMiner?
Thanks


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: elmo40 on January 18, 2024, 05:43:26 AM
so... dead?


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Lind on January 30, 2024, 12:54:54 PM
so... dead?

MrPanda and surien are trying to rewrite node code, but they have a limited time only. No ETA or anything.

 If it is "relaunched, continued, restarted" it will be from a certain block according to J-T team member:

"It seems like some people are still mining away. You can go ahead and do that. If you keep mining consider yourself being in "Classic Pandanite" or whatever else just like in case of Ethereum. Once (if ever) Pandanite re-launches it will be the Pandanite and the old chain aka the one you people are still mining will be "Classic Pandanite" or whatever you want to call it. Just note that you are most likely wasting your resources on mining this "classic" chain with these nodes that are full of holes and vulnerabilities, which nobody seems to want to develop or maintain.

Peace out.

Edit: Re-launch will be at *he means from I think, snapshot based on this block* height 637437 just as in the above post
"


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: elmo40 on January 30, 2024, 01:56:13 PM
... and this helps what, exactly?


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Lind on February 14, 2024, 10:58:16 PM
... and this helps what, exactly?

Dunno you asked if dead, I answered what I know of. Dunno. Fetch a competent dev who fixes the node code if you want to help (your investment stuck in this project).


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Setvin on February 20, 2024, 06:25:05 PM
I dont see where anyone explained what the vulnerabilities were or what happened exactly. Anyone who can provide more details as far as the issues resulting in the delisting on xeggex?


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Lind on February 22, 2024, 12:05:38 PM
I dont see where anyone explained what the vulnerabilities were or what happened exactly. Anyone who can provide more details as far as the issues resulting in the delisting on xeggex?

Bad rollback logic /& node synch issues so network can become fragmented and consensus is not reached so chain becomes stuck\corrupted as I understand. not stable enough for real money involved, other chains are somewhat decentralized with a lot of nodes and sources to fetch a healthy chain from .... while on this coin there were only a handful as I understand and some of them crapped out very often


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Setvin on March 30, 2024, 07:19:00 PM
I dont see where anyone explained what the vulnerabilities were or what happened exactly. Anyone who can provide more details as far as the issues resulting in the delisting on xeggex?

Bad rollback logic /& node synch issues so network can become fragmented and consensus is not reached so chain becomes stuck\corrupted as I understand. not stable enough for real money involved, other chains are somewhat decentralized with a lot of nodes and sources to fetch a healthy chain from .... while on this coin there were only a handful as I understand and some of them crapped out very often

Wasn't it working fine for a while? I guess I dont understand why one day it suddenly wasnt viable


Title: Re: Bamboo: New crypto using ED25519 signing keys
Post by: Lind on May 15, 2024, 01:18:07 PM
I dont see where anyone explained what the vulnerabilities were or what happened exactly. Anyone who can provide more details as far as the issues resulting in the delisting on xeggex?

Bad rollback logic /& node synch issues so network can become fragmented and consensus is not reached so chain becomes stuck\corrupted as I understand. not stable enough for real money involved, other chains are somewhat decentralized with a lot of nodes and sources to fetch a healthy chain from .... while on this coin there were only a handful as I understand and some of them crapped out very often

Wasn't it working fine for a while? I guess I dont understand why one day it suddenly wasnt viable

I see it as: WlinkNet (xeggex team member) tampered with the code to be honest... it was intentional to retire & destroy Bamboo as exchange asset ; contract and their whole XPE was ready or had to long before and they stole from bamboo holders in this regard as they knew it prior
MikeO xeggex owner hoarded up 1-2 million bamboos very shady

BUT, not long before xpe goes down the drain like bamboo just look at its price 4 million MC and 15k 24h volume :P wonder about its replacement and a new cash grab