{"id":24797390,"url":"https://github.com/germanaizek/picobase64","last_synced_at":"2025-10-12T23:30:24.625Z","repository":{"id":133749840,"uuid":"357193347","full_name":"GermanAizek/picobase64","owner":"GermanAizek","description":"Very lightweight encoder and decoder base64 for C/C++","archived":false,"fork":false,"pushed_at":"2024-10-28T17:17:27.000Z","size":64,"stargazers_count":4,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-05T22:03:36.002Z","etag":null,"topics":["base64","c","cpp","cross-platform","header-only","lightweight"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/GermanAizek.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}},"created_at":"2021-04-12T12:55:44.000Z","updated_at":"2024-10-28T17:17:32.000Z","dependencies_parsed_at":null,"dependency_job_id":"4171b421-30b3-4f49-94c7-4b285a394cfc","html_url":"https://github.com/GermanAizek/picobase64","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/GermanAizek/picobase64","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GermanAizek%2Fpicobase64","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GermanAizek%2Fpicobase64/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GermanAizek%2Fpicobase64/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GermanAizek%2Fpicobase64/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GermanAizek","download_url":"https://codeload.github.com/GermanAizek/picobase64/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GermanAizek%2Fpicobase64/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279013446,"owners_count":26085274,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-12T02:00:06.719Z","response_time":53,"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":["base64","c","cpp","cross-platform","header-only","lightweight"],"created_at":"2025-01-30T01:28:17.625Z","updated_at":"2025-10-12T23:30:24.381Z","avatar_url":"https://github.com/GermanAizek.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# picobase64\nVery fast and lightweight header encoder/decoder base64 and strlen.\n\n**The fastest library for encoding and decoding base64!**\n\n**THIS IS NOT A JOKE**\n\n# Benchmarks\n\nAdditional information on benchmarks, tests and charts see below.\n\n### Tests\n\n*Less time (in microseconds) faster.*\n\nThe two fastest encoder implementations I found were Jouni Malinen's at\n\nhttp://web.mit.edu/freebsd/head/contrib/wpa/src/utils/base64.c\n\nand the Apache at\n\nhttps://opensource.apple.com/source/QuickTimeStreamingServer/QuickTimeStreamingServer-452/CommonUtilitiesLib/base64.c.\n\n```\n#\tImplementation\t20\t60\t100\t300\t1000\t2000\t4000\t9000\t16000\t30000\t60000\n1\tadition\t        0.066\t0.091\t0.114\t0.233\t0.645\t1.303\t2.469\t5.397\t9.465\t17.900\t35.913\n2\tpolfosol_mod\t0.071\t0.095\t0.139\t0.276\t0.816\t1.548\t3.390\t8.021\t12.415\t24.797\t45.845\n3\tpolfosol\t0.079\t0.083\t0.119\t0.278\t0.808\t1.675\t3.482\t7.109\t12.543\t25.381\t48.208\n4\ttomykaria\t0.075\t0.126\t0.163\t0.383\t1.191\t2.247\t4.516\t10.338\t18.045\t32.547\t65.836\n5\tCppCodec\t0.078\t0.136\t0.190\t0.443\t1.349\t2.723\t5.352\t11.942\t20.938\t39.573\t78.995\n6\tgnome\t        0.091\t0.152\t0.212\t0.512\t1.509\t2.892\t5.857\t12.630\t22.295\t42.216\t84.956\n7\tapache\t        0.094\t0.180\t0.264\t0.607\t1.850\t3.600\t7.097\t15.923\t28.017\t52.350\t104.498\n```\n\n![](https://raw.githubusercontent.com/GermanAizek/picobase64/main/time_encode.svg)\n\n```\n#\tImplementation\t20\t60\t100\t300\t1000\t2000\t4000\t9000\t16000\t30000\t60000\n1\tadition\t        0.066\t0.091\t0.114\t0.233\t0.645\t1.303\t2.469\t5.397\t9.465\t17.900\t35.913\n2\tpolfosol_mod\t0.071\t0.095\t0.139\t0.276\t0.816\t1.548\t3.390\t8.021\t12.415\t24.797\t45.845\n3\tpolfosol\t0.079\t0.083\t0.119\t0.278\t0.808\t1.675\t3.482\t7.109\t12.543\t25.381\t48.208\n4\ttomykaria\t0.075\t0.126\t0.163\t0.383\t1.191\t2.247\t4.516\t10.338\t18.045\t32.547\t65.836\n5\tCppCodec\t0.078\t0.136\t0.190\t0.443\t1.349\t2.723\t5.352\t11.942\t20.938\t39.573\t78.995\n6\tgnome\t        0.091\t0.152\t0.212\t0.512\t1.509\t2.892\t5.857\t12.630\t22.295\t42.216\t84.956\n7\tapache\t        0.094\t0.180\t0.264\t0.607\t1.850\t3.600\t7.097\t15.923\t28.017\t52.350\t104.498\n```\n\n![](https://raw.githubusercontent.com/GermanAizek/picobase64/main/time_decode.svg)\n\n# Copyrights\n\nThank you so much who developed the algorithms and who tested it.\n\nThe development of the *Base64 encoder* was done by **mohsenatigh and leguilc (ADITION technologies AG)**\n\nThe development of the *Base64 decoder* was done by **mohsenatigh and leguilc (ADITION technologies AG)**\n\nMerge encoders, decoders, strlen in *picobase64* was done by maintainer **Herman Semenov (GermanAizek)**\n\nhttps://github.com/GermanAizek/picobase64/\n\nRepository *base64* with collection codes and tests was done by maintainer **Gaspard Petit (gaspardpetit)**\n\nhttps://github.com/gaspardpetit/base64/\n\n## License\n\nPicoBase64 is licensed under the ([GNU General Public License 3.0](https://www.gnu.org/licenses/gpl-3.0.html))\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgermanaizek%2Fpicobase64","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgermanaizek%2Fpicobase64","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgermanaizek%2Fpicobase64/lists"}