Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

function createPrivateKey missing

未关闭
#240 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
5/5
预计耗时
一周以上
新手友好度
30/100
Issue 类型
功能
描述清晰度
基本清楚
活跃度
停滞
技术栈
javascript
领域
security

调研方向

该 issue 将缺失的 node:crypto createPrivateKey export 和 crypto-browserify package 确定为起点。检查该 package 现有的 key 和 signing API,然后将其与 @permaweb/aoconnect 的 dist/index.js 中显示的所需 JWK 输入进行比较。当 browser polyfill 暴露所需的函数,并且报告的 import 不再失败时,即表示完成。

由索引模型根据 Issue 内容生成。

描述

I am working on a Lynx project and using their polyfills package which uses crypto-browserify for polyfilling the crypto package.

I am also using @permaweb/aoconnect package which relies on the createPrivateKey function from node:crypto, which seems to be missing from crypto-browserify, and results in the following error:

File: /Users/weeblet/Developer/ARWEAVE/FWD/subspace/mobileapp/node_modules/@permaweb/aoconnect/dist/index.js|react:main-thread:1:1
  × ESModulesLinkingError: export 'createPrivateKey' (imported as 'createPrivateKey') was not found in 'node:crypto' (possible exports: Cipher, Cipheriv, Decipher, Decipheriv, DiffieHellman, DiffieHellmanGroup, Hash, Hmac, Sign, Verify, constants, createCipher, createCipheriv, createCredentials, createDecipher, createDecipheriv, createDiffieHellman, createDiffieHellmanGroup, createECDH, createHash, createHmac, createSign, createVerify, getCiphers, getDiffieHellman, getHashes, listCiphers, pbkdf2, pbkdf2Sync, privateDecrypt, privateEncrypt, prng, pseudoRandomBytes, publicDecrypt, publicEncrypt, randomBytes, randomFill, randomFillSync, rng)
      ╭─[1876:23]
 1874 │ function createSigner(wallet) {
 1875 │     const publicKey = Buffer.from(wallet.n, "base64url");
 1876 │     const privateKey = createPrivateKey({
      ·                        ────────────────
 1877 │         key: wallet,
 1878 │         format: "jwk"
      ╰────

 @ ./src/App.tsx
 @ ./src/index.tsx

are there any plans for adding the missing function(s) to crypto-browserify?

Thanks

主要语言
JavaScript
星标
681
派生
209
PR 合并指标
30 天内没有已合并 PR

环境准备

这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

browserify/crypto-browserify 的其他 Issue

查看 browserify/crypto-browserify 的全部 Issue

相似的 Issue

更多 JavaScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。