Skip to content

lamualfa/isci

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

ISCI - Identification Scheme Information

List Contents

What is ISCI?

ISCI (Identification SCheme Information) is a scheme that stores information related to an identification label. ISCI can standardize an identification label on the system or application you have. ISCI is very flexible. ISCI uses the JSON format, this format allows an identification label to generated on any system at any time. ISCI can be stored in Databases, JSON Files or other storage areas that support the JSON storage format. ISCI can be used across platforms depending on the availability of libraries on each platform.

Why should i use ISCI?

ISCI allows you to create a flexible identification label. You can move ISCI wherever and whenever you want. ISCI will be very useful when the system you are using requires migration from one language to another. or in other cases such as moving physical servers from one place to another without disturbing identification labels that have been created and distributed before the move.

Example

Example with ISCI Draft-1:

The following is an ISCI which is used to create a User ID:

{
  "name": "user-id",

  "pattern": "<district_id>-[unique_character]-[random_character]",

  "keywords": {
    "unique_character": {
      "type": "incrCharset",

      "length": 4,

      "index": 0,

      "increaser": 1,

      "charset": "abcdefghijklmnopqrstuvwxyz"
    },

    "random_character": {
      "type": "randCharset",

      "minLength": 3,

      "maxLength": 6,

      "charset": "abcdefgABCDEFGH0123456789",

      "comment": "Random characters make it difficult for people not to try to find IDs with dummy or bruteforce techniques"
    }
  }
}

The <district_id> section will be entered by the user when creating the ID.

Results of ISCI above after being executed 5 times:

manager-aaaa-gDHgb3

employee-aaab-L4BA

employee-aaac-geFb

janitor-aaad-A9aB73

director-aaae-C7a5B

See, the district_id section has changed automatically based on parameters passed at the time of ID creation.

List ISCI Drafts

Documentation is available in each draft. Visit the link provided to view the documentation of each draft.

Available ISCI Libraries

Have you write a new library? or have you write a new library with better performance? Please contact us to be included in the list.

FAQ

What format is used to create an ISCI?

ISCI uses the JSON format.

Where can i store an ISCI?

You can save it in a JSON File or in a Database that supports JSON storage formats such as: MongoDB, SQL, MYSQL, Solr, Redis (as JSON String) and etc.

Is ISCI slow?

Absolutely not. Library js-isci can generate up to 1,500,000 Unique ID (10 characters each) only in 1 Second.

Releases

No releases published

Packages

No packages published