<commit_before># homekit-accessory-emulator
HomeKit Accessory Emulation for Particle / Arduino Development Boards

Using recently released HomeKit Non-commercial HAP Specification to create an embedded accessory client. Goal of this project is to test C/C++ based SHA-512 based SRP enabled HAP protocols for eventual porting to Particle.io or Arduino libraries.


Motivation
----------

This project allows for the testing of embedded C/C++ code for use in Particle / Arduino boards by briding the C/C++ code with high-level Swift and Objective-C based native HomeKit APIs. This Mac OS based application acts as a HomeKit accessory, broadcasting it's presence over Bonjour to be discovered by the iOS Home app. Once discovered, the user starts the pairing process to use the Home app to establish a connection with thie emulator. This process allows for the testing of several C/C++ libraries which can then be used in the embedded device. Specifically, this emulator allows for the testing of the following libraries:

    - SRP protocol with N = 3072, g = 5 radix
    - ChaCha20_Polo1305 cypher
    - ed25519 codec<commit_msg>readme update<commit_after># homekit-accessory-emulator
HomeKit Accessory Emulation for Particle / Arduino Development Boards. 


Using recently released HomeKit Non-commercial HAP Specification to create an embedded accessory client. Goal of this project is to test C/C++ based SHA-512 based SRP enabled HAP protocols for eventual porting to Particle.io or Arduino libraries. This project contains a Mac OS based XCode project to test embedded code available here: [https://github.com/moflo/homekit-particle](https://github.com/moflo/homekit-particle)



Motivation
----------

This project allows for the testing of embedded C/C++ code for use in Particle / Arduino boards by briding the C/C++ code with high-level Swift and Objective-C based native HomeKit APIs. This Mac OS based application acts as a HomeKit accessory, broadcasting it's presence over Bonjour to be discovered by the iOS Home app. Once discovered, the user starts the pairing process to use the Home app to establish a connection with thie emulator. This process allows for the testing of several C/C++ libraries which can then be used in the embedded device. Specifically, this emulator allows for the testing of the following libraries:

    - SRP protocol with N = 3072, g = 5 radix
    - ChaCha20_Polo1305 cypher
    - ed25519 codec
{'fraction_non_alphanumeric': 0.05090311986863711, 'fraction_numerical': 0.015599343185550082, 'mean_word_length': 4.185106382978724, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2414888', 'n_tokens_mistral': 667, 'n_tokens_neox': 593, 'n_words': 340}