Java Cryptography Architecture: Hashing and Secure Password

Learn how to implement secure hashing for Java Web, Backend and Desktop Applications as well as Android Apps
4.1 (21 ratings)
Instead of using a simple lifetime average, Udemy calculates a
course's star rating by considering a number of different factors
such as the number of ratings, the age of ratings, and the
likelihood of fraudulent ratings.
691 students enrolled
Take This Course
  • Lectures 9
  • Length 41 mins
  • Skill Level Intermediate Level
  • Languages English
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works


Find online courses made by experts from around the world.


Take your courses with you and learn anywhere, anytime.


Learn and practice real-world skills and achieve your goals.

About This Course

Published 2/2016 English

Course Description

In this course, you will learn how to implement document hashing and secure password hashing into Java applications using the Java Cryptography Architecture. This applies to Web applications and Java-based Desktop applications (e.g., Swing, AWT, SWT/RCP, JavaFX), but also database and backend applications as well as Android apps.

Get practical security background information from an IT security expert. Learn how to encode hashes in-memory and stream-based. Learn how to use salt and iteration count for secure password hashing following PBKDF2 from the security standard PKCS#5.

You should be an experienced Java developer to take this course. We will do hands-on coding examples that can be directly used within your enterprise applications.

What are the requirements?

  • You should be a Java developer and have an IDE ready, preferably – but not necessarily – Eclipse.

What am I going to get from this course?

  • Integrate file hashing into Java applications and Android apps
  • Integrate secure password hashing into Java applications and Android apps

Who is the target audience?

  • You should be an experienced Java developer before taking this course. For hashing, you only need a basic understanding. Details of secure hashing, practical background information and hands-on tips will be provided in the course.

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.


Section 1: Basic Introduction
Introductory Lecture

In this lecture, we prepare the environment for our coding exercises and get a basic understanding for the right Java version regarding crypto algorithms.

Section 2: Java Cryptography Architecture: MessageDigest, MAC and PBKDF2

Get to know the Java Cryptography Architecture and the basic hashing class.


Implement a real world in-memory file hashing example.


Learn how to efficiently hash stream-based.


Learn how to use a MAC, e.g. HMAC, with Java. This is also the basis for secure password hashing.


Learn how to implement and integrate a secure password hashing scheme into your application. Get practical advice how to use these algorithms securely.

Strong Hashing Algorithms
1 question
Section 3: Outro

In this lecture, you see what wrapper libraries do and offer, in case you do not want to deal with the Java Cryptography Architecture and crypto parameters directly.


This is an installation tutorial how to install the “Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files” without downloading. If you run into trouble regarding the usage of the JCA in conjunction with strong crypto algorithms, you have to configure your JRE installation accordingly.

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Dipl.-Inform. Frank Hissen, Computer Scientist / IT security expert

Frank Hissen successfully studied Computer Science at Darmstadt University of Technology (Germany) focusing on IT security. For over 15 years, he works as IT consultant and software engineer; for over 10 years, he also works in various positions as security expert in IT development and consulting projects. He mainly worked for large businesses but also medium-sized companies.

He develops software and system architectures for complex systems and implements them or supervises the implementation. Moreover, he creates studies and function specifications.

In the area of IT security, Mr. Hissen is specialized in applied and technical IT security. For major as well as smaller companies, he equally developed and implemented security solutions and accompanied processes for secure product and software development.

In the area of cryptography and encryption, Mr. Hissen developed security solutions as Senior Solution Engineer at SECUDE before he became self-employed in 2009. Since then he works as freelancing expert in the area of web and cloud application security. He creates secure conceptual designs of system architectures but also takes care of their secure implementation and corresponding security requirements. One other focus is the technical examination and validation of the actual implementation.

Until now, Mr. Hissen worked in various projects amongst others for Deutsche Telekom AG, SECUDE, Allianz AG, ITO Darmstadt UT and SAP Research.

Ready to start learning?
Take This Course