专业.安全.可靠 Cardano 矿池

DETO Cardano 权益池完全基于云,并由  经过认证的 DevOps 工程师 运行, 以确保池 100% 安全、可靠并以最佳水平运行。

池的块生产节点位于 Azure Kubernetes 集群上,随着 Cardano 网络的增长,该集群可以随时轻松扩展。 为了安全起见,区块制造者节点位于中继节点之后。

公链技术

专注于交易系统软件的开发和应用,稳定,快速,安全,可定制化的服务。 开发各类直销系统软件,如:区块链XPay钱包,拆分盘,互助盘,数字货币交易所。杠杆交易系统开发。OTC开发。去中心化交易所软件。现货交易系统开发。

SPO质押

我们的权益池提供了一种安全的方法,将您的 ADA 投资回网络,每 5 天赚取一次利息。您始终可以完全控制您的 ADA,它永远不会离开您的钱包。我们 SPO(权益池运营商)可以帮助您进行设置。

技术咨询

帮助企业实施去中心化策略,我们提供构思,评估,探索和制定不同业务模型的技术和咨询服务。此外,所有服务都旨在了解区块链如何增加收入或开启新的商机并改进其IT流程.

智能合约

提供加密货币交易所软件开发、智能合约开发、钱包开发,最快7天搭建自有品牌交易所系统。开发各类直销系统软件,如:区块链XPay钱包,拆分盘,互助盘,数字货币交易所软件。

市场分析

根据已获得的市场调查资料,运用统计原理,分析市场及其销售变化。 从市场营销角度看,它是市场调查的组成部分和必然结果,又是市场预测的前提和准备过程。

DApp

帮助客户开发DApp,以使其在区块链特有的数据确权、价值传递功能方面更具的优势,同时还可以简化认证流程变更、确保交易安全、减少运维成本、降低技术开发成本。

想进一步了解我们的权益池吗?

查看Staking信息

技术博客

Plutus教程:#8 脚本

By George Z. on September 8, 2021

8. Plutus Scripts Cardano 使用脚本来验证操作。这些脚本是代码片段,使用 True 或 False 输出实现纯函数。脚本验证是调用脚本解释器以在适当的参数上运行给定脚本的过程。 8.1 什么是脚本? 脚本是一个程序,它决定花费输出的交易是否被授权这样做。这样的脚本称为验证器脚本,因为它验证是否允许支出。一个简单的验证器脚本将检查支出交易是否由特定密钥签名——这将完全复制简单的支付到公钥输出的行为。但是,通过一些仔细的扩展,我们可以使用脚本来表达链上有用的逻辑。EUTXO 模型的工作方式是验证器脚本传递三个参数: 数据(Datum):这是附加到脚本锁定的输出的一段数据(严格来说,同样,只有散列存在)。这通常用于携带状态。 Redeemer:这是一个附加到支出输入的数据。这通常用于从支出者向脚本提供输入。 上下文(Context):这是一条数据,表示有关支出交易的信息。这用于对输出的发送方式进行断言(例如“Bob 签名”)。 8.2 直观的例子 例如,一个孩子想坐摩天轮,但在上车之前,他们必须比安全标志高。我们可以用伪代码表达这个想法,比如: if isTallEnough(attraction=ferrisWheel,passenger=michael): getOnFerrisWheel() def isTallEnough(attraction,kid): return kid["height"] >= attraction["minimumHeight"] def getOnFerrisWheel(): print ("get On the Ferris Wheel") ferrisWheel = {"minimumHeight":120} michael = {"height":135} 在本例中,以下适用: 数据是关于这次交易的信息:michael.height。 上下文是世界的状态,此时的意思是:ferrisWheel.minimumHeight。 reedemer,是要执行的操作:getOnFerrisWheel() 验证器脚本是使用所有信息的函数 isTallEnough 8.3 定义示例 现在让我们看一个来自 DeFi 领域的例子。我们可以实现原子交换,如下所示: 数据包含交换双方的密钥,以及他们交换的内容的描述 救赎者未使用。 上下文包含交易的表示。 验证器脚本的逻辑如下:交易是否从第二方支付给第一方,包含他们应该发送的价值? 如果是这样,那么他们可能会花费这个输出并将其发送到他们想要的地方(或者我们可以坚持他们将其发送到他们的密钥,但我们不妨让他们用它做他们喜欢的事情)。 8.4 代码示例 您可以在每个智能合约上找到验证器脚本的真实代码示例,例如: Plutus 交易教程:在这个验证器上,它总是成功的。 Plutus Hello World:在此验证器上,如果数据等于“Hello”,则将其转换为整数。 Plutus Pioneers English Auction:在这条线上,验证器确保新的出价(数据)优于前一个,直到时间结束。 8.

Continue reading

Plutus教程:#7 使用基准和赎回者

By George Z. on September 7, 2021

7. 使用基准和赎回者 Plutus 中的两个重要元素是数据和赎回者,在这里我们将了解它们是什么以及在提交交易时如何使用这些元素。数据是一条可以与 UTXO 相关联的信息,用于携带脚本状态信息,例如其所有者或时间细节(定义何时可以使用 UTXO)。 它经常与赎回者结合使用——赎回者是交易中包含的任意信息,以向脚本提供输入。 7.1 两阶段交易验证 输入是来自先前交易的未花费输出。数据散列和值(由 ada 数量和可选的额外原生代币数量组成)存储在 UTXO 中的某个地址(公钥或公钥散列)。当脚本地址的 UTXO 是有效交易的输入时,脚本会确定是否“解锁”资金。这可以在脚本定义的特定条件(包括数据、赎回者和脚本上下文等因素的任意组合)下执行。在第一个验证阶段,交易必须由地址对应的私钥的所有者签名。 在赎回者交易的上下文中理解以下概念很重要: 脚本地址——存储资金的 Cardano 地址,由 Plutus 脚本保护,可以进一步解锁。它是 Plutus 脚本的散列。 数据哈希——在 Cardano 中,数据哈希需要附加到脚本地址处的 UTXO。这样做是为了减少内存需求并在验证交易的同时实现快速访问。 Plutus 脚本 — 账本中用于执行额外(第二阶段)交易验证的可执行程序。 数据值——发送交易赎回时,我们需要发送与锁定交易中发送的数据哈希匹配的数据值。 Redeemer 值 — 使用与数据相同的任意数据格式。 Redeemer 值附加到输入交易以从脚本解锁资金,并由脚本用于验证交易。 脚本上下文——交易的摘要,在 Plutus 脚本中也需要它来验证交易。 使用数据和赎回者的过程如下:假设 Alice 有一个带有 100 个 ADA 的 UTXO: figure-5 她想将 20 个 ADA 锁定到“datum-redeemer”脚本。 她可以通过向新的 UTXO 发送附加任意数据(即数字 42)的交易来做到这一点: figure-6 最后,有人可以用 20 个 adas 进行新的交易,这次必须指定一个赎回者: figure-7

Continue reading

Plutus教程:#6 如何写Plutus交易

By George Z. on September 6, 2021

6. 如何写 Plutus 交易 本教程概述了什么是 Plutus 事务以及如何编写它。 这是按以下顺序完成的: 在链码上写你的 Plutus。 将 Plutus on chain code 序列化为文本信封格式(cardano-cli 需要这种格式)。 使用随附的 Plutus 脚本创建您的交易。 提交交易以执行 Plutus 脚本。 6.1 什么是 Plutus 交易 交易是包含输入和输出的一段数据,从 Alonzo 时代开始,它们还可以包含 Plutus 脚本。 输入是来自先前交易 (UTxO) 的未花费输出。 一旦 UTxO 被用作交易中的输入,它就会被花费并且永远无法再次使用。 输出由地址(公钥或公钥哈希)和值(由 ADA 金额和可选的附加本机代币金额组成)指定。 这个流程图让我们更好地了解交易的组成部分在技术层面上是什么: figure-4 简而言之,输入包含对先前交易引入的 UTXO 的引用,输出是本次交易将产生的新 UTXO。此外,如果我们考虑一下,这允许我们更改智能合约的状态,因为新数据可以包含在生成的输出中。定义 Plutus Tx 是什么也很重要。 Plutus Tx 是 Haskell 程序的特殊分隔部分的名称,用于将合约应用程序的链上部分编译到 Plutus Core(此编译后的代码然后用于验证交易,因此称为“Tx”) .生成的 Plutus Core 表达式可以是交易数据的一部分,也可以是存储在账本上的数据。这些代码段需要在区块链上进行特殊处理,称为 Plutus 脚本。 6.1.1. 为什么 从 Plutus 开发人员的角度来看,通过使用事务,我们可以控制 Plutus 脚本的执行流程。因此,交易也可以被认为是用于与智能合约交互的消息。理解交易是掌握智能合约开发的关键概念。

Continue reading

Plutus教程:#5 工具

By George Z. on September 5, 2021

5. Plutus 工具 Alonzo 硬分叉通过建立基础设施并添加使用 Plutus 进行功能智能合约开发的工具,为卡尔达诺分类账带来了核心智能合约功能。 这意味着用户、开发人员和组织现在可以基于智能合约解决方案安全地构建去中心化应用程序 (DApps)。开发人员可以使用不同的工具在 Cardano 上评估和部署智能合约。 下面我们来看看这些工具、它们的主要功能并指出使用它们的确切来源。 5.1 Plutus Playground Plutus Playground 为在 Cardano 区块链上发布智能合约之前编写和测试智能合约提供了一个环境。它是一个用于探索性 Plutus 开发的轻量级、基于 Web 的环境。除了提供用于编写​​和执行智能合约的基于 Web 的模拟器外,Plutus Playground 还允许开发人员访问已编写的流行智能合约。 Plutus Playground 中提供了可帮助您入门的教程。 Plutus Playground 可通过网络浏览器访问,无需安装软件。界面分为三个部分: 编辑 模拟 交易 模拟器显示了合约在 Cardano 区块链上的表现。这样做的一个重要方面是,它可以作为不具备高级开发人员技能的人的培训工具,因为它展示了工作原理。用户可以定义和修改与合约交互的钱包,以及影响结果的操作。然后可以评估结果以查看区块链上发生了什么以及交易如何发生。有关更多信息,请观看 Plutus 应用程序编译和测试教程或访问 Plutus GitHub 存储库。 5.2 Plutus 应用程序后端(Application Backend) Plutus 应用程序后端 (PAB) 使开发人员能够与智能合约进行交互。它是一种链下后端服务,用于在整个生命周期中管理和处理应用程序实例的需求。该服务包括与外部客户端(例如钱包前端)的交互,并充当 Plutus 应用程序、节点、钱包后端和最终用户之间的中介。这种交互是通过 PAB 命令和模拟组件实现的,这些组件可以方便地模拟和集成 DApp。在接下来的几周内,随着我们迭代和添加新功能,我们将推出一系列版本的 PAB。 PAB 的目的是: 提供 Plutus 应用程序运行的标准化环境 提供纪律严明的状态管理 向外部客户端提供可发现的接口 跟踪智能合约使用的链上信息 在模拟环境中工作 处理请求,例如运行合约实例,将用户输入转发到这些实例,以及将分类帐状态更改事件通知这些实例。 下图提供了 PAB 架构的概览:

Continue reading