Ứng dụng công nghệ blockchain xác thực thông tin hs sv lào học ở nước ngoài (tóm tắt)

26 1 0
Ứng dụng công nghệ blockchain xác thực thông tin hs sv lào học ở nước ngoài (tóm tắt)

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA  CHANTHALASINE CHATHAVISAI ỨNG DỤNG CÔNG NGHỆ BLOCKCHAIN XÁC THỰC THÔNG TIN HS/SV LÀO HỌC Ở NƢỚC NGOÀI C C R L T Chuyên ngành: Khoa Học Máy Tính Mã số: 8480101 DU TÓM TẮT LUẬN VĂN THẠC SĨ KỸ THUẬT KHOA HỌC MÁY TÍNH Đà Nẵng – Năm 2021 Cơng trình đƣợc hồn thành TRƢỜNG ĐẠI HỌC BÁCH KHOA Người hướng dẫn khoa học: PGS.TS PHAN HUY KHÁNH Phản biện 1: TS PHẠM CÔNG THẮNG Phản biện 2: TS HOÀNG THỊ THANH HÀ C C R L T Luận văn bảo vệ trước Hội đồng chấm Luận văn tốt nghiệp thạc sĩ Kỹ thuật khoa học tính họp Trường Đại học Bách khoa vào ngày 10 tháng 04 năm2021 DU Có thể tìm hiểu luận văn tại:  Trung tâm Học liệu truyền thông Trường Đại học Bách khoa - ĐHĐN  Thư viện Khoa Công nghệ thông tin, Trường Đại học Bách khoa – ĐHĐN MỞ ĐẦU Lý thực đề tài Cùng với lên Blockchain (chuỗi khối), với khả chia sẻ thông tin liệu minh bạch theo thời gian thực, tiết kiệm không gian lưu trữ bảo mật cao, công nghệ blockchain xu hướng cơng nghệ đột phá, có khả ứng dụng rộng rãi Trên thực tế, việc ứng dụng Blockchain giáo dục có tiềm lớn, khơng giải bất cập tồn mà cịn bổ sung cho thiếu sót máy quản lý truyền thống Đảm bảo sinh viên trường trình rèn luyện theo dõi xác q trình học tập sinh viên suốt trình học trường từ nhập học đến trường Thông tin ghi vào khối khơng thể sửa đổi Do vậy, chuỗi khối xem cơng cụ lưu trữ C C thông tin hiệu quả, minh bạch Công nghệ chuỗi khối blockchain lưu trữ thông tin R L T nút (máy tính tham gia vào hệ thống), khó để thay đổi, giả mạo thông tin lưu trữ Việc tìm kiếm, truy xuất thơng tin thuận tiện, dễ DU dàng Đối với giáo dục – đào tạo, tảng công nghệ blockchain đem lại tiềm ứng dụng ngành nghề khác Hiện nay, công tác quản lý sinh viên tổng lãnh quán dân nhân Lào TP Đà Nẵng; công việc trước làm thủ công lập danh sách sinh viên, lập danh sách trường học tốn nhiều thời gian, công sức giấy tờ, sổ sách lưu trữ Tin học hóa cơng tác quản lý nhằm bớt sức lao động người, tiết kiệm thời gian, độ xác cao tiện lợi nhiều so với việc làm thủ công quản lý giấy tờ trước Blockchain thiết kế để chống lại thay đổi liệu Thông tin blockchain bị thay đổi bổ sung thêm có đồng thuận tất nút hệ thống Ngay phần hệ thống blockchain sụp đổ, máy tính nút khác tiếp tục hoạt động để bảo vệ thông tin Đồng thời, nhu cầu du học sinh Lào Việt Nam ngày tăng lên có 850 sinh viên học miền Trung, băn khoăn, thắc mắc công tác học tập, nghiên cứu khoa học địi hỏi phải có mơi trường lưu trữ thơng tin sinh viên, truyền bá tin tức, cung cấp thông tin từ nhà trường, thông tin liên quan đến sinh viên, đồng thời nơi để lưu liệu sinh viên, báo cáo liệu người học, báo cáo tổng quát trình học tập sinh viên cách đầy đủ rõ ràng Ứng dụng blockchain vào giáo dục mang lại nhiều tác động Thông tin lưu trữ chuỗi khối không liệu bảng điểm mà cịn q trình đào tạo, kinh nghiệm thực tế, liệu cá nhân (bao gồm điểm, hoạt động đoàn thể, phong trào, giải thưởng…) học sinh lưu trữ chi tiết cụ thể Blockchain Trong thực tế, đăng ký tuyển dụng xin học bổng, thường xuyên xảy tình ứng viên cung cấp thơng tin khơng xác, đa phần kê khai thơng tin cao so với lực, trình độ, kinh nghiệm thực tế thân nhằm đáp ứng đủ điều kiện xét/thi tuyển Chính vậy, Blockchain nơi lưu trữ an tồn, minh bạch, xác vơ thời hạn tất liệu thông tin sinh viên Tình hình nghiên cứu Ngồi nước C C Cơng nghệ blockchain dần áp dụng vào nhiều lĩnh vực sống Ngày R L T nhiều cá nhân, quan tổ chức quan tâm, nghiên cứu cho nhiều ứng dụng blockchain Một số ví dụ như: DU Zug Thụy Sĩ, nơi gọi “Thung lũng Crypto” hợp tác với Uport triển khai dự án Blockchain để cư dân đăng ký ID, cho phép họ tham gia bỏ phiếu trực tuyến chứng minh nơi cư trú Các dự án chăm sóc sức khỏe MedRec sử dụng Blockchain phương tiện tạo điều kiện chia sẻ liệu cung cấp xác thực trì tính bảo mật IBM Walmart hợp tác để khởi động Liên minh An toàn Thực phẩm Blockchain Trung Quốc Dự án, hợp tác công ty thuộc Fortune 500 JD.com, thiết kế để cải thiện việc theo dõi độ an toàn thực phẩm, giúp dễ dàng xác minh thực phẩm có thực an tồn để tiêu thụ hay khơng Trong nước Đối với Việt Nam, cơng nghệ cịn mới, chưa phổ biến áp dụng rộng rãi Nhưng có có cá nhân tổ chức tìm hiểu, nghiên cứu áp dụng vào thực tế như: truy xuất nguồn gốc xoài Cát Chu hợp tác xã Mỹ Xương dựa tảng blockchain Infinity Blockchain Labs (IBL) - công ty chuyên phát triển giải pháp công nghệ tảng blockchain Tại diễn đàn Nông nghiệp Mùa Xuân 2018, chủ đề “Đổi chuỗi cung ứng nhằm tăng cường hiệu nông nghiệp Việt Nam” ngày 24/4 đem lại nhiều bất ngờ thú vị Điều đặc biệt, tập đồn Thái Cơng ty Cổ phần Lina Network chọn khuôn khổ Diễn đàn để thực Lễ ký kết biên ghi nhớ thỏa thuận hợp tác ứng dụng Lina Paltform vào chuỗi cung ứng (còn gọi ứng dụng Lina Supply Chain/LINA Công ty Cổ phần Lina Network) Mục tiêu nghiên cứu Phân tích thực trạng thu nhận thông tin du học sinh Lào từ trưởng cụm trường đến đại sứ quán Lào, đề xuất phương pháp xác thực thông tin với công nghệ Blockchain nhằm tăng tính minh bạch,tính từ cậy tính an toàn Đối tượng Đối tượng nghiên cứu đề tài công nghệ Blockchain,Ứng dụng công nghệ Blockchain C C công cụ xác dân ứng dụng quản lý liệu du học sinh Lãnh quán dân R L T nhân Lào TP Đà Nẵng quản lý Phạm vi nghiên cứu DU Xây dựng hệ thống blockchain nội Lập trình hợp đồng thông minh việc quản lý Xây dựng website dựa tảng blockchain Phương pháp nghiên cứu Nghiên cứu báo cáo, báo tài liệu hướng dẫn blockchain: Phân tích thiết kế cấu trúc cho hệ thống blockchain Tìm hiểu cách thu thập liệu du học sinh lào từ trường Nghiên cứu báo cáo, báo tài liệu hướng dẫn DApp: Phân tích liệu để lập trình smart contract quản lý sinh viên Nghiên cứu cách để kết nối website với blockchain Dự kiến kết đạt - Hệ thống sử dụng lãnh quán Nhân dân Lào TP Đà Nẵng để theo dõi q trình học tập du học sinh, đánh giá kết học tập sinh viên cách nhanh xác Hệ thống Blockchain với việc mô Node với giao diện web để xem thao tác thông tin -Tên báo dự định công bố: Ứng dụng công nghệ blockchain xác minh thơng tin q trình học tập du học sinh lào Luận văn chia làm ba phần: phần mở đầu, phần nội dung phần kết luận Phần mở đầu Nêu lý chọn đề tài, tổng quan tình hình phát triển, mục tiêu nghiên cứu đề tài, đối tượng, phạm vi, phương pháp nghiên cứu đóng góp đề tài Bên cạnh mặt hạn chế mà đề tài chưa thực để giúp người có nhìn rõ C C DU R L T CHƢƠNG TỔNG QUAN VỀ CÔNG NGHỆ BLOCKCHAIN 1.1Giới thiệu blockchain Blockchain hệ thống sở liệu phân tán phi tập trung, bao gồm nhiều máy tính kết nối mạng ngang hàng (peer-to-peer) với tạo thành Hệ thống lưu trữ thông tin thành khối liệu liên kết với nhau, quản lý người tham gia vào hệ thống Thông tin blockchain bị thay đổi bổ sung thêm có đồng thuận tất nút hệ thống Đây hệ thống bảo mật an toàn cao trước khả bị sửa đổi liệu Ngay phần hệ thống blockchain sụp đổ, máy tính nút khác tiếp tục bảo vệ thông tin giữ cho mạng lưới tiếp tục hoạt động 1.1.1Đặc điểm C C Các đặc điểm bật cơng nghệ blockchain kể đến như: Hệ thống thiết kế phân tán nên người tham gia vào hệ thống lưu giữ R L T liệu, điều giúp cho liệu khơng thể bị làm giả cơng Dữ liệu sửa đổi đạt đồng thuận người tham gia hệ DU thống, lưu vết hệ thống Mọi thay đổi liệu lưu vết hệ thống nói blockchain hệ thống sở liệu có tính minh bạch 1.1.2 Cơ chế hoạt động Công nghệ chuỗi khối Blockchain sổ ghi chép lưu trữ thông tin giao dịch Blockchain, nói sở liệu tổ chức thành liên kết dạng chuỗi khối thông tin (block), cho phép phát triển mở rộng theo thời gian, nghĩa có liệu hình thành thêm khối Theo phương pháp truyền thống, giao dịch lưu trữ sổ cái; sổ khóa lại lập nhằm đảm bảo tính xác tính bất khả xâm phạm chúng Khi hoạt động giao dịch, quan đơn vị phải trì ghi (record) riêng để xác minh thông tin độc lập Ngược với kiểu truyền thông này, blockchain sổ cái, nhiên điểm khác biệt tin cậy tích hợp; hay nói cách khác Blockchain sổ đồng thuận phân tán, chia sẻ đáng tin cậy; hình thành sổ kỹ thuật số mang tính tin cậy cao, ghi lại giao dịch, đặc biệt sổ trì người tham gia mang lưới Mỗi khối có mã băm (Hash) để nhận dạng khối liệu Mã nhất, tương tự dấu vân tay Bất kỳ thay đổi khối mã băm thay đổi Mã băm đối chiếu (chính mã khối phía trước – Hash of previous block) tạo thành chuỗi Bất thay đổi khối khiến khối không phù hợp C C 1.1.3 Nguyên lý hoạt động Ứng dụng biết đến thảo luận nhiều công nghệ blockchain R L T đồng tiền điện tử Bitcoin Hiện đồng tiền điện tử sử dụng để trao đổi sản phẩm dịch vụ, giống đồng đô la Mỹ (USD), Euro (EUR), đồng nhân dân tệ DU Trung Quốc (CNY) loại tiền tệ quốc gia khác Do tạm lấy đồng tiền làm đại diện để nói nguyên lý hoạt động công nghệ blockchain 1.1.4 Phân loại Ứng dụng biết đến thảo luận nhiều công nghệ blockchain đồng tiền điện tử Bitcoin Hiện đồng tiền điện tử sử dụng để trao đổi sản phẩm dịch vụ, giống đồng đô la Mỹ (USD), Euro (EUR), đồng nhân dân tệ Trung Quốc (CNY) loại tiền tệ quốc gia khác Do tạm lấy đồng tiền làm đại diện để nói nguyên lý hoạt động công nghệ blockchain Bitcoin đơn vị tiền tệ kỹ thuật số với mã BTC, giống đô la Mỹ thân khơng mang giá trị, có giá trị có cộng đồng đồng ý sử dụng làm đơn vị giao dịch hàng hóa dịch vụ 1.2 Tổng quan Ethereum 1.2.1 Giới thiệu Ethereum Ethereum tảng mã nguồn mở dựa công nghệ blockchain cho phép nhà phát triển xây dựng triển khai ứng dụng hợp đồng thông minh hoạt động tảng blockchain 1.2.2 Kiến trúc 1.2.2.1 Ether Ether, loại tiền mã hóa giao dịch mạng lưới Ethereum gọi Ether Nó liệt kê mã ETH giao dịch sàn giao dịch tiền mã hóa Nó sử dụng để trả phí giao dịch dịch vụ tính tốn mạng Ethereum 1.2.2.2 Máy ảo Ethereum (Ethereum Virtual Machine) Máy ảo Ethereum môi trường chạy hợp đồng thông minh Ethereum Nó hồn tồn lập từ mạng, hệ thống tập tin trình khác hệ thống máy chủ Mỗi nút Ethereum mạng chạy EVM thực hướng dẫn giống Ethereum Virtual Machines lập trình C++, Go, Haskell, Java, Python, Ruby, Rust WebAssembly 1.2.2.3 Hợp đồng thông minh Hợp đồng thông minh chế trao đổi xác định, kiểm soát phương tiện C C kỹ thuật số mà giúp cho việc thực giao dịch trực tiếp thực thể mà không R L T cần tin cậy 1.2.3 Ứng dụng DU Rất nhiều người nghĩ Ethereum tạo để cạnh tranh với đồng tiền ảo Bitcoin thực chất tiền tệ khơng phải mục đích mà Ethereum nhắm đến Công nghệ blockchain Ethereum tập trung tạo ứng dụng hoạt động dựa smart contract nhằm giải giao dịch cách dễ dàng, nhanh chóng, tiết kiệm, an tồn cơng khai 1.3 Tổng quan smart contract 1.3.1 Giới thiệu smart contract Smart contract giao thức đặc biệt với mục tiêu đóng góp xác nhận hay tiến hành trình đàm phán thực hợp đồng Smart contract cho phép ta triển khai giao dịch mà không cần thông qua bên thứ ba trung gian 1.3.2 Nguyên lý hoạt động Nguyên lý vận hành smart contract đem so sánh với máy bán hàng tự động Smart contract tự động thực lệnh mà lập trình sẵn từ trước Đầu tiên, tài sản điều khoản hợp đồng mã hóa chuyển vào block thuộc blockchain Smart contract tiếp phân phối chép lại nút hoạt động tảng Sau có nhận lệnh triển khai hợp đồng triển khai theo điều khoản định sẵn Đồng thời, smart contract tự động kiểm tra trình thực cam kết nêu hợp đồng C C Hình Error! No text of specified style in document – Nguyên lý hoạt động smart contract 1.3.3 Các thành phần smart contract R L T DU Chủ thể hợp đồng, chương trình phải cấp khả truy cập đến sản phẩm/dịch vụ liệt kê hợp đồng để tự động khóa hay mở khóa chúng 1.3.4 Lợi ích smart contract Smart contract mã hóa phân phối cho node Cách thức bảo đảm khơng bị thất lạc hay sửa đổi mà không bạn cho phép Hầu hết cơng đoạn tự động hố, gần loại bỏ hoàn toàn bên trung gian 1.4 Các ứng dụng phi tập trung 1.4.1 Giới thiệu ứng dụng phi tập trung Ethereum cung cấp tảng để nhà phát triển tạo ứng dụng chạy blockchain, ứng dụng gọi ứng dụng phi tập trung, thường gọi DApp (Decentralized App) Các ứng dụng phi tập trung ứng dụng có mã nguồn mở, khơng chịu kiểm sốt cá nhân đối tượng nào, chạy blockchain mạng lưới máy tính phi tập trung Các ứng dụng phi tập trung khơng có máy chủ trung tâm, người dùng liên hệ với thông qua kết nối đồng cấp Các ứng dụng thông thường chịu kiểm soát đối tượng, chạy máy chủ trung tâm dễ bị công gặp thời gian chết máy chủ rơi vào trạng thái ngoại tuyến 10 Chƣơng HỆ THỐNG XÁC MINH THÔNG TIN SINH VIÊN 2.1 Giới thiệu hệ thống Công nghệ blockchain dần áp dụng vào nhiều lĩnh vực sống Ngày nhiều cá nhân, quan tổ chức quan tâm, nghiên cứu cho nhiều ứng dụng blockchain áp dụng vào sống Mục tiêu hệ thống ứng dụng tính minh bạch độ tin cậy cao công nghệ blockchain để tăng cao độ an tồn lưu trữ thơng tin sinh viên Tất liệu liên quan đến công việc học tập (điểm, hoạt động ngoại khoá, kỹ năng, trải nghiệm,…) lưu trữ Blockchain cách minh bạch, rõ ràng, bất biến Quá trình hạn chế tối đa vấn đề gian lận điểm, cấp giả mạo giáo dục C C R L T DU Hình Error! No text of specified style in document hệ thống Blockchain vào giáo dục 2.1.1 Thiết kế hệ thống Hệ thống xác minh thông tin sinh viên mình, nhu cầu du học sinh Lào Việt Nam ngày tăng lên có khoảng 850 sinh viên học miền Trung Làm để đảm bảo sinh viên trường theo dõi xác trình học tập sinh viên suốt trình học trường từ nhập học đến trường Hiện trạng, công tác quản lý sinh viên tổng lãnh quán dân nhân Lào TP Đà Nẵng; công việc trước làm thủ công lập danh sách sinh viên, lập danh sách 11 trường học tốn nhiều thời gian, công sức giấy tờ, sổ sách lưu trữ (chưa có hệ thống quản lý sinh viên) Chính hệ thống xác thực thông tin sinh viên giúp sinh viên sở hữu thơng tin truy cập liệu nguồn xác nhận lúc nào, sử dụng thông tin lưu trữ trên, đồng thời phụ huynh, công tác quản lý sinh viên nhà tuyển dụng xem thơng tin lưu trữ hệ thống, không liệu bảng điểm mà cịn q trình đào tạo, kinh nghiệm thực tế, liệu cá nhân (bao gồm điểm, hoạt động đoàn thể, phong trào, giải thưởng…) học sinh lưu trữ chi tiết cụ thể Blockchain Học viên chia sẻ thông tin ID cho nhà tuyển dụng doanh nghiệp, từ nhà tuyển dụng dễ dàng tìm kiếm nhân tố tài phù hợp C C R L T DU Hình Error! No text of specified style in document Sơ đồ hoạt động hệ thống 2.1.2 Kiến trúc hệ thống Hệ thống xác thực thông tin sinh viên gồm server nodejs đóng vai trị điều khiển hoạt động hệ thống, đồng thời tạo kết nối trung gian để người dùng tương tác với blockchain Ethereum đóng vai trị sở liệu chứa tất thông tin sinh viên Khi có yêu cầu từ client đến server, server thực yêu cầu tương ứng đến hệ thống blockchain, phản hồi kết nhận từ blockchain cho client 12 Hình Error! No text of specified style in document Sơ đồ kiến trúc hệ thống Nhân viên nhập liệu: có quyền nhập vào, chỉnh sửa cập nhật Làm nhiệm vụ thu thập liệu nhập vào liệu thông tin sinh viên, thơng tin cá nhân, bảng điểm, q trình C C đào tạo, kinh nghiệm thực tế, lịch sử tuyển dụng cá nhân R L T Client: có quyền xem thơng tin DU Hình Error! No text of specified style in document Sơ đồ nhập thông tin vào hệ thống Khi nhập thông tin sinh viên, địa ví tài khoản gọi đến yêu cầu lưu thông tin không đăng ký báo lỗi, đăng ký tiếp tục kiểm tra sinh viên lưu trữ hệ thống chưa? Nếu sinh viên lưu trữ hệ thống thực 13 việc cập nhật lại thông tin sinh viên, sinh viên chưa lưu trữ hệ thống thực thêm sinh viên hệ thống Các thông tin thu thập lưu vào hệ thống bao gồm có: Thơng tin sinh viên: họ tên, ngày sinh, trường, cấp học, ngành học, khóa học, số điện thoại, email, địa kí túc xá, loại học bổng, số thơng thư, cơng việc thức, điểm, hình ảnh, năm nhập học kết thúc Thông tin thực tập: nơi thực tập, thời gian thực tập, điểm thực tập, cơng việc thực tập Thơng tin đồn đội: ngày gia nhập đoàn niên, liên đoàn, hội phụ nữ ,đảng viên dự bị ngày gia nhập đảng viên Thông tin văn bằng: họ tên, ngày sinh, trường, số hiệu, năm tốt nghiệp, xét loại, hình thức đào tạo ngày cấp 2.1.3 Công cụ thực C C Trong hệ thống này, luận văn sử dụng công cụ sau: R L T Ngơn ngữ lập trình solidity để điều khoản smartcontact Nodejs thực thiết kế giao diện, chức giao tiếp với nguời sử dụng DU Cơ sở liệu sử dụng công nghệ Blockchain dựa vào tảng Ethereum platform for blockchain 2.2 Một số phần mềm, thư viện framework sử dụng đề tài 2.2.1 Geth Geth hay gọi Go Ethereum, chương trình giúp người dùng tương tác với hệ thống blockchain Ethereum mining, thực giao dịch… Đồng thời, Geth chương trình hỗ trợ người dùng tự tạo hệ thống blockchain riêng 2.2.2 Remix Remix trình soạn thảo biên dịch ngơn ngữ lập trình Solidity, remix hỗ trợ công cụ để nhà phát triển gỡ lỗi chạy thử smart contract Điểm đặc biệt remix không cần phải cài đặt sử dụng được, mà cần truy cập vào đường link: https://remix.ethereum.org/ sử dụng 2.2.3 Nodejs NodeJS mã nguồn xây dựng dựa tảng Javascript V8 Engine Nodejs sử dụng rộng hàng ngàn lập trình viên tồn giới NodeJS cung cấp thư viện phong phú dạng Javascript Module khác giúp đơn giản hóa việc lập trình giảm thời gian mức thấp 14 2.2.4 Truffle Truffle môi trường phát triển framework để kiểm thử dành cho blockchain Ethereum, mục tiêu mà Truffle hướng đến giúp cho nhà phát triển dễ làm việc với Ethereum việc tạo ứng dụng phi tập trung (DApp) 2.2.5Lite-server Lite-server package nodejs, giúp tạo localhost để chạy kiểm thử ứng dụng web Ngồi lite-server cịn tích hợp BrowserSync, cho phép tự tải lại trang web chạy code website chỉnh sửa lưu lại 2.2.6 Web3.js Web3.js thư viện javascript, giúp ứng dụng javascript chạy trình duyệt web kết nối tương tác với hệ thống blockchain Web3.js tải tại: https://github.com/ethereum/web3.js 2.2.7 Bootstrap C C R L T Bootstrap framework giúp người dùng dễ dàng tạo giao diện website, chứa mẫu thiết kế có sẵn dựa HTML CSS cho kiểu chữ, biểu mẫu, nút bấm, điều DU hướng thành phần giao diện khác 2.2.8 Metamask Metamask cho phép người dùng chạy ứng dụng Ethereum DApps trình duyệt mà khơng cần khởi động tồn node Ethereum dẫn đến trình duyệt trở nên nặng nề chậm chạp 2.3 Mơ tả hệ thống cài đặt Hình Error! No text of specified style in document Mô hình thử nghiệm hệ thống 15 Hệ hống private blockchain với cấu sau: Hệ thống gồm miner, miner cài đặt máy tin nội bộ, Node1.Node2 Cả hai máy tính tác giả sử dụng hệ điều hành Ubuntu 18.04 Mỗi miner có tài khoản ví Ethereum kết nối để đồng liệu với Tạo hợp đồng thông minh để quản lý liệu sinh viên hệ thống blockchain Xây dựng web server để người dùng quản lý tra cứu thông tin sinh viên blockchain Thí nghiệm chứng minh tính tồn vẹn tính xác thực liệu blockchain 2.4 Xác thực học sinh sinh viên Hệ thống xác thực thông tin sinh viên giúp sinh viên sở hữu thơng tin truy cập liệu nguồn xác nhận lúc nào, đồng thời phụ huynh, công tắc quản lý sinh viên nhà tuyển dụng xem thơng tin lưu trữ hệ thống, không C C liệu bảng điểm mà cịn q trình đào tạo, kinh nghiệm thực tế, lịch sử tuyển R L T dụng cá nhân Đổi với du hoc sinh lào, nhiều mà sinh viên muốn xác nhận thơng tin hộ DU khơng thuận tiện tốt nghiệp nơi xa xôi, Đồng thời phụ huynh, xem thơng tin lưu trữ hệ thống, không liệu bảng điểm mà cịn q trình đào tạo Nhiều cịn lại giấu điểm học tập mình,khơngmuốn ba mẹ biết Khi đăng ký tuyển dụng xin học bổng, thường xuyên xảy tình ứng viên cung cấp thơng tin khơng xác, đa phần kê khai thông tin cao so với lực, trình độ, kinh nghiệm thực tế thân nhằm đáp ứng đủ điều kiện xét/thi tuyển Blockchain thiết kế để chống lại thay đổi liệu Hình 4.7 Giao diện trang web tra cứu thơng tin 16 Hình 4.8 Giao diện trang web tra cứu thông tin 2.5 Đặc điểm hệ thống C C Cập nhật liệu lúc: sinh viên truy cập liệu nguồn xác nhận lúc R L T Cập nhật kết học tập thường xuyên: sinh viên tổ chức sử dụng tài liệu giáo DU dục dạng giấy để nộp đơn Đặc biệt trường hợp thực tập muốn nộp hồ sơ liên tục Giảm khối lượng công việc nhân viên quản lý sinh viên: công việc trước làm thủ công lập danh sách sinh viên, lập danh sách trường học tốn nhiều thời gian, công sức giấy tờ, sổ sách lưu trữ Trình độ kết học tập số hóa với tảng cho thấy chi tiết đáng tin cậy để giảm khối lượng công việc nhân loại bỏ thủ tục phức tạp Đáng tin cậy: điều khác làm cho Blockchain bật so với tảng kỹ thuật số khác độ tin cậy liệu Ngồi khả mã hóa tiên tiến liệu phi tập trung, có giả mạo hệ thống khiến thông tin giả mạo không khớp với thơng tin mà người hệ thống có, coi thơng tin ngầm thiếu uy tín 17 CHƢƠNG KẾT QUẢ VÀ THỬ NGHIỆM 3.1 Thống kê liệu sở liệu cài đặt 3.1.1 Chuẩn bị Để chứng minh toàn vẹn liệu blockchain, luận văn thiết lập hệ thống private blockchain gồm hai miner Hai miner cấu hình hai máy chủ ảo (virtual private server) khác nhau, kết nối với (pair) để đồng liệu hệ thống (syncing) Ngoài ra, luận văn sử dụng server nodejs kết nối đến hai miner để giúp cho trình lấy liệu từ blockchain trực quan dễ hiểu Kịch chứng minh sau: Thiết lập cho hai miner kết nối với Triển khai smart contract lên hệ thống C C Thực vài giao dịch lưu thông tin lên blockchain R L T Kiểm tra số block hai miner, thấy hai miner có số block nhau, suy liệu đồng liên tục DU Cho server nodejs lấy liệu từ miner thứ Tắt miner thứ để giả định cho trường hợp miner bị hư bị công Kiểm tra server nodejs, thấy server tự động kết nối với miner thứ hai, thử lấy liệu sinh viên, kết liệu không bị 3.1.2 Thực 3.1.2.1 Cài đặt miner Quá trình cài đặt hai miner máy chủ ảo với hệ điều hành ubuntu 18.04 thiết lập hệ thống private ethereum 3.1.2.2 Kết nối đồng hai miner Sau cài đặt hai miner, bắt đầu giai đoạn kết nối đồng hai miner với Các miner hệ thống kết nối với dựa vào địa miner gọi enode, địa ip máy chủ chạy miner port miner Từ console điều khiển miner thứ nhất, nhập lệnh sau để xem địa enode miner: admin.nodeInfo.enode 18 Hình Error! No text of specified style in document Lấy thông tin enode miner C C R L T Sau lấy địa ip máy chủ: ip addr DU Hình Error! No text of specified style in document 10 Kết lấy địa ip máy chủ Về phần giá trị port miner, không khai báo port 30303 dùng cho miner Từ console điều khiển miner thứ hai, tiến hành kết nối đến miner thứ nhất: 19 admin.addPeer(diachi-enode@diachi-ip:port) C C Hình Error! No text of specified style in document 11 Kết lệnh kết nối từ miner R L T thứ hai đến miner thứ DU Tương tự, miner thứ phải thêm địa miner thứ hai Để kiểm tra xem hai miner kết nối với chưa, từ console điều khiển miner nào, nhập lệnh sau để xem danh sách kết nối admin.peers Hình Error! No text of specified style in document 12 Kết lệnh kết nối hai miner với Sau chắn hai miner kết nối với nhau, kiểm tra số block hai miner để xem liệu có đồng hay khơng lệnh: 20 eth.blockNumber Hình Error! No text of specified style in document 13 Kết hiển thị số block hai miner Hoặc dùng lệnh sau để kiểm tra trạng thái đồng miner: C C eth.syncing R L T DU Hình Error! No text of specified style in document 14 Kết lệnh kiểm tra trạng thái đồng liệu 3.1.2.3 Triển khai smart contract lên hệ thống Quá trình triển khai smart contract luận văn thực theo bước nêu mục số - Lập trình smart contract 3.1.2.4 Tạo server nodejs kết nối đến hệ thống Quá trình lập trình server thực theo bước trình bày mục số - Lập trình RESTful API với nodejs, phần kết nối đến blockchain thay đổi websocket không http, mục đích việc dùng websocket để server lắng nghe bị kết nối đến miner để tự chuyển qua miner khác 21 Trong file ethereum.js nằm thư mục models, thay đoạn code cũ đoạn code sau: const Web3 = require("web3"); const config = require(" /utils/config"); var currentProvider = 0; // function init web3 by using local miner as provider: const getProvider = () => { const provider = new Web3.providers.WebsocketProvider(config.MINER_URL[currentProvider]) provider.on('connect', () => console.log('Web3 provider Connected, current provider is: ' + config.MINER_URL[currentProvider])); provider.on('end', e => { console.error('\nWeb3 provider is closed') R L T console.log('Attempting to reconnect '); // wait for 5s to stable: setTimeout(() => { C C DU if (config.MINER_URL[currentProvider + 1]) currentProvider++; else currentProvider = 0; web3.setProvider(getProvider()); }, 5000); }) return provider } // init web3 provider: const web3 = new Web3(getProvider()); module.exports = new web3.eth.Contract(config.CONTRACT_ABI, config.CONTRACT_ADDRESS); Trong đoạn code trên, hàm getProvider kiểm tra xem miner danh sách địa miner cung cấp khả dụng kết nối với miner Khi bị kết nối, server tự chuyển qua địa miner khác 22 Để cung cấp danh sách địa miner khả dụng, file config.js nằm thư mục utils, thay đổi giá trị MINER_URL thành mảng sau: MINER_URL: ["ws://localhost:8545", "ws://localhost:8546"] Trong file startMiner.sh, thêm hai lựa chọn sau phép miner kết nối websocket: ws wsport "8546" 3.1.2.5 Ngừng hoạt động miner Sau chuẩn bị xong miner server, bắt đầu tắt miner thứ để giả sử cho trường hợp miner bị hỏng bị công C C R L T DU Hình Error! No text of specified style in document 15 Giao diện sau tắt miner thứ 3.1.2.6 Lấy liệu Kiểm tra console log server, ta thấy server khơng cịn lắng nghe đến miner thứ nên chuyển sang kết nối với miner thứ hai 23 Hình Error! No text of specified style in document 16 Server nodejs chuyển kết nối sang C C miner thứ hai tắt miner thứ R L T Sau đó, mở trang web tra cứu thông tin, nhập vào thông tin sinh viên lưu trước để kiểm tra xem liệu có bị khơng? DU Kết liệu trả hiển thị lên web bình thường Hình Error! No text of specified style in document 17 Dữ liệu trả từ miner thứ hai thông qua server nodejs 3.1.3 Chứng minh tính xác thực sở liệu 24 Luận văn chứng minh liệu lưu trữ blockchain ghi giao dịch lưu khối (block) hệ thống Mỗi sinh viên Lào nhập học hệ thống ghi nhận lại thơng tin chi tiết sinh viên giao diện C C R L T Hình Error! No text of specified style in document 18 Thông qua trang Quản lý thông tin sinh viên để thêm thông tin DU KẾT LUẬN Hệ thống xác thực thông tin sinh viên giúp sinh viên sở hữu thơng tin truy cập liệu nguồn xác nhận lúc nào, sử dụng thơng tin lưu trữ để mở hội nghề nghiệp mới, đồng thời phụ huynh, công tắc quản lý sinh viên nhà tuyển dụng xem thơng tin lưu trữ hệ thống, không liệu bảng điểm mà cịn q trình đào tạo, kinh nghiệm thực tế, lịch sử tuyển dụng cá nhân Cập nhật liệu lúc: sinh viên truy cập liệu nguồn xác nhận lúc Giảm khối lượng công việc nhân viên quản lý sinh viên: trình độ kết học tập số hóa với tảng cho thấy chi tiết đáng tin cậy để giảm khối lượng công việc nhân loại bỏ thủ tục phức tạp Đáng tin cậy: điều khác làm cho Blockchain bật so với tảng kỹ thuật số khác độ tin cậy liệu Ngồi khả mã hóa tiên tiến liệu phi tập trung, có giả mạo hệ thống khiến thông tin giả mạo không khớp với thông tin mà người hệ thống có, coi thơng tin ngầm thiếu uy tín

Ngày đăng: 04/07/2023, 10:29

Tài liệu cùng người dùng

Tài liệu liên quan