127.0.0.1 holocaust

+--------------------------------------------------------------------------------------------------------------------------------[release: 16.06.04]----+
|
|
|
|
|
|
|
  _|_|  _|_|_|  _|_|    _|_|_|    _|_|    _|  _|    _|  _|_|    _|_|_|      _|  _|     _|_|_|
_|      _|  _|  _|  _|  _|        _|  _|      _|_|_|_|  _|  _|  _|        _|_|_|_|_|       _|
_|      _|  _|  _|  _|  _|_|      _|_|    _|  _| |  _|  _|_|    _|_|_|      _|  _|     _|_|_|
_|      _|  _|  _|  _|  _|        _|      _|  _|    _|  _|          _|    _|_|_|_|_|       _|
  _|_|  _|_|_|  _|_|    _|_|_|    _|      _|  _|    _|  _|      _|_|_|      _|  _|     _|_|_|
|
|
|
|
|
|
|
+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
+---------------------------------------------------------------[0x07: Base64: Принцип]------------------------------------------------------------+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|

Base64 представляет собой обратимый алгоритм шифрования. Он используется некоторыми серверами для аутентификации пользователя, некоторые используют его для проверки контрольной суммы, однако последнее весьма неудобно, и часто вместо base64 используют md5. Мы рассмотрим первый вариант, который использует basic authentication. В отличие от md5, которым шифруется только пароль, base64 криптуют цепочку логин:пароль, например:
login:passwd будет выглядеть как bG9naW46cGFzc3dk

Base64 использует 65 символов из US-ASCII. Сначала Base64 присваивает каждому символу соответствующую цифру из US-ASCII, так для буквы m это 109. Затем, эта цифра переводится в бинарный формат, т.е. например: символ m, ему соответствует цифра 109, что в бинарном виде будет 01101101. Здесь 8 бит, Base64 разделяет их на 6 бит.

Например:
есть слово "mne", это будет 109 110 101, в бинарном виде: 01101101 01101110 01100101. По 6 бит: 011011 010110 111001 100101. Эти 4 6-битных значения, если перевести из бинарного вида, будут соответствовать цифрам: 27 22 57 37. А эти цифры по таблице Base64:
27 = b
22 = W
57 = 5
37 = l
Таким образом, слово "mne" будет ничем иным, как "bW5l".
                            Table 1: The Base64 Alphabet

      Value Encoding  Value Encoding  Value Encoding  Value Encoding
           0 A            17 R            34 i            51 z
           1 B            18 S            35 j            52 0
           2 C            19 T            36 k            53 1
           3 D            20 U            37 l            54 2
           4 E            21 V            38 m            55 3
           5 F            22 W            39 n            56 4
           6 G            23 X            40 o            57 5
           7 H            24 Y            41 p            58 6
           8 I            25 Z            42 q            59 7
           9 J            26 a            43 r            60 8
          10 K            27 b            44 s            61 9
          11 L            28 c            45 t            62 +
          12 M            29 d            46 u            63 /
          13 N            30 e            47 v
          14 O            31 f            48 w         (pad) =
          15 P            32 g            49 x
          16 Q            33 h            50 y


Декодирование алгоритма Base64:
1. Переведите символы соответственно таблице кодов Base64.
2. Переведите полученные значения в бинарный вид.
3. Совместите все 6-битные значения в одну линию.
4. Разделите линию по 8 бит.
5. Переведите 8-битные значения в соответствующие числа.
6. Переведите полученные значения в US-ASCII значения.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+-----[content]-----------------------------------------------------------------------------------------------------------------------------[mail us]-----+