nitrokey.nk3.secrets_app¶
Oath Authenticator client
Χρησιμοποιείται μέσω της μεταφοράς CTAPHID, μέσω της εντολής custom vendor. Μπορεί επίσης να χρησιμοποιηθεί απευθείας μέσω CCID.
- exception nitrokey.nk3.secrets_app.SecretsAppException¶
 Βάσεις:
ExceptionSecretsAppException(κωδικός: str, πλαίσιο: str)
- __init__(code, context)¶
 - Παράμετροι:
 code (str)
context (str)
- Επιστρεφόμενος τύπος:
 None
- to_id()¶
 - Επιστρεφόμενος τύπος:
 
- to_string()¶
 - Επιστρεφόμενος τύπος:
 str
- code: str¶
 
- context: str¶
 
- exception nitrokey.nk3.secrets_app.SecretsAppHealthCheckException¶
 Βάσεις:
Exception
- class nitrokey.nk3.secrets_app.Instruction¶
 Βάσεις:
Enum- Calculate = 162¶
 
- CalculateAll = 164¶
 
- ChangePIN = 179¶
 
- Delete = 2¶
 
- GetCredential = 181¶
 
- List = 161¶
 
- Put = 1¶
 
- Reset = 4¶
 
- SendRemaining = 165¶
 
- SetCode = 3¶
 
- SetPIN = 180¶
 
- UpdateCredential = 183¶
 
- Validate = 163¶
 
- VerifyCode = 177¶
 
- VerifyPIN = 178¶
 
- class nitrokey.nk3.secrets_app.Kind¶
 Βάσεις:
Enum- classmethod from_attribute_byte(attribute_byte)¶
 - Παράμετροι:
 attribute_byte (bytes)
- Επιστρεφόμενος τύπος:
 str
- Hmac = 64¶
 
- Hotp = 16¶
 
- HotpReverse = 48¶
 
- NotSet = 240¶
 
- Totp = 32¶
 
- class nitrokey.nk3.secrets_app.ListItem¶
 Βάσεις:
objectListItem(kind: “Είδος”, algorithm: “Αλγόριθμος”, label: bytes, properties: Nitrokey.nk3.secrets_app.ListItemProperties)
- __init__(kind, algorithm, label, properties)¶
 - Παράμετροι:
 kind (Kind)
algorithm (Algorithm)
label (bytes)
properties (ListItemProperties)
- Επιστρεφόμενος τύπος:
 None
- classmethod get_type_name(x)¶
 - Παράμετροι:
 x (Any)
- Επιστρεφόμενος τύπος:
 str
- label: bytes¶
 
- properties: ListItemProperties¶
 
- class nitrokey.nk3.secrets_app.ListItemProperties¶
 Βάσεις:
objectListItemProperties(touch_required: bool, secret_encryption: bool, pws_data_exist: bool)
- __init__(touch_required, secret_encryption, pws_data_exist)¶
 - Παράμετροι:
 touch_required (bool)
secret_encryption (bool)
pws_data_exist (bool)
- Επιστρεφόμενος τύπος:
 None
- classmethod from_byte(b)¶
 - Παράμετροι:
 b (int)
- Επιστρεφόμενος τύπος:
 
- pws_data_exist: bool¶
 
- secret_encryption: bool¶
 
- touch_required: bool¶
 
- class nitrokey.nk3.secrets_app.PasswordSafeEntry¶
 Βάσεις:
objectPasswordSafeEntry(login: κωδικός πρόσβασης: Optional[bytes], password: [bytes], metadata: bytes], properties: Optional[bytes] = None, name: Optional[bytes] = None)
- __init__(login, password, metadata, properties=None, name=None)¶
 - Παράμετροι:
 login (bytes | None)
password (bytes | None)
metadata (bytes | None)
properties (bytes | None)
name (bytes | None)
- Επιστρεφόμενος τύπος:
 None
- tlv_encode()¶
 - Επιστρεφόμενος τύπος:
 list[Entry]
- login: bytes | None¶
 
- metadata: bytes | None¶
 
- name: bytes | None = None¶
 
- password: bytes | None¶
 
- properties: bytes | None = None¶
 
- class nitrokey.nk3.secrets_app.RawBytes¶
 Βάσεις:
objectRawBytes(data: list[int])
- __init__(data)¶
 - Παράμετροι:
 data (list[int])
- Επιστρεφόμενος τύπος:
 None
- data: list[int]¶
 
- class nitrokey.nk3.secrets_app.SecretsApp¶
 Βάσεις:
objectΑυτό είναι ένα Secrets App client https://github.com/Nitrokey/trussed-secrets-app
- calculate(cred_id, challenge=None)¶
 Υπολογίστε τον κωδικό OTP για το διαπιστευτήριο με όνομα cred_id και με πρόκληση challenge.
- Παράμετροι:
 cred_id (bytes) – The name of the credential
challenge (int | None) – Πρόκληση για τους υπολογισμούς (μόνο TOTP). Πρέπει να είναι ίσο με: timestamp/period. Η συνήθως χρησιμοποιούμενη τιμή περιόδου είναι 30.
- Επιστρέφει:
 Κωδικός OTP ως συμβολοσειρά byte
- Επιστρεφόμενος τύπος:
 bytes
- change_pin_raw(password, new_password)¶
 - Παράμετροι:
 password (str)
new_password (str)
- Επιστρεφόμενος τύπος:
 None
- clear_code()¶
 Καθαρίστε τη συνθηματική φράση που χρησιμοποιείται για τον έλεγχο ταυτότητας σε άλλες εντολές.
- Επιστρεφόμενος τύπος:
 None
- delete(cred_id)¶
 Διαγραφή διαπιστευτηρίων με το συγκεκριμένο id. Δεν αποτυγχάνει, εάν το συγκεκριμένο διαπιστευτήριο δεν υπάρχει. :param credid: Credential ID
- Παράμετροι:
 cred_id (bytes)
- Επιστρεφόμενος τύπος:
 None
- classmethod encode_properties_to_send(touch_button_required, pin_based_encryption, tlv=False)¶
 Κωδικοποίηση της δομής ιδιοτήτων σε ένα μόνο byte @param touch_button_required: εάν απαιτείται η χρήση του κουμπιού αφής @param pin_based_encryption: εάν ζητείται η κρυπτογράφηση PIN (μόνο κατά την εγγραφή) @param tlv: ορίστε True, εάν αυτό πρέπει να κωδικοποιηθεί ως TLV, σε αντίθεση με το προεπιλεγμένο «TV», w/o L
- Παράμετροι:
 touch_button_required (bool)
pin_based_encryption (bool)
tlv (bool)
- Επιστρεφόμενος τύπος:
 
- feature_active_PIN_authentication()¶
 - Επιστρεφόμενος τύπος:
 bool
- feature_challenge_response_support()¶
 - Επιστρεφόμενος τύπος:
 bool
- feature_extended_list()¶
 - Επιστρεφόμενος τύπος:
 bool
- feature_old_application_version()¶
 - Επιστρεφόμενος τύπος:
 bool
- feature_pws_support()¶
 - Επιστρεφόμενος τύπος:
 bool
- get_credential(cred_id)¶
 - Παράμετροι:
 cred_id (bytes)
- Επιστρεφόμενος τύπος:
 
- get_feature_status_cached()¶
 - Επιστρεφόμενος τύπος:
 
- get_response_for_secret(challenge, secret)¶
 - Παράμετροι:
 challenge (bytes)
secret (bytes)
- Επιστρεφόμενος τύπος:
 bytes
- get_secret_for_passphrase(passphrase)¶
 - Παράμετροι:
 passphrase (str)
- Επιστρεφόμενος τύπος:
 bytes
- is_pin_healthy()¶
 - Επιστρεφόμενος τύπος:
 bool
- list(extended=False)¶
 Επιστρέφει μια λίστα με τα καταχωρημένα διαπιστευτήρια :return: @deprecated
- Παράμετροι:
 extended (bool)
- Επιστρεφόμενος τύπος:
 list[Tuple[bytes, bytes] | bytes]
- list_with_properties(version=1)¶
 Επιστρέφει μια λίστα με τα καταχωρημένα διαπιστευτήρια με ιδιότητες :return: ListItems
- Παράμετροι:
 version (int)
- Επιστρεφόμενος τύπος:
 List[ListItem]
- protocol_v2_confirm_all_requests_with_pin()¶
 - Επιστρεφόμενος τύπος:
 bool
- protocol_v3_separate_pin_and_no_pin_space()¶
 - Επιστρεφόμενος τύπος:
 bool
- register(credid, secret=b'00000000000000000000', digits=6, kind=Kind.NotSet, algo=Algorithm.Sha1, initial_counter_value=0, touch_button_required=False, pin_based_encryption=False, login=None, password=None, metadata=None)¶
 Εγγραφή νέου διαπιστευτηρίου OTP :param credid: :param secret: Το κοινόχρηστο κλειδί :param digits: Digits of the produced code :param kind: Παραλλαγή OTP - HOTP ή TOTP :param algo: Ο αλγόριθμος κατακερματισμού που θα χρησιμοποιηθεί - SHA1, SHA256 ή SHA512 :param initial_counter_value: Η αρχική τιμή του μετρητή για το διαπιστευτήριο HOTP (μόνο HOTP) :param touch_button_required: Απαιτείται επιβεβαίωση της παρουσίας του χρήστη για τη χρήση αυτού του διαπιστευτηρίου :param pin_based_encryption: Προτίμηση του χρήστη για πρόσθετη κρυπτογράφηση βάσει PIN :param login: Πεδίο σύνδεσης για το Password Safe :param password: Πεδίο κωδικού πρόσβασης για το Password Safe :param metadata: Πεδίο μεταδεδομένων για το Password Safe :return: None
- register_yk_hmac(slot, secret)¶
 Καταχωρήστε μια υποδοχή που είναι συμβατή με το Yubikey για πρόκληση-απάντηση. @param slot: challenge-response slot @param secret: το μυστικό
- Παράμετροι:
 slot (int)
secret (bytes)
- Επιστρεφόμενος τύπος:
 None
- rename_credential(cred_id, new_name)¶
 Μετονομασία διαπιστευτηρίων. Ένα ψευδώνυμο για την κλήση update_credential(). @param cred_id: @param new_name: Νέο αναγνωριστικό για το διαπιστευτήριο.
- Παράμετροι:
 cred_id (bytes)
new_name (bytes)
- Επιστρεφόμενος τύπος:
 None
- reset()¶
 Αφαίρεση όλων των διαπιστευτηρίων από τη βάση δεδομένων
- Επιστρεφόμενος τύπος:
 None
- select()¶
 Εκτέλεση της εντολής SELECT, η οποία επιστρέφει λεπτομέρειες σχετικά με τη συσκευή, συμπεριλαμβανομένης της πρόκλησης που απαιτείται για τον έλεγχο ταυτότητας. :return Δομή κατάστασης SelectResponse. Τα πεδία Challenge και Algorithm είναι None, εάν δεν έχει οριστεί η συνθηματική φράση.
- Επιστρεφόμενος τύπος:
 
- set_code(passphrase)¶
 Ορίστε τον κωδικό με τις προεπιλογές που προτείνονται στις προδιαγραφές του πρωτοκόλλου: - https://developers.yubico.com/OATH/YKOATH_Protocol.html
- Παράμετροι:
 passphrase (str)
- Επιστρεφόμενος τύπος:
 None
- set_code_raw(key, challenge, response)¶
 Ορίστε ή καταργήστε τη συνθηματική φράση που χρησιμοποιείται για τον έλεγχο ταυτότητας σε άλλες εντολές. Ακατέργαστη διασύνδεση. :param key: Συνθηματική φράση χρήστη που επεξεργάζεται μέσω PBKDF2(ID,1000) και περιορίζεται στα πρώτα 16 bytes. :param challenge: Η τρέχουσα πρόκληση που λαμβάνεται από την εντολή SELECT. :param response: Τα δεδομένα που υπολογίζονται στον πελάτη, ως απόδειξη της σωστής εγκατάστασης.
- Παράμετροι:
 key (bytes)
challenge (bytes)
response (bytes)
- Επιστρεφόμενος τύπος:
 None
- set_pin_raw(password)¶
 - Παράμετροι:
 password (str)
- Επιστρεφόμενος τύπος:
 None
- update_credential(cred_id, new_name=None, login=None, password=None, metadata=None, touch_button=None)¶
 Ενημέρωση πεδίων διαπιστευτηρίων - όνομα, χαρακτηριστικά και πεδία PWS. Τα μη συμπληρωμένα πεδία δεν θα κωδικοποιηθούν και δεν θα χρησιμοποιηθούν κατά τη διαδικασία ενημέρωσης (δεν θα αλλάξουν την τρέχουσα τιμή). @param cred_id: Το αναγνωριστικό διαπιστευτηρίου προς τροποποίηση @param new_name: Νέο αναγνωριστικό για το διαπιστευτήριο @param login: Νέο περιεχόμενο του πεδίου login @param password: Νέο περιεχόμενο του πεδίου password @param metadata: Νέο περιεχόμενο πεδίου μεταδεδομένων @param touch_button: Ορισμός εάν η χρήση του κουμπιού αφής πρέπει να είναι υποχρεωτική
- Παράμετροι:
 cred_id (bytes)
new_name (bytes | None)
login (bytes | None)
password (bytes | None)
metadata (bytes | None)
touch_button (bool | None)
- Επιστρεφόμενος τύπος:
 None
- validate(passphrase)¶
 Authenticate using a passphrase
- Παράμετροι:
 passphrase (str)
- Επιστρεφόμενος τύπος:
 None
- validate_raw(challenge, response)¶
 Πιστοποίηση ταυτότητας με χρήση μιας φράσης πρόσβασης. Ακατέργαστη διασύνδεση. :param challenge: Η τρέχουσα πρόκληση που λαμβάνεται από την εντολή SELECT. :param response: Η απάντηση που υπολογίζεται με βάση την πρόκληση και το μυστικό.
- Παράμετροι:
 challenge (bytes)
response (bytes)
- Επιστρεφόμενος τύπος:
 bytes
- verify_code(cred_id, code)¶
 Προχωρήστε στην επαλήθευση του εισερχόμενου κωδικού OTP (ή αλλιώς αντίστροφη HOTP). :param cred_id: Το όνομα του διαπιστευτηρίου :param code: Ο κωδικός HOTP προς επαλήθευση. u32 αναπαράσταση. :return: αποτυγχάνει με σφάλμα OTPAppException- επιστρέφει True αν ο κωδικός ταιριάζει με την τιμή που υπολογίζεται εσωτερικά.
- Παράμετροι:
 cred_id (bytes)
code (int)
- Επιστρεφόμενος τύπος:
 bool
- verify_pin_raw(password)¶
 - Παράμετροι:
 password (str)
- Επιστρεφόμενος τύπος:
 None
- log: Logger¶
 
- logfn: Callable[[str], Any]¶
 
- write_corpus_fn: Callable[[Instruction | CCIDInstruction, bytes], Any] | None¶
 
- class nitrokey.nk3.secrets_app.SecretsAppExceptionID¶
 Βάσεις:
IntEnum- __new__(value)¶
 
- ClassNotSupported = 28160¶
 
- CommandChainingNotSupported = 26756¶
 
- ConditionsOfUseNotSatisfied = 27013¶
 
- FunctionNotSupported = 27265¶
 
- IncorrectDataParameter = 27264¶
 
- IncorrectP1OrP2Parameter = 27270¶
 
- InstructionNotSupportedOrInvalid = 27904¶
 
- KeyReferenceNotFound = 27272¶
 
- LogicalChannelNotSupported = 26753¶
 
- MoreDataAvailable = 25087¶
 
- NotEnoughMemory = 27268¶
 
- NotFound = 27266¶
 
- OperationBlocked = 27011¶
 
- SecureMessagingNotSupported = 26754¶
 
- SecurityStatusNotSatisfied = 27010¶
 
- Success = 36864¶
 
- UnspecifiedCheckingError = 28416¶
 
- UnspecifiedNonpersistentExecutionError = 25600¶
 
- UnspecifiedPersistentExecutionError = 25856¶
 
- VerificationFailed = 25344¶
 
- WrongLength = 26368¶
 
- class nitrokey.nk3.secrets_app.SelectResponse¶
 Βάσεις:
objectSelectResponse(version: pin_attempt_counter: Προαιρετική[bytes], pin_attempt_counter: int], salt: [bytes], challenge: [bytes], algorithm: [bytes], serial_number: Προαιρετικός[bytes])
- __init__(version, pin_attempt_counter, salt, challenge, algorithm, serial_number)¶
 - Παράμετροι:
 version (bytes | None)
pin_attempt_counter (int | None)
salt (bytes | None)
challenge (bytes | None)
algorithm (bytes | None)
serial_number (bytes | None)
- Επιστρεφόμενος τύπος:
 None
- version_str()¶
 - Επιστρεφόμενος τύπος:
 str
- algorithm: bytes | None¶
 
- challenge: bytes | None¶
 
- pin_attempt_counter: int | None¶
 
- salt: bytes | None¶
 
- serial_number: bytes | None¶
 
- version: bytes | None¶
 
- class nitrokey.nk3.secrets_app.Tag¶
 Βάσεις:
Enum- Algorithm = 123¶
 
- Challenge = 116¶
 
- CredentialId = 113¶
 
- InitialCounter = 122¶
 
- Key = 115¶
 
- NameList = 114¶
 
- NewPassword = 129¶
 
- PINCounter = 130¶
 
- Password = 128¶
 
- Properties = 120¶
 
- PwsLogin = 131¶
 
- PwsMetadata = 133¶
 
- PwsPassword = 132¶
 
- Response = 117¶
 
- SerialNumber = 143¶
 
- Version = 121¶