So welcome to Unit 6.
In Unit 6 we're going to look at ways to use cryptography
to solve a wide range of problems.
In Unit 5 we focused all on using cryptography
to solve the traditional problem of authentication
and then communication with secrecy and integrity.
What we're going to look at in Unit 6 is
different kinds of problems we can solve using cryptography.
The first thing we'll look at is Anonymous Communication,
and we'll learn about how to use a chain of asymmetric encryption
to enable two parties to communicate over a network
without anyone knowing that they're even talking with each other.
Then we'll look at how to do voting,
and there are lots of issues with voting--we won't get into all of them--
but we'll look at the issue of can you provide an accurate tally--
know that each vote is counted without revealing who voted for whom.
This will also be done using a chain of asymmetric encryptions
but with some added features to ensure that the vote tally is correct.
Then we'll look at ways to provide digital cash--
a way to represent and transfer value similar to paper cash
that can be done all with cryptography.
This will involve introducing some new techniques.
We'll look at a centralized way of doing that
which can be done using a new technique called blind signatures.
And we'll also look at a decentralized way of doing that
that doesn't require any trusted authority
but uses proofs of work to create value.
And this is what the bitcoin network does.
This is just a small sampling
of the kinds of things that you can do using cryptography.
All of these can be used just using the tools we've seen in this class.
And we'll see ways to use asymmetric cryptography
in many different ways in these examples.
We'll also see ways to use symmetric cryptography,
including hash functions,
as well as one-time pads.
