Алгоритм выработки имитовставки в обоих стандартах строится на базе алгоритма зашифрования в режиме гаммирования с обратной связью. Именно в этом режиме шифрования последний блок гаммы зависит от всех предшествующих блоков открытого текста. Имитовставка является отрезком данных размера l бит, где l не превышает размера блока, при ее выработке используется зашифрование блоков в режиме простой замены. При необходимости последний неполный блок данных дополняется до размера полного блока нулевыми битами.
Таким образом, процедура выработки имитовставки очень похожа на зашифрование данных в режиме СВС или СРВ (гаммирования с обратной связью). Имитовставка выбирается из старшей части блока, полученного после последнего преобразования. Вероятность навязывания ложных данных противником равна 2 -l.
Существуют различия в выработке имитовставки в стандартах России и США: в американском стандарте используется полный цикл простой замены, а в российском - укороченный цикл, в котором реализованы первые 16 раундов преобразования. Упрощенный цикл выработки имитовставки в российском стандарте позволяет выполнять ее примерно вдвое быстрее шифрования, в американском же - скорости обеих процедур одинаковы.
В отечественном стандарте биты имитовставки извлекаются из той половины блока, которая модифицируется на последнем раунде преобразования. Поскольку последний раунд цикла выработки имитовставки отличается от последнего раунда циклов шифрования тем, что в нем выполняется перестановка старшей и младшей частей блока, а на раунде модифицируется старшая его часть, то биты имитовставки следует выбирать из младшей половины. И, как следствие, в российском стандарте размер имитовставки не превышает половины размера блока, т.е. 32 бит, а в американском - полного размера блока, т.е. 128 бит. Иногда это может оказаться немаловажным фактом.
Если с помощью имитовставки необходимо контролировать также возможность изъятия или повторной передачи всего реально переданного сообщения целиком, то при выработке имитовставки может использоваться служебная информация, например номер переданного сообщения и/или дата и время передачи. Таким образом, имитовставка, или код аутентификации данных, в российском и американском стандартах шифрования вырабатываются сходным образом, алгоритмы их получения различаются в отдельных не очень существенных деталях.
Однако применение имитовставок оправдано лишь если отправитель и получатель доверяют друг другу. А как же быть в условиях отсутствия взаимного доверия сторон? Такие ситуации встречаются гораздо чаще, чем вышерассмотренная, например при ведении электронной коммерции. Причем у получателя сообщения возникает необходимость не только самостоятельно убедиться в подлинности сообщения (эту задачу прекрасно решают средства традиционной криптографии), но и доказать третьей стороне, что это сообщение создано отправителем, а не сформировано им самим. У отправителя должна быть возможность доказать факт подделки приписываемого ему сообщения, если такая подделка действительно имела место. Естественно, желательно чтобы эти доказательства имели юридическую силу, и при этом не происходило разглашения секретной информации. Очевидно, что средства традиционной криптографии мало пригодны в такой ситуации, так как они предполагают разделение общего секретного ключа между всеми участниками криптопротокола. Поэтому возможность проверки соответствия имитовставки защищаемому документу превращается в возможность генерации новой имитовставки для измененного документа.