@digitalbazaar/ed25519-verification-key-2018

中文文档
4.0.0发布于 2022/06/02BSD-3-ClauseES Module近 30 天下载 1.6万

一个用于生成和与 Ed25519 密钥对合作的库,用于加密-ld.

中文使用文档
文档目录15 节
  1. 目录
  2. 背景情况
  3. 警卫
  4. 安装
  5. 使用量
  6. 生成新的公用/私用密钥对
  7. 从存储导入一对密钥
  8. 只导出公钥
  9. 导出完整的公-私密密钥配对
  10. 生成和验证密钥指纹
  11. 创建签名函数
  12. 创建验证函数
  13. 贡献
  14. 商业支助
  15. 许可证

Ed25519 验证Key2018 链接数据密钥对等库 (@digitalbazaar/ed25519-核查-键-2018)

Node.js CI

Javascript 库用于生成并和 Ed25519VerificationKey2018 密钥对一起工作,用于加密-ld.

目录

背景情况

另见(相关规格):

警卫

同大多数与安全和密码学有关的工具一样 您的系统将在很大程度上取决于您的设计决定 .

安装

  • 需要节点.js 14+.

在当地安装(用于开发):

git clone https://github.com/digitalbazaar/ed25519-verification-key-2018.git
cd ed25519-verification-key-2018
npm install

使用量

生成新的公用/私用密钥对

要生成一个新的公/私密密钥配对 :

  • {string} [controller] 可选控制器 URI 或 Did 初始化 生成了密钥。 (此会输入密钥 ID. )
  • {string} [seed] 可选的确定种子值,用于生成 键.
import {Ed25519VerificationKey2018} from '@digitalbazaar/ed25519-verification-key-2018';

const edKeyPair = await Ed25519VerificationKey2018.generate();

从存储导入一对密钥

从下列数据中创建公/私密密钥对实例: 存储,使用 .from()数字 :

const serializedKeyPair = { ... };

const keyPair = await Ed25519VerificationKey2018.from(serializedKeyPair);

注意,如果您试图创建 键对通过 from() 对于一个不支持的类型,会显示错误.

只导出公钥

要导出一对的公钥 :

await keyPair.export({publicKey: true});
// ->
{ 
  id: 'did:ex:123#z6MkumafR1duPR5FZgbVu8nzX3VyhULoXNpq9rpjhfaiMQmx',
  controller: 'did:ex:123',
  type: 'Ed25519VerificationKey2018',
  publicKeyBase58: 'GKKcpmPU3sanTBkoDZq9fwwysu4x7VaUTquosPchSBza'
}
*/

导出完整的公-私密密钥配对

要导出完整一对密钥, 包括私钥( 警告 : 这应该是 仔细考虑的操作,最好留给专用密钥管理系统:

await keyPair.export({publicKey: true, privateKey: true});
// ->
{
  id: 'did:ex:123#z6Mks8wJbzhWdmkQZgw7z2qHwaxPVnFsFmEZSXzGkLkvhMvL',
  controller: 'did:ex:123',
  type: 'Ed25519VerificationKey2018',
  publicKeyBase58: 'DggG1kT5JEFwTC6RJTsT6VQPgCz1qszCkX5Lv4nun98x',
  privateKeyBase58: 'sSicNq6YBSzafzYDAcuduRmdHtnrZRJ7CbvjzdQhC45ewwvQeuqbM2dNwS9RCf6buUJGu6N3rBy6oLSpMwha8tc'
}

生成和验证密钥指纹

要生成指纹 :

keyPair.fingerprint();
// ->
'z6Mks8wJbzhWdmkQZgw7z2qHwaxPVnFsFmEZSXzGkLkvhMvL'

为了验证指纹:

const fingerprint = 'z6Mks8wJbzhWdmkQZgw7z2qHwaxPVnFsFmEZSXzGkLkvhMvL';
keyPair.verifyFingerprint({fingerprint});
// ->
{ valid: true }

创建签名函数

为了执行加密签名,您需要创建 sign 函数,然后引用它.

const keyPair = Ed25519VerificationKey2018.generate();

const {sign} = keyPair.signer();

const data = 'test data to sign';
const signatureValue = await sign({data});

创建验证函数

为了验证密码签名,您需要创建 verify 函数,然后引用它(通过数据验证,和签名).

const keyPair = Ed25519VerificationKey2018.generate();

const {verify} = keyPair.verifier();

const {valid} = await verify({data, signature});

贡献

见 贡献文件来啊!

公关接受.

请遵照 标准读取 规格.

商业支助

该图书馆的商务支助可应下列请求提供: 数字集市: 支持@ digitalbazaar.com

许可证

新建 BSD 许可证( 3- clause) 数字集市

版本与发布记录

@digitalbazaar/ed25519-verification-key-2018 共发布 12 个版本,首次发布于 2020/07/25;过去 12 个月发布了 0 个版本。

版本发布日期距今
4.0.0latest2022/06/024 年前
3.2.02022/05/064 年前
3.1.22022/02/164 年前
3.1.12021/04/095 年前
3.1.02021/04/035 年前
3.0.02021/03/175 年前

关于 @digitalbazaar/ed25519-verification-key-2018 的常见问题

@digitalbazaar/ed25519-verification-key-2018 是什么?

一个用于生成和与 Ed25519 密钥对合作的库,用于加密-ld.

如何安装 @digitalbazaar/ed25519-verification-key-2018?

在项目目录运行 npm install @digitalbazaar/ed25519-verification-key-2018,或使用 pnpm add / yarn add / bun add。

@digitalbazaar/ed25519-verification-key-2018 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/digitalbazaar__ed25519-verification-key-2018 是否存在。

@digitalbazaar/ed25519-verification-key-2018 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@digitalbazaar/ed25519-verification-key-2018 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=14。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@digitalbazaar/ed25519-verification-key-2018 可以商用吗?

@digitalbazaar/ed25519-verification-key-2018 使用 BSD-3-Clause 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。另外不得用原作者名义为衍生产品背书。以上为概括,不构成法律意见,请以许可原文为准。

@digitalbazaar/ed25519-verification-key-2018 的下载量有多少?

根据 npm 官方下载统计,@digitalbazaar/ed25519-verification-key-2018 在 2026/10/12 – 2026/11/10 这 30 天内被下载 15,946 次,日均约 532 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@digitalbazaar/ed25519-verification-key-2018 还在维护吗?

最新版本 4.0.0 发布于 2022/06/02(4 年前);至今共发布 12 个版本,其中过去 12 个月发布了 0 个;首次发布于 2020/07/25。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。