Новые книги

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

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

Эта книга задумана как продолжение бестселлера «Programming Arduino: Getting Started with Sketches». Несмотря на то что эта книга включает краткое повторение основ из книги «Programming Arduino», она познакомит читателя с более продвинутыми аспектами программирования плат Arduino.
IT-принцип «agile» стал мантрой цифровой эпохи. С ростом проектов, переходом от монолитных приложений к системе микросервисов, увеличением и накоплением продуктов возникают вопросы, которые требуют совершенно иного подхода. Теперь наибольший интерес вызывает находящаяся на стыке разработки и операционного управления методология DevOps.

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

Книга «Философия DevOps» познакомит вас с техническими, культурными и управленческими аспектами devops-культуры и позволит организовать работу так, чтобы вы получали удовольствие от разработки, поддержки и использования программного обеспечения.

mcrypt_create_iv

Учебник РНР
НазадВперёд

mcrypt_create_iv

(PHP 3>= 3.0.8, PHP 4)

mcrypt_create_iv - создаёт вектор инициализации/initialization vector (IV) из произвольного источника.

Описание

string mcrypt_create_iv (int size, int source)

mcrypt_create_iv() используется для создания IV.

mcrypt_create_iv() принимает два аргумента: size определяет размер IV, source специфицирует источник IV.

Источником может быть MCRYPT_RAND (системный генератор случайных чисел),MCRYPT_DEV_RANDOM (читает данные из /dev/random) и MCRYPT_DEV_URANDOM (читает данные из /dev/urandom). Если вы используете MCRYPT_RAND, не забудьте вызывать srand() до инициализации генератора случайных чисел.

Пример 1. mcrypt_create_iv()
<?php
    $size = mcrypt_get_iv_size (MCRYPT_CAST_256, MCRYPT_MODE_CFB);
    $iv = mcrypt_create_iv ($size, MCRYPT_DEV_RANDOM);
?>

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

Дополнительная информация находится на http://www.ciphersbyritter.com/GLOSSARY.HTM#IV, http://fn2.freenet.edmonton.ab.ca/~jsavard/crypto/co0409.htm и в главе 9.3 в Applied Cryptography by Schneier (ISBN 0-471-11709-9).


Назад Оглавление Вперёд
mcrypt_cfb Вверхmcrypt_decrypt