Содержание

Трюки из веболомок

В веболомках (головоломках, использующим особенности интернет-технологий, знание языков программирования, форматов данных, отдельных программ и т.п.) могут применяться как чисто веб-задачи, так и просто задачки из серии занимательных головоломок, требующих знания из других областей - криптографии, математики, физики, химии, информатики, истории и т.п.

Ниже я опишу некоторые интересные трюки, используемые в таких задачках.

Римские числа

Римские числа записываются латинскими буквами.

Можно попробовать составить короткие слова или аббревиатуры из букв I, X, L, C, D, M, - типа «CD», «MIX». Тогда не сразу придёт в голову, что это запись римскими цифрами.

Химические элементы

Если посмотреть на Таблицу Менделеева, то можно увидеть, что химические элементы «зашифрованы» буквами. Из них можно составлять слова, за которыми будут прятаться числа - номера химических элементов. Например, за словом RuSLaN спрятались элементы Ru (рутений, 44), S (сера, 16), La (лантан, 57) и N (азот, 7). Получаем RuSLaN = 44,16,57,7.

Можно даже загадать телефон:

Шахматная партия

На рисунке изображается эндшпиль шахматной партии с заданием, например, белые начинают и дают мат в два хода. Нужно записать последовательность ходов в шахматной нотации.

Например, для партии, изображённой на рисунке, последовательность ходов такая d8d2g2f3b1d3. А классический детский мат из начальной позиции запишется вот так: e2e4e7e5f1c4b8c6d1h5g8f6h5f7.

Блок-схема

Можно зашифровать число, нарисовав блок-схему алгоритма его вычисления, как сделали вот тут.

На блок-схеме изображён алгоритм вычисления факториала 10! = 3628800

Кнопки на телефоне

Буквы можно загадывать цифрами, а цифры - буквами. Цифровой последовательности будет соответствовать много различных буквенных комбинаций, но несколько осмысленных слов из одного и того же числа вряд ли сложится много, поэтому можно использовать и обратное кодирование - из цифр в буквы.

Ноутбучная клавиатура

На ноутбучной клавиатуре, в отличие от полноразмерной, обычно отсутствует дополнительная цифровая клавиатура, но её можно включить специальной кнопкой NumLock (Fn + замочек с цифрой 1). И самое интересное, что на нескольких буквенных клавишах дополнительно нанесены цифры. Опять же, как и в предыдущем случае, можно цифрами загадывать буквы, а буквами - цифры. Здесь уже кодирование будет однозначным.

Метаданные

Графические и звуковые файлы помимо самого изображения или звука могут содержать дополнительные метаданные, в которых обычно указывается некая текстовая информация. Например, описание, автор, место съёмки, наименование программы, в которой сделан файл и т.п. Например, EXIF в графических файлах, ID3 - в звуковых и т.п.

EXIF

EXIF (англ. Exchangeable Image File Format) — стандарт, позволяющий добавлять к изображениям и прочим медиафайлам дополнительную информацию (метаданные), комментирующую этот файл, описывающий условия и способы его получения, авторство и т.п. Получил широкое распространение в связи с появлением цифровых фотокамер.

Прочитать/обработать эти параметры можно в программах просмотра изображений (фотоорганайзерах), графических программах и специальных программах для работы с метаданными.

ID3

ID3 (от англ. Identify an MP3) — формат метаданных, наиболее часто используемый в звуковых файлах в формате MP3. В ID3 содержатся данные о названии трека, альбома, имени исполнителя и т.д., которые используются медиаплеерами и другими программами, а также аппаратными проигрывателями для отображения информации о файле и автоматического упорядочивания аудиоколлекции.

Существует две несовместимых версии ID3: ID3v1 и ID3v2.

В ID3-тэгах можно даже текст песни хранить размером порядка 5кб.

Очень часто в этих полях прячут какие-то ключевые слова и подсказки. Можно просто вставить в одно из полей какое-то секретное слово, а можно, например, вставить геотэг. И чтобы понять, что за слово спрятано, нужно по этим координатам вычислить место, ну а далее уже от исходить из того, что в этом месте находится – название населённого пункта, улицы, какого-то объекта и т.п.

Некоторые особо рьяные головоломщики кодируют архив в base64 или в UUE, и уже эту информацию вставляют в метаданные, то есть это своего рода стеганография. Попробуй догадайся, что внутри обычного JPG или MP3 лежит бинарный архив.

Web-цвета

Цвета в html-коде принято задавать в шестнадцатеричном виде в формате RGB (R-красный, G-зелёный, B-синий). Например, чёрный цвет - это #000000 или #000 или rgb(0,0,0). Хотя применяют и цветовую модель HSL, в которой цветовыми координатами вместо RGB являются тон (Hue), насыщенность (Saturation) и светлота (Lightness).

А теперь о том, как это можно применять в веболомках.

RGB-коды

Цвета в RGB-кодировке используют шестнадцатеричные цифры - это 0123456789ABCDEF. Можно из этих цифр составлять слова. Некоторые цифры похожи на буквы, поэтому можно использовать «хакерские» LEET-преобразования и получать слова. Например:

и даже составлять из них предложения.

А ещё вот такой вариант:

#319009
#319009
Последнее сильно напоминает слово GOOGLE.

Наименования цветов

У некоторых цветов есть зарезервированные постоянные названия, которые можно использовать вместо RGB-кодов. Так проще. Ниже в табличке все такие цвета, у которых есть названия. Соответственно, если в веболомке встречается что-то разноцветное, то можно посмотреть, что за цвета, и какие слова используются – возможно, в этих словах есть что-то полезное.

Например, дана картинка rgb.png, на которой нарисована шоколадка. Название файла как бы намекает на то, что надо узнать цвет. Можно, конечно, попытаться узнать, какого цвета шоколадка, но можно посмотреть в таблицу. Оказывается, есть такой цвет Chocolate #D2691E. Возможно, D2691E и будет искомым ответом.

Или вот, например, картинка, на которой разноцветные буквы. Если в графическом редакторе посмотреть коды цветов и найти им соответствия в таблице ниже, то получим:

Ну, короче, вы поняли :)

Названия HTML-цветов R G B
Hex Dec
Розовые
Pink FFC0CB 255 192 203
LightPink FFB6C1 255 182 193
HotPink FF69B4 255 105 180
DeepPink FF1493 255 20 147
PaleVioletRed DB7093 219 112 147
MediumVioletRed C71585 199 21 133
Красные
LightSalmon FFA07A 255 160 122
Salmon FA8072 250 128 114
DarkSalmon E9967A 233 150 122
LightCoral F08080 240 128 128
IndianRed CD5C5C 205 92 92
Crimson DC143C 220 20 60
FireBrick B22222 178 34 34
DarkRed 8B0000 139 0 0
Red FF0000 255 0 0
Оранжевые
OrangeRed FF4500 255 69 0
Tomato FF6347 255 99 71
Coral FF7F50 255 127 80
DarkOrange FF8C00 255 140 0
Orange FFA500 255 165 0
Жёлтые
Yellow FFFF00 255 255 0
LightYellow FFFFE0 255 255 224
LemonChiffon FFFACD 255 250 205
LightGoldenrodYellow FAFAD2 250 250 210
PapayaWhip FFEFD5 255 239 213
Moccasin FFE4B5 255 228 181
PeachPuff FFDAB9 255 218 185
PaleGoldenrod EEE8AA 238 232 170
Khaki F0E68C 240 230 140
DarkKhaki BDB76B 189 183 107
Gold FFD700 255 215 0
Коричневые
Cornsilk FFF8DC 255 248 220
BlanchedAlmond FFEBCD 255 235 205
Bisque FFE4C4 255 228 196
NavajoWhite FFDEAD 255 222 173
Wheat F5DEB3 245 222 179
BurlyWood DEB8 87 222 184 135
Tan D2B48C 210 180 140
RosyBrown BC8F8F 188 143 143
SandyBrown F4A460 244 164 96
Goldenrod DAA520 218 165 32
DarkGoldenrod B8860B 184 134 11
Peru CD853F 205 133 63
Chocolate D2691E 210 105 30
SaddleBrown 8B4513 139 69 19
Sienna A0522D 160 82 45
Brown A52A2A 165 42 42
Maroon 800000 128 0 0
Зелёные
DarkOliveGreen 556B2F 85 107 47
Olive 808000 128 128 0
OliveDrab 6B8E23 107 142 35
YellowGreen 9ACD32 154 205 50
LimeGreen 32CD32 50 205 50
Lime 00FF00 0 255 0
LawnGreen 7CFC00 124 252 0
Chartreuse 7FFF00 127 255 0
GreenYellow ADFF2F 173 255 47
SpringGreen 00FF7F 0 255 127
MediumSpringGreen 00FA9A 0 250 154
LightGreen 90EE90 144 238 144
PaleGreen 98FB98 152 251 152
DarkSeaGreen 8F BC 8F 143 188 143
MediumAquamarine 66CDAA 102 205 170
MediumSeaGreen 3CB371 60 179 113
SeaGreen 2E8B57 46 139 87
ForestGreen 228B22 34 139 34
Green 008000 0 128 0
DarkGreen 006400 0 100 0
Голубые
Aqua 00FFFF 0 255 255
Cyan 00FFFF 0 255 255
LightCyan E0FFFF 224 255 255
PaleTurquoise AFEEEE 175 238 238
Aquamarine 7FFFD4 127 255 212
Turquoise 40E0D0 64 224 208
MediumTurquoise 48D1CC 72 209 204
DarkTurquoise 00CED1 0 206 209
LightSeaGreen 20B2AA 32 178 170
CadetBlue 5F9EA0 95 158 160
DarkCyan 008B8B 0 139 139
Teal 008080 0 128 128
Синие
LightSteelBlue B0C4DE 176 196 222
PowderBlue B0E0E6 176 224 230
LightBlue ADD8E6 173 216 230
SkyBlue 87CEEB 135 206 235
LightSkyBlue 87CEFA 135 206 250
DeepSkyBlue 00BFFF 0 191 255
DodgerBlue 1E90FF 30 144 255
CornflowerBlue 6495ED 100 149 237
SteelBlue 4682B4 70 130 180
RoyalBlue 4169E1 65 105 225
Blue 0000FF 0 0 255
MediumBlue 0000CD 0 0 205
DarkBlue 00008B 0 0 139
Navy 000080 0 0 128
MidnightBlue 191970 25 25 112
Фиолетовые
Lavender E6E6FA 230 230 250
Thistle D8BFD8 216 191 216
Plum DDA0DD 221 160 221
Violet EE82EE 238 130 238
Orchid DA70D6 218 112 214
Fuchsia FF00FF 255 0 255
Magenta FF00FF 255 0 255
MediumOrchid BA55D3 186 85 211
MediumPurple 9370DB 147 112 219
BlueViolet 8A2BE2 138 43 226
DarkViolet 9400D3 148 0 211
DarkOrchid 9932CC 153 50 204
DarkMagenta 8B008B 139 0 139
Purple 800080 128 0 128
Indigo 4B0082 75 0 130
DarkSlateBlue 483D8B 72 61 139
SlateBlue 6A5ACD 106 90 205
MediumSlateBlue 7B68EE 123 104 238
Белые
White FFFFFF 255 255 255
Snow FFFAFA 255 250 250
Honeydew F0FFF0 240 255 240
MintCream F5FFFA 245 255 250
Azure F0FFFF 240 255 255
AliceBlue F0F8FF 240 248 255
GhostWhite F8F8FF 248 248 255
WhiteSmoke F5F5F5 245 245 245
Seashell FFF5EE 255 245 238
Beige F5F5DC 245 245 220
OldLace FDF5E6 253 245 230
FloralWhite FFFAF0 255 250 240
Ivory FFFFF0 255 255 240
AntiqueWhite FAEBD7 250 235 215
Linen FAF0E6 250 240 230
LavenderBlush FFF0F5 255 240 245
MistyRose FFE4E1 255 228 225
Серые и чёрные
Gainsboro DCDCDC 220 220 220
LightGray D3D3D3 211 211 211
Silver C0C0C0 192 192 192
DarkGray A9A9A9 169 169 169
Gray 808080 128 128 128
DimGray 696969 105 105 105
LightSlateGray 778899 119 136 153
SlateGray 708090 112 128 144
DarkSlateGray 2F4F4F 47 79 79
Black 000000 0 0 0