Signid is a tiny node.js server-side library for signing and verifying integer identifiers. Identifiers can be signed to prevent a prediction of next values.
Look at how simple it is:
const Signid = require('signid')
const signid = new Signid('Your secret key')
const signed = signid.encode(18082)
console.log(signed) // '1tkblhp-dya'
const originalId = signid.decode(signed)
console.log(originalId) // 18082
const signid2 = new Signid('Incorrect secret')
const originalId2 = signid2.decode(signed)
console.log(originalId2) // null
Note that this is not an encryption library and is not suitable for creating something safe. It doesn't withstand any security requirements.
- Server-side code (uses node crypto md5)
- Simple usage
- Signed integer as string about (7-20 chars length)
- Supports positive integers only (0 -
Number.MAX_SAFE_INTEGER
)
Using NPM:
npm i signid
ID | Signed |
---|---|
0 | 'fmh1hp-0' |
1 | '1invht9-1' |
2 | 'j3c2f3-2' |
3 | '1tp4u3p-3' |
100 | '1f9pfif-2s' |
1000 | '1ekln37-rs' |
1001 | '1b3b3xt-rt' |
1002 | '105opf1-ru' |
88888 | '1buzr2q-1wl4' |
9007199254740991 |
'iim0na-2gosa7pa2gv' (Number.MAX_SAFE_INTEGER ) |
P.S. This table is generated with secret Your secret