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

简介

在基于区块链的去中心化应用(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


猜你喜欢

  • npm 包 stun 使用教程

    1. 简介 STUN(Session Traversal Utilities for NAT)是一种网络协议,绕过 NAT 障碍,建立点对点通信,具有低延迟和高带宽的网络连接。

    4 年前
  • npm 包 rtc-quickconnect 使用教程

    1. 什么是 rtc-quickconnect rtc-quickconnect 是一个基于 WebRTC 技术的 npm 包,可以帮助我们快速实现视频、音频、数据实时通信。

    4 年前
  • npm 包 normalice 使用教程

    什么是 normalice normalice 是一个用于归一化数据的 JavaScript 库,它可以帮助我们将深层嵌套的数据结构转换为扁平化的结构,方便我们对数据进行处理和操作。

    4 年前
  • npm 包 run-auto 使用教程

    如果你是一个前端开发人员,那么你一定知道 npm 包管理器,它为我们的开发工作提供了诸多便利。在 npm 包的数以万计的包中,run-auto 是一个非常实用的工具包,它可以帮助我们自动处理 Java...

    4 年前
  • npm 包 require-tree 使用教程

    在前端开发中,每个项目可能涉及的文件数量非常庞大,同时每个文件都可能包含很多的函数、变量和其他代码。对于开发者而言,对这些文件和代码进行管理和维护都是非常繁琐和耗时的。

    4 年前
  • npm 包 find-plugins 使用教程

    介绍 find-plugins 是一个可以在 Node.js 中查找和加载插件的 npm 包。通过 find-plugins,我们可以轻松地通过 npm 或本地文件系统,查找并加载 Node.js 应...

    4 年前
  • npm 包 @denali-js/documenter 使用教程

    引言 在前端开发过程中,我们经常需要编写文档来记录信息和传递给其他人,因此一个好的文档工具是必不可少的。@denali-js/documenter 是一个基于 markdown 的文档生成工具,能够自...

    4 年前
  • npm 包 @d-fischer/eslint-config 使用教程

    前言 在前端开发中,代码规范是非常重要的。特别是在团队协作开发中,统一的代码规范可以让代码更加易于维护和管理。然而,在实际开发中,每个开发者的编码习惯和风格都不尽相同,为了解决这个问题,我们可以使用 ...

    4 年前
  • 前端技术文章:npm 包 react-router-hash-link 的使用教程

    介绍 react-router-hash-link 是一个非常实用的 npm 包,它可以让我们在 React 单页应用程序中使用类似于传统基于锚点的跳转。这样的跳转可以使得我们页面之间的切换变得顺畅、...

    4 年前
  • npm 包 commonmark-react-renderer 使用教程

    前言 在前端开发中,我们通常需要将 markdown 文本渲染成页面上的特定样式。常见的做法是使用一些开源的库来处理 markdown,如果需要将渲染结果展示在 React 组件中,就需要使用一些能够...

    4 年前
  • npm 包@types/react-fontawesome 使用教程

    介绍 在前端开发中,FontAwesome 是一款非常流行的图标库,而React是现在前端开发中使用较为广泛的框架之一。@types/react-fontawesome 是基于 React 的 Fon...

    4 年前
  • npm 包 @types/commonmark 使用教程

    什么是 @types/commonmark @types/commonmark 是 CommonMark 标准的 TypeScript 类型定义。它定义了节点和解析器等常用类和方法,方便在 TypeS...

    4 年前
  • npm 包 @types/phantom 使用教程

    PhantomJS 是一款基于 WebKit 的无头(headless)浏览器,它可以模拟用户在浏览器上执行的各种操作,比如页面加载、鼠标点击、键盘输入和JavaScript执行等。

    4 年前
  • npm 包 @types/csv-stringify 使用教程

    在前端开发中,处理 CSV 数据是比较常见的操作,而 csv-stringify 是一个方便快捷的 npm 包,可以帮助我们快速将 JavaScript 对象转换成 CSV 格式的字符串。

    4 年前
  • npm 包 @types/bcrypt-nodejs 使用教程

    简介 npm 是 Node.js 的包管理工具,可以方便地安装、升级和删除 Node.js 模块。@types/bcrypt-nodejs 是 bcrypt-nodejs 库的 TypeScript ...

    4 年前
  • npm 包 @coolgk/token 使用教程

    在前端开发中,经常需要处理安全相关的问题,其中的一项就是关于 token 的处理。@coolgk/token 就是一个方便处理 token 的 npm 包。 什么是 @coolgk/token @co...

    4 年前
  • npm 包 @coolgk/string 使用教程

    在前端开发中,使用到字符串的情况非常频繁。很多时候我们需要对字符串进行处理、转换、比较等操作。为了方便、高效地进行字符串操作,有很多 npm 包提供了丰富的 API 。

    4 年前
  • npm 包 @coolgk/queue 使用教程

    在前端开发中,我们经常需要使用一些算法数据结构,例如队列、栈等等。而在现代前端框架中,使用 npm 包管理这些工具已经成为常态。本文将介绍如何使用 npm 包 @coolgk/queue 实现队列算法...

    4 年前
  • npm 包 @coolgk/jwt 使用教程

    前言 随着前端技术的不断发展,Web 应用程序的安全性与可靠性越来越成为一个重要的问题。JSON Web Token (JWT) 作为一种轻量级的身份验证工具,正在越来越多的 Web 应用程序中得到使...

    4 年前
  • npm 包 @coolgk/cache 使用教程

    前言 随着现代 web 应用的快速发展,前端技术也在不断创新,一个性能高效且可重用的缓存工具变得非常重要。npm 包 @coolgk/cache 就是一种基于 JavaScript 的轻量级缓存工具,...

    4 年前

相关推荐

    暂无文章