Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Хеширование массива данных




Хеширование – преобразование входного массива данных произвольной длины в выходную битовую строку фиксированной длины (хэш-код) с помощью специальных алгоритмов, называемых хеш-функциями. Хеширование применяется для сравнения данных. Если хэш-коды двух массивов данных одинаковы, то, скорее всего сами массивы идентичны. Вероятность совпадения хэш-кодов двух различных массивов данных равна 1/r, где r – размерность хэш-кода. Например, с помощью 16-ричного хэш-кода длиной 4 символа, мы можем однозначно определить 65536 (в 16-ричной системе – FFFF) или 16^4 массивов данных. Так как на самом деле этих массивов бесчисленное множество, то на каждый массив из этого множества будет приходиться один из 65536 хэш-кодов, а соответственно вероятность совпадения хэш-кодов двух случайных массивов будет равна 1/65536 ~ 0.00001525878. Очевидно, что чем длиннее хэш-код, тем больше его надежность. Простейшими примерами хеш-функций могут служить контрольные суммы и CRC (cyclic redundancy code – циклический избыточный код).

В нашем случае мы выбрали CRC16 за основной алгоритм хеширования. Он обеспечивает достаточно надежную защиту от ошибки (совпадения случайно набранного неверного массива с исходным) с одной стороны, и простоту его проверки – с другой.

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

Скриншоты программы

Интерфейс программы подготовки к печати

 

Распечатанный бланк

 

 

Интерфейс программы ввода

 

Интерфейс программы ввода (отправка ошибочных данных недоступна)

Заключение

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

Литература

http://ru.wikipedia.org/wiki/Хеширование

References

http://ru.wikipedia.org/wiki/Хеширование

Контроль работы цифровых автоматов

Олейников Антон Дмитриевич

Всероссийская государственная налоговая академия

Министерства финансов Российской Федерации,

Студент, e-mail: Antonio.rossi@mail.ru

Аннотация

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

Ключевые слова: представление кодов, методы контроля.

 





Поделиться с друзьями:


Дата добавления: 2016-10-27; Мы поможем в написании ваших работ!; просмотров: 1030 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Студенческая общага - это место, где меня научили готовить 20 блюд из макарон и 40 из доширака. А майонез - это вообще десерт. © Неизвестно
==> читать все изречения...

4419 - | 4311 -


© 2015-2026 lektsii.org - Контакты - Последнее добавление

Ген: 0.009 с.