Literally the modern equivalent of the old video-based backup systems. I remember they existed for both the PC and the Amiga. You would load a blank VHS tape into a VCR, connect the output of the computer to that VCR's input, and then tell the program which data you'd like to backup to the tape. It would generate this flashing "mess" of black and white pixels that you'd record to the tape. To restore, you'd connect the VCR output to a little box that came with the product, it would convert the black and white data in the video signal to a data stream that the program would use to restore your data.
A portion of the signal would be used for timing, metadata and error correction, so the program could tell you if the data was sufficiently damaged upon restore.
We used to use regular audio cassette recorders to store/restore data on the TRS80 before hard/floppy drives. It's also how you backed up/restored midi data from early synths. It basically just sounded like an early dial up modem transmitting data when you played it back as audio.
There was also DVStreamer for Windows and other tools for other platforms which would store data on MiniDV tapes. This is of course a bit less interesting than storage to VHS, since MiniDV was already storing a bitstream, but still a clever oddity. I think you could store ~13.5GB in SP mode or 20GB in LP mode (reduced error correction).
Minor nit - the Sony PCM adaptor worked with a Betacam deck. My parents did a documentary in the late 80s where almost all the original music for the soundtrack was recorded with a Sony PCM-1 and SL-F1. I wish I still had the masters for it.
(IMO there is not enough of these posts, and getting less over time.)
A refreshing "actual hacker" project that makes me look anew at the tools I always use...
So, my coffee maker is sending data to the net - maybe I can use that for backup, and have it replicated both in the fridge and in the living room lights...
But how would I retrieve that? Hmm. I assume that both Alexa and Google assistant are tracking everything that goes through my IoT devices. I'll ask GPT how to hack my Nest device to pull back data on demand, that oughta work, surely?! :D
It isn't exactly a "glitch", just something Google doesn't care about (but absolutely will care about if too many people start doing it).
I remember way back in the day someone came up with a clever way of using Gmail attachments to build a cloud storage drive mounted to your filesystem. Then Google themselves released Drive soon after.
Nice, until Google introduces a new compression algorithm that says: hey this looks like noise, let's replace it by this other user's noise so we can save on storage costs.
I like the novelty of this project, but if you value your Google account I wouldn't try this out.
Google has been known to close accounts and "related" accounts for abuse (as defined by them). So even if you create another account, don't expect your main account to survive if there's any possible link between them.
They are the judge, jury and executor, so eff around at your own peril.
$20 a month gives you "unlimited" storage at google. they gladly take my encrypted files for years now and I'm up to 80TB. i think its more than reasonable to pay them for that type of service and be slightly above board (the account type i have says i need a minimum of 5 people but its just me).
I wrote something just like this with Discord, and I even got it to host full videos which you can play back in browser. It's a good backup service. [0]
I want to expand this in into a fully modular service that you write payloads and scripts for various services, so when you upload a file its spread out across many different providers. When you're downloading, you just go down the list check what still exists, and verify the checksum. This should be stable for many years.
I plan to take a look into facebook and see what can/cant be accessed there. I had this exact thought with youtube and thought about using a pixel reader to exact out data. Same idea for different image hosting services like imgur.
I've observed that with any piece technology where you're permitted to write / upload information and freely access it afterwards, someone will attempt to (ab)use it for file storage and write a blog article about it later :)
My favorite example of this was people storing files in "secret" subreddits by using posts and comments to store bytes. When they were later discovered by other users, the seemingly random strings sparked a huge conspiracy about their possible meaning.
However, you always have the problem that your unwilling host may remove your "files". I sometimes wonder about file storage using a textual output format that can't be distinguished from normal user interactions.
I remember when GMail was by invite only, and at the time they were offering quite a larger amount of storage for Mail than anyone else so people started using their GMail drafts to store files.
That was the first time I can across such a thing.
Someone even made an extension for Windows XP that allowed you to mount GMail as a storage volume.
> GMail Drive is a Shell Namespace Extension that creates a virtual filesystem around your Google Mail account, allowing you to use Gmail as a storage medium.
> I sometimes wonder about file storage using a textual output format that can't be distinguished from normal user interactions.
You could use a reproducible LM (for instance using Bellard's NNCP as basis), and encode one bit in one word by taking the {first, second} most probable next word.
In this modern cloud-giant world it's abused for file storage yes. But I come from the more traditional web hosting world of the early 2000s and back then the general rule was that anything that could store information online would sooner or later be used to store porn.
One of the things I’ve successfully used YouTube for was video storage of my security camera system. Unlimited video storage with a simple app to watch them in case I need to check something out!
And it’s simple: camera uploads automatically via FTP, inotifywait script uploads to google!
haha this is so cool, i made something similar https://punkjazz.org/scrambled-eggs/ few years ago to explore transferring files directly through the camera so nobody can "see" what you download, because no packets go through the internet, i managed to do 10kbps or so
the modern qr readers are so fast and easy to use, its unbelievable
Nice! It's such a neat way to transfer information :)
This guy extended the idea using fountain codes, which allows you to miss arbitrary frames and still recover the full message without waiting for the missed frames to re-appear:
Video steganography might be a better approach and would be less likely to trigger account banning or claims of abuse by the hosters. The issue of avoiding data loss due to lossy compression algorithms seems to be an active area of research:
> "Moreover, most video-sharing channels transmit the steganographic video in a lossy way to reduce transmission bandwidth or storage space, such as YouTube and Twitter. . . Robust video steganography aims to send secret messages to the receiver through lossy channels without arousing any suspicions from the observer. Thus, the robustness against lossy channels, the security against steganalysis, and the embedding capacity are equally important."
I suppose in this project, the blocks of pixels are large enough to avoid data loss due to compression?
You could do this with any service which accepts user content. You could have a tumblr blog focused on “paranormal phenomenon in white noise images” and fill it full of data embedded in images. If anyone ever asks you just explain that like many pattern illusions not everyone can see images contained within - try squinting, or covering the eye on the predominant side of your body, stand on your head, blah blah blah.
This is even easier, because jpg's ignore additional data past the end of the file. Post a low-res ~200kb jpg that has an additional ~20mb of data appended. It'll still render perfectly fine.
I understand that the goal is to make the data survive video compression, but wouldn't it make sense to use at least some color information instead of entirely black and white pixels?
This reminds me of a stupid idea I had: would it theoretically be possible to store data using the backbone of the Internet itself? You'd bounce packets (probably TCP) back and forth between two hosts with bytes that aren't actually written to a disk anywhere so they just exist as a stream until one end decides to copy a section for itself.
This is bound to get you banned. I would do it a little bit more clever (with lower bitrate/throughput/storage sizes)...
Encode the data inside audio, preferrably outside human audible range, and then use a nice video of singing birds, or whales talking, and use the "hidden" frequencies to hide the data.
I don't know if Youtube has any filters that cut out frequencies, but this way they can't ban you, since you've uploaded a really nice personal video of your singing birds, instead of the conspicuous looking QR-like codes as in the OP ;-)
Do this at you own risk, ive done this with lidar data (which didnt need to be as persice as binary, which is what im seeing in this post) which worked fine. 3 years later i revisited the project and it was broken because youtube compressed the files in such a way where it made the lidar just innaccurate enough to be unusable. I cant imagine storing data in binary where just one bit wrong screws everything
I have many old videos that have lost their "HD" encoding, and now look like potato vision. I no longer (silly that I did) trust YouTube for video storage.
[+] [-] LocalH|3 years ago|reply
A portion of the signal would be used for timing, metadata and error correction, so the program could tell you if the data was sufficiently damaged upon restore.
LGR has a video on the PC version from Danmere: https://youtu.be/TUS0Zv2APjU
Here's a video example of the Amiga industry's take on the idea: https://youtu.be/VcBY6PMH0Kg?t=573
Sony even did this in 1980 to record CD-quality PCM audio onto VHS tape. https://youtu.be/bnZFLzBO3yc
[+] [-] cronix|3 years ago|reply
https://www.youtube.com/watch?v=-nHrjqmt_wQ
[+] [-] bri3d|3 years ago|reply
[+] [-] adolph|3 years ago|reply
https://en.wikipedia.org/wiki/Commodore_Datasette
[+] [-] cortesoft|3 years ago|reply
It was pretty finicky, though, and very slow.
[+] [-] doubled112|3 years ago|reply
Black and white dots in a strip on a card. Swipe the cards to load the games.
[+] [-] jasomill|3 years ago|reply
Here, for example, is a ruggedized S-VHS data recorder built for military and aerospace applications:
http://www.thic.org/pdf/Jul97/metrum.cduckling.pdf
[+] [-] Gordonjcp|3 years ago|reply
[+] [-] userbinator|3 years ago|reply
[+] [-] sam_goody|3 years ago|reply
(IMO there is not enough of these posts, and getting less over time.)
A refreshing "actual hacker" project that makes me look anew at the tools I always use...
So, my coffee maker is sending data to the net - maybe I can use that for backup, and have it replicated both in the fridge and in the living room lights...
But how would I retrieve that? Hmm. I assume that both Alexa and Google assistant are tracking everything that goes through my IoT devices. I'll ask GPT how to hack my Nest device to pull back data on demand, that oughta work, surely?! :D
[+] [-] ggerganov|3 years ago|reply
Tangentially related and discussed in the past on HN: File transfer via color barcodes and a phone camera
[0] https://news.ycombinator.com/item?id=25459501
[1] https://github.com/sz3/libcimbar
[2] https://cimbar.org
[+] [-] luma|3 years ago|reply
[+] [-] aaronblohowiak|3 years ago|reply
[+] [-] OscarCunningham|3 years ago|reply
0. Linux's SystemV Filesystem Support Being Orphaned https://news.ycombinator.com/item?id=34818040 by rbanffy 3 days ago, 70 points, 73 comments
1. TabFS – a browser extension that mounts the browser tabs as a filesystem https://news.ycombinator.com/item?id=34847611 by pps 1 day ago, 961 points, 185 comments
2. Vramfs – GPU VRAM based file system for Linux https://news.ycombinator.com/item?id=34855134 by pabs3 1 day ago, 226 points, 71 comments
[+] [-] Lt_Riza_Hawkeye|3 years ago|reply
[+] [-] imhoguy|3 years ago|reply
[+] [-] paxys|3 years ago|reply
I remember way back in the day someone came up with a clever way of using Gmail attachments to build a cloud storage drive mounted to your filesystem. Then Google themselves released Drive soon after.
[+] [-] amelius|3 years ago|reply
[+] [-] ranting-moth|3 years ago|reply
Google has been known to close accounts and "related" accounts for abuse (as defined by them). So even if you create another account, don't expect your main account to survive if there's any possible link between them.
They are the judge, jury and executor, so eff around at your own peril.
[+] [-] flatiron|3 years ago|reply
[+] [-] DonHopkins|3 years ago|reply
[+] [-] ornornor|3 years ago|reply
What a brave new world.
[+] [-] nimbius|3 years ago|reply
The 4x size increase is my biggest concern...too bloaty.
[+] [-] unknown|3 years ago|reply
[deleted]
[+] [-] unknown|3 years ago|reply
[deleted]
[+] [-] Ralo|3 years ago|reply
I want to expand this in into a fully modular service that you write payloads and scripts for various services, so when you upload a file its spread out across many different providers. When you're downloading, you just go down the list check what still exists, and verify the checksum. This should be stable for many years.
I plan to take a look into facebook and see what can/cant be accessed there. I had this exact thought with youtube and thought about using a pixel reader to exact out data. Same idea for different image hosting services like imgur.
[0] https://github.com/5ut/DiskCord
[+] [-] danuker|3 years ago|reply
Maybe you could join forces.
[+] [-] j-krieger|3 years ago|reply
My favorite example of this was people storing files in "secret" subreddits by using posts and comments to store bytes. When they were later discovered by other users, the seemingly random strings sparked a huge conspiracy about their possible meaning.
However, you always have the problem that your unwilling host may remove your "files". I sometimes wonder about file storage using a textual output format that can't be distinguished from normal user interactions.
[+] [-] codetrotter|3 years ago|reply
That was the first time I can across such a thing.
Someone even made an extension for Windows XP that allowed you to mount GMail as a storage volume.
> GMail Drive is a Shell Namespace Extension that creates a virtual filesystem around your Google Mail account, allowing you to use Gmail as a storage medium.
http://www.viksoe.dk/code/gmail.htm
[+] [-] phh|3 years ago|reply
You could use a reproducible LM (for instance using Bellard's NNCP as basis), and encode one bit in one word by taking the {first, second} most probable next word.
[+] [-] INTPenis|3 years ago|reply
[+] [-] petercooper|3 years ago|reply
https://blog.benjojo.co.uk/post/dns-filesystem-true-cloud-st...
[+] [-] BlueTemplar|3 years ago|reply
"Ask HN: What are these strange random strings spamming my blog?"
https://news.ycombinator.com/item?id=34865695
[+] [-] coffeeblack|3 years ago|reply
[+] [-] ed25519FUUU|3 years ago|reply
And it’s simple: camera uploads automatically via FTP, inotifywait script uploads to google!
[+] [-] booi|3 years ago|reply
[+] [-] throwaway71271|3 years ago|reply
the modern qr readers are so fast and easy to use, its unbelievable
[+] [-] pveierland|3 years ago|reply
This guy extended the idea using fountain codes, which allows you to miss arbitrary frames and still recover the full message without waiting for the missed frames to re-appear:
https://divan.dev/posts/fountaincodes/
[+] [-] actionfromafar|3 years ago|reply
[+] [-] ReflectedImage|3 years ago|reply
Data Block: c3828abe
c5cfe61f4e61c9eda05e39903df580566859708a52957754e06fd18feaceca5ec0cdcac4b24b0f9ac8d9f212301916ea9ebcb2e291e2e950e0118f150c8cde02 34e770773cb93d6f1b757098890475cb00bef5ca4275c51021118ac1f01b71db3604063fd945480afc6b6b5b8d125129f7a9813a4997bdea27bbe5f6c17abfeb f46309c93430f78d37d23c0ef646cf7796e6de2b072d771b35b832a5b5328d1c09c5d32eaf6309b3119e8468ed02f62cd4b25c6785792ec82edc72667da8e36e 3b7b0d22fd708f5a3ff4787bf9474f84dff52fe33a38f4b4fee6759498b38d2c3af01db8d3dc5b1bb1cf6d203f24a4f6016caf42ad5cac76d1b0a0bf01a435b0 54a288c7cf9859dde401af51685eef23661ff0102a94caab2df9bf298c07538885baec81576513b9a7591d429db24b221c071cf0d929308243b0af4535810052
[+] [-] photochemsyn|3 years ago|reply
https://jis-eurasipjournals.springeropen.com/articles/10.118...
> "Moreover, most video-sharing channels transmit the steganographic video in a lossy way to reduce transmission bandwidth or storage space, such as YouTube and Twitter. . . Robust video steganography aims to send secret messages to the receiver through lossy channels without arousing any suspicions from the observer. Thus, the robustness against lossy channels, the security against steganalysis, and the embedding capacity are equally important."
I suppose in this project, the blocks of pixels are large enough to avoid data loss due to compression?
[+] [-] zxcvbn4038|3 years ago|reply
[+] [-] unregistereddev|3 years ago|reply
This is even easier, because jpg's ignore additional data past the end of the file. Post a low-res ~200kb jpg that has an additional ~20mb of data appended. It'll still render perfectly fine.
[+] [-] Wowfunhappy|3 years ago|reply
[+] [-] c7DJTLrn|3 years ago|reply
[+] [-] pcthrowaway|3 years ago|reply
[+] [-] NKosmatos|3 years ago|reply
Encode the data inside audio, preferrably outside human audible range, and then use a nice video of singing birds, or whales talking, and use the "hidden" frequencies to hide the data.
I don't know if Youtube has any filters that cut out frequencies, but this way they can't ban you, since you've uploaded a really nice personal video of your singing birds, instead of the conspicuous looking QR-like codes as in the OP ;-)
[+] [-] liamtuohyff|3 years ago|reply
[+] [-] nomel|3 years ago|reply
[+] [-] nivenkos|3 years ago|reply