Как и для чего используется защитный ключ

ПРИНЦИПЫ БУХГАЛТЕРСКОГО УЧЁТА В КОММЕРЧЕСКИХ

БАНКАХ

Ведение бухгалтерского учёта в коммерческих банках основывается на ряде принципов (

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

1) учёт внутрихозяйственных операций банка;

2) операционный учёт;

3) учёт валютных операций;

4) учёт ценных бумаг;

5) учёт доходов, расходов и финансовых результатов;

6) составление финансовой и налоговой отчётности.

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

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

В структуру учётно-операционного аппарата могут входить:

1. Отдел учёта кассовых операций – занимается оформлением кассовых документов и контролем за ними.

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

3. Отдел учёта операций с иностранной валютой ведёт учёт операций с наличной и безналичной иностранной валютой по срочным и кассовым сделкам и т.п.

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

5. Отдел отчётности и анализа подготавливает отчётность банка, проводит анализ финансовой деятельности банка, его ликвидности и доходности операций.

6. Отдел межфилиального учёта отражает операции головного банка с филиалами.

7.Головные функции операционного и бухгалтерского учёта расчётных операций возлагаются на операционный отдел.

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

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

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

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

РАСЧЁТ ЗАЩИТНОГО КЛЮЧА В НОМЕРЕ ЛИЦЕВОГО СЧЁТА

Номер лицевого счёта аналитического учёта состоит из 20 знаков:

А ББ ВВ ГГГ К ДДДД ЛЛЛЛЛЛЛ,

где: А – номер раздела Плана счетов; Б – порядковый номер счёта первого порядка; В – порядковый номер счёта второго порядка, Г – код валюты; К – защитный ключ; Д – номер подразделения банка, у которого нет счёта в Банке России; Л – личный номер объекта учёта.

Защитный ключ служит для контроля правильности введения цифр в номере лицевого счёта. Он рассчитывается по специальной формуле, в которой используются весовые коэффициенты – 713 и 3. В расчёте ключа участвуют все цифры номера счёта, при этом ключ изначально имеет значение «0» и последние три цифры из номера корреспондентского счёта банка (или БИКа).

Расчёт защитного ключа в номере лицевого счёта осуществляется операционной программой автоматически при открытии счёта, вручную расчёт ключа осуществ­ляется таким образом: в строку записывают последние три цифры номера корреспондентского счёта и двадцать цифр лицевого счёта. Под всеми выписанными цифрами подписывают коэффициент 713, повторяя его несколько раз. Затем две стоящие друг под другом цифры перемножают, полученные произведения складывают. Из полученной суммы учитывают число единиц и умножают их на коэффициент 3. Полученное произведение, состоящее из цифры от «0» до «9», и есть ключ. В том случае, если произведение представляет собой двузначное число, то число единиц и есть ключ. Например, открыт лицевой счёт по депозиту физического лица до востребования в рублях в банке, имеющем корреспондентский счёт в Банке России, последние три цифры которого 345. В книге регистрации лицевых счетов сделана запись об открытии лицевого счета под №422. Расчёт ключа:

Читайте также:  Как определить пищевую нержавейку в домашних условиях

345 42301 810 0 0000 0000422

713 71371 371 3 7137 1371371

21 + 4 + 15 + 28 + 2 + 9 + 0 + 1 + 24 + 7 + 0 + 0 + 0 + 0 + 0+ 0 + 0 + 0 + 0 + 0 + 12 + 14 + 2 = 139;

Все специальные учётные регистры аналитического учёта подразделяются на 2 группы: общие и подробные регистры.

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

Основой данной технологии является специализированная микросхема, либо защищённый от считывания микроконтроллер, имеющие уникальные для каждого ключа алгоритмы работы. Донглы также имеют защищённую энергонезависимую память небольшого объёма, более сложные устройства могут иметь встроенный криптопроцессор (для аппаратной реализации шифрующих алгоритмов), часы реального времени. Аппаратные ключи могут иметь различные форм-факторы, но чаще всего они подключаются к компьютеру через USB. Также встречаются с LPT- или PCMCIA-интерфейсами.

Принцип действия электронных ключей. Ключ присоединяется к определённому интерфейсу компьютера. Далее защищённая программа через специальный драйвер отправляет ему информацию, которая обрабатывается в соответствии с заданным алгоритмом и возвращается обратно. Если ответ ключа правильный, то программа продолжает свою работу. В противном случае она может выполнять определенные разработчиками действия, например, переключаться в демонстрационный режим, блокируя доступ к определённым функциям.

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

Содержание

История [ править | править код ]

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

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

Защита ПО с помощью электронного ключа [ править | править код ]

Комплект разработчика ПО [ править | править код ]

Донгл относят к аппаратным методам защиты ПО, однако современные электронные ключи часто определяются как мультиплатформенные аппаратно-программные инструментальные системы для защиты ПО. Дело в том, что помимо самого ключа компании, выпускающие электронные ключи, предоставляют SDK (Software Developer Kit — комплект разработчика ПО). В SDK входит все необходимое для начала использования представляемой технологии в собственных программных продуктах — средства разработки, полная техническая документация, поддержка различных операционных систем, детальные примеры, фрагменты кода, инструменты для автоматической защиты. Также SDK может включать в себя демонстрационные ключи для построения тестовых проектов.

Технология защиты [ править | править код ]

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

  • проверка наличия подключения ключа;
  • считывание с ключа необходимых программе данных в качестве параметра запуска (используется, в основном, только при поиске подходящего ключа, но не для защиты);
  • запрос на расшифрование данных или исполняемого кода, необходимых для работы программы, зашифрованных при защите программы (позволяет осуществлять "сравнение с эталоном"; в случае шифрования кода, выполнение нерасшифрованного кода приводит к ошибке);
  • запрос на расшифрование данных, зашифрованных ранее самой программой (позволяет отправлять каждый раз разные запросы к ключу и, тем самым, защититься от эмуляции библиотек API / самого ключа)
  • проверка целостности исполняемого кода путём сравнения его текущей контрольной суммы с оригинальной контрольной суммой, считываемой с ключа (к примеру, путём выполнения ЭЦП кода или других переданных данных алгоритмом ключа и проверки этой ЭЦП внутри приложения; т.к. ЭЦП всегда разная — особенность криптографического алгоритма — то это также помогает защититься от эмуляции API/ключа);
  • запрос к встроенным в ключ часам реального времени (при их наличии; может осуществляться автоматически при ограничении времени работы аппаратных алгоритмов ключа по его внутреннему таймеру);
  • и т.д.

Стоит отметить, что некоторые современные ключи (Guardant Code от Компании "Актив", LOCK от Astroma Ltd., Rockey6 Smart от Feitian, Senselock от Seculab) позволяют разработчику хранить собственные алгоритмы или даже отдельные части кода приложения (например, специфические алгоритмы разработчика, получающие на вход большое число параметров) и исполнять их в самом ключе на его собственном микропроцессоре. Помимо защиты ПО от нелегального использования такой подход позволяет защитить используемый в программе алгоритм от изучения, клонирования и использования в своих приложениях конкурентами. Однако для простого алгоритма (а разработчики часто совершают ошибку, выбирая для загрузки недостаточно сложный алгоритм) может быть проведен криптоанализ по методу анализа "черного ящика".

Читайте также:  Жаропрочный сплав для электроплиток

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

Алгоритм шифрования может быть секретным или публичным. Секретные алгоритмы разрабатываются самим производителем средств защиты, в том числе и индивидуально для каждого заказчика. Главным недостатком использования таких алгоритмов является невозможность оценки криптографической стойкости. С уверенностью сказать, насколько надёжен алгоритм, можно было лишь постфактум: взломали или нет. Публичный алгоритм, или «открытый исходник», обладает криптостойкостью несравнимо большей. Такие алгоритмы проверяются не случайными людьми, а рядом экспертов, специализирующихся на анализе криптографии. Примерами таких алгоритмов могут служить широко используемые ГОСТ 28147—89, AES, RSA, Elgamal и др.

Защита с помощью автоматических средств [ править | править код ]

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

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

Реализация защиты с помощью функций API [ править | править код ]

Помимо использования автоматической защиты, разработчику ПО предоставляется возможность самостоятельно разработать защиту, интегрируя систему защиты в приложение на уровне исходного кода. Для этого в SDK включены библиотеки для различных языков программирования, содержащие описание функциональности API для данного ключа. API представляет собой набор функций, предназначенных для обмена данными между приложением, системным драйвером (и сервером в случае сетевых ключей) и самим ключом. Функции API обеспечивают выполнение различных операций с ключом: поиска, чтения и записи памяти, шифрования и расшифрования данных при помощи аппаратных алгоритмов, лицензирования сетевого ПО и т. д.

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

Обход защиты [ править | править код ]

Задача злоумышленника — заставить защищённую программу работать в условиях отсутствия легального ключа, подсоединённого к компьютеру. Не вдаваясь очень глубоко в технические подробности, будем исходить из предположения, что у злоумышленника есть следующие возможности:

  • перехватывать все обращения к ключу;
  • протоколировать и анализировать эти обращения;
  • посылать запросы к ключу и получать на них ответы;
  • протоколировать и анализировать эти ответы;
  • посылать ответы от имени ключа и др.

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

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

Стоит отметить, что современные электронные ключи (к примеру, ключи Guardant поколения Sign и современные ключи HASP HL) обеспечивают стойкое шифрование протокола обмена электронный ключбиблиотека API работы с ключом. В результате наиболее уязвимыми местами остаются точки вызовов функций этого API в приложении и логика обработки их результата.

Эмуляция ключа [ править | править код ]

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

Построить полный эмулятор современного электронного ключа — это достаточно трудоёмкий процесс, требующий большого количества времени и существенных инвестиций. Ранее злоумышленникам это удавалось: например, компания Aladdin признаёт, что в 1999 году злоумышленникам удалось разработать довольно корректно работающий эмулятор ключа HASP3 и HASP4. Это стало возможным благодаря тому, что ключ использовал проприетарный алгоритм кодирования, который был взломан. Сейчас большинство ключей используют публичные криптоалгоритмы, поэтому злоумышленники предпочитают атаковать какой-то конкретный защищённый продукт, а не защитный механизм в общем виде. Для современных систем защиты HASP и Guardant эмуляторов в свободном доступе нет, так как используется криптосистема с открытым ключом.

Информации о полной эмуляции современных ключей Guardant не встречалось. Существующие табличные эмуляторы реализованы только для конкретных приложений. Возможность их создания была обусловлена неиспользованием (или неграмотным использованием) основного функционала электронных ключей разработчиками защит.

Читайте также:  Забивные дюбеля для бетона

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

Взлом программного модуля [ править | править код ]

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

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

Дизассемблирование — способ преобразования кода исполняемых модулей в язык программирования, понятный человеку — Assembler. В этом случае злоумышленник получает распечатку (листинг) того, что делает приложение.

Декомпиляция — преобразование исполняемого модуля приложения в программный код на языке высокого уровня и получение представления приложения, близкого к исходному коду. Может быть проведена только для некоторых языков программирования (в частности, для .NET приложений, создаваемых на языке C# и распространяемых в байт-коде — интерпретируемом языке относительно высокого уровня).

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

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

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

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

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

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

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

Что такое электронный ключ eToken?

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

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

Где применяется и для чего нужен электронный ключ eToken?

Чаще всего eToken применяется для организации процесса двухфакторной аутентификации (подробнее об аутентификации — здесь). Говоря простым языком, электронные ключи позволяют организовать такой защищённый вход в компьютер, когда пользователь, чтобы загрузить его, должен в обязательном порядке подключить к USB-порту компьютера свой eToken и ввести пароль.

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

Ключи eToken также могут использоваться совместно с одной из лучших программ для защиты данных на ПК — Secret Disk 5, которая предназначена для кодирования информации, размещённой на компьютере пользователя.

Кодируя информацию на ПК, Secret Disk 5 делает её невидимой для постороннего человека, а для того, чтобы получить доступ к закодированным данным как раз и применяется электронный ключ eToken — закодированная информация становится доступной после подсоединения ключа к USB-порту компьютера и ввода пароля.

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

Купить электронные ключи eToken вы можете в нашей компании.

Отправить ответ

  Подписаться  
Уведомление о
Adblock
detector