Dogecoin: A Brief Overview & Survey

A ridiculous paper written by a ridiculous PhD student

Ian Young
Ian Young
Dec 31, 2018 · 18 min read

Note: Some formatting has been lost in the posting to Medium. The full text is also available from SSRN.

Abstract

The Dogecoin cryptocurrency has experienced a wide range of success and exposure. In this paper, we survey the origins, inner workings, and potential issues with “the Internet cryptocurrency”.

What is Dogecoin?

Although Bitcoin may be the cryptocurrency that most people know about, there are thousands of alternative currencies, or “Altcoins” (Investopedia, 2018). Out of the many Altcoins, one that has stood out to many users is Dogecoin, if for no reason other than its sheer peculiarity. Created in 2013 by Billy Markus of Portland, Oregon and Jackson Palmer of Sydney, Australia (Chohan, 2017), Dogecoin (often abbreviated as “Doge” or “Д), is yet another cryptocurrency with seemingly nothing differentiating it from any other cryptocurrency but it’s cultural relevance. The Dogecoin homepage describes the cryptocurrency thusly:

“Dogecoin is a decentralized, peer-to-peer digital currency that enables you to easily send money online. Think of it as “the internet currency.” (Dogecoin Homepage, 2018)

Taking a closer look at this definition, it is fairly innocuous, and, unfortunately, doesn’t actually describe much about the cryptocurrency itself. Decentralization and peer-to-peer operation is a core fundamental of how nearly every cryptocurrency works. In order to understand more about Dogecoin, we must examine how it came into existence, and how it works. Let’s start with how Dogecoin came to be.

What is “Doge”?

To understand the cultural relevance of Dogecoin, you first have to know about Doge, which requires an explanation in itself. This is Doge.

(Sato, 2010)

Yes, it’s a dog. A Shiba Inu named Kabosu rescued by a Japanese kindergarten teacher named Atsuko Sato, who posted the pictures to her blog in 2010. This dog has managed to become what’s called an “Internet Meme”. A title which requires yet another explanation, unfortunately straying from the entire focus of this survey, but necessary in understanding why this is such a bizarre cryptocurrency.

Memes

The term “Meme” (pronounced “MEEM”) was originally coined by Richard Dawkins in his 1976 book “The Selfish Gene”. In it, Dawkins describes Memes as “a unit of cultural transmission”. Dawkins, a biologist primarily focused on evolution sought to describe the methods in which ideas were passed through cultures in the same way that genes were. Thus, the term “meme” was born.

However, in the 42 years since Dawkins first defined the term, the Internet has become a part of our society, and it has rapidly increased the transmission of these ideas.

Internet Memes

Originally proposed by Mike Godwin of WIRED magazine in October of 1994, Internet Memes are more of jokes than they are ideas. Richard Dawkins has since refuted this idea as being a deviation from his original proposal of how memes worked due to the deliberate alteration of these ideas by humans, rather than organic evolution in the fashion of biological genes (Solon, 2013). In a 2013 paper written by Michele Coscia and published to the International Conference of Weblogs and Social Media, Internet Memes were described even further from Dawkins original concept due to the traceability from their propagation through social networks and various formats. This is how we can trace the Doge meme from the Shiba Inu rescued by a Japanese kindergarten teacher to it’s ubiquitous Internet presence in popular culture.

Dogecoin In Society

Dogecoin has found a very unique, and somewhat niche, place in society as “The Internet Currency” (Dogecoin Homepage, 2018). The cultural prevalence of Doge as an Internet meme helped drive it’s value, which is currently at $0.0024 USD per coin. However, with over 100 billion coins in circulation, this gives Dogecoin a market cap of nearly $300 billion USD, which is actually half of what it was a month ago (CoinMarketCap, 2018). While Bitcoin has found usage in almost every facet of commerce, Dogecoin has found usage almost exclusively in crowdfunding, largely in part due to it’s low per-coin value. Because of this, the community of Dogecoin users have accomplished some rather strange feats, from sponsoring a National Association for Stock Car Auto Racing (NASCAR) driver (Frum, 2014), to sending the Jamaican bobsledding team to the 2014 Winter Olympics in Sochi, Russia (Abbruzzese, 2014) as an homage to the 1993 movie Cool Runnings.

Now, this isn’t a sociology paper or a business survey, so we must get back on track. Let’s talk about how Dogecoin actually works, and what makes it unique beyond its cultural reference.

How Does Dogecoin Work?

Based upon the Scrypt algorithm, Dogecoin is derived from the Litecoin cryptocurrency, which is a fork of Bitcoin itself. The Scrypt (pronounced “ess-crypt” (Percival via Twitter, 2016)) algorithm is fundamentally different than the Secure Hashing Algorithm (SHA) used by Bitcoin, in that it is considered to be a “memory-hard” algorithm (Percival, 2009). This means that the Scrypt algorithm derives its keys from large pseudo-random strings that are generated and then kept in memory. By generating strings ahead of time, the computational requirements of each key is reduced, but the discrete logarithm problem of reversing the keys is exponentially increased due to the memory overhead required to create the key in the first place. This memory requirement was completely intentional in an effort to prevent the usage of Application Specific Integrated Circuits (ASICs) and other low-cost systems as attack vectors.

The concept of a memory-hard algorithm is not a new one, though, and was actually first described by Martin Hellman (Yes, the same one who worked with Whitfield Diffie on the Diffie-Hellman Key Exchange) in his 1980 paper “A cryptanalytic time-memory trade-off”, published to the IEEE Transactions on Information Theory. In this paper, Hellman outlines a concept of using time-memory trade-offs to increase the efficiency of an algorithm, while also increasing the difficulty of cryptanalysis, by storing the key dictionary as block chains within memory.

In her 1982 book “Cryptography and Data Security” author Dorothy E. Denning attributed a method of enhancing the time-memory trade-off to the usage of “Distinguished Points”, which she attributed to Ronald Rivest (of RSA infamy). This enhancement reduced the number of lookups required, while still maintaining the principal of the time-memory trade-off.

Throughout the years, the concept of time-memory trade-off has continued to evolve and improve. In the information security field, the most ubiquitous implementation of this approach has been through the usage of Rainbow Tables, which were invented by Philippe Oechslin and described in his 2003 paper “Making a Faster Cryptanalytic Time-Memory Trade-Off” published to the Annual International Cryptology Conference proceeding “Advances in Cryptology”. A Rainbow Table is simply a lookup table of precomputed hashes used in password cracking. While these tables can drastically decrease the amount of time required to perform a brute-force attack on a password, they can also consume vast amounts of storage. This is the very essence of the time-memory trade-off

Scrypt

During the 2009 BSDCan conference in Ottawa, Canada, Colin Percival of the Tarsnap online backup service presented his paper “Stronger Key Derivation via Sequential Memory-Hard Functions” which outlined the basis for the Scrypt key derivation algorithm. Scrypt took the concept of the time-memory trade-off and ran with it to the point of making the algorithm specifically hardened against custom hardware attacks (ASICs). In his paper, Percival outlined hardware costs of multiple key derivation algorithms against SRAM and DRAM prices at the time. Again, the entire purpose of Percival’s design was to combat the ability for an attacker to build custom hardware to perform successful cryptanalysis. The basis of Percival’s algorithm is as follows:

scrypt(P, S, N, r, p, dkLen) = MFcryptHMAC SHA256,SMixr(P, S, N, p, dkLen)

This implies that the Scrypt algorithm is equal to the MFcrypt algorithm using a SHA256 hash message authentication code, with the SMix algorithm as a memory-hard function. There are also a couple of inputs identified within these functions, and the best explanation for these is within RFC7914, which was the official ratification of Scrypt by the IEEE. The RFC reads as follows:

6. The scrypt Algorithm

The PBKDF2-HMAC-SHA-256 function used below denotes the PBKDF2

algorithm [RFC2898] used with HMAC-SHA-256 [RFC6234] as the

Pseudorandom Function (PRF). The HMAC-SHA-256 function generates

32-octet outputs.

Algorithm scrypt

Input:

P: Passphrase, an octet string.

S: Salt, an octet string.

N: CPU/Memory cost parameter, must be larger than 1, a power of 2, and less than 2^(128 * r / 8).

r: Block size parameter.

p: Parallelization parameter, a positive integer less than or equal to ((2³²-1) * hLen) / MFLen where hLen is 32 and MFlen is 128 * r.

dkLen: Intended output length in octets of the derived key; a positive integer less than or equal to (2³² — 1) * hLen where hLen is 32.

Output:

DK: Derived key, of length dkLen octets.

Steps:

1. Initialize an array B consisting of p blocks of 128 * r octets each: B[0] || B[1] || … || B[p — 1] = PBKDF2-HMAC-SHA256 (P, S, 1, p * 128 * r)

2. for i = 0 to p — 1 do B[i] = scryptROMix (r, B[i], N) end for

3. DK = PBKDF2-HMAC-SHA256 (P, B[0] || B[1] || … || B[p — 1], 1, dkLen)

What is interesting here are the steps. The Scrypt algorithm actually calls several other functions as a part of its key derivation process. In a paper by Biryukov, Dinu, & Khovratovich in the IEEE’s 2016 European Symposium on Security and Privacy, they described Scrypt’s nested/recursive functionality as follows: “scrypt calls SMix, which calls ROMix, which calls BlockMix, which calls Salsa20/8 etc.”

Now, while we won’t get into what each of these algorithms are, the lowest level algorithm is essentially at the heart of Scrypt’s time-memory trade-off functionality. Salsa20/8 is a stream cipher which runs a full 8 rounds to generate a 256-bit hash (Bernstein, 2008). Starting here, we can begin to see how Scrypt manages to consume so much memory and harden itself against hardware-based attacks.

Although Scrypt was originally created for the Tarsnap online backup service as an alternative key derivation function, the algorithm was eventually adopted by the cryptocurrency community for it’s very design purpose: combating the cryptocurrency miners.

Enter: The Scrypt ASIC

Since its inception, many people have mined Dogecoin for its simplicity over other Scrypt-based cryptocurrencies. Mainly that the block time is only 60 seconds, whereas Litecoin, another Scrypt cryptocurrency is 180 seconds (Chohan, 2017). There have been incidents of students using university resources to mine the cryptocurrency at Harvard (Hutchinson, 2014) and Imperial College London (Hern, 2014). However, there were no commercially available ASICs to easily mine the Scrypt algorithm until recently.

In 2018, a Brooklyn, New York based company by the name of FutureBit unveiled the MoonLander. Assumedly a nod to the phrase “to the moon” commonly used by the Dogecoin community (Eordogh, 2014). The Futurebit MoonLander featured a new compact Scrypt ASIC, with cores presumably developed by Alpha Technologies (drafted a prototyping design for Scrypt ASICs in 2013), or Bitmain (produced the AntMiner L3, aimed for large scale mining operations). KnCMiner, another company who showed promise in delivering Scrypt ASICs filed for bankruptcy in 2016 (Higgins, 2016). The MoonLander is unique in that it is powered by a single USB port, and is priced at under $100, making it an affordable way to mine Scrypt blocks.

The current generation of FutureBit’s hardware, the MoonLander 2, has a benchmark of 3–5 MH/s (Million Hashes per Second). By contrast, a NVidia GeForce GTX 1080, considered to be a high performer in the cryptomining arena (Altavilla, 2017), was only able to generate 30 KH/s (Thousand Hashes per Second) in personal tests (Although, claims have been made of 895 KH/s (Bitcoin Insider, 2017), I was never able to get close to that with my system consisting of 2 GTX 1080’s.) This increase in performance clearly indicates a shift in the capabilities of mining for Scrypt-based cryptocurrencies.

With the advent of Scrypt ASICs the cryptocurrency mining playfield has been metaphorically leveled. This advance in the field makes the comparison between Bitcoin and Scrypt-based cryptocurrencies a bit more interesting.

How Does Dogecoin Compare To Bitcoin?

Before comparing Dogecoin to Bitcoin, we first have to lay out a brief explanation of how Bitcoin works to better understand just how different it is. Let’s start with the original 2008 paper by Satoshi Nakamoto that outlined the Bitcoin system.

This is the transactional model outlined by Nakamoto for the Bitcoin system. A model which we still use, and is still applicable to multiple other cryptocurrencies.

(Nakamoto, 2008)

Bitcoin blocks (or “coins”) are defined as “a chain of digital signatures.” These transactions are then combined into blocks, where a nonce value is computed to match a value for the block, and serve as a chain of custody for that coin.

Beyond this, the primary difference between Bitcoin and Dogecoin is it’s hashing algorithm. In order to make this comparison accurate, we will include Litecoin, which serves as the basis which Dogecoin is built upon.

Bitcoin vs. Litecoin vs. Dogecoin

As can be seen in the table above, the Dogecoin system is intrinsically simpler in it’s computational time, entropy, and valuation. This has helped fuel the cryptocurrencies usage in low-value, high-volume formats like crowdfunding and tipping.

Issues With Dogecoin

Although the cryptocurrency was initially created as a joke, the continued usage and growth of the blockchain deems we examine the protocol for any issues or improvements.

Limited Exchanges

One of the first and foremost issues with Dogecoin has been it’s availability. Bitcoin and other currencies have thrived because users without the technical knowledge or capabilities to mine for their own coins have been able to trade currencies at exchanges. This functions much in the same way that the stock market does. While the solution to this is not technical in nature, it does pose a difficulty when trying to use Dogecoin in any capacity other than the already mentioned crowdfunding or tipping scenarios where the recipient has explicitly specified a Dogecoin address.

However, recent news of Coinbase lifting some of the restrictions on listing new assets has given new hope to the prospect of easily trading Dogecoin with the other big cryptocurrencies.

Today we’re announcing a new process that will allow us to rapidly list most digital assets that are compliant with local law, by satisfying listing requests in a jurisdiction-by-jurisdiction manner. In practice, this means some new assets listed on our platform may only be available to customers in select jurisdictions for a period of time. (Coinbase, 2018)

Coinbase being one of the largest cryptocurrency exchanges, this news spread rapidly throughout the Dogecoin community, and in an October 2018 interview with Ross Nicoll of the Dogecoin project, it was confirmed that they were already working on a submission.

Implicit Escrow

In a 2018 paper by researchers at Aalto University and NEC Laboratories highlighted an issue with cryptocurrencies as a whole, which also applies to Dogecoin. In their paper they identify an issue regarding fairness with cryptocurrency where users may exchange currency with a malicious party that manipulates the transaction, and keeps the currency without exchanging goods.

An option that they described involved a timeliness implementation into the protocol that would essentially require both parties to agree on the transaction. However, this does not truly address the issue where someone may manipulate a transaction. The most likely way of solving this issue is through the implementation of the Segregated Witness functionality, which we will get to in more depth shortly.

Cryptographic Malleability

Scrypt in itself is seemingly impervious to cryptographic malleability, and this soundness has been part of it’s entire reason for existence. However, as mentioned earlier, the Scrypt algorithm uses the SHA-256 hash in it’s process, which is a shared quality of Bitcoin. In a 2014 presentation at the BlackHat security conference, security researchers Daniel Chechik and Ben Hayack demonstrated a method of mutating a transaction ID to forge a transaction and effectively steal coins. This malleability was later addressed through the implementation of the Segregated Witness design. Segregated Witness (often simplified as SegWit) implements a second hash at the end of the block to serve as secondary validity check for a transaction. This second hash is considered to be the “witness” of the transaction, and serves to prevent the malleability as demonstrated by security researchers.

Segregated Witness is what is known as a “soft fork” of the protocol. This means that new transactions including the witness hash can be derived from older transactions. This, in turn, creates a gradual shift in the transactions as more people adopt the new standard, without disrupting the current ecosystem. However, this new functionality has been hailed to be many things that it is not, including a scaling of the protocol. While the Segregated Witness increased the block size of Bitcoin, scaling of the protocol was not the primary motivation for this change.

In 2017, Litecoin implemented Segregated Witness into its structure (three months ahead of Bitcoin), and as of this writing, 75% of all blocks within the Litecoin blockchain are using the Segregated Witness hash. Given that Dogecoin is based upon Litecoin, this gives a great potential for implementing Segregated Witness in the same manner.

What makes these issues exceedingly interesting is the current state of development of the project. As of this writing, the last consistent activity in the master branch of the main GitHub repository is from October of 2015. For all intents and purposes, the development of Dogecoin project has stalled. This gives us a unique opportunity to examine this project while it isn’t in a constant state of flux. Which is something that we don’t often get with many open source projects. Therefore, let’s look at the most obvious improvement to the protocol.

Solution: Segregated Witness

All three of the issues mentioned here can be mitigated, if not remediated, through the implementation of the Segregated Witness functionality. Segregated Witness was first described by Eric Lombrozo, Johnson Lau, Pieter Wuille of the Bitcoin development team in the Bitcoin Implementation Proposal 141 as follows:

This BIP defines a new structure called a “witness” that is committed to blocks separately from the transaction merkle tree. This structure contains data required to check transaction validity but not required to determine transaction effects. In particular, scripts and signatures are moved into this new structure.

In order to easily explain how the Segregated Witness functionality works, the following diagram from Medium’s David Harding perfectly depicts the signature decoupling.

Although Dogecoin may have a low value, and is typically not used for large scale transactions, it is an extremely high volume currency. Because of this, the separation of signatures in the block would help speed up the platform as a whole. Ironically, this was a secondary benefit of the Segregated Witness proposal. However, for most Dogecoin users, transactions are not very large to begin with.

Although not a complete working model, the following code describes the basic implementation of the Segregated Witness functionality within the Dogecoin cryptocurrency. This is all C++ code, which is the primary language Dogecoin is written in.

src/consensus/params.h::params

static const int WITNESS_SCALE_FACTOR = 4;

static const size_t MIN_TRANSACTION_WEIGHT = WITNESS_SCALE_FACTOR * 60; // 60 is the lower bound for the size of a valid serialized CTransaction

static const size_t MIN_SERIALIZABLE_TRANSACTION_WEIGHT = WITNESS_SCALE_FACTOR * 10; // 10 is the lower bound for the size of a serialized CTransaction

src/consensus/merkle.cpp

uint256 BlockWitnessMerkleRoot(const CBlock& block, bool* mutated)

{

std::vector<uint256> leaves;

leaves.resize(block.vtx.size());

leaves[0].SetNull(); // The witness hash of the coinbase is 0.

for (size_t s = 1; s < block.vtx.size(); s++) {

leaves[s] = block.vtx[s]->GetWitnessHash();

}

return ComputeMerkleRoot(std::move(leaves), mutated);

}

src/chainparams.cpp::CMainParams

// Deployment of SegWit (BIP141, BIP143, and BIP147)

consensus.vDeployments[Consensus::SEGWIT].bit = 1;

consensus.vDeployments[Consensus::SEGWIT].nStartTime = 1479168000; // November 15th, 2016.

consensus.vDeployments[Consensus::SEGWIT].nTimeout = 1510704000; // November 15th, 2017.

Again, while this may not be a complete working model, it shows the basic implementation of the Segregated Witness as a new parameter within the consensus of the transaction, a method for generating the new witness hashes, and the identification of these hashes within the blockchain.

Conclusion

Though Dogecoin may not be one of the big players in the Cryptocurrency market, its design and usage have made it an intriguing ecosystem. Although its pedigree may stem from the Bitcoin lineage, the divergence of Litecoin through the utilization of the Scrypt algorithm, passed along to Dogecoin, has made it a unique system. Entropy plays an important role in many cryptocurrency ecosystems, by limiting the number of coins that can be mined, and creating an increasing difficulty to mine the next coin. Dogecoin has forgone this restriction, for whatever reason, allowing the cryptocurrency to have a pool with more coins than many other ecosystems. While this has reduced the time and effort required to mine each coin, it has created a blockchain that is currently 25GB in size (BitInfoCharts, 2018). This size pales in comparison to Bitcoin’s 500GB blockchain (BitInfoCharts, 2018), but still poses a potential issue.

Even though the Scrypt algorithm may seem impervious to cryptographic malleability and the attacks which Bitcoin itself has fallen victim to, the very design of the blockchain is still subject to the same inherent issues. The issues which have been described within this paper of limited exchanges, implicit escrow, and cryptographic malleability can all be mitigated through the implementation of the Segregated Witness functionality. However, the true benefit of this would be to speed up the entire blockchain by segmenting the signature portion of each block, and adding the second hash to reduce the length at which chain of custody has to be verified for a transaction.

References

Chohan, Usman W., A History of Dogecoin (December 20, 2017). Discussion Series: Notes on the 21st Century. Available at SSRN: https://ssrn.com/abstract=3091219 or http://dx.doi.org/10.2139/ssrn.3091219

Altcoin. (2018, July 05). Investopedia. Retrieved from https://www.investopedia.com/terms/a/altcoin.asp

Dogecoin. (2018). Retrieved from https://dogecoin.com/

Know Your Meme — Doge. (2018). Retrieved from https://knowyourmeme.com/memes/doge

Frum, L. (2014, April 24). Reddit, Dogecoin support NASCAR racer at Talladega. Retrieved from https://edition.cnn.com/2014/04/24/tech/web/nascar-dogecoin-talladega/

Abbruzzese, J. (2014, January 20). Dogecoins Power Jamaican Bobsled Team to Sochi Olympics. Retrieved from https://mashable.com/2014/01/20/dogecoins-amaica-bobsled-team/

Dogecoin Market Cap (DOGE). (2018). Retrieved from https://coinmarketcap.com/currencies/dogecoin/

Scrypt Pronunciation (2016, May 22). Colin Percival via Twitter. Retrieved from https://twitter.com/cperciva/status/734613598383841281

Sato, A. (2010, February 13). Taking a walk with Kabosu-chan (Translated). Retrieved from https://kabosu112.exblog.jp/9944144/

Dawkins, R. (1976). Chapter 11: Memes. In ‘The Selfish Gene’. Oxford University Press.

Godwin, M. (1994, October 01). Meme, Counter-meme. Retrieved from https://www.wired.com/1994/10/godwin-if-2/

Solon, O. (2013, June 20). Richard Dawkins on the internet’s hijacking of the word ‘meme’. Retrieved from https://www.wired.co.uk/article/richard-dawkins-memes

Coscia, M. (2013, April). Competition and Success in the Meme Pool: A Case Study on Quickmeme.com. International Conference of Weblogs and Social Media.

Hellman, M. (1980). A cryptanalytic time-memory trade-off. IEEE Transactions on Information Theory, 26(4), 401–406. doi:10.1109/tit.1980.1056220

Dorothy E. Denning. Cryptography and Data Security, p.100. Addison-Wesley, 1982.

Oechslin P. (2003) Making a Faster Cryptanalytic Time-Memory Trade-Off. In: Boneh D. (eds) Advances in Cryptology — CRYPTO 2003. CRYPTO 2003. Lecture Notes in Computer Science, vol 2729. Springer, Berlin, Heidelberg

Percival, C. (2009). Stronger key derivation via sequential memory-hard functions. Retrieved from https://www.tarsnap.com/scrypt/scrypt.pdf

Percival, C., & Josefsson, S. (2016, August). The scrypt Password-Based Key Derivation Function. Retrieved from https://tools.ietf.org/html/rfc7914

Biryukov, A., Dinu, D., & Khovratovich, D. (2016). Argon2: New Generation of Memory-Hard Functions for Password Hashing and Other Applications. 2016 IEEE European Symposium on Security and Privacy (EuroS&P). doi:10.1109/eurosp.2016.31

Bernstein, D. J. (2008). The Salsa20 Family of Stream Ciphers. Lecture Notes in Computer Science New Stream Cipher Designs, 4986, 84–97. doi:10.1007/978–3–540–68351–3_8

Hutchinson, L., & UTC. (2014, February 21). Harvard supercomputing cluster hijacked to produce dumb cryptocurrency. Retrieved from https://arstechnica.com/tech-policy/2014/02/harvard-supercomputing-cluster-hijacked-to-produce-alt-cryptocurrency/

Hern, A. (2014, March 04). Student uses university computers to mine Dogecoin. Retrieved from https://www.theguardian.com/technology/2014/mar/04/dogecoin-bitcoin-imperial-college-student-mine

FutureBit. (2018). Retrieved from https://www.futurebit.io/

Alpha Technologies (2013) Scrypt ASIC Prototyping Preliminary Design Document. Retrievedfrom https://www.alpha-t.net/wp-content/uploads/2013/12/Scrypt_ASIC_Prototyping_Design_Document.pdf

Bitmain. (2018). Retrieved from https://www.bitmain.com/

Eordogh, F. (2014, May 15). Dogecoin Is Going to the Moon, Literally. Retrieved from https://motherboard.vice.com/en_us/article/kbzbxx/dogecoin-is-going-to-the-moon-for-real

Higgins, S. (2016, July 05). Bitcoin Mining Firm KnCMiner Declares Bankruptcy. Retrieved from https://www.coindesk.com/kncminer-declares-bankruptcy-cites-upcoming-bitcoin-subsidy-halving

Altavilla, D. (2017, June 30). These Are The Best GPUs For Ethereum Crypto-Mining. Retrieved from https://www.forbes.com/sites/davealtavilla/2017/06/30/these-are-the-best-gpus-for-ethereum-crypto-mining/#4192f2a22675

Anonymous. [Bitcoin Insider] (2017, July 22). Nvidia GeForce GTX 1080 Mining Performance Review. Retrieved from https://www.bitcoininsider.org/article/3261/nvidia-geforce-gtx-1080-mining-performance-review

Nakamoto, S. (2008). Bitcoin: A Peer-to-Peer Electronic cash system. https://doi.org/10.1007/s10838-008-9062-0

Black Duck Open Hub (2018). Dogecoin on Black Duck Open Hub. Retrieved from https://www.openhub.net/p/dogecoin

Dogecoin Source Code. (2018, January 21). Github. Retrieved from https://github.com/dogecoin/dogecoin

Coinbase. (2018, September 25). Coinbase’s New Asset Listing Process — The Coinbase Blog. Retrieved from https://blog.coinbase.com/new-asset-listing-process-a83ef296a0f3

Dogecoin [DOGE] Interview: Core Dev Ross Nicoll Says “Huge Step Forward” Made on Doge/Ethereum Bridge (Exclusive). (2018, October 12). Retrieved from https://blokt.com/news/dogecoin-doge-interview-core-dev-ross-nicoll-says-huge-step-forward-made-on-doge-ethereum-bridge-exclusive

Chechik, D., & Hayak, B. (2015, March 18). Bitcoin Transaction Malleability Theory in Practice. Retrieved from https://www.youtube.com/watch?v=bmxu3r_CUKE or https://www.blackhat.com/docs/us-14/materials/us-14-Chechik-Bitcoin-Transaction-Malleability-Theory-In-Practice.pdf

Alwen, J., Chen, B., Pietrzak, K., Reyzin, L., & Tessaro, S. (2017). Scrypt Is Maximally Memory-Hard. Lecture Notes in Computer Science Advances in Cryptology — EUROCRYPT 2017, 33–62. doi:10.1007/978–3–319–56617–7_2

Liu, J., Li, W., Karame, G. O., & Asokan, N. (2018). Toward fairness of cryptocurrency payments. IEEE Security and Privacy, 16(3), 81–89. doi:10.1109/MSP.2018.2701163

Lombrozo, E., Lau J., Wuille P. (2016, January 08) Bitcoin Implementation Proposal 141 — Segregated Witness (Consensus layer). Retrieved from https://github.com/bitcoin/bips/blob/master/bip-0141.mediawiki

van Wirdum, A. (2015). Segregated Witness: How a Clever Hack Could Significantly Increase Bitcoin’s Potential. Bitcoin Magazine. Retrieved from https://bitcoinmagazine.com/articles/segregated-witness-part-how-a-clever-hack-could-significantly-increase-bitcoin-s-potential-1450553618/

Wright, Craig S, The Illusion of Scale in Segregated Witness (June 27, 2017). SSRN. http://dx.doi.org/10.2139/ssrn.2993315

Dale, B. (2017, May 05). Can I Get a (Segregated) Witness? Coinbase Adopts Litecoin. Retrieved from https://observer.com/2017/05/coinbase-litecoin-bitcoin-segregated-witness/

Is Segregated Witness Active? Yes! :). (2018). Retrieved from http://www.litecoinblockhalf.com/segwit.php

Khatwani, S. (2018, October 06). Litecoin Cryptocurrency: A Complete Guide for Absolute Beginners. Retrieved from https://coinsutra.com/litecoin-cryptocurrency/

Dexx., Harding, D. (2017, October 19). Debunking Three Misconceptions about Segregated Witness. Retrieved from https://medium.com/@dexx/debunking-three-misconceptions-about-segregated-witness-3bbf55c6f4de

Litecoin Source Code (2018) Retrieved from https://github.com/litecoin-project/litecoin

Bitcoin Source Code (2018) Retrieved from https://github.com/bitcoin/bitcoin

Bitcoin, Litecoin, Dogecoin stats. (2018). BitInfoCharts. Retrieved from https://bitinfocharts.com/

Ian Young

Written by

Ian Young

Musician, geek, hacker, & village idiot.