Understanding Digital Currency Fundamentals