Вычисления данных.
LOKI97 зашифровывает 128-битовый открытый текст и создает 128-битовый шифртекст . Вычисление данных осуществляется разделением 128 - битового значения входных данных [L|R] на два 64 - битных слова : 
L0 = L
R0 = R 
Затем они пропускаются через 16 циклов (i = 1,16) сбалансированной петли Фейстеля:
   
Ri = Li-1 xor f(Ri-1+SK3i-2,SK3i-1)
Li = Ri-1+SK3i-2+SK3i
Результирующее 128 - битовое значение выхода ( шифртекст) составляется следующим образом: 
    
     [R16|L16]
после последнего цикла, то есть не меняя местами, как обычно в циклах.
Функция f(A,B) должна быть создана так, чтобы гарантировать максимальный лавинный эффект между всеми входными битами функции. Текущее предложение для этой функции f(A,B) приводится ниже.
Обратим внимание на использование "симметричных" преобразований (сложения) на R также, как и более общее преобразование L xor- ом с выходом функции . Это формирует несравнимую группу с xor- ом , используемым на выходах из предыдущих циклов и, следовательно, обеспечивает некоторое рассеивание входных битов на входе функции также как и сокрытие последнего входного значения .
Таким образом, полное преобразование данных выглядит :

При расшифровке вычисления включают в себя разбиение шифртекста:
L16 = L
R16 = R
И затем прохождение по циклам в обратном порядке, т. е. используя 16 циклов     (i = 1,16)
     
     Ri-1 = Li xor f(Ri-SK3i,SK3i-1)
     Li-1 = Ri-SK3i-SK3i-2

128 - битное значение открытого текста получается как   

  [R0|L0]