Sha

Содержание

Как и зачем переходить с SHA-1 на SHA-2 и почему это важно

Индустрия инфраструктуры открытых ключей (ИОК, англ. PKI — Public Key Infrastructure) рекомендует, чтобы любой объект инфраструктуры, использующий SHA-1, был переведён на более безопасный SHA-2. В этой статье описано, почему и как стоит это сделать.

В 2016 году миграция на SHA-2 была хорошей подготовкой к всеобщему дедлайну, сейчас же этот переход обязателен для обеспечения безопасности. Многие устройства и приложения, использующие электронные сертификаты, уже сейчас выводят предупреждения или ошибки или отказываются работать, если сертификат использует алгоритмы хеширования SHA-1 или старше. Зачем эти принудительные изменения? Потому что в хеше SHA-1 обнаружены серьёзные криптографические уязвимости, и дни, когда его защита ещё надёжна, уже сочтены.

Вплоть до 2017 года SHA-1 был самым популярным хешем, используемым для криптографической подписи, и некоторые, в особенности старые, приложения и устройства не принимали или не понимали хеши или сертификаты, основанные на алгоритме SHA-2. Это было основной проблемой перехода на новый стандарт.

Что такое хеш?

Криптографическая хеш-функция — это математический алгоритм, преобразующий любое уникальное сообщение (текст, видео, аудио, изображение и т. д.) в уникальную комбинацию, которую чаще всего называют «хешем» или «хеш-кодом». Два разных сообщения ни в коем случае не должны преобразовываться в одинаковый хеш, а два идентичных сообщения всегда должны возвращать один и тот же хеш. Благодаря этим свойствам хеш-код может использоваться для сравнения двух различных сообщений на идентичность. Криптографические хеши являются основой для практически любой цифровой аутентификации и проверки целостности файла.

Службы центра сертификации (ЦС) ИОК используют криптографические хеш-функции для подтверждения идентификационных данных и запросов цифровых сертификатов. Кроме этого, хеши используются для подтверждения цифровых сертификатов (например, цифровой подписью) и списка аннулированных сертификатов (CRL, certificate revocation list), которые выдают другие доверенные стороны. Доверенные стороны не смогут полагаться на достоверность цифровых сертификатов и другого контента, подписанного ЦС, если службы ИОК используют ненадёжный криптографический хеш. Стойкость криптографического хеша создаёт доверие ко всей системе ИОК.

Примечание: контрольные суммы — это хеш-подобные верификаторы, но без криптографических доказательств, подтверждающих, что они обеспечивают статистически уникальные результаты для уникальных входных сообщений.

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

Атаки на хеши

Стойкость криптографической хеш-функции в том числе обеспечивается тем, что для любого уникального сообщения формируется уникальный хеш. В то же время необходимо, чтобы по одному только хешу нельзя было воспроизвести исходное сообщение. На попытке обойти это свойство строится атака нахождения прообраза. Кроме того, два разных сообщения ни в коем случае не должны преобразовываться в одинаковые хеши, иначе возникнет явление, которое называется коллизией. На этом явлении основывается атака «дней рождения».

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

Вычислительная сложность криптостойкого хеша равна заявленной эффективной длине последовательности бит минус 1. Таким образом, когда неизвестны его недостатки, 128-битный хеш будет иметь сложность вычисления 2^127. Как только кто-то найдёт математический алгоритм, который позволит взломать хеш за время меньшее, чем эффективная длина бит минус 1, такой хеш будет считаться ослабленным. Как правило, все общепринятые хеши становятся слабее со временем. Когда эффективная длина бит сокращается, хеш становится менее защищённым и менее ценным. Когда считается, что хеш может быть взломан за разумный период времени и с не столь значительными вычислительными ресурсами (стоимостью от сотен тысяч до миллионов долларов), то хеш считается «взломанным» и не должен больше использоваться. Взломанные хеши используются вредоносными программами и злоумышленниками для создания якобы законного программного обеспечения с цифровой подписью. Хороший пример такого ПО — Flame malware program. В общем, слабые хеши могут сыграть свою роль и не должны использоваться.

Обработка устаревших хэшей SHA-1

Все крупные поставщики веб-браузеров (например, Microsoft, Google, Mozilla, Apple) и другие доверенные стороны рекомендовали всем клиентам, сервисам и продуктам, в настоящее время использующим SHA-1, перейти на SHA-2, хотя что и когда должно перейти зависит от поставщика. Например, многие поставщики заботятся только о сертификатах TLS (т. е. веб-серверах), и только компания Microsoft озабочена использованием SHA-1 в цифровом сертификате от «публичного» центра сертификации. Но можно ожидать, что все поставщики потребуют перевести на SHA-2 все приложения и устройства, даже если они не готовы к этому. Сейчас большинство браузеров покажет сообщение об ошибке, если на веб-сайте используется публичный цифровой сертификат, подписанный SHA-1, но некоторые из них позволят вам обойти всплывающее окно и перейти на такой сайт. Возможно, в скором времени, все главные поставщики браузеров запретят обход сообщений об ошибке и переходы на сайты, использующие цифровые сертификаты SHA-1.

К сожалению, переход с SHA-1 на SHA-2 является односторонней операцией в большинстве сценариев сервера. Например, как только вы начнёте использовать цифровой сертификат SHA-2 вместо SHA-1, пользователи, не понимающие сертификаты SHA-2, начнут получать предупреждения и уведомления об ошибках, или даже отказы. Для пользователей приложений и устройств, не поддерживающих SHA-2, переход будет опасным скачком.

План перехода ИОК с SHA-1 на SHA-2

Каждая компания с внутренним ИОК, не использующая SHA-2, должна будет создать ИОК SHA-2 или перевести существующую ИОК с SHA-1 на SHA-2. Для перехода нужно:

  • Обучить вовлечённых членов команды тому, что такое SHA-2 и почему требуется его использование (эта статья будет хорошим началом).
  • Провести инвентаризацию всех критических хешей или цифровых сертификатов, используемых в приложениях или устройствах.
  • Определить, какие критически важные устройства или приложения могут использовать SHA-2, какой размер ключа может быть использован и какие операционные проблемы могут возникнуть (этот этап зачастую включает обращение к поставщику и тестирование).
  • Определить, какие компоненты ИОК могут или должны быть перенесены в SHA-2.
  • Составить план перехода для преобразования компонентов SHA-1 в SHA-2, включая потребителей и компоненты ИОК, плюс резервный план на случай сбоя.
  • Провести PoC-тестирование.
  • Принять управленческий риск и решение о переходе или отказе от него.
  • Внедрить план перехода в производственную среду.
  • Провести тестирование и получить обратную связь.

Самая сложная часть перехода — определение того, какие устройства и приложения работают с SHA-2. Если используемые устройства не понимают SHA-2, вас ждёт неудача или сообщение об ошибке, которое вряд ли будет звучать как «SHA-2 не принят». Вместо этого готовьтесь к: «Сертификат не распознан», «Соединение нестабильно», «Соединение не может быть установлено», «Повреждённый сертификат» или «Непроверенный сертификат».

Подумайте о своей миссии, чтобы определить, какие важные части вашей инфраструктуры будут или не будут работать. Начните с попытки инвентаризации каждого уникального устройства, ОС и приложения, которые должны понимать SHA-2. Затем соберите команду людей, которые протестируют, работает ли SHA-2. Можно предварительно полагаться на информацию от поставщиков, но вы не будете знать наверняка пока не проверите самостоятельно.

Обновление приложений и устройств — задача не из лёгких, и потребует больше времени, чем кажется. Даже сейчас существует множество устройств и приложений, использующих старые версии OpenSSL, которые следовало бы обновить после атаки Heartbleed, но администраторы серверов этого так и не сделали.

Если у вас есть внутренняя ИОК, вам понадобится подготовить её к переходу на SHA-2. Иногда это означает обновление ваших центров сертификации, получение новых сертификатов или установку полностью новых ИОК. Последнее рекомендуется по множеству причин, в основном потому, что новая ИОК даст вам шанс начать сначала без груза старых ошибок.

Модели перехода ИОК

Ниже перечислены сценарии для внедрения SHA-2 в компоненты ИОК (для этих примеров используется двухуровневая ИОК — автономная корневая система, онлайн центры сертификации), каждый из которых может быть либо новым компонентом, либо перенесённым:

  • Два ИОК дерева, один полностью SHA-1, другой полностью SHA-2.

Остальные сценарии предполагают одно дерево ИОК:

  • Всё дерево ИОК, от корня до конечных точек, — SHA-1.
  • Всё дерево ИОК, от корня до конечных точек, — SHA-2.
  • Корень — SHA-1, выдающие ЦС — SHA-2, сертификаты конечных точек — SHA-2.
  • Корень — SHA-1, выдающие ЦС — SHA-2, сертификаты конечных точек — SHA-1.
  • Корень — SHA-1, выдающие ЦС — SHA-2 и SHA-1, сертификаты конечных точек — SHA-2 и SHA-1.
  • Корень — SHA-2, выдающие ЦС — SHA-1, сертификаты конечных точек — SHA-1.
  • Корень — SHA-2, выдающие ЦС — SHA-2, сертификаты конечных точек — SHA-1.
  • Корень — SHA-2, выдающие ЦС — SHA-2 и SHA-1, сертификаты конечных точек — SHA-2 и SHA-1.

Также возможно существование выдающего центра сертификации, который переключается между SHA-1 и SHA-2 по необходимости, но это с большой вероятностью вызовет путаницу в службах ИОК (и не особо рекомендуется). Если возможно, для облегчения перехода можно запустить параллельные ИОК, один — с SHA-1, другой — с SHA-2, а потом переводить используемые устройства после того, как позволит тестирование.

Примечание: собственный сертификат ЦС корневого ЦС не нужно переносить на SHA-2, даже если он всё ещё использует SHA-1. Все программы проверки устаревших SHA-1 заботятся обо всём после собственного сертификата корневого ЦС (и будут заботиться, по крайней мере, в обозримом будущем). Тем не менее, имеет смысл переместить всё, включая собственный сертификат ЦС корневого ЦС на SHA-2, чтобы можно было сказать, что вся ИОК — SHA-2, и избежать дальнейших изменений, связанных с SHA-1, в обозримом будущем.

Публичные ЦС уже перешли с SHA-1 на SHA-2 для любых сертификатов со сроком жизни, заканчивающимся после 1 января 2017, поэтому вы должны сосредоточить свои усилия на серверах и приложениях с ещё не перешедшими на SHA-2 публичными цифровыми сертификатами. После решения этой проблемы можно начать смотреть на внутренние ИОК и доверенные стороны. Переход с SHA-1 на SHA-2 технически не сложен, но это массовое логистическое изменение с множеством последствий, которое требует продолжительного тестирования.

Вряд ли большинство поставщиков знают точную дату смерти SHA-1 (т. е. дату, когда его использование в приложении или устройстве будет приводить к «фатальным» ошибкам), но скорее всего это произойдёт раньше, чем вы ожидаете, так как всё больше пользователей переходит на SHA-2. Поэтому вам действительно стоит совершить переход уже сейчас.

Описание алгоритма

Одна итерация алгоритма SHA1

SHA-1 реализует хеш-функцию, построенную на идее функции сжатия. Входами функции сжатия являются блок сообщения длиной 512 бит и выход предыдущего блока сообщения. Выход представляет собой значение всех хеш-блоков до этого момента. Иными словами хеш блока M i {\displaystyle M_{i}} равен h i = f ( M i , h i − 1 ) {\displaystyle h_{i}=f(M_{i},h_{i-1})} . Хеш-значением всего сообщения является выход последнего блока.

Инициализация

Исходное сообщение разбивается на блоки по 512 бит в каждом. Последний блок дополняется до длины, кратной 512 бит. Сначала добавляется 1 (бит), а потом нули, чтобы длина блока стала равной (512 — 64 = 448) бит. В оставшиеся 64 бита записывается длина исходного сообщения в битах (в big-endian формате). Если последний блок имеет длину более 448, но менее 512 бит, то дополнение выполняется следующим образом: сначала добавляется 1 (бит), затем нули вплоть до конца 512-битного блока; после этого создается ещё один 512-битный блок, который заполняется вплоть до 448 бит нулями, после чего в оставшиеся 64 бита записывается длина исходного сообщения в битах (в big-endian формате). Дополнение последнего блока осуществляется всегда, даже если сообщение уже имеет нужную длину.

Инициализируются пять 32-битовых переменных.

A = a = 0x67452301 B = b = 0xEFCDAB89 C = c = 0x98BADCFE D = d = 0x10325476 E = e = 0xC3D2E1F0

Определяются четыре нелинейные операции и четыре константы.

Главный цикл

Главный цикл итеративно обрабатывает каждый 512-битный блок. Итерация состоит из четырёх этапов по двадцать операций в каждом. Блок сообщения преобразуется из 16 32-битовых слов M i {\displaystyle M_{i}} в 80 32-битовых слов W j {\displaystyle W_{j}} по следующему правилу:

W t = M t {\displaystyle W_{t}=M_{t}}при 0≤t≤15
W t {\displaystyle W_{t}}= ( W t {\displaystyle W_{t}}-3 ⊕ {\displaystyle \oplus }W t {\displaystyle W_{t}}-8 ⊕ {\displaystyle \oplus }W t {\displaystyle W_{t}}-14 ⊕ {\displaystyle \oplus }W t {\displaystyle W_{t}}-16) << 1 при 16≤t≤79

здесь << — это циклический сдвиг влево

для t {\displaystyle t}от 0 до 79
temp = (a<<5) + F t {\displaystyle F_{t}}(b,c,d) + e + W t + K t {\displaystyle W_{t}+K_{t}}
e = d
d = c
c = b<<30
b = a
a = temp

После этого a, b, c, d, e прибавляются к A, B, C, D, E, соответственно. Начинается следующая итерация.

Итоговым значением будет объединение пяти 32-битовых слов в одно 160-битное хеш-значение.

Псевдокод SHA-1

Псевдокод алгоритма SHA-1 следующий:

Замечание: Все используемые переменные 32 бита. Инициализация переменных: h0 = 0x67452301 h1 = 0xEFCDAB89 h2 = 0x98BADCFE h3 = 0x10325476 h4 = 0xC3D2E1F0 Предварительная обработка: Присоединяем бит ‘1’ к сообщению Присоединяем k битов ‘0’, где k наименьшее число ≥ 0 такое, что длина получившегося сообщения (в битах) сравнима по модулю 512 с 448 (length mod 512 == 448) Добавляем длину исходного сообщения (до предварительной обработки) как целое 64-битное Big-endian число, в битах. В процессе сообщение разбивается последовательно по 512 бит: for перебираем все такие части разбиваем этот кусок на 16 частей, слов по 32-бита (big-endian) w, 0 <= i <= 15 16 слов по 32-бита дополняются до 80 32-битовых слов: for i from 16 to 79 w = (w xor w xor w xor w) циклический сдвиг влево 1 Инициализация хеш-значений этой части: a = h0 b = h1 c = h2 d = h3 e = h4 Основной цикл: for i from 0 to 79 if 0 ≤ i ≤ 19 then f = (b and c) or ((not b) and d) k = 0x5A827999 else if 20 ≤ i ≤ 39 then f = b xor c xor d k = 0x6ED9EBA1 else if 40 ≤ i ≤ 59 then f = (b and c) or (b and d) or (c and d) k = 0x8F1BBCDC else if 60 ≤ i ≤ 79 then f = b xor c xor d k = 0xCA62C1D6 temp = (a leftrotate 5) + f + e + k + w e = d d = c c = b leftrotate 30 b = a a = temp Добавляем хеш-значение этой части к результату: h0 = h0 + a h1 = h1 + b h2 = h2 + c h3 = h3 + d h4 = h4 + e Итоговое хеш-значение(h0, h1, h2, h3, h4 должны быть преобразованы к big-endian): digest = hash = h0 append h1 append h2 append h3 append h4

Вместо оригинальной формулировки FIPS PUB 180-1 приведены следующие эквивалентные выражения и могут быть использованы на компьютере f в главном цикле:

(0 ≤ i ≤ 19): f = d xor (b and (c xor d)) (альтернатива 1) (0 ≤ i ≤ 19): f = (b and c) xor ((not b) and d) (альтернатива 2) (0 ≤ i ≤ 19): f = (b and c) + ((not b) and d) (альтернатива 3) (40 ≤ i ≤ 59): f = (b and c) or (d and (b or c)) (альтернатива 1) (40 ≤ i ≤ 59): f = (b and c) or (d and (b xor c)) (альтернатива 2) (40 ≤ i ≤ 59): f = (b and c) + (d and (b xor c)) (альтернатива 3) (40 ≤ i ≤ 59): f = (b and c) xor (b and d) xor (c and d) (альтернатива 4)

Криптоанализ

Криптоанализ хеш-функций направлен на исследование уязвимости к различного вида атакам. Основные из них:

  • нахождение коллизий — ситуация, когда двум различным исходным сообщениям соответствует одно и то же хеш-значение.
  • нахождение прообраза — исходного сообщения — по его хешу.

При решении методом «грубой силы»:

  • первая задача требует в среднем 2160/2 = 280 операций, если использовать атаку Дней рождения.
  • вторая требует 2160 операций.

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

В январе 2005 года Винсент Рэймен и Elisabeth Oswald опубликовали сообщение об атаке на усечённую версию SHA-1 (53 раунда вместо 80), которая позволяет находить коллизии меньше, чем за 280 операций.

В феврале 2005 года Сяоюнь Ван, Ицюнь Лиза Инь и Хунбо Юй (Xiaoyun Wang, Yiqun Lisa Yin, Hongbo Yu) представили атаку на полноценный SHA-1, которая требует менее 269 операций.

О методе авторы пишут:

Мы представляем набор стратегий и соответствующих методик, которые могут быть использованы для устранения некоторых важных препятствий в поиске коллизий в SHA-1. Сначала мы ищем близкие к коллизии дифференциальные пути, которые имеют небольшой «вес Хамминга» в «векторе помех», где каждый 1-бит представляет 6-шаговую локальную коллизию. Потом мы соответствующим образом корректируем дифференциальный путь из первого этапа до другого приемлемого дифференциального пути, чтобы избежать неприемлемых последовательных и усеченных коллизий. В конце концов мы преобразуем два одноблоковых близких к коллизии дифференциальных пути в один двухблоковый коллизионный путь с удвоенной вычислительной сложностью.

Оригинальный текст (англ.)

Также они заявляют:

В частности, наш анализ основан на оригинальной дифференциальной атаке на SHA-0, «near-collision» атаке на SHA-0, мультиблоковой методике, а также методикам модификации исходного сообщения, использованных при атаках поиска коллизий на HAVAL-128, MD4, RIPEMD и MD5.

Оригинальный текст (англ.)

Статья с описанием алгоритма была опубликована в августе 2005 года на конференции CRYPTO.

В этой же статье авторы опубликовали атаку на усечённый SHA-1 (58 раундов), которая позволяет находить коллизии за 233 операций.

В августе 2005 года на CRYPTO 2005 эти же специалисты представили улучшенную версию атаки на полноценный SHA-1, с вычислительной сложностью в 263 операций. В декабре 2007 года детали этого улучшения были проверены Мартином Кохраном.

Кристоф де Каньер и Кристиан Рехберг позже представили усовершенствованную версию атаки на SHA-1, за что были удостоены награды за лучшую статью на конференции ASIACRYPT 2006. Ими была представлена двух-блоковая коллизия на 64-раундовый алгоритм с вычислительной сложностью около 235 операций.

Существует масштабный исследовательский проект, стартовавший в технологическом университете австрийского города Грац, который : «… использует компьютеры, соединенные через Интернет, для проведения исследований в области криптоанализа. Вы можете поучаствовать в проекте загрузив и запустив бесплатную программу на своем компьютере.»

Хотя теоретически SHA-1 считается взломанным (количество вычислительных операций сокращено в 280-63 = 131 072 раза), на практике подобный взлом неосуществим, так как займёт пять миллиардов лет.

Бурт Калински, глава исследовательского отдела в «лаборатории RSA» предсказывает, что первая атака по нахождению прообраза будет успешно осуществлена в ближайшие 5—10 лет.

Ввиду того, что теоретические атаки на SHA-1 оказались успешными, NIST планирует полностью отказаться от использования SHA-1 в цифровых подписях.

Из-за блочной и итеративной структуры алгоритмов, а также отсутствия специальной обработки в конце хеширования, все хеш-функции семейства SHA уязвимы к атакам удлинением сообщения и коллизии при частичном хешировании сообщения. Эти атаки позволяют подделывать сообщения, подписанные только хешем — S H A ( m e s s a g e | | k e y ) {\displaystyle SHA(message||key)} или S H A ( k e y | | m e s s a g e ) {\displaystyle SHA(key||message)} — путём удлинения сообщения и пересчёту хеша без знания значения ключа. Простейшим исправлением, позволяющим защититься от этих атак, является двойное хеширование — S H A d ( m e s s a g e ) = S H A ( S H A ( 0 b | | m e s s a g e ) ) {\displaystyle SHA_{d}(message)=SHA(SHA(0^{b}||message))} ( 0 b {\displaystyle 0^{b}} — блок нулей той же длины, что и блок хеш-функции).

2 ноября 2007 года NIST анонсировало конкурс по разработке нового алгоритма SHA-3, который продлился до 2012 года.

SHAppening

8 октября 2015 Marc Stevens, Pierre Karpman, и Thomas Peyrin опубликовали атаку на функцию сжатия алгоритма SHA 1, которая требует всего 257 вычислений.

Реальный взлом: SHAttered (нахождение коллизий)

23 февраля 2017 года специалисты из Google и CWI объявили о практическом взломе алгоритма, опубликовав 2 PDF-файла с одинаковой контрольной суммой SHA-1. Это потребовало перебора 9 × 10 18 {\displaystyle 9\times 10^{18}} вариантов, что заняло бы 110 лет на 1 GPU.

Сравнение SHA-1 с другими алгоритмами

Сравнение с MD5

И MD5, и SHA-1 являются, по сути, улучшенными продолжениями MD4.

Сходства:

  1. Четыре этапа.
  2. Каждое действие прибавляется к ранее полученному результату.
  3. Размер блока обработки, равный 512 бит.
  4. Оба алгоритма выполняют сложение по модулю 232, они рассчитаны на 32-битную архитектуру.

Различия:

  1. В SHA-1 на четвёртом этапе используется та же функция f, что и на втором этапе.
  2. В MD5 в каждом действии используется уникальная прибавляемая константа. В SHA-1 константы используются повторно для каждой из четырёх групп.
  3. В SHA-1 добавлена пятая переменная.
  4. SHA-1 использует циклический код исправления ошибок.
  5. В MD5 четыре сдвига, используемые на каждом этапе, отличаются от значений, используемых на предыдущих этапах. В SHA на каждом этапе используется постоянное значение сдвига.
  6. В MD5 четыре различных элементарных логических функции, в SHA-1 — три.
  7. В MD5 длина дайджеста составляет 128 бит, в SHA-1 — 160 бит.
  8. SHA-1 содержит больше раундов (80 вместо 64) и выполняется на 160-битном буфере по сравнению со 128-битным буфером MD5. Таким образом, SHA-1 должен выполняться приблизительно на 25 % медленнее, чем MD5 на той же аппаратуре.

Брюс Шнайер делает следующий вывод : «SHA-1 — это MD4 с добавлением расширяющего преобразования, дополнительного этапа и улучшенным лавинным эффектом. MD5 — это MD4 с улучшенным битовым хешированием, дополнительным этапом и улучшенным лавинным эффектом.»

Сравнение с ГОСТ Р 34.11-94

Ряд отличительных особенностей ГОСТ Р 34.11-94:

  1. При обработке блоков используются преобразования по алгоритму ГОСТ 28147—89;
  2. Обрабатывается блок длиной 256 бит, и выходное значение тоже имеет длину 256 бит.
  3. Применены меры борьбы против поиска коллизий, основанном на неполноте последнего блока.
  4. Обработка блоков происходит по алгоритму шифрования ГОСТ 28147—89, который содержит преобразования на S-блоках, что существенно осложняет применение метода дифференциального криптоанализа к поиску коллизий алгоритма ГОСТ Р 34.11-94. Это существенный плюс по сравнению с SHA-1.
  5. Теоретическая криптостойкость ГОСТ Р 34.11-94 равна 2128, что во много раз превосходит 280для SHA-1.

Сравнение с другими SHA

В таблице, «промежуточный размер хеша» означает «размер внутренней хеш-суммы» после каждой итерации.

Вариации алгоритма Размер выходного хеша (бит) Промежуточный размер хеша (бит) Размер блока (бит) Максимальная длина входного сообщения (бит) Размер слова (бит) Количество раундов Используемые операции Найденные коллизии
SHA-0 160 160 512 264 − 1 32 80 +,and, or, xor, rotl Есть
SHA-1 160 160 512 264 − 1 32 80 +,and, or, xor, rotl 252 операций
SHA-2 SHA-256/224 256/224 256 512 264 − 1 32 64 +,and, or, xor, shr, rotr Нет
SHA-512/384 512/384 512 1024 2128 − 1 64 80 +,and, or, xor, shr, rotr Нет

Использование

Хеш-функции используются в системах контроля версий, системах электронной подписи, а также для построения кодов аутентификации.

SHA-1 является наиболее распространенным из всего семейства SHA и применяется в различных широко распространенных криптографических приложениях и алгоритмах.

SHA-1 используется в следующих приложениях:

  • S/MIME — дайджесты сообщений.
  • SSL — дайджесты сообщений.
  • IPSec — для алгоритма проверки целостности в соединении «точка-точка».
  • SSH — для проверки целостности переданных данных.
  • PGP — для создания электронной цифровой подписи.
  • Git — для идентификации каждого объекта по SHA-1-хешу от хранимой в объекте информации.
  • Mercurial — для идентификации ревизий
  • BitTorrent — для проверки целостности загружаемых данных.

SHA-1 является основой блочного шифра SHACAL.

Отказ от использования

Компания Google давно выразила своё недоверие SHA-1, особенно в качестве использования этой функции для подписи сертификатов TLS. Ещё в 2014 году, вскоре после публикации работы Марка Стивенса, группа разработчиков Chrome объявила о постепенном отказе от использования SHA-1.

С 25 апреля 2016 года Яндекс.Почта перестала поддерживать старые почтовые программы, использующие SHA-1.

Ссылки

  • RFC 3174 (англ.)
  • Обзор SHA-1 от Консорциума Всемирной паутины (англ.)
  • Взлом SHA-1 (англ.)
  • Доклад о взломе SHA1 (англ.)
  • Брюс Шнайер о взломе SHA (англ.)
  • Последствия удачных атак на SHA-1 (англ.)

Бухгалтер широкого профиля с 15-летним опытом. Сейчас уже на пенсии, чтобы не закиснуть изучаю, что изменилось в отрасли, собираю интересные мне материалы. Надеюсь, они будут полезны и вам в вашей работе — пока экономика работает, без бухгалтерии не обойтись.

Для проведения международных и государственных платежей используются специальные платежные системы. Однако, практически все системы регулируются отдельными банками для возможности проверки счета и выявления скрытых доходов предпринимателей. Важным фактором в работе платежных систем является скорость перевода — чем она выше, тем больше клиентов будут использовать программу. Все банки взимают комиссию с каждой операции по переводу денег, но есть такие вычеты, на которые не влияет цель перевода и другие критерии. Сумма сбора всегда будет одинаковая независимо от количества переведённых средств. Такие комиссии распространяются только на международные переводы.

Международные платежи в системе SWIFT рублем, зачисление и типы переводов, расшифровка — что может означать комиссия банка

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

Аналогичным образом происходит предоставление заемщику средств по договору займа, выплата дивидендов иностранному акционеру, перечисление авторского гонорара и другие разнообразные операции.

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

В настоящее время международные платежи осуществляются посредством всемирной системы межбанковских коммуникаций SWIFT (от англ.Society for Worldwide Interbank Financial Telecommunications — Сообщество всемирных межбанковских финансовых телекоммуникаций), которая объединяет большинство ведущих банков практически всех государств мира, в том числе и России. Данная система была создана в целях стандартизации и рационализации межбанковских платежных операций и минимизации ряда рисков (ошибочного направления платежей, фальсификации платежных поручений и пр.

Как происходит исполнение международного платежа?

Как правило, клиент банка (отправитель средств) самостоятельно формирует платежное поручение с помощью системы «банк-клиент» через Интернет либо посредством направления в банк авторизованных факсовых инструкций.

Для этого ему достаточно знать реквизиты получателя средств (юенефициара): его наименование, адрес, номер банковского счета, а также наименование, адрес и SWIFT (СВИФТ-код) банка получателя.

На основании направленного клиентом платежного поручения банк плательщика формирует сообщение унифицированного формата для банка бенефициара.

Сообщение формата МТ103 (относится к категории «клиентские переводы и чеки») предназначено для передачи инструкций о переводе денежных средств и направляется банком по поручению клиента в банк, обслуживающий бенефициара платежа. Платежные поручения могут обрабатываться и исполняться банком либо в автоматическом режиме (в случаях, когда речь идет о небольших суммах), либо под контролем сотрудников операционного подразделения банка.

По совершенному платежу клиент, как правило, имеет возможность просмотреть через свой интернет-банк как оригинал своего платежного поручения, так и подтверждение платежа, которое часто называют «свифтовка» (по сути это — само сообщение SWIFT, адаптированное в текстовый или табличный вид для удобства чтения пользователем). Также подтверждение об исполнении платежа (свифтовка, авизо) может автоматически направляться банком клиенту на адрес его электронной почты.

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

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

Реквизиты, сроки, стоимость платежей

Остановимся подробнее на важнейших из вышеназванных элементов платежного поручения СВИФТ.BIC (Bank Identifier Code) – это код-идентификатор получателя сообщения, представляющий собой уникальную буквенно-цифровую комбинацию, выступающую «адресом» конкретного банка в сети SWIFT (данный код также часто называют «СВИФТ-кодом» банка). BIC состоит из восьми или одиннадцати знаков (последние три знака в одиннадцатизначном BIC являются кодом филиала или отделения банка). В случае отсутствия точной информации о конкретном филиале банка получателя средств, в качестве последних трех символов одиннадцатизначного BIC указываются буквы XXX. Такой BIC будет означать головной офис банка и все его отделения.

СВИФТ-код (BIC) имеется и у большинства российских банков (Россия занимает одно из первых мест в мире по количеству пользователей SWIFT). Однако, данный код используется в качестве неотъемлемого платежного реквизита лишь для международных платежей.

Дата валютирования — это дата, в которую сумма платежа зачисляется на счет получателя. Соотношение даты отправки платежного поручения и даты валютирования определяет срочность исполнения платежа.

Когда требуется срочно перечислить деньги, клиент может указать в качестве даты валютирования текущий день, то есть день отправки платежного поручения. Следует обратить внимание, что в большинстве банков за срочное исполнение платежа предусмотрена дополнительная комиссия.

Также необходимо учитывать, что датой валютирования и зачисления рубля может быть только рабочий день, а также принимать во внимание время отправки платежного поручения и возможности банка (банки, как правило, обрабатывают срочные платежи до определенного часа текущего рабочего дня по местному времени); необработанные на конец банковского дня платежные поручения обрабатываются в первоочередном порядке на следующий рабочий день). Кроме того, на срок исполнения влияет и маршрут, определяемый банком для проведения конкретного платежа исходя из имеющейся у банка сети банков-корреспондентов в различных регионах мира.

Коды комиссий OUR, SHA, BEN (детали расходов) показывают, за чей счет будут взиматься банковские комиссии. Каждый тип комиссии имеет свою расшифровку.

Опция OUR, которую выбирает клиент, означает, что расходы по оплате всех комиссий будет нести отправитель платежа (то есть соответствующая сумма комиссии будет списана со счета отправителя сверх отправляемой суммы).

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

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

Ограничения, о которых необходимо помнить

Факторами, потенциально способными осложнить или замедлить исполнение международных платежей, могут стать существенные отклонения осуществляемых клиентом платежей от параметров, заявленных им при открытии счета (в частности, характера, объемов и назначения платежей). Также это могут быть проводимые банком мероприятия по предупреждению легализации (отмыванию) денежных средств, полученных преступным путем.

Однако, прозрачная (подтвержденная документально) и понятная банку структура договорных обязательств сторон позволяет минимизировать риск задержки или отказа в исполнении платежа. Как правило, документом, требуемым от клиента для подтверждения того или иного платежа, служит копия контракта или инвойса.

Наконец, необходимо иметь в виду, что банки могут отказать в исполнении поручения о переводе средств в банки государств, на которые наложены международные санкции, в частности, на основании резолюций Совета Безопасности ООН (напр., Афганистан, Иран, КНДР, Сомали и др.), либо государств, с которыми у государства банка-отправителя средств отсутствуют дипломатические или торговые отношения.

Таким образом, современный этап развития сети SWIFT отличает высокий уровень безопасности и сохранности сведений, передаваемых в межбанковских сообщениях.

Наличие общепринятого международного стандарта передачи финансовой информации, позволяет банку не только автоматизировать обработку данных, но и полностью контролировать все поступающие распоряжения, а также с наибольшей точностью и в кратчайшие сроки выполнять соответствующие финансовые операции. Кроме того, унифицированный формат сообщений СВИФТ позволяет снять языковые барьеры и значительно уменьшить различия в практике проведения банковских операций.

Банковский перевод SWIFT, часть 2

Продолжая первую часть, в которой я в общих чертах затронул проблему того, что получателю могут дойти не все средства.

Сейчас я расскажу почему так происходит. Когда в головном офисе будут проводить уже непосредственно сам перевод по вашей заявке, в форме этого самого перевода есть поле под номером 71A (field 71A). Именно оно отвечает за то, откуда будут снимать комиссии банки-корреспонденты. Оно может принимать одно из трех значение: BEN, SHA или OUR.

BEN — сокращенно от beneficiary, т.е. получатель платежа. Значит что отправитель (т.е. ваш вы) не платит никаких комиссий с перевода. А все комиссии посредников вычитаются из самого перевода.

SHA — сокращенно от shared, т.е. совместно. Похоже на предыдущий пункт. Отправитель платит только свою комиссию (т.е. своего банка). Остальные комиссии, если возникают, оплачиваются также из суммы самого перевода.

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

Следовательно если вам надо отправить точную сумму, надо чтобы отправляли именно с OUR. Проблема в том, что заранее узнать размер комиссии сложно. Поэтому банки как правило предлагают два варианта:

  1. Вы открываете счет в банке в валюте перевода. И кладете на него сумму, на $30-40 больше, чем сумма перевода. Тогда банк будет снимать с этого излишка комиссии банков-корреспондентов, если таковые возникнут. После завершения перевода счет можно будет закрыть и снять остаток.
  2. Вы платите фиксированный платеж банку, как правило $20-40. И банк уже с них будет выплачивать комиссии посредникам. Минус — как правило дороже первого способа. Плюс — не надо возится с открытием счета и дальнейшем его закрытием.

Проблема в том, что в большинстве банков операционисты (те, кто вас принимают) не слишком разбираются в этих нюансах. Поэтому будьте бдительны. Если банк предлагает (как обычно делают в Сбербанке) сделать перевод и оплатить только их комиссию, (что-то на вроде 1%) скорее всего это означает, что платеж будет отправлен как BEN/SHA и получателю с большой вероятность дойдет не вся сумма.

Инструкции по оплате комиссии в банковских переводах (SWIFT)

Производя оплату услуг банковским переводом (международный платеж в системе SWIFT), можно установить, за чей счет будут оплачены банковские комиссии. Для этого необходимо в платежном поручении, в поле 71А «Детали платежа»(Details of Charges), поставить отметку: BEN, OUR или SHA.

Отличия BEN, OUR, SHA:

  • BEN – оплата всех комиссий производится из суммы перевода. Сумма перевода, которая придет получателю, будет меньше отправляемой суммы, поскольку из перевода вычитаются комиссии всех задействованных банков.
  • OUR – оплата всех комиссий производится за счет отправителя, перевод приходит получателю в полном объеме. А средства для оплаты комиссий списываются со счета отправителя, сверх суммы перевода.
  • SHA – оплата комиссий производится совместно, отправитель перевода оплачивает комиссии своего банка, а комиссии остальных банков оплачиваются за счет получателя (вычитаются из суммы перевода). Сумма перевода, которая придет получателю, будет меньше отправляемой суммы, поскольку из перевода вычитаются комиссии банков.

ATM и ITT сбербанка — что это такое? Как расшифровывается?

У Сбербанка России клиентов больше половины населения страны. При работе с пластиковыми картами этого банка пользователи сталкиваются с аббревиатурами ATM и ITT в банковских выписках, договорах и на чеках.

Как расшифровываются буквы ATM и ITT клиенты сбербанка не догадываются. На самом деле, это условные обозначения терминалов самообслуживания и банкоматов. Если вы пользуетесь услугами зеленого банка, то обязательно пользовались данными аппаратами.

ATM (Automatic Teller Machine) — автоматический банкомат в переводе с английского. Электронная машина, которая позволяет снять деньги со своего счета или пополнить его наличными.

Сейчас АТМ банкоматы сбербанка устанавливают повсеместно: в отделениях сбербанка и на улицах, в торговых центрах и магазинах. Технологии беспроводной связи позволяют решать комплекс задач через ATM сбербанка: проверять баланс, переводить деньги на вклад и обратно, оплачивать услуги мобильной связи и ЖКХ, подключить или отключить Мобильный банк, Сбербанк Онлайн.

ITT (Information-Transaction Terminals) — информационный транзакционный терминал. Так обозначаются терминалы самообслуживания, в которых можно провести такие же операции, как и в банкоматах сбербанка. Это современные модели устройств самообслуживания с сенсорными экранами, занимающие меньше пространства и работающие стабильней.

Устройства самообслуживания ATM и ITT сбербанка имеют уникальные идентификаторы и внесены в общий каталог. Числовые коды введены для идентификации машин, служебного контроля и своевременного обслуживания.

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

Если банкомат зажевал деньги или карту, если не работает или присутствуют следы скриминга, достаточно позвонить в службу поддержки сбербанка, назвать проблему и указать номер ATM или ITT. Тогда сотрудники банка поймут, с каким устройством сложилась проблема, это поспособствует скорейшему разрешению ситуации.

Если хотите найти банкомат по номеру ATM, по ссылке скачайте список всех банкоматов сбербанка в формате XLSX (актуальный список на ноябрь 2017 года).

В случае неполадок с банкоматом или терминалом сбербанка обращайтесь в ближайшее отделение или звоните на номер 88005555550. Это бесплатный телефон, доступный круглосуточно и даже в праздничные дни.

SWIFT — система международных банковских переводов

Международным банковским переводом (Wire transfer) называется денежный трансфер между двумя счетами, открытыми в разных финансовых организациях в двух разных странах. Обеспечение подобной успешной операции требует не только постоянного контроля безопасности и безошибочности, но и единых стандартов выполнения на каждом этапе передачи данных.

Крупнейшей системой международных межбанковских переводов является SWIFT — общество, в состав которого входит около 11000 финансовых институций с более 200 стран. Именно эта международная система, штаб-квартира которой базируется в Брюсселе, внедрила большую часть межкорпоративных стандартов, обеспечивающих согласованность, безопасность и надежность трансферов по всему миру.

По сути, СВИФТ является не столько транснациональной компанией, сколько кооперацией банков и финансовых организаций, соглашающихся следовать международным стандартам передачи финансовой информации, как между собой, так и с системой.

Так, все сообщения в системе состоят из трех частей — заголовка, основного текста и трейлер-кода, а обработка информации всегда производится по одному пути — Компьютерный терминал => Региональный процессинговый центр => Операционный центр и в обратную сторону. Все сообщения, переданные через SWIFTNet, хранятся в одном из трех Дата-центров — в США, Нидерландах и Швейцарии.

Как расшифровать BIC-код?

Каждая организация, зарегистрированная в SWIFT, идентифицируется в соответствии со стандартом ISO 9362. Коды бизнес-идентификации (BIC) состоят из 8-11 символов:

1..4 буква — код организации;

5-6 символ — код страны;

7-8 символ — код региона;

9-11 цифра — (опционально) код отделения.

Банки-корреспонденты, и почему SWIFT-перевод такой дорогой.

СВИФТ не является средством физического перевода денег, а, скорее, системой платежных поручений по переводу средств между корреспондентскими счетами. Корр.

То есть, если Вам необходимо отправить перевод в USD, Ваш локальный банк (например, Сбербанк) поручит совершить перевод банку-корреспонденту, расположенному в США, согласно курса, согласованного между американским банком и банком-респондентом. При этом, совсем необязательно, что в этой цепочке будет только один корр-счет, что и объясняет высокие комиссии и длительные сроки при совершении банковского перевода.

Что такое MT103?

Типовым сообщением в системе СВИФТ, является MT103 — формат передачи данных о денежном переводе, отправителе и получателе.

Строка «Детали расходов (OUR/SHA/BEN)» определяет, на кого возлагается оплата комиссии банков за отправку, пересылку и получение перевода.

  1. OUR — комиссию платит отправитель;
  2. SHA — отправитель оплачивает комиссию своего банка, а комиссию корр.банков и банка получателя остается за бенефициаром;
  3. BEN — все комиссии оплачивает получатель.

Как отправить банковский перевод через SWIFT?

Обычно, для совершения перевода, достаточно предоставить BIC банка-получателя и номер счета или имя получателя.

Тем не менее, нередки случаи, когда банк требует дополнительную информацию — такую, как реквизиты корр.

Типы банковских переводов

  • 17.05.2006
  • Рубрика:

В последнее время у всех, кто работает с банками, на слуху два загадочных слова – «Вайр трансфер». Однако в этом понятии нет ничего таинственного. Дословно термин «wire transfer» в переводе с английского языка означает «телеграфный перевод». То есть речь может идти о любом типе электронного банковского перевода. В статье мы расскажем о самых распространенных из них.

У сотрудников компаний, которые по долгу службы общаются с кредитными учреждениями, возникает масса вопросов о денежных переводах. Например, руководителя предприятия может интересовать, каким образом банк отправляет платежи партнерам. Финансовых работников же волнует, чем один вид перевода отличается от другого. А также какой из них более выгоден фирме и может ли она выбирать способ отправки денег.

Международные клиринговые системы

Главное отличие типов банковских переводов друг от друга – это их «радиус действия». К примеру, деньги, отправленные партнерам из США, скорее всего, переведут через Fedwire. Это платежная система Федеральной Резервной Системы США, к которой подключены все американские банки. Она работает в режиме реального времени. Fedwire используют для переводов в пользу всех американских банков и их клиентов. Кредитные организации, которые работают в системе Fedwire Funds Transfers, имеют код участника (АВА). Он идентифицирует их в системе.

Банковские переводы также различают по типу валюты, в которой та или иная клиринговая¹ система позволяет осуществлять расчеты. Например, система CHIPS (Clearing House Interbank Payment System) была основана в 1970 году. Она также работает в реальном времени. Ее используют в первую очередь при крупных международных расчетах в долларах США. CHIPS включает в себя несколько десятков крупных банков Нью-Йорка. Туда входят как американские кредитные учреждения, так и филиалы зарубежных банков – участников системы. Фактически 95 процентов всех международных переводов в долларах США осуществляют посредством CHIPS. Банкам – участникам этой системы – присваивают специальный код. Благодаря этому можно определить компанию, которая использует такой тип перевода.

В расчетах с европейскими странами используют клиринговую систему TARGET. Она работает только в валюте евро. TARGET объединяет национальные системы стран Европейского союза (ЕС), Великобритании, Дании и Швеции в единую сеть. Основное ее назначение – обработка межбанковских переводов крупных сумм.

Еще одна европейская клиринговая система – EURO1 – позволяет проводить расчеты в пределах лимитов, которые устанавливают друг другу банки – участники этой системы.

Отдельно необходимо упомянуть часто встречающуюся аббревиатуру IBAN (International bank account number). Это стандарт номера счета. Он предназначен для упрощения маршрутизации переводов внутри ЕС. IBAN содержит коды страны, банка (или его филиала), номер счета и две контрольные цифры. Для того чтобы сделать перевод в страны ЕС, в платежных реквизитах обязательно нужно указать IBAN.

Самый распространенный электронный банковский канал – S.W.I.F.T. Эта универсальная система существует очень давно. Она имеет самый широкий «радиус действия» – с ее помощью можно осуществлять переводы по всему миру.

Все дело в «клейме»

Желание узнать различия между типами переводов вполне понятно. Но практическую пользу фирме эти знания, скорее всего, не принесут. Ведь банк самостоятельно определяет, каким способом отправить платеж. При этом он выбирает оптимальный путь перевода денег.

Основной момент, который действительно должен волновать организацию, – размер «клеймов» (claims). Это дополнительные комиссии в цепочке банков-корреспондентов. Следует заметить, что от типа банковского перевода они не зависят. На размер «клеймов» влияет вид комиссии, который установлен в договоре об открытии банковского счета фирмы. Существуют три их типа: OUR, SHA и BEN.

В России комиссию снимают в основном с отправителя. То есть используют опцию OUR. А за рубежом, наоборот, более популярен тип BEN. В результате многие отечественные компании при расчетах с «иностранцами» вынуждены платить дважды. Так, когда они перечисляют деньги, с них берут комиссию как с отправителя. А если им на счет приходят средства, то снова выставляют «клейм», но уже как получателю. Ситуацию усугубляет то, что заграничные банки с опции OUR взимают комиссию в четыре раза большую, чем с опции BEN. Ведь «свои» клиенты у них получают существенные скидки. Разумеется, это несправедливо. Однако отечественные компании отчасти виноваты сами – иностранные инвесторы предпочитают в расчетах с ними опцию OUR, поскольку не всегда доверяют российским партнерам.

Встречается и такая ситуация. Средства, которые отправили с опцией OUR, могут дойти до получателя не в полном объеме. Банк-корреспондент списывает свою комиссию со счета отправителя, а дальше платеж идет как BEN. При этом американские банки берут комиссию за зачисление не из суммы перевода, а со счета банка-отправителя. Поэтому платеж поступит на счет американского банка с опцией BEN. И все последующие комиссии банков будут списаны с получателя.

При работе с европейскими банками указатель типа комиссии OUR сохраняется. Поэтому комиссии «третьих» банков также взимаются с отправителя.

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

А если отправить деньги с условием SPOT – на второй рабочий день – можно сэкономить до 30 долларов с каждого платежа.

Оптимальный вариант

Чтобы максимально сэкономить на комиссиях с переводов, нужно использовать условие SPOT и опцию SHA. При этом потери на «клеймах» составят до 5 долларов. А платеж будет в среднем идти один–три дня. Фактически же его оформят в день подачи заявления на перевод. Скорость прохождения платежа будет зависеть от графика работы банка-получателя и сроков зачисления им средств.

¹ Клиринг – система взаимных безналичных расчетов между банками.

OUR, SHA, BEN?

OUR подразумевает, что комиссию за перевод взимают с отправителя. Это значит, что банки-корреспонденты не «забирают» комиссию из суммы перевода, а выставляют «клейм» банку-отправителю.

При использовании SHA клиент банка-отправителя оплачивает комиссию в соответствии с тарифами на его услуги. Все остальные банки, которые участвуют в переводе денег, удерживают свое вознаграждение из суммы платежа.

Опция BEN позволяет списывать комиссии с получателя денег. Со счета клиента банка-отправителя списывают только сумму перевода.

Банки могут использовать комбинации из разных видов клеймов, например OUR/BEN. В этом случае кредитное учреждение – отправитель платежа – взимает комиссию с того, кто его перечисляет. Остальные банки-корреспонденты берут свой процент с получателя.

Оксана Климушкина, начальник управления международных операций АКБ «РУССЛАВБАНК» Источник материала —

SHA256

SHA256 — хеш-функция из семейства алгоритмов SHA-2 предназначена для создания «отпечатков» или «дайджестов» для сообщений произвольной длины. Применяется в различных приложениях или компонентах, связанных с защитой информации.
Криптографические хэш-функции-это математические операции, выполняемые с цифровыми данными; сравнивая вычисленный «хэш» (результат выполнения алгоритма) с известным и ожидаемым хэш-значением, человек может определить целостность данных. Например, вычисление хэша загруженного файла и сравнение результата с ранее опубликованным результатом хэша может показать, была ли загрузка изменена или подделана. Ключевым аспектом криптографических хэш-функций является их сопротивление столкновению: никто не должен быть в состоянии найти два разных входных значения, которые приводят к одному и тому же хэш-выходу.
SHA-2 включает значительные изменения от своего предшественника, SHA-1. SHA-2 семья состоит из шести хэш-функции с дайджест (хэш-значений), которые находятся 224, 256, 384 или 512 бит: алгоритм SHA-224, SHA-256, SHA-384, алгоритм SHA-512, алгоритм SHA-512/224, алгоритм SHA-512/256.
SHA-256 и SHA-512 являются новыми хэш-функциями, вычисленными с 32-разрядными и 64-разрядными словами соответственно. Они используют различные количества сдвига и аддитивные константы, но их структуры в остальном практически идентичны, отличаясь только количеством раундов. SHA-224 и SHA-384 являются просто усеченными версиями первых двух, вычисленными с различными начальными значениями. SHA-512/224 и SHA-512/256 также являются усеченными версиями SHA-512, но начальные значения генерируются с использованием метода, описанного в федеральных стандартах обработки информации (FIPS) PUB 180-4. SHA-2 было опубликовано в 2001 Национальным Институтом стандартов и технологии (NIST) Федеральный стандарт США (FIPS). Семейство алгоритмов SHA-2 запатентовано в патенте США 6829355. Соединенные Штаты выпустили патент под безвозмездной лицензией.
В настоящее время лучшим публичные нападки сломать прообраз сопротивление по 52 из 64 раундов SHA-256 или 57 из 80 раундов алгоритма SHA-512, и столкновения сопротивление по 46 из 64 раундов алгоритма SHA-256.

Представляю свой неофициальный рейтинг лучших онлайн-сервисов, позволяющих расшифровать хэши. В своих оценках я руководствовался следующими критериями:

  • бесплатность доступа
  • размер словаря
  • поддерживаемые типы хэшей
  • наличие детального криптоанализа (например с помощью Rainbow-таблиц)
    Обновлено 29.03.2013

  1. cmd5.ru

    cmd5.ru один из старейших сервисов для расшифровки хэшей, существует с 2006 года. Преимущества сервиса:

    • уникальная база данных, по объему не имеющая себе равных – 4800 миллиарда записей;
    • огромное количество поддерживаемых типов хэшей для перебора;
    • возможность групповой обработки хэшей;
    • наличие программного клиента для доступа к сервису.

    Помимо бесплатного доступа к сервису, имеется расширенный платный пакет услуг. Стоит ли платить за расшифровку? Однозначно да, особенно в случаях, когда ни один другой сервис не может взломать ваш пароль, либо вы занимаетесь расшифровкой хэшей на постоянной основе, тем более, что тарифы довольно демократичные. По своему опыту могу сказать, что это самый эффективный сервис, поэтому он занимает почетное первое место.

    типы хэшей:

    • md5
    • md5(md5($pass))
    • sha1
    • sha256
    • mysql
    • mysql5
    • md5($pass.$salt);Joomla
    • md5($salt.$pass);osCommerce
    • md5(md5($pass).$salt);Vbulletin;IceBB;Discuz
    • md5(md5($salt).$pass)
    • md5($salt.$pass.$salt);TBDev
    • md5($salt.md5($pass))
    • md5(md5($pass).md5($salt))
    • md5(md5($salt).md5($pass));ipb;mybb
    • sha1($salt.$pass)
    • sha1(lower($username).$pass);SMF
    • sha1(upper($username).’:’.upper($pass));ManGOS
    • sha1($username.’:’.$pass)
    • sha1(salt.pass.’UltimateArena’)
    • MD5(Unix);phpBB3;WordPress
    • Des(unix)
    • mssql
    • NTLM
    • md5(unicode)
    • serv-u
    • radmin v2.x
  2. c0llision.net
    free | 295G | md5 md5(md5()) ntlm lm pwdump | distributed network

    c0llision.net – отличный бесплатный сервис, основанный на большой сети по распределенному перебору md5, lm и ntlm хешей. Проект бурно развивается, что не может не радовать. Для добавления хешей в очередь предпочтительней использовать IRC, хотя и имеется веб-интерфейс.

  3. crackstation.net
    free | 190G | LM NTLM md2 md4 md5 md5(md5) md5-half sha1 sha1(sha1_bin()) sha224 sha256 sha384 sha512 ripeMD160 whirlpool MySQL 4.1+ | dic

    В описании сервиса заявлено, что база данных включает все слова из Википедии, а также все общедоступные словари, которые автору удалось найти в интернете. Используемый сервисом словарь доступен для скачивания. Кроме того, работает twitter-бот @plzcrack.

  4. md5.darkbyte.ru
    free | 329M + 48G | md5 | dic

    Сервис дает неплохие результаты, так как использует сторонние сервисы помимо собственной локальной базы данных. Позволяет отправить на расшифровку неограниченное количество паролей, имеется API.

  5. tmto.org
    free | 36G | md5 lm ntlm sha1 | rainbow tables

    После продолжительного оффлайна проект TMTO (Time-Memory Trade Off Cracking) вновь стал доступен. База стала еще больше, появились новые алгоритмы, сервис остался бесплатным, как и прежде. Радует высокая скорость расшифровки благодаря постоянному росту кластера. За один раз можно отправить неограниченное количество хэшей для расшифровки.

  6. hashcracking.ru
    free & auth | 3M | md5 mysql mysql5 sha1 | dic rainbow tables

    hashcracking.ru по-прежнему в строю, позволяет проводить поиск mysql и mysql5 паролей, брутить по маске, есть возможность перебора по словарю с указанием salt.

  7. www.md5decrypter.co.uk
    free | 8,7G | md5 | dic

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

  8. md5decryption.com
    free | 105M | md5 | dic

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

  9. md5.rednoize.com
    free | 51M | md5 sha1 | dic

    + поддержка md5 и sha1, бесплатный доступ
    – нет Rainbow-таблиц

  10. www.md5crack.com
    free | – | md5 | google

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

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *