user24717: For learning purposes, I want to create an alternative special-purpose blockchain. It would use a proof-of-work function that is different than the one in Bitcoin.
Short of forking bitcoin and going from there, where should I look into starting? 
The data that the blockchain would be storing are public keys.
Bitcoin wiki: https://en.bitcoin.it/wiki/Alternative_chain

user24749: What you're asking to do here is actually the definition of forking bitcoin.
Short of doing this yourself in code, there are services such as http://coincreator.net/ that will accomplish your goal. CoinCreator allows for you to pick your proof-of-work function from a set of predefined functions.
Good Luck!

user24601: The First step is to have your own genesis block. Use GenesisH0 or GenesisBlockZero to get Genesis Hash, Merkle Tree Root and Timestamp. 
Put the collected information above into "chainparams.cpp". Compile bitcoin source code and run "bitcoind -daemon". 
Now you should have the first block of your own blockchain.

24717: <p>For learning purposes, I want to create an alternative special-purpose blockchain. It would use a proof-of-work function that is different than the one in Bitcoin.</p>

<p>Short of forking bitcoin and going from there, where should I look into starting? </p>

<p>The data that the blockchain would be storing are public keys.</p>

<p>Bitcoin wiki: <a href="https://en.bitcoin.it/wiki/Alternative_chain" rel="nofollow">https://en.bitcoin.it/wiki/Alternative_chain</a></p>
 24749: <p>What you're asking to do here is actually the definition of forking bitcoin.
Short of doing this yourself in code, there are services such as <a href="http://coincreator.net/" rel="nofollow">http://coincreator.net/</a> that will accomplish your goal. CoinCreator allows for you to pick your proof-of-work function from a set of predefined functions.</p>

<p>Good Luck!</p>
 24601: <p>The First step is to have your own genesis block. Use <a href="https://github.com/lhartikk/GenesisH0" rel="nofollow">GenesisH0</a> or <a href="https://github.com/Gnaf/GenesisBlockZero" rel="nofollow">GenesisBlockZero</a> to get Genesis Hash, Merkle Tree Root and Timestamp. <br></p>

<p>Put the collected information above into "chainparams.cpp". Compile bitcoin source code and run "bitcoind -daemon". <br></p>

<p>Now you should have the first block of your own blockchain.</p>
