Blockchain Basics
Blockchain Cơ bản
Xin chào các bạn!
Môn học đầu tiên của Chương trình Lập trình viên Blockchain sẽ cung cấp cho người học những kiến thức tổng quan và các khái niệm cơ bản trong công nghệ blockchain (công nghệ chuỗi khối). Các bạn học viên sẽ được tìm hiểu về giao thức của Bitcoin và giao thức của Ethereum, từ đó có được nền tảng cần thiết cho việc phát triển các ứng dụng và lập trình với blockchain. Nội dung môn học cũng trang bị cho học viên các kiến thức cần thiết về lịch sử phát triển, các khái niệm nền tảng, cấu trúc và nguyên lý hoạt động của nền tảng công nghệ blockchain; định nghĩa, cấu trúc, nguyên lý hoạt động của chuỗi khối Ethereum; các cơ chế bảo mật, thẩm định giao dịch, thẩm định khối, tính bất biến của dữ liệu trong công nghệ blockchain; và các khái niệm về tín nhiệm (trust) và các cơ chế, giao thức đồng thuận trong blockchain (Consensus). Ngoài ra, các bài tập lớn trong môn học sẽ giúp các bạn học viên áp dụng kiến thức và thực hành các kỹ năng đã học với các đề bài thực tế trong công nghệ blockchain.
Chúc các bạn học tốt!
MỤC TIÊU MÔN HỌC
Sau khi học xong môn này, học viên sẽ đạt được các chuẩn kiến thức, kỹ năng đầu ra như sau:
- Hiểu về lịch sử, các khái niệm chính, cấu trúc và các nguyên tắc hoạt động chính của công nghệ blockchain.
- Hiểu được các khái niệm, cấu trúc và nguyên lý hoạt động của Ethereum blockchain.
- Hiểu được cơ chế bảo mật, thẩm định giao dịch, thẩm định khối, tính bất biên của dữ liệu trong blockchain.
- Hiểu được khái niệm về sự tin cậy (trust), các quy tắc và cơ chế xây dựng đồng thuận (concensus) trong blockchain.
- Hiểu và có thể thiết lập, thực hành với Ethereum blockchain.
TRẢI NGHIỆM HỌC TẬP
Để bắt đầu, các bạn nên dành một vài phút khám phá môn học và cấu trúc chung. Môn học sẽ có 4 phần với 17 bài học. Xuyên suốt các bài học và cuối mỗi học phần, các bài thực hành Lab và bài tập lớn (Project) sẽ giúp các bạn tăng cường việc ghi nhớ và vận dung lý thuyết đã học vào các bài toán thực tế. Để việc học tập được hiệu quả, hãy luôn trau dồi kiến thức, không ngừng học hỏi, nghiên cứu và lập cho mình một kế hoạch học tập hợp lý để hoàn thành khóa học một cách xuất sắc.
Trong thời gian học (dự kiến là 6 tuần), việc phân bổ tuần học là rất quan trọng. Nếu các bạn có bất cứ câu hỏi nào hãy kết nối với Mentor để được giải đáp.
CẤU TRÚC MÔN HỌC
Phần 1: Các khái niệm cơ bản trong Blockchain
- Bài 1 - Blockchain
- Bài 2 - Bitcoin & Blockchain
- Bài 3 - Cấu trúc blockchain
- Bài 4 - Các hoạt động cơ bản
- Bài 5 - Tìm hiểu kỹ hơn về Bitcoin
Progress Test 1
Phần 2: Nền tảng Ethereum Blockchain
- Bài 6 - Smart Contract (Hợp đồng thông minh)
- Bài 7 - Cấu trúc Ethereum
- Bài 8 - Các hoạt động cơ bản của Ethereum
- Bài 9 - Mô hình Incentive
Progress test 2
Project 1 - Sử dụng CLI để tương tác với nền tảng blockchain
Phần 3: Các thuật toán và kỹ thuật
- Bài 10 - Public-Key Cryptography
- Bài 11 - Hashingli>
- Bài 12 - Tính toàn vẹn của giao dịch
- Bài 13 - Bảo mật Blockchain
Progress Test 3
Phần 4: Các yếu tố cơ bản của Tín nhiệm - Trust
- Bài 14 - Hệ thống phi tập trung
- Bài 15 - Giao thức đồng thuận
- Bài 16 - Robustness
- Bài 17 - Fork
Progress test 4
Project 2 - Làm quen với Ethereum Blockchain
Project 3 - Xây dựng và giao dịch trên Private Ethereum Blockchain
CHUYÊN GIA THIẾT KẾ VÀ PHẢN BIỆN MÔN HỌC
THIẾT KẾ MÔN HỌC: Vũ Hồng Việt
- Chuyên gia công nghệ của FPT
- Hơn 20 năm kinh nghiệm về phát triển giải pháp phần mềm (CSC & FPT)
- Chuyên gia nghiên cứu về các lĩnh vực: Blockchain, hệ thống giao thông thông minh (ITS)
THIẾT KẾ MÔN HỌC: Nguyễn Đức Minh Quân
- Quản lý Giải pháp Phần mềm thông tin FPT
- 10 năm kinh nghiệm về phát triển giải pháp phần mềm
- 7 năm kinh nghiệm R&D và triển khai giải pháp Giao thông Thông minh, giải pháp thành phố thông minh
- Chuyên gia nghiên cứu về Blockchain & diễn giả quen thuộc tại Vietnam Web Submit, Vietnam Mobile Day, FPT Tech Day,...
- Online profile: https://www.linkedin.com/in/ducminhquan/
PHẢN BIỆN MÔN HỌC: PGS.TS. Trương Anh Hoàng
- Trưởng phòng Lab Blockchain, ĐH Công nghệ, ĐHQG Hà Nội
- Phó giáo sư ĐH Công nghệ, ĐHQG Hà Nội từ năm 2007
- Bảo vệ luận án tiến sĩ ĐH Bergen, Na-uy (2006) về các hệ thống ngôn ngữ Abstract component
- Hơn 15 năm kinh nghiệm phát triển phần mềm cho di động, Linux, Windows và các nền tảng mạng sử dụng C/C++, VB, C#, Python, JavaScript ở nhiều công ty như Punch Entertainment, Olivetti, Getronics, MITEC
CHUYÊN GIA THIẾT KẾ VÀ PHẢN BIỆN KHUNG CHƯƠNG TRÌNH
TS. Đặng Minh Tuấn
- Trưởng phòng Lab Blockchain, Giảng viên Học viện Công nghệ Bưu chính viễn thông (PTIT)
- Phó chủ tịch tại FINTEC CLUB/Hiệp hội Ngân hàng Việt Nam
- Trưởng Tiểu ban kỹ thuật tại Tiểu ban Kỹ thuật tiêu chuẩn quốc gia SC35
- Tác giả của phần mềm Vietkey
- Hơn 30 năm kinh nghiệm phát triển phần mềm và bảo mật thông tin
Th.S Nguyễn Anh Tú
- Trưởng nhóm Kỹ sư Blockchain tại Tomochain về lĩnh vực Blockchain và Cloud Computing
- Lập trình viên được ủy quyền của Apache Software Foundation và Cloud Native Computing Foundation
- Trưởng nhóm kỹ sư của nhiều phần mềm mã nguồn mở điện toán đám mây (kubeless, kubeapps, kompose, kubewatch)
- Thạc sỹ về Hệ thống Phân tán tại Thụy Sỹ
NGUỒN HỌC LIỆU
Trong thời đại hiện nay, mỗi môn học đều có nhiều nguồn tài liệu liên quan kể cả sách in và online, FUNiX Way không quy định một nguồn học liệu cụ thể mà khuyến cáo để học viên chọn được nguồn phù hợp nhất cho mình. Trong quá trình học từ nhiều nguồn khác nhau theo lựa chọn cá nhân đó, khi sinh viên phát sinh câu hỏi thì sẽ được kết nối nhanh nhất với mentor để được giải đáp. Toàn bộ phần đánh giá bao gồm các câu hỏi trắc nghiệm, bài tập, dự án và thi vấn đáp do FUNiX thiết kế, xây dựng và thực hiện.
Các môn học của FUNiX không quy định bắt buộc tài liệu học tập, sinh viên có thể chủ động tìm và học từ bất kỳ nguồn nào phù hợp, kể cả sách in hay nguồn học liệu online (MOOC) hay các website. Việc sử dụng các nguồn đó do học viên chịu trách nhiệm và đảm bảo tuân thủ các chính sách của chủ sở hữu nguồn, trừ trường hợp họ có sự hợp tác chính thức với FUNiX. Nếu cần hỗ trợ, học viên có thể liên hệ phòng đào tạo FUNiX để được hướng dẫn.
Dưới đây là một số nguồn học liệu của môn học mà học viên có thể tham khảo sử dụng. Việc liệt kê nguồn dưới đây không nhất thiết hàm ý rằng FUNiX có sự hợp tác chính thức với chủ sở hữu của nguồn: Coursera, tutorialspoint, edX Training, or Udemy.
KÊNH PHẢN HỒI
FUNiX sẵn sàng đón nhận và trao đổi về mọi ý kiến góp ý, phản hồi liên quan đến học liệu qua email [email protected]