Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won

  • Feedback


chelahmy last won the day on February 28

chelahmy had the most liked content!

Community Reputation

13 Good

About chelahmy

  • Rank
    Junior Denarian

Personal Information

  • D Address
  1. So I decided to fork the PHP repo https://github.com/chelahmy/BitcoinECDSA.php Enjoy!!!!
  2. Actually Denarius only made a simple change in the original Bitcoin code by replacing const string strMessageMagic = "Bitcoin Signed Message:\n"; with const string strMessageMagic = "Denarius Signed Message:\n"; In fact, the verification process ignores address prefix. Thus, any Bitcoin or Bitcoin-based Altcoin can also use the same code to verify its signed messages by just setting the proper strMessageMagic. Anyway, I'll maintain my GitHub repo as dnrverify and keep highlighting Denarius. Another thing, both the PHP repos above can actually verify Denarius signed messages. However, they hard-coded the strMessageMagic, and just replacing it with "Denarius" simply doesn't work because of the following original Bitcoin code CDataStream ss(SER_GETHASH, 0); ss << strMessageMagic; ss << strMessage; where each time a string is appended to the ss the internal data structure keeps it as string length + string. Thus, the final data will be strMessageMagic length + strMessageMagic + strMessage length + strMessage. Both the PHP repos above implement something like the following $messageHash = hash('sha256', hash('sha256', "\x18Bitcoin Signed Message:\n" . numToVarIntString(strlen($message)).$message, true), true); The "\x18" is actually the length of "Bitcoin Signed Message:\n" which can be calculated with the following function numToVarIntString(strlen("Bitcoin Signed Message:\n")) "Denarius Signed Message:\n" is just one byte longer and can be pasted as "\x19Denarius Signed Message:\n". Hence, the technique of that link https://crypto.stackexchange.com/a/18106 is valid for Denarius and Bitcoin-based Altcoins. However, the modular arithmetic technique in Bitcoin code is more efficient. I'm going to patch one of the PHP repo.
  3. I've extracted the code to verify signed messages and make a standalone library https://github.com/chelahmy/dnrverify/ My intention is to implement a signed message verification function in PHP. I've tried https://github.com/BitcoinPHP/BitcoinECDSA.php and https://github.com/scintill/php-bitcoin-signature-routines but both failed to verify Denarius signed messages. They used the technique from this link https://crypto.stackexchange.com/a/18106 which seems to be different from the one used in Denarius. I noticed modular arithmetic is applied in Denarius code. So, I just extract the signed-message verification code from Denarius and see if I can make a PHP version. Digital signature has wide applications which should be initiated by the cryptocurrency world. Every digital wallet has private keys which are ready to be used to digitally sign anything, other than just to sign spending transactions. The other side of the applications just need to verify the signed something without necessarily going through wallets.
  4. http://yiimp.eu/ was hacked! DNR stealer wallet: D9YR4pxP4KDfcgVPW3Vd1R9Sn6Tf1d3z32 (-40000)
  5. I found DNR at https://coinmarketcap.com/currencies/denarius-dnr/. Didn't know there was another https://coinmarketcap.com/currencies/denarius/ (DRS). "Denarius" on that list is not good. It was trending on Hacker News https://news.ycombinator.com/item?id=15196371
  6. Denarius is on http://deadcoins.com/ list.
  7. Yes, I can see it too. I believe that was a quick fix since @Carsen responded to it just before he release wallet v. Nice! A better UI/UX for newcomers should be either "On mainnet" or "On testnet" instead of a checkbox. Or, just show nothing when it is not on testnet. Most of the users will be non-developers so they will always want to be on the mainnet.
  8. A simple method is just set your wallet/daemon config to allow connections from other computers in your local network: rpcallowip=192.168.1.* Change 192.168.1.* to your local network ip address wildcard. Yours could be 192.168.0.*. Run ifconfig in terminal to see your local network ip. Or, ipconfig if you're on Windows. And point your miners to your wallet/daemon ip. But you will also open up a security hole in your wallet/daemon computer by setting rpcallowip=192.168.1.*.
  9. I was looking for a new coin to cpu-mine in https://coinmarketcap.com/ . It must have a good name like Mc Donald's, with value less than USD 1/coin, and not just a meme of BitCoin. It's okay if its code is based on BitCoin. It must also have a strong fundamental and must not solely speculative. And it's wallet must run on all OSes and Debian. I scanned the entire coinmarketcap.com's list and tested a few. Most of the coins in the list were speculative with bad names, at least according to me. Until I found Denarius. The genesis blocks of a million DNR may be a no-go for many miners who oppose developers rewards and ICOs. The miners tend to believe that without their mining nodes a coin is nothing. One thing that they do not know is that nodes evolve away from miners. All because of developers. The genesis blocks are okay for me because coins change hands. A coin needs transactions to survive. BitCoin thrives because of heavy transactions. I believe in the near future coin developers will create many apps that catalyze transactions without the need of mining node. And I believe that Denarius developers know that.
  10. The total number of posts in this thread is not yet 500! D6EB81Yqu5AGZtggcHjgHsEDujhinUGU3C
  11. It's a bug in the Debug window . It should be "On mainnet".
  12. Must not be "On testnet" because I did receive DNR from a faucet.
  13. Hi, I run ./Denarius without the -testnet option but the debug windows shows "On testnet" while the log shows port 33339 was used on all piers connections. Am I on testnet?
  • Create New...