Daily Challenge #4

Challenge

Make a procedure which takes a text input and returns it in the encoded form. Also, make another procedure which can decode the same encoded form into the original text.

:books: Rules

  • The encoding must be reversible. :repeat:
  • Do not use any components for encoding nor any extensions. The algorithm must be implemented by yourself.
  • You may encode the input text into non-text forms also, given that it can be captured in a screenshot. (I won’t give more hints)
  • Try something unique.

:white_check_mark: Submission

Post the text or a screenshot of input, encoded form, and decoded form of all four of the given sample input, in this topic. Use “Do It” for screenshots or paste as text inside a fenced code block (use the following as a template).

:abc: Sample Input

  • Hello Kodular
  • Thanos is half $@^%*!#
  • I'm a 1337
  • I ❤️ emojis (Removed for lack of support for Unicode char code in Kodular)

Template

```
Input: <one of the sample input>
Encoded: <encoded text>
Decoded: <decoded text>
```

:trophy: Winning Criteria

The most creative encoding creator will be the winner. This will be judged by the number of likes the post gets.

:1st_place_medal: Award

The winner will be known as “Krypto Master” thereafter.


:pray: Credits

This challenge was inspired by an ongoing Code Jam on PwnSquad discord server.

11 Likes

Hello, I have tried it in this way hope you like it.

1 Like

You also have to post your code blocks.

4 Likes

Here is my result

example1

example2

example3

example4

Blocks

5 Likes

Looks like you are using Crytography component’s Base64 encoding. I think this is not allowed.

2 Likes

Yes, the encoding must be of your own, though it can resemble existing ones.


@Souvik_Bera Perfect :ok_hand:. How many hours did it take for you make that?

4 Likes

It took around 2-3 hours.

5 Likes

Wait is Web component allowed to use as far I see from your blocks? Because I’m trying to create too but I still didn’t used any component yet.

Not sure about that. I didn’t really find any other way to encode the emojis and the special characters as there is a large range of emojis and special characters available.

Yeah I thought the same, so I’m trying to use different method instead of having characters list.

Here Is Ans…

Then I think I failed this test :expressionless:

Yes !!

But I Think It Is Possible By Log Blocks Of

Replace All Text 
                Segment A
                Replacement /
 Replace All Text 
                Segment /
                Replacement A

How can these blocks encode a special character or a emoji ? Can you show us example ?

It Will Take Long Time And 100% Will Work But I Don’t Have Time

umm… I think it won’t.

what about using a solution based on @Italo’s ASCII conversion procedures?
the project is available in the App Inventor Gallery here http://ai2.appinventor.mit.edu/?galleryId=6407304567324672#


Taifun

5 Likes

I’m not participating in the challenge, but I wanted to show that it is possible to make this without any component. Even more, I made a simple coding and decoding system that generates a different code for the same string every time is called, and of course is totally reversible. The only drawback is that it doesn’t encode emojis.
This coding is not unbreakable but without seeing the encoding process it will be hard to find out.
(Thanks to @Taifun for his LEADING ZEROES procedure)

These are the procedures for this encoding. Like I said, no emojis. It could be implemented, but I will leave that for you guys, if you want to.

6 Likes

Thanks @Taifun @Italo for sharing this great info.

1 Like

While writing the post for this challenge, I tried to cover most types of text used generally in the test cases. It seems we need to support “text to char code” and “char code to text” block which supports conversion of text to ascii/unicode char code and vice versa.

2 Likes