How to create a Bitcoin and Ethereum crypto address - Java
3.3 (4 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
1,340 students enrolled

How to create a Bitcoin and Ethereum crypto address - Java

Learn to code and create a Bitcoin and Ethereum address using Java open-source libraries. Create your private keys
3.3 (4 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
1,340 students enrolled
Last updated 1/2020
English
English
Current price: $13.99 Original price: $19.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 1.5 hours on-demand video
  • 4 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • How to create Bitcoin addresses using open source libraries - Java
  • How to create Ethereum addresses using open source libraries - Java
  • How to create Private and Public Keys
  • How to encrypt Private Keys using Java
  • What is Bitcoin?
  • What is Ethereum?
  • How to validate Bitcoin and Ethereum addresses
Requirements
  • Laptop
  • Internet connection is only required to download java and libraries
  • Basic understanding of how to install softwares on computers
Description

This course includes captions, subtitles (English) as well. New course.

Learn how to create private keys and addresses offline — without having an internet connection — for Bitcoin and Ethereum cryptocurrencies.

Technical details:

  • Java

  • bitcoinj Java library for Bitcoin addresses

  • ethereumj Java library for Ethereum addresses

  • bouncy castle cryptography library

  • IntelliJ IDEA as development environment

  • Maven

Do you want to create your Bitcoin and Ethereum addresses using Java libraries securely?

I'm sure you do because lately, I was in that situation.

A couple of months ago, I was trying to create my Bitcoin and Ethereum addresses using some of the so-called trusted and well-known cold and software wallets on the market.

Initially, I thought it could be more secure to buy a hard wallet, and I did this. Then after reading the details of the installation of initial setup software on the hard wallet, I immediately decided to return the product to the seller and asked for a refund.

The reason was, most of the time, they want from you to download something on your computer or the tool using the internet.

Moreover, most of those wallets downloaded from the internet cannot guarantee that private keys are not being exposed to hackers, because they generally want from you to connect the internet to download their latest updates/patches.

Most of the time, it is difficult to learn how the Bitcoin or Ethereum addresses are created as well; they don't provide their source codes, and even if they do, it is very complicated.

Because of these reasons, I decided to create my Bitcoin and Ethereum addresses using open-source libraries. There are successful and well-coded industry-standard libraries. So, I learned how to use them to create secure, offline Bitcoin, and Ethereum addresses. And the course is going to explain how to use them in a simplified step by steps.

So, if you attend this course, you are going to learn how to use those open-source libraries and create your BTC (Bitcoin and Ethereum) address offline so that you don’t need to connect anywhere, download anything or use the internet as well. Addresses can be created offline using java programs.

I want to mention that this is the most secure way of creating a Bitcoin or Ethereum address.

I also coded/designed an accompanying online tool to demonstrate that addresses can be created online and promote my course to the prospective students :)

Ok, if you are interested to create your Bitcoin and Ethereum addresses, you can enroll now.

For any reason, if you don't like the course (I am sure you will find it useful), you can cancel it and get your money back.

Details:

You will learn how to create Bitcoin and Ethereum addresses by attending this course. Moreover, you don't need an internet connection to create Bitcoin and Ethereum addresses. All addresses will be created by open-source Java libraries and you will be able to run your code on your local computer; you will have a complete control while creating your public and private key pairs — you don't need to trust somebody else's code provided most of the time in cold wallets or downloaded on your mobile phones.

I will teach you how to create different Bitcoin and Ethereum addresses and you will have the source code for the applications written in this course; we will also send small amounts of cryptocurrencies to test the public addresses created by the source code provided in this course.

If you attend this course and follow the steps, you don't need to buy a cold-wallet or download a wallet software on your mobile phone to create public and private key pairs. This provides additional security for Bitcoin and Ethereum users because when you download software from the internet, most of the time, it is difficult to learn how the Bitcoin or Ethereum addresses are created by those cold wallets or software; most of them don't provide their source codes and even if they do, it is very complicated. But this course is simplified and even beginner users can learn how Bitcoin or Ethereum addresses are created. Furthermore, when we download wallets from the internet, we can't be sure whether if the private keys are stored or not somewhere in remote servers, however, the accompanying software we will write here will also run offline — on your local computer —  so you will see step by step how a Bitcoin or Ethereum address is created, so you will have the complete ownership of randomly created BTC and ETH public and private key pairs.

Moreover, I will teach you how to encrypt and decrypt your private keys with a password, so it will be more secure for you to store private keys. (this part of the course is still under development)

Benefits of attending this cryptocurrency course are listed below:

  1. Complete ownership of your public and private keys for Bitcoin and Ethereum cryptocurrencies.

  2. Complete ownership of the source codes (coded with Java programming language) to create private keys — open-source software.

  3. Understand how the addresses are created step by step (with a simplified language) without depending on external parties such as companies providing software wallets or cold wallets also named as cold storage.

  4. You will be able to encrypt your private keys and store in a safe place without the need to share anywhere which provides you the opportunity to send some cryptocurrency to your offline address and store it for many years in a safe location. (this part of the course is still under development)

  5. You don't need to depend on anyone apart from following this course — which is simplified and based on open source software —  while creating your cold/paper wallets.

  6. Understand Bitcoin and Ethereum, Blockchain and cryptocurrencies.

Who this course is for:
  • People interested in learning how to create addresses and private keys for Bitcoin and Ethereum
  • People interested in having BTC and Ethereum addresses created offline
  • People who don't want to buy cold-wallets instead create their private keys using open source software
  • People interested in learning cryptocurrencies
Course content
Expand all 13 lectures 01:30:47
+ Introduction
3 lectures 12:50

This lecture briefly explains the details of this cryptocurrency course. I also introduce myself.

Preview 02:50

This lecture explains how the course is organized. You can find the resources — such as the source codes of the applications, slides and course documents — within this lecture.

How is the course organised? Where can you find resources?
03:45

Learn how to install Java JDK 8 and download IntelliJ IDEA community edition — which is free — to run the applications provided with this course.

Prepare your environment to run Java code
06:15
+ BTC - Bitcoin
5 lectures 43:46

Learn what is Bitcoin and the purpose of it such as its usage cases.

What is Bitcoin?
02:59

You learn how a Bitcoin address is structured.

Preview 03:48

Learn how to create a Bitcoin address offline using a Java application. The application is to be developed from scratch using open-source libraries — bitcoinj java library.

The details of a Bitcoin address and public-key cryptography — public and private keys.

The following cryptographic hash functions are to be used to create a Bitcoin address within this lecture; Base58, SHA-256, and RIPEMD-160.

Output of the application will be like below — simplified version will also be provided:

0: Private Key: a4f228d49910e8ecb53ba6f23f33fbfd2bad442e902ea20b8cf89c473237bf9f

0: Private Key Base58: C6t2iJ7AXA2X1KQVnqw3r7NKtKaERdLnaGmbDZNqxXjk

1: public key: 03564213318d739994e4d9785bf40eac4edbfa21f0546040ce7e6859778dfce5d4

2: SHA-256 public key: 482c77b119e47024d00b38a256a3a83cbc716ebb4d684a0d30b8ea1af12d42d9

3: RIPEMD-160 hashing on the result of SHA-256 public key: 0c2c910a661178ef63e276dd0e239883b862f58c

4: RIPEMD-160 hash with version byte: 000c2c910a661178ef63e276dd0e239883b862f58c

5-6: 2 * SHA-256 hash for RIPEMD-160 hash with version byte: c3c0439f33dc4cf4d66d3dd37900fc12597938a64817306b542a75b9223213e0

7: CheckSum: c3c0439f

8: 25 Byte Binary Bitcoin Address: 000c2c910a661178ef63e276dd0e239883b862f58cc3c0439f

9: Bitcoin Address: 127NVqnjf8gB9BFAW2dnQeM6wqmy1gbGtv

How to create / generate a Bitcoin address using Java? - part 1
20:10

Part 2: Learn how to create a Bitcoin address offline using a Java application. The application is to be developed from scratch using open-source libraries — bitcoinj java library.

How to create / generate a Bitcoin address using Java? - part 2
11:00

In this lecture, we send bitcoins to the address generated using the application created in this course. Then we see the balance on the blockchain.

Preview 05:49
BTC Quiz
2 questions
+ ETH - Ethereum
4 lectures 22:46

In this lecture, you learn what is Ethereum?

What is Ethereum?
02:55

You learn how a Ethereum address is structured. The details of a Ethereum address and public-key cryptography — public and private keys.

How is Ethereum address structured?
05:54

Learn how to create a Ethereum address offline using a Java application. The application is to be developed from scratch using open-source libraries — ethereumj java library.

Output: Sample Ethereum Address Generation steps:

0: Private Key: 09e910621c2e988e9f7f6ffcd7024f54ec1461fa6e86a4b545e9e1fe21c28866

1: Public Key: 048e66b3e549818ea2cb354fb70749f6c8de8fa484f7530fc447d5fe80a1c424e4f5ae648d648c980ae7095d1efad87161d83886ca4b6c498ac22a93da5099014a

2: Ethereum Address: 0x00B54E93EE2EBA3086A55F4249873E291D1AB06C

How to create / generate ETH - Ethereum addresses?
08:59

In this lecture, we send Ether to the address generated using the application created in this course. Then we see the balance on the etherscan and blockchain.

How to send coins to a Ethereum address and see it on the blockchain?
04:58
+ BTC and ETH Java application - Additional section
1 lecture 11:25

-console.address.creator-1.0.jar application can be also found under Lecture 2 - resources. You can use this application to create Bitcoin and Ethereum addresses.

This lecture explains how to create console.address.creator application.

Preview 11:25