首页
学习
活动
专区
圈层
工具
发布

写给Solidity开发者的Solana入门指南

这篇介绍 以太坊与 Solana 的编程模型比较,基本上它只是在 ETH 与 SOL 中如何写程序的概念性差异。 我们不会去讨论 Solana 在背后是如何工作,比如它的历史证明(POH)等等。...当你部署这个合约,代码和它的状态一起被存储在一个地址。你可以使用该地址来引用合约并读取其数据(例如,在 Etherscan 上)。 但 Solana 是不同的。 Solana 合约是无状态的。...为了创建一个账户,Solana 需要在其存储上分配空间。Solana 的存储空间不是免费的,所以创建一个账户也不是免费的。你需要向 Solana 支付租金来 托管账户。但是不要担心。...以下是一个 Solana 账户中存储的所有内容的摘要: 来自 Solana wiki[5] data字段要么存储代码,要么存储任意数据,取决于账户是否是可执行(executable)。...以下是存储在以太坊账户中的内容,供比较: 来自 Solana wiki[6] codeHash是用来存储代码的,storageRoot是用来存储任意数据的。

1.4K30

5 个步骤创建 Solana 代币

第 2 步:如何创建 Solana 代币——创建钱包并获取测试网 SOL 创建 Solana 代币的第二步涉及生成“文件系统钱包”并获取一些测试网 SOL。我们需要它来支付网络上的交易费用。...因此,让我们从创建钱包开始,这是通过以下命令完成的: solana-keygen new --no-outfile 现在你有了钱包,你可以通过检查钱包的 SOL 余额来确保一切正常: solana balance...然后,你可以使用与之前相同的命令来检查你是否在正确的集群上,如果是,只需通过此命令获取测试网 SOL: solana airdrop 1 如何创建 Solana 代币——创建同质化代币 现在有了钱包和测试网...然后,你可以通过使用我们之前使用的相同命令检查余额来确保一切正常。 就是这样!这就是创建同质化 SPL 代币的简单之处。接下来,我们将创建一个 Solana NFT!...可以通过从 Phantom 钱包界面顶部复制来获取钱包地址。输入正确的信息后,你需要做的就是运行命令,代币应该会转移。

3K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    如何使用钱包管理您的 ROSE 代币

    代币持有者可以选择将他们的 ROSE 保留在交易所,完全依赖于其安全措施;但是,Oasis Network 也让个人成为自己的银行,并支持一系列钱包解决方案来存储和管理 ROSE 代币。...本指南将带您了解各种硬件、网络和移动钱包,所有这些钱包都支持抵押和代币持有。 我可以使用哪些钱包来管理我的 ROSE 代币?...这两个钱包都结合了使用基于 Web 的用户界面的简单性和将您帐户的私钥存储在 Ledger 钱包上的安全性。 那么,让我们开始吧!...您可以通过连接 Ledger 钱包来登录。 或者您可以使用现有的 Oasis 地址登录。 您还可以通过 RockX 钱包轻松质押和/或委托 ROSE 代币。...此外,比特派钱包还兼容许多其他加密资产,包括 BTC、ETH 和 USDT。 以下是如何开始使用您的移动设备。 前往https://bitpie.com下载 Bitpie 钱包。

    1.3K20

    币圈再次受攻击损失400万美元,9000多个钱包被破解

    7 月,Web3 因漏洞、黑客攻击行为造成了近 6500 万美元的损失。...短短一个月内就频频爆发这么多事故,才消化完Nomad 跨链桥被黑,Solana 生态系统又是如何被攻破的?...原因排查 Solana Status甩锅Slope私钥外泄 Solana Status 8 月 4 日凌晨四点连发了 3 条推特表示:“受影响的地址似乎都曾在 Slope 钱包移动端中使用过“所以推测攻击发生原因疑似与...随即他又表示:“这个漏洞被隔离到 Solana 的一个钱包,Slope 使用的硬件钱包仍然是安全的。虽然具体攻击细节还在调查,但应是用户私钥资讯错误地被传输到了监控应用程式里。”...以自己的阅历和洞见来解答程序员们所面临的普遍疑惑

    49120

    如何在Solana上铸造一个NFT

    Solana 的目标很单一。目标是扩大区块链的规模,以便在全球范围内采用。Solana 实验室,Solana 协议的开发者,正在做一些不同的事情来实现这个梦想。...这就是节点如何一起沟通以得出相同的结论。比特币使用工作证明[5]或 PoW。币安智能链,也被称为 BSC,使用Staked Authority 证明[6]或 PoSA。...连接到 Solana 在你选择的编辑器中打开SolanaNFT项目目录,让我们开始编写一些代码来连接到 Solana!...现在让我们把它按行解析: 第 2 行:我们使用之前导入的Keypair类,通过调用generate() 方法来生成一个新的密钥对。这将创建一对新的公钥和私钥,并将其存储在 fromWallet。...密钥 -> 钱包 -> 账户 -> NFT (从上到下) 创建钱包及关联账户来接收 NFT 我们有一个账户来发送 NFT,现在还需要一个账户来接收 NFT。

    2.2K30

    部署Solidity智能合约到Solana

    换句话说,你现在就可以把你用Solidity写的合约部署到Solana上了。 当然,Solana上的交易成本只是以太坊上的一小部分。那么,这一切是如何进行的呢?...确保在插件设置中选择Solana作为目标 2. 禁用工作区的solidity插件 现在让我们拿一个ERC20合约[21]来实验,这里的代码是Openzeppelin的1:1拷贝。...如果你是Dapp开发者并想连接一个钱包,可以看一下Solana钱包适配器[28]。 现在我们准备运行自己的本地Solana链。...它使用llvm[33]编译器框架来产生WebAssembly(wasm)或BPF合约代码。 它与Moonbeam[34]和Evmos[35]等克隆EVM的项目相比如何?...这意味着不支持使用EVM指令的assembly {}语句。 Solana不存在gas。有不得超过的计算预算,但没有基于使用的计算单元的收费。 不能在Solana上为外部调用设置gas。

    2.3K10

    构建你的第一个Solana NFT dApp

    我们将用 ReactJs 建立一个简单的前端,可以创建一个 NFT。我们将使用VS Code来完成这个教程。...你可以在这里,[9]阅读更多关于在 Solana 上签名交易的信息,或者你可以使用我们的在线开发工具来签名这个编码交易,可在以下链接中找到: https://shyft-insider.vercel.app...在 Solana explorer 的前一个搜索栏中粘贴返回的txnId,可以查看交易的详细信息。 现在,NFT 已经在你的钱包里收到了!!!。...-新铸造的 NFT 在你的 phantom 钱包中可见- -在请求中传递的 NFT 的属性- 结语 希望你喜欢这个教程,并对深入研究 web3 的美妙之处感到兴奋。请继续关注更多此类教程。...资源 SHYFT API 文档[12] Shyft 网站[13] 获取 API 密钥[14] GitHub[15] Solana 交易签名工具[16] 加入我们的Discord[17] 谢谢你的时间。

    1.1K30

    区块链Web3系统的开发

    Remix IDE: 基于Web的智能合约开发环境,适合初学者。智能合约安全: 理解常见的智能合约漏洞(如重入攻击、整数溢出)以及如何进行代码审计和形式化验证。3....WalletConnect: 用于连接各种移动端钱包和桌面浏览器应用。钱包集成: 支持主流的加密货币钱包,如 MetaMask, Trust Wallet 等,允许用户管理其数字资产和签署交易。...开发运维 (DevOps): 自动化部署、监控和扩展Web3系统,包括使用Docker、Kubernetes 等容器化和编排工具。...开发流程中的关键技术实践:敏捷开发: Web3领域变化快速,采用敏捷开发方法有助于快速迭代和响应需求变化。代码版本控制: 使用 Git 进行代码管理和协作。...安全最佳实践: 在各个层面实施严格的安全措施,包括代码安全、密钥管理、访问控制和审计。

    23510

    如何使用Python的Flask和谷歌app Engine来构建一个web app

    前言 如果您想在很短的时间内使用Python构建web应用程序,那么Flask是一个非常好的选择。Flask是一个小而强大的web框架。它也很容易学习和简单的代码。...在本教程中,我将向您展示如何使用API构建一个包含一些动态内容的简单天气应用程序。本教程是初学者的一个很好的起点。您将学习如何从api构建动态内容并将其部署到谷歌云上。...要创建天气应用程序,我们需要从开放的天气图请求一个API密钥。...1、安装Flask 我们将使用一个虚拟环境来构建这个项目。但是我们为什么需要一个呢? 使用虚拟环境,您可以为每个项目创建一个特定的本地环境。您可以选择要使用的库,而不会影响您的电脑环境。...下一步是在开放天气图上申请一个免费的API密钥: ? 4、使用Jinja、HTML和CSS创建页面(前端) 这一步是关于创建用户将看到的内容。

    2.1K40

    NFT 桥接在 Web3 空间中的重要性!

    现在,您决定将 NFT 转移到 Solana,因为您觉得区块链的性能优于现有网络,并打算在 Solana 上构建您的 Web3 投资组合。...然后,您转到 NFT 桥接应用程序并设置“从”和“到”区块链,在本例中分别为以太坊和 Solana。 检查桥是否支持将 NFT 从以太坊传输到 Solana 后,您需要将您的加密钱包链接到应用程序。...对于 Solana,您可以使用 Explorer、SolScan 和 SolanaFM 等平台。 使用先进的 NFT 桥使跨链交易无缝且无需信任! 哪些 Web3 元素会受到 NFT 桥接的影响?...品牌和创作者发布的 NFT 系列也可以利用 NFT 桥接平台,通过吸引跨区块链的受众来扩大影响范围。...去中心化金融 (DeFi) 应用程序可以利用桥接来增加加密货币的流动性,同时使用户能够使用来自不同链的 NFT 作为抵押品。

    69950

    我是如何使用Python来自动化我的婚礼的

    追踪人们是否接收到邀请,以及他们是否想要来参加提供免费食物和饮料的派对,是非常耗时的,当然,一个自动的好的?最后,邀请卡不是环境友好的,因为它们被一次性使用,并且容易丢失或错放。 回到名单。...客人名单分成几个部分: 1、你想要他来的人的名单 2、回复你的R.S.V.P的人的名单 3、回复你会来的人的名单 4、回复你回来的,并且选择了食物的人的名单 但是名单是好的。...在绘制一个MVP并且考虑数据库的时候,我想要某些易于分享的东西,并且不想要浪费时间来构建视图。偶然发现的gspread python库使得我能够读写谷歌电子表格。...(发送给客人的邮件数,稍后它会派上用场) 主要数据输入完成后,我使用gspread来遍历列表,并且发送短信给每一个具有与之相关联的手机号码的客人:Sheets.py import json import...接下来,我使用Flask作为我的web服务器,然后设置我的Twilio消息请求URL指向/messages url,并创建简单的if语句来解析回复 (yes, no):hello_guest.py @app.route

    3.2K80

    Web3软件系统的开发框架

    前端开发框架和库用于构建 Web3 应用的用户界面并与区块链进行交互。Web3.js: 特点: JavaScript 库,允许开发者使用 HTTP 或 IPC 连接与本地或远程以太坊节点进行交互。...在现代 Web3 前端开发中越来越受欢迎。Wagmi: 特点: 专为 React 开发的 Web3 hooks 库,极大地简化了与 Ethereum 钱包和智能合约的交互。...提供了 hooks 来连接钱包、获取余额、发送交易、读取/写入合约等。ConnectKit / RainbowKit: 特点: 提供开箱即用的钱包连接组件库,方便用户快速连接各种加密货币钱包。...开发者可以构建 Subgraph 来定义如何索引智能合约事件和数据,然后通过 GraphQL 查询这些数据,提高数据获取效率。4....选择合适的 Web3 开发框架取决于项目需求、目标区块链平台、团队的技术栈以及对开发效率和性能的要求。通常情况下,一个完整的 Web3 项目会结合使用多种框架和工具来构建不同的组件。

    11910

    如何使用 HTTP Headers 来保护你的 Web 应用

    开发者可以利用 HTTP 响应头来加强 Web 应用程序的安全性,通常只需要添加几行代码即可。本文将介绍 web 开发者如何利用 HTTP Headers 来构建安全的应用。...我们如何帮助用户避免这些攻击,并更好地推行 HTTPS 的使用呢?使用 HTTP 严格传输安全头(HSTS)。简单来说,HSTS 确保与源主机间的所有通信都使用 HTTPS。...web 应用程序会如何处理在 URL 中嵌入的恶意可执行代码,例如: https://mywebapp.com/search?...CSP 是一个相对复杂的响应头,它有很多种指令,在这里我不详细展开了,可以参考 HTML5 Rocks 里一篇很棒的教程,其中提供了 CSP 的概述,我非常推荐阅读它来学习如何在你的 web 应用中使用...HTTP 响应头来加强 web 应用的安全性,防止攻击和减轻漏洞。

    1.4K10

    如何在 Sollet 网络钱包中创建 Solana 钱包

    在今天的指南中,我们将告诉您如何在 Sollet 网络钱包中质押 Solana (SOL) 代币。...注意:作为客户端浏览器钱包,钱包密钥存储在您的本地存储中,可以使用密码加密。 当您创建一个新钱包时,您将获得一个 24 字的助记词种子。安全备份此信息非常重要。...在第 2 步中,使用密码加密您的钱包种子。通常,您只需输入密码即可关闭钱包并访问 sollet.io 钱包。 4. 创建密码 如果您忘记了passwor d您需要使用您的种子的话,恢复你的钱包。...此外,如果您清除浏览器缓存,则无法使用密码登录。您需要使用种子词再次恢复钱包。 选择密码后,单击创建钱包,钱包将为您生成一个新的 SOL (Solana) 地址。...导出密钥/助记符 如果您在初始钱包设置期间未能复制助记备份短语,或者如果您不确定是否获得了正确的备份短语,您可以随时将其导出。 单击右上角的帐户菜单,然后单击导出助记符。输入密码以显示助记符。

    3.4K40

    Discourse 如何不使用 Let’s Encrypt 而使用 CA 签名的密钥进行安装

    通过访问密钥签发机构上面提供的信息了解到:Let’s Encrypt 针对一个域名只会在一定时间内签发 5 次,如果你超过了签发的次数,你需要 5 天后才能再次申请。.../13847 购买 SSL 首先你获得已经对你域名签名的密钥,这个密钥通常的格式是 key 和 crt。...你在安装的时候的 key 文件需要命名为 ssl.key,你的 crt 文件需要命名为 ssl.crt。 你不能将你的密钥命名为其他名称,文件名要和上面的要求一致。..." # - "templates/web.letsencrypt.ssl.template.yml" 上面的这个配置这样注释的意图就是,启用 ssl 的配置,但是撤销使用 letsencrypt 的...当编译部署完成后,使用命令: ./launcher logs app 查看编译的结果,如果没有任何错误,表示编译部署成功,你的网站应该使用的是你自己的密钥了。

    1.3K11

    Web内容如何影响电池的使用

    在这篇文章里,我们将讨论影响电池寿命的因素,以及作为一个web开发者,我们如何让网页耗电更少,以便用户有更多时间来关注我们的内容。 是什么在耗电?...系统根据当前正在处理的任务调整CPU和GPU性能,包括在Web浏览器中用户正在交互的网页以及使用Web内容的其他应用程序。这是通过打开或关闭某些组件以及通过更改其时钟频率来完成的。...测量CPU使用的最佳方法是使用Web Inspector,就像之前文章里所说的,时间线面板可以显示任意选定时间范围内的CPU活动。 ?...为了高效地使用CPU,WebKit尽可能在多核上分配工作(使用Workers的页面也可以使用多核)。Web Inspector提供与页面主线程同时运行的线程的细分图表。...如果要深入挖掘,你可以使用Web Inspector的JavaScript profiler来查看时间都用在哪些地方。

    2.4K20

    如何使用 Set 来提高代码的性能

    但是如果想让你的代码尽可能快速和可扩展,那么这些基本类型并不总是足够好。 在本文中,我们将讨论JS 中Set对象如何让代码更快— 特别扩展性方便。 Array 和Set工作方式存在大量的交叉。...set不使用索引,而是使用键对数据排序。set 中的元素按插入顺序是可迭代的,它不能包含任何重复的数据。换句话说,set中的每一项都必须是惟一的。...删除元素:在Set中,可以根据每项的的 value 来删除该项。在数组中,等价的方法是使用基于元素的索引的splice()。与前一点一样,依赖于索引的速度很慢。...保存 NaN:不能使用indexOf()或 includes() 来查找值 NaN,而 Set 可以保存此值。...set.add(sum - n))(new Set)); 因为Set.prototype.has()的时间复杂度仅为O(1),所以使用 Set 来代替数组,最终使整个解决方案的线性运行时为O(N)。

    2K10

    如何使用 Set 来提高代码的性能

    对于许多用例,这些都是需要的。但是如果想让你的代码尽可能快速和可扩展,那么这些基本类型并不总是足够好。 在本文中,我们将讨论JS 中 Set对象如何让代码更快— 特别扩展性方便。...set不使用索引,而是使用键对数据排序。 set 中的元素按插入顺序是可迭代的,它不能包含任何重复的数据。换句话说, set中的每一项都必须是惟一的。...删除元素:在 Set中,可以根据每项的的 value 来删除该项。在数组中,等价的方法是使用基于元素的索引的 splice()。与前一点一样,依赖于索引的速度很慢。...保存 NaN:不能使用 indexOf()或 includes() 来查找值 NaN,而 Set 可以保存此值。...set.add(sum - n))(new Set)); 因为 Set.prototype.has()的时间复杂度仅为 O(1),所以使用 Set 来代替数组,最终使整个解决方案的线性运行时为 O(N)

    1.6K30

    如何使用Mantra在JS文件或Web页面中搜索泄漏的API密钥

    关于Mantra Mantra是一款功能强大的API密钥扫描与提取工具,该工具基于Go语言开发,其主要目标就是帮助广大研究人员在JavaScript文件或HTML页面中搜索泄漏的API密钥。...Mantra可以通过检查网页和脚本文件的源代码来查找与API密钥相同或相似的字符串。这些密钥通常用于对第三方API等在线服务进行身份验证,而且这些密钥属于机密/高度敏感信息,不应公开共享。...通过使用此工具,开发人员可以快速识别API密钥是否泄漏,并在泄漏之前采取措施解决问题。...除此之外,该工具对安全研究人员也很有用,他们可以使用该工具来验证使用外部API的应用程序和网站是否充分保护了其密钥的安全。...总而言之,Mantra是一个高效而准确的解决方案,有助于保护你的API密钥并防止敏感信息泄露。 工具下载 由于该工具基于Go语言开发,因此我们首先需要在本地设备上安装并配置好Go语言环境。

    1.6K20
    领券