2.1 介绍

QURAS技术旨在保护用户隐私。为了保护用户隐私,采用了两种主要的匿名技术- 零知识证明和环签名。这些匿名技术可在汇款期间和使用智能合约时保护用户隐 私。 QURAS平台的函数库是一个优秀的包库,开发人员可以在不了解加密技术的情 况下开发有关QURAS相关的匿名应用程序/功能。

2.2 QURAS 区块链结构

有关QURAS区块链系统,请参阅下图。

QURAS区块链系统
2.2 QURAS 区块链结构

根据上图,区块链中存在完整节点、轻节点和共识节点。为了维护区块链,需要存 在共识节点。共识节点是在区块链中生成区块的节点。交易验证和智能合约执行需 要在共识节点中完成。完整节点的作用是继续验证和广播已发生的交易,并充当钱 包和网站的引擎。目前,完整节点采用ZK-SNARKS算法实现。换句话说,可以提供 所有类型的交易。轻节点可被视为轻量级引擎,用于PC的轻型钱包。由于轻节点 不会下载区块链中的所有区块,因此不需要很大的存储空间。轻节点设计为单独使 用,因此它没有不必要的功能,并且仅执行钱包使用所需的功能。

2.3 P2P通信结构

区块链是一个没有特定服务器的系统,并使用P2P方法连接所有节点进行操作。这 意味着QURAS区块链中的每个节点都使用P2P方法进行通信。在传播之前,QURAS 区块链中的所有通信都由QurasMessage封装。QurasMessage的机制如下图所示。

项目 描述
网络类型(Magic) Magic是一种在QURAS区块链中区分主网络和测试网络 的类型标识符。
命令 根据此值,将确定消息的基本命令。有关该命令的详 细信息如下所述。
校验 这用于辨别负载是否与负载中的校验项一致。
消息体(负载) 通过使用命令,可以将其视为消息的基本主体。
此项的详细结构将在下面的命令部分介绍。

有关QURAS区块链中完整节点、轻节点和共识节点之间交换的通信消息结构详情, 请参阅QURAS技术文档。

2.4 QURAS钱包结构
QURAS区块链提供两种类型的代币,加密和公开发送/接收。透明电子钱包使用ECC 加密来生成私钥和公钥,并通过公钥生成地址。地址生成过程如下图所示。
QURAS钱包架构

匿名钱包有两种类型的地址:1)使用Zk-Snarks的地址和2)使用环签名的地址。

2.5 交易结构

有关交易结构,请参阅下图。

项目 描述
交易类型 根据此类型,交易结构和交易命令会更改。
版本 这是为了在更新版本时根据此处的值进行处理。
交易属性 作为交易的附加功能和相关项目,这适用于合约和特 定交易。
代币参考 代币参考用作代币的Tx输出参考,这些代币参考尚未 作为与比特币的UTXO信息相同的内容发送。
交易输出 这是接收人在发送/接收代币时的Tx输出。
脚本 此处包含交易验证和智能合约内容。

交易类型如下:
  • 矿工交易
  • 发行交易
  • 索取交易
  • 登记交易
  • 注册交易
  • 合约交易
  • 匿名交易
  • 发布交易
  • 调用交易

有关上述交易的更多信息,请参阅技术文档。

2.6 区块链结构

区块链可以看作是连接区块的聚合。区块链中的区块连接方法如下所述。

区块链结构

如上所示,区块大致由区块头和区块主体部分组成。区块头部分包含区块信息,而 区块主体部分包含交易的集合。

在区块中记录两种类型的交易 - 公开和匿名交易。公开交易包括所有交易信息,如 发送方、接收方、金额、费用等。

2.6.1 交易隐私

QURAS利用两种领先的隐私技术 - 环签名和零知识证明 - 以为网络用户提供在交易 中处理加密信息方式的选项。读者应参阅QURAS技术白皮书*,以了解有关实施机制 的详细信息。

2.6.2 透明交易

透明交易透明地址的工作方式与比特币的实现相似。首先从密钥对中随机生成私钥,然后使 用椭圆曲线加密(ECC)导出公钥。QURAS使用secp256r1标准进行公钥生成,这是 由 NSA等组织在其Suite-b加密标准.5中强制执行的

虽然比特币使用secp256k1标准进行密钥对生成,但QURAS使用替代方案作为额外的 安全措施。

2.6.3 保密交易

用户可以选择两种业界领先的隐私交易方法:zk-SNARKS(零知识证明)和环签名。前 者被认为是一种更健壮的隐私方法,但会消耗更多的系统资源来产生结果。因此, 提供环机密交易选项,为用户提供快速和轻量级的匿名交易选项。

为了适应这些交易类型,用户可以生成适当的密钥来构建交易 - 支出、接收、查 看、匿名和隐形密钥。

2.6.4 加密合约

QURAS区块链包括一个虚拟机层,用户可以使用它来部署用C#编写的智能合约, 这是一种广泛应用的编程语言。 7 开发人员可以在合约代码中使用两个关键功能: 零 知识证明和验证方法。这些功能是通用的,可以在各种用例的合约代码中实现, 在 第5节“应用程序”中会有进一步说明。

由于这些隐私方法仅仅是功能,开发人员可以自由选择使用它们来创建公开或加密 合约。每当用户使用智能合约调用(交互)时,就会消耗QURAS Gas(XQG)(有关详细 信息,请参阅第4节)。

请参阅下一页的图表。

普通交易

有两种类型的匿名交易 - 完全匿名和部分匿名。完全匿名交易意味着将隐藏所有交 易信息,包括发送方地址、接收方地址、汇款金额等。请参考下图。

部分匿名交易是指交易信息的一部分匿名,例如发送方地址、接收方地址或汇款金 额被隐藏。请参阅下图。

完全匿名交易

部分匿名交易使用zk-snarks或环签名技术来实现匿名效果。请参阅下面的部分。有 关 详细信息,请参阅技术文档。

部分匿名交易

部分匿名交易使用zk-SNARKs或环签名技术来实现匿名效果。请参阅以下所包含的 块。

有关更多详细资讯,请参阅技术论文。

区块头

PrevHash, MerkleRoot, Timestamp, BlockHash, TransactionCount







智能合约的结构

智能合约旨在让用户能够在QURAS区块链中直接创建除数字合约之外的合约。换句 话说,提供所有平台,以便用户可以使用QURAS智能合约语言开发自己独特的智能 合约,以便在QURAS区块链中执行。智能合约的结构可以看作是由QURAS 智能合约 VM提供的Opcode的组合。

编译用户的智能合约时,它将从Opcode转换为字节代码。我们的QURAS开发团队将 继续定期更新智能合约VM,为用户提供更方便的智能合约创建环境。

QURAS区块链中提供了三种类型的智能合约:

验证合约、应用合约、功能合约

有关QURAS区块链智能合约执行的具体信息,请参阅技术文档。

2.7 LevelDB的结构

QURAS节点使用LevelDB来管理区块链。一般来说,与SQLite和KyotoCabinet Tree DB相比,LevelDB具有整体优越的性能,但是当使用大数据时,性能下降。这意味 着,如果LevelDB值大约为100字节时,则会有卓越的性能。有关更多详细信息, 请 参阅技术文档。

2.8 QURAS区块链共识 算法

共识算法是调节区块链特征的重要指标。在QURAS区块链中,使用称为TSDBFT(交 易共享委托拜占庭容错共识机制)的一致性算法,用于从节点和代币管理者之间分 发智能合约交易。区块链系统是一个分布式系统,因此所有节点都通过P2P方法连 接,这意味着连接到区块链的节点有可能在任何给定时间断开连接。由于错误,节 点也可能会消失。为了达到正确的一致性,如果P2P网络中的节点存在不 可信或不 正确的节点,则需存在一定数量的正确节点。例如,假设节点的总数量是 N,而不 正确节点的数量是f,则区块链系统中区块链的安全性指数由N和f确定。当f在DBFT 算法中小于(N-1)/3,QURAS区块链系统被认为是安全的。这意味着在执 行7个共识 节点的QURAS区块链中,即使在7个共识节点中存在2个不正确或恶意的 节点,也可 以无延迟地生成正确的区块。关于代币费用分配方法的详细信息,如下所 述,执行 智能合约所需的费用由XQG支付,并且基于共同利益被恰当分配,考虑到了项目的 可持续性。

此外,QURAS共识算法将在未来更新。该计划实施一种机制,将所有XQC交易费 用分配给保留一定量XQC的用户(XQC这是QURAS平台的主要货币),使用基于重要 性证明的算法通过保留量来计算。至于交易的负载能力,目前的最高性能率约为 1000TPS,未来计划会提高性能。目标是拥有一个可以处理更大用途的分布式平 台。

2.9 智能合约手续费

每当用户在QURAS区块链中部署智能合约(包括发行代币)时,合约中产生的手续费将被分配。在QURAS区块链中部署合约的合约管理员将会获得部分用户支付的手续费,手续费将在合约管理员和QURAS共识节点之间进行分配。手续费的分配比例是动态的。

智能合约交易费的分配如下表所示:

手续费(XQG)
分配比例
小于等于 0.1
8:2*
0.1~1 (包含 1)
7.5:2.5
1~5 (包含 5)
7:3
5~10 (包含 10)
6.5:3.5
大于 10
6:4

**8:2 表示80%的交易手续费分配给QURAS共识节点,20%的交易手续费分配给合约管理员。

上表中的详细信息所示,给了合约管理员一个在一定范围内赚取智能合约交易费用的机会。正如之前所说,上述设计允许向部署合约的合约管理员返还智能合约交易费用。一般而言,智能合约交易费的返还取决于费用金额。

代币手续费分配
2.10 网络货币

由于Quras基于TSdBFT共识机制,该网络将包含两种功能不同的代币:XQC和XQG。

QURAS 代币(XQC)

XQC是Quras生态系统中价值转移的主要形式。持币用户有资格通过抵押获得XQG,以激励网络功能的使用。通过抵押XQC授与XQG,并非奖励XQC持币者利润。XQG唯一目的是支付网络交易费用(公司注意:请确认或更新XQC的其他用途)。

为避免产生疑虑,在任何情况下,XQC持币者都有权或接受(i) 任何形式的全部或部分权益(包括但不限于股权、专有权益和所有权权益), 或者XQC发行者的股份或索赔。(ii) 在XQC发行者的董事会或股东大会上的任何投票权。(iii) XQC发行者的任何管理权。 (iv) 任何经济权利(包括任何形式的支付、分配、收入、股息、利润或其他回报的权利,或者从回报或利润中支付或可能支付的任何款项), 以及(v) XQC发行者的任何利息支付。

QURAS GAS (XQG)

该网络向XQC收取费用,这是一种类似燃料的代币,用于网路运营,包括交易费用和智能合约互动,例如代币发行和功能调用。需要实现燃料代币,以保持对网络垃圾邮件的屏障 并进一步激励网络节点。XQG唯一目的是支付网络交易费用(公司注意:请确认或更新XQC的其他用途)。