Sự thật về hợp đồng thông minh – Smart Contract

Posted by: admin Lượt xem: 300 250 Post Date: 2 Tháng Mười Một, 2018

Sau tất cả, những gì có thể đáng tin tưởng và tốt hơn một hệ thống tư pháp? Những lời hứa hẹn về hợp đồng thông minh bao gồm:

 

  • Thi hành các hợp đồng một cách tự động, không cần sự tin tưởng và hoàn toàn vô tư.
  • Loại bỏ những thành phần trung gian trong việc xây dựng hợp đồng, chỉ chấp hành hợp đồng và thi hành hợp đồng.
  • (Ám chỉ) Không còn cần đến luật sư

 

Tôi cảm thông với sự thổi phồng. Sau tất cả, mọi thứ hiệu quả hơn nhiều không… nếu chúng ta có thể loại bỏ nhu cầu tin tưởng giữa 2 bên hợp đồng?

 

Hmmm, rốt cuộc, hợp đồng thông minh là cái gì? Và nó không phải là một tên miền của Ethereum chứ? Cũng không phải là con đường đến tương lai phải không? Tại sao bạn lại chọn con đường này để giải quyết mọi chuyện?

 

Trong bài viết này, Pink Blockchain sẽ ví dụ thế nào là hợp đồng thông minh và thực tế kỹ thuật đi kèm với nó (tiết lộ: nó không đơn giản và rất khó bảo mật).

 

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

 

Một hợp đồng bình thường là một thỏa thuận giữa hai hoặc nhiều bên để liên kết họ với một điều gì đó trong tương lai. Alice có thể trả cho Bob một ít tiền để sử dụng căn nhà của Bob (hay còn gọi là “thuê”). Charlie có thể đồng ý sửa chữa bất kỳ hư tổn nào trong chiếc xe hơi của Denise trong tương lai nếu nhận được một khoản tiền hàng tháng (hay còn gọi là “bảo hiểm”).

 

 

Điều kiện khác biệt về “thông minh” trong hợp đồng thông minh là những điều kiện đều được đánh giá và thực thi bằng mã máy tính, khiến cho hai bên không còn phải đặt niềm tin vào nhau (và vào hệ thống tư pháp). Như là, nếu Alice đồng ý trả cho Bob $500 cho một chiếc ghế dài được giao sau 3 tháng nữa, tính từ bây giờ (hay có thể hiểu là “chiếc ghế trong tương lai”), các dòng mã máy tính có thể định trước khi nào các điều kiện là đúng (Alice đã trả tiền cho Bob? Đã 3 tháng trôi qua hay chưa?) và thực hiện thỏa ước (chuyển chiếc ghế dài từ nhà kho), mà không cho một trong hai bên tham gia hợp đồng có khả năng thay đổi thỏa ước này.

 

Tính năng chính của hợp đồng thông minh là nó có thể thực hiện yêu cầu mà không cần sự tin tưởng, đó là, bạn không cần dựa vào một bên thứ ba để thực thi một nhóm các điều kiện. Thay vì dựa vào các bên để chắc chắn về các thỏa thuận, dựa vào các luật sư và hệ thống pháp luật để khắc phục các sự cố nếu việc thực thi hợp đồng đi sai hướng, thì một hợp đồng thông minh thực hiện những gì được cho là sẽ xảy ra, một cách kịp thời và khách quan.

 

Hợp đồng thông minh khá ngớ ngẩn

 

Việc sử dụng từ “thông minh” ngụ ý rằng các hợp đồng này có khả năng thông minh bẩm sinh. Nhưng chúng không như thế. Sự thông minh của của hợp đồng là không cần đến sự hợp tác với các bên thứ ba để thực hiện các thỏa thuận. Thay vì phải đuổi những người thuê ra khỏi căn hộ, một hợp đồng “thông minh” sẽ khóa căn hộ trước khi người thuê nhà trả tiền. Việc thực hiện các hậu quả phát sinh đã được thỏa thuận làm cho hợp đồng thông minh trở nên mạnh mẽ, chứ không phải bản thân hợp đồng vốn đã thông minh.

 

 

Một hợp đồng thật sự thông minh sẽ tính đến tất cả các tình tiết giảm nhẹ, nhìn vào điểm chính yếu của hợp đồng và thực hiện các phán quyết công bằng ngay cả khi nó rơi vào trường hợp xấu nhất. Mặt khác, một hợp đồng thực sự thông minh sẽ hành động giống như một thẩm phán giỏi. Thay vì, một “hợp đồng thông minh” trong ngữ cảnh này là không thông minh hoàn toàn. Nó thực sự là dựa trên những quy tắc và không thể xem xét hay cân nhắc những yếu tố khác, cũng như “tinh thần” của pháp luật.

 

Nói cách khác, làm cho một hợp đồng trở nên phi lòng tin nghĩa là chúng ta thực sự không thể có bất kỳ chỗ nào cho sự mơ hồ, mông lung, điều này sẽ dẫn đến vấn đề tiếp theo.

 

Hợp đồng thông minh thực sự rất khó

 

Bởi vì nhiều tiếp thị tập trung đến từ Ethereum, có một niềm tin sai lầm rằng Smart Contract chỉ tồn tại trên nền tảng Ethereum. Điều này là không đúng. Bitcoin đã có nó, từ gần đầu năm 2009, một ngôn ngữ hợp đồng thông minh khá rộng lớn được gọi là Script. Nói đúng ra, những hợp đồng thông minh đã tồn tại trước cả Bitcoin, nó có từ những năm 1995. Điều khác biệt giữa ngôn ngữ hợp đồng thông minh của Bitcoin và Ethereum đó là: Của Ethereum gọi là Turing-completeness. Đó là Solidity (ngôn ngữ viết ra hợp đồng thông minh của ETH) cho phép nhiều hợp đồng thông minh phức tạp với chi phí khiến cho chúng trở nên khó phân tích hơn.

 

Để làm rõ, hợp đồng thông minh đã tồn tại trước Bitcoin…

 

Có một số hậu quả đáng kể của một hệ thống phức tạp. Tùy độ phức tạp của hợp đồng có thể cho phép nhiều ngữ cảnh khác nhau, một hợp đồng phức tạp thì cũng rất khó cho chuyện bảo mật. Ngay cả trong những hợp đồng bình thường, cũng có nhiều sự phức tạp, khó khăn hơn khi nó phải có khả năng thi hành các ngữ cảnh không lường trước được, từ đó gia tăng sự thiếu chắc chắn trong việc diễn dịch ngữ nghĩa. Với hợp đồng thông minh, bảo mật được hiểu là xử lý tất cả những vấn đề có thể xảy ra trong một hợp đồng được thi hành và chắc chắn rằng những điều đó tuân theo đúng những gì tác giả của hợp đồng đã dự định.

 

 

Thực hiện trong một ngữ cảnh Turing-completeness là cực kỳ khó khăn và khó phân tích. Bảo mật một hợp đồng thông minh Turing-completeness trở nên tương đương với việc chứng minh rằng một chương trình máy tính không có lỗi. Chúng ta hiểu rằng nó rất khó khăn, giống như điều hiển nhiên rằng mọi chương trình máy tính đều có lỗi.

 

Hãy xem xét rằng viết ra những hợp đồng thông thường cần nhiều năm nghiên cứu và mất rất nhiều gạch đầu dòng về những khó khăn để viết nó một cách thành thạo. Những hợp đồng thông minh yêu cầu tối thiểu phải có mức độ thẩm quyền, tuy nhiên, nó được viết bởi những người không có hiểu biết cần thiết về mức độ an toàn bảo mật. Điều này là rất rõ ràng từ các hợp đồng khác nhau, đã được chứng minh là thiếu sót.

 

Giải pháp Bitcoin cho vấn đề này, đơn giản là không có Turing-completeness. Điều này khiến cho các hợp đồng dễ dàng để thống kê về các trạng thái có thể tồn tại của chương trình, dễ dàng hơn cho việc liệt kê và kiểm tra.

 

Giải pháp Ethereum là đặt gánh nặng trên các hợp đồng thông minh cho chính người viết ra nó. Nó phụ thuộc vào ý định của người đó.

 

Hợp đồng thông minh không thực sự là hợp đồng (ít nhất là trên ETH)

 

Trong khi, trao phó trách nhiệm bảo vệ hợp đồng cho người soạn thảo có vẻ tốt trên lý thuyết, trong thực tế, điều này có một số hậu quả nghiêm trọng liên quan đến tính tập trung.

 

Ethereum được coi như một giải pháp cho ý tưởng “code is law – mã nguồn là luật”. Có nghĩa là, một hợp đồng trên Ethereum là một quyền lực tối thượng và không ai có thể bác bỏ hợp đồng. Ý tưởng đã tạo nên sự rõ ràng cho các nhà phát triển hợp đồng thông minh. Nếu bạn say sưa trong việc tạo hợp đồng thông minh của riêng mình, thì theo một nghĩa nào đó, bạn xứng đáng với nó. Điều này đã bị ngừng lại khi sự kiện DAO diễn ra.

 

DAO được hiểu là “Decentralized Autonomous Organization” (Tổ chức tự trị phi tập trung) và một quỹ đã được tạo ra trong Ethereum như một cách để cho thấy tính khả dụng của nền tảng này. Người dùng có thể trả tiền cho DAO và nhận được lợi nhuận dựa trên khoản đầu tư mà DAO thực hiện. Bản thân những quyết định sẽ được định nghĩa bởi đám đông và sự phi tập trung. DAO đã kêu gọi được $150M trên ETH khi ETH đang được bán ở giá $20. Nghe có vẻ ổn ở lý thuyết, nhưng nó đã tồn tại một vấn đề. Mã nguồn đã không được bảo mật tốt và kết quả là có một ai đó đã tìm ra cách để rút tiền ra khỏi DAO.

 

Nhiều người gọi kẻ rút tiền ra khỏi DAO là “hacker”. Theo nghĩa rằng “hacker” là người tìm ra cách để lấy tiền từ một hợp đồng không được ràng buộc kỹ càng về điều khoản, bởi những người sáng tạo  –  như họ đã dự định, điều này đúng. Nhưng trong một nghĩa rộng hơn, đây không hoàn toàn là một hacker, chỉ là một ai đó lợi dụng những điều không/chưa minh bạch trong hợp đồng thông minh. Điều này không khác nhiều so với cách mà nhân viên kế toán công chứng tìm ra lỗ hổng thuế để tiết kiệm tiền cho khách hàng của họ.

 

Điều gì sẽ xảy ra tiếp theo khi Ethereum đã quyết định rằng mã nguồn đó không còn là luật và hoàn lại tất cả tiền đã bị “hack” cho DAO. Nói cách khác, những người soạn thảo hợp đồng và các nhà hợp đồng đã làm một điều ngu ngốc và các nhà phát triển Ethereum đã quyết định “cứu” họ.

 

“Tôi đã phạm một sai lầm tuổi trẻ, và tôi muốn nộp đơn xin trợ cấp chính phủ”.

 

Sự sụp đổ của sự việc này đã được ghi chép lại đầy đủ. Ethereum Classic đã được sinh ra, bảo quản quỹ DAO như đã nói và giữ nguyên tiêu chí “mã nguồn là luật”. Ngoài ra, các nhà phát triển bắt đầu tránh xa việc sử dụng thuộc tính Turing-completeness của Ethereum vì nó đã được chứng mình rằng rất khó để bảo mật. Các tiêu chuẩn ERC20 và ERC721 là các mẫu hợp đồng thông minh được thường xuyên sử dụng nhất trên Ethereum và nó là quan trọng để chỉ ra rằng cả hai loại hợp đồng có thể được viết ra mà không cần đến Turing-completeness.

 

Hợp đồng thông minh chỉ hoạt động với các loại tài sản lợi tức kỹ thuật số

 

Ngay cả khi không có Turing-completeness, hợp đồng thông minh vẫn tốt. Sau tất cả, ai là người muốn ra tòa án để nhận lại những gì hợp pháp thuộc về họ? Sử dụng hợp đồng thông minh không dễ dàng hơn hợp đồng bình thường?

 

Ví dụ, sẽ không có lợi ích bất động sản từ các hợp đồng thông minh? Alice có thể chứng minh quyền sở hữu căn nhà. Bob có thể gửi tiền và nhận ngôi nhà từ sàn sao dịch. Không có những câu hỏi về quyền sở hữu, phi lòng tin, thực thi nhanh bởi máy tính, không cần các thẩm phán, vấn đề quan liêu nhiêu khê, cũng không cần bảo hiểm quyền sở hữu. Nghe tuyệt đấy chứ, phải không?

 

Có hai vấn đề ở đây. Điều thứ nhất, hợp đồng thông minh thực thi bởi một tổ chức tập trung là không thật sự phi lòng tin. Bạn vẫn phải tin tưởng vào tổ chức tập trung để thực thi. Không cần đến sự tin cậy là tính năng mấu chốt, nhưng thực thi tập trung không thực sự có ý nghĩa. Để làm cho hợp đồng thông minh thật sự phi lòng tin, bạn cần một nền tảng phi tập trung thật sự.

 

Điều đó dẫn đến vấn đề thứ hai. Trong một ngữ cảnh phi tập trung, các hợp đồng phi tập trung chỉ hoạt động khi có một vài định nghĩa liên kết giữa phiên bản số và phiên bản thực thể. Đó là, bất cứ khi nào phiên bản số của căn nhà thay đổi quyền sở hữu thì phiên bản thực thể của căn nhà cũng thay đổi quyền sở hữu như thế. Đây là điều cần thiết để thế giới số “hiểu” về thế giới thực thể. Đây là được hiểu là “Oracle problem”.

 

Khi Alice chuyển giao căn nhà cho Bob, hợp đồng thông minh cần biết cô ấy thực sự đã chuyển giao căn nhà cho Bob. Có một vài cách để làm điều này nhưng chúng đều mắc phải một vấn đề cần thiết chung. Điều đó phải cần một vài sự tin cậy của một vài bên thứ ba để xác nhận các sự kiện trong thế giới thực đã thực sự xảy ra.

 

 

Ví dụ, căn nhà có thể được thể hiện bởi một non-fungible token trên Ethereum. Alice có thể chuyển giao căn nhà cho Bob trong một atomic swap với giá trị của một số lượng ETH. Đây chính là vấn đề. Bob cần phải tin rằng token đó thực sự thể hiện giá trị của một căn nhà. Phải có một số Oracle đảm bảo việc chuyển giao token đó đến Bob thực sự được hiểu như Bob đã sở hữu hợp pháp căn nhà bằng thực thể.

 

Hơn nữa, ngay cả khi một chính phủ có thẩm quyền nói rằng căn nhà đó thực sự thể hiện cho căn nhà, điều gì sẽ xảy ra sau nếu token đó bị đánh cắp? Chẳng lẽ căn nhà đã thuộc về tên trộm hay sao? Nếu token bị mất thì sao? Căn nhà trở nên một tài sản không thể đem bán vĩnh viễn? Token-nhà này có thể được cấp lại hay không? Nếu có, thì bởi ai?

 

Có một vấn đề khó khăn trong việc liên kết một tài sản số với một tài sản thực thể cho dù nó là trái cây, xe hay là nhà, ít nhất là trong bối cảnh phi tập trung. Những tài sản thực thể được quy định bởi thẩm quyền của bạn và điều này có nghĩa là chúng phải được tin tưởng vào một điều gì đó được thêm vào trong hợp đồng thông minh mà bạn đã tạo ra. Điều này nghĩa là sở hữu trong hợp đồng thông minh không nhất thiết là có nghĩa sở hữu trong thế giới thực, và nó cũng là điều mà các hợp đồng thông thường cũng vấp phải. Một hợp đồng thông minh mà phải tin vào bên thứ ba thì chẳng khác nào phá vỡ tính phi lòng tin được cho là ưu việt của nó.

 

Ngay cả khi tài sản số là những cuốn ebook, báo cáo sức khỏe hoặc những bộ phim cũng gặp phải vấn đề tương tự. Bản quyền đối với các tài sản kỹ thuật số này cũng được quyết định bởi một số cơ quan khác và một Oracle cần được tin tưởng.

 

Và, cuối cùng thì các Oracles cũng chẳng khác nào là một bản sao câm lặng của các thẩm phán. Thay vì thực thi đơn giản bằng máy, những gì mà bạn thực sự nhận được là sự phức tạp của việc phải mã hóa tất cả các kết quả có thể có bởi chủ quan nhận định và rủi ro từ sự phán xét của con người. Mặt khác, tạo nên một hợp đồng “thông minh”, bạn làm cho nó phức tạp hơn trong cách tạo ra (viết mã) trong khi vẫn không thể loại bỏ yếu tố lòng tin trong việc thực thi hợp đồng.

 

Chỉ có một thứ có thể hoạt động với hợp đồng thông minh mà không cần Oracle là các tài sản lợi tức kỹ thuật số. Bản chất, cả hai phía của những người giao dịch cần không chỉ là kỹ thuật số, mà là lợi tức. Đó là, chủ của token không thể có phụ thuộc bên ngoài trong nền tảng hợp đồng thông minh. Chỉ khi một hợp đồng thông minh có một tài sản lợi tức kỹ thuật số có thể là một hợp đồng thông minh thực sự phi lòng tin.

 

Kết luận

 

Tôi ước hợp đồng thông minh có thể hữu ích hơn hiện tại. Không may thay, phần lớn những gì chúng ta nghĩ đến khi các hợp đồng mang lại là một loạt các giả định và luật lệ để thành lập nên hợp đồng mà không cần hợp đồng phải là tuyên bố rõ ràng.

Hơn nữa, hóa ra việc sử dụng tính toàn vẹn của Turing-completeness là một cách dễ dàng để làm hỏng hợp đồng và gây ra các hành vi ngoài ý muốn. Chúng ta nên cho rằng nền tảng hợp đồng thông minh hiện tại là Turing-vulnerable (dễ bị tổn thương), không phải Turing-complete. Sự việc của DAO cũng chứng minh rằng “tinh thần” của hợp đồng thông thường được tin tưởng hoàn toàn và giúp giải quyết tranh chấp nhiều hơn chúng ta nhận thấy.

Hợp đồng thông minh có vẻ dễ làm hỏng việc, khó khăn để bảo mật, quá khó để tạo nên sự phi lòng tin và có quá nhiều sự phụ thuộc bên ngoài để có thể hoạt động được với những sự vật cụ thể. Nơi thực tế nhất mà hợp đồng thông minh có thể hoạt động phi lòng tin là trong lĩnh vực tài sản lợi tức kỹ thuật số, trên các nền tảng phi tập trung, giống như Bitcoin.

Gặp khó khăn trong việc phân tích, đọc đồ thị, dự đoán giá? Đừng lo lắng! Với PINK TRADING – app báo tín hiệu trade coin, bạn có thể dễ dàng vào lệnh chính xác, chốt lời cắt lỗ hợp lý, nhanh chóng gia tăng lợi nhuận. Tìm hiểu ngay!

Please follow and like us:

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Social media & sharing icons powered by UltimatelySocial