Arespass
Analyzes a password and calculates its entropy
COMMUNITYNO AUTH0 INSTALLS
OpenAPI Specificationv3.0
{
"openapi": "3.0.0",
"servers": [
{
"url": "http://arespass.net/v1.0"
}
],
"info": {
"description": "Analyzes a password and calculates its entropy.",
"title": "Arespass",
"version": "1.0",
"x-origin": [
{
"format": "openapi",
"url": "https://arespass.net/assets/arespassv1.0-openapi.yaml",
"version": "3.0"
}
],
"x-providerName": "arespass.net",
"x-logo": {
"url": "https://api.apis.guru/v2/cache/logo/https_apis.guru_assets_images_no-logo.svg"
}
},
"paths": {
"/about": {
"get": {
"parameters": [
{
"description": "**The format of the returned metadata.**\n\nAllowed values are *json*, *xml* and *yaml*.\n\nThe default value is *xml*.\n",
"in": "query",
"name": "outputFormat",
"required": false,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/about"
}
},
"application/x-yaml": {
"schema": {
"$ref": "#/components/schemas/about"
}
},
"application/xml": {
"schema": {
"$ref": "#/components/schemas/about"
}
}
},
"description": "**The metadata about this API: version number, release date and available languages.**\n"
},
"400": {
"description": "**At least one error was found in the request parameters.**\n"
},
"405": {
"description": "**HTTP method POST is not allowed.**\n"
},
"500": {
"description": "**Unexpected server error.** \n"
}
},
"summary": "Metadata about this API: version number, release date and available languages.\n\nMetadata requests are NOT billed.\n"
}
},
"/ec": {
"get": {
"parameters": [
{
"description": "**The password to be analyzed.**\n\nMinimum length is 4 characters; maximum length is 128 characters.\n\nBeware that certain characters like '#', '=' or '?' must be properly encoded.\n\nFor more information about this issue, please refer to RFC 3986 (\"*Uniform Resource Identifier (URI): Generic Syntax*\"), sections 2.1, 2.2 and 2.4.\n",
"in": "query",
"name": "password",
"required": true,
"schema": {
"type": "string"
}
},
{
"description": "**The format of the returned analysis.**\n\nAllowed values are *json*, *xml* and *yaml*.\n\nThe default value is *xml*.\n",
"in": "query",
"name": "outputFormat",
"required": false,
"schema": {
"type": "string"
}
},
{
"description": "**The penalty applied to each character that is part of a word, number sequence, alphabet sequence, etc.**\n\nThe penalty is a float number in the range [0, 1]. Full penalty, 0; no penalty, 1.\n\nThe character used as decimal separator is always '.'. Hence, a parameter value like *0,33* would be illegal.\n\nThe default value is *0.25*.\n",
"in": "query",
"name": "penalty",
"required": false,
"schema": {
"type": "number"
}
},
{
"description": "**An identifier for this request.**\n\nThe request identifier is a string that must match the regular expression */(?i)^[a-z0-9]{8,16}$/*.\n\nThis identifier is echoed in the returned response. Its value has no effect on the password analysis.\n\nIf this parameter is unset, a randomly generated identifier will be automatically assigned to this request.\n",
"in": "query",
"name": "reqId",
"required": false,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ec"
}
},
"application/x-yaml": {
"schema": {
"$ref": "#/components/schemas/ec"
}
},
"application/xml": {
"schema": {
"$ref": "#/components/schemas/ec"
}
}
},
"description": "The password analysis, including the calculated entropy."
},
"400": {
"description": "**At least one error was found in the request parameters.**\n"
},
"405": {
"description": "**HTTP method POST is not allowed.**\n"
},
"500": {
"description": "**Unexpected server error.**\n"
}
},
"summary": "The entropy calculator - alias ec -, analyzes a password and calculates its entropy.\n\nEntropy calculator requests are billed.\n"
}
}
},
"components": {
"schemas": {
"about": {
"description": "**This API version number**.\n",
"properties": {
"apiReleaseDateIso8601": {
"description": "**The release date of this API, ISO 8601 format.**\n",
"type": "string"
},
"apiVersion": {
"properties": {
"majorNumber": {
"description": "This API version major number.",
"type": "integer",
"xml": {
"attribute": true
}
},
"minorNumber": {
"description": "This API version minor number.",
"type": "integer",
"xml": {
"attribute": true
}
}
},
"type": "object"
},
"availableLanguagesIso639_1": {
"description": "**The list of available languages.**\n\nEach language is identified by its ISO 639-1, two-letter code.\n\nThe list elements are comma-separated and sorted in ascending order.\n",
"type": "string"
}
},
"type": "object"
},
"ec": {
"properties": {
"alphabetSequence": {
"description": "**The penalty applied to each character that has been found to be part of an alphabet sequence.**\n\nThe penalty is a float number in the range [0, 1]. Full penalty, 0; no penalty, 1.\n",
"items": {
"properties": {
"char": {
"description": "The n-th character.",
"type": "string",
"xml": {
"attribute": true
}
},
"l33tchar": {
"description": "The n-th character after the l33t transformation.",
"type": "string",
"xml": {
"attribute": true
}
},
"penalty": {
"description": "The penalty applied to this character if it is part of an alphabet sequence.\n\nThe penalty is a float number in the range [0, 1]. Full penalty, 0; no penalty, 1.\n",
"type": "number",
"xml": {
"attribute": true
}
}
},
"type": "object"
},
"type": "array"
},
"apiVersion": {
"description": "**This API version number.**\n",
"type": "string"
},
"detectedKeyboard": {
"description": "**The detected keyboard, QWERTY or Dvorak.**\n",
"type": "string"
},
"efficiency": {
"description": "**The ratio entropy / idealEntropy.**\n\nIt is a float number in the range [0, 1].\n",
"type": "number"
},
"entropy": {
"description": "**The entropy calculated for the input password.**\n\nIt is measured in bits.\n",
"type": "number"
},
"entropyDistribution": {
"description": "**The distribution of the calculated entropy among the password characters.**\n",
"items": {
"properties": {
"char": {
"description": "The n-th character.",
"type": "string",
"xml": {
"attribute": true
}
},
"l33tchar": {
"description": "The n-th character after the l33t transformation.",
"type": "string",
"xml": {
"attribute": true
}
},
"percentage": {
"description": "The amount of entropy contributed by this character, expressed as percentage of the total.",
"type": "number",
"xml": {
"attribute": true
}
}
},
"type": "object"
},
"type": "array"
},
"idealEntropy": {
"description": "**The Shannon entropy.**\n\nThe Shannon entropy is the entropy calculated if no penalizations - words, number sequence, alphabet sequence, etc - were found in the password.\n\nIt is measured in bits.\n",
"type": "number"
},
"keyboardSequence": {
"description": "**The penalty applied to each character that has been found to be part of a keyboard sequence.**\n\nThe penalty is a float number in the range [0, 1]. Full penalty, 0; no penalty, 1.\n",
"items": {
"properties": {
"char": {
"description": "The n-th character.",
"type": "string",
"xml": {
"attribute": true
}
},
"l33tchar": {
"description": "The n-th character after the l33t transformation.",
"type": "string",
"xml": {
"attribute": true
}
},
"penalty": {
"description": "The penalty applied to this character if it is part of a keyboard sequence.\n\nThe penalty is a float number in the range [0, 1]. Full penalty, 0; no penalty, 1.\n",
"type": "number",
"xml": {
"attribute": true
}
}
},
"type": "object"
},
"type": "array"
},
"l33tPassword": {
"description": "The analyzed password after the l33t substitution.",
"type": "string"
},
"nonUniformEntropyDistributionPenalty": {
"description": "**The penalty applied to the whole password because of irregular entropy distribution.**\n\nThis penalty is a float number in the range [0, 1]. Full penalty, 0; no penalty, 1.\n",
"type": "number"
},
"numberSequence": {
"description": "**The penalty applied to each character that has been found to be part of a number sequence.**\n\nThe penalty is a float number in the range [0, 1]. Full penalty, 0; no penalty, 1.\n",
"items": {
"properties": {
"char": {
"description": "The n-th character.",
"type": "string",
"xml": {
"attribute": true
}
},
"l33tchar": {
"description": "The n-th character after the l33t transformation.",
"type": "string",
"xml": {
"attribute": true
}
},
"penalty": {
"description": "The penalty applied to this character if it is part of a number sequence.\n\nThe penalty is a float number in the range [0, 1]. Full penalty, 0; no penalty, 1.\n",
"type": "number",
"xml": {
"attribute": true
}
}
},
"type": "object"
},
"type": "array"
},
"password": {
"description": "The analyzed password.",
"type": "string"
},
"passwordLength": {
"description": "The number of characters the password has.",
"type": "integer"
},
"penalty": {
"description": "**The penalty applied to each character that has been found to be part of a word, number sequence, alphabet sequence, etc.**\n\nThe penalty is a float number in the range [0, 1]. Full penalty, 0; no penalty, 1.\n\nIts value is equal to the value of the input parameter *penalty*.\n",
"type": "number"
},
"repeatedChars": {
"description": "**The penalty applied to each character that are repeated**\n\nThe penalty is a float number in the range [0, 1]. Full penalty, 0; no penalty, 1. \n",
"items": {
"properties": {
"char": {
"description": "The n-th character.",
"type": "string",
"xml": {
"attribute": true
}
},
"l33tchar": {
"description": "The n-th character after the l33t transformation.",
"type": "string",
"xml": {
"attribute": true
}
},
"penalty": {
"description": "The penalty applied to this character if it is repeated.\n\nThe penalty is a float number in the range [0, 1]. Full penalty, 0; no penalty, 1.\n",
"type": "number",
"xml": {
"attribute": true
}
}
},
"type": "object"
},
"type": "array"
},
"requestId": {
"description": "**The identifier of the request that corresponds to this response.**\n",
"type": "string"
},
"requestTimestamp": {
"description": "**The timestamp for this response.**\n\nMilliseconds from the epoch of 1970-01-01T00:00:00Z.\n",
"type": "number"
},
"summary": {
"items": {
"description": "**A human-readable summary of the password analysis.**\n\nThis human readable summary is not intended to be parsed.\n",
"type": "string"
},
"type": "array"
},
"total": {
"description": "**The total penalty applied to each character.**\n\nThe penalty is a float number in the range [0, 1]. Full penalty, 0; no penalty, 1.\n",
"items": {
"properties": {
"char": {
"description": "The n-th character.",
"type": "string",
"xml": {
"attribute": true
}
},
"l33tchar": {
"description": "The n-th character after the l33t transformation.",
"type": "string",
"xml": {
"attribute": true
}
},
"penalty": {
"description": "The total penalty applied to each character.\n\nThe penalty is a float number in the range [0, 1]. Full penalty, 0; no penalty, 1. \n",
"type": "number",
"xml": {
"attribute": true
}
}
},
"type": "object"
},
"type": "array"
},
"words": {
"description": "**The penalty applied to each character that has been found to be part of a word.**\n\nThe penalty is a float number in the range [0, 1]. Full penalty, 0; no penalty, 1.\n",
"items": {
"properties": {
"char": {
"description": "The n-th character.",
"type": "string",
"xml": {
"attribute": true
}
},
"l33tchar": {
"description": "The n-th character after the l33t transformation.",
"type": "string",
"xml": {
"attribute": true
}
},
"penalty": {
"description": "The penalty applied to this character if it is part of a word.\n\nThe penalty is a float number in the range [0, 1]. Full penalty, 0; no penalty, 1. \n",
"type": "number",
"xml": {
"attribute": true
}
}
},
"type": "object"
},
"type": "array"
}
},
"type": "object"
}
}
}
}