**Hàm băm được hiểu là sử dụngvào mục đích mã hóa dữ liệu** Điều này có nghĩa là nếu một khối trong một chuỗi bị thay đổi, thì có thể thấy ngay rằng nó đã bị giả mạo.. Nếu tin tặc muốn l
Trang 1TRƯỜNG ĐẠI HỌC KIẾN TRÚC HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
Nguyễn Năng Thành Trung
Giảng viên hướng dẫn bộ môn: TS Nguyễn Đăng Khoa
Lớp 20CN4
Hà Nội, năm 2021
Trang 2Lời mở đầu
Trong lịch sử, thế giới chứng kiến 1 thảm họa tài chính toàn cầu gây ảnh hưởngcực kì lớn tới nền kinh tế thế giới Cụ thể Cuộc suy thoái kinh tế (economicrecession) toàn cầu 2007-2008 là một cuộc khủng hoảng diễn ra vào các năm
2007, 2008, bao gồm sự đổ vỡ hàng loạt hệ thống ngân hàng, tình trạng đói tíndụng, tình trạng sụt giá chứng khoán và mất giá tiền tệ quy mô lớn ở Mỹ vànhiều nước châu Âu, có nguồn gốc từ khủng hoảng tài chính ở Hoa Kỳ Nguyênnhân là do bong bóng bất động sản cùng với giám sát tài chính thiếu hoàn thiện
ở Hoa Kỳ đã dẫn tới một cuộc khủng hoảng tài chính ở nước này từ năm 2007,bùng phát mạnh từ cuối năm 2008 Thông qua quan hệ tài chính nói riêng vàkinh tế nói chung mật thiết của Hoa Kỳ với nhiều nước Cuộc khủng hoảng từHoa Kỳ đã lan rộng ra nhiều nước trên thế giới, dẫn tới những đổ vỡ tài chính,suy thoái kinh tế, suy giảm tốc độ tăng trưởng kinh tế ở nhiều nước trên thế giới.Vấn đề được đặt ra bằng cách nào các cá nhân (hay tổ chức) có thể tuyệt đối tintưởng trực tiếp lẫn nhau mà không phụ thuộc vào một bên thứ ba nào để đảmbảo lòng tin ấy Đây chính là câu hỏi mà Satoshi Nakamoto muốn trả lời saucuộc khủng hoảng tài chính 2007-2008, thời điểm hệ thống tài chính Mỹ đánhmất niềm tin trong dân chúng Và Blockchain là câu trả lời còn Bitcoin là ứngdụng đầu tiên của công nghệ này
Toàn bộ nội dung sẽ nói về blockchain và tầm quan trọng của nó đối với nềnkinh tế thế giới trong hiện tại và trong tương lai, và ứng dụng vô vàn vào cuộcsống 4.0 hiện tại
MỤC LỤ
Trang 3Lời mở đầu 2
I Khái niệm 4
A Blockchain là gì? 4
B Lịch sử và con đường hình thành phát triển 5
C Phân loại và phát triển 5
II Các đặc điểm nổi bật 6
A Tính minh bạch 6
B Tính an toàn tuyệt đối 7
C Tính bất biến 7
III Cách thức hoạt động 8
A Cơ chế chuỗi khối 8
B Thuật toán bảo mật ( mã hash ) 9
IV Ứng dụng thực tiễn 10
A Bitcoin 10
B Sản xuất 11
C Y tế 12
D Giáo dục 13
E Nông nghiệp 13
F Tài chính ngân hàng 14
G Thương mại điện tử 15
V Thách thức đặt ra 16
A Tiêu thụ năng lượng cao 16
B Vấn đề về tốc độ xử lý 16
C Hoạt động phi pháp 17
VI Tiềm năng của công nghệ Blockchain tại Việt Nam 17
Kết luận 21
Tài liệu tham khảo 21
Trang 4
W hat is blockchain ?
Learn the basics of blockchain technology and why it
can enhance trust in both record keeping and financial transactions.
Blockchain là một loại DLT trong đó các giao dịch được ghi lại bằng một chữ ký mật mã bất biến được gọi là hàm băm **Hàm băm được hiểu là sử dụngvào mục đích mã hóa dữ liệu**
Điều này có nghĩa là nếu một khối trong một chuỗi bị thay đổi, thì có thể thấy ngay rằng nó đã bị giả mạo Nếu tin tặc muốn làm hỏng một hệ thống blockchain, họ sẽ phải thay đổi mọi khối trong chuỗi, trên tất cả các phiên bản phân tán của chuỗi
Cách dễ hiểu nhất khi nghĩ về Blockchain đó là tưởng tượng nó như là một cơ sở dữ liệu (database) Nó giống như một cuốn sổ cái vậy Nhưng điều đặc biệt của Blockchain đó là cơ sở dữ liệu này được phân phối phi tập trung trên mạng internet Điều đó có nghĩa là cơ sở dữ liệu này được trải khắp thế giới,được sở hữu bởi tất cả máy tính trong mạng lưới ngang hàng Không có một máy chủ tập trung nào host cơ sở dữ liệu này, không có một người nào có quyền kiểm soát cơ sở dữ liệu này Một khi dữ liệu được ghi vào cuốn sổ cái này, không ai có thể xoá, hay thay đổi nó Nó không thể bị hack
Trang 5B Lịch sử và con đường hình thành phát triển
Sau cuộc khủng hoảng tài chính năm 2008, hệ thống tài chính Mỹ sụp đổ hoàn toàn khiến người dân đánh mất niềm tin vào đồng tiền của một bên thứ ba đáng tin cậy, mà ở đây là Chính phủ Ý tưởng về Bitcoin – một đồng tiền phi tập trungngang hàng trên mạng máy tính lần đầu tiên được Satoshi Nakamoto đưa ra, cũng là ứng dụng đầu tiên của Blockchain Tuy nhiên, điều này cũng khiến nhiều người lầm tưởng rằng Bitcoin là Blockchain
Mãi đến năm năm 2014, khái niệm về Blockchain mới bắt đầu tách khỏi ra khỏi Bitcoin (theo nghĩa bóng) Người ta bắt đầu nhận ra rằng Blockchain có thể ứng dụng vượt ra ngoài khuôn khổ của tiền điện tử Blockchain bắt đầu được đầu tư
và khám phá trên nhiều lĩnh vực như y tế, vận chuyển, năng lượng, bỏ phiếu, bảo hiểm, quản lý hợp đồng, số hóa tài sản, định danh,…
Tính đến năm 2018, có khoảng 15% các tổ chức tài chính trên thế giới bắt đầu ứng dụng công nghệ Blockchain vào tổ chức của mình
.
C Phân loại và phát triển
Hệ thống Blockchain chia thành 3 loại chính:
Public: Bất kỳ ai cũng có quyền đọc và ghi dữ liệu trên Blockchain Quá trình xác thực giao dịch trên Blockchain này đòi hỏi phải có hàng nghìn hay hàng vạn nút tham gia Do đó để tấn công vào hệ thống Blockchain này là điều bất khả thi vì chi phi khá cao Ví dụ: Bitcoin, Ethereum,…
Private: Người dùng chỉ được quyền đọc dữ liệu, không có quyền ghi vì điều này thuộc về bên tổ chức thứ ba tuyệt đối tin cậy Tổ chức này có thể hoặc không cho phép người dùng đọc dữ liệu trong một số trường hợp Bên thứ ba toàn quyền quyết định mọi thay đổi trên Blockchain Vì đây là một Private Blockchain, cho nên thời gian xác nhận giao dịch khá nhanh vì chỉ cần một lượng nhỏ thiết bị tham gia xác thực giao dịch Ví dụ: Ripple là một dạng Private Blockchain, hệ thống này cho phép 20% các nút là gian dối và chỉ cần 80% còn lại hoạt động ổn định là được
Permissioned: Hay còn gọi là Consortium, một dạng của Private nhưng bổsung thêm một số tính năng nhất định, kết hợp giữa “niềm tin” khi tham gia vào Public và “niềm tin tuyệt đối” khi tham gia vào Private Ví dụ: Các ngân hàng hay tổ chức tài chính liên doanh sẽ sử dụng Blockchain cho riêng mình.Trong hiện tại, Blockchain được chia thành 3 phiên bản:
Trang 6Blockchain 1.0 – Tiền tệ và Thanh toán: Ứng dụng chính của phiên bản này là tiền mã hoá: bao gồm việc chuyển đổi tiền tệ, kiều hối và tạo lập hệ thốngthanh toán kỹ thuật số.
Blockchain 2.0 – Tài chính và Thị trường: Ứng dụng xử lý tài chính và ngân hàng: mở rộng quy mô của Blockchain, đưa vào các ứng dụng tài chính và thị trường
Blockchain 3.0 – Thiết kế và Giám sát hoạt động: Đưa Blockchain vượt khỏi biên giới tài chính, và đi vào các lĩnh vực như giáo dục, chính phủ, y tế và nghệ thuật
Blockchain 4.0 – doanh nghiệp, phục vụ việc tạo và chạy các ứng dụng, khẳng định vị trí hàng đầu của công nghệ Blockchain trong đời sống
Blockchain 4.0 được phát triển tập trung vào các doanh nghiệp, giúp tạo ra và chạy các ứng dụng giao dịch một cách nhanh chóng, an toàn và hiệu quả hơn
II Các đặc điểm nổi bật
A Tính minh bạch
Danh tính của một người giao dịch Bitcoin được ẩn thông qua mật mãphức tạp và chỉ được thể hiện bằng địa chỉ công khai của họ Vì vậy, nếu bạnđang tìm kiếm lịch sử giao dịch của một người, bạn sẽ không thấy kiểu như
“Bitcoin Vietnam News đã gửi 1 BTC cho Nakatomo Satoshi” Thay vào đó, bạn
sẽ chỉ thấy “1EGVXAATP4VTV5GJIHHODWHTTJ2RQWPKEV đã gửi 1BTC”
Vì vậy, trong khi danh tính thực sự của người đó được bảo mật, bạn vẫn
sẽ thấy tất cả các giao dịch được thực hiện bởi địa chỉ công khai của họ Mức độminh bạch này chưa từng tồn tại trong một hệ thống tài chính từ trước đến
B Tính an toàn tuyệt đối
Công nghệ chuỗi khối đối với vấn đề bảo mật và an toàn được mô tả theonhiều cách Đầu tiên, các khối mới luôn được lưu trữ một cách tuyến tính vàtheo thời gian thực Nếu bạn nhìn vào blockchain của Bitcoin, bạn sẽ thấy rằngmỗi khối có một vị trí trên chuỗi, được gọi là chiều cao (Block hight)
Sau khi một khối đã được thêm vào cuối chuỗi khối, rất khó để quay lại
và thay đổi nội dung của nó Đó là bởi vì mỗi khối chứa hàm mật mã hash riêngcủa nó, cùng với hash của khối trước nó Hash được tạo bởi một hàm toán họcbiến thông tin kỹ thuật số thành một chuỗi số và chữ cái Nếu thông tin đó đượcchỉnh sửa theo bất kỳ cách nào, mã hash cũng thay đổi theo
Trang 7Điều này thực sự quan trọng đối với an ninh của hệ thống blockchain Giả
sử một hacker cố gắng chỉnh sửa giao dịch của bạn từ Amazon để bạn phải trảtiền cho việc mua hàng đến 2 lần Ngay sau khi họ chỉnh sửa số tiền trong giaodịch của bạn, hàm hash của khối sẽ thay đổi Khối tiếp theo trong chuỗi vẫn sẽchứa hash cũ và tin tặc sẽ cần cập nhật khối đó để che dấu vết của chúng Tuynhiên, làm như vậy sẽ thay đổi hash của khối đó
Như vậy, để thay đổi một khối bất kỳ, một hacker sẽ cần thay đổi mọikhối đơn tiếp theo đó Việc tính toán lại tất cả các giá trị hàm hash đó sẽ mất mộtlượng tính toán khổng lồ và điều này là không thể thực hiện được Nói cáchkhác, một khi một khối được thêm vào blockchain, nó trở nên rất khó chỉnh sửa
và không thể xóa
Để giải quyết vấn đề về mức độ tin cậy, các mạng blockchain tiến hànhtriển khai thử nghiệm đối với máy tính nào muốn thêm các khối vào chuỗi Cácthử nghiệm này được gọi là mô hình đồng thuận của người dùng, nó yêu cầungười dùng phải chứng minh trước khi họ có thể tham gia vào mạng blockchain
Ví dụ điển hình nhất là trường hợp của Bitcoin, được gọi là bằng chứng về côngviệc
Trong hệ thống chứng minh công việc của Bitcoin, các máy tính phảichứng minh được rằng đã thực hiện công việc bằng cách giải những thuật toántính toán rất phức tạp Nếu một máy tính giải quyết xong một trong những vấn
đề này, chúng sẽ đủ điều kiện để thêm một khối vào blockchain Quá trình thêmcác khối vào blockchain được gọi là khai thác trên mạng, và nó không hề dễdàng
Trên thực tế, theo thống kê của BlockExplorer, tỷ lệ giải quyết thành côngcác vấn đề toán học phức tạp để khai thác trên mạng Bitcoin là khoảng 1 trên 5,8nghìn tỷ vào tháng 2 năm 2019 Do đó, yêu cầu máy tính phải chạy các chươngtrình với chi phí cao đáng kể
Bằng chứng công việc của Bitcoin làm cho những cuộc tấn công mạnglưới trở nên vô dụng Nếu một hacker muốn tấn công vào blockchain, họ sẽ cầnphải giải các bài toán tính toán phức tạp với tỷ lệ 1 trên 5,8 nghìn tỷ Chi phí tổchức một cuộc tấn công như vậy gần như chắc chắn sẽ vượt xa lợi nhuận thu về.Cho đến nay, mạng lưới Blockhain của Bitcoin vẫn chưa thể bị tấn công
và nó là an toàn tuyệt đối
C Tính bất biến
Tính bất biến của công nghệ chuỗi khối blockchain có nghĩa là một khi đãđược ghi nhận vào blockchain thì nó không thể bị giả mạo
Trang 8Bạn thử tưởng tượng điều này sẽ có giá trị như thế nào đối với hệ thốngtài chính? Những trường hợp tham ô có thể bị ngăn chặn bởi vì họ đơn giản làkhông thể làm giả bất cứ điều gì trên hệ thống của blockchain.
Lý do tại sao blockchain có được thuộc tính bất biến là do hàm mật mãđược gọi là “hash“ Mô tả một cách dễ hiểu như sau:
Hãy tưởng tượng, một hacker tấn công khối (block) 3 và cố gắng thay đổi
dữ liệu Do các thuộc tính của hash, một thay đổi nhỏ trong dữ liệu sẽ thay đổihàm mật mã hash, điều này cũng dẫn tới sự thay đổi hash được lưu trữ trongkhối 2, bây giờ đến lượt dữ liệu bị thay đổi của khối 2 sẽ dẫn đến thay đổi trongkhối 1, v.v Có nghĩa là làm thay đổi hoàn toàn chuỗi, đó là điều không thể diễn
ra Đây chính xác là cách mà blockchain đạt được sự bất biến
III Cách thức hoạt động
A Cơ chế chuỗi khối
Blockchain hoạt động dựa trên cơ chế chuỗi khối, được tổ chức thành liênkết dạng chuỗi của các khối thông tin (block), cho phép phát triển và mở rộngtheo thời gian, nghĩa là bất cứ khi nào có những dữ liệu mới thì sẽ hình thànhthêm các khối mới Khi mỗi khối được tải vào sổ cái, nó được liên kết đến khốitrước bằng cách sử dụng những mã băm (hash) tương ứng của chúng Điều nàytạo thành một bản ghi hoàn toàn có thể theo dõi và không thể giả mạo trongchuỗi khối
Về cơ bản mỗi khối chứa những thông tin chính sau:
Dữ liệu (data) Dữ liệu trong mỗi khối phụ thuộc vào loại blockchain, ví
dụ blockchain của bitcoin chứa thông tin về các giao dịch như thông tin ngườigửi, người nhận tiền và số bitcoin được giao dịch; blockchain về bảo hiểm y tế
sẽ lưu trữ các thông tin về đối tượng được hưởng bảo hiểm, lịch sử sức khỏe củađối tượng đó, …
Mỗi khối có một mã băm (Hash) để nhận dạng một khối và các dữ liệutrong đó Mã này là duy nhất, nó tương tự như dấu vân tay Bất kỳ sự thay đổinào trong khối thì mã băm cũng sẽ thay đổi
Mã băm đối chiếu (chính là mã của khối phía trước – Hash of previousblock) sẽ tạo thành chuỗi Bất cứ sự thay đổi một khối sẽ khiến các khối tiếptheo không phù hợp
Từ bất kỳ một khối, ta có thể truy cập tất cả các khối trước đó và các khốitiếp theo trong chuỗi liên kết Vì vậy, cơ sở dữ liệu trong blockchain lưu trữ lịch
sử đẩy đủ và không thể xóa của tất cả các giao dịch được thực hiện từ lần đầutiên
Trang 9
B Thuật toán bảo mật ( mã hash )
Để rõ hơn, chúng ta nhìn vào hình ảnh trên Khối 1 là khối khởi điểm, khithay đổi thông tin khối thứ 2 thì khối thứ 3 và các khối tiếp theo đó sẽ không cònphù hợp nữa hay nói cách khác là các mối liên kết bằng mã băm đối chiếu sẽ bịsai Trên hình ảnh, khối thứ 2 bị thay đổi thông tin, mã băm của khối sẽ thay đổitheo (mã băm khối 2 từ 6BQ1 chuyển thành H62Y), như vậy mối liên kết giữakhối 2 và khối 3 bằng mã băm 6BQ1 không tương thích nữa
Với thiết kế này, Blockchain giúp chống lại việc thay đổi của dữ liệu Vềnguyên tắc, một khi dữ liệu đã được ghi vào Blockchain thì sẽ không có cáchnào thay đổi được dữ liệu đó
Tuy nhiên, trong thế giới hiện đại và thông minh hiện nay, sử dụng nhữngđoạn mã băm không thôi là chưa đủ để ngăn chặn những sự thay đổi, sự giảmạo Thực tế, có hàng trăm, hàng nghìn chiếc máy tính với cấu hình ‘khủng’ cóthể tính toán hàng trăm nghìn các mã băm trên một giây; tức là khi một khối bịthay đổi dữ liệu, tức mã băm của khối sẽ thay đổi, các máy tính can thiệp vàoquá trình thay đổi, giả mạo đó sẽ tính toán lại tất cả các mã băm của các khốitiếp theo sao cho phù hợp và liên kết với các khối trước đó và kết quả là sổ cáiBlockchain bị thay đổi giả mạo hoàn toàn Để giảm thiểu vấn đề này,Blockchain đã được trang bị thêm phương tiện đó là thuật toán đồng thuận,trong đó có 02 loại thuật toán đồng thuận được triển khai phổ biến: Thuật toánbằng chứng công việc (PoW) và thuật toán bằng chứng cổ phần (PoS)
Thuật toán bằng chứng công việc (Proof of work hay viết tắt là PoW): Cơchế của PoW là làm chậm lại quá trình hình thành những khối Block mới; ví dụtrong trường hợp Bitcoin, để tính toán bằng chứng công việc theo yêu cầu thìmất khoảng 10 phút, sau đó mới có một khối mới được hình thành vào chuỗi.Với cơ chế PoW này, việc giả mạo dường như là không thể, vì khi thay đổi dữliệu của một khối, người can thiệp giả mạo sẽ phải tính toán lại toàn bộ bằng
Trang 10chứng công việc của những khối tiếp theo; như vậy chúng ta hãy hình dùngxem, mỗi khối để tính toán lại mất tối thiểu 10 phút, với hàng trăm, hàng nghìnkhối thì thời gian sẽ nhiều như thế nào.
Thuật toán bằng chứng cổ phần (Proof of Stake hay viết tắt là PoS):ngược lại với PoW, thuật toán PoS là cách khác để xác minh các giao dịch VớiPoS, người tạo ra khối mới sẽ được lựa chọn một cách ngẫu nhiên, dựa trên giátrị cổ phẩn (hay còn gọi là stake) của họ có Người này có trách nhiệm xác nhậntính hợp lệ của các khối mới Để trở thành một người xác nhận, thì người nàyphải đặt cọc một khoản tiền nhất định (đó là stake, và khoản tiền này sẽ bị mấtnếu người này thực hiện xác nhận một giao dịch gian lận) và người xác nhận chỉđược khai thác Khi xác nhận được một khối thành công, người xác nhận sẽnhận được phần thưởng là khoản tiền phí liên quan của các giao dịch tương ứngtrong khối đó Nếu người này không muốn tiếp tục làm người xác nhận, saumột khoảng thời gian nhất định để xác thực người này không thực hiện bất kỳmột xác nhận giả mạo nào, thì cổ phẩn và tiền kiếm được của họ sẽ được hoànlại Như vậy, sẽ rất mất thời gian và tiền để thực hiện một xác nhận một khốiblock giả
IV Ứng dụng thực tiễn
A Bitcoin
Mọi dữ liệu trên mạng Internet đều rất dễ dàng bị sao chép, mỗi giao dịchBitcoin cũng chỉ là một khối thông tin Bình thường, khi giao dịch trực tuyến,chúng ta sẽ cần đến một bên trung gian thứ ba mà chúng ta tin tưởng (ví dụ ngânhàng hay một người trung gian được tin cậy) với một cơ sở dữ liệu tập trung đểxác minh giao dịch nhằm chống gian lận khi kẻ gian sử dụng lại khối thông tinnày nhiều lần Công nghệ blockchain đã giải quyết được bài toán này (double-spending) mà không cần tới bên trung gian thứ ba tin cậy Blockchain là mộtcuốn sổ cái ghi lại tất cả các giao dịch Dữ liệu trong cuốn sổ cái liên tục đượcmạng lưới máy tính ngang hàng trên thế giới cập nhật và bảo trì Giao dịch khi Agửi X bitcoin cho B được ghi lại trên toàn hệ thống, tất cả các máy tính trongmạng này sẽ xác minh và ghi lại giao dịch đó vào cuốn sổ cái rồi cấp phát dữliệu này tới các máy tính khác Blockchain là một cơ sở dữ liệu phân tán vô chủ;các máy tính liên tục thực hiện việc kiểm toán độc lập bằng cách xác minh dữliệu nhận tới và so sánh với chữ ký của giao dịch đó
Về công nghệ, các giao dịch được xác minh bởi thuật toán chữ ký số dựatrên đường cong Elliptic (ECDSA) và được xác nhận bởi chuỗi các quá trình xử
lý lần lượt các hàm băm SHA256 bởi các thợ đào Bitcoin Mỗi khối trong