{"id":16416572,"url":"https://github.com/angeal185/jquery-ecdsa","last_synced_at":"2026-05-15T18:03:24.582Z","repository":{"id":57282080,"uuid":"186796008","full_name":"angeal185/jquery-ecdsa","owner":"angeal185","description":"ecdsa jquery plugin for the browser using the webcrypto api","archived":false,"fork":false,"pushed_at":"2019-05-15T11:55:47.000Z","size":17,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-10-11T23:35:28.699Z","etag":null,"topics":["browser","ecdsa","elliptic-curve","elliptic-curve-cryptography","jquery","jquery-plugin","sign","signing","verification","verify","webcrypto","webcrypto-api"],"latest_commit_sha":null,"homepage":"https://angeal185.github.io/jquery-ecdsa","language":"JavaScript","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/angeal185.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-05-15T09:39:39.000Z","updated_at":"2019-05-15T11:51:25.000Z","dependencies_parsed_at":"2022-08-31T04:21:54.963Z","dependency_job_id":null,"html_url":"https://github.com/angeal185/jquery-ecdsa","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/angeal185%2Fjquery-ecdsa","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/angeal185%2Fjquery-ecdsa/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/angeal185%2Fjquery-ecdsa/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/angeal185%2Fjquery-ecdsa/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/angeal185","download_url":"https://codeload.github.com/angeal185/jquery-ecdsa/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240466791,"owners_count":19805862,"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":["browser","ecdsa","elliptic-curve","elliptic-curve-cryptography","jquery","jquery-plugin","sign","signing","verification","verify","webcrypto","webcrypto-api"],"created_at":"2024-10-11T07:09:34.294Z","updated_at":"2026-05-15T18:03:24.535Z","avatar_url":"https://github.com/angeal185.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# jquery-ecdsa\necdsa jquery plugin for the browser using the webcrypto api\n\nDemo: https://angeal185.github.io/jquery-ecdsa\n\n### Installation\n\nnpm\n\n```sh\n$ npm install jquery-ecdsa --save\n```\n\nbower\n\n```sh\n$ bower install jquery-ecdsa\n```\n\ngit\n```sh\n$ git clone git@github.com:angeal185/jquery-ecdsa.git\n```\n\n#### browser\n\n```html\n\u003cscript src=\"./dist/jq-ecdsa.min.js\"\u003e\u003c/script\u003e\n```\n\n#### API\n\n```javascript\n\n/**\n *  generate ecdsa keypair\n *  @param {string} curve ~ '256'/'384'/'521'\n *  @param {function} cb ~ callback function(err,res)\n **/\n\n$.ecGen(curve, cb)\n\n\n/**\n *  create signature\n *  @param {string} key ~ valid jwk\n *  @param {string} data ~ data to be signed\n *  @param {string} hash ~ '128'/'256'/'512'\n *  @param {string} digest ~ 'hex'/'base64'/'Uint8'\n *  @param {function} cb ~ callback function(err,res)\n **/\n\n$.ecSign(key, data, hash, digest, cb)\n\n\n/**\n *  verify signature\n *  @param {string} key ~ valid jwk\n *  @param {string} sig ~ valid signature\n *  @param {string} data ~ data to verify\n *  @param {string} hash ~ '128'/'256'/'512'\n *  @param {string} digest ~ 'hex'/'base64'/'Uint8'\n *  @param {function} cb ~ callback function(err,res)\n **/\n\n$.ecVerify(key, sig, data, hash, digest, cb)\n\n/**\n *  create signature\n *  @param {string} ele ~ location of data to sign\n *  @param {string} key ~ valid jwk\n *  @param {string} hash ~ '128'/'256'/'512'\n *  @param {string} digest ~ 'hex'/'base64'/'Uint8'\n *  @param {function} cb ~ callback function(err,res)\n **/\n\n$(ele).ecSign(key, hash, digest, cb)\n\n\n/**\n *  verify signature\n *  @param {string} ele ~ location of data to verify\n *  @param {string} key ~ valid jwk\n *  @param {string} sig ~ valid signature\n *  @param {string} hash ~ '128'/'256'/'512'\n *  @param {string} digest ~ 'hex'/'base64'/'Uint8'\n *  @param {function} cb ~ callback function(err,res)\n **/\n\n$(ele).ecVerify(key, sig, hash, digest, cb)\n\n\n\n//demo\n\nconst config = {\n  curve: '521', // P-521\n  hash: '512', // SHA-512\n  degest: 'hex', // hexadecimal\n  data: 'test'\n}\n\n//generate p-521 ecdsa keypair\n$.ecGen(config.curve, function(err, gen){\n  if(err){return console.log(err)}\n  console.log(gen)\n\n  //sign some data\n  $.ecSign(gen.private, config.data, config.hash, config.digest, function(err, sig){\n    if(err){return console.log(err)}\n    console.log(res)\n\n    //verify signature\n    $.ecVerify(gen.public, sig, config.data, config.hash, config.digest, function(err, res){\n      if(err){return console.log(err)}\n      if(res){\n        return console.log('ecdsa test pass')\n      }\n      return console.log('ecdsa test fail')\n    })\n  })\n\n\n  //sign some data\n  $('#data-to-sign').ecSign(gen.private, config.hash, config.digest, function(err, sig){\n    if(err){return console.log(err)}\n    console.log(res)\n\n    //verify signature\n    $('.data-to-verify').ecVerify(gen.public, sig, config.hash, config.digest, function(err, res){\n      if(err){return console.log(err)}\n      if(res){\n        return console.log('ecdsa test pass')\n      }\n      return console.log('ecdsa test fail')\n    })\n  })\n\n\n})\n\n\n\n\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fangeal185%2Fjquery-ecdsa","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fangeal185%2Fjquery-ecdsa","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fangeal185%2Fjquery-ecdsa/lists"}