Back to News
Advertisement
eemurlin about 14 hours ago 13 commentsRead Article on cms-sfx-demo.apeleg.com

ZH version is available. Content is displayed in original English for accuracy.

Air-gapped file encryption packed into a single, self-decrypting HTML page. Repo: https://github.com/ApelegHQ/ts-cms-ep-sfx

I was inspired by self-extracting archives. I wanted to share files with basically no dependencies. The goal was:

  1. Something that didn't require any installation (assuming a web browser)
  2. Have a single file with no network that could self-decrypt
  3. Be fully auditable
The second point is done by having (sort of(*)) reproducible builds and embedded OpenPGP signatures.

The first point is made by cleverly manipulating the HTML structure so that it can decrypt without breaking the PGP signature. It can even decrypt using bare openssl (which was a design goal too, though getting the exact structure right took some work and bug reports).

The third point is accomplished by the first two, and by the source being freely available.

(*) Depends on the OS at the moment.

Advertisement

⚡ Community Insights

Discussion Sentiment

83% Positive

Analyzed from 221 words in the discussion.

Trending Topics

#cool#self#decrypt#point#https#share#html#innovative#approach#goal

Discussion (13 Comments)Read Original on HackerNews

som•about 1 hour ago
A version of this that supported PKE would be cool. So you don't have to share a password in a side channel
lukan•about 2 hours ago
I assume the "air gapped" part is merely indicating no internet required?
az226•about 2 hours ago
Offline would be a better word.
firefax•about 2 hours ago
cool project!

also does everyone have to enable js to vote, or did i troll too hard? (sorry!)

DylanMerigaud•about 14 hours ago
Self-decrypting HTML? That's an innovative approach.
emurlin•about 14 hours ago
Yeah, I was inspired by self-extracting archives. I wanted to share files with basically no dependencies.

The goal was:

1. Something that didn't require any installation (assuming a web browser)

2. Have a single file with no network that could self-decrypt

3. Be fully auditable

The second point is done by having (sort of(*)) reproducible builds and embedded OpenPGP signatures.

The first point is made by cleverly manipulating the HTML structure so that it can decrypt without breaking the PGP signature. It can even decrypt using bare openssl (which was a design goal too, though getting the exact structure right took some work and bug reports).

The third point is accomplished by the first two, and by the source being freely available.

(*) Depends on the OS at the moment.

dang•about 3 hours ago
I'm going to move this description to the top and re-up the post - I hope that's ok!
112233•about 2 hours ago
Somebody already has copied this innovative approach and travelled to past apparently: https://acme.com/software/securepage/
jszymborski•about 2 hours ago
Methods like these go way further back than 2010... I recall one that had a reward promised if you could break it.

EDIT: Here's a patent from 2006 [0]

[0] https://image-ppubs.uspto.gov/dirsearch-public/print/downloa...

nikhilkxmar•about 7 hours ago
Cool!
FatalLogic•about 14 hours ago
dang•about 2 hours ago
Added above. Thanks!
emurlin•about 14 hours ago
Correct