• Руководство
  • Библиотеки
  • Статьи
  • Ссылки
  • Новости
  • Советы
  • Подсказки
  • Контакты

Сайт о языке программирования Dart - руководства, инструкции, новости, статьи и многое другое

Библиотеки » Криптография (dart:crypto)

793
  • класс CryptoUtils

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

  • класс Hash

    Абстрактный класс Hash является базовым классом для криптографических алгоритмов хеширования и создания «отпечатков» или хешей сообщений произвольной длины.

    В классе описаны два основных метода для создания "отпечатков" для массива байт:

    • с помощью метода Hash.add() можно добавлять данные к сообщению
    • с помощью метода Hash.close() можно получить хеш сообщения
  • класс SHA1

    Класс self реализует криптографический алгоритмм хеширования SHA1 (англ. Secure Hash Algorithm Version 1 — безопасный алгоритм хеширования, версия 1) и позволяющий создавать «отпечатки» или хеши сообщений произвольной длины. Для входного сообщения произвольной длины (максимум 264 - 1 бит) алгоритм генерирует 160-битное хеш-значение.

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

  • класс SHA256

    Класс self реализует криптографический алгоритмм хеширования SHA-256, разновидность SHA-2 (англ. Secure Hash Algorithm Version 2 — безопасный алгоритм хеширования, версия 2) и позволяющий создавать «отпечатки» или хеши сообщений произвольной длины. Для входного сообщения произвольной длины (максимум 264 - 1 бит) алгоритм генерирует 256-битное хеш-значение.

    Хеш-функции семейства SHA-2 разработаны Агентством национальной безопасности США. Используется во многих криптографических приложениях и протоколах. Исходное сообщение после дополнения разбивается на блоки, каждый блок — на 16 слов. Алгоритм пропускает каждый блок сообщения через цикл с 64-мя или 80-ю итерациями (раундами). На каждой итерации 2 слова преобразуются, функцию преобразования задают остальные слова. Результаты обработки каждого блока складываются, сумма является значением хеш-функции.

  • класс MD5

    Класс self реализует криптографический 128-битный алгоритм хеширования MD5 (англ. Message Digest 5) и позволяющий создавать «отпечатки» или хеши сообщений произвольной длины. Для входного сообщения произвольной длины алгоритм генерирует 128-битное хеш-значение.

    Разработан профессором Рональдом Л. Ривестом из Массачусетского технологического института (Massachusetts Institute of Technology, MIT) в 1991 году. На данный момент существуют несколько видов «взлома» хешей MD5 (перебор по словарю, прямой перебор значений, RainbowCrack).

    Алгоритм MD5 является устаревшим и не рекомендованным к использованию. Cледует избегать использования MD5 в любых целях!

  • класс HMAC

    Абстрактный класс self предоставляет набор методов для проверки целостности данных на основе секретного ключа, используя метод HMAC (сокращение от англ. hash-based message authentication code, хеш-код аутентификации сообщений).

    Механизмы, которые предоставляют такие проверки целостности на основе секретного ключа, обычно называют кодом аутентичности сообщения (MAC). Как правило, МАС используется между двумя сторонами, которые разделяют секретный ключ для проверки подлинности информации, передаваемой между этими сторонами. Этот стандарт определяет MAC. Механизм, который использует криптографические хеш-функции в сочетании с секретным ключом называется HMAC.

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

Dart API
  • Основная библиотека (dart:core)
  • Математическая библиотека (dart:math)
  • Коллекции (dart:collection)
  • Ввод-вывод (dart:io)
  • HTML (dart:html)
  • JSON (dart:json)
  • URI (dart:uri)
  • Криптография (dart:crypto)
    • CryptoUtils
    • Hash
    • SHA1
    • SHA256
    • MD5
    • HMAC
Новости
  • 02.05.2013 Краткие результаты работы команды разработчиков Dart за апрель 2013
  • 19.04.2013 Доступен неофициальный репозиторий для ОС Ubuntu с браузером Dartium, Dart SDK, и IDE Dart-Editor
    Харалд Глатт (Harald Glatt) опубликовал, и поддерживает неофициальный репозиторий для ОС Ubuntu с актуальными версиями пакетов Dartium, Dart SDK, и IDE Dart-Editor
  • 17.04.2013 Новые видео-уроки от команды разработчиков Dart
    Команда разработчиков Dart выпустила еще несколько небольших обучающих роликов
  • 21.02.2013 Критические изменения в библиотеке вводы\вывода dart:io
  • 09.02.2013 Автоматическое тестирование браузерных dart-приложений с помощью DumpRenderTree
807747746745744
архив
Статьи
  • 26.01.2013 Получение MD5-хеша строки или файла в Dart
  • 06.01.2013 Как прочитать текстовый файл?
  • 08.12.2012 Библиотека модульного тестирования unittest - выполнение определенного набора тестов
  • 26.10.2012 Измерение производительности dart-приложений
  • 09.10.2012 Интервью Seth Ladd касающиеся мифов и заблуждений относительно языка Dart
  • 01.06.2012 Инициализация коллекций, списков, массивов и хеш-таблиц
  • 03.04.2012 Dartium - браузер Chromium с поддержкой языка Dart
  • 28.02.2012 Создание графики в формате SVG с помощью Dart и библиотеки dart:html
  • 30.12.2011 Некоторые новшества при работе с DOM в библиотеки dart:dom
  • 20.12.2011 Среда разработки для языка Dart - Dart Editor
737730658655646703639492678
архив
карта сайта