{"id":50479536,"url":"https://github.com/nopnop2002/esp-idf-ssl-client","last_synced_at":"2026-06-01T16:31:05.388Z","repository":{"id":349451224,"uuid":"1202351844","full_name":"nopnop2002/esp-idf-ssl-client","owner":"nopnop2002","description":"Simple ssl client for esp-idf","archived":false,"fork":false,"pushed_at":"2026-04-27T07:12:42.000Z","size":16,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-27T09:10:46.086Z","etag":null,"topics":["esp-idf","esp32","ssl","ssl-client"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nopnop2002.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-05T23:36:47.000Z","updated_at":"2026-04-27T07:12:46.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/nopnop2002/esp-idf-ssl-client","commit_stats":null,"previous_names":["nopnop2002/esp-idf-ssl-client"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/nopnop2002/esp-idf-ssl-client","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nopnop2002%2Fesp-idf-ssl-client","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nopnop2002%2Fesp-idf-ssl-client/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nopnop2002%2Fesp-idf-ssl-client/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nopnop2002%2Fesp-idf-ssl-client/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nopnop2002","download_url":"https://codeload.github.com/nopnop2002/esp-idf-ssl-client/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nopnop2002%2Fesp-idf-ssl-client/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33784625,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-01T02:00:06.963Z","response_time":115,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["esp-idf","esp32","ssl","ssl-client"],"created_at":"2026-06-01T16:31:03.292Z","updated_at":"2026-06-01T16:31:05.379Z","avatar_url":"https://github.com/nopnop2002.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# esp-idf-ssl-client\nSimple ssl client for esp-idf.   \n\nESP-IDF includes [this](https://github.com/Mbed-TLS/mbedtls) mbedtsl library.   \nYou can use this components as standard.   \nESP-IDF includes many example codes, but there wasn't a simple SSL communication example, so I created one.   \nYou can use mbedtls_ssl_write/mbedtls_ssl_read instead of read/write.   \n\n# Software requirements\nESP-IDF V5.0 or later.   \nESP-IDF V4.4 release branch reached EOL in July 2024.   \n\n__Notes on mbedtls version__   \nESP-IDF V5.x includes mbedtls Version 3.x.x.   \nESP-IDF V6.x includes mbedtls Version 4.x.x.   \nIn mbedtls V3, applications using TLS needed to provide a random generator, generally by instantiating an entropy context (mbedtls_entropy_context) and a DRBG context (mbedtls_ctr_drbg_context or mbedtls_hmac_drbg_context).    \nIn mbedtls V4, all features that require a random number generator (RNG) now use the random number generator provided by the PSA subsystem.   \nSo It is no longer necessary to instantiate the entropy context and the DRBG context.   \n\n# Installation\n```\ngit clone https://github.com/nopnop2002/esp-idf-ssl-client\ncd esp-idf-ssl-client/\nchmod 777 mkkey.sh\n./mkkey.sh\nidf.py menuconfig\nidf.py flash\n```\n\nmkkey.sh creates a server certificate file.   \nThe server certificate file is associated with the SSL server's IP address.   \nmkkey.sh automatically retrieves the IP address of the server on which the script is executed and treats that address as an SSL server.   \nTo manually configure the SSL server's IP address, modify the script as follows:   \n```\nIP=\"192.168.0.123\"\nopenssl req -x509 -new -nodes -key server.key -subj \"/CN=${IP}\" -days 10000 -out server.crt\n```\n\n\n# Configuration   \n![Image](https://github.com/user-attachments/assets/9fa2ecf4-d36e-4b74-9c81-038cb5c8da5a)\n![Image](https://github.com/user-attachments/assets/23fb100a-7ab4-4790-bb25-0f7a5d6f19d5)\n\n\n# Start the SSL server\n- C language\n\t```\n\tcd esp-idf-ssl-client/\n\tcd clang-tls-communication\n\tmake\n\t./server\n\t```\n\t![Image](https://github.com/user-attachments/assets/e030e803-c799-4e28-91b6-c2ab1ed66a47)\n\n- python script\n\t```\n\tcd esp-idf-ssl-client/\n\tcd python-tls-communication\n\tpython3 server.py\n\t```\n\t![Image](https://github.com/user-attachments/assets/a9a0bfec-fc3f-48c8-9fd3-f27596dfa961)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnopnop2002%2Fesp-idf-ssl-client","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnopnop2002%2Fesp-idf-ssl-client","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnopnop2002%2Fesp-idf-ssl-client/lists"}