summaryrefslogtreecommitdiff
path: root/anastasis.rst
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2021-02-18 22:57:11 +0100
committerChristian Grothoff <christian@grothoff.org>2021-02-18 22:57:11 +0100
commit0a7e1bb3081f753ea6a9752bb24d0374beb07f37 (patch)
tree8a314e419de2704bbe4b719628e3653cea7ce7e2 /anastasis.rst
parent7b5d0c813a3942386e3d479eebf49be6a062616a (diff)
downloaddocs-0a7e1bb3081f753ea6a9752bb24d0374beb07f37.tar.gz
docs-0a7e1bb3081f753ea6a9752bb24d0374beb07f37.tar.bz2
docs-0a7e1bb3081f753ea6a9752bb24d0374beb07f37.zip
improve anastasis docs
Diffstat (limited to 'anastasis.rst')
-rw-r--r--anastasis.rst1224
1 files changed, 144 insertions, 1080 deletions
diff --git a/anastasis.rst b/anastasis.rst
index 8fbef179..9a04b0c5 100644
--- a/anastasis.rst
+++ b/anastasis.rst
@@ -942,7 +942,7 @@ The initial states for backup and recovery processes are looking like following:
}
-**Initial backup state:**
+**Initial recovery state:**
.. code-block:: json
@@ -974,10 +974,6 @@ Expected new state:
{
"backup_state": "COUNTRY_SELECTING",
- "continents": [
- "Europe",
- "North_America"
- ],
"selected_continent": "Europe",
"countries": [
{
@@ -1028,40 +1024,6 @@ Expected new state:
{
"backup_state": "USER_ATTRIBUTES_COLLECTING",
- "continents": [
- "Europe",
- "North_America"
- ],
- "selected_continent": "Europe",
- "countries": [
- {
- "code": "ch",
- "name": "Switzerland",
- "continent": "Europe",
- "name_i18n": {
- "de_DE": "Schweiz",
- "de_CH": "Schwiiz",
- "fr": "Suisse",
- "en": "Swiss"
- },
- "currency": "CHF"
- },
- {
- "code": "de",
- "name": "Germany",
- "continent": "Europe",
- "continent_i18n": {
- "de": "Europa"
- },
- "name_i18n": {
- "de_DE": "Deutschland",
- "de_CH": "Deutschland",
- "fr": "Allemagne",
- "en": "Germany"
- },
- "currency": "EUR"
- }
- ],
"selected_country": "de",
"currency": "EUR",
"required_attributes": [
@@ -1138,6 +1100,8 @@ Expected new state:
}
}
+Backup transitions
+""""""""""""""""""
**enter_user_attributes:**
@@ -1155,120 +1119,12 @@ Arguments (example):
}
}
-Expected new state (backup process):
+Expected new state:
.. code-block:: json
{
"backup_state": "AUTHENTICATIONS_EDITING",
- "continents": [
- "Europe",
- "North_America"
- ],
- "selected_continent": "Europe",
- "countries": [
- {
- "code": "ch",
- "name": "Switzerland",
- "continent": "Europe",
- "name_i18n": {
- "de_DE": "Schweiz",
- "de_CH": "Schwiiz",
- "fr": "Suisse",
- "en": "Swiss"
- },
- "currency": "CHF"
- },
- {
- "code": "de",
- "name": "Germany",
- "continent": "Europe",
- "continent_i18n": {
- "de": "Europa"
- },
- "name_i18n": {
- "de_DE": "Deutschland",
- "de_CH": "Deutschland",
- "fr": "Allemagne",
- "en": "Germany"
- },
- "currency": "EUR"
- }
- ],
- "selected_country": "de",
- "currency": "EUR",
- "required_attributes": [
- {
- "type": "string",
- "name": "full_name",
- "label": "Full name",
- "label_i18n": {
- "de_DE": "Vollstaendiger Name",
- "de_CH": "Vollstaendiger Name",
- "fr": "Nom complet",
- "en": "Full name"
- },
- "widget": "anastasis_gtk_ia_full_name"
- },
- {
- "type": "date",
- "name": "birthdate",
- "label": "Birthdate",
- "label_i18n": {
- "de_DE": "Geburtsdatum",
- "de_CH": "Geburtsdatum",
- "fr": "Date de naissance",
- "en": "Birthdate"
- },
- "widget": "anastasis_gtk_ia_birthdate"
- },
- {
- "type": "string",
- "name": "social_security_number",
- "label": "Social security number",
- "label_i18n": {
- "de_DE": "Sozialversicherungsnummer",
- "de_CH": "Sozialversicherungsnummer",
- "fr": "Numéro de sécurité sociale",
- "en": "Social security number"
- },
- "widget": "anastasis_gtk_ia_ssn"
- }
- ],
- "authentication_providers": {
- "http://localhost:8089/": {
- "methods": [
- { "name" : "question",
- "usage_fee" : "EUR:0.0" },
- { "name" : "sms",
- "usage_fee" : "EUR:0.5" }
- ],
- "annual_fee": "EUR:4.99",
- "truth_upload_fee": "EUR:4.99",
- "liability_limit": "EUR:1",
- "currency": "EUR",
- "truth_lifetime": { "d_ms" : 50000000 },
- "storage_limit_in_megabytes": 1,
- "provider_name": "Anastasis 4",
- "salt": "CXAPCKSH9D3MYJTS9536RHJHCW"
- },
- "http://localhost:8088/": {
- "methods": [
- { "name" : "question",
- "usage_fee" : "EUR:0.01" },
- { "name" : "sms",
- "usage_fee" : "EUR:0.55" }
- ],
- "annual_fee": "EUR:0.99",
- "truth_upload_fee": "EUR:3.99",
- "liability_limit": "EUR:1",
- "currency": "EUR",
- "truth_lifetime": { "d_ms" : 50000000 },
- "storage_limit_in_megabytes": 1,
- "provider_name": "Anastasis 4",
- "salt": "CXAPCKSH9D3MYJTS9536RHJHCW"
- }
- },
"identity_attributes": {
"full_name": "Max Musterman",
"social_security_number": "123456789",
@@ -1278,39 +1134,9 @@ Expected new state (backup process):
}
}
-**next**, **back**, **pay:**
-No Arguments needed, but the **pay** transition may have optional arguments:
-**pay:**
-
-Optional arguments to try uploading just specific truths (example):
-
-.. code-block:: json
-
- {
- "truth_index": [
- 1,
- 2
- ]
- }
-
-Optional arguments to try uploading recovery document to specific providers (example):
-
-.. code-block:: json
-
- {
- "provider_id": [
- "http://localhost:8088/",
- "http://localhost:8089/"
- ]
- }
-
-
-Backup transitions
-""""""""""""""""""
-
-**add_provider:**
+**add_provider**:
This operation can be performed in state "AUTHENTICATIONS_EDITING".
@@ -1333,80 +1159,6 @@ unreachable, service on port 8088 was previously known, and service on port
{
"backup_state": "AUTHENTICATIONS_EDITING",
- "continents": [
- "Europe",
- "North_America"
- ],
- "selected_continent": "Europe",
- "countries": [
- {
- "code": "ch",
- "name": "Switzerland",
- "continent": "Europe",
- "name_i18n": {
- "de_DE": "Schweiz",
- "de_CH": "Schwiiz",
- "fr": "Suisse",
- "en": "Swiss"
- },
- "currency": "CHF"
- },
- {
- "code": "de",
- "name": "Germany",
- "continent": "Europe",
- "continent_i18n": {
- "de": "Europa"
- },
- "name_i18n": {
- "de_DE": "Deutschland",
- "de_CH": "Deutschland",
- "fr": "Allemagne",
- "en": "Germany"
- },
- "currency": "EUR"
- }
- ],
- "selected_country": "de",
- "currency": "EUR",
- "required_attributes": [
- {
- "type": "string",
- "name": "full_name",
- "label": "Full name",
- "label_i18n": {
- "de_DE": "Vollstaendiger Name",
- "de_CH": "Vollstaendiger Name",
- "fr": "Nom complet",
- "en": "Full name"
- },
- "widget": "anastasis_gtk_ia_full_name"
- },
- {
- "type": "date",
- "name": "birthdate",
- "label": "Birthdate",
- "label_i18n": {
- "de_DE": "Geburtsdatum",
- "de_CH": "Geburtsdatum",
- "fr": "Date de naissance",
- "en": "Birthdate"
- },
- "widget": "anastasis_gtk_ia_birthdate"
- },
- {
- "type": "string",
- "name": "social_security_number",
- "label": "Social security number",
- "label_i18n": {
- "de_DE": "Sozialversicherungsnummer",
- "de_CH": "Sozialversicherungsnummer",
- "fr": "Numéro de sécurité sociale",
- "en": "Social security number"
- },
- "widget": "anastasis_gtk_ia_ssn"
- }
- ],
"authentication_providers": {
"http://localhost:8089/": {
"error_code": 11,
@@ -1444,50 +1196,11 @@ unreachable, service on port 8088 was previously known, and service on port
"provider_name": "Anastasis 42",
"salt": "BXAPCKSH9D3MYJTS9536RHJHCX"
}
- },
- "identity_attributes": {
- "full_name": "Max Musterman",
- "social_security_number": "123456789",
- "birth_year": 2000,
- "birth_month": 1,
- "birth_day": 1
- },
- "authentication_methods": [
- {
- "method": "question",
- "data": {
- "question": "Whats the name of your grandmother?",
- "answer": "Trudi"
- }
- },
- {
- "method": "email",
- "data": {
- "email_address": "max@musterman.de"
- }
- },
- {
- "method": "question",
- "data": {
- "question": "Whats the name of your grandfather?",
- "answer": "Fredi"
- }
- },
- {
- "method": "question",
- "data": {
- "question": "Whats your name?",
- "answer": "Hans"
- }
- }
- ]
+ }
}
-
-
-
-**add_authentication:**
+**add_authentication**:
Arguments (example):
@@ -1497,10 +1210,9 @@ Arguments (example):
"authentication_method":
{
"method": "question",
- "data": {
- "question": "Whats your name?",
- "answer": "Hans"
- }
+ "mime_type" : "text/plain",
+ "instructions" : "What is your favorite GNU package?",
+ "challenge" : "gdb",
}
}
@@ -1510,153 +1222,22 @@ Expected new state:
{
"backup_state": "AUTHENTICATIONS_EDITING",
- "continents": [
- "Europe",
- "North_America"
- ],
- "selected_continent": "Europe",
- "countries": [
- {
- "code": "ch",
- "name": "Switzerland",
- "continent": "Europe",
- "name_i18n": {
- "de_DE": "Schweiz",
- "de_CH": "Schwiiz",
- "fr": "Suisse",
- "en": "Swiss"
- },
- "currency": "CHF"
- },
- {
- "code": "de",
- "name": "Germany",
- "continent": "Europe",
- "continent_i18n": {
- "de": "Europa"
- },
- "name_i18n": {
- "de_DE": "Deutschland",
- "de_CH": "Deutschland",
- "fr": "Allemagne",
- "en": "Germany"
- },
- "currency": "EUR"
- }
- ],
- "selected_country": "de",
- "currency": "EUR",
- "required_attributes": [
- {
- "type": "string",
- "name": "full_name",
- "label": "Full name",
- "label_i18n": {
- "de_DE": "Vollstaendiger Name",
- "de_CH": "Vollstaendiger Name",
- "fr": "Nom complet",
- "en": "Full name"
- },
- "widget": "anastasis_gtk_ia_full_name"
- },
- {
- "type": "date",
- "name": "birthdate",
- "label": "Birthdate",
- "label_i18n": {
- "de_DE": "Geburtsdatum",
- "de_CH": "Geburtsdatum",
- "fr": "Date de naissance",
- "en": "Birthdate"
- },
- "widget": "anastasis_gtk_ia_birthdate"
- },
- {
- "type": "string",
- "name": "social_security_number",
- "label": "Social security number",
- "label_i18n": {
- "de_DE": "Sozialversicherungsnummer",
- "de_CH": "Sozialversicherungsnummer",
- "fr": "Numéro de sécurité sociale",
- "en": "Social security number"
- },
- "widget": "anastasis_gtk_ia_ssn"
- }
- ],
- "authentication_providers": {
- "http://localhost:8089/": {
- "methods": [
- { "name" : "question",
- "usage_fee" : "EUR:0.0" },
- { "name" : "sms",
- "usage_fee" : "EUR:0.5" }
- ],
- "annual_fee": "EUR:4.99",
- "truth_upload_fee": "EUR:4.99",
- "liability_limit": "EUR:1",
- "currency": "EUR",
- "truth_lifetime": { "d_ms" : 50000000 },
- "storage_limit_in_megabytes": 1,
- "provider_name": "Anastasis 4",
- "salt": "CXAPCKSH9D3MYJTS9536RHJHCW"
- },
- "http://localhost:8088/": {
- "methods": [
- { "name" : "question",
- "usage_fee" : "EUR:0.01" },
- { "name" : "sms",
- "usage_fee" : "EUR:0.55" }
- ],
- "annual_fee": "EUR:0.99",
- "truth_upload_fee": "EUR:3.99",
- "liability_limit": "EUR:1",
- "currency": "EUR",
- "truth_lifetime": { "d_ms" : 50000000 },
- "storage_limit_in_megabytes": 1,
- "provider_name": "Anastasis 4",
- "salt": "CXAPCKSH9D3MYJTS9536RHJHCW"
- }
- },
- "identity_attributes": {
- "full_name": "Max Musterman",
- "social_security_number": "123456789",
- "birth_year": 2000,
- "birth_month": 1,
- "birth_day": 1
- },
"authentication_methods": [
{
"method": "question",
- "data": {
- "question": "Whats the name of your grandmother?",
- "answer": "Trudi"
- }
+ "mime_type" : "text/plain",
+ "instructions" : "What is your favorite GNU package?",
+ "challenge" : "gdb",
},
{
"method": "email",
- "data": {
- "email_address": "max@musterman.de"
- }
- },
- {
- "method": "question",
- "data": {
- "question": "Whats the name of your grandfather?",
- "answer": "Fredi"
- }
- },
- {
- "method": "question",
- "data": {
- "question": "Whats your name?",
- "answer": "Hans"
- }
+ "challenge": "max@musterman.de"
}
]
}
-**del_authentication:**
+
+**del_authentication**:
Arguments (example):
@@ -1672,147 +1253,45 @@ Expected new state:
{
"backup_state": "AUTHENTICATIONS_EDITING",
- "continents": [
- "Europe",
- "North_America"
- ],
- "selected_continent": "Europe",
- "countries": [
- {
- "code": "ch",
- "name": "Switzerland",
- "continent": "Europe",
- "name_i18n": {
- "de_DE": "Schweiz",
- "de_CH": "Schwiiz",
- "fr": "Suisse",
- "en": "Swiss"
- },
- "currency": "CHF"
- },
- {
- "code": "de",
- "name": "Germany",
- "continent": "Europe",
- "continent_i18n": {
- "de": "Europa"
- },
- "name_i18n": {
- "de_DE": "Deutschland",
- "de_CH": "Deutschland",
- "fr": "Allemagne",
- "en": "Germany"
- },
- "currency": "EUR"
- }
- ],
- "selected_country": "de",
- "currency": "EUR",
- "required_attributes": [
- {
- "type": "string",
- "name": "full_name",
- "label": "Full name",
- "label_i18n": {
- "de_DE": "Vollstaendiger Name",
- "de_CH": "Vollstaendiger Name",
- "fr": "Nom complet",
- "en": "Full name"
- },
- "widget": "anastasis_gtk_ia_full_name"
- },
- {
- "type": "date",
- "name": "birthdate",
- "label": "Birthdate",
- "label_i18n": {
- "de_DE": "Geburtsdatum",
- "de_CH": "Geburtsdatum",
- "fr": "Date de naissance",
- "en": "Birthdate"
- },
- "widget": "anastasis_gtk_ia_birthdate"
- },
- {
- "type": "string",
- "name": "social_security_number",
- "label": "Social security number",
- "label_i18n": {
- "de_DE": "Sozialversicherungsnummer",
- "de_CH": "Sozialversicherungsnummer",
- "fr": "Numéro de sécurité sociale",
- "en": "Social security number"
- },
- "widget": "anastasis_gtk_ia_ssn"
- }
- ],
- "authentication_providers": {
- "http://localhost:8089/": {
- "methods": [
- { "name" : "question",
- "usage_fee" : "EUR:0.0" },
- { "name" : "sms",
- "usage_fee" : "EUR:0.5" }
- ],
- "annual_fee": "EUR:4.99",
- "truth_upload_fee": "EUR:4.99",
- "liability_limit": "EUR:1",
- "currency": "EUR",
- "truth_lifetime": { "d_ms" : 50000000 },
- "storage_limit_in_megabytes": 1,
- "provider_name": "Anastasis 4",
- "salt": "CXAPCKSH9D3MYJTS9536RHJHCW"
- },
- "http://localhost:8088/": {
- "methods": [
- { "name" : "question",
- "usage_fee" : "EUR:0.01" },
- { "name" : "sms",
- "usage_fee" : "EUR:0.55" }
- ],
- "annual_fee": "EUR:0.99",
- "truth_upload_fee": "EUR:3.99",
- "liability_limit": "EUR:1",
- "currency": "EUR",
- "truth_lifetime": { "d_ms" : 50000000 },
- "storage_limit_in_megabytes": 1,
- "provider_name": "Anastasis 4",
- "salt": "CXAPCKSH9D3MYJTS9536RHJHCW"
- }
- },
- "identity_attributes": {
- "full_name": "Max Musterman",
- "social_security_number": "123456789",
- "birth_year": 2000,
- "birth_month": 1,
- "birth_day": 1
- },
"authentication_methods": [
{
"method": "question",
- "data": {
- "question": "Whats the name of your grandmother?",
- "answer": "Trudi"
- }
- },
- {
- "method": "question",
- "data": {
- "question": "Whats the name of your grandfather?",
- "answer": "Fredi"
- }
- },
- {
- "method": "question",
- "data": {
- "question": "Whats your name?",
- "answer": "Hans"
- }
+ "mime_type" : "text/plain",
+ "instructions" : "What is your favorite GNU package?",
+ "challenge" : "gdb",
}
]
}
-**add_policy:**
+
+**next** (from "AUTHENTICATIONS_EDITING"):
+
+Optional arguments to try uploading recovery document only to specific providers (example):
+
+.. code-block:: json
+
+ {
+ "provider_id": [
+ "http://localhost:8088/",
+ "http://localhost:8089/"
+ ]
+ }
+
+ ..note::
+
+ This is currently not supported.
+
+Expected new state (backup process):
+
+.. code-block:: json
+
+ {
+ "backup_state": "POLICIES_REVIEWING",
+ // FIXME: give example of calculated policies here!
+ }
+
+
+**add_policy**:
Arguments (example):
@@ -1837,144 +1316,6 @@ Expected new state:
{
"backup_state": "POLICIES_REVIEWING",
- "continents": [
- "Europe",
- "North_America"
- ],
- "selected_continent": "Europe",
- "countries": [
- {
- "code": "ch",
- "name": "Switzerland",
- "continent": "Europe",
- "name_i18n": {
- "de_DE": "Schweiz",
- "de_CH": "Schwiiz",
- "fr": "Suisse",
- "en": "Swiss"
- },
- "currency": "CHF"
- },
- {
- "code": "de",
- "name": "Germany",
- "continent": "Europe",
- "continent_i18n": {
- "de": "Europa"
- },
- "name_i18n": {
- "de_DE": "Deutschland",
- "de_CH": "Deutschland",
- "fr": "Allemagne",
- "en": "Germany"
- },
- "currency": "EUR"
- }
- ],
- "selected_country": "de",
- "currency": "EUR",
- "required_attributes": [
- {
- "type": "string",
- "name": "full_name",
- "label": "Full name",
- "label_i18n": {
- "de_DE": "Vollstaendiger Name",
- "de_CH": "Vollstaendiger Name",
- "fr": "Nom complet",
- "en": "Full name"
- },
- "widget": "anastasis_gtk_ia_full_name"
- },
- {
- "type": "date",
- "name": "birthdate",
- "label": "Birthdate",
- "label_i18n": {
- "de_DE": "Geburtsdatum",
- "de_CH": "Geburtsdatum",
- "fr": "Date de naissance",
- "en": "Birthdate"
- },
- "widget": "anastasis_gtk_ia_birthdate"
- },
- {
- "type": "string",
- "name": "social_security_number",
- "label": "Social security number",
- "label_i18n": {
- "de_DE": "Sozialversicherungsnummer",
- "de_CH": "Sozialversicherungsnummer",
- "fr": "Numéro de sécurité sociale",
- "en": "Social security number"
- },
- "widget": "anastasis_gtk_ia_ssn"
- }
- ],
- "authentication_providers": {
- "http://localhost:8089/": {
- "methods": [
- { "name" : "question",
- "usage_fee" : "EUR:0.0" },
- { "name" : "sms",
- "usage_fee" : "EUR:0.5" }
- ],
- "annual_fee": "EUR:4.99",
- "truth_upload_fee": "EUR:4.99",
- "liability_limit": "EUR:1",
- "currency": "EUR",
- "truth_lifetime": { "d_ms" : 50000000 },
- "storage_limit_in_megabytes": 1,
- "provider_name": "Anastasis 4",
- "salt": "CXAPCKSH9D3MYJTS9536RHJHCW"
- },
- "http://localhost:8088/": {
- "methods": [
- { "name" : "question",
- "usage_fee" : "EUR:0.01" },
- { "name" : "sms",
- "usage_fee" : "EUR:0.55" }
- ],
- "annual_fee": "EUR:0.99",
- "truth_upload_fee": "EUR:3.99",
- "liability_limit": "EUR:1",
- "currency": "EUR",
- "truth_lifetime": { "d_ms" : 50000000 },
- "storage_limit_in_megabytes": 1,
- "provider_name": "Anastasis 4",
- "salt": "CXAPCKSH9D3MYJTS9536RHJHCW"
- }
- },
- "identity_attributes": {
- "full_name": "Max Musterman",
- "social_security_number": "123456789",
- "birth_year": 2000,
- "birth_month": 1,
- "birth_day": 1
- },
- "authentication_methods": [
- {
- "method": "question",
- "data": {
- "question": "Whats the name of your grandmother?",
- "answer": "Trudi"
- }
- },
- {
- "method": "question",
- "data": {
- "question": "Whats the name of your grandfather?",
- "answer": "Fredi"
- }
- },
- {
- "method": "question",
- "data": {
- "question": "Whats your name?",
- "answer": "Hans"
- }
- }
- ],
"policies": [
{
"recovery_cost": "EUR:0",
@@ -2048,144 +1389,6 @@ Expected new state:
{
"backup_state": "POLICIES_REVIEWING",
- "continents": [
- "Europe",
- "North_America"
- ],
- "selected_continent": "Europe",
- "countries": [
- {
- "code": "ch",
- "name": "Switzerland",
- "continent": "Europe",
- "name_i18n": {
- "de_DE": "Schweiz",
- "de_CH": "Schwiiz",
- "fr": "Suisse",
- "en": "Swiss"
- },
- "currency": "CHF"
- },
- {
- "code": "de",
- "name": "Germany",
- "continent": "Europe",
- "continent_i18n": {
- "de": "Europa"
- },
- "name_i18n": {
- "de_DE": "Deutschland",
- "de_CH": "Deutschland",
- "fr": "Allemagne",
- "en": "Germany"
- },
- "currency": "EUR"
- }
- ],
- "selected_country": "de",
- "currency": "EUR",
- "required_attributes": [
- {
- "type": "string",
- "name": "full_name",
- "label": "Full name",
- "label_i18n": {
- "de_DE": "Vollstaendiger Name",
- "de_CH": "Vollstaendiger Name",
- "fr": "Nom complet",
- "en": "Full name"
- },
- "widget": "anastasis_gtk_ia_full_name"
- },
- {
- "type": "date",
- "name": "birthdate",
- "label": "Birthdate",
- "label_i18n": {
- "de_DE": "Geburtsdatum",
- "de_CH": "Geburtsdatum",
- "fr": "Date de naissance",
- "en": "Birthdate"
- },
- "widget": "anastasis_gtk_ia_birthdate"
- },
- {
- "type": "string",
- "name": "social_security_number",
- "label": "Social security number",
- "label_i18n": {
- "de_DE": "Sozialversicherungsnummer",
- "de_CH": "Sozialversicherungsnummer",
- "fr": "Numéro de sécurité sociale",
- "en": "Social security number"
- },
- "widget": "anastasis_gtk_ia_ssn"
- }
- ],
- "authentication_providers": {
- "http://localhost:8089/": {
- "methods": [
- { "name" : "question",
- "usage_fee" : "EUR:0.0" },
- { "name" : "sms",
- "usage_fee" : "EUR:0.5" }
- ],
- "annual_fee": "EUR:4.99",
- "truth_upload_fee": "EUR:4.99",
- "liability_limit": "EUR:1",
- "currency": "EUR",
- "truth_lifetime": { "d_ms" : 50000000 },
- "storage_limit_in_megabytes": 1,
- "provider_name": "Anastasis 4",
- "salt": "CXAPCKSH9D3MYJTS9536RHJHCW"
- },
- "http://localhost:8088/": {
- "methods": [
- { "name" : "question",
- "usage_fee" : "EUR:0.01" },
- { "name" : "sms",
- "usage_fee" : "EUR:0.55" }
- ],
- "annual_fee": "EUR:0.99",
- "truth_upload_fee": "EUR:3.99",
- "liability_limit": "EUR:1",
- "currency": "EUR",
- "truth_lifetime": { "d_ms" : 50000000 },
- "storage_limit_in_megabytes": 1,
- "provider_name": "Anastasis 4",
- "salt": "CXAPCKSH9D3MYJTS9536RHJHCW"
- }
- },
- "identity_attributes": {
- "full_name": "Max Musterman",
- "social_security_number": "123456789",
- "birth_year": 2000,
- "birth_month": 1,
- "birth_day": 1
- },
- "authentication_methods": [
- {
- "method": "question",
- "data": {
- "question": "Whats the name of your grandmother?",
- "answer": "Trudi"
- }
- },
- {
- "method": "question",
- "data": {
- "question": "Whats the name of your grandfather?",
- "answer": "Fredi"
- }
- },
- {
- "method": "question",
- "data": {
- "question": "Whats your name?",
- "answer": "Hans"
- }
- }
- ],
"policies": [
{
"recovery_cost": "EUR:0",
@@ -2229,6 +1432,20 @@ Expected new state:
]
}
+
+**next** (from "POLICIES_REVIEWING"):
+
+No arguments.
+
+Expected new state (backup process):
+
+.. code-block:: json
+
+ {
+ "backup_state": "SECRET_EDITING",
+ }
+
+
**enter_secret:**
Arguments (example):
@@ -2236,260 +1453,107 @@ Arguments (example):
.. code-block:: json
{
- "secret": "someverysecretsecret",
+ "secret": "DATA",
"type": "password"
}
- type: *password* (secret is a password or passphrase)
- type: *data* (secret must be a Crockford-Base32 encoded string of some data, e.g. a private key)
-Expected new state:
+
+Expected new states include:
.. code-block:: json
{
- "backup_state": "POLICIES_REVIEWING",
- "continents": [
- "Europe",
- "North_America"
- ],
- "selected_continent": "Europe",
- "countries": [
- {
- "code": "ch",
- "name": "Switzerland",
- "continent": "Europe",
- "name_i18n": {
- "de_DE": "Schweiz",
- "de_CH": "Schwiiz",
- "fr": "Suisse",
- "en": "Swiss"
- },
- "currency": "CHF"
- },
- {
- "code": "de",
- "name": "Germany",
- "continent": "Europe",
- "continent_i18n": {
- "de": "Europa"
- },
- "name_i18n": {
- "de_DE": "Deutschland",
- "de_CH": "Deutschland",
- "fr": "Allemagne",
- "en": "Germany"
- },
- "currency": "EUR"
- }
- ],
- "selected_country": "de",
- "currency": "EUR",
- "required_attributes": [
- {
- "type": "string",
- "name": "full_name",
- "label": "Full name",
- "label_i18n": {
- "de_DE": "Vollstaendiger Name",
- "de_CH": "Vollstaendiger Name",
- "fr": "Nom complet",
- "en": "Full name"
- },
- "widget": "anastasis_gtk_ia_full_name"
- },
- {
- "type": "date",
- "name": "birthdate",
- "label": "Birthdate",
- "label_i18n": {
- "de_DE": "Geburtsdatum",
- "de_CH": "Geburtsdatum",
- "fr": "Date de naissance",
- "en": "Birthdate"
- },
- "widget": "anastasis_gtk_ia_birthdate"
- },
- {
- "type": "string",
- "name": "social_security_number",
- "label": "Social security number",
- "label_i18n": {
- "de_DE": "Sozialversicherungsnummer",
- "de_CH": "Sozialversicherungsnummer",
- "fr": "Numéro de sécurité sociale",
- "en": "Social security number"
- },
- "widget": "anastasis_gtk_ia_ssn"
- }
- ],
- "authentication_providers": {
- "http://localhost:8089/": {
- "methods": [
- { "name" : "question",
- "usage_fee" : "EUR:0.0" },
- { "name" : "sms",
- "usage_fee" : "EUR:0.5" }
- ],
- "annual_fee": "EUR:4.99",
- "truth_upload_fee": "EUR:4.99",
- "liability_limit": "EUR:1",
- "currency": "EUR",
- "truth_lifetime": { "d_ms" : 50000000 },
- "storage_limit_in_megabytes": 1,
- "provider_name": "Anastasis 4",
- "salt": "CXAPCKSH9D3MYJTS9536RHJHCW"
- },
- "http://localhost:8088/": {
- "methods": [
- { "name" : "question",
- "usage_fee" : "EUR:0.01" },
- { "name" : "sms",
- "usage_fee" : "EUR:0.55" }
- ],
- "annual_fee": "EUR:0.99",
- "truth_upload_fee": "EUR:3.99",
- "liability_limit": "EUR:1",
- "currency": "EUR",
- "truth_lifetime": { "d_ms" : 50000000 },
- "storage_limit_in_megabytes": 1,
- "provider_name": "Anastasis 4",
- "salt": "CXAPCKSH9D3MYJTS9536RHJHCW"
- }
+ "backup_state": "TRUTHS_PAYING",
+ "core_secret" : {
+ "secret": "DATA",
+ "type": "passpharse"
+ },
+ "payments": [
+ "taler://pay/...",
+ "taler://pay/..."
+ ]
+ }
+
+.. code-block:: json
+
+ {
+ "backup_state": "POLICIES_PAYING",
+ "core_secret" : {
+ "secret": "DATA",
+ "type": "passpharse"
},
+ "payments": [
+ "taler://pay/...",
+ "taler://pay/..."
+ ]
+ }
+
+.. code-block:: json
+
+ {
+ "backup_state": "BACKUP_FINISHED",
+ }
+
+
+**pay:**
+
+Optional arguments to try uploading just specific truths (example):
+
+.. code-block:: json
+
+ {
+ "truth_index": [
+ 1,
+ 2
+ ]
+ }
+
+ ..note::
+
+ This is currently not supported.
+
+
+
+
+Recovery transitions
+""""""""""""""""""""
+
+**enter_user_attributes:**
+
+Arguments (example):
+
+.. code-block:: json
+
+ {
"identity_attributes": {
"full_name": "Max Musterman",
"social_security_number": "123456789",
"birth_year": 2000,
"birth_month": 1,
"birth_day": 1
- },
- "authentication_methods": [
- {
- "method": "question",
- "data": {
- "question": "Whats the name of your grandmother?",
- "answer": "Trudi"
- }
- },
- {
- "method": "question",
- "data": {
- "question": "Whats the name of your grandfather?",
- "answer": "Fredi"
- }
- },
- {
- "method": "question",
- "data": {
- "question": "Whats your name?",
- "answer": "Hans"
- }
- }
- ],
- "policies": [
- {
- "recovery_cost": "EUR:0",
- "methods": [
- {
- "authentication_method": 0,
- "provider": "http://localhost:8089/"
- },
- {
- "authentication_method": 1,
- "provider": "http://localhost:8088/"
- }
- ]
- },
- {
- "recovery_cost": "EUR:0",
- "methods": [
- {
- "authentication_method": 0,
- "provider": "http://localhost:8089/"
- },
- {
- "authentication_method": 2,
- "provider": "http://localhost:8088/"
- }
- ]
- },
- {
- "recovery_cost": "EUR:0",
- "methods": [
- {
- "authentication_method": 1,
- "provider": "http://localhost:8089/"
- },
- {
- "authentication_method": 2,
- "provider": "http://localhost:8088/"
- }
- ]
- }
- ],
- "core_secret": {
- "secret": "someverysecretsecret",
- "type": "password"
- },
- "truths": [
- {
- "authentication_method": 0,
- "provider": "http://localhost:8089/"
- },
- {
- "authentication_method": 1,
- "provider": "http://localhost:8088/"
- },
- {
- "authentication_method": 2,
- "provider": "http://localhost:8088/"
- },
- {
- "authentication_method": 1,
- "provider": "http://localhost:8089/"
- }
- ],
- "truth_uploads": [
- {
- "truth_index": 0,
- "https_status": 204
- },
- {
- "truth_index": 1,
- "https_status": 402
- },
- {
- "truth_index": 2,
- "https_status": 402
- },
- {
- "truth_index": 3,
- "https_status": 204
- },
- ],
- "recovery_document_uploads": [
- {
- "provider_id": "http://localhost:8088/",
- "https_status": 204
- },
- {
- "provider_id": "http://localhost:8089/",
- "https_status": 402
- },
- {
- "provider_id": "http://localhost:8090/",
- "https_status": 404
- },
- {
- "provider_id": "http://localhost:8091/",
- "https_status": 403
- }
- ]
+ }
}
-Recovery transitions
-""""""""""""""""""""
+Expected new state:
+
+.. code-block:: json
+
+ {
+ "backup_state": "CHALLENGE_SELECTING",
+ "identity_attributes": {
+ "full_name": "Max Musterman",
+ "social_security_number": "123456789",
+ "birth_year": 2000,
+ "birth_month": 1,
+ "birth_day": 1
+ }
+ }
+
+
+
**select_challenge:**