Hợp đồng thông minh là gì? Hướng dẫn cho người mới bắt đầu về hợp đồng thông minh



Blog này sẽ cung cấp cho bạn một bức tranh rõ ràng về hợp đồng thông minh, các nền tảng khác nhau để viết hợp đồng thông minh và cũng sẽ thảo luận về trường hợp sử dụng thực tế của ứng dụng hợp đồng thông minh Ethereum.

Cụm từ và khái niệm 'Hợp đồng thông minh' đề nghị bởi Nick Szabo với tầm nhìn mở rộng chức năng của các phương thức giao dịch điện tử, chẳng hạn như POS (điểm bán hàng), sang lĩnh vực kỹ thuật số. Hợp đồng thông minh giúp bạn trao đổi tài sản, cổ phiếu hoặc bất kỳ thứ gì có giá trị một cách minh bạch, không có xung đột trong khi tránh các dịch vụ của người trung gian.
Mã Ethereum-Hợp đồng Thông minh-edureka

def __init __ (self) python

Sau đây là các chủ đề mà chúng tôi sẽ đề cập trong blog Hợp đồng thông minh này:





    1. Hợp đồng thông minh là gì?
    2. Hợp đồng thông minh của Nick Szabo
    3. Tại sao chúng ta cần hợp đồng thông minh?
    4. Hợp đồng thông minh: Độ phức tạp theo các trường hợp sử dụng
    5. Trường hợp sử dụng hợp đồng thông minh: Ngành chăm sóc sức khỏe
    6. Ưu điểm của Hợp đồng Thông minh
    7. Nền tảng Blockchain để viết hợp đồng thông minh
    8. Công cụ để Viết & Triển khai Hợp đồng Thông minh
    9. Ngôn ngữ lập trình để viết Ethereum
    10. Hợp đồng thông minh chuyển tài sản

    Hợp đồng thông minh là gì?

    Hợp đồng thông minh là một chương trình máy tính tự vận hành, tự động thực thi khi các điều kiện cụ thể được đáp ứng.

    Hợp đồng thông minh = Hợp đồng không tin cậy



    Với hợp đồng thông minh, bạn có thể chia sẻ bất cứ thứ gì có giá trị giữa những người lạ một cách minh bạch không có xung đột.

    Bạn cũng có thể coi các hợp đồng thông minh như một Blockchaindựa trên máy bán hàng tự động. Giống như máy bán hàng tự động được định cấu hình để lấy đô la để phân phối lựa chọn mặt hàng của bạn, hợp đồng thông minh sử dụng ête làm nhiên liệu để thực thi mã dựa trên các quy tắc được định cấu hình trước.

Hợp đồng thông minh là gì | Triển khai hợp đồng thông minh Ethereum đầu tiên của bạn | Edureka

  1. Hợp đồng thông minh của Nick Szabo

    Trong bài báo của mình, Szabo đề xuất thực hiện một hợp đồng cho các tài sản tổng hợp, chẳng hạn như các công cụ phái sinh và trái phiếu. “Những chứng khoán mới này được hình thành bằng cách kết hợp chứng khoán (chẳng hạn như trái phiếu) và phái sinh (quyền chọn và hợp đồng tương lai) theo nhiều cách khác nhau. Các cấu trúc kỳ hạn rất phức tạp cho các khoản thanh toán hiện có thể được xây dựng thành các hợp đồng tiêu chuẩn hóa và được giao dịch với chi phí giao dịch thấp do được máy tính hóaphân tích các cấu trúc thuật ngữ phức tạp này, ”ông viết.



  1. Tại sao chúng ta cần hợp đồng thông minh?

    Chúng tôi có thể tự động hóa nhiều giải pháp bằng cách viết hợp đồng trên Blockchain để làm cho mọi thứ trở nên đơn giản và hiệu quả. hãy so sánh và đánh giá xem hợp đồng thông minh tốt hơn hợp đồng truyền thống như thế nào.

    Hợp đồng thông minh: Độ phức tạp theo các trường hợp sử dụng

    Sự phức tạp của các hợp đồng phụ thuộc vào các trường hợp sử dụng mà bạn mơ ước để viết mã trên blockchain. Hình ảnh dưới đây sẽ cho bạn rõ hơn về sự phức tạp của các hợp đồng thông minh.

    Với các hợp đồng thông minh được ngữ cảnh hóa không chỉ các công ty sẽ được tự động hóa mà còn có thể hình thành một chính phủ tự trị phi tập trung.


    Hãy hiểu cách hợp đồng thông minh hoạt động với sự trợ giúp của trường hợp sử dụng.

    Trường hợp sử dụng hợp đồng thông minh: Ngành chăm sóc sức khỏe

    Quản lý dữ liệu bệnh nhân: Khi nói đến quản lý dữ liệu bệnh nhân, có hai vấn đề chính trong ngành chăm sóc sức khỏe:

    • Đầu tiên , mỗi bệnh nhân là duy nhất, do đó, việc truy cập vào hồ sơ y tế hoàn chỉnh là điều cần thiết để thích ứng với việc điều trị và cung cấp dịch vụ chăm sóc cá nhân
    • Thứ hai , chia sẻ thông tin giữa cộng đồng y tế là một thách thức lớn

    Giờ đây, các vấn đề nêu trên có thể được giải quyết bằng chức năng hợp đồng thông minh trên blockchain.

    Ưu điểm của Hợp đồng Thông minh

    Đây là những gì Hợp đồng thông minh cung cấp cho bạn:

    Nền tảng Blockchain để viết hợp đồng thông minh

    Trong khi Ethereum là nền tảng phổ biến nhất để viết hợp đồng, nó không phải là nền tảng duy nhất. Sau đây là một số nền tảng khác được sử dụng để viết hợp đồng thông minh:

    Bitcoin: Bitcoin sử dụng Script có khả năng hạn chế khi xử lý tài liệu. Tập lệnh được thiết kế đặc biệt để xử lý các giao dịch Bitcoin.

    Vải Hyperledger : Trong Fabric, Chaincode là mã lập trình được triển khai trên mạng, nơi nó được thực thi và xác nhận bởi các trình xác nhận chuỗi cùng nhau trong quá trình đồng thuận.

    NXT: Đó là một nền tảng blockchain công khai có chứa một số mẫu hạn chế cho các hợp đồng thông minh. Bạn phải sử dụng những gì được cho, bạn không thể viết mã của riêng mình.

    Chuỗi bên: Chuỗi bên nâng cao hiệu suất Blockchains và bảo vệ quyền riêng tư. Họ cũng thêm các khả nănggiốnghợp đồng thông minh, tay cầm an toàn, đăng ký tài sản trong thế giới thực.

    Công cụ để Viết & Triển khai Hợp đồng Thông minh

    1. Trình duyệt Mist - Nó là một công cụ để duyệt và sử dụng dApps. Nó là một trình duyệt riêng biệt có thể được sử dụng để duyệt các dApp và tương tác với chúng.
    2. Khung Truffle - Truffle là một khung phát triển phổ biến cho Ethereum. Nó có tích hợp biên dịch hợp đồng thông minh, liên kết, triển khai và quản lý nhị phân.
    3. Metamask - MetaMask là một cầu nối cho phép một người truy cập trang web được phân phối của ngày mai trong trình duyệt của họ ngay hôm nay. Nó cho phép người dùng chạy các dApp Ethereum ngay trong trình duyệt của họ mà không cần chạy một nút Ethereum đầy đủ.
    4. Phối lại - Remix là một IDE dựa trên trình duyệt web cho phép người dùng viết các hợp đồng thông minh Solidity, sau đó triển khai và chạy hợp đồng thông minh.

    Ngôn ngữ lập trình để viết hợp đồng thông minh Ethereum

    Sự vững chắc & Serpent là hai ngôn ngữ chính để viết Hợp đồng thông minh Ethereum.

    : Nó là một ngôn ngữ cấp cao theo định hướng hợp đồng với cú pháp tương tự như JavaScript và nó được thiết kế để nhắm mục tiêu Máy ảo Ethereum (EVM).

    Rắn: Serpent là một ngôn ngữ cấp cao được thiết kế để viết các hợp đồng Ethereum. Nó rất giống với Python, nhưng kể từ tháng 9 năm 2017, Solidity là ngôn ngữ phát triển ưa thích của các nhà phát triển Ethereum.

    Mặc dù Solidity hiện là ngôn ngữ phổ biến nhất cho hợp đồng thông minh, nhưng có một số ngôn ngữ hợp đồng thông minh sắp ra mắt có thể trở nên quan trọng trong tương lai.

    Ngôn ngữ lập trình sắp ra mắt

    1. Viper: Viper có một lược đồ thụt lề giống Python. Nó tập trung vào bảo mật và ngôn ngữ và sự đơn giản của trình biên dịch.
    2. Lisk: Lisk sử dụng javascript làm ngôn ngữ hợp đồng thông minh giúp nhà phát triển viết mã ứng dụng dễ dàng hơn.
    3. Chuỗi: Chain cung cấp cơ sở hạ tầng blockchain cấp doanh nghiệp với SDK bằng các ngôn ngữ phổ biến như Ruby, Java và NodeJS.

    Bây giờ, vì Solidity là ngôn ngữ lập trình được sử dụng rộng rãi nhất để viết Hợp đồng thông minh Ethereum, hãy để tôi hướng dẫn bạn một hợp đồng được viết bằng Solidity.

    Hợp đồng thông minh chuyển tài sản

    Vấn đề: Hiện tại, chúng tôi sử dụng cơ quan trung ương để chuyển quyền sở hữu tài sản. Điều này làm cho nó mất thời gian và thu hút thêm nhiều chi phí cùng với gánh nặng quản lý tài liệu bổ sung. Ngoài ra, vì hệ thống tập trung nên luôn có khả năng xảy ra gian lận.

    Giải pháp: Kế hoạch là sử dụng công nghệ để hiển thị chi tiết các giao dịch bất động sản cho tất cả các bên - ngân hàng, nhà môi giới, quan chức chính phủ, người mua và người bán

    Được rồi, hãy để tôi viết Hợp đồng thông minh cho bạn:

    pragma solidity ^ 0.4.11 // Chúng tôi đang tạo trường hợp sử dụng này để bắt chước việc chuyển tài sản trong thế giới thực // Điều kiện tiên quyết của trường hợp sử dụng này là: // Đã có danh tính kỹ thuật số // Chính phủ đồng ý đưa hồ sơ đất đai trên blockchain công khai // Mỗi Cơ quan phát triển (DA) trở thành chủ sở hữu defacto của tài sản tồn tại theo khu vực bầu cử / cơ quan lập pháp của họ // Khi tất cả các điều kiện trên được đáp ứng, DA (chủ sở hữu) có thể dễ dàng đính kèm tài sản tương ứng cho chủ sở hữu hợp pháp của họ sau khi xác minh kỹ lưỡng. // chúng ta sẽ xây dựng hàm xung quanh giả thiết đặt này. // chúng tôi giả định rằng mỗi DA sẽ triển khai hợp đồng thông minh của riêng họ theo quy tắc và quy định của họ. Toàn bộ hợp đồng thông minh này được viết bằng cách coi DA là chủ sở hữu, người có thể phân bổ tài sản. // Một govt có thể trở thành một lớp trên DA này. và Chính phủ có thể quyết định DA (địa chỉ) nào sẽ trở thành chủ sở hữu của cơ quan đó. // Chúng ta có thể mở rộng điều này một cách dễ dàng. Nhưng sau khi thông qua hợp đồng thông minh này, bạn sẽ có thể tìm ra cách mọi thứ có thể hoạt động. contract PropertyTransfer {address public DA // DA sẽ là chủ sở hữu, chúng tôi sẽ khởi tạo giá trị của biến này theo địa chỉ của người dùng sẽ triển khai nó. ví dụ. giả sử DA chính nó. uint256 public totalNoOfProperty // tổng số thuộc tính trong DA tại bất kỳ thời điểm nào. chúng sẽ tăng theo phân bổ cho chủ sở hữu tương ứng sau khi xác minh. // Dưới đây là phương thức khởi tạo có mã chỉ được chạy khi hợp đồng được tạo. function PropertyTransfer () {DA = msg.sender // đặt chủ sở hữu của hợp đồng là DA. } // công cụ sửa đổi để kiểm tra tx đến từ DA (chủ sở hữu) hay không phải từ bổ ngữ onlyOwner () {request (msg.sender == DA) _} // Cấu trúc này được giữ như thế này để lưu trữ nhiều thông tin hơn là chỉ Tên struct Thuộc tính {string name // giữ bản đồ của thuộc tính đối với từng địa chỉ. chúng tôi sẽ cung cấp tên cho thuộc tính bool isSold // chúng tôi cũng giữ số lượng cho mỗi địa chỉ} ánh xạ (địa chỉ => ánh xạ (uint256 => Thuộc tính)) thuộc tính publicOwner // chúng tôi sẽ có các thuộc tính được ánh xạ với mỗi địa chỉ bằng tên của nó và đó là số lượng cá nhân. ánh xạ (address => uint256) IndividualCountOfPropertyPerOwner // có bao nhiêu thuộc tính mà một người cụ thể nắm giữ sự kiện PropertyAlloted (addressed _verifiedOwner, uint256 indexed _totalNoOfPropertyCurrently, string _nameOfProromty, string _propermsg) event PropertyTransferred (địa chỉ được indexed _msg) // điều này sẽ cung cấp cho chúng ta số thuộc tính chính xác mà bất kỳ địa chỉ nào cũng sở hữu tại bất kỳ thời điểm nào hàm getPropertyCountOfAnyAddress (address _ownerAddress) hằng trả về (uint256) {uint count = 0 for (uint i = 0 i 

    Vì vậy, bạn vừa lập trình một cách để chuyển tài sản trên một mạng phi tập trung. Thật tuyệt làm sao !!

    Bạn có thể thấy rằng tiềm năng [hợp đồng thông minh] thay đổi các khía cạnh của xã hội là rất lớn.

    thể hiện của một lớp trong java là gì

    Với điều đó, tôi kết luận điều này Hợp đồng thông minh Blog. Tôi hy vọng bạn thích đọc blog này và thấy nó có nhiều thông tin.

    Có một câu hỏi cho chúng tôi? Vui lòng đề cập đến nó trong phần nhận xét và chúng tôi sẽ liên hệ lại với bạn tại earliest

    TôiNếu bạn muốn tìm hiểu Hợp đồng thông minh, xây dựng sự nghiệp trong lĩnh vực Blockchain và có được kiến ​​thức chuyên môn về lập trình Ethereum, hãy đăng ký tham gia trực tuyến ở đây, đi kèm với hỗ trợ 24 * 7 để hướng dẫn bạn trong suốt thời gian học tập.