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