Chi tiết bài viết
Tóm tắt nội dung
Nền tảng blockchain là gì?
Nền tảng blockchain là dạng công nghệ chuỗi – khối, nền tảng này cho phép dữ liệu đi qua một cách an toàn dựa trên hệ thống mã hóa vô cùng phức tạp. Mỗi một khối thông tin chứa nội dung về thời gian khởi tạo, các khối được liên kết với nhau, kèm theo đó là một mã thời gian và dữ liệu giao dịch. Dữ liệu khi đã được mạng lưới chấp nhận thì sẽ không có cách nào thay đổi được. Blockchain được thiết kế để chống lại việc gian lận, thay đổi của dữ liệu. Vậy bockchain là gì?
Lịch sử phát triển của blockchain
Blockchain xuất hiện như thế nào? Stuart Haber và W. Scott Stornetta đã hình dung ra cấu trúc dữ liệu chuỗi – khối mà nhiều người vẫn biết hiện nay từ năm 1991. Với mục đích ban đầu của cả 2 là tạo ra một blockchain được bảo mật bằng mật mã, để không ai có thể giả mạo dấu thời gian của tài liệu. Vào năm 1992, họ đã nâng cấp hệ thống của mình để kết hợp các cây Merkle nhằm nâng cao hiệu quả do đó cho phép thu thập nhiều tài liệu hơn trên một khối duy nhất
Đến năm 2008, ý tưởng về blockchain được hồi sinh trở lại phục vụ cho sự ra đời của loại tiền điện tử đầu tiên – Bitcoin. Satoshi Nakamoto đã phát hành whitepaper đầu tiên về công nghệ này vào năm 2009. Trong whitepaper, ông đã cung cấp chi tiết về cách công nghệ được trang bị tốt để nâng cao niềm tin kỹ thuật số dựa trên khía cạnh phân quyền có nghĩa là không ai có thể kiểm soát bất cứ điều gì. Sau khi Satoshi Nakamoto rời khỏi bitcoin, các nhà phát triển cốt lõi khác, công nghệ sổ cái kỹ thuật số đã phát triển dẫn đến các ứng dụng mới tạo nên lịch sử blockchain.
Phân loại Blockchain
Công blockchain là sự kết hợp của 3 công nghệ dữ liệu hàng đầu:
– Mật mã học: để đảm bảo tính minh bạch, toàn vẹn và riêng tư thì công nghệ Blockchain đã sử dụng public key và hàm hash function.
– Mạng ngang hàng: Mỗi một nút trong mạng được xem như một client và cũng là server để lưu trữ bản sao ứng dụng.
– Lý thuyết trò chơi: Tất cả các nút tham gia vào hệ thống đều phải tuân thủ luật chơi đồng thuận (giao thức PoW, PoS,…) và được thúc đẩy bởi động lực kinh tế.
3 loại blockchain chính
- Hệ thống public: Là loại công khai, bất kì ai cũng có thể đọc và lưu trữ lại dữ liệu bên trong loại blockchain này. Chính vì vậy để đảm bảo độ xác thực, quá trình hoàn thành giao dịch trên loại blockchain này phải trải qua khá nhiều nút. Điều này đảm bảo sự an toàn cho các dữ liệu bên trong, các hacker muốn tấn công vào hệ thống public sẽ phải bỏ khá nhiều thời gian và công sức. Các ứng dụng của hệ thống blockchain public có thể kể đến như: Bitcoin, Ethereum…
- Hệ thống Private: với hệ thống blockchain này, người dùng chỉ được phép đọc dữ liệu không có quyền ghi vì điều này thuộc về bên tổ chức thứ ba tuyệt đối tin cậy. Chính vì vậy quá trình xác thực của Private blockchain khá là nhanh vì chỉ cần một lượng nhỏ thiết bị tham gia xác thực giao dịch. Tuy nhiên cũng chính lỗ hổng này khiến cho tỉ lệ các xác thực gian dối là khá cao. Ghi nhận từ phần mềm Ripple, hệ thống này sử dụng private blockchain và đã ghi nhận 20% các nút là gian dối và chỉ cần 80% còn lại hoạt động ổn định là được.
- Permissioned blockchain: cũng là một dạng Private blockchain nhưng bổ sung thêm 1 số tính năng khác, đây là sự kết hợp giữa Public và Private. Ví dụ: Các ngân hàng hay tổ chức tài chính liên doanh sẽ sử dụng Blockchain cho riêng mình.
Các phiên bản của blockchain
- Công nghệ blockchain 1.0: Dùng cho tiền tệ và thanh toán. Với chức năng chính là mã hóa tiền tệ kiều hối và tạo lập hệ thống thanh toán kỹ thuật số. Đây cũng là lĩnh vực quen thuộc với chúng ta nhất mà đôi khi khá nhiều người lầm tưởng Bitcoin và Blockchain là một.
- Công nghệ blockchain 2.0: Tài chính và thị trường: Xử lý các tài nguyên thông tin tài chính ngân hàng đưa vào các ứng dụng tài chính và thị trường. Các tài sản bao gồm cổ phiếu, chi phiếu, nợ, quyền sở hữu và bất kỳ điều gì có liên quan đến thỏa thuận hay hợp đồng
- Công nghệ blockchain 3.0: Ứng dụng trong dịch vụ thiết kế và giám sát các hoạt động: là các lĩnh vực vượt ra khỏi biên giới của ngành tài chính tiền tệ đi vào các lĩnh vực như giáo dục, chính phủ, y tế và nghệ thuật.
Có thể bạn quan tâm: SRS là gì? Sử dụng thành thạo Srs để giúp ích cho công việc kiểm thử
Blockchain hoạt động như thế nào?
Sau khi đã tìm hiểu khái niệm và các loại blockchain, chắc hẳn các bạn đang thắc mắc cách của blockchain là gì?
Mã hoá
Các dữ liệu được lưu trữ bên trong đều tồn tại dưới dạng mã hóa thông tin. Các thông tin được lưu trữ trong “sổ cái” là các mạng máy tính ngang hàng có kết nối với nhau. Vì thế mà sẽ có những điểm khác biệt dưới đây:
- Giả dụ như dữ liệu bên trong tài chính ngân hàng với trên các sàn tiền điện tử. Bên trong ngân hàng bạn chỉ có thể xem giao dịch và số dư cá nhân nhưng ở các sàn tiền điện tử có thể xem của tất cả mọi người
- Mạng lưới Bitcoin là mạng lưới phân tán không cần bên thứ ba đóng vai trò trung gian xử lý giao dịch.
- Hệ thống Blockchain được thiết kế theo cách không yêu cầu sự tin cậy và bảo đảm bởi độ tin cậy có được thông qua các hàm mã hóa toán học đặc biệt.
Thế nên vì dữ liệu được lưu trữ là dạng mã hóa, để thực hiện các giao dịch trên Blockchain, bạn cần một phần mềm sẽ cho phép bạn lưu trữ và trao đổi các đồng Bitcoin của bạn gọi là ví tiền điện tử. Các loại ví điện tử này sử dụng phương pháp bảo mật duy nhất là cặp khóa bảo mật duy nhất: khóa riêng tư (private key) và khóa công khai (public key).
Nếu một thông điệp được mã hóa bằng một khóa công khai cụ thể thì chỉ chủ sở hữu của khóa riêng tư là một cặp với khóa công khai này mới có thể giải mã và đọc nội dung thông điệp.
Quy tắc sổ cái
Đây là quy tắc hoạt động của mọi loại blockchain. Vậy quy tắc hoạt động cốt lõi này của blockchain là gì?
Các dữ liệu và chức năng bên trong các phần mềm blockchain đều lưu trữ 1 bản sao của riêng mình. Hệ thống Blockchain chỉ ghi lại mỗi giao dịch được yêu cầu chứ không hề theo dõi số dư tài khoản của bạn (dữ liệu đích).
Để lấy được các dữ liệu gốc bên trong hệ thống blockchain, các nút sẽ kiểm tra tất cả các giao dịch có liên quan đến ví tiền điện tử bạn sử dụng trước đó để gửi Bitcoin (BTC) thông qua việc tham chiếu các lịch sử giao dịch. Có một bản ghi sẽ lưu trữ số BTC chưa được dùng và được các nút mạng lưu giữ giúp đơn giản hóa và tăng tốc quá trình xác minh. Vì thế, các ví tiền điện tử tránh được tình trạng chi tiêu đúp giao dịch.
Đa phần mã nguồn bên trong blockchain là mã nguồn mở có nghĩa là bất kỳ ai có máy tính kết nối được internet đều có thể tham gia vào mạng lưới và thực hiện giao dịch. Nếu có bất kỳ lỗi phát sinh nào từ mã nguồn thì các tài khoản như Bitcoin, Ethereum… sẽ bị mất vĩnh viễn
Nguyên lý tạo khối
Các dữ liệu sau khi được gửi lên trên mạng lưới Blockchain sẽ được nhóm vào các khối và các giao dịch trong cùng 1 khối (block) được coi là đã xảy ra cùng thời điểm. Các dữ liệu này chưa được thực hiện trong 1 khối được coi là chưa được xác nhận.
Các dữ liệu được nhóm với nhau thành một khối và gửi nó vào mạng lưới như một hàm ý cho các khối tiếp theo được gắn vào sau đó. Bất kỳ nút nào cũng có thể tạo ra một khối mới. Vậy, câu hỏi đặt ra là: hệ thống sẽ đồng thuận với khối nào? khối nào sẽ là khối tiếp theo?
Khi thêm vào blockchain mỗi khối phải chứa một đoạn mã đóng vai trò như một đáp án cho một vấn đề toán học phức tạp được tạo ra bằng hàm mã hóa băm không thể đảo ngược.
Đoán số ngẫu nhiên là giải pháp vấn đề toán học, những số khi mà kết hợp với nội dung khối trước tạo ra một kết quả đã được hệ thống định nghĩa. Điều này nhiều khi có thể mất khoảng một năm cho một máy tính điển hình với một cấu hình cơ bản có thể đoán đúng các con số đáp án của vấn đề toán học này.
Cứ mỗi 10 phút một khối dữ liệu lại được tạo ra bởi vì trong mạng lưới luôn có một số lượng lớn các máy tính đều tập trung vào việc đoán ra dãy số này. Hệ thống Blockchain luôn yêu cầu mỗi nút phải xây dựng trên chuỗi khối dài nhất mà nó nhận được. Vì vậy, nếu có sự mơ hồ về việc block nào là khối cuối cùng thì ngay sau khi khối tiếp theo được giải quyết thì mỗi nút sẽ áp dụng vào chuỗi dài nhất.
Ưu điểm của công nghệ blockchain mang lại
Vì sao mà blockchain trở thành xu thế công nghệ trong tương lai, những ưu điểm của blockchain là gì?
- Tính minh bạch, không thể phá vỡ: Đây là đặc điểm nổi trội nhất của blockchain. Các dữ liệu và thông tin truyền tải à xử lý trong hệ thống blockchain, đều được thể hiện một cách minh bạch, rõ ràng nhất và không thể thay đổi, không thể giả mạo, không thể phá vỡ.
- Ẩn danh người sử dụng: Để bảo vệ sự riêng tư của người dùng blockchain cho phép khả năng sử dụng ẩn danh. Đặc tính này, sẽ giúp bạn có thể giao dịch một cách an toàn, bảo mật mà không cần phải lo ngại về người khác biết được danh tính của mình. Cùng với sự minh bạch, không thể phá vỡ hay thay đổi dữ liệu và đặc tính ẩn danh.
- Rút ngắn thời gian và chi phí: Trong các giao dịch ngân hàng truyền thống cần đến các yếu tố xác thực thứ 3. Khi giao dịch trên các hệ thống blockchain với hợp đồng thông minh (smart contract) bạn và đối tác của bạn sẽ là người trực tiếp thực hiện giao dịch và hệ thống trên blockchain sẽ là người xác nhận cho bạn, mà không cần tốn thêm chi phí, thậm chí là còn tiết kiệm được cả về thời gian giao dịch.
- Ứng dụng rộng rãi: không chỉ dừng lại ở lĩnh vực tài chính, ngân hàng, tiền điện tử, công nghệ blockchain được áp dụng rộng rãi nông nghiệp thực phẩm, trong quản lý giáo dục, bầu cử kỹ thuật số….
Các câu hỏi thường gặp về công nghệ blockchain
Dữ liệu chuỗi trong blockchain là gì?
Công nghệ Blockchain là một cơ chế cơ sở dữ liệu tiên tiến cho phép chia sẻ thông tin minh bạch trong một mạng lưới kinh doanh. Cơ sở dữ liệu chuỗi khối lưu trữ dữ liệu trong các khối được liên kết với nhau trong một chuỗi. Dữ liệu có sự nhất quán theo trình tự thời gian vì bạn không thể xóa hoặc sửa đổi chuỗi mà không có sự đồng thuận từ mạng lưới. Do đó, bạn có thể sử dụng công nghệ chuỗi khối để tạo một sổ cái không thể chỉnh sửa hay biến đổi để theo dõi các đơn đặt hàng, khoản thanh toán, tài khoản và những giao dịch khác. Hệ thống có những cơ chế tích hợp để ngăn chặn các mục nhập giao dịch trái phép và tạo ra sự nhất quán trong chế độ xem chung của các giao dịch này.
Nhược điểm của công nghệ blockchain là gì?
- Thông tin lưu trữ không thể sửa lại
- Khả năng tiêu tốn băng thông là rất lớn
- Thời gian xác minh giao dịch là khá lâu
- Khả năng bảo mật tài khoản không phải là 100%
- Phần mềm được thiết kế bằng hệ thống blockchain dễ bị ăn cắp ý tưởng
Trên đây là những chia sẻ của Daotaotester về blockchain. Mong rằng các bạn đã hiểu được blockchain là gì? Mong rằng các bạn đã có thêm kiến thức về loại công nghệ trong tương lai này. Nếu bạn muốn hiểu thêm về việc áp dụng blockchain vào trong công việc kiểm thử đừng bỏ lỡ Khóa học đào tạo tester dành cho người mới bắt đầu.