{"id":26975176,"url":"https://github.com/izure1/seed-fingerprint","last_synced_at":"2025-04-03T11:19:22.802Z","repository":{"id":57356503,"uuid":"350284161","full_name":"izure1/seed-fingerprint","owner":"izure1","description":"Library that generates fingerprints for clients using seed","archived":false,"fork":false,"pushed_at":"2022-06-06T09:56:28.000Z","size":1551,"stargazers_count":7,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2023-12-09T16:20:14.884Z","etag":null,"topics":["client","fingerprint","identity","seed"],"latest_commit_sha":null,"homepage":"","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/izure1.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-03-22T09:32:28.000Z","updated_at":"2023-09-20T07:20:06.000Z","dependencies_parsed_at":"2022-09-05T06:51:49.356Z","dependency_job_id":null,"html_url":"https://github.com/izure1/seed-fingerprint","commit_stats":null,"previous_names":[],"tags_count":0,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/izure1%2Fseed-fingerprint","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/izure1%2Fseed-fingerprint/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/izure1%2Fseed-fingerprint/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/izure1%2Fseed-fingerprint/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/izure1","download_url":"https://codeload.github.com/izure1/seed-fingerprint/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246989732,"owners_count":20865331,"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":["client","fingerprint","identity","seed"],"created_at":"2025-04-03T11:19:21.885Z","updated_at":"2025-04-03T11:19:22.793Z","avatar_url":"https://github.com/izure1.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# seed-fingerprint\n\n[![](https://data.jsdelivr.com/v1/package/npm/seed-fingerprint/badge)](https://www.jsdelivr.com/package/npm/seed-fingerprint)\n\n`seed-fingerprint` is a library that creates a hash that can identify users based on seeds.\n\nThe library has gained a lot of inspiration from the [https://github.com/fingerprintjs/fingerprintjs](https://github.com/fingerprintjs/fingerprintjs), and [https://github.com/pjanczyk/simple-fingerprint](https://github.com/pjanczyk/simple-fingerprint) libraries. Thank you.\n\nFor example, you may want to use fingerprints instead of tokens, but the user's finger prints can get the same value on all websites. It is not good for security because the attacker can steal the user's finger print.\n\n`seed-fingerprint` uses seeds to generate a hash that can identify the user.\n\n## Demo\n\n[https://izure1.github.io/seed-fingerprint/sample.html](https://izure1.github.io/seed-fingerprint/sample.html)\n\n## Usage\n\n### Docs\n\n[https://izure1.github.io/seed-fingerprint](https://izure1.github.io/seed-fingerprint)\n\n### Node.js\n\n```javascript\nimport { create } from 'seed-fingerprint';\n\nconst seed = 'hello';\nconst fingerprint = create(seed);\n\nconst id = await fingerprint.get();\n```\n\n### Browser (umd)\n\n```html\n// html load\n\u003cscript src=\"https://cdn.jsdelivr.net/npm/seed-fingerprint@1.x.x/build/umd/index.min.js\"\u003e\u003c/script\u003e\n```\n\n```javascript\n// script\nconst seed = 'hello';\nconst fingerprint = window.SeedFingerprint.create(seed);\n\nconst id = await fingerprint.get();\n```\n\n### Browser (esm)\n\n```javascript\n\u003cscript type=\"module\"\u003e\nimport { create } from 'https://cdn.jsdelivr.net/npm/seed-fingerprint@1.x.x/build/esm/index.min.js'\n\nconst seed = 'hello';\nconst fingerprint = create(seed);\n\nconst id = await fingerprint.get();\n\u003c/script\u003e\n```\n\n`fingerprint` has the following components: Each component returns a promise.\n\n```javascript\nSeedFingerprint {\n    component: {\n        canvas: {\n            canvas2dRender: string\n        },\n        date: {\n            timezoneOffset: number\n        },\n        font: {\n            availableFonts: string[]\n        },\n        header: {\n            header: {\n                Accept: string\n                Accept-Encoding: string\n                Accept-Language: string\n                User-Agent: string\n            },\n            agent: {\n                ip: string\n                loc: string\n            }\n        },\n        navigator: {\n            cookieEnabled: boolean\n            hardwareConcurrency: number\n            maxTouchPoints: number\n            language: string\n            languages: string[]\n            plugins: {\n                [key: string]: string\n            }\n        },\n        screen: {\n            colorDepth: number\n            width: number\n            height: number\n        },\n        webgl: {\n            webglRenderer: string\n            webglRender: string\n        },\n    }\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fizure1%2Fseed-fingerprint","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fizure1%2Fseed-fingerprint","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fizure1%2Fseed-fingerprint/lists"}