 |
February 23, 2016, 01:32:12 PM |
|
According to zebbra2014 request.
My analysis of SuperCoin. I do it for free (unless otherwise specified) for interesting(for me) coins. CTransaction::FetchInputs Good shrmcoin ProcessMessage Most similar NEBUCHADNEZZAR, diff=1055, codehash=f3be8440a92c00377ab4; Well, actually here a lot of changes related to anonymity mixer, there is nothing that looks suspicious for holders, however i cant say how its reliably for keeping anonymity, because i'm not specialist it that filed CMerkleTx::GetBlocksToMaturity Good shrmcoin SendMessages Good NEBUCHADNEZZAR CheckProofOfWork Good arch GetNextTargetRequired Most similar shrmcoin, diff=33, codehash=b7260b1f973355625d02; Manually inspected, Good CBlock::AcceptBlock Most similar NEBUCHADNEZZAR, diff=31, codehash=7c584ef3f56569f267e1; Manually inspected, Good CBlock::SignBlock Good shrmcoin GetTransaction Good shrmcoin ComputeMinStake Good arch CTransaction::DisconnectInputs Good blackcoin arch ProcessBlock Most similar shrmcoin, diff=2, codehash=755d39d060ed2fb9c0b8; Manually inspected, Good CBlockIndex::IsSuperMajority Good dash blackcoin arch CTransaction::GetValueIn Good blackcoin arch ComputeMinWork Good arch CTransaction::CheckTransaction Good blackcoin arch CWalletTx::AcceptWalletTransaction Good blackcoin arch CTransaction::ConnectInputs Most similar arch, diff=1, codehash=8d862dbc639fa2ceaa57; Manually inspected, Good CBlock::CheckBlock Most similar shrmcoin, diff=6, codehash=e953a30a7bd9fcd67862; Manually inspected, Good CMerkleTx::AcceptToMemoryPool Good shrmcoin CBlock::SetBestChainInner Good blackcoin arch CBlockIndex::GetBlockTrust Good blackcoin arch ProcessMessages Good NEBUCHADNEZZAR CBlock::CheckBlockSignature Good arch CTxOut CTransaction::GetOutputFor Good blackcoin arch CBlock::ConnectBlock Most similar shrmcoin, diff=6, codehash=dc163ad32602d21c3d77; Manually inspected, Good Not found funcs ['AcceptToMemoryPool', 'GetProofOfStakeLimit'] GetProofOfWorkReward Manually checked Good GetProofOfStakeReward Manually checked Good
What is this? And how to read this info? As you know, most of the coins have very similar code bases. But any little bug could potentialy damage the whole blockchain. To avoid this, people started to check the code both manually and automatically. As I know ocminer automatically checks code for already known bugs, so his checks couldn't find new bugs. Earlz checks code manually, but he also could miss something, because codebase is very huge. I chose different way. I wrote the script which compare code in one coin with code in other already inspected coins. So if you see something like "Good blackcoin arch " it means that i already inspected this code before in blackcoin's and arch's source, and I think that it's safe. When my script finds new code it asks me to check it manually and tells me which codebases is most similar, so 'CBlock::ConnectBlock Most similar blackcoin, diff=5, codehash=1a0a6fb0d9bc6aefff4e' means that most similar code of CBlock::ConnectBlock have seen in blackcoin and there is 5 places where something was changed. Currently i check only most important functions in main.cpp.
|