WEBVTT

00:00:00.000 --> 00:00:02.040
hi in this video we will get an

00:00:02.040 --> 00:00:04.290
introduction to blockchain which is the

00:00:04.290 --> 00:00:06.299
technology that crypto currencies like

00:00:06.299 --> 00:00:09.719
Bitcoin are based on blockchain is based

00:00:09.719 --> 00:00:11.610
on a concept called proof of work

00:00:11.610 --> 00:00:13.860
basically if you want to get paid any

00:00:13.860 --> 00:00:15.089
kind of cryptocurrency

00:00:15.089 --> 00:00:17.160
you have to prove you have worked on the

00:00:17.160 --> 00:00:19.439
blockchain through a transaction of some

00:00:19.439 --> 00:00:22.080
kind so what is this blockchain well a

00:00:22.080 --> 00:00:24.480
blockchain is a digital ledger in which

00:00:24.480 --> 00:00:26.490
transactions made in something like

00:00:26.490 --> 00:00:29.039
Bitcoin or another cryptocurrency are

00:00:29.039 --> 00:00:32.250
recorded chronologically and publicly we

00:00:32.250 --> 00:00:33.630
can actually look at a blockchain and

00:00:33.630 --> 00:00:36.390
see evidence or proof of what has

00:00:36.390 --> 00:00:39.719
happened or what is going on this

00:00:39.719 --> 00:00:42.450
evidence in the ledger is our proof of

00:00:42.450 --> 00:00:45.360
work a blockchain is really no more than

00:00:45.360 --> 00:00:47.760
a distributed database that utilizes a

00:00:47.760 --> 00:00:49.940
very large network of computing devices

00:00:49.940 --> 00:00:52.680
think of it as a large worldwide

00:00:52.680 --> 00:00:54.809
computer where everyone can securely

00:00:54.809 --> 00:00:57.300
access data and execute transaction code

00:00:57.300 --> 00:01:00.390
all transactions are stored in blocks of

00:01:00.390 --> 00:01:03.329
data a ledger is a list of transactions

00:01:03.329 --> 00:01:05.760
or exchanges that usually includes

00:01:05.760 --> 00:01:07.950
information about the transactions such

00:01:07.950 --> 00:01:10.979
as the date what was purchased amounts

00:01:10.979 --> 00:01:13.979
etc block chains are also immutable if

00:01:13.979 --> 00:01:15.780
you find an error on your bank statement

00:01:15.780 --> 00:01:18.390
like an extra charge the bank can't

00:01:18.390 --> 00:01:20.850
remove that charge instead the bank

00:01:20.850 --> 00:01:23.070
refunds your money in a regular ledger

00:01:23.070 --> 00:01:25.770
if someone modifies one entry it has no

00:01:25.770 --> 00:01:27.930
impact on the other entries when you

00:01:27.930 --> 00:01:30.360
mutate something you change it like the

00:01:30.360 --> 00:01:32.970
amount above that was originally 1,500

00:01:32.970 --> 00:01:35.369
it was changed to 2,000 this cannot

00:01:35.369 --> 00:01:37.619
happen in a blockchain immutable means

00:01:37.619 --> 00:01:40.079
you can't change it block chains are

00:01:40.079 --> 00:01:42.479
immutable blocks in a blockchain are

00:01:42.479 --> 00:01:44.490
made in such a way that it makes them

00:01:44.490 --> 00:01:46.740
very hard to manipulate or fake once

00:01:46.740 --> 00:01:48.329
they are stored to the blockchain

00:01:48.329 --> 00:01:50.149
because if someone modifies an entry or

00:01:50.149 --> 00:01:52.890
transaction it instantly invalidates all

00:01:52.890 --> 00:01:55.649
of the later entries blockchain makes it

00:01:55.649 --> 00:01:57.030
harder to tamper with ledger

00:01:57.030 --> 00:01:59.009
transactions and easier to detect

00:01:59.009 --> 00:02:02.219
tampering should it occur in order to

00:02:02.219 --> 00:02:04.469
accomplish this it uses something called

00:02:04.469 --> 00:02:05.370
a hash

00:02:05.370 --> 00:02:09.030
a hashes of value produced by hashing

00:02:09.030 --> 00:02:11.280
function in computer programming so

00:02:11.280 --> 00:02:13.530
cryptography is the practice of encoding

00:02:13.530 --> 00:02:15.420
information so only authorized people

00:02:15.420 --> 00:02:17.850
can read it hashing is one of these

00:02:17.850 --> 00:02:20.550
types of cryptography that we can use to

00:02:20.550 --> 00:02:22.680
make data secure and it's the foundation

00:02:22.680 --> 00:02:24.930
for making block chains hashing in a

00:02:24.930 --> 00:02:27.630
blockchain changes a transaction into an

00:02:27.630 --> 00:02:29.220
unreadable string of text for the

00:02:29.220 --> 00:02:31.620
purpose of encrypting the transaction as

00:02:31.620 --> 00:02:34.140
we'll see hashing is perfectly suited

00:02:34.140 --> 00:02:36.030
for block chains a cryptographic hash

00:02:36.030 --> 00:02:38.280
function is a one-way function that

00:02:38.280 --> 00:02:40.350
takes input data of some arbitrary

00:02:40.350 --> 00:02:43.830
length and produces a fixed sized output

00:02:43.830 --> 00:02:46.050
so the hash is always the same size that

00:02:46.050 --> 00:02:47.640
the hash function tells it to be

00:02:47.640 --> 00:02:49.860
regardless of how big the input is the

00:02:49.860 --> 00:02:52.290
hash is a lot smaller than the data

00:02:52.290 --> 00:02:54.420
itself and it's generated by a

00:02:54.420 --> 00:02:56.250
mathematical formula inside of a

00:02:56.250 --> 00:02:58.800
computer program in such a way that it's

00:02:58.800 --> 00:03:01.350
really unlikely that some other text

00:03:01.350 --> 00:03:03.470
would produce that same hash value

00:03:03.470 --> 00:03:06.720
hashing algorithms and block chains take

00:03:06.720 --> 00:03:09.000
a chunk of transaction data and hash it

00:03:09.000 --> 00:03:11.520
the cool thing about hash data is that

00:03:11.520 --> 00:03:13.470
the computation is much simpler going

00:03:13.470 --> 00:03:15.120
forwards than backwards so it's easy to

00:03:15.120 --> 00:03:17.790
confirm we get an output hash that

00:03:17.790 --> 00:03:20.940
usually looks like nonsense as shown but

00:03:20.940 --> 00:03:22.260
it will always be the same length no

00:03:22.260 --> 00:03:24.840
matter how big our input was making good

00:03:24.840 --> 00:03:26.640
one-way hash functions and block chains

00:03:26.640 --> 00:03:28.800
relies on some math to produce these

00:03:28.800 --> 00:03:30.959
random strings of letters and numbers s

00:03:30.959 --> 00:03:33.330
hash output we won't get into the math

00:03:33.330 --> 00:03:36.090
instead we'll use a simple online hash

00:03:36.090 --> 00:03:38.640
generator the most used hashing

00:03:38.640 --> 00:03:40.530
algorithms are generally very well known

00:03:40.530 --> 00:03:42.570
and available to the public if very

00:03:42.570 --> 00:03:44.310
common hashing algorithm used with

00:03:44.310 --> 00:03:47.790
blockchain technology is sha-256 it is

00:03:47.790 --> 00:03:49.920
one of several hashing algorithms and it

00:03:49.920 --> 00:03:51.690
will produce a long text string as a

00:03:51.690 --> 00:03:55.860
result so let's jump out to a sha-256

00:03:55.860 --> 00:03:58.830
hash generator this is a really simple

00:03:58.830 --> 00:04:01.260
hash generator where you can enter any

00:04:01.260 --> 00:04:04.230
kind of text and see what kind of hash

00:04:04.230 --> 00:04:06.840
is actually generated below so let's

00:04:06.840 --> 00:04:11.720
let's say I type in the word code HS

00:04:11.720 --> 00:04:15.239
notice I get a hash of that string it's

00:04:15.239 --> 00:04:19.109
8 d 0 0 9 2 6

00:04:19.109 --> 00:04:21.090
and so forth so it's a string of letters

00:04:21.090 --> 00:04:23.370
and numbers this is my hashed output if

00:04:23.370 --> 00:04:25.740
I remove just a single letter the letter

00:04:25.740 --> 00:04:29.039
S look how drastically my hash changes

00:04:29.039 --> 00:04:32.280
zero to eight one eight seven two blah

00:04:32.280 --> 00:04:37.110
blah so just changing the input even

00:04:37.110 --> 00:04:40.199
slightly changes the entire hash output

00:04:40.199 --> 00:04:43.050
so I put the s back on I still get the

00:04:43.050 --> 00:04:45.990
same original input eight D zero zero

00:04:45.990 --> 00:04:48.539
nine six two so any given input should

00:04:48.539 --> 00:04:50.400
always produce the exact same hash

00:04:50.400 --> 00:04:52.830
output but just changing the input ever

00:04:52.830 --> 00:04:55.319
so slightly will completely change the

00:04:55.319 --> 00:04:58.020
hash output and that's what a good hash

00:04:58.020 --> 00:05:00.029
generator or hash algorithm should do

00:05:00.029 --> 00:05:01.889
now is your turn to explore some

00:05:01.889 --> 00:05:05.449
resources and activities
