this post was submitted on 28 Nov 2024
80 points (100.0% liked)

Asklemmy

44170 readers
1818 users here now

A loosely moderated place to ask open-ended questions

Search asklemmy 🔍

If your post meets the following criteria, it's welcome here!

  1. Open-ended question
  2. Not offensive: at this point, we do not have the bandwidth to moderate overtly political discussions. Assume best intent and be excellent to each other.
  3. Not regarding using or support for Lemmy: context, see the list of support communities and tools for finding communities below
  4. Not ad nauseam inducing: please make sure it is a question that would be new to most members
  5. An actual topic of discussion

Looking for support?

Looking for a community?

~Icon~ ~by~ ~@Double_[email protected]~

founded 5 years ago
MODERATORS
 

Recently downloaded the phyphox from F-Droid and thought about this while thinking about what all stuff I could do with it.

Are there any online resources about such stuff?

What all things have you(or people you know, in your locality etc) done along that line?
And not only big thigs, if you're tracking other stuff, please do share your experience on that too.

Edit:
Sharing the github page of the app too:
https://github.com/phyphox/phyphox-android

you are viewing a single comment's thread
view the rest of the comments
[–] dsilverz 2 points 3 weeks ago* (last edited 3 weeks ago)

I often do experiments involving randomness, art, math, NLP, cryptography and programming.

In my most recent experiment as from yesterday, I created a novel ciphering method. I mean, I guess it's totally different from known ciphering methods (such as Vigenere, Caesar, Playfair, ROT13 and so on) because I couldn't find anything similar.

Some examples follow:

  • "phyphox" is ((1,8,8), (6,6,5), (5,4), ø, ø, (1,2), (0,0), ø, (2,1), ø) (in the way I'm using it for now, the cipher will always result in 10 tuples containing a variable amount of tuples, with ø indicating an empty tuple; there are lots of output formatting alternatives: here I’m using an one-liner mathematical representation in order to be compact).
  • "asklemmy" is ((0,1,5), (1,9,1,1,2,3,3), (0,5), (1,2), ø, (1), ø, ø, ø, (1))
  • To make it more obvious on how it works, the entire alphabet sequence ("abcdefghijklmnopqrstuvwxyz") results in ((0,1,2,3,4,5,6,7,8,9,1,2), (0,0,1,1,2,3,4,5,6,7,8,9,2), (0,1,0,1,2,2,3,4,5,6), (0,1,2), (0,1,2), (0,1,2), (0,1), (0,1), (0,1), (1,2))
  • And "aaa" is ((0,1,1,1), (0,0), ø, ø, ø, ø, ø, ø, ø, ø)

I'll keep a puzzle spirit and I won't explain it for now. The only hint is that the previous examples consider the English alphabet as so: A=01, B=02, C=03, all the way until Z=26 (yeah, the leading zero matters to this ciphering method). If you're a programmer, think in terms of pointers, or even better, an unidirectional linked list. If you're a mathematician, try to visualize a graph.

The cipher doesn't rely just on its principles, it also needs a corresponding mapping set (which can be alphabetical but can also contain non-letters, even emojis or hieroglyphs; the order will matter), and it also needs to know where to start the traversal path (the given examples start at the zeroeth tuple, but it could start anywhere). It's both deterministic (because there's a single correct path) and chaotic (because the result depends on other variables such as the mapping set, the initial position to start traversing, which element to take (whether the first or the last, FIFO or LIFO) and what numeric base to use (the examples used base-10, but it can be done as hexadecimal, octal, binary, or virtually any numerical base)). So I guess it has a lot of potential, not just for cryptography.