{"id":18204591,"url":"https://github.com/pur3miish/antelope-ecc","last_synced_at":"2025-04-10T05:24:46.135Z","repository":{"id":48909597,"uuid":"328566584","full_name":"pur3miish/Antelope-ECC","owner":"pur3miish","description":"A universal JavaScript ECC digital signature and key utility package for Antelope based blockchains","archived":false,"fork":false,"pushed_at":"2025-02-25T07:30:16.000Z","size":219,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-05T07:17:45.036Z","etag":null,"topics":["antelope","antelopeio-blockchain","blockchain-technology","crypto","cryptography","javascript","sign-transactions","signature","signature-generation","signature-verification"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/antelope-ecc","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pur3miish.png","metadata":{"files":{"readme":"readme.md","changelog":"changelog.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-01-11T06:15:19.000Z","updated_at":"2025-02-25T07:30:20.000Z","dependencies_parsed_at":"2024-03-07T04:27:50.069Z","dependency_job_id":"2a6e997e-59b6-4892-8f28-8dd4ebdd5ca7","html_url":"https://github.com/pur3miish/Antelope-ECC","commit_stats":{"total_commits":127,"total_committers":1,"mean_commits":127.0,"dds":0.0,"last_synced_commit":"398070122b27c8b42bf1afa6fbb29e961b53a9d7"},"previous_names":["pur3miish/eos-ecc","pur3miish/antelope-ecc","pur3miish/eosio_ecc"],"tags_count":14,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pur3miish%2FAntelope-ECC","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pur3miish%2FAntelope-ECC/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pur3miish%2FAntelope-ECC/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pur3miish%2FAntelope-ECC/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pur3miish","download_url":"https://codeload.github.com/pur3miish/Antelope-ECC/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248161860,"owners_count":21057660,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["antelope","antelopeio-blockchain","blockchain-technology","crypto","cryptography","javascript","sign-transactions","signature","signature-generation","signature-verification"],"created_at":"2024-11-03T11:04:52.314Z","updated_at":"2025-04-10T05:24:46.126Z","avatar_url":"https://github.com/pur3miish.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"![antelope ecc logo](static/antelope-ecc.svg)\n\n# Antelope ECC\n\n[![NPM Package](https://img.shields.io/npm/v/antelope-ecc.svg)](https://www.npmjs.org/package/antelope-ecc) [![CI status](https://github.com/pur3miish/antelope-ecc/workflows/CI/badge.svg)](https://github.com/pur3miish/antelope-ecc/actions) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://github.com/pur3miish/antelope-ecc/blob/main/LICENSE)\n\nA lightweight (\\~6 KB) [universal](https://en.wikipedia.org/wiki/Isomorphic_JavaScript) JavaScript digital signature and cryptokey utilty package for Antelope based blockchains.\n\n## About\n\nantelope-ecc package is designed as an ESM (ECMAScript Module), leveraging modern JavaScript features like static imports, exports, and tree-shaking.\n\n## Requirements\n\nSupported runtime environments:\n\n- [Node.js](https://nodejs.org) versions `\u003e=18.0.0`.\n- Browsers matching the [Browserslist](https://browsersl.ist) query [`\u003e 0.5%, not OperaMini all, not dead`](https://browsersl.ist/?q=%3E+0.5%25%2C+not+OperaMini+all%2C+not+dead).\n\n## Installation\n\nFor [Node.js](https://nodejs.org), to install [`antelope-ecc`](https://npm.im/antelope-ecc) run:\n\n```sh\nnpm i antelope-ecc\n```\n\n_Ways to import in ESM_\n\n```js\nimport { sign } from \"antelope-ecc\"; // Tree shaking capabilities.\n```\n\n_As default exports_\n\n```js\nimport AntelopeECC from \"antelope-ecc\";\n```\n\n_Ways to require/import in Common JS_\n\n```js\nconst AntelopeECC = import(\"antelope-ecc\");\nAntelopeECC.then(({ sign }) =\u003e {\n  // As import is async\n});\n```\n\n**Sign a message digest.**\n\n```js\nimport { sign } from \"anteope-ecc\";\nimport { createHash } from \"crypto\";\n\nawait sign({\n  hash: createHash(\"sha256\")\n    .update(Uint8Array.from([1, 2, 3, 4, 5]))\n    .digest()\n    .toString(\"hex\"), // Uint8Array | string\n  wif_private_key: \"PVT_K1_43…\",\n}).then(console.log);\n```\n\nThe logged output will be SIG_K1…\n\n**An example of how to create a pair keys.**\n\n```js\nimport { new_keys } from \"antelope-ecc\";\n\nnew_keys().then(console.log);\n```\n\n\u003e The logged output will be an object containing PUB_K1 and PVT_K1 wif keys.\n\n**Recover public key from signature.**\n\n```js\nimport { recover_public_key } from \"antelope-ecc\";\n\nconst hash = Uint8Array.from(\n  crypto.createHash(\"sha256\").update(Buffer.from(\"ff\", \"hex\")).digest()\n); // Data signed with private key\n\nrecover_public_key({\n  signature: \"SIG_K1_…\",\n  hash,\n}).then(console.log);\n```\n\n\u003e The logged output will contain the public key “PUB_K1…” used to sign the hash.\n\n## Exports\n\nECMAScript modules deep exports are avaialble via [`package.json`](./package.json) field [`exports`](https://nodejs.org/api/packages.html#exports):\n\n- [`legacy_from_private_key.js`](./keys/legacy_from_private_key.js)\n- [`legacy_from_public_key.js`](./keys/legacy_from_public_key.js)\n- [`legacy_to_private_key.js`](./keys/legacy_to_private_key.js)\n- [`private_key_from_wif.js`](./keys/private_key_from_wif.js)\n- [`private_key_to_wif.js`](./keys/private_key_to_wif.js)\n- [`public_key_from_private_wif.js`](./keys/public_key_from_private_wif.js)\n- [`public_key_from_wif.js`](./keys/public_key_from_wif.js)\n- [`public_key_to_wif.js`](./keys/public_key_to_wif.js)\n- [`validate_private_key.js`](./keys/validate_private_key.js)\n- [`validate_public_key.js`](./keys/validate_public_key.js)\n- [`mnemonic-create.js`](./mnemonic-create.js)\n- [`mnemonic-recover.js`](./mnemonic-recover.js)\n- [`new_keys.js`](./new_keys.js)\n- [`sign_packed_txn.js`](./sign_packed_txn.js)\n- [`sign.js`](./sign.js)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpur3miish%2Fantelope-ecc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpur3miish%2Fantelope-ecc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpur3miish%2Fantelope-ecc/lists"}