Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: atclient pkam_authenticate #42

Merged
merged 49 commits into from
Nov 2, 2023
Merged

Conversation

JeremyTubongbanua
Copy link
Member

@JeremyTubongbanua JeremyTubongbanua commented Oct 23, 2023

related to #39

- What I did

general changes:

  • use #ifdef X_H, #define X_H, #endif as opposed to #pragma once to ensure compatibility with different compilers
  • utilize unsigned long as opposed to size_t to ensure compatibility with different compilers
  • run_ctest.sh in atclient and atchops to run ctests

atchops:

  • new aes.h and aes.c -> contains generic aes key generation and aes bits (128 and 256) enum
  • new iv.h and iv.c -> contains generation of base64 and non-base64 initialization vectors
  • new rsakey.h -> out sourced the rsakey interactions from the rsa lib
  • refactored tests to print things more tidely

atclient:

  • new atclient_pkam_authenticate function:
int atclient_pkam_authenticate(atclient_ctx *ctx, atclient_atkeys atkeys, const char *atsign);
  • new atkey.h and atkey.c -> represents an AtKey in the atProtocol
  • new atkeys.h and atkeys.c -> holds decrypted RSA and AES keys in base64 and atchops keys to be used in subsequent cryptography
  • new atkeysfile.h and atkeys.c -> represents the atkeys file (holds encrypted cryptographic keys and base64) as well as file reading functionality
  • new atlogger.h and atlogger.c -> logging utility
  • new atstr.h and atstr.c -> represents the 3 dimensions of a string: buffer length, buffer pointer, and the written length. to be used inside of structs
  • new metadata.h and metadata.c -> represents metadata in the atProtocol

examples:

  • examples refactoring - upload placeholders for include folders and static libraries and not the actual files
  • new atkey example
  • new pkam_authenticate example
  • new reading_atkeys example

- How I did it

with my bare hands

- How to verify it

tests (even though refactored) are passing

- Description for the changelog

@JeremyTubongbanua JeremyTubongbanua self-assigned this Oct 23, 2023
Copy link
Contributor

@realvarx realvarx left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@JeremyTubongbanua
Copy link
Member Author

@realvarx introduced #46

@JeremyTubongbanua JeremyTubongbanua merged commit 14d2107 into trunk Nov 2, 2023
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants