- Fix segmentation faults when freeing string literals with old Nitrokey versions. - Add support and tests for the Nitrokey Storage. - Add support for the currently unsupported commands: - `NK_lock_device` - `NK_factory_reset` - `NK_build_aes_key` - `NK_unlock_user_password` - `NK_erase_hotp_slot` - `NK_erase_totp_slot` - `NK_change_admin_PIN` - `NK_change_user_PIN` - `NK_enable_password_safe` - `NK_get_password_safe_slot_status` - `NK_get_password_safe_slot_name` - `NK_get_password_safe_slot_login` - `NK_get_password_safe_slot_password` - `NK_write_password_safe_slot` - `NK_erase_password_safe_slot` - `NK_is_AES_supported` - `NK_send_startup` - `NK_unlock_encrypted_volume` - `NK_lock_encrypted_volume` - `NK_unlock_hidden_volume` - `NK_lock_hidden_volume` - `NK_create_hidden_volume` - `NK_set_unencrypted_read_only` - `NK_set_unencrypted_read_write` - `NK_export_firmware` - `NK_clear_new_sd_card_warning` - `NK_fill_SD_card_with_random_data` - `NK_change_update_password` - `NK_get_status_storage_as_string` - `NK_get_SD_usage_data_as_string` - `NK_get_progress_bar_value` - Fix timing issues with the `totp` and `totp_pin` test cases. - Fix the inconsistent method `get_major_firmware_version`. - Consider implementing `Drop` instead of the method `disconnect`. - Find an example for `set_time`, also adapt `get_totp_code`. - Improve log level documentation. - Clear passwords from memory. - Find a nicer syntax for the `write_config` test.