Bối cảnh và vấn đề nghiên cứu
Trong bối cảnh cuộc Cách mạng công nghiệp 4.0 đang tác động mạnh mẽ đến các mô hình quản trị và kinh doanh, các công nghệ tiên tiến như Trí tuệ nhân tạo (AI), Tự động hóa quy trình bằng robot (RPA), Internet vạn vật (IoT) và Dữ liệu lớn (Big Data) ngày càng được ứng dụng sâu rộng. Cùng với xu hướng đó, công nghệ Blockchain nổi lên như một nền tảng quan trọng tại Việt Nam nhờ các đặc tính cốt lõi: tính ẩn danh, tính bất biến và độ bảo mật cao.
Việt Nam nằm trong nhóm 20 quốc gia có tỷ lệ người dùng Internet cao, với cơ cấu dân số trẻ và tốc độ phát triển thương mại điện tử nhanh chóng. Đây là điều kiện thuận lợi để ứng dụng công nghệ chuỗi khối nhằm thay thế các quy trình giao dịch truyền thống. Các hệ thống thương mại trực tuyến hiện tại phụ thuộc hoàn toàn vào bên thứ ba để xử lý thanh toán, dẫn đến phát sinh chi phí trung gian, giới hạn quy mô giao dịch tối thiểu và tiềm ẩn rủi ro tranh chấp hoặc gian lận. Tuy nhiên, việc tiếp cận Blockchain tại Việt Nam vẫn gặp rào cản do mức độ tin tưởng của người tiêu dùng và doanh nghiệp chưa cao, cùng khuôn khổ pháp lý còn hạn chế. Đề tài "Tìm hiểu về công nghệ Blockchain và ứng dụng của nó trong tiền ảo Bitcoin, đồng thời phân tích, thiết kế một ứng dụng ví mobile Android dựa trên quy trình xây dựng ứng dụng mobile tại Công ty Cổ phần Công nghệ Sotatek" được thực hiện bởi sinh viên Vũ Thị Nhàn (Mã sinh viên: 11163860, Lớp: Tin học kinh tế 58, Trường Đại học Kinh tế Quốc dân) dưới sự hướng dẫn của TS. Nguyễn Thị Bạch Tuyết vào năm 2020.
Nhiệm vụ và mục tiêu nghiên cứu của chuyên đề được xác định cụ thể:
- Tìm hiểu cách thức áp dụng công nghệ Blockchain trong lĩnh vực tiền mã hóa Bitcoin.
- Nắm vững quy trình phân tích và xây dựng một ứng dụng di động trong môi trường doanh nghiệp thực tế.
- Sử dụng thành thạo các công cụ phát triển phần mềm gồm Android Studio, Balsamiq và Genymotion để xây dựng ứng dụng di động Android.
- Phân tích, thiết kế thành công ứng dụng ví Blockchain trên nền tảng di động Android.
Đối tượng và phạm vi nghiên cứu:
- Đối tượng nghiên cứu: Công nghệ Blockchain, đồng tiền mã hóa Bitcoin và ứng dụng ví điện tử Blockchain trên thiết bị di động.
- Phạm vi không gian: Thực hiện tại Công ty Cổ phần Công nghệ Sotatek (Sotatek Joint Stock Company).
- Phạm vi thời gian: Từ ngày 13/01/2020 đến ngày 30/04/2020.
- Nội dung hoạt động: Nghiên cứu cơ sở lý thuyết về Blockchain và Bitcoin; ứng dụng quy trình kỹ thuật tại Sotatek để phân tích, thiết kế hệ thống và giao diện cho ứng dụng ví Blockchain di động.
Cơ sở lý thuyết và phương pháp
Chuyên đề xây dựng trên nền tảng lý thuyết khoa học máy tính và mật mã học, kết hợp với các phương pháp nghiên cứu và phát triển hệ thống thông tin:
- Khung lý thuyết và công nghệ:
- Mật mã học (Cryptography): Ứng dụng cặp khóa công khai - khóa riêng tư theo giải thuật Diffie-Hellman, cấu trúc cây Merkle (Merkle Tree), các hàm băm mật mã (SHA-256, SHA-1, RIPEMD160).
- Mạng ngang hàng (Peer-to-Peer - P2P): Mô hình các nút phân tán vừa đóng vai trò máy khách (client), vừa đóng vai trò máy chủ (server) để lưu trữ các bản sao sổ cái.
- Lý thuyết trò chơi và Cơ chế đồng thuận (Game Theory & Consensus Mechanisms): Giải quyết bài toán các vị tướng Byzantine (Byzantine Generals Problem) thông qua các thuật toán: Proof of Work (PoW), Proof of Stake (PoS), Delegated Proof of Stake (DPoS) và Proof of Authority (PoA).
- Sổ cái phân tán và mô hình kế toán: Công nghệ sổ cái phân tán (DLT), mô hình kế toán ba nhánh (Triple-Entry Bookkeeping) và cơ chế quản lý đầu ra giao dịch chưa chi tiêu (Unspent Transaction Output - UTXO).
- Giao thức thanh toán: Hệ thống thanh toán tổng tức thời theo thời gian thực (RTGS) thông qua giao thức Ripple.
- Phương pháp nghiên cứu thực tế:
- Phương pháp thu thập thông tin: Phỏng vấn trực tiếp cán bộ kỹ thuật tại Công ty Cổ phần Công nghệ Sotatek kết hợp nghiên cứu các tài liệu kỹ thuật, học thuật về Blockchain, Bitcoin và ví điện tử trên Internet.
- Phương pháp so sánh, đối chiếu: So sánh giữa lý thuyết kỹ thuật và thực tiễn triển khai dự án phần mềm tại doanh nghiệp nhằm lựa chọn mô hình thiết kế phù hợp.
- Phương pháp phân tích, tổng hợp và thiết kế hệ thống: Sử dụng các công cụ mô hình hóa phần mềm như Sơ đồ phân rã chức năng (BDF), Sơ đồ ngữ cảnh (Context Diagram - CD), Sơ đồ luồng dữ liệu (DFD mức 1), thiết kế cơ sở dữ liệu quan hệ SQLite và tạo mẫu giao diện (wireframing).
- Nguồn dữ liệu: Tài liệu nội bộ, báo cáo tài chính giai đoạn 2016–2018 và hồ sơ năng lực công nghệ do Công ty Cổ phần Công nghệ Sotatek cung cấp; các thông số kỹ thuật từ mạng lưới Bitcoin.
Nội dung chính theo từng chương
Chương 1: Tổng quan về đề tài nghiên cứu và đơn vị thực tập
Chương này trình bày chi tiết về đơn vị tiếp nhận thực tập - Công ty Cổ phần Công nghệ Sotatek (viết tắt của "State of The Art Technology"). Công ty được cấp phép kinh doanh ngày 15/08/2015, có trụ sở chính tại Tầng 7, CIC Tower, 219 Trung Kính, Cầu Giấy, Hà Nội; mã số thuế 0106931672, vốn điều lệ 13.000 USD, đại diện pháp luật là Tổng giám đốc Lê Minh Tuấn (Tommy Lê). Ban lãnh đạo gồm các đồng sáng lập: Mr. Tyler Lưu (COO), Mr. Richard Trần (CTO), Mr. Nguyên William (CFO), Mr. Andy Nguyễn (CIO). Khởi đầu từ nhóm phát triển 98 thành viên, công ty đã mở rộng lên 150 nhân sự (với 80% là kỹ sư trình độ cao), triển khai trên 200 dự án cho 60 khách hàng tại 7 quốc gia (Anh, Nhật Bản, Mỹ, Singapore, Pháp, Ý, Hàn Quốc).
Hệ thống phần mềm quản trị và vận hành dự án tại Sotatek gồm: Portal (quản lý nhân sự nội bộ), Jira (quản lý dự án), Ams (quản lý tài sản), Slack (trao đổi thông tin nhóm), Github (quản lý mã nguồn), Balsamiq và Zeplin (thiết kế wireframe, giao diện UI/UX).
| STT |
Chỉ tiêu tài chính (Đơn vị: VND) |
Năm 2016 |
Năm 2017 |
Năm 2018 |
| 1 |
Doanh thu bán hàng và cung cấp dịch vụ |
5.854.214.470 |
5.277.564.500 |
6.148.047.830 |
| 2 |
Các khoản giảm trừ doanh thu |
0 |
0 |
0 |
| 3 |
Doanh thu thuần về BH và cung cấp dịch vụ |
5.854.214.470 |
5.277.564.500 |
6.148.047.830 |
| 4 |
Giá vốn hàng bán |
3.931.345.423 |
3.552.086.310 |
4.090.682.027 |
| 5 |
Lợi nhuận gộp về BH và cung cấp dịch vụ |
1.922.869.047 |
1.755.478.190 |
2.057.365.803 |
| 6 |
Chi phí quản lý kinh doanh |
1.635.687.021 |
1.594.279.967 |
1.827.165.468 |
| 7 |
Lợi nhuận thuần từ hoạt động kinh doanh |
287.182.026 |
261.198.223 |
230.200.335 |
| 8 |
Thu nhập khác |
2.298 |
2.556 |
50.694.624 |
| 9 |
Chi phí khác |
1.670.459 |
1.227.667 |
33.441.258 |
| 10 |
Lợi nhuận khác |
(1.668.161) |
(1.225.111) |
17.253.366 |
| 11 |
Tổng lợi nhuận kế toán trước thuế |
285.513.865 |
259.973.112 |
247.453.701 |
| 12 |
Chi phí thuế thu nhập doanh nghiệp |
5.378.061 |
5.624.065 |
6.537.087 |
| 13 |
Lợi nhuận sau thuế thu nhập doanh nghiệp |
280.135.804 |
254.349.047 |
240.916.000 |
Nguồn: Phòng Tài chính kế toán Sotatek
Về chuyên môn Blockchain, Sotatek làm chủ các nền tảng công nghệ: Neo, Eos, Ethereum, Bitcoin, Hyperledger, Stratis. Các sản phẩm và dịch vụ tiêu biểu gồm: sàn giao dịch tập trung và phi tập trung (Centralized/Decentralized Crypto Currency Exchange, Instant Exchange Platform), giải pháp trọn gói phát hành ICO (cho đối tác Myanmar và trên nền tảng NEO), ứng dụng ví đa tiền tệ, giải pháp AI y tế, hệ thống quản lý bệnh viện trên Windows và nền tảng phát sóng trực tiếp (Live Streaming Platform).
Chương 2: Cơ sở của đề tài nghiên cứu
Chương 2 tổng hợp lịch sử phát triển, nguyên lý vận hành của Blockchain và tiền mã hóa Bitcoin:
- Lịch sử hình thành Blockchain: Khởi nguồn từ công trình giải mã Enigma của Alan Turing (thập niên 1940), phát minh thuật toán khóa công khai Diffie-Hellman và Cây Merkle của Ralph Merkle (thập niên 1970), công trình của W. Scott Stornetta và Stuart Haber (1991–1992) về chuỗi khối bảo mật bằng mật mã, và hoàn thiện bởi Satoshi Nakamoto (2009) thông qua mạng lưới Bitcoin P2P.
- Bản chất và cấu trúc: Blockchain là sổ kế toán số hóa, phân tán, ghi nhận các giao dịch theo trình tự thời gian tuyến tính. Mỗi khối chứa mã băm (hash) của khối liền trước và gốc Merkle. Hệ thống được cấu thành từ ba trụ cột: Mật mã học (Cryptography), Mạng ngang hàng (Peer-to-Peer), Lý thuyết trò chơi (Game Theory).
- Phân loại và các thế hệ Blockchain:
- Thế hệ: Blockchain 1.0 (tiền tệ và thanh toán kỹ thuật số), Blockchain 2.0 (tài chính, chứng khoán, hợp đồng thông minh), Blockchain 3.0 (ứng dụng trong y tế, giáo dục, chính phủ, nghệ thuật).
- Mô hình mạng: Public (công khai, không giới hạn quyền tham gia), Private (riêng tư, giới hạn quyền truy cập), Permissioned/Consortium (liên minh doanh nghiệp có kiểm soát).
- Cơ chế đồng thuận: Xuất phát từ bài toán các vị tướng Byzantine nhằm đạt được sự đồng thuận trong môi trường mạng phân tán có chứa các nút lỗi hoặc phản bội. Các cơ chế phổ biến gồm: PoW (chứng minh công việc), PoS (chứng minh cổ phần), DPoS (chứng minh cổ phần ủy quyền) và PoA (chứng minh thẩm quyền).
- Hạn chế và lợi ích: Hạn chế lớn nhất là tiêu thụ lượng điện năng khổng lồ từ thuật toán PoW và dung lượng lưu trữ gia tăng liên tục (cần khoảng 60GB cho một nút mạng đầy đủ ở thời điểm nghiên cứu và có thể đạt tới hàng Terabyte). Lợi ích mang lại gồm tính toàn vẹn dữ liệu, khả năng thực thi hợp đồng thông minh (IFTTT) độc lập không qua trung gian và tính minh bạch cao.
- Tổng quan về Bitcoin: Tiền mã hóa nguồn mở phát hành năm 2009. Tổng cung hữu hạn ở mức 21 triệu BTC, chu kỳ điều chỉnh giảm một nửa phần thưởng khối (halving) diễn ra sau mỗi 210.000 khối (khoảng 4 năm, tương ứng $6 \text{ khối/giờ} \times 24 \text{ giờ/ngày} \times 365 \text{ ngày/năm} \times 4 \text{ năm} = 210.240 \text{ khối}$, ban đầu là 50 BTC, sau đó là 25 BTC). Cấu trúc tài khoản gồm địa chỉ ví công khai (Public Key hash RIPEMD160/SHA-256) và khóa riêng tư (Private Key). Phân loại lưu trữ gồm: ví nóng, ví lạnh, ví phần mềm, ví Web, ví giấy và ví cứng. Quá trình đào (mining) thực hiện bằng máy tính chuyên dụng ASIC, thuật toán tự động điều chỉnh độ khó sau mỗi 2016 khối để đảm bảo chu kỳ sinh khối trung bình 10 phút.
Chương 3: Ứng dụng của công nghệ Blockchain trong tiền ảo Bitcoin
Chương 3 đi sâu vào kiến trúc kỹ thuật nội tại của Bitcoin:
- Cấu trúc khối và Mô hình UTXO: Khối gồm tiêu đề khối (Block Header) chứa Hash của khối trước, Merkle Root, Nonce và thân khối chứa các giao dịch. Bitcoin quản lý giá trị thông qua mô hình kế toán ba nhánh (Triple-Entry Bookkeeping) và cơ chế Đầu ra giao dịch chưa chi tiêu (UTXO). Mỗi giao dịch sử dụng UTXO làm đầu vào; phần chênh lệch giữa tổng giá trị đầu vào và tổng giá trị đầu ra được hạch toán thành phí giao dịch cho thợ đào (ví dụ minh họa: 10.000 Satoshi phí).
- Quy trình ký số và Máy chủ Dấu thời gian: Giao dịch được xác thực qua chuỗi chữ ký số sử dụng khóa riêng của người chuyển. Máy chủ dấu thời gian (Timestamp Server) gắn nhãn thời gian và xuất bản mã băm để xác nhận dữ liệu đã tồn tại tại thời điểm đó.
- Proof of Work và Vận hành mạng P2P: Triển khai qua 6 bước: (1) Phát sóng giao dịch; (2) Gom giao dịch vào khối; (3) Tìm PoW qua việc tăng giá trị nonce để mã băm SHA-256 đạt số lượng bit 0 yêu cầu; (4) Phát sóng khối hoàn thành; (5) Các nút kiểm tra tính hợp lệ; (6) Nút xác nhận bằng cách tạo khối kế tiếp sử dụng băm của khối vừa nhận.
- Khôi phục dung lượng và SPV: Cây Merkle cho phép nén và tỉa (pruning) các nhánh giao dịch đã chi tiêu mà không phá vỡ tính toàn vẹn của gốc Merkle. Kích thước tiêu đề khối cố định 80 byte, tương đương mức tăng dung lượng $80 \times 6 \times 24 \times 365 = 4,2 \text{ MB/năm}$. Cơ chế Xác minh thanh toán đơn giản (SPV) cho phép máy trạm nhẹ chỉ cần lưu trữ tiêu đề khối của chuỗi PoW dài nhất kết hợp đường dẫn nhánh Merkle để xác thực giao dịch mà không cần tải toàn bộ sổ cái.
- Mô hình toán học bảo mật: Phân tích xác suất kẻ tấn công tạo chuỗi song song gian lận bằng phân phối Poisson:
$$\lambda = z \cdot \frac{q}{p}$$
Xác suất kẻ tấn công bắt kịp từ khoảng cách $z$ khối được tính bởi công thức:
$$1 - \sum_{k=0}^{z} \frac{\lambda^k e^{-\lambda}}{k!} \left( 1 - \left(\frac{q}{p}\right)^{z-k} \right)$$
Trong đó $p$ là xác suất nút trung thực tìm thấy khối tiếp theo, $q$ là xác suất của kẻ tấn công ($p > q$).
- Thuật toán băm và Giao thức Ripple: Trình bày chi tiết 13 bước thực thi giải thuật băm (minh họa với hàm SHA-1 và từ khóa "CRYPTO"): khởi tạo 5 biến trạng thái $H0 - H4$, chuyển đổi xâu sang mã ASCII (67-82-89-80-84-79), đổi sang nhị phân, gom chuỗi và thêm bit "1", bổ sung các bit "0" để đạt độ dài 448 mod 512, ghép trường độ dài 64-bit, chia thành 16 đoạn 32-bit, mở rộng thành 80 từ bằng hàm XOR và phép quay trái (left rotate), thực thi các hàm logic (AND, OR, NOT) qua các vòng lặp, chuyển đổi sang mã hex và ghép chuỗi băm hoàn chỉnh (
44a9713350e53858f058463d4bf7f1e542d9ca4b). Giới thiệu giao thức thanh toán tức thời Ripple (RTGS) ra mắt năm 2012.
Chương 4: Phân tích, thiết kế ứng dụng ví Mobile Android
Chương 4 áp dụng quy trình công nghệ của Sotatek để phân tích và thiết kế hệ thống ví:
- Quy trình 11 bước phát triển ứng dụng di động tại Sotatek:
- Đặt mục tiêu
- Phân tích hệ thống
- Thiết kế CSDL
- Thiết kế giải thuật
- Phác thảo ý tưởng và thiết kế Wireframing
- Lập trình giao diện App với Android Studio
- Cơ cấu Ứng dụng / CSDL
- Lập trình Ứng dụng phía máy chủ
- Phát triển API
- Đảm bảo chất lượng sử dụng
- Đảm bảo chất lượng về đa nền tảng
- Mục tiêu chức năng của hệ thống:
- Phân hệ quản lý người dùng: Đăng ký, Đăng nhập, Đăng xuất, quản lý hồ sơ cá nhân.
- Phân hệ quản lý giao dịch: Mua/bán các loại tiền mã hóa (Bitcoin, Ethereum), nạp tiền từ tài khoản ngân hàng vào ví, rút tiền từ ví về tài khoản ngân hàng, tra cứu lịch sử giao dịch.
- Mô hình hóa hệ thống: Xây dựng Sơ đồ phân rã chức năng (BDF), Sơ đồ ngữ cảnh (Context Diagram) và các Sơ đồ luồng dữ liệu DFD mức 1 cho chức năng quản lý người dùng và quản lý giao dịch. Thiết kế cấu trúc cơ sở dữ liệu SQLite cục bộ để lưu trữ thông tin tài khoản, khóa và nhật ký giao dịch.
Thiết kế và triển khai hệ thống
Hệ thống ví Blockchain di động được thiết kế và xây dựng theo các đặc tả kỹ thuật sau:
- Môi trường và công cụ phát triển:
- Ngôn ngữ lập trình: Java.
- Môi trường phát triển tích hợp (IDE): Android Studio.
- Công cụ thiết kế UI/UX & Wireframe: Balsamiq, Zeplin.
- Phần mềm giả lập kiểm thử: Genymotion.
- Hệ quản trị cơ sở dữ liệu: SQLite (lưu trữ cục bộ trên thiết bị di động).
- Kiến trúc luồng chức năng phần mềm:
- Sơ đồ phân rã chức năng (BDF): Ứng dụng Ví Mobile phân chia thành 2 nhánh chính:
- Quản lý người dùng: Thực hiện các luồng nghiệp vụ đăng ký, xác thực đăng nhập, đăng xuất và thiết lập tài khoản.
- Quản lý giao dịch: Bao gồm các tiến trình liên kết tài khoản ngân hàng, chuyển tiền từ tài khoản ngân hàng vào ví, rút tiền từ ví về tài khoản ngân hàng, giao dịch mua bán tiền mã hóa (Bitcoin, Ethereum) và ghi nhận nhật ký giao dịch.
- Mô hình hóa dữ liệu và luồng xử lý: Thiết lập sơ đồ luồng dữ liệu mức ngữ cảnh và DFD mức 1 mô tả chi tiết dòng luân chuyển thông tin giữa người dùng, hệ thống ví di động, hệ quản trị cơ sở dữ liệu SQLite và hệ thống xử lý giao dịch.
- Cơ sở dữ liệu SQLite: Được thiết kế để quản trị dữ liệu người dùng, thông tin số dư, trạng thái khóa công khai/khóa riêng tư và lưu trữ lịch sử các giao dịch phục vụ hiển thị ngoại tuyến và đồng bộ trạng thái.
Kết quả và đóng góp
- Kết quả chính:
- Hệ thống hóa toàn diện các luận cứ lý thuyết về công nghệ Blockchain, mạng lưới tiền mã hóa Bitcoin (mô hình UTXO, cơ chế PoW, thuật toán điều chỉnh độ khó sau 2016 khối, cơ chế nén cây Merkle 80 byte/header, mô hình xác suất Poisson).
- Thu thập, phân tích và công bố số liệu hoạt động thực tế của Công ty Cổ phần Công nghệ Sotatek giai đoạn 2016–2018: doanh thu năm 2018 đạt trên 6,14 tỷ đồng, lợi nhuận sau thuế đạt hơn 240,9 triệu đồng, quy mô phát triển đạt 150 nhân sự và triển khai hơn 200 dự án công nghệ.
- Minh họa chi tiết thuật toán băm mật mã học qua 13 bước biến đổi cụ thể.
- Hoàn thành đầy đủ bộ hồ sơ phân tích hệ thống (Sơ đồ BDF, CD, DFD mức 1), thiết kế CSDL SQLite và xây dựng wireframe, giao diện ứng dụng ví Android bằng công cụ Balsamiq và Android Studio.
- Đóng góp của đề tài:
- Chuyển hóa quy trình 11 bước phát triển phần mềm chuẩn của doanh nghiệp công nghệ vào một đề tài tốt nghiệp đại học ngành Tin học kinh tế.
- Xây dựng tài liệu tham khảo kết hợp giữa cơ sở toán học/mật mã học của Blockchain và các bước phân tích, thiết kế ứng dụng di động thực tế.
Hạn chế và hướng nghiên cứu tiếp
- Hạn chế: Tác giả tự nhận định công nghệ Blockchain là một lĩnh vực rộng, có độ phức tạp kỹ thuật cao và biến đổi liên tục; do giới hạn thời gian thực tập (từ 13/01/2020 đến 30/04/2020), chuyên đề chưa thể đi sâu giải quyết toàn diện mọi vấn đề kỹ thuật chuyên sâu về tối ưu hóa mạng lưới và hạ tầng máy chủ lớn.
- Hướng nghiên cứu tiếp: Nghiên cứu sâu hơn về phát triển hệ thống API máy chủ backend, hoàn thiện cơ chế mã hóa bảo vệ khóa riêng tư trên thiết bị di động, và thử nghiệm tích hợp với các giao thức chuỗi khối liên mạng (Inter-ledger) như Ripple.
Giá trị tham khảo
- Đối tượng thụ hưởng: Sinh viên các chuyên ngành Tin học kinh tế, Hệ thống thông tin quản lý, Công nghệ thông tin; các kỹ sư phần mềm bước đầu tìm hiểu về cơ chế hoạt động của Bitcoin và lập trình ứng dụng di động Android.
- Nội dung giá trị:
- Phần phân tích chi tiết 13 bước tính toán của thuật toán băm (SHA-1) và các mô hình toán học xác suất về an ninh chuỗi khối (phân phối Poisson).
- Khung quy trình 11 bước xây dựng ứng dụng di động chuẩn hóa tại doanh nghiệp phần mềm.
- Bộ sơ đồ phân tích chức năng (BDF), sơ đồ luồng dữ liệu (DFD mức 1) và thiết kế CSDL SQLite cho bài toán ví điện tử.
Câu hỏi thường gặp
1. Mục tiêu và phạm vi nghiên cứu của đề tài được xác định như thế nào?
Đề tài do sinh viên Vũ Thị Nhàn thực hiện tại Công ty Cổ phần Công nghệ Sotatek từ ngày 13/01/2020 đến ngày 30/04/2020. Mục tiêu là hệ thống hóa kiến thức về Blockchain/Bitcoin, nắm vững quy trình phát triển ứng dụng di động và thực hiện phân tích, thiết kế ứng dụng ví Android sử dụng các công cụ Android Studio, Balsamiq, Genymotion.
2. Tình hình kinh doanh và quy mô của Công ty Cổ phần Công nghệ Sotatek trong giai đoạn 2016–2018 ra sao?
Sotatek thành lập ngày 15/08/2015, có quy mô 150 nhân viên và hơn 200 dự án quốc tế. Doanh thu thuần của công ty đạt 5.854.214.470 VND năm 2016, giảm xuống 5.277.564.500 VND năm 2017 và tăng lên 6.148.047.830 VND năm 2018. Lợi nhuận sau thuế tương ứng qua 3 năm lần lượt là 280.135.804 VND, 254.349.047 VND và 240.916.000 VND.
3. Cơ chế UTXO trong mạng Bitcoin hoạt động theo nguyên tắc nào?
UTXO (Unspent Transaction Output) là mô hình đầu ra giao dịch chưa chi tiêu trong kế toán ba nhánh. Mỗi giao dịch hợp lệ bắt buộc phải sử dụng các UTXO làm đầu vào và chỉ được sử dụng một lần để ngăn chặn chi tiêu kép (double-spending). Nếu tổng giá trị đầu vào lớn hơn tổng giá trị đầu ra, phần chênh lệch được chuyển thành phí giao dịch cho thợ đào tạo khối.
4. Kỹ thuật nào giúp mạng Bitcoin tối ưu hóa dung lượng lưu trữ cho các máy trạm nhẹ?
Bitcoin sử dụng cấu trúc cây Merkle để tỉa bỏ các nhánh giao dịch cũ đã xử lý, chỉ lưu trữ Merkle Root trong tiêu đề khối có kích thước cố định 80 byte (~4,2 MB/năm). Nhờ đó, cơ chế Xác minh thanh toán đơn giản (SPV) cho phép nút nhẹ chỉ cần lưu tiêu đề khối của chuỗi PoW dài nhất cùng nhánh Merkle liên quan để xác thực giao dịch mà không cần tải toàn bộ dữ liệu blockchain.
5. Quy trình xây dựng ứng dụng di động tại Sotatek gồm những bước nào?
Quy trình gồm 11 bước: Đặt mục tiêu; Phân tích hệ thống; Thiết kế CSDL; Thiết kế giải thuật; Phác thảo ý tưởng và thiết kế Wireframing; Lập trình giao diện App với Android Studio; Cơ cấu Ứng dụng/CSDL; Lập trình Ứng dụng phía máy chủ; Phát triển API; Đảm bảo chất lượng sử dụng; Đảm bảo chất lượng về đa nền tảng.
Kết luận
Chuyên đề thực tập tốt nghiệp của sinh viên Vũ Thị Nhàn đã hệ thống hóa cơ sở lý thuyết về công nghệ Blockchain, kiến trúc tiền mã hóa Bitcoin và các thuật toán mật mã liên quan. Dựa trên khảo sát thực tế và quy trình 11 bước phát triển phần mềm tại Công ty Cổ phần Công nghệ Sotatek, tác giả đã hoàn thành việc phân tích hệ thống, xây dựng các sơ đồ BDF, DFD, thiết kế CSDL SQLite và giao diện ứng dụng ví điện tử Android. Công trình là tài liệu tham khảo học thuật hữu ích cho sinh viên ngành Tin học kinh tế và công nghệ thông tin trong việc nghiên cứu ứng dụng công nghệ chuỗi khối vào phát triển phần mềm di động.