Cointime

扫码下载App
iOS & Android

2023年报告:区块链中的Python现状

来源:Trading Strategy‘s blog  编译:Cointime Candice

本报告概述了2023年区块链软件开发生态系统中Python编程语言技术的现状。我们研究了使用Python或与Python相关的区块链项目和工具,以及为什么这种重叠很重要。我们为 Python 开发人员重点介绍令人期待的新项目和机会。

为什么这很重要?

Python是世界领先的编程语言之一,被评为“2022年最受欢迎的语言”。

以下是Python是头号首选语言的一些用途:

  • 数据研究
  • 量化金融
  • 交易自动化
  • 集成和测试
  • 软件自动化和DevOps

Python也被广泛应用于Web后端,小型和大型项目都选择在它之上构建软件即服务解决方案。在传统科技行业中,Instagram和Pinterest等排名前十的应用程序严重依赖Python。加密货币行业也不例外。集中的交易所在其后端API和集成中使用Python,并且已经这样做了十多年。

区块链、加密货币或协议项目想要吸引上述垂直领域的人才和建设者,应提供基于Python的开发解决方案。反之亦然,想要进入区块链行业的Python开发人员可以很容易地在这些特定领域找到机会。更成熟的Python工具通常可以被视为专业环境中采用的标志,并更容易进入传统企业。

Python和区块链生态系统的关联性

由于区块链严重的金融性质,以及Python在金融和数据研究方面的独特地位,有多个软件开发垂直领域的Python和区块链开发有重叠之处。

区块链通常不包含Python。通常,对于最小的区块链或协议项目,核心开发团队不支持Python。下面是一些典型的组件和集成。

通常会提供用于准系统区块链项目的定型区块链堆栈。

金融和数据研究活动与区块链、链上分析和去中心化金融(DeFi)重叠。交易与集中交易所(CEX)和分散交易所(DEX)重叠。这些活动至关重要,但往往不是软件开发中更为用户可见的元素的一部分,例如Web前端(以基于JavaScript的工具为主)或区块链核心(以Go和Rust为主)。

区块链生态系统的扩展视图。对于采用,Python软件开发生态系统围绕着区块链开发。因此,能够提供与Python的良好整合机会十分重要。

在传统的软件开发垂直领域之外,我们还有智能合约,我们可以在工具或智能合约本身的一部分中找到 Python。我们可以确定 Python 在安全和智能合约审计中起着至关重要的作用。

区块链开发生态系统的总体状况

Electric Capital 的《2022 年开发者报告》很好地概述了区块链开发生态系统的状态。尽管 2022 年是加密货币和科技股的熊市,但开发者数量逐年上升。

发展正在加速进行。 2022 年一半的新开发者进入该行业。

PyChain 2022

2022年,Trading Strategy组织了首届以Python为重点的区块链开发者会议PyChain。该虚拟活动有超过1200名注册者和500名并发流观众。自12月以来,PyChain YouTube 视频的观看次数已超过 5,000 次。

PyChain 2022包括来自众多区块链和协议的演讲,如Ethereum Foundation、NEAR、MultiverseX(以前称为Elrond)、Cosmos、Curve,但也包括从传统量化金融角度出发的演讲,涵盖了风险分析和策略回测等主题。

对于本报告后面的项目概述,我们会链接到相应的PyChain 2022演讲(如果有)。否则,我们会提供项目开发者文档的链接。

区块链开发中的Python垂直领域

以下是对2022年最佳利用Python的个别著名区块链项目的介绍和概述。

我们根据项目的垂直方向将项目分为:

  • 核心区块链和节点软件
  • 智能合约语言
  • 集成库
  • 智能合约开发框架
  • 交易
  • 数据研究,包括提取转换加载(ETL)解决方案
  • 安全和审计
不同区块链软件开发垂直领域的Python项目示例。

核心区块链和节点软件

尽管该任务在某种程度上是一个有争议的备选方案,但 Python 语言也用于核心区块链节点开发。

Chia

Chia 区块链核心软件是用 Python 编写的。 如果按单个节点数计算,Chia 声称是最去中心化的区块链。 Chia 提供独特的时空证明 (PoSt) 共识模型。 Chia 通过 ChiaLip 编程语言提供智能合约,并已在世界银行试点中使用。

Lamden 

Lamden是基于Python的高性能区块链平台,使每个人都能轻松使用和创建下一代dApps。

智能合约编程语言

Python和Python启发的语言正被用作几个区块链的智能合约编程语言。智能合约开发由Solidity和Rust主导。更具实验性的基于Python的方法很有趣,因为它们提供了更容易的代码可读性和可写性,并能使安全编译时间更有保证,从而创造一个更安全的生态系统。

Vyper

Vyper 是 Vitalik Buterin 于 2014 年创建的第一个智能合约编程语言 Serpent 的后代。 如今,Vyper 已用于许多 DeFi 应用程序的生产中,并在数十亿美元的交易中证明了它的稳定性。 这是对 Vyper 的简单 介绍。

SmartPy

Tezos提供SmartPy,它既是智能合约编程语言也是开发平台。它使用Python作为特定领域语言(DSL)。Tezos是一个经过验证的区块链,也是首批提供链上治理的区块链之一。

Seahorse

Solana提供Seahorse,是另一种用于智能合约编程的Python特定领域语言。Seahorse大大简化了智能合约的开发,但仍然提供类型安全和与基于Rust的智能合约的互操作性。Seahorse编译器生成中间的Rust人工制品,并使用Anchor库来完成繁重的工作。

PyTeal

PyTeal是另一种使用Python的特定领域语言。PyTeal让你可以为Algorand的交易执行批准语言(TEAL)编写合约。PyTeal程序为智能合约开发提供了方便和熟悉的语法。

集成库

集成库和软件工具包库用于使区块链与其他软件沟通。这包括网络前台和基于服务器的应用程序,如SaaS产品。最常见的用例之一是将加密货币支付集成到中心化交易所 (CEX) 或其他货币平台。

集成库可以让你查询链的状态,组装和广播你自己的交易。这些库使用远程程序调用(RPC)协议与区块链节点对话。常见的协议选择包括JSON-RPC和Protobuf。

Web3.py

Web3.py是Python的原始Web3工具箱。Web3.py是为以太坊主网创建的,由以太坊基金会维护。然而,它也被用于其他基于EVM的第一层和第二层区块链。

Pons

Pons是另一个用于以太坊和基于EVM的区块链的Python库。Pons使用异步编程模型,目前正处于实验阶段。

用以太坊登录

使用 Ethereum (SIWE) for Python 登录为你带来了使用以太坊钱包无密码登录体验。 SIWE 提供内置安全性和与流行的 Python Web 框架(如 Django 和 Flask)的集成。 SIWE 适用于多种钱包,如 MetaMask 和所有基于 WalletConnect 的钱包。

CosmPy

CosmPy是一个Python库,用于与基于Cosmos SDK的区块链网络互动。CosmPy可用于转移代币、质押、执行原子互换、部署和与智能合约互动。

CosmPy目前由Fetch.ai维护。Cosmos SDK被用来构建多个不同的区块链,包括Osmosis、Stargazer、Cosmos Hub,然后与中继器连接。

Paloma.py

Python中的Paloma软件开发工具包(SDK)是一个简单的库工具包,用于构建可以与Paloma区块链互动的软件,并对核心数据结构、序列化、密钥管理和API请求生成提供简单抽象概念。Paloma是一个快速、无权限、Cosmos-SDK区块链,可以在任何其他区块链之间安全地移动信息。

xrpl-py

xrpl-py是一个Python库,用于与XRP Ledger(通常被错误地称为Ripple)互动。该库通过为XRP Ledger交易和核心服务器API提供本地Python方法和模型来提供序列化和交易签名。

IOTA钱包库

IOTA钱包库是基于Rust和Python的绑定。它可以用来与IOTA区块链互动,包括Shimmer。IOTA是一个基于定向无环图(DAG)的区块链,声称无交易成本。

NEAR-API-Py

NEAR-API-Py是一个Python库,用于开发使用NEAR平台的应用程序。NEAR是一个分片的高性能智能合约支持的区块链,拥有超过1000万个账户。

Py-near

Py-near是另一个用于NEAR区块链开发的Python库。它由HERE钱包维护。

Vega API 客户端

Vega协议是一个基于订单簿DEX的区块链,从一开始就面向专业交易者。出于这个原因,它将Vega API Python客户端作为协议的第一类客户端(而其他大多数协议只支持基于JavaScript的工具)。Vega 基于 Tendermind 共识,但不是我们所说的基于 Cosmos SDK。

Aptos Python SDK

Aptos提供了一个维护简单的官方Python SDK。目前,这仍在开发中,不适合直接与Aptos接口。

Python Substrate接口

Substrate是用于构建Polkadot链的SDK。Python Substrate Interface专门负责与Substrate节点的接口;查询存储,组成外部函数,编码/解码以及提供额外的便利方法来处理Substrate运行时的特性和元数据。

SolanaPy

Solana.py是用于与Solana交互的基础Python库。你可以用它来构建事务,并与Solana的JSON RPC API进行交互。

Solders

Solders是与Solana Rust SDK的Python绑定。它为Solana的核心任务(如交易签名和序列化)提供了强大的、高性能的解决方案,使我们无需在纯Python中重新实现Solana逻辑。

智能合约开发框架

智能合约开发框架为编写智能合约提供额外的工具。这包括:

  • 自动编译复杂的智能合约项目(想想UNIX Make for smart contracts)。
  • 智能合约的单元和集成测试框架,因为测试用例通常很麻烦,或者不可能用智能合约DSL语言本身来编写
  • 部署和脚本

ApeWorX

ApeWorX是一个面向Python开发人员、数据科学家和安全专家的智能合约开发框架。ApeWorX支持以太坊、基于EVM的区块链和StarkNet。

用于Python的MultiversX SDK

MultiversX SDK for Python(以前称为Elrond)为MultiverseX区块链提供智能合约的编译、测试和部署。

AnchorPy

AnchorPy是与Python中的Anchor程序进行交互的网关。Anchor是Solana的Sealevel运行时的一个框架,为编写智能合约提供几个方便的开发者工具。

SnekMate

SnekMate是一个最先进的、集中意见的、超优化的、安全的Vyper智能合约构建块的存储库。SnekMate包含基于Foundry的单元测试,基于属性的测试(即模糊测试),以及所有合约的不变性测试。

交易

正如报告前面提到的,Python是交易的头号编程语言,在加密货币和传统金融中都是如此。为了提高报告的效率,我们专注于开源解决方案;我们不列出用于中心化交易所、托管解决方案或其他专有 API 服务的客户端库。作为记录,除了这些开源解决方案,还有数百个使用Python的库和API。

交易策略

交易策略是一个用于去中心化金融(DeFi)市场的算法交易框架。它允许你使用高级Python编程和定量金融工具而不是Solidity来开发、回测和执行交易策略。目前,Trading Strategy支持以太坊、几个基于EVM的区块链、Uniswap v3、Aave v3借贷协议、Uniswap v2和兼容的DEXes。

Hummingbot

Hummingbot是一个加密货币的高频交易框架。Hummingbot专门从事中心化交易所的做市业务。

CCXT

CCXT是一个用于各种集中式交易所的集成库。CCXT是CryptoCurrency Exchange Trading Library的缩写。它提供了一个标准的API来做单

ETL

ETL是指提取——转换——加载(ETL)。它是指从一个系统中提取数据流,然后将这些数据转换为另一种格式的解决方案,通常更适合查询和商业分析。

区块链ETL

区块链ETL促进了区块链数据的数据科学。某些 EVM 链的区块链 ETL 在 Google BigQuery 中可用。

Web3——以太坊——Defi

Web3——以太坊——Defi是一个低级别的Python库,用于从各种区块链中提取DeFi交易数据。该项目除了提供高性能的数据提取,还提供交易执行原语。目前Web3——以太坊——Defi支持以太坊、几个基于EVM的区块链、Uniswap v3、Aave v3借贷协议、Uniswap v2和兼容的DEX。

安全性

由于其易读性和脚本性,Python是许多区块链和智能合约安全工具的基础。

Mythril

Mythril是一个用于EVM字节码的安全分析工具。支持为以太坊、Hedera、Quorum、Vechain、Roostock、Tron和其他EVM兼容区块链构建的智能合约。Mythril由Consensys维护。

Slither

Slither是一个用Python 3编写的Solidity静态分析框架。它运行一套漏洞检测器,打印有关合同细节的可视化信息,并提供一个API来轻松编写自定义分析。Slither使开发者能够发现漏洞,提高他们的代码理解力,并快速建立自定义分析原型。

Woke

Woke是一个基于Python的Solidity开发和测试框架。它提供了漏洞检测器、Solidity的语言服务器协议(LSP)和一个模糊器。Woke由Ackee维护。

Halmos

Halmos是一个用于以太坊智能合约字节码的符号化有界模型检查器,可用于漏洞检测以及合约的形式验证。Halmos用符号化的函数参数和符号化的存储状态来执行给定的合约字节码,让它能够探索所有可能的行为。它展开循环,允许它自动运行而不需要额外的用户注释。Halmos 证明任何输入都不会违反断言或提供反例。 Halmos 由 Andreessen Horowitz 维护。

其他应用

在这个类别中,我们还有其他基于 Python 的区块链项目。

rotki

rotki是一个开源的投资组合跟踪器、会计和分析工具,可以保护你的隐私。rotki的Python源代码可供检查。它是一个本地优先的应用程序,强烈关注用户隐私。你的财务数据被加密保存在你的系统中,不会被泄露,因此适用于基金和公司。

对2023年有什么期待

区块链技术已经开始从比特币和以太坊架构的双重垄断中走向多元化。虽然EVM仍然是占主导地位的解决方案,但随着新一代技术进入市场,它架构上的缺点也越来越明显。尽管向更具可扩展性、安全性和用户友好性的技术的任何变化都比我们期望的要慢,但它是在进行中的。

  • 专业化:Vega和Cosmos等用于交易和NFT的区块链正在首次进入市场。我们还不知道是专业化的应用链和通用区块链最终谁会胜出。
  • 可扩展性:NEAR 和 MultiverseX 等基于分片的解决方案开始成熟,提供可行的长期可扩展性。与短期的可扩展性不同,仅仅增加区块大小这样的权宜之计并不能提供长期的可扩展性,这些链正在被重新思考架构,以便它能够永远扩展。其他扩展解决方案包括像 Arbitrum 这样的 第二层协议,但目前,任何第二层协议的扩展解决方案都不提供超出普通 EVM 链的任何新的或有趣的功能。
  • 行业成熟度:经过惨痛的教训,区块链行业总体上正在走向成熟。熊市已经消灭了没有前景的项目和追逐轻松赚钱的员工队伍。
  • 对于下一层次的演变,工具需要改进:这包括面向终端用户的元素(钱包,DApps),面向专业的元素(数据可用性和格式),以及安全(更好的智能合约语言,防止编写可利用的代码)。

我们预计,随着行业的变化和发展,整合和访问数据的需求将对Python库和工具产生更多需求。只要软件开发者愿意探索,就可以在这个领域找到很多机会。

评论

所有评论

推荐阅读

  • 3月28日现货比特币ETF净流入达1.79亿美元

    链上数据监测平台Spot on Chain在社交媒体上发文表示,现货比特币ETF3月28日净流入达1.79亿美元,与前一个交易日相比下降26.9%,54个交易日后,累计净流入总额回到121.3亿美元,即上一个全负交易周之前的水平。贝莱德IBIT和灰度GBTC在3月28日的单日流入和流出量都明显放缓。

  • 比特币现货 ETF 昨日总净流入 1.79 亿美元,ETF 净资产比率达 4.25%

    根据 SoSoValue 数据,昨日(美东时间 3 月 28 日)比特币现货 ETF 总净流入 1.79 亿美元。

  • 以太坊铭文ETHS 24H涨幅超95%

    CoinGecko 数据显示,以太坊铭文 ETHS 24H 涨幅 95.9%,现报 7.51 USDT。此前,以太坊创始人 Vitalik 发布最新长文《Ethereum has blobs. Where do we go from here?》。受此消息影响,以太坊铭文价格 ETHS 大涨。

  • 3月29日早间要闻速递

    1.FTX创始人被判25年监禁,返还110亿美元,律师将上诉

  • Vitalik:随着L2交易成本的降低,以太坊没有理由不被广泛采用

    随着以太坊Dencun升级和引入blobs之后,以太坊创始人Vitalik Buterin就以太坊扩展的未来方向分享了自己的见解。Vitalik强调了以太坊扩展的转变,即从基础扩展工作转向集中、渐进的增强。Vitalik还表示,开发者的关注点将转向应用层。以太坊将保持以L2为中心的路线图,应用程序将从L1迁移到L2,以受益于更快、更具成本效益的交易。即将推出的一项升级是数据可用性采样(DAS),旨在将每个插槽的数据空间增加到16 MB。渐进式扩展改进包括逐步增加blob容量、改进数据压缩和EIP-7623(旨在减少最大区块大小)。 Vitalik指出,随着L2交易成本的降低,以太坊没有理由不被广泛采用。

  • Parallel Studios获得3500万美元融资,计划扩大Parallel宇宙影响力并推出AI驱动的Colony游戏

    区块链游戏开发公司Parallel Studios宣布获得了来自多家知名机构和天使投资人的3500万美元融资,其中包括投资管理巨头VanEck、Solana Ventures、Collab + Currency等。这笔融资将用于扩大用户规模、推出新游戏、在全球市场进行付费广告等。此外,该公司还计划在未来几个月内在Epic Games Store和Steam上推出游戏,并在Solana上推出基于AI的Colony游戏。

  • RWA项目Midas完成875万美元的种子轮融资

    RWA 项目 Midas 完成 875 万美元的种子轮融资,由 BlockTower、Framework 以及 HV Capital 领投,Coinbase Ventures、Ledger、GSR、Hack VC、Axelar 以及 FJ Labs 等机构参投。 据悉,Midas 是资产代币化项目,mTBILL 作为 Midas 率先推出的产品将跟踪短期美国国债,每个 mTBILL 代币代表贝莱德国债 ETF 中的一股。

  • FTX创始人被判25年监禁,返还110亿美元,律师将上诉

    FTX创始人Sam Bankman-Fried因七项罪名被判刑25年,并被命令支付超过110亿美元的罚款。他在联邦法院向前客户道歉,称自己的“有用寿命可能已经结束”。FTX在2021年至2022年之间损失数十亿美元,导致公司破产。纽约地区法院法官Lewis Kaplan确定在这起诈骗案中,FTX客户损失了80亿美元,投资者损失了约17亿美元,贷款人损失了13亿美元。代表Bankman-Fried的律师请求轻判5至6年,但被指责“逻辑上有缺陷”和“误导性”。

  • SBF 被命令没收超 110 亿美元

    SBF 被命令没收超 110 亿美元。SBF 现已被判处 25 年监禁。

  • FTX和Alameda Research联合创始人因涉嫌欺诈和洗钱被判入狱25年

    加密货币交易所FTX和交易公司Alameda Research的联合创始人兼前首席执行官Sam Bankman-Fried因欺诈和洗钱罪名被南纽约地区法院法官判处25年监禁,他的潜在总刑期为110年。此次判决可能会对整个加密货币行业产生影响,因为法官需要考虑惩罚的必要性,以遏制其他白领罪犯和加密领域的不良行为者。在几天前,该交易所申请破产,并且Bankman-Fried辞去了CEO的职务。他的审判和前几个月揭示出问题比最初想象的要大得多,因为Bankman-Fried和其他高管滥用了超过80亿美元的客户资金。