Dựa trên những van đề đó, khoá luận này đưa ra một số giải phápxây dựng hệ thống có tên là ISCV, sử dụng Công nghệ Chuỗi khối Blockchain vàcác công nghệ liên quan bao gồm bộ khung GoLang
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA HỆ THÓNG THÔNG TIN
DANG MINH QUAN - 19520867
LE MAI DUY KHANH - 19521679
KHOA LUAN TOT NGHIEP
XAY DUNG HE THONG HO SO CA NHAN VA HO TRO
TUYEN DUNG CHO DOANH NGHIEP THONG QUA CÔNG NGHỆ BLOCKCHAIN VA TRÍ TUE NHÂN TẠO
BUILDING A CURRICULUM VITAE SYSTEM AND SUPPORTING
BUSINESS RECRUITMENT THROUGH BLOCKCHAIN
TECHNOLOGY AND ARTIFICIAL INTELLIGENCE
KY SU NGANH HE THONG THONG TIN
GIANG VIEN HUONG DAN
PGS TS NGUYEN DINH THUAN
ThS VU MINH SANG
TP HO CHÍ MINH, 2023
Trang 2LỜI CẢM ƠN
Lời đầu tiên chúng em xin chân thành cảm ơn PGS TS Nguyễn Đình
Thuân và ThS Vũ Minh Sang Trong quá trình làm khóa luận tốt nghiệp với các
thầy, chúng em đã nhận được sự quan tâm và chỉ dạy tận tâm, nhiệt huyết của các
thầy Các thầy đã giúp chúng em tích lũy thêm nhiều kiến thức về công nghệChuỗi khối (Blockchain), các thuật toán máy học và mô hình dự đoán
Đề hoàn thành khóa luận này một cách tốt nhất, chúng em chân thành cảm
ơn các thầy cô giáo trong Khoa Hệ thống Thông tin đã cung cấp cho chúng emnhững kiến thức chuyên ngành dé góp phan vào sự hoàn thành của khóa luận
Trong quá trình thực hiện khóa luận cũng không tránh được việc gặp một
chút sai sót nhất định Vì vậy, chúng em mong sự góp ý của Thay, Cô giáo dékhóa luận của chúng em hoàn chỉnh hơn và cũng giúp chúng em có nhiều kinh
nghiệm hơn trong quá trình học tập và nghiên cứu.
TP Hồ Chí Minh, ngày tháng năm 2023
Sinh viên thực hiện Đặng Minh Quân
Lê Mai Duy Khánh
Trang 3MỤC LỤC
Chương 1 GIỚI THIỆU VÀ MÔ TẢ DE TÀI 2-2 52 2+££+£E+E++E+zrxerxez 3
1.1 Lý đo chọn đề tài -c- 5s St SE SE E1 1111121121121 11 1111111 cv 3
1.2 Mục tiêu đề tài 5- 2+2 c2 2212221 2211211121121111111 211211111 ekee 4
1.3 Đối tượng nghiên cứu - 2 2+ +k£+k#EE#EEEEEEEE2112112171 717111211, 4
1.4 Phạm vi nghién CỨU 6 1x 93 931931911 1 1H HH ng ng ng 5
1.5 Phương pháp thực hiỆn - c2 3213211151131 31 1151111111 EErrrrk 5
1.6 Kiến trúc đề tài -kSk2 2 1E21E21211211211211111211 211111111 7
1.7 Môi trường phát triỂn 2-©52++s+EE£EES2EE2EEEE1E7121121127171.21 11 1x 9
Chương 2 CÁC CÔNG TRÌNH NGHIÊN CỨU LIEN QUAN - 10
2.1 Các công trình nghiên cứu liên quan về hệ thống Blockchain 10
2.1.1 | Blockchain-based recommender systems: Applications, challenges, and future opportunities [48] ce cececesccceteceseeeseeceeeesaeeeseeceeeeeaeeeeaeeeseeesaes 10
2.2 Các công trình nghiên cứu liên quan về hệ thống khuyến nghị 10
2.2.1 — CareerRec: A Machine Learning Approach to Career Path Choice for Information Technology Gradutes [16] ccceesceescesseeeseeeeneeessecenneeeeeeeaeeee 10
2.2.2 Emotion based music recommendation system using LSTM-CNN architecture [39] oo ccccccsccccsssccesseccessscceesseeeeesecessseeceesseseessseeessseeeesseeeeesseeeeees 11
2.3 Các công trình nghiên cứu liên quan về mô hình Big Five - 11
2.3.1 The relationship between the Big Five personality traits and academic motivation [226 ] - - << + E221 18111353111 EEESS vs eeeree 11
2.3.2 A Computational Personality Traits Analysis Based on Facial Geometric Features [2Ð] - - ¿+ + c1 1133611113351 11154 11811115815 11811 111811111 x2 12
2.4 Phương pháp dé xuất - 2-52 tESEEkEEEEEEEEEE1121121121111E 11111111 1x, 12
Chương 3 NGHIÊN CỨU THỰC NGHIỆM 2-2 + +££+£++rxerxezez 14
Trang 43.1 Công nghệ Chuỗi khối và hệ thống ISCV -¿ -¿©c++cx+cxescceee 14
3.1.1 Giới thiệu về Công nghệ Chuỗi khối - ¿52 5+©5+2c5+2 14
B.LL.1 Dinh nghia no -L 14
3.1.1.2 Các thành phan của hệ thống Chuỗi khOi cece l6
3.1.2 _ Hệ thống Blockchain ISCV ¿2-52 s+Ez+E+E£EerEerxerxerseree 30
3.1.2.1 Kiến trúc hệ thống ¿- 252 +E+E£EEEEEEEEEE2E12E 2121 EExrrkrek 30
3.1.2.2 Blockchain layer 1 —ISCV O HH, 32 3.1.2.3 Smart Contract [SCV G TH HS HH vn ng vn 34 3.1.2.4 Blockchain layer 2 — ISCV Machine 5 5< 5< <<s sex 35
3.1.2.5 Blockchain layer 3 —ISCV StOrage s- sec 37
3.2 Hệ thống khuyến nghị công viỆC - 2 + + ++££+E£+E£Eerkerkerxerxerxee 39
3.2.1 Thu thập dữ liệu ¿ -¿©-c©cc+cxeerxerreerreerkesrxee 39
3.2.2 _ Xây dựng mô hình - + 1k SH ng ng kg g 43
3.2.2.1 Mạng than kinh truyền thang (ENN): -2©-s+cscxces 433.2.2.2 Mô hình tuần tự (KN): 2-©22©++2cxc2zEtExteEkrsrxerrrerkeerxee 443.2.2.3 Mạng thần kinh tích chập (CNN): Hee 443.2.2.4 Bộ nhớ dài-ngăn hạn (LS'TM): - Ăn S S2 Sex 453.2.2.5 Bộ nhớ dài-ngắn hạn hai chiều (BiLSTM)): -. -2-5¿ 463.2.2.6 Mô hình kết hợp CNN-LSTM 2-22 ©5z+2xc2zxczxerrxeerxee 463.2.2.7 Hồi quy Logistic (LR): -¿-©5¿©2+22+ccxeerkrsrxerrrerxeerxee 473.2.2.8 K láng giéng gần nhất (KNN);: ceccecceseesessesseeseessesseesesstesesseeseess 47
3.2.2.9 Phương pháp đánh giá mô hình - 6s sxcsecsseeseesesee 48
3.2.3 Áp dụng mô hình vào ISCV -¿ -¿+c++2x++rxerkrzrxrrrrerkeerxee 49
3.3 Big Five Personality Ăn nh HH Hư, 49
Trang 53.3.1 Xây dựng mô hình Big EIve - - 5 5 ng ngư 52
3.3.1.1 Khảo sát Big Five - +22 kEEk 2121122121211 crkrrei 52
3.3.1.2 Mô hình Visual - ¿2 +22 222A 212Eerkerkrrei 53
3.3.1.3 Công thức đề xuất Big Five essessessessesteseeseeseseesees 613.3.1.4 Tổng hợp Big Five - + ccctct 2t EE121121121121 111111 xe 62Chương 4 PHAN TÍCH THỰC NGHIỆM 2-2 2 ++E+Ee£Eerxerxersree 65
4.1 Giai đoạn 1 — Xây dựng ứng dụng ISCV - S cSS nen 65
4.1.1 Sơ đỒ US€CAS€ St S1 E121 EE15111111117111711111E11171 11.1 65
4.1.2 Các tinh năng chính của hệ thống ISCV - ¿-¿©-5+-: 65
4.1.2.1 Lưu trữ hồ sơ sith viên 2¿-s¿©2++©++cx+2Execxeerxesrxesrxeee 65
4.1.2.2 Quy trình tạo một CV tùy chỉnh theo phong cách kéo thả 67
4.1.2.3 Quy trình xác thực chứng chi WG cece £<s<++s<+ece+ 69
4.2 Giai đoạn 2 - Triển khai hệ thống khuyến nghị công việc 71
4.2.1 BO dit liệu và cài đặt -cccccccrerkerkerkrrrrrrerrerveee 71
4.2.2 Phân tích kết quả thực nghiệm -¿- ¿©+z+++x++zx+zzxeez 71
4.2.3 Mạng xã hội công việc ISCV , - HH HH ng ng cư, 72 4.3 Giai đoạn 3 — Phân tích, đánh giá Big Five Personality - - 74
4.3.1 Bộ dit liệu và cài đặt ¿ :-c+ccxcrSEErerkrrkrrrrerrrrrerrees 74
4.3.2 Phân tích kết quả thực nghiệm 2-2 2+5++££+E+zxerxerxsrxee 754.3.3 Quy trình phỏng van Big Five 25c 552 cxc2cxccxrerkesrxrerxees 79Chương 5 KET QUÁ ĐẠT ĐƯỢC VA HƯỚNG PHÁT TRIEN 82
5.1 Kết quả đạt ƯỢC - -.- G1 x11 TH HH TH HH HH, 82
5.2 Hướng phát triển - 2 ++++E+EE+EkSEE2EEEE1E712112112117171.211 11 T1, 83
TÀI LIEU THAM KHẢO - - St S9SESE+EEEEEE+EEEEEEEEEEEEEEEEEEEEEESEEEEEErkerrrrrkrree 84
Trang 63.3 Quá trình của một GIAO dỊCHh - s11 nh hư, 19
3.4 Cấu trúc của các khối -: +c+++trtEkkrrrrtrttirrrrtrrirrrrriiirrrrirrrre 213.5 Cơ chế hoạt động của POA - ¿5c 2+EE+EE£EE2E2EE2EEEEEEEEEEEerkerreee 23
3.6 So sánh PoA vs POS vs PO ch HH HH HH ng ng cư 25
3.7 Cầu nối Oracle giữa ISCV Go và ISCV Machine -: 263.8 Ví trong Chuỗi khối ¿ 2¿ 22 5++EE+2EE22EE2EE2EEEEEEEEESEkrrrrrrrrsrei 27
3.9 Đường cong EdDSA HH HH HH rưy 28
3.10 Tổng quan hệ thong Blockchain ISCV :-2¿ 2 5¿+++zssscsz 30
3.11 Hệ thống Blockchain layer 1 —ISCV Go -2¿©5¿©522c++cxcseez 32
3.12 Smart Contract trên hệ thống ISCV Go 2-2 2+c£E+£xerxerssrsee 34
3.13 Mạng Blockchain layer 2 — ISCV Machine -. 55-5 s + s+<css+ 35 3.14 Hoạt động phát tán tệp tin của IPFS - -. 5 + nS+s+sikseseeree 37
3.15 Cách IPFS chia nhỏ các file thành cây thư mục -‹+ >5 38
3.16 Sơ đồ quy trình của hệ thống khuyến nghị công việc - 393.17 Kiến trúc Selenium WeblDriVer 2 2 s©x£+x+£++£xezxezxeerxerxerseee 403.18 Kiến trúc của Xpath trong Selenium - 2-2 2 2+ +x+zx+zxerssrsee 40
3.19 Hoạt động của CSS S€Ï€COTS Ăn 11v HH HH ng ng cư, 4I
3.20 Sự phân bô của các loại CÔNG VIỆC - - SH ng nhiệt 423.21 Sự phân bổ của các ngôn ngữ lập trình -¿2¿ + sz+zx+zs+sr+z 42
3.22 Kiến trúc mô hình ENN c-¿:-cccvvcrrrrkrrrrrtrtrrrrrrrrirrrrrrrrree 44
3.23 Kiến trúc mô hình KNE ¿-+c+++ttExtrrtrrtrrrtrkirrrrrirrrrrirrrre 443.24 Kiến trúc mô hình CNN ¿+ ++£++£+EE+EE2EEEEEEEtEEerEkrrkrrkerkeee 453.25 Kiến trúc mô hình LSTM ¿-©++++c++trtrrttrtrrrtrrrrrrrrrrrrrrrre 463.26 Kiến trúc mô hình BiLSTM 2 2 S+E£+E+EE+EEtrEerErrxrrxerkeee 463.27 Kiến trúc mô hình kết hợp CNN-LSTM 2-2: 2+2+s+cszxzee 47
Trang 7I6 2.8\/008001))0805)150ã1 212777 51
Hình 3.29 Sơ đồ quy trình của Big Five Personality -¿ s¿©csc5se+cs+ 52Hình 3.30 Kiến trúc mô hình Visual c.cccccccsessesseessessesssesseeseeseesesseeseeseesseeseeseees 54Hình 3.31 Các mốc trên khuôn mặt được trích xuất bằng thuật toán 3DDFA_ V2 56
Hình 3.32 Điểm mốc trên khuôn mặt của một người trong hai khung hình 57
Hình 3.33 Dịch các mốc trên khuôn mặt trong mỗi khung dé đặt gốc mũi ở gốc 58Hình 3.34 Kết quả sau khi chuẩn hóa các mốc trên khuôn mặt 59Hình 3.35 Biểu đồ Big Five 2¿- 5: 2c 222212221 211221121112112112111211 21k 63
Hình 3.36 Các khía cạnh của từng tinh cách trong mô hình Big Five 64
Hình 4.1 Sơ đồ Usecase scscccssssssssssseessessnseescssnecesssnecessnesecessnneeessnneeseesnnneeesseen 65
Hình 4.2 Quy trình Lưu trữ hồ sơ sinh Vien cccceccssessessessessessesseseesessessessessessesseees 65
Hình 4.3 Activity Diagram Lưu trữ hồ sơ sinh viên - 2 252 + s2 =s+£+2 s2 66
Hình 4.4 ISCV — Trang thông tin cá nhân + «+ svEeeeeeeeseeeersersee 67 Hình 4.5 Quy trình Tao CV tùy chỉnh trên mang Blockchain ISCV 67 Hình 4.6 Activity Diagram Ta0 C - c1 HH HH HH 68 Hình 4.7 ISCV — Tạo C uc cu HH HH HH HT TT TH ng Hàn HH gà 69 Hình 4.8 Quy trình Xác thực chứng chỉ IG - «5< «<< ++seesseeesseees 69 Hình 4.9 Activity Diagram Xác thực chứng chi IÏG -««++-<++see++sss+ 70 Hình 4.10 ISCV — Xác thực chứng chỉ IÍC - ¿5 +6 +++x£++kEseeEeeeeeeseersee 70 Hình 4.11 Quy trình Mạng xã hội công việc ISCV - ee Sàn, 72 Hình 4.12 Activity Diagram Mạng xã hội công việc ISCV -c co 73
Hình 4.13 ISCV — Trang mạng xã hội công VIỆC - 55c s + ssvessserereere 74
Hình 4.14 Dữ liệu video phỏng vấn Big FEive - 2-55 252c+Eckerkerkerkerkrree 76Hình 4.15 Dữ liệu Biéu đồ Big Five -2¿- 5:22 22+22Et2EEC2EEEEEerkrrrkerrrsree 76
Hình 4.16 Báo cáo Big Five — Trang Ì c s1 H g rrt 77
Hình 4.17 Báo cáo Big Five — Trang 2 - - sksknHnHhnHhnHhnHnHhnH g grưệt 78
Hình 4.18 Quy trình Phỏng vấn Big Five - 2-2 22522EE+EEv£EerEerrssrxerkerex 79Hình 4.19 Activity Diagram Phỏng van Big Eive 2 2©52+cccxecxerxersrree 81
Trang 8DANH MỤC BANG
Bảng 4.1 So sánh các thuật toán của hệ thống khuyến nghị công việc Bảng 4.2 So sánh kết quả dự đoán tính cách của các thuật toán
Trang 9DANH MỤC TỪ VIET TAT
Số thứ tự | Thuật ngữ Mô tả
1 Al Artificial Intelligence
2 API Application Programming Interface
3 BiLSTM Bidirectionla Long-Short Term
Memory
4 CNN Convolutional Neural Network
5 CNTT Cong nghé Thong tin
6 CPU Central Processing Unit
7 CV Curriculum Vitae
8 FNN Feed Forward Neural Network
9 IPFS Interplanetary File System
16 PoA Proof of Authority
17 PoS Proof of Stake
18 PoW Proof of Work
Trang 10TÓM TẮT KHÓA LUẬN
Trong thời đại 4.0 phát triển công nghệ mạnh mẽ hiện nay, các công việc liênquan đến Công nghệ Thông tin ngày càng trở nên đa dạng và phong phú hơn Điềunày ảnh hưởng ít nhiều đến sinh viên Công nghệ Thông tin trong việc xác định côngviệc tương lai phù hợp với năng lực của bản thân Đồng thời hồ sơ sinh viên phải đảmbảo minh bạch và sinh viên không thê tuỳ ý ghi các thông tin như chứng chỉ, điểm
số, những thông tin này phải được trường học hoặc các trung tâm cấp tín chỉ đưa lên
hồ sơ của sinh viên Dựa trên những van đề đó, khoá luận này đưa ra một số giải phápxây dựng hệ thống có tên là ISCV, sử dụng Công nghệ Chuỗi khối (Blockchain) vàcác công nghệ liên quan bao gồm bộ khung GoLang Ethereum (go-ethereum),
Nodejs, cơ chế đồng thuật Bằng chứng uỷ quyền (Proof of Authority — PoA), Hop
đồng thông minh (Smart Contract), Hệ thong tệp tin phân tán ngang hàng (IPFS) dé
tìm việc làm và kết nối với các nhà tuyên dụng với sinh viên Công nghệ Thông tin tại
Việt Nam va trong khu vực Đồng thời, khoá luận này tiến hành triển khai hệ thongkhuyến nghị công việc sử dụng các thuật toán máy học bao gồm các mô hình Mạngthần kinh nhân tạo (Neural Networks), Bộ nhớ dai-ngan han (Long-Short TermMemory — LSTM), K láng giéng gan nhất (K-Nearest Neighbor - KNN), Hỏi quyLogistic (Logistic Regression — LR) dé giúp sinh viên lựa chọn một công việc phủhợp dựa trên kỹ năng, thực lực của họ Hệ thống này được dao tao và thực nghiệmbang cach sử dung tap dữ liệu vỀ các công việc CNTT được thu thập thông tin trêncác trang tìm kiếm công việc, việc làm Sau đó, tiến hành đánh giá các thuật toán
bằng cách sử dụng các chỉ số đánh giá của Ma trận nhằm lẫn đề lựa chọn mô hình tốt
nhất và phù hợp nhất Ngoài ra, khoá luận này còn nghiên cứu và áp dụng công nghệ
xử lý nhận diện khuôn mặt, âm thanh kết hợp với Mô hình 5 tinh cách lớn (Big FivePersonality Model) để xây dựng tính năng Phỏng van Big Five nhằm phân tích vađánh giá hành vi, cảm xúc của ứng cử viên Từ đó, giúp cho doanh nghiệp rút ngănđược thời gian phỏng vấn và đảm bảo được sự hiệu quả trong việc lựa chọn ứng cửviên phù hợp cho vị trí công việc tuyên dụng Với hệ thong ISCV, sinh viên sẽ khôngcòn phải lo lắng trong việc suy nghĩ định hướng hay công việc nào sẽ phù hợp với
Trang 11bản thân, giúp kết nối với các nhà tuyên dụng một cách hiệu qua dé có thêm nhiều cơ
hội việc làm chất lượng, uy tín
Nội dung khóa luận gồm 6 chương chính
- _ Chương 1: GIỚI THIEU VA MÔ TẢ DE TÀI
- _ Chương 2: CÁC CÔNG TRÌNH NGHIÊN CỨU LIEN QUAN
- _ Chương 3: NGHIÊN CỨU THỰC NGHIỆM
- Chương 4: PHAN TICH THỰC NGHIEM
- Chương 5: KET QUA ĐẠT ĐƯỢC VA HƯỚNG PHÁT TRIEN
Trang 12Chương 1 GIỚI THIỆU VÀ MÔ TẢ ĐÈ TÀI
1.1 Lý do chọn đề tài
Ngày nay với sự phát triển vượt bậc của thời đại số hóa 4.0, các công nghệ mớixuất hiện càng nhiều và Chuỗi khối (Blockchain) chính là một trong số những côngnghệ tiêu biểu có tiềm năng giúp nhiều lĩnh vực trở nên phát triển, đáng tin cậy và an
hội việc làm hơn, vì các công ty thường yêu cầu lực lượng lao động có tay nghề cao
Do đó, điều quan trọng là phải đánh giá các đặc điểm tính cách của chính mình khixem xét con đường sự nghiệp để đảm bảo sự phù hợp tốt giữa thế mạnh của một
người và yêu câu của công việc.
Nhận thấy được 2 vấn đề chính đối với sinh viên và doanh nghiệp trong côngviệc tuyển dụng đó là hồ sơ sinh viên không trung thực như là ghi không chính xáccác thông tin điểm số và chứng chỉ, đồng thời doanh nghiệp và sinh viên chưa có mộtmạng xã hội dé tìm kiếm việc làm công khai và minh bạch, Dé giải quyết nhữngvan đề đó cùng với sự ra đời, phát triển của Công nghệ Chuỗi khối (Blockchain) [40]
và Trí tuệ nhân tạo (AI), khoá luận này tiến hành tìm hiểu và đưa ra các tinh năng nỗibật của công nghệ Chuỗi khối (Blockchain) để ứng dụng vào trong đời sống, tạo nênmạng xã hội ISCV Hệ thong là nơi lưu trữ va chia sẻ Hồ so cá nhân (CurriculumVitae) của sinh viên Sử dụng công nghệ Chuỗi khối (Blockchain) giúp đảm bảo tính
an toàn dữ liệu, phòng chống bị tấn công nhờ vào việc yêu cầu sự đồng thuận của
toàn hệ thống, ngăn chặn sửa đổi, luôn luôn minh bạch, công khai và là một mạng xã
hội Blockchain hoạt động độc lập không phụ thuộc vào bat kì bên nào liên quan
Đồng thời sử dụng kết hợp các thuật toán máy học dé tạo ra một mạng xã hội gợi ý
việc làm dựa vào năng lực của sinh viên [30] Bên cạnh đó giúp giảm thiểu thời gian
Trang 13tuyển dụng bằng công nghệ xử lý nhận diện khuôn mặt, âm thanh kết hợp với Mô
hình 5 tính cách lớn (Big Five Personality Model) [3] trong giai đoạn phỏng van désàng lọc, lựa chọn ứng cử viên phù hợp cho vị trí tuyển dụng của công ty
1.2 Mục tiêu đề tài
Mục tiêu của đề tài là xây dựng mộ hệ thong mang xã hội việc làm có tên ISCV
đê kết nôi sinh viên với nhà tuyên dụng Điêm cải tiên của hệ thông mạng xã hội
ISCV này là sử dung công nghệ Chuỗi khối (Blockchain) dé bao mật, minh bạch dữ
liệu, tránh khai gian làm giả các chứng chỉ và Trí tuệ nhân tạo (AI) để khuyến nghịcông việc phù hợp với phân tích đánh giá tính cách bản thân Bao gồm:
1.3.
Đăng kí thông tin cá nhân, xác thực trình độ kĩ năng, yêu cầu đóng điểm
chứng chỉ IIG
Thiết kế, tuỳ chỉnh CV dựa trên các thông tin cá nhân, kĩ năng, chứng chỉ
mà sinh viên đã khai báo thông tin để tạo ra một CV chuyên nghiệp, ấn tượngcho riêng mình Dữ liệu được ghi vào Chuỗi khối (Blockchain) để đưa CV
lên mạng xã hội một cách công khai và minh bạch
Khuyến nghị ra các bài đăng tuyển dụng từ doanh nghiệp có việc làm phù
hợp với thông tin kĩ năng cua sinh viên từ CV
Đề nghị Phỏng van Big Five sau khi ứng tuyên công việc dé phân tích, đánhgiá tính cách nhằm xem xét bản thân đang có xu hướng tính cách như thế
nào? Đồng thời giúp cho doanh nghiệp biết được ứng cử viên có phù hợp vớimôi trường công việc đang tuyên dụng hay không?
Đối tượng nghiên cứu
Ứng dụng Blockchain vào lĩnh vực giáo dục
Mạng xã hội việc làm tại Việt Nam dành cho sinh viên Công nghệ Thông tin
Hệ khuyến nghị công việc trong mạng xã hội việc làm ITTrí tuệ nhân tạo, máy học, mạng thần kinh, thị giác máy tính, mô hình BigFive, phỏng van tính cách
Trang 141.5.
Phạm vi nghiên cứu
- _ Nghiên cứu áp dụng các cách thức truyền tin và lưu trữ bằng phương pháp
truy xuất đữ liệu JSON-RPC [9] trên hệ thống mạng Blockcham 3 lớp của
ISCV
- _ Nghiên cứu các ngôn ngữ lập trình Golang, Typescript, Python cùng với các
framework Go Ethereum, Fastify Nodejs, Flask dé xây dựng hệ thống ISCV
- Neghién cứu các thuật toán may hoc (Neural Networks, LSTM, K-Nearest
Neighbor, Logistic Regression) và kết hợp các thuật toán với nhau LSTM) dé xây dựng hệ khuyến nghị
(CNN _ Nghiên cứu Mô hình 5 tinh cách lớn (Big Five) va công thức tính điểm tính
cách trong mô hình Big Five
- Nghiên cứu công nghệ xử lý nhận diện khuôn mặt, âm thanh với phương
pháp Mạng thần kinh tích chập (Convolutional Neural Network)
Phương pháp thực hiện
- _ Thiết kế, xây dựng hệ thống kết nối sinh viên với nhà tuyển dụng sử dụng hệ
thống mạng Blockchain 3 lớp của ISCV
- Blockchain thứ nhất dé lưu trữ hồ sơ tên là ISCV Go, sử dụng ngôn ngữ lập
trình Golang và Framework Go Ethereum Nhiệm vụ chính của Blockchain
này là đảm bảo an toàn và minh bạch dữ liệu bằng cơ chế đồng thuận Băngchứng uỷ quyền (Proof of Authority - POA)
- Hop đồng thông minh (Smart Contract), sử dụng ngôn ngữ lập trình Solidity
Nhiệm vụ chính là triển khai các chức năng trên Blockchain ISCV Go, đồng
thời tuân theo các quy tắc của những bản đề xuất nâng cấp Ethereum
(Ethereum Improvement Proposals - EIPs) dé đảm bảo bảo mật đữ liệu trên
hệ thống
- Blockchain thứ hai, tên là ISCV Machine, sử dụng ngôn ngữ lập trình
Typescript và Framework Fastify Nodejs, chức năng chính là thực hiện các
nhu câu máy học và nâng câp cũng như tăng tôc các chức năng cho hệ thông
Trang 15Blockchain thứ nhất Hệ thống này chỉ dùng để lắng nghe và thực thi sự kiện
cho nên không cần thiết đặt cao tính bảo mật như Blockchain thứ nhất
Blockchain thứ 3 tên là ISCV Storage, chức năng chính là tao ra một mang
lưới lưu trữ ngang hàng và không thé sửa đổi các dit liệu như tệp hình ảnh,đoạn phim Mục đích là giữ cho các tệp tin không thể bị sửa đổi và đáp ứngvới tốc độ cao Khoá luận này đã áp dụng bộ Framework IPFS để xây dựng
Huấn luyện và thực nghiệm các thuật toán máy học (Neural Networks,
LSTM, K-Nearest Neighbor, Logistic Regression và kết hợp các mô hình
với nhau) trên bộ dữ liệu đã thu thập và xử lý dé xây dựng hệ thống gợi ý
công việc phù hợp dựa trên các kĩ năng
Đánh giá độ chính xác và hiệu quả về khả năng khuyến nghị của các mô hìnhthông qua các chỉ số đánh giá của Ma trận nhằm lẫn
Áp dụng mô hình khuyến nghị vào hệ thống ISCV dé phát triển mang xã hội
công việc
Tổ chức cuộc khảo sát Big Five bằng cách quay video phỏng vấn các tình
nguyện viên tham gia dé thu thập được bộ dữ liệu về khuôn mặt, tính cách
của người Á Đông nói chung và người Việt Nam nói riêng
Sử dụng công nghệ xử lý nhận diện khuôn mặt, âm thanh với phương pháp
Mạng thần kinh tích chập (Convolutional Neural Network) và mô hình BigFive dé phân tích, dự đoán ra số điểm tính cách của người đó
Ứng dụng mô hình phân tích, dự đoán tính cách vào hệ thống ISCV để xây
dựng tính năng Phỏng van Big Five hỗ trợ cho doanh nghiệp
Trang 161.6 Kiến trúc đề tài
ISCV là một hệ thống mạng xã hội hỗ trợ tìm việc làm và kết nối với các nhà
tuyển dụng của công ty cho sinh viên Công nghệ Thông tin được xây dựng bằng cách
kết hợp công nghệ Blockchain với sức mạnh Trí tuệ nhân tạo Kiến trúc hệ thống
được minh họa trong Hình.
Trang web tim Thu thập dữ liệu Tiên xử lý dữ liệu
kiếm việc lam
é thống khuyén nghị công việc
Dữ liệu được L_ yÌChuẩn hoá dữ liệu Huan luyện và | 1
lam sạch danh gia mo hình
Xay dung tinh nang
Phéng van Big Five
Khao sat Big Five
Mô hinh Visual Cong thirc Big
rel Bao cao Big Five
Thông tin sinh viên
Khuyễn nghị công
việc phủ hợp
Ứng tuyén CV
ee Tinh nang Phong
van Big Five
¥
Dữ liệu phỏng van
Trang 17Mô tả kiến trúc đề tài gồm 3 giai đoạn chính như sau:
Giai đoạn 1: Xây dựng hệ thống ISCV
Thiết kế trang web kết nối nhà tuyển dụng với sinh viên bằng hệ thống
blockchain ISCV, được xây dựng bằng Framework React, Go-Ethereum và
ngôn ngữ lập trình Golang, Typescript, Solidity
Mở rộng khả năng tuỳ chỉnh CV của sinh viên và lưu chúng dưới dạng NFT
Giai đoạn 2: Triển khai hệ thống khuyến nghị công việc
Thu thập dữ liệu về công việc tuyên dụng và các kĩ năng yêu cầu từ các trang
web tuyên dụng uy tín ở Việt Nam (TopDev, ITViec, ) và tiền xử lý dữ
liệu
Trích xuất, biến đổi các đặc trưng từ bộ dữ liệu thu thập được để phù hợpvới việc huấn luyện và thực nghiệm các mô hình máy hoc (Neural Networks,LSTM, KNN, LR và kết hợp các mô hình với nhau) Đánh giá các mô hìnhdựa trên các chỉ số Độ chính xác (Accuracy), Độ chính xác dương tính(Precision), Độ phủ (Recall) và Fl-Score tổng quát (Micro-F1) của Ma trậnnhằm lẫn (Confusion Matrix) dé tìm ra được mô hình tốt nhất
Đưa mô hình tốt nhất vào ứng ISCV để tạo thành hệ thong khuyén nghi ra
các công việc phù hop dựa vào ki nang, nang lực cua ban thân
Giai đoạn 3: Phân tích, đánh giá Big Five Personality
Thu thập dữ liệu bộ câu hỏi về Big Five và xây dựng tính năng Phỏng vấn
Big Five dựa trên mô hình nay
Sau khi phỏng vấn xong, dữ liệu được đưa vào và trải qua 2 quá trình xử lý
là Mô hình Visual (phân tích xử lý nhận diện khuôn mặt) và Công thức Big
Five (tính toán số điểm của 5 tính cách trong mô hình Big Five) dé thu được
kết quả cuối cùng Sau đó tông hợp lại thành một ban báo cáo phân tích, đánh
giá 5 tính cách trong mô hình Big Five và gửi cho ứng cử viên dé xem tínhcách ban thân như nào Đồng thời cũng gửi cho nhà tuyển dụng dé xem xét
ứng cử viên có phù hợp với vi trí công việc tuyên dụng hay không?
Trang 181.7 Môi trường phát triển
- Xây dựng ứng dụng ISCV bằng ngôn ngữ lập trình Golang, JavaScript,
TypeScript, Solidity, Python
- Framework: Go-Ethereum, Fastify, Flask, IPFS, React, GraphQL
- _ Các bộ công cụ phát triển Hardhat, Ethersjs, Tensorflow, Keras, 3DDFA_V2
- Server Cloud: hệ thống 4 máy chủ ảo
e Hé điều hành: Ubuntu Linux (phiên bản 20 hoặc 22)
e Cấu hình: 4GB RAM, 2 vCore Intel, 40GB SSD hoặc 4GB RAM, 4
vCore Intel, 80GB SSD
e Nhà cung cấp: Vietnix và VNetwork
- Domain và DNS: Mắt bão
- _ Hệ thống Webserver: Caddy hoặc Nginx
- _ Công cụ thiết kế: draw.io, Figma, Visio
- _ Công cụ quản lý mã nguồn (source code): Github
- _ Tên miền: https://iscv.ftisu.vn/
Trang 19Chương 2 CÁC CÔNG TRÌNH NGHIÊN CỨU LIÊN QUAN
2.1 Các công trình nghiên cứu liên quan về hệ thống Blockchain
2.1.1 Blockchain-based recommender systems: Applications, challenges,
and future opportunities [48]
Gan đây, Y Himeur, A Sayed, A Alsalemi va các công sự đã xuất banmột bài báo về một hệ thống đề xuất sử dụng học tăng cường dé cải thiện trải nghiệm
và khả năng giữ chân khách hàng trên các trang web thương mại điện tử và công
nghệ Chuỗi khối (Blockchain) dé tận dung các tính năng bảo mật và quyền riêng
tư, khả năng phục hồi, khả năng thích ứng, khả năng đáp ứng, khả năng chịu lỗi và
các đặc điêm về độ tin cậy.
2.2 Các công trình nghiên cứu liên quan về hệ thống khuyến nghị
2.2.1 CareerRec: A Machine Learning Approach to Career Path Choice
for Information Technology Gradutes [16]
Các doanh nghiệp ngày càng phụ thuộc nhiều hơn vào các chuyên gia
CNTT có trình độ và chuyên môn cao Mặc dù việc làm CNTT ngày càng sẵn có là
một dấu hiệu tốt cho sinh viên tốt nghiệp CNTT, tuy nhiên họ có thé cảm thấy bồirối về nghề nghiệp thích hợp nhất cho tương lai của mình Trong bài báo này, một
hệ thống khuyến nghị có tên là CareerRec được đề xuất, sử dụng thuật toán máy
học dé giúp sinh viên tốt nghiệp CNTT lựa chọn con đường sự nghiệp dựa trên kỹ
năng của họ CareerRec đã được đảo tạo và kiểm tra bang bộ dữ liệu gồm 2255nhân viên trong lĩnh vực CNTT ở Ả Rập Họ đã tiến hành so sánh hiệu suất giữa 5thuật toán máy học dé đánh giá độ chính xác của chúng trong việc dự đoán conđường sự nghiệp phù hợp nhất giữa 3 lớp Các thử nghiệm của họ chứng minh rằngthuật toán XGBoost vượt trội so với các mô hình khác và cho độ chính xác cao nhất
(70,47%)
10
Trang 202.2.2 Emotion based music recommendation system using LSTM-CNN
architecture [39]
Với việc sử dụng ngày càng nhiều Internet và các mạng xã hội tạo ra mộtlượng thông tin không lồ, nhu cầu về các hệ thống khuyến nghị là rất cần thiết
Trong nghiên cứu này, dé đề xuất các bài hát dựa trên cảm xúc bang cách gợi ý âm
nhạc phù hợp với trạng thái thể chất và tinh thần lan tỏa của người nghe, nhiều môhình học sâu khác nhau như LSTM, CNN, và cả kiến trúc mô hình kết hợp CNN-
LSTM đã được đối chiếu đề phát hiện những cảm xúc như tức giận, hạnh phúc, tình
yêu và nỗi buồn Kết quả đánh giá của nghiên cứu này cho thấy độ chính xác và
hiệu quả của mô hình kết hợp CNN-LSTM tốt hơn so với các phương pháp còn lại
2.3 Các công trình nghiên cứu liên quan về mô hình Big Five
2.3.1 The relationship between the Big Five personality traits and
academic motivation [26]
Hiéu duoc méi quan hệ giữa các đặc điểm tính cách và động lực học tập
có thé là trọng tâm dé phát trién các chiến lược giảng dạy hiệu quả hơn Nghiên cứunày đã xem xét mối quan hệ giữa 5 tính cách trong mô hình Big Five và sự khác
biệt cá nhân trong động cơ học tập của sinh viên đại học Các cá nhân (bao gồm
172 sinh viên chưa tốt nghiệp) được yêu cầu hoàn thành NEO Eive Factor Inventory(Costa & McCrae, 1992 — là một bài kiểm tra do lường tính cách dựa trên năm yếu
tố của mô hình Big Five) và Academic Motivations Inventory (AMI; Moen &Doyle, 1977 — là một bài kiểm tra đánh giá các động lực học tập và quan tâm họctập của cá nhân trong môi trường học tập) Kết quả cho thấy một mô hình phức tạp
về các mối quan hệ có ý nghĩa giữa 5 tính cách của mô hình Big Five và 16 phạm
vi phụ của AMI Kết quả được diễn giải theo nghĩa tạo ra sự phù hợp giữa phương
thức giảng dạy và sự khác biệt cá nhân trong động cơ học tập của sinh viên do đặc điêm tính cách.
11
Trang 212.3.2 A Computational Personality Traits Analysis Based on Facial
Geometric Features [29]
Trong nghiên cứu nay, ho đã điều tra mối liên hệ giữa các đặc điểm tinh
cách và các thuộc tính trên khuôn mặt Một bộ phân loại đặc điểm tính cách dựa
trên hình ảnh khuôn mặt được tiến hành dé xác minh mối liên hệ giữa các thuộctính trên khuôn mặt và đặc điểm tính cách Đầu tiên, họ thu thập một bộ dữ liệu baogồm các hình ảnh khuôn mặt, điểm số đặc điểm tính cách tương ứng và các thuộctính khuôn mặt xác định dựa trên các mốc khuôn mặt được phát hiện tự động Sau
đó, bộ phân loại được huấn luyện dựa trên các thuộc tính khuôn mặt được trích xuất
dé thực hiện phân loại đặc điểm tính cách Kết quả bộ phân loại sau khi thực nghiệm
cho thấy các đặc điểm tinh cách có liên quan đáng ké với các thuộc tính khuôn mặt
được trích xuât.
2.4 Phương pháp đề xuất
Dựa vào các công trình nghiên cứu liên quan, quyết định vận dụng các thựcnghiệm, nghiên cứu đó của họ dé tiến hành xây dựng ứng dụng ISCV kết nối nhàtuyển dụng với sinh viên sử dụng hệ thông Blockchain 3 lớp của ISCV Trong ISCV,sinh viên khai báo thông tin cá nhân và thiết kế, tùy chinh CV của riêng mình Sau
đó, thông tin sinh viên được lưu trữ dưới dạng các khối, khép kín và liên kết với các
khối dữ liệu trước đó dé tạo thành Chuỗi khối (Blockchain)
Ngoài ra, thiết kế một hệ thống thu thập dữ liệu việc làm CNTT trên các trangtìm kiếm việc làm bằng ngôn ngữ Python sử dụng thư viện Selenium và huấn luyệncác thuật toán máy học (Neural Networks, LSTM, KNN, LR và kết hợp các mô hình
với nhau) trên bộ dữ liệu thu thập được dé xây dựng một hệ thống khuyến nghị giúp
sinh viên lựa chọn công việc trong tương lai Hệ thống này sẽ đề xuất một công việcphù hợp dựa trên một số chỉ tiết cơ bản về kỹ năng của sinh viên trên CV của họ được
lưu trữ trong Blockchain.
Đồng thời, sử dụng công nghệ xử lý nhận diện khuôn mặt, âm thanh với phương
pháp Mạng thần kinh tích chập (Convolutional Neural Network) kết hợp với mô hình
12
Trang 22Big Five để xây dựng tính năng phỏng vấn hỗ trợ doanh nghiệp tối ưu quá trình tìm
kiêm ứng cử viên cho công việc tuyên dụng.
13
Trang 23Chương 3 NGHIÊN CỨU THỰC NGHIỆM
3.1 Công nghệ Chuỗi khối và hệ thống ISCV
3.1.1 Giới thiệu về Công nghệ Chuỗi khối
3.1.1.1 Định nghĩa
Công nghệ Chuỗi khối (Blockchain) là một “cuốn số cái” phân tán
mà mọi người có thê xem và ghi dit liệu vào nó Các giao dịch và thông tin mới
được thêm vào “cuốn số” này sẽ được gom lại tạo thành một khối mới Mỗikhối chứa thông tin về giao dịch, thời gian và mã xác thực độc nhất Tính bảo
mật của Chuỗi khối được đảm bảo bang cách sử dụng thuật toán mã hóa mạnh
mẽ Mỗi giao dịch được xác nhận và bảo vệ bằng chữ ký điện tử, ngăn chặn sựgiả mạo va thay đổi dữ liệu Đồng thời, thông tin trên Chuỗi khối là công khai
và có thé truy cập được bởi tất cả mọi người Điều này tạo ra tính minh bạch
và khả năng xem xét công khai, loại bỏ sự phụ thuộc vào các bên trung gian
[2].
(Nguồn:
https:/www.solutionanalysts.com/blockchain-app-development-services)
14
Trang 24Công nghệ Chuỗi khối cũng mang lại tiềm năng vượt trội trong nhiều
lĩnh vực Ví dụ, trong lĩnh vực tài chính, nó có thé cung cap mot hé thong thanh
toán an toàn, nhanh chóng, không cần trung gian Trong lĩnh vực chuỗi cung
ứng, nó có thê cung cap khả năng theo déi và xác minh nguồn gốc của sản phâm
từ nguồn cung cấp đến người tiêu dùng Ngoài ra, Chuỗi khối cũng có thê được
sử dụng trong quản lý bầu cử, lưu trữ hồ sơ y tế, quản lý tài sản và nhiều ứngdụng khác Tuy nhiên, Chuỗi khối cũng đối diện với một số thách thức Van dé
về hiệu suất và khả năng mở rộng của Chuỗi khối vẫn còn đáng quan ngại Việc
xác minh giao dịch và ghi nhận dữ liệu trên toàn mạng có thể mất nhiều thờigian và tốn kém về năng lượng Ngoài ra, việc thiết lập và duy trì một mạnglưới Chuỗi khối đòi hỏi sự thống nhất và sự đồng thuận từ các thành viên trong
mạng.
> Uu diém:
o Tính bắt biến: Mỗi khối dữ liệu trong mang chuỗi khối không thé thay
đối hoặc xóa bỏ, đảm bảo tính toàn ven và xác thực của các giao dịcho_ Tính minh bạch: Tất cả các giao dịch được lưu trữ công khai và có thé
truy cập được bởi tất cả các thành viên trong mạng, tạo ra tính minh bạch
và đáng tin cậy trong hệ thống
o_ Tính phi tập trung: Hệ thống Chuỗi khối không có một đơn vị trung
gian kiểm soát toàn bộ mạng lưới Quyết định và quản lý được thực hiện
bởi cộng đồng các nút trong mạng, đảm bảo tính công bằng và tránh
được các van dé an ninh va tin cậy
o An ninh cao: Hệ thống Chuỗi khối sử dụng các thuật toán mã hóa mạnh
mẽ và cơ chế phân tán, giúp bảo vệ dit liệu và giao dịch khỏi các cuộctan công và sự xâm nhập
o_ Tính linh hoạt và mở rộng: Công nghệ Chuỗi khối cho phép tích hợp
và mở rộng dễ dàng với các ứng dụng và hệ thống khác
15
Trang 25> Nhược điểm:
o Tốc độ giao dịch: Quá trình xác nhận và xử lý giao dịch trong
blockchain có thê mắt thời gian, đặc biệt là đối với các mạng lưới lớn và
phúc tạp
o_ Tính khó khăn trong việc thay đổi: Do tính bất biến của công nghệ
Chuỗi khối, việc thay đổi và cập nhật các quy tắc và dit liệu trong hệ
thống có thé trở nên phức tạp và đòi hỏi sự đồng thuận của toàn bộ mạng
lưới
o_ Chỉ phí: Một số ứng dụng phân tán trên công nghệ Chuỗi khối có thể
gây ra chi phí cao đối với việc xác nhận và xử lý giao dịch, đặc biệt là
trong các mạng lưới công cộng
Mặc dù có nhược điểm nhất định, công nghệ Chuỗi khối đang ngàycàng được ứng dụng và phát triển trong nhiều lĩnh vực Sự kết hợp giữa tínhbất biến, minh bach và phi tập trung đã mở ra những tiềm năng và tiễn bộ trong
việc xây dựng hệ thống công băng, an toàn và đáng tin cậy trong thời đại số
3.1.1.2 Các thành phan của hệ thống Chuỗi khối
Block ———— Blockchain ——— @Reward ns!
Ledgerl# —_ oat Distribution iL Transaction
Hình 3.2 Thanh phan của hệ thong Chuỗi khối(Nguồn: https:/www.springwise.com/tech-explained-blockchain/)
16
Trang 26Chuỗi khối (Blockchain): đây là cốt lõi của hệ thống này, là một
chuỗi liên kết các khối dit liệu Mỗi khối chứa thông tin về các
giao dịch đã được thực hiện trong mạng và được kết nối với nhaubăng cách sử dụng hàm băm
Phần thưởng (Reward) đóng vai trò quan trọng trong việc khuyến
khích và duy trì hoạt động của mạng Trong các hệ thống Chuỗi
khối như Bitcoin, Phần thưởng được trả cho các thợ đảo (miners)
dựa trên nguyên tắc Bằng chứng công việc (Proof of Work) Khimột thợ đào (miner) giải quyết thành công một bài toán toán học
phức tạp và thêm một khối mới vào Chuỗi khối, họ được thưởngbằng một số lượng tiền nhất định có thể là coin (tiền mã hoá) hoặc
token (mã thông báo) Điều này thúc đây sự cạnh tranh giữa các
thợ đào, đảm bảo tính an toàn và đáng tin cậy của mạng
Thợ đào (Miner) là người hoặc máy tính tham gia vào quá trình
xác nhận và xử lý giao dịch trong mạng Chuỗi khối Chức năng
chính của thợ đảo là giải quyết các bài toán toán học phức tạp để
thêm các khối mới vào Chuỗi khối và đảm bảo tính toàn vẹn của
hệ thống
Giao thức đồng thuận (Consensus) là cơ chế hoạt động trong hệthống blockchain đề đạt được sự đồng thuận giữa các máy về trạngthái và lịch sử của Chuỗi khối Ví dụ như Bằng chứng công việc
(Proof of Work — POW), Bằng chứng cô phan (Proof of Stake —POS), Bang chức uỷ quyền (Proof of Authority — POA) và nhiều
giao thức khác
Giao dịch (Transactions) là các hoạt động được thực hiện trong
mạng Chuỗi khối, bao gồm chuyên tiền, thực hiện hợp đồng thôngminh, lưu trữ thông tin và nhiều hoạt động khác Mỗi giao dịch
được xác minh và ghi lại trên Chuỗi khôi
17
Trang 27Mạng ngang hàng (Distribution) là mô hình mạng nơi các nút trong mạng Chuỗi khối kết nối và giao tiếp trực tiếp với nhau,
không thông qua một trung tâm trung gian Mạng ngang hàng đảm
bảo tính phân cấp và phân tán của hệ thống
Số cái (Ledger) là một số cái kỹ thuật số của tất cả các giao dịch
diễn ra trên mạng lưới Chuỗi khối Bản sao số kế toán được lưutrữ trên mạng và được cập nhật liên tục dé phù hop với nhau, vivậy các giao dịch có thé được xác minh bởi bat kỳ ai kết nối với
mạng
Confirmation (Xác nhận) đề cập đến quá trình xác minh và chấpnhận một giao dịch hoặc khối mới trong mạng Chuỗi khối Mỗikhi một giao dịch được tạo ra hoặc một khối mới được thêm vàoChuỗi khối, nó cần được xác nhận để được coi là hợp lệ và bảo
mật
Nút mạng (Node) là một thiết bị kết nối với mạng Chuỗi khối va
chứa một bản sao của toàn bộ lịch sử giao dịch và các thông tin
khác của Chuỗi khối Nút mạng đóng vai trò quan trọng trong việcduy trì tính toàn vẹn và an toàn của hệ thống Chuỗi khối
Khối (Block) là một tập hợp các giao dịch được gom nhóm lại vàđược thêm vào Chuỗi khối Mỗi khối chứa thông tin về các giaodịch đã được xác nhận và thông tin khác như mã băm của khối
trước đó, một mã băm cho khôi hiện tại và dữ liệu thời gian
18
Trang 289) ÖÒ 8
O4SUNIFIED DATA e1 onary
OS ADDED BLOCKCHAIN =>, @ O03 VALIDATES
Hình 3.3 Quá trình của một giao dich
( Nguồn:
https://www.vecteezy.com/vector-art/2180160-blockchain-and-cryptocurrency-concept)
Quá trình xảy ra một giao dịch trong một mạng Chuỗi khối bao gồm các
bước sau:
e Tạo giao dịch: Người dùng tạo một giao dịch mới bằng cách điền
thông tin cần thiết như địa chỉ người gửi, địa chỉ người nhận và sốlượng tiền tương ứng
e Xác thực giao dịch: Giao dich được gửi tới mạng Chuỗi khối và các
nút (nodes) trong mạng nhận và xác thực giao dịch Các nút kiểm tra
19
Trang 29tính hợp lệ của giao dịch bằng cách sử dụng các quy tắc và thuật toán
đã được định nghĩa trước
e Đóng gói vào khối: Khi một số lượng đủ lớn các giao dịch đã được
xác thực, chúng sẽ được đóng gói thành một khối (block) Khối chứa
một danh sách các giao dịch và thông tin liên quan khác như thời gian,
băm (hash) của khối trước đó và một băm đại diện cho nội dung của
khối hiện tại
e Khai thác khối: Một thợ dao (miner) trong mạng Chuỗi khối sẽ cạnh
tranh đề giải quyết một bài toán khó (thường là bài toán băm) đề đạt
được sự chấp nhận của mạng và thêm khối mới vào Chuỗi khối Quá
trình khai thác đòi hỏi sự tính toán và sử dụng nguồn tài nguyên máy
tính
e Xác nhận và lan truyền: Khi một khối mới được khai thác thành công,
nó sẽ được lan truyền trong toàn bộ mạng Chuỗi khối Các nút trong
mạng nhận và xác nhận khối mới, sau đó lan truyền thông tin cho các
nút khác Quá trình này đảm bảo tính phân cấp và đồng nhất củaChuỗi khối trên toàn mạng
e_ Ghi vào Chuỗi khối: Khi một khối mới được xác nhận và lan truyền,
nó sẽ được thêm vào Chuỗi khối (Blockchain) Khối mới sẽ được liên
kết với khối trước đó bằng cách sử dụng băm của khối trước, tạo thành
một chuỗi liên kết không thé thay đôi Giao dịch trong khối mới sẽtrở thành không thể thay đổi và được ghi lại vĩnh viễn trong Chuỗikhối
b Khối (Block)
Một khối (block) trong hệ thống Chuỗi khối (Blockchain system) là một
đơn vị dữ liệu được sử dụng để lưu trữ thông tin về các giao dịch và thông
tin liên quan khác Mỗi khối chứa một tập hợp các giao dịch đã được xác
thực và thông tin quan trọng như sau:
20
Trang 30Version Merkle Root Version / Merkle Root a [ Merkle Root
ˆ Hash of BlockN1 Hash of Block n I HehơBokNd —
=O l===i oo!
| List of Transactions | List of Transactions List of Transactions
Hình 3.4 Cấu trúc của các khối
(Nguôn:
htIps:/wuww.researchgate.net/figure/Blockchain-design-
structure-showing-chained-blocks-with-header-and-body-fields_fig2 321017113 )
Tiêu dé của khối (Block Header): đây là phan dau tiên của mỗi block
và chứa các thông tin quan trọng như:
Phiên bản (Version): phiên bản của khối
Mã băm của của khối trước đó (Hash of Block N): mã băm (hash)của khối trước đó trong chuỗi
Kết quả của hàm băm (Merkle Root): Mã băm của cây Merkle,
được tao tử các giao dịch trong block
Số ngẫu nhiên của khối (Nonce): đây là một giá trị ngẫu nhiên
được thay đổi trong quá trình khai thác (mining) dé tìm ra một giá
trị băm thỏa mãn điều kiện nhất định
Độ khó (Difficulty Target): đây là một giá trị số xác định mức độkhó khăn trong quá trình khai thác khối đó Nó điều chỉnh tốc độkhai thác và đảm bảo răng việc tạo khối mắt thời gian tương đươngThân của khối (Block Body): đây là phần thân của một khối, nó chứatoàn bộ thông tin các giao dịch của một khối và kết quả của cây merkle
21
Trang 31e Giao dịch Coinbase (Coinbase Transaction): đây là giao dịch đặc
biệt trong block đầu tiên của mỗi chuỗi Giao dịch này chứa thôngtin về thưởng khai thác (mining reward) và địa chỉ của người khai
thác
e Danh sách các giao dịch (List of Transaction): Day là danh sách
các giao dịch đã được xác thực và được bao gồm trong một khối.Mỗi giao dịch chứa thông tin về người gửi, người nhận, số lượngtiền và các dữ liệu khác liên quan
c Cơ chế đồng thuận (Consensus)
Cơ chế đồng thuận (Consensus) trong Chuỗi khối là quá trình thống nhấtgiữa các thành viên trong mạng để đạt được sự đồng nhất về trạng thái và
lịch sử của hệ thống Nó là cơ chế quyết định cách mà các thay đổi và giaodịch mới được chấp nhận và xác nhận trong mạng Chuỗi khối
- _ Cơ chế đồng thuận Bằng chứng uỷ quyền (Proof of Authority):
e PoA là viết tat của Proof of Authority, tức Bằng chứng ủy quyền,
là một thuật toán đồng thuận dựa trên danh tiếng, mang lại một
giải pháp thực tế và hiệu quả cho các Chuỗi khối Thuật ngữ này
do nhà đồng sáng lập và cựu CTO của Ethereum, Gavin Wood, đề
xuất vào năm 2017
e_ PoA là một biến thé của cơ chế đồng thuận Bang chứng cô phan
(Proof of Stake), trong đó thuật toán dé cao giá trị của danh tính
& danh tiếng của những người tham gia, chứ không dựa trên giátrị tiền mã hoá mà họ nắm giữ
e_ Mô hình PoA dựa trên số lượng người xác thực có giới hạn, và
điều này khiến nó trở thành một mô hình có khả năng mở rộng dễ
dàng Các khối và giao dịch được xác thực bởi những người tham
gia đã được phê duyệt, họ đóng vai trò như là những người điềutiết của hệ thống
22
Trang 32Cơ chế hoạt động của Băng chứng uỷ quyền bao gồm các bước sau:
A
Ì Users and smart contracts
ss initiate transactions, which are
submitted to the network
The primary validator node
assembles transactions into a 'block.and confirms its validity
^“ With consensus achieved,
the Energy Web Chain is
updated with a new block
Hình 3.5 Cơ chế hoạt động của PoA(Nguon: https://changelly.com/blog/what-is-proof-of-authority-poa/)
e Gui giao dịch: Người dùng tao va gửi giao dịch từ vi của họ lên
mạng PoA Giao dịch này có chứa thông tin như địa chỉ người gửi,
địa chỉ người nhận và sé luong tiền được chuyển di
e Giao dịch được chuyền đi: Giao dịch được chuyên qua mạng PoA
để tiếp tục quá trình xác thực
e_ Xác minh chữ ký: Các máy xác thực, tức những nút có quyền kiểm
soát mạng, xác minh chữ ký của giao dịch Họ kiểm tra tính hợp
23
Trang 33lệ của chữ ký số để đảm bảo rằng giao dịch không bị giả mạo và
đến từ người có quyên thực hiện
e Kiểm tra số dư: các máy xác thực giao dịch kiểm tra số dư của
người gửi để đảm bảo rằng họ có đủ tiền để thực hiện giao dịch
Nếu số dư không đủ, giao dịch sẽ không được xác nhận
e Xác nhận giao dịch: khi một giao dịch được xác minh bởi đa sỐ
các thành viên trong hệ thống, nó được xác nhận là hợp lệ và đượcghi vào khối mới Quá trình này đảm bảo tính minh bạch và đáng
tin cậy của giao dịch.
e Giao dịch được kết thúc: sau khi giao dịch được xác nhận và ghi
vào khối mới, giao dịch được coi là hoàn thành và có hiệu lực.Tiền được chuyên đến người nhận và sự thay đôi trong số du được
cập nhật trên mạng PoA.
- Ưuđiểm:
e Tốc độ xác nhận giao dịch nhanh: vì không cần giải quyết bài
toán phức tạp như cơ chế đồng thuận Băng chứng công việc (Proof
of Work), PoA có thể xác nhận giao dịch một cách nhanh chóng,giúp cải thiện hiệu suất và trải nghiệm người dùng
e _ Tiết kiệm năng lượng: PoA tiêu tốn ít năng lượng hon so với
PoW vì không đòi hỏi công việc tính toán lớn và việc sử dụng các
thiết bị phần cứng đặc biệt như máy đảo
e Dễ triển khai và quản lý: PoA không yêu cầu các thiết bi phần
cứng đắt đỏ như máy dao và không đòi hỏi cấu hình phức tạp.Điều này làm cho việc triển khai và quản lý mạng PoA dễ dàng
hơn.
e Kha năng mở rộng: PoA có khả năng mở rộng tốt hơn so với
PoW, vì không phụ thuộc vào việc tăng cường sức mạnh tính toán.
Điều này giúp mạng có thê xử lý được nhiều giao dịch hơn và đáp
ứng nhu câu tăng trưởng của người dùng.
24
Trang 34- Nhược điểm:
e Thiếu tính phân quyền: PoA yêu cầu người dùng tin tưởng và
ủy quyền quyền lực cho các máy xác thực giao dich (validators)
Điều này có thể tạo ra một sự tập trung quyền lực trong tay một
số it người và làm mắt đi tính phân quyền mà Chuỗi khối đáng có
e Độ tin cậy vào người xác thực (validator): PoA đòi hỏi các máy
xác thực giao dịch phải đáng tin cậy và hoạt động trung thực Nếucác máy giao dịch này không tuân thủ quy tắc và lạm dụng quyền
lực, có thé xảy ra các hành vi gian lận va đe dọa tính toàn vẹn của
mạng.
e Sw phụ thuộc vào một số lượng máy xác thực giao dịch: PoA
chỉ phụ thuộc vào một số ít máy để xác nhận giao dịch, vì vậy nếu
một số lượng lớn máy xác thực đó bị tan công hoặc gặp su có,mang có thé trở nên không ôn định hoặc ngừng hoạt động
e Kha năng tấn công 51%: Tương tự như PoW, PoA cũng có nguy
cơ bị tan công 51% nêu một nhóm máy đạt được quyền kiểm soáthơn 50% quyền lực trong mạng Điều này có thé dẫn đến sự kiểmsoát bat hợp pháp và thay đồi lich sử giao dịch của blockchain
Hình 3.6 So sánh PoA vs PoS vs PoW
(Nguồn: https://yield.app/blog/What-is-proof-of-authority)
25
Trang 35d Cầu nối Oracle giữa ISCV Go (Layer 1) và ISCV Machine (Layer 2)
ISCV Go HTTP gRPC / Websocket ISCV Machine
Oracle
2 ?® —
, , mm N l sẻ
Hình 3.7 Cau noi Oracle giữa ISCV Go và ISCV Machine
Oracle trong Chuỗi khối là một dịch vụ hoặc một cơ chế cho phép thôngtin từ bên ngoài được đưa vào một mạng Chuỗi khối để sử dụng trong cáchợp đồng thông minh và các ứng dụng dựa trên Chuỗi khối Oracle hoạt độngnhư một cầu nối giữa thé giới ngoài và mạng Chuỗi khối, cho phép truyềnthông tin từ các nguồn bên ngoài vào mạng Chuỗi khối và ngược lại
Trong một mạng Chuỗi khối, thông tin được xác thực bang cach su dungthuật toán và quy tac mang Tuy nhiên, có những thông tin mà Chuỗi khốikhông thê trực tiếp thu thập được, chăng hạn như giá cả, thông tin thời tiết,thông tin từ các mô hình máy học, dữ liệu từ các hệ thống bên ngoài và nhiều
thông tin khác Oracle cung cấp cách đề truyền thông tin này vào mạng Chuỗi
khối, cho phép các ứng dụng và hợp đồng thông minh sử dụng thông tin để
thực hiện các hành động và ra quyết định.
Oracle có thể hoạt động theo 2 cách:
© Oracle trực tiếp (Centralized Oracle): Trong trường hợp này, một đơn
vị trung gian (thường là một tô chức) thu thập thông tin từ các nguồnbên ngoài và truyền nó vào mạng Chuỗi khối Các ứng dụng trongChuỗi khối sau đó có thé truy cập vào thông tin này thông qua oracle
dé sử dụng trong hợp đồng thông minh hoặc các tác vụ khác
e Oracle phân tan (Decentralized Oracle): Trong trường hợp này, thông
tin được thu thập từ nhiều nguồn bên ngoài và được đưa vào Chuỗi
26
Trang 36khối thông qua một mạng lưới Oracle phân tán Các nút trong mạng
lưới Oracle phân tán sẽ xác minh và đưa thông tin vào Chuỗi khối,
đảm bảo tính toàn vẹn và xác thực của dữ liệu.
Oracle trong Chuỗi khối có vai trò quan trọng trong việc mở rộng khảnăng của Chuỗi khối và mở cửa cho các ứng dụng sử dụng thông tin từ thếgiới ngoài Tuy nhiên, việc sử dụng Oracle cũng có nhược điểm, bao gồm
rủi ro an ninh (Oracle có thể bị tắn công hoặc cung cấp thông tin sai lệch) và
ràng buộc về tin cậy vào nguôn thông tin bên ngoài.
đồ họa hoặc dòng lệnh để người dùng có thể tạo, nhập khẩu hoặc kết nối với
ví của mình.
- Thuật toán Edwards-curve Digital Signature Algorithm (EdDSA):
e Sử dụng cặp khóa công khai và khóa bí mật dé tao và xác minh
chữ ký số Nó dựa trên một đường cong Edwards, một loại đường
27
Trang 37cong Elliptic Curve đặc biệt, và sử dụng phép toán như cộng trên
đường cong và phép toán băm (hash) dé thực hiện các phép tínhchữ ký số
Một ưu điểm quan trọng của EdDSA là khả năng chống lại cáccuộc tan công như cuộc tan công bang mã hóa bên phía máy chủ
(side-channel attacks) và cuộc tan công bằng đường cong bat hợp
lệ (invalid-curve attacks) Ngoài ra, EdDSA cũng cung cấp tính
toán hiệu quả hơn so với ECDSA.
Hình 3.9 Đường cong EdDSA
( Nguồn:
https://thisisatemporaryurlforchain.wordpress.com/2014/10/14/t
he-math-behind-bitcoin/)
28
Trang 38Quy trình tạo ra một ví trong hệ thống Chuỗi khối:
e Tạo ngẫu nhiên Khoá riêng tu (private key): Một số ngẫu nhiên
lớn được chon làm Khoá riêng tư và có thé được biéu diễn dướidạng một chuỗi số hexa
Tính toán Khoá công khai (public key) từ Khoá riêng tu (private
key): Sử dụng thuật toán elliptic curve, Khoá công khai được tính
toán từ Khoá riêng tư Quá trình này bao gồm việc nhân Khoá
riêng tư với điểm sinh trên đường cong elliptic curve được sử dung
trong Ethereum.
Băm Khoá công khai: Khoá công khai (public key) tính toán từ
bước trước đó là một điểm trên đường cong elliptic curve Đề sử
dụng Khoá công khai trong Ethereum, nó cần được băm để tạo rađịa chỉ tài khoản Ethereum Băm được thực hiện bằng thuật toánKeccak-256 (còn được gọi là SHA3-256) dé tạo ra địa chỉ
Ethereum.
- _ Xác minh chữ kí số trong các giao dịch:
e Trong các vi sử dụng trong mang của dựa trên hệ thông máy ảo
Ethereum Virtual Machine (EVM) các thông số R, S và V khôngđược liên quan đến hàm băm J Thay vào đó, chúng là các thông
số trong thuật toán chữ ký số ECDSA (Elliptic Curve DigitalSignature Algorithm) được sử dụng dé tạo và xác minh chữ ký số
trong giao dịch Ethereum.
R (chuỗi byte) là một phần của chữ ký số ECDSA và đại diện
cho một điểm trên đường cong elliptic
S (chuỗi byte) là một phần khác của chữ ký số ECDSA và daidiện cho một giá trỊ SỐ
V (số nguyên) là một phần khác của chữ ký số ECDSA và đạidiện cho giá trị chứng thực (recovery id) dé xác định khóa côngkhai từ chữ ký số
29
Trang 39e Các giá trị R, S, và V được sử dung dé xác định chữ ký số ECDSA
và xác minh tính hợp lệ của giao dịch Ethereum Khi một giao
dịch được tạo, chữ ký số ECDSA được tính toán bằng cách sử
dụng khóa bí mật tương ứng với địa chỉ tài khoản gửi giao dịch.
Sau đó, chữ ký số này được gắn kèm với giao dịch và các thông
số R, S, và V được truyền thông qua giao dịch
Hình 3.10 Tổng quan hệ thống Blockchain ISCV
ISCV là một hệ thống Chuỗi khối (Blockchain) đột phá và đa lớp,nhằm cung cấp một môi trường đáng tin cậy và hiệu quả cho việc tạo, quản lý
và lưu trữ hồ sơ và mạng xã hội kết nối việc làm Hệ thống này bao gồm ba hệ
thống blockchain nhỏ: ISCV Go, ISCV Machine và ISCV Storage
30
Trang 40- ISCV Go, là Blockchain lớp thứ nhất (layer 1), được tạo ra nhằm
mục đích chỉ phục vụ khách hàng cho hệ thong ISCV, su dung co
chế đồng thuận Bang chứng uy quyền (Proof of Authority — POA).Với Bang chứng uy quyền, ISCV Go trở thành sé cái duy nhất và
đáng tin cậy của toàn bộ hệ thống Nó giúp đảm bảo tính bảo mật
và tốc độ xử lý cao trong việc lưu trữ hồ sơ và giao dịch xin việc
làm.
- ISCV Machine, là Blockchain lớp thứ 2 (layer 2) Mục đích của
hệ thống này là tăng tốc và mở rộng cho hệ thống ISCV Go vì
bằng cách tăng tốc các câu truy vấn và kết hợp với các thuật toán
máy hoc Các công nghệ được sử dung bao gồm Fastify Nodejs và
sử dụng dụng các công nghệ bảo mật như Helmet, Rate limit, Anti
DDOS, đồng thời tăng tốc câu truy van bằng một lớp trung gianGraphQL (công nghệ mã nguồn mở được sáng tạo bởi Facebook).Bên cạnh đó tại mỗi máy trong hệ thống đều có một ứng dụngPython để xử lý các yêu cầu trí tuệ nhân tạo và máy học dé dự
đoán công việc phù hợp và xử lý cảm xúc dựa trên video khuôn
mặt của sinh viên Hệ thống ISCV Machine cung cấp giao diện
thân thiện và linh hoạt cho người dùng thao tác với dữ liệu trên
ISCV Go (layer 1).
- ISCV Storage, là hệ thống blockchain thứ 3 (layer 3), được tạo ra
bằng bộ khung IPFS (InterPlanetary File System) Hệ thống này
cho phép lưu trữ phân tán các dữ liệu như hình ảnh, NET và file
báo cáo Sử dụng IPFS, ISCV Storage đảm bảo tính tin cậy và khả
năng truy cập nhanh chóng đối với các dit liệu quan trọng mà
người dùng quan tâm.
Các tính năng chính của ISCV bao gồm khả năng tạo CV, tuỳ chỉnh
CV bang cách kéo và thả, đăng bài tuyển dụng, ứng tuyên vào các vi trí, môhình tính cách Big Five trong phỏng van, nhắn tin và ghi chứng chỉ như IIG
31