{"id":50486913,"url":"https://github.com/systemslibrarian/crypto-lab-iron-letter","last_synced_at":"2026-06-01T23:02:51.217Z","repository":{"id":349191207,"uuid":"1201368112","full_name":"systemslibrarian/crypto-lab-iron-letter","owner":"systemslibrarian","description":"Browser-based demo of asymmetric encryption — ECIES P-256 vs RSA-OAEP, side by side. Seal a letter. Only one key can open it.","archived":false,"fork":false,"pushed_at":"2026-04-11T21:42:31.000Z","size":110,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-11T23:24:39.873Z","etag":null,"topics":["aes-gcm","asymmetric-encryption","crypto-lab","ecdh","ecies","hkdf","hybrid-encryption","rsa-oaep","webcrypto"],"latest_commit_sha":null,"homepage":"https://systemslibrarian.github.io/crypto-lab-iron-letter/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/systemslibrarian.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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-04T15:29:35.000Z","updated_at":"2026-04-11T21:42:37.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/systemslibrarian/crypto-lab-iron-letter","commit_stats":null,"previous_names":["systemslibrarian/iron-letter","systemslibrarian/crypto-lab-iron-letter"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/systemslibrarian/crypto-lab-iron-letter","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/systemslibrarian%2Fcrypto-lab-iron-letter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/systemslibrarian%2Fcrypto-lab-iron-letter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/systemslibrarian%2Fcrypto-lab-iron-letter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/systemslibrarian%2Fcrypto-lab-iron-letter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/systemslibrarian","download_url":"https://codeload.github.com/systemslibrarian/crypto-lab-iron-letter/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/systemslibrarian%2Fcrypto-lab-iron-letter/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33797128,"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":["aes-gcm","asymmetric-encryption","crypto-lab","ecdh","ecies","hkdf","hybrid-encryption","rsa-oaep","webcrypto"],"created_at":"2026-06-01T23:02:50.359Z","updated_at":"2026-06-01T23:02:51.206Z","avatar_url":"https://github.com/systemslibrarian.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Iron Letter\n\n## What It Is\n\nIron Letter is a browser-based demo of ECIES P-256 and RSA-OAEP hybrid encryption built on the Web Crypto API. ECIES P-256 combines ECDH, HKDF-SHA256, and AES-256-GCM, while RSA-2048 and RSA-4096 use RSA-OAEP to wrap an AES-256-GCM content key. The problem it solves is public-key message sealing, where anyone can encrypt to a recipient but only the matching private key can decrypt. This is an asymmetric security model, with symmetric AES used inside each hybrid envelope for message confidentiality and integrity.\n\n## When to Use It\n\n- Use it to teach or compare asymmetric envelope-encryption designs, because it shows ECIES P-256 and RSA-OAEP metrics side by side under the same runtime conditions.\n- Use it for client-side experimentation with WebCrypto key generation and ciphertext formats, because all cryptographic operations happen locally in the browser.\n- Use it to demonstrate shareable public-key workflows, because the app can encode public keys into URLs and QR codes without exposing private keys.\n- Do not use it as-is for production key management or compliance-sensitive systems, because it is a demo app and does not provide hardened operational controls.\n\n## Live Demo\n\n**[Live Demo](https://systemslibrarian.github.io/crypto-lab-iron-letter/)**\n\nThe demo lets you generate keypairs, seal messages, and open ciphertext for ECIES P-256, RSA-2048, and RSA-4096. You can switch algorithm tabs, inspect timing and size metrics, and compare public-key and ciphertext characteristics in the comparison view. It also includes controls for copying share URLs and generating QR codes for public keys.\n\n## How to Run Locally\n\n```bash\ngit clone https://github.com/systemslibrarian/crypto-lab-iron-letter.git\ncd crypto-lab-iron-letter\nnpm install\nnpm run dev\n```\n\nNo environment variables are required.\n\n## Part of the Crypto-Lab Suite\n\nIron Letter is one module in the broader Crypto-Lab collection at https://systemslibrarian.github.io/crypto-lab/.\n\nWhether you eat or drink or whatever you do, do it all for the glory of God. — 1 Corinthians 10:31\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsystemslibrarian%2Fcrypto-lab-iron-letter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsystemslibrarian%2Fcrypto-lab-iron-letter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsystemslibrarian%2Fcrypto-lab-iron-letter/lists"}