分投趣Fintoch借貸質押模式系統開發部署技術介紹
智慧合約是一種計算機程式碼,開發+18I鏈上合約-259l開發系統3365-+可簡化某些協議的執行並消除中間商的需求。智慧合約和區塊鏈是相關技術,因為後者是一個智慧合約平臺。換句話說,智慧合約建立在區塊鏈上。
有大量智慧合約應用程式和智慧合約用例。
交付服務是智慧合約的例子之一:智慧合約可以在包裹交付後自動將錢轉賬給快遞員。無需簽署任何傳統合同,傳送方只需用加密貨幣填充智慧合約,然後智慧合約透過硬幣(例如比特幣和智慧合約)來處理所有事務。
換言之智慧合約會在滿足某些條件時執行寫入其程式碼中的內容,使交易透明,防欺詐,更快且不可逆,不需中央授權,程式碼可以幫助交易雙方在沒有中間人的情況下進行協作。
智慧合約的概念已經探討了20多年,隨著區塊鏈技術的到來,才有機會獲得更廣泛的利用。
pragma solidity >=0.7.0 <0.9.0;
//用Remix編寫,需手動呼叫function以實現相關功能
contract SimplePaymentChannel{
address payable public sender;//發件人地址
address payable public recipient;//收件人地址
uint public expiration;//儲存合約到期時間,防止收件人一直不關閉合約,佔用發件人以太幣資源
//建構函式,部署合約時呼叫,僅呼叫一次
//初始化發件人地址,收件人地址,合約有效時間
constructor(address payable recipientAddress, uint256 duration) payable{
sender = payable(msg.sender);//msg.sender是address型別,需強制型別轉換為payable address型別
recipient = recipientAddress;
expiration = block.timestamp + duration;
}
//銷燬合約,只有收件人能銷燬合約
function close(uint256 amount, bytes memory signature) external{
//require()中判斷條件為true則繼續,為false則退出該function,回退該function內所有更改
require(msg.sender == recipient);//判斷呼叫該function地址是否為收件人
require(isValidSignature(amount, signature));//判斷收件人是否掌握有正確的的發件人訊息簽名
recipient.transfer(amount);//把應得的以太幣傳送給收件人,誰呼叫transfer(),就給誰轉賬
selfdestruct(sender);//銷燬當前合約,將合約剩餘資金髮送到給定地址sender
//由於合約內容已被記錄在舊的區塊上,仍可以被查詢,但不能被再次呼叫,除非重新部署該合約
}
//合約有效期續期,僅有發件人可以呼叫
function extend(uint256 newExpiration) external{
require(msg.sender == sender);//判斷呼叫者是否為發件人
require(newExpiration > expiration);//判斷新的有效期是否大於當前有效期
expiration = newExpiration;//重置合約有效期
}
//判斷當前合約是否在有效期內
function claimTimeout() external{
require(block.timestamp >= expiration);//判斷當前合約是否過期,若過期,則銷燬合約
selfdestruct(sender);//銷燬合約
}
//函式isValidSignature(),splitSignature(),recoverSigner(),prefixed()涉及到 橢圓曲線加密 訊息的驗證過程,
//詳見我的另一篇部落格https://www.cnblogs.com/forkroad/p/16121333.html,有詳細介紹
function isValidSignature(uint256 amount, bytes memory signature) internal view returns(bool){
bytes32 message = prefixed(keccak256(abi.encodePacked(this, amount)));//根據當前地址this和轉賬金額amount雙重加密為訊息message
return recoverSigner(message, signature) == sender;//
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70012429/viewspace-2945989/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Fintoch分投趣質押系統搭建開發|分投趣質押借貸模式搭建模式
- Defi/IDO分投趣借貸質押系統開發技術丨Defi分投趣借貸開發模式詳情模式
- 分投趣fintoch系統開發借貸模式搭建模式
- 分投趣借貸模式開發系統搭建技術模式
- 分投趣借貸系統dapp開發丨分投趣Fintoch瘋狂功能丨系統技術開發分投趣APP
- NFT借貸協議質押模式系統開發詳情技術介紹協議模式
- 分投趣FINTOCH借貸理財系統開發詳情丨 DApp 技術棧APP
- Fintoch分趣投系統丨Fintoch分趣投系統開發(技術分析)及原始碼部署原始碼
- 分投趣fintoch合約系統開發詳情技術介紹
- 分投趣Fintoch系統智慧合約開發技術丨分投趣Fintoch技術開發示例
- DeFi丨NFT質押借貸質押系統模式開發功能技術分析模式
- 分投趣Fintoch(系統開發)丨分投趣Fintoch智慧合約技術開發原理
- 分投趣借貸理財質押挖礦開發運營版丨分趣投借貸理財質押挖礦系統開發詳情規則及原始碼原始碼
- 深度解析:分投趣fintoch模式系統開發技術(成熟合約技術)模式
- fintoch分投趣系統開發技術詳細及分析丨分投趣fintoch系統原始碼案例原始碼
- 雙幣質押借貸挖礦模式系統開發詳情搭建介紹模式
- 分投趣(Fintoch)系統技術開發細節分析
- 分投趣fintoch開發丨fintoch分投趣系統開發方案詳細丨分投趣fintoch系統原始碼案例原始碼
- NFT+DeFi質押借貸開發系統搭建技術
- 分投趣(Fintoch)開發丨分投趣原始碼系統技術開發丨Solidity技術語言原始碼Solid
- fintoch分投趣智慧合約技術系統開發搭建
- 迪斯克DEX質押借貸系統開發技術方案
- DEFI/LP質押借貸模式軟體開發技術詳情模式
- FINTOCH分趣投系統開發技術詳細及案例原始碼原始碼
- 區塊鏈fintoch/DeFi借貸智慧合約技術系統開發搭建模式區塊鏈模式
- Defi 借貸挖礦丨 DAPP 智慧合約模式系統開發技術介紹APP模式
- IDO/Defi/DAPP/代幣預售借貸質押分紅系統技術開發(元件解析)APP元件
- Fintoch分投趣系統合約開發搭建
- 分投趣借貸挖礦系統開發技術/DAPP借貸理財挖礦系統開發功能以及邏輯詳情(案例原始碼)APP原始碼
- NFT質押借貸(智慧合約)系統技術開發及程式碼示例
- Fintoch分投趣模式系統開發/區塊鏈DAPP合約模式區塊鏈APP
- DApp質押借貸挖礦系統開發|流動性質押分紅模式定製(原始碼搭建)APP模式原始碼
- Defi/DAPP/IDO/代幣預售/系統開發/Defi借貸質押分紅技術開發詳情APP
- PRT質押分紅系統開發模式技術搭建模式
- DAPP/NFT質押借貸系統合約開發技術詳解(程式碼示例)APP
- CeresDAO借貸合約/DAO質押挖礦系統開發技術丨python技術語言Python
- 分投趣Fintoch智慧合約系統開發原理
- NFT質押借貸開發分析丨質押借貸2.0系統開發詳情丨原始碼丨DAPP丨nft原始碼APP