學習筆記《區塊鏈技術與應用》第4天 比特幣腳本語言

在這里插入圖片描述
輸入0.7
輸出0.5
23個確認 不太可能回滾了


在這里插入圖片描述
交易id
hash值
版本
locktime 交易剩下時間:0立即生效
confirmation:確認信息
time:產生時間
blocktime:塊產生時間


在這里插入圖片描述
vout: 交易中第0個輸入
scriptSig:輸入腳本(input script)

在這里插入圖片描述
n:交易里第0個輸出
scriptPubKey:輸出
reqSigs: 需要1個簽名才能兌現
addresses:公鑰地址


在這里插入圖片描述

第一種

在這里插入圖片描述
最簡單情況,直接給出收款人的公鑰

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

執行過程,壓入棧=》檢查簽名
在這里插入圖片描述

方式二

在這里插入圖片描述
輸出腳本沒有直接給公鑰 只給Hash
公鑰是在輸入腳本里給出的,也要給出簽名
在這里插入圖片描述
執行過程:
DUP 復制
在這里插入圖片描述
HASH160: 彈出棧頂元素取Hash,然后把得到的hash壓入棧
在這里插入圖片描述
推入output中的PubKeyhash
當前兩個Hash一個是input提供一個是output計算hash后得到
在這里插入圖片描述
EQUALVERIFY 彈出棧頂兩個元素比較他們是否相等
在這里插入圖片描述
CHECKSIG 彈出棧頂兩個元素 檢查簽名是否正確

第三種

給出收款人提供的一個腳本(redeemScript) 的hash
在這里插入圖片描述
在這里插入圖片描述
舉例:

在這里插入圖片描述

拼接輸入+輸出腳本
在這里插入圖片描述

壓入sig
壓入RSH
計算HASH
壓入RAH
EQUAL比較
在這里插入圖片描述

在這里插入圖片描述
反序列化執行腳本
檢查PubKey

多重簽名

× 存在bug需要多壓入一個元素
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述交易時需要給出公鑰以及M,N的值。

多重簽名 方式2

將復雜度轉移到輸入腳本
在這里插入圖片描述
贖回腳本由input提供(電商)。
在這里插入圖片描述
在這里插入圖片描述
第二階段
在這里插入圖片描述
第二階段與之前paytohash一樣
在這里插入圖片描述

最后一個

RETUREN 用于返回false

  1. 用于銷毀比特幣,有些小幣種要求銷毀一定數量,AlternativeCoin
  2. 添加永久保存的內容:digital commitment。某種知識產權保護放到RETURN后面不會被執行。證明你在某個時間點已經知道某個知識。
  3. coinbase只有獲得記賬權的節點才能用,
    在這里插入圖片描述
    在這里插入圖片描述
    輸入金額全部用于支付交易費
    在這里插入圖片描述

PPT例子中省略了執行命令的OP_前綴正常應該是:
OP_CHECKSIG
OP_DUP
OP_xxx

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/93685.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/93685.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/93685.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

3.Linux 系統文件類型與文件權限

1.文件類型Linux 下所有的東西都可以看做文件,Linux 將文件分為以下幾種類型:普通文件 ‘-’目錄文件 ‘d’管道文件 ‘p’鏈接文件 ‘l’設備文件(塊設備 ’b’ 、字符設備 ‘c’)套接字文件 ‘s’Linux 上不以文件的擴展名區別文…

訂單識別技術原理及場景應用

訂單OCR(光學字符識別)技術通過圖像處理和深度學習算法,將紙質或電子版訂單中的文字信息轉化為結構化數據。以下是其技術原理和典型應用場景的詳細解析:一、技術原理剖析1. 核心處理流程圖像預處理去噪:消除陰影、折痕…

[優選算法]復寫零

題目鏈接 LeetCode復寫零 題目描述 題目解析 一、問題理解 題目要求:給定一個整數數組 arr,在不創建新數組的情況下,將每個出現的 0 復寫一遍(即一個 0 變成兩個 0),同時保持其他元素的相對順序不變。復…

element UI的el-table組件,實現可以拖動

表格 <div class"main_table"><el-table id"elTableid" :data"fieldArr" border style"width: 100%" row-class-name"drag-row"current-row-key highlight-current-row><el-table-column type"index&qu…

Android Emoji 全面解析:從使用到自定義

引言 Emoji已經成為現代數字通信不可或缺的一部分&#xff0c;這些小小的圖標能夠跨越語言障礙&#xff0c;直觀地表達情感和想法。在Android開發中&#xff0c;正確處理和顯示Emoji是提升用戶體驗的重要環節。本文將全面介紹Android平臺上的Emoji支持&#xff0c;包括系統集成…

數據中心入門學習(五):服務器CPU

目錄CPU1 概述1.1 概念1.2 馮諾依曼架構1.3 常見參數&#xff08;評估性能&#xff09;1.4 按指令集分類2 CPU發展2.1 發展史2.2 行業產業鏈2.3 英特爾 Xeon 至強處理器2.4 AMD Zen架構補充1 寄存器、存儲器、內存、緩存、硬盤區別與聯系&#xff1f;2 浮點單元參考本篇記錄和梳…

基于MySQL實現基礎圖數據庫

基于MySQL實現基礎圖數據庫 一、概念 圖數據庫是一種用于存儲和查詢具有復雜關系的數據的數據庫。在這種數據庫中&#xff0c;數據被表示為節點&#xff08;實體&#xff09;和邊&#xff08;關系&#xff09;。圖數據庫的核心優勢在于能夠快速地查詢和處理節點之間的關系。 圖…

RAG面試內容整理-9. 查詢改寫與增強(Query Rewriting, Query Expansion)

查詢改寫和查詢增強是兩種提升檢索效果的技術,目標是在不改變用戶意圖的前提下,使檢索器收到的查詢更全面或明確,從而找到更多相關信息。 查詢改寫通常指將原始查詢轉換成語義等價但更明晰的形式。上一節談到的對話查詢改寫是一個典型場景。在一般情況下,查詢改寫也適用于澄…

golang設置http代理

問題場景&#xff1a; golang通過eino的官方agent示例調用duckduckgo進行聯網搜索時出現網絡問題&#xff0c;電腦此時是掛了工具的瀏覽器整出打開 官方示例&#xff1a;https://www.cloudwego.io/zh/docs/eino/quick_start/agent_llm_with_tools/ 問題原因&#xff1a;go代碼沒…

Elasticsearch 現在默認啟用 BBQ,并通過 ACORN 實現過濾向量搜索

作者&#xff1a;來自 Elastic Gilad Gal 探索 Elasticsearch 的向量搜索如何以更快的速度、更低的成本提供更優結果。 試用向量搜索&#xff1a;使用這套自定進度的 Search AI 實操學習課程&#xff0c;親自體驗向量搜索。你可以開始免費云試用&#xff0c;或立即在本地機器上…

Java 14 新特性解析與代碼示例

Java 14 新特性解析與代碼示例 文章目錄Java 14 新特性解析與代碼示例1. 開關表達式&#xff08;Switch Expressions&#xff09;2. 記錄類型&#xff08;Records&#xff09;3. 文本塊&#xff08;Text Blocks&#xff09;4. instanceof的模式匹配&#xff08;Pattern Matchin…

在虛擬機ubuntu上修改framebuffer桌面不能顯示圖像

目錄 一、測試程序 二、排查原因 三、為什么 Xorg 會導致程序無法工作&#xff1f; 一、測試程序 #include <stdio.h> #include <stdlib.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <unistd.h> #in…

語言模型的評估指標整理

語言模型&#xff08;Language Models&#xff09;是自然語言處理&#xff08;NLP&#xff09;的核心組件&#xff0c;廣泛應用于機器翻譯、文本生成、對話系統等領域。隨著模型復雜度的提升&#xff0c;如何科學、系統地評估模型性能變得至關重要。評估指標不僅幫助我們理解模…

【開發技術】.Net中配置Serilog日志分級記錄

目錄 一、目的 二、解決方案 2.1 下載serilog包 2.2 Serilog配置 2.2.1 使用多個File sink配置不同的最小日志級別 2.2.2 使用Filter條件分流到不同文件 三、使用建議 四、文章總結 一、目的 在日常開發中&#xff0c;需要根據不同的場景去記錄日志&#xff0c;根據實際…

聊聊如何判斷發現的缺陷屬于前后端

目錄 一、觀察缺陷現象 二、檢查網絡請求&#xff08;核心方法&#xff09; 三、模擬請求驗證后端 四、查看日志 五、數據流分析 六、判斷前后端缺陷方法 判斷發現的缺陷是前后端&#xff0c;可以通過觀察缺陷現象&#xff0c;檢查網絡請求&#xff0c;查看后端日志&…

Python3與MySQL的PyMySQL連接與應用

Python3與MySQL的PyMySQL連接與應用 引言 隨著互聯網技術的飛速發展,數據庫在各個領域的應用日益廣泛。MySQL作為一種開源的關系型數據庫管理系統,因其穩定性和高效性,被廣泛應用于各種場景。Python作為一種高級編程語言,以其簡潔、易讀、易學等特點,受到了廣大開發者的…

智慧城市SaaS平臺|市政公用管理系統

【道路監測運維系統】1.數據可視化a) 實時監控支持對道路監測數據進行分析評估&#xff0c;為道路養護、交通管理、環境保護等提供數據支撐2.道路基礎設施監測支持對道路基礎設施的運行狀態進行實時監測&#xff0c;包括路面狀況3.交通流量監測支持對道路交通流量進行實時監測&…

Maven 配置阿里云鏡像加速

Maven 配置阿里云鏡像加速&#xff1a; 完整配置步驟&#xff08;Windows 系統&#xff09; 1. 找到 Maven 的 settings.xml 文件 全局配置&#xff1a;D:\software\apache-maven-3.9.11\conf\settings.xml用戶配置&#xff1a;C:\Users\Admin\.m2\settings.xml&#xff08;推薦…

去除視頻字幕 3 : 繼續研究 IOPaint,記錄幾個問題

1. 為什么單獨運行&#xff0c;效果很好&#xff0c;批量運行&#xff0c;效果很差。 1. 我運行 iopaint start --modellama --devicecuda --port8080在瀏覽器中單獨選擇圖片&#xff0c;涂選區域&#xff0c;然后處理&#xff0c;此時的效果非常好。2. 但是我進行 iopaint ru…

【深度之眼機器學習筆記】04-01-決策樹簡介、熵,04-02-條件熵及計算舉例,04-03-信息增益、ID3算法

1. 決策樹與熵 1.1 決策樹簡介 下面有一個貸申請樣本表&#xff0c;有許多特征 我們根據特征數據生成一棵樹&#xff0c;比如年齡有青年&#xff0c;中年&#xff0c;老年三個類別&#xff0c;那么就有三個分支&#xff0c;分別對應著三種類別。如果是青年那么就看工作&#xf…