LỜI CAM ĐOAN .i
LỜI CẢM ƠN . ii
MỤC LỤC . iii
DANH MỤC CÁC KÝ HIỆU VÀ CÁC CHỮ VIẾT TẮT .v
DANH MỤC CÁC HÌNH VẼ VÀ ĐỒ THỊ.vi
LỜI MỞ Đ U .1
1. Cơ sở khoa học và thực tiễn của đề tài.1
2. Đối tượng và phạm vi nghiên cứu .2
3. Kết c u của luận văn.2
CHưƠNG 1: TỔNG QUAN VỀ LOCKCHAIN VÀ NỀN TẢNG H PERLEDGER
FABRIC.3
1.1. Tổng quan về ockchain.3
1.1.1. Mô tả.3
1.1.2. Ứng dụng của Blockchain .10
1.1.3. Tương lai của Blockchain.11
1.1.4. Nhược điểm .12
1.2. Nền tảng H per edger Fa ric.12
1.2.1. Tổng quan về Hyperledger .12
1.2.2. Giới thiệu Hyperledger Fabric.14
1.2.3. Thuật toán đồng thuận trong Hyperledger Fabric .16
1.2.4. Mô hình Hyperledger Fabric .18
1.2.5. Luồng giao dịch.18
1.2.6. Mạng Blockchain Hyperledger Fabric .22
1.2.7. Chứng chỉ CA Membership Service Provider .29
1.2.8. Orderer peer.29
1.2.9. Đồng nghiệp .30
1.2.10. Sổ cái .30
1.2.11. Chain code .31
CHưƠNG 2: CHUỖI KHỐI TRONG NGÀNH ĐIỆN .32
2.1. ockchain trong ngành n ng ượng tr n thế giới.32
74 trang |
Chia sẻ: honganh20 | Ngày: 21/02/2022 | Lượt xem: 493 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Luận án Ứng dụng công nghệ chuỗi khối hỗ trợ hoạt động kinh doanh của ngành điện, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
hực. Nó tách luồng thành 3 bước:
- Thực thi một giao dịch và kiểm tra tính chính xác của nó, xác nhận nó.
- Giao dịch đ t ệnh qua giao thức đồng thuận.
- Xác thực các giao dịch dựa trên chính xác nhận ứng dụng cụ thể trước khi
chốt với sổ cái.
Trong Fabric, một chính sách xác nhận ứng dụng cụ thể sẽ xác định nút ngang
hàng nào hoặc cần bao nhiêu nút ngang hàng để xác nhận cho việc thực hiện chính xác
một hợp đồng thông minh đã cho. Do đó, m i giao dịch chỉ cần được thực hiện xác
nhận bởi tập con của các nút ngang hàng. Điều này cho phép thực hiện song song tăng
hiệu su t tổng thể của hệ thống.
Qu ền ri ng tƣ và ảo ật
Hyperledger Fabric là nền tảng đang được phép bảo mật kiến trúc thông qua kiến
trúc của nó. Những người tham gia trên Fabric có thể thiết lập các kênh giữa tập con
của những người tham gia mà đã được c p quyền để thực hiện giao dịch. Vì vậy,
những người tham gia vào cùng một kênh mới có quyền truy cập vào hợp đồng thông
minh và dữ liệu giao dịch, đảm bảo việc riêng tư dữ liệu và bảo mật của cả hai bên.
1. . . Thuật toán đồng thuận trong Hyperledger Fabric
Trong Hyperledger Fabric, sự đồng thuận được tạo thành từ ba bước riêng biệt:
- Chứng thực giao dịch.
- Đặt hàng.
- Xác nhận và cam kết.
Ethereum luôn được đánh giá cao trong việc xây dựng các ứng dụng với sức
mạnh của smart contract của nó. Tuy nhiên, Ethereum có nhược điểm là do hoạt động
ở chế độ permissionless do đó tính minh bạch của nó là hoàn toàn, điều này ảnh hưởng
lớn đến tính riêng tư, hiệu năng và độ mở rộng của ứng dụng.
Hyperledger Fabric đã khắc phục nhược điểm này b ng b ng hoạt động ở chế độ
c p phép với cơ chế kiểm soát truy cập và đồng thuận một cách linh hoạt, điều này
khiến phạm vi ứng dụng của nó trở lên lớn hơn.
Tính được c p phép Permissioned của Hyperledger Fabric xu t phát từ sự cần
có riêng tư của các bên tham gia, nhưng đồng thời nó cũng cần khả năng nhận dạng và
kiểm soát từ bên quản lý.
17
Hyperledger Fabric là một cuốn sổ cái có tính ch t trao quyền và nó có khả năng
chia sẻ. Kiến trúc của Hyperledger dựa trên nhiều sổ cái hoạt động độc lập nhưng vẫn
cho phép giao dịch của một sổ cái có thể tìm kiếm và sử dụng các giao dịch trên sổ cái
khác.
Cơ chế đồng thuận của Fabric phủ khắp và bao gồm toàn bộ quá trình giao dịch.
Các nút được phân bổ nhiệm vụ và vai trò khác nhau trong quá trình đồng thuận. Khác
với Ethereum các nút trong quá trình đồng thuận là như nhau.
Có 3 vai trò của nút: Khách Client , Người đặt hàng Orderer hay Thành viên
Peer . Client giống như người dùng cuối, nó tạo và hủy giao dịch, giao tiếp với người
đặt hàng và thành viên. Thành viên duy trì sổ cái của blockchain, nhận tín hiệu từ
người đặt hàng, đưa giao dịch mới vào sổ cái. Người xác nhận là thành viên đặc biệt
có khả năng xác nhận giao dịch b ng cách kiểm tra điều kiện, trạng thái, tính hợp lệ
của giao dịch. Người đặt hàng cung c p kênh giao tiếp giữa khách và thành viên, nó
đảm bảo các tín hiệu giao dịch được phủ trên kênh giao tiếp. Các kênh liên kết phải
đảm bảo các thành viên tham gia sẽ được nhận chính xác cùng một thông điệp với theo
thứ tự logic.
Bắt đầu luồng giao dịch, khách hàng gửi giao dịch tới những người xác nhận để
khởi tạo quá trình bổ sung dữ liệu vào sổ cái. Giao dịch được đề xu t phải được sự
đồng ý của những người xác nhận. Khách hàng thu nhận sự phê duyệt từ những người
xác nhận này. Tiếp theo giao dịch được gửi đến những người đặt hàng, và chúng cần
được đồng thuận. Sau đó, giao dịch này được chuyển tới đến các thành viên nắm giữ
sổ cái để bắt đầu công đoạn chính - giao dịch.
Có thể có ngoại lệ xảy ra ở đây đó là trong quá trình gửi các thông điệp, có nhiều
người đặt hàng không tin cậy tham gia do thông điệp gửi theo thứ tự không nh t quán
làm cho các bản sao của sổ cái bị sai lệch . Trong trường hợp này Hyperledger Fabric
cung c p một thuật toán Byzantine faul-tolerant BFT cho phép chịu l i và có khả
năng xử lý những ngoại lệ này.
Hơn nữa, các kênh thông điệp trao đổi được phân vùng, có nghĩa là khách hàng
chỉ xem được các thông điệp và giao dịch liên quan đến các kênh mà họ được kết nối
trong khi không biết đến sự tồn tại của các kênh khác. B ng cách này, quyền truy cập
vào các giao dịch chỉ được giới hạn cho các bên liên quan với kết quả là sự đồng thuận
đạt được ở mức giao dịch không phải ở mức sổ cái .
18
1.2.4. Mô hình Hyperledger Fabric
Hình 1.7. Kiến trúc của Hyperledger[5].
Membership: Cung c p các dịch vụ quản lý danh tính, quyền riêng tư, bảo mật
và kiểm toán trên mạng.
ChainCode: Hyperledger lưu các smartcontract dưới dạng các chaincode ngôn
ngữ lập trình để phát triển smartcontract , chaincode được sử dụng trong Hyperledger
là golang. Có thể hiểu chaincode là một decentralize application, chạy trên các nút xác
nhận hợp lệ và sử dụng được đóng gói trong các docker.
Blockchain Services: Các dịch vụ Blockchain bao gồm ba thành phần chính:
giao thức peer-to-peer P2P dựa trên HTTP/2, sổ kế toán phân phối và trình quản lý
đồng thuận.
Transactions: Các giao dịch được thực hiện và lưu trữ trên blockchain.
1.2.5. uồng giao dịch
Các thành phần trong một luồng giao dịch gồm:
- E0, E1, E2: Người mô ph ng và chứng thực giao dịch Endorser peer .
- Client Application: Các ứng dụng sử dụng SDK hoặc dịch vụ Web service
Restfull để tương tác với mạng Hyperledger Fabric.
- A, B, D: Hợp đồng thông minh hay còn được gọi là Chaincode.
- P3, P4: Người xác minh và xác nhận kết quả giao dịch trước khi đẩy giao
dịch vào blockchain (Committing peer).
- P: Chính sách chứng thực.
19
- Sổ cái (Ledger).
- World-state: Một cơ sở dữ liệu chứa các giá trị hiện tại của một tập hợp các
trạng thái sổ cái. Các trạng thái sổ cái mặc định được biểu thị dưới dạng cặp
khóa-giá trị.
ƣớc 1: u cầu giao d ch
Hình 1.8. Yêu cầu giao dịch[6].
Ứng dụng Client sẽ gửi đi đề nghị giao dịch với hợp đồng thông minh A tới các
thành phần chứng thực giao dịch E0, E1, E2 .
ƣớc 2: Thực hiện u cầu
Hình 1.9. Thực hiện yêu cầu[6].
20
E0, E1, E2 sẽ thực hiện các đề nghị giao dịch b ng cách kiểm tra các chứng chỉ
để xác thực giao dịch. Với m i một lệnh được thực hiện thì sẽ ghi lại trạng thái đọc và
ghi của dữ liệu, gọi là tập ReadWrite RW . Công đoạn này sẽ thực hiện Chaincode để
trả về các phản hồi cho ứng dụng Client.
ƣớc 3: Phản hồi u cầu
Hình 1.10. Phản hồi yêu cầu[6].
Tập RW được ký bởi các Endorser peer sẽ được thực hiện b t đồng bộ trở lại với
ứng dụng.
ƣớc 4: Giao d ch đ t hàng
Hình 1.11. Giao dịch đặt hàng[6].
21
Ứng dụng Client tiếp tục gửi đi kết quả đã được phê duyệt ở bước trước như một
giao dịch tới dịch vụ đặt hàng Ordering Service .
ƣớc 5: Chu ển giao d ch
Hình 1.12. Chuyển giao dịch[6].
Dịch vụ đặt hàng sẽ tập hợp các giao dịch trong một khối kết quả và gửi cho các
đồng nghiệp trong mạng.
ƣớc 6: Xác nhận giao d ch
Hình 1.13. Xác nhận giao dịch[6].
22
Mọi Committing peer sẽ xác nhận lại các chính sách xác thực một lần nữa. Đồng
thời nó kiểm tra hiệu lực của tập RW. Việc xác nhận giao dịch sẽ được lưu vào World-
state, còn sổ cái sẽ lưu lại các giao dịch. Khi này, sổ cái được đồng bộ hóa.
ƣớc 7: Thông áo
Hình 1.14. Thông báo[6].
Committing peer sẽ thông báo lại cho ứng dụng r ng giao dịch có thành công hay
không. Ứng dụng sẽ được thông báo bởi các peer mà nó kết nối tới.
1.2.6. Mạng lockchain Hyperledger Fabric
Mạng Blockchain là một cơ sở hạ tầng kỹ thuật cung c p sổ cái và hợp đồng
thông minh cho các ứng dụng. Các hợp đồng thông minh được sử dụng để tạo ra các
giao dịch sau đó phân phối cho các nút ngang hàng trong mạng.
23
Hình 1.15. Mạng Blockchain Hyperledger Fabric.
Ở mô hình trên, Fabric CA là Fabric Certificate Authority cung c p tính xác thực
cho các người tham gia trong mạng Hyperledger. B t kỳ người tham gia nào muốn
tham gia mạng blockchain phải được đăng ký với CA trước. Quá trình này gọi là tuyển
sinh. Các đồng nghiệp Peer là các nốt mạng, lưu trữ bản copy của blockchain và thực
hiện quá trình đồng thuận. Dịch vụ đặt hàng Ordering service kiểm tra quyền của
client, xác thực các giao dịch đến từ client.
Các bước để tạo một mạng Blockchain Hyperledger Fabric hoàn chỉnh
1.2.6.1. Tạo cơ s mạng
Định nghĩa các thành phần tham gia trong mạng:
N: Mạng Blockchain.
R: Tổ chức thuộc mạng có quyền quản trị các dịch vụ đặt hàng.
C: Kênh.
P: Nút ngang hàng.
L: Sổ cái.
CC: C u hình kênh.
O: Dịch vụ đặt hàng.
24
CA: Nhà phát hành chứng chỉ số được sử dụng để phân phối danh tính cho
các quản trị viên và các nút mạng của tổ chức.
Hình 1.16. Mạng HF cơ bản.
O4 là một dịch vụ đặt hàng được c u hình theo c u hình mạng NC4, nó được R4
quản trị và lưu trữ ở R4. NC4 ban đầu chứa các chính sách mô tả khả năng quản trị của
mạng, và hiện tại nó đang c p quyền cho R4.
Nhà phát hành chứng chỉ số:
- Sử dụng để c p phát chứng chỉ cho quản trị viên và nút mạng.
- Nó xác định các thành phần thuộc một tổ chức và dùng để ký các giao dịch.
- Có nhiều hơn một CA trong mạng Blockchain, các tổ chức khác nhau thì
thường sử dụng CA khác nhau. Việc ánh xạ chứng chỉ cho các tổ chức được thực hiện
qua c u trúc MSP. C u hình mạng blockchain sử dụng một MSP để biết được các
chứng chỉ xác định ra tổ chức nào.
Đồng thời, chúng ta sẽ th y sau này các chứng chỉ do CA phát hành là trọng tâm
của quá trình tạo và xác nhận giao dịch. Cụ thể, chứng chỉ X.509 được sử dụng trong
các yêu cầu giao dịch của khách hàng và phản hồi từ giao dịch hợp đồng thông minh
để ký các giao dịch kỹ thuật số. Sau đó, các nút mạng lưu trữ các bản sao của sổ kế
toán xác minh r ng các chữ ký giao dịch có giá trị trước khi ch p nhận các giao dịch
trên sổ kế toán.
Vậy kiến trúc cơ bản của một mạng Blockchain được bắt đầu khi một dịch vụ đặt
hàng O được kích hoạt, gồm một mạng N, được truy cập bởi một nhóm người dùng
xác định bởi chứng chỉ CA. Nhóm người dùng này có các quyền đối với tài nguyên
trong mạng dựa theo các chính sách được chứa trong c u hình mạng NC[7].
25
1.2.6.2. Thêm quản trị viên trong mạng
Ban đầu c u hình mạng Blockchain chỉ cho phép người dùng R4 có quyền quản
trị trên mạng. Tiếp theo chúng ta sẽ c u hình cho người dùng R1 làm quản trị viên.
Mạng sẽ trông như sau:
Hình 1.17. Thêm quản trị viên trong mạng.
Bây giờ thì cả R1 và R4 đều có quyền quản trị mạng. Như vậy R1 và R4 có
quyền cập nhật c u hình mạng NC4 để thêm người dùng R2. Và mặc dù R1, R4 có đầy
đủ quyền quản trị trên O nhưng R2 cũng có thể hạn chế việc thêm người dùng mới
quản trị trên O[7].
1.2.6.3. Định nghĩa Consortium
Hình 1.18. Định nghĩa tập đoàn.
Quản trị mạng sẽ xác định một tập đoàn gồm một số thành viên trong ví dụ là 2
thành viên . Định nghĩa mối liên kết giữa tập đoàn và 2 thành viên này được lưu trữ
trong c u hình mạng NC4. Như vậy mục đích chính của tập đoàn đó là xác định tập
hợp các tổ chức trong mạng mà có nhu cầu chia sẻ giao dịch với nhau[7].
26
1.2.6.4. Tạo kênh cho Consortium
Kênh là cơ chế truyền thông chính mà các thành viên trong một tập đoàn có thể
giao tiếp với nhau.
Hình 1.19. Tạo kênh.
Cách thức tạo k nh: Sử dụng liên kết X1. Kênh được điều chỉnh b ng c u hình
kênh CC1. CC1 được quản lý bởi 2 tổ chức R1 và R2.
Hoạt động: Kênh cung c p một cơ chế kết nối bí mật giữa các thành viên của
Consortium. Đồng thời cũng cũng cung c p quyền bí mật từ các kênh khác và từ
mạng. Do vậy, Hyperledger Fabric cho phép các tổ chức vừa chia sẻ cơ sở hạ tầng vừa
giữa được tính bí mật. Các liên minh khác nhau trong mạng sẽ có nhu cầu về thông tin
cũng như quy trình khác nhau, các kênh cung c p một cơ chế hiệu quả vừa đảm bảo nó
chia sẻ được cơ sở hạ tầng của các liên minh đồng thời duy trì quyền riêng tư về mặt
dữ liệu và kết nối[7].
1.2.6.5. Nút mạng và ổ cái
Tiếp theo chúng ta sẽ sử dụng kênh vừa được tạo ra để kết nối mạng blockchain
và các thành phần trong tổ chức lại với nhau. Trong mạng N ta sẽ bổ sung 2 thành
phần mới là một nút ngang hàng P1 và sổ cái L1.
27
Hình 1.20. Nút mạng và sổ cái.
Hoạt động:
Các nút ngang hàng là các thành phần mạng, là nơi mà các bản sao của sổ cái
được lưu trữ. Trong c u hình của P1 có một chứng chỉ số X.509 do CA1 phát hành,
liên kết P1 và R1. Khi P1 bắt đầu nó có thể tham gia kênh C1 thông qua dịch vụ đặt
hàng O4. Khi O4 nhận được yêu cầu từ P1, nó sẽ sử dụng c u hình kênh CC1 để xác
định quyền của P1 trên kênh này là gì, xem P1 có quyền đọc ghi vào sổ cái L1 hay
không[7].
1.2.6.6. Cài đặt và kh i tạo hợp đồng thông minh
Tiếp theo chúng ta sẽ kết nối các ứng dụng máy khách để sử dụng các dịch vụ
được cung c p bởi sổ cái và các nút ngang hàng.
Hình 1.21. Hợp đồng thông minh.
28
Cách thức cài đ t và khởi tạo hợp đồng thông inh
Một hợp đồng thông minh S5 sẽ được cài đặt lên nút P1. Ứng dụng A1 sẽ sử
dụng hợp đồng thông minh S5 để truy cập sổ cái thông qua nút P1. A1, P1 và O4 đều
tham gia vào kênh C1, do đó nó có thể sử dụng các kênh liên lạc mà kênh này cung
c p để liên lạc với nhau.
Kênh C1 hiện tại đóng vai trò như là trung tâm liên lạc của các thành phần trong tổ
chức mạng. Các ứng dụng có thể thông qua kênh để kết nối với tài nguyên mạng. Trong
sơ đồ mạng ở trên thì ứng dụng A1 được liên kết với tổ chức R1 thông qua kênh C1.
Tuy nhiên để A1 có thể truy cập được sổ cái, cũng giống như các truy cập khác
thì mọi truy cập phải được quản lý bởi hợp đồng thông minh S5 . S5 xác định các
cách mà sổ cái có thể được truy v n và cập nhật. Mọi truy v n và cập nhật phải tuân
thủ các luật mà S5 đặt ra. Trong trường hợp hiện tại thì ứng dụng A1 phải đi qua S5 để
có được thông tin của sổ cái L1[7].
Cài đ t hợp đồng thông inh
Sau khi một hợp đồng thông minh được triển khai, quản trị viên của tổ chức có
trách nhiệm cài đặt nó vào nút ngang hàng trong mạng. Khi đó nút P1 sẽ có đầy đủ
thông tin của sổ cái L1.
Khởi tạo hợp đồng thông inh
Bởi vì các truy cập và kết nối của các thành phần trong mạng đều thông qua kênh
C1 nên quản trị của tổ chức R1 phải cài đặt hợp đồng thông minh lên C1 sử dụng nút
P1. Khi đó, mọi thành phần trên kênh C1 đều có thể gọi tới hợp đồng thông minh
thông qua bộ giao tiếp của nó.
Ch nh sách xác thực
Vai trò của CC1 và R1, R2 trong sơ đồ mạng trên chính là việc xác nhận các giao
dịch để sổ cái L1 ch p nhận chúng. Sau đó, các tổ chức khác có thể ch p nhận giao
dịch này và lưu vào bản sao sổ cái của họ.
Gọi hợp đồng thông inh
Một khi hợp đồng thông minh được cài đặt trên một nút ngang hàng và được
khởi tạo trên một kênh, nó có thể được gọi bởi một ứng dụng. Ứng dụng đầu tiên sẽ
gửi yêu cầu giao dịch cho các nút thuộc sở hữu của tổ chức. Tổ chức sẽ gửi tới hợp
đồng thông minh yêu cầu này và chờ một phản hồi xác nhận giao dịch, nút ngang hàng
trong mạng sẽ trả phản hồi này cho ứng dụng.
29
Đến giai đoạn này trong phát triển mạng, tổ chức R1 hoàn toàn tham gia vào
mạng. Ứng dụng của nó - bắt đầu với A1 - có thể truy cập sổ cái L1 thông qua hợp
đồng thông minh S5, để tạo ra các giao dịch sẽ được xác nhận bởi R1, và do đó được
ch p nhận vào sổ kế toán vì chúng tuân thủ chính sách chứng thực[7].
1.2.7. Chứng ch CA Membership Service rovider
Cung c p các dịch vụ quản lý danh tính, quyền riêng tư, bảo mật và kiểm soát
trên mạng. MSP cung c p:
- Nhận dạng.
- Xác thực người dùng.
- Thu hồi chứng chỉ người dùng.
- Tạo và xác nhận chữ ký.
MSP chịu trách nhiệm tạo ra danh tính kỹ thuật số cho các đồng nghiệp Peer và
người dùng của tổ chức. Các danh tính của các đồng nghiệp phải được c u hình trong
một mạng hiện có để một thực thể mới tham gia vào kênh.
Trong Hyperledger Fabric, chỉ những người dùng được ch p thuận mới được
phép trở thành một phần của mạng Blockchain. Làm thế nào để c p quyền truy cập
cho b t kỳ thành viên cụ thể nào trong blockchain là r t quan trọng.
Trong mạng Hyperledger, có nhiều khả năng có nhiều tổ chức/nhóm người/
doanh nghiệp tham gia. Vì vậy, chúng ta cần có một cơ chế cho m i tổ chức để tạo
người dùng cho nó b ng mật mã và xác thực các giao dịch của người dùng. MSP quản
lý ID người dùng và xác thực các khách hàng muốn tham gia mạng. Điều này bao gồm
cung c p thông tin đăng nhập cho các khách hàng này để đề xu t giao dịch.
Hyperledger Fabric h trợ nhiều kiến trúc thông tin xác thực, cho phép sử dụng
nhiều loại giao diện chứng chỉ. Kết quả là, một mạng Hyperledger Fabric có thể được
kiểm soát bởi nhiều MSP, trong đó m i tổ chức mang đến sự tùy biến khác nhau[8].
1.2.8. Orderer peer
Ordering Service ch p nhận các giao dịch đã được chứng thực, sắp xếp thành 1
block và phân bổ cho các committing peers.
Orderer peer được coi là kênh liên lạc trung tâm cho mạng Hyperledger Fabric.
Orderer peer chịu trách nhiệm cho trạng thái nh t quán của sổ cái, bởi nó cung c p
block, block này sẽ được thêm vào t t cả các sổ cái trong mạng.
30
1.2.9. Đồng nghiệp
Peer nhận các cập nhật trạng thái sổ cái theo thứ tự dưới dạng các block từ
Orderer. Peers duy trì trạng thái của mạng và một bản sao của sổ cái. Có hai loại Peer
khác nhau: Chứng thực (Endorsers) và Ca kết (Co itters).
- Endorsers: Mô ph ng và chứng thực giao dịch.
- Committers: Xác minh xác nhận và xác nhận kết quả giao dịch, trước khi thực
hiện giao dịch với blockchain.
Tuy nhiên, có một sự chồng chéo giữa các đồng nghiệp chứng thực và cam kết,
trong đó các đồng nghiệp chứng thực là một loại cam kết đặc biệt. T t cả các đồng
nghiệp cam kết các khối vào sổ cái phân tán.
1.2.10. Sổ cái
Ledger được xây dựng bởi dịch vụ đặt hàng dưới dạng hashchain dựa trên sự sắp
xếp của các block. Sổ cái được lưu trữ bên trong Peer. M i Peer có thể có nhiều sổ cái
và việc truy cập vào sổ cái chỉ thông qua Chaincode. Ledger bao gồm hai phần riêng
biệt, mặc dù có liên quan - một world-state và blockchain Nhật ký giao dịch .
Hình 1.22. C u trúc sổ cái[7].
World-state: Một cơ sở dữ liệu chứa các giá trị hiện tại của một tập hợp các
trạng thái sổ cái. Các trạng thái sổ cái mặc định được biểu thị dưới dạng cặp khóa-giá
trị. Có thể hiểu đơn giản World-state như cơ sở dữ liệu lưu trữ giá trị của tài nguyên
hoặc đối tượng sau khi giao dịch xảy ra.
ockchain (Nhật ký giao d ch): Nó ghi lại t t cả các giao dịch từng xảy ra
trong hệ thống. Các giao dịch được thu thập bên trong các khối được gắn vào
31
blockchain, cho phép hiểu lịch sử của các thay đổi đã dẫn đến giá trị được lưu trong
World-state. C u trúc dữ liệu trong blockchain khác với World-state vì một khi được
viết, nó không thể được sửa đổi. Đó là một chu i các khối b t biến, m i khối chứa một
tập hợp các giao dịch. Còn World-state chỉ lưu giá trị hiện thời.
1.2.11. Chain code
Hyperledger lưu các smartcontract dưới dạng các chaincode Ngôn ngữ lập trình
để phát triển smartcontract , chaincode được sử dụng trong Hyperledger là golang. Có
thể hiểu chaincode là một decentralize application, chạy trên các nút xác nhận hợp lệ
và sử dụng được đóng gói trong các docker.
Chaincode là một chương trình Hợp đồng thông minh chạy trên các Peer, tạo ra
các giao dịch và cập nhật trạng thái sổ cái. Rộng hơn, nó cho phép người dùng tạo các
giao dịch trong sổ cái chung của mạng Hyperledger Fabric và cập nhật dữ liệu trong
World-state.
Chaincode là mã lập trình, được viết b ng Go và được khởi tạo trên một kênh.
Các nhà phát triển sử dụng chaincode để phát triển nghiệp vụ, định nghĩa tài nguyên
trong mạng và quản lý tập thể các ứng dụng phi tập trung. Chaincode quản lý trạng
thái sổ cái thông qua các giao dịch được gọi bởi các ứng dụng. Các tài sản được tạo và
cập nhật bởi một Chaincode cụ thể và không thể được truy cập bởi một Chaincode
khác [9].
32
CHƢƠNG 2: CHUỖI KHỐI TRONG NGÀNH ĐIỆN
2.1. ockchain trong ngành năng ƣợng tr n thế giới
Khai thác năng lượng sạch, năng lượng tái tạo đang là xu hướng chung trên thế
giới. Đã có r t nhiều thành phố và quốc gia cam kết chuyển sang sử dụng 100 năng
lượng tái tạo. Công nghệ Blockchain đã có thể ứng dụng vào ngành công nghiệp năng
lượng tái tạo để giảm ô nhiễm môi trường và tối ưu hóa chi phí.
Các chuyên gia năng lượng nhận định r ng năng lượng tái tạo đã bắt đầu chạm đến
mọi ngóc ngách của cuộc sống, nó biểu hiện rõ nh t là ở các t m năng lượng mặt trời
được lắp trên mái nhà, trên các cánh đồng và các loại xe điện, tàu điện trên đường phố.
Ngành công nghiệp năng lượng tái tạo hiện nay đang dần chiếm một vị trí nổi bật trong
chiến lược an ninh năng lượng của các quốc gia trên thế giới trong đó có cả Việt Nam.
2. . . Năng lượng và nhiều vấn đề cần giải quyết
Thời đại cách mạng công nghiệp 4.0, nếu chỉ dùng những phương thức cơ bản
thông thường, kết quả thu được sẽ không cao. Các nhà máy nhiệt điện, thủy điện hiện
nay chiếm tới khoảng 50 tổng số các dự án có nguy cơ gây ô nhiễm môi trường.
Nếu để tình trạng ô nhiễm tràn lan, hệ sinh thái khí quyển, sông ngòi, lưu lượng
dòng nước cũng sẽ bị tác động và ảnh hưởng trực tiếp đến cuộc sống của toàn xã hội.
Ở một khía cạnh khác, đối với giới doanh nghiệp, nguồn điện năng luôn được cung c p
theo mô hình quản lý tập quyền, khiến cho các doanh nghiệp gần như bị phụ thuộc vào
nguồn cung. Chính vì thế, khi đã độc quyền, phía cung ứng có thể tăng hoặc giảm giá
điện tùy ý, doanh nghiệp hoặc người dùng không thể phản kháng.
Ngoài ra, một khi gặp sự cố quá tải hoặc vì lý do b t khả kháng không thể cung ứng
điện, các hoạt động các hộ kinh doanh, các doanh nghiệp cũng bị tê liệt theo, thiệt hại r t
lớn về tài chính, đặc biệt với các đơn vị sản xu t. Đây cũng là bài toán khiến các cơ quan
nhà nước đang phải r t chú tâm để tìm biện pháp giải quyết bài toán năng lượng.
2. . . Công nghệ lockchain ứng dụng trong ngành năng lượng
Dưới đây là 5 ví dụ về công nghệ Blockchain đã ứng dụng như thế nào trong
ngành năng lượng tái tạo trên thế giới.
2.1.2.1. Dự án phát triển thị trường năng lượng trên toàn cầu Eloncity
Trái với mô hình cung c p điện năng theo hướng tập quyền mà nhiều quốc gia
đang áp dụng hiện nay, với ý tưởng sản xu t điện năng thông qua việc xây dựng mạng
33
lưới các người dùng tự tham gia với nhau, công ty Eloncity đã bắt đầu khởi xướng
thành lập mô hình tái tạo và cung c p năng lượng theo hướng phi tập trung, hiện thực
hóa việc cung c p năng lượng sạch cho người dân trên toàn cầu b ng giải pháp tối ưu
nh t dựa trên Blockchain Cybermiles.
2.1.2.2. Ki m ti n t năng lượng th a Power edger
Công ty khởi nghiệp tại Perth đang hợp tác với BCPG, công ty năng lượng tái tạo
của Thái Lan, sẽ thiết kế và lắp đặt các t m pin mặt trời, đồng hồ đo và kết nối trong
cộng đồng. Blockchain của Power Ledger sẽ hoạt động như lớp giao dịch trong một
nền tảng để h trợ 18 điểm đồng hồ trong khi cho phép giao dịch P2P giữa những
người tham gia cá nhân, theo dõi năng lượng và lập hóa đơn. Nền tảng Power Ledger
giúp người tiêu dùng ngay lập tức sản xu t và người tiêu dùng nhận ra giá trị đầu tư
của họ b ng cách cho phép họ kiếm tiền từ năng lượng thừa của họ giống như Uber
và AirBnb cho phép mọi người kiếm tiền từ xe hơi và phòng phụ.
2.1.2.3. EtainPower – Giải pháp hệ sinh thái năng lượng I
EtainPower token: EPR là một nền tảng giao dịch năng lượng thông minh được
xây dựng trên nền tảng điện toán AI phi tập trung. DeepBrain Chain token: DBC sử
dụng công nghệ blockchain và hợp đồng thông minh để mã hóa năng lượng, do đó
giúp thay đổi cách thức các dự án năng lượng bền vững huy động vốn, mô hình giao
dịch và lưu hành của dự án. DeepBrain Chain là nền tảng điện toán AI đầu tiên và duy
nh t trên thế giới được điều khiển bởi blockchain. Dự án này chủ yếu giải quyết hai
nhược điểm của ngành công nghiệp AI: chi phí điện năng tính toán và bảo mật dữ liệu.
2.1.2.4. Dự án unContract
SunContract h trợ một cộng đồng năng lượng tự cung tự c p trên toàn cầu dựa
trên năng lượng tái tạo và kinh doanh năng lượng ngang hàng dựa trên các Blockchain
và hợp đồng thông minh.
Nền tảng giao dịch dựa trên blockchain của SunContract tập hợp các nhà sản
xu t điện và người tiêu dùng độc lập. Hai bên kết nối với nền tảng thị trường năng
lượng phân tán thông qua ứng dụng trên điện thoại di động SunContract.
Về cơ bản, chúng ta đã có một hệ thống như thế này hôm nay: các công ty tiện
ích hoạt động như một người trung gian giữa các nhà sản xu t năng lượng và người
tiêu dùng. Với SunContract, blockchain chiếm vai trò trung gian. Điều này làm giảm
chi phí và kết nối người tiêu dùng trực tiếp với nhà sản xu t.
34
SunContract chưa xây dựng nền tảng của nó. Công ty có kế hoạch tung ra nền
tảng này trong quý 1 năm 2018. Điều đó có nghĩa là mọi thứ chúng ta biết về nền tảng
này đến từ tài liệu trắng. Dưới đây, bạn sẽ tìm th y một số lợi ích đề xu t quan trọng
của SunContract, bao gồm các v n đề mà nó tìm cách giải quyết.
SunContract giải quyết những v n đề gì?
- Cho phép đóng góp cá nhân để cải thiện tình hình năng lượng toàn cầu.
- H trợ t
Các file đính kèm theo tài liệu này:
- luan_an_ung_dung_cong_nghe_chuoi_khoi_ho_tro_hoat_dong_kinh.pdf