Skip to content

Conversation

@hayes-mysten
Copy link
Contributor

Summary

  • Updates @scure/base to 2.x
  • Updates @scure/bip32 to 2.x
  • Updates @scure/bip39 to 2.x
  • Updates @noble/hashes to 2.x (includes import path changes)
  • Updates @noble/curves to 2.x (includes API changes)

Each dependency update is in a separate commit with its corresponding code changes for easier review.

Test plan

  • Unit tests pass after each commit
  • Build succeeds after each commit
  • Final state has zero diff from sdk-v2 branch

🤖 Generated with Claude Code

hayes-mysten and others added 5 commits January 21, 2026 10:51
Bump @scure/base from ^1.2.6 to ^2.0.0 in packages/bcs, packages/utils,
and packages/sui.

No code changes required for this upgrade.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Bump @scure/bip32 from ^1.7.0 to ^2.0.1 in packages/sui.

No code changes required for this upgrade.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Bump @scure/bip39 from ^1.6.0 to ^2.0.1 in packages/sui.

No code changes required for this upgrade.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Bump @noble/hashes from ^1.8.0 to ^2.0.1.

Code changes:
- Update import paths for module reorganization:
  - @noble/hashes/sha256 -> @noble/hashes/sha2.js
  - @noble/hashes/sha512 -> @noble/hashes/sha2.js
  - @noble/hashes/blake2b -> @noble/hashes/blake2.js
  - @noble/hashes/sha3 -> @noble/hashes/sha3.js
  - @noble/hashes/hmac -> @noble/hashes/hmac.js
  - @noble/hashes/utils -> @noble/hashes/utils.js
- hmac.create now requires Uint8Array key instead of string

Affected packages: @mysten/sui, @mysten/seal, @mysten/deepbook-v3

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Bump @noble/curves from =1.9.4 to ^2.0.1.

Code changes:
- Update import paths:
  - @noble/curves/p256 -> @noble/curves/nist.js (as p256)
  - @noble/curves/secp256k1 -> @noble/curves/secp256k1.js
  - @noble/curves/ed25519 -> @noble/curves/ed25519.js
  - @noble/curves/bls12-381 -> @noble/curves/bls12-381.js
  - @noble/curves/abstract/utils -> @noble/curves/utils.js
- API changes:
  - randomPrivateKey() -> randomSecretKey()
  - Signature.fromCompact() -> Signature.fromBytes()
  - Signature.toCompactRawBytes() -> Signature.toBytes('compact')
  - Signature.fromDER() -> Signature.fromBytes(sig, 'der')
  - normalizeS() -> hasHighS() + manual low-S normalization
  - ProjectivePoint -> Point
  - toRawBytes() -> toBytes()
  - verifyShortSignature() -> shortSignatures.verify() + hash()
  - sign() now handles prehashing internally

Affected packages: @mysten/sui, @mysten/seal, @mysten/signers

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@hayes-mysten hayes-mysten requested a review from a team as a code owner January 21, 2026 19:11
@vercel
Copy link

vercel bot commented Jan 21, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Review Updated (UTC)
sui-typescript-docs Ready Ready Preview, Comment Jan 21, 2026 7:12pm

Request Review

@github-actions
Copy link
Contributor

⚠️ 🦋 Changesets Warning: This PR has changes to public npm packages, but does not contain a changeset. You can create a changeset easily by running pnpm changeset in the root of the Sui repo, and following the prompts. If your change does not need a changeset (e.g. a documentation-only change), you can ignore this message. This warning will be removed when a changeset is added to this pull request.

Learn more about Changesets.

@hayes-mysten hayes-mysten changed the title Update crypto dependencies to 2.x Update crypto dependencies to 2.x (for review only) Jan 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant