ascii-chat 0.6.0
Real-time terminal-based video chat with ASCII art conversion
Loading...
Searching...
No Matches
gpg_keys.h
Go to the documentation of this file.
1#pragma once
2
30#include "../../common.h"
31#include "../key_types.h" // Include the key type definitions
32#include <stdint.h>
33#include <stddef.h>
34#include <stdbool.h>
35
70asciichat_error_t parse_gpg_key(const char *gpg_key_text, public_key_t *key_out);
71
95asciichat_error_t parse_gpg_key_binary(const uint8_t *gpg_key_binary, size_t key_size, public_key_t *key_out);
96
115asciichat_error_t validate_gpg_key_format(const char *gpg_key_text);
116
138asciichat_error_t extract_ed25519_from_gpg(const char *gpg_key_text, uint8_t ed25519_pk[32]);
139
161asciichat_error_t gpg_to_x25519_public(const char *gpg_key_text, uint8_t x25519_pk[32]);
162
192asciichat_error_t get_gpg_fingerprint(const char *gpg_key_text, uint8_t fingerprint_out[20]);
193
216asciichat_error_t get_gpg_key_id(const char *gpg_key_text, uint8_t key_id_out[8]);
217
240asciichat_error_t check_gpg_key_expiry(const char *gpg_key_text, bool *is_expired);
241
271asciichat_error_t format_gpg_key_display(const char *gpg_key_text, char *output, size_t output_size);
272
292asciichat_error_t extract_gpg_key_comment(const char *gpg_key_text, char *comment_out, size_t comment_size);
293
unsigned char uint8_t
Definition common.h:56
asciichat_error_t
Error and exit codes - unified status values (0-255)
Definition error_codes.h:46
asciichat_error_t check_gpg_key_expiry(const char *gpg_key_text, bool *is_expired)
Check if GPG key is expired.
Definition gpg_keys.c:164
asciichat_error_t extract_ed25519_from_gpg(const char *gpg_key_text, uint8_t ed25519_pk[32])
Extract Ed25519 public key from GPG key.
Definition gpg_keys.c:95
asciichat_error_t validate_gpg_key_format(const char *gpg_key_text)
Validate GPG key format and structure.
asciichat_error_t extract_gpg_key_comment(const char *gpg_key_text, char *comment_out, size_t comment_size)
Extract key comment/email from GPG key.
Definition gpg_keys.c:303
asciichat_error_t get_gpg_key_id(const char *gpg_key_text, uint8_t key_id_out[8])
Get GPG key ID (short fingerprint)
Definition gpg_keys.c:151
asciichat_error_t parse_gpg_key(const char *gpg_key_text, public_key_t *key_out)
Parse GPG key from armored text format.
Definition gpg_keys.c:32
asciichat_error_t get_gpg_fingerprint(const char *gpg_key_text, uint8_t fingerprint_out[20])
Get GPG key fingerprint.
Definition gpg_keys.c:137
asciichat_error_t parse_gpg_key_binary(const uint8_t *gpg_key_binary, size_t key_size, public_key_t *key_out)
Parse GPG key from binary format.
Definition gpg_keys.c:78
asciichat_error_t format_gpg_key_display(const char *gpg_key_text, char *output, size_t output_size)
Format GPG key for display.
Definition gpg_keys.c:266
asciichat_error_t gpg_to_x25519_public(const char *gpg_key_text, uint8_t x25519_pk[32])
Convert GPG key to X25519 for key exchange.
Definition gpg_keys.c:111
Public key structure.
Definition key_types.h:69