this post was submitted on 23 Sep 2023
82 points (96.6% liked)

Privacy

31859 readers
149 users here now

A place to discuss privacy and freedom in the digital world.

Privacy has become a very important issue in modern society, with companies and governments constantly abusing their power, more and more people are waking up to the importance of digital privacy.

In this community everyone is welcome to post links and discuss topics related to privacy.

Some Rules

Related communities

Chat rooms

much thanks to @gary_host_laptop for the logo design :)

founded 5 years ago
MODERATORS
 

Hey /c/privacy,

Similar to the idea that was proposed a month ago by @[email protected], I built a little web app that allows one to "emulate" EAN13-based loyalty cards. I call it the Loyalty Card Emulator. 🪄

The app allows you to either select one of the built-in card numbers that I have found on the internet. (Only for demonstration purposes, of course!) Or you can just enter a code manually and create the loyalty card from it. The link to a card can be shared (e.g. if you and your SO use the same loyalty card).

At the moment, it is very basic and only has one single design that is supposed to visually mimic one of the biggest loyalty card providers that I know.

Architectural-wise, the app is written in TypeScript, powered by React and Vite. The app does not transmit and/or store your codes anywhere but on your device; it's a single-page application that runs entirely in your browser, without any server component.

The source code is publicly available here. The hosting is taken care of by Codeberg Pages - cheers for that!

Adding new card designs and/or preset codes can be achieved quite easily, so feel free to fork and contribute!

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 2 points 1 year ago

The reason is that laser scanners use a rotating mirror or lens in front of the laser to create the scanline, and only have a single light cell, detecting rapid changes in red light intensity. They can’t tell where light is coming from so you could trick them into reading a barcode transmitted as a sequence of light pulses from a single source (like an optical mouse’s LED controlled by an Arduino) but not an array of light sources (aka pixels) unless they have different reflectivity as the laser scans across them (such as E-ink). Technically, reflective LCDs could work with laser scanners but transferring the code to a TI-83 calculator is not worth the effort.