У этой системы есть две главные цели. Две книги хранятся у двух разных клерков, уменьшая возможность обмана. Но еще более важно, что две книги будут сбалансированы друг с другом в установленном порядке (бизнесмены должны подсчитывать баланс каждый месяц, банки каждый день). Процесс подсчета баланса и является аудитом: если один клерк пытается совершить злостную фальсификацию или просто сделает ошибку, это будет раскрыто, потому что кто-нибудь другой будет проверять его работу, а не он сам. В дополнение к этому могут пригласить ревизоров со стороны, когда придут другие бухгалтеры и проверят книги снова… только чтобы удостовериться.
Аудит жизненно необходим, если к безопасности относиться серьезно. Двойная запись бухгалтерского учета – это только начало; банки имеют комплексные и исчерпывающие требования к аудиту. То же касается тюрем, стартовых шахт ядерных ракет и бакалейных магазинов. В тюрьмах должны хранить записи на каждого, кто поступает и выбывает, и регулярно составлять баланс, чтобы быть уверенными, что никто незамеченным не убыл (или случайно не остался). В ракетных шахтах могут дополнительно подвергнуть ревизии каждый убывающий и прибывающий контейнер и упаковку, сравнивая отгрузочные и приемные записи с действительностью. Бакалейный магазин хранит кассовую ленту всего пробитого товара и сравнивает количество денег, находящихся в ящике кассы фактически, с тем, что пробито на кассовой ленте.
Это не профилактические меры безопасности (хотя они могут предотвратить нападения); аудит предназначен для того, чтобы помочь судам. Суть аудита состоит в том, чтобы вы смогли обнаружить успешное нападение, выяснить, что случилось после него, и затем доказывать наличие нападения в суде. Специфические потребности системы в аудите зависят от сферы его приложения и масштабов. Например, вам не нужно многое из контрольных функций аудита, применяемых к системе кредитных карт для обслуживания фотокопировальных машин университета. И есть потребность в гораздо более жестком контроле, если кредитные карты собираются использовать для проведения больших закупок, которые могут быть конвертированы в наличные деньги.
Аудит с трудом может быть применим к компьютерам. Регистрационная лента хорошо подходит для ревизии, потому что клерк не в силах изменить записи: операции последовательно напечатаны на едином рулоне бумаги, и невозможно добавить или удалить операцию, не вызвав подозрения. (Правда, есть некоторые способы: блокирование записи, имитация того, что закончились чернила, блокировка записи для отдельной операции, подделывание целой ленты и т. д.) С другой стороны, компьютерные файлы могут быть легко стерты или изменены; это делает аудиторскую проверку записей более сложной. Большинство проектировщиков систем не думают о ревизии, когда занимаются их разработкой. Вспомните заложенное изначально контрольно-ревизионное свойство двойной записи счетов бухгалтерского учета. Эта контрольная способность обречена на неудачу, когда обе книги хранятся в одной и той же компьютерной системе и один и тот же человек имеет доступ к обеим книгам. Но таким образом работают все бухгалтерские компьютерные программы.