Numeral system

Binary number -- basic number system for computers. It is the simplest system, and learning it is not difficult. Try to do the simplest actions yourself. Check: 1102 + 112 = 910.

Decimal numeral system -- most familiar to the vast majority of users. On this site, all calculations will be demonstrated in this system. Hopefully this will help reduce the cognitive barrier to learning asymmetric cryptography.

Hexadecimal -- code is often used for textual visualization of non-text data.

Base58 -- Bitcoin specific numbering system.

Bit length

Encryption schemes require a certain bit length of the numbers that make up the cryptographic set. Generating a pseudo-random number can significantly reduce the required bit length. To reduce the likelihood of obtaining a weak cipher, the random number should be aligned to the required bit length by setting the most significant bit to one.

-- required number of binary digits

Try the numbers 127, 128, and 129 for bit lengths 6, 7, 8, 9, and 10.

Text encoding

Indeed, text re-encoding is rarely appropriate. This section is created to simplify and visualize the explanation of data coding.

Text file & Plain text are fundamental concepts for data exchange.




Read any short file (*)



(*) Choose a small file up to 10 KB. A large file can freeze your browser.
(1) Create a small text file and check the contents in different representation systems. Up to text representation and compare with your file.
(2) Create a small graphic file in Paint. Review its contents through this form.

Base64 -- system for encoding binary data into text. Text protocols and formats are redundant. On the other hand, text is easy to visualize, is a native format, and the software has a long history and is well developed. To transmit binary data over a text protocol, the data must be converted to text. The text must exclude the occurrence of bytes that have special meaning in the protocol.

Subskribita.net