Skip to content

Commit

Permalink
Add integrity checking to researcher accrual snapshot registry
Browse files Browse the repository at this point in the history
This adds hashes to the registry of the researcher accrual,
and checks the hashes of the accrual snapshot files against
the registry to ensure integrity.
  • Loading branch information
jamescowens committed Jun 12, 2020
1 parent f1e130d commit 7ad0e9d
Show file tree
Hide file tree
Showing 7 changed files with 577 additions and 252 deletions.
347 changes: 174 additions & 173 deletions src/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -57,174 +57,175 @@ endif
.PHONY: FORCE
# gridcoin core #
GRIDCOIN_CORE_H = \
addrdb.h \
addrdb.h \
addrman.h \
alert.h \
appcache.h \
arith_uint256.h \
alert.h \
appcache.h \
arith_uint256.h \
attributes.h \
backup.h \
backup.h \
banman.h \
base58.h \
bignum.h \
block.h \
boinc.h \
checkpoints.h \
coincontrol.h \
compat.h \
compat/byteswap.h \
compat/endian.h \
contract/polls.h \
contract/rain.h \
crypter.h \
db.h \
base58.h \
bignum.h \
block.h \
boinc.h \
checkpoints.h \
coincontrol.h \
compat.h \
compat/byteswap.h \
compat/endian.h \
contract/polls.h \
contract/rain.h \
crypter.h \
db.h \
filehash.h \
fs.h \
fwd.h \
global_objects.hpp \
global_objects_noui.hpp \
gridcoin.h \
hash.h \
init.h \
kernel.h \
key.h \
keystore.h \
logging.h \
main.h \
miner.h \
mruset.h \
neuralnet/account.h \
neuralnet/accrual/computer.h \
neuralnet/accrual/newbie.h \
neuralnet/accrual/null.h \
neuralnet/accrual/research_age.h \
neuralnet/accrual/snapshot.h \
neuralnet/beacon.h \
neuralnet/claim.h \
neuralnet/contract/contract.h \
neuralnet/contract/handler.h \
neuralnet/contract/message.h \
neuralnet/contract/payload.h \
neuralnet/cpid.h \
neuralnet/magnitude.h \
neuralnet/project.h \
neuralnet/quorum.h \
neuralnet/researcher.h \
neuralnet/superblock.h \
neuralnet/tally.h \
netbase.h \
net.h \
pbkdf2.h \
prevector.h \
protocol.h \
fwd.h \
global_objects.hpp \
global_objects_noui.hpp \
gridcoin.h \
hash.h \
init.h \
kernel.h \
key.h \
keystore.h \
logging.h \
main.h \
miner.h \
mruset.h \
neuralnet/account.h \
neuralnet/accrual/computer.h \
neuralnet/accrual/newbie.h \
neuralnet/accrual/null.h \
neuralnet/accrual/research_age.h \
neuralnet/accrual/snapshot.h \
neuralnet/beacon.h \
neuralnet/claim.h \
neuralnet/contract/contract.h \
neuralnet/contract/handler.h \
neuralnet/contract/message.h \
neuralnet/contract/payload.h \
neuralnet/cpid.h \
neuralnet/magnitude.h \
neuralnet/project.h \
neuralnet/quorum.h \
neuralnet/researcher.h \
neuralnet/superblock.h \
neuralnet/tally.h \
netbase.h \
net.h \
pbkdf2.h \
prevector.h \
protocol.h \
reverselock.h \
rpcclient.h \
rpcprotocol.h \
rpcserver.h \
rpcclient.h \
rpcprotocol.h \
rpcserver.h \
scheduler.h \
scraper_net.h \
scraper/fwd.h \
scraper/http.h \
scraper/scraper.h \
script.h \
scrypt.h \
serialize.h \
span.h \
streams.h \
strlcpy.h \
support/allocators/secure.h \
support/allocators/zeroafterfree.h \
support/cleanse.h \
support/lockedpool.h \
sync.h \
threadsafety.h \
tinyformat.h \
txdb.h \
txdb-leveldb.h \
ui_interface.h \
uint256.h \
upgrade.h \
util/memory.h \
util/reverse_iterator.h \
util/strencodings.h \
util/threadnames.h \
util/time.h \
util.h \
version.h \
walletdb.h \
wallet.h
scraper_net.h \
scraper/fwd.h \
scraper/http.h \
scraper/scraper.h \
script.h \
scrypt.h \
serialize.h \
span.h \
streams.h \
strlcpy.h \
support/allocators/secure.h \
support/allocators/zeroafterfree.h \
support/cleanse.h \
support/lockedpool.h \
sync.h \
threadsafety.h \
tinyformat.h \
txdb.h \
txdb-leveldb.h \
ui_interface.h \
uint256.h \
upgrade.h \
util/memory.h \
util/reverse_iterator.h \
util/strencodings.h \
util/threadnames.h \
util/time.h \
util.h \
version.h \
walletdb.h \
wallet.h

GRIDCOIN_CORE_CPP = addrdb.cpp \
addrman.cpp \
alert.cpp \
appcache.cpp \
arith_uint256.cpp \
backup.cpp \
alert.cpp \
appcache.cpp \
arith_uint256.cpp \
backup.cpp \
banman.cpp \
block.cpp \
boinc.cpp \
checkpoints.cpp \
contract/polls.cpp \
contract/rain.cpp \
crypter.cpp \
db.cpp \
block.cpp \
boinc.cpp \
checkpoints.cpp \
contract/polls.cpp \
contract/rain.cpp \
crypter.cpp \
db.cpp \
fs.cpp \
gridcoin.cpp \
init.cpp \
kernel.cpp \
key.cpp \
keystore.cpp \
logging.cpp \
main.cpp \
miner.cpp \
neuralnet/beacon.cpp \
neuralnet/claim.cpp \
neuralnet/contract/contract.cpp \
neuralnet/contract/message.cpp \
neuralnet/cpid.cpp \
neuralnet/project.cpp \
neuralnet/quorum.cpp \
neuralnet/researcher.cpp \
neuralnet/superblock.cpp \
neuralnet/tally.cpp \
netbase.cpp \
net.cpp \
noui.cpp \
pbkdf2.cpp \
protocol.cpp \
contract/rpccontract.cpp \
rpcblockchain.cpp \
rpcclient.cpp \
rpcdump.cpp \
rpcmisc.cpp \
rpcmining.cpp \
rpcnet.cpp \
rpcprotocol.cpp \
rpcrawtransaction.cpp \
rpcserver.cpp \
rpcwallet.cpp \
rpcdataacq.cpp \
scraper_net.cpp \
scraper/http.cpp \
scraper/scraper.cpp \
script.cpp \
scrypt.cpp \
scrypt-arm.S \
scrypt-x86_64.S \
scrypt-x86.S \
gridcoin.cpp \
init.cpp \
kernel.cpp \
key.cpp \
keystore.cpp \
logging.cpp \
main.cpp \
miner.cpp \
neuralnet/beacon.cpp \
neuralnet/claim.cpp \
neuralnet/contract/contract.cpp \
neuralnet/contract/message.cpp \
neuralnet/cpid.cpp \
neuralnet/project.cpp \
neuralnet/quorum.cpp \
neuralnet/researcher.cpp \
neuralnet/superblock.cpp \
neuralnet/tally.cpp \
netbase.cpp \
net.cpp \
noui.cpp \
pbkdf2.cpp \
protocol.cpp \
contract/rpccontract.cpp \
rpcblockchain.cpp \
rpcclient.cpp \
rpcdump.cpp \
rpcmisc.cpp \
rpcmining.cpp \
rpcnet.cpp \
rpcprotocol.cpp \
rpcrawtransaction.cpp \
rpcserver.cpp \
rpcwallet.cpp \
rpcdataacq.cpp \
scraper_net.cpp \
scraper/http.cpp \
scraper/scraper.cpp \
script.cpp \
scrypt.cpp \
scrypt-arm.S \
scrypt-x86_64.S \
scrypt-x86.S \
scheduler.cpp \
support/cleanse.cpp \
support/lockedpool.cpp \
sync.cpp \
txdb-leveldb.cpp \
uint256.cpp \
upgrade.cpp \
util/strencodings.cpp \
util/threadnames.cpp \
util/time.cpp \
util.cpp \
version.cpp \
wallet.cpp \
walletdb.cpp
support/cleanse.cpp \
support/lockedpool.cpp \
sync.cpp \
txdb-leveldb.cpp \
uint256.cpp \
upgrade.cpp \
util/strencodings.cpp \
util/threadnames.cpp \
util/time.cpp \
util.cpp \
version.cpp \
wallet.cpp \
walletdb.cpp


obj/build.h: FORCE
Expand Down Expand Up @@ -252,23 +253,23 @@ nodist_libgridcoin_util_a_SOURCES = $(srcdir)/obj/build.h
crypto_libgridcoin_crypto_base_a_CPPFLAGS = $(AM_CPPFLAGS)
crypto_libgridcoin_crypto_base_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS)
crypto_libgridcoin_crypto_base_a_SOURCES = \
crypto/aes.cpp \
crypto/aes.h \
crypto/chacha20.h \
crypto/chacha20.cpp \
crypto/common.h \
crypto/hmac_sha256.cpp \
crypto/hmac_sha256.h \
crypto/hmac_sha512.cpp \
crypto/hmac_sha512.h \
crypto/ripemd160.cpp \
crypto/ripemd160.h \
crypto/sha1.cpp \
crypto/sha1.h \
crypto/sha256.cpp \
crypto/sha256.h \
crypto/sha512.cpp \
crypto/sha512.h
crypto/aes.cpp \
crypto/aes.h \
crypto/chacha20.h \
crypto/chacha20.cpp \
crypto/common.h \
crypto/hmac_sha256.cpp \
crypto/hmac_sha256.h \
crypto/hmac_sha512.cpp \
crypto/hmac_sha512.h \
crypto/ripemd160.cpp \
crypto/ripemd160.h \
crypto/sha1.cpp \
crypto/sha1.h \
crypto/sha256.cpp \
crypto/sha256.h \
crypto/sha512.cpp \
crypto/sha512.h

if USE_ASM
crypto_libgridcoin_crypto_base_a_SOURCES += crypto/sha256_sse4.cpp
Expand Down
Loading

0 comments on commit 7ad0e9d

Please sign in to comment.