npm 包 @cennznet/crml-attestation 使用教程

阅读时长 5 分钟读完

简介

在基于区块链的去中心化应用(DApp)中,身份验证是必不可少的。@cennznet/crml-attestation 是一个 npm 包,它为应用程序提供了身份验证服务。它使用 Polkadot 网络上的 CRML(链间关系元语言)模块,允许用户创建和验证自定义证明类型(身份验证)。

安装

使用 npm 安装 @cennznet/crml-attestation :

配置

在使用 @cennznet/crml-attestation 前,需要进行一些配置。

-- -------------------- ---- -------
----- - ---------- - - ------------------------
----- - ------------- - - -------------------------------------

----- -------- ------------------------------ -
  ----- --- - ----- -------------------
    --------- ---------
    ---
  --
  ------ ------------------
-

首先,使用 ApiPromise 创建 Polkadot API 。然后,调用 createCRMLApi 其输出用于操作 CRML 证明。

创建一个自定义证明

下面是如何创建一个示例证明:

-- -------------------- ---- -------
----- - -------- - - -------------------------
-- ---------------------------
----- ----------- - --------------------------------------------------

----- ----- - -
  -------- -
    ------ ---------
  --
  ----- -
    ------ ---------------------
  -
-
----- ---------------------------------- ------

这段代码创建了一个名为 subType,值为 0x0101,证书值为 0x4567... 的证明。

验证一个证明

使用以下代码验证证明:

-- -------------------- ---- -------
----- - -------- - - -------------------------
----- ----------- - --------------------------------------------------
----- ------- - ---

----- ----- - -
  -------- -
    ------ ---------
  --
  ----- -
    ------ ---------------------
  -
-

----- ---- - ----- ----------------------------- ------------
----- -------- - ----- ---------------------------- ------------ ---------------- --------
-- ---------- -
  -------------------
- ---- -
  --------------------
-

这段代码通过获取证明哈希值并对其进行验证,确定证明是否正确。如果证明通过,则输出“证明通过”;否则输出“证明不通过”。

组合证明

@cennznet/crml-attestation 还允许用户组合多个证明。如下面的代码所示,通过将证明数组作为参数传递,将多个证明组合到一起:

-- -------------------- ---- -------
----- - -------- - - -------------------------
----- ----------- - --------------------------------------------------
----- -------- - --- -- --

----- ------ - -
  -------- -
    ------ ---------
  --
  ----- -
    ------ ---------------------
  -
-

----- ------ - -
  -------- -
    ------ ---------
  --
  ----- -
    ------ ---------------------
  -
-

----- ------------ - ----- --------------------------------------- -------- ------------
----- -------- - ----- -------------------------------------- -------- ------------ ------------------------ ---------
-- ---------- -
  -------------------
- ---- -
  --------------------
-

总结

@cennznet/crml-attestation 允许用户创建和验证自定义的身份验证证明。在使用之前需要进行简单的配置,然后可以轻松地创建证明,验证证明、组合证明。这对于基于区块链的身份验证服务是非常有用的。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/cennznet-crml-attestation